]> sigrok.org Git - sigrok-cli.git/blobdiff - contrib/sigrok-cli_cross.nsi.in
nsis: Fix for installing 64bit Windows programs into 'Program Files'
[sigrok-cli.git] / contrib / sigrok-cli_cross.nsi.in
index ed4320950256148e76c5c609b769d275f7b97545..6f60540fa19cfd31969dbacff3b624403cf3b4a6 100644 (file)
@@ -1,7 +1,7 @@
 ##
 ## This file is part of the sigrok-cli project.
 ##
-## Copyright (C) 2011-2014 Uwe Hermann <uwe@hermann-uwe.de>
+## Copyright (C) 2011-2020 Uwe Hermann <uwe@hermann-uwe.de>
 ##
 ## This program is free software; you can redistribute it and/or modify
 ## it under the terms of the GNU General Public License as published by
@@ -40,7 +40,11 @@ Name "@PACKAGE_NAME@"
 OutFile "@PACKAGE_NAME@-@SC_PACKAGE_VERSION@-installer.exe"
 
 # Where to install the application.
-InstallDir "$PROGRAMFILES\sigrok\@PACKAGE_NAME@"
+!ifdef PE64
+       InstallDir "$PROGRAMFILES64\sigrok\@PACKAGE_NAME@"
+!else
+       InstallDir "$PROGRAMFILES\sigrok\@PACKAGE_NAME@"
+!endif
 
 # Request admin privileges for Windows Vista and Windows 7.
 # http://nsis.sourceforge.net/Docs/Chapter4.html
@@ -110,7 +114,6 @@ RequestExecutionLevel admin
 # --- Default section ---------------------------------------------------------
 
 Section "@PACKAGE_NAME@ (required)" Section1
-
        # This section is gray (can't be disabled) in the component list.
        SectionIn RO
 
@@ -130,6 +133,7 @@ Section "@PACKAGE_NAME@ (required)" Section1
        # Python
        File "${CROSS}/python34.dll"
        File "${CROSS}/python34.zip"
+       File "${CROSS}/*.pyd"
 
        SetOutPath "$INSTDIR\share"
 
@@ -157,17 +161,17 @@ Section "@PACKAGE_NAME@ (required)" Section1
                SW_SHOWNORMAL "" "Run @PACKAGE_NAME@"
 
        # Create a shortcut for the uninstaller.
-       CreateShortCut "$SMPROGRAMS\sigrok\@PACKAGE_NAME@\Uninstall.lnk" \
+       CreateShortCut "$SMPROGRAMS\sigrok\@PACKAGE_NAME@\Uninstall @PACKAGE_NAME@.lnk" \
                "$INSTDIR\Uninstall.exe" "" "$INSTDIR\Uninstall.exe" 0 \
                SW_SHOWNORMAL "" "Uninstall @PACKAGE_NAME@"
 
        # Create a shortcut for the Zadig executable.
-       CreateShortCut "$SMPROGRAMS\sigrok\@PACKAGE_NAME@\Zadig.lnk" \
+       CreateShortCut "$SMPROGRAMS\sigrok\@PACKAGE_NAME@\Zadig (@PACKAGE_NAME@).lnk" \
                "$INSTDIR\zadig.exe" "" "$INSTDIR\zadig.exe" 0 \
                SW_SHOWNORMAL "" "Zadig"
 
        # Create a shortcut for the Zadig executable (for Win XP).
-       CreateShortCut "$SMPROGRAMS\sigrok\@PACKAGE_NAME@\Zadig (Win XP).lnk" \
+       CreateShortCut "$SMPROGRAMS\sigrok\@PACKAGE_NAME@\Zadig (@PACKAGE_NAME@, Win XP).lnk" \
                "$INSTDIR\zadig_xp.exe" "" "$INSTDIR\zadig_xp.exe" 0 \
                SW_SHOWNORMAL "" "Zadig (Win XP)"
 
@@ -195,7 +199,6 @@ Section "@PACKAGE_NAME@ (required)" Section1
        WriteRegDWORD HKLM "${REGSTR}" "NoRepair" 1
 
        # TODO: Add sigrok-cli directory to the PATH env. variable.
-
 SectionEnd
 
 Section /o "Example data" Section2
@@ -219,7 +222,7 @@ Section /o "Example data" Section2
        File "${CROSS}/share/sigrok-dumps/z80/kc85/kc85-20mhz.sr"
 
        # Create a shortcut for the example data folder.
-       CreateShortCut "$SMPROGRAMS\sigrok\@PACKAGE_NAME@\Examples.lnk" \
+       CreateShortCut "$SMPROGRAMS\sigrok\@PACKAGE_NAME@\Examples (@PACKAGE_NAME@).lnk" \
                "$INSTDIR\examples" "" "$INSTDIR\examples" 0 \
                SW_SHOWNORMAL "" ""
 SectionEnd
@@ -228,7 +231,6 @@ SectionEnd
 # --- Uninstaller section -----------------------------------------------------
 
 Section "Uninstall"
-
        # Always delete the uninstaller first (yes, this really works).
        Delete "$INSTDIR\Uninstall.exe"
 
@@ -239,6 +241,7 @@ Section "Uninstall"
        Delete "$INSTDIR\zadig_xp.exe"
        Delete "$INSTDIR\python34.dll"
        Delete "$INSTDIR\python34.zip"
+       Delete "$INSTDIR\*.pyd"
 
        # Delete all decoders and everything else in libsigrokdecode/.
        # There could be *.pyc files or __pycache__ subdirs and so on.
@@ -257,10 +260,10 @@ Section "Uninstall"
 
        # Delete the links from the start menu.
        Delete "$SMPROGRAMS\sigrok\@PACKAGE_NAME@\sigrok command-line tool.lnk"
-       Delete "$SMPROGRAMS\sigrok\@PACKAGE_NAME@\Uninstall.lnk"
-       Delete "$SMPROGRAMS\sigrok\@PACKAGE_NAME@\Zadig.lnk"
-       Delete "$SMPROGRAMS\sigrok\@PACKAGE_NAME@\Zadig (Win XP).lnk"
-       Delete "$SMPROGRAMS\sigrok\@PACKAGE_NAME@\Examples.lnk"
+       Delete "$SMPROGRAMS\sigrok\@PACKAGE_NAME@\Uninstall @PACKAGE_NAME@.lnk"
+       Delete "$SMPROGRAMS\sigrok\@PACKAGE_NAME@\Zadig (@PACKAGE_NAME@).lnk"
+       Delete "$SMPROGRAMS\sigrok\@PACKAGE_NAME@\Zadig (@PACKAGE_NAME@, Win XP).lnk"
+       Delete "$SMPROGRAMS\sigrok\@PACKAGE_NAME@\Examples (@PACKAGE_NAME@).lnk"
 
        # Delete the sub-directory in the start menu.
        RMDir "$SMPROGRAMS\sigrok\@PACKAGE_NAME@"
@@ -268,7 +271,6 @@ Section "Uninstall"
 
        # Delete the registry key(s).
        DeleteRegKey HKLM "${REGSTR}"
-
 SectionEnd