Mercurial > hg > syntilista
changeset 49:b86eb06070ba
More work on buildsystem.
author | Matti Hamalainen <ccr@tnsp.org> |
---|---|
date | Fri, 07 Apr 2017 05:40:22 +0300 |
parents | 200ec310660a |
children | 402446a76794 |
files | Makefile.cross-mingw-win32 Makefile.gen main.h |
diffstat | 3 files changed, 38 insertions(+), 23 deletions(-) [+] |
line wrap: on
line diff
--- a/Makefile.cross-mingw-win32 Fri Apr 07 05:11:40 2017 +0300 +++ b/Makefile.cross-mingw-win32 Fri Apr 07 05:40:22 2017 +0300 @@ -3,8 +3,8 @@ # # Miscellaneous -QT5_PREFIX = /misc/packages/qt5-src/qtbase -BINTOOL_PREFIX = i686-w64-mingw32- +QT5_PREFIX ?= /misc/packages/qt5-src/qtbase +BINTOOL_PREFIX ?= i686-w64-mingw32- PREFIX = BINPATH = win32/ OBJPATH = obj/win32/ @@ -41,16 +41,4 @@ include Makefile.gen - -### -### Windows specific targets -### -$(OBJPATH)moc_predefs.h: $(QT5_PREFIX)/mkspecs/features/data/dummy.cpp - @$(CXX) $(CXXFLAGS) -dM -E -o $@ $< - -#resource.rc: resource.rc.in $VERSION -# sed -e "s/@VERSION@/$(NN_VERSION)/g;s/@VERSION_COM@/$(NN_VERSION_COM)/g;s/@ICON@/$(ICON)/g;s#@EXE@#$(notdir $(NNCHAT_BIN))#g" < $< > $@ - -#resource.o: resource.rc -# $(WINDRES) $< -O coff -o $@ \ No newline at end of file
--- a/Makefile.gen Fri Apr 07 05:11:40 2017 +0300 +++ b/Makefile.gen Fri Apr 07 05:40:22 2017 +0300 @@ -3,22 +3,35 @@ CXX = $(BINTOOL_PREFIX)g++ AR = $(BINTOOL_PREFIX)ar RANLIB = $(BINTOOL_PREFIX)ranlib +WINDRES = $(BINTOOL_PREFIX)windres + INSTALL ?= install MKDIR ?= mkdir MKDIR_P ?= $(MKDIR) -p -SYNTILISTA_BIN=$(BINPATH)Syntilista$(EXEEXT) -SYNTILISTA_OBJS=main.o qrc_Syntilista.o moc_main.o +APP_BIN=$(BINPATH)Syntilista$(EXEEXT) +APP_OBJS=main.o qrc_Syntilista.o moc_main.o +APP_VERSION= LOGO_SVG ?= kampuscafe4.svg +ICON_PNGS = icon-16.png icon-32.png icon-48.png icon-64.png -TARGETS = $(SYNTILISTA_BIN) + +TARGETS = $(APP_BIN) NOBUILD_TARGETS += $(OBJPATH) $(BINPATH) NOINST_TARGETS += qrc_Syntilista.cpp # moc_main.cpp +## +## Version strings +## +APP_VERSION := $(shell cat VERSION) +comma:= , +APP_VERSION_COM := $(subst .,$(comma),$(NN_VERSION)) +CXXFLAGS += -DAPP_VERSION=\"$(APP_VERSION)\" + ## ## Target rules @@ -48,17 +61,32 @@ @$(CXX) $(CXXFLAGS) $(DEFINES) $(INCPATH) -c -o $@ $< -## -## Application rules -## +### +### Windows specific targets +### +$(OBJPATH)moc_predefs.h: $(QT5_PREFIX)/mkspecs/features/data/dummy.cpp + @$(CXX) $(CXXFLAGS) -dM -E -o $@ $< + +resource.rc: resource.rc.in $VERSION + @sed -e "s/@VERSION@/$(APP_VERSION)/g;s/@VERSION_COM@/$(APP_VERSION_COM)/g;s#@EXE@#$(notdir $(APP_BIN))#g" < $< > $@ + +resource.o: resource.rc + $(WINDRES) $< -O coff -o $@ + + +### +### Application rules +### icon-%.png: $(LOGO_SVG) 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 "$@" "$<" +Syntilista.ico: $(ICON_PNGS) + convert $< $+ -qrc_Syntilista.cpp: Syntilista.qrc logo.png icon-16.png icon-32.png icon-48.png icon-64.png +qrc_Syntilista.cpp: Syntilista.qrc logo.png $(ICON_PNGS) @echo " Qt:RCC $@ $<" @$(QT_RCC) -name "Syntilista" $< -o $@ @@ -67,7 +95,7 @@ @$(CXX) $(CXXFLAGS) $(DEFINES) $(INCPATH) -c -o $@ $< -$(SYNTILISTA_BIN): $(addprefix $(OBJPATH),$(SYNTILISTA_OBJS)) +$(APP_BIN): $(addprefix $(OBJPATH),$(APP_OBJS)) @echo " LINK $@" @$(CXX) $(LDFLAGS) -o $@ $+ $(LIBS)
--- a/main.h Fri Apr 07 05:11:40 2017 +0300 +++ b/main.h Fri Apr 07 05:40:22 2017 +0300 @@ -19,7 +19,6 @@ #define APP_VENDOR "TNSP" // Vendor ID (for settings, etc.) #define APP_ID "Kampus Syntilista" // Application ID (for settings) #define APP_NAME "Café Kampus Syntilista" // Application title/name -#define APP_VERSION "0.2" // Version string #define APP_SQLITE_FILE "syntilista.sqlite3" // SQLite3 database file name (without path)