/[svn]/misc/trunk/win32_installer/linuxsampler_all.nsi
ViewVC logotype

Diff of /misc/trunk/win32_installer/linuxsampler_all.nsi

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1900 by schoenebeck, Mon May 11 19:50:03 2009 UTC revision 3022 by persson, Sun Oct 23 10:25:33 2016 UTC
# Line 1  Line 1 
1  ; LinuxSampler Windows installer  ; LinuxSampler Windows installer
2  ;  ;
3  ; Copyright (C) 2007-2009, The LinuxSampler Developers  ; Copyright (C) 2007-2016, The LinuxSampler Developers
4  ;  ;
5  ; All-in-one Installer for all subprojects / software components of the  ; All-in-one Installer for all subprojects / software components of the
6  ; LinuxSampler Project.  ; LinuxSampler Project.
7  ;  ;
8  ; PREREQUISITES:  ; PREREQUISITES:
9  ;  ;
10  ; -> You must install the file cpudesc\cpudesc.dll into the NSIS's  ; -> You must install the file cpudesc\cpudesc.dll into the working
11  ;    plugin directory before being able to compile this installer!  ;    directory before being able to compile this installer!
12  ;  ;
13  ; -> The compiled binaries must be placed into the respective directories  ; -> The compiled binaries must be placed into the respective directories
14  ;    under bin\ (you have to read this file in order to get those exact  ;    under bin\ (you have to read this file in order to get those exact
15  ;    locations and expected file names).  ;    locations and expected file names).
16    
17    ; NSIS plug-in for getting CPU information
18    !addplugindir cpudesc
19    
20  ; Probably the best compression ratio  ; Probably the best compression ratio
21  SetCompressor lzma  SetCompressor lzma
22    
23  ;Include Modern UI  ;Include Modern UI
24  !include "MUI.nsh"  !include "MUI.nsh"
25  !include "EnvVarUpdate.nsh"  !include "EnvVarUpdate.nsh"
26    !include "WordFunc.nsh"
27    
28  !define RELEASE_DATE "20090511"  !define /date RELEASE_DATE "%Y%m%d"
29    !searchparse /file bin/686/linuxsampler.pc `Version: ` LINUXSAMPLER_VERSION
30    !searchparse /file bin/686/gig.pc `Version: ` LIBGIG_VERSION
31    !searchparse /file bin/686/gigedit.version `` GIGEDIT_VERSION
32    !define FANTASIA_VERSION "0.9"
33    !searchparse /file bin/686/qsampler.version `` QSAMPLER_VERSION
34    !searchparse /file bin/686/sndfile.pc `Version: ` SNDFILE_VERSION
35    
36  ; The name of the installer  ; The name of the installer
37  Name "LinuxSampler (${RELEASE_DATE})"  Name "LinuxSampler (${RELEASE_DATE})"
# Line 31  OutFile "linuxsampler_${RELEASE_DATE}_se Line 41  OutFile "linuxsampler_${RELEASE_DATE}_se
41    
42  ; Java Runtime Environment, needed for JSampler  ; Java Runtime Environment, needed for JSampler
43  !define JRE_VERSION "1.6"  !define JRE_VERSION "1.6"
44  !define JRE_URL "http://javadl.sun.com/webapps/download/AutoDL?BundleId=11292"  ; jre-8u111-windows-i586.exe:
45    !define JRE_32_URL "http://javadl.oracle.com/webapps/download/AutoDL?BundleId=216432"
46    ; jre-8u111-windows-x64.exe:
47    !define JRE_64_URL "http://javadl.oracle.com/webapps/download/AutoDL?BundleId=216434"
48    
49  ; The default installation directory  ; The default installation directory
50  InstallDir $PROGRAMFILES\LinuxSampler  InstallDir "$PROGRAMFILES64\LinuxSampler"
51    !define SUBDIR_32_BIT "32"
52    !define SUBDIR_64_BIT "64"
53    
54    !define DEFAULT_VST_DIR64 "$PROGRAMFILES64\Steinberg\VstPlugins"
55    !define DEFAULT_VST_DIR "$PROGRAMFILES\Steinberg\VstPlugins"
56    
57  ; Get installation folder from registry if available  ; Get installation folder from registry if available
58  InstallDirRegKey HKCU "Software\LinuxSampler" ""  InstallDirRegKey HKLM "Software\LinuxSampler" "Main Directory"
59    
60  ;--------------------------------  ;--------------------------------
61  ;Interface Settings  ;Interface Settings
# Line 46  InstallDirRegKey HKCU "Software\LinuxSam Line 64  InstallDirRegKey HKCU "Software\LinuxSam
64  !define MUI_HEADERIMAGE_BITMAP "linuxsampler.bmp"  !define MUI_HEADERIMAGE_BITMAP "linuxsampler.bmp"
65  !define MUI_ABORTWARNING  !define MUI_ABORTWARNING
66    
 ;--------------------------------  
 ;Version Information  
   
 VIProductVersion "0.0.0.0"  
 VIAddVersionKey /LANG=${LANG_ENGLISH} "ProductName" "all-in-one installer"  
 VIAddVersionKey /LANG=${LANG_ENGLISH} "Comments" "http://linuxsampler.org"  
 VIAddVersionKey /LANG=${LANG_ENGLISH} "CompanyName" "The LinuxSampler Project"  
 VIAddVersionKey /LANG=${LANG_ENGLISH} "LegalTrademarks" ""  
 VIAddVersionKey /LANG=${LANG_ENGLISH} "LegalCopyright" "© 2003-2009 The LinuxSampler Project"  
 VIAddVersionKey /LANG=${LANG_ENGLISH} "FileDescription" "LinuxSampler Installer (${RELEASE_DATE})"  
 VIAddVersionKey /LANG=${LANG_ENGLISH} "FileVersion" "0.0.0"  
   
67  !define BIN_TYPE_64BIT  "64 bit"  !define BIN_TYPE_64BIT  "64 bit"
68  !define BIN_TYPE_686SSE "686 SSE"  !define BIN_TYPE_686SSE "686 SSE"
69  !define BIN_TYPE_686    "686"  !define BIN_TYPE_686    "686"
70    
71    Var /GLOBAL binType
72    
73  ;--------------------------------  ;--------------------------------
74  ; Pages  ; Pages
75    
# Line 78  VIAddVersionKey /LANG=${LANG_ENGLISH} "F Line 86  VIAddVersionKey /LANG=${LANG_ENGLISH} "F
86  !insertmacro MUI_LANGUAGE "English"  !insertmacro MUI_LANGUAGE "English"
87    
88  ;--------------------------------  ;--------------------------------
89    ;Version Information
90    
91    VIProductVersion "0.0.0.0"
92    VIAddVersionKey /LANG=${LANG_ENGLISH} "ProductName" "all-in-one installer"
93    VIAddVersionKey /LANG=${LANG_ENGLISH} "Comments" "http://linuxsampler.org"
94    VIAddVersionKey /LANG=${LANG_ENGLISH} "CompanyName" "The LinuxSampler Project"
95    VIAddVersionKey /LANG=${LANG_ENGLISH} "LegalTrademarks" ""
96    VIAddVersionKey /LANG=${LANG_ENGLISH} "LegalCopyright" "© 2003-2016 The LinuxSampler Project"
97    VIAddVersionKey /LANG=${LANG_ENGLISH} "FileDescription" "LinuxSampler Installer (${RELEASE_DATE})"
98    VIAddVersionKey /LANG=${LANG_ENGLISH} "FileVersion" "0.0.0"
99    
100    ;--------------------------------
101    
102  Function .onInit  Function .onInit
103    Var /GLOBAL installingLinuxSampler    Var /GLOBAL installingLinuxSampler
104    Var /GLOBAL installingJSampler    Var /GLOBAL installingJSampler
105    Var /GLOBAL installingQSampler    Var /GLOBAL installingQSampler
106    Var /GLOBAL installinggigedit    Var /GLOBAL installinggigedit
107      Var /GLOBAL installing32BitToo
108    StrCpy $installingLinuxSampler "0"    StrCpy $installingLinuxSampler "0"
109    StrCpy $installingJSampler "0"    StrCpy $installingJSampler "0"
110    StrCpy $installingQSampler "0"    StrCpy $installingQSampler "0"
111    StrCpy $installinggigedit "0"    StrCpy $installinggigedit "0"
112      StrCpy $installing32BitToo "0"
113  FunctionEnd  FunctionEnd
114    
115  ; detects CPU capabilities and determmines which native binary type to install  !macro CreateInternetShortcut FILENAME URL ICONFILE ICONINDEX
116  Function DetectSystemType  WriteINIStr "${FILENAME}.url" "InternetShortcut" "URL" "${URL}"
117    Var /GLOBAL binType  WriteINIStr "${FILENAME}.url" "InternetShortcut" "IconFile" "${ICONFILE}"
118    WriteINIStr "${FILENAME}.url" "InternetShortcut" "IconIndex" "${ICONINDEX}"
119    !macroend
120    
121    ; detects CPU capabilities, determines which native binary type to install
122    ; and selects the appropriate windows registry view (32 bit or 64 bit)
123    !macro DetectSystemType un
124    Function ${un}DetectSystemType
125    ; check if this is a 64 bit windows    ; check if this is a 64 bit windows
126    System::Call "kernel32::GetCurrentProcess() i .s"    System::Call "kernel32::GetCurrentProcess() i .s"
127    System::Call "kernel32::IsWow64Process(i s, *i .r0)"    System::Call "kernel32::IsWow64Process(i s, *i .r0)"
128    IntCmp $0 0 not64bit    IntCmp $0 0 not64bit
129    StrCpy $binType BIN_TYPE_64BIT    StrCpy $binType BIN_TYPE_64BIT
130    DetailPrint "64 bit Windows detected."    DetailPrint "64 bit Windows detected."
131      SetRegView 64
132    Goto DetectSystemDone    Goto DetectSystemDone
133    
134    not64bit: ; a 32 bit system    not64bit: ; a 32 bit system
135    
136      SetRegView 32
137    
138    ; check if CPU supports SSE    ; check if CPU supports SSE
139    cpudesc::tell    cpudesc::tell
140    Pop $0                     ; full identification string in $0    Pop $0                     ; full identification string in $0
# Line 118  Function DetectSystemType Line 149  Function DetectSystemType
149    
150    DetectSystemDone:    DetectSystemDone:
151  FunctionEnd  FunctionEnd
152    !macroend
153  ; Check for the presence of gtkmm, and if false, ask the user whether to  !insertmacro DetectSystemType ""
154  ; download and install gtkmm now from the internet.  !insertmacro DetectSystemType "un."
 Function CheckForGtkmm  
   Var /GLOBAL gtkmmSetupFile  
   
   ClearErrors  
   ; This is just a lazy check for the presence of gtkmm, we should better use:  
   ; System::Call function (NSI internal function) to actually call an arbitrary  
   ; gtkmm function (/method) from a gtkmm DLL to make it certain  
   ReadRegStr $0 HKCU "Software\gtkmm\2.4" "Installer Language"  
   IfErrors +2 0  
   goto NoAbort  
   MessageBox MB_YESNO "gtkmm not found. Install it now (internet connection needed)?" IDYES InstallGtkmm  
     MessageBox MB_YESNO "gigedit won't work without gtkmm. Continue anyway?" IDYES NoAbort  
       Abort ;  causes installer to quit  
   InstallGtkmm:  
     ClearErrors  
         StrCpy $gtkmmSetupFile $TEMP\gtkmm-win32-runtime-2.10.11-1.exe  
     NSISdl::download "http://ftp.gnome.org/pub/gnome/binaries/win32/gtkmm/2.10/gtkmm-win32-runtime-2.10.11-1.exe" $gtkmmSetupFile  
     IfErrors 0 +2  
         Goto InstallGtkmmFailed  
         ExecWait $gtkmmSetupFile  
     Delete $gtkmmSetupFile ; we don't need it anymore  
         IfErrors 0 +2  
         Goto InstallGtkmmFailed  
         Goto NoAbort  
   InstallGtkmmFailed:  
         MessageBox MB_YESNO "Could not download gtkmm. gigedit won't work without gtkmm. Continue anyway?" IDYES NoAbort  
       Abort ;  causes installer to quit  
   NoAbort:  
 FunctionEnd  
155    
156  ; Downloads and launches the JRE installer from the internet  ; Downloads and launches the JRE installer from the internet
157  Function GetJRE  Function GetJRE
158          MessageBox MB_OK "JSampler requires Java ${JRE_VERSION}, it will now \    Var /GLOBAL jreUri
                          be downloaded and installed"  
