1# variables used for enum/marshal generation
2ORC_SOURCE=gstaudiopack
3include $(top_srcdir)/common/orc.mak
4
5glib_enum_headers= 		\
6	audio.h			\
7	audio-format.h			\
8	audio-channels.h			\
9	audio-channel-mixer.h			\
10	audio-converter.h 	\
11	audio-info.h			\
12	audio-quantize.h			\
13	audio-resampler.h			\
14	gstaudioringbuffer.h			\
15	gstaudiobasesrc.h			\
16	gstaudiocdsrc.h				\
17	gstaudiobasesink.h
18
19glib_enum_define = GST_AUDIO
20glib_gen_prefix = gst_audio
21glib_gen_basename = audio
22glib_gen_decl_banner=GST_AUDIO_API
23glib_gen_decl_include=\#include <gst/audio/audio-prelude.h>
24
25built_sources = audio-enumtypes.c
26built_headers = audio-enumtypes.h
27BUILT_SOURCES += $(built_sources) $(built_headers)
28
29lib_LTLIBRARIES = \
30	libgstaudio-@GST_API_VERSION@.la
31
32CLEANFILES = $(BUILT_SOURCES)
33
34EXTRA_DIST += dbesi0.c
35
36libgstaudio_@GST_API_VERSION@_la_SOURCES = \
37	audio.c \
38	audio-buffer.c \
39	audio-format.c \
40	audio-channels.c \
41	audio-channel-mixer.c \
42	audio-converter.c \
43	audio-info.c \
44	audio-quantize.c \
45	audio-resampler.c \
46	gstaudioaggregator.c \
47	gstaudioringbuffer.c \
48	gstaudioclock.c \
49	gstaudiocdsrc.c \
50	gstaudiodecoder.c \
51	gstaudioencoder.c \
52	gstaudiobasesink.c \
53	gstaudiobasesrc.c \
54	gstaudiofilter.c \
55	gstaudiometa.c \
56	gstaudiosink.c \
57	gstaudiosrc.c \
58	gstaudioutilsprivate.c \
59	streamvolume.c \
60	gstaudioiec61937.c \
61	gstaudiostreamalign.c
62
63nodist_libgstaudio_@GST_API_VERSION@_la_SOURCES = $(BUILT_SOURCES)
64
65libgstaudio_@GST_API_VERSION@includedir = $(includedir)/gstreamer-@GST_API_VERSION@/gst/audio
66libgstaudio_@GST_API_VERSION@include_HEADERS = \
67	audio.h \
68	audio-prelude.h	\
69	audio-format.h \
70	audio-buffer.h \
71	audio-channels.h \
72	audio-channel-mixer.h \
73	audio-converter.h \
74	audio-info.h \
75	audio-quantize.h \
76	audio-resampler.h \
77	gstaudioaggregator.h \
78	gstaudioringbuffer.h \
79	gstaudioclock.h \
80	gstaudiofilter.h \
81	gstaudiocdsrc.h \
82	gstaudiodecoder.h \
83	gstaudioencoder.h \
84	gstaudiobasesink.h \
85	gstaudiobasesrc.h \
86	gstaudiometa.h \
87	gstaudiosink.h \
88	gstaudiosrc.h \
89	streamvolume.h \
90	gstaudioiec61937.h \
91	gstaudiostreamalign.h
92
93nodist_libgstaudio_@GST_API_VERSION@include_HEADERS = \
94	audio-enumtypes.h
95
96noinst_HEADERS = \
97	gstaudioutilsprivate.h 		\
98	audio-resampler-private.h 	\
99	audio-resampler-macros.h 	\
100	audio-resampler-x86.h 		\
101	audio-resampler-x86-sse.h	\
102	audio-resampler-x86-sse2.h	\
103	audio-resampler-x86-sse41.h	\
104	audio-resampler-neon.h
105
106libgstaudio_@GST_API_VERSION@_la_CFLAGS = $(GST_PLUGINS_BASE_CFLAGS) $(GST_BASE_CFLAGS) $(GST_CFLAGS) \
107		$(ORC_CFLAGS) -DBUILDING_GST_AUDIO
108libgstaudio_@GST_API_VERSION@_la_LIBADD = \
109  $(top_builddir)/gst-libs/gst/tag/libgsttag-@GST_API_VERSION@.la \
110  $(GST_BASE_LIBS) $(GST_LIBS) $(LIBM) $(ORC_LIBS)
111libgstaudio_@GST_API_VERSION@_la_LDFLAGS = $(GST_LIB_LDFLAGS) $(GST_ALL_LDFLAGS) $(GST_LT_LDFLAGS)
112
113
114# Arch-specific bits
115
116noinst_LTLIBRARIES =
117
118if HAVE_X86
119# Don't use full GST_LT_LDFLAGS in LDFLAGS because we get things like
120# -version-info that cause a warning on private libs
121
122noinst_LTLIBRARIES += libaudio_resampler_sse.la
123libaudio_resampler_sse_la_SOURCES = audio-resampler-x86-sse.c
124libaudio_resampler_sse_la_CFLAGS = \
125	$(libgstaudio_@GST_API_VERSION@_la_CFLAGS) \
126	$(SSE_CFLAGS)
127libaudio_resampler_sse_la_LDFLAGS = \
128	$(GST_LIB_LDFLAGS) \
129	$(GST_ALL_LDFLAGS)
130libgstaudio_@GST_API_VERSION@_la_LIBADD += libaudio_resampler_sse.la
131
132noinst_LTLIBRARIES += libaudio_resampler_sse2.la
133libaudio_resampler_sse2_la_SOURCES = audio-resampler-x86-sse2.c
134libaudio_resampler_sse2_la_CFLAGS = \
135	$(libgstaudio_@GST_API_VERSION@_la_CFLAGS) \
136	$(SSE2_CFLAGS)
137libaudio_resampler_sse2_la_LDFLAGS = \
138	$(GST_LIB_LDFLAGS) \
139	$(GST_ALL_LDFLAGS)
140libgstaudio_@GST_API_VERSION@_la_LIBADD += libaudio_resampler_sse2.la
141
142noinst_LTLIBRARIES += libaudio_resampler_sse41.la
143libaudio_resampler_sse41_la_SOURCES = audio-resampler-x86-sse41.c
144libaudio_resampler_sse41_la_CFLAGS = \
145	$(libgstaudio_@GST_API_VERSION@_la_CFLAGS) \
146	$(SSE41_CFLAGS)
147libaudio_resampler_sse41_la_LDFLAGS = \
148	$(GST_LIB_LDFLAGS) \
149	$(GST_ALL_LDFLAGS)
150libgstaudio_@GST_API_VERSION@_la_LIBADD += libaudio_resampler_sse41.la
151
152endif
153
154
155# Introspection
156
157include $(top_srcdir)/common/gst-glib-gen.mak
158
159if HAVE_INTROSPECTION
160BUILT_GIRSOURCES = GstAudio-@GST_API_VERSION@.gir
161
162gir_headers=$(patsubst %,$(srcdir)/%, $(libgstaudio_@GST_API_VERSION@include_HEADERS))
163gir_headers+=$(patsubst %,$(builddir)/%, $(built_headers))
164gir_sources=$(patsubst %,$(srcdir)/%, $(libgstaudio_@GST_API_VERSION@_la_SOURCES))
165gir_sources+=$(patsubst %,$(builddir)/%, $(built_sources))
166
167GstAudio-@GST_API_VERSION@.gir: $(INTROSPECTION_SCANNER) libgstaudio-@GST_API_VERSION@.la
168	$(AM_V_GEN)PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" GI_SCANNER_DISABLE_CACHE=yes\
169		GST_PLUGIN_SYSTEM_PATH_1_0="" GST_PLUGIN_PATH_1_0="" GST_REGISTRY_DISABLE=yes \
170		CPPFLAGS="$(CPPFLAGS)" CFLAGS="$(CFLAGS)" LDFLAGS="$(LDFLAGS)" CC="$(CC)" PKG_CONFIG="$(PKG_CONFIG)" DLLTOOL="$(DLLTOOL)" \
171		$(INTROSPECTION_SCANNER) -v --namespace GstAudio \
172		--nsversion=@GST_API_VERSION@ \
173		--warn-all \
174		--identifier-prefix=Gst \
175		--symbol-prefix=gst \
176		-I$(top_srcdir)/gst-libs \
177		-I$(top_builddir)/gst-libs \
178		--c-include "gst/audio/audio.h" \
179		--add-include-path=`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-@GST_API_VERSION@` \
180		--add-include-path=`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-base-@GST_API_VERSION@` \
181		--add-include-path="$(top_builddir)/gst-libs/gst/tag/" \
182		--library=libgstaudio-@GST_API_VERSION@.la \
183		--library-path=`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=libdir gstreamer-@GST_API_VERSION@` \
184		--library-path=`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=libdir gstreamer-base-@GST_API_VERSION@` \
185		--library-path="$(top_builddir)/gst-libs/gst/tag/" \
186		--include=Gst-@GST_API_VERSION@ \
187		--include=GstBase-@GST_API_VERSION@ \
188		--include=GstTag-@GST_API_VERSION@ \
189		--libtool="${LIBTOOL}" \
190		--pkg gstreamer-@GST_API_VERSION@ \
191		--pkg gstreamer-base-@GST_API_VERSION@ \
192		--pkg-export gstreamer-audio-@GST_API_VERSION@ \
193		--add-init-section="$(INTROSPECTION_INIT)" \
194		--output $@ \
195		$(gir_headers) \
196		$(gir_sources)
197
198# INTROSPECTION_GIRDIR/INTROSPECTION_TYPELIBDIR aren't the right place to
199# install anything - we need to install inside our prefix.
200girdir = $(datadir)/gir-1.0
201gir_DATA = $(BUILT_GIRSOURCES)
202
203typelibsdir = $(libdir)/girepository-1.0/
204
205typelibs_DATA = $(BUILT_GIRSOURCES:.gir=.typelib)
206
207%.typelib: %.gir $(INTROSPECTION_COMPILER)
208	$(AM_V_GEN)PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" \
209		$(INTROSPECTION_COMPILER) \
210		--includedir=$(srcdir) \
211		--includedir=$(builddir) \
212		--includedir="$(top_builddir)/gst-libs/gst/tag/" \
213		--includedir=`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-base-@GST_API_VERSION@` \
214		--includedir=`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-@GST_API_VERSION@` \
215		$(INTROSPECTION_COMPILER_OPTS) $< -o $(@F)
216
217CLEANFILES += $(BUILT_GIRSOURCES) $(typelibs_DATA)
218endif
219