summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--modules/minimp3/SCsub26
-rw-r--r--modules/minimp3/audio_stream_mp3.cpp5
-rw-r--r--thirdparty/README.md1
-rw-r--r--thirdparty/minimp3/minimp3_ex.cpp5
4 files changed, 26 insertions, 11 deletions
diff --git a/modules/minimp3/SCsub b/modules/minimp3/SCsub
index 20e3165f38..0f86ed5a88 100644
--- a/modules/minimp3/SCsub
+++ b/modules/minimp3/SCsub
@@ -5,13 +5,27 @@ Import("env_modules")
env_minimp3 = env_modules.Clone()
+# Thirdparty source files
+
+thirdparty_obj = []
+
thirdparty_dir = "#thirdparty/minimp3/"
+thirdparty_sources = [thirdparty_dir + "minimp3_ex.cpp"]
+
+env_minimp3.Prepend(CPPPATH=[thirdparty_dir])
+
+env_thirdparty = env_minimp3.Clone()
+env_thirdparty.disable_warnings()
+env_thirdparty.add_source_files(thirdparty_obj, thirdparty_sources)
+env.modules_sources += thirdparty_obj
-# Treat minimp3 headers as system headers to avoid raising warnings. Not supported on MSVC.
-if not env.msvc:
- env_minimp3.Append(CPPFLAGS=["-isystem", Dir(thirdparty_dir).path])
-else:
- env_minimp3.Prepend(CPPPATH=[thirdparty_dir])
# Godot source files
-env_minimp3.add_source_files(env.modules_sources, "*.cpp")
+
+module_obj = []
+
+env_minimp3.add_source_files(module_obj, "*.cpp")
+env.modules_sources += module_obj
+
+# Needed to force rebuilding the module files when the thirdparty library is updated.
+env.Depends(module_obj, thirdparty_obj)
diff --git a/modules/minimp3/audio_stream_mp3.cpp b/modules/minimp3/audio_stream_mp3.cpp
index 6af86a96dc..c63ec3cad0 100644
--- a/modules/minimp3/audio_stream_mp3.cpp
+++ b/modules/minimp3/audio_stream_mp3.cpp
@@ -28,11 +28,6 @@
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/**************************************************************************/
-#define MINIMP3_ONLY_MP3
-#define MINIMP3_FLOAT_OUTPUT
-#define MINIMP3_IMPLEMENTATION
-#define MINIMP3_NO_STDIO
-
#include "audio_stream_mp3.h"
#include "core/io/file_access.h"
diff --git a/thirdparty/README.md b/thirdparty/README.md
index 0d5f3dd4c4..d34af58e8e 100644
--- a/thirdparty/README.md
+++ b/thirdparty/README.md
@@ -416,6 +416,7 @@ Files extracted from upstream repository:
Some changes have been made in order to fix Windows on ARM build errors, and
to solve some MSVC warnings. See the patches in the `patches` directory.
+`minimp3_ex.cpp` was created to simplify the use of the single header library.
## miniupnpc
diff --git a/thirdparty/minimp3/minimp3_ex.cpp b/thirdparty/minimp3/minimp3_ex.cpp
new file mode 100644
index 0000000000..49c083e4f1
--- /dev/null
+++ b/thirdparty/minimp3/minimp3_ex.cpp
@@ -0,0 +1,5 @@
+#define MINIMP3_IMPLEMENTATION
+#define MINIMP3_FLOAT_OUTPUT
+#define MINIMP3_ONLY_MP3
+#define MINIMP3_NO_STDIO
+#include "minimp3_ex.h"