123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201 |
- ; 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
|