diff Makefile.cross-mingw @ 303:7edd1954fdaf

Implement 'install' target in cross-mingw Makefile, remove the now extraneous build shell script.
author Matti Hamalainen <ccr@tnsp.org>
date Mon, 15 May 2023 14:07:19 +0300
parents 52f0da883469
children 06c846192975
line wrap: on
line diff
--- a/Makefile.cross-mingw	Mon May 15 14:06:50 2023 +0300
+++ b/Makefile.cross-mingw	Mon May 15 14:07:19 2023 +0300
@@ -2,6 +2,8 @@
 ### For win32 version cross-compilation with MinGW suite @ Linux
 ###
 
+INSTALL = install -s
+
 # Qt version dependant stuff
 QT_VERSION_PREFIX = Qt6
 QT_PREFIX ?= /misc/packages/qt6-build/qtbase
@@ -18,16 +20,18 @@
 # Compiler/tools 64/32-bit
 ifeq ($(MINGW),64)
 BINTOOL_PREFIX ?= x86_64-w64-mingw32-
-MINGW_SYS_PATH ?= /usr/x86_64-w64-mingw32
-MINGW_LOCAL_PATH ?= /usr/local/x86_64-w64-mingw32
 OBJPATH ?= ./obj/win64/
 else
 BINTOOL_PREFIX ?= i686-w64-mingw32-
-MINGW_SYS_PATH ?= /usr/i686-w64-mingw32
-MINGW_LOCAL_PATH ?= /usr/local/i686-w64-mingw32
 OBJPATH ?= ./obj/win32/
 endif
 
+APP_INSTALL_SYS_DLLS = libgcc_s_dw2-1 libstdc++-6
+
+MINGW_CC1_PATH = $(shell $(BINTOOL_PREFIX)g++ -print-prog-name=cc1)
+MINGW_LIBS_PATH = $(shell dirname $(MINGW_CC1_PATH))
+MINGW_ZLIB1_PATH = $(shell $(BINTOOL_PREFIX)g++ -print-file-name=zlib1.dll)
+
 
 # Compiler flags and linker flags
 XCFLAGS += -fno-keep-inline-dllexport -Wno-attributes
@@ -50,3 +54,14 @@
 CLEAN_TARGETS += src/winres.rc
 
 include Makefile.gen
+
+
+install: all
+	$(MKDIR_P) $(PREFIX)/platforms/
+	$(INSTALL) $(QT_PREFIX)/plugins/platforms/qwindows.dll $(PREFIX)/platforms/
+	$(MKDIR_P) $(PREFIX)/sqldrivers/
+	$(INSTALL) $(QT_PREFIX)/plugins/sqldrivers/qsqlite.dll $(PREFIX)/sqldrivers/
+	$(INSTALL) $(APP_BIN) $(PREFIX)
+	$(INSTALL) $(foreach DLL,$(QT_MODULES),$(QT_PREFIX)/bin/$(QT_VERSION_PREFIX)$(DLL).dll) $(PREFIX)
+	$(INSTALL) $(foreach DLL,$(APP_INSTALL_SYS_DLLS),$(MINGW_LIBS_PATH)/$(DLL).dll) $(PREFIX)
+	$(INSTALL) $(MINGW_ZLIB1_PATH) $(PREFIX)