default.cf: Work around for mistmatched gcc -dumpmachine and /usr/lib/
[sdk] / deps / zlib / Makefile
index 475e35b..728c2f9 100644 (file)
@@ -1,19 +1,49 @@
-.PHONY: all objdir clean realclean distclean
+.PHONY: all objdir cleantarget clean realclean distclean
 
-# CONTENT
+# CORE VARIABLES
 
 MODULE := libz
 CONFIG := release
+ifndef COMPILER
 COMPILER := default
+endif
+
 TARGET_TYPE = staticlib
 
-OBJ = obj/$(CONFIG).$(PLATFORM)/
+# FLAGS
+
+ECFLAGS =
+ifndef DEBIAN_PACKAGE
+CFLAGS =
+LDFLAGS =
+endif
+PRJ_CFLAGS =
+CECFLAGS =
+OFLAGS =
+LIBS =
+
+ifdef DEBUG
+NOSTRIP := y
+endif
+
+CONSOLE = -mwindows
+
+# INCLUDES
+
+_CF_DIR = ../../
+
+include $(_CF_DIR)crossplatform.mk
+include $(_CF_DIR)default.cf
+
+# POST-INCLUDES VARIABLES
+
+OBJ = obj/$(CONFIG).$(PLATFORM)$(COMPILER_SUFFIX)/
 
 RES = 
 
-TARGET = obj/$(CONFIG).$(PLATFORM)/$(LP)z$(A)
+TARGET = obj/$(CONFIG).$(PLATFORM)$(COMPILER_SUFFIX)/$(LP)z$(A)
 
-OBJECTS = \
+_OBJECTS = \
        $(OBJ)adler32.o \
        $(OBJ)compress.o \
        $(OBJ)crc32.o \
@@ -27,11 +57,7 @@ OBJECTS = \
        $(OBJ)uncompr.o \
        $(OBJ)zutil.o
 
-COBJECTS =
-
-SYMBOLS =
-
-IMPORTS =
+OBJECTS = $(_OBJECTS)
 
 SOURCES = \
        adler32.c \
@@ -49,26 +75,19 @@ SOURCES = \
 
 RESOURCES =
 
-ifndef DEBIAN_PACKAGE
-CFLAGS =
-endif
-OFLAGS =
+LIBS += $(SHAREDLIB) $(EXECUTABLE) $(LINKOPT)
 
-# CROSS-PLATFORM MAGIC
+PRJ_CFLAGS += \
+        $(if $(DEBUG), -g, -O2 -ffast-math) $(FPIC) -w
 
-include ../../include.mk
 
-# FLAGS
 
-CFLAGS += -fmessage-length=0 -O2 -ffast-math -m32 $(FPIC) -w
 
-LIBS = $(SHAREDLIB) $(EXECUTABLE) $(LINKOPT)
 
-UPXFLAGS = -9 -q
+CECFLAGS += -cpp $(_CPP)
 
-# HARD CODED PLATFORM-SPECIFIC OPTIONS
-ifdef LINUX
-OFLAGS += -Wl,--no-undefined
+ifndef STATIC_LIBRARY_TARGET
+OFLAGS +=
 endif
 
 # TARGETS
@@ -88,48 +107,49 @@ $(TARGET): $(SOURCES) $(RESOURCES) | objdir $(SYMBOLS) $(OBJECTS)
 # OBJECT RULES
 
 $(OBJ)adler32.o: adler32.c
-       $(CC) $(CFLAGS) -c adler32.c -o $(OBJ)adler32.o
+       $(CC) $(CFLAGS) $(PRJ_CFLAGS) -c adler32.c -o $(OBJ)adler32.o
 
 $(OBJ)compress.o: compress.c
-       $(CC) $(CFLAGS) -c compress.c -o $(OBJ)compress.o
+       $(CC) $(CFLAGS) $(PRJ_CFLAGS) -c compress.c -o $(OBJ)compress.o
 
 $(OBJ)crc32.o: crc32.c
-       $(CC) $(CFLAGS) -c crc32.c -o $(OBJ)crc32.o
+       $(CC) $(CFLAGS) $(PRJ_CFLAGS) -c crc32.c -o $(OBJ)crc32.o
 
 $(OBJ)deflate.o: deflate.c
-       $(CC) $(CFLAGS) -c deflate.c -o $(OBJ)deflate.o
+       $(CC) $(CFLAGS) $(PRJ_CFLAGS) -c deflate.c -o $(OBJ)deflate.o
 
 $(OBJ)gzio.o: gzio.c
-       $(CC) $(CFLAGS) -c gzio.c -o $(OBJ)gzio.o
+       $(CC) $(CFLAGS) $(PRJ_CFLAGS) -c gzio.c -o $(OBJ)gzio.o
 
 $(OBJ)infback.o: infback.c
-       $(CC) $(CFLAGS) -c infback.c -o $(OBJ)infback.o
+       $(CC) $(CFLAGS) $(PRJ_CFLAGS) -c infback.c -o $(OBJ)infback.o
 
 $(OBJ)inffast.o: inffast.c
-       $(CC) $(CFLAGS) -c inffast.c -o $(OBJ)inffast.o
+       $(CC) $(CFLAGS) $(PRJ_CFLAGS) -c inffast.c -o $(OBJ)inffast.o
 
 $(OBJ)inflate.o: inflate.c
-       $(CC) $(CFLAGS) -c inflate.c -o $(OBJ)inflate.o
+       $(CC) $(CFLAGS) $(PRJ_CFLAGS) -c inflate.c -o $(OBJ)inflate.o
 
 $(OBJ)inftrees.o: inftrees.c
-       $(CC) $(CFLAGS) -c inftrees.c -o $(OBJ)inftrees.o
+       $(CC) $(CFLAGS) $(PRJ_CFLAGS) -c inftrees.c -o $(OBJ)inftrees.o
 
 $(OBJ)trees.o: trees.c
-       $(CC) $(CFLAGS) -c trees.c -o $(OBJ)trees.o
+       $(CC) $(CFLAGS) $(PRJ_CFLAGS) -c trees.c -o $(OBJ)trees.o
 
 $(OBJ)uncompr.o: uncompr.c
-       $(CC) $(CFLAGS) -c uncompr.c -o $(OBJ)uncompr.o
+       $(CC) $(CFLAGS) $(PRJ_CFLAGS) -c uncompr.c -o $(OBJ)uncompr.o
 
 $(OBJ)zutil.o: zutil.c
-       $(CC) $(CFLAGS) -c zutil.c -o $(OBJ)zutil.o
+       $(CC) $(CFLAGS) $(PRJ_CFLAGS) -c zutil.c -o $(OBJ)zutil.o
 
-clean: objdir
+cleantarget: objdir
        $(call rmq,$(TARGET))
-       $(call rmq,$(OBJECTS))
-       $(call rmq,$(COBJECTS))
 
-realclean:
+clean: cleantarget
+       $(call rmq,$(_OBJECTS))
+
+realclean: cleantarget
        $(call rmrq,$(OBJ))
 
-distclean:
+distclean: cleantarget
        $(call rmrq,obj/)