Make otherbuilds files build only static libraries

This commit is contained in:
Chris Cannam
2021-02-24 09:29:07 +00:00
parent a3c17ff963
commit 6ae0bd26a5
6 changed files with 41 additions and 6063 deletions

View File

@@ -1,7 +1,8 @@
CXX := clang++ CXX := clang++
CC := clang CC := clang
OPTFLAGS := -ffast-math -freciprocal-math -O3 -ftree-vectorize
OPTFLAGS := -DNDEBUG -ffast-math -freciprocal-math -O3 -ftree-vectorize
# For the device # For the device
ARCHFLAGS_DEV := -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk -miphoneos-version-min=6 -stdlib=libc++ -arch armv7 -arch arm64 -fembed-bitcode ARCHFLAGS_DEV := -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk -miphoneos-version-min=6 -stdlib=libc++ -arch armv7 -arch arm64 -fembed-bitcode
@@ -137,9 +138,9 @@ distclean: clean
rm -f $(STATIC_TARGET_DEV) $(STATIC_TARGET_SIM) rm -f $(STATIC_TARGET_DEV) $(STATIC_TARGET_SIM)
depend: depend:
touch Makefile.dev_depends Makefile.sim_depends touch otherbuilds/Makefile.dev_depends otherbuilds/Makefile.sim_depends
makedepend -f Makefile.dev_depends -o.dev.o -Y $(LIBRARY_SOURCES) makedepend -f otherbuilds/Makefile.dev_depends -o.dev.o -Y $(LIBRARY_SOURCES)
makedepend -f Makefile.sim_depends -o.sim.o -Y $(LIBRARY_SOURCES) makedepend -f otherbuilds/Makefile.sim_depends -o.sim.o -Y $(LIBRARY_SOURCES)
-include Makefile.dev_depends -include otherbuilds/Makefile.dev_depends
-include Makefile.sim_depends -include otherbuilds/Makefile.sim_depends

View File

