Move common build flags to a single location
Signed-off-by: falkTX <falktx@falktx.com>
This commit is contained in:
parent
417d0b321e
commit
f99f79c1eb
5 changed files with 156 additions and 357 deletions
142
Makefile.base.mk
142
Makefile.base.mk
|
@ -39,9 +39,149 @@ SYSDEPS ?= false
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ifeq ($(SYSDEPS),true)
|
ifeq ($(SYSDEPS),true)
|
||||||
RACK_DEP_PATH = $(abspath $(ROOT)/dep/sysroot)
|
RACK_DEP_PATH = $(abspath $(ROOT)/deps/sysroot)
|
||||||
else
|
else
|
||||||
RACK_DEP_PATH = $(abspath $(ROOT)/src/Rack/dep)
|
RACK_DEP_PATH = $(abspath $(ROOT)/src/Rack/dep)
|
||||||
endif
|
endif
|
||||||
|
|
||||||
# -----------------------------------------------------------------------------
|
# -----------------------------------------------------------------------------
|
||||||
|
# Custom build flags
|
||||||
|
|
||||||
|
BASE_FLAGS += -I$(abspath $(ROOT)/include)
|
||||||
|
BASE_FLAGS += -I$(abspath $(ROOT)/include/simd-compat)
|
||||||
|
BASE_FLAGS += -I$(RACK_DEP_PATH)/include
|
||||||
|
|
||||||
|
ifeq ($(MOD_BUILD),true)
|
||||||
|
BASE_FLAGS += -DSIMDE_ENABLE_OPENMP -fopenmp
|
||||||
|
LINK_FLAGS += -fopenmp
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifeq ($(NOSIMD),true)
|
||||||
|
BASE_FLAGS += -DCARDINAL_NOSIMD
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifeq ($(SYSDEPS),true)
|
||||||
|
BASE_FLAGS += -DCARDINAL_SYSDEPS
|
||||||
|
BASE_FLAGS += $(shell $(PKG_CONFIG) --cflags jansson libarchive samplerate speexdsp)
|
||||||
|
else
|
||||||
|
BASE_FLAGS += -DZSTDLIB_VISIBILITY=
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifeq ($(BSD)$(HAIKU),true)
|
||||||
|
BASE_FLAGS += -DCLOCK_MONOTONIC_RAW=CLOCK_MONOTONIC
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifeq ($(BSD)$(WASM),true)
|
||||||
|
BASE_FLAGS += -D'aligned_alloc_16(ptr)'='aligned_alloc(16,ptr)'
|
||||||
|
BASE_FLAGS += -D'aligned_free_16(ptr)'='free(ptr)'
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifeq ($(HAIKU)$(WASM),true)
|
||||||
|
BASE_FLAGS += -I$(abspath $(ROOT)/include/linux-compat)
|
||||||
|
else
|
||||||
|
BASE_FLAGS += -pthread
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifeq ($(WINDOWS),true)
|
||||||
|
BASE_FLAGS += -D_USE_MATH_DEFINES
|
||||||
|
BASE_FLAGS += -DWIN32_LEAN_AND_MEAN
|
||||||
|
BASE_FLAGS += -D_WIN32_WINNT=0x0600
|
||||||
|
BASE_FLAGS += -I$(abspath $(ROOT)/include/mingw-compat)
|
||||||
|
endif
|
||||||
|
|
||||||
|
BASE_OPTS += -fno-finite-math-only
|
||||||
|
BASE_OPTS += -fno-strict-aliasing
|
||||||
|
|
||||||
|
# -----------------------------------------------------------------------------
|
||||||
|
# Rack build flags
|
||||||
|
|
||||||
|
ifeq ($(BUILDING_RACK),true)
|
||||||
|
|
||||||
|
# Rack code is not tested for this flag, unset it
|
||||||
|
BUILD_CXX_FLAGS += -U_GLIBCXX_ASSERTIONS -Wp,-U_GLIBCXX_ASSERTIONS
|
||||||
|
|
||||||
|
# Ignore bad behaviour from Rack API
|
||||||
|
BUILD_CXX_FLAGS += -Wno-format-security
|
||||||
|
|
||||||
|
# Ignore warnings from simde
|
||||||
|
ifeq ($(MOD_BUILD),true)
|
||||||
|
BUILD_CXX_FLAGS += -Wno-overflow
|
||||||
|
endif
|
||||||
|
|
||||||
|
# lots of warnings from VCV side
|
||||||
|
BASE_FLAGS += -Wno-unused-parameter
|
||||||
|
BASE_FLAGS += -Wno-unused-variable
|
||||||
|
|
||||||
|
ifeq ($(CPU_ARM_OR_ARM64)$(CPU_RISCV64),true)
|
||||||
|
BASE_FLAGS += -Wno-attributes
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifeq ($(MACOS),true)
|
||||||
|
BASE_FLAGS += -DARCH_MAC
|
||||||
|
else ifeq ($(WINDOWS),true)
|
||||||
|
BASE_FLAGS += -DARCH_WIN
|
||||||
|
else
|
||||||
|
BASE_FLAGS += -DARCH_LIN
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifeq ($(DEBUG),true)
|
||||||
|
BASE_FLAGS += -UDEBUG
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifeq ($(HEADLESS),true)
|
||||||
|
BASE_FLAGS += -DHEADLESS
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifeq ($(USE_GLES2),true)
|
||||||
|
BASE_FLAGS += -DNANOVG_GLES2_FORCED
|
||||||
|
else ifeq ($(USE_GLES3),true)
|
||||||
|
BASE_FLAGS += -DNANOVG_GLES3_FORCED
|
||||||
|
endif
|
||||||
|
|
||||||
|
# needed for enabling SSE in pffft
|
||||||
|
ifeq ($(CPU_I386),true)
|
||||||
|
BASE_FLAGS += -Di386
|
||||||
|
endif
|
||||||
|
|
||||||
|
# SIMD must always be enabled, even in debug builds
|
||||||
|
ifneq ($(NOSIMD),true)
|
||||||
|
ifeq ($(DEBUG),true)
|
||||||
|
|
||||||
|
ifeq ($(WASM),true)
|
||||||
|
BASE_FLAGS += -msse -msse2 -msse3 -msimd128
|
||||||
|
else ifeq ($(CPU_ARM32),true)
|
||||||
|
BASE_FLAGS += -mfpu=neon-vfpv4 -mfloat-abi=hard
|
||||||
|
else ifeq ($(CPU_I386_OR_X86_64),true)
|
||||||
|
BASE_FLAGS += -msse -msse2 -mfpmath=sse
|
||||||
|
endif
|
||||||
|
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
|
||||||
|
BASE_FLAGS += -I$(abspath $(ROOT)/dpf/dgl/src/nanovg)
|
||||||
|
BASE_FLAGS += -I$(abspath $(ROOT)/dpf/distrho)
|
||||||
|
|
||||||
|
BASE_FLAGS += -I$(abspath $(ROOT)/include/simde)
|
||||||
|
|
||||||
|
BASE_FLAGS += -I$(abspath $(ROOT)/src)
|
||||||
|
BASE_FLAGS += -I$(abspath $(ROOT)/src/Rack/include)
|
||||||
|
BASE_FLAGS += -I$(abspath $(ROOT)/src/Rack/include/dsp)
|
||||||
|
BASE_FLAGS += -I$(abspath $(ROOT)/src/Rack/dep/filesystem/include)
|
||||||
|
BASE_FLAGS += -I$(abspath $(ROOT)/src/Rack/dep/fuzzysearchdatabase/src)
|
||||||
|
BASE_FLAGS += -I$(abspath $(ROOT)/src/Rack/dep/glfw/include)
|
||||||
|
BASE_FLAGS += -I$(abspath $(ROOT)/src/Rack/dep/nanosvg/src)
|
||||||
|
BASE_FLAGS += -I$(abspath $(ROOT)/src/Rack/dep/oui-blendish)
|
||||||
|
BASE_FLAGS += -I$(abspath $(ROOT)/src/Rack/dep/pffft)
|
||||||
|
|
||||||
|
BUILD_C_FLAGS += -std=gnu11
|
||||||
|
|
||||||
|
ifneq ($(MACOS),true)
|
||||||
|
BUILD_CXX_FLAGS += -faligned-new -Wno-abi
|
||||||
|
ifeq ($(MOD_BUILD),true)
|
||||||
|
BUILD_CXX_FLAGS += -std=gnu++17
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
|
||||||
|
endif
|
||||||
|
|
||||||
|
# -----------------------------------------------------------------------------
|
||||||
|
|
37
deps/Makefile
vendored
37
deps/Makefile
vendored
|
@ -7,43 +7,6 @@
|
||||||
ROOT = ..
|
ROOT = ..
|
||||||
include $(ROOT)/Makefile.base.mk
|
include $(ROOT)/Makefile.base.mk
|
||||||
|
|
||||||
# --------------------------------------------------------------
|
|
||||||
# custom build flags
|
|
||||||
|
|
||||||
BASE_FLAGS += -I$(abspath ../include)
|
|
||||||
BASE_FLAGS += -I$(abspath ../include/simd-compat)
|
|
||||||
|
|
||||||
ifeq ($(NOSIMD),true)
|
|
||||||
BASE_FLAGS += -DCARDINAL_NOSIMD
|
|
||||||
endif
|
|
||||||
|
|
||||||
ifeq ($(HAIKU)$(WASM),true)
|
|
||||||
BASE_FLAGS += -I$(abspath ../include/linux-compat)
|
|
||||||
endif
|
|
||||||
|
|
||||||
ifneq ($(SYSDEPS),true)
|
|
||||||
BASE_FLAGS += -DZSTDLIB_VISIBILITY=
|
|
||||||
endif
|
|
||||||
|
|
||||||
ifneq ($(HAIKU),true)
|
|
||||||
ifneq ($(WASM),true)
|
|
||||||
BASE_FLAGS += -pthread
|
|
||||||
endif
|
|
||||||
endif
|
|
||||||
|
|
||||||
ifeq ($(WINDOWS),true)
|
|
||||||
BASE_FLAGS += -D_USE_MATH_DEFINES
|
|
||||||
BASE_FLAGS += -DWIN32_LEAN_AND_MEAN
|
|
||||||
BASE_FLAGS += -D_WIN32_WINNT=0x0600
|
|
||||||
BASE_FLAGS += -I$(abspath ../include/mingw-compat)
|
|
||||||
endif
|
|
||||||
|
|
||||||
BUILD_C_FLAGS += -fno-finite-math-only -fno-strict-aliasing
|
|
||||||
BUILD_CXX_FLAGS += -fno-finite-math-only -fno-strict-aliasing
|
|
||||||
|
|
||||||
# Rack code is not tested for this flag, unset it
|
|
||||||
BUILD_CXX_FLAGS += -U_GLIBCXX_ASSERTIONS -Wp,-U_GLIBCXX_ASSERTIONS
|
|
||||||
|
|
||||||
# --------------------------------------------------------------
|
# --------------------------------------------------------------
|
||||||
# override VCV arch.mk stuff so we can build more architectures
|
# override VCV arch.mk stuff so we can build more architectures
|
||||||
|
|
||||||
|
|
121
plugins/Makefile
121
plugins/Makefile
|
@ -4,6 +4,7 @@
|
||||||
# Created by falkTX
|
# Created by falkTX
|
||||||
#
|
#
|
||||||
|
|
||||||
|
BUILDING_RACK = true
|
||||||
ROOT = ..
|
ROOT = ..
|
||||||
include $(ROOT)/Makefile.base.mk
|
include $(ROOT)/Makefile.base.mk
|
||||||
|
|
||||||
|
@ -1260,134 +1261,22 @@ else
|
||||||
BUILD_DIR = ../build/plugins
|
BUILD_DIR = ../build/plugins
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ifeq ($(MACOS),true)
|
|
||||||
BASE_FLAGS += -DARCH_MAC
|
|
||||||
else ifeq ($(WINDOWS),true)
|
|
||||||
BASE_FLAGS += -DARCH_WIN
|
|
||||||
else
|
|
||||||
BASE_FLAGS += -DARCH_LIN
|
|
||||||
endif
|
|
||||||
|
|
||||||
BASE_FLAGS += -DBUILDING_PLUGIN_MODULES
|
BASE_FLAGS += -DBUILDING_PLUGIN_MODULES
|
||||||
BASE_FLAGS += -I../dpf/dgl/src/nanovg
|
BASE_FLAGS += -I$(abspath $(ROOT)/include/osdialog-stub)
|
||||||
BASE_FLAGS += -I../dpf/distrho
|
|
||||||
|
|
||||||
BASE_FLAGS += -I../include
|
|
||||||
BASE_FLAGS += -I../include/osdialog-stub
|
|
||||||
BASE_FLAGS += -I../include/simd-compat
|
|
||||||
BASE_FLAGS += -I../include/simde
|
|
||||||
|
|
||||||
ifeq ($(HAVE_X11),true)
|
|
||||||
BASE_FLAGS += -DHAVE_X11
|
|
||||||
endif
|
|
||||||
|
|
||||||
ifeq ($(SYSDEPS),true)
|
|
||||||
BASE_FLAGS += -DCARDINAL_SYSDEPS
|
|
||||||
BASE_FLAGS += $(shell $(PKG_CONFIG) --cflags jansson libarchive samplerate speexdsp)
|
|
||||||
BASE_FLAGS += -I../deps/sysroot/include
|
|
||||||
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
|
|
||||||
BASE_FLAGS += -I../src/Rack/dep/filesystem/include
|
|
||||||
# # BASE_FLAGS += -I../src/Rack/dep/fuzzysearchdatabase/src
|
|
||||||
BASE_FLAGS += -I../src/Rack/dep/glfw/include
|
|
||||||
BASE_FLAGS += -I../src/Rack/dep/nanosvg/src
|
|
||||||
BASE_FLAGS += -I../src/Rack/dep/oui-blendish
|
|
||||||
BASE_FLAGS += -I../src/Rack/dep/pffft
|
|
||||||
|
|
||||||
ifeq ($(DEBUG),true)
|
|
||||||
BASE_FLAGS += -UDEBUG
|
|
||||||
endif
|
|
||||||
|
|
||||||
ifeq ($(HEADLESS),true)
|
|
||||||
BASE_FLAGS += -DHEADLESS
|
|
||||||
endif
|
|
||||||
|
|
||||||
# SIMD must always be enabled, even in debug builds
|
|
||||||
ifeq ($(NOSIMD),true)
|
|
||||||
BASE_FLAGS += -DCARDINAL_NOSIMD
|
|
||||||
else ifeq ($(DEBUG),true)
|
|
||||||
ifeq ($(WASM),true)
|
|
||||||
BASE_FLAGS += -msse -msse2 -msse3 -msimd128
|
|
||||||
else ifeq ($(CPU_ARM32),true)
|
|
||||||
BASE_FLAGS += -mfpu=neon-vfpv4 -mfloat-abi=hard
|
|
||||||
else ifeq ($(CPU_I386_OR_X86_64),true)
|
|
||||||
BASE_FLAGS += -msse -msse2 -mfpmath=sse
|
|
||||||
endif
|
|
||||||
endif
|
|
||||||
|
|
||||||
ifeq ($(BSD)$(WASM),true)
|
|
||||||
BASE_FLAGS += -D'aligned_alloc_16(ptr)'='aligned_alloc(16,ptr)'
|
|
||||||
BASE_FLAGS += -D'aligned_free_16(ptr)'='free(ptr)'
|
|
||||||
endif
|
|
||||||
|
|
||||||
ifeq ($(MOD_BUILD),true)
|
|
||||||
BASE_FLAGS += -DSIMDE_ENABLE_OPENMP -fopenmp
|
|
||||||
endif
|
|
||||||
|
|
||||||
ifneq ($(WASM),true)
|
|
||||||
ifneq ($(HAIKU),true)
|
|
||||||
BASE_FLAGS += -pthread
|
|
||||||
endif
|
|
||||||
endif
|
|
||||||
|
|
||||||
ifeq ($(WINDOWS),true)
|
|
||||||
BASE_FLAGS += -D_USE_MATH_DEFINES
|
|
||||||
BASE_FLAGS += -DWIN32_LEAN_AND_MEAN
|
|
||||||
BASE_FLAGS += -D_WIN32_WINNT=0x0600
|
|
||||||
BASE_FLAGS += -I../include/mingw-compat
|
|
||||||
endif
|
|
||||||
|
|
||||||
ifeq ($(USE_GLES2),true)
|
|
||||||
BASE_FLAGS += -DNANOVG_GLES2_FORCED
|
|
||||||
else ifeq ($(USE_GLES3),true)
|
|
||||||
BASE_FLAGS += -DNANOVG_GLES3_FORCED
|
|
||||||
endif
|
|
||||||
|
|
||||||
ifeq ($(shell $(PKG_CONFIG) --exists sndfile && echo true),true)
|
ifeq ($(shell $(PKG_CONFIG) --exists sndfile && echo true),true)
|
||||||
BASE_FLAGS += -DHAVE_SNDFILE
|
BASE_FLAGS += -DHAVE_SNDFILE
|
||||||
endif
|
endif
|
||||||
|
|
||||||
BUILD_C_FLAGS += -std=gnu11
|
ifeq ($(HAVE_X11),true)
|
||||||
|
BASE_FLAGS += -DHAVE_X11
|
||||||
ifneq ($(MACOS),true)
|
|
||||||
BUILD_CXX_FLAGS += -faligned-new -Wno-abi
|
|
||||||
ifeq ($(MOD_BUILD),true)
|
|
||||||
BUILD_CXX_FLAGS += -std=gnu++17
|
|
||||||
endif
|
|
||||||
endif
|
|
||||||
|
|
||||||
# Rack code is not tested for this flag, unset it
|
|
||||||
BUILD_CXX_FLAGS += -U_GLIBCXX_ASSERTIONS -Wp,-U_GLIBCXX_ASSERTIONS
|
|
||||||
|
|
||||||
# Ignore bad behaviour from Rack API
|
|
||||||
BUILD_CXX_FLAGS += -Wno-format-security
|
|
||||||
|
|
||||||
# Ignore warnings from simde
|
|
||||||
ifeq ($(MOD_BUILD),true)
|
|
||||||
BUILD_CXX_FLAGS += -Wno-overflow
|
|
||||||
endif
|
endif
|
||||||
|
|
||||||
# Use this for any plugins that rely on NaN presence
|
# Use this for any plugins that rely on NaN presence
|
||||||
NOFINITE_FLAGS = -fno-finite-math-only -fno-strict-aliasing
|
NOFINITE_FLAGS = -fno-finite-math-only -fno-strict-aliasing
|
||||||
|
|
||||||
# --------------------------------------------------------------
|
# --------------------------------------------------------------
|
||||||
# lots of warnings from VCV side
|
# lots of warnings from plugins
|
||||||
|
|
||||||
BASE_FLAGS += -Wno-unused-parameter
|
|
||||||
BASE_FLAGS += -Wno-unused-variable
|
|
||||||
|
|
||||||
ifeq ($(CPU_ARM_OR_ARM64)$(CPU_RISCV64),true)
|
|
||||||
BASE_FLAGS += -Wno-attributes
|
|
||||||
endif
|
|
||||||
|
|
||||||
# --------------------------------------------------------------
|
|
||||||
# also from plugins
|
|
||||||
|
|
||||||
BASE_FLAGS += -Wno-deprecated-declarations
|
BASE_FLAGS += -Wno-deprecated-declarations
|
||||||
|
|
||||||
|
|
114
src/Makefile
114
src/Makefile
|
@ -4,6 +4,7 @@
|
||||||
# Created by falkTX
|
# Created by falkTX
|
||||||
#
|
#
|
||||||
|
|
||||||
|
BUILDING_RACK = true
|
||||||
ROOT = ..
|
ROOT = ..
|
||||||
include $(ROOT)/Makefile.base.mk
|
include $(ROOT)/Makefile.base.mk
|
||||||
|
|
||||||
|
@ -16,128 +17,17 @@ else
|
||||||
BUILD_DIR = ../build/rack
|
BUILD_DIR = ../build/rack
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ifeq ($(MACOS),true)
|
|
||||||
BASE_FLAGS += -DARCH_MAC
|
|
||||||
else ifeq ($(WINDOWS),true)
|
|
||||||
BASE_FLAGS += -DARCH_WIN
|
|
||||||
else
|
|
||||||
BASE_FLAGS += -DARCH_LIN
|
|
||||||
endif
|
|
||||||
|
|
||||||
ifeq ($(HAIKU),true)
|
|
||||||
BASE_FLAGS += -I../include/linux-compat
|
|
||||||
else ifeq ($(WASM),true)
|
|
||||||
BASE_FLAGS += -I../include/linux-compat
|
|
||||||
endif
|
|
||||||
|
|
||||||
BASE_FLAGS += -DPRIVATE=
|
BASE_FLAGS += -DPRIVATE=
|
||||||
BASE_FLAGS += -I../dpf/dgl/src/nanovg
|
BASE_FLAGS += -I$(abspath $(ROOT)/src/Rack/dep/osdialog)
|
||||||
BASE_FLAGS += -I../dpf/distrho
|
|
||||||
BASE_FLAGS += -I../include
|
|
||||||
BASE_FLAGS += -I../include/simd-compat
|
|
||||||
BASE_FLAGS += -IRack/include
|
|
||||||
ifeq ($(SYSDEPS),true)
|
|
||||||
BASE_FLAGS += -DCARDINAL_SYSDEPS
|
|
||||||
BASE_FLAGS += $(shell pkg-config --cflags jansson libarchive samplerate speexdsp)
|
|
||||||
else
|
|
||||||
BASE_FLAGS += -DZSTDLIB_VISIBILITY=
|
|
||||||
BASE_FLAGS += -IRack/dep/include
|
|
||||||
endif
|
|
||||||
BASE_FLAGS += -IRack/dep/filesystem/include
|
|
||||||
BASE_FLAGS += -IRack/dep/fuzzysearchdatabase/src
|
|
||||||
BASE_FLAGS += -IRack/dep/glfw/include
|
|
||||||
BASE_FLAGS += -IRack/dep/nanosvg/src
|
|
||||||
BASE_FLAGS += -IRack/dep/osdialog
|
|
||||||
BASE_FLAGS += -IRack/dep/oui-blendish
|
|
||||||
BASE_FLAGS += -IRack/dep/pffft
|
|
||||||
|
|
||||||
ifeq ($(CPU_I386),true)
|
|
||||||
# needed for enabling SSE in pffft
|
|
||||||
BASE_FLAGS += -Di386
|
|
||||||
endif
|
|
||||||
|
|
||||||
ifeq ($(DEBUG),true)
|
|
||||||
BASE_FLAGS += -UDEBUG
|
|
||||||
endif
|
|
||||||
|
|
||||||
ifeq ($(HAVE_LIBLO),true)
|
ifeq ($(HAVE_LIBLO),true)
|
||||||
BASE_FLAGS += -DHAVE_LIBLO $(LIBLO_FLAGS)
|
BASE_FLAGS += -DHAVE_LIBLO $(LIBLO_FLAGS)
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ifeq ($(HEADLESS),true)
|
|
||||||
BASE_FLAGS += -DHEADLESS
|
|
||||||
endif
|
|
||||||
|
|
||||||
# SIMD must always be enabled, even in debug builds
|
|
||||||
ifeq ($(NOSIMD),true)
|
|
||||||
BASE_FLAGS += -DCARDINAL_NOSIMD
|
|
||||||
else ifeq ($(DEBUG),true)
|
|
||||||
ifeq ($(WASM),true)
|
|
||||||
BASE_FLAGS += -msse -msse2 -msse3 -msimd128
|
|
||||||
else ifeq ($(CPU_ARM32),true)
|
|
||||||
BASE_FLAGS += -mfpu=neon-vfpv4 -mfloat-abi=hard
|
|
||||||
else ifeq ($(CPU_I386_OR_X86_64),true)
|
|
||||||
BASE_FLAGS += -msse -msse2 -mfpmath=sse
|
|
||||||
endif
|
|
||||||
endif
|
|
||||||
|
|
||||||
ifeq ($(BSD),true)
|
|
||||||
BASE_FLAGS += -DCLOCK_MONOTONIC_RAW=CLOCK_MONOTONIC_PRECISE
|
|
||||||
endif
|
|
||||||
|
|
||||||
ifeq ($(HAIKU),true)
|
|
||||||
BASE_FLAGS += -DCLOCK_MONOTONIC_RAW=CLOCK_MONOTONIC
|
|
||||||
endif
|
|
||||||
|
|
||||||
ifeq ($(MOD_BUILD),true)
|
|
||||||
BASE_FLAGS += -DSIMDE_ENABLE_OPENMP -fopenmp
|
|
||||||
endif
|
|
||||||
|
|
||||||
ifneq ($(WASM),true)
|
|
||||||
ifneq ($(HAIKU),true)
|
|
||||||
BASE_FLAGS += -pthread
|
|
||||||
endif
|
|
||||||
endif
|
|
||||||
|
|
||||||
ifeq ($(WINDOWS),true)
|
|
||||||
BASE_FLAGS += -D_USE_MATH_DEFINES
|
|
||||||
BASE_FLAGS += -DWIN32_LEAN_AND_MEAN
|
|
||||||
BASE_FLAGS += -D_WIN32_WINNT=0x0600
|
|
||||||
BASE_FLAGS += -I../include/mingw-compat
|
|
||||||
endif
|
|
||||||
|
|
||||||
ifeq ($(USE_GLES2),true)
|
|
||||||
BASE_FLAGS += -DNANOVG_GLES2_FORCED
|
|
||||||
else ifeq ($(USE_GLES3),true)
|
|
||||||
BASE_FLAGS += -DNANOVG_GLES3_FORCED
|
|
||||||
endif
|
|
||||||
|
|
||||||
BUILD_C_FLAGS += -std=gnu11
|
|
||||||
BUILD_C_FLAGS += -fno-finite-math-only -fno-strict-aliasing
|
|
||||||
BUILD_CXX_FLAGS += -fno-finite-math-only -fno-strict-aliasing
|
|
||||||
|
|
||||||
ifneq ($(MACOS),true)
|
|
||||||
BUILD_CXX_FLAGS += -faligned-new -Wno-abi
|
|
||||||
ifeq ($(MOD_BUILD),true)
|
|
||||||
BUILD_CXX_FLAGS += -std=gnu++17
|
|
||||||
endif
|
|
||||||
endif
|
|
||||||
|
|
||||||
# use our custom function to invert some colors
|
# use our custom function to invert some colors
|
||||||
BUILD_CXX_FLAGS += -DnsvgDelete=nsvgDeleteCardinal
|
BUILD_CXX_FLAGS += -DnsvgDelete=nsvgDeleteCardinal
|
||||||
BUILD_CXX_FLAGS += -DnsvgParseFromFile=nsvgParseFromFileCardinal
|
BUILD_CXX_FLAGS += -DnsvgParseFromFile=nsvgParseFromFileCardinal
|
||||||
|
|
||||||
# Rack code is not tested for this flag, unset it
|
|
||||||
BUILD_CXX_FLAGS += -U_GLIBCXX_ASSERTIONS -Wp,-U_GLIBCXX_ASSERTIONS
|
|
||||||
|
|
||||||
# Ignore bad behaviour from Rack API
|
|
||||||
BUILD_CXX_FLAGS += -Wno-format-security
|
|
||||||
|
|
||||||
# Ignore warnings from simde
|
|
||||||
ifeq ($(MOD_BUILD),true)
|
|
||||||
BUILD_CXX_FLAGS += -Wno-overflow
|
|
||||||
endif
|
|
||||||
|
|
||||||
# --------------------------------------------------------------
|
# --------------------------------------------------------------
|
||||||
# Rack files to build
|
# Rack files to build
|
||||||
|
|
||||||
|
|
|
@ -4,6 +4,7 @@
|
||||||
# Created by falkTX
|
# Created by falkTX
|
||||||
#
|
#
|
||||||
|
|
||||||
|
BUILDING_RACK = true
|
||||||
ROOT = ../..
|
ROOT = ../..
|
||||||
include $(ROOT)/Makefile.base.mk
|
include $(ROOT)/Makefile.base.mk
|
||||||
|
|
||||||
|
@ -62,11 +63,7 @@ endif # CARDINAL_VARIANT mini
|
||||||
|
|
||||||
PREFIX ?= /usr/local
|
PREFIX ?= /usr/local
|
||||||
|
|
||||||
ifeq ($(SYSDEPS),true)
|
DEP_LIB_PATH = $(RACK_DEP_PATH)/lib
|
||||||
DEP_LIB_PATH = $(abspath ../../deps/sysroot/lib)
|
|
||||||
else
|
|
||||||
DEP_LIB_PATH = $(abspath ../Rack/dep/lib)
|
|
||||||
endif
|
|
||||||
|
|
||||||
# --------------------------------------------------------------
|
# --------------------------------------------------------------
|
||||||
# Files to build (DPF stuff)
|
# Files to build (DPF stuff)
|
||||||
|
@ -266,97 +263,15 @@ include ../../dpf/Makefile.plugins.mk
|
||||||
# --------------------------------------------------------------
|
# --------------------------------------------------------------
|
||||||
# Extra flags for VCV stuff
|
# Extra flags for VCV stuff
|
||||||
|
|
||||||
ifeq ($(MACOS),true)
|
|
||||||
BASE_FLAGS += -DARCH_MAC
|
|
||||||
else ifeq ($(WINDOWS),true)
|
|
||||||
BASE_FLAGS += -DARCH_WIN
|
|
||||||
else
|
|
||||||
BASE_FLAGS += -DARCH_LIN
|
|
||||||
endif
|
|
||||||
|
|
||||||
BASE_FLAGS += -DPRIVATE=
|
BASE_FLAGS += -DPRIVATE=
|
||||||
BASE_FLAGS += -I..
|
|
||||||
BASE_FLAGS += -I../../dpf/dgl/src/nanovg
|
|
||||||
BASE_FLAGS += -I../../include
|
|
||||||
BASE_FLAGS += -I../../include/simd-compat
|
|
||||||
BASE_FLAGS += -I../Rack/include
|
|
||||||
ifeq ($(SYSDEPS),true)
|
|
||||||
BASE_FLAGS += -DCARDINAL_SYSDEPS
|
|
||||||
BASE_FLAGS += $(shell $(PKG_CONFIG) --cflags jansson libarchive samplerate speexdsp)
|
|
||||||
else
|
|
||||||
BASE_FLAGS += -DZSTDLIB_VISIBILITY=
|
|
||||||
BASE_FLAGS += -I../Rack/dep/include
|
|
||||||
endif
|
|
||||||
BASE_FLAGS += -I../Rack/dep/glfw/include
|
|
||||||
BASE_FLAGS += -I../Rack/dep/nanosvg/src
|
|
||||||
BASE_FLAGS += -I../Rack/dep/oui-blendish
|
|
||||||
|
|
||||||
ifeq ($(HEADLESS),true)
|
|
||||||
BASE_FLAGS += -DHEADLESS
|
|
||||||
endif
|
|
||||||
|
|
||||||
# SIMD must always be enabled, even in debug builds
|
|
||||||
ifeq ($(NOSIMD),true)
|
|
||||||
BASE_FLAGS += -DCARDINAL_NOSIMD
|
|
||||||
else ifeq ($(DEBUG),true)
|
|
||||||
ifeq ($(WASM),true)
|
|
||||||
BASE_FLAGS += -msse -msse2 -msse3 -msimd128
|
|
||||||
else ifeq ($(CPU_ARM32),true)
|
|
||||||
BASE_FLAGS += -mfpu=neon-vfpv4 -mfloat-abi=hard
|
|
||||||
else ifeq ($(CPU_I386_OR_X86_64),true)
|
|
||||||
BASE_FLAGS += -msse -msse2 -mfpmath=sse
|
|
||||||
endif
|
|
||||||
endif
|
|
||||||
|
|
||||||
ifeq ($(MOD_BUILD),true)
|
ifeq ($(MOD_BUILD),true)
|
||||||
BASE_FLAGS += -DDISTRHO_PLUGIN_MINIMUM_BUFFER_SIZE=0xffff
|
BASE_FLAGS += -DDISTRHO_PLUGIN_MINIMUM_BUFFER_SIZE=0xffff
|
||||||
BASE_FLAGS += -DDISTRHO_PLUGIN_USES_MODGUI=1
|
BASE_FLAGS += -DDISTRHO_PLUGIN_USES_MODGUI=1
|
||||||
BASE_FLAGS += -DSIMDE_ENABLE_OPENMP -fopenmp
|
|
||||||
LINK_FLAGS += -fopenmp
|
|
||||||
else ifeq ($(CARDINAL_VARIANT),mini)
|
else ifeq ($(CARDINAL_VARIANT),mini)
|
||||||
BUILD_CXX_FLAGS += -DDISTRHO_PLUGIN_MINIMUM_BUFFER_SIZE=0xffff
|
BASE_FLAGS += -DDISTRHO_PLUGIN_MINIMUM_BUFFER_SIZE=0xffff
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ifneq ($(WASM),true)
|
|
||||||
ifneq ($(HAIKU),true)
|
|
||||||
BASE_FLAGS += -pthread
|
|
||||||
endif
|
|
||||||
endif
|
|
||||||
|
|
||||||
ifeq ($(WINDOWS),true)
|
|
||||||
BASE_FLAGS += -D_USE_MATH_DEFINES
|
|
||||||
BASE_FLAGS += -DWIN32_LEAN_AND_MEAN
|
|
||||||
BASE_FLAGS += -D_WIN32_WINNT=0x0600
|
|
||||||
BASE_FLAGS += -I../../include/mingw-compat
|
|
||||||
endif
|
|
||||||
|
|
||||||
ifeq ($(USE_GLES2),true)
|
|
||||||
BASE_FLAGS += -DNANOVG_GLES2_FORCED
|
|
||||||
else ifeq ($(USE_GLES3),true)
|
|
||||||
BASE_FLAGS += -DNANOVG_GLES3_FORCED
|
|
||||||
endif
|
|
||||||
|
|
||||||
BUILD_C_FLAGS += -std=gnu11
|
|
||||||
|
|
||||||
ifneq ($(MACOS),true)
|
|
||||||
BUILD_CXX_FLAGS += -faligned-new -Wno-abi
|
|
||||||
ifeq ($(MOD_BUILD),true)
|
|
||||||
BUILD_CXX_FLAGS += -std=gnu++17
|
|
||||||
endif
|
|
||||||
endif
|
|
||||||
|
|
||||||
# Rack code is not tested for this flag, unset it
|
|
||||||
BUILD_CXX_FLAGS += -U_GLIBCXX_ASSERTIONS -Wp,-U_GLIBCXX_ASSERTIONS
|
|
||||||
|
|
||||||
# Ignore bad behaviour from Rack API
|
|
||||||
BUILD_CXX_FLAGS += -Wno-format-security
|
|
||||||
|
|
||||||
# --------------------------------------------------------------
|
|
||||||
# FIXME lots of warnings from VCV side
|
|
||||||
|
|
||||||
BASE_FLAGS += -Wno-unused-parameter
|
|
||||||
BASE_FLAGS += -Wno-unused-variable
|
|
||||||
|
|
||||||
# --------------------------------------------------------------
|
# --------------------------------------------------------------
|
||||||
# extra linker flags
|
# extra linker flags
|
||||||
|
|
||||||
|
@ -407,9 +322,13 @@ endif
|
||||||
LINK_FLAGS += $(foreach d,$(SYMLINKED_DIRS_RESOURCES),--preload-file=../../bin/CardinalNative.lv2/resources/$(d)@/resources/$(d))
|
LINK_FLAGS += $(foreach d,$(SYMLINKED_DIRS_RESOURCES),--preload-file=../../bin/CardinalNative.lv2/resources/$(d)@/resources/$(d))
|
||||||
|
|
||||||
else ifeq ($(HAIKU),true)
|
else ifeq ($(HAIKU),true)
|
||||||
|
|
||||||
LINK_FLAGS += -lpthread
|
LINK_FLAGS += -lpthread
|
||||||
|
|
||||||
else
|
else
|
||||||
|
|
||||||
LINK_FLAGS += -pthread
|
LINK_FLAGS += -pthread
|
||||||
|
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ifneq ($(HAIKU_OR_MACOS_OR_WINDOWS),true)
|
ifneq ($(HAIKU_OR_MACOS_OR_WINDOWS),true)
|
||||||
|
@ -418,11 +337,9 @@ LINK_FLAGS += -ldl
|
||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ifeq ($(BSD),true)
|
ifeq ($(BSD)$(DEBUG),true)
|
||||||
ifeq ($(DEBUG),true)
|
|
||||||
LINK_FLAGS += -lexecinfo
|
LINK_FLAGS += -lexecinfo
|
||||||
endif
|
endif
|
||||||
endif
|
|
||||||
|
|
||||||
ifeq ($(MACOS),true)
|
ifeq ($(MACOS),true)
|
||||||
LINK_FLAGS += -framework IOKit
|
LINK_FLAGS += -framework IOKit
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue