gstreamer/gst-libs/gst/fft/Makefile.am

104 lines
3.2 KiB
Makefile
Raw Normal View History

Add libgstfft, a FFT library based on Kiss FFT which is Original commit message from CVS: Reviewed by: Stefan Kost <ensonic@users.sf.net> * configure.ac: * gst-libs/gst/Makefile.am: * gst-libs/gst/fft/Makefile.am: * gst-libs/gst/fft/_kiss_fft_guts_f32.h: * gst-libs/gst/fft/_kiss_fft_guts_f64.h: * gst-libs/gst/fft/_kiss_fft_guts_s16.h: * gst-libs/gst/fft/_kiss_fft_guts_s32.h: * gst-libs/gst/fft/gstfft.c: (gst_fft_next_fast_length): * gst-libs/gst/fft/gstfft.h: * gst-libs/gst/fft/gstfftf32.c: (gst_fft_f32_new), (gst_fft_f32_fft), (gst_fft_f32_inverse_fft), (gst_fft_f32_free), (gst_fft_f32_window), (gst_fft_f32_magnitude), (gst_fft_f32_phase): * gst-libs/gst/fft/gstfftf32.h: * gst-libs/gst/fft/gstfftf64.c: (gst_fft_f64_new), (gst_fft_f64_fft), (gst_fft_f64_inverse_fft), (gst_fft_f64_free), (gst_fft_f64_window), (gst_fft_f64_magnitude), (gst_fft_f64_phase): * gst-libs/gst/fft/gstfftf64.h: * gst-libs/gst/fft/gstffts16.c: (gst_fft_s16_new), (gst_fft_s16_fft), (gst_fft_s16_inverse_fft), (gst_fft_s16_free), (gst_fft_s16_window), (gst_fft_s16_magnitude), (gst_fft_s16_phase): * gst-libs/gst/fft/gstffts16.h: * gst-libs/gst/fft/gstffts32.c: (gst_fft_s32_new), (gst_fft_s32_fft), (gst_fft_s32_inverse_fft), (gst_fft_s32_free), (gst_fft_s32_window), (gst_fft_s32_magnitude), (gst_fft_s32_phase): * gst-libs/gst/fft/gstffts32.h: * gst-libs/gst/fft/kiss_fft_f32.c: (kf_bfly2), (kf_bfly4), (kf_bfly3), (kf_bfly5), (kf_bfly_generic), (kf_work), (kf_factor), (kiss_fft_f32_alloc), (kiss_fft_f32_stride), (kiss_fft_f32), (kiss_fft_f32_cleanup), (kiss_fft_f32_next_fast_size): * gst-libs/gst/fft/kiss_fft_f32.h: * gst-libs/gst/fft/kiss_fft_f64.c: (kf_bfly2), (kf_bfly4), (kf_bfly3), (kf_bfly5), (kf_bfly_generic), (kf_work), (kf_factor), (kiss_fft_f64_alloc), (kiss_fft_f64_stride), (kiss_fft_f64), (kiss_fft_f64_cleanup), (kiss_fft_f64_next_fast_size): * gst-libs/gst/fft/kiss_fft_f64.h: * gst-libs/gst/fft/kiss_fft_s16.c: (kf_bfly2), (kf_bfly4), (kf_bfly3), (kf_bfly5), (kf_bfly_generic), (kf_work), (kf_factor), (kiss_fft_s16_alloc), (kiss_fft_s16_stride), (kiss_fft_s16), (kiss_fft_s16_cleanup), (kiss_fft_s16_next_fast_size): * gst-libs/gst/fft/kiss_fft_s16.h: * gst-libs/gst/fft/kiss_fft_s32.c: (kf_bfly2), (kf_bfly4), (kf_bfly3), (kf_bfly5), (kf_bfly_generic), (kf_work), (kf_factor), (kiss_fft_s32_alloc), (kiss_fft_s32_stride), (kiss_fft_s32), (kiss_fft_s32_cleanup), (kiss_fft_s32_next_fast_size): * gst-libs/gst/fft/kiss_fft_s32.h: * gst-libs/gst/fft/kiss_fftr_f32.c: (kiss_fftr_f32_alloc), (kiss_fftr_f32), (kiss_fftri_f32): * gst-libs/gst/fft/kiss_fftr_f32.h: * gst-libs/gst/fft/kiss_fftr_f64.c: (kiss_fftr_f64_alloc), (kiss_fftr_f64), (kiss_fftri_f64): * gst-libs/gst/fft/kiss_fftr_f64.h: * gst-libs/gst/fft/kiss_fftr_s16.c: (kiss_fftr_s16_alloc), (kiss_fftr_s16), (kiss_fftri_s16): * gst-libs/gst/fft/kiss_fftr_s16.h: * gst-libs/gst/fft/kiss_fftr_s32.c: (kiss_fftr_s32_alloc), (kiss_fftr_s32), (kiss_fftri_s32): * gst-libs/gst/fft/kiss_fftr_s32.h: * gst-libs/gst/fft/kiss_version: * pkgconfig/gstreamer-plugins-base-uninstalled.pc.in: * pkgconfig/gstreamer-plugins-base.pc.in: Add libgstfft, a FFT library based on Kiss FFT which is BSD licensed. Supported sample formats are int16, int32, float and double. For those formats a real FFT and IFFT can be done, different windowing functions can be applied and functions for extracting the magnitude and phase exist. Fixes #468619. * docs/libs/Makefile.am: * docs/libs/gst-plugins-base-libs-docs.sgml: * docs/libs/gst-plugins-base-libs-sections.txt: Integrate libgstfft into the docs. * tests/check/Makefile.am: * tests/check/libs/fft.c: (GST_START_TEST), (fft_suite), (main): Add unit tests for libgstfft, currently only testing the FFT. Unit tests for IFFT will follow soon.
2007-09-06 07:00:36 +00:00
lib_LTLIBRARIES = libgstfft-@GST_MAJORMINOR@.la
libgstfft_@GST_MAJORMINOR@_includedir = $(includedir)/gstreamer-@GST_MAJORMINOR@/gst/fft
libgstfft_@GST_MAJORMINOR@_include_HEADERS = \
gstfft.h \
gstffts16.h \
gstffts32.h \
gstfftf32.h \
gstfftf64.h
noinst_HEADERS = \
kiss_fft_s16.h \
kiss_fft_s32.h \
kiss_fft_f32.h \
kiss_fft_f64.h \
kiss_fftr_s16.h \
kiss_fftr_s32.h \
kiss_fftr_f32.h \
kiss_fftr_f64.h \
_kiss_fft_guts_s16.h \
_kiss_fft_guts_s32.h \
_kiss_fft_guts_f32.h \
_kiss_fft_guts_f64.h
libgstfft_@GST_MAJORMINOR@_la_SOURCES = \
gstfft.c \
gstffts16.c \
gstffts32.c \
gstfftf32.c \
gstfftf64.c \
kiss_fft_s16.c \
kiss_fft_s32.c \
kiss_fft_f32.c \
kiss_fft_f64.c \
kiss_fftr_s16.c \
kiss_fftr_s32.c \
kiss_fftr_f32.c \
kiss_fftr_f64.c
libgstfft_@GST_MAJORMINOR@_la_LIBADD = $(GST_LIBS) $(LIBM)
libgstfft_@GST_MAJORMINOR@_la_CFLAGS = $(GST_CFLAGS)
libgstfft_@GST_MAJORMINOR@_la_LDFLAGS = $(GST_LIB_LDFLAGS) $(GST_ALL_LDFLAGS) $(GST_LT_LDFLAGS)
EXTRA_DIST = kiss_version
2009-09-05 09:04:19 +00:00
if HAVE_INTROSPECTION
BUILT_GIRSOURCES = GstFft-@GST_MAJORMINOR@.gir
gir_headers=$(patsubst %,$(srcdir)/%, $(libgstfft_@GST_MAJORMINOR@_include_HEADERS))
gir_sources=$(patsubst %,$(srcdir)/%, $(libgstfft_@GST_MAJORMINOR@_la_SOURCES))
gir_cincludes=$(patsubst %,--c-include='gst/fft/%',$(libgstfft_@GST_MAJORMINOR@_include_HEADERS))
GstFft-@GST_MAJORMINOR@.gir: $(INTROSPECTION_SCANNER) libgstfft-@GST_MAJORMINOR@.la
$(AM_V_GEN)PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" \
GST_PLUGIN_SYSTEM_PATH="" GST_PLUGIN_PATH="" GST_REGISTRY_UPDATE=no \
$(INTROSPECTION_SCANNER) -v --namespace GstFft \
2009-09-05 09:04:19 +00:00
--nsversion=@GST_MAJORMINOR@ \
--strip-prefix=Gst \
2009-09-05 09:04:19 +00:00
$(gir_cincludes) \
--add-include-path=`$(PKG_CONFIG) --variable=girdir gstreamer-@GST_MAJORMINOR@` \
--library=libgstfft-@GST_MAJORMINOR@.la \
--include=Gst-@GST_MAJORMINOR@ \
2009-09-05 09:04:19 +00:00
--libtool="$(top_builddir)/libtool" \
--pkg gstreamer-@GST_MAJORMINOR@ \
--pkg-export gstreamer-fft-@GST_MAJORMINOR@ \
2009-09-05 09:04:19 +00:00
--output $@ \
$(gir_headers) \
$(gir_sources)
# INTROSPECTION_GIRDIR/INTROSPECTION_TYPELIBDIR aren't the right place to
# install anything - we need to install inside our prefix.
girdir = $(datadir)/gir-1.0
gir_DATA = $(BUILT_GIRSOURCES)
typelibsdir = $(libdir)/girepository-1.0/
typelibs_DATA = $(BUILT_GIRSOURCES:.gir=.typelib)
%.typelib: %.gir $(INTROSPECTION_COMPILER)
$(AM_V_GEN)PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" \
$(INTROSPECTION_COMPILER) \
--includedir=$(srcdir) \
--includedir=$(builddir) \
--includedir=`$(PKG_CONFIG) --variable=girdir gstreamer-@GST_MAJORMINOR@` \
$(INTROSPECTION_COMPILER_OPTS) $< -o $(@F)
2009-09-05 09:04:19 +00:00
CLEANFILES = $(BUILT_GIRSOURCES) $(typelibs_DATA)
endif
Android.mk: Makefile.am
androgenizer -:PROJECT libgstfft -:SHARED libgstfft-@GST_MAJORMINOR@ \
-:TAGS eng debug \
-:REL_TOP $(top_srcdir) -:ABS_TOP $(abs_top_srcdir) \
-:SOURCES $(libgstfft_@GST_MAJORMINOR@_la_SOURCES) \
-:CFLAGS $(DEFS) $(libgstfft_@GST_MAJORMINOR@_la_CFLAGS) \
-:LDFLAGS $(libgstfft_@GST_MAJORMINOR@_la_LDFLAGS) \
$(libgstfft_@GST_MAJORMINOR@_la_LIBADD) \
-ldl \
-:HEADER_TARGET gstreamer-@GST_MAJORMINOR@/gst/fft \
-:HEADERS $(libgstfftinclude_HEADERS) \
-:PASSTHROUGH LOCAL_ARM_MODE:=arm \
> $@