-if USE_GCONF
-GCONF_DIR=gconf
-else
-GCONF_DIR=
-endif
+# The interfaces directory has to be built before the others,
+# otherwise some generated header files will be missing for the
+# plugins in the other directories.
+SUBDIRS = \
+ interfaces \
+ tag \
+ fft \
+ rtp \
+ sdp \
+ rtsp \
+ video \
+ audio \
+ pbutils \
+ riff \
+ app
-SUBDIRS = audio idct resample riff floatcast $(GCONF_DIR) video play
+noinst_HEADERS = gettext.h gst-i18n-plugin.h glib-compat-private.h
-DIST_SUBDIRS = audio idct resample riff floatcast gconf video play
+# dependencies:
+audio: interfaces tag
+
+riff: tag audio
+
+rtsp: sdp
+
+pbutils: video audio
+
+INDEPENDENT_SUBDIRS = \
+ interfaces tag audio fft rtp sdp video app
+
+.PHONY: independent-subdirs $(INDEPENDENT_SUBDIRS)
+
+independent-subdirs: $(INDEPENDENT_SUBDIRS)
+
+$(INDEPENDENT_SUBDIRS):
+ $(MAKE) -C $@
+
+all-recursive: independent-subdirs