159    
160          StrCpy $2 "$TEMP\Java Runtime Environment.exe"    StrCmp $binType BIN_TYPE_64BIT 0 +3
161          nsisdl::download /TIMEOUT=30000 ${JRE_URL} $2    StrCpy $jreUri ${JRE_64_URL}
162          Pop $R0 ;Get the return value    Goto +2
163                  StrCmp $R0 "success" +3    StrCpy $jreUri ${JRE_32_URL}
164                  MessageBox MB_OK "Download failed: $R0"  
165                  Quit    DetailPrint "Downloading JRE from: $jreUri"
166          ExecWait $2  
167          Delete $2    MessageBox MB_OK "JSampler requires Java ${JRE_VERSION} or later, \
168                        it will now be downloaded and installed"
169    
170      StrCpy $2 "$TEMP\Java Runtime Environment.exe"
171      nsisdl::download /TIMEOUT=30000 "$jreUri" $2
172      Pop $R0  ; Get the return value
173      StrCmp $R0 "success" +3
174      MessageBox MB_OK "Download failed: $R0"
175      Quit
176      ExecWait $2
177      Delete $2
178  FunctionEnd  FunctionEnd
179    
180  ; Checks if the JRE is already installed, if not it will download and install it from the internet  ; Checks if the JRE is already installed, if not it will download and install it from the internet
181  Function DetectJRE  Function DetectJRE
182    ReadRegStr $2 HKLM "SOFTWARE\JavaSoft\Java Runtime Environment" \    ReadRegStr $2 HKLM "SOFTWARE\JavaSoft\Java Runtime Environment" \
183               "CurrentVersion"               "CurrentVersion"
184    StrCmp $2 ${JRE_VERSION} done    ${VersionCompare} $2 ${JRE_VERSION} $R0
185      IntCmp $R0 1 done done
186    
187      StrCmp $binType BIN_TYPE_64BIT 0 downloadjre
188    
189      ; on 64 bit systems also check the 32 bit view of the registry, maybe
190      ; a 32 bit JRE was already installed
191      SetRegView 32
192      ReadRegStr $3 HKLM "SOFTWARE\JavaSoft\Java Runtime Environment" \
193                 "CurrentVersion"
194      SetRegView 64  ; restore 64 bit view
195      ${VersionCompare} $3 ${JRE_VERSION} $R0
196      IntCmp $R0 1 done done
197    
198      downloadjre:
199    Call GetJRE    Call GetJRE
200    
201    done:    done:
# Line 180  FunctionEnd Line 204  FunctionEnd
204  ; Tries to find the location where VST plugins should be installed to  ; Tries to find the location where VST plugins should be installed to
205  Function DetectVstPath  Function DetectVstPath
206    Var /GLOBAL vstPluginPath    Var /GLOBAL vstPluginPath
207      Var /GLOBAL vstPluginPath64
208    
209      StrCmp $binType BIN_TYPE_64BIT 0 detectVst32
210      SetRegView 64 ; make sure we have the 64 bit registry view
211    
212      ; ------- VST 64 bit detection -------
213    
214      ClearErrors
215      ReadRegStr $0 HKCU "Software\VST" "VSTPluginsPath"
216      IfErrors check2ndRegistryKey64 0
217      StrCpy $vstPluginPath64 $0
218      DetailPrint "Found VST plugin (64 bit) directory in HKCU registry."
219      Goto done64
220    
221      check2ndRegistryKey64:
222      ClearErrors
223      ReadRegStr $0 HKLM "Software\VST" "VSTPluginsPath"
224      IfErrors noRegistryKeyExists64 0
225      StrCpy $vstPluginPath64 $0
226      DetailPrint "Found VST plugin (64 bit) directory in HKLM registry."
227      Goto done64
228    
229      noRegistryKeyExists64:
230      ClearErrors
231      DetailPrint "No VST plugin directory (64 bit) defined in registry."
232      StrCpy $vstPluginPath64 "${DEFAULT_VST_DIR64}"
233    
234      done64:
235      SetRegView 32 ; make sure we have a 32 bit registry view
236    
237      detectVst32: ; it follows the same thing for the 32 bit registry view
238    
239      ; ------- VST 32 bit detection -------
240    
241    ClearErrors    ClearErrors
242    ReadRegStr $0 HKCU "Software\VST" "VSTPluginsPath"    ReadRegStr $0 HKCU "Software\VST" "VSTPluginsPath"
243    IfErrors check2ndRegistryKey 0    IfErrors check2ndRegistryKey 0
244    StrCpy $vstPluginPath $0    StrCpy $vstPluginPath $0
245    DetailPrint "Found VST plugin directory in HKCU registry."    DetailPrint "Found VST plugin (32 bit) directory in HKCU registry."
246    Goto done    Goto done
247    
248    check2ndRegistryKey:    check2ndRegistryKey:
# Line 193  Function DetectVstPath Line 250  Function DetectVstPath
250    ReadRegStr $0 HKLM "Software\VST" "VSTPluginsPath"    ReadRegStr $0 HKLM "Software\VST" "VSTPluginsPath"
251    IfErrors noRegistryKeyExists 0    IfErrors noRegistryKeyExists 0
252    StrCpy $vstPluginPath $0    StrCpy $vstPluginPath $0
253    DetailPrint "Found VST plugin directory in HKLM registry."    DetailPrint "Found VST plugin (32 bit) directory in HKLM registry."
254    Goto done    Goto done
255    
256    noRegistryKeyExists:    noRegistryKeyExists:
257    ClearErrors    ClearErrors
258    DetailPrint "No VST plugin directory defined in registry."    DetailPrint "No VST plugin directory (32 bit) defined in registry."
259    StrCpy $vstPluginPath "$PROGRAMFILES\Steinberg\VstPlugins"    StrCpy $vstPluginPath "${DEFAULT_VST_DIR}"
260    
261    done:    done: ; ------- summary of detection -------
262    DetailPrint "Using the following as VST plugin directory: $vstPluginPath"  
263      StrCmp $binType BIN_TYPE_64BIT 0 summaryVst32
264      SetRegView 64  ; restore 64 bit view
265      DetailPrint "Using the following as VST (64 bit) plugin directory: $vstPluginPath64"
266      summaryVst32:
267      DetailPrint "Using the following as VST (32 bit) plugin directory: $vstPluginPath"
268  FunctionEnd  FunctionEnd
269    
270  ;--------------------------------  ;--------------------------------
271    
272  ; primer things to do  ; primer things to do (before installing, not called on uninstall)
273  Section ""  Section ""
274    Call DetectSystemType    Call DetectSystemType
275    Call DetectVstPath    Call DetectVstPath
# Line 216  SectionEnd Line 278  SectionEnd
278  ;--------------------------------  ;--------------------------------
279    
280  ; The stuff to install  ; The stuff to install
281  Section "LinuxSampler 0.5.1.12cvs" SecLinuxSampler  Section "LinuxSampler ${LINUXSAMPLER_VERSION}" SecLinuxSampler
282    DetailPrint "Installing LinuxSampler binaries ..."    DetailPrint "Installing LinuxSampler binaries ..."
283    StrCpy $installingLinuxSampler "1"    StrCpy $installingLinuxSampler "1"
284    
   ; Set output path to the installation directory.  
   SetOutPath $INSTDIR  
   
