--- misc/trunk/win32_installer/linuxsampler_all.nsi 2013/01/05 12:31:22 2391 +++ misc/trunk/win32_installer/linuxsampler_all.nsi 2019/10/13 17:11:31 3631 @@ -1,6 +1,6 @@ ; LinuxSampler Windows installer ; -; Copyright (C) 2007-2013, The LinuxSampler Developers +; Copyright (C) 2007-2019, The LinuxSampler Developers ; ; All-in-one Installer for all subprojects / software components of the ; LinuxSampler Project. @@ -41,10 +41,10 @@ ; Java Runtime Environment, needed for JSampler !define JRE_VERSION "1.6" -; jre-7u10-windows-i586.exe: -!define JRE_32_URL "http://javadl.sun.com/webapps/download/AutoDL?BundleId=71835" -; jre-7u10-windows-x64.exe: -!define JRE_64_URL "http://javadl.sun.com/webapps/download/AutoDL?BundleId=71837" +; jre-8u201-windows-i586.exe: +!define JRE_32_URL "https://javadl.oracle.com/webapps/download/AutoDL?BundleId=236886_42970487e3af4f5aa5bca3f542482c60" +; jre-8u201-windows-x64.exe: +!define JRE_64_URL "https://javadl.oracle.com/webapps/download/AutoDL?BundleId=236888_42970487e3af4f5aa5bca3f542482c60" ; The default installation directory InstallDir "$PROGRAMFILES64\LinuxSampler" @@ -93,7 +93,7 @@ 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-2013 The LinuxSampler Project" +VIAddVersionKey /LANG=${LANG_ENGLISH} "LegalCopyright" "© 2003-2019 The LinuxSampler Project" VIAddVersionKey /LANG=${LANG_ENGLISH} "FileDescription" "LinuxSampler Installer (${RELEASE_DATE})" VIAddVersionKey /LANG=${LANG_ENGLISH} "FileVersion" "0.0.0" @@ -291,7 +291,7 @@ linuxsampler64: SetOutPath "$INSTDIR\${SUBDIR_64_BIT}" File bin\64\linuxsampler.exe - File bin\64\liblinuxsampler-3.dll + File bin\64\liblinuxsampler-5.dll File bin\64\libsqlite3-0.dll SetOutPath $vstPluginPath64 File /oname=LinuxSampler64.dll bin\64\LinuxSampler.dll @@ -305,7 +305,7 @@ linuxsampler686sse: SetOutPath "$INSTDIR\${SUBDIR_32_BIT}" File bin\686sse\linuxsampler.exe - File bin\686sse\liblinuxsampler-3.dll + File bin\686sse\liblinuxsampler-5.dll File bin\686\libsqlite3-0.dll SetOutPath $vstPluginPath File /oname=LinuxSampler32.dll bin\686sse\LinuxSampler.dll @@ -314,7 +314,7 @@ linuxsampler686: SetOutPath "$INSTDIR\${SUBDIR_32_BIT}" File bin\686\linuxsampler.exe - File bin\686\liblinuxsampler-3.dll + File bin\686\liblinuxsampler-5.dll File bin\686\libsqlite3-0.dll SetOutPath $vstPluginPath File /oname=LinuxSampler32.dll bin\686\LinuxSampler.dll @@ -343,27 +343,59 @@ ; Files to install File bin\686\qsampler.exe File bin\686\liblscp-6.dll - File bin\686\QtCore4.dll - File bin\686\QtGui4.dll - File bin\686\mingwm10.dll - File bin\686\libgcc_s_dw2-1.dll + File bin\686\Qt5Core.dll + File bin\686\Qt5Gui.dll + File bin\686\Qt5Network.dll + File bin\686\Qt5Widgets.dll + File bin\686\libicudt57.dll + File bin\686\libicuin57.dll + File bin\686\libicuuc57.dll + File bin\686\libpcre16-0.dll + File qt.conf File qsampler.ico + SetOutPath $INSTDIR\plugins\platforms + File bin\686\plugins\platforms\qwindows.dll SetOutPath $INSTDIR\share\locale - File bin\686\share\locale\qsampler_ru.qm - File bin\686\share\locale\qsampler_cs.qm - File bin\686\share\locale\qt_ru.qm - File bin\686\share\locale\qt_cs.qm + File bin\686\share\locale\qsampler_*.qm + File bin\686\share\locale\qt*_*.qm + Call FilesCommonToQSamplerAndGigedit32 SectionEnd +Function FilesCommonToQSamplerAndGigedit32 + SetOutPath $INSTDIR + File bin\686\libbz2-1.dll + File bin\686\libfreetype-6.dll + Delete $INSTDIR\${SUBDIR_32_BIT}\libglib-2.0-0.dll ; remove old version + File bin\686\libglib-2.0-0.dll + File bin\686\libgraphite2.dll + File bin\686\libharfbuzz-0.dll + File bin\686\libiconv-2.dll + File bin\686\libintl-8.dll + File bin\686\libpcre-1.dll + File bin\686\libpng16-16.dll + Delete $INSTDIR\${SUBDIR_32_BIT}\zlib1.dll ; remove old version + File bin\686\zlib1.dll +FunctionEnd + Section "gigedit ${GIGEDIT_VERSION}" Secgigedit DetailPrint "Installing gigedit binaries ..." StrCpy $installinggigedit "1" - ; make sure gtkmm is installed - ; (commented out for now, since we include gtk(mm) DLLs with this - ; installer, so no check and no download necessary ATM) - ;Call CheckForGtkmm - + StrCmp $installingQSampler "1" commonDone + StrCmp $binType BIN_TYPE_64BIT 0 common + StrCmp $installing32BitToo "0" commonDone + common: + Call FilesCommonToQSamplerAndGigedit32 + commonDone: + + ; Files common to 32 and 64 bit gigedit + SetOutPath $INSTDIR\share + File /r bin\686\share\glib-2.0 + File /r bin\686\share\icons + SetOutPath $INSTDIR\share\locale + File /r bin\686\share\locale\de + File /r bin\686\share\locale\sv + StrCmp $binType BIN_TYPE_64BIT gigedit64 ; 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 ;StrCmp $binType BIN_TYPE_686SSE gigedit686sse @@ -374,50 +406,48 @@ gigedit64: SetOutPath "$INSTDIR\${SUBDIR_64_BIT}" File bin\64\gigedit.exe - File bin\64\libgigedit-2.dll + File bin\64\libgigedit-4.dll SetOutPath "$INSTDIR\${SUBDIR_64_BIT}\plugins" File bin\64\plugins\libgigeditlinuxsamplerplugin.dll SetOutPath "$INSTDIR\${SUBDIR_64_BIT}" File bin\64\libatk-1.0-0.dll File bin\64\libatkmm-1.6-1.dll + File bin\64\libbz2-1.dll File bin\64\libcairo-2.dll + File bin\64\libcairo-gobject-2.dll File bin\64\libcairomm-1.0-1.dll + File bin\64\libepoxy-0.dll File bin\64\libexpat-1.dll + File bin\64\libffi-6.dll File bin\64\libfontconfig-1.dll File bin\64\libfreetype-6.dll - File bin\64\libgdkmm-2.4-1.dll + File bin\64\libgdkmm-3.0-1.dll File bin\64\libgdk_pixbuf-2.0-0.dll - File bin\64\libgdk-win32-2.0-0.dll + File bin\64\libgdk-3-0.dll File bin\64\libgio-2.0-0.dll File bin\64\libgiomm-2.4-1.dll File bin\64\libglib-2.0-0.dll File bin\64\libglibmm-2.4-1.dll File bin\64\libgmodule-2.0-0.dll File bin\64\libgobject-2.0-0.dll - File bin\64\libgthread-2.0-0.dll - File bin\64\libgtkmm-2.4-1.dll - File bin\64\libgtk-win32-2.0-0.dll + File bin\64\libgraphite2.dll + File bin\64\libgtkmm-3.0-1.dll + File bin\64\libgtk-3-0.dll + File bin\64\libharfbuzz-0.dll + File bin\64\libiconv-2.dll File bin\64\libintl-8.dll File bin\64\libpango-1.0-0.dll File bin\64\libpangocairo-1.0-0.dll File bin\64\libpangoft2-1.0-0.dll File bin\64\libpangomm-1.4-1.dll File bin\64\libpangowin32-1.0-0.dll - File bin\64\libpng14-14.dll + File bin\64\libpcre-1.dll + File bin\64\libpixman-1-0.dll + File bin\64\libpng16-16.dll File bin\64\libsigc-2.0-0.dll File bin\64\zlib1.dll - SetOutPath $INSTDIR\${SUBDIR_64_BIT}\etc\gtk-2.0 - File bin\64\etc\gtk-2.0\gtkrc - SetOutPath $INSTDIR\${SUBDIR_64_BIT}\lib\gtk-2.0\2.10.0\engines - File bin\64\lib\gtk-2.0\2.10.0\engines\libwimp.dll - SetOutPath $INSTDIR\${SUBDIR_64_BIT}\share\locale\de\LC_MESSAGES - File bin\64\share\locale\de\LC_MESSAGES\gigedit.mo - File bin\64\share\locale\de\LC_MESSAGES\gtk20.mo - SetOutPath $INSTDIR\${SUBDIR_64_BIT}\share\locale\sv\LC_MESSAGES - File bin\64\share\locale\sv\LC_MESSAGES\gigedit.mo - File bin\64\share\locale\sv\LC_MESSAGES\gtk20.mo - SetOutPath $INSTDIR\${SUBDIR_64_BIT}\share\themes\MS-Windows\gtk-2.0 - File bin\64\share\themes\MS-Windows\gtk-2.0\gtkrc + ; remove old share directory + RMDir /r $INSTDIR\${SUBDIR_64_BIT}\share ; shall we install the 32 bit version as well? StrCmp $installing32BitToo "1" gigedit686 done @@ -425,71 +455,43 @@ gigedit686: SetOutPath "$INSTDIR\${SUBDIR_32_BIT}" File bin\686\gigedit.exe - File bin\686\libgigedit-2.dll + File bin\686\libgigedit-4.dll SetOutPath "$INSTDIR\${SUBDIR_32_BIT}\plugins" File bin\686\plugins\libgigeditlinuxsamplerplugin.dll SetOutPath "$INSTDIR\${SUBDIR_32_BIT}" - File bin\686\intl.dll - File bin\686\jpeg62.dll File bin\686\libatk-1.0-0.dll File bin\686\libatkmm-1.6-1.dll File bin\686\libcairo-2.dll + File bin\686\libcairo-gobject-2.dll File bin\686\libcairomm-1.0-1.dll - File bin\686\libgdkmm-2.4-1.dll + File bin\686\libepoxy-0.dll + File bin\686\libexpat-1.dll + File bin\686\libffi-6.dll + File bin\686\libfontconfig-1.dll File bin\686\libgdk_pixbuf-2.0-0.dll - File bin\686\libgdk-win32-2.0-0.dll + File bin\686\libgdk-3-0.dll + File bin\686\libgdkmm-3.0-1.dll File bin\686\libgio-2.0-0.dll File bin\686\libgiomm-2.4-1.dll - File bin\686\libglib-2.0-0.dll File bin\686\libglibmm-2.4-1.dll File bin\686\libgmodule-2.0-0.dll File bin\686\libgobject-2.0-0.dll - File bin\686\libgthread-2.0-0.dll - File bin\686\libgtkmm-2.4-1.dll - File bin\686\libgtk-win32-2.0-0.dll + File bin\686\libgtk-3-0.dll + File bin\686\libgtkmm-3.0-1.dll File bin\686\libpango-1.0-0.dll File bin\686\libpangocairo-1.0-0.dll + File bin\686\libpangoft2-1.0-0.dll File bin\686\libpangomm-1.4-1.dll File bin\686\libpangowin32-1.0-0.dll - File bin\686\libpng12-0.dll + File bin\686\libpixman-1-0.dll File bin\686\libsigc-2.0-0.dll - File bin\686\libtiff3.dll - File bin\686\zlib1.dll - SetOutPath $INSTDIR\${SUBDIR_32_BIT}\etc\gtk-2.0 - File bin\686\etc\gtk-2.0\gdk-pixbuf.loaders - File bin\686\etc\gtk-2.0\gtkrc - SetOutPath $INSTDIR\${SUBDIR_32_BIT}\lib\gtk-2.0\2.10.0\engines - File bin\686\lib\gtk-2.0\2.10.0\engines\libwimp.dll - SetOutPath $INSTDIR\${SUBDIR_32_BIT}\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\${SUBDIR_32_BIT}\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\${SUBDIR_32_BIT}\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\${SUBDIR_32_BIT}\share\themes\MS-Windows\gtk-2.0 - File bin\686\share\themes\MS-Windows\gtk-2.0\gtkrc - Goto done + ; remove old share directory + RMDir /r $INSTDIR\${SUBDIR_32_BIT}\share done: SectionEnd -Section "libgig 3.3.0" Seclibgig +Section "libgig ${LIBGIG_VERSION}" Seclibgig DetailPrint "Installing libgig binaries ..." ; We make this a mandatory component SectionIn RO @@ -502,36 +504,78 @@ libgig64: SetOutPath "$INSTDIR\${SUBDIR_64_BIT}" - File bin\64\libgig-6.dll + File bin\64\libgig-9.dll + File bin\64\libakai-0.dll File bin\64\rifftree.exe File bin\64\dlsdump.exe File bin\64\gigdump.exe File bin\64\gigextract.exe - ; special dependencies for the 64 bit version - File bin\64\libgcc_s_sjlj-1.dll + File bin\64\gigmerge.exe + File bin\64\gig2mono.exe + File bin\64\gig2stereo.exe + File bin\64\korg2gig.exe + File bin\64\korgdump.exe + File bin\64\akaidump.exe + File bin\64\akaiextract.exe + File bin\64\sf2dump.exe + File bin\64\sf2extract.exe + File bin\64\libgcc_s_seh-1.dll + File bin\64\libwinpthread-1.dll File bin\64\libstdc++-6.dll ; shall we install the 32 bit version as well? - StrCmp $installing32BitToo "1" libgig686sse done + StrCmp $installing32BitToo "1" libgig686sse + StrCmp $installingQSampler "1" libgigForQsampler done + + ; QSampler needs the 32 bit libgig dll + libgigForQsampler: + SetOutPath "$INSTDIR\${SUBDIR_32_BIT}" + File bin\686sse\libgig-9.dll + Goto libgig32common libgig686sse: SetOutPath "$INSTDIR\${SUBDIR_32_BIT}" - File bin\686sse\libgig-6.dll + File bin\686sse\libgig-9.dll + File bin\686sse\libakai-0.dll File bin\686sse\rifftree.exe File bin\686sse\dlsdump.exe File bin\686sse\gigdump.exe File bin\686sse\gigextract.exe - Goto done + File bin\686sse\gigmerge.exe + File bin\686sse\gig2mono.exe + File bin\686sse\gig2stereo.exe + File bin\686sse\korg2gig.exe + File bin\686sse\korgdump.exe + File bin\686sse\akaidump.exe + File bin\686sse\akaiextract.exe + File bin\686sse\sf2dump.exe + File bin\686sse\sf2extract.exe + Goto libgig32common libgig686: SetOutPath "$INSTDIR\${SUBDIR_32_BIT}" - File bin\686\libgig-6.dll + File bin\686\libgig-9.dll + File bin\686\libakai-0.dll File bin\686\rifftree.exe File bin\686\dlsdump.exe File bin\686\gigdump.exe File bin\686\gigextract.exe - Goto done + File bin\686\gigmerge.exe + File bin\686\gig2mono.exe + File bin\686\gig2stereo.exe + File bin\686\korg2gig.exe + File bin\686\korgdump.exe + File bin\686\akaidump.exe + File bin\686\akaiextract.exe + File bin\686\sf2dump.exe + File bin\686\sf2extract.exe + libgig32common: + Delete $INSTDIR\libgcc_s_dw2-1.dll ; remove old version + File bin\686\libgcc_s_dw2-1.dll + File bin\686\libwinpthread-1.dll + File bin\686\libstdc++-6.dll + done: ; As this is a mandatory component, we misuse is for the following @@ -579,6 +623,7 @@ File bin\64\libogg-0.dll File bin\64\libvorbis-0.dll File bin\64\libvorbisenc-2.dll + File bin\64\libspeex-1.dll ; shall we install the 32 bit version as well? StrCmp $installing32BitToo "1" libsndfile686 done @@ -590,6 +635,7 @@ File bin\686\libogg-0.dll File bin\686\libvorbis-0.dll File bin\686\libvorbisenc-2.dll + File bin\686\libspeex-1.dll Goto done done: @@ -707,7 +753,7 @@ 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_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_Secgigedit ${LANG_ENGLISH} "Graphical instrument editor for Gigasampler format v2 and v3 files. Can be used stand-alone or in conjunction with LinuxSampler." -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." 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_SecShortcuts ${LANG_ENGLISH} "Installs start menu shortcuts for all applications."