@@ -1,75 +1,27 @@
PREFIX := @prefix@ CXX := g++
CXX := @CXX@ CC := gcc
CC := @CC@
CXXFLAGS := -DHAVE_LIBSAMPLERATE -DHAVE_FFTW3 -DFFTW_DOUBLE_ONLY -DNO_THREAD_CHECKS -DUSE_PTHREADS -DNO_TIMING -DNDEBUG -I. -Isrc -Irubberband @CXXFLAGS@ @SRC_CFLAGS@ @SNDFILE_CFLAGS@ @FFTW_CFLAGS@ @Vamp_CFLAGS@ $(OPTFLAGS)
CFLAGS := @CFLAGS@ $(OPTFLAGS)
LDFLAGS := @LDFLAGS@ -lpthread $(LDFLAGS)
WITH_PROGRAMS := @WITH_PROGRAMS@
WITH_VAMP := @WITH_VAMP@
WITH_LADSPA := @WITH_LADSPA@
JNI_CXXFLAGS := -I$(JAVA_HOME)/include -I$(JAVA_HOME)/include/linux OPTFLAGS := -DNDEBUG -ffast-math -O3 -ftree-vectorize
JAVAC := $(JAVA_HOME)/bin/javac
JAR := $(JAVA_HOME)/bin/jar
LIBRARY_LIBS := @SRC_LIBS@ @FFTW_LIBS@ ARCHFLAGS :=
PROGRAM_LIBS := @SNDFILE_LIBS@ $(LIBRARY_LIBS)
VAMP_PLUGIN_LIBS := @Vamp_LIBS@ $(LIBRARY_LIBS) CXXFLAGS := $(ARCHFLAGS) $(OPTFLAGS) -I. -Isrc -Irubberband -DHAVE_LIBSAMPLERATE -DUSE_KISSFFT -DNO_THREAD_CHECKS -DUSE_PTHREADS -DNO_TIMING -DHAVE_POSIX_MEMALIGN -DNDEBUG
LADSPA_PLUGIN_LIBS := $(LIBRARY_LIBS)
CFLAGS := $(ARCHFLAGS) $(OPTFLAGS)
MKDIR := mkdir
AR := ar AR := ar
MKDIR := mkdir
INSTALL_BINDIR := $(PREFIX)/bin
INSTALL_INCDIR := $(PREFIX)/include/rubberband
INSTALL_LIBDIR := $(PREFIX)/lib
INSTALL_VAMPDIR := $(PREFIX)/lib/vamp
INSTALL_LADSPADIR := $(PREFIX)/lib/ladspa
INSTALL_LRDFDIR := $(PREFIX)/share/ladspa/rdf
INSTALL_PKGDIR := $(PREFIX)/lib/pkgconfig
LIBNAME := librubberband LIBNAME := librubberband
JNINAME := librubberband-jni
JARNAME := rubberband.jar
DYNAMIC_EXTENSION := .so
DYNAMIC_FULL_VERSION := 2.1.2
DYNAMIC_ABI_VERSION := 2
DYNAMIC_LDFLAGS := -shared -Wl,-Bsymbolic -Wl,-soname=$(LIBNAME)$(DYNAMIC_EXTENSION).$(DYNAMIC_ABI_VERSION)
VAMP_LDFLAGS := -shared -Wl,-Bsymbolic -Wl,--version-script=vamp/vamp-plugin.map
LADSPA_LDFLAGS := -shared -Wl,-Bsymbolic -Wl,--version-script=ladspa/ladspa-plugin.map
PROGRAM_TARGET := bin/rubberband
STATIC_TARGET := lib/$(LIBNAME).a STATIC_TARGET := lib/$(LIBNAME).a
DYNAMIC_TARGET := lib/$(LIBNAME)$(DYNAMIC_EXTENSION)
JNI_TARGET := lib/$(JNINAME)$(DYNAMIC_EXTENSION)
JAR_TARGET := lib/$(JARNAME)
VAMP_TARGET := lib/vamp-rubberband$(DYNAMIC_EXTENSION)
LADSPA_TARGET := lib/ladspa-rubberband$(DYNAMIC_EXTENSION)
ALL_TARGETS := lib $(STATIC_TARGET) $(DYNAMIC_TARGET) default: $(STATIC_TARGET)
ifeq ($(WITH_PROGRAMS), yes) all: $(STATIC_TARGET)
ALL_TARGETS += bin $(PROGRAM_TARGET)
endif
ifeq ($(WITH_VAMP), yes)
ALL_TARGETS += $(VAMP_TARGET)
endif
ifeq ($(WITH_LADSPA), yes)
ALL_TARGETS += $(LADSPA_TARGET)
endif
all: $(ALL_TARGETS)
static: $(STATIC_TARGET) static: $(STATIC_TARGET)
dynamic: $(DYNAMIC_TARGET)
library: $(STATIC_TARGET) $(DYNAMIC_TARGET)
jni: $(JNI_TARGET) $(JAR_TARGET)
program: $(PROGRAM_TARGET)
vamp: $(VAMP_TARGET)
ladspa: $(LADSPA_TARGET)
PUBLIC_INCLUDES := \ PUBLIC_INCLUDES := \
rubberband/rubberband-c.h \ rubberband/rubberband-c.h \
@@ -119,109 +71,27 @@ LIBRARY_SOURCES := \
src/system/sysutils.cpp \ src/system/sysutils.cpp \
src/system/Thread.cpp \ src/system/Thread.cpp \
src/StretcherChannelData.cpp \ src/StretcherChannelData.cpp \
src/StretcherImpl.cpp src/StretcherImpl.cpp \
src/kissfft/kiss_fft.c \
JNI_SOURCE := \ src/kissfft/kiss_fftr.c
src/jni/RubberBandStretcherJNI.cpp
JAVA_SOURCE := \
com/breakfastquay/rubberband/RubberBandStretcher.java
PROGRAM_SOURCES := \
main/main.cpp
VAMP_HEADERS := \
vamp/RubberBandVampPlugin.h
VAMP_SOURCES := \
vamp/RubberBandVampPlugin.cpp \
vamp/libmain.cpp
LADSPA_HEADERS := \
ladspa/RubberBandPitchShifter.h
LADSPA_SOURCES := \
ladspa/RubberBandPitchShifter.cpp \
ladspa/libmain.cpp
LIBRARY_OBJECTS := $(LIBRARY_SOURCES:.cpp=.o) LIBRARY_OBJECTS := $(LIBRARY_SOURCES:.cpp=.o)
LIBRARY_OBJECTS := $(LIBRARY_OBJECTS:.c=.o) LIBRARY_OBJECTS := $(LIBRARY_OBJECTS:.c=.o)
JNI_OBJECT := $(JNI_SOURCE:.cpp=.o)
JAVA_OBJECT := $(JAVA_SOURCE:.java=.class)
PROGRAM_OBJECTS := $(PROGRAM_SOURCES:.cpp=.o)
VAMP_OBJECTS := $(VAMP_SOURCES:.cpp=.o)
LADSPA_OBJECTS := $(LADSPA_SOURCES:.cpp=.o)
$(PROGRAM_TARGET): $(LIBRARY_OBJECTS) $(PROGRAM_OBJECTS)
$(CXX) -o $@ $^ $(PROGRAM_LIBS) $(LDFLAGS)
$(STATIC_TARGET): $(LIBRARY_OBJECTS) $(STATIC_TARGET): $(LIBRARY_OBJECTS)
$(AR) rsc $@ $^ $(AR) rsc $@ $^
$(DYNAMIC_TARGET): $(LIBRARY_OBJECTS)
$(CXX) $(DYNAMIC_LDFLAGS) $^ -o $@ $(LIBRARY_LIBS) $(LDFLAGS)
$(JNI_OBJECT): $(JNI_SOURCE)
$(CXX) -c $(JNI_CXXFLAGS) $(CXXFLAGS) $^ -o $@
$(JNI_TARGET): $(LIBRARY_OBJECTS) $(JNI_OBJECT)
$(CXX) $(DYNAMIC_LDFLAGS) $^ -o $@ $(LIBRARY_LIBS) $(LDFLAGS)
$(JAR_TARGET): $(JAVA_SOURCE)
$(JAVAC) $^
$(JAR) cvf $@ $(JAVA_OBJECT)
$(VAMP_TARGET): $(LIBRARY_OBJECTS) $(VAMP_OBJECTS)
$(CXX) $(VAMP_LDFLAGS) -o $@ $^ $(VAMP_PLUGIN_LIBS) $(LDFLAGS)
$(LADSPA_TARGET): $(LIBRARY_OBJECTS) $(LADSPA_OBJECTS)
$(CXX) $(LADSPA_LDFLAGS) -o $@ $^ $(LADSPA_PLUGIN_LIBS) $(LDFLAGS)
bin:
$(MKDIR) $@
lib: lib:
$(MKDIR) $@ $(MKDIR) $@
install: all
$(MKDIR) -p $(DESTDIR)$(INSTALL_INCDIR)
$(MKDIR) -p $(DESTDIR)$(INSTALL_LIBDIR)
$(MKDIR) -p $(DESTDIR)$(INSTALL_PKGDIR)
cp -p $(PUBLIC_INCLUDES) $(DESTDIR)$(INSTALL_INCDIR)
cp -p $(STATIC_TARGET) $(DESTDIR)$(INSTALL_LIBDIR)
rm -f $(DESTDIR)$(INSTALL_LIBDIR)/$(LIBNAME)$(DYNAMIC_EXTENSION).$(DYNAMIC_ABI_VERSION)
rm -f $(DESTDIR)$(INSTALL_LIBDIR)/$(LIBNAME)$(DYNAMIC_EXTENSION)
rm -f $(DESTDIR)$(INSTALL_LIBDIR)/$(JNINAME)$(DYNAMIC_EXTENSION)
cp -p $(DYNAMIC_TARGET) $(DESTDIR)$(INSTALL_LIBDIR)/$(LIBNAME)$(DYNAMIC_EXTENSION).$(DYNAMIC_FULL_VERSION)
ln -s $(LIBNAME)$(DYNAMIC_EXTENSION).$(DYNAMIC_FULL_VERSION) $(DESTDIR)$(INSTALL_LIBDIR)/$(LIBNAME)$(DYNAMIC_EXTENSION).$(DYNAMIC_ABI_VERSION)
ln -s $(LIBNAME)$(DYNAMIC_EXTENSION).$(DYNAMIC_FULL_VERSION) $(DESTDIR)$(INSTALL_LIBDIR)/$(LIBNAME)$(DYNAMIC_EXTENSION)
test -f $(JNI_TARGET) && cp -fp $(JNI_TARGET) $(DESTDIR)$(INSTALL_LIBDIR)/$(JNINAME)$(DYNAMIC_EXTENSION) || true
sed "s,%PREFIX%,$(PREFIX)," rubberband.pc.in \
> $(DESTDIR)$(INSTALL_PKGDIR)/rubberband.pc
ifeq ($(WITH_PROGRAMS), yes)
$(MKDIR) -p $(DESTDIR)$(INSTALL_BINDIR)
cp -p $(PROGRAM_TARGET) $(DESTDIR)$(INSTALL_BINDIR)
endif
ifeq ($(WITH_VAMP), yes)
$(MKDIR) -p $(DESTDIR)$(INSTALL_VAMPDIR)
cp -p $(VAMP_TARGET) $(DESTDIR)$(INSTALL_VAMPDIR)
cp -p vamp/vamp-rubberband.cat $(DESTDIR)$(INSTALL_VAMPDIR)
endif
ifeq ($(WITH_LADSPA), yes)
$(MKDIR) -p $(DESTDIR)$(INSTALL_LADSPADIR)
$(MKDIR) -p $(DESTDIR)$(INSTALL_LRDFDIR)
cp -p $(LADSPA_TARGET) $(DESTDIR)$(INSTALL_LADSPADIR)
cp -p ladspa/ladspa-rubberband.cat $(DESTDIR)$(INSTALL_LADSPADIR)
cp -p ladspa/ladspa-rubberband.rdf $(DESTDIR)$(INSTALL_LRDFDIR)
endif
clean: clean:
rm -f $(LIBRARY_OBJECTS) $(JNI_OBJECT) $(JAVA_OBJECT) $(PROGRAM_OBJECTS) $(LADSPA_OBJECTS) $(VAMP_OBJECTS) rm -f $(LIBRARY_OBJECTS)
distclean: clean distclean: clean
rm -f $(PROGRAM_TARGET) $(STATIC_TARGET) $(DYNAMIC_TARGET) $(JNI_TARGET) $(JAR_TARGET) $(VAMP_TARGET) $(LADSPA_TARGET) rm -f $(STATIC_TARGET)
depend: depend:
makedepend -Y $(LIBRARY_SOURCES) $(PROGRAM_SOURCES) makedepend -f otherbuilds/Makefile.linux -Y $(LIBRARY_SOURCES) $(PROGRAM_SOURCES)
# DO NOT DELETE # DO NOT DELETE

View File

@@ -1,57 +1,27 @@
PREFIX := /usr/local
CXX := clang++ -stdlib=libc++ CXX := clang++ -stdlib=libc++
CC := clang CC := clang
ARCHFLAGS := -mmacosx-version-min=10.7
OPTFLAGS := -DNDEBUG -ffast-math -O3 -ftree-vectorize OPTFLAGS := -DNDEBUG -ffast-math -O3 -ftree-vectorize
ARCHFLAGS := -mmacosx-version-min=10.7
CXXFLAGS := $(ARCHFLAGS) $(OPTFLAGS) -I. -Isrc -Irubberband -I/usr/local/include -DUSE_PTHREADS -DMALLOC_IS_ALIGNED -DHAVE_VDSP -DUSE_SPEEX -DNO_THREAD_CHECKS -DNO_TIMING CXXFLAGS := $(ARCHFLAGS) $(OPTFLAGS) -I. -Isrc -Irubberband -I/usr/local/include -DUSE_PTHREADS -DMALLOC_IS_ALIGNED -DHAVE_VDSP -DUSE_SPEEX -DNO_THREAD_CHECKS -DNO_TIMING
CFLAGS := $(ARCHFLAGS) $(OPTFLAGS) CFLAGS := $(ARCHFLAGS) $(OPTFLAGS)
LDFLAGS := $(ARCHFLAGS) -lpthread $(LDFLAGS)
LIBRARY_LIBS := -framework Accelerate
PROGRAM_LIBS := -L$(PREFIX)/lib -lsndfile $(LIBRARY_LIBS)
VAMP_PLUGIN_LIBS := -L$(PREFIX)/lib -lvamp-sdk $(LIBRARY_LIBS)
LADSPA_PLUGIN_LIBS := $(LIBRARY_LIBS)
MKDIR := mkdir
AR := ar AR := ar
MKDIR := mkdir
INSTALL_BINDIR := $(PREFIX)/bin
INSTALL_INCDIR := $(PREFIX)/include/rubberband
INSTALL_LIBDIR := $(PREFIX)/lib
INSTALL_VAMPDIR := $(PREFIX)/lib/vamp
INSTALL_LADSPADIR := $(PREFIX)/lib/ladspa
INSTALL_LRDFDIR := $(PREFIX)/share/ladspa/rdf
INSTALL_PKGDIR := $(PREFIX)/lib/pkgconfig
LIBNAME := librubberband LIBNAME := librubberband
DYNAMIC_EXTENSION := .dylib
DYNAMIC_FULL_VERSION := 2.1.2
DYNAMIC_ABI_VERSION := 2
DYNAMIC_LDFLAGS := -dynamiclib -install_name $(INSTALL_LIBDIR)/$(LIBNAME).$(DYNAMIC_ABI_VERSION)$(DYNAMIC_EXTENSION) -current_version $(DYNAMIC_FULL_VERSION) -compatibility_version $(DYNAMIC_ABI_VERSION)
VAMP_LDFLAGS := -dynamiclib -install_name vamp-rubberband.dylib -exported_symbols_list vamp/vamp-plugin.list
LADSPA_LDFLAGS := -dynamiclib -install_name ladspa-rubberband.dylib -exported_symbols_list ladspa/ladspa-plugin.list
PROGRAM_TARGET := bin/rubberband
STATIC_TARGET := lib/$(LIBNAME).a STATIC_TARGET := lib/$(LIBNAME).a
DYNAMIC_TARGET := lib/$(LIBNAME)$(DYNAMIC_EXTENSION)
VAMP_TARGET := lib/vamp-rubberband$(DYNAMIC_EXTENSION)
LADSPA_TARGET := lib/ladspa-rubberband$(DYNAMIC_EXTENSION)
default: bin lib $(STATIC_TARGET) $(DYNAMIC_TARGET) $(PROGRAM_TARGET) default: lib $(STATIC_TARGET)
all: bin lib $(STATIC_TARGET) $(DYNAMIC_TARGET) $(PROGRAM_TARGET) $(VAMP_TARGET) $(LADSPA_TARGET) all: lib $(STATIC_TARGET)
static: lib $(STATIC_TARGET) static: lib $(STATIC_TARGET)
dynamic: lib $(DYNAMIC_TARGET)
library: static dynamic
program: bin $(PROGRAM_TARGET)
vamp: lib $(VAMP_TARGET)
ladspa: lib $(LADSPA_TARGET)
PUBLIC_INCLUDES := \ PUBLIC_INCLUDES := \
rubberband/rubberband-c.h \ rubberband/rubberband-c.h \
@@ -111,83 +81,24 @@ LIBRARY_INCLUDES := $(LIBRARY_INCLUDES) \
LIBRARY_SOURCES := $(LIBRARY_SOURCES) \ LIBRARY_SOURCES := $(LIBRARY_SOURCES) \
src/speex/resample.c src/speex/resample.c
PROGRAM_SOURCES := \
main/main.cpp
VAMP_HEADERS := \
vamp/RubberBandVampPlugin.h
VAMP_SOURCES := \
vamp/RubberBandVampPlugin.cpp \
vamp/libmain.cpp
LADSPA_HEADERS := \
ladspa/RubberBandPitchShifter.h
LADSPA_SOURCES := \
ladspa/RubberBandPitchShifter.cpp \
ladspa/libmain.cpp
LIBRARY_OBJECTS := $(LIBRARY_SOURCES:.cpp=.o) LIBRARY_OBJECTS := $(LIBRARY_SOURCES:.cpp=.o)
LIBRARY_OBJECTS := $(LIBRARY_OBJECTS:.c=.o) LIBRARY_OBJECTS := $(LIBRARY_OBJECTS:.c=.o)
PROGRAM_OBJECTS := $(PROGRAM_SOURCES:.cpp=.o)
VAMP_OBJECTS := $(VAMP_SOURCES:.cpp=.o)
LADSPA_OBJECTS := $(LADSPA_SOURCES:.cpp=.o)
$(PROGRAM_TARGET): $(LIBRARY_OBJECTS) $(PROGRAM_OBJECTS)
$(CXX) -o $@ $^ $(PROGRAM_LIBS) $(LDFLAGS)
$(STATIC_TARGET): $(LIBRARY_OBJECTS) $(STATIC_TARGET): $(LIBRARY_OBJECTS)
rm -f $@ rm -f $@
$(AR) rsc $@ $^ $(AR) rsc $@ $^
$(DYNAMIC_TARGET): $(LIBRARY_OBJECTS)
$(CXX) $(DYNAMIC_LDFLAGS) $^ -o $@ $(LIBRARY_LIBS) $(LDFLAGS)
$(VAMP_TARGET): $(LIBRARY_OBJECTS) $(VAMP_OBJECTS)
$(CXX) $(VAMP_LDFLAGS) -o $@ $^ $(VAMP_PLUGIN_LIBS) $(LDFLAGS)
$(LADSPA_TARGET): $(LIBRARY_OBJECTS) $(LADSPA_OBJECTS)
$(CXX) $(LADSPA_LDFLAGS) -o $@ $^ $(LADSPA_PLUGIN_LIBS) $(LDFLAGS)
bin:
$(MKDIR) $@
lib: lib:
$(MKDIR) $@ $(MKDIR) $@
install: default
$(MKDIR) -p $(DESTDIR)$(INSTALL_BINDIR)
$(MKDIR) -p $(DESTDIR)$(INSTALL_INCDIR)
$(MKDIR) -p $(DESTDIR)$(INSTALL_LIBDIR)
$(MKDIR) -p $(DESTDIR)$(INSTALL_VAMPDIR)
$(MKDIR) -p $(DESTDIR)$(INSTALL_LADSPADIR)
$(MKDIR) -p $(DESTDIR)$(INSTALL_LRDFDIR)
$(MKDIR) -p $(DESTDIR)$(INSTALL_PKGDIR)
cp $(PROGRAM_TARGET) $(DESTDIR)$(INSTALL_BINDIR)
cp $(PUBLIC_INCLUDES) $(DESTDIR)$(INSTALL_INCDIR)
cp $(STATIC_TARGET) $(DESTDIR)$(INSTALL_LIBDIR)
rm -f $(DESTDIR)$(INSTALL_LIBDIR)/$(LIBNAME).$(DYNAMIC_ABI_VERSION)$(DYNAMIC_EXTENSION)
rm -f $(DESTDIR)$(INSTALL_LIBDIR)/$(LIBNAME)$(DYNAMIC_EXTENSION)
cp $(DYNAMIC_TARGET) $(DESTDIR)$(INSTALL_LIBDIR)/$(LIBNAME).$(DYNAMIC_FULL_VERSION)$(DYNAMIC_EXTENSION)
ln -s $(LIBNAME).$(DYNAMIC_FULL_VERSION)$(DYNAMIC_EXTENSION) $(DESTDIR)$(INSTALL_LIBDIR)/$(LIBNAME).$(DYNAMIC_ABI_VERSION)$(DYNAMIC_EXTENSION)
ln -s $(LIBNAME).$(DYNAMIC_FULL_VERSION)$(DYNAMIC_EXTENSION) $(DESTDIR)$(INSTALL_LIBDIR)/$(LIBNAME)$(DYNAMIC_EXTENSION)
cp $(VAMP_TARGET) $(DESTDIR)$(INSTALL_VAMPDIR)
cp vamp/vamp-rubberband.cat $(DESTDIR)$(INSTALL_VAMPDIR)
cp $(LADSPA_TARGET) $(DESTDIR)$(INSTALL_LADSPADIR)
cp ladspa/ladspa-rubberband.cat $(DESTDIR)$(INSTALL_LADSPADIR)
cp ladspa/ladspa-rubberband.rdf $(DESTDIR)$(INSTALL_LRDFDIR)
sed "s,%PREFIX%,$(PREFIX)," rubberband.pc.in \
> $(DESTDIR)$(INSTALL_PKGDIR)/rubberband.pc
clean: clean:
rm -f $(LIBRARY_OBJECTS) $(PROGRAM_OBJECTS) $(LADSPA_OBJECTS) $(VAMP_OBJECTS) rm -f $(LIBRARY_OBJECTS)
distclean: clean distclean: clean
rm -f $(PROGRAM_TARGET) $(STATIC_TARGET) $(DYNAMIC_TARGET) $(VAMP_TARGET) $(LADSPA_TARGET) rm -f $(STATIC_TARGET)
depend: depend:
makedepend -f Makefile.osx -Y $(LIBRARY_SOURCES) $(PROGRAM_SOURCES) makedepend -f otherbuilds/Makefile.macos -Y $(LIBRARY_SOURCES) $(PROGRAM_SOURCES)
# DO NOT DELETE # DO NOT DELETE

