From 5465b4470595b1704150f68925403419d750bccb Mon Sep 17 00:00:00 2001 From: falkTX Date: Tue, 9 Nov 2021 16:01:49 +0000 Subject: [PATCH] More tweaks for future wasm Signed-off-by: falkTX --- deps/Makefile | 5 +++++ include/neon-compat/pmmintrin.h | 2 +- plugins/Makefile | 23 +++++++++++++---------- src/Makefile | 14 +++++++++----- src/Makefile.cardinal.mk | 11 +++++++---- 5 files changed, 35 insertions(+), 20 deletions(-) diff --git a/deps/Makefile b/deps/Makefile index 61baa3f..80da71f 100644 --- a/deps/Makefile +++ b/deps/Makefile @@ -18,7 +18,12 @@ include ../dpf/Makefile.base.mk BASE_FLAGS += -DZSTDLIB_VISIBILITY= BASE_FLAGS += -I../include BASE_FLAGS += -I../include/neon-compat + +ifeq ($(WASM),true) +BASE_FLAGS += -msse -msse2 -msse3 -msimd128 +else BASE_FLAGS += -pthread +endif ifeq ($(WINDOWS),true) BASE_FLAGS += -D_USE_MATH_DEFINES diff --git a/include/neon-compat/pmmintrin.h b/include/neon-compat/pmmintrin.h index 6fea081..a65c258 100644 --- a/include/neon-compat/pmmintrin.h +++ b/include/neon-compat/pmmintrin.h @@ -17,7 +17,7 @@ #pragma once -#if defined(__i386__) || defined(__x86_64__) +#if defined(__i386__) || defined(__x86_64__) || defined(__EMSCRIPTEN__) # include_next #else # include "../sse2neon/sse2neon.h" diff --git a/plugins/Makefile b/plugins/Makefile index 54555e6..d4233b2 100644 --- a/plugins/Makefile +++ b/plugins/Makefile @@ -527,6 +527,13 @@ BASE_FLAGS += -I../dpf/distrho BASE_FLAGS += -I../include BASE_FLAGS += -I../include/neon-compat +ifeq ($(SYSDEPS),true) +BASE_FLAGS += -DCARDINAL_SYSDEPS +else +BASE_FLAGS += -DZSTDLIB_VISIBILITY= +BASE_FLAGS += -I../src/Rack/dep/include +endif + BASE_FLAGS += -I../src BASE_FLAGS += -I../src/Rack/include BASE_FLAGS += -I../src/Rack/include/dsp @@ -537,17 +544,17 @@ BASE_FLAGS += -I../src/Rack/dep/nanosvg/src BASE_FLAGS += -I../src/Rack/dep/osdialog BASE_FLAGS += -I../src/Rack/dep/oui-blendish BASE_FLAGS += -I../src/Rack/dep/pffft -BASE_FLAGS += -pthread -ifeq ($(SYSDEPS),true) -BASE_FLAGS += -DCARDINAL_SYSDEPS -else -BASE_FLAGS += -DZSTDLIB_VISIBILITY= -BASE_FLAGS += -I../src/Rack/dep/include +ifeq ($(HEADLESS),true) +BASE_FLAGS += -DHEADLESS endif + ifeq ($(WASM),true) BASE_FLAGS += -DNANOVG_GLES2=1 +BASE_FLAGS += -msse -msse2 -msse3 -msimd128 +else +BASE_FLAGS += -pthread endif ifeq ($(WINDOWS),true) @@ -557,10 +564,6 @@ BASE_FLAGS += -I../include/mingw-compat BASE_FLAGS += -I../include/mingw-std-threads endif -ifeq ($(HEADLESS),true) -BASE_FLAGS += -DHEADLESS -endif - ifeq ($(NOPLUGINS),true) BASE_FLAGS += -DNOPLUGINS endif diff --git a/src/Makefile b/src/Makefile index 2851209..275ac9f 100644 --- a/src/Makefile +++ b/src/Makefile @@ -49,10 +49,18 @@ BASE_FLAGS += -IRack/dep/nanosvg/src BASE_FLAGS += -IRack/dep/osdialog BASE_FLAGS += -IRack/dep/oui-blendish BASE_FLAGS += -IRack/dep/pffft -BASE_FLAGS += -pthread + +ifeq ($(HEADLESS),true) +BASE_FLAGS += -DHEADLESS +endif ifeq ($(WASM),true) BASE_FLAGS += -DNANOVG_GLES2=1 +BASE_FLAGS += -msse -msse2 -msse3 -msimd128 +# FIXME +BASE_FLAGS += -DRTLD_DEEPBIND=0 +else +BASE_FLAGS += -pthread endif ifeq ($(WINDOWS),true) @@ -62,10 +70,6 @@ BASE_FLAGS += -I../include/mingw-compat BASE_FLAGS += -I../include/mingw-std-threads endif -ifeq ($(HEADLESS),true) -BASE_FLAGS += -DHEADLESS -endif - ifeq ($(WITH_LTO),true) BASE_FLAGS += -fno-strict-aliasing -flto -ffat-lto-objects endif diff --git a/src/Makefile.cardinal.mk b/src/Makefile.cardinal.mk index fa13066..bc35908 100644 --- a/src/Makefile.cardinal.mk +++ b/src/Makefile.cardinal.mk @@ -144,8 +144,15 @@ BASE_FLAGS += -I../Rack/dep/nanosvg/src BASE_FLAGS += -I../Rack/dep/oui-blendish BASE_FLAGS += -pthread +ifeq ($(HEADLESS),true) +BASE_FLAGS += -DHEADLESS +endif + ifeq ($(WASM),true) BASE_FLAGS += -DNANOVG_GLES2=1 +BASE_FLAGS += -msse -msse2 -msse3 -msimd128 +else +BASE_FLAGS += -pthread endif ifeq ($(WINDOWS),true) @@ -155,10 +162,6 @@ BASE_FLAGS += -I../../include/mingw-compat BASE_FLAGS += -I../../include/mingw-std-threads endif -ifeq ($(HEADLESS),true) -BASE_FLAGS += -DHEADLESS -endif - ifeq ($(WITH_LTO),true) BASE_FLAGS += -fno-strict-aliasing -flto -ffat-lto-objects endif