diff options
author | Dirk Hohndel <dirk@hohndel.org> | 2020-10-28 10:55:02 -0700 |
---|---|---|
committer | Dirk Hohndel <dirk@hohndel.org> | 2020-10-30 12:24:36 -0700 |
commit | e9073a7570f490ad169dbd92a7d6f102c423c2ca (patch) | |
tree | 4c8b4ba00449ea030d04c8683821b7162fa09a42 | |
parent | cdf1865246563fde47a1cf2a5fc3c0fd70b8e5ba (diff) | |
download | subsurface-e9073a7570f490ad169dbd92a7d6f102c423c2ca.tar.gz |
build-system: first steps towards a 64bit Windows build
This is barely scratching the surface (no put intended), and of course the
container needs to be updated, first, to have a 64bit version of MXE installed,
but this seems to help make libmtp build correctly.
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
-rw-r--r-- | CMakeLists.txt | 2 | ||||
-rw-r--r-- | packaging/windows/create-win-installer.sh | 11 | ||||
-rwxr-xr-x | packaging/windows/mxe-based-build.sh | 4 | ||||
-rw-r--r-- | packaging/windows/subsurface.nsi.in | 2 | ||||
-rw-r--r-- | scripts/windows-container/in-container-build.sh | 6 |
5 files changed, 13 insertions, 12 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index d08af9382..478bf305d 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -474,7 +474,7 @@ elseif(CMAKE_SYSTEM_NAME STREQUAL "Darwin") elseif(CMAKE_SYSTEM_NAME STREQUAL "Windows") if (CMAKE_BUILD_TYPE STREQUAL "RelWithDebInfo") if(NOT DEFINED OBJCOPY) - set(OBJCOPY i686-w64-mingw32.shared-objcopy) + set(OBJCOPY x86_64-w64-mingw32.shared-objcopy) endif() find_program(OBJCOPY_FOUND ${OBJCOPY}) if (OBJCOPY_FOUND) diff --git a/packaging/windows/create-win-installer.sh b/packaging/windows/create-win-installer.sh index e5e5c946e..f8d95f156 100644 --- a/packaging/windows/create-win-installer.sh +++ b/packaging/windows/create-win-installer.sh @@ -9,15 +9,16 @@ cd /__w bash subsurface/.github/workflows/scripts/windows-container-prep.sh # remove artifact from prior builds -rm mdbtools/include/mdbver.h +rm -f mdbtools/include/mdbver.h # build the installer -rm -rf win32 -mkdir win32 -cd win32 +rm -rf win64 +mkdir win64 +cd win64 # build Subsurface and then smtk2ssrf -export MXEBUILDTYPE=i686-w64-mingw32.shared +export MXEBUILDTYPE=x86_64-w64-mingw32.shared +export PATH=/win/mxe/usr/bin:$PATH bash -ex ../subsurface/packaging/windows/mxe-based-build.sh installer mv subsurface/subsurface-*.exe /__w diff --git a/packaging/windows/mxe-based-build.sh b/packaging/windows/mxe-based-build.sh index fc4c73db3..cb2e65beb 100755 --- a/packaging/windows/mxe-based-build.sh +++ b/packaging/windows/mxe-based-build.sh @@ -17,7 +17,7 @@ # JOBS := 1 # # # This variable controls the targets that will build. -# MXE_TARGETS := i686-w64-mingw32.shared.posix.dw2 +# MXE_TARGETS := x86_64-w64-mingw32.shared # # # Uncomment the next line if you want to do debug builds later # # qtbase_CONFIGURE_OPTS=-debug-and-release @@ -101,7 +101,7 @@ EXECDIR=`pwd` BASEDIR=$(cd "$EXECDIR/.."; pwd) BUILDDIR=$(cd "$EXECDIR"; pwd) MXEDIR=${MXEDIR:-mxe} -MXEBUILDTYPE=${MXEBUILDTYPE:-i686-w64-mingw32.shared.posix.dw2} +MXEBUILDTYPE=${MXEBUILDTYPE:-x86_64-w64-mingw32.shared} echo $BUILDDIR diff --git a/packaging/windows/subsurface.nsi.in b/packaging/windows/subsurface.nsi.in index c13abdae8..bc9f10cc0 100644 --- a/packaging/windows/subsurface.nsi.in +++ b/packaging/windows/subsurface.nsi.in @@ -28,7 +28,7 @@ !define MUI_ICON "subsurface.ico" # Default installation folder - InstallDir "$PROGRAMFILES\Subsurface" + InstallDir "$PROGRAMFILES64\Subsurface" # Get installation folder from registry if available InstallDirRegKey HKCU "Software\Subsurface" "" diff --git a/scripts/windows-container/in-container-build.sh b/scripts/windows-container/in-container-build.sh index fd38d7ba0..d7a563541 100644 --- a/scripts/windows-container/in-container-build.sh +++ b/scripts/windows-container/in-container-build.sh @@ -10,11 +10,11 @@ set -x set -e -mkdir -p win32 -cd win32 +mkdir -p win64 +cd win64 # right now the container still has an older version of MXE installed -export MXEBUILDTYPE=i686-w64-mingw32.shared +export MXEBUILDTYPE=x86_64-w64-mingw32.shared bash -ex ../subsurface/packaging/windows/mxe-based-build.sh installer |