Mercurial > hg > vamp-libxtract-plugins
annotate Makefile.osx @ 40:08d9660e57e8 tip
Or better, this
author | Chris Cannam |
---|---|
date | Thu, 16 May 2024 10:17:33 +0100 |
parents | 5e710501d036 |
children |
rev | line source |
---|---|
Chris@24 | 1 |
Chris@24 | 2 # Location of our plugins |
Chris@24 | 3 # |
Chris@24 | 4 PLUGINDIR = plugins |
Chris@24 | 5 |
Chris@26 | 6 # Location of LibXtract |
Chris@26 | 7 # |
Chris@26 | 8 LIBXTRACTDIR = LibXtract |
Chris@26 | 9 |
Chris@24 | 10 # Compile flags |
Chris@24 | 11 # |
Chris@26 | 12 CFLAGS := $(CFLAGS) -DXTRACT_FFT=1 -arch x86_64 -arch i386 -mmacosx-version-min=10.5 -DNDEBUG -O3 -ffast-math -Wall -fPIC -I. -I$(LIBXTRACTDIR) |
Chris@27 | 13 CXXFLAGS := $(CFLAGS) |
Chris@24 | 14 |
Chris@24 | 15 # Libraries required for the plugins. |
Chris@24 | 16 # |
Chris@26 | 17 PLUGIN_LIBS = -lvamp-sdk -lfftw3f |
Chris@24 | 18 |
Chris@26 | 19 # Flags required to tell the compiler to make a dynamically loadable object |
Chris@26 | 20 # |
Chris@24 | 21 PLUGIN_LDFLAGS = -arch x86_64 -arch i386 -mmacosx-version-min=10.5 -dynamiclib -exported_symbols_list=vamp-plugin.list |
Chris@26 | 22 |
Chris@26 | 23 # File extension for a dynamically loadable object |
Chris@26 | 24 # |
Chris@24 | 25 PLUGIN_EXT = .dylib |
Chris@24 | 26 |
Chris@24 | 27 |
Chris@24 | 28 ### End of user-serviceable parts |
Chris@24 | 29 |
Chris@24 | 30 PLUGIN_OBJECTS = libmain.o $(patsubst %.cpp,%.o,$(wildcard $(PLUGINDIR)/*.cpp)) |
Chris@26 | 31 XTRACT_OBJECTS = $(patsubst %.c,%.o,$(wildcard $(LIBXTRACTDIR)/src/*.c)) |
Chris@24 | 32 PLUGIN_HEADERS = $(patsubst %.cpp,%.h,$(wildcard $(PLUGINDIR)/*.cpp)) |
Chris@24 | 33 PLUGIN_TARGET = vamp-libxtract$(PLUGIN_EXT) |
Chris@24 | 34 |
Chris@24 | 35 all: $(PLUGIN_TARGET) |
Chris@24 | 36 |
Chris@26 | 37 $(PLUGIN_TARGET): $(PLUGIN_OBJECTS) $(XTRACT_OBJECTS) $(PLUGIN_HEADERS) |
Chris@26 | 38 $(CXX) $(LDFLAGS) $(PLUGIN_LDFLAGS) -o $@ $(PLUGIN_OBJECTS) $(XTRACT_OBJECTS) $(PLUGIN_LIBS) |
Chris@24 | 39 |
Chris@24 | 40 clean: |
Chris@26 | 41 rm -f $(PLUGIN_OBJECTS) $(XTRACT_OBJECTS) |
Chris@24 | 42 |
Chris@24 | 43 distclean: clean |
Chris@24 | 44 rm -f $(PLUGIN_TARGET) *~ */*~ |
Chris@24 | 45 |
Chris@24 | 46 |