285    StrCmp $binType BIN_TYPE_64BIT linuxsampler64    StrCmp $binType BIN_TYPE_64BIT linuxsampler64
286    StrCmp $binType BIN_TYPE_686SSE linuxsampler686sse    StrCmp $binType BIN_TYPE_686SSE linuxsampler686sse
287    Goto linuxsampler686    Goto linuxsampler686
# Line 230  Section "LinuxSampler 0.5.1.12cvs" SecLi Line 289  Section "LinuxSampler 0.5.1.12cvs" SecLi
289    ; Files to install    ; Files to install
290    
291    linuxsampler64:    linuxsampler64:
292      SetOutPath "$INSTDIR\${SUBDIR_64_BIT}"
293    File bin\64\linuxsampler.exe    File bin\64\linuxsampler.exe
294    File bin\64\liblinuxsampler-1.dll    File bin\64\liblinuxsampler-4.dll
295    SetOutPath $vstPluginPath    File bin\64\libsqlite3-0.dll
296    File bin\64\LinuxSampler.dll    SetOutPath $vstPluginPath64
297    Goto done    File /oname=LinuxSampler64.dll bin\64\LinuxSampler.dll
298      MessageBox MB_YESNO \
299        "It seems you are using a 64 bit Windows system. A native 64 bit version of LinuxSampler and its VST plugin version will be installed accordingly.$\r$\n$\r$\nShall a 32 bit version of the LinuxSampler VST be installed as well?" \
300        IDNO done
301    
302      ; so the other sections install their 32 bit versions as well
303      StrCpy $installing32BitToo "1"
304    
305    linuxsampler686sse:    linuxsampler686sse:
306      SetOutPath "$INSTDIR\${SUBDIR_32_BIT}"
307    File bin\686sse\linuxsampler.exe    File bin\686sse\linuxsampler.exe
308    File bin\686sse\liblinuxsampler-1.dll    File bin\686sse\liblinuxsampler-4.dll
309      File bin\686\libsqlite3-0.dll
310    SetOutPath $vstPluginPath    SetOutPath $vstPluginPath
311    File bin\686sse\LinuxSampler.dll    File /oname=LinuxSampler32.dll bin\686sse\LinuxSampler.dll
312    Goto done    Goto done
313    
314    linuxsampler686:    linuxsampler686:
315      SetOutPath "$INSTDIR\${SUBDIR_32_BIT}"
316    File bin\686\linuxsampler.exe    File bin\686\linuxsampler.exe
317    File bin\686\liblinuxsampler-1.dll    File bin\686\liblinuxsampler-4.dll
318      File bin\686\libsqlite3-0.dll
319    SetOutPath $vstPluginPath    SetOutPath $vstPluginPath
320    File bin\686\LinuxSampler.dll    File /oname=LinuxSampler32.dll bin\686\LinuxSampler.dll
321    Goto done    Goto done
322    
323    done:    done:
324  SectionEnd  SectionEnd
325    
326  Section "JSampler 'Fantasia' 0.8a-cvs6" SecJSampler  Section "JSampler 'Fantasia' ${FANTASIA_VERSION}" SecJSampler
327    DetailPrint "Installing JSampler binaries ..."    DetailPrint "Installing JSampler binaries ..."
328    ; make sure JRE is installed    ; make sure JRE is installed
329    Call DetectJRE    Call DetectJRE
# Line 261  Section "JSampler 'Fantasia' 0.8a-cvs6" Line 331  Section "JSampler 'Fantasia' 0.8a-cvs6"
331    ; Set output path to the installation directory.    ; Set output path to the installation directory.
332    SetOutPath $INSTDIR    SetOutPath $INSTDIR
333    ; Files to install    ; Files to install
334    File bin\Fantasia-0.8a-cvs6.jar    File bin\Fantasia-0.9.jar
335    File jsampler.ico    File jsampler.ico
336  SectionEnd  SectionEnd
337    
338  Section "QSampler 0.2.1.26" SecQSampler  Section "QSampler ${QSAMPLER_VERSION}" SecQSampler
339    DetailPrint "Installing QSampler binaries ..."    DetailPrint "Installing QSampler binaries ..."
340    StrCpy $installingQSampler "1"    StrCpy $installingQSampler "1"
341    ; Set output path to the installation directory.    ; Set output path to the installation directory.
342    SetOutPath $INSTDIR    SetOutPath $INSTDIR
343    ; Files to install    ; Files to install
344    File bin\686\qsampler.exe    File bin\686\qsampler.exe
345    File bin\686\QtCore4.dll    File bin\686\liblscp-6.dll
346    File bin\686\QtGui4.dll    File bin\686\Qt5Core.dll
347    File bin\686\mingwm10.dll    File bin\686\Qt5Gui.dll
348      File bin\686\Qt5Widgets.dll
349      File bin\686\libbz2-1.dll
350      File bin\686\libfreetype-6.dll
351      File bin\686\libglib-2.0-0.dll
352      File bin\686\libgraphite2.dll
353      File bin\686\libharfbuzz-0.dll
354      File bin\686\libiconv-2.dll
355      File bin\686\libicudt57.dll
356      File bin\686\libicuin57.dll
357      File bin\686\libicuuc57.dll
358      File bin\686\libintl-8.dll
359      File bin\686\liblscp-6.dll
360      File bin\686\libpcre-1.dll
361      File bin\686\libpcre16-0.dll
362      File bin\686\libpng16-16.dll
363      File bin\686\zlib1.dll
364      File qt.conf
365    File qsampler.ico    File qsampler.ico
366      SetOutPath $INSTDIR\plugins\platforms
367      File bin\686\plugins\platforms\qwindows.dll
368    SetOutPath $INSTDIR\share\locale    SetOutPath $INSTDIR\share\locale
369    File bin\686\share\locale\qsampler_ru.qm    File bin\686\share\locale\qsampler_*.qm
370      File bin\686\share\locale\qt*_*.qm
371  SectionEnd  SectionEnd
372    
373  Section "gigedit 0.1.1.x (cvs2009-05-10)" Secgigedit  Section "gigedit ${GIGEDIT_VERSION}" Secgigedit
374    DetailPrint "Installing gigedit binaries ..."    DetailPrint "Installing gigedit binaries ..."
375    StrCpy $installinggigedit "1"    StrCpy $installinggigedit "1"
376    
# Line 289  Section "gigedit 0.1.1.x (cvs2009-05-10) Line 379  Section "gigedit 0.1.1.x (cvs2009-05-10)
379    ; installer, so no check and no download necessary ATM)    ; installer, so no check and no download necessary ATM)
380    ;Call CheckForGtkmm    ;Call CheckForGtkmm
381    
   ; Set output path to the installation directory.  
   SetOutPath $INSTDIR  
   
382    StrCmp $binType BIN_TYPE_64BIT gigedit64    StrCmp $binType BIN_TYPE_64BIT gigedit64
383    ; I think we don't need a SSE optimized 32 bit binary for gigedit, one 64bit and one simple 32 bit version should be sufficient    ; I think we don't need a SSE optimized 32 bit binary for gigedit, one 64bit and one simple 32 bit version should be sufficient
384    ;StrCmp $binType BIN_TYPE_686SSE gigedit686sse    ;StrCmp $binType BIN_TYPE_686SSE gigedit686sse
# Line 300  Section "gigedit 0.1.1.x (cvs2009-05-10) Line 387  Section "gigedit 0.1.1.x (cvs2009-05-10)
387    ; Files to install    ; Files to install
388    
389    gigedit64:    gigedit64:
390      SetOutPath "$INSTDIR\${SUBDIR_64_BIT}"
391    File bin\64\gigedit.exe    File bin\64\gigedit.exe
392    File bin\64\libgigedit-1.dll    File bin\64\libgigedit-3.dll
393    SetOutPath "$INSTDIR\plugins"    SetOutPath "$INSTDIR\${SUBDIR_64_BIT}\plugins"
394    File bin\64\plugins\libgigeditlinuxsamplerplugin-1.dll    File bin\64\plugins\libgigeditlinuxsamplerplugin.dll
395    SetOutPath $INSTDIR    SetOutPath "$INSTDIR\${SUBDIR_64_BIT}"
396    File bin\64\libatk-1.0-0.dll    File bin\64\libatk-1.0-0.dll
397    File bin\64\libatkmm-1.6-1.dll    File bin\64\libatkmm-1.6-1.dll
398    File bin\64\libcairo-2.dll    File bin\64\libcairo-2.dll
399    File bin\64\libcairomm-1.0-1.dll    File bin\64\libcairomm-1.0-1.dll
400      File bin\64\libexpat-1.dll
401      File bin\64\libfontconfig-1.dll
402      File bin\64\libfreetype-6.dll
403    File bin\64\libgdkmm-2.4-1.dll    File bin\64\libgdkmm-2.4-1.dll
404    File bin\64\libgdk_pixbuf-2.0-0.dll    File bin\64\libgdk_pixbuf-2.0-0.dll
405    File bin\64\libgdk-win32-2.0-0.dll    File bin\64\libgdk-win32-2.0-0.dll
# Line 322  Section "gigedit 0.1.1.x (cvs2009-05-10) Line 413  Section "gigedit 0.1.1.x (cvs2009-05-10)
413    File bin\64\libgtkmm-2.4-1.dll    File bin\64\libgtkmm-2.4-1.dll
414    File bin\64\libgtk-win32-2.0-0.dll    File bin\64\libgtk-win32-2.0-0.dll
415    File bin\64\libintl-8.dll    File bin\64\libintl-8.dll
   File bin\64\libjpeg-62.dll  