View File

@@ -1,57 +1,27 @@
PREFIX := /usr/local
CXX := clang++ -stdlib=libc++ CXX := clang++ -stdlib=libc++
CC := clang CC := clang
OPTFLAGS := -DNDEBUG -ffast-math -O3 -ftree-vectorize
ARCHFLAGS := -arch arm64 -arch x86_64 -mmacosx-version-min=10.7 ARCHFLAGS := -arch arm64 -arch x86_64 -mmacosx-version-min=10.7
OPTFLAGS := -DNDEBUG -ffast-math -O3
CXXFLAGS := $(ARCHFLAGS) $(OPTFLAGS) -I. -Isrc -Irubberband -I/usr/local/include -DUSE_PTHREADS -DMALLOC_IS_ALIGNED -DHAVE_VDSP -DUSE_SPEEX -DNO_THREAD_CHECKS -DNO_TIMING CXXFLAGS := $(ARCHFLAGS) $(OPTFLAGS) -I. -Isrc -Irubberband -I/usr/local/include -DUSE_PTHREADS -DMALLOC_IS_ALIGNED -DHAVE_VDSP -DUSE_SPEEX -DNO_THREAD_CHECKS -DNO_TIMING
CFLAGS := $(ARCHFLAGS) $(OPTFLAGS) CFLAGS := $(ARCHFLAGS) $(OPTFLAGS)
LDFLAGS := $(ARCHFLAGS) -lpthread $(LDFLAGS)
LIBRARY_LIBS := -framework Accelerate
PROGRAM_LIBS := -L$(PREFIX)/lib -lsndfile $(LIBRARY_LIBS)
VAMP_PLUGIN_LIBS := -L$(PREFIX)/lib -lvamp-sdk $(LIBRARY_LIBS)
LADSPA_PLUGIN_LIBS := $(LIBRARY_LIBS)
MKDIR := mkdir
AR := ar AR := ar
MKDIR := mkdir
INSTALL_BINDIR := $(PREFIX)/bin
INSTALL_INCDIR := $(PREFIX)/include/rubberband
INSTALL_LIBDIR := $(PREFIX)/lib
INSTALL_VAMPDIR := $(PREFIX)/lib/vamp
INSTALL_LADSPADIR := $(PREFIX)/lib/ladspa
INSTALL_LRDFDIR := $(PREFIX)/share/ladspa/rdf
INSTALL_PKGDIR := $(PREFIX)/lib/pkgconfig
LIBNAME := librubberband LIBNAME := librubberband
DYNAMIC_EXTENSION := .dylib
DYNAMIC_FULL_VERSION := 2.1.2
DYNAMIC_ABI_VERSION := 2
DYNAMIC_LDFLAGS := -dynamiclib -install_name $(INSTALL_LIBDIR)/$(LIBNAME).$(DYNAMIC_ABI_VERSION)$(DYNAMIC_EXTENSION) -current_version $(DYNAMIC_FULL_VERSION) -compatibility_version $(DYNAMIC_ABI_VERSION)
VAMP_LDFLAGS := -dynamiclib -install_name vamp-rubberband.dylib -exported_symbols_list vamp/vamp-plugin.list
LADSPA_LDFLAGS := -dynamiclib -install_name ladspa-rubberband.dylib -exported_symbols_list ladspa/ladspa-plugin.list
PROGRAM_TARGET := bin/rubberband
STATIC_TARGET := lib/$(LIBNAME).a STATIC_TARGET := lib/$(LIBNAME).a
DYNAMIC_TARGET := lib/$(LIBNAME)$(DYNAMIC_EXTENSION)
VAMP_TARGET := lib/vamp-rubberband$(DYNAMIC_EXTENSION)
LADSPA_TARGET := lib/ladspa-rubberband$(DYNAMIC_EXTENSION)
default: bin lib $(STATIC_TARGET) $(DYNAMIC_TARGET) $(PROGRAM_TARGET) default: $(STATIC_TARGET)
all: bin lib $(STATIC_TARGET) $(DYNAMIC_TARGET) $(PROGRAM_TARGET) $(VAMP_TARGET) $(LADSPA_TARGET) all: $(STATIC_TARGET)
static: lib $(STATIC_TARGET) static: $(STATIC_TARGET)
dynamic: lib $(DYNAMIC_TARGET)
library: static dynamic
program: bin $(PROGRAM_TARGET)
vamp: lib $(VAMP_TARGET)
ladspa: lib $(LADSPA_TARGET)
PUBLIC_INCLUDES := \ PUBLIC_INCLUDES := \
rubberband/rubberband-c.h \ rubberband/rubberband-c.h \
@@ -111,83 +81,24 @@ LIBRARY_INCLUDES := $(LIBRARY_INCLUDES) \
LIBRARY_SOURCES := $(LIBRARY_SOURCES) \ LIBRARY_SOURCES := $(LIBRARY_SOURCES) \
src/speex/resample.c src/speex/resample.c
PROGRAM_SOURCES := \
main/main.cpp
VAMP_HEADERS := \
vamp/RubberBandVampPlugin.h
VAMP_SOURCES := \
vamp/RubberBandVampPlugin.cpp \
vamp/libmain.cpp
LADSPA_HEADERS := \
ladspa/RubberBandPitchShifter.h
LADSPA_SOURCES := \
ladspa/RubberBandPitchShifter.cpp \
ladspa/libmain.cpp
LIBRARY_OBJECTS := $(LIBRARY_SOURCES:.cpp=.o) LIBRARY_OBJECTS := $(LIBRARY_SOURCES:.cpp=.o)
LIBRARY_OBJECTS := $(LIBRARY_OBJECTS:.c=.o) LIBRARY_OBJECTS := $(LIBRARY_OBJECTS:.c=.o)
PROGRAM_OBJECTS := $(PROGRAM_SOURCES:.cpp=.o)
VAMP_OBJECTS := $(VAMP_SOURCES:.cpp=.o)
LADSPA_OBJECTS := $(LADSPA_SOURCES:.cpp=.o)
$(PROGRAM_TARGET): $(LIBRARY_OBJECTS) $(PROGRAM_OBJECTS)
$(CXX) -o $@ $^ $(PROGRAM_LIBS) $(LDFLAGS)
$(STATIC_TARGET): $(LIBRARY_OBJECTS) $(STATIC_TARGET): $(LIBRARY_OBJECTS)
rm -f $@ rm -f $@
$(AR) rsc $@ $^ $(AR) rsc $@ $^
$(DYNAMIC_TARGET): $(LIBRARY_OBJECTS)
$(CXX) $(DYNAMIC_LDFLAGS) $^ -o $@ $(LIBRARY_LIBS) $(LDFLAGS)
$(VAMP_TARGET): $(LIBRARY_OBJECTS) $(VAMP_OBJECTS)
$(CXX) $(VAMP_LDFLAGS) -o $@ $^ $(VAMP_PLUGIN_LIBS) $(LDFLAGS)
$(LADSPA_TARGET): $(LIBRARY_OBJECTS) $(LADSPA_OBJECTS)
$(CXX) $(LADSPA_LDFLAGS) -o $@ $^ $(LADSPA_PLUGIN_LIBS) $(LDFLAGS)
bin:
$(MKDIR) $@
lib: lib:
$(MKDIR) $@ $(MKDIR) $@
install: default
$(MKDIR) -p $(DESTDIR)$(INSTALL_BINDIR)
$(MKDIR) -p $(DESTDIR)$(INSTALL_INCDIR)
$(MKDIR) -p $(DESTDIR)$(INSTALL_LIBDIR)
$(MKDIR) -p $(DESTDIR)$(INSTALL_VAMPDIR)
$(MKDIR) -p $(DESTDIR)$(INSTALL_LADSPADIR)
$(MKDIR) -p $(DESTDIR)$(INSTALL_LRDFDIR)
$(MKDIR) -p $(DESTDIR)$(INSTALL_PKGDIR)
cp $(PROGRAM_TARGET) $(DESTDIR)$(INSTALL_BINDIR)
cp $(PUBLIC_INCLUDES) $(DESTDIR)$(INSTALL_INCDIR)
cp $(STATIC_TARGET) $(DESTDIR)$(INSTALL_LIBDIR)
rm -f $(DESTDIR)$(INSTALL_LIBDIR)/$(LIBNAME).$(DYNAMIC_ABI_VERSION)$(DYNAMIC_EXTENSION)
rm -f $(DESTDIR)$(INSTALL_LIBDIR)/$(LIBNAME)$(DYNAMIC_EXTENSION)
cp $(DYNAMIC_TARGET) $(DESTDIR)$(INSTALL_LIBDIR)/$(LIBNAME).$(DYNAMIC_FULL_VERSION)$(DYNAMIC_EXTENSION)
ln -s $(LIBNAME).$(DYNAMIC_FULL_VERSION)$(DYNAMIC_EXTENSION) $(DESTDIR)$(INSTALL_LIBDIR)/$(LIBNAME).$(DYNAMIC_ABI_VERSION)$(DYNAMIC_EXTENSION)
ln -s $(LIBNAME).$(DYNAMIC_FULL_VERSION)$(DYNAMIC_EXTENSION) $(DESTDIR)$(INSTALL_LIBDIR)/$(LIBNAME)$(DYNAMIC_EXTENSION)
cp $(VAMP_TARGET) $(DESTDIR)$(INSTALL_VAMPDIR)
cp vamp/vamp-rubberband.cat $(DESTDIR)$(INSTALL_VAMPDIR)
cp $(LADSPA_TARGET) $(DESTDIR)$(INSTALL_LADSPADIR)
cp ladspa/ladspa-rubberband.cat $(DESTDIR)$(INSTALL_LADSPADIR)
cp ladspa/ladspa-rubberband.rdf $(DESTDIR)$(INSTALL_LRDFDIR)
sed "s,%PREFIX%,$(PREFIX)," rubberband.pc.in \
> $(DESTDIR)$(INSTALL_PKGDIR)/rubberband.pc
clean: clean:
rm -f $(LIBRARY_OBJECTS) $(PROGRAM_OBJECTS) $(LADSPA_OBJECTS) $(VAMP_OBJECTS) rm -f $(LIBRARY_OBJECTS)
distclean: clean distclean: clean
rm -f $(PROGRAM_TARGET) $(STATIC_TARGET) $(DYNAMIC_TARGET) $(VAMP_TARGET) $(LADSPA_TARGET) rm -f $(STATIC_TARGET)
depend: depend:
makedepend -f Makefile.osx -Y $(LIBRARY_SOURCES) $(PROGRAM_SOURCES) makedepend -f otherbuilds/Makefile.macos-universal -Y $(LIBRARY_SOURCES) $(PROGRAM_SOURCES)
# DO NOT DELETE # DO NOT DELETE

