+2005-07-13 Thomas Vander Stichele <thomas at apestaart dot org>
+
+ * configure.ac:
+ make GST_PLUGIN_LDFLAGS only be flags; GST_LIBS should be
+ added manually to each Makefile.am so we are sure it goes
+ *last* and doesn't add -L flags before linking in libs of our
+ own, like, say, internal .la libs, that then accidentally pick
+ up the installed copy.
+ * docs/libs/Makefile.am:
+ * ext/alsa/Makefile.am:
+ * ext/cdparanoia/Makefile.am:
+ * ext/gnomevfs/Makefile.am:
+ * ext/libvisual/Makefile.am:
+ * ext/ogg/Makefile.am:
+ * ext/theora/Makefile.am:
+ * ext/vorbis/Makefile.am:
+ * gst-libs/gst/video/Makefile.am:
+ * gst/adder/Makefile.am:
+ * gst/audioconvert/Makefile.am:
+ * gst/audiorate/Makefile.am:
+ * gst/audioscale/Makefile.am:
+ * gst/ffmpegcolorspace/Makefile.am:
+ * gst/playback/Makefile.am:
+ * gst/sine/Makefile.am:
+ * gst/subparse/Makefile.am:
+ * gst/tags/Makefile.am:
+ * gst/tcp/Makefile.am:
+ * gst/typefind/Makefile.am:
+ * gst/videorate/Makefile.am:
+ * gst/videoscale/Makefile.am:
+ * gst/videotestsrc/Makefile.am:
+ * gst/volume/Makefile.am:
+ * sys/v4l/Makefile.am:
+ * sys/ximage/Makefile.am:
+ * sys/xvimage/Makefile.am:
+ adapt properly to this change. This should make sure that
+ plugins and libs properly link to the as-yet-uninstalled
+ copies of stuff like libgstinterfaces and libgstvideo
+
2005-07-13 Andy Wingo <wingo@pobox.com>
* sys/v4l/gstv4lsrc.c (gst_v4lsrc_stop): Fix a spurious warning.
plugindir="\$(libdir)/gstreamer-$GST_MAJORMINOR"
AC_SUBST(plugindir)
-GST_PLUGIN_LDFLAGS="-module -avoid-version -export-symbols-regex '[_]*(gst_|Gst|GST_).*' $GST_LIBS"
+dnl this really should only contain flags, not libs - they get added before
+dnl whatevertarget_LIBS and -L flags here affect the rest of the linking
+GST_PLUGIN_LDFLAGS="-module -avoid-version -export-symbols-regex '[_]*(gst_|Gst|GST_).*'"
AC_SUBST(GST_PLUGIN_LDFLAGS)
dnl these are all the gst plug-ins, compilable without additional libs
# thomasvs: another nice wingo addition would be an explanation on why
# this is useful ;)
-#SCANOBJ_DEPS = $(top_builddir)/gst/elements/libgstelements.la \
-# $(top_builddir)/gst/schedulers/libgstbasicomegascheduler.la
-#SCANOBJ_DEPS = $(top_builddir)/libs/gst/control/libgstcontrol-@GST_MAJORMINOR@.la
SCANOBJ_DEPS = \
$(top_builddir)/gst-libs/gst/interfaces/libgstinterfaces-@GST_MAJORMINOR@.la \
$(top_builddir)/gst-libs/gst/audio/libgstaudio-@GST_MAJORMINOR@.la
# CFLAGS and LDFLAGS for compiling scan program. Only needed if your app/lib
# contains GtkObjects/GObjects and you want to document signals and properties.
GTKDOC_CFLAGS = $(GST_BASE_CFLAGS) -I$(top_builddir) -I$(top_builddir)/gst-libs
-GTKDOC_LIBS = $(GST_BASE_LIBS) $(SCANOBJ_DEPS)
+GTKDOC_LIBS = $(SCANOBJ_DEPS) $(GST_BASE_LIBS)
GTKDOC_CC=$(LIBTOOL) --mode=compile $(CC)
GTKDOC_LD=$(LIBTOOL) --mode=link $(CC)
-
plugin_LTLIBRARIES = libgstalsa.la
libgstalsa_la_SOURCES = \
gstalsaclock.c
libgstalsa_la_CFLAGS = $(GST_CFLAGS) $(ALSA_CFLAGS)
-libgstalsa_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS) \
-libgstalsa_la_LIBADD = $(ALSA_LIBS) \
- ${top_builddir}/gst-libs/gst/interfaces/libgstinterfaces-@GST_MAJORMINOR@.la \
- ${top_builddir}/gst-libs/gst/audio/libgstaudio-@GST_MAJORMINOR@.la
+libgstalsa_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS)
+libgstalsa_la_LIBADD = \
+ $(ALSA_LIBS) \
+ $(top_builddir)/gst-libs/gst/interfaces/libgstinterfaces-@GST_MAJORMINOR@.la \
+ $(top_builddir)/gst-libs/gst/audio/libgstaudio-@GST_MAJORMINOR@.la
noinst_HEADERS = \
gstalsa.h \
-
plugin_LTLIBRARIES = libgstcdparanoia.la
libgstcdparanoia_la_SOURCES = gstcdparanoia.c
libgstcdparanoia_la_CFLAGS = $(GST_CFLAGS)
-libgstcdparanoia_la_LIBADD = $(CDPARANOIA_LIBS)
libgstcdparanoia_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS)
+libgstcdparanoia_la_LIBADD = $(CDPARANOIA_LIBS) $(GST_LIBS)
noinst_HEADERS = gstcdparanoia.h
gstgnomevfssink.c
libgstgnomevfs_la_CFLAGS = $(GST_CFLAGS) $(GNOME_VFS_CFLAGS)
-libgstgnomevfs_la_LIBADD = $(GNOME_VFS_LIBS)
-libgstgnomevfs_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS) $(GST_BASE_LIBS)
+libgstgnomevfs_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS)
+libgstgnomevfs_la_LIBADD = $(GNOME_VFS_LIBS) $(GST_BASE_LIBS)
noinst_HEADERS = \
gstgnomevfs.h \
libgstlibvisual_la_SOURCES = visual.c
libgstlibvisual_la_CFLAGS = $(GST_CFLAGS) $(LIBVISUAL_CFLAGS)
-libgstlibvisual_la_LIBADD = $(LIBVISUAL_LIBS) \
- libgstbytestream-$(GST_MAJORMINOR).la
libgstlibvisual_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS)
+libgstlibvisual_la_LIBADD = \
+ libgstbytestream-$(GST_MAJORMINOR).la \
+ $(LIBVISUAL_LIBS)
gstogmparse.c
libgstogg_la_CFLAGS = $(GST_CFLAGS) $(OGG_CFLAGS)
-libgstogg_la_LIBADD = $(OGG_LIBS) \
- $(top_builddir)/gst-libs/gst/riff/libgstriff-@GST_MAJORMINOR@.la $(GST_BASE_LIBS)
libgstogg_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS)
-
+libgstogg_la_LIBADD = \
+ $(top_builddir)/gst-libs/gst/riff/libgstriff-@GST_MAJORMINOR@.la \
+ $(GST_BASE_LIBS) \
+ $(OGG_LIBS)
libgsttheora_la_SOURCES = theora.c theoraenc.c theoradec.c
libgsttheora_la_CFLAGS = $(GST_CFLAGS) $(THEORA_CFLAGS)
-libgsttheora_la_LIBADD = $(THEORA_LIBS) \
- $(top_builddir)/gst-libs/gst/tag/libgsttagedit-@GST_MAJORMINOR@.la
libgsttheora_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS)
-
+libgsttheora_la_LIBADD = \
+ $(top_builddir)/gst-libs/gst/tag/libgsttagedit-@GST_MAJORMINOR@.la \
+ $(GST_LIBS) \
+ $(THEORA_LIBS)
vorbisdec.c vorbisenc.c vorbisparse.c
libgstvorbis_la_CFLAGS = $(GST_CFLAGS) $(VORBIS_CFLAGS)
## AM_PATH_VORBIS also sets VORBISENC_LIBS
-libgstvorbis_la_LIBADD = $(VORBIS_LIBS) $(VORBISENC_LIBS) $(VORBISFILE_LIBS) \
- $(top_builddir)/gst-libs/gst/tag/libgsttagedit-@GST_MAJORMINOR@.la \
- $(top_builddir)/gst-libs/gst/audio/libgstaudio-@GST_MAJORMINOR@.la
libgstvorbis_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS)
+libgstvorbis_la_LIBADD = \
+ $(top_builddir)/gst-libs/gst/tag/libgsttagedit-@GST_MAJORMINOR@.la \
+ $(top_builddir)/gst-libs/gst/audio/libgstaudio-@GST_MAJORMINOR@.la \
+ $(GST_LIBS) \
+ $(VORBIS_LIBS) $(VORBISENC_LIBS)
noinst_HEADERS = vorbisenc.h vorbisdec.h vorbisparse.h
-
lib_LTLIBRARIES = libgstvideo-@GST_MAJORMINOR@.la
libgstvideo_@GST_MAJORMINOR@_la_SOURCES = video.c gstvideosink.c
libgstvideoincludedir = $(includedir)/gstreamer-@GST_MAJORMINOR@/gst/video
libgstvideoinclude_HEADERS = video.h videosink.h
-libgstvideo_@GST_MAJORMINOR@_la_LIBADD =
libgstvideo_@GST_MAJORMINOR@_la_CFLAGS = $(GST_CFLAGS)
-libgstvideo_@GST_MAJORMINOR@_la_LDFLAGS = $(GST_LIBS) $(GST_BASE_LIBS)
+libgstvideo_@GST_MAJORMINOR@_la_LDFLAGS =
+libgstvideo_@GST_MAJORMINOR@_la_LIBADD = $(GST_BASE_LIBS) $(GST_LIBS)
-
plugin_LTLIBRARIES = libgstadder.la
libgstadder_la_SOURCES = gstadder.c
libgstadder_la_CFLAGS = $(GST_CFLAGS)
-libgstadder_la_LIBADD =
-libgstadder_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS) $(GST_BASE_LIBS)
+libgstadder_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS)
+libgstadder_la_LIBADD = $(GST_BASE_LIBS) $(GST_LIBS)
noinst_HEADERS = gstadder.h
plugin.c
libgstaudioconvert_la_CFLAGS = $(GST_CFLAGS)
-libgstaudioconvert_la_LIBADD =
-libgstaudioconvert_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS) \
- $(top_builddir)/gst-libs/gst/audio/libgstaudio-@GST_MAJORMINOR@.la
+libgstaudioconvert_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS)
+libgstaudioconvert_la_LIBADD = \
+ $(top_builddir)/gst-libs/gst/audio/libgstaudio-@GST_MAJORMINOR@.la \
+ $(GST_LIBS)
noinst_HEADERS = \
gstchannelmix.h \
-
plugin_LTLIBRARIES = libgstaudiorate.la
libgstaudiorate_la_SOURCES = gstaudiorate.c
libgstaudiorate_la_CFLAGS = $(GST_CFLAGS)
-libgstaudiorate_la_LIBADD =
libgstaudiorate_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS)
+libgstaudiorate_la_LIBADD = $(GST_LIBS)
#libgstaudioscale_la_SOURCES = gstaudioscale.c
#libgstaudioscale_la_CFLAGS = $(GST_CFLAGS)
-#libgstaudioscale_la_LIBADD =
#libgstaudioscale_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS)
+#libgstaudioscale_la_LIBADD = $(GST_LIBS)
noinst_HEADERS = gstaudioscale.h private.h
libgstresample_la_SOURCES = dtos.c dtof.c functable.c resample.c resample.h
-libgstresample_la_LIBADD =
-libgstresample_la_CFLAGS = $(GST_CFLAGS)
+libgstresample_la_LIBADD = $(GST_LIBS)
libgstresample_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS)
-
-
+libgstresample_la_CFLAGS = $(GST_CFLAGS)
libgstffmpegcolorspace_la_CFLAGS = $(GST_CFLAGS)
libgstffmpegcolorspace_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS)
+libgstffmpegcolorspace_la_LIBADD = $(GST_LIBS)
noinst_HEADERS = \
gstffmpegcodecmap.h \
nodist_libgstplaybin_la_SOURCES = $(built_sources)
libgstplaybin_la_CFLAGS = $(GST_CFLAGS)
-libgstplaybin_la_LIBADD =
libgstplaybin_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS)
+libgstplaybin_la_LIBADD = $(GST_LIBS)
libgstdecodebin_la_SOURCES = gstdecodebin.c
nodist_libgstdecodebin_la_SOURCES = $(built_sources)
libgstdecodebin_la_CFLAGS = $(GST_CFLAGS)
-libgstdecodebin_la_LIBADD =
libgstdecodebin_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS)
+libgstdecodebin_la_LIBADD = $(GST_LIBS)
noinst_HEADERS = \
gstplaybasebin.h \
-
plugin_LTLIBRARIES = libgstsinesrc.la
libgstsinesrc_la_SOURCES = gstsinesrc.c
libgstsinesrc_la_CFLAGS = $(GST_CFLAGS)
-libgstsinesrc_la_LIBADD = $(GST_LIBS) $(GST_CONTROL_LIBS) $(GST_BASE_LIBS)
libgstsinesrc_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS)
+libgstsinesrc_la_LIBADD = $(GST_CONTROL_LIBS) $(GST_BASE_LIBS) $(GST_LIBS)
noinst_HEADERS = gstsinesrc.h
-
gstsubparse.c
libgstsubparse_la_CFLAGS = $(GST_CFLAGS)
-libgstsubparse_la_LIBADD =
libgstsubparse_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS)
+libgstsubparse_la_LIBADD = $(GST_LIBS)
noinst_HEADERS = \
gstsubparse.h
-
plugin_LTLIBRARIES = libgsttagedit.la
libgsttagedit_la_SOURCES = gsttagediting.c
libgsttagedit_la_CFLAGS = $(GST_CFLAGS) -I$(top_srcdir)/gst/tags
-libgsttagedit_la_LIBADD = $(GST_LIBS)
libgsttagedit_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS)
+libgsttagedit_la_LIBADD = $(GST_LIBS)
noinst_HEADERS = gsttageditingprivate.h
-
# remove ENABLE_NEW when dataprotocol is stable
libgsttcp_la_CFLAGS = $(GST_CFLAGS) -DGST_ENABLE_NEW
-libgsttcp_la_LIBADD =
-libgsttcp_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS) $(GST_BASE_LIBS) $(GST_GDP_LIBS)
+libgsttcp_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS)
+libgsttcp_la_LIBADD = $(GST_BASE_LIBS) $(GST_GDP_LIBS) $(GST_LIBS)
noinst_HEADERS = \
gsttcpplugin.h \
fdsetstress_SOURCES = fdsetstress.c gstfdset.c
fdsetstress_CFLAGS = $(GST_CFLAGS) $(GTK_CFLAGS)
fdsetstress_LDFLAGS = $(GST_LIBS) $(GTK_LIBS)
-
-
plugin_LTLIBRARIES = libgsttypefindfunctions.la
libgsttypefindfunctions_la_SOURCES = gsttypefindfunctions.c
libgsttypefindfunctions_la_CFLAGS = $(GST_CFLAGS)
-libgsttypefindfunctions_la_LIBADD =
libgsttypefindfunctions_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS)
-
+libgsttypefindfunctions_la_LIBADD = $(GST_LIBS)
-
plugin_LTLIBRARIES = libgstvideorate.la
libgstvideorate_la_SOURCES = gstvideorate.c
libgstvideorate_la_CFLAGS = $(GST_CFLAGS)
-libgstvideorate_la_LIBADD =
libgstvideorate_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS)
+libgstvideorate_la_LIBADD = $(GST_LIBS)
-
plugin_LTLIBRARIES = libgstvideoscale.la
libgstvideoscale_la_SOURCES = \
vs_scanline.c
libgstvideoscale_la_CFLAGS = $(GST_CFLAGS) $(GST_BASE_CFLAGS)
-libgstvideoscale_la_LIBADD = $(GST_BASE_LIBS)
libgstvideoscale_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS)
+libgstvideoscale_la_LIBADD = $(GST_BASE_LIBS) $(GST_LIBS)
noinst_HEADERS = \
gstvideoscale.h \
vs_image.h \
vs_scanline.h
-
-
plugin_LTLIBRARIES = libgstvideotestsrc.la
libgstvideotestsrc_la_SOURCES = \
videotestsrc.c
libgstvideotestsrc_la_CFLAGS = $(GST_CFLAGS) $(LIBOIL_CFLAGS)
-libgstvideotestsrc_la_LIBADD =
-libgstvideotestsrc_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS) $(LIBOIL_LIBS)
+libgstvideotestsrc_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS)
+libgstvideotestsrc_la_LIBADD = $(GST_LIBS) $(LIBOIL_LIBS)
noinst_HEADERS = gstvideotestsrc.h videotestsrc.h
-
plugin_LTLIBRARIES = libgstvolume.la
libgstvolume_la_SOURCES = gstvolume.c
libgstvolume_la_CFLAGS = $(GST_CFLAGS)
-libgstvolume_la_LIBADD = $(GST_LIBS) $(GST_CONTROL_LIBS) \
- $(top_builddir)/gst-libs/gst/interfaces/libgstinterfaces-$(GST_MAJORMINOR).la \
- $(GST_BASE_LIBS)
libgstvolume_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS)
+libgstvolume_la_LIBADD = \
+ $(top_builddir)/gst-libs/gst/interfaces/libgstinterfaces-$(GST_MAJORMINOR).la \
+ $(GST_CONTROL_LIBS) \
+ $(GST_BASE_LIBS) \
+ $(GST_LIBS)
noinst_HEADERS = gstvolume.h filter.func
# gstv4lmjpegsink.c v4lmjpegsink_calls.c
libgstvideo4linux_la_CFLAGS = $(GST_CFLAGS) $(X_CFLAGS) -I$(top_srcdir)/gst-libs
+libgstvideo4linux_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS)
libgstvideo4linux_la_LIBADD = \
$(top_builddir)/gst-libs/gst/interfaces/libgstinterfaces-@GST_MAJORMINOR@.la \
- $(GST_BASE_LIBS)
-libgstvideo4linux_la_LDFLAGS = \
- $(GST_PLUGIN_LDFLAGS) \
- $(xv_libs)
+ $(GST_BASE_LIBS) $(GST_LIBS) $(xv_libs)
noinst_HEADERS = gstv4lelement.h v4l_calls.h \
gstv4lsrc.h v4lsrc_calls.h \
-
plugin_LTLIBRARIES = libgstximagesink.la
libgstximagesink_la_SOURCES = ximagesink.c
libgstximagesink_la_CFLAGS = $(GST_CFLAGS) $(X_CFLAGS)
-libgstximagesink_la_LIBADD = $(X_LIBS) $(XSHM_LIBS) \
- $(top_builddir)/gst-libs/gst/interfaces/libgstinterfaces-$(GST_MAJORMINOR).la \
- $(top_builddir)/gst-libs/gst/video/libgstvideo-$(GST_MAJORMINOR).la
libgstximagesink_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS)
+libgstximagesink_la_LIBADD = \
+ $(top_builddir)/gst-libs/gst/interfaces/libgstinterfaces-$(GST_MAJORMINOR).la \
+ $(top_builddir)/gst-libs/gst/video/libgstvideo-$(GST_MAJORMINOR).la \
+$(X_LIBS) $(XSHM_LIBS)
libgstximagesink_la_DEPENDENCIES = $(top_builddir)/gst-libs/gst/video/libgstvideo-$(GST_MAJORMINOR).la
noinst_HEADERS = ximagesink.h
-
-
plugin_LTLIBRARIES = libgstxvimagesink.la
libgstxvimagesink_la_SOURCES = xvimagesink.c
libgstxvimagesink_la_CFLAGS = $(GST_CFLAGS) $(X_CFLAGS)
-libgstxvimagesink_la_LIBADD = $(X_LIBS) $(XVIDEO_LIBS) $(XSHM_LIBS) \
+libgstxvimagesink_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS)
+libgstxvimagesink_la_LIBADD = \
$(top_builddir)/gst-libs/gst/interfaces/libgstinterfaces-$(GST_MAJORMINOR).la \
- $(top_builddir)/gst-libs/gst/video/libgstvideo-$(GST_MAJORMINOR).la
+ $(top_builddir)/gst-libs/gst/video/libgstvideo-$(GST_MAJORMINOR).la \
+ $(X_LIBS) $(XVIDEO_LIBS) $(XSHM_LIBS)
libgstxvimagesink_la_DEPENDENCIES = $(top_builddir)/gst-libs/gst/video/libgstvideo-$(GST_MAJORMINOR).la
-libgstxvimagesink_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS)
noinst_HEADERS = xvimagesink.h
-