416    File bin\64\libpango-1.0-0.dll    File bin\64\libpango-1.0-0.dll
417    File bin\64\libpangocairo-1.0-0.dll    File bin\64\libpangocairo-1.0-0.dll
418      File bin\64\libpangoft2-1.0-0.dll
419    File bin\64\libpangomm-1.4-1.dll    File bin\64\libpangomm-1.4-1.dll
420    File bin\64\libpangowin32-1.0-0.dll    File bin\64\libpangowin32-1.0-0.dll
421    File bin\64\libpng12-0.dll    File bin\64\libpng14-14.dll
422    File bin\64\libsigc-2.0-0.dll    File bin\64\libsigc-2.0-0.dll
   File bin\64\libtiff.dll  
423    File bin\64\zlib1.dll    File bin\64\zlib1.dll
424    SetOutPath $INSTDIR\etc\gtk-2.0    SetOutPath $INSTDIR\${SUBDIR_64_BIT}\etc\gtk-2.0
425    File bin\64\etc\gtk-2.0\gtkrc    File bin\64\etc\gtk-2.0\gtkrc
426    SetOutPath $INSTDIR\lib\gtk-2.0\2.10.0\engines    SetOutPath $INSTDIR\${SUBDIR_64_BIT}\lib\gtk-2.0\2.10.0\engines
427    File bin\64\lib\gtk-2.0\2.10.0\engines\libwimp.dll    File bin\64\lib\gtk-2.0\2.10.0\engines\libwimp.dll
428    SetOutPath $INSTDIR\share\locale\de\LC_MESSAGES    SetOutPath $INSTDIR\${SUBDIR_64_BIT}\share\locale\de\LC_MESSAGES
429    File bin\64\share\locale\de\LC_MESSAGES\gigedit.mo    File bin\64\share\locale\de\LC_MESSAGES\gigedit.mo
430    File bin\64\share\locale\de\LC_MESSAGES\gtk20.mo    File bin\64\share\locale\de\LC_MESSAGES\gtk20.mo
431    SetOutPath $INSTDIR\share\locale\sv\LC_MESSAGES    SetOutPath $INSTDIR\${SUBDIR_64_BIT}\share\locale\sv\LC_MESSAGES
432    File bin\64\share\locale\sv\LC_MESSAGES\gigedit.mo    File bin\64\share\locale\sv\LC_MESSAGES\gigedit.mo
433    File bin\64\share\locale\sv\LC_MESSAGES\gtk20.mo    File bin\64\share\locale\sv\LC_MESSAGES\gtk20.mo
434    SetOutPath $INSTDIR\share\themes\MS-Windows\gtk-2.0    SetOutPath $INSTDIR\${SUBDIR_64_BIT}\share\themes\MS-Windows\gtk-2.0
435    File bin\64\share\themes\MS-Windows\gtk-2.0\gtkrc    File bin\64\share\themes\MS-Windows\gtk-2.0\gtkrc
436    Goto done  
437      ; shall we install the 32 bit version as well?
438      StrCmp $installing32BitToo "1" gigedit686 done
439    
440    gigedit686:    gigedit686:
441      SetOutPath "$INSTDIR\${SUBDIR_32_BIT}"
442    File bin\686\gigedit.exe    File bin\686\gigedit.exe
443    File bin\686\libgigedit-1.dll    File bin\686\libgigedit-3.dll
444    SetOutPath "$INSTDIR\plugins"    SetOutPath "$INSTDIR\${SUBDIR_32_BIT}\plugins"
445    File bin\686\plugins\libgigeditlinuxsamplerplugin-1.dll    File bin\686\plugins\libgigeditlinuxsamplerplugin.dll
446    SetOutPath $INSTDIR    SetOutPath "$INSTDIR\${SUBDIR_32_BIT}"
447    File bin\686\intl.dll    File bin\686\intl.dll
448    File bin\686\jpeg62.dll    File bin\686\jpeg62.dll
449    File bin\686\libatk-1.0-0.dll    File bin\686\libatk-1.0-0.dll
# Line 362  Section "gigedit 0.1.1.x (cvs2009-05-10) Line 455  Section "gigedit 0.1.1.x (cvs2009-05-10)
455    File bin\686\libgdk-win32-2.0-0.dll    File bin\686\libgdk-win32-2.0-0.dll
456    File bin\686\libgio-2.0-0.dll    File bin\686\libgio-2.0-0.dll
457    File bin\686\libgiomm-2.4-1.dll    File bin\686\libgiomm-2.4-1.dll
458    File bin\686\libglib-2.0-0.dll    ; File bin\686\libglib-2.0-0.dll
459    File bin\686\libglibmm-2.4-1.dll    File bin\686\libglibmm-2.4-1.dll
460    File bin\686\libgmodule-2.0-0.dll    File bin\686\libgmodule-2.0-0.dll
461    File bin\686\libgobject-2.0-0.dll    File bin\686\libgobject-2.0-0.dll
# Line 376  Section "gigedit 0.1.1.x (cvs2009-05-10) Line 469  Section "gigedit 0.1.1.x (cvs2009-05-10)
469    File bin\686\libpng12-0.dll    File bin\686\libpng12-0.dll
470    File bin\686\libsigc-2.0-0.dll    File bin\686\libsigc-2.0-0.dll
471    File bin\686\libtiff3.dll    File bin\686\libtiff3.dll
472    File bin\686\zlib1.dll    ; File bin\686\zlib1.dll
473    SetOutPath $INSTDIR\etc\gtk-2.0    SetOutPath $INSTDIR\${SUBDIR_32_BIT}\etc\gtk-2.0
474    File bin\686\etc\gtk-2.0\gdk-pixbuf.loaders    File bin\686\etc\gtk-2.0\gdk-pixbuf.loaders
475    File bin\686\etc\gtk-2.0\gtkrc    File bin\686\etc\gtk-2.0\gtkrc
476    SetOutPath $INSTDIR\lib\gtk-2.0\2.10.0\engines    SetOutPath $INSTDIR\${SUBDIR_32_BIT}\lib\gtk-2.0\2.10.0\engines
477    File bin\686\lib\gtk-2.0\2.10.0\engines\libwimp.dll    File bin\686\lib\gtk-2.0\2.10.0\engines\libwimp.dll
478    SetOutPath $INSTDIR\lib\gtk-2.0\2.10.0\loaders    SetOutPath $INSTDIR\${SUBDIR_32_BIT}\lib\gtk-2.0\2.10.0\loaders
479    File bin\686\lib\gtk-2.0\2.10.0\loaders\libpixbufloader-ani.dll    File bin\686\lib\gtk-2.0\2.10.0\loaders\libpixbufloader-ani.dll
480    File bin\686\lib\gtk-2.0\2.10.0\loaders\libpixbufloader-bmp.dll    File bin\686\lib\gtk-2.0\2.10.0\loaders\libpixbufloader-bmp.dll
481    File bin\686\lib\gtk-2.0\2.10.0\loaders\libpixbufloader-gif.dll    File bin\686\lib\gtk-2.0\2.10.0\loaders\libpixbufloader-gif.dll
# Line 398  Section "gigedit 0.1.1.x (cvs2009-05-10) Line 491  Section "gigedit 0.1.1.x (cvs2009-05-10)
491    File bin\686\lib\gtk-2.0\2.10.0\loaders\libpixbufloader-wbmp.dll    File bin\686\lib\gtk-2.0\2.10.0\loaders\libpixbufloader-wbmp.dll
492    File bin\686\lib\gtk-2.0\2.10.0\loaders\libpixbufloader-xbm.dll    File bin\686\lib\gtk-2.0\2.10.0\loaders\libpixbufloader-xbm.dll
493    File bin\686\lib\gtk-2.0\2.10.0\loaders\libpixbufloader-xpm.dll    File bin\686\lib\gtk-2.0\2.10.0\loaders\libpixbufloader-xpm.dll
494    SetOutPath $INSTDIR\share\locale\de\LC_MESSAGES    SetOutPath $INSTDIR\${SUBDIR_32_BIT}\share\locale\de\LC_MESSAGES
495    File bin\686\share\locale\de\LC_MESSAGES\gigedit.mo    File bin\686\share\locale\de\LC_MESSAGES\gigedit.mo
496    File bin\686\share\locale\de\LC_MESSAGES\gtk20.mo    File bin\686\share\locale\de\LC_MESSAGES\gtk20.mo
497    SetOutPath $INSTDIR\share\locale\sv\LC_MESSAGES    SetOutPath $INSTDIR\${SUBDIR_32_BIT}\share\locale\sv\LC_MESSAGES
498    File bin\686\share\locale\sv\LC_MESSAGES\gigedit.mo    File bin\686\share\locale\sv\LC_MESSAGES\gigedit.mo
499    File bin\686\share\locale\sv\LC_MESSAGES\gtk20.mo    File bin\686\share\locale\sv\LC_MESSAGES\gtk20.mo
500    SetOutPath $INSTDIR\share\themes\MS-Windows\gtk-2.0    SetOutPath $INSTDIR\${SUBDIR_32_BIT}\share\themes\MS-Windows\gtk-2.0
501    File bin\686\share\themes\MS-Windows\gtk-2.0\gtkrc    File bin\686\share\themes\MS-Windows\gtk-2.0\gtkrc
502    Goto done    Goto done
503    
504    done:    done:
505  SectionEnd  SectionEnd
506    
507  Section "libgig 3.2.1.x (cvs2009-05-03)" Seclibgig  Section "libgig ${LIBGIG_VERSION}" Seclibgig
508    DetailPrint "Installing libgig binaries ..."    DetailPrint "Installing libgig binaries ..."
509    ; We make this a mandatory component    ; We make this a mandatory component
510    SectionIn RO    SectionIn RO
   ; Set output path to the installation directory.  
   SetOutPath $INSTDIR  
