[gupnp-dlna] Upgrade build system to build all the new code



commit 904d459d9ecad1b3fc0f7a27b0cc56cdc3878c7a
Author: Krzesimir Nowak <krnowak openismus com>
Date:   Thu Nov 15 15:37:27 2012 +0100

    Upgrade build system to build all the new code
    
    Also, bumped API version to 2.0.

 .gitignore                       |   53 ++++++++++-
 Makefile.am                      |    4 +-
 common.am                        |    1 +
 configure.ac                     |  134 +++++++++++++++++++++-----
 data/Makefile.am                 |    2 +-
 doc/Makefile.am                  |   84 +----------------
 gupnp-dlna-1.1-uninstalled.pc.in |   11 --
 gupnp-dlna-2.0.pc.in             |   12 +++
 gupnp-dlna-metadata-2.0.pc.in    |   12 +++
 libgupnp-dlna/Makefile.am        |  195 ++++++++++++++++++++++++++++----------
 tests/Makefile.am                |   28 +++---
 tools/Makefile.am                |   27 ++++--
 12 files changed, 374 insertions(+), 189 deletions(-)
---
diff --git a/.gitignore b/.gitignore
index 070d433..69878c2 100644
--- a/.gitignore
+++ b/.gitignore
@@ -8,6 +8,53 @@
 *.o
 *.service
 *.stamp
+.dirstamp
+/build-aux
+INSTALL
+doc/version.xml
+doc/gupnp-dlna/gupnp-dlna-decl-list.txt
+doc/gupnp-dlna/gupnp-dlna-decl.txt
+doc/gupnp-dlna/gupnp-dlna-overrides.txt
+doc/gupnp-dlna/gupnp-dlna-sections.txt
+doc/gupnp-dlna/gupnp-dlna-undeclared.txt
+doc/gupnp-dlna/gupnp-dlna-undocumented.txt
+doc/gupnp-dlna/gupnp-dlna-unused.txt
+doc/gupnp-dlna/gupnp-dlna.args
+doc/gupnp-dlna/gupnp-dlna.hierarchy
+doc/gupnp-dlna/gupnp-dlna.interfaces
+doc/gupnp-dlna/gupnp-dlna.prerequisites
+doc/gupnp-dlna/gupnp-dlna.signals
+doc/gupnp-dlna/gupnp-dlna.types
+doc/gupnp-dlna/html/
+doc/gupnp-dlna/xml/
+doc/gupnp-dlna-metadata/gupnp-dlna-metadata-decl-list.txt
+doc/gupnp-dlna-metadata/gupnp-dlna-metadata-decl.txt
+doc/gupnp-dlna-metadata/gupnp-dlna-metadata-overrides.txt
+doc/gupnp-dlna-metadata/gupnp-dlna-metadata-sections.txt
+doc/gupnp-dlna-metadata/gupnp-dlna-metadata-undeclared.txt
+doc/gupnp-dlna-metadata/gupnp-dlna-metadata-undocumented.txt
+doc/gupnp-dlna-metadata/gupnp-dlna-metadata-unused.txt
+doc/gupnp-dlna-metadata/gupnp-dlna-metadata.args
+doc/gupnp-dlna-metadata/gupnp-dlna-metadata.hierarchy
+doc/gupnp-dlna-metadata/gupnp-dlna-metadata.interfaces
+doc/gupnp-dlna-metadata/gupnp-dlna-metadata.prerequisites
+doc/gupnp-dlna-metadata/gupnp-dlna-metadata.signals
+doc/gupnp-dlna-metadata/gupnp-dlna-metadata.types
+doc/gupnp-dlna-metadata/html/
+doc/gupnp-dlna-metadata/xml/
+m4/gtk-doc.m4
+m4/libtool.m4
+m4/ltoptions.m4
+m4/ltsugar.m4
+m4/ltversion.m4
+m4/lt~obsolete.m4
+*.gir
+*.typelib
+tests/dlna-encoding
+tools/gupnp-dlna-info-2.0
+tools/gupnp-dlna-ls-profiles-2.0
+tests/test-discoverer.sh
+tests/sets
 aclocal.m4
 autom4te.cache
 config.guess
@@ -19,8 +66,10 @@ config.sub
 configure
 depcomp
 gtk-doc.make
