diff options
Diffstat (limited to 'multimedia/gstreamer1-plugins/Makefile.common')
-rw-r--r-- | multimedia/gstreamer1-plugins/Makefile.common | 482 |
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 |