gstreamer/gst/Makefile.am

264 lines
6.5 KiB
Makefile
Raw Normal View History

lib_LTLIBRARIES = libgstreamer-@GST_MAJORMINOR@.la
AS_LIBTOOL_LIB = libgstreamer-@GST_MAJORMINOR@
if GST_DISABLE_OMEGA_COTHREADS
noinst_LTLIBRARIES =
else
noinst_LTLIBRARIES = libcothreads.la
endif
#GST_INSTRUMENT_FLAGS = -finstrument-functions -DGST_ENABLE_FUNC_INSTRUMENTATION
if GST_DISABLE_LOADSAVE
GST_LOADSAVE_SRC =
else
GST_LOADSAVE_SRC = gstxml.c
endif
if GST_DISABLE_PARSE
GST_PARSE_SRC =
GST_PARSE_DIRS =
# GST_PARSE_LIBADD =
else
GST_PARSE_SRC = gstparse.c
GST_PARSE_DIRS = parse
GST_PARSE_LIBADD = parse/libgstparse.la
endif
if GST_DISABLE_TRACE
GST_TRACE_SRC =
else
GST_TRACE_SRC = gsttrace.c
endif
if GST_DISABLE_REGISTRY
GST_REGISTRY_SRC =
GST_REGISTRY_DIRS =
# GST_REGISTRY_LIBADD =
else
GST_REGISTRY_SRC = gstregistry.c
GST_REGISTRY_DIRS = registries
GST_REGISTRY_LIBADD = registries/libgstxmlregistry.la
endif
if GST_DISABLE_ENUMTYPES
GST_ENUMTYPES_SRC =
else
GST_ENUMTYPES_SRC = gstenumtypes.c
endif
if GST_DISABLE_INDEX
GST_INDEX_SRC =
GST_INDEX_DIRS =
else
GST_INDEX_SRC = gstindex.c
GST_INDEX_DIRS = indexers
endif
if GST_DISABLE_PLUGIN
GST_PLUGIN_SRC =
else
GST_PLUGIN_SRC = gstplugin.c
endif
if GST_DISABLE_URI
GST_URI_SRC =
else
GST_URI_SRC = gsturi.c
endif
SUBDIRS = $(GST_PARSE_DIRS) $(GST_REGISTRY_DIRS) . autoplug elements schedulers $(GST_INDEX_DIRS)
DIST_SUBDIRS = autoplug elements parse registries schedulers indexers
# make variables for all generated source and header files to make the
# distinction clear
built_header_configure = gstconfig.h gstversion.h
built_header_make = gstenumtypes.h gstmarshal.h
built_source_make = $(GST_ENUMTYPES_SRC) gstmarshal.c
EXTRA_libgstreamer_@GST_MAJORMINOR@_la_SOURCES = \
gstmarshal.list gstxml.c gstparse.c gsttrace.c
libgstreamer_@GST_MAJORMINOR@_la_SOURCES = \
gst.c \
gstobject.c \
gstatomic.c \
gstbin.c \
gstbuffer.c \
gstcaps.c \
gstclock.c \
gstcpu.c \
gstdata.c \
gstelement.c \
gstelementfactory.c \
gsterror.c \
gstevent.c \
gstfilter.c \
gstformat.c \
$(GST_INDEX_SRC) \
gstinfo.c \
gstinterface.c \
gstmemchunk.c \
gstpad.c \
gstchildproxy.c \
gstpipeline.c \
gstplugin.c \
gstpluginfeature.c \
gstprobe.c \
gstqueue.c \
gstquery.c \
gstscheduler.c \
gststructure.c \
gstsystemclock.c \
gsttag.c \
gsttaginterface.c \
gstthread.c \
$(GST_TRACE_SRC) \
gsttrashstack.c \
gsttypefind.c \
$(GST_URI_SRC) \
gsturitype.c \
gstutils.c \
gstvalue.c \
$(GST_REGISTRY_SRC) \
gstregistrypool.c \
$(GST_PARSE_SRC) \
$(GSTARCH_SRCS) \
$(GST_LOADSAVE_SRC)
# do not put files in the distribution that are generated
nodist_libgstreamer_@GST_MAJORMINOR@_la_SOURCES = $(built_source_make)
# BUILT_SOURCES are built on make all/check/install before all other targets
BUILT_SOURCES = \
$(built_header_configure) \
$(built_header_make) \
$(built_source_make)
# CLEANFILES is for files generated by make
CLEANFILES = $(built_header_make) $(built_source_make) $(as_dll_cleanfiles)
# DISTCLEANFILES is for files generated by configure
DISTCLEANFILES = $(built_header_configure)
libgstreamer_@GST_MAJORMINOR@_la_CFLAGS = \
-D_GNU_SOURCE \
$(GST_LIB_CFLAGS) \
-DGST_MAJORMINOR=\""$(GST_MAJORMINOR)"\"
libgstreamer_@GST_MAJORMINOR@_la_LIBADD = \
$(GST_LIB_LIBS) $(GST_PARSE_LIBADD) $(GST_REGISTRY_LIBADD)
libgstreamer_@GST_MAJORMINOR@_la_LDFLAGS = \
@GST_LT_LDFLAGS@ -version-info @GST_LIBVERSION@ \
-export-symbols-regex [_]*\(gst_\|Gst\|GST_\).* \
$(as_libtool_LDFLAGS)
libgstreamer_@GST_MAJORMINOR@includedir = $(includedir)/gstreamer-@GST_MAJORMINOR@/gst
gst_headers = \
gst.h \
gstatomic.h \
gstobject.h \
gstbin.h \
gstbuffer.h \
gstcaps.h \
gstclock.h \
gstcompat.h \
gstcpu.h \
gstdata.h \
gstelement.h \
gsterror.h \
gstevent.h \
gstfilter.h \
gstformat.h \
gstindex.h \
gstinfo.h \
gstinterface.h \
gstmacros.h \
gstmemchunk.h \
gstpad.h \
gstchildproxy.h \
gstpipeline.h \
gstplugin.h \
gstpluginfeature.h \
gstprobe.h \
gstqueue.h \
gstquery.h \
gstscheduler.h \
gststructure.h \
gstsystemclock.h \
gsttag.h \
gsttaginterface.h \
gstthread.h \
gsttrace.h \
gsttrashstack.h \
gsttypefind.h \
gsttypes.h \
gsturi.h \
gsturitype.h \
gstutils.h \
gstvalue.h \
gstregistry.h \
gstregistrypool.h \
gstparse.h \
gstxml.h
libgstreamer_@GST_MAJORMINOR@include_HEADERS = $(gst_headers)
nodist_libgstreamer_@GST_MAJORMINOR@include_HEADERS = \
$(built_header_configure) $(built_header_make)
noinst_HEADERS = \
gettext.h \
gst-i18n-lib.h \
gst-i18n-app.h \
gst_private.h \
gstatomic_impl.h \
gstdata_private.h \
gstarch.h \
cothreads.h
if GST_DISABLE_OMEGA_COTHREADS
#libcothreads_la_SOURCES =
#libcothreads_la_CFLAGS =
else
libcothreads_la_SOURCES = cothreads.c
libcothreads_la_CFLAGS = $(libgstreamer_@GST_MAJORMINOR@_la_CFLAGS)
endif
gstmarshal.h: gstmarshal.list
glib-genmarshal --header --prefix=gst_marshal $(srcdir)/gstmarshal.list > gstmarshal.h.tmp
mv gstmarshal.h.tmp gstmarshal.h
gstmarshal.c: gstmarshal.list gst_private.h
echo "#include \"gst_private.h\"" > gstmarshal.c.tmp
echo "#include \"glib-object.h\"" >> gstmarshal.c.tmp
echo "#include \"gstmarshal.h\"" >> gstmarshal.c.tmp
glib-genmarshal --body --prefix=gst_marshal $(srcdir)/gstmarshal.list >> gstmarshal.c.tmp
mv gstmarshal.c.tmp gstmarshal.c
gstenumtypes.h: $(gst_headers)
glib-mkenums \
--fhead "#ifndef __GST_ENUM_TYPES_H__\n#define __GST_ENUM_TYPES_H__\n\n#include <glib-object.h>\n\nG_BEGIN_DECLS\n" \
--fprod "/* enumerations from \"@filename@\" */\n" \
--vhead "GType @enum_name@_get_type (void);\n#define GST_TYPE_@ENUMSHORT@ (@enum_name@_get_type())\n" \
--ftail "G_END_DECLS\n\n#endif /* __GST_ENUM_TYPES_H__ */" \
$^ > gstenumtypes.h
gstenumtypes.c: $(gst_headers)
glib-mkenums \
--fhead "#include \"gst_private.h\"\n#include <gst/gst.h>" \
--fprod "\n/* enumerations from \"@filename@\" */" \
--vhead "GType\n@enum_name@_get_type (void)\n{\n static GType etype = 0;\n if (etype == 0) {\n static const G@Type@Value values[] = {" \
--vprod " { @VALUENAME@, \"@VALUENAME@\", \"@valuenick@\" }," \
--vtail " { 0, NULL, NULL }\n };\n etype = g_@type@_register_static (\"@EnumName@\", values);\n }\n return etype;\n}\n" \
$^ > gstenumtypes.c
noinst_DATA = $(as_libtool_noinst_DATA_files)
EXTRA_DIST = ROADMAP $(as_libtool_EXTRA_DIST)
install-data-local: as-libtool-install-data-local
uninstall-local: as-libtool-uninstall-local
include $(top_srcdir)/common/as-libtool.mak