-gupnp-dlna-1.0.pc
-gupnp-dlna-1.0-uninstalled.pc
+gupnp-dlna-2.0.pc
+gupnp-dlna-metadata-2.0.pc
+gupnp-dlna-2.0-uninstalled.pc
+gupnp-dlna-*.tar.xz
 install-sh
 libgupnp-dlna/gupnp-dlna-marshal.c
 libgupnp-dlna/gupnp-dlna-marshal.h
diff --git a/Makefile.am b/Makefile.am
index 9f707f7..cf8a22b 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -2,10 +2,10 @@ ACLOCAL_AMFLAGS = -I m4 ${ACLOCAL_FLAGS}
 
 SUBDIRS = libgupnp-dlna tools tests data doc vala
 
-pkgconfig_DATA = gupnp-dlna-1.1.pc
+pkgconfig_DATA = gupnp-dlna-2.0.pc gupnp-dlna-metadata-2.0.pc
 pkgconfigdir = $(libdir)/pkgconfig
 
-DISTCHECK_CONFIGURE_FLAGS = --enable-gtk-doc
+DISTCHECK_CONFIGURE_FLAGS = --enable-gtk-doc --enable-introspection
 
 # Extra clean files so that maintainer-clean removes *everything*
 MAINTAINERCLEANFILES = aclocal.m4 compile config.guess config.sub configure depcomp install-sh ltmain.sh Makefile.in missing config.h.in
diff --git a/common.am b/common.am
new file mode 100644
index 0000000..bf8751f
--- /dev/null
+++ b/common.am
@@ -0,0 +1 @@
+shareddir = $(datadir)/gupnp-dlna-2.0
diff --git a/configure.ac b/configure.ac
index 785a6d6..74fd7b5 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1,6 +1,6 @@
 AC_PREREQ([2.63])
