# HG changeset patch # User Matti Hamalainen # Date 1491575221 -10800 # Node ID 1ac8fdd932b37394bd5b4b6f035d11c55294596d # Parent d46d3529fc9e9d37b312488ca58bb69427f91028 More work on build system. diff -r d46d3529fc9e -r 1ac8fdd932b3 Makefile --- a/Makefile Fri Apr 07 07:19:59 2017 +0300 +++ b/Makefile Fri Apr 07 17:27:01 2017 +0300 @@ -16,12 +16,12 @@ DEFINES = INCPATH = -I. `pkg-config --cflags Qt5Core Qt5Gui Qt5Widgets Qt5Sql` - CFLAGS += -pipe -O2 -Wall -W -D_REENTRANT -fPIC CXXFLAGS += -pipe -O2 -Wall -W -D_REENTRANT -fPIC LDFLAGS += -Wl,-O1 -LIBS += `pkg-config --libs Qt5Core Qt5Gui Qt5Widgets Qt5Sql` +APP_LIBS += `pkg-config --libs Qt5Core Qt5Gui Qt5Widgets Qt5Sql` +APP_DEP_LIBS = APP_DEPS = # Qt tools diff -r d46d3529fc9e -r 1ac8fdd932b3 Makefile.cross-mingw-win32 --- a/Makefile.cross-mingw-win32 Fri Apr 07 07:19:59 2017 +0300 +++ b/Makefile.cross-mingw-win32 Fri Apr 07 17:27:01 2017 +0300 @@ -23,15 +23,18 @@ CFLAGS += -pipe -fno-keep-inline-dllexport -O2 -Wall -Wextra CXXFLAGS += -pipe -fno-keep-inline-dllexport -O2 -frtti -Wall -Wextra -fexceptions -mthreads LDFLAGS += -Wl,-s -Wl,-subsystem,windows -mthreads -LIBS = -lglu32 -lopengl32 -lgdi32 -luser32 -lmingw32 \ - -L$(QT5_PREFIX)/lib $(QT5_PREFIX)/lib/libqtmain.a \ + +APP_LIBS = -lglu32 -lopengl32 -lgdi32 -luser32 -lmingw32 \ + -L$(QT5_PREFIX)/lib \ + $(QT5_PREFIX)/lib/libqtmain.a \ -lshell32 \ $(QT5_PREFIX)/lib/libQt5Widgets.a \ $(QT5_PREFIX)/lib/libQt5Gui.a \ $(QT5_PREFIX)/lib/libQt5Sql.a \ $(QT5_PREFIX)/lib/libQt5Core.a -APP_DEPS = resource.o +APP_DEP_LIBS = $(OBJPATH)resource.o +APP_DEPS = # Qt tools QT_RCC = $(QT5_PREFIX)/bin/rcc diff -r d46d3529fc9e -r 1ac8fdd932b3 Makefile.gen --- a/Makefile.gen Fri Apr 07 07:19:59 2017 +0300 +++ b/Makefile.gen Fri Apr 07 17:27:01 2017 +0300 @@ -25,13 +25,14 @@ CXXFLAGS += -DAPP_VERSION=\"$(APP_VERSION)\" LOGO_SVG ?= kampuscafe4.svg -ICON_PNGS = icon-16.png icon-32.png icon-48.png icon-64.png +ICON_PNGS = icon-64.png icon-48.png icon-32.png icon-16.png # And target lists TARGETS = $(APP_BIN) NOBUILD_TARGETS += $(OBJPATH) $(BINPATH) -NOINST_TARGETS += +NOINST_TARGETS += +DISTCLEAN_TARGETS += icon.ico $(ICON_PNGS) moc_*.cpp ui_*.h ### @@ -73,7 +74,7 @@ resource.rc: resource.rc.in icon.ico VERSION @sed -e "s/@APP_VERSION@/$(APP_VERSION)/g;s/@APP_VERSION_COM@/$(APP_VERSION_COM)/g;s#@APP_EXE@#$(notdir $(APP_BIN))#g" < $< > $@ -%.o: %.rc +$(OBJPATH)%.o: %.rc @echo " WINDRES $<" @$(WINDRES) $< -O coff -o $@ @@ -85,10 +86,11 @@ inkscape --export-area-page -w $(patsubst icon-%.png,%,$@) -h $(patsubst icon-%.png,%,$@) -e "$@" "$<" logo.png: $(LOGO_SVG) - inkscape --export-area-page -w 300 -h 280 -e "$@" "$<" + inkscape --export-area-page -w 320 -h 280 -e "$@" "$<" icon.ico: $(ICON_PNGS) - convert $< $@ + @echo " CONVERT $+ -> $@" + @convert $+ $@ qrc_Syntilista.cpp: Syntilista.qrc logo.png $(ICON_PNGS) @echo " Qt:RCC $@ $<" @@ -99,18 +101,18 @@ @$(CXX) $(CXXFLAGS) $(DEFINES) $(INCPATH) -c -o $@ $< -$(APP_BIN): $(addprefix $(OBJPATH),$(APP_OBJS)) $(APP_DEPS) +$(APP_BIN): $(addprefix $(OBJPATH),$(APP_OBJS)) $(APP_DEP_LIBS) | $(APP_DEPS) @echo " LINK $@" - @$(CXX) $(LDFLAGS) -o $@ $+ $(LIBS) + @$(CXX) $(LDFLAGS) -o $@ $+ $(APP_LIBS) ### ### Special targets ### clean: - $(RM) $(TARGETS) $(NOINST_TARGETS) $(OBJPATH)*.o + -$(RM) $(TARGETS) $(NOINST_TARGETS) $(OBJPATH)*.o distclean: clean - $(RM) *~ core *.core + -$(RM) $(DISTCLEAN_TARGETS) *~ core *.core .PHONY: clean distclean all