1 .PHONY: all objdir cleantarget clean realclean distclean
11 TARGET_TYPE = staticlib
35 include $(_CF_DIR)crossplatform.mk
36 include $(_CF_DIR)default.cf
38 # POST-INCLUDES VARIABLES
40 OBJ = obj/$(CONFIG).$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/
44 TARGET = obj/$(CONFIG).$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)ffi$(A)
46 ifeq "$(HOST_ARCH)" "X64"
54 $(OBJ)$(PLATFORM_OBJ).o \
64 src/x86/$(PLATFORM_OBJ).S \
72 LIBS += $(SHAREDLIB) $(EXECUTABLE) $(LINKOPT)
75 $(if $(DEBUG), -g, -O2 -ffast-math) $(FPIC) -Wall \
77 -Ii686-pc-mingw32/include \
84 CECFLAGS += -cpp $(_CPP)
91 $(if $(wildcard $(OBJ)),,$(call mkdirq,$(OBJ)))
95 $(TARGET): $(SOURCES) $(RESOURCES) $(SYMBOLS) $(OBJECTS) | objdir
96 ifndef STATIC_LIBRARY_TARGET
97 $(CC) $(OFLAGS) $(OBJECTS) $(LIBS) -o $(TARGET) $(INSTALLNAME)
99 $(STRIP) $(STRIPOPT) $(TARGET)
102 $(AR) rcs $(TARGET) $(OBJECTS) $(LIBS)
111 $(OBJ)ffi.o: src/x86/ffi.c
112 $(CC) $(CFLAGS) $(PRJ_CFLAGS) -c src/x86/ffi.c -o $(OBJ)ffi.o
114 $(OBJ)$(PLATFORM_OBJ).o: src/x86/$(PLATFORM_OBJ).S
115 $(CC) $(CFLAGS) $(PRJ_CFLAGS) -c src/x86/$(PLATFORM_OBJ).S -o $(OBJ)$(PLATFORM_OBJ).o
117 $(OBJ)prep_cif.o: src/prep_cif.c
118 $(CC) $(CFLAGS) $(PRJ_CFLAGS) -c src/prep_cif.c -o $(OBJ)prep_cif.o
120 $(OBJ)raw_api.o: src/raw_api.c
121 $(CC) $(CFLAGS) $(PRJ_CFLAGS) -c src/raw_api.c -o $(OBJ)raw_api.o
123 $(OBJ)types.o: src/types.c
124 $(CC) $(CFLAGS) $(PRJ_CFLAGS) -c src/types.c -o $(OBJ)types.o
126 $(OBJ)closures.o: src/closures.c
127 $(CC) $(CFLAGS) $(PRJ_CFLAGS) -c src/closures.c -o $(OBJ)closures.o
130 $(call rmq,$(TARGET))
133 $(call rmq,$(_OBJECTS))
135 realclean: cleantarget
138 distclean: cleantarget