diff --git a/Makefile.in b/Makefile.in index d2eab1b..915e089 100644 --- a/Makefile.in +++ b/Makefile.in @@ -1,6 +1,8 @@ +PREFIX := @prefix@ CXX := @CXX@ -CXXFLAGS := -DHAVE_LIBSAMPLERATE -DHAVE_FFTW3 -DFFTW_DOUBLE_ONLY -DNO_THREAD_CHECKS -DUSE_PTHREADS -DNO_TIMING -DNDEBUG -Irubberband -I. -Isrc @CXXFLAGS@ @SRC_CFLAGS@ @SNDFILE_CFLAGS@ @FFTW_CFLAGS@ @Vamp_CFLAGS@ $(OPTFLAGS) +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) @@ -12,28 +14,29 @@ LADSPA_PLUGIN_LIBS := $(LIBRARY_LIBS) MKDIR := mkdir AR := ar +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 + DYNAMIC_EXTENSION := .so -DYNAMIC_FULL_VERSION := .2.1.0 -DYNAMIC_ABI_VERSION := .2 -DYNAMIC_LIBNAME := librubberband$(DYNAMIC_EXTENSION) -DYNAMIC_LDFLAGS := -shared -Wl,-Bsymbolic -Wl,-soname=$(DYNAMIC_LIBNAME)$(DYNAMIC_ABI_VERSION) +DYNAMIC_FULL_VERSION := 2.1.0 +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/librubberband.a -DYNAMIC_TARGET := lib/$(DYNAMIC_LIBNAME) +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) -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 - all: bin lib $(PROGRAM_TARGET) $(STATIC_TARGET) $(DYNAMIC_TARGET) $(VAMP_TARGET) $(LADSPA_TARGET) static: $(STATIC_TARGET) @@ -148,17 +151,17 @@ install: all cp $(PROGRAM_TARGET) $(DESTDIR)$(INSTALL_BINDIR) cp $(PUBLIC_INCLUDES) $(DESTDIR)$(INSTALL_INCDIR) cp $(STATIC_TARGET) $(DESTDIR)$(INSTALL_LIBDIR) - rm -f $(DESTDIR)$(INSTALL_LIBDIR)/$(DYNAMIC_LIBNAME)$(DYNAMIC_ABI_VERSION) - rm -f $(DESTDIR)$(INSTALL_LIBDIR)/$(DYNAMIC_LIBNAME) - cp $(DYNAMIC_TARGET) $(DESTDIR)$(INSTALL_LIBDIR)/$(DYNAMIC_LIBNAME)$(DYNAMIC_FULL_VERSION) - test -n "$(DYNAMIC_FULL_VERSION)" && ln -s $(DYNAMIC_LIBNAME)$(DYNAMIC_FULL_VERSION) $(DESTDIR)$(INSTALL_LIBDIR)/$(DYNAMIC_LIBNAME)$(DYNAMIC_ABI_VERSION) - test -n "$(DYNAMIC_FULL_VERSION)" && ln -s $(DYNAMIC_LIBNAME)$(DYNAMIC_FULL_VERSION) $(DESTDIR)$(INSTALL_LIBDIR)/$(DYNAMIC_LIBNAME) + rm -f $(DESTDIR)$(INSTALL_LIBDIR)/$(LIBNAME)$(DYNAMIC_EXTENSION).$(DYNAMIC_ABI_VERSION) + rm -f $(DESTDIR)$(INSTALL_LIBDIR)/$(LIBNAME)$(DYNAMIC_EXTENSION) + cp $(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) 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 \ + sed "s,%PREFIX%,$(PREFIX)," rubberband.pc.in \ > $(DESTDIR)$(INSTALL_PKGDIR)/rubberband.pc clean: diff --git a/Makefile.osx b/Makefile.osx index fc25921..6c2dc9c 100644 --- a/Makefile.osx +++ b/Makefile.osx @@ -1,4 +1,5 @@ +PREFIX := /usr/local CXX := g++ CC := gcc ARCHFLAGS := @@ -6,30 +7,41 @@ OPTFLAGS := -DNDEBUG -ffast-math -mfpmath=sse -msse -msse2 -O3 -ftree-vectorize CXXFLAGS := $(ARCHFLAGS) $(OPTFLAGS) -I. -Isrc -Irubberband -I/usr/local/include -DUSE_PTHREADS -DMALLOC_IS_ALIGNED -DHAVE_VDSP -DUSE_SPEEX -DNO_THREAD_CHECKS -DNO_TIMING -LIBRARY_LIBS := -framework Accelerate - CFLAGS := $(ARCHFLAGS) $(OPTFLAGS) LDFLAGS := $(ARCHFLAGS) -lpthread $(LDFLAGS) -PROGRAM_LIBS := -L/usr/local/lib -lsndfile $(LIBRARY_LIBS) -VAMP_PLUGIN_LIBS := -L/usr/local/lib -lvamp-sdk $(LIBRARY_LIBS) +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 -DYNAMIC_LDFLAGS := -dynamiclib +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 + DYNAMIC_EXTENSION := .dylib +DYNAMIC_FULL_VERSION := 2.1.0 +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) PROGRAM_TARGET := bin/rubberband -STATIC_TARGET := lib/librubberband.a -DYNAMIC_TARGET := lib/librubberband$(DYNAMIC_EXTENSION) +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) -all: bin lib $(STATIC_TARGET) $(DYNAMIC_TARGET) $(PROGRAM_TARGET) $(VAMP_TARGET) $(LADSPA_TARGET) +all: bin lib $(STATIC_TARGET) $(DYNAMIC_TARGET) $(PROGRAM_TARGET) $(VAMP_TARGET) $(LADSPA_TARGET) static: $(STATIC_TARGET) dynamic: $(DYNAMIC_TARGET) @@ -121,10 +133,10 @@ VAMP_OBJECTS := $(VAMP_SOURCES:.cpp=.o) LADSPA_OBJECTS := $(LADSPA_SOURCES:.cpp=.o) $(PROGRAM_TARGET): $(LIBRARY_OBJECTS) $(PROGRAM_OBJECTS) - $(CXX) -o $@ $^ $(PROGRAM_LIBS) $(PROGRAM_LIBS) $(LDFLAGS) + $(CXX) -o $@ $^ $(PROGRAM_LIBS) $(LDFLAGS) $(STATIC_TARGET): $(LIBRARY_OBJECTS) - $(AR) rc $@ $^ + $(AR) rsc $@ $^ $(DYNAMIC_TARGET): $(LIBRARY_OBJECTS) $(CXX) $(DYNAMIC_LDFLAGS) $^ -o $@ $(LIBRARY_LIBS) $(LDFLAGS) @@ -140,6 +152,30 @@ bin: lib: $(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: rm -f $(LIBRARY_OBJECTS) $(PROGRAM_OBJECTS) $(LADSPA_OBJECTS) $(VAMP_OBJECTS) diff --git a/configure b/configure index 737a182..029c1fa 100755 --- a/configure +++ b/configure @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.69 for RubberBand 1.7. +# Generated by GNU Autoconf 2.69 for RubberBand 1.8.1. # # Report bugs to . # @@ -580,8 +580,8 @@ MAKEFLAGS= # Identity of this package. PACKAGE_NAME='RubberBand' PACKAGE_TARNAME='rubberband' -PACKAGE_VERSION='1.7' -PACKAGE_STRING='RubberBand 1.7' +PACKAGE_VERSION='1.8.1' +PACKAGE_STRING='RubberBand 1.8.1' PACKAGE_BUGREPORT='chris.cannam@breakfastquay.com' PACKAGE_URL='' @@ -1253,7 +1253,7 @@ if test "$ac_init_help" = "long"; then # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures RubberBand 1.7 to adapt to many kinds of systems. +\`configure' configures RubberBand 1.8.1 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1314,7 +1314,7 @@ fi if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of RubberBand 1.7:";; + short | recursive ) echo "Configuration of RubberBand 1.8.1:";; esac cat <<\_ACEOF @@ -1411,7 +1411,7 @@ fi test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -RubberBand configure 1.7 +RubberBand configure 1.8.1 generated by GNU Autoconf 2.69 Copyright (C) 2012 Free Software Foundation, Inc. @@ -1705,7 +1705,7 @@ cat >config.log <<_ACEOF This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by RubberBand $as_me 1.7, which was +It was created by RubberBand $as_me 1.8.1, which was generated by GNU Autoconf 2.69. Invocation command line was $ $0 $@ @@ -4801,7 +4801,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by RubberBand $as_me 1.7, which was +This file was extended by RubberBand $as_me 1.8.1, which was generated by GNU Autoconf 2.69. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -4854,7 +4854,7 @@ _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ -RubberBand config.status 1.7 +RubberBand config.status 1.8.1 configured by $0, generated by GNU Autoconf 2.69, with options \\"\$ac_cs_config\\" diff --git a/configure.ac b/configure.ac index 1339294..73d7185 100644 --- a/configure.ac +++ b/configure.ac @@ -3,6 +3,7 @@ AC_INIT(RubberBand, 1.8.1, chris.cannam@breakfastquay.com) AC_CONFIG_SRCDIR(src/StretcherImpl.h) AC_PROG_CXX +AC_PROG_CC AC_HEADER_STDC AC_C_BIGENDIAN