cannam@95: cannam@95: LOCAL_MODULE := rubberband cannam@95: LOCAL_MODULE_FILENAME := librubberband cannam@95: cannam@95: LOCAL_C_INCLUDES := $(LOCAL_PATH)/rubberband $(LOCAL_PATH)/rubberband/src cannam@95: cannam@95: RUBBERBAND_PATH := rubberband cannam@95: RUBBERBAND_SRC_PATH := $(RUBBERBAND_PATH)/src cannam@95: cannam@95: RUBBERBAND_JNI_FILES := \ cannam@95: $(RUBBERBAND_SRC_PATH)/jni/RubberBandStretcherJNI.cpp cannam@95: cannam@95: RUBBERBAND_SRC_FILES := \ cannam@95: $(RUBBERBAND_SRC_PATH)/base/Profiler.cpp \ cannam@95: $(RUBBERBAND_SRC_PATH)/system/Thread.cpp \ cannam@95: $(RUBBERBAND_SRC_PATH)/system/Allocators.cpp \ cannam@95: $(RUBBERBAND_SRC_PATH)/system/sysutils.cpp \ cannam@95: $(RUBBERBAND_SRC_PATH)/system/VectorOpsComplex.cpp \ cannam@95: $(RUBBERBAND_SRC_PATH)/StretcherChannelData.cpp \ cannam@95: $(RUBBERBAND_SRC_PATH)/dsp/AudioCurveCalculator.cpp \ cannam@95: $(RUBBERBAND_SRC_PATH)/dsp/FFT.cpp \ cannam@95: $(RUBBERBAND_SRC_PATH)/dsp/Resampler.cpp \ cannam@95: $(RUBBERBAND_SRC_PATH)/audiocurves/SilentAudioCurve.cpp \ cannam@95: $(RUBBERBAND_SRC_PATH)/audiocurves/CompoundAudioCurve.cpp \ cannam@95: $(RUBBERBAND_SRC_PATH)/audiocurves/HighFrequencyAudioCurve.cpp \ cannam@95: $(RUBBERBAND_SRC_PATH)/audiocurves/SpectralDifferenceAudioCurve.cpp \ cannam@95: $(RUBBERBAND_SRC_PATH)/audiocurves/ConstantAudioCurve.cpp \ cannam@95: $(RUBBERBAND_SRC_PATH)/audiocurves/PercussiveAudioCurve.cpp \ cannam@95: $(RUBBERBAND_SRC_PATH)/StretcherImpl.cpp \ cannam@95: $(RUBBERBAND_SRC_PATH)/StretcherProcess.cpp \ cannam@95: $(RUBBERBAND_SRC_PATH)/StretchCalculator.cpp \ cannam@95: $(RUBBERBAND_SRC_PATH)/RubberBandStretcher.cpp \ cannam@95: $(RUBBERBAND_SRC_PATH)/speex/resample.c cannam@95: cannam@95: LOCAL_SRC_FILES += \ cannam@95: $(RUBBERBAND_JNI_FILES) \ cannam@95: $(RUBBERBAND_SRC_FILES) cannam@95: cannam@95: LOCAL_SRC_FILES += \ cannam@95: $(RUBBERBAND_SRC_PATH)/kissfft/kiss_fft.c \ cannam@95: $(RUBBERBAND_SRC_PATH)/kissfft/kiss_fftr.c cannam@95: cannam@95: LOCAL_CFLAGS_DEBUG := \ cannam@95: -g \ cannam@95: -mfloat-abi=softfp \ cannam@95: -DWANT_TIMING \ cannam@95: -DFFT_MEASUREMENT cannam@95: cannam@95: LOCAL_CFLAGS_RELEASE := \ cannam@95: -O3 \ cannam@95: -mfpu=neon \ cannam@95: -mfloat-abi=softfp \ cannam@95: -ffast-math \ cannam@95: -ftree-vectorize \ cannam@95: -ftree-vect-loop-version \ cannam@95: -freciprocal-math \ cannam@95: -fsingle-precision-constant \ cannam@95: -D__ARM_ARCH_7__ \ cannam@95: -DUSE_POMMIER_MATHFUN \ cannam@95: -DNO_TIMING \ cannam@95: -DNO_TIMING_COMPLETE_NOOP cannam@95: cannam@95: LOCAL_CFLAGS := \ cannam@95: -Wall \ cannam@95: -I$(RUBBERBAND_PATH) \ cannam@95: -I$(RUBBERBAND_SRC_PATH) \ cannam@95: -DUSE_SPEEX \ cannam@95: -DUSE_KISSFFT \ cannam@95: -DPROCESS_SAMPLE_TYPE=float \ cannam@95: -DLACK_POSIX_MEMALIGN \ cannam@95: -DUSE_OWN_ALIGNED_MALLOC \ cannam@95: -DLACK_BAD_ALLOC \ cannam@95: -DLACK_SINCOS \ cannam@95: -DNO_EXCEPTIONS \ cannam@95: -DNO_THREADING \ cannam@95: -DNO_THREAD_CHECKS \ cannam@95: $(LOCAL_CFLAGS_RELEASE) cannam@95: cannam@95: LOCAL_LDLIBS += -llog cannam@95: cannam@95: TARGET_ARCH_ABI := armeabi-v7a cannam@95: LOCAL_ARM_MODE := arm cannam@95: LOCAL_ARM_NEON := true cannam@95: cannam@95: include $(BUILD_SHARED_LIBRARY) cannam@95: