ecere/gui/drivers/XInterface: Working around X11 Bool conflicting with eC Bool meanin...
[sdk] / ide / Makefile
index 1883806..fbb4a30 100644 (file)
@@ -1,8 +1,9 @@
-.PHONY: all objdir cleantarget clean realclean distclean
+.PHONY: all objdir cleantarget clean realclean distclean src/about.ec
 
 # CORE VARIABLES
 
 MODULE := ide
+VERSION := 
 CONFIG := release
 ifndef COMPILER
 COMPILER := default
@@ -100,9 +101,23 @@ ECOBJECTS = $(call shwspace,$(addprefix $(OBJ),$(patsubst %.ec,%$(O),$(notdir $(
 
 BOWLS = $(call shwspace,$(addprefix $(OBJ),$(patsubst %.ec,%$(B),$(notdir $(_ECSOURCES)))))
 
-OBJECTS = $(ECOBJECTS) $(OBJ)$(MODULE).main$(O)
+ifdef WINDOWS_TARGET
+
+_RCSOURCES = \
+       src/resources.rc
+
+RCSOURCES = $(call shwspace,$(_RCSOURCES))
+
+RCOBJECTS = $(call shwspace,$(addprefix $(OBJ),$(patsubst %.rc,%$(O),$(notdir $(_RCSOURCES)))))
+
+else
+RCSOURCES =
+RCOBJECTS =
+endif
+
+OBJECTS = $(ECOBJECTS) $(OBJ)$(MODULE).main$(O) $(RCOBJECTS)
 
-SOURCES = $(ECSOURCES)
+SOURCES = $(ECSOURCES) $(RCSOURCES)
 
 RESOURCES = $(RESOURCES1) $(RESOURCES2)
 RESOURCES1 = \
@@ -133,6 +148,7 @@ RESOURCES1 = \
        $(RES)actions/stepOut.png \
        $(RES)actions/stepOver.png \
        $(RES)actions/stopDebug.png \
+       $(RES)actions/stepOverSkipBreak.png \
        $(RES)codeMarks/breakpoint.png \
        $(RES)codeMarks/breakpointDisabled.png \
        $(RES)codeMarks/breakpointHalf.png \
@@ -144,6 +160,7 @@ RESOURCES1 = \
        $(RES)codeMarks/topFrameHalf.png \
        $(RES)codeMarks/topFrameHalfError.png \
        $(RES)others/mousePointer.png \
+       $(RES)status/software-update-available.png \
        locale/zh_CN/LC_MESSAGES/ide.mo \
        locale/es_ES/LC_MESSAGES/ide.mo \
        ../LICENSE \
@@ -151,10 +168,10 @@ RESOURCES1 = \
        ../extras/res/licenses/tango.COPYING \
        ../extras/res/licenses/zlib.README \
        ../extras/res/licenses/sqlite.LICENSE \
-       ../extras/res/licenses/jpg.LICENSE \
-       ../extras/res/licenses/ungif.LICENSE \
-       ../extras/res/licenses/freetype.LICENSE
+       ../extras/res/licenses/jpg.LICENSE
 RESOURCES2 = \
+       ../extras/res/licenses/ungif.LICENSE \
+       ../extras/res/licenses/freetype.LICENSE \
        ../extras/res/licenses/harfbuzz.LICENSE \
        ../extras/res/licenses/upx.LICENSE \
        ../extras/res/licenses/gpl.LICENSE \
@@ -176,7 +193,8 @@ PRJ_CFLAGS += \
         $(if $(OSX_TARGET), \
                         -I/usr/X11R6/include,) \
         $(if $(DEBUG), -g, -O2 -ffast-math) $(FPIC) -w \
-                        $(FVISIBILITY)
+                        $(FVISIBILITY) \
+                        -DREPOSITORY_VERSION="\"$(REPOSITORY_VER)\""
 
 
 
@@ -186,13 +204,6 @@ ECFLAGS += \
 
 # PLATFORM-SPECIFIC OPTIONS
 
-ifdef WINDOWS_TARGET
-
-ifndef STATIC_LIBRARY_TARGET
-LIBS += $(OBJ)resources.o
-endif
-
-else
 ifdef LINUX_TARGET
 
 ifndef STATIC_LIBRARY_TARGET
@@ -214,7 +225,6 @@ endif
 
 endif
 endif
-endif
 
 
 
@@ -242,11 +252,8 @@ $(OBJ)$(MODULE).main.c: $(OBJ)$(MODULE).main.ec
 
 $(SYMBOLS): | objdir
 $(OBJECTS): | objdir
-$(TARGET): $(SOURCES) $(RESOURCES) $(SYMBOLS) $(OBJECTS) | objdir
+$(TARGET): $(SOURCES) $(RCSOURCES) $(RESOURCES) $(SYMBOLS) $(OBJECTS) | objdir
 ifndef STATIC_LIBRARY_TARGET
-ifdef WINDOWS_TARGET
-$(TARGET): $(OBJ)resources.o
-endif
        $(CC) $(OFLAGS) $(OBJECTS) $(LIBS) -o $(TARGET) $(INSTALLNAME)
 ifndef NOSTRIP
        $(STRIP) $(STRIPOPT) $(TARGET)
@@ -254,9 +261,10 @@ endif
        $(EAR) aw$(EARFLAGS) $(TARGET) res/ecere.jpg res/ecereBack.jpg res/icon.png ../crossplatform.mk ""
        $(EAR) aw$(EARFLAGS) $(TARGET) $(RES)actions/attach.png $(RES)actions/delete.png $(RES)actions/detach.png $(RES)actions/docNew.png $(RES)actions/editCopy.png $(RES)actions/editDelete.png $(RES)actions/delete2.png $(RES)actions/build.png $(RES)actions/clean.png $(RES)actions/debug.png "actions"
        $(EAR) aw$(EARFLAGS) $(TARGET) $(RES)actions/docOpen.png $(RES)actions/docSave.png $(RES)actions/docSaveAll.png $(RES)actions/pause.png $(RES)actions/projAdd.png $(RES)actions/projNew.png $(RES)actions/projOpen.png $(RES)actions/rebuild.png $(RES)actions/regMakefile.png $(RES)actions/relink.png "actions"
-       $(EAR) aw$(EARFLAGS) $(TARGET) $(RES)actions/restart.png $(RES)actions/run.png $(RES)actions/skipBreaks.png $(RES)actions/stepInto.png $(RES)actions/stepOut.png $(RES)actions/stepOver.png $(RES)actions/stopDebug.png "actions"
+       $(EAR) aw$(EARFLAGS) $(TARGET) $(RES)actions/restart.png $(RES)actions/run.png $(RES)actions/skipBreaks.png $(RES)actions/stepInto.png $(RES)actions/stepOut.png $(RES)actions/stepOver.png $(RES)actions/stopDebug.png $(RES)actions/stepOverSkipBreak.png "actions"
        $(EAR) aw$(EARFLAGS) $(TARGET) $(RES)codeMarks/breakpoint.png $(RES)codeMarks/breakpointDisabled.png $(RES)codeMarks/breakpointHalf.png $(RES)codeMarks/breakpointHalfDisabled.png $(RES)codeMarks/cursor.png $(RES)codeMarks/cursorError.png $(RES)codeMarks/topFrame.png $(RES)codeMarks/topFrameError.png $(RES)codeMarks/topFrameHalf.png $(RES)codeMarks/topFrameHalfError.png "codeMarks"
        $(EAR) aw$(EARFLAGS) $(TARGET) $(RES)others/mousePointer.png "others"
+       $(EAR) aw$(EARFLAGS) $(TARGET) $(RES)status/software-update-available.png "status"
        $(EAR) aw$(EARFLAGS) $(TARGET) locale/zh_CN/LC_MESSAGES/ide.mo "locale/zh_CN/LC_MESSAGES"
        $(EAR) aw$(EARFLAGS) $(TARGET) locale/es_ES/LC_MESSAGES/ide.mo "locale/es_ES/LC_MESSAGES"
        $(EAR) aw$(EARFLAGS) $(TARGET) ../LICENSE ../extras/res/licenses/png.LICENSE ../extras/res/licenses/tango.COPYING ../extras/res/licenses/zlib.README ../extras/res/licenses/sqlite.LICENSE ../extras/res/licenses/jpg.LICENSE ../extras/res/licenses/ungif.LICENSE ../extras/res/licenses/freetype.LICENSE ../extras/res/licenses/harfbuzz.LICENSE ../extras/res/licenses/upx.LICENSE "licenses"
@@ -266,11 +274,6 @@ else
 endif
        $(call cpq,$(TARGET),../obj/$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/bin/)
 
-ifdef WINDOWS_TARGET
-$(OBJ)resources.o: src/icon2.ico src/resources.rc | objdir
-       $(GCC_PREFIX)windres src/resources.rc $(OBJ)resources.o
-endif
-
 # SYMBOL RULES
 
 $(OBJ)FileSystemIterator.sym: ../extras/FileSystemIterator.ec
@@ -672,6 +675,12 @@ $(OBJ)ProjectSettings.o: $(OBJ)ProjectSettings.c
 $(OBJ)licensing.o: $(OBJ)licensing.c
        $(CC) $(CFLAGS) $(PRJ_CFLAGS) -c $(OBJ)licensing.c -o $(OBJ)licensing.o
 
+ifdef WINDOWS_TARGET
+
+$(OBJ)resources.o: src/resources.rc
+       $(WINDRES) $(WINDRES_FLAGS) $< $@
+endif
+
 $(OBJ)$(MODULE).main$(O): $(OBJ)$(MODULE).main.c
        $(CC) $(CFLAGS) $(PRJ_CFLAGS) -c $(OBJ)$(MODULE).main.c -o $(OBJ)$(MODULE).main$(O)
 
@@ -680,15 +689,15 @@ cleantarget: objdir
 
 clean: cleantarget
        $(call rmq,$(_OBJECTS))
+ifdef WINDOWS_TARGET
+       $(call rmq,$(RCOBJECTS))
+endif
        $(call rmq,$(OBJ)$(MODULE).main.o $(OBJ)$(MODULE).main.c $(OBJ)$(MODULE).main.ec $(OBJ)$(MODULE).main$(I) $(OBJ)$(MODULE).main$(S))
        $(call rmq,$(ECOBJECTS))
        $(call rmq,$(COBJECTS))
        $(call rmq,$(BOWLS))
        $(call rmq,$(IMPORTS))
        $(call rmq,$(SYMBOLS))
-ifdef WINDOWS_TARGET
-       $(call rmq,$(OBJ)resources.o)
-endif
 
 realclean: cleantarget
        $(call rmrq,$(OBJ))