changeset 69:a242548ccce8

Build system cleanups.
author Matti Hamalainen <ccr@tnsp.org>
date Mon, 10 Apr 2017 00:24:33 +0300
parents 597bf29c5898
children 80fea47af7c3
files Makefile.cross-mingw-win32 build-win32.sh
diffstat 2 files changed, 27 insertions(+), 21 deletions(-) [+]
line wrap: on
line diff
--- a/Makefile.cross-mingw-win32	Sun Apr 09 15:54:06 2017 +0300
+++ b/Makefile.cross-mingw-win32	Mon Apr 10 00:24:33 2017 +0300
@@ -3,7 +3,8 @@
 ###
 
 # Miscellaneous
-QT5_PREFIX ?= /misc/packages/qt5-src/qtbase
+QT5_PREFIX ?= /misc/packages/qt5-src
+QT5_BASE ?= $(QT5_PREFIX)/qtbase
 BINTOOL_PREFIX ?= i686-w64-mingw32-
 PREFIX =
 BINPATH = win32/
@@ -13,36 +14,37 @@
 # Compiler flags and linker flags
 DEFINES = -DUNICODE -DQT_NEEDS_QMAIN
 INCPATH = -I. \
-	-I$(QT5_PREFIX)/include \
-	-I$(QT5_PREFIX)/include/QtWidgets \
-	-I$(QT5_PREFIX)/include/QtGui \
-	-I$(QT5_PREFIX)/include/QtSql \
-	-I$(QT5_PREFIX)/include/QtCore \
-	-I$(QT5_PREFIX)/mkspecs/win32-g++
+	-I$(QT5_BASE)/include \
+	-I$(QT5_BASE)/include/QtWidgets \
+	-I$(QT5_BASE)/include/QtGui \
+	-I$(QT5_BASE)/include/QtSql \
+	-I$(QT5_BASE)/include/QtCore \
+	-I$(QT5_MULTIMEDIA)/include \
+	-I$(QT5_BASE)/mkspecs/win32-g++
 
 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
 
 APP_LIBS = -lglu32 -lopengl32 -lgdi32 -luser32 -lmingw32 \
-	-L$(QT5_PREFIX)/lib \
-	$(QT5_PREFIX)/lib/libqtmain.a \
-	$(QT5_PREFIX)/lib/libQt5Widgets.a \
-	$(QT5_PREFIX)/lib/libQt5Gui.a \
-	$(QT5_PREFIX)/lib/libQt5Sql.a \
-	$(QT5_PREFIX)/lib/libQt5Core.a 
+	-L$(QT5_BASE)/lib \
+	$(QT5_BASE)/lib/libqtmain.a \
+	$(QT5_BASE)/lib/libQt5Widgets.a \
+	$(QT5_BASE)/lib/libQt5Gui.a \
+	$(QT5_BASE)/lib/libQt5Sql.a \
+	$(QT5_BASE)/lib/libQt5Core.a
 
 APP_DEP_LIBS = $(OBJPATH)winres.o
 APP_DEPS = 
 
 # Qt tools
-QT_RCC = $(QT5_PREFIX)/bin/rcc
+QT_RCC = $(QT5_BASE)/bin/rcc
 
-QT_MOC = $(QT5_PREFIX)/bin/moc
+QT_MOC = $(QT5_BASE)/bin/moc
 QT_MOC_FLAGS = --include moc_predefs.h
 QT_MOC_RULES = moc_predefs.h
 
-QT_UIC = $(QT5_PREFIX)/bin/uic
+QT_UIC = $(QT5_BASE)/bin/uic
 QT_UIC_FLAGS =
 
 
--- a/build-win32.sh	Sun Apr 09 15:54:06 2017 +0300
+++ b/build-win32.sh	Mon Apr 10 00:24:33 2017 +0300
@@ -2,8 +2,11 @@
 INSTALL_USB="/mnt/sdb1/Syntilista/"
 INSTALL_WINE="$HOME/.wine/drive_c/Syntilista/"
 
-QT5PATH="/misc/packages/qt5-src/qtbase/"
 BUILDPATH="win32/"
+
+QT5_PREFIX="/misc/packages/qt5-src"
+QT5_BASE="${QT5_PREFIX}/qtbase"
+
 MINGWPATH="/usr/lib/gcc/i686-w64-mingw32/6.3-win32/"
 
 do_cpinstall()
@@ -27,10 +30,11 @@
 
     echo "Installing to '$TARGET' ..."
 
-    do_cpinstall "$QT5PATH/plugins/" "$TARGET" "platforms" "qwindows.dll"
-    do_cpinstall "$QT5PATH/plugins/" "$TARGET" "sqldrivers" "qsqlite.dll"
+    do_cpinstall "$QT5_BASE/plugins/" "$TARGET" "platforms" "qwindows.dll"
+    do_cpinstall "$QT5_BASE/plugins/" "$TARGET" "sqldrivers" "qsqlite.dll"
+
     for i in Core Gui Sql Widgets; do
-        cp -f "$QT5PATH/bin/Qt5$i.dll" "$TARGET"
+        cp -f "$QT5_BASE/lib/Qt5$i.dll" "$TARGET"
     done
 
     for i in libstdc++-6 libgcc_s_sjlj-1; do
@@ -45,7 +49,7 @@
 
 
 ### Create cross-building makefiles
-make -f Makefile.cross-mingw-win32 QT5_PREFIX="$QT5PATH" BINPATH="$BUILDPATH"
+make -f Makefile.cross-mingw-win32 QT5_PREFIX="$QT5_PREFIX" BINPATH="$BUILDPATH"
 
 ### Install to targets
 do_install "$INSTALL_USB" && rm -f "$INSTALL_USB/syntilista.sqlite3"