diff options
Diffstat (limited to 'Src/installer/SDK/WA_SDK.nsi')
-rw-r--r-- | Src/installer/SDK/WA_SDK.nsi | 201 |
1 files changed, 201 insertions, 0 deletions
diff --git a/Src/installer/SDK/WA_SDK.nsi b/Src/installer/SDK/WA_SDK.nsi new file mode 100644 index 00000000..17f2209c --- /dev/null +++ b/Src/installer/SDK/WA_SDK.nsi @@ -0,0 +1,201 @@ +; WA_SDK.nsi + +; This script will collect the files in Winamp SDK and create an installer for them + +;------------------------ + +!ifndef VERSION + !define VERSION "5.9" +!endif + +!define PRODUCT_NAME "Winamp ${VERSION} SDK" + +; This is where all projects live. Ensure this is the correct relative path. +!ifndef PROJECTS + !define PROJECTS "..\.." +!endif + +; Hinterland repo +!ifndef Hinterland + !define Hinterland "..\..\..\..\Hinterland" +!endif + +; Path to SDK Plugins +!ifndef SDKPlugins + !define SDKPlugins "..\..\Plugins\SDK" +!endif + +; Path to Gen Plugins +!ifndef GenPlugins + !define GenPlugins "..\..\Plugins\General" +!endif + +; Path to Input Plugins +!ifndef InPlugins + !define InPlugins "..\..\Plugins\Input" +!endif + +; Path to Enc Plugins +!ifndef EncPlugins + !define EncPlugins "..\..\Plugins\Encoder" +!endif + +; Path to Library Plugins +!ifndef LibPlugins + !define LibPlugins "..\..\Plugins\Library" +!endif + +; Path to Output Plugins +!ifndef OutPlugins + !define OutPlugins "..\..\Plugins\Output" +!endif + +; Path to DSP Plugins +!ifndef DSPPlugins + !define DSPPlugins "..\..\Plugins\DSP" +!endif + +; Path to Portable Plugins +!ifndef PortablePlugins + !define PortablePlugins "..\..\Plugins\Portable" +!endif + +; Path to Vis Plugins +!ifndef VisPlugins + !define VisPlugins "..\..\Plugins\Visualization" +!endif + +!define old_stuff_for_reference + +!define WINAMP "Winamp" +!define UNINSTALLER "WA${VERSION}_SDK_Uninstaller.exe" + +;Set Compression +SetCompress force +SetCompressor /solid lzma + +!include "sections.nsh" +!include "LogicLib.nsh" +!include "WordFunc.nsh" + +XPStyle on + +;Request Administrator Privileges +RequestExecutionLevel user + +;Version information for Windows Explorer +VIProductVersion "5.9.0.0" +VIAddVersionKey "ProductName" "${PRODUCT_NAME}" +VIAddVersionKey "Comments" "Winamp SDK Installer" +VIAddVersionKey "LegalCopyright" "Copyright © 1997-2022 Winamp SA" +VIAddVersionKey "CompanyName" "Winamp SA" +VIAddVersionKey "FileDescription" "${PRODUCT_NAME} Installer" +VIAddVersionKey "FileVersion" "5.9.0.0" +VIAddVersionKey "ProductVersion" "5.9.0.0" + +;------------------------ + +Name "Winamp ${VERSION} SDK" +OutFile "WA${VERSION}_SDK.exe" +InstallDir "$PROGRAMFILES\Winamp SDK" + +Page Directory +Page instfiles + +Section "" + +; APIs +!include "winamp_api.nsh" +!include "ml_api.nsh" +!include "wasabi.nsh" +!include "bfc.nsh" +!include "xml.nsh" +!include "playlist.nsh" +!include "nu.nsh" +!include "Agave.nsh" +!include "nsv.nsh" +!include "burner.nsh" + +; examples +!include "gen_tray.nsh" +!include "enc_flac.nsh" +!include "in_flac.nsh" +!include "ml_bookmarks.nsh" +!include "xspf.nsh" + +; Previously moved to Hinterland. Now updated / migrated to VS2019... +!include "ml_xmlex.nsh" +!include "plLoadEx.nsh" +!include "dsp_test.nsh" +!include "in_tone.nsh" +!include "coverdirectory.nsh" +!include "irctell.nsh" +!include "ml_iso.nsh" +!include "out_null.nsh" +!include "gen_classicart.nsh" + +; These old plugins were moved to Hinterland and do not compile under VS2019, so let's remove them from the SDK +;!include "in_chain.nsh" +;!include "in_raw.nsh" +;!include "ml_http.nsh" +;!include "mlExplorer.nsh" + +; skinning +!include "maki.nsh" + +; open source +!include "ReplayGainAnalysis.nsh" +!include "nde.nsh" + +; TODO +; example using api_tagz +; example using hotkeys +; example using api_decodefile +; vis_avs +; jnetlib (but which one? dll or w5s?) +; file reader API +; example using api_random (maybe by adding noise generator to dsp_test) + +!ifdef old_stuff_for_reference + +SetOutPath $INSTDIR\gen_ml +File ${GenPlugins}\gen_ml\gaystring.h ; this needs replacing +File ${GenPlugins}\gen_ml\gaystring.cpp ; this needs replacing +File ${GenPlugins}\gen_ml\itemlist.cpp +File ${GenPlugins}\gen_ml\itemlist.h +File ${GenPlugins}\gen_ml\listview.cpp +File ${GenPlugins}\gen_ml\listview.h +File ${GenPlugins}\gen_ml\ml_ipc.h +File ${GenPlugins}\gen_ml\ml_lib.cpp + +SetOutPath $INSTDIR\vis +File ${PROJECTS}\resources\SDK\wa5vis.txt +SetOutPath $INSTDIR\vis\vis_avs\apesdk +File /x CVS ${VisPlugins}\vis_avs\apesdk\*.* +SetOutPath $INSTDIR\vis\vis_avs\ns-eel2 +File /x CVS ${PROJECTS}\ns-eel2\*.* +SetOutPath $INSTDIR\vis\vis_test +File ${Hinterland}\vis_milkdrop\svis.mak + +SetOutPath $INSTDIR\Winamp +File ${GenPlugins}\gen_hotkeys\wa_hotkeys.h +File ${PROJECTS}\Winamp\api_random.h +File ${PROJECTS}\Winamp\api_decodefile.h +File ${PROJECTS}\Winamp\api_audiostream.h + +SetOutPath $INSTDIR\tagz +File ${PROJECTS}\tagz\api_tagz.h +File ${PROJECTS}\tagz\ifc_tagprovider.h +File ${PROJECTS}\tagz\ifc_tagparams.h + +File /oname=$INSTDIR\readme.txt ${PROJECTS}\Resources\SDK\sdkreadme.txt +!endif + +WriteUninstaller "$INSTDIR\${UNINSTALLER}" + +SectionEnd + +Section "Uninstall" +Delete $INSTDIR\*.* +RMDir $INSTDIR +SectionEnd |