/[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 3029 by persson, Wed Oct 26 17:46:12 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\libicudt57.dll
350      File bin\686\libicuin57.dll
351      File bin\686\libicuuc57.dll
352      File bin\686\libpcre16-0.dll
353      File qt.conf
354    File qsampler.ico    File qsampler.ico
355      SetOutPath $INSTDIR\plugins\platforms
356      File bin\686\plugins\platforms\qwindows.dll
357    SetOutPath $INSTDIR\share\locale    SetOutPath $INSTDIR\share\locale
358    File bin\686\share\locale\qsampler_ru.qm    File bin\686\share\locale\qsampler_*.qm
359      File bin\686\share\locale\qt*_*.qm
360      Call FilesCommonToQSamplerAndGigedit32
361  SectionEnd  SectionEnd
362    
363  Section "gigedit 0.1.1.x (cvs2009-05-10)" Secgigedit  Function FilesCommonToQSamplerAndGigedit32
364      SetOutPath $INSTDIR
365      File bin\686\libbz2-1.dll
366      File bin\686\libfreetype-6.dll
367      Delete $INSTDIR\${SUBDIR_32_BIT}\libglib-2.0-0.dll ; remove old version
368      File bin\686\libglib-2.0-0.dll
369      File bin\686\libgraphite2.dll
370      File bin\686\libharfbuzz-0.dll
371      File bin\686\libiconv-2.dll
372      File bin\686\libintl-8.dll
373      File bin\686\libpcre-1.dll
374      File bin\686\libpng16-16.dll
375      Delete $INSTDIR\${SUBDIR_32_BIT}\zlib1.dll ; remove old version
376      File bin\686\zlib1.dll
377    FunctionEnd
378    
379    Section "gigedit ${GIGEDIT_VERSION}" Secgigedit
380    DetailPrint "Installing gigedit binaries ..."    DetailPrint "Installing gigedit binaries ..."
381    StrCpy $installinggigedit "1"    StrCpy $installinggigedit "1"
382    
383    ; make sure gtkmm is installed    StrCmp $installingQSampler "1" commonDone
384    ; (commented out for now, since we include gtk(mm) DLLs with this    StrCmp $binType BIN_TYPE_64BIT 0 common
385    ; installer, so no check and no download necessary ATM)    StrCmp $installing32BitToo "0" commonDone
386    ;Call CheckForGtkmm    common:
387      Call FilesCommonToQSamplerAndGigedit32
388    ; Set output path to the installation directory.    commonDone:
389    SetOutPath $INSTDIR    
   
390    StrCmp $binType BIN_TYPE_64BIT gigedit64    StrCmp $binType BIN_TYPE_64BIT gigedit64
391    ; 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
392    ;StrCmp $binType BIN_TYPE_686SSE gigedit686sse    ;StrCmp $binType BIN_TYPE_686SSE gigedit686sse
# Line 300  Section "gigedit 0.1.1.x (cvs2009-05-10) Line 395  Section "gigedit 0.1.1.x (cvs2009-05-10)
395    ; Files to install    ; Files to install
396    
397    gigedit64:    gigedit64:
398      SetOutPath "$INSTDIR\${SUBDIR_64_BIT}"
399    File bin\64\gigedit.exe    File bin\64\gigedit.exe
400    File bin\64\libgigedit-1.dll    File bin\64\libgigedit-3.dll
401    SetOutPath "$INSTDIR\plugins"    SetOutPath "$INSTDIR\${SUBDIR_64_BIT}\plugins"
402    File bin\64\plugins\libgigeditlinuxsamplerplugin-1.dll    File bin\64\plugins\libgigeditlinuxsamplerplugin.dll
403    SetOutPath $INSTDIR    SetOutPath "$INSTDIR\${SUBDIR_64_BIT}"
404    File bin\64\libatk-1.0-0.dll    File bin\64\libatk-1.0-0.dll
405    File bin\64\libatkmm-1.6-1.dll    File bin\64\libatkmm-1.6-1.dll
406    File bin\64\libcairo-2.dll    File bin\64\libcairo-2.dll
407    File bin\64\libcairomm-1.0-1.dll    File bin\64\libcairomm-1.0-1.dll
408      File bin\64\libexpat-1.dll
409      File bin\64\libfontconfig-1.dll
410      File bin\64\libfreetype-6.dll
411    File bin\64\libgdkmm-2.4-1.dll    File bin\64\libgdkmm-2.4-1.dll
412    File bin\64\libgdk_pixbuf-2.0-0.dll    File bin\64\libgdk_pixbuf-2.0-0.dll
413    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 421  Section "gigedit 0.1.1.x (cvs2009-05-10)
421    File bin\64\libgtkmm-2.4-1.dll    File bin\64\libgtkmm-2.4-1.dll
422    File bin\64\libgtk-win32-2.0-0.dll    File bin\64\libgtk-win32-2.0-0.dll
423    File bin\64\libintl-8.dll    File bin\64\libintl-8.dll
   File bin\64\libjpeg-62.dll  
424    File bin\64\libpango-1.0-0.dll    File bin\64\libpango-1.0-0.dll
425    File bin\64\libpangocairo-1.0-0.dll    File bin\64\libpangocairo-1.0-0.dll
426      File bin\64\libpangoft2-1.0-0.dll
427    File bin\64\libpangomm-1.4-1.dll    File bin\64\libpangomm-1.4-1.dll
428    File bin\64\libpangowin32-1.0-0.dll    File bin\64\libpangowin32-1.0-0.dll
429    File bin\64\libpng12-0.dll    File bin\64\libpng14-14.dll
430    File bin\64\libsigc-2.0-0.dll    File bin\64\libsigc-2.0-0.dll
   File bin\64\libtiff.dll  
431    File bin\64\zlib1.dll    File bin\64\zlib1.dll
432    SetOutPath $INSTDIR\etc\gtk-2.0    SetOutPath $INSTDIR\${SUBDIR_64_BIT}\etc\gtk-2.0
433    File bin\64\etc\gtk-2.0\gtkrc    File bin\64\etc\gtk-2.0\gtkrc
434    SetOutPath $INSTDIR\lib\gtk-2.0\2.10.0\engines    SetOutPath $INSTDIR\${SUBDIR_64_BIT}\lib\gtk-2.0\2.10.0\engines
435    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
436    SetOutPath $INSTDIR\share\locale\de\LC_MESSAGES    SetOutPath $INSTDIR\${SUBDIR_64_BIT}\share\locale\de\LC_MESSAGES
437    File bin\64\share\locale\de\LC_MESSAGES\gigedit.mo    File bin\64\share\locale\de\LC_MESSAGES\gigedit.mo
438    File bin\64\share\locale\de\LC_MESSAGES\gtk20.mo    File bin\64\share\locale\de\LC_MESSAGES\gtk20.mo
439    SetOutPath $INSTDIR\share\locale\sv\LC_MESSAGES    SetOutPath $INSTDIR\${SUBDIR_64_BIT}\share\locale\sv\LC_MESSAGES
440    File bin\64\share\locale\sv\LC_MESSAGES\gigedit.mo    File bin\64\share\locale\sv\LC_MESSAGES\gigedit.mo
441    File bin\64\share\locale\sv\LC_MESSAGES\gtk20.mo    File bin\64\share\locale\sv\LC_MESSAGES\gtk20.mo
442    SetOutPath $INSTDIR\share\themes\MS-Windows\gtk-2.0    SetOutPath $INSTDIR\${SUBDIR_64_BIT}\share\themes\MS-Windows\gtk-2.0
443    File bin\64\share\themes\MS-Windows\gtk-2.0\gtkrc    File bin\64\share\themes\MS-Windows\gtk-2.0\gtkrc
444    Goto done  
445      ; shall we install the 32 bit version as well?
446      StrCmp $installing32BitToo "1" gigedit686 done
447    
448    gigedit686:    gigedit686:
449      SetOutPath "$INSTDIR\${SUBDIR_32_BIT}"
450    File bin\686\gigedit.exe    File bin\686\gigedit.exe
451    File bin\686\libgigedit-1.dll    File bin\686\libgigedit-3.dll
452    SetOutPath "$INSTDIR\plugins"    SetOutPath "$INSTDIR\${SUBDIR_32_BIT}\plugins"
453    File bin\686\plugins\libgigeditlinuxsamplerplugin-1.dll    File bin\686\plugins\libgigeditlinuxsamplerplugin.dll
454    SetOutPath $INSTDIR    SetOutPath "$INSTDIR\${SUBDIR_32_BIT}"
   File bin\686\intl.dll  
   File bin\686\jpeg62.dll  
455    File bin\686\libatk-1.0-0.dll    File bin\686\libatk-1.0-0.dll
456    File bin\686\libatkmm-1.6-1.dll    File bin\686\libatkmm-1.6-1.dll
457    File bin\686\libcairo-2.dll    File bin\686\libcairo-2.dll
458      File bin\686\libcairo-gobject-2.dll
459    File bin\686\libcairomm-1.0-1.dll    File bin\686\libcairomm-1.0-1.dll
460    File bin\686\libgdkmm-2.4-1.dll    File bin\686\libepoxy-0.dll
461      File bin\686\libexpat-1.dll
462      File bin\686\libffi-6.dll
463      File bin\686\libfontconfig-1.dll
464    File bin\686\libgdk_pixbuf-2.0-0.dll    File bin\686\libgdk_pixbuf-2.0-0.dll
465    File bin\686\libgdk-win32-2.0-0.dll    File bin\686\libgdk-3-0.dll
466      File bin\686\libgdkmm-3.0-1.dll
467    File bin\686\libgio-2.0-0.dll    File bin\686\libgio-2.0-0.dll
468    File bin\686\libgiomm-2.4-1.dll    File bin\686\libgiomm-2.4-1.dll
   File bin\686\libglib-2.0-0.dll  
469    File bin\686\libglibmm-2.4-1.dll    File bin\686\libglibmm-2.4-1.dll
470    File bin\686\libgmodule-2.0-0.dll    File bin\686\libgmodule-2.0-0.dll
471    File bin\686\libgobject-2.0-0.dll    File bin\686\libgobject-2.0-0.dll
472    File bin\686\libgthread-2.0-0.dll    File bin\686\libgtk-3-0.dll
473    File bin\686\libgtkmm-2.4-1.dll    File bin\686\libgtkmm-3.0-1.dll
   File bin\686\libgtk-win32-2.0-0.dll  
474    File bin\686\libpango-1.0-0.dll    File bin\686\libpango-1.0-0.dll
475    File bin\686\libpangocairo-1.0-0.dll    File bin\686\libpangocairo-1.0-0.dll
476      File bin\686\libpangoft2-1.0-0.dll
477    File bin\686\libpangomm-1.4-1.dll    File bin\686\libpangomm-1.4-1.dll
478    File bin\686\libpangowin32-1.0-0.dll    File bin\686\libpangowin32-1.0-0.dll
479    File bin\686\libpng12-0.dll    File bin\686\libpixman-1-0.dll
480    File bin\686\libsigc-2.0-0.dll    File bin\686\libsigc-2.0-0.dll
481    File bin\686\libtiff3.dll    SetOutPath $INSTDIR\${SUBDIR_32_BIT}\share
482    File bin\686\zlib1.dll    File /r bin\686\share\glib-2.0
483    SetOutPath $INSTDIR\etc\gtk-2.0    File /r bin\686\share\icons
484    File bin\686\etc\gtk-2.0\gdk-pixbuf.loaders    SetOutPath $INSTDIR\${SUBDIR_32_BIT}\share\locale
485    File bin\686\etc\gtk-2.0\gtkrc    File /r bin\686\share\locale\de
486    SetOutPath $INSTDIR\lib\gtk-2.0\2.10.0\engines    File /r bin\686\share\locale\sv
   File bin\686\lib\gtk-2.0\2.10.0\engines\libwimp.dll  
   SetOutPath $INSTDIR\lib\gtk-2.0\2.10.0\loaders  
   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-bmp.dll  
   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-icns.dll  
   File bin\686\lib\gtk-2.0\2.10.0\loaders\libpixbufloader-ico.dll  
   File bin\686\lib\gtk-2.0\2.10.0\loaders\libpixbufloader-jpeg.dll  
   File bin\686\lib\gtk-2.0\2.10.0\loaders\libpixbufloader-pcx.dll  
   File bin\686\lib\gtk-2.0\2.10.0\loaders\libpixbufloader-png.dll  
   File bin\686\lib\gtk-2.0\2.10.0\loaders\libpixbufloader-pnm.dll  
   File bin\686\lib\gtk-2.0\2.10.0\loaders\libpixbufloader-ras.dll  
   File bin\686\lib\gtk-2.0\2.10.0\loaders\libpixbufloader-tga.dll  
   File bin\686\lib\gtk-2.0\2.10.0\loaders\libpixbufloader-tiff.dll  
   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-xbm.dll  
   File bin\686\lib\gtk-2.0\2.10.0\loaders\libpixbufloader-xpm.dll  
   SetOutPath $INSTDIR\share\locale\de\LC_MESSAGES  
   File bin\686\share\locale\de\LC_MESSAGES\gigedit.mo  
   File bin\686\share\locale\de\LC_MESSAGES\gtk20.mo  
   SetOutPath $INSTDIR\share\locale\sv\LC_MESSAGES  
   File bin\686\share\locale\sv\LC_MESSAGES\gigedit.mo  
   File bin\686\share\locale\sv\LC_MESSAGES\gtk20.mo  
   SetOutPath $INSTDIR\share\themes\MS-Windows\gtk-2.0  
   File bin\686\share\themes\MS-Windows\gtk-2.0\gtkrc  
   Goto done  
487    
488    done:    done:
489  SectionEnd  SectionEnd
490    
491  Section "libgig 3.2.1.x (cvs2009-05-03)" Seclibgig  Section "libgig ${LIBGIG_VERSION}" Seclibgig
492    DetailPrint "Installing libgig binaries ..."    DetailPrint "Installing libgig binaries ..."
493    ; We make this a mandatory component    ; We make this a mandatory component
494    SectionIn RO    SectionIn RO
   ; Set output path to the installation directory.  
   SetOutPath $INSTDIR  
495    
496    StrCmp $binType BIN_TYPE_64BIT libgig64    StrCmp $binType BIN_TYPE_64BIT libgig64
497    StrCmp $binType BIN_TYPE_686SSE libgig686sse    StrCmp $binType BIN_TYPE_686SSE libgig686sse
# Line 425  Section "libgig 3.2.1.x (cvs2009-05-03)" Line 500  Section "libgig 3.2.1.x (cvs2009-05-03)"
500    ; Files to install    ; Files to install
501    
502    libgig64:    libgig64:
503    File bin\64\libgig-6.dll    SetOutPath "$INSTDIR\${SUBDIR_64_BIT}"
504      File bin\64\libgig-7.dll
505      File bin\64\libakai-0.dll
506    File bin\64\rifftree.exe    File bin\64\rifftree.exe
507    File bin\64\dlsdump.exe    File bin\64\dlsdump.exe
508    File bin\64\gigdump.exe    File bin\64\gigdump.exe
509    File bin\64\gigextract.exe    File bin\64\gigextract.exe
510    ; special dependency for the 64 bit version    File bin\64\gigmerge.exe
511      File bin\64\gig2mono.exe
512      File bin\64\gig2stereo.exe
513      File bin\64\korg2gig.exe
514      File bin\64\korgdump.exe
515      File bin\64\akaidump.exe
516      File bin\64\akaiextract.exe
517      File bin\64\sf2dump.exe
518      File bin\64\sf2extract.exe
519    File bin\64\libgcc_s_sjlj-1.dll    File bin\64\libgcc_s_sjlj-1.dll
520    Goto done    File bin\64\libstdc++-6.dll
521    
522      ; shall we install the 32 bit version as well?
523      StrCmp $installing32BitToo "1" libgig686sse
524      StrCmp $installingQSampler "1" libgigForQsampler done
525    
526      ; QSampler needs the 32 bit libgig dll
527      libgigForQsampler:
528      SetOutPath "$INSTDIR\${SUBDIR_32_BIT}"
529      File bin\686sse\libgig-7.dll
530      Goto libgig32common
531    
532    libgig686sse:    libgig686sse:
533    File bin\686sse\libgig-6.dll    SetOutPath "$INSTDIR\${SUBDIR_32_BIT}"
534      File bin\686sse\libgig-7.dll
535      File bin\686sse\libakai-0.dll
536    File bin\686sse\rifftree.exe    File bin\686sse\rifftree.exe
537    File bin\686sse\dlsdump.exe    File bin\686sse\dlsdump.exe
538    File bin\686sse\gigdump.exe    File bin\686sse\gigdump.exe
539    File bin\686sse\gigextract.exe    File bin\686sse\gigextract.exe
540    Goto done    File bin\686sse\gigmerge.exe
541      File bin\686sse\gig2mono.exe
542      File bin\686sse\gig2stereo.exe
543      File bin\686sse\korg2gig.exe
544      File bin\686sse\korgdump.exe
545      File bin\686sse\akaidump.exe
546      File bin\686sse\akaiextract.exe
547      File bin\686sse\sf2dump.exe
548      File bin\686sse\sf2extract.exe
549      Goto libgig32common
550    
551    libgig686:    libgig686:
552    File bin\686\libgig-6.dll    SetOutPath "$INSTDIR\${SUBDIR_32_BIT}"
553      File bin\686\libgig-7.dll
554      File bin\686\libakai-0.dll
555    File bin\686\rifftree.exe    File bin\686\rifftree.exe
556    File bin\686\dlsdump.exe    File bin\686\dlsdump.exe
557    File bin\686\gigdump.exe    File bin\686\gigdump.exe
558    File bin\686\gigextract.exe    File bin\686\gigextract.exe
559    Goto done    File bin\686\gigmerge.exe
560      File bin\686\gig2mono.exe
561      File bin\686\gig2stereo.exe
562      File bin\686\korg2gig.exe
563      File bin\686\korgdump.exe
564      File bin\686\akaidump.exe
565      File bin\686\akaiextract.exe
566      File bin\686\sf2dump.exe
567      File bin\686\sf2extract.exe
568    
569      libgig32common:
570      Delete $INSTDIR\libgcc_s_dw2-1.dll ; remove old version
571      File bin\686\libgcc_s_dw2-1.dll
572      File bin\686\libwinpthread-1.dll  
573      File bin\686\libstdc++-6.dll
574      
575    done:    done:
576    
577    ; As this is a mandatory component, we add the common binary directory    ; As this is a mandatory component, we misuse is for the following
578    ; of LinuxSampler and friends to the system's PATH variable here ...    ; common tasks as well ...
579    
580      ; Add LinuxSampler and friends to the system's PATH variable
581    ${EnvVarUpdate} $0 "PATH" "A" "HKLM" "$INSTDIR"    ${EnvVarUpdate} $0 "PATH" "A" "HKLM" "$INSTDIR"
582      ${EnvVarUpdate} $0 "PATH" "A" "HKLM" "$INSTDIR\${SUBDIR_64_BIT}"
583      ${EnvVarUpdate} $0 "PATH" "A" "HKLM" "$INSTDIR\${SUBDIR_32_BIT}"
584    
   ; As this is a mandatory component, we misuse it to install the uninstaller as well ...  
585    ; Write the uninstall keys for Windows    ; Write the uninstall keys for Windows
586    WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\LinuxSampler" "DisplayName" "LinuxSampler ${RELEASE_DATE}"    WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\LinuxSampler" "DisplayName" "LinuxSampler ${RELEASE_DATE}"
587    WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\LinuxSampler" "UninstallString" '"$INSTDIR\uninstall.exe"'    WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\LinuxSampler" "UninstallString" '"$INSTDIR\uninstall.exe"'
588    WriteRegDWORD HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\LinuxSampler" "NoModify" 1    WriteRegDWORD HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\LinuxSampler" "NoModify" 1
589    WriteRegDWORD HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\LinuxSampler" "NoRepair" 1    WriteRegDWORD HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\LinuxSampler" "NoRepair" 1
590    WriteUninstaller "uninstall.exe"    WriteUninstaller "uninstall.exe"
591    ;Store installation folder  
592    WriteRegStr HKCU "Software\LinuxSampler" "" $INSTDIR    ; Store installation folders
593      WriteRegStr HKLM "Software\LinuxSampler" "Main Directory" $INSTDIR
594      StrCmp $binType BIN_TYPE_64BIT 0 +3
595      WriteRegStr HKLM "Software\LinuxSampler" "VST 64 Directory" $vstPluginPath64
596      StrCmp $installing32BitToo "1" 0 +2
597      WriteRegStr HKLM "Software\LinuxSampler" "VST 32 Directory" $vstPluginPath
598    
599      ; Just for info, store the release date as well
600      WriteRegStr HKLM "Software\LinuxSampler" "Release Date" ${RELEASE_DATE}
601  SectionEnd  SectionEnd
602    
603  Section "libsndfile 1.0.19" Seclibsndfile  Section "libsndfile ${SNDFILE_VERSION}" Seclibsndfile
604    DetailPrint "Installing libsndfile binaries ..."    DetailPrint "Installing libsndfile binaries ..."
605    ; We make this a mandatory component    ; We make this a mandatory component
606    SectionIn RO    SectionIn RO
   ; Set output path to the installation directory.  
   SetOutPath $INSTDIR  
607    
608    StrCmp $binType BIN_TYPE_64BIT libsndfile64    StrCmp $binType BIN_TYPE_64BIT libsndfile64
609    ; 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 613  Section "libsndfile 1.0.19" Seclibsndfil
613    ; Files to install    ; Files to install
614    
615    libsndfile64:    libsndfile64:
616      SetOutPath "$INSTDIR\${SUBDIR_64_BIT}"
617    File bin\64\libsndfile-1.dll    File bin\64\libsndfile-1.dll
618    Goto done    File bin\64\libFLAC-8.dll
619      File bin\64\libogg-0.dll
620      File bin\64\libvorbis-0.dll
621      File bin\64\libvorbisenc-2.dll
622    
623      ; shall we install the 32 bit version as well?
624      StrCmp $installing32BitToo "1" libsndfile686 done
625    
626    libsndfile686:    libsndfile686:
627      SetOutPath "$INSTDIR\${SUBDIR_32_BIT}"
628    File bin\686\libsndfile-1.dll    File bin\686\libsndfile-1.dll
629      File bin\686\libFLAC-8.dll
630      File bin\686\libogg-0.dll
631      File bin\686\libvorbis-0.dll
632      File bin\686\libvorbisenc-2.dll
633      File bin\686\libspeex-1.dll
634    Goto done    Goto done
635    
636    done:    done:
637  SectionEnd  SectionEnd
638    
639  Section "Start Menu Shortcuts" SecShortcuts  Section "Start Menu Shortcuts" SecShortcuts
640      Var /GLOBAL javawbin
641      Var /GLOBAL samplerDir
642    
643      StrCmp $binType BIN_TYPE_64BIT 0 +3
644      StrCpy $samplerDir "$INSTDIR\${SUBDIR_64_BIT}"
645      Goto +2
646      StrCpy $samplerDir "$INSTDIR\${SUBDIR_32_BIT}"
647    
648      ; Switch system variables to 'all users', to ensure we create the start
649      ; menu shortcuts for all users and not just for the current user.
650      SetShellVarContext all
651    
652      ; try to resolve the full qualified path of the javaw binary
653      ClearErrors
654      SearchPath $javawbin javaw.exe
655      IfErrors 0 javawDetected
656      ClearErrors
657      ; if all fails, simply use SYSDIR (which should work almost always anyway)
658      DetailPrint "WRN: Could not resolve javaw.exe path, using SYSDIR."
659      StrCpy $javawbin "$SYSDIR\javaw.exe"
660      javawDetected:
661    
662    CreateDirectory "$SMPROGRAMS\LinuxSampler"    CreateDirectory "$SMPROGRAMS\LinuxSampler"
663    
664      SetOutPath $INSTDIR
665    CreateShortCut "$SMPROGRAMS\LinuxSampler\Uninstall.lnk" "$INSTDIR\uninstall.exe" "" "$INSTDIR\uninstall.exe" 0    CreateShortCut "$SMPROGRAMS\LinuxSampler\Uninstall.lnk" "$INSTDIR\uninstall.exe" "" "$INSTDIR\uninstall.exe" 0
666    
667    StrCmp $installingLinuxSampler '1' 0 +2    StrCmp $installingLinuxSampler '1' 0 +3
668    CreateShortCut "$SMPROGRAMS\LinuxSampler\LinuxSampler 0.5.1 (stand alone backend).lnk" "$INSTDIR\linuxsampler.exe" "" "$INSTDIR\linuxsampler.exe" 0    SetOutPath $samplerDir
669      CreateShortCut "$SMPROGRAMS\LinuxSampler\LinuxSampler ${LINUXSAMPLER_VERSION} (stand alone backend).lnk" "$samplerDir\linuxsampler.exe" "" "$samplerDir\linuxsampler.exe" 0
670    
671    StrCmp $installingJSampler '1' 0 +2    StrCmp $installingJSampler '1' 0 +3
672    CreateShortCut '$SMPROGRAMS\LinuxSampler\JSampler Fantasia 0.8a (frontend).lnk' 'javaw' '-jar "$INSTDIR\Fantasia-0.8a.jar"' '$INSTDIR\jsampler.ico' 0    SetOutPath $INSTDIR
673      CreateShortCut '$SMPROGRAMS\LinuxSampler\JSampler Fantasia ${FANTASIA_VERSION} (frontend).lnk' '$javawbin' '-jar "$INSTDIR\Fantasia-0.9.jar"' '$INSTDIR\jsampler.ico' 0
674    
675    StrCmp $installingQSampler '1' 0 +2    StrCmp $installingQSampler '1' 0 +3
676    CreateShortCut "$SMPROGRAMS\LinuxSampler\QSampler 0.2.1 (frontend).lnk" "$INSTDIR\qsampler.exe" "" "$INSTDIR\qsampler.ico" 0    SetOutPath $INSTDIR
677      CreateShortCut "$SMPROGRAMS\LinuxSampler\QSampler ${QSAMPLER_VERSION} (frontend).lnk" "$INSTDIR\qsampler.exe" "" "$INSTDIR\qsampler.ico" 0
678    
679    StrCmp $installinggigedit '1' 0 +2    StrCmp $installinggigedit '1' 0 +3
680    CreateShortCut "$SMPROGRAMS\LinuxSampler\gigedit 0.1.1 (stand alone).lnk" "$INSTDIR\gigedit.exe" "" "$INSTDIR\gigedit.exe" 0    SetOutPath $samplerDir
681      CreateShortCut "$SMPROGRAMS\LinuxSampler\gigedit ${GIGEDIT_VERSION} (stand alone).lnk" "$samplerDir\gigedit.exe" "" "$samplerDir\gigedit.exe" 0
682    
683      !insertmacro CreateInternetShortcut \
684      "$SMPROGRAMS\LinuxSampler\\Support LinuxSampler" \
685      "http://www.linuxsampler.org/donations.html" \
686      "" "0"
687  SectionEnd  SectionEnd
688    
689  ;--------------------------------  ;--------------------------------
# Line 515  SectionEnd Line 691  SectionEnd
691  ; Uninstaller  ; Uninstaller
692    
693  Section "Uninstall"  Section "Uninstall"
694    DetailPrint "Removing LinuxSampler directory from PATH variable ..."    Var /GLOBAL vstdir32
695      Var /GLOBAL vstdir64
696    
697      Call un.DetectSystemType
698    
699      DetailPrint "Removing LinuxSampler directories from PATH variable ..."
700    ${un.EnvVarUpdate} $0 "PATH" "R" "HKLM" "$INSTDIR"    ${un.EnvVarUpdate} $0 "PATH" "R" "HKLM" "$INSTDIR"
701      ${un.EnvVarUpdate} $0 "PATH" "R" "HKLM" "$INSTDIR\${SUBDIR_32_BIT}"
702      ${un.EnvVarUpdate} $0 "PATH" "R" "HKLM" "$INSTDIR\${SUBDIR_64_BIT}"
703    
704      StrCmp $binType BIN_TYPE_64BIT 0 uninstallVst32
705      DetailPrint "Searching for VST plugin (64 bit) ..."
706      ClearErrors
707      ReadRegStr $0 HKLM "Software\LinuxSampler" "VST 64 Directory"
708      IfErrors uninstallVst32 0
709      StrCpy $vstdir64 $0
710      DetailPrint "Removing VST plugin (64 bit) from: $vstdir64 ..."
711      Delete "$vstdir64\LinuxSampler64.dll"
712    
713      uninstallVst32:
714    
715      DetailPrint "Searching for VST plugin (32 bit) ..."
716      ClearErrors
717      ReadRegStr $0 HKLM "Software\LinuxSampler" "VST 32 Directory"
718      IfErrors uninstallVstDone 0
719      StrCpy $vstdir32 $0
720      DetailPrint "Removing VST plugin (32 bit) from: $vstdir32 ..."
721      Delete "$vstdir32\LinuxSampler32.dll"
722    
723      uninstallVstDone:
724      ClearErrors
725    
726    DetailPrint "Removing registry keys ..."    DetailPrint "Removing registry keys ..."
727    DeleteRegKey HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\LinuxSampler"    DeleteRegKey HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\LinuxSampler"
728      DeleteRegKey HKLM "Software\LinuxSampler"
729    
730    DetailPrint "Removing VST plugin ..."    ; Workaround for Vista and younger: switch system variables to 'all users'
731    Delete $vstPluginPath\LinuxSampler.dll    ; otherwise e.g. we couldn't delete start menu shortcuts below on those
732      ; systems, as those variables would point to the current user.
733      SetShellVarContext all
734    
735    DetailPrint "Removing shortcuts (if any) ..."    DetailPrint "Removing shortcuts (if any) from: $SMPROGRAMS ..."
736    Delete "$SMPROGRAMS\LinuxSampler\*.*"    Delete "$SMPROGRAMS\LinuxSampler\*.*"
737    
738    DetailPrint "Removing directories used ..."    DetailPrint "Removing directories used ..."
739    RMDir "$SMPROGRAMS\LinuxSampler"    RMDir /r "$SMPROGRAMS\LinuxSampler"
740    RMDir /r "$INSTDIR"    RMDir /r "$INSTDIR"
741  SectionEnd  SectionEnd
742    
# Line 536  SectionEnd Line 744  SectionEnd
744  ;Descriptions  ;Descriptions
745    
746  ;Language strings  ;Language strings
747  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."
748  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."
749  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!"
750  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."
751  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."
752  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."
753  LangString DESC_SecShortcuts ${LANG_ENGLISH} "Installs start menu shortcuts for all applications."  LangString DESC_SecShortcuts ${LANG_ENGLISH} "Installs start menu shortcuts for all applications."
754    

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

  ViewVC Help
Powered by ViewVC