You can subscribe to this list here.
2006 |
Jan
|
Feb
|
Mar
(1) |
Apr
(1) |
May
|
Jun
(1) |
Jul
|
Aug
(10) |
Sep
|
Oct
|
Nov
|
Dec
(3) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2007 |
Jan
(1) |
Feb
(2) |
Mar
(3) |
Apr
(2) |
May
(10) |
Jun
(2) |
Jul
(1) |
Aug
|
Sep
|
Oct
|
Nov
(3) |
Dec
|
2008 |
Jan
(6) |
Feb
(4) |
Mar
(5) |
Apr
(2) |
May
(1) |
Jun
(1) |
Jul
(4) |
Aug
(6) |
Sep
(2) |
Oct
(9) |
Nov
(1) |
Dec
(4) |
2009 |
Jan
(9) |
Feb
(2) |
Mar
(2) |
Apr
(2) |
May
(6) |
Jun
(18) |
Jul
(33) |
Aug
(39) |
Sep
(33) |
Oct
(24) |
Nov
(23) |
Dec
(22) |
2010 |
Jan
(29) |
Feb
(32) |
Mar
(51) |
Apr
(17) |
May
(31) |
Jun
(21) |
Jul
(32) |
Aug
(28) |
Sep
(35) |
Oct
(27) |
Nov
(11) |
Dec
(13) |
2011 |
Jan
(14) |
Feb
(13) |
Mar
(27) |
Apr
(27) |
May
(28) |
Jun
(20) |
Jul
(43) |
Aug
(52) |
Sep
(66) |
Oct
(61) |
Nov
(11) |
Dec
(8) |
2012 |
Jan
(20) |
Feb
(30) |
Mar
(38) |
Apr
(21) |
May
(33) |
Jun
(21) |
Jul
(25) |
Aug
(9) |
Sep
(24) |
Oct
(42) |
Nov
(27) |
Dec
(41) |
2013 |
Jan
(20) |
Feb
(35) |
Mar
(156) |
Apr
(298) |
May
(258) |
Jun
(201) |
Jul
(105) |
Aug
(60) |
Sep
(193) |
Oct
(245) |
Nov
(280) |
Dec
(194) |
2014 |
Jan
(63) |
Feb
(202) |
Mar
(200) |
Apr
(23) |
May
(53) |
Jun
(105) |
Jul
(18) |
Aug
(26) |
Sep
(110) |
Oct
(187) |
Nov
(97) |
Dec
(74) |
2015 |
Jan
(45) |
Feb
(55) |
Mar
(116) |
Apr
(116) |
May
(193) |
Jun
(164) |
Jul
(50) |
Aug
(111) |
Sep
(98) |
Oct
(71) |
Nov
(103) |
Dec
(63) |
2016 |
Jan
(33) |
Feb
(101) |
Mar
(182) |
Apr
(139) |
May
(140) |
Jun
(103) |
Jul
(165) |
Aug
(286) |
Sep
(208) |
Oct
(127) |
Nov
(97) |
Dec
(54) |
2017 |
Jan
(64) |
Feb
(335) |
Mar
(202) |
Apr
(212) |
May
(139) |
Jun
(127) |
Jul
(294) |
Aug
(154) |
Sep
(170) |
Oct
(152) |
Nov
(156) |
Dec
(62) |
2018 |
Jan
(168) |
Feb
(237) |
Mar
(196) |
Apr
(174) |
May
(174) |
Jun
(161) |
Jul
(127) |
Aug
(88) |
Sep
(149) |
Oct
(66) |
Nov
(52) |
Dec
(135) |
2019 |
Jan
(146) |
Feb
(126) |
Mar
(104) |
Apr
(58) |
May
(60) |
Jun
(28) |
Jul
(197) |
Aug
(129) |
Sep
(141) |
Oct
(148) |
Nov
(63) |
Dec
(100) |
2020 |
Jan
(74) |
Feb
(37) |
Mar
(59) |
Apr
(154) |
May
(194) |
Jun
(133) |
Jul
(313) |
Aug
(197) |
Sep
(49) |
Oct
(162) |
Nov
(143) |
Dec
(57) |
2021 |
Jan
(120) |
Feb
(107) |
Mar
(314) |
Apr
(157) |
May
(524) |
Jun
(169) |
Jul
(72) |
Aug
(133) |
Sep
(135) |
Oct
(146) |
Nov
(198) |
Dec
(325) |
2022 |
Jan
(409) |
Feb
(249) |
Mar
(138) |
Apr
(95) |
May
(102) |
Jun
(221) |
Jul
(66) |
Aug
(120) |
Sep
(192) |
Oct
(131) |
Nov
(53) |
Dec
(171) |
2023 |
Jan
(357) |
Feb
(82) |
Mar
(168) |
Apr
(218) |
May
(196) |
Jun
(86) |
Jul
(115) |
Aug
(49) |
Sep
(190) |
Oct
(102) |
Nov
(45) |
Dec
(76) |
2024 |
Jan
(86) |
Feb
(50) |
Mar
(324) |
Apr
(209) |
May
(197) |
Jun
(232) |
Jul
(194) |
Aug
(247) |
Sep
(219) |
Oct
(266) |
Nov
(328) |
Dec
(304) |
2025 |
Jan
(191) |
Feb
(115) |
Mar
(137) |
Apr
(32) |
May
(126) |
Jun
(403) |
Jul
(213) |
Aug
(177) |
Sep
|
Oct
|
Nov
|
Dec
|
Author: manx Date: Sun Jul 14 17:47:26 2024 New Revision: 21173 URL: https://source.openmpt.org/browse/openmpt/?op=revision&rev=21173 Log: [Fix] We must set global compiler settings before including any foreign or system header. Doing it in BuildSettings.h was too late because we already have included libc and libc++ headers via detect_quirks.hpp. Add another BuildSettingsCompiler.h which only depends on detect_compiler.hpp, and move compiler setting quirks detection into detect_compiler.hpp. Added: trunk/OpenMPT/common/BuildSettingsCompiler.h (contents, props changed) Modified: trunk/OpenMPT/build/autotools/Makefile.am trunk/OpenMPT/build/vs2017winxp/OpenMPT-ANSI.vcxproj trunk/OpenMPT/build/vs2017winxp/OpenMPT-ANSI.vcxproj.filters trunk/OpenMPT/build/vs2017winxp/OpenMPT-NativeSupport.vcxproj trunk/OpenMPT/build/vs2017winxp/OpenMPT-NativeSupport.vcxproj.filters trunk/OpenMPT/build/vs2017winxp/OpenMPT-UTF8.vcxproj trunk/OpenMPT/build/vs2017winxp/OpenMPT-UTF8.vcxproj.filters trunk/OpenMPT/build/vs2017winxp/OpenMPT.vcxproj trunk/OpenMPT/build/vs2017winxp/OpenMPT.vcxproj.filters trunk/OpenMPT/build/vs2017winxp/libopenmpt-small.vcxproj trunk/OpenMPT/build/vs2017winxp/libopenmpt-small.vcxproj.filters trunk/OpenMPT/build/vs2017winxp/libopenmpt.vcxproj trunk/OpenMPT/build/vs2017winxp/libopenmpt.vcxproj.filters trunk/OpenMPT/build/vs2017winxp/libopenmpt_test.vcxproj trunk/OpenMPT/build/vs2017winxp/libopenmpt_test.vcxproj.filters trunk/OpenMPT/build/vs2017winxp/updatesigntool.vcxproj trunk/OpenMPT/build/vs2017winxp/updatesigntool.vcxproj.filters trunk/OpenMPT/build/vs2017winxpansi/OpenMPT-ANSI.vcxproj trunk/OpenMPT/build/vs2017winxpansi/OpenMPT-ANSI.vcxproj.filters trunk/OpenMPT/build/vs2017winxpansi/OpenMPT-NativeSupport.vcxproj trunk/OpenMPT/build/vs2017winxpansi/OpenMPT-NativeSupport.vcxproj.filters trunk/OpenMPT/build/vs2017winxpansi/OpenMPT-UTF8.vcxproj trunk/OpenMPT/build/vs2017winxpansi/OpenMPT-UTF8.vcxproj.filters trunk/OpenMPT/build/vs2017winxpansi/OpenMPT.vcxproj trunk/OpenMPT/build/vs2017winxpansi/OpenMPT.vcxproj.filters trunk/OpenMPT/build/vs2017winxpansi/libopenmpt-small.vcxproj trunk/OpenMPT/build/vs2017winxpansi/libopenmpt-small.vcxproj.filters trunk/OpenMPT/build/vs2017winxpansi/libopenmpt.vcxproj trunk/OpenMPT/build/vs2017winxpansi/libopenmpt.vcxproj.filters trunk/OpenMPT/build/vs2017winxpansi/libopenmpt_test.vcxproj trunk/OpenMPT/build/vs2017winxpansi/libopenmpt_test.vcxproj.filters trunk/OpenMPT/build/vs2017winxpansi/updatesigntool.vcxproj trunk/OpenMPT/build/vs2017winxpansi/updatesigntool.vcxproj.filters trunk/OpenMPT/build/vs2019win10/OpenMPT-ANSI.vcxproj trunk/OpenMPT/build/vs2019win10/OpenMPT-ANSI.vcxproj.filters trunk/OpenMPT/build/vs2019win10/OpenMPT-NativeSupport.vcxproj trunk/OpenMPT/build/vs2019win10/OpenMPT-NativeSupport.vcxproj.filters trunk/OpenMPT/build/vs2019win10/OpenMPT-UTF8.vcxproj trunk/OpenMPT/build/vs2019win10/OpenMPT-UTF8.vcxproj.filters trunk/OpenMPT/build/vs2019win10/OpenMPT.vcxproj trunk/OpenMPT/build/vs2019win10/OpenMPT.vcxproj.filters trunk/OpenMPT/build/vs2019win10/libopenmpt-small.vcxproj trunk/OpenMPT/build/vs2019win10/libopenmpt-small.vcxproj.filters trunk/OpenMPT/build/vs2019win10/libopenmpt.vcxproj trunk/OpenMPT/build/vs2019win10/libopenmpt.vcxproj.filters trunk/OpenMPT/build/vs2019win10/libopenmpt_test.vcxproj trunk/OpenMPT/build/vs2019win10/libopenmpt_test.vcxproj.filters trunk/OpenMPT/build/vs2019win10/updatesigntool.vcxproj trunk/OpenMPT/build/vs2019win10/updatesigntool.vcxproj.filters trunk/OpenMPT/build/vs2019win10uwp/libopenmpt-small.vcxproj trunk/OpenMPT/build/vs2019win10uwp/libopenmpt-small.vcxproj.filters trunk/OpenMPT/build/vs2019win10uwp/libopenmpt.vcxproj trunk/OpenMPT/build/vs2019win10uwp/libopenmpt.vcxproj.filters trunk/OpenMPT/build/vs2019win7/OpenMPT-ANSI.vcxproj trunk/OpenMPT/build/vs2019win7/OpenMPT-ANSI.vcxproj.filters trunk/OpenMPT/build/vs2019win7/OpenMPT-NativeSupport.vcxproj trunk/OpenMPT/build/vs2019win7/OpenMPT-NativeSupport.vcxproj.filters trunk/OpenMPT/build/vs2019win7/OpenMPT-UTF8.vcxproj trunk/OpenMPT/build/vs2019win7/OpenMPT-UTF8.vcxproj.filters trunk/OpenMPT/build/vs2019win7/OpenMPT.vcxproj trunk/OpenMPT/build/vs2019win7/OpenMPT.vcxproj.filters trunk/OpenMPT/build/vs2019win7/libopenmpt-small.vcxproj trunk/OpenMPT/build/vs2019win7/libopenmpt-small.vcxproj.filters trunk/OpenMPT/build/vs2019win7/libopenmpt.vcxproj trunk/OpenMPT/build/vs2019win7/libopenmpt.vcxproj.filters trunk/OpenMPT/build/vs2019win7/libopenmpt_test.vcxproj trunk/OpenMPT/build/vs2019win7/libopenmpt_test.vcxproj.filters trunk/OpenMPT/build/vs2019win7/updatesigntool.vcxproj trunk/OpenMPT/build/vs2019win7/updatesigntool.vcxproj.filters trunk/OpenMPT/build/vs2019win81/OpenMPT-ANSI.vcxproj trunk/OpenMPT/build/vs2019win81/OpenMPT-ANSI.vcxproj.filters trunk/OpenMPT/build/vs2019win81/OpenMPT-NativeSupport.vcxproj trunk/OpenMPT/build/vs2019win81/OpenMPT-NativeSupport.vcxproj.filters trunk/OpenMPT/build/vs2019win81/OpenMPT-UTF8.vcxproj trunk/OpenMPT/build/vs2019win81/OpenMPT-UTF8.vcxproj.filters trunk/OpenMPT/build/vs2019win81/OpenMPT.vcxproj trunk/OpenMPT/build/vs2019win81/OpenMPT.vcxproj.filters trunk/OpenMPT/build/vs2019win81/libopenmpt-small.vcxproj trunk/OpenMPT/build/vs2019win81/libopenmpt-small.vcxproj.filters trunk/OpenMPT/build/vs2019win81/libopenmpt.vcxproj trunk/OpenMPT/build/vs2019win81/libopenmpt.vcxproj.filters trunk/OpenMPT/build/vs2019win81/libopenmpt_test.vcxproj trunk/OpenMPT/build/vs2019win81/libopenmpt_test.vcxproj.filters trunk/OpenMPT/build/vs2019win81/updatesigntool.vcxproj trunk/OpenMPT/build/vs2019win81/updatesigntool.vcxproj.filters trunk/OpenMPT/build/vs2022win10/OpenMPT-ANSI.vcxproj trunk/OpenMPT/build/vs2022win10/OpenMPT-ANSI.vcxproj.filters trunk/OpenMPT/build/vs2022win10/OpenMPT-NativeSupport.vcxproj trunk/OpenMPT/build/vs2022win10/OpenMPT-NativeSupport.vcxproj.filters trunk/OpenMPT/build/vs2022win10/OpenMPT-UTF8.vcxproj trunk/OpenMPT/build/vs2022win10/OpenMPT-UTF8.vcxproj.filters trunk/OpenMPT/build/vs2022win10/OpenMPT.vcxproj trunk/OpenMPT/build/vs2022win10/OpenMPT.vcxproj.filters trunk/OpenMPT/build/vs2022win10/libopenmpt-small.vcxproj trunk/OpenMPT/build/vs2022win10/libopenmpt-small.vcxproj.filters trunk/OpenMPT/build/vs2022win10/libopenmpt.vcxproj trunk/OpenMPT/build/vs2022win10/libopenmpt.vcxproj.filters trunk/OpenMPT/build/vs2022win10/libopenmpt_test.vcxproj trunk/OpenMPT/build/vs2022win10/libopenmpt_test.vcxproj.filters trunk/OpenMPT/build/vs2022win10/updatesigntool.vcxproj trunk/OpenMPT/build/vs2022win10/updatesigntool.vcxproj.filters trunk/OpenMPT/build/vs2022win10clang/OpenMPT-ANSI.vcxproj trunk/OpenMPT/build/vs2022win10clang/OpenMPT-ANSI.vcxproj.filters trunk/OpenMPT/build/vs2022win10clang/OpenMPT-NativeSupport.vcxproj trunk/OpenMPT/build/vs2022win10clang/OpenMPT-NativeSupport.vcxproj.filters trunk/OpenMPT/build/vs2022win10clang/OpenMPT-UTF8.vcxproj trunk/OpenMPT/build/vs2022win10clang/OpenMPT-UTF8.vcxproj.filters trunk/OpenMPT/build/vs2022win10clang/OpenMPT.vcxproj trunk/OpenMPT/build/vs2022win10clang/OpenMPT.vcxproj.filters trunk/OpenMPT/build/vs2022win10clang/libopenmpt-small.vcxproj trunk/OpenMPT/build/vs2022win10clang/libopenmpt-small.vcxproj.filters trunk/OpenMPT/build/vs2022win10clang/libopenmpt.vcxproj trunk/OpenMPT/build/vs2022win10clang/libopenmpt.vcxproj.filters trunk/OpenMPT/build/vs2022win10clang/libopenmpt_test.vcxproj trunk/OpenMPT/build/vs2022win10clang/libopenmpt_test.vcxproj.filters trunk/OpenMPT/build/vs2022win10clang/updatesigntool.vcxproj trunk/OpenMPT/build/vs2022win10clang/updatesigntool.vcxproj.filters trunk/OpenMPT/build/vs2022win10uwp/libopenmpt-small.vcxproj trunk/OpenMPT/build/vs2022win10uwp/libopenmpt-small.vcxproj.filters trunk/OpenMPT/build/vs2022win10uwp/libopenmpt.vcxproj trunk/OpenMPT/build/vs2022win10uwp/libopenmpt.vcxproj.filters trunk/OpenMPT/build/vs2022win7/OpenMPT-ANSI.vcxproj trunk/OpenMPT/build/vs2022win7/OpenMPT-ANSI.vcxproj.filters trunk/OpenMPT/build/vs2022win7/OpenMPT-NativeSupport.vcxproj trunk/OpenMPT/build/vs2022win7/OpenMPT-NativeSupport.vcxproj.filters trunk/OpenMPT/build/vs2022win7/OpenMPT-UTF8.vcxproj trunk/OpenMPT/build/vs2022win7/OpenMPT-UTF8.vcxproj.filters trunk/OpenMPT/build/vs2022win7/OpenMPT.vcxproj trunk/OpenMPT/build/vs2022win7/OpenMPT.vcxproj.filters trunk/OpenMPT/build/vs2022win7/libopenmpt-small.vcxproj trunk/OpenMPT/build/vs2022win7/libopenmpt-small.vcxproj.filters trunk/OpenMPT/build/vs2022win7/libopenmpt.vcxproj trunk/OpenMPT/build/vs2022win7/libopenmpt.vcxproj.filters trunk/OpenMPT/build/vs2022win7/libopenmpt_test.vcxproj trunk/OpenMPT/build/vs2022win7/libopenmpt_test.vcxproj.filters trunk/OpenMPT/build/vs2022win7/updatesigntool.vcxproj trunk/OpenMPT/build/vs2022win7/updatesigntool.vcxproj.filters trunk/OpenMPT/build/vs2022win81/OpenMPT-ANSI.vcxproj trunk/OpenMPT/build/vs2022win81/OpenMPT-ANSI.vcxproj.filters trunk/OpenMPT/build/vs2022win81/OpenMPT-NativeSupport.vcxproj trunk/OpenMPT/build/vs2022win81/OpenMPT-NativeSupport.vcxproj.filters trunk/OpenMPT/build/vs2022win81/OpenMPT-UTF8.vcxproj trunk/OpenMPT/build/vs2022win81/OpenMPT-UTF8.vcxproj.filters trunk/OpenMPT/build/vs2022win81/OpenMPT.vcxproj trunk/OpenMPT/build/vs2022win81/OpenMPT.vcxproj.filters trunk/OpenMPT/build/vs2022win81/libopenmpt-small.vcxproj trunk/OpenMPT/build/vs2022win81/libopenmpt-small.vcxproj.filters trunk/OpenMPT/build/vs2022win81/libopenmpt.vcxproj trunk/OpenMPT/build/vs2022win81/libopenmpt.vcxproj.filters trunk/OpenMPT/build/vs2022win81/libopenmpt_test.vcxproj trunk/OpenMPT/build/vs2022win81/libopenmpt_test.vcxproj.filters trunk/OpenMPT/build/vs2022win81/updatesigntool.vcxproj trunk/OpenMPT/build/vs2022win81/updatesigntool.vcxproj.filters trunk/OpenMPT/build/xcode-ios/libopenmpt.xcodeproj/project.pbxproj trunk/OpenMPT/build/xcode-macosx/libopenmpt.xcodeproj/project.pbxproj trunk/OpenMPT/common/BuildSettings.h trunk/OpenMPT/src/mpt/base/detect_compiler.hpp trunk/OpenMPT/src/mpt/base/detect_quirks.hpp trunk/OpenMPT/src/openmpt/all/BuildSettings.hpp Modified: trunk/OpenMPT/build/autotools/Makefile.am ============================================================================== --- trunk/OpenMPT/build/autotools/Makefile.am Sun Jul 14 16:02:32 2024 (r21172) +++ trunk/OpenMPT/build/autotools/Makefile.am Sun Jul 14 17:47:26 2024 (r21173) @@ -316,6 +316,7 @@ MPT_FILES_SRC_OPENMPT += src/openmpt/soundbase/SampleFormat.hpp MPT_FILES_COMMON = MPT_FILES_COMMON += common/BuildSettings.h +MPT_FILES_COMMON += common/BuildSettingsCompiler.h MPT_FILES_COMMON += common/ComponentManager.cpp MPT_FILES_COMMON += common/ComponentManager.h MPT_FILES_COMMON += common/Dither.h Modified: trunk/OpenMPT/build/vs2017winxp/OpenMPT-ANSI.vcxproj ============================================================================== --- trunk/OpenMPT/build/vs2017winxp/OpenMPT-ANSI.vcxproj Sun Jul 14 16:02:32 2024 (r21172) +++ trunk/OpenMPT/build/vs2017winxp/OpenMPT-ANSI.vcxproj Sun Jul 14 17:47:26 2024 (r21173) @@ -758,6 +758,7 @@ </ItemDefinitionGroup> <ItemGroup> <ClInclude Include="..\..\common\BuildSettings.h" /> + <ClInclude Include="..\..\common\BuildSettingsCompiler.h" /> <ClInclude Include="..\..\common\ComponentManager.h" /> <ClInclude Include="..\..\common\Dither.h" /> <ClInclude Include="..\..\common\FileReader.h" /> Modified: trunk/OpenMPT/build/vs2017winxp/OpenMPT-ANSI.vcxproj.filters ============================================================================== --- trunk/OpenMPT/build/vs2017winxp/OpenMPT-ANSI.vcxproj.filters Sun Jul 14 16:02:32 2024 (r21172) +++ trunk/OpenMPT/build/vs2017winxp/OpenMPT-ANSI.vcxproj.filters Sun Jul 14 17:47:26 2024 (r21173) @@ -225,6 +225,9 @@ <ClInclude Include="..\..\common\BuildSettings.h"> <Filter>common</Filter> </ClInclude> + <ClInclude Include="..\..\common\BuildSettingsCompiler.h"> + <Filter>common</Filter> + </ClInclude> <ClInclude Include="..\..\common\ComponentManager.h"> <Filter>common</Filter> </ClInclude> Modified: trunk/OpenMPT/build/vs2017winxp/OpenMPT-NativeSupport.vcxproj ============================================================================== --- trunk/OpenMPT/build/vs2017winxp/OpenMPT-NativeSupport.vcxproj Sun Jul 14 16:02:32 2024 (r21172) +++ trunk/OpenMPT/build/vs2017winxp/OpenMPT-NativeSupport.vcxproj Sun Jul 14 17:47:26 2024 (r21173) @@ -638,6 +638,7 @@ </ItemDefinitionGroup> <ItemGroup> <ClInclude Include="..\..\common\BuildSettings.h" /> + <ClInclude Include="..\..\common\BuildSettingsCompiler.h" /> <ClInclude Include="..\..\common\ComponentManager.h" /> <ClInclude Include="..\..\common\Dither.h" /> <ClInclude Include="..\..\common\FileReader.h" /> Modified: trunk/OpenMPT/build/vs2017winxp/OpenMPT-NativeSupport.vcxproj.filters ============================================================================== --- trunk/OpenMPT/build/vs2017winxp/OpenMPT-NativeSupport.vcxproj.filters Sun Jul 14 16:02:32 2024 (r21172) +++ trunk/OpenMPT/build/vs2017winxp/OpenMPT-NativeSupport.vcxproj.filters Sun Jul 14 17:47:26 2024 (r21173) @@ -186,6 +186,9 @@ <ClInclude Include="..\..\common\BuildSettings.h"> <Filter>common</Filter> </ClInclude> + <ClInclude Include="..\..\common\BuildSettingsCompiler.h"> + <Filter>common</Filter> + </ClInclude> <ClInclude Include="..\..\common\ComponentManager.h"> <Filter>common</Filter> </ClInclude> Modified: trunk/OpenMPT/build/vs2017winxp/OpenMPT-UTF8.vcxproj ============================================================================== --- trunk/OpenMPT/build/vs2017winxp/OpenMPT-UTF8.vcxproj Sun Jul 14 16:02:32 2024 (r21172) +++ trunk/OpenMPT/build/vs2017winxp/OpenMPT-UTF8.vcxproj Sun Jul 14 17:47:26 2024 (r21173) @@ -758,6 +758,7 @@ </ItemDefinitionGroup> <ItemGroup> <ClInclude Include="..\..\common\BuildSettings.h" /> + <ClInclude Include="..\..\common\BuildSettingsCompiler.h" /> <ClInclude Include="..\..\common\ComponentManager.h" /> <ClInclude Include="..\..\common\Dither.h" /> <ClInclude Include="..\..\common\FileReader.h" /> Modified: trunk/OpenMPT/build/vs2017winxp/OpenMPT-UTF8.vcxproj.filters ============================================================================== --- trunk/OpenMPT/build/vs2017winxp/OpenMPT-UTF8.vcxproj.filters Sun Jul 14 16:02:32 2024 (r21172) +++ trunk/OpenMPT/build/vs2017winxp/OpenMPT-UTF8.vcxproj.filters Sun Jul 14 17:47:26 2024 (r21173) @@ -225,6 +225,9 @@ <ClInclude Include="..\..\common\BuildSettings.h"> <Filter>common</Filter> </ClInclude> + <ClInclude Include="..\..\common\BuildSettingsCompiler.h"> + <Filter>common</Filter> + </ClInclude> <ClInclude Include="..\..\common\ComponentManager.h"> <Filter>common</Filter> </ClInclude> Modified: trunk/OpenMPT/build/vs2017winxp/OpenMPT.vcxproj ============================================================================== --- trunk/OpenMPT/build/vs2017winxp/OpenMPT.vcxproj Sun Jul 14 16:02:32 2024 (r21172) +++ trunk/OpenMPT/build/vs2017winxp/OpenMPT.vcxproj Sun Jul 14 17:47:26 2024 (r21173) @@ -758,6 +758,7 @@ </ItemDefinitionGroup> <ItemGroup> <ClInclude Include="..\..\common\BuildSettings.h" /> + <ClInclude Include="..\..\common\BuildSettingsCompiler.h" /> <ClInclude Include="..\..\common\ComponentManager.h" /> <ClInclude Include="..\..\common\Dither.h" /> <ClInclude Include="..\..\common\FileReader.h" /> Modified: trunk/OpenMPT/build/vs2017winxp/OpenMPT.vcxproj.filters ============================================================================== --- trunk/OpenMPT/build/vs2017winxp/OpenMPT.vcxproj.filters Sun Jul 14 16:02:32 2024 (r21172) +++ trunk/OpenMPT/build/vs2017winxp/OpenMPT.vcxproj.filters Sun Jul 14 17:47:26 2024 (r21173) @@ -225,6 +225,9 @@ <ClInclude Include="..\..\common\BuildSettings.h"> <Filter>common</Filter> </ClInclude> + <ClInclude Include="..\..\common\BuildSettingsCompiler.h"> + <Filter>common</Filter> + </ClInclude> <ClInclude Include="..\..\common\ComponentManager.h"> <Filter>common</Filter> </ClInclude> Modified: trunk/OpenMPT/build/vs2017winxp/libopenmpt-small.vcxproj ============================================================================== --- trunk/OpenMPT/build/vs2017winxp/libopenmpt-small.vcxproj Sun Jul 14 16:02:32 2024 (r21172) +++ trunk/OpenMPT/build/vs2017winxp/libopenmpt-small.vcxproj Sun Jul 14 17:47:26 2024 (r21173) @@ -644,6 +644,7 @@ </ItemDefinitionGroup> <ItemGroup> <ClInclude Include="..\..\common\BuildSettings.h" /> + <ClInclude Include="..\..\common\BuildSettingsCompiler.h" /> <ClInclude Include="..\..\common\ComponentManager.h" /> <ClInclude Include="..\..\common\Dither.h" /> <ClInclude Include="..\..\common\FileReader.h" /> Modified: trunk/OpenMPT/build/vs2017winxp/libopenmpt-small.vcxproj.filters ============================================================================== --- trunk/OpenMPT/build/vs2017winxp/libopenmpt-small.vcxproj.filters Sun Jul 14 16:02:32 2024 (r21172) +++ trunk/OpenMPT/build/vs2017winxp/libopenmpt-small.vcxproj.filters Sun Jul 14 17:47:26 2024 (r21173) @@ -165,6 +165,9 @@ <ClInclude Include="..\..\common\BuildSettings.h"> <Filter>common</Filter> </ClInclude> + <ClInclude Include="..\..\common\BuildSettingsCompiler.h"> + <Filter>common</Filter> + </ClInclude> <ClInclude Include="..\..\common\ComponentManager.h"> <Filter>common</Filter> </ClInclude> Modified: trunk/OpenMPT/build/vs2017winxp/libopenmpt.vcxproj ============================================================================== --- trunk/OpenMPT/build/vs2017winxp/libopenmpt.vcxproj Sun Jul 14 16:02:32 2024 (r21172) +++ trunk/OpenMPT/build/vs2017winxp/libopenmpt.vcxproj Sun Jul 14 17:47:26 2024 (r21173) @@ -644,6 +644,7 @@ </ItemDefinitionGroup> <ItemGroup> <ClInclude Include="..\..\common\BuildSettings.h" /> + <ClInclude Include="..\..\common\BuildSettingsCompiler.h" /> <ClInclude Include="..\..\common\ComponentManager.h" /> <ClInclude Include="..\..\common\Dither.h" /> <ClInclude Include="..\..\common\FileReader.h" /> Modified: trunk/OpenMPT/build/vs2017winxp/libopenmpt.vcxproj.filters ============================================================================== --- trunk/OpenMPT/build/vs2017winxp/libopenmpt.vcxproj.filters Sun Jul 14 16:02:32 2024 (r21172) +++ trunk/OpenMPT/build/vs2017winxp/libopenmpt.vcxproj.filters Sun Jul 14 17:47:26 2024 (r21173) @@ -165,6 +165,9 @@ <ClInclude Include="..\..\common\BuildSettings.h"> <Filter>common</Filter> </ClInclude> + <ClInclude Include="..\..\common\BuildSettingsCompiler.h"> + <Filter>common</Filter> + </ClInclude> <ClInclude Include="..\..\common\ComponentManager.h"> <Filter>common</Filter> </ClInclude> Modified: trunk/OpenMPT/build/vs2017winxp/libopenmpt_test.vcxproj ============================================================================== --- trunk/OpenMPT/build/vs2017winxp/libopenmpt_test.vcxproj Sun Jul 14 16:02:32 2024 (r21172) +++ trunk/OpenMPT/build/vs2017winxp/libopenmpt_test.vcxproj Sun Jul 14 17:47:26 2024 (r21173) @@ -674,6 +674,7 @@ </ItemDefinitionGroup> <ItemGroup> <ClInclude Include="..\..\common\BuildSettings.h" /> + <ClInclude Include="..\..\common\BuildSettingsCompiler.h" /> <ClInclude Include="..\..\common\ComponentManager.h" /> <ClInclude Include="..\..\common\Dither.h" /> <ClInclude Include="..\..\common\FileReader.h" /> Modified: trunk/OpenMPT/build/vs2017winxp/libopenmpt_test.vcxproj.filters ============================================================================== --- trunk/OpenMPT/build/vs2017winxp/libopenmpt_test.vcxproj.filters Sun Jul 14 16:02:32 2024 (r21172) +++ trunk/OpenMPT/build/vs2017winxp/libopenmpt_test.vcxproj.filters Sun Jul 14 17:47:26 2024 (r21173) @@ -177,6 +177,9 @@ <ClInclude Include="..\..\common\BuildSettings.h"> <Filter>common</Filter> </ClInclude> + <ClInclude Include="..\..\common\BuildSettingsCompiler.h"> + <Filter>common</Filter> + </ClInclude> <ClInclude Include="..\..\common\ComponentManager.h"> <Filter>common</Filter> </ClInclude> Modified: trunk/OpenMPT/build/vs2017winxp/updatesigntool.vcxproj ============================================================================== --- trunk/OpenMPT/build/vs2017winxp/updatesigntool.vcxproj Sun Jul 14 16:02:32 2024 (r21172) +++ trunk/OpenMPT/build/vs2017winxp/updatesigntool.vcxproj Sun Jul 14 17:47:26 2024 (r21173) @@ -626,6 +626,7 @@ </ItemDefinitionGroup> <ItemGroup> <ClInclude Include="..\..\common\BuildSettings.h" /> + <ClInclude Include="..\..\common\BuildSettingsCompiler.h" /> <ClInclude Include="..\..\common\ComponentManager.h" /> <ClInclude Include="..\..\common\Dither.h" /> <ClInclude Include="..\..\common\FileReader.h" /> Modified: trunk/OpenMPT/build/vs2017winxp/updatesigntool.vcxproj.filters ============================================================================== --- trunk/OpenMPT/build/vs2017winxp/updatesigntool.vcxproj.filters Sun Jul 14 16:02:32 2024 (r21172) +++ trunk/OpenMPT/build/vs2017winxp/updatesigntool.vcxproj.filters Sun Jul 14 17:47:26 2024 (r21173) @@ -183,6 +183,9 @@ <ClInclude Include="..\..\common\BuildSettings.h"> <Filter>common</Filter> </ClInclude> + <ClInclude Include="..\..\common\BuildSettingsCompiler.h"> + <Filter>common</Filter> + </ClInclude> <ClInclude Include="..\..\common\ComponentManager.h"> <Filter>common</Filter> </ClInclude> Modified: trunk/OpenMPT/build/vs2017winxpansi/OpenMPT-ANSI.vcxproj ============================================================================== --- trunk/OpenMPT/build/vs2017winxpansi/OpenMPT-ANSI.vcxproj Sun Jul 14 16:02:32 2024 (r21172) +++ trunk/OpenMPT/build/vs2017winxpansi/OpenMPT-ANSI.vcxproj Sun Jul 14 17:47:26 2024 (r21173) @@ -758,6 +758,7 @@ </ItemDefinitionGroup> <ItemGroup> <ClInclude Include="..\..\common\BuildSettings.h" /> + <ClInclude Include="..\..\common\BuildSettingsCompiler.h" /> <ClInclude Include="..\..\common\ComponentManager.h" /> <ClInclude Include="..\..\common\Dither.h" /> <ClInclude Include="..\..\common\FileReader.h" /> Modified: trunk/OpenMPT/build/vs2017winxpansi/OpenMPT-ANSI.vcxproj.filters ============================================================================== --- trunk/OpenMPT/build/vs2017winxpansi/OpenMPT-ANSI.vcxproj.filters Sun Jul 14 16:02:32 2024 (r21172) +++ trunk/OpenMPT/build/vs2017winxpansi/OpenMPT-ANSI.vcxproj.filters Sun Jul 14 17:47:26 2024 (r21173) @@ -225,6 +225,9 @@ <ClInclude Include="..\..\common\BuildSettings.h"> <Filter>common</Filter> </ClInclude> + <ClInclude Include="..\..\common\BuildSettingsCompiler.h"> + <Filter>common</Filter> + </ClInclude> <ClInclude Include="..\..\common\ComponentManager.h"> <Filter>common</Filter> </ClInclude> Modified: trunk/OpenMPT/build/vs2017winxpansi/OpenMPT-NativeSupport.vcxproj ============================================================================== --- trunk/OpenMPT/build/vs2017winxpansi/OpenMPT-NativeSupport.vcxproj Sun Jul 14 16:02:32 2024 (r21172) +++ trunk/OpenMPT/build/vs2017winxpansi/OpenMPT-NativeSupport.vcxproj Sun Jul 14 17:47:26 2024 (r21173) @@ -638,6 +638,7 @@ </ItemDefinitionGroup> <ItemGroup> <ClInclude Include="..\..\common\BuildSettings.h" /> + <ClInclude Include="..\..\common\BuildSettingsCompiler.h" /> <ClInclude Include="..\..\common\ComponentManager.h" /> <ClInclude Include="..\..\common\Dither.h" /> <ClInclude Include="..\..\common\FileReader.h" /> Modified: trunk/OpenMPT/build/vs2017winxpansi/OpenMPT-NativeSupport.vcxproj.filters ============================================================================== --- trunk/OpenMPT/build/vs2017winxpansi/OpenMPT-NativeSupport.vcxproj.filters Sun Jul 14 16:02:32 2024 (r21172) +++ trunk/OpenMPT/build/vs2017winxpansi/OpenMPT-NativeSupport.vcxproj.filters Sun Jul 14 17:47:26 2024 (r21173) @@ -186,6 +186,9 @@ <ClInclude Include="..\..\common\BuildSettings.h"> <Filter>common</Filter> </ClInclude> + <ClInclude Include="..\..\common\BuildSettingsCompiler.h"> + <Filter>common</Filter> + </ClInclude> <ClInclude Include="..\..\common\ComponentManager.h"> <Filter>common</Filter> </ClInclude> Modified: trunk/OpenMPT/build/vs2017winxpansi/OpenMPT-UTF8.vcxproj ============================================================================== --- trunk/OpenMPT/build/vs2017winxpansi/OpenMPT-UTF8.vcxproj Sun Jul 14 16:02:32 2024 (r21172) +++ trunk/OpenMPT/build/vs2017winxpansi/OpenMPT-UTF8.vcxproj Sun Jul 14 17:47:26 2024 (r21173) @@ -758,6 +758,7 @@ </ItemDefinitionGroup> <ItemGroup> <ClInclude Include="..\..\common\BuildSettings.h" /> + <ClInclude Include="..\..\common\BuildSettingsCompiler.h" /> <ClInclude Include="..\..\common\ComponentManager.h" /> <ClInclude Include="..\..\common\Dither.h" /> <ClInclude Include="..\..\common\FileReader.h" /> Modified: trunk/OpenMPT/build/vs2017winxpansi/OpenMPT-UTF8.vcxproj.filters ============================================================================== --- trunk/OpenMPT/build/vs2017winxpansi/OpenMPT-UTF8.vcxproj.filters Sun Jul 14 16:02:32 2024 (r21172) +++ trunk/OpenMPT/build/vs2017winxpansi/OpenMPT-UTF8.vcxproj.filters Sun Jul 14 17:47:26 2024 (r21173) @@ -225,6 +225,9 @@ <ClInclude Include="..\..\common\BuildSettings.h"> <Filter>common</Filter> </ClInclude> + <ClInclude Include="..\..\common\BuildSettingsCompiler.h"> + <Filter>common</Filter> + </ClInclude> <ClInclude Include="..\..\common\ComponentManager.h"> <Filter>common</Filter> </ClInclude> Modified: trunk/OpenMPT/build/vs2017winxpansi/OpenMPT.vcxproj ============================================================================== --- trunk/OpenMPT/build/vs2017winxpansi/OpenMPT.vcxproj Sun Jul 14 16:02:32 2024 (r21172) +++ trunk/OpenMPT/build/vs2017winxpansi/OpenMPT.vcxproj Sun Jul 14 17:47:26 2024 (r21173) @@ -758,6 +758,7 @@ </ItemDefinitionGroup> <ItemGroup> <ClInclude Include="..\..\common\BuildSettings.h" /> + <ClInclude Include="..\..\common\BuildSettingsCompiler.h" /> <ClInclude Include="..\..\common\ComponentManager.h" /> <ClInclude Include="..\..\common\Dither.h" /> <ClInclude Include="..\..\common\FileReader.h" /> Modified: trunk/OpenMPT/build/vs2017winxpansi/OpenMPT.vcxproj.filters ============================================================================== --- trunk/OpenMPT/build/vs2017winxpansi/OpenMPT.vcxproj.filters Sun Jul 14 16:02:32 2024 (r21172) +++ trunk/OpenMPT/build/vs2017winxpansi/OpenMPT.vcxproj.filters Sun Jul 14 17:47:26 2024 (r21173) @@ -225,6 +225,9 @@ <ClInclude Include="..\..\common\BuildSettings.h"> <Filter>common</Filter> </ClInclude> + <ClInclude Include="..\..\common\BuildSettingsCompiler.h"> + <Filter>common</Filter> + </ClInclude> <ClInclude Include="..\..\common\ComponentManager.h"> <Filter>common</Filter> </ClInclude> Modified: trunk/OpenMPT/build/vs2017winxpansi/libopenmpt-small.vcxproj ============================================================================== --- trunk/OpenMPT/build/vs2017winxpansi/libopenmpt-small.vcxproj Sun Jul 14 16:02:32 2024 (r21172) +++ trunk/OpenMPT/build/vs2017winxpansi/libopenmpt-small.vcxproj Sun Jul 14 17:47:26 2024 (r21173) @@ -644,6 +644,7 @@ </ItemDefinitionGroup> <ItemGroup> <ClInclude Include="..\..\common\BuildSettings.h" /> + <ClInclude Include="..\..\common\BuildSettingsCompiler.h" /> <ClInclude Include="..\..\common\ComponentManager.h" /> <ClInclude Include="..\..\common\Dither.h" /> <ClInclude Include="..\..\common\FileReader.h" /> Modified: trunk/OpenMPT/build/vs2017winxpansi/libopenmpt-small.vcxproj.filters ============================================================================== --- trunk/OpenMPT/build/vs2017winxpansi/libopenmpt-small.vcxproj.filters Sun Jul 14 16:02:32 2024 (r21172) +++ trunk/OpenMPT/build/vs2017winxpansi/libopenmpt-small.vcxproj.filters Sun Jul 14 17:47:26 2024 (r21173) @@ -165,6 +165,9 @@ <ClInclude Include="..\..\common\BuildSettings.h"> <Filter>common</Filter> </ClInclude> + <ClInclude Include="..\..\common\BuildSettingsCompiler.h"> + <Filter>common</Filter> + </ClInclude> <ClInclude Include="..\..\common\ComponentManager.h"> <Filter>common</Filter> </ClInclude> Modified: trunk/OpenMPT/build/vs2017winxpansi/libopenmpt.vcxproj ============================================================================== --- trunk/OpenMPT/build/vs2017winxpansi/libopenmpt.vcxproj Sun Jul 14 16:02:32 2024 (r21172) +++ trunk/OpenMPT/build/vs2017winxpansi/libopenmpt.vcxproj Sun Jul 14 17:47:26 2024 (r21173) @@ -644,6 +644,7 @@ </ItemDefinitionGroup> <ItemGroup> <ClInclude Include="..\..\common\BuildSettings.h" /> + <ClInclude Include="..\..\common\BuildSettingsCompiler.h" /> <ClInclude Include="..\..\common\ComponentManager.h" /> <ClInclude Include="..\..\common\Dither.h" /> <ClInclude Include="..\..\common\FileReader.h" /> Modified: trunk/OpenMPT/build/vs2017winxpansi/libopenmpt.vcxproj.filters ============================================================================== --- trunk/OpenMPT/build/vs2017winxpansi/libopenmpt.vcxproj.filters Sun Jul 14 16:02:32 2024 (r21172) +++ trunk/OpenMPT/build/vs2017winxpansi/libopenmpt.vcxproj.filters Sun Jul 14 17:47:26 2024 (r21173) @@ -165,6 +165,9 @@ <ClInclude Include="..\..\common\BuildSettings.h"> <Filter>common</Filter> </ClInclude> + <ClInclude Include="..\..\common\BuildSettingsCompiler.h"> + <Filter>common</Filter> + </ClInclude> <ClInclude Include="..\..\common\ComponentManager.h"> <Filter>common</Filter> </ClInclude> Modified: trunk/OpenMPT/build/vs2017winxpansi/libopenmpt_test.vcxproj ============================================================================== --- trunk/OpenMPT/build/vs2017winxpansi/libopenmpt_test.vcxproj Sun Jul 14 16:02:32 2024 (r21172) +++ trunk/OpenMPT/build/vs2017winxpansi/libopenmpt_test.vcxproj Sun Jul 14 17:47:26 2024 (r21173) @@ -674,6 +674,7 @@ </ItemDefinitionGroup> <ItemGroup> <ClInclude Include="..\..\common\BuildSettings.h" /> + <ClInclude Include="..\..\common\BuildSettingsCompiler.h" /> <ClInclude Include="..\..\common\ComponentManager.h" /> <ClInclude Include="..\..\common\Dither.h" /> <ClInclude Include="..\..\common\FileReader.h" /> Modified: trunk/OpenMPT/build/vs2017winxpansi/libopenmpt_test.vcxproj.filters ============================================================================== --- trunk/OpenMPT/build/vs2017winxpansi/libopenmpt_test.vcxproj.filters Sun Jul 14 16:02:32 2024 (r21172) +++ trunk/OpenMPT/build/vs2017winxpansi/libopenmpt_test.vcxproj.filters Sun Jul 14 17:47:26 2024 (r21173) @@ -177,6 +177,9 @@ <ClInclude Include="..\..\common\BuildSettings.h"> <Filter>common</Filter> </ClInclude> + <ClInclude Include="..\..\common\BuildSettingsCompiler.h"> + <Filter>common</Filter> + </ClInclude> <ClInclude Include="..\..\common\ComponentManager.h"> <Filter>common</Filter> </ClInclude> Modified: trunk/OpenMPT/build/vs2017winxpansi/updatesigntool.vcxproj ============================================================================== --- trunk/OpenMPT/build/vs2017winxpansi/updatesigntool.vcxproj Sun Jul 14 16:02:32 2024 (r21172) +++ trunk/OpenMPT/build/vs2017winxpansi/updatesigntool.vcxproj Sun Jul 14 17:47:26 2024 (r21173) @@ -626,6 +626,7 @@ </ItemDefinitionGroup> <ItemGroup> <ClInclude Include="..\..\common\BuildSettings.h" /> + <ClInclude Include="..\..\common\BuildSettingsCompiler.h" /> <ClInclude Include="..\..\common\ComponentManager.h" /> <ClInclude Include="..\..\common\Dither.h" /> <ClInclude Include="..\..\common\FileReader.h" /> Modified: trunk/OpenMPT/build/vs2017winxpansi/updatesigntool.vcxproj.filters ============================================================================== --- trunk/OpenMPT/build/vs2017winxpansi/updatesigntool.vcxproj.filters Sun Jul 14 16:02:32 2024 (r21172) +++ trunk/OpenMPT/build/vs2017winxpansi/updatesigntool.vcxproj.filters Sun Jul 14 17:47:26 2024 (r21173) @@ -183,6 +183,9 @@ <ClInclude Include="..\..\common\BuildSettings.h"> <Filter>common</Filter> </ClInclude> + <ClInclude Include="..\..\common\BuildSettingsCompiler.h"> + <Filter>common</Filter> + </ClInclude> <ClInclude Include="..\..\common\ComponentManager.h"> <Filter>common</Filter> </ClInclude> Modified: trunk/OpenMPT/build/vs2019win10/OpenMPT-ANSI.vcxproj ============================================================================== --- trunk/OpenMPT/build/vs2019win10/OpenMPT-ANSI.vcxproj Sun Jul 14 16:02:32 2024 (r21172) +++ trunk/OpenMPT/build/vs2019win10/OpenMPT-ANSI.vcxproj Sun Jul 14 17:47:26 2024 (r21173) @@ -1523,6 +1523,7 @@ </ItemDefinitionGroup> <ItemGroup> <ClInclude Include="..\..\common\BuildSettings.h" /> + <ClInclude Include="..\..\common\BuildSettingsCompiler.h" /> <ClInclude Include="..\..\common\ComponentManager.h" /> <ClInclude Include="..\..\common\Dither.h" /> <ClInclude Include="..\..\common\FileReader.h" /> Modified: trunk/OpenMPT/build/vs2019win10/OpenMPT-ANSI.vcxproj.filters ============================================================================== --- trunk/OpenMPT/build/vs2019win10/OpenMPT-ANSI.vcxproj.filters Sun Jul 14 16:02:32 2024 (r21172) +++ trunk/OpenMPT/build/vs2019win10/OpenMPT-ANSI.vcxproj.filters Sun Jul 14 17:47:26 2024 (r21173) @@ -237,6 +237,9 @@ <ClInclude Include="..\..\common\BuildSettings.h"> <Filter>common</Filter> </ClInclude> + <ClInclude Include="..\..\common\BuildSettingsCompiler.h"> + <Filter>common</Filter> + </ClInclude> <ClInclude Include="..\..\common\ComponentManager.h"> <Filter>common</Filter> </ClInclude> Modified: trunk/OpenMPT/build/vs2019win10/OpenMPT-NativeSupport.vcxproj ============================================================================== --- trunk/OpenMPT/build/vs2019win10/OpenMPT-NativeSupport.vcxproj Sun Jul 14 16:02:32 2024 (r21172) +++ trunk/OpenMPT/build/vs2019win10/OpenMPT-NativeSupport.vcxproj Sun Jul 14 17:47:26 2024 (r21173) @@ -1259,6 +1259,7 @@ </ItemDefinitionGroup> <ItemGroup> <ClInclude Include="..\..\common\BuildSettings.h" /> + <ClInclude Include="..\..\common\BuildSettingsCompiler.h" /> <ClInclude Include="..\..\common\ComponentManager.h" /> <ClInclude Include="..\..\common\Dither.h" /> <ClInclude Include="..\..\common\FileReader.h" /> Modified: trunk/OpenMPT/build/vs2019win10/OpenMPT-NativeSupport.vcxproj.filters ============================================================================== --- trunk/OpenMPT/build/vs2019win10/OpenMPT-NativeSupport.vcxproj.filters Sun Jul 14 16:02:32 2024 (r21172) +++ trunk/OpenMPT/build/vs2019win10/OpenMPT-NativeSupport.vcxproj.filters Sun Jul 14 17:47:26 2024 (r21173) @@ -198,6 +198,9 @@ <ClInclude Include="..\..\common\BuildSettings.h"> <Filter>common</Filter> </ClInclude> + <ClInclude Include="..\..\common\BuildSettingsCompiler.h"> + <Filter>common</Filter> + </ClInclude> <ClInclude Include="..\..\common\ComponentManager.h"> <Filter>common</Filter> </ClInclude> Modified: trunk/OpenMPT/build/vs2019win10/OpenMPT-UTF8.vcxproj ============================================================================== --- trunk/OpenMPT/build/vs2019win10/OpenMPT-UTF8.vcxproj Sun Jul 14 16:02:32 2024 (r21172) +++ trunk/OpenMPT/build/vs2019win10/OpenMPT-UTF8.vcxproj Sun Jul 14 17:47:26 2024 (r21173) @@ -1523,6 +1523,7 @@ </ItemDefinitionGroup> <ItemGroup> <ClInclude Include="..\..\common\BuildSettings.h" /> + <ClInclude Include="..\..\common\BuildSettingsCompiler.h" /> <ClInclude Include="..\..\common\ComponentManager.h" /> <ClInclude Include="..\..\common\Dither.h" /> <ClInclude Include="..\..\common\FileReader.h" /> Modified: trunk/OpenMPT/build/vs2019win10/OpenMPT-UTF8.vcxproj.filters ============================================================================== --- trunk/OpenMPT/build/vs2019win10/OpenMPT-UTF8.vcxproj.filters Sun Jul 14 16:02:32 2024 (r21172) +++ trunk/OpenMPT/build/vs2019win10/OpenMPT-UTF8.vcxproj.filters Sun Jul 14 17:47:26 2024 (r21173) @@ -237,6 +237,9 @@ <ClInclude Include="..\..\common\BuildSettings.h"> <Filter>common</Filter> </ClInclude> + <ClInclude Include="..\..\common\BuildSettingsCompiler.h"> + <Filter>common</Filter> + </ClInclude> <ClInclude Include="..\..\common\ComponentManager.h"> <Filter>common</Filter> </ClInclude> Modified: trunk/OpenMPT/build/vs2019win10/OpenMPT.vcxproj ============================================================================== --- trunk/OpenMPT/build/vs2019win10/OpenMPT.vcxproj Sun Jul 14 16:02:32 2024 (r21172) +++ trunk/OpenMPT/build/vs2019win10/OpenMPT.vcxproj Sun Jul 14 17:47:26 2024 (r21173) @@ -1523,6 +1523,7 @@ </ItemDefinitionGroup> <ItemGroup> <ClInclude Include="..\..\common\BuildSettings.h" /> + <ClInclude Include="..\..\common\BuildSettingsCompiler.h" /> <ClInclude Include="..\..\common\ComponentManager.h" /> <ClInclude Include="..\..\common\Dither.h" /> <ClInclude Include="..\..\common\FileReader.h" /> Modified: trunk/OpenMPT/build/vs2019win10/OpenMPT.vcxproj.filters ============================================================================== --- trunk/OpenMPT/build/vs2019win10/OpenMPT.vcxproj.filters Sun Jul 14 16:02:32 2024 (r21172) +++ trunk/OpenMPT/build/vs2019win10/OpenMPT.vcxproj.filters Sun Jul 14 17:47:26 2024 (r21173) @@ -237,6 +237,9 @@ <ClInclude Include="..\..\common\BuildSettings.h"> <Filter>common</Filter> </ClInclude> + <ClInclude Include="..\..\common\BuildSettingsCompiler.h"> + <Filter>common</Filter> + </ClInclude> <ClInclude Include="..\..\common\ComponentManager.h"> <Filter>common</Filter> </ClInclude> Modified: trunk/OpenMPT/build/vs2019win10/libopenmpt-small.vcxproj ============================================================================== --- trunk/OpenMPT/build/vs2019win10/libopenmpt-small.vcxproj Sun Jul 14 16:02:32 2024 (r21172) +++ trunk/OpenMPT/build/vs2019win10/libopenmpt-small.vcxproj Sun Jul 14 17:47:26 2024 (r21173) @@ -1271,6 +1271,7 @@ </ItemDefinitionGroup> <ItemGroup> <ClInclude Include="..\..\common\BuildSettings.h" /> + <ClInclude Include="..\..\common\BuildSettingsCompiler.h" /> <ClInclude Include="..\..\common\ComponentManager.h" /> <ClInclude Include="..\..\common\Dither.h" /> <ClInclude Include="..\..\common\FileReader.h" /> Modified: trunk/OpenMPT/build/vs2019win10/libopenmpt-small.vcxproj.filters ============================================================================== --- trunk/OpenMPT/build/vs2019win10/libopenmpt-small.vcxproj.filters Sun Jul 14 16:02:32 2024 (r21172) +++ trunk/OpenMPT/build/vs2019win10/libopenmpt-small.vcxproj.filters Sun Jul 14 17:47:26 2024 (r21173) @@ -165,6 +165,9 @@ <ClInclude Include="..\..\common\BuildSettings.h"> <Filter>common</Filter> </ClInclude> + <ClInclude Include="..\..\common\BuildSettingsCompiler.h"> + <Filter>common</Filter> + </ClInclude> <ClInclude Include="..\..\common\ComponentManager.h"> <Filter>common</Filter> </ClInclude> Modified: trunk/OpenMPT/build/vs2019win10/libopenmpt.vcxproj ============================================================================== --- trunk/OpenMPT/build/vs2019win10/libopenmpt.vcxproj Sun Jul 14 16:02:32 2024 (r21172) +++ trunk/OpenMPT/build/vs2019win10/libopenmpt.vcxproj Sun Jul 14 17:47:26 2024 (r21173) @@ -1271,6 +1271,7 @@ </ItemDefinitionGroup> <ItemGroup> <ClInclude Include="..\..\common\BuildSettings.h" /> + <ClInclude Include="..\..\common\BuildSettingsCompiler.h" /> <ClInclude Include="..\..\common\ComponentManager.h" /> <ClInclude Include="..\..\common\Dither.h" /> <ClInclude Include="..\..\common\FileReader.h" /> Modified: trunk/OpenMPT/build/vs2019win10/libopenmpt.vcxproj.filters ============================================================================== --- trunk/OpenMPT/build/vs2019win10/libopenmpt.vcxproj.filters Sun Jul 14 16:02:32 2024 (r21172) +++ trunk/OpenMPT/build/vs2019win10/libopenmpt.vcxproj.filters Sun Jul 14 17:47:26 2024 (r21173) @@ -165,6 +165,9 @@ <ClInclude Include="..\..\common\BuildSettings.h"> <Filter>common</Filter> </ClInclude> + <ClInclude Include="..\..\common\BuildSettingsCompiler.h"> + <Filter>common</Filter> + </ClInclude> <ClInclude Include="..\..\common\ComponentManager.h"> <Filter>common</Filter> </ClInclude> Modified: trunk/OpenMPT/build/vs2019win10/libopenmpt_test.vcxproj ============================================================================== --- trunk/OpenMPT/build/vs2019win10/libopenmpt_test.vcxproj Sun Jul 14 16:02:32 2024 (r21172) +++ trunk/OpenMPT/build/vs2019win10/libopenmpt_test.vcxproj Sun Jul 14 17:47:26 2024 (r21173) @@ -1331,6 +1331,7 @@ </ItemDefinitionGroup> <ItemGroup> <ClInclude Include="..\..\common\BuildSettings.h" /> + <ClInclude Include="..\..\common\BuildSettingsCompiler.h" /> <ClInclude Include="..\..\common\ComponentManager.h" /> <ClInclude Include="..\..\common\Dither.h" /> <ClInclude Include="..\..\common\FileReader.h" /> Modified: trunk/OpenMPT/build/vs2019win10/libopenmpt_test.vcxproj.filters ============================================================================== --- trunk/OpenMPT/build/vs2019win10/libopenmpt_test.vcxproj.filters Sun Jul 14 16:02:32 2024 (r21172) +++ trunk/OpenMPT/build/vs2019win10/libopenmpt_test.vcxproj.filters Sun Jul 14 17:47:26 2024 (r21173) @@ -183,6 +183,9 @@ <ClInclude Include="..\..\common\BuildSettings.h"> <Filter>common</Filter> </ClInclude> + <ClInclude Include="..\..\common\BuildSettingsCompiler.h"> + <Filter>common</Filter> + </ClInclude> <ClInclude Include="..\..\common\ComponentManager.h"> <Filter>common</Filter> </ClInclude> Modified: trunk/OpenMPT/build/vs2019win10/updatesigntool.vcxproj ============================================================================== --- trunk/OpenMPT/build/vs2019win10/updatesigntool.vcxproj Sun Jul 14 16:02:32 2024 (r21172) +++ trunk/OpenMPT/build/vs2019win10/updatesigntool.vcxproj Sun Jul 14 17:47:26 2024 (r21173) @@ -1307,6 +1307,7 @@ </ItemDefinitionGroup> <ItemGroup> <ClInclude Include="..\..\common\BuildSettings.h" /> + <ClInclude Include="..\..\common\BuildSettingsCompiler.h" /> <ClInclude Include="..\..\common\ComponentManager.h" /> <ClInclude Include="..\..\common\Dither.h" /> <ClInclude Include="..\..\common\FileReader.h" /> Modified: trunk/OpenMPT/build/vs2019win10/updatesigntool.vcxproj.filters ============================================================================== --- trunk/OpenMPT/build/vs2019win10/updatesigntool.vcxproj.filters Sun Jul 14 16:02:32 2024 (r21172) +++ trunk/OpenMPT/build/vs2019win10/updatesigntool.vcxproj.filters Sun Jul 14 17:47:26 2024 (r21173) @@ -189,6 +189,9 @@ <ClInclude Include="..\..\common\BuildSettings.h"> <Filter>common</Filter> </ClInclude> + <ClInclude Include="..\..\common\BuildSettingsCompiler.h"> + <Filter>common</Filter> + </ClInclude> <ClInclude Include="..\..\common\ComponentManager.h"> <Filter>common</Filter> </ClInclude> Modified: trunk/OpenMPT/build/vs2019win10uwp/libopenmpt-small.vcxproj ============================================================================== --- trunk/OpenMPT/build/vs2019win10uwp/libopenmpt-small.vcxproj Sun Jul 14 16:02:32 2024 (r21172) +++ trunk/OpenMPT/build/vs2019win10uwp/libopenmpt-small.vcxproj Sun Jul 14 17:47:26 2024 (r21173) @@ -1301,6 +1301,7 @@ </ItemDefinitionGroup> <ItemGroup> <ClInclude Include="..\..\common\BuildSettings.h" /> + <ClInclude Include="..\..\common\BuildSettingsCompiler.h" /> <ClInclude Include="..\..\common\ComponentManager.h" /> <ClInclude Include="..\..\common\Dither.h" /> <ClInclude Include="..\..\common\FileReader.h" /> Modified: trunk/OpenMPT/build/vs2019win10uwp/libopenmpt-small.vcxproj.filters ============================================================================== --- trunk/OpenMPT/build/vs2019win10uwp/libopenmpt-small.vcxproj.filters Sun Jul 14 16:02:32 2024 (r21172) +++ trunk/OpenMPT/build/vs2019win10uwp/libopenmpt-small.vcxproj.filters Sun Jul 14 17:47:26 2024 (r21173) @@ -165,6 +165,9 @@ <ClInclude Include="..\..\common\BuildSettings.h"> <Filter>common</Filter> </ClInclude> + <ClInclude Include="..\..\common\BuildSettingsCompiler.h"> + <Filter>common</Filter> + </ClInclude> <ClInclude Include="..\..\common\ComponentManager.h"> <Filter>common</Filter> </ClInclude> Modified: trunk/OpenMPT/build/vs2019win10uwp/libopenmpt.vcxproj ============================================================================== --- trunk/OpenMPT/build/vs2019win10uwp/libopenmpt.vcxproj Sun Jul 14 16:02:32 2024 (r21172) +++ trunk/OpenMPT/build/vs2019win10uwp/libopenmpt.vcxproj Sun Jul 14 17:47:26 2024 (r21173) @@ -1301,6 +1301,7 @@ </ItemDefinitionGroup> <ItemGroup> <ClInclude Include="..\..\common\BuildSettings.h" /> + <ClInclude Include="..\..\common\BuildSettingsCompiler.h" /> <ClInclude Include="..\..\common\ComponentManager.h" /> <ClInclude Include="..\..\common\Dither.h" /> <ClInclude Include="..\..\common\FileReader.h" /> Modified: trunk/OpenMPT/build/vs2019win10uwp/libopenmpt.vcxproj.filters ============================================================================== --- trunk/OpenMPT/build/vs2019win10uwp/libopenmpt.vcxproj.filters Sun Jul 14 16:02:32 2024 (r21172) +++ trunk/OpenMPT/build/vs2019win10uwp/libopenmpt.vcxproj.filters Sun Jul 14 17:47:26 2024 (r21173) @@ -165,6 +165,9 @@ <ClInclude Include="..\..\common\BuildSettings.h"> <Filter>common</Filter> </ClInclude> + <ClInclude Include="..\..\common\BuildSettingsCompiler.h"> + <Filter>common</Filter> + </ClInclude> <ClInclude Include="..\..\common\ComponentManager.h"> <Filter>common</Filter> </ClInclude> Modified: trunk/OpenMPT/build/vs2019win7/OpenMPT-ANSI.vcxproj ============================================================================== --- trunk/OpenMPT/build/vs2019win7/OpenMPT-ANSI.vcxproj Sun Jul 14 16:02:32 2024 (r21172) +++ trunk/OpenMPT/build/vs2019win7/OpenMPT-ANSI.vcxproj Sun Jul 14 17:47:26 2024 (r21173) @@ -767,6 +767,7 @@ </ItemDefinitionGroup> <ItemGroup> <ClInclude Include="..\..\common\BuildSettings.h" /> + <ClInclude Include="..\..\common\BuildSettingsCompiler.h" /> <ClInclude Include="..\..\common\ComponentManager.h" /> <ClInclude Include="..\..\common\Dither.h" /> <ClInclude Include="..\..\common\FileReader.h" /> Modified: trunk/OpenMPT/build/vs2019win7/OpenMPT-ANSI.vcxproj.filters ============================================================================== --- trunk/OpenMPT/build/vs2019win7/OpenMPT-ANSI.vcxproj.filters Sun Jul 14 16:02:32 2024 (r21172) +++ trunk/OpenMPT/build/vs2019win7/OpenMPT-ANSI.vcxproj.filters Sun Jul 14 17:47:26 2024 (r21173) @@ -237,6 +237,9 @@ <ClInclude Include="..\..\common\BuildSettings.h"> <Filter>common</Filter> </ClInclude> + <ClInclude Include="..\..\common\BuildSettingsCompiler.h"> + <Filter>common</Filter> + </ClInclude> <ClInclude Include="..\..\common\ComponentManager.h"> <Filter>common</Filter> </ClInclude> Modified: trunk/OpenMPT/build/vs2019win7/OpenMPT-NativeSupport.vcxproj ============================================================================== --- trunk/OpenMPT/build/vs2019win7/OpenMPT-NativeSupport.vcxproj Sun Jul 14 16:02:32 2024 (r21172) +++ trunk/OpenMPT/build/vs2019win7/OpenMPT-NativeSupport.vcxproj Sun Jul 14 17:47:26 2024 (r21173) @@ -635,6 +635,7 @@ </ItemDefinitionGroup> <ItemGroup> <ClInclude Include="..\..\common\BuildSettings.h" /> + <ClInclude Include="..\..\common\BuildSettingsCompiler.h" /> <ClInclude Include="..\..\common\ComponentManager.h" /> <ClInclude Include="..\..\common\Dither.h" /> <ClInclude Include="..\..\common\FileReader.h" /> Modified: trunk/OpenMPT/build/vs2019win7/OpenMPT-NativeSupport.vcxproj.filters ============================================================================== --- trunk/OpenMPT/build/vs2019win7/OpenMPT-NativeSupport.vcxproj.filters Sun Jul 14 16:02:32 2024 (r21172) +++ trunk/OpenMPT/build/vs2019win7/OpenMPT-NativeSupport.vcxproj.filters Sun Jul 14 17:47:26 2024 (r21173) @@ -198,6 +198,9 @@ <ClInclude Include="..\..\common\BuildSettings.h"> <Filter>common</Filter> </ClInclude> + <ClInclude Include="..\..\common\BuildSettingsCompiler.h"> + <Filter>common</Filter> + </ClInclude> <ClInclude Include="..\..\common\ComponentManager.h"> <Filter>common</Filter> </ClInclude> Modified: trunk/OpenMPT/build/vs2019win7/OpenMPT-UTF8.vcxproj ============================================================================== --- trunk/OpenMPT/build/vs2019win7/OpenMPT-UTF8.vcxproj Sun Jul 14 16:02:32 2024 (r21172) +++ trunk/OpenMPT/build/vs2019win7/OpenMPT-UTF8.vcxproj Sun Jul 14 17:47:26 2024 (r21173) @@ -767,6 +767,7 @@ </ItemDefinitionGroup> <ItemGroup> <ClInclude Include="..\..\common\BuildSettings.h" /> + <ClInclude Include="..\..\common\BuildSettingsCompiler.h" /> <ClInclude Include="..\..\common\ComponentManager.h" /> <ClInclude Include="..\..\common\Dither.h" /> <ClInclude Include="..\..\common\FileReader.h" /> Modified: trunk/OpenMPT/build/vs2019win7/OpenMPT-UTF8.vcxproj.filters ============================================================================== --- trunk/OpenMPT/build/vs2019win7/OpenMPT-UTF8.vcxproj.filters Sun Jul 14 16:02:32 2024 (r21172) +++ trunk/OpenMPT/build/vs2019win7/OpenMPT-UTF8.vcxproj.filters Sun Jul 14 17:47:26 2024 (r21173) @@ -237,6 +237,9 @@ <ClInclude Include="..\..\common\BuildSettings.h"> <Filter>common</Filter> </ClInclude> + <ClInclude Include="..\..\common\BuildSettingsCompiler.h"> + <Filter>common</Filter> + </ClInclude> <ClInclude Include="..\..\common\ComponentManager.h"> <Filter>common</Filter> </ClInclude> Modified: trunk/OpenMPT/build/vs2019win7/OpenMPT.vcxproj ============================================================================== --- trunk/OpenMPT/build/vs2019win7/OpenMPT.vcxproj Sun Jul 14 16:02:32 2024 (r21172) +++ trunk/OpenMPT/build/vs2019win7/OpenMPT.vcxproj Sun Jul 14 17:47:26 2024 (r21173) @@ -767,6 +767,7 @@ </ItemDefinitionGroup> <ItemGroup> <ClInclude Include="..\..\common\BuildSettings.h" /> + <ClInclude Include="..\..\common\BuildSettingsCompiler.h" /> <ClInclude Include="..\..\common\ComponentManager.h" /> <ClInclude Include="..\..\common\Dither.h" /> <ClInclude Include="..\..\common\FileReader.h" /> Modified: trunk/OpenMPT/build/vs2019win7/OpenMPT.vcxproj.filters ============================================================================== --- trunk/OpenMPT/build/vs2019win7/OpenMPT.vcxproj.filters Sun Jul 14 16:02:32 2024 (r21172) +++ trunk/OpenMPT/build/vs2019win7/OpenMPT.vcxproj.filters Sun Jul 14 17:47:26 2024 (r21173) @@ -237,6 +237,9 @@ <ClInclude Include="..\..\common\BuildSettings.h"> <Filter>common</Filter> </ClInclude> + <ClInclude Include="..\..\common\BuildSettingsCompiler.h"> + <Filter>common</Filter> + </ClInclude> <ClInclude Include="..\..\common\ComponentManager.h"> <Filter>common</Filter> </ClInclude> Modified: trunk/OpenMPT/build/vs2019win7/libopenmpt-small.vcxproj ============================================================================== --- trunk/OpenMPT/build/vs2019win7/libopenmpt-small.vcxproj Sun Jul 14 16:02:32 2024 (r21172) +++ trunk/OpenMPT/build/vs2019win7/libopenmpt-small.vcxproj Sun Jul 14 17:47:26 2024 (r21173) @@ -641,6 +641,7 @@ </ItemDefinitionGroup> <ItemGroup> <ClInclude Include="..\..\common\BuildSettings.h" /> + <ClInclude Include="..\..\common\BuildSettingsCompiler.h" /> <ClInclude Include="..\..\common\ComponentManager.h" /> <ClInclude Include="..\..\common\Dither.h" /> <ClInclude Include="..\..\common\FileReader.h" /> Modified: trunk/OpenMPT/build/vs2019win7/libopenmpt-small.vcxproj.filters ============================================================================== --- trunk/OpenMPT/build/vs2019win7/libopenmpt-small.vcxproj.filters Sun Jul 14 16:02:32 2024 (r21172) +++ trunk/OpenMPT/build/vs2019win7/libopenmpt-small.vcxproj.filters Sun Jul 14 17:47:26 2024 (r21173) @@ -165,6 +165,9 @@ <ClInclude Include="..\..\common\BuildSettings.h"> <Filter>common</Filter> </ClInclude> + <ClInclude Include="..\..\common\BuildSettingsCompiler.h"> + <Filter>common</Filter> + </ClInclude> <ClInclude Include="..\..\common\ComponentManager.h"> <Filter>common</Filter> </ClInclude> Modified: trunk/OpenMPT/build/vs2019win7/libopenmpt.vcxproj ============================================================================== --- trunk/OpenMPT/build/vs2019win7/libopenmpt.vcxproj Sun Jul 14 16:02:32 2024 (r21172) +++ trunk/OpenMPT/build/vs2019win7/libopenmpt.vcxproj Sun Jul 14 17:47:26 2024 (r21173) @@ -641,6 +641,7 @@ </ItemDefinitionGroup> <ItemGroup> <ClInclude Include="..\..\common\BuildSettings.h" /> + <ClInclude Include="..\..\common\BuildSettingsCompiler.h" /> <ClInclude Include="..\..\common\ComponentManager.h" /> <ClInclude Include="..\..\common\Dither.h" /> <ClInclude Include="..\..\common\FileReader.h" /> Modified: trunk/OpenMPT/build/vs2019win7/libopenmpt.vcxproj.filters ============================================================================== --- trunk/OpenMPT/build/vs2019win7/libopenmpt.vcxproj.filters Sun Jul 14 16:02:32 2024 (r21172) +++ trunk/OpenMPT/build/vs2019win7/libopenmpt.vcxproj.filters Sun Jul 14 17:47:26 2024 (r21173) @@ -165,6 +165,9 @@ <ClInclude Include="..\..\common\BuildSettings.h"> <Filter>common</Filter> </ClInclude> + <ClInclude Include="..\..\common\BuildSettingsCompiler.h"> + <Filter>common</Filter> + </ClInclude> <ClInclude Include="..\..\common\ComponentManager.h"> <Filter>common</Filter> </ClInclude> Modified: trunk/OpenMPT/build/vs2019win7/libopenmpt_test.vcxproj ============================================================================== --- trunk/OpenMPT/build/vs2019win7/libopenmpt_test.vcxproj Sun Jul 14 16:02:32 2024 (r21172) +++ trunk/OpenMPT/build/vs2019win7/libopenmpt_test.vcxproj Sun Jul 14 17:47:26 2024 (r21173) @@ -671,6 +671,7 @@ </ItemDefinitionGroup> <ItemGroup> <ClInclude Include="..\..\common\BuildSettings.h" /> + <ClInclude Include="..\..\common\BuildSettingsCompiler.h" /> <ClInclude Include="..\..\common\ComponentManager.h" /> <ClInclude Include="..\..\common\Dither.h" /> <ClInclude Include="..\..\common\FileReader.h" /> Modified: trunk/OpenMPT/build/vs2019win7/libopenmpt_test.vcxproj.filters ============================================================================== --- trunk/OpenMPT/build/vs2019win7/libopenmpt_test.vcxproj.filters Sun Jul 14 16:02:32 2024 (r21172) +++ trunk/OpenMPT/build/vs2019win7/libopenmpt_test.vcxproj.filters Sun Jul 14 17:47:26 2024 (r21173) @@ -183,6 +183,9 @@ <ClInclude Include="..\..\common\BuildSettings.h"> <Filter>common</Filter> </ClInclude> + <ClInclude Include="..\..\common\BuildSettingsCompiler.h"> + <Filter>common</Filter> + </ClInclude> <ClInclude Include="..\..\common\ComponentManager.h"> <Filter>common</Filter> </ClInclude> Modified: trunk/OpenMPT/build/vs2019win7/updatesigntool.vcxproj ============================================================================== --- trunk/OpenMPT/build/vs2019win7/updatesigntool.vcxproj Sun Jul 14 16:02:32 2024 (r21172) +++ trunk/OpenMPT/build/vs2019win7/updatesigntool.vcxproj Sun Jul 14 17:47:26 2024 (r21173) @@ -659,6 +659,7 @@ </ItemDefinitionGroup> <ItemGroup> <ClInclude Include="..\..\common\BuildSettings.h" /> + <ClInclude Include="..\..\common\BuildSettingsCompiler.h" /> <ClInclude Include="..\..\common\ComponentManager.h" /> <ClInclude Include="..\..\common\Dither.h" /> <ClInclude Include="..\..\common\FileReader.h" /> Modified: trunk/OpenMPT/build/vs2019win7/updatesigntool.vcxproj.filters ============================================================================== --- trunk/OpenMPT/build/vs2019win7/updatesigntool.vcxproj.filters Sun Jul 14 16:02:32 2024 (r21172) +++ trunk/OpenMPT/build/vs2019win7/updatesigntool.vcxproj.filters Sun Jul 14 17:47:26 2024 (r21173) @@ -189,6 +189,9 @@ <ClInclude Include="..\..\common\BuildSettings.h"> <Filter>common</Filter> </ClInclude> + <ClInclude Include="..\..\common\BuildSettingsCompiler.h"> + <Filter>common</Filter> + </ClInclude> <ClInclude Include="..\..\common\ComponentManager.h"> <Filter>common</Filter> </ClInclude> Modified: trunk/OpenMPT/build/vs2019win81/OpenMPT-ANSI.vcxproj ============================================================================== --- trunk/OpenMPT/build/vs2019win81/OpenMPT-ANSI.vcxproj Sun Jul 14 16:02:32 2024 (r21172) +++ trunk/OpenMPT/build/vs2019win81/OpenMPT-ANSI.vcxproj Sun Jul 14 17:47:26 2024 (r21173) @@ -767,6 +767,7 @@ </ItemDefinitionGroup> <ItemGroup> <ClInclude Include="..\..\common\BuildSettings.h" /> + <ClInclude Include="..\..\common\BuildSettingsCompiler.h" /> <ClInclude Include="..\..\common\ComponentManager.h" /> <ClInclude Include="..\..\common\Dither.h" /> <ClInclude Include="..\..\common\FileReader.h" /> Modified: trunk/OpenMPT/build/vs2019win81/OpenMPT-ANSI.vcxproj.filters ============================================================================== --- trunk/OpenMPT/build/vs2019win81/OpenMPT-ANSI.vcxproj.filters Sun Jul 14 16:02:32 2024 (r21172) +++ trunk/OpenMPT/build/vs2019win81/OpenMPT-ANSI.vcxproj.filters Sun Jul 14 17:47:26 2024 (r21173) @@ -237,6 +237,9 @@ <ClInclude Include="..\..\common\BuildSettings.h"> <Filter>common</Filter> </ClInclude> + <ClInclude Include="..\..\common\BuildSettingsCompiler.h"> + <Filter>common</Filter> + </ClInclude> <ClInclude Include="..\..\common\ComponentManager.h"> <Filter>common</Filter> </ClInclude> Modified: trunk/OpenMPT/build/vs2019win81/OpenMPT-NativeSupport.vcxproj ============================================================================== --- trunk/OpenMPT/build/vs2019win81/OpenMPT-NativeSupport.vcxproj Sun Jul 14 16:02:32 2024 (r21172) +++ trunk/OpenMPT/build/vs2019win81/OpenMPT-NativeSupport.vcxproj Sun Jul 14 17:47:26 2024 (r21173) @@ -635,6 +635,7 @@ </ItemDefinitionGroup> <ItemGroup> <ClInclude Include="..\..\common\BuildSettings.h" /> + <ClInclude Include="..\..\common\BuildSettingsCompiler.h" /> <ClInclude Include="..\..\common\ComponentManager.h" /> <ClInclude Include="..\..\common\Dither.h" /> <ClInclude Include="..\..\common\FileReader.h" /> Modified: trunk/OpenMPT/build/vs2019win81/OpenMPT-NativeSupport.vcxproj.filters ============================================================================== --- trunk/OpenMPT/build/vs2019win81/OpenMPT-NativeSupport.vcxproj.filters Sun Jul 14 16:02:32 2024 (r21172) +++ trunk/OpenMPT/build/vs2019win81/OpenMPT-NativeSupport.vcxproj.filters Sun Jul 14 17:47:26 2024 (r21173) @@ -198,6 +198,9 @@ <ClInclude Include="..\..\common\BuildSettings.h"> <F... [truncated message content] |
From: <sv...@op...> - 2024-07-14 14:02:44
|
Author: sagamusix Date: Sun Jul 14 16:02:32 2024 New Revision: 21172 URL: https://source.openmpt.org/browse/openmpt/?op=revision&rev=21172 Log: Merged revision(s) 21171 from trunk/OpenMPT: [Fix] xmp-openmpt: If there is only one subsong, set the song title to the "global" song title instead of the name of that subsong (https://www.un4seen.com/forum/?topic=15448.msg143239#msg143239). ........ Modified: branches/OpenMPT-1.31/ (props changed) branches/OpenMPT-1.31/libopenmpt/xmp-openmpt/xmp-openmpt.cpp Modified: branches/OpenMPT-1.31/libopenmpt/xmp-openmpt/xmp-openmpt.cpp ============================================================================== --- branches/OpenMPT-1.31/libopenmpt/xmp-openmpt/xmp-openmpt.cpp Sun Jul 14 16:01:33 2024 (r21171) +++ branches/OpenMPT-1.31/libopenmpt/xmp-openmpt/xmp-openmpt.cpp Sun Jul 14 16:02:32 2024 (r21172) @@ -715,7 +715,7 @@ for ( auto subsong_name = first_subsong; subsong_name != last_subsong; subsong_name++ ) { append_xmplay_tag( tags, "filetype", convert_to_native( StringUpperCase( mod.get_metadata( "type" ) ) ) ); - append_xmplay_tag( tags, "title", convert_to_native( ( subsong_name->empty() || subsong == -1 ) ? title : *subsong_name ) ); + append_xmplay_tag( tags, "title", convert_to_native( ( subsong_name->empty() || subsong == -1 || subsong_names.size() == 1 ) ? title : *subsong_name ) ); append_xmplay_tag( tags, "artist", convert_to_native( mod.get_metadata( "artist" ) ) ); append_xmplay_tag( tags, "album", convert_to_native( mod.get_metadata( "xmplay-album" ) ) ); // todo, libopenmpt does not support that append_xmplay_tag( tags, "date", convert_to_native( extract_date( mod ) ) ); |
From: <sv...@op...> - 2024-07-14 14:01:40
|
Author: sagamusix Date: Sun Jul 14 16:01:33 2024 New Revision: 21171 URL: https://source.openmpt.org/browse/openmpt/?op=revision&rev=21171 Log: [Fix] xmp-openmpt: If there is only one subsong, set the song title to the "global" song title instead of the name of that subsong (https://www.un4seen.com/forum/?topic=15448.msg143239#msg143239). Modified: trunk/OpenMPT/libopenmpt/xmp-openmpt/xmp-openmpt.cpp Modified: trunk/OpenMPT/libopenmpt/xmp-openmpt/xmp-openmpt.cpp ============================================================================== --- trunk/OpenMPT/libopenmpt/xmp-openmpt/xmp-openmpt.cpp Sun Jul 14 15:30:54 2024 (r21170) +++ trunk/OpenMPT/libopenmpt/xmp-openmpt/xmp-openmpt.cpp Sun Jul 14 16:01:33 2024 (r21171) @@ -756,7 +756,7 @@ for ( auto subsong_name = first_subsong; subsong_name != last_subsong; subsong_name++ ) { append_xmplay_tag( tags, "filetype", convert_to_native( StringUpperCase( mod.get_metadata( "type" ) ) ) ); - append_xmplay_tag( tags, "title", convert_to_native( ( subsong_name->empty() || subsong == -1 ) ? title : *subsong_name ) ); + append_xmplay_tag( tags, "title", convert_to_native( ( subsong_name->empty() || subsong == -1 || subsong_names.size() == 1 ) ? title : *subsong_name ) ); append_xmplay_tag( tags, "artist", convert_to_native( mod.get_metadata( "artist" ) ) ); append_xmplay_tag( tags, "album", convert_to_native( mod.get_metadata( "xmplay-album" ) ) ); // todo, libopenmpt does not support that append_xmplay_tag( tags, "date", convert_to_native( extract_date( mod ) ) ); |
From: <sv...@op...> - 2024-07-14 13:31:07
|
Author: sagamusix Date: Sun Jul 14 15:30:54 2024 New Revision: 21170 URL: https://source.openmpt.org/browse/openmpt/?op=revision&rev=21170 Log: Merged revision(s) 21166 from trunk/OpenMPT: [Fix] Possible division by 0 when seeking with sample sync is enabled and an unused sample slot after the last used slot contains unsanitized loop information (e.g. because another format loader gave up before the current one was successful; found with afl++). ........ Modified: branches/OpenMPT-1.28/ (props changed) branches/OpenMPT-1.28/soundlib/Snd_fx.cpp Modified: branches/OpenMPT-1.28/soundlib/Snd_fx.cpp ============================================================================== --- branches/OpenMPT-1.28/soundlib/Snd_fx.cpp Sun Jul 14 15:29:02 2024 (r21169) +++ branches/OpenMPT-1.28/soundlib/Snd_fx.cpp Sun Jul 14 15:30:54 2024 (r21170) @@ -171,7 +171,7 @@ if(chn.position.GetUInt() >= sampleEnd) { - if(chn.dwFlags[CHN_LOOP]) + if(chn.dwFlags[CHN_LOOP] && loopLength) { // We exceeded the sample loop, go back to loop start. if(chn.dwFlags[CHN_PINGPONGLOOP]) @@ -1371,7 +1371,7 @@ void CSoundFile::InstrumentChange(ModChannel &chn, uint32 instr, bool bPorta, bool bUpdVol, bool bResetEnv) const { const ModInstrument *pIns = instr <= GetNumInstruments() ? Instruments[instr] : nullptr; - const ModSample *pSmp = &Samples[instr]; + const ModSample *pSmp = &Samples[instr <= GetNumSamples() ? instr : 0]; const auto oldInsVol = chn.nInsVol; ModCommand::NOTE note = chn.nNewNote; |
From: <sv...@op...> - 2024-07-14 13:29:13
|
Author: sagamusix Date: Sun Jul 14 15:29:02 2024 New Revision: 21169 URL: https://source.openmpt.org/browse/openmpt/?op=revision&rev=21169 Log: Merged revision(s) 21166 from trunk/OpenMPT: [Fix] Possible division by 0 when seeking with sample sync is enabled and an unused sample slot after the last used slot contains unsanitized loop information (e.g. because another format loader gave up before the current one was successful; found with afl++). ........ Modified: branches/OpenMPT-1.29/ (props changed) branches/OpenMPT-1.29/soundlib/Snd_fx.cpp Modified: branches/OpenMPT-1.29/soundlib/Snd_fx.cpp ============================================================================== --- branches/OpenMPT-1.29/soundlib/Snd_fx.cpp Sun Jul 14 15:28:29 2024 (r21168) +++ branches/OpenMPT-1.29/soundlib/Snd_fx.cpp Sun Jul 14 15:29:02 2024 (r21169) @@ -179,7 +179,7 @@ if(chn.position >= sampleEnd || (chn.position < loopStart && inc.IsNegative())) { - if(!chn.dwFlags[CHN_LOOP]) + if(!chn.dwFlags[CHN_LOOP] || !loopLength) { // Past sample end. stopNote = true; @@ -1399,7 +1399,7 @@ void CSoundFile::InstrumentChange(ModChannel &chn, uint32 instr, bool bPorta, bool bUpdVol, bool bResetEnv) const { const ModInstrument *pIns = instr <= GetNumInstruments() ? Instruments[instr] : nullptr; - const ModSample *pSmp = &Samples[instr]; + const ModSample *pSmp = &Samples[instr <= GetNumSamples() ? instr : 0]; const auto oldInsVol = chn.nInsVol; ModCommand::NOTE note = chn.nNewNote; |
From: <sv...@op...> - 2024-07-14 13:28:41
|
Author: sagamusix Date: Sun Jul 14 15:28:29 2024 New Revision: 21168 URL: https://source.openmpt.org/browse/openmpt/?op=revision&rev=21168 Log: Merged revision(s) 21166 from trunk/OpenMPT: [Fix] Possible division by 0 when seeking with sample sync is enabled and an unused sample slot after the last used slot contains unsanitized loop information (e.g. because another format loader gave up before the current one was successful; found with afl++). ........ Modified: branches/OpenMPT-1.30/ (props changed) branches/OpenMPT-1.30/soundlib/Snd_fx.cpp Modified: branches/OpenMPT-1.30/soundlib/Snd_fx.cpp ============================================================================== --- branches/OpenMPT-1.30/soundlib/Snd_fx.cpp Sun Jul 14 15:28:14 2024 (r21167) +++ branches/OpenMPT-1.30/soundlib/Snd_fx.cpp Sun Jul 14 15:28:29 2024 (r21168) @@ -171,7 +171,7 @@ if(chn.position >= sampleEnd || (chn.position < loopStart && inc.IsNegative())) { - if(!chn.dwFlags[CHN_LOOP]) + if(!chn.dwFlags[CHN_LOOP] || !loopLength) { // Past sample end. stopNote = true; @@ -1291,7 +1291,7 @@ void CSoundFile::InstrumentChange(ModChannel &chn, uint32 instr, bool bPorta, bool bUpdVol, bool bResetEnv) const { const ModInstrument *pIns = instr <= GetNumInstruments() ? Instruments[instr] : nullptr; - const ModSample *pSmp = &Samples[instr]; + const ModSample *pSmp = &Samples[instr <= GetNumSamples() ? instr : 0]; const auto oldInsVol = chn.nInsVol; ModCommand::NOTE note = chn.nNewNote; |
From: <sv...@op...> - 2024-07-14 13:28:27
|
Author: sagamusix Date: Sun Jul 14 15:28:14 2024 New Revision: 21167 URL: https://source.openmpt.org/browse/openmpt/?op=revision&rev=21167 Log: Merged revision(s) 21166 from trunk/OpenMPT: [Fix] Possible division by 0 when seeking with sample sync is enabled and an unused sample slot after the last used slot contains unsanitized loop information (e.g. because another format loader gave up before the current one was successful; found with afl++). ........ Modified: branches/OpenMPT-1.31/ (props changed) branches/OpenMPT-1.31/soundlib/Snd_fx.cpp Modified: branches/OpenMPT-1.31/soundlib/Snd_fx.cpp ============================================================================== --- branches/OpenMPT-1.31/soundlib/Snd_fx.cpp Sun Jul 14 15:27:51 2024 (r21166) +++ branches/OpenMPT-1.31/soundlib/Snd_fx.cpp Sun Jul 14 15:28:14 2024 (r21167) @@ -220,7 +220,7 @@ if(chn.position >= sampleEnd || (chn.position < loopStart && inc.IsNegative())) { - if(!chn.dwFlags[CHN_LOOP]) + if(!chn.dwFlags[CHN_LOOP] || !loopLength) { // Past sample end. stopNote = true; @@ -1366,7 +1366,7 @@ void CSoundFile::InstrumentChange(ModChannel &chn, uint32 instr, bool bPorta, bool bUpdVol, bool bResetEnv) const { const ModInstrument *pIns = instr <= GetNumInstruments() ? Instruments[instr] : nullptr; - const ModSample *pSmp = &Samples[instr]; + const ModSample *pSmp = &Samples[instr <= GetNumSamples() ? instr : 0]; const auto oldInsVol = chn.nInsVol; ModCommand::NOTE note = chn.nNewNote; |
From: <sv...@op...> - 2024-07-14 13:28:09
|
Author: sagamusix Date: Sun Jul 14 15:27:51 2024 New Revision: 21166 URL: https://source.openmpt.org/browse/openmpt/?op=revision&rev=21166 Log: [Fix] Possible division by 0 when seeking with sample sync is enabled and an unused sample slot after the last used slot contains unsanitized loop information (e.g. because another format loader gave up before the current one was successful; found with afl++). Modified: trunk/OpenMPT/soundlib/Snd_fx.cpp Modified: trunk/OpenMPT/soundlib/Snd_fx.cpp ============================================================================== --- trunk/OpenMPT/soundlib/Snd_fx.cpp Sun Jul 14 15:03:48 2024 (r21165) +++ trunk/OpenMPT/soundlib/Snd_fx.cpp Sun Jul 14 15:27:51 2024 (r21166) @@ -234,7 +234,7 @@ if(chn.position >= sampleEnd || (chn.position < loopStart && inc.IsNegative())) { - if(!chn.dwFlags[CHN_LOOP]) + if(!chn.dwFlags[CHN_LOOP] || !loopLength) { // Past sample end. stopNote = true; @@ -1458,7 +1458,7 @@ void CSoundFile::InstrumentChange(ModChannel &chn, uint32 instr, bool bPorta, bool bUpdVol, bool bResetEnv) const { const ModInstrument *pIns = instr <= GetNumInstruments() ? Instruments[instr] : nullptr; - const ModSample *pSmp = &Samples[instr]; + const ModSample *pSmp = &Samples[instr <= GetNumSamples() ? instr : 0]; const auto oldInsVol = chn.nInsVol; ModCommand::NOTE note = chn.nNewNote; |
From: <sv...@op...> - 2024-07-14 13:04:00
|
Author: manx Date: Sun Jul 14 15:03:48 2024 New Revision: 21165 URL: https://source.openmpt.org/browse/openmpt/?op=revision&rev=21165 Log: [Mod] libopenmpt: Bump prerel version. Modified: branches/OpenMPT-1.31/libopenmpt/libopenmpt_version.h branches/OpenMPT-1.31/libopenmpt/libopenmpt_version.mk Modified: branches/OpenMPT-1.31/libopenmpt/libopenmpt_version.h ============================================================================== --- branches/OpenMPT-1.31/libopenmpt/libopenmpt_version.h Sun Jul 14 15:03:12 2024 (r21164) +++ branches/OpenMPT-1.31/libopenmpt/libopenmpt_version.h Sun Jul 14 15:03:48 2024 (r21165) @@ -23,7 +23,7 @@ /*! \brief libopenmpt patch version number */ #define OPENMPT_API_VERSION_PATCH 9 /*! \brief libopenmpt pre-release tag */ -#define OPENMPT_API_VERSION_PREREL "-pre.0" +#define OPENMPT_API_VERSION_PREREL "-pre.1" /*! \brief libopenmpt pre-release flag */ #define OPENMPT_API_VERSION_IS_PREREL 1 Modified: branches/OpenMPT-1.31/libopenmpt/libopenmpt_version.mk ============================================================================== --- branches/OpenMPT-1.31/libopenmpt/libopenmpt_version.mk Sun Jul 14 15:03:12 2024 (r21164) +++ branches/OpenMPT-1.31/libopenmpt/libopenmpt_version.mk Sun Jul 14 15:03:48 2024 (r21165) @@ -1,7 +1,7 @@ LIBOPENMPT_VERSION_MAJOR=0 LIBOPENMPT_VERSION_MINOR=7 LIBOPENMPT_VERSION_PATCH=9 -LIBOPENMPT_VERSION_PREREL=-pre.0 +LIBOPENMPT_VERSION_PREREL=-pre.1 LIBOPENMPT_LTVER_CURRENT=4 LIBOPENMPT_LTVER_REVISION=9 |
From: <sv...@op...> - 2024-07-14 13:03:19
|
Author: manx Date: Sun Jul 14 15:03:12 2024 New Revision: 21164 URL: https://source.openmpt.org/browse/openmpt/?op=revision&rev=21164 Log: [Doc] libopenmpt: Update changelog. Modified: branches/OpenMPT-1.31/doc/libopenmpt/changelog.md Modified: branches/OpenMPT-1.31/doc/libopenmpt/changelog.md ============================================================================== --- branches/OpenMPT-1.31/doc/libopenmpt/changelog.md Sun Jul 14 15:00:00 2024 (r21163) +++ branches/OpenMPT-1.31/doc/libopenmpt/changelog.md Sun Jul 14 15:03:12 2024 (r21164) @@ -7,6 +7,11 @@ ### libopenmpt 0.7.9-pre + * [**Change**] The work-around for + <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115049> has been changed from + forcing `-O1` on GCC 14 to setting `-fno-ipa-ra` on all GCC versions on + non-ELF platforms. + * IT: Identify files saved with itwriter. * XM: For files saved with registered MadTracker 2 versions, do not put binary garbage (the user ID) in the tracker metadata field. It is replaced |
From: <sv...@op...> - 2024-07-14 13:00:07
|
Author: manx Date: Sun Jul 14 15:00:00 2024 New Revision: 21163 URL: https://source.openmpt.org/browse/openmpt/?op=revision&rev=21163 Log: Merged revision(s) 21162 from trunk/OpenMPT: [Mod] Reduce impact of <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115049> work-around by instead of forcing -O1 to only setting -fno-ipa-ra on non-ELF platforms. [Mod] build: Makefile: DJGPP: Set -fno-ipa-ra for all code. [Mod] build: Makefile: MinGW-w64: Set -fno-ipa-ra for all code on GCC. [Mod] build: Makefile: MinGW: Set -fno-ipa-ra for all code. [Mod] build: Makefile: MinGW32CRT: Set -fno-ipa-ra for all code. ........ Modified: branches/OpenMPT-1.31/ (props changed) branches/OpenMPT-1.31/Makefile branches/OpenMPT-1.31/build/make/config-djgpp.mk branches/OpenMPT-1.31/build/make/config-mingw-w64.mk branches/OpenMPT-1.31/build/make/config-mingw.mk branches/OpenMPT-1.31/build/make/config-mingw32crt.mk branches/OpenMPT-1.31/common/BuildSettings.h branches/OpenMPT-1.31/src/mpt/base/detect_quirks.hpp branches/OpenMPT-1.31/src/mpt/check/compiler.hpp Modified: branches/OpenMPT-1.31/Makefile ============================================================================== --- branches/OpenMPT-1.31/Makefile Sun Jul 14 14:59:29 2024 (r21162) +++ branches/OpenMPT-1.31/Makefile Sun Jul 14 15:00:00 2024 (r21163) @@ -585,6 +585,12 @@ endif +ifeq ($(MPT_COMPILER_NOIPARA),1) +# See <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115049>. +CXXFLAGS += -fno-ipa-ra +CFLAGS += -fno-ipa-ra +endif + ifeq ($(CHECKED),1) CPPFLAGS += -DMPT_BUILD_CHECKED CXXFLAGS += -g -fno-omit-frame-pointer Modified: branches/OpenMPT-1.31/build/make/config-djgpp.mk ============================================================================== --- branches/OpenMPT-1.31/build/make/config-djgpp.mk Sun Jul 14 14:59:29 2024 (r21162) +++ branches/OpenMPT-1.31/build/make/config-djgpp.mk Sun Jul 14 15:00:00 2024 (r21163) @@ -376,6 +376,9 @@ OPTIMIZE_FASTMATH=1 +# See <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115049>. +MPT_COMPILER_NOIPARA=1 + include build/make/warnings-gcc.mk DYNLINK=0 Modified: branches/OpenMPT-1.31/build/make/config-mingw-w64.mk ============================================================================== --- branches/OpenMPT-1.31/build/make/config-mingw-w64.mk Sun Jul 14 14:59:29 2024 (r21162) +++ branches/OpenMPT-1.31/build/make/config-mingw-w64.mk Sun Jul 14 15:00:00 2024 (r21163) @@ -117,6 +117,11 @@ $(error unknown WINDOWS_VERSION) endif +ifneq ($(MINGW_COMPILER),clang) +# See <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115049>. +MPT_COMPILER_NOIPARA=1 +endif + ifeq ($(MINGW_COMPILER),clang) include build/make/warnings-clang.mk else Modified: branches/OpenMPT-1.31/build/make/config-mingw.mk ============================================================================== --- branches/OpenMPT-1.31/build/make/config-mingw.mk Sun Jul 14 14:59:29 2024 (r21162) +++ branches/OpenMPT-1.31/build/make/config-mingw.mk Sun Jul 14 15:00:00 2024 (r21163) @@ -73,6 +73,9 @@ PC_LIBS_PRIVATE += -lole32 -lrpcrt4 +# See <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115049>. +MPT_COMPILER_NOIPARA=1 + include build/make/warnings-gcc.mk EXESUFFIX=.exe Modified: branches/OpenMPT-1.31/build/make/config-mingw32crt.mk ============================================================================== --- branches/OpenMPT-1.31/build/make/config-mingw32crt.mk Sun Jul 14 14:59:29 2024 (r21162) +++ branches/OpenMPT-1.31/build/make/config-mingw32crt.mk Sun Jul 14 15:00:00 2024 (r21163) @@ -73,6 +73,9 @@ PC_LIBS_PRIVATE += -lole32 -lrpcrt4 +# See <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115049>. +MPT_COMPILER_NOIPARA=1 + include build/make/warnings-gcc.mk EXESUFFIX=.exe Modified: branches/OpenMPT-1.31/common/BuildSettings.h ============================================================================== --- branches/OpenMPT-1.31/common/BuildSettings.h Sun Jul 14 14:59:29 2024 (r21162) +++ branches/OpenMPT-1.31/common/BuildSettings.h Sun Jul 14 15:00:00 2024 (r21163) @@ -390,12 +390,10 @@ #if MPT_COMPILER_GCC -#ifdef MPT_COMPILER_QUIRK_GCC_NO_O2 +#ifdef MPT_COMPILER_QUIRK_GCC_NO_IPA_RA // See <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115049>. -#if defined(__OPTIMIZE__) -#pragma GCC optimize("O1") -#endif -#endif // MPT_COMPILER_QUIRK_GCC_NO_O2 +#pragma GCC optimize("no-ipa-ra") +#endif // MPT_COMPILER_QUIRK_GCC_NO_IPA_RA #endif // MPT_COMPILER_GCC Modified: branches/OpenMPT-1.31/src/mpt/base/detect_quirks.hpp ============================================================================== --- branches/OpenMPT-1.31/src/mpt/base/detect_quirks.hpp Sun Jul 14 14:59:29 2024 (r21162) +++ branches/OpenMPT-1.31/src/mpt/base/detect_quirks.hpp Sun Jul 14 15:00:00 2024 (r21163) @@ -19,11 +19,13 @@ -#if MPT_GCC_AT_LEAST(14, 0, 0) && MPT_GCC_BEFORE(15, 0, 0) -// GCC 14 causes severe miscompilation of inline functions. +#if MPT_COMPILER_GCC +// GCC 14 causes severe miscompilation of inline functions on MinGW. // See <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115049>. -#if defined(__OPTIMIZE__) -#define MPT_COMPILER_QUIRK_GCC_NO_O2 +// Current investigation suggests a general problem with -fipa-ra on non-ELF +// platforms. +#if !defined(__ELF__) +#define MPT_COMPILER_QUIRK_GCC_NO_IPA_RA #endif #endif Modified: branches/OpenMPT-1.31/src/mpt/check/compiler.hpp ============================================================================== --- branches/OpenMPT-1.31/src/mpt/check/compiler.hpp Sun Jul 14 14:59:29 2024 (r21162) +++ branches/OpenMPT-1.31/src/mpt/check/compiler.hpp Sun Jul 14 15:00:00 2024 (r21163) @@ -7,13 +7,6 @@ #include "mpt/base/detect_quirks.hpp" #include "mpt/base/compiletime_warning.hpp" -#ifndef MPT_CHECK_CXX_IGNORE_WARNING_O2 -#if defined(MPT_COMPILER_QUIRK_GCC_NO_O2) -// See <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115049>. -MPT_WARNING("GCC 14 is known to cause severe miscompilation of inline functions. OpenMPT has forced optimization settings down to -O1. This comes at a roughly 15% performance cost. It is strongly recommended to stay with GCC 13 for the time being. You will need to edit the source to opt-out of this safety guard.") -#endif -#endif - #ifndef MPT_CHECK_CXX_IGNORE_PREPROCESSOR #if defined(MPT_COMPILER_QUIRK_MSVC_OLD_PREPROCESSOR) MPT_WARNING("C++ preprocessor is not standard conformings.") |
From: <sv...@op...> - 2024-07-14 12:59:36
|
Author: manx Date: Sun Jul 14 14:59:29 2024 New Revision: 21162 URL: https://source.openmpt.org/browse/openmpt/?op=revision&rev=21162 Log: [Mod] Reduce impact of <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115049> work-around by instead of forcing -O1 to only setting -fno-ipa-ra on non-ELF platforms. [Mod] build: Makefile: DJGPP: Set -fno-ipa-ra for all code. [Mod] build: Makefile: MinGW-w64: Set -fno-ipa-ra for all code on GCC. [Mod] build: Makefile: MinGW: Set -fno-ipa-ra for all code. [Mod] build: Makefile: MinGW32CRT: Set -fno-ipa-ra for all code. Modified: trunk/OpenMPT/Makefile trunk/OpenMPT/build/make/config-djgpp.mk trunk/OpenMPT/build/make/config-mingw-w64.mk trunk/OpenMPT/build/make/config-mingw.mk trunk/OpenMPT/build/make/config-mingw32crt.mk trunk/OpenMPT/common/BuildSettings.h trunk/OpenMPT/src/mpt/base/detect_quirks.hpp trunk/OpenMPT/src/mpt/check/compiler.hpp Modified: trunk/OpenMPT/Makefile ============================================================================== --- trunk/OpenMPT/Makefile Sun Jul 14 14:32:49 2024 (r21161) +++ trunk/OpenMPT/Makefile Sun Jul 14 14:59:29 2024 (r21162) @@ -585,6 +585,12 @@ endif +ifeq ($(MPT_COMPILER_NOIPARA),1) +# See <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115049>. +CXXFLAGS += -fno-ipa-ra +CFLAGS += -fno-ipa-ra +endif + ifeq ($(CHECKED),1) CPPFLAGS += -DMPT_BUILD_CHECKED CXXFLAGS += -g -fno-omit-frame-pointer Modified: trunk/OpenMPT/build/make/config-djgpp.mk ============================================================================== --- trunk/OpenMPT/build/make/config-djgpp.mk Sun Jul 14 14:32:49 2024 (r21161) +++ trunk/OpenMPT/build/make/config-djgpp.mk Sun Jul 14 14:59:29 2024 (r21162) @@ -477,6 +477,9 @@ OPTIMIZE_FASTMATH=1 +# See <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115049>. +MPT_COMPILER_NOIPARA=1 + include build/make/warnings-gcc.mk ALLOW_LGPL=1 Modified: trunk/OpenMPT/build/make/config-mingw-w64.mk ============================================================================== --- trunk/OpenMPT/build/make/config-mingw-w64.mk Sun Jul 14 14:32:49 2024 (r21161) +++ trunk/OpenMPT/build/make/config-mingw-w64.mk Sun Jul 14 14:59:29 2024 (r21162) @@ -117,6 +117,11 @@ $(error unknown WINDOWS_VERSION) endif +ifneq ($(MINGW_COMPILER),clang) +# See <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115049>. +MPT_COMPILER_NOIPARA=1 +endif + ifeq ($(MINGW_COMPILER),clang) include build/make/warnings-clang.mk else Modified: trunk/OpenMPT/build/make/config-mingw.mk ============================================================================== --- trunk/OpenMPT/build/make/config-mingw.mk Sun Jul 14 14:32:49 2024 (r21161) +++ trunk/OpenMPT/build/make/config-mingw.mk Sun Jul 14 14:59:29 2024 (r21162) @@ -73,6 +73,9 @@ PC_LIBS_PRIVATE += -lole32 -lrpcrt4 +# See <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115049>. +MPT_COMPILER_NOIPARA=1 + include build/make/warnings-gcc.mk EXESUFFIX=.exe Modified: trunk/OpenMPT/build/make/config-mingw32crt.mk ============================================================================== --- trunk/OpenMPT/build/make/config-mingw32crt.mk Sun Jul 14 14:32:49 2024 (r21161) +++ trunk/OpenMPT/build/make/config-mingw32crt.mk Sun Jul 14 14:59:29 2024 (r21162) @@ -73,6 +73,9 @@ PC_LIBS_PRIVATE += -lole32 -lrpcrt4 +# See <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115049>. +MPT_COMPILER_NOIPARA=1 + include build/make/warnings-gcc.mk EXESUFFIX=.exe Modified: trunk/OpenMPT/common/BuildSettings.h ============================================================================== --- trunk/OpenMPT/common/BuildSettings.h Sun Jul 14 14:32:49 2024 (r21161) +++ trunk/OpenMPT/common/BuildSettings.h Sun Jul 14 14:59:29 2024 (r21162) @@ -390,12 +390,10 @@ #if MPT_COMPILER_GCC -#ifdef MPT_COMPILER_QUIRK_GCC_NO_O2 +#ifdef MPT_COMPILER_QUIRK_GCC_NO_IPA_RA // See <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115049>. -#if defined(__OPTIMIZE__) -#pragma GCC optimize("O1") -#endif -#endif // MPT_COMPILER_QUIRK_GCC_NO_O2 +#pragma GCC optimize("no-ipa-ra") +#endif // MPT_COMPILER_QUIRK_GCC_NO_IPA_RA #endif // MPT_COMPILER_GCC Modified: trunk/OpenMPT/src/mpt/base/detect_quirks.hpp ============================================================================== --- trunk/OpenMPT/src/mpt/base/detect_quirks.hpp Sun Jul 14 14:32:49 2024 (r21161) +++ trunk/OpenMPT/src/mpt/base/detect_quirks.hpp Sun Jul 14 14:59:29 2024 (r21162) @@ -19,11 +19,13 @@ -#if MPT_GCC_AT_LEAST(14, 0, 0) && MPT_GCC_BEFORE(15, 0, 0) -// GCC 14 causes severe miscompilation of inline functions. +#if MPT_COMPILER_GCC +// GCC 14 causes severe miscompilation of inline functions on MinGW. // See <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115049>. -#if defined(__OPTIMIZE__) -#define MPT_COMPILER_QUIRK_GCC_NO_O2 +// Current investigation suggests a general problem with -fipa-ra on non-ELF +// platforms. +#if !defined(__ELF__) +#define MPT_COMPILER_QUIRK_GCC_NO_IPA_RA #endif #endif Modified: trunk/OpenMPT/src/mpt/check/compiler.hpp ============================================================================== --- trunk/OpenMPT/src/mpt/check/compiler.hpp Sun Jul 14 14:32:49 2024 (r21161) +++ trunk/OpenMPT/src/mpt/check/compiler.hpp Sun Jul 14 14:59:29 2024 (r21162) @@ -7,13 +7,6 @@ #include "mpt/base/detect_quirks.hpp" #include "mpt/base/compiletime_warning.hpp" -#ifndef MPT_CHECK_CXX_IGNORE_WARNING_O2 -#if defined(MPT_COMPILER_QUIRK_GCC_NO_O2) -// See <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115049>. -MPT_WARNING("GCC 14 is known to cause severe miscompilation of inline functions. OpenMPT has forced optimization settings down to -O1. This comes at a roughly 15% performance cost. It is strongly recommended to stay with GCC 13 for the time being. You will need to edit the source to opt-out of this safety guard.") -#endif -#endif - #ifndef MPT_CHECK_CXX_IGNORE_PREPROCESSOR #if defined(MPT_COMPILER_QUIRK_MSVC_OLD_PREPROCESSOR) MPT_WARNING("C++ preprocessor is not standard conformings.") |
From: <sv...@op...> - 2024-07-14 12:33:03
|
Author: manx Date: Sun Jul 14 14:32:49 2024 New Revision: 21161 URL: https://source.openmpt.org/browse/openmpt/?op=revision&rev=21161 Log: Merged revision(s) 21160 from trunk/OpenMPT: [Fix] build: Makefile: Fix copy-paste error in OPTIMIZE_FASTMATH handling. ........ Modified: branches/OpenMPT-1.31/ (props changed) branches/OpenMPT-1.31/Makefile Modified: branches/OpenMPT-1.31/Makefile ============================================================================== --- branches/OpenMPT-1.31/Makefile Sun Jul 14 14:32:00 2024 (r21160) +++ branches/OpenMPT-1.31/Makefile Sun Jul 14 14:32:49 2024 (r21161) @@ -585,34 +585,6 @@ endif -ifeq ($(OPTIMIZE_FASTMATH),2) -CPPFLAGS += -DMPT_CHECK_CXX_IGNORE_WARNING_FASTMATH -DMPT_CHECK_CXX_IGNORE_WARNING_FINITEMATH -CXXFLAGS += -ffast-math -CFLAGS += -ffast-math -else ifeq ($(OPTIMIZE_FASTMATH),1) -CPPFLAGS += -DMPT_CHECK_CXX_IGNORE_WARNING_FINITEMATH -CXXFLAGS += -fassociative-math -CXXFLAGS += -fcx-limited-range -CXXFLAGS += -fexcess-precision=fast -CXXFLAGS += -ffinite-math-only -CXXFLAGS += -freciprocal-math -CXXFLAGS += -fno-math-errno -CXXFLAGS += -fno-rounding-math -CXXFLAGS += -fno-signaling-nans -CXXFLAGS += -fno-signed-zeros -CXXFLAGS += -fno-trapping-math -CFLAGS += -fassociative-math -CFLAGS += -fcx-limited-range -CFLAGS += -fexcess-precision=fast -CFLAGS += -ffinite-math-only -CFLAGS += -freciprocal-math -CFLAGS += -fno-math-errno -CFLAGS += -fno-rounding-math -CFLAGS += -fno-signaling-nans -CFLAGS += -fno-signed-zeros -CFLAGS += -fno-trapping-math -endif - ifeq ($(CHECKED),1) CPPFLAGS += -DMPT_BUILD_CHECKED CXXFLAGS += -g -fno-omit-frame-pointer |
From: <sv...@op...> - 2024-07-14 12:32:14
|
Author: manx Date: Sun Jul 14 14:32:00 2024 New Revision: 21160 URL: https://source.openmpt.org/browse/openmpt/?op=revision&rev=21160 Log: [Fix] build: Makefile: Fix copy-paste error in OPTIMIZE_FASTMATH handling. Modified: trunk/OpenMPT/Makefile Modified: trunk/OpenMPT/Makefile ============================================================================== --- trunk/OpenMPT/Makefile Sun Jul 14 13:54:32 2024 (r21159) +++ trunk/OpenMPT/Makefile Sun Jul 14 14:32:00 2024 (r21160) @@ -585,34 +585,6 @@ endif -ifeq ($(OPTIMIZE_FASTMATH),2) -CPPFLAGS += -DMPT_CHECK_CXX_IGNORE_WARNING_FASTMATH -DMPT_CHECK_CXX_IGNORE_WARNING_FINITEMATH -CXXFLAGS += -ffast-math -CFLAGS += -ffast-math -else ifeq ($(OPTIMIZE_FASTMATH),1) -CPPFLAGS += -DMPT_CHECK_CXX_IGNORE_WARNING_FINITEMATH -CXXFLAGS += -fassociative-math -CXXFLAGS += -fcx-limited-range -CXXFLAGS += -fexcess-precision=fast -CXXFLAGS += -ffinite-math-only -CXXFLAGS += -freciprocal-math -CXXFLAGS += -fno-math-errno -CXXFLAGS += -fno-rounding-math -CXXFLAGS += -fno-signaling-nans -CXXFLAGS += -fno-signed-zeros -CXXFLAGS += -fno-trapping-math -CFLAGS += -fassociative-math -CFLAGS += -fcx-limited-range -CFLAGS += -fexcess-precision=fast -CFLAGS += -ffinite-math-only -CFLAGS += -freciprocal-math -CFLAGS += -fno-math-errno -CFLAGS += -fno-rounding-math -CFLAGS += -fno-signaling-nans -CFLAGS += -fno-signed-zeros -CFLAGS += -fno-trapping-math -endif - ifeq ($(CHECKED),1) CPPFLAGS += -DMPT_BUILD_CHECKED CXXFLAGS += -g -fno-omit-frame-pointer |
From: <sv...@op...> - 2024-07-14 11:54:39
|
Author: sagamusix Date: Sun Jul 14 13:54:32 2024 New Revision: 21159 URL: https://source.openmpt.org/browse/openmpt/?op=revision&rev=21159 Log: [Imp] Various improvements to fuzzing configuration (https://github.com/OpenMPT/openmpt/pull/21). Patch-by: vanhauser-thc <vh...@th...> Added: trunk/OpenMPT/contrib/fuzzing/fuzz-secondary3.sh (contents, props changed) Modified: trunk/OpenMPT/contrib/fuzzing/build.sh trunk/OpenMPT/contrib/fuzzing/fuzz-main.sh trunk/OpenMPT/contrib/fuzzing/fuzz-secondary1.sh trunk/OpenMPT/contrib/fuzzing/fuzz-secondary2.sh trunk/OpenMPT/contrib/fuzzing/fuzz-settings.sh trunk/OpenMPT/contrib/fuzzing/readme.md Modified: trunk/OpenMPT/contrib/fuzzing/build.sh ============================================================================== --- trunk/OpenMPT/contrib/fuzzing/build.sh Sun Jul 14 01:44:35 2024 (r21158) +++ trunk/OpenMPT/contrib/fuzzing/build.sh Sun Jul 14 13:54:32 2024 (r21159) @@ -1,4 +1,4 @@ #!/usr/bin/env bash cd "${0%/*}" cd ../.. -AFL_USE_ASAN=1 CONFIG=afl make clean all EXAMPLES=0 TEST=0 OPENMPT123=0 NO_VORBIS=1 NO_VORBISFILE=1 NO_MPG123=1 CHECKED_ADDRESS=1 +AFL_LLVM_CMPLOG=1 AFL_USE_ASAN=1 CONFIG=afl make clean all EXAMPLES=0 TEST=0 OPENMPT123=0 NO_VORBIS=1 NO_VORBISFILE=1 NO_MPG123=1 CHECKED_ADDRESS=1 Modified: trunk/OpenMPT/contrib/fuzzing/fuzz-main.sh ============================================================================== --- trunk/OpenMPT/contrib/fuzzing/fuzz-main.sh Sun Jul 14 01:44:35 2024 (r21158) +++ trunk/OpenMPT/contrib/fuzzing/fuzz-main.sh Sun Jul 14 13:54:32 2024 (r21159) @@ -9,5 +9,4 @@ mkdir $FUZZING_TEMPDIR/bin cp -d ../../bin/* $FUZZING_TEMPDIR/bin/ -#export AFL_PRELOAD=$AFL_DIR/libdislocator.so -LD_LIBRARY_PATH=$FUZZING_TEMPDIR/bin $AFL_DIR/afl-fuzz -p explore -x all_formats.dict -t $FUZZING_TIMEOUT $FUZZING_INPUT -o $FUZZING_FINDINGS_DIR -D -M fuzzer01 $FUZZING_TEMPDIR/bin/fuzz +LD_LIBRARY_PATH=$FUZZING_TEMPDIR/bin $FUZZING_AFL_DIR/afl-fuzz -x all_formats.dict -t $FUZZING_TIMEOUT $FUZZING_INPUT -o $FUZZING_FINDINGS_DIR -M fuzzer01 $FUZZING_TEMPDIR/bin/fuzz Modified: trunk/OpenMPT/contrib/fuzzing/fuzz-secondary1.sh ============================================================================== --- trunk/OpenMPT/contrib/fuzzing/fuzz-secondary1.sh Sun Jul 14 01:44:35 2024 (r21158) +++ trunk/OpenMPT/contrib/fuzzing/fuzz-secondary1.sh Sun Jul 14 13:54:32 2024 (r21159) @@ -2,5 +2,4 @@ cd "${0%/*}" . ./fuzz-settings.sh -#export AFL_PRELOAD=$AFL_DIR/libdislocator.so -LD_LIBRARY_PATH=$FUZZING_TEMPDIR/bin $AFL_DIR/afl-fuzz -p coe -x all_formats.dict -t $FUZZING_TIMEOUT $FUZZING_INPUT -o $FUZZING_FINDINGS_DIR -S fuzzer02 $FUZZING_TEMPDIR/bin/fuzz +LD_LIBRARY_PATH=$FUZZING_TEMPDIR/bin $FUZZING_AFL_DIR/afl-fuzz -c0 -l2 -x all_formats.dict -t $FUZZING_TIMEOUT $FUZZING_INPUT -o $FUZZING_FINDINGS_DIR -S fuzzer02 $FUZZING_TEMPDIR/bin/fuzz Modified: trunk/OpenMPT/contrib/fuzzing/fuzz-secondary2.sh ============================================================================== --- trunk/OpenMPT/contrib/fuzzing/fuzz-secondary2.sh Sun Jul 14 01:44:35 2024 (r21158) +++ trunk/OpenMPT/contrib/fuzzing/fuzz-secondary2.sh Sun Jul 14 13:54:32 2024 (r21159) @@ -2,5 +2,4 @@ cd "${0%/*}" . ./fuzz-settings.sh -#export AFL_PRELOAD=$AFL_DIR/libdislocator.so -LD_LIBRARY_PATH=$FUZZING_TEMPDIR/bin $AFL_DIR/afl-fuzz -p exploit -x all_formats.dict -t $FUZZING_TIMEOUT $FUZZING_INPUT -o $FUZZING_FINDINGS_DIR -S fuzzer03 $FUZZING_TEMPDIR/bin/fuzz +LD_LIBRARY_PATH=$FUZZING_TEMPDIR/bin $FUZZING_AFL_DIR/afl-fuzz -p fast -x all_formats.dict -t $FUZZING_TIMEOUT $FUZZING_INPUT -o $FUZZING_FINDINGS_DIR -S fuzzer03 $FUZZING_TEMPDIR/bin/fuzz Added: trunk/OpenMPT/contrib/fuzzing/fuzz-secondary3.sh ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ trunk/OpenMPT/contrib/fuzzing/fuzz-secondary3.sh Sun Jul 14 13:54:32 2024 (r21159) @@ -0,0 +1,6 @@ +#!/usr/bin/env bash +cd "${0%/*}" +. ./fuzz-settings.sh + +unset AFL_DISABLE_TRIM +LD_LIBRARY_PATH=$FUZZING_TEMPDIR/bin $FUZZING_AFL_DIR/afl-fuzz -p exploit -P 300 -a binary -x all_formats.dict -t $FUZZING_TIMEOUT $FUZZING_INPUT -o $FUZZING_FINDINGS_DIR -S fuzzer04 $FUZZING_TEMPDIR/bin/fuzz Modified: trunk/OpenMPT/contrib/fuzzing/fuzz-settings.sh ============================================================================== --- trunk/OpenMPT/contrib/fuzzing/fuzz-settings.sh Sun Jul 14 01:44:35 2024 (r21158) +++ trunk/OpenMPT/contrib/fuzzing/fuzz-settings.sh Sun Jul 14 13:54:32 2024 (r21159) @@ -15,4 +15,13 @@ # Fuzzer timeout in ms, + = don't abort on timeout FUZZING_TIMEOUT=5000+ # Path to afl-fuzz binary -AFL_DIR=afl +FUZZING_AFL_DIR=afl + +# AFL specific envs +AFL_TRY_AFFINITY=1 +AFL_CMPLOG_ONLY_NEW=1 +AFL_NO_WARN_INSTABILITY=1 +AFL_FAST_CAL=1 +AFL_IMPORT_FIRST=1 +AFL_DISABLE_TRIM=1 +AFL_IGNORE_SEED_PROBLEMS=1 Modified: trunk/OpenMPT/contrib/fuzzing/readme.md ============================================================================== --- trunk/OpenMPT/contrib/fuzzing/readme.md Sun Jul 14 01:44:35 2024 (r21158) +++ trunk/OpenMPT/contrib/fuzzing/readme.md Sun Jul 14 13:54:32 2024 (r21159) @@ -10,8 +10,8 @@ module formats to make the life of the fuzzer a bit easier. * `fuzz-main.sh`: Script to launch the main fuzzing process. If you want to use just one fuzzer instance, run this one. -* `fuzz-secondary[1|2].sh`: Scripts to launch the secondary fuzzing process. It - is recommended to run at least two fuzzer instances, as the deterministic and +* `fuzz-secondary[1|2|3].sh`: Scripts to launch the secondary fuzzing processes. + It is recommended to run at least 2 fuzzer instances, as the deterministic and random fuzz mode have been found to complement each other really well. The two scripts are set up to use different exploration strategies. * `fuzz-settings.sh`: Set up your preferences and afl settings here before the @@ -43,9 +43,8 @@ The default setup mounts a tmpfs folder for all temporary files. You may change this behaviour if you do not have root privileges. * Run `fuzz-main.sh` for the first (deterministic) instance of afl-fuzz. -* For a "secondary" instance to run on another core, run `fuzz-secondary1.sh` - and/or `fuzz-secondary2.sh`. +* For a "secondary" instance to run on another core, run `fuzz-secondary1.sh`, + `fuzz-secondary2.sh` and `fuzz-secondary3.sh`. * If you want to make use of even more cores, create more copies of - `fuzz-secondary2.sh` and adjust "infile03" / "fuzzer03" to - "infile04" / "fuzzer04" and so on (they need to be unique). Try varying the - fuzzing strategey (the -p parameter) to get results more quickly. + `fuzz-secondary2.sh` and adjust "fuzzer03" to "fuzzer05" and so on (they need to be unique). + Try varying the fuzzing strategy (the -p parameter) to get more varied results quickly. |
From: <sv...@op...> - 2024-07-13 23:44:56
|
Author: sagamusix Date: Sun Jul 14 01:44:35 2024 New Revision: 21158 URL: https://source.openmpt.org/browse/openmpt/?op=revision&rev=21158 Log: [Ref] Consistently use unicode literals instead of move-constructing strings for metadata in module loaders to reduce binary bloat. Modified: trunk/OpenMPT/soundlib/Load_669.cpp trunk/OpenMPT/soundlib/Load_amf.cpp trunk/OpenMPT/soundlib/Load_ams.cpp trunk/OpenMPT/soundlib/Load_c67.cpp trunk/OpenMPT/soundlib/Load_dbm.cpp trunk/OpenMPT/soundlib/Load_digi.cpp trunk/OpenMPT/soundlib/Load_dmf.cpp trunk/OpenMPT/soundlib/Load_dsm.cpp trunk/OpenMPT/soundlib/Load_dsym.cpp trunk/OpenMPT/soundlib/Load_dtm.cpp trunk/OpenMPT/soundlib/Load_far.cpp trunk/OpenMPT/soundlib/Load_fmt.cpp trunk/OpenMPT/soundlib/Load_ftm.cpp trunk/OpenMPT/soundlib/Load_gdm.cpp trunk/OpenMPT/soundlib/Load_gmc.cpp trunk/OpenMPT/soundlib/Load_gt2.cpp trunk/OpenMPT/soundlib/Load_ice.cpp trunk/OpenMPT/soundlib/Load_imf.cpp trunk/OpenMPT/soundlib/Load_it.cpp trunk/OpenMPT/soundlib/Load_itp.cpp trunk/OpenMPT/soundlib/Load_kris.cpp trunk/OpenMPT/soundlib/Load_mdl.cpp trunk/OpenMPT/soundlib/Load_mid.cpp trunk/OpenMPT/soundlib/Load_mo3.cpp trunk/OpenMPT/soundlib/Load_mod.cpp trunk/OpenMPT/soundlib/Load_mt2.cpp trunk/OpenMPT/soundlib/Load_mtm.cpp trunk/OpenMPT/soundlib/Load_mus_km.cpp trunk/OpenMPT/soundlib/Load_okt.cpp trunk/OpenMPT/soundlib/Load_plm.cpp trunk/OpenMPT/soundlib/Load_psm.cpp trunk/OpenMPT/soundlib/Load_pt36.cpp trunk/OpenMPT/soundlib/Load_ptm.cpp trunk/OpenMPT/soundlib/Load_rtm.cpp trunk/OpenMPT/soundlib/Load_sfx.cpp trunk/OpenMPT/soundlib/Load_stk.cpp trunk/OpenMPT/soundlib/Load_stm.cpp trunk/OpenMPT/soundlib/Load_stp.cpp trunk/OpenMPT/soundlib/Load_symmod.cpp trunk/OpenMPT/soundlib/Load_uax.cpp trunk/OpenMPT/soundlib/Load_ult.cpp trunk/OpenMPT/soundlib/Load_wav.cpp trunk/OpenMPT/soundlib/Load_xm.cpp trunk/OpenMPT/soundlib/load_j2b.cpp Modified: trunk/OpenMPT/soundlib/Load_669.cpp ============================================================================== --- trunk/OpenMPT/soundlib/Load_669.cpp Sat Jul 13 21:48:42 2024 (r21157) +++ trunk/OpenMPT/soundlib/Load_669.cpp Sun Jul 14 01:44:35 2024 (r21158) @@ -147,8 +147,8 @@ //m_SongFlags.set(SONG_LINEARSLIDES); #endif // MODPLUG_TRACKER - m_modFormat.formatName = U_("Composer 669"); - m_modFormat.type = U_("669"); + m_modFormat.formatName = UL_("Composer 669"); + m_modFormat.type = UL_("669"); m_modFormat.madeWithTracker = !memcmp(fileHeader.magic, "if", 2) ? UL_("Composer 669") : UL_("UNIS 669"); m_modFormat.charset = mpt::Charset::CP437; Modified: trunk/OpenMPT/soundlib/Load_amf.cpp ============================================================================== --- trunk/OpenMPT/soundlib/Load_amf.cpp Sat Jul 13 21:48:42 2024 (r21157) +++ trunk/OpenMPT/soundlib/Load_amf.cpp Sun Jul 14 01:44:35 2024 (r21158) @@ -135,8 +135,8 @@ Order().SetRestartPos(fileHeader.restartPos); } - m_modFormat.formatName = U_("ASYLUM Music Format"); - m_modFormat.type = U_("amf"); + m_modFormat.formatName = UL_("ASYLUM Music Format"); + m_modFormat.type = UL_("amf"); m_modFormat.charset = mpt::Charset::CP437; uint8 orders[256]; @@ -578,12 +578,12 @@ if(isDMF) { m_modFormat.formatName = MPT_UFORMAT("DSMI Advanced Music Format (Compact) v{}")(fileSignature.version); - m_modFormat.type = U_("dmf"); + m_modFormat.type = UL_("dmf"); } else { m_songName = mpt::String::ReadBuf(mpt::String::maybeNullTerminated, title); m_modFormat.formatName = MPT_UFORMAT("DSMI Advanced Music Format v{}")(fileSignature.version); - m_modFormat.type = U_("amf"); + m_modFormat.type = UL_("amf"); } m_modFormat.charset = mpt::Charset::CP437; Modified: trunk/OpenMPT/soundlib/Load_ams.cpp ============================================================================== --- trunk/OpenMPT/soundlib/Load_ams.cpp Sat Jul 13 21:48:42 2024 (r21157) +++ trunk/OpenMPT/soundlib/Load_ams.cpp Sun Jul 14 01:44:35 2024 (r21158) @@ -406,8 +406,8 @@ m_nSamples = fileHeader.numSamps; SetupMODPanning(true); - m_modFormat.formatName = U_("Extreme's Tracker"); - m_modFormat.type = U_("ams"); + m_modFormat.formatName = UL_("Extreme's Tracker"); + m_modFormat.type = UL_("ams"); m_modFormat.madeWithTracker = MPT_UFORMAT("Extreme's Tracker {}.{}")(fileHeader.versionHigh, fileHeader.versionLow); m_modFormat.charset = mpt::Charset::CP437; @@ -779,8 +779,8 @@ m_nInstruments = fileHeader.numIns; SetupMODPanning(true); - m_modFormat.formatName = U_("Velvet Studio"); - m_modFormat.type = U_("ams"); + m_modFormat.formatName = UL_("Velvet Studio"); + m_modFormat.type = UL_("ams"); m_modFormat.madeWithTracker = MPT_UFORMAT("Velvet Studio {}.{}")(fileHeader.versionHigh.get(), mpt::ufmt::dec0<2>(fileHeader.versionLow.get())); m_modFormat.charset = mpt::Charset::CP437; Modified: trunk/OpenMPT/soundlib/Load_c67.cpp ============================================================================== --- trunk/OpenMPT/soundlib/Load_c67.cpp Sat Jul 13 21:48:42 2024 (r21157) +++ trunk/OpenMPT/soundlib/Load_c67.cpp Sun Jul 14 01:44:35 2024 (r21158) @@ -159,9 +159,9 @@ InitializeGlobals(MOD_TYPE_S3M, 4 + 9); - m_modFormat.formatName = U_("CDFM"); - m_modFormat.type = U_("c67"); - m_modFormat.madeWithTracker = U_("Composer 670"); + m_modFormat.formatName = UL_("CDFM"); + m_modFormat.type = UL_("c67"); + m_modFormat.madeWithTracker = UL_("Composer 670"); m_modFormat.charset = mpt::Charset::CP437; Order().SetDefaultSpeed(fileHeader.speed); Modified: trunk/OpenMPT/soundlib/Load_dbm.cpp ============================================================================== --- trunk/OpenMPT/soundlib/Load_dbm.cpp Sat Jul 13 21:48:42 2024 (r21157) +++ trunk/OpenMPT/soundlib/Load_dbm.cpp Sun Jul 14 01:44:35 2024 (r21158) @@ -390,8 +390,8 @@ m_playBehaviour.reset(kITInstrWithNoteOff); m_playBehaviour.reset(kITInstrWithNoteOffOldEffects); - m_modFormat.formatName = U_("DigiBooster Pro"); - m_modFormat.type = U_("dbm"); + m_modFormat.formatName = UL_("DigiBooster Pro"); + m_modFormat.type = UL_("dbm"); m_modFormat.madeWithTracker = MPT_UFORMAT("DigiBooster Pro {}.{}")(mpt::ufmt::hex(fileHeader.trkVerHi), mpt::ufmt::hex(fileHeader.trkVerLo)); m_modFormat.charset = mpt::Charset::Amiga_no_C1; Modified: trunk/OpenMPT/soundlib/Load_digi.cpp ============================================================================== --- trunk/OpenMPT/soundlib/Load_digi.cpp Sat Jul 13 21:48:42 2024 (r21157) +++ trunk/OpenMPT/soundlib/Load_digi.cpp Sun Jul 14 01:44:35 2024 (r21158) @@ -123,8 +123,8 @@ m_nSamples = 31; m_nSamplePreAmp = 256 / GetNumChannels(); - m_modFormat.formatName = U_("DigiBooster"); - m_modFormat.type = U_("digi"); + m_modFormat.formatName = UL_("DigiBooster"); + m_modFormat.type = UL_("digi"); m_modFormat.madeWithTracker = MPT_UFORMAT("Digi Booster {}.{}")(fileHeader.versionInt >> 4, fileHeader.versionInt & 0x0F); m_modFormat.charset = mpt::Charset::Amiga_no_C1; Modified: trunk/OpenMPT/soundlib/Load_dmf.cpp ============================================================================== --- trunk/OpenMPT/soundlib/Load_dmf.cpp Sat Jul 13 21:48:42 2024 (r21157) +++ trunk/OpenMPT/soundlib/Load_dmf.cpp Sun Jul 14 01:44:35 2024 (r21158) @@ -952,7 +952,7 @@ m_modFormat.formatName = MPT_UFORMAT("Delusion Digital Music Format v{}")(fileHeader.version); m_modFormat.madeWithTracker = fileHeader.version == 10 ? UL_("X-Tracker 32") : UL_("X-Tracker"); - m_modFormat.type = U_("dmf"); + m_modFormat.type = UL_("dmf"); m_modFormat.charset = mpt::Charset::CP437; m_songName = mpt::String::ReadBuf(mpt::String::spacePadded, fileHeader.songname); Modified: trunk/OpenMPT/soundlib/Load_dsm.cpp ============================================================================== --- trunk/OpenMPT/soundlib/Load_dsm.cpp Sat Jul 13 21:48:42 2024 (r21157) +++ trunk/OpenMPT/soundlib/Load_dsm.cpp Sun Jul 14 01:44:35 2024 (r21158) @@ -208,8 +208,8 @@ InitializeGlobals(MOD_TYPE_DSM, std::max(songHeader.numChannels.get(), uint16(1))); - m_modFormat.formatName = U_("DSIK Format"); - m_modFormat.type = U_("dsm"); + m_modFormat.formatName = UL_("DSIK Format"); + m_modFormat.type = UL_("dsm"); m_modFormat.charset = mpt::Charset::CP437; m_songName = mpt::String::ReadBuf(mpt::String::maybeNullTerminated, songHeader.songName); @@ -515,8 +515,8 @@ } } - m_modFormat.formatName = U_("Dynamic Studio"); - m_modFormat.type = U_("dsm"); + m_modFormat.formatName = UL_("Dynamic Studio"); + m_modFormat.type = UL_("dsm"); m_modFormat.charset = mpt::Charset::CP437; return true; Modified: trunk/OpenMPT/soundlib/Load_dsym.cpp ============================================================================== --- trunk/OpenMPT/soundlib/Load_dsym.cpp Sat Jul 13 21:48:42 2024 (r21157) +++ trunk/OpenMPT/soundlib/Load_dsym.cpp Sun Jul 14 01:44:35 2024 (r21158) @@ -601,8 +601,8 @@ } m_modFormat.formatName = MPT_UFORMAT("Digital Symphony v{}")(fileHeader.version); - m_modFormat.type = U_("dsym"); // RISC OS doesn't use file extensions but this is a common abbreviation used for this tracker - m_modFormat.madeWithTracker = U_("Digital Symphony"); + m_modFormat.type = UL_("dsym"); // RISC OS doesn't use file extensions but this is a common abbreviation used for this tracker + m_modFormat.madeWithTracker = UL_("Digital Symphony"); m_modFormat.charset = mpt::Charset::RISC_OS; return true; Modified: trunk/OpenMPT/soundlib/Load_dtm.cpp ============================================================================== --- trunk/OpenMPT/soundlib/Load_dtm.cpp Sat Jul 13 21:48:42 2024 (r21157) +++ trunk/OpenMPT/soundlib/Load_dtm.cpp Sun Jul 14 01:44:35 2024 (r21158) @@ -573,20 +573,20 @@ mpt::ustring tracker; if(patternFormat == DTM_206_PATTERN_FORMAT) { - tracker = U_("Digital Home Studio"); + tracker = UL_("Digital Home Studio"); } else if(patternFormat == DTM_PT_PATTERN_FORMAT) { - tracker = U_("Digital Tracker 2.3"); + tracker = UL_("Digital Tracker 2.3"); } else if(FileReader chunk = chunks.GetChunk(DTMChunk::idVERS)) { uint32 version = chunk.ReadUint32BE(); tracker = MPT_UFORMAT("Digital Tracker {}.{}")(version >> 4, version & 0x0F); } else { - tracker = U_("Digital Tracker"); + tracker = UL_("Digital Tracker"); } - m_modFormat.formatName = U_("Digital Tracker"); - m_modFormat.type = U_("dtm"); + m_modFormat.formatName = UL_("Digital Tracker"); + m_modFormat.type = UL_("dtm"); m_modFormat.madeWithTracker = std::move(tracker); m_modFormat.charset = mpt::Charset::Amiga_no_C1; Modified: trunk/OpenMPT/soundlib/Load_far.cpp ============================================================================== --- trunk/OpenMPT/soundlib/Load_far.cpp Sat Jul 13 21:48:42 2024 (r21157) +++ trunk/OpenMPT/soundlib/Load_far.cpp Sun Jul 14 01:44:35 2024 (r21158) @@ -170,8 +170,8 @@ m_SongFlags = SONG_LINEARSLIDES | SONG_AUTO_TONEPORTA | SONG_AUTO_TONEPORTA_CONT; m_playBehaviour.set(kPeriodsAreHertz); - m_modFormat.formatName = U_("Farandole Composer"); - m_modFormat.type = U_("far"); + m_modFormat.formatName = UL_("Farandole Composer"); + m_modFormat.type = UL_("far"); m_modFormat.charset = mpt::Charset::CP437; m_songName = mpt::String::ReadBuf(mpt::String::maybeNullTerminated, fileHeader.songName); Modified: trunk/OpenMPT/soundlib/Load_fmt.cpp ============================================================================== --- trunk/OpenMPT/soundlib/Load_fmt.cpp Sat Jul 13 21:48:42 2024 (r21157) +++ trunk/OpenMPT/soundlib/Load_fmt.cpp Sun Jul 14 01:44:35 2024 (r21158) @@ -182,8 +182,8 @@ m->param = delay; } - m_modFormat.formatName = U_("FM Tracker"); - m_modFormat.type = U_("fmt"); + m_modFormat.formatName = UL_("FM Tracker"); + m_modFormat.type = UL_("fmt"); m_modFormat.madeWithTracker = mpt::ToUnicode(mpt::Charset::CP437, mpt::String::ReadBuf(mpt::String::maybeNullTerminated, fileHeader.trackerName)); m_modFormat.charset = mpt::Charset::CP437; Modified: trunk/OpenMPT/soundlib/Load_ftm.cpp ============================================================================== --- trunk/OpenMPT/soundlib/Load_ftm.cpp Sat Jul 13 21:48:42 2024 (r21157) +++ trunk/OpenMPT/soundlib/Load_ftm.cpp Sun Jul 14 01:44:35 2024 (r21158) @@ -124,9 +124,9 @@ m_nMaxPeriod = 5376; const bool moduleWithSamples = (fileHeader.flags & 0x01); - m_modFormat.formatName = U_("Face The Music"); - m_modFormat.type = U_("ftm"); - m_modFormat.madeWithTracker = U_("Face The Music"); + m_modFormat.formatName = UL_("Face The Music"); + m_modFormat.type = UL_("ftm"); + m_modFormat.madeWithTracker = UL_("Face The Music"); m_modFormat.charset = mpt::Charset::Amiga_no_C1; m_songName = mpt::String::ReadBuf(mpt::String::nullTerminated, fileHeader.title); Modified: trunk/OpenMPT/soundlib/Load_gdm.cpp ============================================================================== --- trunk/OpenMPT/soundlib/Load_gdm.cpp Sat Jul 13 21:48:42 2024 (r21157) +++ trunk/OpenMPT/soundlib/Load_gdm.cpp Sun Jul 14 01:44:35 2024 (r21158) @@ -171,8 +171,8 @@ InitializeGlobals(gdmFormatOrigin[fileHeader.originalFormat], fileHeader.GetNumChannels()); m_SongFlags.set(SONG_IMPORTED); - m_modFormat.formatName = U_("General Digital Music"); - m_modFormat.type = U_("gdm"); + m_modFormat.formatName = UL_("General Digital Music"); + m_modFormat.type = UL_("gdm"); m_modFormat.madeWithTracker = MPT_UFORMAT("BWSB 2GDM {}.{}")(fileHeader.trackerMajorVer, fileHeader.formatMinorVer); m_modFormat.originalType = gdmFormatOriginType[fileHeader.originalFormat]; m_modFormat.originalFormatName = gdmFormatOriginFormat[fileHeader.originalFormat]; Modified: trunk/OpenMPT/soundlib/Load_gmc.cpp ============================================================================== --- trunk/OpenMPT/soundlib/Load_gmc.cpp Sat Jul 13 21:48:42 2024 (r21157) +++ trunk/OpenMPT/soundlib/Load_gmc.cpp Sun Jul 14 01:44:35 2024 (r21158) @@ -229,8 +229,8 @@ } } - m_modFormat.madeWithTracker = U_("Game Music Creator"); - m_modFormat.formatName = U_("Game Music Creator"); + m_modFormat.madeWithTracker = UL_("Game Music Creator"); + m_modFormat.formatName = UL_("Game Music Creator"); m_modFormat.type = UL_("GMC"); m_modFormat.charset = mpt::Charset::Amiga_no_C1; // No strings in this format... Modified: trunk/OpenMPT/soundlib/Load_gt2.cpp ============================================================================== --- trunk/OpenMPT/soundlib/Load_gt2.cpp Sat Jul 13 21:48:42 2024 (r21157) +++ trunk/OpenMPT/soundlib/Load_gt2.cpp Sun Jul 14 01:44:35 2024 (r21158) @@ -538,9 +538,9 @@ m_playBehaviour.set(kApplyOffsetWithoutNote); SetupMODPanning(true); - m_modFormat.madeWithTracker = U_("Graoumf Tracker"); + m_modFormat.madeWithTracker = UL_("Graoumf Tracker"); m_modFormat.formatName = MPT_UFORMAT("Graoumf Tracker v{}")(fileHeader.fileVersion); - m_modFormat.type = U_("gtk"); + m_modFormat.type = UL_("gtk"); m_modFormat.charset = mpt::Charset::ISO8859_1_no_C1; m_songName = mpt::String::ReadBuf(mpt::String::spacePadded, fileHeader.songName); @@ -1211,7 +1211,7 @@ m_modFormat.madeWithTracker = mpt::ToUnicode(mpt::Charset::ASCII, mpt::String::ReadBuf(mpt::String::spacePadded, fileHeader.trackerName)); m_modFormat.formatName = (fileHeader.fileVersion <= 5 ? MPT_UFORMAT("Graoumf Tracker v{}") : MPT_UFORMAT("Graoumf Tracker 2 v{}"))(fileHeader.fileVersion); - m_modFormat.type = U_("gt2"); + m_modFormat.type = UL_("gt2"); m_modFormat.charset = mpt::Charset::ISO8859_1_no_C1; m_songName = mpt::String::ReadBuf(mpt::String::spacePadded, fileHeader.songName); Modified: trunk/OpenMPT/soundlib/Load_ice.cpp ============================================================================== --- trunk/OpenMPT/soundlib/Load_ice.cpp Sat Jul 13 21:48:42 2024 (r21157) +++ trunk/OpenMPT/soundlib/Load_ice.cpp Sun Jul 14 01:44:35 2024 (r21158) @@ -64,16 +64,16 @@ if(IsMagic(magic, "MTN\0")) { InitializeGlobals(MOD_TYPE_MOD, 4); - m_modFormat.formatName = U_("MnemoTroN SoundTracker"); - m_modFormat.type = U_("st26"); - m_modFormat.madeWithTracker = U_("SoundTracker 2.6"); + m_modFormat.formatName = UL_("MnemoTroN SoundTracker"); + m_modFormat.type = UL_("st26"); + m_modFormat.madeWithTracker = UL_("SoundTracker 2.6"); m_modFormat.charset = mpt::Charset::Amiga_no_C1; } else if(IsMagic(magic, "IT10")) { InitializeGlobals(MOD_TYPE_MOD, 4); - m_modFormat.formatName = U_("Ice Tracker"); - m_modFormat.type = U_("ice"); - m_modFormat.madeWithTracker = U_("Ice Tracker 1.0 / 1.1"); + m_modFormat.formatName = UL_("Ice Tracker"); + m_modFormat.type = UL_("ice"); + m_modFormat.madeWithTracker = UL_("Ice Tracker 1.0 / 1.1"); m_modFormat.charset = mpt::Charset::Amiga_no_C1; } else { Modified: trunk/OpenMPT/soundlib/Load_imf.cpp ============================================================================== --- trunk/OpenMPT/soundlib/Load_imf.cpp Sat Jul 13 21:48:42 2024 (r21157) +++ trunk/OpenMPT/soundlib/Load_imf.cpp Sun Jul 14 01:44:35 2024 (r21158) @@ -431,8 +431,8 @@ InitializeGlobals(MOD_TYPE_IMF, fileHeader.GetNumChannels()); - m_modFormat.formatName = U_("Imago Orpheus"); - m_modFormat.type = U_("imf"); + m_modFormat.formatName = UL_("Imago Orpheus"); + m_modFormat.type = UL_("imf"); m_modFormat.charset = mpt::Charset::CP437; // Read channel configuration Modified: trunk/OpenMPT/soundlib/Load_it.cpp ============================================================================== --- trunk/OpenMPT/soundlib/Load_it.cpp Sat Jul 13 21:48:42 2024 (r21157) +++ trunk/OpenMPT/soundlib/Load_it.cpp Sun Jul 14 01:44:35 2024 (r21158) @@ -490,7 +490,7 @@ { // ModPlug Tracker b3.2 - 1.09, instruments 557 bytes apart m_dwLastSavedWithVersion = MPT_V("1.09.00.00"); - madeWithTracker = U_("ModPlug Tracker b3.2 - 1.09"); + madeWithTracker = UL_("ModPlug Tracker b3.2 - 1.09"); interpretModPlugMade = true; } else if(fileHeader.cwtv == 0x0300 && fileHeader.cmwt == 0x0300 && fileHeader.reserved == 0 && fileHeader.ordnum == 256 && fileHeader.sep == 128 && fileHeader.pwd == 0) { @@ -610,13 +610,13 @@ } if(oldUNMO3) { - madeWithTracker = U_("UNMO3 <= 2.4"); + madeWithTracker = UL_("UNMO3 <= 2.4"); } } if(possiblyUNMO3 && fileHeader.cwtv == 0) { - madeWithTracker = U_("UNMO3 v0/1"); + madeWithTracker = UL_("UNMO3 v0/1"); } // Reading IT Edit History Info @@ -642,9 +642,9 @@ if(possiblyUNMO3 && nflt == 0) { if(fileHeader.special & ITFileHeader::embedPatternHighlights) - madeWithTracker = U_("UNMO3 <= 2.4.0.1"); // Set together with MIDI macro embed flag + madeWithTracker = UL_("UNMO3 <= 2.4.0.1"); // Set together with MIDI macro embed flag else - madeWithTracker = U_("UNMO3"); // Either 2.4.0.2+ or no MIDI macros embedded + madeWithTracker = UL_("UNMO3"); // Either 2.4.0.2+ or no MIDI macros embedded } } else { @@ -659,7 +659,7 @@ // Otherwise we end up here and might have to read the edit history length. if(file.ReadUint16LE() == 0) { - madeWithTracker = U_("UNMO3 <= 2.4"); + madeWithTracker = UL_("UNMO3 <= 2.4"); } else { // These were not zero bytes, but potentially belong to the upcoming MIDI config - need to skip back. @@ -711,7 +711,7 @@ || memchr(fileHeader.chnpan, 0xFF, sizeof(fileHeader.chnpan)) != nullptr) { m_dwLastSavedWithVersion = MPT_V("1.16"); - madeWithTracker = U_("ModPlug Tracker 1.09 - 1.16"); + madeWithTracker = UL_("ModPlug Tracker 1.09 - 1.16"); } else { // OpenMPT 1.17 disguised as this in compatible mode, @@ -719,7 +719,7 @@ // It also doesn't write a final "---" pattern in the order list. // Could also be original ModPlug Tracker though if all 64 channels and no ModPlug extensions are used. m_dwLastSavedWithVersion = MPT_V("1.17"); - madeWithTracker = U_("OpenMPT 1.17 (compatibility export)"); + madeWithTracker = UL_("OpenMPT 1.17 (compatibility export)"); } interpretModPlugMade = true; } @@ -856,7 +856,7 @@ possibleXMconversion = false; } if(possibleXMconversion) - madeWithTracker = U_("XM Conversion"); + madeWithTracker = UL_("XM Conversion"); } m_nMinPeriod = 0; @@ -1148,7 +1148,7 @@ if(m_dwLastSavedWithVersion && madeWithTracker.empty()) { - madeWithTracker = U_("OpenMPT ") + mpt::ufmt::val(m_dwLastSavedWithVersion); + madeWithTracker = UL_("OpenMPT ") + mpt::ufmt::val(m_dwLastSavedWithVersion); bool isCompatExport = memcmp(&fileHeader.reserved, "OMPT", 4) && (fileHeader.cwtv & 0xF000) == 0x5000; if(m_dwLastSavedWithVersion == MPT_V("1.17.00.00")) @@ -1156,10 +1156,10 @@ if(isCompatExport) { - madeWithTracker += U_(" (compatibility export)"); + madeWithTracker += UL_(" (compatibility export)"); } else if(m_dwLastSavedWithVersion.IsTestVersion()) { - madeWithTracker += U_(" (test build)"); + madeWithTracker += UL_(" (test build)"); } } else { @@ -1170,19 +1170,19 @@ if(isBeRoTracker) { // Old versions - madeWithTracker = U_("BeRoTracker"); + madeWithTracker = UL_("BeRoTracker"); } else if(fileHeader.cwtv == 0x0214 && fileHeader.cmwt == 0x0200 && fileHeader.flags == 9 && fileHeader.special == 0 && fileHeader.highlight_major == 0 && fileHeader.highlight_minor == 0 && fileHeader.insnum == 0 && fileHeader.patnum + 1 == fileHeader.ordnum && fileHeader.globalvol == 128 && fileHeader.mv == 100 && fileHeader.speed == 1 && fileHeader.sep == 128 && fileHeader.pwd == 0 && fileHeader.msglength == 0 && fileHeader.msgoffset == 0 && fileHeader.reserved == 0) { - madeWithTracker = U_("OpenSPC conversion"); + madeWithTracker = UL_("OpenSPC conversion"); } else if(fileHeader.cwtv == 0x0202 && fileHeader.cmwt == 0x0200 && fileHeader.highlight_major == 0 && fileHeader.highlight_minor == 0 && fileHeader.reserved == 0 && !patPos.empty() && !smpPos.empty() && patPos[0] != 0 && patPos[0] < smpPos[0]) { // ModPlug Tracker 1.0 pre-alpha up to alpha 4, patterns located before instruments / samples m_dwLastSavedWithVersion = MPT_V("1.00.00.A0"); - madeWithTracker = U_("ModPlug Tracker 1.0 pre-alpha / alpha"); + madeWithTracker = UL_("ModPlug Tracker 1.0 pre-alpha / alpha"); interpretModPlugMade = true; } else if(fileHeader.cwtv == 0x0214 && fileHeader.cmwt == 0x0200 && fileHeader.highlight_major == 0 && fileHeader.highlight_minor == 0 && fileHeader.reserved == 0) { @@ -1193,37 +1193,37 @@ if(insPos.size() >= 2 && insPos[1] - insPos[0] == 557) { m_dwLastSavedWithVersion = MPT_V("1.00.00.B2"); - madeWithTracker = U_("ModPlug Tracker 1.0b2"); + madeWithTracker = UL_("ModPlug Tracker 1.0b2"); } else { m_dwLastSavedWithVersion = MPT_V("1.00.00.B1"); - madeWithTracker = U_("ModPlug Tracker 1.0 alpha / beta"); + madeWithTracker = UL_("ModPlug Tracker 1.0 alpha / beta"); } } else { // ModPlug Tracker 1.0a5, instruments 560 bytes apart m_dwLastSavedWithVersion = MPT_V("1.00.00.A5"); - madeWithTracker = U_("ModPlug Tracker 1.0a5"); + madeWithTracker = UL_("ModPlug Tracker 1.0a5"); } interpretModPlugMade = true; } else if(fileHeader.cwtv == 0x0214 && fileHeader.cmwt == 0x0214 && !memcmp(&fileHeader.reserved, "CHBI", 4)) { - madeWithTracker = U_("ChibiTracker"); + madeWithTracker = UL_("ChibiTracker"); m_playBehaviour.reset(kITShortSampleRetrig); m_nSamplePreAmp /= 2; } else if(fileHeader.cwtv == 0x0214 && fileHeader.cmwt == 0x0214 && fileHeader.special <= 1 && fileHeader.pwd == 0 && fileHeader.reserved == 0 && (fileHeader.flags & (ITFileHeader::vol0Optimisations | ITFileHeader::instrumentMode | ITFileHeader::useMIDIPitchController | ITFileHeader::reqEmbeddedMIDIConfig | ITFileHeader::extendedFilterRange)) == ITFileHeader::instrumentMode && m_nSamples > 1 && (Samples[1].filename == "XXXXXXXX.YYY")) { - madeWithTracker = U_("CheeseTracker"); + madeWithTracker = UL_("CheeseTracker"); } else if(fileHeader.cwtv == 0 && madeWithTracker.empty()) { - madeWithTracker = U_("Unknown"); + madeWithTracker = UL_("Unknown"); } else if(fileHeader.cmwt < 0x0300 && madeWithTracker.empty()) { if(fileHeader.cmwt > 0x0214) { - madeWithTracker = U_("Impulse Tracker 2.15"); + madeWithTracker = UL_("Impulse Tracker 2.15"); } else if(fileHeader.cwtv > 0x0214) { // Patched update of IT 2.14 (0x0215 - 0x0217 == p1 - p3) @@ -1286,27 +1286,27 @@ madeWithTracker = MPT_UFORMAT("pyIT {}.{}")((fileHeader.cwtv & 0x0F00) >> 8, mpt::ufmt::hex0<2>(fileHeader.cwtv & 0xFF)); break; case 6: - madeWithTracker = U_("BeRoTracker"); + madeWithTracker = UL_("BeRoTracker"); break; case 7: if(fileHeader.cwtv == 0x7FFF && fileHeader.cmwt == 0x0215) - madeWithTracker = U_("munch.py"); + madeWithTracker = UL_("munch.py"); else madeWithTracker = MPT_UFORMAT("ITMCK {}.{}.{}")((fileHeader.cwtv >> 8) & 0x0F, (fileHeader.cwtv >> 4) & 0x0F, fileHeader.cwtv & 0x0F); break; case 0xD: if(fileHeader.cwtv == 0xDAEB) - madeWithTracker = U_("spc2it"); + madeWithTracker = UL_("spc2it"); else if(fileHeader.cwtv == 0xD1CE) - madeWithTracker = U_("itwriter"); + madeWithTracker = UL_("itwriter"); else - madeWithTracker = U_("Unknown"); + madeWithTracker = UL_("Unknown"); break; } } if(anyADPCM) - madeWithTracker += U_(" (ADPCM packed)"); + madeWithTracker += UL_(" (ADPCM packed)"); // Ignore MIDI data. Fixes some files like denonde.it that were made with old versions of Impulse Tracker (which didn't support Zxx filters) and have Zxx effects in the patterns. // Example: denonde.it by Mystical Modified: trunk/OpenMPT/soundlib/Load_itp.cpp ============================================================================== --- trunk/OpenMPT/soundlib/Load_itp.cpp Sat Jul 13 21:48:42 2024 (r21157) +++ trunk/OpenMPT/soundlib/Load_itp.cpp Sun Jul 14 01:44:35 2024 (r21158) @@ -417,9 +417,9 @@ m_MidiCfg.Reset(); } - m_modFormat.formatName = U_("Impulse Tracker Project"); - m_modFormat.type = U_("itp"); - m_modFormat.madeWithTracker = U_("OpenMPT ") + mpt::ufmt::val(m_dwLastSavedWithVersion); + m_modFormat.formatName = UL_("Impulse Tracker Project"); + m_modFormat.type = UL_("itp"); + m_modFormat.madeWithTracker = UL_("OpenMPT ") + mpt::ufmt::val(m_dwLastSavedWithVersion); m_modFormat.charset = mpt::Charset::Windows1252; return true; Modified: trunk/OpenMPT/soundlib/Load_kris.cpp ============================================================================== --- trunk/OpenMPT/soundlib/Load_kris.cpp Sat Jul 13 21:48:42 2024 (r21157) +++ trunk/OpenMPT/soundlib/Load_kris.cpp Sun Jul 14 01:44:35 2024 (r21158) @@ -134,9 +134,9 @@ } } - m_modFormat.formatName = U_("ChipTracker"); - m_modFormat.type = U_("mod"); - m_modFormat.madeWithTracker = U_("ChipTracker"); + m_modFormat.formatName = UL_("ChipTracker"); + m_modFormat.type = UL_("mod"); + m_modFormat.madeWithTracker = UL_("ChipTracker"); m_modFormat.charset = mpt::Charset::Amiga_no_C1; if(loadFlags & loadSampleData) Modified: trunk/OpenMPT/soundlib/Load_mdl.cpp ============================================================================== --- trunk/OpenMPT/soundlib/Load_mdl.cpp Sat Jul 13 21:48:42 2024 (r21157) +++ trunk/OpenMPT/soundlib/Load_mdl.cpp Sun Jul 14 01:44:35 2024 (r21158) @@ -516,13 +516,13 @@ m_playBehaviour.reset(kITVibratoTremoloPanbrello); m_playBehaviour.reset(kITSCxStopsSample); // Gate effect in underbeat.mdl - m_modFormat.formatName = U_("Digitrakker"); - m_modFormat.type = U_("mdl"); + m_modFormat.formatName = UL_("Digitrakker"); + m_modFormat.type = UL_("mdl"); m_modFormat.madeWithTracker = U_("Digitrakker ") + ( - (fileHeader.version == 0x11) ? U_("3") // really could be 2.99b - close enough - : (fileHeader.version == 0x10) ? U_("2.3") - : (fileHeader.version == 0x00) ? U_("2.0 - 2.2b") // there was no 1.x release - : U_("")); + (fileHeader.version == 0x11) ? UL_("3") // really could be 2.99b - close enough + : (fileHeader.version == 0x10) ? UL_("2.3") + : (fileHeader.version == 0x00) ? UL_("2.0 - 2.2b") // there was no 1.x release + : UL_("")); m_modFormat.charset = mpt::Charset::CP437; m_songName = mpt::String::ReadBuf(mpt::String::spacePadded, info.title); Modified: trunk/OpenMPT/soundlib/Load_mid.cpp ============================================================================== --- trunk/OpenMPT/soundlib/Load_mid.cpp Sat Jul 13 21:48:42 2024 (r21157) +++ trunk/OpenMPT/soundlib/Load_mid.cpp Sun Jul 14 01:44:35 2024 (r21158) @@ -643,10 +643,10 @@ const ORDERINDEX MPT_MIDI_IMPORT_MAX_ORDERS = MAX_ORDERS; #endif - m_songArtist = U_("MIDI Conversion"); - m_modFormat.formatName = U_("Standard MIDI File"); + m_songArtist = UL_("MIDI Conversion"); + m_modFormat.formatName = UL_("Standard MIDI File"); m_modFormat.type = isRIFF ? UL_("rmi") : UL_("mid"); - m_modFormat.madeWithTracker = U_("Standard MIDI File"); + m_modFormat.madeWithTracker = UL_("Standard MIDI File"); m_modFormat.charset = mpt::Charset::ISO8859_1; SetMixLevels(MixLevels::v1_17RC3); Modified: trunk/OpenMPT/soundlib/Load_mo3.cpp ============================================================================== --- trunk/OpenMPT/soundlib/Load_mo3.cpp Sat Jul 13 21:48:42 2024 (r21157) +++ trunk/OpenMPT/soundlib/Load_mo3.cpp Sun Jul 14 01:44:35 2024 (r21158) @@ -1489,7 +1489,7 @@ if(m_dwLastSavedWithVersion) { - madeWithTracker = U_("OpenMPT ") + mpt::ufmt::val(m_dwLastSavedWithVersion); + madeWithTracker = UL_("OpenMPT ") + mpt::ufmt::val(m_dwLastSavedWithVersion); } break; } @@ -1537,36 +1537,36 @@ madeWithTracker = MPT_UFORMAT("MO3 v{} ({})")(version, madeWithTracker); m_modFormat.formatName = MPT_UFORMAT("Un4seen MO3 v{}")(version); - m_modFormat.type = U_("mo3"); + m_modFormat.type = UL_("mo3"); switch(GetType()) { case MOD_TYPE_MTM: - m_modFormat.originalType = U_("mtm"); - m_modFormat.originalFormatName = U_("MultiTracker"); + m_modFormat.originalType = UL_("mtm"); + m_modFormat.originalFormatName = UL_("MultiTracker"); break; case MOD_TYPE_MOD: - m_modFormat.originalType = U_("mod"); - m_modFormat.originalFormatName = U_("Generic MOD"); + m_modFormat.originalType = UL_("mod"); + m_modFormat.originalFormatName = UL_("Generic MOD"); break; case MOD_TYPE_XM: - m_modFormat.originalType = U_("xm"); - m_modFormat.originalFormatName = U_("FastTracker 2"); + m_modFormat.originalType = UL_("xm"); + m_modFormat.originalFormatName = UL_("FastTracker 2"); break; case MOD_TYPE_S3M: - m_modFormat.originalType = U_("s3m"); - m_modFormat.originalFormatName = U_("Scream Tracker 3"); + m_modFormat.originalType = UL_("s3m"); + m_modFormat.originalFormatName = UL_("Scream Tracker 3"); break; case MOD_TYPE_IT: - m_modFormat.originalType = U_("it"); + m_modFormat.originalType = UL_("it"); if(cmwt) m_modFormat.originalFormatName = MPT_UFORMAT("Impulse Tracker {}.{}")(cmwt >> 8, mpt::ufmt::hex0<2>(cmwt & 0xFF)); else - m_modFormat.originalFormatName = U_("Impulse Tracker"); + m_modFormat.originalFormatName = UL_("Impulse Tracker"); break; case MOD_TYPE_MPT: - m_modFormat.originalType = U_("mptm"); - m_modFormat.originalFormatName = U_("OpenMPT MPTM"); + m_modFormat.originalType = UL_("mptm"); + m_modFormat.originalFormatName = UL_("OpenMPT MPTM"); break; default: MPT_ASSERT_NOTREACHED(); Modified: trunk/OpenMPT/soundlib/Load_mod.cpp ============================================================================== --- trunk/OpenMPT/soundlib/Load_mod.cpp Sat Jul 13 21:48:42 2024 (r21157) +++ trunk/OpenMPT/soundlib/Load_mod.cpp Sun Jul 14 01:44:35 2024 (r21158) @@ -859,13 +859,13 @@ std::transform(std::begin(magic), std::end(magic), std::begin(magic), [](unsigned char c) -> unsigned char { return (c < ' ') ? ' ' : c; }); m_modFormat.formatName = MPT_UFORMAT("ProTracker MOD ({})")(mpt::ToUnicode(mpt::Charset::ASCII, std::string(std::begin(magic), std::end(magic)))); - m_modFormat.type = U_("mod"); + m_modFormat.type = UL_("mod"); if(modMagicResult.madeWithTracker) m_modFormat.madeWithTracker = modMagicResult.madeWithTracker; m_modFormat.charset = mpt::Charset::Amiga_no_C1; if(anyADPCM) - m_modFormat.madeWithTracker += U_(" (ADPCM packed)"); + m_modFormat.madeWithTracker += UL_(" (ADPCM packed)"); return true; } Modified: trunk/OpenMPT/soundlib/Load_mt2.cpp ============================================================================== --- trunk/OpenMPT/soundlib/Load_mt2.cpp Sat Jul 13 21:48:42 2024 (r21157) +++ trunk/OpenMPT/soundlib/Load_mt2.cpp Sun Jul 14 01:44:35 2024 (r21158) @@ -450,7 +450,7 @@ InitializeGlobals(MOD_TYPE_MT2, fileHeader.numChannels); m_modFormat.formatName = MPT_UFORMAT("MadTracker {}.{}")(fileHeader.version >> 8, mpt::ufmt::hex0<2>(fileHeader.version & 0xFF)); - m_modFormat.type = U_("mt2"); + m_modFormat.type = UL_("mt2"); m_modFormat.madeWithTracker = mpt::ToUnicode(mpt::Charset::Windows1252, mpt::String::ReadBuf(mpt::String::maybeNullTerminated, fileHeader.trackerName)); m_modFormat.charset = mpt::Charset::Windows1252; Modified: trunk/OpenMPT/soundlib/Load_mtm.cpp ============================================================================== --- trunk/OpenMPT/soundlib/Load_mtm.cpp Sat Jul 13 21:48:42 2024 (r21157) +++ trunk/OpenMPT/soundlib/Load_mtm.cpp Sun Jul 14 01:44:35 2024 (r21158) @@ -139,8 +139,8 @@ m_songName = mpt::String::ReadBuf(mpt::String::maybeNullTerminated, fileHeader.songName); m_nSamples = fileHeader.numSamples; - m_modFormat.formatName = U_("MultiTracker"); - m_modFormat.type = U_("mtm"); + m_modFormat.formatName = UL_("MultiTracker"); + m_modFormat.type = UL_("mtm"); m_modFormat.madeWithTracker = MPT_UFORMAT("MultiTracker {}.{}")(fileHeader.version >> 4, fileHeader.version & 0x0F); m_modFormat.charset = mpt::Charset::CP437; Modified: trunk/OpenMPT/soundlib/Load_mus_km.cpp ============================================================================== --- trunk/OpenMPT/soundlib/Load_mus_km.cpp Sat Jul 13 21:48:42 2024 (r21157) +++ trunk/OpenMPT/soundlib/Load_mus_km.cpp Sun Jul 14 01:44:35 2024 (r21158) @@ -373,8 +373,8 @@ Order.SetSequence(0); - m_modFormat.formatName = U_("Karl Morton Music Format"); - m_modFormat.type = U_("mus"); + m_modFormat.formatName = UL_("Karl Morton Music Format"); + m_modFormat.type = UL_("mus"); m_modFormat.charset = mpt::Charset::CP437; return true; Modified: trunk/OpenMPT/soundlib/Load_okt.cpp ============================================================================== --- trunk/OpenMPT/soundlib/Load_okt.cpp Sat Jul 13 21:48:42 2024 (r21157) +++ trunk/OpenMPT/soundlib/Load_okt.cpp Sun Jul 14 01:44:35 2024 (r21158) @@ -348,8 +348,8 @@ InitializeGlobals(MOD_TYPE_OKT, 0); - m_modFormat.formatName = U_("Oktalyzer"); - m_modFormat.type = U_("okt"); + m_modFormat.formatName = UL_("Oktalyzer"); + m_modFormat.type = UL_("okt"); m_modFormat.charset = mpt::Charset::Amiga_no_C1; // Go through IFF chunks... Modified: trunk/OpenMPT/soundlib/Load_plm.cpp ============================================================================== --- trunk/OpenMPT/soundlib/Load_plm.cpp Sat Jul 13 21:48:42 2024 (r21157) +++ trunk/OpenMPT/soundlib/Load_plm.cpp Sun Jul 14 01:44:35 2024 (r21158) @@ -149,8 +149,8 @@ m_SongFlags = SONG_ITOLDEFFECTS; m_playBehaviour.set(kApplyOffsetWithoutNote); - m_modFormat.formatName = U_("Disorder Tracker 2"); - m_modFormat.type = U_("plm"); + m_modFormat.formatName = UL_("Disorder Tracker 2"); + m_modFormat.type = UL_("plm"); m_modFormat.charset = mpt::Charset::CP437; // Some PLMs use ASCIIZ, some space-padding strings...weird. Oh, and the file browser stops at 0 bytes in the name, the main GUI doesn't. Modified: trunk/OpenMPT/soundlib/Load_psm.cpp ============================================================================== --- trunk/OpenMPT/soundlib/Load_psm.cpp Sat Jul 13 21:48:42 2024 (r21157) +++ trunk/OpenMPT/soundlib/Load_psm.cpp Sun Jul 14 01:44:35 2024 (r21158) @@ -590,8 +590,8 @@ ChnSettings[chn].dwFlags.set(CHN_SURROUND, subsongs[0].channelSurround[chn]); } - m_modFormat.formatName = sinariaFormat ? U_("Epic MegaGames MASI (New Version / Sinaria)") : U_("Epic MegaGames MASI (New Version)"); - m_modFormat.type = U_("psm"); + m_modFormat.formatName = sinariaFormat ? UL_("Epic MegaGames MASI (New Version / Sinaria)") : UL_("Epic MegaGames MASI (New Version)"); + m_modFormat.type = UL_("psm"); m_modFormat.charset = mpt::Charset::CP437; if(!(loadFlags & loadPatternData)) @@ -1046,8 +1046,8 @@ // Seems to be valid! InitializeGlobals(MOD_TYPE_PSM, Clamp(CHANNELINDEX(fileHeader.numChannelsPlay), CHANNELINDEX(fileHeader.numChannelsReal), MAX_BASECHANNELS)); - m_modFormat.formatName = U_("Epic MegaGames MASI (Old Version)"); - m_modFormat.type = U_("psm"); + m_modFormat.formatName = UL_("Epic MegaGames MASI (Old Version)"); + m_modFormat.type = UL_("psm"); m_modFormat.charset = mpt::Charset::CP437; m_nSamplePreAmp = fileHeader.masterVolume; Modified: trunk/OpenMPT/soundlib/Load_pt36.cpp ============================================================================== --- trunk/OpenMPT/soundlib/Load_pt36.cpp Sat Jul 13 21:48:42 2024 (r21157) +++ trunk/OpenMPT/soundlib/Load_pt36.cpp Sun Jul 14 01:44:35 2024 (r21158) @@ -154,7 +154,7 @@ if(version.empty()) { - version = U_("3.6"); + version = UL_("3.6"); } // both an info chunk and a module are required @@ -202,7 +202,7 @@ } } - m_modFormat.madeWithTracker = U_("ProTracker ") + version; + m_modFormat.madeWithTracker = UL_("ProTracker ") + version; } m_SongFlags.set(SONG_PT_MODE); m_playBehaviour.set(kMODIgnorePanning); Modified: trunk/OpenMPT/soundlib/Load_ptm.cpp ============================================================================== --- trunk/OpenMPT/soundlib/Load_ptm.cpp Sat Jul 13 21:48:42 2024 (r21157) +++ trunk/OpenMPT/soundlib/Load_ptm.cpp Sun Jul 14 01:44:35 2024 (r21158) @@ -170,8 +170,8 @@ m_songName = mpt::String::ReadBuf(mpt::String::maybeNullTerminated, fileHeader.songname); - m_modFormat.formatName = U_("PolyTracker"); - m_modFormat.type = U_("ptm"); + m_modFormat.formatName = UL_("PolyTracker"); + m_modFormat.type = UL_("ptm"); m_modFormat.madeWithTracker = MPT_UFORMAT("PolyTracker {}.{}")(fileHeader.versionHi.get(), mpt::ufmt::hex0<2>(fileHeader.versionLo.get())); m_modFormat.charset = mpt::Charset::CP437; Modified: trunk/OpenMPT/soundlib/Load_rtm.cpp ============================================================================== --- trunk/OpenMPT/soundlib/Load_rtm.cpp Sat Jul 13 21:48:42 2024 (r21157) +++ trunk/OpenMPT/soundlib/Load_rtm.cpp Sun Jul 14 01:44:35 2024 (r21158) @@ -337,7 +337,7 @@ } m_modFormat.formatName = MPT_UFORMAT("Real Tracker {}.{}")(fileHeader.version >> 8, mpt::ufmt::hex0<2>(fileHeader.version & 0xFF)); - m_modFormat.type = U_("rtm"); + m_modFormat.type = UL_("rtm"); m_modFormat.madeWithTracker = mpt::ToUnicode(mpt::Charset::CP437, mpt::String::ReadBuf(mpt::String::maybeNullTerminated, songHeader.software)); m_modFormat.charset = mpt::Charset::CP437; Modified: trunk/OpenMPT/soundlib/Load_sfx.cpp ============================================================================== --- trunk/OpenMPT/soundlib/Load_sfx.cpp Sat Jul 13 21:48:42 2024 (r21157) +++ trunk/OpenMPT/soundlib/Load_sfx.cpp Sun Jul 14 01:44:35 2024 (r21158) @@ -444,7 +444,7 @@ } } - m_modFormat.formatName = m_nSamples == 15 ? MPT_UFORMAT("SoundFX 1.{}")(version) : U_("SoundFX 2.0 / MultiMedia Sound"); + m_modFormat.formatName = m_nSamples == 15 ? MPT_UFORMAT("SoundFX 1.{}")(version) : UL_("SoundFX 2.0 / MultiMedia Sound"); m_modFormat.type = m_nSamples == 15 ? UL_("sfx") : UL_("sfx2"); m_modFormat.charset = mpt::Charset::Amiga_no_C1; Modified: trunk/OpenMPT/soundlib/Load_stk.cpp ============================================================================== --- trunk/OpenMPT/soundlib/Load_stk.cpp Sat Jul 13 21:48:42 2024 (r21157) +++ trunk/OpenMPT/soundlib/Load_stk.cpp Sun Jul 14 01:44:35 2024 (r21158) @@ -462,8 +462,8 @@ break; } - m_modFormat.formatName = U_("Soundtracker"); - m_modFormat.type = U_("stk"); + m_modFormat.formatName = UL_("Soundtracker"); + m_modFormat.type = UL_("stk"); m_modFormat.madeWithTracker = madeWithTracker; m_modFormat.charset = mpt::Charset::Amiga_no_C1; Modified: trunk/OpenMPT/soundlib/Load_stm.cpp ============================================================================== --- trunk/OpenMPT/soundlib/Load_stm.cpp Sat Jul 13 21:48:42 2024 (r21157) +++ trunk/OpenMPT/soundlib/Load_stm.cpp Sun Jul 14 01:44:35 2024 (r21158) @@ -233,8 +233,8 @@ m_songName = mpt::String::ReadBuf(mpt::String::maybeNullTerminated, fileHeader.songname); - m_modFormat.formatName = U_("Scream Tracker 2"); - m_modFormat.type = U_("stm"); + m_modFormat.formatName = UL_("Scream Tracker 2"); + m_modFormat.type = UL_("stm"); m_modFormat.madeWithTracker = MPT_UFORMAT("Scream Tracker {}.{}")(fileHeader.verMajor, mpt::ufmt::dec0<2>(fileHeader.verMinor)); m_modFormat.charset = mpt::Charset::CP437; @@ -588,8 +588,8 @@ } } - m_modFormat.formatName = U_("Scream Tracker Music Interface Kit"); - m_modFormat.type = U_("stx"); + m_modFormat.formatName = UL_("Scream Tracker Music Interface Kit"); + m_modFormat.type = UL_("stx"); m_modFormat.charset = mpt::Charset::CP437; m_modFormat.madeWithTracker = MPT_UFORMAT("STM2STX 1.{}")(formatVersion); Modified: trunk/OpenMPT/soundlib/Load_stp.cpp ============================================================================== --- trunk/OpenMPT/soundlib/Load_stp.cpp Sat Jul 13 21:48:42 2024 (r21157) +++ trunk/OpenMPT/soundlib/Load_stp.cpp Sun Jul 14 01:44:35 2024 (r21158) @@ -257,7 +257,7 @@ InitializeGlobals(MOD_TYPE_STP, 4); m_modFormat.formatName = MPT_UFORMAT("Soundtracker Pro II v{}")(fileHeader.version); - m_modFormat.type = U_("stp"); + m_modFormat.type = UL_("stp"); m_modFormat.charset = mpt::Charset::Amiga_no_C1; m_nSamples = 0; Modified: trunk/OpenMPT/soundlib/Load_symmod.cpp ============================================================================== --- trunk/OpenMPT/soundlib/Load_symmod.cpp Sat Jul 13 21:48:42 2024 (r21157) +++ trunk/OpenMPT/soundlib/Load_symmod.cpp Sun Jul 14 01:44:35 2024 (r21158) @@ -1902,14 +1902,14 @@ ChnSettings[chn].nMixPlugin = useDSP ? 1 : 0; // For MIDI macros controlling the echo DSP } - m_modFormat.formatName = U_("Symphonie"); - m_modFormat.type = U_("symmod"); + m_modFormat.formatName = UL_("Symphonie"); + m_modFormat.type = UL_("symmod"); if(!isSymphoniePro) - m_modFormat.madeWithTracker = U_("Symphonie"); // or Symphonie Jr + m_modFormat.madeWithTracker = UL_("Symphonie"); // or Symphonie Jr else if(instruments.size() <= 128) - m_modFormat.madeWithTracker = U_("Symphonie Pro"); + m_modFormat.madeWithTracker = UL_("Symphonie Pro"); else - m_modFormat.madeWithTracker = U_("Symphonie Pro 256"); + m_modFormat.madeWithTracker = UL_("Symphonie Pro 256"); m_modFormat.charset = mpt::Charset::Amiga_no_C1; return true; Modified: trunk/OpenMPT/soundlib/Load_uax.cpp ============================================================================== --- trunk/OpenMPT/soundlib/Load_uax.cpp Sat Jul 13 21:48:42 2024 (r21157) +++ trunk/OpenMPT/soundlib/Load_uax.cpp Sun Jul 14 01:44:35 2024 (r21158) @@ -44,7 +44,7 @@ InitializeGlobals(MOD_TYPE_MPT, 4); m_modFormat.formatName = MPT_UFORMAT("Unreal Package v{}")(fileHeader.packageVersion); - m_modFormat.type = U_("uax"); + m_modFormat.type = UL_("uax"); m_modFormat.charset = mpt::Charset::Windows1252; // Read export table Modified: trunk/OpenMPT/soundlib/Load_ult.cpp ============================================================================== --- trunk/OpenMPT/soundlib/Load_ult.cpp Sat Jul 13 21:48:42 2024 (r21157) +++ trunk/OpenMPT/soundlib/Load_ult.cpp Sun Jul 14 01:44:35 2024 (r21158) @@ -307,8 +307,8 @@ m_songName = mpt::String::ReadBuf(mpt::String::spacePadded, fileHeader.songName); const mpt::uchar *versions[] = {UL_("<1.4"), UL_("1.4"), UL_("1.5"), UL_("1.6")}; - m_modFormat.formatName = U_("UltraTracker"); - m_modFormat.type = U_("ult"); + m_modFormat.formatName = UL_("UltraTracker"); + m_modFormat.type = UL_("ult"); m_modFormat.madeWithTracker = U_("UltraTracker ") + versions[fileHeader.version - '1']; m_modFormat.charset = mpt::Charset::CP437; Modified: trunk/OpenMPT/soundlib/Load_wav.cpp ============================================================================== --- trunk/OpenMPT/soundlib/Load_wav.cpp Sat Jul 13 21:48:42 2024 (r21157) +++ trunk/OpenMPT/soundlib/Load_wav.cpp Sun Jul 14 01:44:35 2024 (r21158) @@ -87,8 +87,8 @@ return false; } - m_modFormat.formatName = U_("RIFF WAVE"); - m_modFormat.type = U_("wav"); + m_modFormat.formatName = UL_("RIFF WAVE"); + m_modFormat.type = UL_("wav"); m_modFormat.charset = mpt::Charset::Windows1252; const SmpLength sampleLength = wavFile.GetSampleLength(); Modified: trunk/OpenMPT/soundlib/Load_xm.cpp ============================================================================== --- trunk/OpenMPT/soundlib/Load_xm.cpp Sat Jul 13 21:48:42 2024 (r21157) +++ trunk/OpenMPT/soundlib/Load_xm.cpp Sun Jul 14 01:44:35 2024 (r21158) @@ -754,12 +754,12 @@ { // ModPlug Tracker Alpha m_dwLastSavedWithVersion = MPT_V("1.00.00.A5"); - madeWithTracker = U_("ModPlug Tracker 1.0 alpha"); + madeWithTracker = UL_("ModPlug Tracker 1.0 alpha"); } else if(instrHeader.size == 263) { // ModPlug Tracker Beta (Beta 1 still behaves like Alpha, but Beta 3.3 does it this way) m_dwLastSavedWithVersion = MPT_V("1.00.00.B3"); - madeWithTracker = U_("ModPlug Tracker 1.0 beta"); + madeWithTracker = UL_("ModPlug Tracker 1.0 beta"); } else { // WTF? @@ -1010,18 +1010,18 @@ if(madeWith[verModPlugBidiFlag]) { m_dwLastSavedWithVersion = MPT_V("1.11"); - madeWithTracker = U_("ModPlug Tracker 1.0 - 1.11"); + madeWithTracker = UL_("ModPlug Tracker 1.0 - 1.11"); } else if(madeWith[verNewModPlug] && !madeWith[verPlayerPRO]) { m_dwLastSavedWithVersion = MPT_V("1.16"); - madeWithTracker = U_("ModPlug Tracker 1.0 - 1.16"); + madeWithTracker = UL_("ModPlug Tracker 1.0 - 1.16"); } else if(madeWith[verNewModPlug] && madeWith[verPlayerPRO]) { m_dwLastSavedWithVersion = MPT_V("1.16"); - madeWithTracker = U_("ModPlug Tracker 1.0 - 1.16 / PlayerPRO"); + madeWithTracker = UL_("ModPlug Tracker 1.0 - 1.16 / PlayerPRO"); } else if(!madeWith[verNewModPlug] && madeWith[verPlayerPRO]) { - madeWithTracker = U_("PlayerPRO"); + madeWithTracker = UL_("PlayerPRO"); } } @@ -1070,13 +1070,13 @@ { if(madeWith[verDigiTrakker] && sampleReserved == 0 && (lastInstrType ? lastInstrType : -1) == -1) { - madeWithTracker = U_("DigiTrakker"); + madeWithTracker = UL_("DigiTrakker"); } else if(madeWith[verFT2Generic]) { - madeWithTracker = U_("FastTracker 2 or compatible"); + madeWithTracker = UL_("FastTracker 2 or compatible"); } else { - madeWithTracker = U_("Unknown"); + madeWithTracker = UL_("Unknown"); } } @@ -1097,7 +1097,7 @@ if(m_dwLastSavedWithVersion >= MPT_V("1.17")) { - madeWithTracker = U_("OpenMPT ") + m_dwLastSavedWithVersion.ToUString(); + madeWithTracker = UL_("OpenMPT ") + m_dwLastSavedWithVersion.ToUString(); } // We no longer allow any --- or +++ items in the order list now. @@ -1115,16 +1115,16 @@ if(isOXM) { m_modFormat.originalFormatName = std::move(m_modFormat.formatName); - m_modFormat.formatName = U_("OggMod FastTracker 2"); - m_modFormat.type = U_("oxm"); - m_modFormat.originalType = U_("xm"); + m_modFormat.formatName = UL_("OggMod FastTracker 2"); + m_modFormat.type = UL_("oxm"); + m_modFormat.originalType = UL_("xm"); } else { - m_modFormat.type = U_("xm"); + m_modFormat.type = UL_("xm"); } if(anyADPCM) - m_modFormat.madeWithTracker += U_(" (ADPCM packed)"); + m_modFormat.madeWithTracker += UL_(" (ADPCM packed)"); return true; } Modified: trunk/OpenMPT/soundlib/load_j2b.cpp ============================================================================== --- trunk/OpenMPT/soundlib/load_j2b.cpp Sat Jul 13 21:48:42 2024 (r21157) +++ trunk/OpenMPT/soundlib/load_j2b.cpp Sun Jul 14 01:44:35 2024 (r21158) @@ -747,7 +747,7 @@ m_nDefaultGlobalVolume = mainChunk.globalvolume * 2; m_modFormat.formatName = isAM ? UL_("Galaxy Sound System (new version)") : UL_("Galaxy Sound System (old version)"); - m_modFormat.type = U_("j2b"); + m_modFormat.type = UL_("j2b"); m_modFormat.charset = mpt::Charset::CP437; m_songName = mpt::String::ReadBuf(mpt::String::maybeNullTerminated, mainChunk.songname); |
From: <sv...@op...> - 2024-07-13 19:48:54
|
Author: sagamusix Date: Sat Jul 13 21:48:42 2024 New Revision: 21157 URL: https://source.openmpt.org/browse/openmpt/?op=revision&rev=21157 Log: [Ref] modcommand.cpp: Further cleanup. Modified: trunk/OpenMPT/soundlib/modcommand.cpp Modified: trunk/OpenMPT/soundlib/modcommand.cpp ============================================================================== --- trunk/OpenMPT/soundlib/modcommand.cpp Sat Jul 13 21:45:55 2024 (r21156) +++ trunk/OpenMPT/soundlib/modcommand.cpp Sat Jul 13 21:48:42 2024 (r21157) @@ -342,12 +342,12 @@ default: break; } - } // End if(oldTypeIsMOD_XM && newTypeIsS3M_IT_MPT) + } // End if(!oldTypeIsS3M_IT_MPT && newTypeIsS3M_IT_MPT) ///////////////////////////////////////// // Convert S3M / IT / MPTM to MOD / XM - else if(oldTypeIsS3M_IT_MPT && newTypeIsMOD_XM) + else if(!oldTypeIsMOD_XM && newTypeIsMOD_XM) { if(note == NOTE_NOTECUT) { @@ -478,7 +478,7 @@ default: break; } - } // End if(oldTypeIsS3M_IT_MPT && newTypeIsMOD_XM) + } // End if(!oldTypeIsMOD_XM && newTypeIsMOD_XM) /////////////////////// |
From: <sv...@op...> - 2024-07-13 19:46:09
|
Author: sagamusix Date: Sat Jul 13 21:45:55 2024 New Revision: 21156 URL: https://source.openmpt.org/browse/openmpt/?op=revision&rev=21156 Log: [Mod] Mod Conversion: Don't warn about broken note map for notes that are not mapped to a sample anyway. [Ref] Small unrelated cleanups. Modified: trunk/OpenMPT/mptrack/Image.cpp trunk/OpenMPT/mptrack/ModConvert.cpp trunk/OpenMPT/mptrack/Moddoc.cpp trunk/OpenMPT/soundlib/Load_dbm.cpp trunk/OpenMPT/soundlib/modcommand.cpp Modified: trunk/OpenMPT/mptrack/Image.cpp ============================================================================== --- trunk/OpenMPT/mptrack/Image.cpp Sat Jul 13 19:53:36 2024 (r21155) +++ trunk/OpenMPT/mptrack/Image.cpp Sat Jul 13 21:45:55 2024 (r21156) @@ -9,8 +9,8 @@ #include "stdafx.h" -#include "MPTrackUtil.h" #include "Image.h" +#include "MPTrackUtil.h" #include "../common/FileReader.h" #include "../common/ComponentManager.h" Modified: trunk/OpenMPT/mptrack/ModConvert.cpp ============================================================================== --- trunk/OpenMPT/mptrack/ModConvert.cpp Sat Jul 13 19:53:36 2024 (r21155) +++ trunk/OpenMPT/mptrack/ModConvert.cpp Sat Jul 13 21:45:55 2024 (r21156) @@ -411,7 +411,7 @@ { for(size_t i = 0; i < std::size(pIns->NoteMap); i++) { - if (pIns->NoteMap[i] && pIns->NoteMap[i] != (i + 1)) + if(pIns->Keyboard[i] && pIns->NoteMap[i] && pIns->NoteMap[i] != (i + NOTE_MIN)) { warnings.set(wBrokenNoteMap); break; Modified: trunk/OpenMPT/mptrack/Moddoc.cpp ============================================================================== --- trunk/OpenMPT/mptrack/Moddoc.cpp Sat Jul 13 19:53:36 2024 (r21155) +++ trunk/OpenMPT/mptrack/Moddoc.cpp Sat Jul 13 21:45:55 2024 (r21156) @@ -1282,7 +1282,7 @@ { for(ModChannel &chn : m_SndFile.m_PlayState.BackgroundChannels(m_SndFile)) { - if(chn.isPreviewNote && chn.nLength != 0 && !chn.dwFlags[CHN_NOTEFADE | CHN_KEYOFF| CHN_MUTE] + if(chn.isPreviewNote && chn.nLength != 0 && !chn.dwFlags[CHN_NOTEFADE | CHN_KEYOFF | CHN_MUTE] && (note == chn.nNewNote || note == NOTE_NONE) && (chn.pModSample == &m_SndFile.GetSample(nsmp) || !nsmp) && (chn.pModInstrument == m_SndFile.Instruments[nins] || !nins)) Modified: trunk/OpenMPT/soundlib/Load_dbm.cpp ============================================================================== --- trunk/OpenMPT/soundlib/Load_dbm.cpp Sat Jul 13 19:53:36 2024 (r21155) +++ trunk/OpenMPT/soundlib/Load_dbm.cpp Sat Jul 13 21:45:55 2024 (r21156) @@ -573,7 +573,7 @@ std::swap(param1, param2); } else if(cmd1 == CMD_TONEPORTAMENTO && cmd2 == CMD_OFFSET && param2 == 0) { - // Offset + Portmaneto: Ignore portamento. If the offset command has a non-zero parameter, keep it for effect memory. + // Offset + Portamento: Ignore portamento. If the offset command has a non-zero parameter, keep it for effect memory. cmd2 = CMD_NONE; } else if(cmd2 == CMD_TONEPORTAMENTO && cmd1 == CMD_OFFSET && param1 == 0) { Modified: trunk/OpenMPT/soundlib/modcommand.cpp ============================================================================== --- trunk/OpenMPT/soundlib/modcommand.cpp Sat Jul 13 19:53:36 2024 (r21155) +++ trunk/OpenMPT/soundlib/modcommand.cpp Sat Jul 13 21:45:55 2024 (r21156) @@ -251,7 +251,7 @@ ///////////////////////////////////////// // Convert MOD / XM to S3M / IT / MPTM - if(oldTypeIsMOD_XM && newTypeIsS3M_IT_MPT) + if(!oldTypeIsS3M_IT_MPT && newTypeIsS3M_IT_MPT) { switch(command) { @@ -318,7 +318,7 @@ command = CMD_S3MCMDEX; if(param == 0) instr = 0; - param = 0xD0 | (param & 0x0F); + param = 0xD0 | std::min(param, PARAM(0x0F)); } break; |
From: <sv...@op...> - 2024-07-13 17:53:49
|
Author: sagamusix Date: Sat Jul 13 19:53:36 2024 New Revision: 21155 URL: https://source.openmpt.org/browse/openmpt/?op=revision&rev=21155 Log: [Doc] libopenmpt: Update changelog. Modified: branches/OpenMPT-1.31/doc/libopenmpt/changelog.md Modified: branches/OpenMPT-1.31/doc/libopenmpt/changelog.md ============================================================================== --- branches/OpenMPT-1.31/doc/libopenmpt/changelog.md Sat Jul 13 19:37:24 2024 (r21154) +++ branches/OpenMPT-1.31/doc/libopenmpt/changelog.md Sat Jul 13 19:53:36 2024 (r21155) @@ -7,6 +7,38 @@ ### libopenmpt 0.7.9-pre + * IT: Identify files saved with itwriter. + * XM: For files saved with registered MadTracker 2 versions, do not put + binary garbage (the user ID) in the tracker metadata field. It is replaced + with "registered" instead. + * For some truncated files, the used tracker was not identified correctly. + * XM: oggmod does not support stereo samples but keeps the stereo flag when + encoding such samples. Such samples are now imported as mono samples instead + of not importing them at all. + * S3M: Identify files saved with early Impulse Tracker versions, Sound Club 2, + Liquid Tracker, NESMusa, UNMO3, deMODifier, Kosmic To-S3M, and better tell + old ModPlug Tracker versions apart. + * S3M: When skipping sample loading, some tracker identifications were not + working as intended. + * MOD: Allow sample swapping to work when swapping from a non-looping, stopped + sample back to a looping sample (fixes MOD.energy). + * DTM: Identify files saved with Digital Tracker 2.3. + * DBM: Import second sustain point in case the first sustain point is not set, + or if it has a lower index than the first. + * DBM: When several instruments referenced the same sample with different + properties (volume, loop points, etc.), only one set of properties was + imported (fixes DBM.Supernova). + * DBM: Prioritize effects more correctly when the same effect is encountered + in both effect columns of a cell (fixes DBM.143_Gnoj). + * DBM: Avoid importing offset effects when there's a tone portmento next to + them (fixes DBM.123_Savo). + * DBM: A few IT-specific playback quirks are disabled for more accurate + playback (e.g. in "Are You Flying With Me?" by Jazzcat). + * AMF: When running out of sample slots, file reading became be misaligned + because the sample name was not skipped. + * DIGI: Sample play direction was reset if adjacent channel contained a + Note Cut note. + ### libopenmpt 0.7.8 (2024-06-09) * [**Sec**] Potential heap out-of-bounds read with malformed Dynamic Studio |
From: <sv...@op...> - 2024-07-13 17:37:32
|
Author: sagamusix Date: Sat Jul 13 19:37:24 2024 New Revision: 21154 URL: https://source.openmpt.org/browse/openmpt/?op=revision&rev=21154 Log: Merged revision(s) 21147, 21151 from trunk/OpenMPT: [Fix] S3M: UNMO3 / deMODifier / To-S3M detection was completely broken. ........ [Fix] S3M: Fingerprinting based on GUS addresses didn't work when sample loading was disabled. ........ Merged revision(s) 21146 from trunk/OpenMPT: [Imp] S3M: Detect UNMO3, deMODifier and Kosmic To-S3M. ........ Merged revision(s) 19274 from trunk/OpenMPT: [Imp] S3M: Improve fingerprinting for old MPT versions. ........ Modified: branches/OpenMPT-1.31/ (props changed) branches/OpenMPT-1.31/soundlib/Load_s3m.cpp branches/OpenMPT-1.31/soundlib/S3MTools.h Modified: branches/OpenMPT-1.31/soundlib/Load_s3m.cpp ============================================================================== --- branches/OpenMPT-1.31/soundlib/Load_s3m.cpp Sat Jul 13 19:29:45 2024 (r21153) +++ branches/OpenMPT-1.31/soundlib/Load_s3m.cpp Sat Jul 13 19:37:24 2024 (r21154) @@ -35,7 +35,7 @@ case '@': m.command = (m.param ? CMD_DUMMY : CMD_NONE); break; case 'A': m.command = CMD_SPEED; break; case 'B': m.command = CMD_POSITIONJUMP; break; - case 'C': m.command = CMD_PATTERNBREAK; if (!fromIT) m.param = (m.param >> 4) * 10 + (m.param & 0x0F); break; + case 'C': m.command = CMD_PATTERNBREAK; if(!fromIT) m.param = static_cast<uint8>((m.param >> 4) * 10 + (m.param & 0x0F)); break; case 'D': m.command = CMD_VOLUMESLIDE; break; case 'E': m.command = CMD_PORTAMENTODOWN; break; case 'F': m.command = CMD_PORTAMENTOUP; break; @@ -86,8 +86,8 @@ case CMD_POSITIONJUMP: command = 'B'; break; case CMD_PATTERNBREAK: command = 'C'; if(!toIT) param = ((param / 10) << 4) + (param % 10); break; case CMD_VOLUMESLIDE: command = 'D'; break; - case CMD_PORTAMENTODOWN: command = 'E'; if (param >= 0xE0 && (GetType() & (MOD_TYPE_MOD | MOD_TYPE_XM))) param = 0xDF; break; - case CMD_PORTAMENTOUP: command = 'F'; if (param >= 0xE0 && (GetType() & (MOD_TYPE_MOD | MOD_TYPE_XM))) param = 0xDF; break; + case CMD_PORTAMENTODOWN: command = 'E'; if(param >= 0xE0 && (GetType() & (MOD_TYPE_MOD | MOD_TYPE_XM))) param = 0xDF; break; + case CMD_PORTAMENTOUP: command = 'F'; if(param >= 0xE0 && (GetType() & (MOD_TYPE_MOD | MOD_TYPE_XM))) param = 0xDF; break; case CMD_TONEPORTAMENTO: command = 'G'; break; case CMD_VIBRATO: command = 'H'; break; case CMD_TREMOR: command = 'I'; break; @@ -110,11 +110,11 @@ command = 'X'; if(toIT && !(GetType() & (MOD_TYPE_IT | MOD_TYPE_MPT | MOD_TYPE_XM | MOD_TYPE_MOD))) { - if (param == 0xA4) { command = 'S'; param = 0x91; } - else if (param == 0x80) { param = 0xFF; } - else if (param < 0x80) { param <<= 1; } + if(param == 0xA4) { command = 'S'; param = 0x91; } + else if(param == 0x80) { param = 0xFF; } + else if(param < 0x80) { param <<= 1; } else command = 0; - } else if (!toIT && (GetType() & (MOD_TYPE_IT | MOD_TYPE_MPT | MOD_TYPE_XM | MOD_TYPE_MOD))) + } else if(!toIT && (GetType() & (MOD_TYPE_IT | MOD_TYPE_MPT | MOD_TYPE_XM | MOD_TYPE_MOD))) { param >>= 1; } @@ -240,49 +240,50 @@ bool nonCompatTracker = false; bool isST3 = false; bool isSchism = false; + const bool usePanningTable = fileHeader.usePanningTable == S3MFileHeader::idPanning; const int32 schismDateVersion = SchismTrackerEpoch + ((fileHeader.cwtv == 0x4FFF) ? fileHeader.reserved2 : (fileHeader.cwtv - 0x4050)); switch(fileHeader.cwtv & S3MFileHeader::trackerMask) { case S3MFileHeader::trkAkord & S3MFileHeader::trackerMask: if(fileHeader.cwtv == S3MFileHeader::trkAkord) - madeWithTracker = U_("Akord"); + madeWithTracker = UL_("Akord"); break; case S3MFileHeader::trkScreamTracker: if(!memcmp(&fileHeader.reserved2, "SCLUB2.0", 8)) { - madeWithTracker = U_("Sound Club 2"); - } else if(fileHeader.cwtv == S3MFileHeader::trkST3_20 && fileHeader.special == 0 && (fileHeader.ordNum & 0x0F) == 0 && fileHeader.ultraClicks == 0 && (fileHeader.flags & ~0x50) == 0 && fileHeader.usePanningTable == S3MFileHeader::idPanning) + madeWithTracker = UL_("Sound Club 2"); + } else if(fileHeader.cwtv == S3MFileHeader::trkST3_20 && fileHeader.special == 0 && (fileHeader.ordNum & 0x0F) == 0 && fileHeader.ultraClicks == 0 && (fileHeader.flags & ~0x50) == 0 && usePanningTable) { // MPT and OpenMPT before 1.17.03.02 - Simply keep default (filter) MIDI macros if((fileHeader.masterVolume & 0x80) != 0) { - m_dwLastSavedWithVersion = MPT_V("1.16.00.00"); - madeWithTracker = U_("ModPlug Tracker / OpenMPT 1.17"); + m_dwLastSavedWithVersion = MPT_V("1.16"); + madeWithTracker = UL_("ModPlug Tracker / OpenMPT 1.17"); } else { - // MPT 1.0 alpha5 doesn't set the stereo flag, but MPT 1.0 beta1 does. - m_dwLastSavedWithVersion = MPT_V("1.00.00.00"); - madeWithTracker = U_("ModPlug Tracker 1.0 alpha"); + // MPT 1.0 alpha5 doesn't set the stereo flag, but MPT 1.0 alpha6 does. + m_dwLastSavedWithVersion = MPT_V("1.00.00.A0"); + madeWithTracker = UL_("ModPlug Tracker 1.0 alpha"); } keepMidiMacros = true; nonCompatTracker = true; m_playBehaviour.set(kST3LimitPeriod); - } else if(fileHeader.cwtv == S3MFileHeader::trkST3_20 && fileHeader.special == 0 && fileHeader.ultraClicks == 0 && fileHeader.flags == 0 && fileHeader.usePanningTable == 0) + } else if(fileHeader.cwtv == S3MFileHeader::trkST3_20 && fileHeader.special == 0 && fileHeader.ultraClicks == 0 && fileHeader.flags == 0 && !usePanningTable) { if(fileHeader.globalVol == 64 && fileHeader.masterVolume == 48) - madeWithTracker = U_("PlayerPRO"); + madeWithTracker = UL_("PlayerPRO"); else // Always stereo - madeWithTracker = U_("Velvet Studio"); - } else if(fileHeader.cwtv == S3MFileHeader::trkST3_20 && fileHeader.special == 0 && fileHeader.ultraClicks == 0 && fileHeader.flags == 8 && fileHeader.usePanningTable == 0) + madeWithTracker = UL_("Velvet Studio"); + } else if(fileHeader.cwtv == S3MFileHeader::trkST3_20 && fileHeader.special == 0 && fileHeader.ultraClicks == 0 && fileHeader.flags == 8 && !usePanningTable) { - madeWithTracker = U_("Impulse Tracker < 1.03"); // Not sure if 1.02 saves like this as I don't have it + madeWithTracker = UL_("Impulse Tracker < 1.03"); // Not sure if 1.02 saves like this as I don't have it } else { // ST3.20 should only ever write ultra-click values 16, 24 and 32 (corresponding to 8, 12 and 16 in the GUI), ST3.01/3.03 should only write 0, // though several ST3.01/3.03 files with ultra-click values of 16 have been found as well. // However, we won't fingerprint these values here as it's unlikely that there is any other tracker out there disguising as ST3 and using a strange ultra-click value. // Also, re-saving a file with a strange ultra-click value in ST3 doesn't fix this value unless the user manually changes it, or if it's below 16. - madeWithTracker = U_("Scream Tracker"); + madeWithTracker = UL_("Scream Tracker"); formatTrackerStr = true; isST3 = true; } @@ -290,19 +291,19 @@ case S3MFileHeader::trkImagoOrpheus: formatTrackerStr = (fileHeader.cwtv != S3MFileHeader::trkPlayerPRO); if(formatTrackerStr) - madeWithTracker = U_("Imago Orpheus"); + madeWithTracker = UL_("Imago Orpheus"); else - madeWithTracker = U_("PlayerPRO"); + madeWithTracker = UL_("PlayerPRO"); nonCompatTracker = true; break; case S3MFileHeader::trkImpulseTracker: if(fileHeader.cwtv <= S3MFileHeader::trkIT2_14) { - madeWithTracker = U_("Impulse Tracker"); + madeWithTracker = UL_("Impulse Tracker"); formatTrackerStr = true; - } else if (fileHeader.cwtv == S3MFileHeader::trkIT1_old) + } else if(fileHeader.cwtv == S3MFileHeader::trkIT1_old) { - madeWithTracker = U_("Impulse Tracker 1.03"); // Could also be 1.02, maybe? I don't have that one + madeWithTracker = UL_("Impulse Tracker 1.03"); // Could also be 1.02, maybe? I don't have that one } else { madeWithTracker = MPT_UFORMAT("Impulse Tracker 2.14p{}")(fileHeader.cwtv - S3MFileHeader::trkIT2_14); @@ -326,7 +327,7 @@ case S3MFileHeader::trkSchismTracker: if(fileHeader.cwtv == S3MFileHeader::trkBeRoTrackerOld) { - madeWithTracker = U_("BeRoTracker"); + madeWithTracker = UL_("BeRoTracker"); m_playBehaviour.set(kST3LimitPeriod); } else { @@ -344,7 +345,7 @@ case S3MFileHeader::trkOpenMPT: if((fileHeader.cwtv & 0xFF00) == S3MFileHeader::trkNESMusa) { - madeWithTracker = U_("NESMusa"); + madeWithTracker = UL_("NESMusa"); formatTrackerStr = true; } else if(fileHeader.reserved2 == 0 && fileHeader.ultraClicks == 16 && fileHeader.channels[1] != 1) { @@ -352,7 +353,7 @@ // OpenMPT started writing full version information with OpenMPT 1.29 and later changed the ultraClicks value from 8 to 16. // Liquid Tracker writes an ultraClicks value of 16. // So we assume that a file was saved with Liquid Tracker if the reserved fields are 0 and ultraClicks is 16. - madeWithTracker = U_("Liquid Tracker"); + madeWithTracker = UL_("Liquid Tracker"); formatTrackerStr = true; } else if(fileHeader.cwtv != S3MFileHeader::trkGraoumfTracker) { @@ -360,22 +361,22 @@ if(mptVersion >= 0x01'29'00'00) mptVersion |= fileHeader.reserved2; m_dwLastSavedWithVersion = Version(mptVersion); - madeWithTracker = U_("OpenMPT ") + mpt::ufmt::val(m_dwLastSavedWithVersion); + madeWithTracker = UL_("OpenMPT ") + mpt::ufmt::val(m_dwLastSavedWithVersion); } else { - madeWithTracker = U_("Graoumf Tracker"); + madeWithTracker = UL_("Graoumf Tracker"); } break; case S3MFileHeader::trkBeRoTracker: - madeWithTracker = U_("BeRoTracker"); + madeWithTracker = UL_("BeRoTracker"); m_playBehaviour.set(kST3LimitPeriod); break; case S3MFileHeader::trkCreamTracker: - madeWithTracker = U_("CreamTracker"); + madeWithTracker = UL_("CreamTracker"); break; default: if(fileHeader.cwtv == S3MFileHeader::trkCamoto) - madeWithTracker = U_("Camoto"); + madeWithTracker = UL_("Camoto"); break; } if(formatTrackerStr) @@ -383,8 +384,8 @@ madeWithTracker = MPT_UFORMAT("{} {}.{}")(madeWithTracker, (fileHeader.cwtv & 0xF00) >> 8, mpt::ufmt::hex0<2>(fileHeader.cwtv & 0xFF)); } - m_modFormat.formatName = U_("Scream Tracker 3"); - m_modFormat.type = U_("s3m"); + m_modFormat.formatName = UL_("Scream Tracker 3"); + m_modFormat.type = UL_("s3m"); m_modFormat.madeWithTracker = std::move(madeWithTracker); m_modFormat.charset = m_dwLastSavedWithVersion ? mpt::Charset::Windows1252 : mpt::Charset::CP437; @@ -398,7 +399,7 @@ m_playBehaviour.reset(kST3OffsetWithoutInstrument); m_playBehaviour.reset(kApplyUpperPeriodLimit); } - if (fileHeader.cwtv <= S3MFileHeader::trkST3_01) + if(fileHeader.cwtv <= S3MFileHeader::trkST3_01) { // This broken behaviour is not present in ST3.01 m_playBehaviour.reset(kST3TonePortaWithAdlibNote); @@ -519,16 +520,28 @@ file.ReadVector(patternOffsets, fileHeader.patNum); // Read extended channel panning - if(fileHeader.usePanningTable == S3MFileHeader::idPanning) + if(usePanningTable) { + bool hasChannelsWithoutPanning = false; const auto pan = file.ReadArray<uint8, 32>(); for(CHANNELINDEX i = 0; i < 32; i++) { if((pan[i] & 0x20) != 0 && (!isST3 || !isAdlibChannel[i])) { ChnSettings[i].nPan = (static_cast<uint16>(pan[i] & 0x0F) * 256 + 8) / 15; + } else if(pan[i] < 0x10) + { + hasChannelsWithoutPanning = true; } } + if(m_nChannels < 32 && m_dwLastSavedWithVersion == MPT_V("1.16")) + { + // MPT 1.0 alpha 6 up to 1.16.203 set ths panning bit for all channels, regardless of whether they are used or not. + if(hasChannelsWithoutPanning) + m_modFormat.madeWithTracker = UL_("ModPlug Tracker 1.16 / OpenMPT 1.17"); + else + m_modFormat.madeWithTracker = UL_("ModPlug Tracker"); + } } // Reading sample headers @@ -549,11 +562,11 @@ if(sampleHeader.sampleType < S3MSampleHeader::typeAdMel) { - const uint32 sampleOffset = sampleHeader.GetSampleOffset(); - if((loadFlags & loadSampleData) && sampleHeader.length != 0 && file.Seek(sampleOffset)) + if(sampleHeader.length != 0) { SampleIO sampleIO = sampleHeader.GetSampleFormat((fileHeader.formatVersion == S3MFileHeader::oldVersion)); - sampleIO.ReadSample(Samples[smp + 1], file); + if((loadFlags & loadSampleData) && file.Seek(sampleHeader.GetSampleOffset())) + sampleIO.ReadSample(Samples[smp + 1], file); anySamples = true; if(sampleIO.GetEncoding() == SampleIO::ADPCM) anyADPCM = true; @@ -569,7 +582,17 @@ // Hence if a file claims to be written with ST3 (but not ST3.00), but has no GUS addresses, we deduce that it must be written by some other software (e.g. some PSM -> S3M conversions) isST3 = false; MPT_UNUSED(isST3); - m_modFormat.madeWithTracker = U_("Unknown"); + m_modFormat.madeWithTracker = UL_("Unknown"); + // Check these only after we are certain that it can't be ST3.01 because that version doesn't sanitize the ultraClicks value yet + if(fileHeader.cwtv == S3MFileHeader::trkST3_01 && fileHeader.ultraClicks == 0) + { + if(!(fileHeader.flags & ~(S3MFileHeader::fastVolumeSlides | S3MFileHeader::amigaLimits)) && (fileHeader.masterVolume & 0x80) && usePanningTable) + m_modFormat.madeWithTracker = UL_("UNMO3"); + else if(!fileHeader.flags && fileHeader.globalVol == 48 && fileHeader.masterVolume == 176 && fileHeader.tempo == 150 && !usePanningTable) + m_modFormat.madeWithTracker = UL_("deMODifier"); // SoundSmith to S3M converter + else if(!fileHeader.flags && fileHeader.globalVol == 64 && (fileHeader.masterVolume & 0x7F) == 48 && fileHeader.speed == 6 && fileHeader.tempo == 125 && !usePanningTable) + m_modFormat.madeWithTracker = UL_("Kosmic To-S3M"); // MTM to S3M converter by Zab/Kosmic + } } else if(isST3) { // Saving an S3M file in ST3 with the Gravis Ultrasound driver loaded will write a unique GUS memory address for each non-empty sample slot (and 0 for unused slots). @@ -586,7 +609,7 @@ } if(anyADPCM) - m_modFormat.madeWithTracker += U_(" (ADPCM packed)"); + m_modFormat.madeWithTracker += UL_(" (ADPCM packed)"); // Try to find out if Zxx commands are supposed to be panning commands (PixPlay). // Actually I am only aware of one module that uses this panning style, namely "Crawling Despair" by $volkraq Modified: branches/OpenMPT-1.31/soundlib/S3MTools.h ============================================================================== --- branches/OpenMPT-1.31/soundlib/S3MTools.h Sat Jul 13 19:29:45 2024 (r21153) +++ branches/OpenMPT-1.31/soundlib/S3MTools.h Sat Jul 13 19:37:24 2024 (r21154) @@ -46,8 +46,8 @@ trkAkord = 0x0208, trkST3_00 = 0x1300, - trkST3_20 = 0x1320, trkST3_01 = 0x1301, + trkST3_20 = 0x1320, trkIT1_old = 0x3320, trkIT2_07 = 0x3207, trkIT2_14 = 0x3214, |
From: <sv...@op...> - 2024-07-13 17:29:57
|
Author: sagamusix Date: Sat Jul 13 19:29:45 2024 New Revision: 21153 URL: https://source.openmpt.org/browse/openmpt/?op=revision&rev=21153 Log: Merged revision(s) 21149 from trunk/OpenMPT: [Var] CHM: Style adjustments for latest MediaWiki. ........ Modified: branches/OpenMPT-1.31/ (props changed) branches/OpenMPT-1.31/mptrack/manual_generator/source/help.css Modified: branches/OpenMPT-1.31/mptrack/manual_generator/source/help.css ============================================================================== --- branches/OpenMPT-1.31/mptrack/manual_generator/source/help.css Sat Jul 13 19:29:22 2024 (r21152) +++ branches/OpenMPT-1.31/mptrack/manual_generator/source/help.css Sat Jul 13 19:29:45 2024 (r21153) @@ -26,7 +26,7 @@ #content { - margin: 0 !important; + margin: 1em !important; border: 0 !important; } |
From: <sv...@op...> - 2024-07-13 17:29:29
|
Author: sagamusix Date: Sat Jul 13 19:29:22 2024 New Revision: 21152 URL: https://source.openmpt.org/browse/openmpt/?op=revision&rev=21152 Log: Merged revision(s) 21145, 21148 from trunk/OpenMPT: [Imp] XM: For files made with registered MadTracker 2 versions, replace the encoded user ID with a "(registered)" string to avoid binary garbage in the string. ........ [Fix] XM: Don't fingerprint truncated files as "Unknown", caused by trying to read the instrument header size and failing, then jumping back 4 bytes and reading it again (and thus fingerprinting the instrument header size based on the previous sample or pattern data) ........ Modified: branches/OpenMPT-1.31/ (props changed) branches/OpenMPT-1.31/soundlib/Load_xm.cpp Modified: branches/OpenMPT-1.31/soundlib/Load_xm.cpp ============================================================================== --- branches/OpenMPT-1.31/soundlib/Load_xm.cpp Sat Jul 13 15:31:12 2024 (r21151) +++ branches/OpenMPT-1.31/soundlib/Load_xm.cpp Sat Jul 13 19:29:22 2024 (r21152) @@ -670,6 +670,10 @@ // Fix arpeggios in kragle_-_happy_day.xm m_playBehaviour.reset(kFT2Arpeggio); isMadTracker = true; + if(memcmp(fileHeader.trackerName + 15, "\0\0\0\0", 4)) + madeWithTracker = UL_("MadTracker 2 (registered)"); + else + madeWithTracker = UL_("MadTracker 2"); } else if(!memcmp(fileHeader.trackerName, "Skale Tracker\0", 14) || !memcmp(fileHeader.trackerName, "Sk@le Tracker\0", 14)) { m_playBehaviour.reset(kFT2ST3OffsetOutOfRange); @@ -727,6 +731,11 @@ // Reading instruments for(INSTRUMENTINDEX instr = 1; instr <= m_nInstruments; instr++) { + if(!AllocateInstrument(instr)) + return false; + if(!file.CanRead(4)) + continue; + // First, try to read instrument header length... uint32 headerSize = file.ReadUint32LE(); if(headerSize == 0) @@ -789,11 +798,6 @@ } } - if(AllocateInstrument(instr) == nullptr) - { - continue; - } - instrHeader.ConvertToMPT(*Instruments[instr]); if(lastInstrType == -1) |
From: <sv...@op...> - 2024-07-13 13:31:24
|
Author: sagamusix Date: Sat Jul 13 15:31:12 2024 New Revision: 21151 URL: https://source.openmpt.org/browse/openmpt/?op=revision&rev=21151 Log: [Fix] S3M: Fingerprinting based on GUS addresses didn't work when sample loading was disabled. Modified: trunk/OpenMPT/soundlib/Load_s3m.cpp Modified: trunk/OpenMPT/soundlib/Load_s3m.cpp ============================================================================== --- trunk/OpenMPT/soundlib/Load_s3m.cpp Sat Jul 13 15:29:00 2024 (r21150) +++ trunk/OpenMPT/soundlib/Load_s3m.cpp Sat Jul 13 15:31:12 2024 (r21151) @@ -546,11 +546,11 @@ if(sampleHeader.sampleType < S3MSampleHeader::typeAdMel) { - const uint32 sampleOffset = sampleHeader.GetSampleOffset(); - if((loadFlags & loadSampleData) && sampleHeader.length != 0 && file.Seek(sampleOffset)) + if(sampleHeader.length != 0) { SampleIO sampleIO = sampleHeader.GetSampleFormat((fileHeader.formatVersion == S3MFileHeader::oldVersion)); - sampleIO.ReadSample(Samples[smp + 1], file); + if((loadFlags & loadSampleData) && file.Seek(sampleHeader.GetSampleOffset())) + sampleIO.ReadSample(Samples[smp + 1], file); anySamples = true; if(sampleIO.GetEncoding() == SampleIO::ADPCM) anyADPCM = true; @@ -574,7 +574,7 @@ m_modFormat.madeWithTracker = UL_("UNMO3"); else if(!fileHeader.flags && fileHeader.globalVol == 48 && fileHeader.masterVolume == 176 && fileHeader.tempo == 150 && !usePanningTable) m_modFormat.madeWithTracker = UL_("deMODifier"); // SoundSmith to S3M converter - else if(!fileHeader.flags && fileHeader.globalVol == 64 && fileHeader.speed == 6 && fileHeader.tempo == 125 && !usePanningTable) + else if(!fileHeader.flags && fileHeader.globalVol == 64 && (fileHeader.masterVolume & 0x7F) == 48 && fileHeader.speed == 6 && fileHeader.tempo == 125 && !usePanningTable) m_modFormat.madeWithTracker = UL_("Kosmic To-S3M"); // MTM to S3M converter by Zab/Kosmic } } else if(isST3) |
From: <sv...@op...> - 2024-07-12 22:34:46
|
Author: sagamusix Date: Sat Jul 13 00:34:39 2024 New Revision: 21148 URL: https://source.openmpt.org/browse/openmpt/?op=revision&rev=21148 Log: [Fix] XM: Don't fingerprint truncated files as "Unknown", caused by trying to read the instrument header size and failing, then jumping back 4 bytes and reading it again (and thus fingerprinting the instrument header size based on the previous sample or pattern data) Modified: trunk/OpenMPT/soundlib/Load_xm.cpp Modified: trunk/OpenMPT/soundlib/Load_xm.cpp ============================================================================== --- trunk/OpenMPT/soundlib/Load_xm.cpp Fri Jul 12 22:01:00 2024 (r21147) +++ trunk/OpenMPT/soundlib/Load_xm.cpp Sat Jul 13 00:34:39 2024 (r21148) @@ -729,6 +729,11 @@ // Reading instruments for(INSTRUMENTINDEX instr = 1; instr <= m_nInstruments; instr++) { + if(!AllocateInstrument(instr)) + return false; + if(!file.CanRead(4)) + continue; + // First, try to read instrument header length... uint32 headerSize = file.ReadUint32LE(); if(headerSize == 0) @@ -791,11 +796,6 @@ } } - if(AllocateInstrument(instr) == nullptr) - { - continue; - } - instrHeader.ConvertToMPT(*Instruments[instr]); if(lastInstrType == -1) |
From: <sv...@op...> - 2024-07-12 20:01:10
|
Author: sagamusix Date: Fri Jul 12 22:01:00 2024 New Revision: 21147 URL: https://source.openmpt.org/browse/openmpt/?op=revision&rev=21147 Log: [Fix] S3M: UNMO3 / deMODifier / To-S3M detection was completely broken. Modified: trunk/OpenMPT/soundlib/Load_s3m.cpp Modified: trunk/OpenMPT/soundlib/Load_s3m.cpp ============================================================================== --- trunk/OpenMPT/soundlib/Load_s3m.cpp Fri Jul 12 20:51:28 2024 (r21146) +++ trunk/OpenMPT/soundlib/Load_s3m.cpp Fri Jul 12 22:01:00 2024 (r21147) @@ -568,9 +568,9 @@ MPT_UNUSED(isST3); m_modFormat.madeWithTracker = UL_("Unknown"); // Check these only after we are certain that it can't be ST3.01 because that version doesn't sanitize the ultraClicks value yet - if(fileHeader.cwtv == S3MFileHeader::trkST3_00 && fileHeader.ultraClicks == 0) + if(fileHeader.cwtv == S3MFileHeader::trkST3_01 && fileHeader.ultraClicks == 0) { - if(!(fileHeader.flags & ~S3MFileHeader::fastVolumeSlides) && (fileHeader.masterVolume & 0x80) && usePanningTable) + if(!(fileHeader.flags & ~(S3MFileHeader::fastVolumeSlides | S3MFileHeader::amigaLimits)) && (fileHeader.masterVolume & 0x80) && usePanningTable) m_modFormat.madeWithTracker = UL_("UNMO3"); else if(!fileHeader.flags && fileHeader.globalVol == 48 && fileHeader.masterVolume == 176 && fileHeader.tempo == 150 && !usePanningTable) m_modFormat.madeWithTracker = UL_("deMODifier"); // SoundSmith to S3M converter |