aboutsummaryrefslogtreecommitdiff
path: root/Src/external_dependencies/openmpt-trunk/build/premake
diff options
context:
space:
mode:
authorJef <jef@targetspot.com>2024-09-24 08:54:57 -0400
committerJef <jef@targetspot.com>2024-09-24 08:54:57 -0400
commit20d28e80a5c861a9d5f449ea911ab75b4f37ad0d (patch)
tree12f17f78986871dd2cfb0a56e5e93b545c1ae0d0 /Src/external_dependencies/openmpt-trunk/build/premake
parent537bcbc86291b32fc04ae4133ce4d7cac8ebe9a7 (diff)
downloadwinamp-20d28e80a5c861a9d5f449ea911ab75b4f37ad0d.tar.gz
Initial community commit
Diffstat (limited to 'Src/external_dependencies/openmpt-trunk/build/premake')
-rw-r--r--Src/external_dependencies/openmpt-trunk/build/premake/def/ext-lhasa.def22
-rw-r--r--Src/external_dependencies/openmpt-trunk/build/premake/def/ext-minimp3.def5
-rw-r--r--Src/external_dependencies/openmpt-trunk/build/premake/def/ext-minizip.def60
-rw-r--r--Src/external_dependencies/openmpt-trunk/build/premake/def/ext-opusfile.def65
-rw-r--r--Src/external_dependencies/openmpt-trunk/build/premake/def/ext-portaudio-retro.def58
-rw-r--r--Src/external_dependencies/openmpt-trunk/build/premake/def/ext-stb_vorbis.def30
-rw-r--r--Src/external_dependencies/openmpt-trunk/build/premake/def/ext-vorbis.def81
-rw-r--r--Src/external_dependencies/openmpt-trunk/build/premake/ext-UnRAR.lua152
-rw-r--r--Src/external_dependencies/openmpt-trunk/build/premake/ext-ancient.lua38
-rw-r--r--Src/external_dependencies/openmpt-trunk/build/premake/ext-flac.lua128
-rw-r--r--Src/external_dependencies/openmpt-trunk/build/premake/ext-lame.lua66
-rw-r--r--Src/external_dependencies/openmpt-trunk/build/premake/ext-lhasa.lua57
-rw-r--r--Src/external_dependencies/openmpt-trunk/build/premake/ext-minimp3.lua22
-rw-r--r--Src/external_dependencies/openmpt-trunk/build/premake/ext-miniz.lua24
-rw-r--r--Src/external_dependencies/openmpt-trunk/build/premake/ext-minizip.lua53
-rw-r--r--Src/external_dependencies/openmpt-trunk/build/premake/ext-mpg123.lua63
-rw-r--r--Src/external_dependencies/openmpt-trunk/build/premake/ext-ogg.lua27
-rw-r--r--Src/external_dependencies/openmpt-trunk/build/premake/ext-opus.lua76
-rw-r--r--Src/external_dependencies/openmpt-trunk/build/premake/ext-opusenc.lua60
-rw-r--r--Src/external_dependencies/openmpt-trunk/build/premake/ext-opusfile.lua39
-rw-r--r--Src/external_dependencies/openmpt-trunk/build/premake/ext-portaudio.lua134
-rw-r--r--Src/external_dependencies/openmpt-trunk/build/premake/ext-portaudiocpp.lua37
-rw-r--r--Src/external_dependencies/openmpt-trunk/build/premake/ext-pugixml.lua24
-rw-r--r--Src/external_dependencies/openmpt-trunk/build/premake/ext-r8brain.lua33
-rw-r--r--Src/external_dependencies/openmpt-trunk/build/premake/ext-rtaudio.lua56
-rw-r--r--Src/external_dependencies/openmpt-trunk/build/premake/ext-rtmidi.lua32
-rw-r--r--Src/external_dependencies/openmpt-trunk/build/premake/ext-smbPitchShift.lua26
-rw-r--r--Src/external_dependencies/openmpt-trunk/build/premake/ext-soundtouch.lua59
-rw-r--r--Src/external_dependencies/openmpt-trunk/build/premake/ext-stb_vorbis.lua24
-rw-r--r--Src/external_dependencies/openmpt-trunk/build/premake/ext-vorbis.lua112
-rw-r--r--Src/external_dependencies/openmpt-trunk/build/premake/ext-zlib.lua55
-rw-r--r--Src/external_dependencies/openmpt-trunk/build/premake/inc/lame/config.h1
-rw-r--r--Src/external_dependencies/openmpt-trunk/build/premake/lnk/ext-portaudio.c3
-rw-r--r--Src/external_dependencies/openmpt-trunk/build/premake/mpt-OpenMPT.lua341
-rw-r--r--Src/external_dependencies/openmpt-trunk/build/premake/mpt-PluginBridge.lua159
-rw-r--r--Src/external_dependencies/openmpt-trunk/build/premake/mpt-in_openmpt.lua93
-rw-r--r--Src/external_dependencies/openmpt-trunk/build/premake/mpt-libopenmpt-small.lua109
-rw-r--r--Src/external_dependencies/openmpt-trunk/build/premake/mpt-libopenmpt.lua110
-rw-r--r--Src/external_dependencies/openmpt-trunk/build/premake/mpt-libopenmpt_examples.lua157
-rw-r--r--Src/external_dependencies/openmpt-trunk/build/premake/mpt-libopenmpt_test.lua90
-rw-r--r--Src/external_dependencies/openmpt-trunk/build/premake/mpt-openmpt123.lua73
-rw-r--r--Src/external_dependencies/openmpt-trunk/build/premake/mpt-updatesigntool.lua39
-rw-r--r--Src/external_dependencies/openmpt-trunk/build/premake/mpt-xmp-openmpt.lua94
-rw-r--r--Src/external_dependencies/openmpt-trunk/build/premake/premake-defaults-DLL.lua3
-rw-r--r--Src/external_dependencies/openmpt-trunk/build/premake/premake-defaults-EXE.lua3
-rw-r--r--Src/external_dependencies/openmpt-trunk/build/premake/premake-defaults-EXEGUI.lua3
-rw-r--r--Src/external_dependencies/openmpt-trunk/build/premake/premake-defaults-LIB.lua3
-rw-r--r--Src/external_dependencies/openmpt-trunk/build/premake/premake-defaults-LIBorDLL.lua17
-rw-r--r--Src/external_dependencies/openmpt-trunk/build/premake/premake-defaults-solution.lua16
-rw-r--r--Src/external_dependencies/openmpt-trunk/build/premake/premake-defaults.lua347
-rw-r--r--Src/external_dependencies/openmpt-trunk/build/premake/premake.lua431
51 files changed, 3810 insertions, 0 deletions
diff --git a/Src/external_dependencies/openmpt-trunk/build/premake/def/ext-lhasa.def b/Src/external_dependencies/openmpt-trunk/build/premake/def/ext-lhasa.def
new file mode 100644
index 00000000..bf918200
--- /dev/null
+++ b/Src/external_dependencies/openmpt-trunk/build/premake/def/ext-lhasa.def
@@ -0,0 +1,22 @@
+LIBRARY
+EXPORTS
+;cat include/lhasa/lib/public/*.h | grep -v '^ ' | sed 's/\*//g' | tr '\t' ' ' | grep -v '^ ' | grep ' lha_' | tr '\(' ' ' | awk '{print $2;}' | sort
+lha_decoder_for_name
+lha_decoder_free
+lha_decoder_get_crc
+lha_decoder_get_length
+lha_decoder_monitor
+lha_decoder_new
+lha_decoder_read
+lha_input_stream_free
+lha_input_stream_from
+lha_input_stream_from_FILE
+lha_input_stream_new
+lha_reader_check
+lha_reader_current_is_fake
+lha_reader_extract
+lha_reader_free
+lha_reader_new
+lha_reader_next_file
+lha_reader_read
+lha_reader_set_dir_policy
diff --git a/Src/external_dependencies/openmpt-trunk/build/premake/def/ext-minimp3.def b/Src/external_dependencies/openmpt-trunk/build/premake/def/ext-minimp3.def
new file mode 100644
index 00000000..9c8c13a4
--- /dev/null
+++ b/Src/external_dependencies/openmpt-trunk/build/premake/def/ext-minimp3.def
@@ -0,0 +1,5 @@
+LIBRARY
+EXPORTS
+;
+mp3dec_init
+mp3dec_decode_frame
diff --git a/Src/external_dependencies/openmpt-trunk/build/premake/def/ext-minizip.def b/Src/external_dependencies/openmpt-trunk/build/premake/def/ext-minizip.def
new file mode 100644
index 00000000..88ab50a3
--- /dev/null
+++ b/Src/external_dependencies/openmpt-trunk/build/premake/def/ext-minizip.def
@@ -0,0 +1,60 @@
+LIBRARY
+EXPORTS
+;
+fill_win32_filefunc
+fill_win32_filefunc64
+fill_win32_filefunc64A
+fill_win32_filefunc64W
+;zlib/contrib/minizip $ cat *.h | grep ZEXPORT | tr '(' ' ' | awk '{print $4;}' | sort
+unzClose
+unzCloseCurrentFile
+unzGetCurrentFileInfo
+unzGetCurrentFileInfo64
+unzGetCurrentFileZStreamPos64
+unzGetFilePos
+unzGetFilePos64
+unzGetGlobalComment
+unzGetGlobalInfo
+unzGetGlobalInfo64
+unzGetLocalExtrafield
+unzGetOffset
+unzGetOffset64
+unzGoToFilePos
+unzGoToFilePos64
+unzGoToFirstFile
+unzGoToNextFile
+unzLocateFile
+unzOpen
+unzOpen2
+unzOpen2_64
+unzOpen64
+unzOpenCurrentFile
+unzOpenCurrentFile2
+unzOpenCurrentFile3
+unzOpenCurrentFilePassword
+unzReadCurrentFile
+unzRepair
+unzSetOffset
+unzSetOffset64
+unzStringFileNameCompare
+unzeof
+unztell
+unztell64
+zipClose
+zipCloseFileInZip
+zipCloseFileInZipRaw
+zipCloseFileInZipRaw64
+zipOpen
+zipOpen2
+zipOpen2_64
+zipOpen64
+zipOpenNewFileInZip
+zipOpenNewFileInZip2
+zipOpenNewFileInZip2_64
+zipOpenNewFileInZip3
+zipOpenNewFileInZip3_64
+zipOpenNewFileInZip4
+zipOpenNewFileInZip4_64
+zipOpenNewFileInZip64
+zipRemoveExtraInfoBlock
+zipWriteInFileInZip
diff --git a/Src/external_dependencies/openmpt-trunk/build/premake/def/ext-opusfile.def b/Src/external_dependencies/openmpt-trunk/build/premake/def/ext-opusfile.def
new file mode 100644
index 00000000..d15a8743
--- /dev/null
+++ b/Src/external_dependencies/openmpt-trunk/build/premake/def/ext-opusfile.def
@@ -0,0 +1,65 @@
+EXPORTS
+;castxml --castxml-gccxml -o out.xml -I. -I../../opus/include/ opusfile.h
+;cat out.xml | grep Function | grep 'file=\"f39\"' | awk '{print $3;}' | sed 's/name=//g' | sed 's/"//g' | sort
+op_bitrate
+op_bitrate_instant
+op_channel_count
+op_current_link
+op_fdopen
+op_fopen
+op_free
+op_freopen
+op_head
+op_link_count
+op_mem_stream_create
+op_open_callbacks
+op_open_file
+op_open_memory
+op_open_url
+op_pcm_seek
+op_pcm_tell
+op_pcm_total
+op_raw_seek
+op_raw_tell
+op_raw_total
+op_read
+op_read_float
+op_read_float_stereo
+op_read_stereo
+op_seekable
+op_serialno
+op_set_decode_callback
+op_set_dither_enabled
+op_set_gain_offset
+op_tags
+op_test
+op_test_callbacks
+op_test_file
+op_test_memory
+op_test_open
+op_test_url
+op_url_stream_create
+op_url_stream_vcreate
+op_vopen_url
+op_vtest_url
+opus_granule_sample
+opus_head_parse
+opus_picture_tag_clear
+opus_picture_tag_init
+opus_picture_tag_parse
+opus_server_info_clear
+opus_server_info_init
+opus_tagcompare
+opus_tagncompare
+opus_tags_add
+opus_tags_add_comment
+opus_tags_clear
+opus_tags_copy
+opus_tags_get_album_gain
+opus_tags_get_binary_suffix
+opus_tags_get_track_gain
+opus_tags_init
+opus_tags_parse
+opus_tags_query
+opus_tags_query_count
+opus_tags_set_binary_suffix
diff --git a/Src/external_dependencies/openmpt-trunk/build/premake/def/ext-portaudio-retro.def b/Src/external_dependencies/openmpt-trunk/build/premake/def/ext-portaudio-retro.def
new file mode 100644
index 00000000..16ce0bb4
--- /dev/null
+++ b/Src/external_dependencies/openmpt-trunk/build/premake/def/ext-portaudio-retro.def
@@ -0,0 +1,58 @@
+EXPORTS
+
+;
+Pa_GetVersion @1
+Pa_GetVersionText @2
+Pa_GetErrorText @3
+Pa_Initialize @4
+Pa_Terminate @5
+Pa_GetHostApiCount @6
+Pa_GetDefaultHostApi @7
+Pa_GetHostApiInfo @8
+Pa_HostApiTypeIdToHostApiIndex @9
+Pa_HostApiDeviceIndexToDeviceIndex @10
+Pa_GetLastHostErrorInfo @11
+Pa_GetDeviceCount @12
+Pa_GetDefaultInputDevice @13
+Pa_GetDefaultOutputDevice @14
+Pa_GetDeviceInfo @15
+Pa_IsFormatSupported @16
+Pa_OpenStream @17
+Pa_OpenDefaultStream @18
+Pa_CloseStream @19
+Pa_SetStreamFinishedCallback @20
+Pa_StartStream @21
+Pa_StopStream @22
+Pa_AbortStream @23
+Pa_IsStreamStopped @24
+Pa_IsStreamActive @25
+Pa_GetStreamInfo @26
+Pa_GetStreamTime @27
+Pa_GetStreamCpuLoad @28
+Pa_ReadStream @29
+Pa_WriteStream @30
+Pa_GetStreamReadAvailable @31
+Pa_GetStreamWriteAvailable @32
+Pa_GetSampleSize @33
+Pa_Sleep @34
+;OpenMPT PaAsio_GetAvailableBufferSizes @50
+;OpenMPT PaAsio_ShowControlPanel @51
+PaUtil_InitializeX86PlainConverters @52
+;OpenMPT PaAsio_GetInputChannelName @53
+;OpenMPT PaAsio_GetOutputChannelName @54
+PaUtil_SetDebugPrintFunction @55
+;OpenMPT PaWasapi_GetAudioClient @56
+;OpenMPT PaWasapi_UpdateDeviceList @57
+;OpenMPT PaWasapi_GetDeviceCurrentFormat @58
+;OpenMPT PaWasapi_GetDeviceDefaultFormat @59
+;OpenMPT PaWasapi_GetDeviceMixFormat @60
+;OpenMPT PaWasapi_GetDeviceRole @61
+;OpenMPT PaWasapi_ThreadPriorityBoost @62
+;OpenMPT PaWasapi_ThreadPriorityRevert @63
+;OpenMPT PaWasapi_GetFramesPerHostBuffer @64
+;OpenMPT PaWasapi_GetJackCount @65
+;OpenMPT PaWasapi_GetJackDescription @66
+;OpenMPT PaWasapiWinrt_SetDefaultDeviceId @67
+;OpenMPT PaWasapi_SetStreamStateHandler @68
+;OpenMPT PaWasapiWinrt_PopulateDeviceList @69
+;OpenMPT PaWasapi_GetIMMDevice @70
diff --git a/Src/external_dependencies/openmpt-trunk/build/premake/def/ext-stb_vorbis.def b/Src/external_dependencies/openmpt-trunk/build/premake/def/ext-stb_vorbis.def
new file mode 100644
index 00000000..1e8d30ce
--- /dev/null
+++ b/Src/external_dependencies/openmpt-trunk/build/premake/def/ext-stb_vorbis.def
@@ -0,0 +1,30 @@
+LIBRARY
+EXPORTS
+;cat include/stb_vorbis/stb_vorbis.c | grep '^extern' | grep -E -o 'stb_vorbis_.*\(' | sed 's/ *(//' | sed 's/.* //g' | sed 's/(//g'
+stb_vorbis_get_info
+stb_vorbis_get_comment
+stb_vorbis_get_error
+stb_vorbis_close
+stb_vorbis_get_sample_offset
+stb_vorbis_get_file_offset
+stb_vorbis_open_pushdata
+stb_vorbis_decode_frame_pushdata
+stb_vorbis_flush_pushdata
+;stb_vorbis_decode_filename
+;stb_vorbis_decode_memory
+;stb_vorbis_open_memory
+;stb_vorbis_open_filename
+;stb_vorbis_open_file
+;stb_vorbis_open_file_section
+;stb_vorbis_seek_frame
+;stb_vorbis_seek
+;stb_vorbis_seek_start
+;stb_vorbis_stream_length_in_samples
+;stb_vorbis_stream_length_in_seconds
+;stb_vorbis_get_frame_float
+;stb_vorbis_get_frame_short_interleaved
+;stb_vorbis_get_frame_short
+;stb_vorbis_get_samples_float_interleaved
+;stb_vorbis_get_samples_float
+;stb_vorbis_get_samples_short_interleaved
+;stb_vorbis_get_samples_short
diff --git a/Src/external_dependencies/openmpt-trunk/build/premake/def/ext-vorbis.def b/Src/external_dependencies/openmpt-trunk/build/premake/def/ext-vorbis.def
new file mode 100644
index 00000000..c92051b3
--- /dev/null
+++ b/Src/external_dependencies/openmpt-trunk/build/premake/def/ext-vorbis.def
@@ -0,0 +1,81 @@
+LIBRARY
+EXPORTS
+;include/vorbis $ cat *.h | grep extern | grep -v '^extern "C"' | tr '(' ' ' | sed 's/const /const_/g' | awk '{print $3;}' | sed 's/\*//g' | sort
+ov_bitrate
+ov_bitrate_instant
+ov_clear
+ov_comment
+ov_crosslap
+ov_fopen
+ov_halfrate
+ov_halfrate_p
+ov_info
+ov_open
+ov_open_callbacks
+ov_pcm_seek
+ov_pcm_seek_lap
+ov_pcm_seek_page
+ov_pcm_seek_page_lap
+ov_pcm_tell
+ov_pcm_total
+ov_raw_seek
+ov_raw_seek_lap
+ov_raw_tell
+ov_raw_total
+ov_read
+ov_read_filter
+ov_read_float
+ov_seekable
+ov_serialnumber
+ov_streams
+ov_test
+ov_test_callbacks
+ov_test_open
+ov_time_seek
+ov_time_seek_lap
+ov_time_seek_page
+ov_time_seek_page_lap
+ov_time_tell
+ov_time_total
+vorbis_analysis
+vorbis_analysis_blockout
+vorbis_analysis_buffer
+vorbis_analysis_headerout
+vorbis_analysis_init
+vorbis_analysis_wrote
+vorbis_bitrate_addblock
+vorbis_bitrate_flushpacket
+vorbis_block_clear
+vorbis_block_init
+vorbis_comment_add
+vorbis_comment_add_tag
+vorbis_comment_clear
+vorbis_comment_init
+vorbis_comment_query
+vorbis_comment_query_count
+vorbis_commentheader_out
+vorbis_dsp_clear
+vorbis_encode_ctl
+vorbis_encode_init
+vorbis_encode_init_vbr
+vorbis_encode_setup_init
+vorbis_encode_setup_managed
+vorbis_encode_setup_vbr
+vorbis_granule_time
+vorbis_info_blocksize
+vorbis_info_clear
+vorbis_info_init
+vorbis_packet_blocksize
+vorbis_synthesis
+vorbis_synthesis_blockin
+vorbis_synthesis_halfrate
+vorbis_synthesis_halfrate_p
+vorbis_synthesis_headerin
+vorbis_synthesis_idheader
+vorbis_synthesis_init
+vorbis_synthesis_lapout
+vorbis_synthesis_pcmout
+vorbis_synthesis_read
+vorbis_synthesis_restart
+vorbis_synthesis_trackonly
+vorbis_version_string
diff --git a/Src/external_dependencies/openmpt-trunk/build/premake/ext-UnRAR.lua b/Src/external_dependencies/openmpt-trunk/build/premake/ext-UnRAR.lua
new file mode 100644
index 00000000..18b46623
--- /dev/null
+++ b/Src/external_dependencies/openmpt-trunk/build/premake/ext-UnRAR.lua
@@ -0,0 +1,152 @@
+
+ project "UnRAR"
+ uuid "95CC809B-03FC-4EDB-BB20-FD07A698C05F"
+ language "C++"
+ location ( "../../build/" .. mpt_projectpathname .. "/ext" )
+ mpt_projectname = "unrar"
+ dofile "../../build/premake/premake-defaults-LIBorDLL.lua"
+ dofile "../../build/premake/premake-defaults.lua"
+ targetname "openmpt-unrar"
+ includedirs { "../../include/unrar" }
+ filter {}
+ filter { "action:vs*" }
+ characterset "Unicode"
+ filter {}
+ defines {
+ "NOMINMAX",
+ "NOVOLUME",
+ "UNRAR",
+ "RAR_NOCRYPT",
+ "RARDLL",
+ "SILENT",
+ }
+ files {
+ "../../include/unrar/archive.cpp",
+ "../../include/unrar/arcread.cpp",
+ "../../include/unrar/blake2s.cpp",
+ "../../include/unrar/cmddata.cpp",
+ "../../include/unrar/consio.cpp",
+ "../../include/unrar/crc.cpp",
+ "../../include/unrar/crypt.cpp",
+ "../../include/unrar/dll.cpp",
+ "../../include/unrar/encname.cpp",
+ "../../include/unrar/errhnd.cpp",
+ "../../include/unrar/extinfo.cpp",
+ "../../include/unrar/extract.cpp",
+ "../../include/unrar/filcreat.cpp",
+ "../../include/unrar/file.cpp",
+ "../../include/unrar/filefn.cpp",
+ "../../include/unrar/filestr.cpp",
+ "../../include/unrar/find.cpp",
+ "../../include/unrar/getbits.cpp",
+ "../../include/unrar/global.cpp",
+ "../../include/unrar/hash.cpp",
+ "../../include/unrar/headers.cpp",
+ "../../include/unrar/isnt.cpp",
+ "../../include/unrar/list.cpp",
+ "../../include/unrar/match.cpp",
+ "../../include/unrar/options.cpp",
+ "../../include/unrar/pathfn.cpp",
+ "../../include/unrar/qopen.cpp",
+ "../../include/unrar/rarvm.cpp",
+ "../../include/unrar/rawread.cpp",
+ "../../include/unrar/rdwrfn.cpp",
+ "../../include/unrar/recvol.cpp",
+ "../../include/unrar/rijndael.cpp",
+ "../../include/unrar/rs.cpp",
+ "../../include/unrar/rs16.cpp",
+ "../../include/unrar/scantree.cpp",
+ "../../include/unrar/secpassword.cpp",
+ "../../include/unrar/sha1.cpp",
+ "../../include/unrar/sha256.cpp",
+ "../../include/unrar/smallfn.cpp",
+ "../../include/unrar/strfn.cpp",
+ "../../include/unrar/strlist.cpp",
+ "../../include/unrar/system.cpp",
+ "../../include/unrar/threadpool.cpp",
+ "../../include/unrar/timefn.cpp",
+ "../../include/unrar/ui.cpp",
+ "../../include/unrar/unicode.cpp",
+ "../../include/unrar/unpack.cpp",
+ "../../include/unrar/volume.cpp",
+ }
+ files {
+ "../../include/unrar/archive.hpp",
+ "../../include/unrar/array.hpp",
+ "../../include/unrar/blake2s.hpp",
+ "../../include/unrar/cmddata.hpp",
+ "../../include/unrar/coder.hpp",
+ "../../include/unrar/compress.hpp",
+ "../../include/unrar/consio.hpp",
+ "../../include/unrar/crc.hpp",
+ "../../include/unrar/crypt.hpp",
+ "../../include/unrar/dll.hpp",
+ "../../include/unrar/encname.hpp",
+ "../../include/unrar/errhnd.hpp",
+ "../../include/unrar/extinfo.hpp",
+ "../../include/unrar/extract.hpp",
+ "../../include/unrar/filcreat.hpp",
+ "../../include/unrar/file.hpp",
+ "../../include/unrar/filefn.hpp",
+ "../../include/unrar/filestr.hpp",
+ "../../include/unrar/find.hpp",
+ "../../include/unrar/getbits.hpp",
+ "../../include/unrar/global.hpp",
+ "../../include/unrar/hash.hpp",
+ "../../include/unrar/headers.hpp",
+ "../../include/unrar/headers5.hpp",
+ "../../include/unrar/isnt.hpp",
+ "../../include/unrar/list.hpp",
+ "../../include/unrar/loclang.hpp",
+ "../../include/unrar/log.hpp",
+ "../../include/unrar/match.hpp",
+ "../../include/unrar/model.hpp",
+ "../../include/unrar/options.hpp",
+ "../../include/unrar/os.hpp",
+ "../../include/unrar/pathfn.hpp",
+ "../../include/unrar/qopen.hpp",
+ "../../include/unrar/rar.hpp",
+ "../../include/unrar/rardefs.hpp",
+ "../../include/unrar/rarlang.hpp",
+ "../../include/unrar/raros.hpp",
+ "../../include/unrar/rartypes.hpp",
+ "../../include/unrar/rarvm.hpp",
+ "../../include/unrar/rawint.hpp",
+ "../../include/unrar/rawread.hpp",
+ "../../include/unrar/rdwrfn.hpp",
+ "../../include/unrar/recvol.hpp",
+ "../../include/unrar/resource.hpp",
+ "../../include/unrar/rijndael.hpp",
+ "../../include/unrar/rs.hpp",
+ "../../include/unrar/rs16.hpp",
+ "../../include/unrar/scantree.hpp",
+ "../../include/unrar/secpassword.hpp",
+ "../../include/unrar/sha1.hpp",
+ "../../include/unrar/sha256.hpp",
+ "../../include/unrar/smallfn.hpp",
+ "../../include/unrar/strfn.hpp",
+ "../../include/unrar/strlist.hpp",
+ "../../include/unrar/suballoc.hpp",
+ "../../include/unrar/system.hpp",
+ "../../include/unrar/threadpool.hpp",
+ "../../include/unrar/timefn.hpp",
+ "../../include/unrar/ui.hpp",
+ "../../include/unrar/unicode.hpp",
+ "../../include/unrar/unpack.hpp",
+ "../../include/unrar/version.hpp",
+ "../../include/unrar/volume.hpp",
+ }
+ filter {}
+ filter { "action:vs*" }
+ buildoptions { "/wd4996" }
+ filter {}
+ filter { "action:vs*" }
+ buildoptions {
+ "/wd6031",
+ "/wd6262",
+ "/wd28159",
+ } -- analyze
+ filter {}
+ filter { "kind:SharedLib" }
+ files { "../../include/unrar/dll_nocrypt.def" }
+ filter {}
diff --git a/Src/external_dependencies/openmpt-trunk/build/premake/ext-ancient.lua b/Src/external_dependencies/openmpt-trunk/build/premake/ext-ancient.lua
new file mode 100644
index 00000000..66f073b7
--- /dev/null
+++ b/Src/external_dependencies/openmpt-trunk/build/premake/ext-ancient.lua
@@ -0,0 +1,38 @@
+
+project "ancient"
+ uuid "e1184509-74f7-421d-a8c8-feec2c28ecc2"
+ language "C++"
+ location ( "../../build/" .. mpt_projectpathname .. "/ext" )
+ mpt_projectname = "ancient"
+ dofile "../../build/premake/premake-defaults-LIBorDLL.lua"
+ dofile "../../build/premake/premake-defaults.lua"
+ targetname "openmpt-ancient"
+ includedirs {
+ "../../include/ancient/api",
+ "../../include/ancient/api/ancient",
+ "../../include/ancient/src",
+ }
+ filter {}
+ filter { "action:vs*" }
+ characterset "Unicode"
+ filter {}
+ files {
+ "../../include/ancient/api/ancient/**.hpp",
+ }
+ files {
+ "../../include/ancient/src/**.hpp",
+ "../../include/ancient/src/**.cpp",
+ }
+ filter { "action:vs*" }
+ buildoptions {
+ "/wd4146",
+ "/wd4244",
+ }
+ buildoptions {
+ "/wd4251",
+ "/wd4275",
+ }
+ filter {}
+ filter { "kind:SharedLib" }
+ defines { "ANCIENT_API_DECLSPEC_DLLEXPORT" }
+ filter {}
diff --git a/Src/external_dependencies/openmpt-trunk/build/premake/ext-flac.lua b/Src/external_dependencies/openmpt-trunk/build/premake/ext-flac.lua
new file mode 100644
index 00000000..488df22b
--- /dev/null
+++ b/Src/external_dependencies/openmpt-trunk/build/premake/ext-flac.lua
@@ -0,0 +1,128 @@
+
+ project "flac"
+ uuid "E599F5AA-F9A3-46CC-8DB0-C8DEFCEB90C5"
+ language "C"
+ location ( "../../build/" .. mpt_projectpathname .. "/ext" )
+ mpt_projectname = "flac"
+ dofile "../../build/premake/premake-defaults-LIBorDLL.lua"
+ dofile "../../build/premake/premake-defaults.lua"
+ targetname "openmpt-flac"
+ local extincludedirs = {
+ "../../include/ogg/include",
+ }
+ filter { "action:vs*" }
+ includedirs ( extincludedirs )
+ filter { "not action:vs*" }
+ sysincludedirs ( extincludedirs )
+ filter {}
+ includedirs {
+ "../../include/flac/include",
+ "../../include/flac/src/libFLAC/include",
+ }
+ filter {}
+ filter { "action:vs*" }
+ characterset "Unicode"
+ filter {}
+ files {
+ "../../include/flac/src/libFLAC/bitmath.c",
+ "../../include/flac/src/libFLAC/bitreader.c",
+ "../../include/flac/src/libFLAC/bitwriter.c",
+ "../../include/flac/src/libFLAC/cpu.c",
+ "../../include/flac/src/libFLAC/crc.c",
+ "../../include/flac/src/libFLAC/fixed.c",
+ "../../include/flac/src/libFLAC/fixed_intrin_sse2.c",
+ "../../include/flac/src/libFLAC/fixed_intrin_ssse3.c",
+ "../../include/flac/src/libFLAC/float.c",
+ "../../include/flac/src/libFLAC/format.c",
+ "../../include/flac/src/libFLAC/lpc.c",
+ "../../include/flac/src/libFLAC/lpc_intrin_avx2.c",
+ "../../include/flac/src/libFLAC/lpc_intrin_sse2.c",
+ "../../include/flac/src/libFLAC/lpc_intrin_sse41.c",
+ "../../include/flac/src/libFLAC/lpc_intrin_sse.c",
+ "../../include/flac/src/libFLAC/md5.c",
+ "../../include/flac/src/libFLAC/memory.c",
+ "../../include/flac/src/libFLAC/metadata_iterators.c",
+ "../../include/flac/src/libFLAC/metadata_object.c",
+ "../../include/flac/src/libFLAC/ogg_decoder_aspect.c",
+ "../../include/flac/src/libFLAC/ogg_encoder_aspect.c",
+ "../../include/flac/src/libFLAC/ogg_helper.c",
+ "../../include/flac/src/libFLAC/ogg_mapping.c",
+ "../../include/flac/src/libFLAC/stream_decoder.c",
+ "../../include/flac/src/libFLAC/stream_encoder.c",
+ "../../include/flac/src/libFLAC/stream_encoder_intrin_avx2.c",
+ "../../include/flac/src/libFLAC/stream_encoder_intrin_sse2.c",
+ "../../include/flac/src/libFLAC/stream_encoder_intrin_ssse3.c",
+ "../../include/flac/src/libFLAC/stream_encoder_framing.c",
+ "../../include/flac/src/libFLAC/window.c",
+ "../../include/flac/src/libFLAC/windows_unicode_filenames.c",
+ }
+ files {
+ "../../include/flac/src/libFLAC/include/private/all.h",
+ "../../include/flac/src/libFLAC/include/private/bitmath.h",
+ "../../include/flac/src/libFLAC/include/private/bitreader.h",
+ "../../include/flac/src/libFLAC/include/private/bitwriter.h",
+ "../../include/flac/src/libFLAC/include/private/cpu.h",
+ "../../include/flac/src/libFLAC/include/private/crc.h",
+ "../../include/flac/src/libFLAC/include/private/fixed.h",
+ "../../include/flac/src/libFLAC/include/private/float.h",
+ "../../include/flac/src/libFLAC/include/private/format.h",
+ "../../include/flac/src/libFLAC/include/private/lpc.h",
+ "../../include/flac/src/libFLAC/include/private/md5.h",
+ "../../include/flac/src/libFLAC/include/private/memory.h",
+ "../../include/flac/src/libFLAC/include/private/metadata.h",
+ "../../include/flac/src/libFLAC/include/private/ogg_decoder_aspect.h",
+ "../../include/flac/src/libFLAC/include/private/ogg_encoder_aspect.h",
+ "../../include/flac/src/libFLAC/include/private/ogg_helper.h",
+ "../../include/flac/src/libFLAC/include/private/ogg_mapping.h",
+ "../../include/flac/src/libFLAC/include/private/stream_encoder.h",
+ "../../include/flac/src/libFLAC/include/private/stream_encoder_framing.h",
+ "../../include/flac/src/libFLAC/include/private/window.h",
+ "../../include/flac/src/libFLAC/include/protected/all.h",
+ "../../include/flac/src/libFLAC/include/protected/stream_decoder.h",
+ "../../include/flac/src/libFLAC/include/protected/stream_encoder.h",
+ }
+ filter { "action:vs*" }
+ files {
+ "../../include/flac/src/share/win_utf8_io/win_utf8_io.c",
+ }
+ filter {}
+ files {
+ "../../include/flac/include/FLAC/all.h",
+ "../../include/flac/include/FLAC/assert.h",
+ "../../include/flac/include/FLAC/callback.h",
+ "../../include/flac/include/FLAC/export.h",
+ "../../include/flac/include/FLAC/format.h",
+ "../../include/flac/include/FLAC/metadata.h",
+ "../../include/flac/include/FLAC/ordinals.h",
+ "../../include/flac/include/FLAC/stream_decoder.h",
+ "../../include/flac/include/FLAC/stream_encoder.h",
+ }
+ files {
+ "../../include/flac/include/share/alloc.h",
+ "../../include/flac/include/share/compat.h",
+ "../../include/flac/include/share/endswap.h",
+ "../../include/flac/include/share/macros.h",
+ "../../include/flac/include/share/private.h",
+ "../../include/flac/include/share/safe_str.h",
+ }
+ filter { "action:vs*" }
+ files {
+ "../../include/flac/include/share/win_utf8_io.h",
+ "../../include/flac/include/share/windows_unicode_filenames.h",
+ }
+ filter {}
+ filter { "action:vs*" }
+ buildoptions { "/wd4101", "/wd4244", "/wd4267", "/wd4334" }
+ filter {}
+ filter { "action:vs*" }
+ buildoptions { "/wd6001", "/wd6011", "/wd6031", "/wd6297", "/wd28182" } -- /analyze
+ filter {}
+ defines { "FLAC__HAS_OGG=1" }
+ links { "ogg" }
+ defines { "PACKAGE_VERSION=\"1.3.4\"" }
+ filter {}
+ filter { "kind:StaticLib" }
+ defines { "FLAC__NO_DLL" }
+ filter { "kind:SharedLib" }
+ defines { "FLAC_API_EXPORTS" }
+ filter {}
diff --git a/Src/external_dependencies/openmpt-trunk/build/premake/ext-lame.lua b/Src/external_dependencies/openmpt-trunk/build/premake/ext-lame.lua
new file mode 100644
index 00000000..994e998d
--- /dev/null
+++ b/Src/external_dependencies/openmpt-trunk/build/premake/ext-lame.lua
@@ -0,0 +1,66 @@
+
+ project "lame"
+ uuid "b545694a-ce2a-44f8-ba88-147c36369308"
+ language "C"
+ location ( "../../build/" .. mpt_projectpathname .. "/ext" )
+ mpt_projectname = "lame"
+ dofile "../../build/premake/premake-defaults-DLL.lua"
+ dofile "../../build/premake/premake-defaults.lua"
+ targetname "openmpt-lame"
+ includedirs { "../../include/lame/include" }
+ includedirs { "../../include/lame/mpglib" }
+ includedirs { "../../include/lame/libmp3lame" }
+ includedirs { "../../build/premake/inc/lame" }
+ filter {}
+ filter { "action:vs*" }
+ characterset "Unicode"
+ filter {}
+ files {
+ "../../include/lame/include/lame.def",
+ }
+ files {
+ "../../include/lame/include/lame.h",
+ }
+ files {
+ "../../include/lame/mpglib/common.c",
+ "../../include/lame/mpglib/dct64_i386.c",
+ "../../include/lame/mpglib/decode_i386.c",
+ "../../include/lame/mpglib/interface.c",
+ "../../include/lame/mpglib/layer1.c",
+ "../../include/lame/mpglib/layer2.c",
+ "../../include/lame/mpglib/layer3.c",
+ "../../include/lame/mpglib/tabinit.c",
+ }
+ files {
+ "../../include/lame/libmp3lame/bitstream.c",
+ "../../include/lame/libmp3lame/encoder.c",
+ "../../include/lame/libmp3lame/fft.c",
+ "../../include/lame/libmp3lame/gain_analysis.c",
+ "../../include/lame/libmp3lame/id3tag.c",
+ "../../include/lame/libmp3lame/lame.c",
+ "../../include/lame/libmp3lame/mpglib_interface.c",
+ "../../include/lame/libmp3lame/newmdct.c",
+ "../../include/lame/libmp3lame/presets.c",
+ "../../include/lame/libmp3lame/psymodel.c",
+ "../../include/lame/libmp3lame/quantize.c",
+ "../../include/lame/libmp3lame/quantize_pvt.c",
+ "../../include/lame/libmp3lame/reservoir.c",
+ "../../include/lame/libmp3lame/set_get.c",
+ "../../include/lame/libmp3lame/tables.c",
+ "../../include/lame/libmp3lame/takehiro.c",
+ "../../include/lame/libmp3lame/util.c",
+ "../../include/lame/libmp3lame/vbrquantize.c",
+ "../../include/lame/libmp3lame/VbrTag.c",
+ "../../include/lame/libmp3lame/version.c",
+ }
+ files {
+ "../../include/lame/libmp3lame/vector/xmm_quantize_sub.c",
+ }
+ defines { "HAVE_CONFIG_H", "HAVE_MPGLIB", "USE_LAYER_2" }
+ filter {}
+ filter { "action:vs*" }
+ buildoptions { "/wd4267", "/wd4334" }
+ filter {}
+ filter { "action:vs*" }
+ buildoptions { "/wd6031", "/wd6262" } -- analyze
+ filter {}
diff --git a/Src/external_dependencies/openmpt-trunk/build/premake/ext-lhasa.lua b/Src/external_dependencies/openmpt-trunk/build/premake/ext-lhasa.lua
new file mode 100644
index 00000000..9d8de2cd
--- /dev/null
+++ b/Src/external_dependencies/openmpt-trunk/build/premake/ext-lhasa.lua
@@ -0,0 +1,57 @@
+
+ project "lhasa"
+ uuid "6B11F6A8-B131-4D2B-80EF-5731A9016436"
+ language "C"
+ location ( "../../build/" .. mpt_projectpathname .. "/ext" )
+ mpt_projectname = "lhasa"
+ dofile "../../build/premake/premake-defaults-LIBorDLL.lua"
+ dofile "../../build/premake/premake-defaults.lua"
+ targetname "openmpt-lhasa"
+ filter { "action:vs*" }
+ characterset "Unicode"
+ filter {}
+ files {
+ "../../include/lhasa/lib/crc16.c",
+ "../../include/lhasa/lib/ext_header.c",
+ "../../include/lhasa/lib/lh1_decoder.c",
+ "../../include/lhasa/lib/lh5_decoder.c",
+ "../../include/lhasa/lib/lh6_decoder.c",
+ "../../include/lhasa/lib/lh7_decoder.c",
+ "../../include/lhasa/lib/lha_arch_unix.c",
+ "../../include/lhasa/lib/lha_arch_win32.c",
+ "../../include/lhasa/lib/lha_basic_reader.c",
+ "../../include/lhasa/lib/lha_decoder.c",
+ "../../include/lhasa/lib/lha_endian.c",
+ "../../include/lhasa/lib/lha_file_header.c",
+ "../../include/lhasa/lib/lha_input_stream.c",
+ "../../include/lhasa/lib/lha_reader.c",
+ "../../include/lhasa/lib/lhx_decoder.c",
+ "../../include/lhasa/lib/lz5_decoder.c",
+ "../../include/lhasa/lib/lzs_decoder.c",
+ "../../include/lhasa/lib/macbinary.c",
+ "../../include/lhasa/lib/null_decoder.c",
+ "../../include/lhasa/lib/pm1_decoder.c",
+ "../../include/lhasa/lib/pm2_decoder.c",
+ }
+ files {
+ "../../include/lhasa/lib/crc16.h",
+ "../../include/lhasa/lib/ext_header.h",
+ "../../include/lhasa/lib/lha_arch.h",
+ "../../include/lhasa/lib/lha_basic_reader.h",
+ "../../include/lhasa/lib/lha_decoder.h",
+ "../../include/lhasa/lib/lha_endian.h",
+ "../../include/lhasa/lib/lha_file_header.h",
+ "../../include/lhasa/lib/lha_input_stream.h",
+ "../../include/lhasa/lib/macbinary.h",
+ "../../include/lhasa/lib/public/lha_decoder.h",
+ "../../include/lhasa/lib/public/lha_file_header.h",
+ "../../include/lhasa/lib/public/lha_input_stream.h",
+ "../../include/lhasa/lib/public/lha_reader.h",
+ "../../include/lhasa/lib/public/lhasa.h",
+ }
+ filter { "action:vs*" }
+ buildoptions { "/wd4244", "/wd4267" }
+ filter {}
+ filter { "kind:SharedLib" }
+ files { "../../build/premake/def/ext-lhasa.def" }
+ filter {}
diff --git a/Src/external_dependencies/openmpt-trunk/build/premake/ext-minimp3.lua b/Src/external_dependencies/openmpt-trunk/build/premake/ext-minimp3.lua
new file mode 100644
index 00000000..2194edaf
--- /dev/null
+++ b/Src/external_dependencies/openmpt-trunk/build/premake/ext-minimp3.lua
@@ -0,0 +1,22 @@
+
+ project "minimp3"
+ uuid "e88c4285-efb1-4226-bcac-e904ba792a48"
+ language "C"
+ location ( "../../build/" .. mpt_projectpathname .. "/ext" )
+ mpt_projectname = "minimp3"
+ dofile "../../build/premake/premake-defaults-LIBorDLL.lua"
+ dofile "../../build/premake/premake-defaults.lua"
+ targetname "openmpt-minimp3"
+ includedirs { }
+ filter {}
+ filter { "action:vs*" }
+ characterset "Unicode"
+ filter {}
+ defines { }
+ files {
+ "../../include/minimp3/minimp3.c",
+ "../../include/minimp3/minimp3.h",
+ }
+ filter { "action:vs*", "kind:SharedLib" }
+ files { "../../build/premake/def/ext-minimp3.def" }
+ filter {}
diff --git a/Src/external_dependencies/openmpt-trunk/build/premake/ext-miniz.lua b/Src/external_dependencies/openmpt-trunk/build/premake/ext-miniz.lua
new file mode 100644
index 00000000..f2de38cd
--- /dev/null
+++ b/Src/external_dependencies/openmpt-trunk/build/premake/ext-miniz.lua
@@ -0,0 +1,24 @@
+
+ project "miniz"
+ uuid "B5E0C06B-8121-426A-8FFB-4293ECAAE29C"
+ language "C"
+ location ( "../../build/" .. mpt_projectpathname .. "/ext" )
+ mpt_projectname = "miniz"
+ dofile "../../build/premake/premake-defaults-LIBorDLL.lua"
+ dofile "../../build/premake/premake-defaults.lua"
+ targetname "openmpt-miniz"
+ filter {}
+ filter { "action:vs*" }
+ characterset "Unicode"
+ filter {}
+ files {
+ "../../include/miniz/miniz.c",
+ "../../include/miniz/miniz.h",
+ }
+ filter { "action:vs*" }
+ buildoptions { "/wd4244" }
+ filter {}
+
+ filter { "kind:SharedLib" }
+ defines { "MINIZ_EXPORT=__declspec(dllexport)" }
+ filter {}
diff --git a/Src/external_dependencies/openmpt-trunk/build/premake/ext-minizip.lua b/Src/external_dependencies/openmpt-trunk/build/premake/ext-minizip.lua
new file mode 100644
index 00000000..c20d5099
--- /dev/null
+++ b/Src/external_dependencies/openmpt-trunk/build/premake/ext-minizip.lua
@@ -0,0 +1,53 @@
+
+ project "minizip"
+ uuid "63AF9025-A6CE-4147-A05D-6E2CCFD3A0D7"
+ language "C"
+ location ( "../../build/" .. mpt_projectpathname .. "/ext" )
+ mpt_projectname = "minizip"
+ dofile "../../build/premake/premake-defaults-LIBorDLL.lua"
+ dofile "../../build/premake/premake-defaults.lua"
+ targetname "openmpt-minizip"
+ local extincludedirs = {
+ "../../include/zlib",
+ }
+ filter { "action:vs*" }
+ includedirs ( extincludedirs )
+ filter { "not action:vs*" }
+ sysincludedirs ( extincludedirs )
+ filter {}
+ includedirs {
+ "../../include/zlib/contrib/minizip"
+ }
+ filter {}
+ filter { "action:vs*" }
+ characterset "Unicode"
+ filter {}
+ files {
+ "../../include/zlib/contrib/minizip/ioapi.c",
+ "../../include/zlib/contrib/minizip/iowin32.c",
+ "../../include/zlib/contrib/minizip/mztools.c",
+ "../../include/zlib/contrib/minizip/unzip.c",
+ "../../include/zlib/contrib/minizip/zip.c",
+ }
+ files {
+ "../../include/zlib/contrib/minizip/crypt.h",
+ "../../include/zlib/contrib/minizip/ioapi.h",
+ "../../include/zlib/contrib/minizip/iowin32.h",
+ "../../include/zlib/contrib/minizip/mztools.h",
+ "../../include/zlib/contrib/minizip/unzip.h",
+ "../../include/zlib/contrib/minizip/zip.h",
+ }
+ links {
+ "zlib"
+ }
+ filter {}
+ filter { "kind:StaticLib" }
+ filter { "kind:SharedLib" }
+ defines { "ZLIB_DLL" }
+ filter {}
+ filter { "kind:SharedLib" }
+ files { "../../build/premake/def/ext-minizip.def" }
+ filter {}
+ filter { "action:vs*" }
+ buildoptions { "/wd6262" } -- analyze
+ filter {}
diff --git a/Src/external_dependencies/openmpt-trunk/build/premake/ext-mpg123.lua b/Src/external_dependencies/openmpt-trunk/build/premake/ext-mpg123.lua
new file mode 100644
index 00000000..bea464dd
--- /dev/null
+++ b/Src/external_dependencies/openmpt-trunk/build/premake/ext-mpg123.lua
@@ -0,0 +1,63 @@
+
+ project "mpg123"
+ uuid "7adfafb9-0a83-4d35-9891-fb24fdf30b53"
+ language "C"
+ location ( "../../build/" .. mpt_projectpathname .. "/ext" )
+ mpt_projectname = "mpg123"
+ dofile "../../build/premake/premake-defaults-DLL.lua"
+ dofile "../../build/premake/premake-defaults.lua"
+ targetname "openmpt-mpg123"
+ includedirs {
+ "../../include/mpg123/ports/MSVC++",
+ "../../include/mpg123/src/libmpg123",
+ "../../include/mpg123/src/compat",
+ "../../include/mpg123/src",
+ }
+ filter {}
+ filter { "action:vs*" }
+ characterset "Unicode"
+ filter {}
+ files {
+ "../../include/mpg123/src/compat/compat.c",
+ "../../include/mpg123/src/compat/compat_str.c",
+ }
+ files {
+ --"../../include/mpg123/src/libmpg123/calctables.c",
+ "../../include/mpg123/src/libmpg123/dct64.c",
+ --"../../include/mpg123/src/libmpg123/dither.c",
+ "../../include/mpg123/src/libmpg123/equalizer.c",
+ "../../include/mpg123/src/libmpg123/feature.c",
+ "../../include/mpg123/src/libmpg123/format.c",
+ "../../include/mpg123/src/libmpg123/frame.c",
+ "../../include/mpg123/src/libmpg123/icy.c",
+ "../../include/mpg123/src/libmpg123/icy2utf8.c",
+ "../../include/mpg123/src/libmpg123/id3.c",
+ "../../include/mpg123/src/libmpg123/index.c",
+ "../../include/mpg123/src/libmpg123/layer1.c",
+ "../../include/mpg123/src/libmpg123/layer2.c",
+ "../../include/mpg123/src/libmpg123/layer3.c",
+ --"../../include/mpg123/src/libmpg123/lfs_alias.c",
+ --"../../include/mpg123/src/libmpg123/lfs_wrap.c",
+ "../../include/mpg123/src/libmpg123/libmpg123.c",
+ "../../include/mpg123/src/libmpg123/ntom.c",
+ "../../include/mpg123/src/libmpg123/optimize.c",
+ "../../include/mpg123/src/libmpg123/parse.c",
+ "../../include/mpg123/src/libmpg123/readers.c",
+ "../../include/mpg123/src/libmpg123/stringbuf.c",
+ "../../include/mpg123/src/libmpg123/synth.c",
+ "../../include/mpg123/src/libmpg123/synth_8bit.c",
+ "../../include/mpg123/src/libmpg123/synth_real.c",
+ "../../include/mpg123/src/libmpg123/synth_s32.c",
+ "../../include/mpg123/src/libmpg123/tabinit.c",
+ }
+ defines { "DYNAMIC_BUILD", "OPT_GENERIC" }
+ links {
+ "shlwapi",
+ }
+ filter {}
+ filter { "action:vs*" }
+ buildoptions { "/wd4018", "/wd4244", "/wd4267", "/wd4305", "/wd4334" }
+ filter {}
+ filter { "action:vs*" }
+ buildoptions { "/wd6011", "/wd6285", "/wd6297", "/wd6305", "/wd6385", "/wd6386" } -- /analyze
+ filter {}
diff --git a/Src/external_dependencies/openmpt-trunk/build/premake/ext-ogg.lua b/Src/external_dependencies/openmpt-trunk/build/premake/ext-ogg.lua
new file mode 100644
index 00000000..c605f1b8
--- /dev/null
+++ b/Src/external_dependencies/openmpt-trunk/build/premake/ext-ogg.lua
@@ -0,0 +1,27 @@
+
+ project "ogg"
+ uuid "d8d5e11c-f959-49ef-b741-b3f6de52ded8"
+ language "C"
+ location ( "../../build/" .. mpt_projectpathname .. "/ext" )
+ mpt_projectname = "ogg"
+ dofile "../../build/premake/premake-defaults-LIBorDLL.lua"
+ dofile "../../build/premake/premake-defaults.lua"
+ targetname "openmpt-ogg"
+ includedirs { "../../include/ogg/include" }
+ filter {}
+ filter { "action:vs*" }
+ characterset "Unicode"
+ filter {}
+ files {
+ "../../include/ogg/include/ogg/ogg.h",
+ "../../include/ogg/include/ogg/os_types.h",
+ "../../include/ogg/src/bitwise.c",
+ "../../include/ogg/src/framing.c",
+ "../../include/ogg/src/crctable.h",
+ }
+ filter { "kind:SharedLib" }
+ files { "../../include/ogg/win32/ogg.def" }
+ filter {}
+ filter { "action:vs*" }
+ buildoptions { "/wd6001", "/wd6011" } -- /analyze
+ filter {}
diff --git a/Src/external_dependencies/openmpt-trunk/build/premake/ext-opus.lua b/Src/external_dependencies/openmpt-trunk/build/premake/ext-opus.lua
new file mode 100644
index 00000000..a9f5719b
--- /dev/null
+++ b/Src/external_dependencies/openmpt-trunk/build/premake/ext-opus.lua
@@ -0,0 +1,76 @@
+
+ project "opus"
+ uuid "9a2d9099-e1a2-4287-b845-e3598ad24d70"
+ language "C"
+ location ( "../../build/" .. mpt_projectpathname .. "/ext" )
+ mpt_projectname = "opus"
+ dofile "../../build/premake/premake-defaults-LIBorDLL.lua"
+ dofile "../../build/premake/premake-defaults.lua"
+ targetname "openmpt-opus"
+ local extincludedirs = {
+ "../../include/ogg/include",
+ }
+ filter { "action:vs*" }
+ includedirs ( extincludedirs )
+ filter { "not action:vs*" }
+ sysincludedirs ( extincludedirs )
+ filter {}
+ includedirs {
+ "../../include/opus/include",
+ "../../include/opus/celt",
+ "../../include/opus/silk",
+ "../../include/opus/silk/float",
+ "../../include/opus/src",
+ "../../include/opus/win32",
+ "../../include/opus",
+ }
+ filter {}
+ filter { "action:vs*" }
+ characterset "Unicode"
+ filter {}
+ files {
+ "../../include/opus/include/opus.h",
+ "../../include/opus/include/opus_custom.h",
+ "../../include/opus/include/opus_defines.h",
+ "../../include/opus/include/opus_multistream.h",
+ "../../include/opus/include/opus_projection.h",
+ "../../include/opus/include/opus_types.h",
+ }
+ files {
+ "../../include/opus/celt/*.c",
+ "../../include/opus/celt/*.h",
+ "../../include/opus/silk/*.c",
+ "../../include/opus/silk/*.h",
+ "../../include/opus/silk/float/*.c",
+ "../../include/opus/silk/float/*.h",
+ "../../include/opus/src/*.c",
+ "../../include/opus/src/*.h",
+ }
+ filter { "architecture:x86 or x86_64" }
+ files {
+ "../../include/opus/celt/x86/*.c",
+ "../../include/opus/celt/x86/*.h",
+ "../../include/opus/silk/x86/*.c",
+ "../../include/opus/silk/x86/*.h",
+ }
+ filter {}
+ excludes {
+ "../../include/opus/celt/opus_custom_demo.c",
+ "../../include/opus/src/opus_compare.c",
+ "../../include/opus/src/opus_demo.c",
+ "../../include/opus/src/repacketizer_demo.c",
+ }
+ defines { "HAVE_CONFIG_H" }
+ links { }
+ filter { "action:vs*" }
+ buildoptions { "/wd4244", "/wd4334" }
+ filter {}
+ filter { "action:vs*" }
+ buildoptions { "/wd6255", "/wd6297" } -- analyze
+ filter {}
+ filter { "kind:SharedLib" }
+ defines { "DLL_EXPORT" }
+ filter {}
+ if _OPTIONS["clang"] then
+ defines { "FLOAT_APPROX" }
+ end
diff --git a/Src/external_dependencies/openmpt-trunk/build/premake/ext-opusenc.lua b/Src/external_dependencies/openmpt-trunk/build/premake/ext-opusenc.lua
new file mode 100644
index 00000000..4808243b
--- /dev/null
+++ b/Src/external_dependencies/openmpt-trunk/build/premake/ext-opusenc.lua
@@ -0,0 +1,60 @@
+
+ project "opusenc"
+ uuid "290bbf89-2572-4291-9d9c-ff021d4fd313"
+ language "C"
+ location ( "../../build/" .. mpt_projectpathname .. "/ext" )
+ mpt_projectname = "opusenc"
+ dofile "../../build/premake/premake-defaults-LIBorDLL.lua"
+ dofile "../../build/premake/premake-defaults.lua"
+ targetname "openmpt-opusenc"
+ local extincludedirs = {
+ "../../include/ogg/include",
+ "../../include/opus/include",
+ }
+ filter { "action:vs*" }
+ includedirs ( extincludedirs )
+ filter { "not action:vs*" }
+ sysincludedirs ( extincludedirs )
+ filter {}
+ includedirs {
+ "../../include/opusenc/include",
+ "../../include/opusenc/win32",
+ }
+ filter {}
+ filter { "action:vs*" }
+ characterset "Unicode"
+ filter {}
+ files {
+ "../../include/opusenc/include/opusenc.h",
+ }
+ files {
+ "../../include/opusenc/src/*.c",
+ "../../include/opusenc/src/*.h",
+ "../../include/opusenc/win32/*.c",
+ "../../include/opusenc/win32/*.h",
+ }
+ defines { "HAVE_CONFIG_H" }
+ defines { "OUTSIDE_SPEEX", "RANDOM_PREFIX=libopusenc" }
+ links { "ogg", "opus" }
+ filter { "action:vs*" }
+ buildoptions {
+ "/wd4018",
+ "/wd4100",
+ "/wd4101",
+ "/wd4127",
+ "/wd4244",
+ "/wd4267",
+ "/wd4456",
+ "/wd4706",
+ }
+ filter {}
+ filter { "action:vs*" }
+ buildoptions {
+ "/wd6262",
+ } -- analyze
+ filter {}
+ filter { "kind:StaticLib" }
+ defines { }
+ filter { "kind:SharedLib" }
+ defines { "DLL_EXPORT" }
+ filter {}
diff --git a/Src/external_dependencies/openmpt-trunk/build/premake/ext-opusfile.lua b/Src/external_dependencies/openmpt-trunk/build/premake/ext-opusfile.lua
new file mode 100644
index 00000000..1b4e5150
--- /dev/null
+++ b/Src/external_dependencies/openmpt-trunk/build/premake/ext-opusfile.lua
@@ -0,0 +1,39 @@
+
+ project "opusfile"
+ uuid "f8517509-9317-4a46-b5ed-06ae5a399e6c"
+ language "C"
+ location ( "../../build/" .. mpt_projectpathname .. "/ext" )
+ mpt_projectname = "opusfile"
+ dofile "../../build/premake/premake-defaults-LIBorDLL.lua"
+ dofile "../../build/premake/premake-defaults.lua"
+ targetname "openmpt-opusfile"
+ local extincludedirs = {
+ "../../include/ogg/include",
+ "../../include/opus/include",
+ }
+ filter { "action:vs*" }
+ includedirs ( extincludedirs )
+ filter { "not action:vs*" }
+ sysincludedirs ( extincludedirs )
+ filter {}
+ includedirs {
+ "../../include/opusfile/include",
+ }
+ filter {}
+ filter { "action:vs*" }
+ characterset "Unicode"
+ filter {}
+ files {
+ "../../include/opusfile/include/opusfile.h",
+ }
+ files {
+ "../../include/opusfile/src/*.c",
+ "../../include/opusfile/src/*.h",
+ }
+ links { "ogg", "opus" }
+ filter { "action:vs*" }
+ buildoptions { "/wd4267" }
+ filter {}
+ filter { "kind:SharedLib" }
+ files { "../../build/premake/def/ext-opusfile.def" }
+ filter {}
diff --git a/Src/external_dependencies/openmpt-trunk/build/premake/ext-portaudio.lua b/Src/external_dependencies/openmpt-trunk/build/premake/ext-portaudio.lua
new file mode 100644
index 00000000..2dd177e4
--- /dev/null
+++ b/Src/external_dependencies/openmpt-trunk/build/premake/ext-portaudio.lua
@@ -0,0 +1,134 @@
+
+ project "portaudio"
+ uuid "189B867F-FF4B-45A1-B741-A97492EE69AF"
+ language "C"
+ location ( "../../build/" .. mpt_projectpathname .. "/ext" )
+ mpt_projectname = "portaudio"
+ dofile "../../build/premake/premake-defaults-LIBorDLL.lua"
+ dofile "../../build/premake/premake-defaults.lua"
+ targetname "openmpt-portaudio"
+ includedirs { "../../include/portaudio/include", "../../include/portaudio/src/common", "../../include/portaudio/src/os/win" }
+ filter {}
+ filter { "action:vs*" }
+ characterset "Unicode"
+ filter {}
+ if _OPTIONS["winxp"] then
+ defines {
+ "PA_USE_ASIO=0",
+ "PA_USE_DS=1",
+ "PA_USE_WMME=1",
+ "PA_USE_WASAPI=1",
+ "PA_USE_WDMKS=0",
+ }
+ elseif _OPTIONS["uwp"] then
+ defines {
+ "PA_USE_ASIO=0",
+ "PA_USE_DS=0",
+ "PA_USE_WMME=0",
+ "PA_USE_WASAPI=1",
+ "PA_USE_WDMKS=0",
+ }
+ else
+ defines {
+ "PAWIN_USE_WDMKS_DEVICE_INFO",
+ "PA_WDMKS_NO_KSGUID_LIB",
+ "PA_USE_ASIO=0",
+ "PA_USE_DS=0",
+ "PA_USE_WMME=1",
+ "PA_USE_WASAPI=1",
+ "PA_USE_WDMKS=1",
+ }
+ end
+ filter {}
+ files {
+ "../../include/portaudio/src/common/pa_allocation.c",
+ "../../include/portaudio/src/common/pa_allocation.h",
+ "../../include/portaudio/src/common/pa_converters.c",
+ "../../include/portaudio/src/common/pa_converters.h",
+ "../../include/portaudio/src/common/pa_cpuload.c",
+ "../../include/portaudio/src/common/pa_cpuload.h",
+ "../../include/portaudio/src/common/pa_debugprint.c",
+ "../../include/portaudio/src/common/pa_debugprint.h",
+ "../../include/portaudio/src/common/pa_dither.c",
+ "../../include/portaudio/src/common/pa_dither.h",
+ "../../include/portaudio/src/common/pa_endianness.h",
+ "../../include/portaudio/src/common/pa_front.c",
+ "../../include/portaudio/src/common/pa_gitrevision.h",
+ "../../include/portaudio/src/common/pa_hostapi.h",
+ "../../include/portaudio/src/common/pa_memorybarrier.h",
+ "../../include/portaudio/src/common/pa_process.c",
+ "../../include/portaudio/src/common/pa_process.h",
+ "../../include/portaudio/src/common/pa_ringbuffer.c",
+ "../../include/portaudio/src/common/pa_ringbuffer.h",
+ "../../include/portaudio/src/common/pa_stream.c",
+ "../../include/portaudio/src/common/pa_stream.h",
+ "../../include/portaudio/src/common/pa_trace.c",
+ "../../include/portaudio/src/common/pa_trace.h",
+ "../../include/portaudio/src/common/pa_types.h",
+ "../../include/portaudio/src/common/pa_util.h",
+ "../../include/portaudio/src/hostapi/skeleton/pa_hostapi_skeleton.c",
+ "../../include/portaudio/src/os/win/pa_win_coinitialize.c",
+ "../../include/portaudio/src/os/win/pa_win_coinitialize.h",
+ "../../include/portaudio/src/os/win/pa_win_hostapis.c",
+ "../../include/portaudio/src/os/win/pa_win_util.c",
+ "../../include/portaudio/src/os/win/pa_win_waveformat.c",
+ "../../include/portaudio/src/os/win/pa_x86_plain_converters.c",
+ "../../include/portaudio/src/os/win/pa_x86_plain_converters.h",
+ }
+ filter {}
+ if _OPTIONS["winxp"] then
+ files {
+ "../../include/portaudio/src/hostapi/wmme/pa_win_wmme.c",
+ "../../include/portaudio/src/hostapi/dsound/pa_win_ds.c",
+ "../../include/portaudio/src/hostapi/dsound/pa_win_ds_dynlink.c",
+ "../../include/portaudio/src/hostapi/dsound/pa_win_ds_dynlink.h",
+ "../../include/portaudio/src/hostapi/wasapi/pa_win_wasapi.c",
+ }
+ elseif _OPTIONS["uwp"] then
+ files {
+ "../../include/portaudio/src/hostapi/wasapi/pa_win_wasapi.c",
+ }
+ else
+ files {
+ "../../include/portaudio/src/hostapi/wmme/pa_win_wmme.c",
+ "../../include/portaudio/src/hostapi/wasapi/pa_win_wasapi.c",
+ "../../include/portaudio/src/hostapi/wdmks/pa_win_wdmks.c",
+ "../../include/portaudio/src/os/win/pa_win_wdmks_utils.c",
+ "../../include/portaudio/src/os/win/pa_win_wdmks_utils.h",
+ }
+ end
+ filter {}
+ files {
+ "../../include/portaudio/include/pa_asio.h",
+ "../../include/portaudio/include/pa_jack.h",
+ "../../include/portaudio/include/pa_linux_alsa.h",
+ "../../include/portaudio/include/pa_mac_core.h",
+ "../../include/portaudio/include/pa_win_ds.h",
+ "../../include/portaudio/include/pa_win_wasapi.h",
+ "../../include/portaudio/include/pa_win_waveformat.h",
+ "../../include/portaudio/include/pa_win_wdmks.h",
+ "../../include/portaudio/include/pa_win_wmme.h",
+ "../../include/portaudio/include/portaudio.h",
+ }
+ filter { "action:vs*" }
+ buildoptions { "/wd4018", "/wd4091", "/wd4267", "/wd4312" }
+ filter {}
+ filter { "action:vs*" }
+ buildoptions { "/wd6001", "/wd6011", "/wd6053", "/wd6216", "/wd6217", "/wd6255", "/wd6258", "/wd6385", "/wd6386", "/wd6387", "/wd28159" } -- /analyze
+ filter {}
+ filter { "action:vs*" }
+ files { "../../build/premake/lnk/ext-portaudio.c" }
+ filter {}
+ filter { "configurations:Debug" }
+ defines { "PA_ENABLE_DEBUG_OUTPUT" }
+ filter { "configurations:DebugShared" }
+ defines { "PA_ENABLE_DEBUG_OUTPUT" }
+ filter { "configurations:DebugMDd" }
+ defines { "PA_ENABLE_DEBUG_OUTPUT" }
+ filter { "kind:SharedLib" }
+ if _OPTIONS["winxp"] then
+ files { "../../build/premake/def/ext-portaudio-retro.def" }
+ else
+ files { "../../include/portaudio/build/msvc/portaudio.def" }
+ end
+ filter {}
diff --git a/Src/external_dependencies/openmpt-trunk/build/premake/ext-portaudiocpp.lua b/Src/external_dependencies/openmpt-trunk/build/premake/ext-portaudiocpp.lua
new file mode 100644
index 00000000..e8624cca
--- /dev/null
+++ b/Src/external_dependencies/openmpt-trunk/build/premake/ext-portaudiocpp.lua
@@ -0,0 +1,37 @@
+
+ project "portaudiocpp"
+ uuid "627cf18a-c8ca-451e-afd0-8679cadfda6b"
+ language "C++"
+ location ( "../../build/" .. mpt_projectpathname .. "/ext" )
+ mpt_projectname = "portaudiocpp"
+ dofile "../../build/premake/premake-defaults-LIB.lua"
+ dofile "../../build/premake/premake-defaults.lua"
+ targetname "openmpt-portaudiocpp"
+ includedirs { "../../include/portaudio/include", "../../include/portaudio/bindings/cpp/include" }
+ filter {}
+ filter { "action:vs*" }
+ characterset "Unicode"
+ filter {}
+ defines {
+ "PAWIN_USE_WDMKS_DEVICE_INFO",
+ "PA_WDMKS_NO_KSGUID_LIB",
+ "PA_USE_ASIO=0",
+ "PA_USE_DS=1",
+ "PA_USE_WMME=1",
+ "PA_USE_WASAPI=1",
+ "PA_USE_WDMKS=1",
+ }
+ files {
+ "../../include/portaudio/bindings/cpp/include/portaudiocpp/*.hxx",
+ }
+ files {
+ "../../include/portaudio/bindings/cpp/source/portaudiocpp/*.cxx",
+ }
+ links { "portaudio" }
+ filter { "configurations:Debug" }
+ defines { "PA_ENABLE_DEBUG_OUTPUT" }
+ filter { "configurations:DebugShared" }
+ defines { "PA_ENABLE_DEBUG_OUTPUT" }
+ filter { "configurations:DebugMDd" }
+ defines { "PA_ENABLE_DEBUG_OUTPUT" }
+ filter {}
diff --git a/Src/external_dependencies/openmpt-trunk/build/premake/ext-pugixml.lua b/Src/external_dependencies/openmpt-trunk/build/premake/ext-pugixml.lua
new file mode 100644
index 00000000..ec06d2f7
--- /dev/null
+++ b/Src/external_dependencies/openmpt-trunk/build/premake/ext-pugixml.lua
@@ -0,0 +1,24 @@
+
+ project "pugixml"
+ uuid "07B89124-7C71-42cc-81AB-62B09BB61F9B"
+ language "C++"
+ location ( "../../build/" .. mpt_projectpathname .. "/ext" )
+ mpt_projectname = "pugixml"
+ dofile "../../build/premake/premake-defaults-LIB.lua"
+ dofile "../../build/premake/premake-defaults.lua"
+ targetname "openmpt-pugixml"
+ includedirs { }
+ filter {}
+ filter { "action:vs*" }
+ characterset "Unicode"
+ filter {}
+ files {
+ "../../include/pugixml/src/pugixml.cpp",
+ }
+ files {
+ "../../include/pugixml/src/pugiconfig.hpp",
+ "../../include/pugixml/src/pugixml.hpp",
+ }
+ filter { "action:vs*" }
+ buildoptions { "/wd6054", "/wd28182" } -- /analyze
+ filter {}
diff --git a/Src/external_dependencies/openmpt-trunk/build/premake/ext-r8brain.lua b/Src/external_dependencies/openmpt-trunk/build/premake/ext-r8brain.lua
new file mode 100644
index 00000000..1354a711
--- /dev/null
+++ b/Src/external_dependencies/openmpt-trunk/build/premake/ext-r8brain.lua
@@ -0,0 +1,33 @@
+
+ project "r8brain"
+ uuid "BC116B29-9958-4389-B294-7529BB7C7D37"
+ language "C++"
+ location ( "../../build/" .. mpt_projectpathname .. "/ext" )
+ mpt_projectname = "r8brain"
+ dofile "../../build/premake/premake-defaults-LIB.lua"
+ dofile "../../build/premake/premake-defaults.lua"
+ targetname "openmpt-r8brain"
+ includedirs { "../../include/r8brain" }
+ filter {}
+ filter { "action:vs*" }
+ characterset "Unicode"
+ filter {}
+ files {
+ "../../include/r8brain/r8bbase.cpp",
+ }
+ files {
+ "../../include/r8brain/CDSPBlockConvolver.h",
+ "../../include/r8brain/CDSPFIRFilter.h",
+ "../../include/r8brain/CDSPFracInterpolator.h",
+ "../../include/r8brain/CDSPHBDownsampler.h",
+ "../../include/r8brain/CDSPHBUpsampler.h",
+ "../../include/r8brain/CDSPHBUpsampler.inc",
+ "../../include/r8brain/CDSPProcessor.h",
+ "../../include/r8brain/CDSPRealFFT.h",
+ "../../include/r8brain/CDSPResampler.h",
+ "../../include/r8brain/CDSPSincFilterGen.h",
+ "../../include/r8brain/fft4g.h",
+ "../../include/r8brain/r8bbase.h",
+ "../../include/r8brain/r8bconf.h",
+ "../../include/r8brain/r8butil.h",
+ }
diff --git a/Src/external_dependencies/openmpt-trunk/build/premake/ext-rtaudio.lua b/Src/external_dependencies/openmpt-trunk/build/premake/ext-rtaudio.lua
new file mode 100644
index 00000000..1d2094bf
--- /dev/null
+++ b/Src/external_dependencies/openmpt-trunk/build/premake/ext-rtaudio.lua
@@ -0,0 +1,56 @@
+
+ project "rtaudio"
+ uuid "4886456b-1342-4ec8-ad3f-d92aeb8c1097"
+ language "C++"
+ location ( "../../build/" .. mpt_projectpathname .. "/ext" )
+ mpt_projectname = "rtaudio"
+ dofile "../../build/premake/premake-defaults-LIB.lua"
+ dofile "../../build/premake/premake-defaults.lua"
+ targetname "openmpt-rtaudio"
+ filter {}
+ filter { "action:vs*" }
+ characterset "Unicode"
+ filter {}
+ filter { "action:vs2017" }
+ if _OPTIONS["winxp"] then
+ defines {
+ "__WINDOWS_DS__",
+ }
+ else
+ defines {
+ -- WASAPI causes link failure due to confused SDK headers
+ }
+ end
+ filter { "not action:vs2017" }
+ if _OPTIONS["winxp"] then
+ defines {
+ "__WINDOWS_DS__",
+ }
+ else
+ defines {
+ "__WINDOWS_WASAPI__",
+ }
+ end
+ filter {}
+ files {
+ "../../include/rtaudio/RtAudio.cpp",
+ "../../include/rtaudio/RtAudio.h",
+ }
+ if _OPTIONS["winxp"] then
+ if _OPTIONS["clang"] then
+ filter { "not kind:StaticLib" }
+ links { "dsound" }
+ filter {}
+ else
+ filter {}
+ links { "dsound" }
+ filter {}
+ end
+ end
+ filter { }
+ filter { "action:vs*" }
+ buildoptions { "/wd4267" }
+ filter {}
+ filter { "action:vs*" }
+ buildoptions { "/wd6031" } -- analyze
+ filter {}
diff --git a/Src/external_dependencies/openmpt-trunk/build/premake/ext-rtmidi.lua b/Src/external_dependencies/openmpt-trunk/build/premake/ext-rtmidi.lua
new file mode 100644
index 00000000..08b8498c
--- /dev/null
+++ b/Src/external_dependencies/openmpt-trunk/build/premake/ext-rtmidi.lua
@@ -0,0 +1,32 @@
+
+ project "rtmidi"
+ uuid "05BBD03D-0985-4D76-8DDD-534DA631C3A8"
+ language "C++"
+ location ( "../../build/" .. mpt_projectpathname .. "/ext" )
+ mpt_projectname = "rtmidi"
+ dofile "../../build/premake/premake-defaults-LIB.lua"
+ dofile "../../build/premake/premake-defaults.lua"
+ targetname "openmpt-rtmidi"
+ filter {}
+ filter { "action:vs*" }
+ characterset "Unicode"
+ filter {}
+ files {
+ "../../include/rtmidi/RtMidi.cpp"
+ }
+ files {
+ "../../include/rtmidi/RtMidi.h"
+ }
+ defines {
+ "__WINDOWS_MM__",
+ "RTMIDI_DO_NOT_ENSURE_UNIQUE_PORTNAMES"
+ }
+ if _OPTIONS["clang"] then
+ filter { "not kind:StaticLib" }
+ links { "winmm" }
+ filter {}
+ else
+ filter {}
+ links { "winmm" }
+ filter {}
+ end
diff --git a/Src/external_dependencies/openmpt-trunk/build/premake/ext-smbPitchShift.lua b/Src/external_dependencies/openmpt-trunk/build/premake/ext-smbPitchShift.lua
new file mode 100644
index 00000000..6f50ad8a
--- /dev/null
+++ b/Src/external_dependencies/openmpt-trunk/build/premake/ext-smbPitchShift.lua
@@ -0,0 +1,26 @@
+
+ project "smbPitchShift"
+ uuid "89AF16DD-32CC-4A7E-B219-5F117D761F9F"
+ language "C++"
+ location ( "../../build/" .. mpt_projectpathname .. "/ext" )
+ mpt_projectname = "smbPitchShift"
+ dofile "../../build/premake/premake-defaults-LIBorDLL.lua"
+ dofile "../../build/premake/premake-defaults.lua"
+ targetname "openmpt-smbpitchshift"
+ includedirs { }
+ filter {}
+ filter { "action:vs*" }
+ characterset "Unicode"
+ filter {}
+ files {
+ "../../include/smbPitchShift/smbPitchShift.cpp",
+ }
+ files {
+ "../../include/smbPitchShift/smbPitchShift.h",
+ }
+ filter { "action:vs*" }
+ buildoptions { "/wd4244" }
+ filter {}
+ filter { "kind:SharedLib" }
+ defines { "SMBPITCHSHIFT_BUILD_DLL" }
+ filter {}
diff --git a/Src/external_dependencies/openmpt-trunk/build/premake/ext-soundtouch.lua b/Src/external_dependencies/openmpt-trunk/build/premake/ext-soundtouch.lua
new file mode 100644
index 00000000..e62a232b
--- /dev/null
+++ b/Src/external_dependencies/openmpt-trunk/build/premake/ext-soundtouch.lua
@@ -0,0 +1,59 @@
+
+ project "soundtouch"
+ uuid "F5F8F6DE-84CF-4E9D-91EA-D9B5E2AA36CD"
+ language "C++"
+ location ( "../../build/" .. mpt_projectpathname .. "/ext" )
+ mpt_projectname = "soundtouch"
+ dofile "../../build/premake/premake-defaults-DLL.lua"
+ dofile "../../build/premake/premake-defaults.lua"
+ targetname "openmpt-soundtouch"
+ includedirs { "../../include/soundtouch/include" }
+ filter {}
+ filter { "action:vs*" }
+ characterset "Unicode"
+ filter {}
+ files {
+ "../../include/soundtouch/include/BPMDetect.h",
+ "../../include/soundtouch/include/FIFOSampleBuffer.h",
+ "../../include/soundtouch/include/FIFOSamplePipe.h",
+ "../../include/soundtouch/include/SoundTouch.h",
+ "../../include/soundtouch/include/STTypes.h",
+ }
+ files {
+ "../../include/soundtouch/source/SoundTouch/AAFilter.cpp",
+ "../../include/soundtouch/source/SoundTouch/BPMDetect.cpp",
+ "../../include/soundtouch/source/SoundTouch/cpu_detect_x86.cpp",
+ "../../include/soundtouch/source/SoundTouch/FIFOSampleBuffer.cpp",
+ "../../include/soundtouch/source/SoundTouch/FIRFilter.cpp",
+ "../../include/soundtouch/source/SoundTouch/InterpolateCubic.cpp",
+ "../../include/soundtouch/source/SoundTouch/InterpolateLinear.cpp",
+ "../../include/soundtouch/source/SoundTouch/InterpolateShannon.cpp",
+ "../../include/soundtouch/source/SoundTouch/mmx_optimized.cpp",
+ "../../include/soundtouch/source/SoundTouch/PeakFinder.cpp",
+ "../../include/soundtouch/source/SoundTouch/RateTransposer.cpp",
+ "../../include/soundtouch/source/SoundTouch/SoundTouch.cpp",
+ "../../include/soundtouch/source/SoundTouch/sse_optimized.cpp",
+ "../../include/soundtouch/source/SoundTouch/TDStretch.cpp",
+ }
+ files {
+ "../../include/soundtouch/source/SoundTouch/AAFilter.h",
+ "../../include/soundtouch/source/SoundTouch/cpu_detect.h",
+ "../../include/soundtouch/source/SoundTouch/FIRFilter.h",
+ "../../include/soundtouch/source/SoundTouch/InterpolateCubic.h",
+ "../../include/soundtouch/source/SoundTouch/InterpolateLinear.h",
+ "../../include/soundtouch/source/SoundTouch/InterpolateShannon.h",
+ "../../include/soundtouch/source/SoundTouch/PeakFinder.h",
+ "../../include/soundtouch/source/SoundTouch/RateTransposer.h",
+ "../../include/soundtouch/source/SoundTouch/TDStretch.h",
+ }
+ files {
+ "../../include/soundtouch/source/SoundTouchDLL/SoundTouchDLL.cpp",
+ "../../include/soundtouch/source/SoundTouchDLL/SoundTouchDLL.h",
+ }
+ filter { "action:vs*" }
+ buildoptions { "/wd4267" }
+ filter {}
+ filter { "action:vs*" }
+ buildoptions { "/wd6262" } -- analyze
+ filter {}
+ defines { "DLL_EXPORTS" }
diff --git a/Src/external_dependencies/openmpt-trunk/build/premake/ext-stb_vorbis.lua b/Src/external_dependencies/openmpt-trunk/build/premake/ext-stb_vorbis.lua
new file mode 100644
index 00000000..7b830fdc
--- /dev/null
+++ b/Src/external_dependencies/openmpt-trunk/build/premake/ext-stb_vorbis.lua
@@ -0,0 +1,24 @@
+
+ project "stb_vorbis"
+ uuid "E0D81662-85EF-4172-B0D8-F8DCFF712607"
+ language "C"
+ location ( "../../build/" .. mpt_projectpathname .. "/ext" )
+ mpt_projectname = "stb_vorbis"
+ dofile "../../build/premake/premake-defaults-LIBorDLL.lua"
+ dofile "../../build/premake/premake-defaults.lua"
+ targetname "openmpt-stb_vorbis"
+ includedirs { }
+ filter {}
+ filter { "action:vs*" }
+ characterset "Unicode"
+ filter {}
+ defines { "STB_VORBIS_NO_PULLDATA_API", "STB_VORBIS_NO_STDIO" }
+ files {
+ "../../include/stb_vorbis/stb_vorbis.c",
+ }
+ filter { "action:vs*" }
+ buildoptions { "/wd4005", "/wd4100", "/wd4244", "/wd4245", "/wd4701" }
+ filter {}
+ filter { "kind:SharedLib" }
+ files { "../../build/premake/def/ext-stb_vorbis.def" }
+ filter {}
diff --git a/Src/external_dependencies/openmpt-trunk/build/premake/ext-vorbis.lua b/Src/external_dependencies/openmpt-trunk/build/premake/ext-vorbis.lua
new file mode 100644
index 00000000..3505886f
--- /dev/null
+++ b/Src/external_dependencies/openmpt-trunk/build/premake/ext-vorbis.lua
@@ -0,0 +1,112 @@
+
+ project "vorbis"
+ -- NOTE: Unlike the official libvorbis, we built everything into a single library instead of the vorbis, vorbisenc, vorbisfile split.
+ uuid "b544dcb7-16e5-41bc-b51b-7ead8cfdfa05"
+ language "C"
+ location ( "../../build/" .. mpt_projectpathname .. "/ext" )
+ mpt_projectname = "vorbis"
+ dofile "../../build/premake/premake-defaults-LIBorDLL.lua"
+ dofile "../../build/premake/premake-defaults.lua"
+ targetname "openmpt-vorbis"
+ local extincludedirs = {
+ "../../include/ogg/include",
+ }
+ filter { "action:vs*" }
+ includedirs ( extincludedirs )
+ filter { "not action:vs*" }
+ sysincludedirs ( extincludedirs )
+ filter {}
+ includedirs {
+ "../../include/vorbis/include",
+ "../../include/vorbis/lib",
+ }
+ filter {}
+ filter { "action:vs*" }
+ characterset "Unicode"
+ filter {}
+ files {
+ "../../include/vorbis/include/vorbis/codec.h",
+ "../../include/vorbis/include/vorbis/vorbisenc.h",
+ "../../include/vorbis/include/vorbis/vorbisfile.h",
+ }
+ files {
+ "../../include/vorbis/lib/analysis.c",
+ "../../include/vorbis/lib/backends.h",
+ --"../../include/vorbis/lib/barkmel.c",
+ "../../include/vorbis/lib/bitrate.c",
+ "../../include/vorbis/lib/bitrate.h",
+ "../../include/vorbis/lib/block.c",
+ "../../include/vorbis/lib/codebook.c",
+ "../../include/vorbis/lib/codebook.h",
+ "../../include/vorbis/lib/codec_internal.h",
+ "../../include/vorbis/lib/envelope.c",
+ "../../include/vorbis/lib/envelope.h",
+ "../../include/vorbis/lib/floor0.c",
+ "../../include/vorbis/lib/floor1.c",
+ "../../include/vorbis/lib/highlevel.h",
+ "../../include/vorbis/lib/info.c",
+ "../../include/vorbis/lib/lookup.c",
+ "../../include/vorbis/lib/lookup.h",
+ "../../include/vorbis/lib/lookup_data.h",
+ "../../include/vorbis/lib/lpc.c",
+ "../../include/vorbis/lib/lpc.h",
+ "../../include/vorbis/lib/lsp.c",
+ "../../include/vorbis/lib/lsp.h",
+ "../../include/vorbis/lib/mapping0.c",
+ "../../include/vorbis/lib/masking.h",
+ "../../include/vorbis/lib/mdct.c",
+ "../../include/vorbis/lib/mdct.h",
+ "../../include/vorbis/lib/misc.h",
+ "../../include/vorbis/lib/os.h",
+ "../../include/vorbis/lib/psy.c",
+ "../../include/vorbis/lib/psy.h",
+ -- "../../include/vorbis/lib/psytune.c",
+ "../../include/vorbis/lib/registry.c",
+ "../../include/vorbis/lib/registry.h",
+ "../../include/vorbis/lib/res0.c",
+ "../../include/vorbis/lib/scales.h",
+ "../../include/vorbis/lib/sharedbook.c",
+ "../../include/vorbis/lib/smallft.c",
+ "../../include/vorbis/lib/smallft.h",
+ "../../include/vorbis/lib/synthesis.c",
+ -- "../../include/vorbis/lib/tone.c",
+ "../../include/vorbis/lib/vorbisenc.c",
+ "../../include/vorbis/lib/vorbisfile.c",
+ "../../include/vorbis/lib/window.c",
+ "../../include/vorbis/lib/window.h",
+ "../../include/vorbis/lib/books/coupled/res_books_51.h",
+ "../../include/vorbis/lib/books/coupled/res_books_stereo.h",
+ "../../include/vorbis/lib/books/floor/floor_books.h",
+ "../../include/vorbis/lib/books/uncoupled/res_books_uncoupled.h",
+ "../../include/vorbis/lib/modes/floor_all.h",
+ "../../include/vorbis/lib/modes/psych_8.h",
+ "../../include/vorbis/lib/modes/psych_11.h",
+ "../../include/vorbis/lib/modes/psych_16.h",
+ "../../include/vorbis/lib/modes/psych_44.h",
+ "../../include/vorbis/lib/modes/residue_8.h",
+ "../../include/vorbis/lib/modes/residue_16.h",
+ "../../include/vorbis/lib/modes/residue_44.h",
+ "../../include/vorbis/lib/modes/residue_44p51.h",
+ "../../include/vorbis/lib/modes/residue_44u.h",
+ "../../include/vorbis/lib/modes/setup_8.h",
+ "../../include/vorbis/lib/modes/setup_11.h",
+ "../../include/vorbis/lib/modes/setup_16.h",
+ "../../include/vorbis/lib/modes/setup_22.h",
+ "../../include/vorbis/lib/modes/setup_32.h",
+ "../../include/vorbis/lib/modes/setup_44.h",
+ "../../include/vorbis/lib/modes/setup_44p51.h",
+ "../../include/vorbis/lib/modes/setup_44u.h",
+ "../../include/vorbis/lib/modes/setup_X.h",
+ }
+ filter { "action:vs*" }
+ buildoptions { "/wd4101", "/wd4244", "/wd4267", "/wd4305", "/wd4703" }
+ filter {}
+ filter { "action:vs*" }
+ buildoptions { "/wd6001", "/wd6011", "/wd6255", "/wd6262", "/wd6263", "/wd6297", "/wd6308", "/wd6385", "/wd6386", "/wd6387", "/wd28182" } -- /analyze
+ filter {}
+
+ links { "ogg" }
+ filter {}
+ filter { "kind:SharedLib" }
+ files { "../../build/premake/def/ext-vorbis.def" }
+ filter {}
diff --git a/Src/external_dependencies/openmpt-trunk/build/premake/ext-zlib.lua b/Src/external_dependencies/openmpt-trunk/build/premake/ext-zlib.lua
new file mode 100644
index 00000000..77caeec7
--- /dev/null
+++ b/Src/external_dependencies/openmpt-trunk/build/premake/ext-zlib.lua
@@ -0,0 +1,55 @@
+
+ project "zlib"
+ uuid "1654FB18-FDE6-406F-9D84-BA12BFBD67B2"
+ language "C"
+ location ( "../../build/" .. mpt_projectpathname .. "/ext" )
+ mpt_projectname = "zlib"
+ dofile "../../build/premake/premake-defaults-LIBorDLL.lua"
+ dofile "../../build/premake/premake-defaults.lua"
+ targetname "openmpt-zlib"
+ includedirs { "../../include/zlib" }
+ filter {}
+ filter { "action:vs*" }
+ characterset "Unicode"
+ filter {}
+ files {
+ "../../include/zlib/adler32.c",
+ "../../include/zlib/compress.c",
+ "../../include/zlib/crc32.c",
+ "../../include/zlib/deflate.c",
+ "../../include/zlib/gzclose.c",
+ "../../include/zlib/gzlib.c",
+ "../../include/zlib/gzread.c",
+ "../../include/zlib/gzwrite.c",
+ "../../include/zlib/infback.c",
+ "../../include/zlib/inffast.c",
+ "../../include/zlib/inflate.c",
+ "../../include/zlib/inftrees.c",
+ "../../include/zlib/trees.c",
+ "../../include/zlib/uncompr.c",
+ "../../include/zlib/zutil.c",
+ }
+ files {
+ "../../include/zlib/crc32.h",
+ "../../include/zlib/deflate.h",
+ "../../include/zlib/gzguts.h",
+ "../../include/zlib/inffast.h",
+ "../../include/zlib/inffixed.h",
+ "../../include/zlib/inflate.h",
+ "../../include/zlib/inftrees.h",
+ "../../include/zlib/trees.h",
+ "../../include/zlib/zconf.h",
+ "../../include/zlib/zlib.h",
+ "../../include/zlib/zutil.h",
+ }
+ filter {}
+ filter { "kind:StaticLib" }
+ filter { "kind:SharedLib" }
+ defines { "ZLIB_DLL" }
+ filter {}
+ filter { "action:vs*" }
+ buildoptions { "/wd4267" }
+ filter {}
+ filter { "action:vs*" }
+ buildoptions { "/wd6297", "/wd6385" } -- /analyze
+ filter {}
diff --git a/Src/external_dependencies/openmpt-trunk/build/premake/inc/lame/config.h b/Src/external_dependencies/openmpt-trunk/build/premake/inc/lame/config.h
new file mode 100644
index 00000000..ea1625e5
--- /dev/null
+++ b/Src/external_dependencies/openmpt-trunk/build/premake/inc/lame/config.h
@@ -0,0 +1 @@
+#include "../../../../include/lame/configMS.h"
diff --git a/Src/external_dependencies/openmpt-trunk/build/premake/lnk/ext-portaudio.c b/Src/external_dependencies/openmpt-trunk/build/premake/lnk/ext-portaudio.c
new file mode 100644
index 00000000..6cbd5651
--- /dev/null
+++ b/Src/external_dependencies/openmpt-trunk/build/premake/lnk/ext-portaudio.c
@@ -0,0 +1,3 @@
+#pragma comment(lib, "advapi32.lib")
+#pragma comment(lib, "ksuser.lib")
+#pragma comment(lib, "winmm.lib")
diff --git a/Src/external_dependencies/openmpt-trunk/build/premake/mpt-OpenMPT.lua b/Src/external_dependencies/openmpt-trunk/build/premake/mpt-OpenMPT.lua
new file mode 100644
index 00000000..b134acab
--- /dev/null
+++ b/Src/external_dependencies/openmpt-trunk/build/premake/mpt-OpenMPT.lua
@@ -0,0 +1,341 @@
+
+if charset == "Unicode" then
+if stringmode == "WCHAR" then
+ project "OpenMPT"
+ mpt_projectname = "OpenMPT"
+ uuid "37FC32A4-8DDC-4A9C-A30C-62989DD8ACE9"
+else
+ project "OpenMPT-UTF8"
+ mpt_projectname = "OpenMPT-UTF8"
+ uuid "e89507fa-a251-457e-9957-f6b453c77daf"
+end
+else
+ project "OpenMPT-ANSI"
+ mpt_projectname = "OpenMPT-ANSI"
+ uuid "ba66db50-e2f0-4c9e-b650-0cca6c66e1c1"
+end
+ language "C++"
+ location ( "../../build/" .. mpt_projectpathname )
+ vpaths { ["*"] = "../../" }
+ dofile "../../build/premake/premake-defaults-EXEGUI.lua"
+ dofile "../../build/premake/premake-defaults.lua"
+if stringmode == "UTF8" then
+ targetname "OpenMPT-UTF8"
+elseif charset == "MBCS" then
+ targetname "OpenMPT-ANSI"
+else
+ targetname "OpenMPT"
+end
+ filter {}
+ local extincludedirs = {
+ "../../include",
+ "../../include/ancient/api",
+ "../../include/asiomodern/include",
+ "../../include/ASIOSDK2/common",
+ "../../include/flac/include",
+ "../../include/lame/include",
+ "../../include/lhasa/lib/public",
+ "../../include/mpg123/ports/MSVC++",
+ "../../include/mpg123/src/libmpg123",
+ "../../include/nlohmann-json/include",
+ "../../include/ogg/include",
+ "../../include/opus/include",
+ "../../include/opusenc/include",
+ "../../include/opusfile/include",
+ "../../include/portaudio/include",
+ "../../include/rtaudio",
+ "../../include/vorbis/include",
+ "../../include/zlib",
+ }
+ filter { "action:vs*" }
+ includedirs ( extincludedirs )
+ filter { "not action:vs*" }
+ sysincludedirs ( extincludedirs )
+ filter {}
+ includedirs {
+ "../../src",
+ "../../common",
+ "../../soundlib",
+ "$(IntDir)/svn_version",
+ "../../build/svn_version",
+ }
+ if _OPTIONS["win10"] then
+ files {
+ "../../mptrack/res/OpenMPT-win10.manifest",
+ }
+ elseif _OPTIONS["win81"] then
+ files {
+ "../../mptrack/res/OpenMPT-win81.manifest",
+ }
+ elseif _OPTIONS["win7"] then
+ files {
+ "../../mptrack/res/OpenMPT-win7.manifest",
+ }
+ end
+ if not _OPTIONS["winxp"] then
+ files {
+ "../../include/asiomodern/include/ASIOModern/*.hpp",
+ }
+ end
+ files {
+ "../../src/mpt/**.cpp",
+ "../../src/mpt/**.hpp",
+ "../../src/openmpt/**.cpp",
+ "../../src/openmpt/**.hpp",
+ "../../common/*.cpp",
+ "../../common/*.h",
+ "../../soundlib/*.cpp",
+ "../../soundlib/*.h",
+ "../../soundlib/plugins/*.cpp",
+ "../../soundlib/plugins/*.h",
+ "../../soundlib/plugins/dmo/*.cpp",
+ "../../soundlib/plugins/dmo/*.h",
+ "../../sounddsp/*.cpp",
+ "../../sounddsp/*.h",
+ "../../unarchiver/*.cpp",
+ "../../unarchiver/*.h",
+ "../../misc/*.cpp",
+ "../../misc/*.h",
+ "../../tracklib/*.cpp",
+ "../../tracklib/*.h",
+ "../../mptrack/*.cpp",
+ "../../mptrack/*.h",
+ "../../mptrack/plugins/*.cpp",
+ "../../mptrack/plugins/*.h",
+ "../../test/*.cpp",
+ "../../test/*.h",
+ "../../pluginBridge/BridgeCommon.h",
+ "../../pluginBridge/BridgeWrapper.cpp",
+ "../../pluginBridge/BridgeWrapper.h",
+ }
+ files {
+ "../../mptrack/mptrack.rc",
+ "../../mptrack/res/*.*", -- resource data files
+ }
+ if _OPTIONS["win10"] then
+ excludes {
+ "../../mptrack/res/OpenMPT-win7.manifest",
+ "../../mptrack/res/OpenMPT-win81.manifest",
+ }
+ elseif _OPTIONS["win81"] then
+ excludes {
+ "../../mptrack/res/OpenMPT-win7.manifest",
+ "../../mptrack/res/OpenMPT-win10.manifest",
+ }
+ elseif _OPTIONS["win7"] then
+ excludes {
+ "../../mptrack/res/OpenMPT-win81.manifest",
+ "../../mptrack/res/OpenMPT-win10.manifest",
+ }
+ else
+ excludes {
+ "../../mptrack/res/OpenMPT-win7.manifest",
+ "../../mptrack/res/OpenMPT-win81.manifest",
+ "../../mptrack/res/OpenMPT-win10.manifest",
+ }
+ end
+
+ defines { "MPT_BUILD_ENABLE_PCH" }
+ pchsource "../../build/pch/PCH.cpp"
+ pchheader "PCH.h"
+ files {
+ "../../build/pch/PCH.cpp",
+ "../../build/pch/PCH.h"
+ }
+ includedirs {
+ "../../build/pch"
+ }
+ forceincludes {
+ "PCH.h"
+ }
+
+ defines { "MODPLUG_TRACKER" }
+ dpiawareness "None"
+ largeaddressaware ( true )
+ characterset(charset)
+if charset == "Unicode" then
+else
+ defines { "NO_WARN_MBCS_MFC_DEPRECATION" }
+end
+if stringmode == "UTF8" then
+ defines { "MPT_USTRING_MODE_UTF8_FORCE" }
+end
+ flags { "MFC" }
+ -- work-around https://developercommunity.visualstudio.com/t/link-errors-when-building-mfc-application-with-cla/1617786
+ if _OPTIONS["clang"] then
+ filter {}
+ filter { "configurations:Debug" }
+ if true then -- _AFX_NO_MFC_CONTROLS_IN_DIALOGS
+ ignoredefaultlibraries { "afxnmcdd.lib" }
+ links { "afxnmcdd.lib" }
+ end
+ if charset == "Unicode" then
+ ignoredefaultlibraries { "uafxcwd.lib", "libcmtd.lib" }
+ links { "uafxcwd.lib", "libcmtd.lib" }
+ else
+ ignoredefaultlibraries { "nafxcwd.lib", "libcmtd.lib" }
+ links { "nafxcwd.lib", "libcmtd.lib" }
+ end
+ filter { "configurations:DebugShared" }
+ if charset == "Unicode" then
+ ignoredefaultlibraries { "mfc140ud.lib", "msvcrtd.lib" }
+ links { "mfc140ud.lib", "msvcrtd.lib" }
+ else
+ ignoredefaultlibraries { "mfc140d.lib", "msvcrtd.lib" }
+ links { "mfc140d.lib", "msvcrtd.lib" }
+ end
+ filter { "configurations:Checked" }
+ if true then -- _AFX_NO_MFC_CONTROLS_IN_DIALOGS
+ ignoredefaultlibraries { "afxnmcd.lib" }
+ links { "afxnmcd.lib" }
+ end
+ if charset == "Unicode" then
+ ignoredefaultlibraries { "uafxcw.lib", "libcmt.lib" }
+ links { "uafxcw.lib", "libcmt.lib" }
+ else
+ ignoredefaultlibraries { "nafxcw.lib", "libcmt.lib" }
+ links { "nafxcw.lib", "libcmt.lib" }
+ end
+ filter { "configurations:CheckedShared" }
+ if charset == "Unicode" then
+ ignoredefaultlibraries { "mfc140u.lib", "msvcrt.lib" }
+ links { "mfc140u.lib", "msvcrt.lib" }
+ else
+ ignoredefaultlibraries { "mfc140.lib", "msvcrt.lib" }
+ links { "mfc140.lib", "msvcrt.lib" }
+ end
+ filter { "configurations:Release" }
+ if true then -- _AFX_NO_MFC_CONTROLS_IN_DIALOGS
+ ignoredefaultlibraries { "afxnmcd.lib" }
+ links { "afxnmcd.lib" }
+ end
+ if charset == "Unicode" then
+ ignoredefaultlibraries { "uafxcw.lib", "libcmt.lib" }
+ links { "uafxcw.lib", "libcmt.lib" }
+ else
+ ignoredefaultlibraries { "nafxcw.lib", "libcmt.lib" }
+ links { "nafxcw.lib", "libcmt.lib" }
+ end
+ filter { "configurations:ReleaseShared" }
+ if charset == "Unicode" then
+ ignoredefaultlibraries { "mfc140u.lib", "msvcrt.lib" }
+ links { "mfc140u.lib", "msvcrt.lib" }
+ else
+ ignoredefaultlibraries { "mfc140.lib", "msvcrt.lib" }
+ links { "mfc140.lib", "msvcrt.lib" }
+ end
+ filter {}
+ end
+ warnings "Extra"
+ links {
+ "ancient",
+ "UnRAR",
+ "zlib",
+ "minizip",
+ "smbPitchShift",
+ "lame",
+ "lhasa",
+ "flac",
+ "mpg123",
+ "ogg",
+ "opus",
+ "opusenc",
+ "opusfile",
+ "portaudio",
+ "r8brain",
+ "rtaudio",
+ "rtmidi",
+ "soundtouch",
+ "vorbis",
+ }
+ filter {}
+ if not _OPTIONS["winxp"] then
+ linkoptions {
+ "/DELAYLOAD:mf.dll",
+ "/DELAYLOAD:mfplat.dll",
+ "/DELAYLOAD:mfreadwrite.dll",
+-- "/DELAYLOAD:mfuuid.dll", -- static library
+ "/DELAYLOAD:propsys.dll",
+ }
+ end
+ filter { "action:vs*" }
+ files {
+ "../../build/vs/debug/openmpt.natvis",
+ }
+ filter {}
+ prebuildcommands { "..\\..\\build\\svn_version\\update_svn_version_vs_premake.cmd $(IntDir)" }
+
+ project "OpenMPT-NativeSupport"
+ uuid "563a631d-fe07-47bc-a98f-9fe5b3ebabfa"
+ language "C++"
+ location ( "../../build/" .. mpt_projectpathname )
+ vpaths { ["*"] = "../../" }
+ mpt_projectname = "OpenMPT-NativeSupport"
+ dofile "../../build/premake/premake-defaults-DLL.lua"
+ dofile "../../build/premake/premake-defaults.lua"
+ includedirs {
+ "../../src",
+ "../../common",
+ "../../include",
+ "../../include/asiomodern/include",
+ "../../include/ASIOSDK2/common",
+ "../../include/nlohmann-json/include",
+ "../../include/portaudio/include",
+ "../../include/rtaudio",
+ "$(IntDir)/svn_version",
+ "../../build/svn_version",
+ }
+ files {
+ "../../include/asiomodern/include/ASIOModern/*.hpp",
+ "../../src/mpt/**.cpp",
+ "../../src/mpt/**.hpp",
+ "../../src/openmpt/**.cpp",
+ "../../src/openmpt/**.hpp",
+ "../../common/*.cpp",
+ "../../common/*.h",
+ "../../misc/*.cpp",
+ "../../misc/*.h",
+ "../../mptrack/wine/*.cpp",
+ "../../mptrack/wine/*.h",
+ }
+ excludes {
+ "../../mptrack/wine/WineWrapper.cpp",
+ }
+ defines { "MODPLUG_TRACKER", "MPT_BUILD_WINESUPPORT" }
+ largeaddressaware ( true )
+ characterset "Unicode"
+ warnings "Extra"
+ links {
+ "portaudio",
+ "rtaudio",
+ }
+ filter {}
+ prebuildcommands { "..\\..\\build\\svn_version\\update_svn_version_vs_premake.cmd $(IntDir)" }
+
+ project "OpenMPT-WineWrapper"
+ uuid "f3da2bf5-e84a-4f71-80ab-884594863d3a"
+ language "C"
+ location ( "../../build/" .. mpt_projectpathname )
+ vpaths { ["*"] = "../../" }
+ mpt_projectname = "OpenMPT-WineWrapper"
+ dofile "../../build/premake/premake-defaults-DLL.lua"
+ dofile "../../build/premake/premake-defaults.lua"
+ includedirs {
+ "../../src",
+ "../../common",
+ "../../include",
+ "$(IntDir)/svn_version",
+ "../../build/svn_version",
+ }
+ files {
+ "../../mptrack/wine/WineWrapper.c",
+ }
+ defines { "MODPLUG_TRACKER", "MPT_BUILD_WINESUPPORT_WRAPPER" }
+ largeaddressaware ( true )
+ characterset "Unicode"
+ warnings "Extra"
+ links {
+ "OpenMPT-NativeSupport",
+ }
+ filter {}
+ postbuildcommands { "..\\..\\build\\wine\\build_wine_support.cmd $(IntDir) $(OutDir)" }
diff --git a/Src/external_dependencies/openmpt-trunk/build/premake/mpt-PluginBridge.lua b/Src/external_dependencies/openmpt-trunk/build/premake/mpt-PluginBridge.lua
new file mode 100644
index 00000000..3fb3e380
--- /dev/null
+++ b/Src/external_dependencies/openmpt-trunk/build/premake/mpt-PluginBridge.lua
@@ -0,0 +1,159 @@
+
+ project "PluginBridge"
+ uuid "1A147336-891E-49AC-9EAD-A750599A224C"
+ language "C++"
+ location ( "../../build/" .. mpt_projectpathname )
+ vpaths { ["*"] = "../../" }
+ mpt_projectname = "PluginBridge"
+ dofile "../../build/premake/premake-defaults-EXEGUI.lua"
+ dofile "../../build/premake/premake-defaults.lua"
+ local extincludedirs = {
+ }
+ filter { "action:vs*" }
+ includedirs ( extincludedirs )
+ filter { "not action:vs*" }
+ sysincludedirs ( extincludedirs )
+ filter {}
+ includedirs {
+ "../../src",
+ "../../common",
+ "$(IntDir)/svn_version",
+ "../../build/svn_version",
+ }
+ files {
+ "../../src/mpt/**.cpp",
+ "../../src/mpt/**.hpp",
+ "../../src/openmpt/**.cpp",
+ "../../src/openmpt/**.hpp",
+ "../../pluginBridge/AEffectWrapper.h",
+ "../../pluginBridge/Bridge.cpp",
+ "../../pluginBridge/Bridge.h",
+ "../../pluginBridge/BridgeCommon.h",
+ "../../pluginBridge/BridgeOpCodes.h",
+ "../../misc/WriteMemoryDump.h",
+ "../../common/versionNumber.h",
+ }
+ excludes {
+ "../../src/openmpt/soundbase/**.cpp",
+ "../../src/openmpt/soundbase/**.hpp",
+ "../../src/openmpt/sounddevice/**.cpp",
+ "../../src/openmpt/sounddevice/**.hpp",
+ }
+ files {
+ "../../pluginBridge/PluginBridge.rc",
+ }
+ if _OPTIONS["win10"] then
+ files {
+ "../../pluginBridge/PluginBridge-win10.manifest",
+ }
+ elseif _OPTIONS["win81"] then
+ files {
+ "../../pluginBridge/PluginBridge-win81.manifest",
+ }
+ elseif _OPTIONS["win7"] then
+ files {
+ "../../pluginBridge/PluginBridge-win7.manifest",
+ }
+ end
+ defines { "MODPLUG_TRACKER" }
+ dpiawareness "None"
+ largeaddressaware ( true )
+ characterset "Unicode"
+ warnings "Extra"
+ prebuildcommands { "..\\..\\build\\svn_version\\update_svn_version_vs_premake.cmd $(IntDir)" }
+ filter { "architecture:x86" }
+ targetsuffix "-x86"
+ filter { "architecture:x86_64" }
+ targetsuffix "-amd64"
+ filter { "architecture:ARM" }
+ targetsuffix "-arm"
+ filter { "architecture:ARM64" }
+ targetsuffix "-arm64"
+
+ project "PluginBridgeLegacy"
+ uuid "BDEC2D44-C957-4940-A32B-02824AF6E21D"
+ language "C++"
+ location ( "../../build/" .. mpt_projectpathname )
+ vpaths { ["*"] = "../../" }
+ mpt_projectname = "PluginBridgeLegacy"
+ dofile "../../build/premake/premake-defaults-EXEGUI.lua"
+ dofile "../../build/premake/premake-defaults.lua"
+ local extincludedirs = {
+ }
+ filter { "action:vs*" }
+ includedirs ( extincludedirs )
+ filter { "not action:vs*" }
+ sysincludedirs ( extincludedirs )
+ filter {}
+ includedirs {
+ "../../src",
+ "../../common",
+ "$(IntDir)/svn_version",
+ "../../build/svn_version",
+ }
+ files {
+ "../../src/mpt/**.cpp",
+ "../../src/mpt/**.hpp",
+ "../../src/openmpt/**.cpp",
+ "../../src/openmpt/**.hpp",
+ "../../pluginBridge/AEffectWrapper.h",
+ "../../pluginBridge/Bridge.cpp",
+ "../../pluginBridge/Bridge.h",
+ "../../pluginBridge/BridgeCommon.h",
+ "../../pluginBridge/BridgeOpCodes.h",
+ "../../misc/WriteMemoryDump.h",
+ "../../common/versionNumber.h",
+ }
+ excludes {
+ "../../src/openmpt/soundbase/**.cpp",
+ "../../src/openmpt/soundbase/**.hpp",
+ "../../src/openmpt/sounddevice/**.cpp",
+ "../../src/openmpt/sounddevice/**.hpp",
+ }
+ files {
+ "../../pluginBridge/PluginBridge.rc",
+ }
+ if _OPTIONS["win10"] then
+ files {
+ "../../pluginBridge/PluginBridge-win10.manifest",
+ }
+ elseif _OPTIONS["win81"] then
+ files {
+ "../../pluginBridge/PluginBridge-win81.manifest",
+ }
+ elseif _OPTIONS["win7"] then
+ files {
+ "../../pluginBridge/PluginBridge-win7.manifest",
+ }
+ end
+ defines { "MODPLUG_TRACKER" }
+ dpiawareness "None"
+ largeaddressaware ( false )
+ filter {}
+ filter { "action:vs*", "architecture:x86" }
+ dataexecutionprevention "Off"
+ filter { "action:vs*", "architecture:x86_64" }
+ dataexecutionprevention "Off"
+ filter { "action:vs*", "architecture:ARM" }
+ -- dataexecutionprevention "Off" -- not supported by windows loader on arm64
+ filter { "action:vs*", "architecture:ARM64" }
+ -- dataexecutionprevention "Off" -- not supported by windows loader on arm64
+ filter {}
+ characterset "Unicode"
+ warnings "Extra"
+ prebuildcommands { "..\\..\\build\\svn_version\\update_svn_version_vs_premake.cmd $(IntDir)" }
+ filter { "architecture:x86" }
+ targetsuffix "-x86"
+ filter { "architecture:x86_64" }
+ targetsuffix "-amd64"
+ filter { "architecture:ARM" }
+ targetsuffix "-arm"
+ filter { "architecture:ARM64" }
+ targetsuffix "-arm64"
+ filter {}
+ filter {}
+ filter { "action:vs*", "architecture:x86_64" }
+ linkoptions { "/HIGHENTROPYVA:NO" }
+ filter { "action:vs*", "architecture:ARM64" }
+ linkoptions { "/HIGHENTROPYVA:NO" }
+ filter {}
diff --git a/Src/external_dependencies/openmpt-trunk/build/premake/mpt-in_openmpt.lua b/Src/external_dependencies/openmpt-trunk/build/premake/mpt-in_openmpt.lua
new file mode 100644
index 00000000..4daa97e7
--- /dev/null
+++ b/Src/external_dependencies/openmpt-trunk/build/premake/mpt-in_openmpt.lua
@@ -0,0 +1,93 @@
+
+ project "in_openmpt"
+ uuid "D75AEB78-5537-49BD-9085-F92DEEFA84E8"
+ language "C++"
+ location ( "../../build/" .. mpt_projectpathname )
+ vpaths { ["*"] = "../../libopenmpt/" }
+ mpt_projectname = "in_openmpt"
+ dofile "../../build/premake/premake-defaults-DLL.lua"
+ dofile "../../build/premake/premake-defaults.lua"
+ warnings "Extra"
+ local extincludedirs = {
+ "../..",
+ "../../include",
+ }
+ filter { "action:vs*" }
+ includedirs ( extincludedirs )
+ filter { "not action:vs*" }
+ sysincludedirs ( extincludedirs )
+ filter {}
+ includedirs {
+ "../..",
+ "$(IntDir)/svn_version",
+ "../../build/svn_version",
+ }
+ files {
+ "../../libopenmpt/in_openmpt.cpp",
+ "../../libopenmpt/libopenmpt_plugin_settings.hpp",
+ "../../libopenmpt/libopenmpt_plugin_gui.hpp",
+ "../../libopenmpt/libopenmpt_plugin_gui.cpp",
+ "../../libopenmpt/libopenmpt_plugin_gui.rc",
+ "../../libopenmpt/resource.h",
+ }
+
+ filter { "action:vs*", "kind:SharedLib or ConsoleApp or WindowedApp" }
+ resdefines {
+ "MPT_BUILD_VER_FILENAME=\"" .. mpt_projectname .. ".dll\"",
+ "MPT_BUILD_VER_FILEDESC=\"" .. mpt_projectname .. "\"",
+ }
+ filter { "action:vs*", "kind:SharedLib or ConsoleApp or WindowedApp" }
+ resincludedirs {
+ "$(IntDir)/svn_version",
+ "../../build/svn_version",
+ "$(ProjDir)/../../build/svn_version",
+ }
+ files {
+ "../../libopenmpt/libopenmpt_version.rc",
+ }
+ filter { "action:vs*", "kind:SharedLib" }
+ resdefines { "MPT_BUILD_VER_DLL" }
+ filter { "action:vs*", "kind:ConsoleApp or WindowedApp" }
+ resdefines { "MPT_BUILD_VER_EXE" }
+ filter {}
+
+ characterset "Unicode"
+ flags { "MFC" }
+ -- work-around https://developercommunity.visualstudio.com/t/link-errors-when-building-mfc-application-with-cla/1617786
+ if _OPTIONS["clang"] then
+ filter {}
+ filter { "configurations:Debug" }
+ if true then -- _AFX_NO_MFC_CONTROLS_IN_DIALOGS
+ ignoredefaultlibraries { "afxnmcdd.lib"}
+ links { "afxnmcdd.lib" }
+ end
+ ignoredefaultlibraries { "uafxcwd.lib", "libcmtd.lib" }
+ links { "uafxcwd.lib", "libcmtd.lib" }
+ filter { "configurations:DebugShared" }
+ ignoredefaultlibraries { "mfc140ud.lib", "msvcrtd.lib" }
+ links { "mfc140ud.lib", "msvcrtd.lib" }
+ filter { "configurations:Checked" }
+ if true then -- _AFX_NO_MFC_CONTROLS_IN_DIALOGS
+ ignoredefaultlibraries { "afxnmcd.lib" }
+ links { "afxnmcd.lib" }
+ end
+ ignoredefaultlibraries { "uafxcw.lib", "libcmt.lib" }
+ links { "uafxcw.lib", "libcmt.lib" }
+ filter { "configurations:CheckedShared" }
+ ignoredefaultlibraries { "mfc140u.lib", "msvcrt.lib" }
+ links { "mfc140u.lib", "msvcrt.lib" }
+ filter { "configurations:Release" }
+ if true then -- _AFX_NO_MFC_CONTROLS_IN_DIALOGS
+ ignoredefaultlibraries { "afxnmcd.lib" }
+ links { "afxnmcd.lib" }
+ end
+ ignoredefaultlibraries { "uafxcw.lib", "libcmt.lib" }
+ links { "uafxcw.lib", "libcmt.lib" }
+ filter { "configurations:ReleaseShared" }
+ ignoredefaultlibraries { "mfc140u.lib", "msvcrt.lib" }
+ links { "mfc140u.lib", "msvcrt.lib" }
+ filter {}
+ end
+ links { "libopenmpt", "zlib", "vorbis", "ogg", "mpg123" }
+ filter {}
+ prebuildcommands { "..\\..\\build\\svn_version\\update_svn_version_vs_premake.cmd $(IntDir)" }
diff --git a/Src/external_dependencies/openmpt-trunk/build/premake/mpt-libopenmpt-small.lua b/Src/external_dependencies/openmpt-trunk/build/premake/mpt-libopenmpt-small.lua
new file mode 100644
index 00000000..4a4b0c0e
--- /dev/null
+++ b/Src/external_dependencies/openmpt-trunk/build/premake/mpt-libopenmpt-small.lua
@@ -0,0 +1,109 @@
+
+ project "libopenmpt-small"
+ uuid "25560abd-41fc-444c-9e71-f8502bc7ee96"
+ language "C++"
+ location ( "../../build/" .. mpt_projectpathname )
+ vpaths { ["*"] = "../../" }
+ mpt_projectname = "libopenmpt-small"
+ dofile "../../build/premake/premake-defaults-LIBorDLL.lua"
+ dofile "../../build/premake/premake-defaults.lua"
+ local extincludedirs = {
+ "../../include",
+ }
+ filter { "action:vs*" }
+ includedirs ( extincludedirs )
+ filter { "not action:vs*" }
+ sysincludedirs ( extincludedirs )
+ filter {}
+ includedirs {
+ "../..",
+ "../../src",
+ "../../common",
+ "$(IntDir)/svn_version",
+ "../../build/svn_version",
+ }
+ files {
+ "../../src/mpt/**.cpp",
+ "../../src/mpt/**.hpp",
+ "../../src/openmpt/**.cpp",
+ "../../src/openmpt/**.hpp",
+ "../../common/*.cpp",
+ "../../common/*.h",
+ "../../soundlib/*.cpp",
+ "../../soundlib/*.h",
+ "../../soundlib/plugins/*.cpp",
+ "../../soundlib/plugins/*.h",
+ "../../soundlib/plugins/dmo/*.cpp",
+ "../../soundlib/plugins/dmo/*.h",
+ "../../sounddsp/*.cpp",
+ "../../sounddsp/*.h",
+ "../../libopenmpt/libopenmpt.h",
+ "../../libopenmpt/libopenmpt.hpp",
+ "../../libopenmpt/libopenmpt_config.h",
+ "../../libopenmpt/libopenmpt_ext.h",
+ "../../libopenmpt/libopenmpt_ext.hpp",
+ "../../libopenmpt/libopenmpt_ext_impl.hpp",
+ "../../libopenmpt/libopenmpt_impl.hpp",
+ "../../libopenmpt/libopenmpt_internal.h",
+ "../../libopenmpt/libopenmpt_stream_callbacks_buffer.h",
+ "../../libopenmpt/libopenmpt_stream_callbacks_fd.h",
+ "../../libopenmpt/libopenmpt_stream_callbacks_file.h",
+ "../../libopenmpt/libopenmpt_version.h",
+ "../../libopenmpt/libopenmpt_c.cpp",
+ "../../libopenmpt/libopenmpt_cxx.cpp",
+ "../../libopenmpt/libopenmpt_ext_impl.cpp",
+ "../../libopenmpt/libopenmpt_impl.cpp",
+ }
+ excludes {
+ "../../src/mpt/crypto/**.cpp",
+ "../../src/mpt/crypto/**.hpp",
+ "../../src/mpt/json/**.cpp",
+ "../../src/mpt/json/**.hpp",
+ "../../src/mpt/library/**.cpp",
+ "../../src/mpt/library/**.hpp",
+ "../../src/mpt/path/**.cpp",
+ "../../src/mpt/path/**.hpp",
+ "../../src/mpt/test/**.cpp",
+ "../../src/mpt/test/**.hpp",
+ "../../src/mpt/uuid_namespace/**.cpp",
+ "../../src/mpt/uuid_namespace/**.hpp",
+ "../../src/openmpt/sounddevice/**.cpp",
+ "../../src/openmpt/sounddevice/**.hpp",
+ }
+ filter { "action:vs*" }
+ resdefines {
+ "MPT_BUILD_VER_SPECIAL_PREFIX=\"+small\"",
+ }
+ filter { "action:vs*", "kind:SharedLib or ConsoleApp or WindowedApp" }
+ resdefines {
+ "MPT_BUILD_VER_FILENAME=\"" .. mpt_projectname .. ".dll\"",
+ "MPT_BUILD_VER_FILEDESC=\"" .. mpt_projectname .. "\"",
+ }
+ filter { "action:vs*", "kind:SharedLib or ConsoleApp or WindowedApp" }
+ resincludedirs {
+ "$(IntDir)/svn_version",
+ "../../build/svn_version",
+ "$(ProjDir)/../../build/svn_version",
+ }
+ files {
+ "../../libopenmpt/libopenmpt_version.rc",
+ }
+ filter { "action:vs*", "kind:SharedLib" }
+ resdefines { "MPT_BUILD_VER_DLL" }
+ filter { "action:vs*", "kind:ConsoleApp or WindowedApp" }
+ resdefines { "MPT_BUILD_VER_EXE" }
+ filter {}
+
+ characterset "Unicode"
+ warnings "Extra"
+ defines { "LIBOPENMPT_BUILD", "LIBOPENMPT_BUILD_SMALL" }
+ filter { "kind:SharedLib" }
+ defines { "LIBOPENMPT_BUILD_DLL" }
+ filter { "kind:SharedLib" }
+ filter {}
+ links {
+ "minimp3",
+ "miniz",
+ "stb_vorbis"
+ }
+ prebuildcommands { "..\\..\\build\\svn_version\\update_svn_version_vs_premake.cmd $(IntDir)" }
diff --git a/Src/external_dependencies/openmpt-trunk/build/premake/mpt-libopenmpt.lua b/Src/external_dependencies/openmpt-trunk/build/premake/mpt-libopenmpt.lua
new file mode 100644
index 00000000..d8c3188f
--- /dev/null
+++ b/Src/external_dependencies/openmpt-trunk/build/premake/mpt-libopenmpt.lua
@@ -0,0 +1,110 @@
+
+ project "libopenmpt"
+ uuid "9C5101EF-3E20-4558-809B-277FDD50E878"
+ language "C++"
+ location ( "../../build/" .. mpt_projectpathname )
+ vpaths { ["*"] = "../../" }
+ mpt_projectname = "libopenmpt"
+ dofile "../../build/premake/premake-defaults-LIBorDLL.lua"
+ dofile "../../build/premake/premake-defaults.lua"
+ local extincludedirs = {
+ "../../include/mpg123/ports/MSVC++",
+ "../../include/mpg123/src/libmpg123",
+ "../../include/ogg/include",
+ "../../include/vorbis/include",
+ "../../include/zlib",
+ }
+ filter { "action:vs*" }
+ includedirs ( extincludedirs )
+ filter { "not action:vs*" }
+ sysincludedirs ( extincludedirs )
+ filter {}
+ includedirs {
+ "../..",
+ "../../src",
+ "../../common",
+ "$(IntDir)/svn_version",
+ "../../build/svn_version",
+ }
+ files {
+ "../../src/mpt/**.cpp",
+ "../../src/mpt/**.hpp",
+ "../../src/openmpt/**.cpp",
+ "../../src/openmpt/**.hpp",
+ "../../common/*.cpp",
+ "../../common/*.h",
+ "../../soundlib/*.cpp",
+ "../../soundlib/*.h",
+ "../../soundlib/plugins/*.cpp",
+ "../../soundlib/plugins/*.h",
+ "../../soundlib/plugins/dmo/*.cpp",
+ "../../soundlib/plugins/dmo/*.h",
+ "../../sounddsp/*.cpp",
+ "../../sounddsp/*.h",
+ "../../libopenmpt/libopenmpt.h",
+ "../../libopenmpt/libopenmpt.hpp",
+ "../../libopenmpt/libopenmpt_config.h",
+ "../../libopenmpt/libopenmpt_ext.h",
+ "../../libopenmpt/libopenmpt_ext.hpp",
+ "../../libopenmpt/libopenmpt_ext_impl.hpp",
+ "../../libopenmpt/libopenmpt_impl.hpp",
+ "../../libopenmpt/libopenmpt_internal.h",
+ "../../libopenmpt/libopenmpt_stream_callbacks_buffer.h",
+ "../../libopenmpt/libopenmpt_stream_callbacks_fd.h",
+ "../../libopenmpt/libopenmpt_stream_callbacks_file.h",
+ "../../libopenmpt/libopenmpt_version.h",
+ "../../libopenmpt/libopenmpt_c.cpp",
+ "../../libopenmpt/libopenmpt_cxx.cpp",
+ "../../libopenmpt/libopenmpt_ext_impl.cpp",
+ "../../libopenmpt/libopenmpt_impl.cpp",
+ }
+ excludes {
+ "../../src/mpt/crypto/**.cpp",
+ "../../src/mpt/crypto/**.hpp",
+ "../../src/mpt/json/**.cpp",
+ "../../src/mpt/json/**.hpp",
+ "../../src/mpt/library/**.cpp",
+ "../../src/mpt/library/**.hpp",
+ "../../src/mpt/path/**.cpp",
+ "../../src/mpt/path/**.hpp",
+ "../../src/mpt/test/**.cpp",
+ "../../src/mpt/test/**.hpp",
+ "../../src/mpt/uuid_namespace/**.cpp",
+ "../../src/mpt/uuid_namespace/**.hpp",
+ "../../src/openmpt/sounddevice/**.cpp",
+ "../../src/openmpt/sounddevice/**.hpp",
+ }
+ filter { "action:vs*", "kind:SharedLib or ConsoleApp or WindowedApp" }
+ resdefines {
+ "MPT_BUILD_VER_FILENAME=\"" .. mpt_projectname .. ".dll\"",
+ "MPT_BUILD_VER_FILEDESC=\"" .. mpt_projectname .. "\"",
+ }
+ filter { "action:vs*", "kind:SharedLib or ConsoleApp or WindowedApp" }
+ resincludedirs {
+ "$(IntDir)/svn_version",
+ "../../build/svn_version",
+ "$(ProjDir)/../../build/svn_version",
+ }
+ files {
+ "../../libopenmpt/libopenmpt_version.rc",
+ }
+ filter { "action:vs*", "kind:SharedLib" }
+ resdefines { "MPT_BUILD_VER_DLL" }
+ filter { "action:vs*", "kind:ConsoleApp or WindowedApp" }
+ resdefines { "MPT_BUILD_VER_EXE" }
+ filter {}
+
+ characterset "Unicode"
+ warnings "Extra"
+ defines { "LIBOPENMPT_BUILD" }
+ filter { "kind:SharedLib" }
+ defines { "LIBOPENMPT_BUILD_DLL" }
+ filter { "kind:SharedLib" }
+ filter {}
+ links {
+ "vorbis",
+ "ogg",
+ "mpg123",
+ "zlib",
+ }
+ prebuildcommands { "..\\..\\build\\svn_version\\update_svn_version_vs_premake.cmd $(IntDir)" }
diff --git a/Src/external_dependencies/openmpt-trunk/build/premake/mpt-libopenmpt_examples.lua b/Src/external_dependencies/openmpt-trunk/build/premake/mpt-libopenmpt_examples.lua
new file mode 100644
index 00000000..5659f5d8
--- /dev/null
+++ b/Src/external_dependencies/openmpt-trunk/build/premake/mpt-libopenmpt_examples.lua
@@ -0,0 +1,157 @@
+
+ project "libopenmpt_example_cxx"
+ uuid "ce5b5a74-cdb1-4654-b928-f91725fb57c9"
+ language "C++"
+ location ( "../../build/" .. mpt_projectpathname )
+ vpaths { ["*"] = "../../examples/" }
+ mpt_projectname = "libopenmpt_example_cxx"
+ dofile "../../build/premake/premake-defaults-EXE.lua"
+ dofile "../../build/premake/premake-defaults.lua"
+ warnings "Extra"
+ local extincludedirs = {
+ "../..",
+ "../../include/portaudio/bindings/cpp/include",
+ "../../include/portaudio/include",
+ }
+ filter { "action:vs*" }
+ includedirs ( extincludedirs )
+ filter { "not action:vs*" }
+ sysincludedirs ( extincludedirs )
+ filter {}
+ includedirs {
+ "../..",
+ }
+ files {
+ "../../examples/libopenmpt_example_cxx.cpp",
+ }
+ characterset "Unicode"
+ links { "libopenmpt", "zlib", "vorbis", "ogg", "mpg123", "portaudio", "portaudiocpp", "ksuser", "winmm" }
+ filter { "not configurations:*Shared" }
+ filter { "configurations:*Shared" }
+ defines { "LIBOPENMPT_USE_DLL" }
+ filter {}
+
+ project "libopenmpt_example_c"
+ uuid "3f39804d-01c0-479c-ab8b-025683529c57"
+ language "C"
+ location ( "../../build/" .. mpt_projectpathname )
+ vpaths { ["*"] = "../../examples/" }
+ mpt_projectname = "libopenmpt_example_c"
+ dofile "../../build/premake/premake-defaults-EXE.lua"
+ dofile "../../build/premake/premake-defaults.lua"
+ warnings "Extra"
+ local extincludedirs = {
+ "../..",
+ "../../include/portaudio/include",
+ }
+ filter { "action:vs*" }
+ includedirs ( extincludedirs )
+ filter { "not action:vs*" }
+ sysincludedirs ( extincludedirs )
+ filter {}
+ includedirs {
+ "../..",
+ }
+ files {
+ "../../examples/libopenmpt_example_c.c",
+ }
+ characterset "Unicode"
+ links { "libopenmpt", "zlib", "vorbis", "ogg", "mpg123", "portaudio", "ksuser", "winmm" }
+ filter { "not configurations:*Shared" }
+ filter { "configurations:*Shared" }
+ defines { "LIBOPENMPT_USE_DLL" }
+ filter {}
+
+ project "libopenmpt_example_c_mem"
+ uuid "4db3da91-fafd-43af-b3b7-35699b80aba1"
+ language "C"
+ location ( "../../build/" .. mpt_projectpathname )
+ vpaths { ["*"] = "../../examples/" }
+ mpt_projectname = "libopenmpt_example_c_mem"
+ dofile "../../build/premake/premake-defaults-EXE.lua"
+ dofile "../../build/premake/premake-defaults.lua"
+ warnings "Extra"
+ local extincludedirs = {
+ "../..",
+ "../../include/portaudio/include",
+ }
+ filter { "action:vs*" }
+ includedirs ( extincludedirs )
+ filter { "not action:vs*" }
+ sysincludedirs ( extincludedirs )
+ filter {}
+ includedirs {
+ "../..",
+ }
+ files {
+ "../../examples/libopenmpt_example_c_mem.c",
+ }
+ characterset "Unicode"
+ links { "libopenmpt", "zlib", "vorbis", "ogg", "mpg123", "portaudio", "ksuser", "winmm" }
+ filter { "not configurations:*Shared" }
+ filter { "configurations:*Shared" }
+ defines { "LIBOPENMPT_USE_DLL" }
+ filter {}
+
+ project "libopenmpt_example_c_unsafe"
+ uuid "696a79ac-65eb-445f-981a-7639c54569f8"
+ language "C"
+ location ( "../../build/" .. mpt_projectpathname )
+ vpaths { ["*"] = "../../examples/" }
+ mpt_projectname = "libopenmpt_example_c_unsafe"
+ dofile "../../build/premake/premake-defaults-EXE.lua"
+ dofile "../../build/premake/premake-defaults.lua"
+ warnings "Extra"
+ local extincludedirs = {
+ "../..",
+ "../../include/portaudio/include",
+ }
+ filter { "action:vs*" }
+ includedirs ( extincludedirs )
+ filter { "not action:vs*" }
+ sysincludedirs ( extincludedirs )
+ filter {}
+ includedirs {
+ "../..",
+ }
+ files {
+ "../../examples/libopenmpt_example_c_unsafe.c",
+ }
+ characterset "Unicode"
+ links { "libopenmpt", "zlib", "vorbis", "ogg", "mpg123", "portaudio", "ksuser", "winmm" }
+ filter { "not configurations:*Shared" }
+ filter { "configurations:*Shared" }
+ defines { "LIBOPENMPT_USE_DLL" }
+ filter {}
+
+ project "libopenmpt_example_c_probe"
+ uuid "3fbc000d-2574-4a02-96ba-db82d7e7d7bb"
+ language "C"
+ location ( "../../build/" .. mpt_projectpathname )
+ vpaths { ["*"] = "../../examples/" }
+ mpt_projectname = "libopenmpt_example_c_probe"
+ dofile "../../build/premake/premake-defaults-EXE.lua"
+ dofile "../../build/premake/premake-defaults.lua"
+ warnings "Extra"
+ local extincludedirs = {
+ "../..",
+ "../../include/portaudio/include",
+ }
+ filter { "action:vs*" }
+ includedirs ( extincludedirs )
+ filter { "not action:vs*" }
+ sysincludedirs ( extincludedirs )
+ filter {}
+ includedirs {
+ "../..",
+ }
+ files {
+ "../../examples/libopenmpt_example_c_probe.c",
+ }
+ characterset "Unicode"
+ links { "libopenmpt", "zlib", "vorbis", "ogg" }
+ filter { "not configurations:*Shared" }
+ filter { "configurations:*Shared" }
+ defines { "LIBOPENMPT_USE_DLL" }
+ filter {}
+
diff --git a/Src/external_dependencies/openmpt-trunk/build/premake/mpt-libopenmpt_test.lua b/Src/external_dependencies/openmpt-trunk/build/premake/mpt-libopenmpt_test.lua
new file mode 100644
index 00000000..92f63c42
--- /dev/null
+++ b/Src/external_dependencies/openmpt-trunk/build/premake/mpt-libopenmpt_test.lua
@@ -0,0 +1,90 @@
+
+ project "libopenmpt_test"
+ uuid "0A313F63-131E-46A0-931D-23C3A3D488F2"
+ language "C++"
+ location ( "../../build/" .. mpt_projectpathname )
+ vpaths { ["*"] = "../../" }
+ mpt_projectname = "libopenmpt_test"
+ dofile "../../build/premake/premake-defaults-EXE.lua"
+ dofile "../../build/premake/premake-defaults.lua"
+ local extincludedirs = {
+ "../../include/mpg123/ports/MSVC++",
+ "../../include/mpg123/src/libmpg123",
+ "../../include/ogg/include",
+ "../../include/vorbis/include",
+ "../../include/zlib",
+ }
+ filter { "action:vs*" }
+ includedirs ( extincludedirs )
+ filter { "not action:vs*" }
+ sysincludedirs ( extincludedirs )
+ filter {}
+ includedirs {
+ "../..",
+ "../../src",
+ "../../common",
+ "$(IntDir)/svn_version",
+ "../../build/svn_version",
+ }
+ files {
+ "../../src/mpt/**.cpp",
+ "../../src/mpt/**.hpp",
+ "../../src/openmpt/**.cpp",
+ "../../src/openmpt/**.hpp",
+ "../../common/*.cpp",
+ "../../common/*.h",
+ "../../soundlib/*.cpp",
+ "../../soundlib/*.h",
+ "../../soundlib/plugins/*.cpp",
+ "../../soundlib/plugins/*.h",
+ "../../soundlib/plugins/dmo/*.cpp",
+ "../../soundlib/plugins/dmo/*.h",
+ "../../sounddsp/*.cpp",
+ "../../sounddsp/*.h",
+ "../../test/*.cpp",
+ "../../test/*.h",
+ "../../libopenmpt/libopenmpt.h",
+ "../../libopenmpt/libopenmpt.hpp",
+ "../../libopenmpt/libopenmpt_config.h",
+ "../../libopenmpt/libopenmpt_ext.h",
+ "../../libopenmpt/libopenmpt_ext.hpp",
+ "../../libopenmpt/libopenmpt_ext_impl.hpp",
+ "../../libopenmpt/libopenmpt_impl.hpp",
+ "../../libopenmpt/libopenmpt_internal.h",
+ "../../libopenmpt/libopenmpt_stream_callbacks_buffer.h",
+ "../../libopenmpt/libopenmpt_stream_callbacks_fd.h",
+ "../../libopenmpt/libopenmpt_stream_callbacks_file.h",
+ "../../libopenmpt/libopenmpt_version.h",
+ "../../libopenmpt/libopenmpt_c.cpp",
+ "../../libopenmpt/libopenmpt_cxx.cpp",
+ "../../libopenmpt/libopenmpt_ext_impl.cpp",
+ "../../libopenmpt/libopenmpt_impl.cpp",
+ "../../libopenmpt/libopenmpt_test.cpp",
+ }
+ excludes {
+ "../../src/mpt/crypto/**.cpp",
+ "../../src/mpt/crypto/**.hpp",
+ "../../src/mpt/json/**.cpp",
+ "../../src/mpt/json/**.hpp",
+ "../../src/mpt/library/**.cpp",
+ "../../src/mpt/library/**.hpp",
+ "../../src/mpt/path/**.cpp",
+ "../../src/mpt/path/**.hpp",
+ "../../src/mpt/uuid_namespace/**.cpp",
+ "../../src/mpt/uuid_namespace/**.hpp",
+ "../../test/mpt_tests_crypto.cpp",
+ "../../test/mpt_tests_uuid_namespace.cpp",
+ "../../src/openmpt/sounddevice/**.cpp",
+ "../../src/openmpt/sounddevice/**.hpp",
+ }
+ characterset "Unicode"
+ warnings "Extra"
+ defines { "LIBOPENMPT_BUILD", "LIBOPENMPT_BUILD_TEST" }
+ links {
+ "mpg123",
+ "ogg",
+ "vorbis",
+ "zlib",
+ }
+ filter {}
+ prebuildcommands { "..\\..\\build\\svn_version\\update_svn_version_vs_premake.cmd $(IntDir)" }
diff --git a/Src/external_dependencies/openmpt-trunk/build/premake/mpt-openmpt123.lua b/Src/external_dependencies/openmpt-trunk/build/premake/mpt-openmpt123.lua
new file mode 100644
index 00000000..e0f4f730
--- /dev/null
+++ b/Src/external_dependencies/openmpt-trunk/build/premake/mpt-openmpt123.lua
@@ -0,0 +1,73 @@
+
+ project "openmpt123"
+ uuid "2879F62E-9E2F-4EAB-AE7D-F60C194DD5CB"
+ language "C++"
+ location ( "../../build/" .. mpt_projectpathname )
+ vpaths { ["*"] = "../../" }
+ mpt_projectname = "openmpt123"
+ dofile "../../build/premake/premake-defaults-EXE.lua"
+ dofile "../../build/premake/premake-defaults.lua"
+ warnings "Extra"
+ local extincludedirs = {
+ "../..",
+ "../../include/flac/include",
+ "../../include/portaudio/include",
+ }
+ filter { "action:vs*" }
+ includedirs ( extincludedirs )
+ filter { "not action:vs*" }
+ sysincludedirs ( extincludedirs )
+ filter {}
+ includedirs {
+ "../..",
+ "../../src",
+ "../../openmpt123",
+ "$(IntDir)/svn_version",
+ "../../build/svn_version",
+ }
+ files {
+ "../../src/mpt/base/*.hpp",
+ "../../src/mpt/detect/*.hpp",
+ "../../src/mpt/string/*.hpp",
+ "../../openmpt123/*.cpp",
+ "../../openmpt123/*.hpp",
+ }
+ defines { }
+
+ filter { "action:vs*", "kind:SharedLib or ConsoleApp or WindowedApp" }
+ resdefines {
+ "MPT_BUILD_VER_FILENAME=\"" .. mpt_projectname .. ".exe\"",
+ "MPT_BUILD_VER_FILEDESC=\"" .. mpt_projectname .. "\"",
+ }
+ filter { "action:vs*", "kind:SharedLib or ConsoleApp or WindowedApp" }
+ resincludedirs {
+ "$(IntDir)/svn_version",
+ "../../build/svn_version",
+ "$(ProjDir)/../../build/svn_version",
+ }
+ files {
+ "../../libopenmpt/libopenmpt_version.rc",
+ }
+ filter { "action:vs*", "kind:SharedLib" }
+ resdefines { "MPT_BUILD_VER_DLL" }
+ filter { "action:vs*", "kind:ConsoleApp or WindowedApp" }
+ resdefines { "MPT_BUILD_VER_EXE" }
+ filter {}
+
+ characterset "Unicode"
+ links {
+ "libopenmpt",
+ "flac",
+ "portaudio",
+ "ksuser",
+ "winmm",
+ }
+ filter {}
+ filter { "action:vs*" }
+ linkoptions { "wsetargv.obj" }
+ filter {}
+ filter { "configurations:*Shared" }
+ defines { "LIBOPENMPT_USE_DLL" }
+ filter { "not configurations:*Shared" }
+ filter {}
+ prebuildcommands { "..\\..\\build\\svn_version\\update_svn_version_vs_premake.cmd $(IntDir)" }
diff --git a/Src/external_dependencies/openmpt-trunk/build/premake/mpt-updatesigntool.lua b/Src/external_dependencies/openmpt-trunk/build/premake/mpt-updatesigntool.lua
new file mode 100644
index 00000000..da803e46
--- /dev/null
+++ b/Src/external_dependencies/openmpt-trunk/build/premake/mpt-updatesigntool.lua
@@ -0,0 +1,39 @@
+
+ project "updatesigntool"
+ uuid "89b3630f-5728-4902-8258-d4dbc532e185"
+ language "C++"
+ location ( "../../build/" .. mpt_projectpathname )
+ vpaths { ["*"] = "../../" }
+ mpt_projectname = "updatesigntool"
+ dofile "../../build/premake/premake-defaults-EXE.lua"
+ dofile "../../build/premake/premake-defaults.lua"
+ includedirs {
+ "../../src",
+ "../../common",
+ "../../include",
+ "../../include/nlohmann-json/include",
+ "$(IntDir)/svn_version",
+ "../../build/svn_version",
+ }
+ files {
+ "../../src/mpt/**.cpp",
+ "../../src/mpt/**.hpp",
+ "../../src/openmpt/**.cpp",
+ "../../src/openmpt/**.hpp",
+ "../../common/*.cpp",
+ "../../common/*.h",
+ "../../misc/*.cpp",
+ "../../misc/*.h",
+ "../../installer/updatesigntool/*.cpp",
+ "../../installer/updatesigntool/*.h",
+ }
+ excludes {
+ "../../src/openmpt/sounddevice/**.cpp",
+ "../../src/openmpt/sounddevice/**.hpp",
+ }
+ defines { "MODPLUG_TRACKER", "MPT_BUILD_UPDATESIGNTOOL" }
+ largeaddressaware ( true )
+ characterset "Unicode"
+ warnings "Extra"
+ filter {}
+ prebuildcommands { "..\\..\\build\\svn_version\\update_svn_version_vs_premake.cmd $(IntDir)" }
diff --git a/Src/external_dependencies/openmpt-trunk/build/premake/mpt-xmp-openmpt.lua b/Src/external_dependencies/openmpt-trunk/build/premake/mpt-xmp-openmpt.lua
new file mode 100644
index 00000000..26025399
--- /dev/null
+++ b/Src/external_dependencies/openmpt-trunk/build/premake/mpt-xmp-openmpt.lua
@@ -0,0 +1,94 @@
+
+ project "xmp-openmpt"
+ uuid "AEA14F53-ADB0-45E5-9823-81F4F36886C2"
+ language "C++"
+ location ( "../../build/" .. mpt_projectpathname )
+ vpaths { ["*"] = "../../libopenmpt/" }
+ mpt_projectname = "xmp-openmpt"
+ dofile "../../build/premake/premake-defaults-DLL.lua"
+ dofile "../../build/premake/premake-defaults.lua"
+ warnings "Extra"
+ local extincludedirs = {
+ "../..",
+ "../../include",
+ "../../include/pugixml/src",
+ }
+ filter { "action:vs*" }
+ includedirs ( extincludedirs )
+ filter { "not action:vs*" }
+ sysincludedirs ( extincludedirs )
+ filter {}
+ includedirs {
+ "../..",
+ "$(IntDir)/svn_version",
+ "../../build/svn_version",
+ }
+ files {
+ "../../libopenmpt/xmp-openmpt.cpp",
+ "../../libopenmpt/libopenmpt_plugin_settings.hpp",
+ "../../libopenmpt/libopenmpt_plugin_gui.hpp",
+ "../../libopenmpt/libopenmpt_plugin_gui.cpp",
+ "../../libopenmpt/libopenmpt_plugin_gui.rc",
+ "../../libopenmpt/resource.h",
+ }
+
+ filter { "action:vs*", "kind:SharedLib or ConsoleApp or WindowedApp" }
+ resdefines {
+ "MPT_BUILD_VER_FILENAME=\"" .. mpt_projectname .. ".dll\"",
+ "MPT_BUILD_VER_FILEDESC=\"" .. mpt_projectname .. "\"",
+ }
+ filter { "action:vs*", "kind:SharedLib or ConsoleApp or WindowedApp" }
+ resincludedirs {
+ "$(IntDir)/svn_version",
+ "../../build/svn_version",
+ "$(ProjDir)/../../build/svn_version",
+ }
+ files {
+ "../../libopenmpt/libopenmpt_version.rc",
+ }
+ filter { "action:vs*", "kind:SharedLib" }
+ resdefines { "MPT_BUILD_VER_DLL" }
+ filter { "action:vs*", "kind:ConsoleApp or WindowedApp" }
+ resdefines { "MPT_BUILD_VER_EXE" }
+ filter {}
+
+ characterset "Unicode"
+ flags { "MFC" }
+ -- work-around https://developercommunity.visualstudio.com/t/link-errors-when-building-mfc-application-with-cla/1617786
+ if _OPTIONS["clang"] then
+ filter {}
+ filter { "configurations:Debug" }
+ if true then -- _AFX_NO_MFC_CONTROLS_IN_DIALOGS
+ ignoredefaultlibraries { "afxnmcdd.lib"}
+ links { "afxnmcdd.lib" }
+ end
+ ignoredefaultlibraries { "uafxcwd.lib", "libcmtd.lib" }
+ links { "uafxcwd.lib", "libcmtd.lib" }
+ filter { "configurations:DebugShared" }
+ ignoredefaultlibraries { "mfc140ud.lib", "msvcrtd.lib" }
+ links { "mfc140ud.lib", "msvcrtd.lib" }
+ filter { "configurations:Checked" }
+ if true then -- _AFX_NO_MFC_CONTROLS_IN_DIALOGS
+ ignoredefaultlibraries { "afxnmcd.lib" }
+ links { "afxnmcd.lib" }
+ end
+ ignoredefaultlibraries { "uafxcw.lib", "libcmt.lib" }
+ links { "uafxcw.lib", "libcmt.lib" }
+ filter { "configurations:CheckedShared" }
+ ignoredefaultlibraries { "mfc140u.lib", "msvcrt.lib" }
+ links { "mfc140u.lib", "msvcrt.lib" }
+ filter { "configurations:Release" }
+ if true then -- _AFX_NO_MFC_CONTROLS_IN_DIALOGS
+ ignoredefaultlibraries { "afxnmcd.lib" }
+ links { "afxnmcd.lib" }
+ end
+ ignoredefaultlibraries { "uafxcw.lib", "libcmt.lib" }
+ links { "uafxcw.lib", "libcmt.lib" }
+ filter { "configurations:ReleaseShared" }
+ ignoredefaultlibraries { "mfc140u.lib", "msvcrt.lib" }
+ links { "mfc140u.lib", "msvcrt.lib" }
+ filter {}
+ end
+ links { "libopenmpt", "zlib", "vorbis", "ogg", "mpg123", "pugixml" }
+ filter {}
+ prebuildcommands { "..\\..\\build\\svn_version\\update_svn_version_vs_premake.cmd $(IntDir)" }
diff --git a/Src/external_dependencies/openmpt-trunk/build/premake/premake-defaults-DLL.lua b/Src/external_dependencies/openmpt-trunk/build/premake/premake-defaults-DLL.lua
new file mode 100644
index 00000000..293b6661
--- /dev/null
+++ b/Src/external_dependencies/openmpt-trunk/build/premake/premake-defaults-DLL.lua
@@ -0,0 +1,3 @@
+
+ filter {}
+ kind "SharedLib"
diff --git a/Src/external_dependencies/openmpt-trunk/build/premake/premake-defaults-EXE.lua b/Src/external_dependencies/openmpt-trunk/build/premake/premake-defaults-EXE.lua
new file mode 100644
index 00000000..b7e3067a
--- /dev/null
+++ b/Src/external_dependencies/openmpt-trunk/build/premake/premake-defaults-EXE.lua
@@ -0,0 +1,3 @@
+
+ filter {}
+ kind "ConsoleApp"
diff --git a/Src/external_dependencies/openmpt-trunk/build/premake/premake-defaults-EXEGUI.lua b/Src/external_dependencies/openmpt-trunk/build/premake/premake-defaults-EXEGUI.lua
new file mode 100644
index 00000000..c75e8fe4
--- /dev/null
+++ b/Src/external_dependencies/openmpt-trunk/build/premake/premake-defaults-EXEGUI.lua
@@ -0,0 +1,3 @@
+
+ filter {}
+ kind "WindowedApp"
diff --git a/Src/external_dependencies/openmpt-trunk/build/premake/premake-defaults-LIB.lua b/Src/external_dependencies/openmpt-trunk/build/premake/premake-defaults-LIB.lua
new file mode 100644
index 00000000..66c84b95
--- /dev/null
+++ b/Src/external_dependencies/openmpt-trunk/build/premake/premake-defaults-LIB.lua
@@ -0,0 +1,3 @@
+
+ filter {}
+ kind "StaticLib"
diff --git a/Src/external_dependencies/openmpt-trunk/build/premake/premake-defaults-LIBorDLL.lua b/Src/external_dependencies/openmpt-trunk/build/premake/premake-defaults-LIBorDLL.lua
new file mode 100644
index 00000000..75f13afc
--- /dev/null
+++ b/Src/external_dependencies/openmpt-trunk/build/premake/premake-defaults-LIBorDLL.lua
@@ -0,0 +1,17 @@
+
+ filter {}
+
+ filter { "configurations:Debug" }
+ kind "StaticLib"
+ filter { "configurations:DebugShared" }
+ kind "SharedLib"
+ filter { "configurations:Checked" }
+ kind "StaticLib"
+ filter { "configurations:CheckedShared" }
+ kind "SharedLib"
+ filter { "configurations:Release" }
+ kind "StaticLib"
+ filter { "configurations:ReleaseShared" }
+ kind "SharedLib"
+
+ filter {}
diff --git a/Src/external_dependencies/openmpt-trunk/build/premake/premake-defaults-solution.lua b/Src/external_dependencies/openmpt-trunk/build/premake/premake-defaults-solution.lua
new file mode 100644
index 00000000..2be9b450
--- /dev/null
+++ b/Src/external_dependencies/openmpt-trunk/build/premake/premake-defaults-solution.lua
@@ -0,0 +1,16 @@
+
+ preferredtoolarchitecture "x86_64"
+
+ filter { "platforms:x86" }
+ system "Windows"
+ architecture "x86"
+ filter { "platforms:x86_64" }
+ system "Windows"
+ architecture "x86_64"
+ filter { "platforms:arm" }
+ system "Windows"
+ architecture "ARM"
+ filter { "platforms:arm64" }
+ system "Windows"
+ architecture "ARM64"
+ filter {}
diff --git a/Src/external_dependencies/openmpt-trunk/build/premake/premake-defaults.lua b/Src/external_dependencies/openmpt-trunk/build/premake/premake-defaults.lua
new file mode 100644
index 00000000..06b59d86
--- /dev/null
+++ b/Src/external_dependencies/openmpt-trunk/build/premake/premake-defaults.lua
@@ -0,0 +1,347 @@
+
+ filter {}
+ objdir ( "../../build/obj/" .. mpt_projectpathname .. "/" .. mpt_projectname )
+ filter {}
+
+ filter {}
+ if _OPTIONS["clang"] then
+ toolset "clang"
+ end
+ filter {}
+
+ filter {}
+ if _OPTIONS["winxp"] then
+ if _ACTION == "vs2017" then
+ toolset "v141_xp"
+ end
+ defines { "MPT_BUILD_RETRO" }
+ filter { "action:vs*" }
+ buildoptions { "/Zc:threadSafeInit-" }
+ filter {}
+ end
+ filter {}
+
+ filter {}
+
+ filter {}
+ filter { "action:vs*", "language:C++", "action:vs2017" }
+ cppdialect "C++17"
+ filter { "action:vs*", "language:C++", "action:vs2019" }
+ cppdialect "C++17"
+ filter { "action:vs*", "language:C++", "not action:vs2017", "not action:vs2019" }
+ if _OPTIONS["clang"] then
+ cppdialect "C++17"
+ else
+ cppdialect "C++20"
+ end
+ filter { "action:vs*", "action:vs2017" }
+ if _OPTIONS["win10"] then
+ conformancemode "On"
+ end
+ filter { "action:vs*", "not action:vs2017" }
+ conformancemode "On"
+ filter { "not action:vs*", "language:C++" }
+ buildoptions { "-std=c++17" }
+ filter { "not action:vs*", "language:C" }
+ buildoptions { "-std=c99" }
+ filter {}
+
+ filter {}
+ filter { "action:vs*" }
+ if not _OPTIONS["clang"] and not _OPTIONS["winxp"] and not _OPTIONS["uwp"] then
+ spectremitigations "On"
+ end
+ filter {}
+ filter { "action:vs*", "architecture:x86" }
+ resdefines { "VER_ARCHNAME=\"x86\"" }
+ filter { "action:vs*", "architecture:x86_64" }
+ resdefines { "VER_ARCHNAME=\"amd64\"" }
+ filter { "action:vs*", "architecture:ARM" }
+ resdefines { "VER_ARCHNAME=\"arm\"" }
+ filter { "action:vs*", "architecture:ARM64" }
+ resdefines { "VER_ARCHNAME=\"arm64\"" }
+ filter {}
+
+ filter { "kind:StaticLib", "configurations:Debug", "architecture:x86" }
+ targetdir ( "../../build/lib/" .. mpt_projectpathname .. "/x86/Debug" )
+ filter { "kind:StaticLib", "configurations:DebugShared", "architecture:x86" }
+ targetdir ( "../../build/lib/" .. mpt_projectpathname .. "/x86/DebugShared" )
+ filter { "kind:StaticLib", "configurations:Checked", "architecture:x86" }
+ targetdir ( "../../build/lib/" .. mpt_projectpathname .. "/x86/Checked" )
+ filter { "kind:StaticLib", "configurations:CheckedShared", "architecture:x86" }
+ targetdir ( "../../build/lib/" .. mpt_projectpathname .. "/x86/CheckedShared" )
+ filter { "kind:StaticLib", "configurations:Release", "architecture:x86" }
+ targetdir ( "../../build/lib/" .. mpt_projectpathname .. "/x86/Release" )
+ filter { "kind:StaticLib", "configurations:ReleaseShared", "architecture:x86" }
+ targetdir ( "../../build/lib/" .. mpt_projectpathname .. "/x86/ReleaseShared" )
+ filter { "kind:StaticLib", "configurations:Debug", "architecture:x86_64" }
+ targetdir ( "../../build/lib/" .. mpt_projectpathname .. "/x86_64/Debug" )
+ filter { "kind:StaticLib", "configurations:DebugShared", "architecture:x86_64" }
+ targetdir ( "../../build/lib/" .. mpt_projectpathname .. "/x86_64/DebugShared" )
+ filter { "kind:StaticLib", "configurations:Checked", "architecture:x86_64" }
+ targetdir ( "../../build/lib/" .. mpt_projectpathname .. "/x86_64/Checked" )
+ filter { "kind:StaticLib", "configurations:CheckedShared", "architecture:x86_64" }
+ targetdir ( "../../build/lib/" .. mpt_projectpathname .. "/x86_64/CheckedShared" )
+ filter { "kind:StaticLib", "configurations:Release", "architecture:x86_64" }
+ targetdir ( "../../build/lib/" .. mpt_projectpathname .. "/x86_64/Release" )
+ filter { "kind:StaticLib", "configurations:ReleaseShared", "architecture:x86_64" }
+ targetdir ( "../../build/lib/" .. mpt_projectpathname .. "/x86_64/ReleaseShared" )
+
+ filter { "kind:StaticLib", "configurations:Debug", "architecture:ARM" }
+ targetdir ( "../../build/lib/" .. mpt_projectpathname .. "/arm/Debug" )
+ filter { "kind:StaticLib", "configurations:DebugShared", "architecture:ARM" }
+ targetdir ( "../../build/lib/" .. mpt_projectpathname .. "/arm/DebugShared" )
+ filter { "kind:StaticLib", "configurations:Checked", "architecture:ARM" }
+ targetdir ( "../../build/lib/" .. mpt_projectpathname .. "/arm/Checked" )
+ filter { "kind:StaticLib", "configurations:CheckedShared", "architecture:ARM" }
+ targetdir ( "../../build/lib/" .. mpt_projectpathname .. "/arm/CheckedShared" )
+ filter { "kind:StaticLib", "configurations:Release", "architecture:ARM" }
+ targetdir ( "../../build/lib/" .. mpt_projectpathname .. "/arm/Release" )
+ filter { "kind:StaticLib", "configurations:ReleaseShared", "architecture:ARM" }
+ targetdir ( "../../build/lib/" .. mpt_projectpathname .. "/arm/ReleaseShared" )
+ filter { "kind:StaticLib", "configurations:Debug", "architecture:ARM64" }
+ targetdir ( "../../build/lib/" .. mpt_projectpathname .. "/arm64/Debug" )
+ filter { "kind:StaticLib", "configurations:DebugShared", "architecture:ARM64" }
+ targetdir ( "../../build/lib/" .. mpt_projectpathname .. "/arm64/DebugShared" )
+ filter { "kind:StaticLib", "configurations:Checked", "architecture:ARM64" }
+ targetdir ( "../../build/lib/" .. mpt_projectpathname .. "/arm64/Checked" )
+ filter { "kind:StaticLib", "configurations:CheckedShared", "architecture:ARM64" }
+ targetdir ( "../../build/lib/" .. mpt_projectpathname .. "/arm64/CheckedShared" )
+ filter { "kind:StaticLib", "configurations:Release", "architecture:ARM64" }
+ targetdir ( "../../build/lib/" .. mpt_projectpathname .. "/arm64/Release" )
+ filter { "kind:StaticLib", "configurations:ReleaseShared", "architecture:ARM64" }
+ targetdir ( "../../build/lib/" .. mpt_projectpathname .. "/arm64/ReleaseShared" )
+
+ filter { "kind:not StaticLib", "configurations:Debug", "architecture:x86" }
+ targetdir ( "../../bin/debug/" .. _ACTION .. "-" .. mpt_bindirsuffix32 .. "-static/x86" )
+ filter { "kind:not StaticLib", "configurations:DebugShared", "architecture:x86" }
+ targetdir ( "../../bin/debug/" .. _ACTION .. "-" .. mpt_bindirsuffix32 .. "-shared/x86" )
+ filter { "kind:not StaticLib", "configurations:Checked", "architecture:x86" }
+ targetdir ( "../../bin/checked/" .. _ACTION .. "-" .. mpt_bindirsuffix32 .. "-static/x86" )
+ filter { "kind:not StaticLib", "configurations:CheckedShared", "architecture:x86" }
+ targetdir ( "../../bin/checked/" .. _ACTION .. "-" .. mpt_bindirsuffix32 .. "-shared/x86" )
+ filter { "kind:not StaticLib", "configurations:Release", "architecture:x86" }
+ targetdir ( "../../bin/release/" .. _ACTION .. "-" .. mpt_bindirsuffix32 .. "-static/x86" )
+ filter { "kind:not StaticLib", "configurations:ReleaseShared", "architecture:x86" }
+ targetdir ( "../../bin/release/" .. _ACTION .. "-" .. mpt_bindirsuffix32 .. "-shared/x86" )
+ filter { "kind:not StaticLib", "configurations:Debug", "architecture:x86_64" }
+ targetdir ( "../../bin/debug/" .. _ACTION .. "-" .. mpt_bindirsuffix64 .. "-static/amd64" )
+ filter { "kind:not StaticLib", "configurations:DebugShared", "architecture:x86_64" }
+ targetdir ( "../../bin/debug/" .. _ACTION .. "-" .. mpt_bindirsuffix64 .. "-shared/amd64" )
+ filter { "kind:not StaticLib", "configurations:Checked", "architecture:x86_64" }
+ targetdir ( "../../bin/checked/" .. _ACTION .. "-" .. mpt_bindirsuffix64 .. "-static/amd64" )
+ filter { "kind:not StaticLib", "configurations:CheckedShared", "architecture:x86_64" }
+ targetdir ( "../../bin/checked/" .. _ACTION .. "-" .. mpt_bindirsuffix64 .. "-shared/amd64" )
+ filter { "kind:not StaticLib", "configurations:Release", "architecture:x86_64" }
+ targetdir ( "../../bin/release/" .. _ACTION .. "-" .. mpt_bindirsuffix64 .. "-static/amd64" )
+ filter { "kind:not StaticLib", "configurations:ReleaseShared", "architecture:x86_64" }
+ targetdir ( "../../bin/release/" .. _ACTION .. "-" .. mpt_bindirsuffix64 .. "-shared/amd64" )
+
+ filter { "kind:not StaticLib", "configurations:Debug", "architecture:ARM" }
+ targetdir ( "../../bin/debug/" .. _ACTION .. "-" .. mpt_bindirsuffix32 .. "-static/arm" )
+ filter { "kind:not StaticLib", "configurations:DebugShared", "architecture:ARM" }
+ targetdir ( "../../bin/debug/" .. _ACTION .. "-" .. mpt_bindirsuffix32 .. "-shared/arm" )
+ filter { "kind:not StaticLib", "configurations:Checked", "architecture:ARM" }
+ targetdir ( "../../bin/checked/" .. _ACTION .. "-" .. mpt_bindirsuffix32 .. "-static/arm" )
+ filter { "kind:not StaticLib", "configurations:CheckedShared", "architecture:ARM" }
+ targetdir ( "../../bin/checked/" .. _ACTION .. "-" .. mpt_bindirsuffix32 .. "-shared/arm" )
+ filter { "kind:not StaticLib", "configurations:Release", "architecture:ARM" }
+ targetdir ( "../../bin/release/" .. _ACTION .. "-" .. mpt_bindirsuffix32 .. "-static/arm" )
+ filter { "kind:not StaticLib", "configurations:ReleaseShared", "architecture:ARM" }
+ targetdir ( "../../bin/release/" .. _ACTION .. "-" .. mpt_bindirsuffix32 .. "-shared/arm" )
+ filter { "kind:not StaticLib", "configurations:Debug", "architecture:ARM64" }
+ targetdir ( "../../bin/debug/" .. _ACTION .. "-" .. mpt_bindirsuffix64 .. "-static/arm64" )
+ filter { "kind:not StaticLib", "configurations:DebugShared", "architecture:ARM64" }
+ targetdir ( "../../bin/debug/" .. _ACTION .. "-" .. mpt_bindirsuffix64 .. "-shared/arm64" )
+ filter { "kind:not StaticLib", "configurations:Checked", "architecture:ARM64" }
+ targetdir ( "../../bin/checked/" .. _ACTION .. "-" .. mpt_bindirsuffix64 .. "-static/arm64" )
+ filter { "kind:not StaticLib", "configurations:CheckedShared", "architecture:ARM64" }
+ targetdir ( "../../bin/checked/" .. _ACTION .. "-" .. mpt_bindirsuffix64 .. "-shared/arm64" )
+ filter { "kind:not StaticLib", "configurations:Release", "architecture:ARM64" }
+ targetdir ( "../../bin/release/" .. _ACTION .. "-" .. mpt_bindirsuffix64 .. "-static/arm64" )
+ filter { "kind:not StaticLib", "configurations:ReleaseShared", "architecture:ARM64" }
+ targetdir ( "../../bin/release/" .. _ACTION .. "-" .. mpt_bindirsuffix64 .. "-shared/arm64" )
+
+ filter { "configurations:Debug", "architecture:ARM" }
+ editandcontinue "Off"
+ filter { "configurations:Debug", "architecture:ARM64" }
+ editandcontinue "Off"
+ filter { "configurations:DebugShared", "architecture:ARM" }
+ editandcontinue "Off"
+ filter { "configurations:DebugShared", "architecture:ARM64" }
+ editandcontinue "Off"
+
+ filter { "configurations:Debug" }
+ defines { "DEBUG" }
+ defines { "MPT_BUILD_DEBUG" }
+ defines { "MPT_BUILD_MSVC_STATIC" }
+ filter { "configurations:Debug", "architecture:ARM" }
+ symbols "On"
+ filter { "configurations:Debug", "architecture:ARM64" }
+ symbols "On"
+ filter { "configurations:Debug", "architecture:not ARM", "architecture:not ARM64" }
+ symbols "FastLink"
+ filter { "configurations:Debug" }
+ if not _OPTIONS["uwp"] then
+ staticruntime "On"
+ end
+ runtime "Debug"
+ optimize "Debug"
+
+ filter { "configurations:DebugShared" }
+ defines { "DEBUG" }
+ defines { "MPT_BUILD_DEBUG" }
+ defines { "MPT_BUILD_MSVC_SHARED" }
+ symbols "On"
+ runtime "Debug"
+ optimize "Debug"
+
+
+ filter { "configurations:Checked" }
+ defines { "DEBUG" }
+ defines { "MPT_BUILD_MSVC_STATIC" }
+ defines { "MPT_BUILD_CHECKED" }
+ symbols "On"
+ if not _OPTIONS["uwp"] then
+ staticruntime "On"
+ end
+ runtime "Release"
+ optimize "On"
+ omitframepointer "Off"
+
+ filter { "configurations:CheckedShared" }
+ defines { "DEBUG" }
+ defines { "MPT_BUILD_MSVC_SHARED" }
+ defines { "MPT_BUILD_CHECKED" }
+ symbols "On"
+ runtime "Release"
+ optimize "On"
+ omitframepointer "Off"
+
+
+ filter { "configurations:Release" }
+ defines { "NDEBUG" }
+ defines { "MPT_BUILD_MSVC_STATIC" }
+ symbols "On"
+ if not _OPTIONS["clang"] then
+ flags { "LinkTimeOptimization" }
+ end
+ if not _OPTIONS["uwp"] then
+ staticruntime "On"
+ end
+ runtime "Release"
+ optimize "Speed"
+
+ filter { "configurations:ReleaseShared" }
+ defines { "NDEBUG" }
+ defines { "MPT_BUILD_MSVC_SHARED" }
+ symbols "On"
+ if not _OPTIONS["clang"] then
+ flags { "LinkTimeOptimization" }
+ end
+ runtime "Release"
+ optimize "Speed"
+
+
+ filter {}
+ if not _OPTIONS["clang"] then
+ flags { "MultiProcessorCompile" }
+ end
+
+ if _OPTIONS["winxp"] then
+
+ filter { "architecture:x86" }
+ vectorextensions "IA32"
+ filter {}
+ filter { "architecture:x86", "configurations:Release" }
+ floatingpoint "Fast"
+ filter {}
+ filter { "architecture:x86", "configurations:ReleaseShared" }
+ floatingpoint "Fast"
+ filter {}
+
+ else
+
+ filter {}
+
+ filter { "architecture:x86", "configurations:Checked" }
+ vectorextensions "SSE2"
+
+ filter { "architecture:x86", "configurations:CheckedShared" }
+ vectorextensions "SSE2"
+
+ filter { "architecture:x86", "configurations:Release" }
+ vectorextensions "SSE2"
+
+ filter { "architecture:x86", "configurations:ReleaseShared" }
+ vectorextensions "SSE2"
+
+ filter {}
+
+ end
+
+ filter {}
+ defines { "MPT_BUILD_MSVC" }
+
+ filter {}
+ defines {
+ "WIN32",
+ "_CRT_NONSTDC_NO_WARNINGS",
+ "_CRT_SECURE_NO_WARNINGS",
+ "_CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES=1",
+ "_CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES_COUNT=1",
+ }
+
+ filter {}
+
+ if not _OPTIONS["winxp"] and not _OPTIONS["uwp"] then
+ filter {}
+ filter { "action:vs2017" }
+ systemversion "10.0.17763.0"
+ filter {}
+ filter { "action:vs2019" }
+ systemversion "10.0.20348.0"
+ filter {}
+ filter { "action:vs2022" }
+ systemversion "10.0.20348.0"
+ filter {}
+ end
+
+ if _OPTIONS["win10"] then
+ filter {}
+ defines { "_WIN32_WINNT=0x0A00" }
+ filter {}
+ filter { "architecture:x86" }
+ defines { "NTDDI_VERSION=0x0A000000" }
+ filter {}
+ filter { "architecture:x86_64" }
+ defines { "NTDDI_VERSION=0x0A000000" }
+ filter {}
+ filter { "architecture:ARM" }
+ defines { "NTDDI_VERSION=0x0A000004" } -- Windows 10 1709 Build 16299
+ filter {}
+ filter { "architecture:ARM64" }
+ defines { "NTDDI_VERSION=0x0A000004" } -- Windows 10 1709 Build 16299
+ filter {}
+ elseif _OPTIONS["win81"] then
+ filter {}
+ defines { "_WIN32_WINNT=0x0603" }
+ defines { "NTDDI_VERSION=0x06030000" }
+ elseif _OPTIONS["win7"] then
+ filter {}
+ defines { "_WIN32_WINNT=0x0601" }
+ defines { "NTDDI_VERSION=0x06010000" }
+ elseif _OPTIONS["winxp"] then
+ filter {}
+ systemversion "7.0"
+ filter {}
+ filter { "architecture:x86" }
+ defines { "_WIN32_WINNT=0x0501" }
+ defines { "NTDDI_VERSION=0x05010100" } -- Windows XP SP1
+ filter { "architecture:x86_64" }
+ defines { "_WIN32_WINNT=0x0502" }
+ defines { "NTDDI_VERSION=0x05020000" } -- Windows XP x64
+ filter {}
+ end
+
+ filter {}
diff --git a/Src/external_dependencies/openmpt-trunk/build/premake/premake.lua b/Src/external_dependencies/openmpt-trunk/build/premake/premake.lua
new file mode 100644
index 00000000..1e430e3b
--- /dev/null
+++ b/Src/external_dependencies/openmpt-trunk/build/premake/premake.lua
@@ -0,0 +1,431 @@
+
+-- premake gets a tiny bit confused if the same project appears in multiple
+-- solutions in a single run. premake adds a bogus $projectname path to the
+-- intermediate objects directory in that case. work-around using multiple
+-- invocations of premake and a custom option to distinguish them.
+
+MPT_PREMAKE_VERSION = ""
+
+MPT_PREMAKE_VERSION = "5.0"
+
+newoption {
+ trigger = "group",
+ value = "PROJECTS",
+ description = "OpenMPT project group",
+ allowed = {
+ { "libopenmpt-all", "libopenmpt-all" },
+ { "libopenmpt_test", "libopenmpt_test" },
+ { "libopenmpt", "libopenmpt" },
+ { "libopenmpt-small", "libopenmpt-small" },
+ { "in_openmpt", "in_openmpt" },
+ { "xmp-openmpt", "xmp-openmpt" },
+ { "openmpt123", "openmpt123" },
+ { "PluginBridge", "PluginBridge" },
+ { "OpenMPT", "OpenMPT" },
+ { "all-externals", "all-externals" }
+ }
+}
+
+newoption {
+ trigger = "winxp",
+ description = "Generate XP targetting projects",
+}
+newoption {
+ trigger = "win7",
+ description = "Generate Windows 7 Desktop targetting projects",
+}
+newoption {
+ trigger = "win81",
+ description = "Generate Windows 8.1 Desktop targetting projects",
+}
+newoption {
+ trigger = "win10",
+ description = "Generate Windows 10 Desktop targetting projects",
+}
+
+newoption {
+ trigger = "uwp",
+ description = "Generate Windows UWP targetting projects",
+}
+
+newoption {
+ trigger = "clang",
+ description = "ClangCL projects",
+}
+
+mpt_projectpathname = _ACTION
+mpt_bindirsuffix = ""
+mpt_bindirsuffix32 = ""
+mpt_bindirsuffix64 = ""
+
+if _OPTIONS["uwp"] then
+ allplatforms = { "x86", "x86_64", "arm", "arm64" }
+ trkplatforms = { "x86", "x86_64", "arm", "arm64" }
+ mpt_projectpathname = mpt_projectpathname .. "uwp"
+ mpt_bindirsuffix = mpt_bindirsuffix .. "uwp"
+ mpt_bindirsuffix32 = mpt_bindirsuffix32 .. "uwp"
+ mpt_bindirsuffix64 = mpt_bindirsuffix64 .. "uwp"
+elseif _OPTIONS["win10"] then
+ allplatforms = { "x86", "x86_64", "arm", "arm64" }
+ trkplatforms = { "x86", "x86_64", "arm", "arm64" }
+ mpt_projectpathname = mpt_projectpathname .. "win10"
+ mpt_bindirsuffix = mpt_bindirsuffix .. "win10"
+ mpt_bindirsuffix32 = mpt_bindirsuffix32 .. "win10"
+ mpt_bindirsuffix64 = mpt_bindirsuffix64 .. "win10"
+elseif _OPTIONS["win81"] then
+ allplatforms = { "x86", "x86_64" }
+ trkplatforms = { "x86", "x86_64" }
+ mpt_projectpathname = mpt_projectpathname .. "win81"
+ mpt_bindirsuffix = mpt_bindirsuffix .. "win81"
+ mpt_bindirsuffix32 = mpt_bindirsuffix32 .. "win81"
+ mpt_bindirsuffix64 = mpt_bindirsuffix64 .. "win81"
+elseif _OPTIONS["win7"] then
+ allplatforms = { "x86", "x86_64" }
+ trkplatforms = { "x86", "x86_64" }
+ mpt_projectpathname = mpt_projectpathname .. "win7"
+ mpt_bindirsuffix = mpt_bindirsuffix .. "win7"
+ mpt_bindirsuffix32 = mpt_bindirsuffix32 .. "win7"
+ mpt_bindirsuffix64 = mpt_bindirsuffix64 .. "win7"
+elseif _OPTIONS["winxp"] then
+ allplatforms = { "x86", "x86_64" }
+ trkplatforms = { "x86", "x86_64" }
+ mpt_projectpathname = mpt_projectpathname .. "winxp"
+ mpt_bindirsuffix = mpt_bindirsuffix .. "winxp"
+ mpt_bindirsuffix32 = mpt_bindirsuffix32 .. "winxp"
+ mpt_bindirsuffix64 = mpt_bindirsuffix64 .. "winxp"
+end
+
+if _OPTIONS["clang"] then
+ mpt_projectpathname = mpt_projectpathname .. "clang"
+ mpt_bindirsuffix = mpt_bindirsuffix .. "clang"
+ mpt_bindirsuffix32 = mpt_bindirsuffix32 .. "clang"
+ mpt_bindirsuffix64 = mpt_bindirsuffix64 .. "clang"
+end
+
+if _OPTIONS["group"] == "libopenmpt_test" then
+
+solution "libopenmpt_test"
+ startproject "libopenmpt_test"
+ location ( "../../build/" .. mpt_projectpathname )
+ configurations { "Debug", "Release", "Checked", "DebugShared", "ReleaseShared", "CheckedShared" }
+ platforms ( allplatforms )
+ dofile "../../build/premake/premake-defaults-solution.lua"
+
+ dofile "../../build/premake/mpt-libopenmpt_test.lua"
+ dofile "../../build/premake/ext-mpg123.lua"
+ dofile "../../build/premake/ext-ogg.lua"
+ dofile "../../build/premake/ext-vorbis.lua"
+ dofile "../../build/premake/ext-zlib.lua"
+
+end
+
+if _OPTIONS["group"] == "in_openmpt" then
+
+solution "in_openmpt"
+ startproject "in_openmpt"
+ location ( "../../build/" .. mpt_projectpathname )
+ configurations { "Debug", "Release", "Checked" }
+ platforms { "x86" }
+ dofile "../../build/premake/premake-defaults-solution.lua"
+
+ dofile "../../build/premake/mpt-in_openmpt.lua"
+ dofile "../../build/premake/mpt-libopenmpt.lua"
+ dofile "../../build/premake/ext-mpg123.lua"
+ dofile "../../build/premake/ext-ogg.lua"
+ dofile "../../build/premake/ext-vorbis.lua"
+ dofile "../../build/premake/ext-zlib.lua"
+
+end
+
+if _OPTIONS["group"] == "xmp-openmpt" then
+
+solution "xmp-openmpt"
+ startproject "xmp-openmpt"
+ location ( "../../build/" .. mpt_projectpathname )
+ configurations { "Debug", "Release", "Checked" }
+ platforms { "x86" }
+ dofile "../../build/premake/premake-defaults-solution.lua"
+
+ dofile "../../build/premake/mpt-xmp-openmpt.lua"
+ dofile "../../build/premake/mpt-libopenmpt.lua"
+ dofile "../../build/premake/ext-mpg123.lua"
+ dofile "../../build/premake/ext-ogg.lua"
+ dofile "../../build/premake/ext-pugixml.lua"
+ dofile "../../build/premake/ext-vorbis.lua"
+ dofile "../../build/premake/ext-zlib.lua"
+
+end
+
+if _OPTIONS["group"] == "libopenmpt-small" then
+
+solution "libopenmpt-small"
+ startproject "libopenmpt-small"
+ location ( "../../build/" .. mpt_projectpathname )
+ configurations { "Debug", "Release", "Checked", "DebugShared", "ReleaseShared", "CheckedShared" }
+ platforms ( allplatforms )
+ dofile "../../build/premake/premake-defaults-solution.lua"
+
+ dofile "../../build/premake/mpt-libopenmpt-small.lua"
+ dofile "../../build/premake/ext-minimp3.lua"
+ dofile "../../build/premake/ext-miniz.lua"
+ dofile "../../build/premake/ext-stb_vorbis.lua"
+
+end
+
+-- should stay the last libopenmpt solution in order to overwrite the libopenmpt base project with all possible configurations
+if _OPTIONS["group"] == "libopenmpt" then
+
+solution "libopenmpt"
+ startproject "libopenmpt"
+ location ( "../../build/" .. mpt_projectpathname )
+ configurations { "Debug", "Release", "Checked", "DebugShared", "ReleaseShared", "CheckedShared" }
+ platforms ( allplatforms )
+ dofile "../../build/premake/premake-defaults-solution.lua"
+
+ dofile "../../build/premake/mpt-libopenmpt.lua"
+ if not _OPTIONS["uwp"] then
+ dofile "../../build/premake/mpt-libopenmpt_examples.lua"
+ end
+ dofile "../../build/premake/ext-mpg123.lua"
+ dofile "../../build/premake/ext-ogg.lua"
+ if not _OPTIONS["uwp"] then
+ dofile "../../build/premake/ext-portaudio.lua"
+ dofile "../../build/premake/ext-portaudiocpp.lua"
+ end
+ dofile "../../build/premake/ext-vorbis.lua"
+ dofile "../../build/premake/ext-zlib.lua"
+
+end
+
+if _OPTIONS["group"] == "openmpt123" then
+
+solution "openmpt123"
+ startproject "openmpt123"
+ location ( "../../build/" .. mpt_projectpathname )
+ configurations { "Debug", "Release", "Checked", "DebugShared", "ReleaseShared", "CheckedShared" }
+ platforms ( allplatforms )
+ dofile "../../build/premake/premake-defaults-solution.lua"
+
+ dofile "../../build/premake/mpt-openmpt123.lua"
+ dofile "../../build/premake/mpt-libopenmpt.lua"
+ dofile "../../build/premake/ext-flac.lua"
+ dofile "../../build/premake/ext-mpg123.lua"
+ dofile "../../build/premake/ext-ogg.lua"
+ dofile "../../build/premake/ext-portaudio.lua"
+ dofile "../../build/premake/ext-vorbis.lua"
+ dofile "../../build/premake/ext-zlib.lua"
+
+end
+
+if _OPTIONS["group"] == "PluginBridge" then
+
+solution "PluginBridge"
+ startproject "PluginBridge"
+ location ( "../../build/" .. mpt_projectpathname )
+ configurations { "Debug", "Release", "Checked" }
+ platforms ( trkplatforms )
+ dofile "../../build/premake/premake-defaults-solution.lua"
+
+ dofile "../../build/premake/mpt-PluginBridge.lua"
+
+end
+
+if _OPTIONS["group"] == "OpenMPT" then
+
+charset = "Unicode"
+stringmode = "UTF8"
+solution "OpenMPT-UTF8"
+ startproject "OpenMPT-UTF8"
+ location ( "../../build/" .. mpt_projectpathname )
+ configurations { "Debug", "Release", "Checked", "DebugShared", "ReleaseShared", "CheckedShared" }
+ platforms ( trkplatforms )
+ dofile "../../build/premake/premake-defaults-solution.lua"
+
+ dofile "../../build/premake/mpt-OpenMPT.lua"
+ dofile "../../build/premake/mpt-PluginBridge.lua"
+ dofile "../../build/premake/mpt-updatesigntool.lua"
+ dofile "../../build/premake/ext-ancient.lua"
+ dofile "../../build/premake/ext-flac.lua"
+ dofile "../../build/premake/ext-lame.lua"
+ dofile "../../build/premake/ext-lhasa.lua"
+ dofile "../../build/premake/ext-minizip.lua"
+ dofile "../../build/premake/ext-mpg123.lua"
+ dofile "../../build/premake/ext-ogg.lua"
+ dofile "../../build/premake/ext-opus.lua"
+ dofile "../../build/premake/ext-opusenc.lua"
+ dofile "../../build/premake/ext-opusfile.lua"
+ dofile "../../build/premake/ext-portaudio.lua"
+ dofile "../../build/premake/ext-r8brain.lua"
+ dofile "../../build/premake/ext-rtaudio.lua"
+ dofile "../../build/premake/ext-rtmidi.lua"
+ dofile "../../build/premake/ext-smbPitchShift.lua"
+ dofile "../../build/premake/ext-soundtouch.lua"
+ dofile "../../build/premake/ext-UnRAR.lua"
+ dofile "../../build/premake/ext-vorbis.lua"
+ dofile "../../build/premake/ext-zlib.lua"
+
+charset = "MBCS"
+stringmode = "WCHAR"
+solution "OpenMPT-ANSI"
+ startproject "OpenMPT-ANSI"
+ location ( "../../build/" .. mpt_projectpathname )
+ configurations { "Debug", "Release", "Checked", "DebugShared", "ReleaseShared", "CheckedShared" }
+ platforms ( trkplatforms )
+ dofile "../../build/premake/premake-defaults-solution.lua"
+
+ dofile "../../build/premake/mpt-OpenMPT.lua"
+ dofile "../../build/premake/mpt-PluginBridge.lua"
+ dofile "../../build/premake/mpt-updatesigntool.lua"
+ dofile "../../build/premake/ext-ancient.lua"
+ dofile "../../build/premake/ext-flac.lua"
+ dofile "../../build/premake/ext-lame.lua"
+ dofile "../../build/premake/ext-lhasa.lua"
+ dofile "../../build/premake/ext-minizip.lua"
+ dofile "../../build/premake/ext-mpg123.lua"
+ dofile "../../build/premake/ext-ogg.lua"
+ dofile "../../build/premake/ext-opus.lua"
+ dofile "../../build/premake/ext-opusenc.lua"
+ dofile "../../build/premake/ext-opusfile.lua"
+ dofile "../../build/premake/ext-portaudio.lua"
+ dofile "../../build/premake/ext-r8brain.lua"
+ dofile "../../build/premake/ext-rtaudio.lua"
+ dofile "../../build/premake/ext-rtmidi.lua"
+ dofile "../../build/premake/ext-smbPitchShift.lua"
+ dofile "../../build/premake/ext-soundtouch.lua"
+ dofile "../../build/premake/ext-UnRAR.lua"
+ dofile "../../build/premake/ext-vorbis.lua"
+ dofile "../../build/premake/ext-zlib.lua"
+
+charset = "Unicode"
+stringmode = "WCHAR"
+solution "OpenMPT"
+ startproject "OpenMPT"
+ location ( "../../build/" .. mpt_projectpathname )
+ configurations { "Debug", "Release", "Checked", "DebugShared", "ReleaseShared", "CheckedShared" }
+ platforms ( trkplatforms )
+ dofile "../../build/premake/premake-defaults-solution.lua"
+
+ dofile "../../build/premake/mpt-OpenMPT.lua"
+ dofile "../../build/premake/mpt-PluginBridge.lua"
+ dofile "../../build/premake/mpt-updatesigntool.lua"
+ dofile "../../build/premake/ext-ancient.lua"
+ dofile "../../build/premake/ext-flac.lua"
+ dofile "../../build/premake/ext-lame.lua"
+ dofile "../../build/premake/ext-lhasa.lua"
+ dofile "../../build/premake/ext-minizip.lua"
+ dofile "../../build/premake/ext-mpg123.lua"
+ dofile "../../build/premake/ext-ogg.lua"
+ dofile "../../build/premake/ext-opus.lua"
+ dofile "../../build/premake/ext-opusenc.lua"
+ dofile "../../build/premake/ext-opusfile.lua"
+ dofile "../../build/premake/ext-portaudio.lua"
+ dofile "../../build/premake/ext-r8brain.lua"
+ dofile "../../build/premake/ext-rtaudio.lua"
+ dofile "../../build/premake/ext-rtmidi.lua"
+ dofile "../../build/premake/ext-smbPitchShift.lua"
+ dofile "../../build/premake/ext-soundtouch.lua"
+ dofile "../../build/premake/ext-UnRAR.lua"
+ dofile "../../build/premake/ext-vorbis.lua"
+ dofile "../../build/premake/ext-zlib.lua"
+
+end
+
+-- overwrite all external projects once again with the full matrix of possible build config combinations
+if _OPTIONS["group"] == "all-externals" then
+
+solution "all-externals"
+ location ( "../../build/" .. mpt_projectpathname .. "/ext" )
+ configurations { "Debug", "Release", "Checked", "DebugShared", "ReleaseShared", "CheckedShared" }
+ platforms ( allplatforms )
+ dofile "../../build/premake/premake-defaults-solution.lua"
+
+ dofile "../../build/premake/ext-ancient.lua"
+ dofile "../../build/premake/ext-flac.lua"
+ dofile "../../build/premake/ext-lame.lua"
+ dofile "../../build/premake/ext-lhasa.lua"
+ dofile "../../build/premake/ext-minimp3.lua"
+ dofile "../../build/premake/ext-miniz.lua"
+ dofile "../../build/premake/ext-minizip.lua"
+ dofile "../../build/premake/ext-mpg123.lua"
+ dofile "../../build/premake/ext-ogg.lua"
+ dofile "../../build/premake/ext-opus.lua"
+ dofile "../../build/premake/ext-opusenc.lua"
+ dofile "../../build/premake/ext-opusfile.lua"
+ dofile "../../build/premake/ext-portaudio.lua"
+ dofile "../../build/premake/ext-portaudiocpp.lua"
+ dofile "../../build/premake/ext-pugixml.lua"
+ dofile "../../build/premake/ext-r8brain.lua"
+ dofile "../../build/premake/ext-rtaudio.lua"
+ dofile "../../build/premake/ext-rtmidi.lua"
+ dofile "../../build/premake/ext-smbPitchShift.lua"
+ dofile "../../build/premake/ext-soundtouch.lua"
+ dofile "../../build/premake/ext-stb_vorbis.lua"
+ dofile "../../build/premake/ext-UnRAR.lua"
+ dofile "../../build/premake/ext-vorbis.lua"
+ dofile "../../build/premake/ext-zlib.lua"
+
+end
+
+
+
+if _OPTIONS["uwp"] then
+
+ require('vstudio')
+
+ local function mptGlobalsUWP(prj)
+ if _ACTION == 'vs2022' then
+ premake.w('<DefaultLanguage>en-US</DefaultLanguage>')
+ premake.w('<MinimumVisualStudioVersion>15.0</MinimumVisualStudioVersion>')
+ premake.w('<AppContainerApplication>true</AppContainerApplication>')
+ premake.w('<ApplicationType>Windows Store</ApplicationType>')
+ premake.w('<ApplicationTypeRevision>10.0</ApplicationTypeRevision>')
+ premake.w('<WindowsTargetPlatformVersion Condition=" \'$(WindowsTargetPlatformVersion)\' == \'\' ">10.0.22000.0</WindowsTargetPlatformVersion>')
+ premake.w('<WindowsTargetPlatformMinVersion>10.0.17134.0</WindowsTargetPlatformMinVersion>')
+ elseif _ACTION == 'vs2019' then
+ premake.w('<DefaultLanguage>en-US</DefaultLanguage>')
+ premake.w('<MinimumVisualStudioVersion>15.0</MinimumVisualStudioVersion>')
+ premake.w('<AppContainerApplication>true</AppContainerApplication>')
+ premake.w('<ApplicationType>Windows Store</ApplicationType>')
+ premake.w('<ApplicationTypeRevision>10.0</ApplicationTypeRevision>')
+ premake.w('<WindowsTargetPlatformVersion>10.0.20348.0</WindowsTargetPlatformVersion>')
+ premake.w('<WindowsTargetPlatformMinVersion>10.0.10240.0</WindowsTargetPlatformMinVersion>')
+ end
+ end
+
+ local function mptClCompileUWP(prj)
+ premake.w('<CompileAsWinRT>false</CompileAsWinRT>')
+ end
+
+ local function mptOutputPropertiesUWP(prj)
+ premake.w('<IgnoreImportLibrary>false</IgnoreImportLibrary>')
+ end
+
+ local function mptProjectReferencesUWP(prj)
+ premake.w('<ReferenceOutputAssembly>false</ReferenceOutputAssembly>')
+ end
+
+ premake.override(premake.vstudio.vc2010.elements, "globals", function(base, prj)
+ local calls = base(prj)
+ table.insert(calls, mptGlobalsUWP)
+ return calls
+ end)
+
+ premake.override(premake.vstudio.vc2010.elements, "clCompile", function(base, prj)
+ local calls = base(prj)
+ table.insert(calls, mptClCompileUWP)
+ return calls
+ end)
+
+ premake.override(premake.vstudio.vc2010.elements, "outputProperties", function(base, prj)
+ local calls = base(prj)
+ table.insert(calls, mptOutputPropertiesUWP)
+ return calls
+ end)
+
+ premake.override(premake.vstudio.vc2010.elements, "projectReferences", function(base, prj)
+ local calls = base(prj)
+ table.insert(calls, mptProjectReferencesUWP)
+ return calls
+ end)
+
+end