define MinCyg_GCC sed -n /'^gcc version '/s',.*\<\([A-Za-z]*\)\> \(special\|experimental\).*',\\1,p endef define Any_GCC sed -n /'^gcc version '/s',.*\<\([A-Za-z]*\)\>.*',\\1,p endef ASK_SHELL_FIND_GCC := $(shell gcc -v 2>&1 | $(MinCyg_GCC)) ifeq "$(ASK_SHELL_FIND_GCC)" "" ASK_SHELL_FIND_GCC := $(shell gcc -v 2>&1 | $(Any_GCC)) endif ifneq "$(ASK_SHELL_FIND_GCC)" "" GCC_FLAVOR := $(strip $(ASK_SHELL_FIND_GCC)) endif ifeq "$(GCC_FLAVOR)" "cygming" CFLAGS += -mno-cygwin override LIBS += -lglut32 -lglu32 -lopengl32 endif LIBS += -lglut -lGLU -lGL CFLAGS += -ggdb -Wall -std=c99 FILES=scene.c scene.h bitmap.c bitmap.h globals.c globals.h helper.c helper.h types.h .PHONY: all all: scene commit scene: $(FILES) gcc $(CFLAGS) -o $(FILES) $(LIBS) commit: $(FILES) git commit -a --allow-empty-message --message="" --untracked-files=no; true clean: rm scene