summaryrefslogtreecommitdiffstats
path: root/scripts/docker/mxe-build-container/settings.mk
diff options
context:
space:
mode:
authorGravatar Dirk Hohndel <dirk@hohndel.org>2020-10-28 14:19:45 -0700
committerGravatar Dirk Hohndel <dirk@hohndel.org>2020-10-30 12:24:36 -0700
commite71e715cd347d3dc1e503695d7a747f175123e9e (patch)
treea32eb900ce59dd97efc4a2c9095ba7fc5c06489d /scripts/docker/mxe-build-container/settings.mk
parenta0cdd38ff65eb01b9528ef68cc740acc95be7d88 (diff)
downloadsubsurface-e71e715cd347d3dc1e503695d7a747f175123e9e.tar.gz
build-system: Docker build for 64bit MXE
We previously tried to build the MXE Docker container on GitHub using an Action, but that really didn't work well and was a lot more trouble than it was worth. So this goes back to an offline build mechanism where I simply create an updated Docker image when needed and push that to Docker Hub. But this nearly hides the most interesting change here - we are finally switching to using 64bit binaries on Windows. It's 2020 and fewer than 1% of our users use 32bit Windows machines. We'll need to expand this to be able to have both a 32bit and a 64bit version of Subsurface for Windows. But for now, this solves the problem for 99% of our users. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
Diffstat (limited to 'scripts/docker/mxe-build-container/settings.mk')
-rw-r--r--scripts/docker/mxe-build-container/settings.mk44
1 files changed, 44 insertions, 0 deletions
diff --git a/scripts/docker/mxe-build-container/settings.mk b/scripts/docker/mxe-build-container/settings.mk
new file mode 100644
index 000000000..fecac6e06
--- /dev/null
+++ b/scripts/docker/mxe-build-container/settings.mk
@@ -0,0 +1,44 @@
+# This is a template of configuration file for MXE. See
+# index.html for more extensive documentations.
+
+# This variable controls the number of compilation processes
+# within one package ("intra-package parallelism").
+JOBS := 8
+
+# This variable controls the targets that will build.
+MXE_TARGETS := x86_64-w64-mingw32.shared
+
+# The three lines below makes `make` build these "local packages" instead of all packages.
+# The ordering of the list appears weird, but this seems to help to get the build done
+# faster on a massively parallel machine to get some of the bottleneck packages built as
+# early as possible
+LOCAL_PKG_LIST := gcc \
+ openssl \
+ libmysqlclient \
+ postgresql \
+ qtbase \
+ qtwebkit \
+ nsis \
+ curl \
+ libxml2 \
+ libxslt \
+ libzip \
+ libusb1 \
+ hidapi \
+ libgit2 \
+ libftdi1 \
+ mdbtools \
+ qtconnectivity \
+ qtdeclarative \
+ qtimageformats \
+ qtlocation \
+ qtmultimedia \
+ qtquickcontrols \
+ qtquickcontrols2 \
+ qtcharts \
+ qtsvg \
+ qttools \
+ qttranslations \
+ zstd
+.DEFAULT local-pkg-list:
+local-pkg-list: $(LOCAL_PKG_LIST)