summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGravatar Dirk Hohndel <dirk@hohndel.org>2014-10-29 11:24:43 -0700
committerGravatar Dirk Hohndel <dirk@hohndel.org>2014-10-29 13:01:19 -0700
commit0e0d6135afb626480f85135cf1c16c1701105088 (patch)
tree47f4db1e37f244cff91abed48d83b1b27ca97bb4
parentd5f19c43c925468f363f0e509816df724f930db9 (diff)
downloadsubsurface-0e0d6135afb626480f85135cf1c16c1701105088.tar.gz
Don't install Windows 64bit binaries on 32bit system
Also warn people installing 32bit binaries on a 64bit system Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
-rwxr-xr-xpackaging/windows/mingw-make.sh1
-rw-r--r--packaging/windows/subsurface.nsi.in13
-rw-r--r--subsurface-install.pri6
3 files changed, 19 insertions, 1 deletions
diff --git a/packaging/windows/mingw-make.sh b/packaging/windows/mingw-make.sh
index 1c94ff963..d34da5084 100755
--- a/packaging/windows/mingw-make.sh
+++ b/packaging/windows/mingw-make.sh
@@ -32,6 +32,7 @@ if [[ $1 == "Qt5-64" ]] ; then
LIBMARBLEDEVEL=../marble \
LIBGIT2DEVEL=../libgit2 CONFIG+=libgit21-api \
QMAKE_LIBDIR+=../openssl \
+ CONFIG+=win64target \
$BASEDIR/../../subsurface.pro
elif [[ $1 == "Qt5" ]] ; then
diff --git a/packaging/windows/subsurface.nsi.in b/packaging/windows/subsurface.nsi.in
index f1af9e9e5..58b59a66b 100644
--- a/packaging/windows/subsurface.nsi.in
+++ b/packaging/windows/subsurface.nsi.in
@@ -84,6 +84,19 @@
# Default installer section
Section
+ !include x64.nsh
+ ${If} 64BITBUILDTOKEN
+ ${IfNot} ${RunningX64}
+ Abort "You cannot install the 64bit version of Subsurface on a 32bit version of Windows"
+ ${EndIf}
+ ${Else}
+ ${If} ${RunningX64}
+ MessageBox MB_YESNO "Do you really want to install the 32bit version of Subsurface on your 64bit version of Windows?" IDYES goforit
+ Abort "Please download the 64bit version of the Subsurface installer"
+ goforit:
+ ${EndIf}
+ ${Endif}
+
SetShellVarContext all
# Installation path
diff --git a/subsurface-install.pri b/subsurface-install.pri
index c06f5bd30..be11b49bf 100644
--- a/subsurface-install.pri
+++ b/subsurface-install.pri
@@ -118,7 +118,11 @@ mac {
dlls.depends += $(DESTDIR_TARGET)
nsis.commands += $(CHK_DIR_EXISTS) $$WINDOWSSTAGING;
- nsis.commands += cat $$NSIINPUTFILE | sed -e \'s/VERSIONTOKEN/$$VERSION_STRING/;s/PRODVTOKEN/$${PRODVERSION_STRING}/\' > $$NSIFILE
+ win64target {
+ nsis.commands += cat $$NSIINPUTFILE | sed -e \'s/VERSIONTOKEN/$$VERSION_STRING/;s/PRODVTOKEN/$${PRODVERSION_STRING}/;s/64BITBUILDTOKEN/1 == 1/\' > $$NSIFILE
+ } else {
+ nsis.commands += cat $$NSIINPUTFILE | sed -e \'s/VERSIONTOKEN/$$VERSION_STRING/;s/PRODVTOKEN/$${PRODVERSION_STRING}/;s/64BITBUILDTOKEN/1 == 0/\' > $$NSIFILE
+ }
nsis.depends += $$NSIINPUTFILE
nsis.target = $$NSISFILE
installer.commands += $$MAKENSIS $$NSIFILE