Skip to content

Commit

Permalink
Adapt Windows installer for 64 bit
Browse files Browse the repository at this point in the history
  • Loading branch information
laanwj committed Jan 21, 2014
1 parent f622232 commit 2f87b38
Show file tree
Hide file tree
Showing 3 changed files with 27 additions and 5 deletions.
2 changes: 1 addition & 1 deletion Makefile.am
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ GZIP_ENV="-9n"

BITCOIND_BIN=$(top_builddir)/src/bitcoind$(EXEEXT)
BITCOIN_QT_BIN=$(top_builddir)/src/qt/bitcoin-qt$(EXEEXT)
BITCOIN_WIN_INSTALLER=$(PACKAGE)-$(PACKAGE_VERSION)-win32-setup$(EXEEXT)
BITCOIN_WIN_INSTALLER=$(PACKAGE)-$(PACKAGE_VERSION)-win$(WINDOWS_BITS)-setup$(EXEEXT)

OSX_APP=Bitcoin-Qt.app
OSX_DMG=Bitcoin-Qt.dmg
Expand Down
6 changes: 6 additions & 0 deletions configure.ac
Original file line number Diff line number Diff line change
Expand Up @@ -193,6 +193,12 @@ case $host in
if test "x$CXXFLAGS_overridden" = "xno"; then
CXXFLAGS="$CXXFLAGS -w"
fi
case $host in
i?86-*) WINDOWS_BITS=32 ;;
x86_64-*) WINDOWS_BITS=64 ;;
*) AC_MSG_ERROR("Could not determine win32/win64 for installer") ;;
esac
AC_SUBST(WINDOWS_BITS)
;;
*darwin*)
TARGET_OS=darwin
Expand Down
24 changes: 20 additions & 4 deletions share/setup.nsi.in
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
Name @PACKAGE_NAME@
Name "@PACKAGE_NAME@ (@WINDOWS_BITS@-bit)"

RequestExecutionLevel highest
SetCompressor /SOLID lzma

# General Symbol Definitions
!define REGKEY "SOFTWARE\$(^Name)"
!define VERSION @CLIENT_VERSION_MAJOR@.@CLIENT_VERSION_MINOR@.@CLIENT_VERSION_REVISION@
!define COMPANY "Bitcoin project"
!define COMPANY "Bitcoin Core project"
!define URL http://www.bitcoin.org/

# MUI Symbol Definitions
Expand All @@ -28,6 +28,9 @@ SetCompressor /SOLID lzma
# Included files
!include Sections.nsh
!include MUI2.nsh
!if "@WINDOWS_BITS@" == "64"
!include x64.nsh
!endif

# Variables
Var StartMenuGroup
Expand All @@ -45,14 +48,18 @@ Var StartMenuGroup
!insertmacro MUI_LANGUAGE English

# Installer attributes
OutFile @abs_top_srcdir@/bitcoin-${VERSION}-win32-setup.exe
OutFile @abs_top_srcdir@/bitcoin-${VERSION}-win@[email protected]
!if "@WINDOWS_BITS@" == "64"
InstallDir $PROGRAMFILES64\Bitcoin
!else
InstallDir $PROGRAMFILES\Bitcoin
!endif
CRCCheck on
XPStyle on
BrandingText " "
ShowInstDetails show
VIProductVersion ${VERSION}.@CLIENT_VERSION_BUILD@
VIAddVersionKey ProductName Bitcoin
VIAddVersionKey ProductName "Bitcoin Core"
VIAddVersionKey ProductVersion "${VERSION}"
VIAddVersionKey CompanyName "${COMPANY}"
VIAddVersionKey CompanyWebsite "${URL}"
Expand Down Expand Up @@ -152,6 +159,15 @@ SectionEnd
# Installer functions
Function .onInit
InitPluginsDir
!if "@WINDOWS_BITS@" == "64"
${If} ${RunningX64}
; disable registry redirection (enable access to 64-bit portion of registry)
SetRegView 64
${Else}
MessageBox MB_OK|MB_ICONSTOP "Cannot install 64-bit version on a 32-bit system."
Abort
${EndIf}
!endif
FunctionEnd

# Uninstaller functions
Expand Down

0 comments on commit 2f87b38

Please sign in to comment.