2026-03-27 23:36:46 +01:00
|
|
|
RACK_DIR ?= $(HOME)/.local/share/Rack2/Rack-SDK
|
|
|
|
|
|
2026-06-28 05:16:39 +02:00
|
|
|
# Detect the target arch early (defines ARCH_WIN/ARCH_LIN/ARCH_MAC) so we can add
|
|
|
|
|
# per-platform link libs before plugin.mk wires the link rule. The OSC bridge
|
|
|
|
|
# server (src/osc_server.hpp) uses Winsock2 on Windows; mingw ignores the
|
|
|
|
|
# MSVC-only `#pragma comment(lib, "ws2_32.lib")`, so link it explicitly.
|
|
|
|
|
include $(RACK_DIR)/arch.mk
|
|
|
|
|
ifdef ARCH_WIN
|
|
|
|
|
LDFLAGS += -lws2_32
|
|
|
|
|
endif
|
|
|
|
|
|
2026-03-27 23:36:46 +01:00
|
|
|
FLAGS += -std=c++20
|
|
|
|
|
FLAGS += -I$(RACK_DIR)/include -I$(RACK_DIR)/dep/include
|
2026-07-18 13:01:28 +02:00
|
|
|
# src/iml.hpp is a THIN adapter over the shared C++ core: it pulls in
|
|
|
|
|
# nisps/ml/{mlp,dynamic_storage}.hpp + nisps/core/rng.hpp via relative includes
|
|
|
|
|
# (../../nisps/…), so no extra -I for the core is needed here (P6, 2026-07-18).
|
2026-06-28 04:14:30 +02:00
|
|
|
FLAGS += -Isrc
|
2026-03-27 23:36:46 +01:00
|
|
|
|
|
|
|
|
SOURCES += src/plugin.cpp
|
|
|
|
|
SOURCES += src/MEMLNaut.cpp
|
|
|
|
|
|
|
|
|
|
DISTRIBUTABLES += res
|
|
|
|
|
|
|
|
|
|
include $(RACK_DIR)/plugin.mk
|
|
|
|
|
|
|
|
|
|
# Remove SDK's default c++11 to avoid conflicting flags
|
|
|
|
|
CXXFLAGS := $(filter-out -std=c++11,$(CXXFLAGS))
|