511    
512    StrCmp $binType BIN_TYPE_64BIT libgig64    StrCmp $binType BIN_TYPE_64BIT libgig64
513    StrCmp $binType BIN_TYPE_686SSE libgig686sse    StrCmp $binType BIN_TYPE_686SSE libgig686sse
# Line 425  Section "libgig 3.2.1.x (cvs2009-05-03)" Line 516  Section "libgig 3.2.1.x (cvs2009-05-03)"
516    ; Files to install    ; Files to install
517    
518    libgig64:    libgig64:
519    File bin\64\libgig-6.dll    SetOutPath "$INSTDIR\${SUBDIR_64_BIT}"
520      File bin\64\libgig-7.dll
521      File bin\64\libakai-0.dll
522    File bin\64\rifftree.exe    File bin\64\rifftree.exe
523    File bin\64\dlsdump.exe    File bin\64\dlsdump.exe
524    File bin\64\gigdump.exe    File bin\64\gigdump.exe
525    File bin\64\gigextract.exe    File bin\64\gigextract.exe
526    ; special dependency for the 64 bit version    File bin\64\gigmerge.exe
527      File bin\64\gig2mono.exe
528      File bin\64\gig2stereo.exe
529      File bin\64\korg2gig.exe
530      File bin\64\korgdump.exe
531      File bin\64\akaidump.exe
532      File bin\64\akaiextract.exe
533      File bin\64\sf2dump.exe
534      File bin\64\sf2extract.exe
535    File bin\64\libgcc_s_sjlj-1.dll    File bin\64\libgcc_s_sjlj-1.dll
536    Goto done    File bin\64\libstdc++-6.dll
537    
538      ; shall we install the 32 bit version as well?
539      StrCmp $installing32BitToo "1" libgig686sse
540      StrCmp $installingQSampler "1" libgigForQsampler done
541    
542      ; QSampler needs the 32 bit libgig dll
543      libgigForQsampler:
544      SetOutPath "$INSTDIR\${SUBDIR_32_BIT}"
545      File bin\686sse\libgig-7.dll
546      Goto libgig32common
547    
548    libgig686sse:    libgig686sse:
549    File bin\686sse\libgig-6.dll    SetOutPath "$INSTDIR\${SUBDIR_32_BIT}"
550      File bin\686sse\libgig-7.dll
551      File bin\686sse\libakai-0.dll
552    File bin\686sse\rifftree.exe    File bin\686sse\rifftree.exe
553    File bin\686sse\dlsdump.exe    File bin\686sse\dlsdump.exe
554    File bin\686sse\gigdump.exe    File bin\686sse\gigdump.exe
555    File bin\686sse\gigextract.exe    File bin\686sse\gigextract.exe
556    Goto done    File bin\686sse\gigmerge.exe
557      File bin\686sse\gig2mono.exe
558      File bin\686sse\gig2stereo.exe
559      File bin\686sse\korg2gig.exe
560      File bin\686sse\korgdump.exe
561      File bin\686sse\akaidump.exe
562      File bin\686sse\akaiextract.exe
563      File bin\686sse\sf2dump.exe
564      File bin\686sse\sf2extract.exe
565      Goto libgig32common
566    
567    libgig686:    libgig686:
568    File bin\686\libgig-6.dll    SetOutPath "$INSTDIR\${SUBDIR_32_BIT}"
569      File bin\686\libgig-7.dll
570      File bin\686\libakai-0.dll
571    File bin\686\rifftree.exe    File bin\686\rifftree.exe
572    File bin\686\dlsdump.exe    File bin\686\dlsdump.exe
573    File bin\686\gigdump.exe    File bin\686\gigdump.exe
574    File bin\686\gigextract.exe    File bin\686\gigextract.exe
575    Goto done    File bin\686\gigmerge.exe
576      File bin\686\gig2mono.exe
577      File bin\686\gig2stereo.exe
578      File bin\686\korg2gig.exe
579      File bin\686\korgdump.exe
580      File bin\686\akaidump.exe
581      File bin\686\akaiextract.exe
582      File bin\686\sf2dump.exe
583      File bin\686\sf2extract.exe
584    
585      libgig32common:
586      File bin\686\libgcc_s_dw2-1.dll
587      File bin\686\libwinpthread-1.dll  
588      File bin\686\libstdc++-6.dll
589      
590    done:    done:
591    
592    ; As this is a mandatory component, we add the common binary directory    ; As this is a mandatory component, we misuse is for the following
593    ; of LinuxSampler and friends to the system's PATH variable here ...    ; common tasks as well ...
594    
595      ; Add LinuxSampler and friends to the system's PATH variable
596    ${EnvVarUpdate} $0 "PATH" "A" "HKLM" "$INSTDIR"    ${EnvVarUpdate} $0 "PATH" "A" "HKLM" "$INSTDIR"
597      ${EnvVarUpdate} $0 "PATH" "A" "HKLM" "$INSTDIR\${SUBDIR_64_BIT}"
598      ${EnvVarUpdate} $0 "PATH" "A" "HKLM" "$INSTDIR\${SUBDIR_32_BIT}"
599    
   ; As this is a mandatory component, we misuse it to install the uninstaller as well ...  
600    ; Write the uninstall keys for Windows    ; Write the uninstall keys for Windows
601    WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\LinuxSampler" "DisplayName" "LinuxSampler ${RELEASE_DATE}"    WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\LinuxSampler" "DisplayName" "LinuxSampler ${RELEASE_DATE}"
602    WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\LinuxSampler" "UninstallString" '"$INSTDIR\uninstall.exe"'    WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\LinuxSampler" "UninstallString" '"$INSTDIR\uninstall.exe"'
603    WriteRegDWORD HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\LinuxSampler" "NoModify" 1    WriteRegDWORD HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\LinuxSampler" "NoModify" 1
604    WriteRegDWORD HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\LinuxSampler" "NoRepair" 1    WriteRegDWORD HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\LinuxSampler" "NoRepair" 1
605    WriteUninstaller "uninstall.exe"    WriteUninstaller "uninstall.exe"
606    ;Store installation folder  
607    WriteRegStr HKCU "Software\LinuxSampler" "" $INSTDIR    ; Store installation folders
608      WriteRegStr HKLM "Software\LinuxSampler" "Main Directory" $INSTDIR
609      StrCmp $binType BIN_TYPE_64BIT 0 +3
610      WriteRegStr HKLM "Software\LinuxSampler" "VST 64 Directory" $vstPluginPath64
611      StrCmp $installing32BitToo "1" 0 +2
612      WriteRegStr HKLM "Software\LinuxSampler" "VST 32 Directory" $vstPluginPath
613    
614      ; Just for info, store the release date as well
615      WriteRegStr HKLM "Software\LinuxSampler" "Release Date" ${RELEASE_DATE}
616  SectionEnd  SectionEnd
617    
618  Section "libsndfile 1.0.19" Seclibsndfile  Section "libsndfile ${SNDFILE_VERSION}" Seclibsndfile
619    DetailPrint "Installing libsndfile binaries ..."    DetailPrint "Installing libsndfile binaries ..."
620    ; We make this a mandatory component    ; We make this a mandatory component
621    SectionIn RO    SectionIn RO
   ; Set output path to the installation directory.  
   SetOutPath $INSTDIR  
