]> sigrok.org Git - sigrok-cli.git/blobdiff - contrib/sigrok-cli_cross.nsi.in
Pass unitsize to srd_session_send() directly.
[sigrok-cli.git] / contrib / sigrok-cli_cross.nsi.in
index c8c2f7998d667f66af7603c45da9b941c0f61d6d..7a9ec7eaf1a8e6c6529e768277f693a982ece1b7 100644 (file)
@@ -70,12 +70,6 @@ RequestExecutionLevel admin
 !define MUI_LICENSEPAGE_BUTTON $(^NextBtn)
 !define MUI_LICENSEPAGE_TEXT_BOTTOM "Click Next to continue."
 
-# File name of the Python installer MSI file.
-!define PY_INST "python-3.2.3.msi"
-
-# Standard install path of the Python installer (do not change!).
-!define PY_BIN "c:\Python32"
-
 # Path where the cross-compiled sigrok tools and libraries are located.
 # Change this to where-ever you installed libsigrok.a and so on.
 !define CROSS "$%HOME%/sr_mingw"
@@ -131,24 +125,29 @@ Section "@PACKAGE_NAME@ (required)" Section1
        # License file.
        File "../COPYING"
 
-       # sigrok-cli.
+       # sigrok-cli.exe.
        File "${CROSS}/bin/@PACKAGE_NAME@.exe"
 
-       # libusb0.dll (needed for libusb-0.1).
-       File "${CROSS}/libusb0.dll"
+       # Zadig (used for installing WinUSB drivers).
+       File "${CROSS}/zadig.exe"
+       File "${CROSS}/zadig_xp.exe"
 
-       # Install the file(s) specified below into the specified directory.
-       SetOutPath "$INSTDIR\decoders"
+       # Python
+       File "${CROSS}/python32.dll"
+       File "${CROSS}/python32.zip"
 
        # Protocol decoders.
+       SetOutPath "$INSTDIR\decoders"
        File /r /x "__pycache__" "${CROSS}/share/libsigrokdecode/decoders/*"
 
-       # Install the file(s) specified below into the specified directory.
-       SetOutPath "$INSTDIR\firmware"
-
        # Firmware files.
+       SetOutPath "$INSTDIR\firmware"
        File /r "${CROSS}/share/sigrok-firmware/*"
 
+       # Example *.sr files.
+       SetOutPath "$INSTDIR\examples"
+       File /r "${CROSS}/share/sigrok-dumps/*"
+
        # Generate the uninstaller executable.
        WriteUninstaller "$INSTDIR\Uninstall.exe"
 
@@ -158,8 +157,8 @@ Section "@PACKAGE_NAME@ (required)" Section1
 
        # Create a shortcut for sigrok-cli (this merely opens a "DOS box").
        # Set the working directory (where the user will be placed into when
-       # the DOS box starts) to the user's Desktop directory.
-       SetOutPath "$DESKTOP"
+       # the DOS box starts) to the installation directory.
+       SetOutPath "$INSTDIR"
        CreateShortCut "$SMPROGRAMS\sigrok\@PACKAGE_NAME@\sigrok command-line tool.lnk" \
                "$SYSDIR\cmd.exe" \
                "/K echo For instructions run @PACKAGE_NAME@ --help." \
@@ -171,6 +170,16 @@ Section "@PACKAGE_NAME@ (required)" Section1
                "$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" \
+               "$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" \
+               "$INSTDIR\zadig_xp.exe" "" "$INSTDIR\zadig_xp.exe" 0 \
+               SW_SHOWNORMAL "" "Zadig (Win XP)"
+
        # Create registry keys for "Add/remove programs" in the control panel.
        WriteRegStr HKLM "${REGSTR}" "DisplayName" "@PACKAGE_STRING@"
        WriteRegStr HKLM "${REGSTR}" "UninstallString" \
@@ -199,23 +208,6 @@ Section "@PACKAGE_NAME@ (required)" Section1
 SectionEnd
 
 
-# --- Python installer section ------------------------------------------------
-
-Section "Python" Section2
-
-       # Copy the Python installer MSI file into the temporary directory.
-       SetOutPath "$TEMP"
-       File "${CROSS}/${PY_INST}"
-
-       # Run the Python installer MSI file from within our installer.
-       ExecWait '"msiexec" /i "$TEMP\${PY_INST}" /QB- /passive ALLUSERS=1'
-
-       # Remove Python installer MSI file again.
-       Delete "$TEMP\${PY_INST}"
-
-SectionEnd
-
-
 # --- Uninstaller section -----------------------------------------------------
 
 Section "Uninstall"
@@ -226,7 +218,10 @@ Section "Uninstall"
        # Delete the application, the application data, and related libs.
        Delete "$INSTDIR\COPYING"
        Delete "$INSTDIR\@PACKAGE_NAME@.exe"
-       Delete "$INSTDIR\libusb0.dll"
+       Delete "$INSTDIR\zadig.exe"
+       Delete "$INSTDIR\zadig_xp.exe"
+       Delete "$INSTDIR\python32.dll"
+       Delete "$INSTDIR\python32.zip"
 
        # Delete all decoders and everything else in decoders/.
        # There could be *.pyc files or __pycache__ subdirs and so on.
@@ -235,14 +230,20 @@ Section "Uninstall"
        # Delete the firmware files.
        RMDir /r "$INSTDIR\firmware\*"
 
+       # Delete the example *.sr files.
+       RMDir /r "$INSTDIR\examples\*"
+
        # Delete the install directory and its sub-directories.
        RMDir "$INSTDIR\decoders"
        RMDir "$INSTDIR\firmware"
+       RMDir "$INSTDIR\examples"
        RMDir "$INSTDIR"
 
        # 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 the sub-directory in the start menu.
        RMDir "$SMPROGRAMS\sigrok\@PACKAGE_NAME@"
@@ -256,11 +257,9 @@ SectionEnd
 
 # --- Component selection section descriptions --------------------------------
 
-LangString DESC_Section1 ${LANG_ENGLISH} "This installs the sigrok command-line tool, some firmware files, the protocol decoders, and all required libraries."
-LangString DESC_Section2 ${LANG_ENGLISH} "This installs Python 3.2 in its default location of c:\Python32. If you already have Python 3.2 installed, you don't need to re-install it."
+LangString DESC_Section1 ${LANG_ENGLISH} "This installs the sigrok command-line tool, some firmware files, the protocol decoders, some example files, and all required libraries."
 
 !insertmacro MUI_FUNCTION_DESCRIPTION_BEGIN
 !insertmacro MUI_DESCRIPTION_TEXT ${Section1} $(DESC_Section1)
-!insertmacro MUI_DESCRIPTION_TEXT ${Section2} $(DESC_Section2)
 !insertmacro MUI_FUNCTION_DESCRIPTION_END