1!include x64.nsh 2Name "@CMAKE_PROJECT_NAME@ SDK for @INST_PLATFORM@" 3OutFile "@CMAKE_CURRENT_BINARY_DIR@\${BUILDDIR}@INST_NAME@.exe" 4InstallDir "@INST_DIR@" 5 6SetCompressor bzip2 7 8Page directory 9Page instfiles 10 11UninstPage uninstConfirm 12UninstPage instfiles 13 14Section "@CMAKE_PROJECT_NAME@ SDK for @INST_PLATFORM@ (required)" 15!ifdef WIN64 16 ${If} ${RunningX64} 17 ${DisableX64FSRedirection} 18 ${Endif} 19!endif 20 SectionIn RO 21!ifdef GCC 22 IfFileExists $SYSDIR/libturbojpeg.dll exists 0 23!else 24 IfFileExists $SYSDIR/turbojpeg.dll exists 0 25!endif 26 goto notexists 27 exists: 28!ifdef GCC 29 MessageBox MB_OK "An existing version of the @CMAKE_PROJECT_NAME@ SDK for @INST_PLATFORM@ is already installed. Please uninstall it first." 30!else 31 MessageBox MB_OK "An existing version of the @CMAKE_PROJECT_NAME@ SDK for @INST_PLATFORM@ or the TurboJPEG SDK is already installed. Please uninstall it first." 32!endif 33 quit 34 35 notexists: 36 SetOutPath $SYSDIR 37!ifdef GCC 38 File "@CMAKE_CURRENT_BINARY_DIR@\libturbojpeg.dll" 39!else 40 File "@CMAKE_CURRENT_BINARY_DIR@\${BUILDDIR}turbojpeg.dll" 41!endif 42 SetOutPath $INSTDIR\bin 43!ifdef GCC 44 File "@CMAKE_CURRENT_BINARY_DIR@\libturbojpeg.dll" 45!else 46 File "@CMAKE_CURRENT_BINARY_DIR@\${BUILDDIR}turbojpeg.dll" 47!endif 48!ifdef GCC 49 File "@CMAKE_CURRENT_BINARY_DIR@\libjpeg-@SO_MAJOR_VERSION@.dll" 50!else 51 File "@CMAKE_CURRENT_BINARY_DIR@\${BUILDDIR}jpeg@SO_MAJOR_VERSION@.dll" 52!endif 53 File "@CMAKE_CURRENT_BINARY_DIR@\${BUILDDIR}cjpeg.exe" 54 File "@CMAKE_CURRENT_BINARY_DIR@\${BUILDDIR}djpeg.exe" 55 File "@CMAKE_CURRENT_BINARY_DIR@\${BUILDDIR}jpegtran.exe" 56 File "@CMAKE_CURRENT_BINARY_DIR@\${BUILDDIR}tjbench.exe" 57 File "@CMAKE_CURRENT_BINARY_DIR@\${BUILDDIR}rdjpgcom.exe" 58 File "@CMAKE_CURRENT_BINARY_DIR@\${BUILDDIR}wrjpgcom.exe" 59 SetOutPath $INSTDIR\lib 60!ifdef GCC 61 File "@CMAKE_CURRENT_BINARY_DIR@\libturbojpeg.dll.a" 62 File "@CMAKE_CURRENT_BINARY_DIR@\libturbojpeg.a" 63 File "@CMAKE_CURRENT_BINARY_DIR@\libjpeg.dll.a" 64 File "@CMAKE_CURRENT_BINARY_DIR@\libjpeg.a" 65!else 66 File "@CMAKE_CURRENT_BINARY_DIR@\${BUILDDIR}turbojpeg.lib" 67 File "@CMAKE_CURRENT_BINARY_DIR@\${BUILDDIR}turbojpeg-static.lib" 68 File "@CMAKE_CURRENT_BINARY_DIR@\${BUILDDIR}jpeg.lib" 69 File "@CMAKE_CURRENT_BINARY_DIR@\${BUILDDIR}jpeg-static.lib" 70!endif 71 SetOutPath $INSTDIR\lib\pkgconfig 72 File "@CMAKE_CURRENT_BINARY_DIR@\pkgscripts\libjpeg.pc" 73 File "@CMAKE_CURRENT_BINARY_DIR@\pkgscripts\libturbojpeg.pc" 74!ifdef JAVA 75 SetOutPath $INSTDIR\classes 76 File "@CMAKE_CURRENT_BINARY_DIR@\java\turbojpeg.jar" 77!endif 78 SetOutPath $INSTDIR\include 79 File "@CMAKE_CURRENT_BINARY_DIR@\jconfig.h" 80 File "@CMAKE_CURRENT_SOURCE_DIR@\jerror.h" 81 File "@CMAKE_CURRENT_SOURCE_DIR@\jmorecfg.h" 82 File "@CMAKE_CURRENT_SOURCE_DIR@\jpeglib.h" 83 File "@CMAKE_CURRENT_SOURCE_DIR@\turbojpeg.h" 84 SetOutPath $INSTDIR\doc 85 File "@CMAKE_CURRENT_SOURCE_DIR@\README.ijg" 86 File "@CMAKE_CURRENT_SOURCE_DIR@\README.md" 87 File "@CMAKE_CURRENT_SOURCE_DIR@\LICENSE.md" 88 File "@CMAKE_CURRENT_SOURCE_DIR@\example.txt" 89 File "@CMAKE_CURRENT_SOURCE_DIR@\libjpeg.txt" 90 File "@CMAKE_CURRENT_SOURCE_DIR@\structure.txt" 91 File "@CMAKE_CURRENT_SOURCE_DIR@\usage.txt" 92 File "@CMAKE_CURRENT_SOURCE_DIR@\wizard.txt" 93 File "@CMAKE_CURRENT_SOURCE_DIR@\tjexample.c" 94 File "@CMAKE_CURRENT_SOURCE_DIR@\java\TJExample.java" 95!ifdef GCC 96 SetOutPath $INSTDIR\man\man1 97 File "@CMAKE_CURRENT_SOURCE_DIR@\cjpeg.1" 98 File "@CMAKE_CURRENT_SOURCE_DIR@\djpeg.1" 99 File "@CMAKE_CURRENT_SOURCE_DIR@\jpegtran.1" 100 File "@CMAKE_CURRENT_SOURCE_DIR@\rdjpgcom.1" 101 File "@CMAKE_CURRENT_SOURCE_DIR@\wrjpgcom.1" 102!endif 103 104 WriteRegStr HKLM "SOFTWARE\@INST_REG_NAME@ @VERSION@" "Install_Dir" "$INSTDIR" 105 106 WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\@INST_REG_NAME@ @VERSION@" "DisplayName" "@CMAKE_PROJECT_NAME@ SDK v@VERSION@ for @INST_PLATFORM@" 107 WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\@INST_REG_NAME@ @VERSION@" "UninstallString" '"$INSTDIR\uninstall_@VERSION@.exe"' 108 WriteRegDWORD HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\@INST_REG_NAME@ @VERSION@" "NoModify" 1 109 WriteRegDWORD HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\@INST_REG_NAME@ @VERSION@" "NoRepair" 1 110 WriteUninstaller "uninstall_@VERSION@.exe" 111SectionEnd 112 113Section "Uninstall" 114!ifdef WIN64 115 ${If} ${RunningX64} 116 ${DisableX64FSRedirection} 117 ${Endif} 118!endif 119 120 SetShellVarContext all 121 122 DeleteRegKey HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\@INST_REG_NAME@ @VERSION@" 123 DeleteRegKey HKLM "SOFTWARE\@INST_REG_NAME@ @VERSION@" 124 125!ifdef GCC 126 Delete $INSTDIR\bin\libjpeg-@SO_MAJOR_VERSION@.dll 127 Delete $INSTDIR\bin\libturbojpeg.dll 128 Delete $SYSDIR\libturbojpeg.dll 129 Delete $INSTDIR\lib\libturbojpeg.dll.a 130 Delete $INSTDIR\lib\libturbojpeg.a 131 Delete $INSTDIR\lib\libjpeg.dll.a 132 Delete $INSTDIR\lib\libjpeg.a 133!else 134 Delete $INSTDIR\bin\jpeg@SO_MAJOR_VERSION@.dll 135 Delete $INSTDIR\bin\turbojpeg.dll 136 Delete $SYSDIR\turbojpeg.dll 137 Delete $INSTDIR\lib\jpeg.lib 138 Delete $INSTDIR\lib\jpeg-static.lib 139 Delete $INSTDIR\lib\turbojpeg.lib 140 Delete $INSTDIR\lib\turbojpeg-static.lib 141!endif 142 Delete $INSTDIR\lib\pkgconfig\libjpeg.pc 143 Delete $INSTDIR\lib\pkgconfig\libturbojpeg.pc 144!ifdef JAVA 145 Delete $INSTDIR\classes\turbojpeg.jar 146!endif 147 Delete $INSTDIR\bin\cjpeg.exe 148 Delete $INSTDIR\bin\djpeg.exe 149 Delete $INSTDIR\bin\jpegtran.exe 150 Delete $INSTDIR\bin\tjbench.exe 151 Delete $INSTDIR\bin\rdjpgcom.exe 152 Delete $INSTDIR\bin\wrjpgcom.exe 153 Delete $INSTDIR\include\jconfig.h 154 Delete $INSTDIR\include\jerror.h 155 Delete $INSTDIR\include\jmorecfg.h 156 Delete $INSTDIR\include\jpeglib.h 157 Delete $INSTDIR\include\turbojpeg.h 158 Delete $INSTDIR\uninstall_@VERSION@.exe 159 Delete $INSTDIR\doc\README.ijg 160 Delete $INSTDIR\doc\README.md 161 Delete $INSTDIR\doc\LICENSE.md 162 Delete $INSTDIR\doc\example.txt 163 Delete $INSTDIR\doc\libjpeg.txt 164 Delete $INSTDIR\doc\structure.txt 165 Delete $INSTDIR\doc\usage.txt 166 Delete $INSTDIR\doc\wizard.txt 167 Delete $INSTDIR\doc\tjexample.c 168 Delete $INSTDIR\doc\TJExample.java 169!ifdef GCC 170 Delete $INSTDIR\man\man1\cjpeg.1 171 Delete $INSTDIR\man\man1\djpeg.1 172 Delete $INSTDIR\man\man1\jpegtran.1 173 Delete $INSTDIR\man\man1\rdjpgcom.1 174 Delete $INSTDIR\man\man1\wrjpgcom.1 175!endif 176 177 RMDir "$INSTDIR\include" 178 RMDir "$INSTDIR\lib\pkgconfig" 179 RMDir "$INSTDIR\lib" 180 RMDir "$INSTDIR\doc" 181!ifdef GCC 182 RMDir "$INSTDIR\man\man1" 183 RMDir "$INSTDIR\man" 184!endif 185!ifdef JAVA 186 RMDir "$INSTDIR\classes" 187!endif 188 RMDir "$INSTDIR\bin" 189 RMDir "$INSTDIR" 190 191SectionEnd 192