fix more signed integer issues.
[Project_algorithmic_C.git] / Makefile
index fd4ca9a54c37265c4eed0d92a88b3fae22dace57..639170dc0b18da7ff2f3f1715f6d0c1360ce3086 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -22,8 +22,8 @@ SRC_PATH:=src
 LIBRARY_NAME:=lib$(BINARY_NAME)
 LIBRARY_PATH:=lib
 LDLIBS:=-l$(BINARY_NAME) -lncurses -ltinfo
-BUILD_TYPE:=debug
-#BUILD_TYPE:=release
+#BUILD_TYPE:=debug
+BUILD_TYPE:=release
 
 # ====================================
 # DO NOT CHANGE STUFF BEYOND THIS LINE
@@ -40,6 +40,7 @@ UNAME := $(shell uname -s)
 ifeq ($(BUILD_TYPE),debug)
 BUILDDIR := .build/debug
 DEBUG_FLAG = -g
+DEBUG = 1
 STRIP_FLAG =
 OPTI_FLAG = -O0
 LTO_SUPPORT = yes
@@ -47,6 +48,7 @@ GOLD_SUPPORT = yes
 else
 BUILDDIR := .build/release
 DEBUG_FLAG =
+DEBUG = 0
 STRIP_FLAG = -s
 OPTI_FLAG = -O3
 LTO_SUPPORT = yes
@@ -82,7 +84,7 @@ BINARY_SUFFIX := .exe
 DLIB_SUFFIX := .dll
 # do not archive external libraries
 CYGWIN_LDLIBS_NOARCHIVE := $(filter-out -l$(BINARY_NAME),$(LDLIBS))
-CYGWIN_LIBLDFLAGS := -Wl,--out-implib=$(LIBRARY_PATH)/$(DLIB_PREFIX)$(LIBRARY_NAME)$(DLIB_SUFFIX).a \
+CYGWIN_LIBLDFLAGS := -Wl,--out-implib=$(LIBRARY_PATH)/$(DLIB_PREFIX)$(LIBRARY_NAME)$(DLIB_SUFFIX)$(SLIB_SUFFIX) \
     -Wl,--export-all-symbols \
     -Wl,--enable-auto-import
 endif
@@ -106,7 +108,7 @@ endif
 
 # Putting header files in the source directory is not the purpose of this INCLUDES_PATH variable
 INCLUDES_PATH := $(INCLUDES_PATH) -I$(LIBRARY_PATH)
-CFLAGS := -DBUILD_TYPE=$(BUILD_TYPE) $(CFLAGS) $(CFLAGS_LTO) $(WARN_FLAGS) $(STD_FLAG) $(OPTI_FLAG) $(DEBUG_FLAG) $(INCLUDES_PATH)
+CFLAGS := -DDEBUG=$(DEBUG) $(CFLAGS) $(CFLAGS_LTO) $(WARN_FLAGS) $(STD_FLAG) $(OPTI_FLAG) $(DEBUG_FLAG) $(INCLUDES_PATH)
 LIBCFLAGS := -fPIC $(CFLAGS)
 LDFLAGS := $(LDFLAGS) $(LDFLAGS_LTO) $(LDFLAGS_GOLD) $(STRIP_FLAG)
 LIBLDFLAGS := $(SHLIBLDFLAG) $(LDFLAGS)
@@ -125,7 +127,7 @@ $(LIBRARY_PATH)/$(SLIB_PREFIX)$(LIBRARY_NAME)$(SLIB_SUFFIX): $(LIBOBJS)
        @$(AR) rcs $@ $^
 
 ifeq ($(findstring CYGWIN_NT,$(UNAME)),CYGWIN_NT)
-$(LIBRARY_PATH)/$(DLIB_PREFIX)$(LIBRARY_NAME)$(DLIB_SUFFIX).a: $(LIBRARY_PATH)/$(DLIB_PREFIX)$(CYGWIN_DLIBRARY_NAME)$(DLIB_SUFFIX)
+$(LIBRARY_PATH)/$(DLIB_PREFIX)$(LIBRARY_NAME)$(DLIB_SUFFIX)$(SLIB_SUFFIX): $(LIBRARY_PATH)/$(DLIB_PREFIX)$(CYGWIN_DLIBRARY_NAME)$(DLIB_SUFFIX)
 $(LIBRARY_PATH)/$(DLIB_PREFIX)$(CYGWIN_DLIBRARY_NAME)$(DLIB_SUFFIX): $(LIBOBJS)
        @echo "[LD DLL] $@"
        @$(LD) $(LIBCFLAGS) $(LIBLDFLAGS) $(CYGWIN_LIBLDFLAGS) -Wl,--whole-archive $^ -Wl,--no-whole-archive $(CYGWIN_LDLIBS_NOARCHIVE) -o $@
@@ -148,7 +150,7 @@ $(BINARY_NAME).static$(BINARY_SUFFIX): $(OBJS) $(LIBRARY_PATH)/$(SLIB_PREFIX)$(L
        @$(LD) $(CFLAGS) $(STATICLIBLDFLAGS) $^ $(LDLIBS) -o $@
 
 ifeq ($(findstring CYGWIN_NT,$(UNAME)),CYGWIN_NT)
-$(BINARY_NAME).dynamic$(BINARY_SUFFIX): $(OBJS) $(LIBRARY_PATH)/$(DLIB_PREFIX)$(LIBRARY_NAME)$(DLIB_SUFFIX).a
+$(BINARY_NAME).dynamic$(BINARY_SUFFIX): $(OBJS) $(LIBRARY_PATH)/$(DLIB_PREFIX)$(LIBRARY_NAME)$(DLIB_SUFFIX)$(SLIB_SUFFIX)
 else
 $(BINARY_NAME).dynamic$(BINARY_SUFFIX): $(OBJS) $(LIBRARY_PATH)/$(DLIB_PREFIX)$(LIBRARY_NAME)$(DLIB_SUFFIX)
 endif
@@ -186,7 +188,7 @@ endif
        -@rm $(LIBRARY_PATH)/$(SLIB_PREFIX)$(LIBRARY_NAME)$(SLIB_SUFFIX)
 ifeq ($(findstring CYGWIN_NT,$(UNAME)),CYGWIN_NT)
        -@rm $(LIBRARY_PATH)/$(DLIB_PREFIX)$(CYGWIN_DLIBRARY_NAME)$(DLIB_SUFFIX)
-       -@rm $(LIBRARY_PATH)/$(DLIB_PREFIX)$(LIBRARY_NAME)$(DLIB_SUFFIX).a
+       -@rm $(LIBRARY_PATH)/$(DLIB_PREFIX)$(LIBRARY_NAME)$(DLIB_SUFFIX)$(SLIB_SUFFIX)
 else
        -@rm $(LIBRARY_PATH)/$(DLIB_PREFIX)$(LIBRARY_NAME)$(DLIB_SUFFIX)
 endif