622    
623    StrCmp $binType BIN_TYPE_64BIT libsndfile64    StrCmp $binType BIN_TYPE_64BIT libsndfile64
624    ; I think we don't need a SSE optimized 32 bit binary for libsndfile, one 64bit and one simple 32 bit DLL should be sufficient    ; I think we don't need a SSE optimized 32 bit binary for libsndfile, one 64bit and one simple 32 bit DLL should be sufficient
# Line 482  Section "libsndfile 1.0.19" Seclibsndfil Line 628  Section "libsndfile 1.0.19" Seclibsndfil
628    ; Files to install    ; Files to install
629    
630    libsndfile64:    libsndfile64:
631      SetOutPath "$INSTDIR\${SUBDIR_64_BIT}"
632    File bin\64\libsndfile-1.dll    File bin\64\libsndfile-1.dll
633    Goto done    File bin\64\libFLAC-8.dll
634      File bin\64\libogg-0.dll
635      File bin\64\libvorbis-0.dll
636      File bin\64\libvorbisenc-2.dll
637    
638      ; shall we install the 32 bit version as well?
639      StrCmp $installing32BitToo "1" libsndfile686 done
640    
641    libsndfile686:    libsndfile686:
642      SetOutPath "$INSTDIR\${SUBDIR_32_BIT}"
643    File bin\686\libsndfile-1.dll    File bin\686\libsndfile-1.dll
644      File bin\686\libFLAC-8.dll
645      File bin\686\libogg-0.dll
646      File bin\686\libvorbis-0.dll
647      File bin\686\libvorbisenc-2.dll
648      File bin\686\libspeex-1.dll
649    Goto done    Goto done
650    
651    done:    done:
652  SectionEnd  SectionEnd
653    
654  Section "Start Menu Shortcuts" SecShortcuts  Section "Start Menu Shortcuts" SecShortcuts
655      Var /GLOBAL javawbin
656      Var /GLOBAL samplerDir
657    
658      StrCmp $binType BIN_TYPE_64BIT 0 +3
659      StrCpy $samplerDir "$INSTDIR\${SUBDIR_64_BIT}"
660      Goto +2
661      StrCpy $samplerDir "$INSTDIR\${SUBDIR_32_BIT}"
662    
663      ; Switch system variables to 'all users', to ensure we create the start
664      ; menu shortcuts for all users and not just for the current user.
665      SetShellVarContext all
666    
667      ; try to resolve the full qualified path of the javaw binary
668      ClearErrors
669      SearchPath $javawbin javaw.exe
670      IfErrors 0 javawDetected
671      ClearErrors
672      ; if all fails, simply use SYSDIR (which should work almost always anyway)
673      DetailPrint "WRN: Could not resolve javaw.exe path, using SYSDIR."
674      StrCpy $javawbin "$SYSDIR\javaw.exe"
675      javawDetected:
676    
677    CreateDirectory "$SMPROGRAMS\LinuxSampler"    CreateDirectory "$SMPROGRAMS\LinuxSampler"
678    
679      SetOutPath $INSTDIR
680    CreateShortCut "$SMPROGRAMS\LinuxSampler\Uninstall.lnk" "$INSTDIR\uninstall.exe" "" "$INSTDIR\uninstall.exe" 0    CreateShortCut "$SMPROGRAMS\LinuxSampler\Uninstall.lnk" "$INSTDIR\uninstall.exe" "" "$INSTDIR\uninstall.exe" 0
681    
682    StrCmp $installingLinuxSampler '1' 0 +2    StrCmp $installingLinuxSampler '1' 0 +3
683    CreateShortCut "$SMPROGRAMS\LinuxSampler\LinuxSampler 0.5.1 (stand alone backend).lnk" "$INSTDIR\linuxsampler.exe" "" "$INSTDIR\linuxsampler.exe" 0    SetOutPath $samplerDir
684      CreateShortCut "$SMPROGRAMS\LinuxSampler\LinuxSampler ${LINUXSAMPLER_VERSION} (stand alone backend).lnk" "$samplerDir\linuxsampler.exe" "" "$samplerDir\linuxsampler.exe" 0
685    
686    StrCmp $installingJSampler '1' 0 +2    StrCmp $installingJSampler '1' 0 +3
687    CreateShortCut '$SMPROGRAMS\LinuxSampler\JSampler Fantasia 0.8a (frontend).lnk' 'javaw' '-jar "$INSTDIR\Fantasia-0.8a.jar"' '$INSTDIR\jsampler.ico' 0    SetOutPath $INSTDIR
688      CreateShortCut '$SMPROGRAMS\LinuxSampler\JSampler Fantasia ${FANTASIA_VERSION} (frontend).lnk' '$javawbin' '-jar "$INSTDIR\Fantasia-0.9.jar"' '$INSTDIR\jsampler.ico' 0
689    
690    StrCmp $installingQSampler '1' 0 +2    StrCmp $installingQSampler '1' 0 +3
691    CreateShortCut "$SMPROGRAMS\LinuxSampler\QSampler 0.2.1 (frontend).lnk" "$INSTDIR\qsampler.exe" "" "$INSTDIR\qsampler.ico" 0    SetOutPath $INSTDIR
692      CreateShortCut "$SMPROGRAMS\LinuxSampler\QSampler ${QSAMPLER_VERSION} (frontend).lnk" "$INSTDIR\qsampler.exe" "" "$INSTDIR\qsampler.ico" 0
693    
694    StrCmp $installinggigedit '1' 0 +2    StrCmp $installinggigedit '1' 0 +3
695    CreateShortCut "$SMPROGRAMS\LinuxSampler\gigedit 0.1.1 (stand alone).lnk" "$INSTDIR\gigedit.exe" "" "$INSTDIR\gigedit.exe" 0    SetOutPath $samplerDir
696      CreateShortCut "$SMPROGRAMS\LinuxSampler\gigedit ${GIGEDIT_VERSION} (stand alone).lnk" "$samplerDir\gigedit.exe" "" "$samplerDir\gigedit.exe" 0
697    
698      !insertmacro CreateInternetShortcut \
699      "$SMPROGRAMS\LinuxSampler\\Support LinuxSampler" \
700      "http://www.linuxsampler.org/donations.html" \
701      "" "0"
702  SectionEnd  SectionEnd
703    
704  ;--------------------------------  ;--------------------------------
# Line 515  SectionEnd Line 706  SectionEnd
706  ; Uninstaller  ; Uninstaller
707    
708  Section "Uninstall"  Section "Uninstall"
709    DetailPrint "Removing LinuxSampler directory from PATH variable ..."    Var /GLOBAL vstdir32
710      Var /GLOBAL vstdir64
711    
712      Call un.DetectSystemType
713    
714      DetailPrint "Removing LinuxSampler directories from PATH variable ..."
715    ${un.EnvVarUpdate} $0 "PATH" "R" "HKLM" "$INSTDIR"    ${un.EnvVarUpdate} $0 "PATH" "R" "HKLM" "$INSTDIR"
716      ${un.EnvVarUpdate} $0 "PATH" "R" "HKLM" "$INSTDIR\${SUBDIR_32_BIT}"
717      ${un.EnvVarUpdate} $0 "PATH" "R" "HKLM" "$INSTDIR\${SUBDIR_64_BIT}"
718    
719      StrCmp $binType BIN_TYPE_64BIT 0 uninstallVst32
720      DetailPrint "Searching for VST plugin (64 bit) ..."
721      ClearErrors
722      ReadRegStr $0 HKLM "Software\LinuxSampler" "VST 64 Directory"
723      IfErrors uninstallVst32 0
724      StrCpy $vstdir64 $0
725      DetailPrint "Removing VST plugin (64 bit) from: $vstdir64 ..."
726      Delete "$vstdir64\LinuxSampler64.dll"
727    
728      uninstallVst32:
729    
730      DetailPrint "Searching for VST plugin (32 bit) ..."
731      ClearErrors
732      ReadRegStr $0 HKLM "Software\LinuxSampler" "VST 32 Directory"
733      IfErrors uninstallVstDone 0
734      StrCpy $vstdir32 $0
735      DetailPrint "Removing VST plugin (32 bit) from: $vstdir32 ..."
736      Delete "$vstdir32\LinuxSampler32.dll"
737    
738      uninstallVstDone:
739      ClearErrors
740    
741    DetailPrint "Removing registry keys ..."    DetailPrint "Removing registry keys ..."
742    DeleteRegKey HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\LinuxSampler"    DeleteRegKey HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\LinuxSampler"
743      DeleteRegKey HKLM "Software\LinuxSampler"
744    
745    DetailPrint "Removing VST plugin ..."    ; Workaround for Vista and younger: switch system variables to 'all users'
746    Delete $vstPluginPath\LinuxSampler.dll    ; otherwise e.g. we couldn't delete start menu shortcuts below on those
747      ; systems, as those variables would point to the current user.
748      SetShellVarContext all
749    
750    DetailPrint "Removing shortcuts (if any) ..."    DetailPrint "Removing shortcuts (if any) from: $SMPROGRAMS ..."
751    Delete "$SMPROGRAMS\LinuxSampler\*.*"    Delete "$SMPROGRAMS\LinuxSampler\*.*"
752    
753    DetailPrint "Removing directories used ..."    DetailPrint "Removing directories used ..."
754    RMDir "$SMPROGRAMS\LinuxSampler"    RMDir /r "$SMPROGRAMS\LinuxSampler"
755    RMDir /r "$INSTDIR"    RMDir /r "$INSTDIR"
756  SectionEnd  SectionEnd
757    
# Line 536  SectionEnd Line 759  SectionEnd
759  ;Descriptions  ;Descriptions
760    
761  ;Language strings  ;Language strings
762  LangString DESC_SecLinuxSampler ${LANG_ENGLISH} "Sampler backend (stand-alone application and VST plugin), including sampler engine, MIDI and audio drivers, native C++ API as well as network (LSCP) API. Use a frontend application like JSampler or QSampler to control the sampler."  LangString DESC_SecLinuxSampler ${LANG_ENGLISH} "Sampler backend (stand-alone and VST), including sampler engine, MIDI and audio drivers, native C++ API as well as network (LSCP) API. Use a frontend application like JSampler or QSampler to control the sampler."
763  LangString DESC_SecJSampler ${LANG_ENGLISH} "Graphical frontend (user interface) for LinuxSampler written in Java, supporting all current features of LinuxSampler. This is the 'Fantasia' distribution of JSampler, offering a modern skin based look."  LangString DESC_SecJSampler ${LANG_ENGLISH} "Graphical frontend (user interface) for LinuxSampler written in Java, supporting all current features of LinuxSampler. This is the 'Fantasia' distribution of JSampler, offering a modern skin based look."
764  LangString DESC_SecQSampler ${LANG_ENGLISH} "Graphical light-weight frontend (user interface) for LinuxSampler written in C++, offering a fast native user interface. NOTE: QSampler doesn't support all LinuxSampler features yet!"  LangString DESC_SecQSampler ${LANG_ENGLISH} "Graphical light-weight frontend (user interface) for LinuxSampler written in C++, offering a fast native user interface. NOTE: QSampler doesn't support all LinuxSampler features yet!"
765  LangString DESC_Secgigedit ${LANG_ENGLISH} "Graphical instrument editor for Gigasampler format v2 and v3 files. Can be used stand-alone or in conjunction with LinuxSampler. NOTE: this is yet an early development version!"  LangString DESC_Secgigedit ${LANG_ENGLISH} "Graphical instrument editor for Gigasampler format v2 and v3 files. Can be used stand-alone or in conjunction with LinuxSampler."
766  LangString DESC_Seclibgig ${LANG_ENGLISH} "C++ program library for accessing DLS (Level 1 and Level 2) and Gigasampler format (v2 and v3) files. This library is required by LinuxSampler, gigedit and QSampler."  LangString DESC_Seclibgig ${LANG_ENGLISH} "C++ program library for accessing DLS (Level 1 and Level 2) and GigaStudio/Gigasampler format (up to v4), SoundFont, AKAI and KORG files. This library is required by LinuxSampler, gigedit and QSampler."
767  LangString DESC_Seclibsndfile ${LANG_ENGLISH} "C program library for reading and writing files containing sampled sound (such as MS Windows WAV and the Apple/SGI AIFF format), used by gigedit to import samples."  LangString DESC_Seclibsndfile ${LANG_ENGLISH} "C program library for reading and writing files containing sampled sound (such as MS Windows WAV and the Apple/SGI AIFF format), used by gigedit to import samples."
768  LangString DESC_SecShortcuts ${LANG_ENGLISH} "Installs start menu shortcuts for all applications."  LangString DESC_SecShortcuts ${LANG_ENGLISH} "Installs start menu shortcuts for all applications."
769    

Legend:
Removed from v.1900  
changed lines
  Added in v.3022

  ViewVC Help
Powered by ViewVC