-.PHONY: all objdir clean realclean distclean
+.PHONY: all objdir cleantarget clean realclean distclean
# CORE VARIABLES
MODULE := ecere
+VERSION := 0.44
CONFIG := vanilla
ifndef COMPILER
COMPILER := default
include $(_CF_DIR)crossplatform.mk
include $(_CF_DIR)default.cf
+ifdef PREFIXLIBDIR
+CFLAGS += -DDEB_HOST_MULTIARCH=\"$(call escspace,$(PREFIXLIBDIR))\"
+endif
+
# POST-INCLUDES VARIABLES
OBJ = obj/$(CONFIG).$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/
src/gfx/drivers/lfbConvert.ec \
src/gfx/drivers/LFBDisplayDriver.ec \
$(if $(or $(LINUX_TARGET),$(OSX_TARGET)),src/gfx/drivers/NCursesDisplayDriver.ec,) \
- $(if $(OSX_TARGET),src/gfx/drivers/OpenGLDisplayDriver.ec,) \
- $(if $(OSX_TARGET),src/gfx/drivers/CocoaOpenGLDisplayDriver.ec,) \
$(if $(or $(LINUX_TARGET),$(OSX_TARGET)),src/gfx/drivers/XDisplayDriver.ec,) \
src/gfx/Bitmap.ec \
src/gfx/BitmapResource.ec \
src/gui/controls/ProgressBar.ec \
src/gui/controls/ScrollBar.ec \
src/gui/controls/StatusBar.ec \
- src/gui/controls/Stacker.ec
-_ECSOURCES2 = \
+ src/gui/controls/Stacker.ec \
src/gui/controls/PathBox.ec \
src/gui/controls/ToolTip.ec \
src/gui/controls/SelectorBar.ec \
- src/gui/dialogs/ColorPicker.ec \
+ src/gui/dialogs/ColorPicker.ec
+_ECSOURCES2 = \
src/gui/dialogs/FileDialog.ec \
src/gui/dialogs/FindDialog.ec \
src/gui/dialogs/GoToDialog.ec \
src/gui/dialogs/MessageBox.ec \
src/gui/dialogs/ReplaceDialog.ec \
src/gui/dialogs/WindowList.ec \
- $(if $(OSX_TARGET),src/gui/drivers/cocoa/CocoaDispatch.ec,) \
- $(if $(OSX_TARGET),src/gui/drivers/cocoa/CocoaInterface.ec,) \
$(if $(or $(LINUX_TARGET),$(OSX_TARGET)),src/gui/drivers/NCursesInterface.ec,) \
$(if $(WINDOWS_TARGET),src/gui/drivers/Win32Interface.ec,) \
$(if $(or $(LINUX_TARGET),$(OSX_TARGET)),src/gui/drivers/XInterface.ec,) \
_OBJECTS2 = \
$(if $(WINDOWS_TARGET),,$(OBJ)harfbuzz-impl.o) \
$(if $(WINDOWS_TARGET),,$(OBJ)harfbuzz-thai.o) \
- $(if $(OSX_TARGET),$(OBJ)CocoaEcereBridge.o,) \
- $(if $(OSX_TARGET),$(OBJ)EcereView.o,) \
$(OBJ)instance.c.o
OBJECTS = $(_OBJECTS) $(ECOBJECTS) $(OBJ)$(MODULE).main$(O)
-SOURCES = $(ECSOURCES) $(SOURCES1) $(SOURCES2)
-SOURCES1 = \
+SOURCES = $(ECSOURCES) \
src/sys/File.c \
src/sys/DualPipe.c \
src/sys/System.c \
$(if $(WINDOWS_TARGET),,src/gfx/drivers/harfbuzz/harfbuzz-tibetan.c) \
$(if $(WINDOWS_TARGET),,src/gfx/drivers/harfbuzz/harfbuzz-impl.c) \
$(if $(WINDOWS_TARGET),,src/gfx/drivers/harfbuzz/harfbuzz-thai.c) \
- $(if $(OSX_TARGET),src/gui/drivers/cocoa/CocoaEcereBridge.m,) \
- $(if $(OSX_TARGET),src/gui/drivers/cocoa/EcereView.m,)
-SOURCES2 = \
src/com/instance.c
RESOURCES = $(RESOURCES1) $(RESOURCES2) $(RESOURCES3)
$(RES)places/brokenFolder.png \
$(RES)status/audioVolumeHigh.png \
$(RES)status/folderOpen.png \
- $(RES)unicode/derivedGeneralCategoryStripped.txt \
- locale/zh_CN/LC_MESSAGES/ecere.mo \
- locale/es_ES/LC_MESSAGES/ecere.mo
+ $(RES)unicode/derivedGeneralCategoryStripped.txt
LIBS += $(SHAREDLIB) $(EXECUTABLE) $(LINKOPT)
PRJ_CFLAGS += \
$(if $(WINDOWS_TARGET), \
- -I../deps/DirectX-9.0/include \
- -I../deps/jpeg-6b \
- -I../deps/libpng-1.4.0 \
+ -I../deps/jpeg-9a \
+ -I../deps/libpng-1.6.12 \
-I../deps/libungif-4.1.1/lib \
- -I../deps/zlib \
+ -I../deps/zlib-1.2.8 \
-I../deps/freetype-2.3.12/include \
-I../deps/glext,) \
$(if $(LINUX_TARGET), \
- -I/usr/include/freetype2 \
- -I../deps/libungif-4.1.1/lib,) \
+ -I/usr/include/freetype2,) \
$(if $(OSX_TARGET), \
-I/usr/include/freetype2 \
- -I$(SYSROOT)/usr/X11/include/freetype2 \
- -I$(SYSROOT)/usr/X11/include \
+ -I$(SYSROOT)/usr/X11/include/freetype2 \
+ -I$(SYSROOT)/usr/X11/include \
-I/usr/X11R6/include/freetype2 \
-I/usr/X11R6/include \
- -I../deps/jpeg-6b \
+ -I../deps/jpeg-9a \
-I../deps/libpng-1.4.0 \
-I../deps/libungif-4.1.1/lib,) \
- $(if $(DEBUG), -g, -Os) $(FORCE_32_BIT) $(FPIC) -w \
+ $(if $(DEBUG), -g, -Os) $(FPIC) -w \
-DBUILDING_ECERE_COM \
-DECERE_STATIC \
-DECERE_VANILLA \
-DECERE_COM_MODULE \
$(PRJ_CFLAGS)
-
+ECFLAGS += -module $(MODULE)
ECFLAGS += \
-nolinenumbers -defaultns ecere
-
# PLATFORM-SPECIFIC OPTIONS
ifdef WINDOWS_TARGET
ifndef STATIC_LIBRARY_TARGET
OFLAGS += \
- -L../deps/zlib/obj/release.$(PLATFORM) \
- -L../deps/jpeg-6b/obj/release.$(PLATFORM) \
- -L../deps/libpng-1.4.0/obj/release.$(PLATFORM) \
- -L../deps/libungif-4.1.1/obj/release.$(PLATFORM) \
- -L../deps/freetype-2.3.12/obj/release.$(PLATFORM)
+ -L../deps/zlib-1.2.8/obj/release.$(PLATFORM)$(COMPILER_SUFFIX) \
+ -L../deps/jpeg-9a/obj/release.$(PLATFORM)$(COMPILER_SUFFIX) \
+ -L../deps/libpng-1.6.12/obj/release.$(PLATFORM)$(COMPILER_SUFFIX) \
+ -L../deps/libungif-4.1.1/obj/release.$(PLATFORM)$(COMPILER_SUFFIX) \
+ -L../deps/freetype-2.3.12/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)
LIBS += \
$(call _L,dxguid) \
$(call _L,ddraw) \
ifndef STATIC_LIBRARY_TARGET
OFLAGS += \
- -L../deps/libungif-4.1.1/obj/release.$(PLATFORM) \
-L/usr/X11R6/lib
LIBS += \
$(call _L,ncurses) \
$(call _L,m) \
$(call _L,dl) \
$(call _L,fontconfig) \
- $(call _L,ungif) \
+ $(call _L,gif) \
$(call _L,X11) \
$(call _L,Xext) \
$(call _L,Xrender) \
ifndef STATIC_LIBRARY_TARGET
OFLAGS += \
+ -L$(SYSROOT)/usr/X11/lib \
-L/usr/X11R6/lib \
- -L../deps/jpeg-6b/obj/release.$(PLATFORM) \
- -L../deps/libpng-1.4.0/obj/release.$(PLATFORM) \
- -L../deps/libungif-4.1.1/obj/release.$(PLATFORM)
+ -L../deps/jpeg-9a/obj/release.$(PLATFORM)$(COMPILER_SUFFIX) \
+ -L../deps/libpng-1.4.0/obj/release.$(PLATFORM)$(COMPILER_SUFFIX) \
+ -L../deps/libungif-4.1.1/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)
LIBS += \
$(call _L,curses) \
$(call _L,pthread) \
CECFLAGS += -cpp $(_CPP)
-ifndef STATIC_LIBRARY_TARGET
-OFLAGS += $(FORCE_32_BIT)
-endif
-
# TARGETS
all: objdir $(TARGET)
objdir:
- $(if $(wildcard $(OBJ)),,$(call mkdirq,$(OBJ)))
+ $(if $(wildcard $(OBJ)),,$(call mkdir,$(OBJ)))
$(OBJ)$(MODULE).main.ec: $(SYMBOLS) $(COBJECTS)
- $(ECS) $(ECSLIBOPT) $(SYMBOLS) $(IMPORTS) -symbols obj/$(CONFIG).$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX) -o $(OBJ)$(MODULE).main.ec
+ $(ECS) $(ARCH_FLAGS) $(ECSLIBOPT) $(SYMBOLS) $(IMPORTS) -symbols obj/$(CONFIG).$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX) -o $(OBJ)$(MODULE).main.ec
$(OBJ)$(MODULE).main.c: $(OBJ)$(MODULE).main.ec
$(ECP) $(CFLAGS) $(CECFLAGS) $(ECFLAGS) $(PRJ_CFLAGS) -c $(OBJ)$(MODULE).main.ec -o $(OBJ)$(MODULE).main.sym -symbols $(OBJ)
$(EAR) aw$(EARFLAGS) $(TARGET) $(RES)places/driveRemote.png $(RES)places/folder.png $(RES)places/folderRemote.png $(RES)places/networkServer.png $(RES)places/networkWorkgroup.png $(RES)places/brokenFolder.png "places"
$(EAR) aw$(EARFLAGS) $(TARGET) $(RES)status/audioVolumeHigh.png $(RES)status/folderOpen.png "status"
$(EAR) aw$(EARFLAGS) $(TARGET) $(RES)unicode/derivedGeneralCategoryStripped.txt "unicode"
- $(EAR) aw$(EARFLAGS) $(TARGET) locale/zh_CN/LC_MESSAGES/ecere.mo "locale/zh_CN/LC_MESSAGES"
- $(EAR) aw$(EARFLAGS) $(TARGET) locale/es_ES/LC_MESSAGES/ecere.mo "locale/es_ES/LC_MESSAGES"
else
$(AR) rcs $(TARGET) $(OBJECTS) $(LIBS)
endif
- $(call cpq,$(TARGET),../obj/$(PLATFORM)/lib/)
+ $(call cp,$(TARGET),../obj/$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/lib/)
# SYMBOL RULES
$(OBJ)BMPFormat.sym: src/gfx/bitmaps/BMPFormat.ec
$(ECP) $(CFLAGS) $(CECFLAGS) $(ECFLAGS) $(PRJ_CFLAGS) -c src/gfx/bitmaps/BMPFormat.ec -o $(OBJ)BMPFormat.sym
-ifneq "$(WINDOWS_TARGET)" ""
+ifneq ($(WINDOWS_TARGET),)
$(OBJ)GDIDisplayDriver.sym: src/gfx/drivers/GDIDisplayDriver.ec
$(ECP) $(CFLAGS) $(CECFLAGS) $(ECFLAGS) $(PRJ_CFLAGS) -c src/gfx/drivers/GDIDisplayDriver.ec -o $(OBJ)GDIDisplayDriver.sym
endif
$(OBJ)LFBDisplayDriver.sym: src/gfx/drivers/LFBDisplayDriver.ec
$(ECP) $(CFLAGS) $(CECFLAGS) $(ECFLAGS) $(PRJ_CFLAGS) -c src/gfx/drivers/LFBDisplayDriver.ec -o $(OBJ)LFBDisplayDriver.sym
-ifneq "$(or $(LINUX_TARGET),$(OSX_TARGET))" ""
+ifneq ($(or $(LINUX_TARGET),$(OSX_TARGET)),)
$(OBJ)NCursesDisplayDriver.sym: src/gfx/drivers/NCursesDisplayDriver.ec
$(ECP) $(CFLAGS) $(CECFLAGS) $(ECFLAGS) $(PRJ_CFLAGS) -c src/gfx/drivers/NCursesDisplayDriver.ec -o $(OBJ)NCursesDisplayDriver.sym
endif
-ifneq "$(OSX_TARGET)" ""
-$(OBJ)OpenGLDisplayDriver.sym: src/gfx/drivers/OpenGLDisplayDriver.ec
- $(ECP) $(CFLAGS) $(CECFLAGS) $(ECFLAGS) $(PRJ_CFLAGS) -c src/gfx/drivers/OpenGLDisplayDriver.ec -o $(OBJ)OpenGLDisplayDriver.sym
-endif
-
-ifneq "$(OSX_TARGET)" ""
-$(OBJ)CocoaOpenGLDisplayDriver.sym: src/gfx/drivers/CocoaOpenGLDisplayDriver.ec
- $(ECP) $(CFLAGS) $(CECFLAGS) $(ECFLAGS) $(PRJ_CFLAGS) -c src/gfx/drivers/CocoaOpenGLDisplayDriver.ec -o $(OBJ)CocoaOpenGLDisplayDriver.sym
-endif
-
-ifneq "$(or $(LINUX_TARGET),$(OSX_TARGET))" ""
+ifneq ($(or $(LINUX_TARGET),$(OSX_TARGET)),)
$(OBJ)XDisplayDriver.sym: src/gfx/drivers/XDisplayDriver.ec
$(ECP) $(CFLAGS) $(CECFLAGS) $(ECFLAGS) $(PRJ_CFLAGS) -c src/gfx/drivers/XDisplayDriver.ec -o $(OBJ)XDisplayDriver.sym
endif
$(OBJ)WindowList.sym: src/gui/dialogs/WindowList.ec
$(ECP) $(CFLAGS) $(CECFLAGS) $(ECFLAGS) $(PRJ_CFLAGS) -c src/gui/dialogs/WindowList.ec -o $(OBJ)WindowList.sym
-ifneq "$(OSX_TARGET)" ""
-$(OBJ)CocoaDispatch.sym: src/gui/drivers/cocoa/CocoaDispatch.ec
- $(ECP) $(CFLAGS) $(CECFLAGS) $(ECFLAGS) $(PRJ_CFLAGS) -c src/gui/drivers/cocoa/CocoaDispatch.ec -o $(OBJ)CocoaDispatch.sym
-endif
-
-ifneq "$(OSX_TARGET)" ""
-$(OBJ)CocoaInterface.sym: src/gui/drivers/cocoa/CocoaInterface.ec
- $(ECP) $(CFLAGS) $(CECFLAGS) $(ECFLAGS) $(PRJ_CFLAGS) -c src/gui/drivers/cocoa/CocoaInterface.ec -o $(OBJ)CocoaInterface.sym
-endif
-
-ifneq "$(or $(LINUX_TARGET),$(OSX_TARGET))" ""
+ifneq ($(or $(LINUX_TARGET),$(OSX_TARGET)),)
$(OBJ)NCursesInterface.sym: src/gui/drivers/NCursesInterface.ec
$(ECP) $(CFLAGS) $(CECFLAGS) $(ECFLAGS) $(PRJ_CFLAGS) -c src/gui/drivers/NCursesInterface.ec -o $(OBJ)NCursesInterface.sym
endif
-ifneq "$(WINDOWS_TARGET)" ""
+ifneq ($(WINDOWS_TARGET),)
$(OBJ)Win32Interface.sym: src/gui/drivers/Win32Interface.ec
$(ECP) $(CFLAGS) $(CECFLAGS) $(ECFLAGS) $(PRJ_CFLAGS) -c src/gui/drivers/Win32Interface.ec -o $(OBJ)Win32Interface.sym
endif
-ifneq "$(or $(LINUX_TARGET),$(OSX_TARGET))" ""
+ifneq ($(or $(LINUX_TARGET),$(OSX_TARGET)),)
$(OBJ)XInterface.sym: src/gui/drivers/XInterface.ec
$(ECP) $(CFLAGS) $(CECFLAGS) $(ECFLAGS) $(PRJ_CFLAGS) -c src/gui/drivers/XInterface.ec -o $(OBJ)XInterface.sym
endif
$(OBJ)BMPFormat.c: src/gfx/bitmaps/BMPFormat.ec $(OBJ)BMPFormat.sym | $(SYMBOLS)
$(ECC) $(CFLAGS) $(CECFLAGS) $(ECFLAGS) $(PRJ_CFLAGS) $(FVISIBILITY) -c src/gfx/bitmaps/BMPFormat.ec -o $(OBJ)BMPFormat.c -symbols $(OBJ)
-ifneq "$(WINDOWS_TARGET)" ""
+ifneq ($(WINDOWS_TARGET),)
$(OBJ)GDIDisplayDriver.c: src/gfx/drivers/GDIDisplayDriver.ec $(OBJ)GDIDisplayDriver.sym | $(SYMBOLS)
$(ECC) $(CFLAGS) $(CECFLAGS) $(ECFLAGS) $(PRJ_CFLAGS) $(FVISIBILITY) -c src/gfx/drivers/GDIDisplayDriver.ec -o $(OBJ)GDIDisplayDriver.c -symbols $(OBJ)
endif
$(OBJ)LFBDisplayDriver.c: src/gfx/drivers/LFBDisplayDriver.ec $(OBJ)LFBDisplayDriver.sym | $(SYMBOLS)
$(ECC) $(CFLAGS) $(CECFLAGS) $(ECFLAGS) $(PRJ_CFLAGS) $(FVISIBILITY) -c src/gfx/drivers/LFBDisplayDriver.ec -o $(OBJ)LFBDisplayDriver.c -symbols $(OBJ)
-ifneq "$(or $(LINUX_TARGET),$(OSX_TARGET))" ""
+ifneq ($(or $(LINUX_TARGET),$(OSX_TARGET)),)
$(OBJ)NCursesDisplayDriver.c: src/gfx/drivers/NCursesDisplayDriver.ec $(OBJ)NCursesDisplayDriver.sym | $(SYMBOLS)
$(ECC) $(CFLAGS) $(CECFLAGS) $(ECFLAGS) $(PRJ_CFLAGS) $(FVISIBILITY) -c src/gfx/drivers/NCursesDisplayDriver.ec -o $(OBJ)NCursesDisplayDriver.c -symbols $(OBJ)
endif
-ifneq "$(OSX_TARGET)" ""
-$(OBJ)OpenGLDisplayDriver.c: src/gfx/drivers/OpenGLDisplayDriver.ec $(OBJ)OpenGLDisplayDriver.sym | $(SYMBOLS)
- $(ECC) $(CFLAGS) $(CECFLAGS) $(ECFLAGS) $(PRJ_CFLAGS) $(FVISIBILITY) -c src/gfx/drivers/OpenGLDisplayDriver.ec -o $(OBJ)OpenGLDisplayDriver.c -symbols $(OBJ)
-endif
-
-ifneq "$(OSX_TARGET)" ""
-$(OBJ)CocoaOpenGLDisplayDriver.c: src/gfx/drivers/CocoaOpenGLDisplayDriver.ec $(OBJ)CocoaOpenGLDisplayDriver.sym | $(SYMBOLS)
- $(ECC) $(CFLAGS) $(CECFLAGS) $(ECFLAGS) $(PRJ_CFLAGS) $(FVISIBILITY) -c src/gfx/drivers/CocoaOpenGLDisplayDriver.ec -o $(OBJ)CocoaOpenGLDisplayDriver.c -symbols $(OBJ)
-endif
-
-ifneq "$(or $(LINUX_TARGET),$(OSX_TARGET))" ""
+ifneq ($(or $(LINUX_TARGET),$(OSX_TARGET)),)
$(OBJ)XDisplayDriver.c: src/gfx/drivers/XDisplayDriver.ec $(OBJ)XDisplayDriver.sym | $(SYMBOLS)
$(ECC) $(CFLAGS) $(CECFLAGS) $(ECFLAGS) $(PRJ_CFLAGS) $(FVISIBILITY) -c src/gfx/drivers/XDisplayDriver.ec -o $(OBJ)XDisplayDriver.c -symbols $(OBJ)
endif
$(OBJ)WindowList.c: src/gui/dialogs/WindowList.ec $(OBJ)WindowList.sym | $(SYMBOLS)
$(ECC) $(CFLAGS) $(CECFLAGS) $(ECFLAGS) $(PRJ_CFLAGS) $(FVISIBILITY) -c src/gui/dialogs/WindowList.ec -o $(OBJ)WindowList.c -symbols $(OBJ)
-ifneq "$(OSX_TARGET)" ""
-$(OBJ)CocoaDispatch.c: src/gui/drivers/cocoa/CocoaDispatch.ec $(OBJ)CocoaDispatch.sym | $(SYMBOLS)
- $(ECC) $(CFLAGS) $(CECFLAGS) $(ECFLAGS) $(PRJ_CFLAGS) $(FVISIBILITY) -c src/gui/drivers/cocoa/CocoaDispatch.ec -o $(OBJ)CocoaDispatch.c -symbols $(OBJ)
-endif
-
-ifneq "$(OSX_TARGET)" ""
-$(OBJ)CocoaInterface.c: src/gui/drivers/cocoa/CocoaInterface.ec $(OBJ)CocoaInterface.sym | $(SYMBOLS)
- $(ECC) $(CFLAGS) $(CECFLAGS) $(ECFLAGS) $(PRJ_CFLAGS) $(FVISIBILITY) -c src/gui/drivers/cocoa/CocoaInterface.ec -o $(OBJ)CocoaInterface.c -symbols $(OBJ)
-endif
-
-ifneq "$(or $(LINUX_TARGET),$(OSX_TARGET))" ""
+ifneq ($(or $(LINUX_TARGET),$(OSX_TARGET)),)
$(OBJ)NCursesInterface.c: src/gui/drivers/NCursesInterface.ec $(OBJ)NCursesInterface.sym | $(SYMBOLS)
$(ECC) $(CFLAGS) $(CECFLAGS) $(ECFLAGS) $(PRJ_CFLAGS) $(FVISIBILITY) -c src/gui/drivers/NCursesInterface.ec -o $(OBJ)NCursesInterface.c -symbols $(OBJ)
endif
-ifneq "$(WINDOWS_TARGET)" ""
+ifneq ($(WINDOWS_TARGET),)
$(OBJ)Win32Interface.c: src/gui/drivers/Win32Interface.ec $(OBJ)Win32Interface.sym | $(SYMBOLS)
$(ECC) $(CFLAGS) $(CECFLAGS) $(ECFLAGS) $(PRJ_CFLAGS) $(FVISIBILITY) -c src/gui/drivers/Win32Interface.ec -o $(OBJ)Win32Interface.c -symbols $(OBJ)
endif
-ifneq "$(or $(LINUX_TARGET),$(OSX_TARGET))" ""
+ifneq ($(or $(LINUX_TARGET),$(OSX_TARGET)),)
$(OBJ)XInterface.c: src/gui/drivers/XInterface.ec $(OBJ)XInterface.sym | $(SYMBOLS)
$(ECC) $(CFLAGS) $(CECFLAGS) $(ECFLAGS) $(PRJ_CFLAGS) $(FVISIBILITY) -c src/gui/drivers/XInterface.ec -o $(OBJ)XInterface.c -symbols $(OBJ)
endif
$(OBJ)BMPFormat.o: $(OBJ)BMPFormat.c
$(CC) $(CFLAGS) $(PRJ_CFLAGS) $(FVISIBILITY) -c $(OBJ)BMPFormat.c -o $(OBJ)BMPFormat.o
+ifneq ($(or $(LINUX_TARGET),$(OSX_TARGET)),)
$(OBJ)harfbuzz-freetype.o: src/gfx/drivers/harfbuzz/unicode/harfbuzz-freetype.c
$(CC) $(CFLAGS) $(PRJ_CFLAGS) -c src/gfx/drivers/harfbuzz/unicode/harfbuzz-freetype.c -o $(OBJ)harfbuzz-freetype.o
+endif
+ifneq ($(or $(LINUX_TARGET),$(OSX_TARGET)),)
$(OBJ)harfbuzz-unicode-tables.o: src/gfx/drivers/harfbuzz/unicode/harfbuzz-unicode-tables.c
$(CC) $(CFLAGS) $(PRJ_CFLAGS) -c src/gfx/drivers/harfbuzz/unicode/harfbuzz-unicode-tables.c -o $(OBJ)harfbuzz-unicode-tables.o
+endif
+ifneq ($(or $(LINUX_TARGET),$(OSX_TARGET)),)
$(OBJ)harfbuzz-unicode.o: src/gfx/drivers/harfbuzz/unicode/harfbuzz-unicode.c
$(CC) $(CFLAGS) $(PRJ_CFLAGS) -c src/gfx/drivers/harfbuzz/unicode/harfbuzz-unicode.c -o $(OBJ)harfbuzz-unicode.o
+endif
+ifneq ($(or $(LINUX_TARGET),$(OSX_TARGET)),)
$(OBJ)harfbuzz-arabic.o: src/gfx/drivers/harfbuzz/harfbuzz-arabic.c
$(CC) $(CFLAGS) $(PRJ_CFLAGS) -c src/gfx/drivers/harfbuzz/harfbuzz-arabic.c -o $(OBJ)harfbuzz-arabic.o
+endif
+ifneq ($(or $(LINUX_TARGET),$(OSX_TARGET)),)
$(OBJ)harfbuzz-buffer.o: src/gfx/drivers/harfbuzz/harfbuzz-buffer.c
$(CC) $(CFLAGS) $(PRJ_CFLAGS) -c src/gfx/drivers/harfbuzz/harfbuzz-buffer.c -o $(OBJ)harfbuzz-buffer.o
+endif
+ifneq ($(or $(LINUX_TARGET),$(OSX_TARGET)),)
$(OBJ)harfbuzz-gdef.o: src/gfx/drivers/harfbuzz/harfbuzz-gdef.c
$(CC) $(CFLAGS) $(PRJ_CFLAGS) -c src/gfx/drivers/harfbuzz/harfbuzz-gdef.c -o $(OBJ)harfbuzz-gdef.o
+endif
+ifneq ($(or $(LINUX_TARGET),$(OSX_TARGET)),)
$(OBJ)harfbuzz-gpos.o: src/gfx/drivers/harfbuzz/harfbuzz-gpos.c
$(CC) $(CFLAGS) $(PRJ_CFLAGS) -c src/gfx/drivers/harfbuzz/harfbuzz-gpos.c -o $(OBJ)harfbuzz-gpos.o
+endif
+ifneq ($(or $(LINUX_TARGET),$(OSX_TARGET)),)
$(OBJ)harfbuzz-gsub.o: src/gfx/drivers/harfbuzz/harfbuzz-gsub.c
$(CC) $(CFLAGS) $(PRJ_CFLAGS) -c src/gfx/drivers/harfbuzz/harfbuzz-gsub.c -o $(OBJ)harfbuzz-gsub.o
+endif
+ifneq ($(or $(LINUX_TARGET),$(OSX_TARGET)),)
$(OBJ)harfbuzz-hangul.o: src/gfx/drivers/harfbuzz/harfbuzz-hangul.c
$(CC) $(CFLAGS) $(PRJ_CFLAGS) -c src/gfx/drivers/harfbuzz/harfbuzz-hangul.c -o $(OBJ)harfbuzz-hangul.o
+endif
+ifneq ($(or $(LINUX_TARGET),$(OSX_TARGET)),)
$(OBJ)harfbuzz-hebrew.o: src/gfx/drivers/harfbuzz/harfbuzz-hebrew.c
$(CC) $(CFLAGS) $(PRJ_CFLAGS) -c src/gfx/drivers/harfbuzz/harfbuzz-hebrew.c -o $(OBJ)harfbuzz-hebrew.o
+endif
+ifneq ($(or $(LINUX_TARGET),$(OSX_TARGET)),)
$(OBJ)harfbuzz-indic.o: src/gfx/drivers/harfbuzz/harfbuzz-indic.c
$(CC) $(CFLAGS) $(PRJ_CFLAGS) -c src/gfx/drivers/harfbuzz/harfbuzz-indic.c -o $(OBJ)harfbuzz-indic.o
+endif
+ifneq ($(or $(LINUX_TARGET),$(OSX_TARGET)),)
$(OBJ)harfbuzz-khmer.o: src/gfx/drivers/harfbuzz/harfbuzz-khmer.c
$(CC) $(CFLAGS) $(PRJ_CFLAGS) -c src/gfx/drivers/harfbuzz/harfbuzz-khmer.c -o $(OBJ)harfbuzz-khmer.o
+endif
+ifneq ($(or $(LINUX_TARGET),$(OSX_TARGET)),)
$(OBJ)harfbuzz-myanmar.o: src/gfx/drivers/harfbuzz/harfbuzz-myanmar.c
$(CC) $(CFLAGS) $(PRJ_CFLAGS) -c src/gfx/drivers/harfbuzz/harfbuzz-myanmar.c -o $(OBJ)harfbuzz-myanmar.o
+endif
+ifneq ($(or $(LINUX_TARGET),$(OSX_TARGET)),)
$(OBJ)harfbuzz-open.o: src/gfx/drivers/harfbuzz/harfbuzz-open.c
$(CC) $(CFLAGS) $(PRJ_CFLAGS) -c src/gfx/drivers/harfbuzz/harfbuzz-open.c -o $(OBJ)harfbuzz-open.o
+endif
+ifneq ($(or $(LINUX_TARGET),$(OSX_TARGET)),)
$(OBJ)harfbuzz-shaper.o: src/gfx/drivers/harfbuzz/harfbuzz-shaper.c
$(CC) $(CFLAGS) $(PRJ_CFLAGS) -c src/gfx/drivers/harfbuzz/harfbuzz-shaper.c -o $(OBJ)harfbuzz-shaper.o
+endif
+ifneq ($(or $(LINUX_TARGET),$(OSX_TARGET)),)
$(OBJ)harfbuzz-stream.o: src/gfx/drivers/harfbuzz/harfbuzz-stream.c
$(CC) $(CFLAGS) $(PRJ_CFLAGS) -c src/gfx/drivers/harfbuzz/harfbuzz-stream.c -o $(OBJ)harfbuzz-stream.o
+endif
+ifneq ($(or $(LINUX_TARGET),$(OSX_TARGET)),)
$(OBJ)harfbuzz-tibetan.o: src/gfx/drivers/harfbuzz/harfbuzz-tibetan.c
$(CC) $(CFLAGS) $(PRJ_CFLAGS) -c src/gfx/drivers/harfbuzz/harfbuzz-tibetan.c -o $(OBJ)harfbuzz-tibetan.o
+endif
+ifneq ($(or $(LINUX_TARGET),$(OSX_TARGET)),)
$(OBJ)harfbuzz-impl.o: src/gfx/drivers/harfbuzz/harfbuzz-impl.c
$(CC) $(CFLAGS) $(PRJ_CFLAGS) -c src/gfx/drivers/harfbuzz/harfbuzz-impl.c -o $(OBJ)harfbuzz-impl.o
+endif
+ifneq ($(or $(LINUX_TARGET),$(OSX_TARGET)),)
$(OBJ)harfbuzz-thai.o: src/gfx/drivers/harfbuzz/harfbuzz-thai.c
$(CC) $(CFLAGS) $(PRJ_CFLAGS) -c src/gfx/drivers/harfbuzz/harfbuzz-thai.c -o $(OBJ)harfbuzz-thai.o
+endif
-ifneq "$(WINDOWS_TARGET)" ""
+ifneq ($(WINDOWS_TARGET),)
$(OBJ)GDIDisplayDriver.o: $(OBJ)GDIDisplayDriver.c
$(CC) $(CFLAGS) $(PRJ_CFLAGS) $(FVISIBILITY) -c $(OBJ)GDIDisplayDriver.c -o $(OBJ)GDIDisplayDriver.o
endif
$(OBJ)LFBDisplayDriver.o: $(OBJ)LFBDisplayDriver.c
$(CC) $(CFLAGS) $(PRJ_CFLAGS) $(FVISIBILITY) -c $(OBJ)LFBDisplayDriver.c -o $(OBJ)LFBDisplayDriver.o
-ifneq "$(or $(LINUX_TARGET),$(OSX_TARGET))" ""
+ifneq ($(or $(LINUX_TARGET),$(OSX_TARGET)),)
$(OBJ)NCursesDisplayDriver.o: $(OBJ)NCursesDisplayDriver.c
$(CC) $(CFLAGS) $(PRJ_CFLAGS) $(FVISIBILITY) -c $(OBJ)NCursesDisplayDriver.c -o $(OBJ)NCursesDisplayDriver.o
endif
-ifneq "$(OSX_TARGET)" ""
-$(OBJ)OpenGLDisplayDriver.o: $(OBJ)OpenGLDisplayDriver.c
- $(CC) $(CFLAGS) $(PRJ_CFLAGS) $(FVISIBILITY) -c $(OBJ)OpenGLDisplayDriver.c -o $(OBJ)OpenGLDisplayDriver.o
-endif
-
-ifneq "$(OSX_TARGET)" ""
-$(OBJ)CocoaOpenGLDisplayDriver.o: $(OBJ)CocoaOpenGLDisplayDriver.c
- $(CC) $(CFLAGS) $(PRJ_CFLAGS) $(FVISIBILITY) -c $(OBJ)CocoaOpenGLDisplayDriver.c -o $(OBJ)CocoaOpenGLDisplayDriver.o
-endif
-
-ifneq "$(or $(LINUX_TARGET),$(OSX_TARGET))" ""
+ifneq ($(or $(LINUX_TARGET),$(OSX_TARGET)),)
$(OBJ)XDisplayDriver.o: $(OBJ)XDisplayDriver.c
$(CC) $(CFLAGS) $(PRJ_CFLAGS) $(FVISIBILITY) -c $(OBJ)XDisplayDriver.c -o $(OBJ)XDisplayDriver.o
endif
$(OBJ)WindowList.o: $(OBJ)WindowList.c
$(CC) $(CFLAGS) $(PRJ_CFLAGS) $(FVISIBILITY) -c $(OBJ)WindowList.c -o $(OBJ)WindowList.o
-ifneq "$(OSX_TARGET)" ""
-$(OBJ)CocoaDispatch.o: $(OBJ)CocoaDispatch.c
- $(CC) $(CFLAGS) $(PRJ_CFLAGS) $(FVISIBILITY) -c $(OBJ)CocoaDispatch.c -o $(OBJ)CocoaDispatch.o
-endif
-
-ifneq "$(OSX_TARGET)" ""
-$(OBJ)CocoaEcereBridge.o: src/gui/drivers/cocoa/CocoaEcereBridge.m
- $(CC) $(CFLAGS) $(PRJ_CFLAGS) -c src/gui/drivers/cocoa/CocoaEcereBridge.m -o $(OBJ)CocoaEcereBridge.o
-endif
-
-ifneq "$(OSX_TARGET)" ""
-$(OBJ)CocoaInterface.o: $(OBJ)CocoaInterface.c
- $(CC) $(CFLAGS) $(PRJ_CFLAGS) $(FVISIBILITY) -c $(OBJ)CocoaInterface.c -o $(OBJ)CocoaInterface.o
-endif
-
-ifneq "$(OSX_TARGET)" ""
-$(OBJ)EcereView.o: src/gui/drivers/cocoa/EcereView.m
- $(CC) $(CFLAGS) $(PRJ_CFLAGS) -c src/gui/drivers/cocoa/EcereView.m -o $(OBJ)EcereView.o
-endif
-
-ifneq "$(or $(LINUX_TARGET),$(OSX_TARGET))" ""
+ifneq ($(or $(LINUX_TARGET),$(OSX_TARGET)),)
$(OBJ)NCursesInterface.o: $(OBJ)NCursesInterface.c
$(CC) $(CFLAGS) $(PRJ_CFLAGS) $(FVISIBILITY) -c $(OBJ)NCursesInterface.c -o $(OBJ)NCursesInterface.o
endif
-ifneq "$(WINDOWS_TARGET)" ""
+ifneq ($(WINDOWS_TARGET),)
$(OBJ)Win32Interface.o: $(OBJ)Win32Interface.c
$(CC) $(CFLAGS) $(PRJ_CFLAGS) $(FVISIBILITY) -c $(OBJ)Win32Interface.c -o $(OBJ)Win32Interface.o
endif
-ifneq "$(or $(LINUX_TARGET),$(OSX_TARGET))" ""
+ifneq ($(or $(LINUX_TARGET),$(OSX_TARGET)),)
$(OBJ)XInterface.o: $(OBJ)XInterface.c
$(CC) $(CFLAGS) $(PRJ_CFLAGS) $(FVISIBILITY) -c $(OBJ)XInterface.c -o $(OBJ)XInterface.o
endif
$(OBJ)$(MODULE).main$(O): $(OBJ)$(MODULE).main.c
$(CC) $(CFLAGS) $(PRJ_CFLAGS) $(FVISIBILITY) -c $(OBJ)$(MODULE).main.c -o $(OBJ)$(MODULE).main$(O)
-clean: objdir
- $(call rmq,$(OBJ)$(MODULE).main.o $(OBJ)$(MODULE).main.c $(OBJ)$(MODULE).main.ec $(OBJ)$(MODULE).main$(I) $(OBJ)$(MODULE).main$(S) $(TARGET))
- $(call rmq,$(_OBJECTS1))
- $(call rmq,$(_OBJECTS2))
- $(call rmq,$(ECOBJECTS1))
- $(call rmq,$(ECOBJECTS2))
- $(call rmq,$(COBJECTS1))
- $(call rmq,$(COBJECTS2))
- $(call rmq,$(BOWLS1))
- $(call rmq,$(BOWLS2))
- $(call rmq,$(IMPORTS1))
- $(call rmq,$(IMPORTS2))
- $(call rmq,$(SYMBOLS1))
- $(call rmq,$(SYMBOLS2))
-
-realclean: clean
- $(call rmrq,$(OBJ))
+cleantarget: objdir
+ $(call rm,$(OBJ)$(MODULE).main.o $(OBJ)$(MODULE).main.c $(OBJ)$(MODULE).main.ec $(OBJ)$(MODULE).main$(I) $(OBJ)$(MODULE).main$(S))
+ $(call rm,$(OBJ)symbols.lst)
+ $(call rm,$(OBJ)objects.lst)
+ $(call rm,$(TARGET))
+ifdef SHARED_LIBRARY_TARGET
+ifdef LINUX_TARGET
+ifdef LINUX_HOST
+ $(call rm,$(OBJ)$(LP)$(MODULE)$(SO)$(basename $(VER)))
+ $(call rm,$(OBJ)$(LP)$(MODULE)$(SO))
+endif
+endif
+endif
+
+clean: cleantarget
+ $(call rm,$(_OBJECTS1))
+ $(call rm,$(_OBJECTS2))
+ $(call rm,$(ECOBJECTS1))
+ $(call rm,$(ECOBJECTS2))
+ $(call rm,$(COBJECTS1))
+ $(call rm,$(COBJECTS2))
+ $(call rm,$(BOWLS1))
+ $(call rm,$(BOWLS2))
+ $(call rm,$(IMPORTS1))
+ $(call rm,$(IMPORTS2))
+ $(call rm,$(SYMBOLS1))
+ $(call rm,$(SYMBOLS2))
+
+realclean: cleantarget
+ $(call rmr,$(OBJ))
distclean:
- $(call rmrq,obj/)
+ $(_MAKE) -f $(_CF_DIR)Cleanfile distclean distclean_all_subdirs
+
+Makefile.vanilla: ;
+$(_CF_DIR)crossplatform.mk: ;
+$(_CF_DIR)default.cf: ;