# $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 \ curl \ dts \ faac \ faad \ flite \ gme \ gsm \ kate \ libmms \ librfb \ modplug \ mpeg2enc \ mplex \ neon \ ofa \ openal \ opencv \ openjpeg \ opus \ resindvd \ rtmp \ schro \ soundtouch \ spandsp \ webp \ zbar \ # plugins not yet ported to the 1.0 API, or not portable BAD_GST_ALL_PLUGINS+= \ apexsink \ cdaudio \ chromaprint \ decklink \ directfb \ eglgles \ ladspa \ linsys \ lv2 \ mimic \ mpg123 \ musepack \ mythtv \ nas \ opensles \ pvr \ rsvg \ sdl \ sndfile \ sndio \ spc \ teletextdec \ timidity \ vdpau \ voaacenc \ voamrwbenc \ wayland \ 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-direct3d \ --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= liba52.so:${PORTSDIR}/audio/liba52 # aalib gst_aalib_LIB_DEPENDS= libaa.so:${PORTSDIR}/graphics/aalib gst_aalib_PLIST_FILES= ${GST_LIB_DIR}/libgstaasink.la \ ${GST_LIB_DIR}/libgstaasink.so # amrnb gst_amrnb_LIB_DEPENDS= libopencore-amrnb.so:${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= libopencore-amrwb.so:${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= libass.so:${PORTSDIR}/multimedia/libass # cairo gst_cairo_USE_GNOME= cairo # cdparanoia gst_cdparanoia_LIB_DEPENDS= libcdda_interface.so:${PORTSDIR}/audio/cdparanoia # cdio gst_cdio_LIB_DEPENDS= libcdio.so:${PORTSDIR}/sysutils/libcdio # curl gst_curl_LIB_DEPENDS= libcurl.so:${PORTSDIR}/ftp/curl # dts gst_dts_LIB_DEPENDS= libdca.so:${PORTSDIR}/multimedia/libdca gst_dts_PLIST_FILES= ${GST_LIB_DIR}/libgstdtsdec.la \ ${GST_LIB_DIR}/libgstdtsdec.so # libdv gst_libdv_LIB_DEPENDS= libdv.so:${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=libdvdread.so:${PORTSDIR}/multimedia/libdvdread # faac gst_faac_LIB_DEPENDS= libfaac.so:${PORTSDIR}/audio/faac # faad gst_faad_LIB_DEPENDS= libfaad.so:${PORTSDIR}/audio/faad # flac gst_flac_LIB_DEPENDS= libFLAC.so:${PORTSDIR}/audio/flac # flite gst_flite_LIB_DEPENDS= libflite.so:${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= libgme.so:${PORTSDIR}/audio/libgme # gsm gst_gsm_LIB_DEPENDS= libgsm.so:${PORTSDIR}/audio/gsm # jack gst_jack_LIB_DEPENDS= libjack.so:${PORTSDIR}/audio/jack # jpeg gst_jpeg_LIB_DEPENDS= libjpeg.so:${PORTSDIR}/graphics/jpeg # kate gst_kate_LIB_DEPENDS= libkate.so:${PORTSDIR}/multimedia/libkate # lame gst_lame_LIB_DEPENDS= libmp3lame.so:${PORTSDIR}/audio/lame # libcaca gst_libcaca_LIB_DEPENDS= libcaca.so:${PORTSDIR}/graphics/libcaca gst_libcaca_PLIST_FILES= ${GST_LIB_DIR}/libgstcacasink.la \ ${GST_LIB_DIR}/libgstcacasink.so # libmms gst_libmms_LIB_DEPENDS= libmms.so:${PORTSDIR}/net/libmms gst_libmms_PLIST_FILES= ${GST_LIB_DIR}/libgstmms.so \ ${GST_LIB_DIR}/libgstmms.la # png gst_libpng_LIB_DEPENDS= libpng15.so:${PORTSDIR}/graphics/png gst_libpng_PLIST_FILES= ${GST_LIB_DIR}/libgstpng.la \ ${GST_LIB_DIR}/libgstpng.so # libvisual gst_libvisual_LIB_DEPENDS= libvisual-0.4.so:${PORTSDIR}/graphics/libvisual04 # mad gst_mad_LIB_DEPENDS= libmad.so:${PORTSDIR}/audio/libmad # modplug gst_modplug_LIB_DEPENDS= libmodplug.so:${PORTSDIR}/audio/libmodplug # mpeg2enc gst_mpeg2enc_LIB_DEPENDS= libmjpegutils-2.0.so:${PORTSDIR}/multimedia/mjpegtools # mpeg2dec gst_mpeg2dec_LIB_DEPENDS= libmpeg2.so:${PORTSDIR}/multimedia/libmpeg2 # neon gst_neon_LIB_DEPENDS+= libneon.so:${PORTSDIR}/www/neon29 gst_neon_PLIST_FILES= ${GST_LIB_DIR}/libgstneonhttpsrc.la \ ${GST_LIB_DIR}/libgstneonhttpsrc.so # ogg gst_ogg_LIB_DEPENDS= libogg.so:${PORTSDIR}/audio/libogg # opencv gst_opencv_LIB_DEPENDS= libopencv_highgui.so:${PORTSDIR}/graphics/opencv gst_opencv_PLIST_FILES= ${GST_LIB_DIR}/libgstopencv.la \ ${GST_LIB_DIR}/libgstopencv.so \ share/gst-plugins-bad/${VERSION}/opencv_haarcascades/fist.xml \ share/gst-plugins-bad/${VERSION}/opencv_haarcascades/palm.xml gst_opencv_PLIST_DIRSTRY= share/gst-plugins-bad/${VERSION}/opencv_haarcascades \ share/gst-plugins-bad/${VERSION} \ share/gst-plugins-bad # openjpeg gst_openjpeg_LIB_DEPENDS= libopenjpeg.so:${PORTSDIR}/graphics/openjpeg # opus gst_opus_LIB_DEPENDS= libopus.so:${PORTSDIR}/audio/opus # pango gst_pango_USE_GNOME= pango # pulse gst_pulse_LIB_DEPENDS= libpulse.so:${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 # rtmp xxx gst_rtmp_LIB_DEPENDS= librtmp.so.0:${PORTSDIR}/multimedia/librtmp # shout2 # keep the version to tell de difference between libshout and libshout2 gst_shout2_LIB_DEPENDS= libshout.so.5:${PORTSDIR}/audio/libshout2 # sidplay gst_sidplay_LIB_DEPENDS= libsidplay.so:${PORTSDIR}/audio/libsidplay gst_sidplay_PLIST_FILES= ${GST_LIB_DIR}/libgstsid.so \ ${GST_LIB_DIR}/libgstsid.la # soundtouch gst_soundtouch_LIB_DEPENDS= libSoundTouch.so:${PORTSDIR}/audio/soundtouch # souphttpsrc gst_soup_LIB_DEPENDS= libsoup-2.4.so:${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= libspandsp.so.2:${PORTSDIR}/comms/spandsp-devel # speex gst_speex_LIB_DEPENDS= libspeex.so:${PORTSDIR}/audio/speex # schroedinger or schro for short gst_schro_LIB_DEPENDS= libschroedinger-1.0.so:${PORTSDIR}/multimedia/schroedinger gst_schro_GST_PLUGIN_DIR= ext/schroedinger # taglib gst_taglib_LIB_DEPENDS= libtag.so:${PORTSDIR}/audio/taglib # theora gst_theora_LIB_DEPENDS= libtheora.so:${PORTSDIR}/multimedia/libtheora # twolame gst_twolame_LIB_DEPENDS= libtwolame.so:${PORTSDIR}/audio/twolame # gst_v4l2 gst_gst_v4l2_BUILD_DEPENDS= v4l_compat>0:${PORTSDIR}/multimedia/v4l_compat gst_gst_v4l2_LIB_DEPENDS= libv4l2.so:${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= libvorbis.so:${PORTSDIR}/audio/libvorbis # vpx gst_vpx_LIB_DEPENDS= libvpx.so:${PORTSDIR}/multimedia/libvpx gst_vpx_PLIST_FILES= ${GST_LIB_DIR}/libgstvpx.la \ ${GST_LIB_DIR}/libgstvpx.so \ share/gstreamer-${VERSION}/presets/GstVP8Enc.prs gst_vpx_PLIST_DIRSTRY= share/gstreamer-${VERSION}/presets \ share/gstreamer-${VERSION} # webp gst_webp_LIB_DEPENDS= libwebp.so:${PORTSDIR}/graphics/webp # 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= libx264.so:${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= libxvidcore.so:${PORTSDIR}/multimedia/xvid # wavpack gst_wavpack_LIB_DEPENDS= libwavpack.so:${PORTSDIR}/audio/wavpack # zbar gst_zbar_LIB_DEPENDS= libzbar.so:${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