-AC_INIT([gupnp-dlna],
-        [0.7.0],
+AC_INIT([gupnp-dlna-2.0],
+        [2.0.0],
         [https://bugzilla.gnome.org/enter_bug.cgi?product=gupnp&component=gupnp-dlna],
         [gupnp-dlna],
         [http://www.gupnp.org/])
@@ -37,29 +37,104 @@ AC_HEADER_STDC
 LT_PREREQ([2.2])
 LT_INIT([win32-dll])
 
-PKG_CHECK_MODULES(LIBXML, libxml-2.0 >= 2.5.0)
+PKG_CHECK_MODULES([LIBXML], [libxml-2.0 >= 2.5.0])
 
-GST_MAJORMINOR=1.0
-GST_REQ=1.0.0
-GSTPBU_REQ=1.0.0
+AM_PROG_CC_C_O
 
-PKG_CHECK_MODULES(GST, gstreamer-$GST_MAJORMINOR >= $GST_REQ)
-PKG_CHECK_MODULES(GST_PBU, gstreamer-pbutils-$GST_MAJORMINOR >= $GSTPBU_REQ)
-AC_SUBST(GST_MAJORMINOR)
+AC_ARG_WITH([default-metadata-backend],
+            [AS_HELP_STRING([--with-default-metadata-backend=your_backend],
+                            [set a default metadata backend @<:@default=gstreamer@:>@])])
 
-GST_CFLAGS="$GST_CFLAGS -DGST_USE_UNSTABLE_API"
-AC_SUBST(GST_CFLAGS)
+if test "x$with_default_metadata_backend" = 'x'
+then
+        with_default_metadata_backend='gstreamer'
+fi
+
+if test "x$with_default_metadata_backend" = 'xyes' || test "x$with_default_metadata_backend" = 'xno'
+then
+        AC_MSG_WARN([Dubious default metadata backend name: $with_default_metadata_backend])
+fi
+
+GUPNP_DLNA_METADATA_BACKEND_CFLAGS="$GUPNP_DLNA_METADATA_BACKEND_CFLAGS -DGUPNP_DLNA_DEFAULT_METADATA_BACKEND=\\\"$with_default_metadata_backend\\\""
+
+AC_ARG_ENABLE([gstreamer-metadata-backend],
+              [AS_HELP_STRING([--enable-gstreamer-metadata-backend],
+                              [build a GStreamer metadata backend @<:@default=auto@:>@])],
+                              ,
+                              [enable_gstreamer_metadata_backend=auto])
+
+if test "x$enable_gstreamer_metadata_backend" != 'xno'
+then
+        gstreamer_found='yes'
+        GST_MAJORMINOR=0.10
+        GST_REQ=0.10.29.2
+        GSTPBU_REQ=0.10.32
+
+        PKG_CHECK_MODULES([GST],
+                          [gstreamer-$GST_MAJORMINOR >= $GST_REQ],
+                          ,
+                          [gstreamer_found='no'])
+        PKG_CHECK_MODULES([GST_PBU],
+                          [gstreamer-pbutils-$GST_MAJORMINOR >= $GSTPBU_REQ],
+                          ,
+                          [gstreamer_found='no'])
+
+        if test "x$gstreamer_found" = 'xyes'
+        then
+                AC_SUBST(GST_MAJORMINOR)
+
+                GST_CFLAGS="$GST_CFLAGS -DGST_USE_UNSTABLE_API"
+                AC_SUBST(GST_CFLAGS)
+                enable_gstreamer_metadata_backend='yes'
+        elif test "x$enable_gstreamer_metadata_backend" = 'xyes'
+        then
+                AC_MSG_ERROR([GStreamer $GST_MAJORMINOR not found.])
+        fi
+fi
+
+if test "x$enable_gstreamer_metadata_backend" = 'xyes'
+then
+        AM_CONDITIONAL(GSTREAMER_METADATA_BACKEND_ENABLED, true)
+else
+        AM_CONDITIONAL(GSTREAMER_METADATA_BACKEND_ENABLED, false)
+fi
+
+AC_ARG_WITH([default-metadata-backend-dir],
+            [AS_HELP_STRING([--with-default-metadata-backend-dir=your_directory],
+                            [set a default metadata backend directory @<:@default=$libdir/$PACKAGE_NAME@:>@])])
+
+if test "x$with_default_metadata_backend_dir" = 'x'
+then
+        with_default_metadata_backend_dir="$libdir/$PACKAGE_NAME"
+fi
+
+if test "x$with_default_metadata_backend_dir" = 'xyes' || test "x$with_default_metadata_backend_dir" = 'xno'
+then
+        AC_MSG_WARN([Dubious default metadata backend directory: $with_default_metadata_backend_dir])
+fi
+
+AC_SUBST(METADATA_DIRECTORY, $with_default_metadata_backend_dir)
+
+GUPNP_DLNA_METADATA_BACKEND_CFLAGS="$GUPNP_DLNA_METADATA_BACKEND_CFLAGS -DGUPNP_DLNA_DEFAULT_METADATA_BACKEND_DIR=\\\"$with_default_metadata_backend_dir\\\""
 
-PKG_CHECK_MODULES(GLIB, glib-2.0 >= 2.24)
+AC_SUBST(GUPNP_DLNA_METADATA_BACKEND_CFLAGS)
 
-# glib-genmarshal
-GLIB_GENMARSHAL=`pkg-config --variable=glib_genmarshal glib-2.0`
-AC_SUBST(GLIB_GENMARSHAL)
+PKG_CHECK_MODULES([GLIB], [glib-2.0 >= 2.34])
+PKG_CHECK_MODULES([GOBJECT], [gobject-2.0])
+PKG_CHECK_MODULES([GMODULE], [gmodule-2.0])
+
+AC_SUBST(GLIB_CFLAGS)
+AC_SUBST(GLIB_LIBS)
+AC_SUBST(GOBJECT_CFLAGS)
+AC_SUBST(GOBJECT_LIBS)
+AC_SUBST(GMODULE_CFLAGS)
+AC_SUBST(GMODULE_LIBS)
 
 # Debugging
-AC_ARG_ENABLE(debug,
-	[  --enable-debug          enable debugging],,
-        enable_debug=no)
+AC_ARG_ENABLE([debug],
+              AS_HELP_STRING([--enable-debug], [enable debugging @<:@default=no@:>@]),
+              ,
+              [enable_debug=no])
 if test "x$enable_debug" = "xyes"; then
         CFLAGS="$CFLAGS -g -Wall"
 fi
@@ -76,18 +151,31 @@ AS_IF([test "x$found_introspection" = "xyes"],
 AM_CONDITIONAL([HAVE_VAPIGEN], [test "x$VAPIGEN" != "x"])
 
 GTK_DOC_CHECK([1.11],[--flavour no-tmpl])
+# for fixxref
+GLIB_PREFIX="`$PKG_CONFIG --variable=prefix glib-2.0`"
+AC_SUBST(GLIB_PREFIX)
 
 AC_CONFIG_FILES([
 Makefile
 libgupnp-dlna/Makefile
 tools/Makefile
 tests/Makefile
-tests/test-discoverer.sh
+data/Makefile
+gupnp-dlna-2.0.pc
+gupnp-dlna-metadata-2.0.pc
 doc/Makefile
 doc/version.xml
-data/Makefile
-vala/Makefile
-gupnp-dlna-1.1.pc
-gupnp-dlna-1.1-uninstalled.pc
+doc/gupnp-dlna/Makefile
+doc/gupnp-dlna-metadata/Makefile
 ])
+AC_CONFIG_FILES([tests/test-discoverer.sh],
+                [chmod a+x tests/test-discoverer.sh])
 AC_OUTPUT
+
+echo
+echo 'Configuration status:'
+echo
+echo "Default metadata backend:           $with_default_metadata_backend"
+echo "Default metadata backend directory: $with_default_metadata_backend_dir"
+echo "Build GStreamer metadata backend:   $enable_gstreamer_metadata_backend"
+echo
diff --git a/data/Makefile.am b/data/Makefile.am
index 550d094..0043f46 100644
--- a/data/Makefile.am
+++ b/data/Makefile.am
@@ -1,4 +1,4 @@
-shareddir = $(datadir)/gupnp-dlna
+include $(top_srcdir)/common.am
 
 dlnaschemas = dlna-profiles.rng
 dlnaprofiles = mp3.xml \
diff --git a/doc/Makefile.am b/doc/Makefile.am
index 2dbb80f..eb91538 100644
--- a/doc/Makefile.am
+++ b/doc/Makefile.am
@@ -1,83 +1,3 @@
-## Process this file with automake to produce Makefile.in
+SUBDIRS = gupnp-dlna gupnp-dlna-metadata .
 
-# We require automake 1.6 at least.
-AUTOMAKE_OPTIONS = 1.6
-
-# This is a blank Makefile.am for using gtk-doc.
-# Copy this to your project's API docs directory and modify the variables to
-# suit your project. See the GTK+ Makefiles in gtk+/docs/reference for examples
-# of using the various options.
-
-# The name of the module, e.g. 'glib'.
-DOC_MODULE=gupnp-dlna
-
-# The top-level SGML file. You can change this if you want to.
-DOC_MAIN_SGML_FILE=$(DOC_MODULE)-docs.sgml
-
-# The directory containing the source code. Relative to $(srcdir).
-# gtk-doc will search all .c & .h files beneath here for inline comments
-# documenting the functions and macros.
-# e.g. DOC_SOURCE_DIR=../../../gtk
-DOC_SOURCE_DIR=../libgupnp-dlna
-
-# Extra options to pass to gtkdoc-scangobj. Not normally needed.
-SCANGOBJ_OPTIONS=--type-init-func="gst_init(NULL,NULL)"
-
-# Extra options to supply to gtkdoc-scan.
-# e.g. SCAN_OPTIONS=--deprecated-guards="GTK_DISABLE_DEPRECATED"
-SCAN_OPTIONS=--deprecated-guards="GUPNP_DISABLE_DEPRECATED"
-
-# Extra options to supply to gtkdoc-mkdb.
-# e.g. MKDB_OPTIONS=--sgml-mode --output-format=xml
-MKDB_OPTIONS=--sgml-mode --output-format=xml
-
-# Extra options to supply to gtkdoc-mktmpl
-# e.g. MKTMPL_OPTIONS=--only-section-tmpl
-MKTMPL_OPTIONS=
-
-# Extra options to supply to gtkdoc-fixref. Not normally needed.
-# e.g. FIXXREF_OPTIONS=--extra-dir=../gdk-pixbuf/html --extra-dir=../gdk/html
-FIXXREF_OPTIONS=
-
-# Used for dependencies. The docs will be rebuilt if any of these change.
-# e.g. HFILE_GLOB=$(top_srcdir)/gtk/*.h
-# e.g. CFILE_GLOB=$(top_srcdir)/gtk/*.c
-HFILE_GLOB=$(top_srcdir)/libgupnp-dlna/*.h
-CFILE_GLOB=$(top_srcdir)/libgupnp-dlna/*.c
-
-# Header files to ignore when scanning.
-# e.g. IGNORE_HFILES=gtkdebug.h gtkintl.h
-IGNORE_HFILES= xml-util.h		\
-	       gvalue-util.h		\
-	       profile-loading.h	\
-	       gupnp-dlna-marshal.h
-
-# Images to copy into HTML directory.
-# e.g. HTML_IMAGES=$(top_srcdir)/gtk/stock-icons/stock_about_24.png
-HTML_IMAGES=
-
-# Extra SGML files that are included by $(DOC_MAIN_SGML_FILE).
-# e.g. content_files=running.sgml building.sgml changes-2.0.sgml
-content_files=version.xml
-
-# SGML files where gtk-doc abbrevations (#GtkWidget) are expanded
-# These files must be listed here *and* in content_files
-# e.g. expand_content_files=running.sgml
-expand_content_files=
-
-# CFLAGS and LDFLAGS for compiling gtkdoc-scangobj with your library.
-# Only needed if you are using gtkdoc-scangobj to dynamically query widget
-# signals and properties.
-# e.g. INCLUDES=-I$(top_srcdir) -I$(top_builddir) $(GTK_DEBUG_FLAGS)
-# e.g. GTKDOC_LIBS=$(top_builddir)/gtk/$(gtktargetlib)
-INCLUDES=-I$(top_srcdir) \
-	 $(GST_CFLAGS)
-GTKDOC_LIBS=$(top_builddir)/libgupnp-dlna/libgupnp-dlna-1.1.la \
-	    $(GST_LIBS)
-
-# This includes the standard gtk-doc make rules, copied by gtkdocize.
-include $(top_srcdir)/gtk-doc.make
-
-# Other files to distribute
-# e.g. EXTRA_DIST += version.xml.in
-EXTRA_DIST += version.xml.in
+EXTRA_DIST = version.xml.in
diff --git a/gupnp-dlna-2.0.pc.in b/gupnp-dlna-2.0.pc.in
new file mode 100644
index 0000000..3744d16
--- /dev/null
+++ b/gupnp-dlna-2.0.pc.in
@@ -0,0 +1,12 @@
+prefix= prefix@
+exec_prefix= exec_prefix@
+libdir= libdir@
+includedir= includedir@
+
+Name: gupnp-dlna-2.0
+Description: GObject-based DLNA specific UPnP library
+Version: @VERSION@
+Libs: -L${libdir} -lgupnp-dlna-2.0
+Cflags: -I${includedir}/gupnp-dlna-2.0
+Requires: glib-2.0 gobject-2.0
+Requires.private: gmodule-2.0
\ No newline at end of file
diff --git a/gupnp-dlna-metadata-2.0.pc.in b/gupnp-dlna-metadata-2.0.pc.in
new file mode 100644
index 0000000..c40f95d
--- /dev/null
+++ b/gupnp-dlna-metadata-2.0.pc.in
@@ -0,0 +1,12 @@
+prefix= prefix@
+exec_prefix= exec_prefix@
+libdir= libdir@
+includedir= includedir@
+plugindir= METADATA_DIRECTORY@
+
+Name: gupnp-dlna-metadata-2.0
+Description: Metadata extractor plugin development files for GUPnP-DLNA
+Version: @VERSION@
+Libs: -L${libdir} -lgupnp-dlna-2.0
+Cflags: -I${includedir}/gupnp-dlna-2.0/metadata
+Requires: glib-2.0 gobject-2.0
diff --git a/libgupnp-dlna/Makefile.am b/libgupnp-dlna/Makefile.am
index 3b22796..1eb6510 100644
--- a/libgupnp-dlna/Makefile.am
+++ b/libgupnp-dlna/Makefile.am
@@ -7,80 +7,177 @@
 # increment age.
 # If any interfaces have been removed since the last public release, then set
 # age to 0.
+AUTOMAKE_OPTIONS=subdir-objects
+
 LTVERSION = $(GUPNP_DLNA_VERSION_INFO)
 
-shareddir = $(datadir)/gupnp-dlna
+include $(top_srcdir)/common.am
+
+noinst_LTLIBRARIES =
+pkglib_LTLIBRARIES =
+lib_LTLIBRARIES =
+dist_noinst_HEADERS =
+
+lib_LTLIBRARIES += libgupnp-dlna-2.0.la
 
-AM_CFLAGS = -I$(top_srcdir) \
-	    $(LIBXML_CFLAGS) \
-	    $(GST_CFLAGS) \
-	    $(GST_PBU_CFLAGS) \
-	    -DDATA_DIR='"$(shareddir)"' \
-	    -DG_LOG_DOMAIN='"gupnp-dlna"'
+general_log_cflags = \
+	-DG_LOG_DOMAIN='"gupnp-dlna"'
 
-lib_LTLIBRARIES = libgupnp-dlna-1.1.la
+loader_log_cflags = \
+	-DG_LOG_DOMAIN='"gupnp-dlna-loader"'
 
-gupnp-dlna-marshal.c: gupnp-dlna-marshal.list
-	$(AM_V_GEN) \
-	$(GLIB_GENMARSHAL) --prefix=gupnp_dlna_marshal $(srcdir)/gupnp-dlna-marshal.list --header --body > gupnp-dlna-marshal.c
+guesser_log_cflags = \
+	-DG_LOG_DOMAIN='"gupnp-dlna-guesser"'
 
-gupnp-dlna-marshal.h: gupnp-dlna-marshal.list
-	$(AM_V_GEN) \
-	$(GLIB_GENMARSHAL) --prefix=gupnp_dlna_marshal $(srcdir)/gupnp-dlna-marshal.list --header > gupnp-dlna-marshal.h
+metadata_log_cflags = \
+	-DG_LOG_DOMAIN='"gupnp-dlna-metadata"'
 
-BUILT_SOURCES = gupnp-dlna-marshal.c gupnp-dlna-marshal.h
+common_cflags = \
+	$(GLIB_CFLAGS) \
+	$(GOBJECT_CFLAGS)
 
-libgupnp_dlna_incdir = $(includedir)/gupnp-dlna-1.1/libgupnp-dlna
+metadata_cflags = \
+	-I$(top_srcdir)/libgupnp-dlna/metadata
 
-libgupnp_dlna_1_1_la_LDFLAGS = -version-info $(LTVERSION) -no-undefined
+common_libadd = \
+	$(GLIB_LIBS) \
+	$(GOBJECT_LIBS)
 
-libgupnp_dlna_inc_HEADERS = gupnp-dlna-profile.h \
-			    gupnp-dlna-information.h \
-			    gupnp-dlna-discoverer.h
+# "Profile backend" might add some stuff to variables below.
+gupnp_ldflags = \
+	-version-info $(LTVERSION) \
+	-no-undefined
 
-noinst_HEADERS = profile-loading.h \
-                 gupnp-dlna-profile-private.h
+gupnp_cflags = \
+	$(common_cflags)
 
-introspection_sources = $(libgupnp_dlna_inc_HEADERS) \
-			gupnp-dlna-information.c \
-			gupnp-dlna-discoverer.c \
-			gupnp-dlna-profile.c \
-			gupnp-dlna-profiles.c \
-			profile-loading.c
+gupnp_libadd = \
+	$(common_libadd)
 
-libgupnp_dlna_1_1_la_SOURCES = $(introspection_sources) \
-			       $(BUILT_SOURCES)
+include $(top_srcdir)/libgupnp-dlna/profile-backends/native/native.am
+include $(top_srcdir)/libgupnp-dlna/metadata/metadata.am
 
-libgupnp_dlna_1_1_la_LIBADD = $(LIBXML_LIBS) \
-			      $(GST_PBU_LIBS)
+metadatadir=$(METADATA_DIRECTORY)
+metadata_LTLIBRARIES =
+
+if GSTREAMER_METADATA_BACKEND_ENABLED
+include $(top_srcdir)/libgupnp-dlna/metadata-backends/gstreamer/gstreamer.am
+endif
 
+noinst_LTLIBRARIES += \
+	libloader.la \
+	libguesser.la \
+	libmetadata.la
+
+libloader_la_SOURCES = \
+	gupnp-dlna-profile-loader.c
+libloader_la_LIBADD = \
+	$(common_libadd) \
+	$(LIBXML_LIBS)
+libloader_la_CFLAGS = \
+	$(loader_log_cflags) \
+	$(metadata_cflags) \
+	$(common_cflags) \
+	$(LIBXML_CFLAGS) \
+	-DDATA_DIR='"$(shareddir)"'
+
+libguesser_la_SOURCES = \
+	gupnp-dlna-profile-guesser.c \
+	gupnp-dlna-profile-guesser-impl.c
+libguesser_la_LIBADD = \
+	$(common_libadd)
+libguesser_la_CFLAGS = \
+	$(guesser_log_cflags) \
+	$(metadata_cflags) \
+	$(common_cflags)
+
+libmetadata_la_SOURCES = \
+	gupnp-dlna-metadata-backend.c \
+	$(metadata_metadata_sources)
+libmetadata_la_LIBADD = \
+	$(common_libadd) \
+	$(GMODULE_LIBS)
+libmetadata_la_CFLAGS = \
+	$(metadata_log_cflags) \
+	$(metadata_cflags) \
+	$(GUPNP_DLNA_METADATA_BACKEND_CFLAGS) \
+	$(common_cflags) \
+	$(GMODULE_CFLAGS)
+
+libgupnp_dlna_2_0_la_LDFLAGS = \
+	$(gupnp_ldflags)
+libgupnp_dlna_2_0_la_SOURCES = \
+	$(metadata_general_sources) \
+	gupnp-dlna-field-value.c \
+	gupnp-dlna-profile-backend.c \
+	gupnp-dlna-profile.c
+libgupnp_dlna_2_0_la_LIBADD = \
+	$(gupnp_libadd) \
+	libloader.la \
+	libguesser.la \
+	libmetadata.la
+libgupnp_dlna_2_0_la_CFLAGS = \
+	$(general_log_cflags) \
+	$(metadata_cflags) \
+	$(gupnp_cflags)
+
+libgupnp_dlna_incdir = \
+	$(includedir)/gupnp-dlna-2.0/libgupnp-dlna
+libgupnp_dlna_inc_HEADERS = \
+	gupnp-dlna-profile-guesser.h \
+	gupnp-dlna-profile.h
+
+libgupnp_dlna_metadata_incdir = \
+	$(libgupnp_dlna_incdir)/metadata
+libgupnp_dlna_metadata_inc_HEADERS = \
+	metadata/gupnp-dlna-audio-information.h \
+	metadata/gupnp-dlna-container-information.h \
+	metadata/gupnp-dlna-image-information.h \
+	metadata/gupnp-dlna-video-information.h \
+	metadata/gupnp-dlna-information.h \
+	metadata/gupnp-dlna-metadata-extractor.h \
+	metadata/gupnp-dlna-values.h
+
+dist_noinst_HEADERS += \
+	gupnp-dlna-field-value.h \
+	gupnp-dlna-metadata-backend.h \
+	gupnp-dlna-profile-backend.h \
+	gupnp-dlna-profile-loader.h \
+	gupnp-dlna-profile-guesser-impl.h
+
+
+# INTROSPECTION
 -include $(INTROSPECTION_MAKEFILE)
 INTROSPECTION_GIRS =
-INTROSPECTION_SCANNER_ARGS = --warn-all				\
-			     --symbol-prefix=gupnp_dlna		\
-			     --identifier-prefix=GUPnPDLNA	\
-			     --add-include-path=$(top_srcdir) \
-			     --add-init-section="gst_init(NULL, NULL);"
+INTROSPECTION_SCANNER_ARGS =
 INTROSPECTION_COMPILER_ARGS = --includedir=$(top_srcdir)
 
 if HAVE_INTROSPECTION
-GUPnPDLNA-1.1.gir: libgupnp-dlna-1.1.la
-GUPnPDLNA_1_1_gir_INCLUDES = libxml2-2.0 GObject-2.0 GstPbutils-1.0
-GUPnPDLNA_1_1_gir_CFLAGS =  $(INCLUDES) $(AM_CFLAGS)
-GUPnPDLNA_1_1_gir_LIBS = libgupnp-dlna-1.1.la gstreamer-1.0
-GUPnPDLNA_1_1_gir_FILES = $(introspection_sources)
-GUPnPDLNA_1_1_gir_NAMESPACE = GUPnPDLNA
-GUPnPDLNA_1_1_gir_VERSION = 1.1
 
-INTROSPECTION_GIRS += GUPnPDLNA-1.1.gir
+girs = GUPnPDLNA-2.0.gir
+
+introspection_sources = \
+	$(libgupnp_dlna_inc_HEADERS) \
+	$(libgupnp_dlna_inc_HEADERS:.h=.c)
+
+GUPnPDLNA-2.0.gir: libgupnp-dlna-2.0.la
+GUPnPDLNA_2_0_gir_FILES = $(introspection_sources)
+GUPnPDLNA_2_0_gir_LIBS = libgupnp-dlna-2.0.la
+GUPnPDLNA_2_0_gir_INCLUDES = GObject-2.0
+GUPnPDLNA_2_0_gir_SCANNERFLAGS = \
+	--warn-all \
+	--symbol-prefix=gupnp_dlna \
+	--identifier-prefix=GUPnPDLNA \
+	--add-include-path=$(top_srcdir)
+
+INTROSPECTION_GIRS += $(girs)
 
 girdir = $(datadir)/gir-1.0
-gir_DATA = GUPnPDLNA-1.1.gir
+gir_DATA = $(girs)
 
 typelibdir = $(libdir)/girepository-1.0/
 typelib_DATA = $(gir_DATA:.gir=.typelib)
-endif
 
-EXTRA_DIST = gupnp-dlna-marshal.list
+CLEANFILES = $(gir_DATA) $(typelib_DATA)
 
-CLEANFILES = $(BUILT_SOURCES) $(gir_DATA) $(typelib_DATA)
+endif
diff --git a/tests/Makefile.am b/tests/Makefile.am
index 31fb782..81668f3 100644
--- a/tests/Makefile.am
+++ b/tests/Makefile.am
@@ -1,13 +1,17 @@
-noinst_PROGRAMS = dlna-profile-parser dlna-encoding
+noinst_PROGRAMS = sets
 
-AM_CFLAGS = -I$(top_srcdir) $(GST_CFLAGS) $(GST_PBU_CFLAGS) $(LIBXML_CFLAGS)
-LIBS = $(GST_LIBS) \
-       $(LIBXML_LIBS) \
-       $(GST_PBU_LIBS) \
-       $(top_builddir)/libgupnp-dlna/libgupnp-dlna-1.1.la
-
-dlna_profile_parser_SOURCES = dlna-profile-parser.c
-dlna_encoding_SOURCES = dlna-encoding.c
-
-TESTS_ENVIRONMENT = MEDIA_DIR="$(srcdir)/media" FILE_LIST="$(srcdir)/media/media-list.txt" ${SHELL}
-TESTS = test-discoverer.sh
+sets_SOURCES = \
+	sets.c
+sets_LDADD = \
+	$(GLIB_LIBS) \
+	$(GOBJECT_LIBS) \
+	$(LIBXML_LIBS) \
+	$(GMODULE_LIBS) \
+	$(top_builddir)/libgupnp-dlna/libgupnp-dlna-2.0.la
+sets_CFLAGS = \
+	$(GLIB_CFLAGS) \
+	$(GOBJECT_CFLAGS) \
+	$(LIBXML_CFLAGS) \
+	$(GMODULE_CFLAGS) \
+	-I$(top_srcdir)/libgupnp-dlna/profile-backends/native \
+	-I$(top_srcdir)/libgupnp-dlna/profile-backends/native/sets
diff --git a/tools/Makefile.am b/tools/Makefile.am
index 71f91a1..959bee1 100644
--- a/tools/Makefile.am
+++ b/tools/Makefile.am
@@ -1,9 +1,22 @@
-bin_PROGRAMS = gupnp-dlna-info-1.1 gupnp-dlna-ls-profiles-1.1
+bin_PROGRAMS = \
+	gupnp-dlna-info-2.0 \
+	gupnp-dlna-ls-profiles-2.0
 
-AM_CFLAGS = -I$(top_srcdir) $(GST_CFLAGS) $(GST_PBU_CFLAGS)
-gupnp_dlna_info_1_1_SOURCES = gupnp-dlna-info.c
-gupnp_dlna_ls_profiles_1_1_SOURCES = gupnp-dlna-ls-profiles.c
+AM_CFLAGS = \
+	-I$(top_srcdir) \
+	$(GLIB_CFLAGS) \
+	$(GOBJECT_CFLAGS) \
+	$(LIBXML_CFLAGS) \
+	$(GMODULE_CFLAGS)
+LIBS = \
+	$(GLIB_LIBS) \
+	$(GOBJECT_LIBS) \
+	$(LIBXML_LIBS) \
+	$(GMODULE_LIBS) \
+	$(top_builddir)/libgupnp-dlna/libgupnp-dlna-2.0.la
 
-LIBS = $(GST_LIBS) \
-       $(GST_PBU_LIBS) \
-       $(top_builddir)/libgupnp-dlna/libgupnp-dlna-1.1.la
+gupnp_dlna_info_2_0_SOURCES = \
+	gupnp-dlna-info.c
+
+gupnp_dlna_ls_profiles_2_0_SOURCES = \
+	gupnp-dlna-ls-profiles.c



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]