5635
otherbuilds/configure vendored

File diff suppressed because it is too large Load Diff

View File

@@ -1,80 +0,0 @@
AC_INIT([RubberBand],[1.9.0],[chris.cannam@breakfastquay.com])
AC_ARG_ENABLE(programs,
[ --disable-programs disable compilation of programs],
[case "${enableval}" in
yes | no ) WITH_PROGRAMS="${enableval}" ;;
*) AC_MSG_ERROR(bad value ${enableval} for --disable-programs) ;;
esac],
[WITH_PROGRAMS="yes"]
)
AC_SUBST(WITH_PROGRAMS)
AC_ARG_ENABLE(vamp,
[ --disable-vamp disable compilation of Vamp plugin],
[case "${enableval}" in
yes | no ) WITH_VAMP="${enableval}" ;;
*) AC_MSG_ERROR(bad value ${enableval} for --disable-vamp) ;;
esac],
[WITH_VAMP="yes"]
)
AC_SUBST(WITH_VAMP)
AC_ARG_ENABLE(ladspa,
[ --disable-ladspa disable compilation of LADSPA plugin],
[case "${enableval}" in
yes | no ) WITH_LADSPA="${enableval}" ;;
*) AC_MSG_ERROR(bad value ${enableval} for --disable-ladspa) ;;
esac],
[WITH_LADSPA="yes"]
)
AC_SUBST(WITH_LADSPA)
AC_CONFIG_SRCDIR(src/StretcherImpl.h)
AC_PROG_CXX
AC_PROG_CC
PKG_CHECK_MODULES([SRC],[samplerate])
AC_SUBST(SRC_CFLAGS)
AC_SUBST(SRC_LIBS)
if test "x$WITH_PROGRAMS" = "xyes"; then
PKG_CHECK_MODULES([SNDFILE],[sndfile])
fi
AC_SUBST(SNDFILE_CFLAGS)
AC_SUBST(SNDFILE_LIBS)
PKG_CHECK_MODULES([FFTW],[fftw3])
AC_SUBST(FFTW_CFLAGS)
AC_SUBST(FFTW_LIBS)
if test "x$WITH_LADSPA" = "xyes"; then
AC_CHECK_HEADERS(ladspa.h, [], [AC_MSG_ERROR([LADSPA header not found
Consider installing the LADSPA SDK or configure with --disable-ladspa])])
fi
AC_CHECK_HEADERS(pthread.h)
if test "x$WITH_VAMP" = "xyes"; then
PKG_CHECK_MODULES([Vamp],[vamp-sdk])
fi
AC_SUBST(Vamp_CFLAGS)
AC_SUBST(Vamp_LIBS)
changequote(,)dnl
if test "x$GCC" = "xyes"; then
case " $CFLAGS " in
*[\ \ ]-fPIC\ -Wall[\ \ ]*) ;;
*) CFLAGS="$CFLAGS -fPIC -Wall" ;;
esac
case " $CXXFLAGS " in
*[\ \ ]-fPIC\ -Wall[\ \ ]*) ;;
*) CXXFLAGS="$CXXFLAGS -fPIC -Wall" ;;
esac
fi
changequote([,])dnl
AC_CONFIG_FILES([Makefile])
AC_OUTPUT