aboutsummaryrefslogtreecommitdiffstats
path: root/multimedia/gstreamer1-plugins/Makefile.common
diff options
context:
space:
mode:
Diffstat (limited to 'multimedia/gstreamer1-plugins/Makefile.common')
-rw-r--r--multimedia/gstreamer1-plugins/Makefile.common482
1 files changed, 482 insertions, 0 deletions
diff --git a/multimedia/gstreamer1-plugins/Makefile.common b/multimedia/gstreamer1-plugins/Makefile.common
new file mode 100644
index 000000000000..b9ab6101b991
--- /dev/null
+++ b/multimedia/gstreamer1-plugins/Makefile.common
@@ -0,0 +1,482 @@
+# $FreeBSD$
+# $MCom: kwm/multimedia/gstreamer1-plugins/Makefile.common 11415 2013-04-26 22:58:21Z kwm $
+
+BASE_GST_ALL_PLUGINS= \
+ alsa \
+ cdparanoia \
+ ivorbis \
+ libvisual \
+ ogg \
+ pango \
+ theora \
+ vorbis \
+ x \
+ xvideo
+
+BAD_GST_ALL_PLUGINS+= \
+ assrender \
+ celt \
+ curl \
+ dts \
+ faac \
+ faad \
+ flite \
+ gme \
+ gsm \
+ libmms \
+ modplug \
+ mpeg2enc \
+ mplex \
+ opencv \
+ resindvd \
+ schro \
+ soundtouch \
+ spandsp \
+ zbar \
+
+# plugins not yet ported to the 1.0 API, or not portable
+BAD_GST_ALL_PLUGINS+= \
+ apexsink \
+ cdaudio \
+ chromaprint \
+ cog \
+ decklink \
+ directfb \
+ dirac \
+ eglgles \
+ jasper \
+ kate \
+ ladspa \
+ linsys \
+ lv2 \
+ mimic \
+ mpg123 \
+ musepack \
+ musicbrainz \
+ mythtv \
+ nas \
+ neon \
+ ofa \
+ openal \
+ opensles \
+ opus \
+ pvr \
+ rsvg \
+ rtmp \
+ sdl \
+ sndfile \
+ sndio \
+ spc \
+ teletextdec \
+ timidity \
+ vdpau \
+ voaacenc \
+ voamrwbenc \
+ wayland \
+ swfdec \
+ xvid
+
+BAD_GST_NON_PLUGINS= \
+ --enable-bz2 \
+ --enable-dvb \
+ --enable-shm \
+ --enable-quicktime \
+ --disable-gsettings \
+ --disable-acm \
+ --disable-android_media \
+ --disable-apple_media \
+ --disable-avc \
+ --disable-dc1394 \
+ --disable-dccp \
+ --disable-direct3d9 \
+ --disable-directdraw \
+ --disable-directsound \
+ --disable-fbdev \
+ --disable-osx_video \
+ --disable-uvch264 \
+ --disable-vcd \
+ --disable-wildmidi \
+ --disable-wininet
+
+GOOD_GST_ALL_PLUGINS+= \
+ aalib \
+ cairo \
+ flac \
+ gdk_pixbuf \
+ jack \
+ jpeg \
+ libcaca \
+ libdv \
+ libpng \
+ gst_v4l2 \
+ shout2 \
+ soup \
+ speex \
+ taglib \
+ vpx \
+ wavpack \
+ x
+# xxx pulse \
+
+GOOD_GST_NON_PLUGINS= \
+ --disable-dv1394 \
+ --disable-directsound \
+ --disable-osx_audio \
+ --disable-osx_video \
+ --disable-sunaudio \
+ --disable-waveform \
+ --enable-bz2 \
+ --enable-oss \
+ --enable-oss4 \
+ --enable-zlib
+
+UGLY_GST_ALL_PLUGINS+= \
+ a52dec \
+ amrnb \
+ amrwb \
+ cdio \
+ dvdread \
+ lame \
+ mad \
+ mpeg2dec \
+ sidplay \
+ twolame \
+ x264
+
+UGLY_GST_NON_PLUGINS=
+
+# Disable all plugins by default
+.if ${DIST}=="base"
+.for d in ${BASE_GST_ALL_PLUGINS}
+CONFIGURE_ARGS+= --disable-${d}
+.endfor
+.endif
+
+.if ${DIST}=="bad"
+.for d in ${BAD_GST_ALL_PLUGINS}
+CONFIGURE_ARGS+= --disable-${d}
+.endfor
+CONFIGURE_ARGS+= ${BAD_GST_NON_PLUGINS}
+.endif
+
+.if ${DIST}=="good"
+.for d in ${GOOD_GST_ALL_PLUGINS}
+CONFIGURE_ARGS+= --disable-${d}
+.endfor
+CONFIGURE_ARGS+= ${GOOD_GST_NON_PLUGINS}
+.endif
+
+.if ${DIST}=="ugly"
+.for d in ${UGLY_GST_ALL_PLUGINS}
+CONFIGURE_ARGS+= --disable-${d}
+.endfor
+CONFIGURE_ARGS+= ${UGLY_GST_NON_PLUGINS}
+.endif
+
+.if ${GST_PLUGIN}!="base" && ${GST_PLUGIN}!="bad" && \
+ ${GST_PLUGIN}!="good" && ${GST_PLUGIN}!="ugly"
+CONFIGURE_ARGS+= --enable-${GST_PLUGIN}
+.endif
+
+.if !defined(NO_GSTREAMER_COMMON)
+GST_PLUGIN_SUFFIX?= -${GST_PLUGIN}
+
+# Enable the right plugin
+CONFIGURE_ARGS:=${CONFIGURE_ARGS:S|--disable-${GST_PLUGIN}|--enable-${GST_PLUGIN}|}
+
+GST_INC_DIR= include/gstreamer-${VERSION}
+GST_LIB_DIR= lib/gstreamer-${VERSION}
+
+# Auto create PLIST
+PLIST= ${NONEXISTENT}
+
+# ------- plugins ---------
+
+# a52dec
+gst_a52dec_LIB_DEPENDS= a52:${PORTSDIR}/audio/liba52
+
+# aalib
+gst_aalib_LIB_DEPENDS= aa:${PORTSDIR}/graphics/aalib
+gst_aalib_PLIST_FILES= ${GST_LIB_DIR}/libgstaasink.la \
+ ${GST_LIB_DIR}/libgstaasink.so
+
+# amrnb
+gst_amrnb_LIB_DEPENDS= opencore-amrnb:${PORTSDIR}/audio/opencore-amr
+gst_amrnb_PLIST_FILES= ${GST_LIB_DIR}/libgstamrnb.la \
+ ${GST_LIB_DIR}/libgstamrnb.so \
+ share/gstreamer-${VERSION}/presets/GstAmrnbEnc.prs
+gst_amrnb_PLIST_DIRSTRY=share/gstreamer-${VERSION}/presets \
+ share/gstreamer-${VERSION}
+
+# amrwb
+gst_amrwb_LIB_DEPENDS= opencore-amrwb:${PORTSDIR}/audio/opencore-amr
+gst_amrwb_GST_PLUGIN_DIR= ext/amrwbdec
+gst_amrwb_PLIST_FILES= ${GST_LIB_DIR}/libgstamrwbdec.la \
+ ${GST_LIB_DIR}/libgstamrwbdec.so
+
+# assrender
+gst_assrender_LIB_DEPENDS= ass:${PORTSDIR}/multimedia/libass
+
+# cairo
+gst_cairo_LIB_DEPENDS= cairo:${PORTSDIR}/graphics/cairo
+
+# cdparanoia
+gst_cdparanoia_LIB_DEPENDS= cdda_interface:${PORTSDIR}/audio/cdparanoia
+
+# cdio
+gst_cdio_LIB_DEPENDS= cdio:${PORTSDIR}/sysutils/libcdio
+
+# celt
+gst_celt_LIB_DEPENDS= celt0:${PORTSDIR}/audio/celt
+
+# curl
+gst_curl_LIB_DEPENDS= curl:${PORTSDIR}/ftp/curl
+
+# dts
+gst_dts_LIB_DEPENDS= dca:${PORTSDIR}/multimedia/libdca
+gst_dts_PLIST_FILES= ${GST_LIB_DIR}/libgstdtsdec.la \
+ ${GST_LIB_DIR}/libgstdtsdec.so
+
+# libdv
+gst_libdv_LIB_DEPENDS= dv:${PORTSDIR}/multimedia/libdv
+gst_libdv_GST_PLUGIN_DIR= ext/dv
+gst_libdv_PLIST_FILES= ${GST_LIB_DIR}/libgstdv.la \
+ ${GST_LIB_DIR}/libgstdv.so
+
+# dvdread
+gst_dvdread_LIB_DEPENDS=dvdread:${PORTSDIR}/multimedia/libdvdread
+
+# faac
+gst_faac_LIB_DEPENDS= faac:${PORTSDIR}/audio/faac
+
+# faad
+gst_faad_LIB_DEPENDS= faad:${PORTSDIR}/audio/faad
+
+# flac
+gst_flac_LIB_DEPENDS= FLAC:${PORTSDIR}/audio/flac
+
+# flite
+gst_flite_LIB_DEPENDS= flite:${PORTSDIR}/audio/flite
+
+# gdk_pixbuf
+gst_gdk_pixbuf_USE_GNOME= gdkpixbuf2
+gst_gdk_pixbuf_PLIST_FILES= ${GST_LIB_DIR}/libgstgdkpixbuf.la \
+ ${GST_LIB_DIR}/libgstgdkpixbuf.so
+
+# gme
+gst_gme_LIB_DEPENDS= gme:${PORTSDIR}/audio/libgme
+
+# gsm
+gst_gsm_LIB_DEPENDS= gsm:${PORTSDIR}/audio/gsm
+
+# jack
+gst_jack_LIB_DEPENDS= jack:${PORTSDIR}/audio/jack
+
+# jpeg
+gst_jpeg_LIB_DEPENDS= jpeg:${PORTSDIR}/graphics/jpeg
+
+# lame
+gst_lame_LIB_DEPENDS= mp3lame:${PORTSDIR}/audio/lame
+
+# libcaca
+gst_libcaca_LIB_DEPENDS= caca:${PORTSDIR}/graphics/libcaca
+gst_libcaca_PLIST_FILES= ${GST_LIB_DIR}/libgstcacasink.la \
+ ${GST_LIB_DIR}/libgstcacasink.so
+
+# libmms
+gst_libmms_LIB_DEPENDS= mms:${PORTSDIR}/net/libmms
+gst_libmms_PLIST_FILES= ${GST_LIB_DIR}/libgstmms.so \
+ ${GST_LIB_DIR}/libgstmms.la
+
+# png
+gst_libpng_LIB_DEPENDS= png15:${PORTSDIR}/graphics/png
+gst_libpng_PLIST_FILES= ${GST_LIB_DIR}/libgstpng.la \
+ ${GST_LIB_DIR}/libgstpng.so
+
+# libvisual
+gst_libvisual_LIB_DEPENDS= visual-0.4:${PORTSDIR}/graphics/libvisual04
+
+# mad
+gst_mad_LIB_DEPENDS= mad:${PORTSDIR}/audio/libmad
+
+# modplug
+gst_modplug_LIB_DEPENDS= modplug:${PORTSDIR}/audio/libmodplug
+
+# mpeg2enc
+gst_mpeg2enc_LIB_DEPENDS= mjpegutils-2.0:${PORTSDIR}/multimedia/mjpegtools
+
+# mpeg2dec
+gst_mpeg2dec_LIB_DEPENDS= mpeg2:${PORTSDIR}/multimedia/libmpeg2
+
+# ogg
+gst_ogg_LIB_DEPENDS= ogg:${PORTSDIR}/audio/libogg
+
+# opencv
+gst_opencv_LIB_DEPENDS= opencv_highgui:${PORTSDIR}/graphics/opencv
+
+# opus
+gst_opus_LIB_DEPENDS= opus:${PORTSDIR}/audio/opus
+
+# pango
+gst_pango_USE_GNOME= pango
+
+# pulse
+gst_pulse_LIB_DEPENDS= pulse:${PORTSDIR}/audio/pulseaudio
+
+# resindvd
+gst_resindvd_BUILD_DEPENDS= libdvdnav>=4.1.2:${PORTSDIR}/multimedia/libdvdnav
+gst_resindvd_RUN_DEPENDS= libdvdnav>=4.1.2:${PORTSDIR}/multimedia/libdvdnav
+
+# shout2
+# keep the version to tell de difference between libshout and libshout2
+gst_shout2_LIB_DEPENDS= shout.5:${PORTSDIR}/audio/libshout2
+
+# sidplay
+gst_sidplay_LIB_DEPENDS= sidplay:${PORTSDIR}/audio/libsidplay
+gst_sidplay_PLIST_FILES= ${GST_LIB_DIR}/libgstsid.so \
+ ${GST_LIB_DIR}/libgstsid.la
+
+# soundtouch
+gst_soundtouch_LIB_DEPENDS= SoundTouch:${PORTSDIR}/audio/soundtouch
+
+# souphttpsrc
+gst_soup_LIB_DEPENDS= soup-2.4:${PORTSDIR}/devel/libsoup
+gst_soup_GST_PLUGIN_DIR=ext/soup
+gst_soup_PLIST_FILES= ${GST_LIB_DIR}/libgstsouphttpsrc.la \
+ ${GST_LIB_DIR}/libgstsouphttpsrc.so
+
+# spandsp
+# keep shlib version here, so we don't pick up the comms/spandsp port by accident.
+gst_spandsp_LIB_DEPENDS= spandsp.2:${PORTSDIR}/comms/spandsp-devel
+
+# speex
+gst_speex_LIB_DEPENDS= speex:${PORTSDIR}/audio/speex
+
+# schroedinger or schro for short
+gst_schro_LIB_DEPENDS= schroedinger-1.0:${PORTSDIR}/multimedia/schroedinger
+gst_schro_GST_PLUGIN_DIR= ext/schroedinger
+
+# taglib
+gst_taglib_LIB_DEPENDS= tag:${PORTSDIR}/audio/taglib
+
+# theora
+gst_theora_LIB_DEPENDS= theora:${PORTSDIR}/multimedia/libtheora
+
+# twolame
+gst_twolame_LIB_DEPENDS= twolame:${PORTSDIR}/audio/twolame
+
+# gst_v4l2
+gst_gst_v4l2_BUILD_DEPENDS= v4l_compat>0:${PORTSDIR}/multimedia/v4l_compat
+gst_gst_v4l2_LIB_DEPENDS= v4l2:${PORTSDIR}/multimedia/libv4l
+gst_gst_v4l2_RUN_DEPENDS= webcamd:${PORTSDIR}/multimedia/webcamd
+gst_gst_v4l2_PLIST_FILES= ${GST_LIB_DIR}/libgstvideo4linux2.la \
+ ${GST_LIB_DIR}/libgstvideo4linux2.so
+gst_gst_v4l2_GST_PLUGIN_DIR= sys/v4l2
+
+# vorbis
+gst_vorbis_USE_GSTREAMER1= ogg
+gst_vorbis_LIB_DEPENDS= vorbis:${PORTSDIR}/audio/libvorbis
+
+# vpx
+gst_vpx_LIB_DEPENDS= vpx:${PORTSDIR}/multimedia/libvpx
+
+# X ximage and xvimage sinks aka output
+.if ${DIST} == base
+gst_x_USE_XORG= x11 xv xext
+gst_x_CONFIGURE_ARGS= --enable-xvideo --enable-xshm
+gst_x_GST_PLUGIN_DIR= sys/ximage sys/xvimage
+gst_x_PLIST_FILES= ${GST_LIB_DIR}/libgstximagesink.la \
+ ${GST_LIB_DIR}/libgstximagesink.so \
+ ${GST_LIB_DIR}/libgstxvimagesink.la \
+ ${GST_LIB_DIR}/libgstxvimagesink.so
+.endif
+
+.if ${DIST} == good
+# Ximagesrc
+gst_x_USE_XORG= x11 xfixes xdamage xext
+gst_x_CONFIGURE_ARGS= --enable-x
+gst_x_GST_PLUGIN_DIR= sys/ximage
+gst_x_PLIST_FILES= ${GST_LIB_DIR}/libgstximagesrc.la \
+ ${GST_LIB_DIR}/libgstximagesrc.so
+.endif
+
+# x264
+gst_x264_LIB_DEPENDS= x264:${PORTSDIR}/multimedia/x264
+gst_x264_PLIST_FILES= ${GST_LIB_DIR}/libgstx264.la \
+ ${GST_LIB_DIR}/libgstx264.so \
+ share/gstreamer-${VERSION}/presets/GstX264Enc.prs
+gst_x264_PLIST_DIRSTRY= share/gstreamer-${VERSION}/presets \
+ share/gstreamer-${VERSION}
+
+# xvid
+gst_xvid_LIB_DEPENDS= xvidcore:${PORTSDIR}/multimedia/xvid
+
+# wavpack
+gst_wavpack_LIB_DEPENDS= wavpack:${PORTSDIR}/audio/wavpack
+
+# zbar
+gst_zbar_LIB_DEPENDS= zbar:${PORTSDIR}/graphics/zbar
+
+.endif # NO_GSTREAMER_COMMON
+
+.if !defined(NO_GSTREAMER_COMMON)
+gst_${GST_PLUGIN}_BUILD_DEPENDS?=
+gst_${GST_PLUGIN}_LIB_DEPENDS?=
+gst_${GST_PLUGIN}_RUN_DEPENDS?=
+gst_${GST_PLUGIN}_USE_XORG?=
+gst_${GST_PLUGIN}_PLIST_FILES?= \
+ ${GST_LIB_DIR}/libgst${GST_PLUGIN}${GST_PLIST_SUFFIX}.la \
+ ${GST_LIB_DIR}/libgst${GST_PLUGIN}${GST_PLIST_SUFFIX}.so
+gst_${GST_PLUGIN}_EXTRA_LIBS?=
+gst_${GST_PLUGIN}_PREBUILD_DIR?=
+gst_${GST_PLUGIN}_GST_PLUGIN_DIR?= ext/${GST_PLUGIN}
+gst_${GST_PLUGIN}_POSTBUILD_DIR?=
+gst_${GST_PLUGIN}_USE_GNOME?=
+gst_${GST_PLUGIN}_CONFIGURE_ENV?=
+gst_${GST_PLUGIN}_GLIB_SCHEMAS?=
+gst_${GST_PLUGIN}_CONFIGURE_ARGS?=
+gst_${GST_PLUGIN}_USE_SDL?=
+gst_${GST_PLUGIN}_USE_GSTREAMER1?=
+
+BUILD_DEPENDS+= ${gst_${GST_PLUGIN}_BUILD_DEPENDS}
+LIB_DEPENDS+= ${gst_${GST_PLUGIN}_LIB_DEPENDS}
+RUN_DEPENDS+= ${gst_${GST_PLUGIN}_RUN_DEPENDS}
+PLIST_FILES= ${gst_${GST_PLUGIN}_PLIST_FILES}
+PLIST_DIRS= ${gst_${GST_PLUGIN}_PLIST_DIRS}
+PLIST_DIRSTRY= ${gst_${GST_PLUGIN}_PLIST_DIRSTRY}
+EXTRA_LIBS+= ${gst_${GST_PLUGIN}_EXTRA_LIBS}
+USE_XORG+= ${gst_${GST_PLUGIN}_USE_XORG}
+USE_GNOME+= ${gst_${GST_PLUGIN}_USE_GNOME}
+CONFIGURE_ENV+= ${gst_${GST_PLUGIN}_CONFIGURE_ENV}
+
+.if ${gst_${GST_PLUGIN}_GLIB_SCHEMAS}!=""
+GLIB_SCHEMAS= ${gst_${GST_PLUGIN}_GLIB_SCHEMAS}
+.endif
+
+CONFIGURE_ARGS+= ${gst_${GST_PLUGIN}_CONFIGURE_ARGS}
+
+.if ${gst_${GST_PLUGIN}_USE_SDL}!=""
+USE_SDL= ${gst_${GST_PLUGIN}_USE_SDL}
+.endif
+
+USE_GSTREAMER1+= ${gst_${GST_PLUGIN}_USE_GSTREAMER1} ${DIST:base=yes}
+GST_PREBUILD_DIR= ${gst_${GST_PLUGIN}_GST_PREBUILD_DIR}
+GST_PLUGIN_DIR= ${gst_${GST_PLUGIN}_GST_PLUGIN_DIR}
+GST_POSTBUILD_DIR= ${gst_${GST_PLUGIN}_GST_POSTBUILD_DIR}
+
+.if !target(do-build)
+do-build:
+.for dir in ${GST_PREBUILD_DIR} ${GST_PLUGIN_DIR} ${GST_POSTBUILD_DIR}
+ @cd ${WRKSRC}/${dir}; ${SETENV} ${MAKE_ENV} ${GMAKE} ${MAKE_FLAGS} \
+ ${MAKEFILE} ${MAKE_ARGS} ${ALL_TARGET}
+.endfor
+.endif
+
+.if !target(do-install)
+do-install:
+.for dir in ${GST_PLUGIN_DIR}
+ @cd ${WRKSRC}/${dir}; ${SETENV} ${MAKE_ENV} ${GMAKE} ${MAKE_FLAGS} \
+ ${MAKEFILE} ${MAKE_ARGS} ${INSTALL_TARGET}
+.endfor
+.endif
+.endif