summaryrefslogblamecommitdiffstats
path: root/multimedia/gstreamer-plugins80/Makefile.common
blob: b080a69004b3936066df4fa6592d257b07ca3c21 (plain) (tree)







































































































































                                                                                   


                                                                          



                                               


                                                


































                                                                           


                                             

























                                                         

                                                          

                                                          
                                        



































                                                                                      


                                                 








                                                       
                                                    




                                                    


                                                          













                                                         


                                              
























                                                                       


                                                  





                                                 
                    








                                                         
                                                  
                                                   

                                                    










                                                         


                                             




                                                 


                                             



















                                                               
                                                       

                                                      














                                                      


                                             










































                                                                 



                                                     








                                                   



                                             


                                                

                          
                                                        
                                                 

                                                










































                                                        


                                           






                                                      
                                                                                              
























                                                                                                                                                  
GST_ALL_PLUGINS= \
        a52dec \
        aalib \
        aalibtest \
        arts \
        artstest \
        artsc \
        audiofile \
        audioresample \
        cairo \
        cdaudio \
        cdio \
        cdparanoia \
        dirac \
        directfb \
        divx \
        dts \
        dvdnav \
        dvdread \
        dxr3 \
        esd \
        esdtest \
        faac \
        faad \
        flac \
        gconf \
        gdk_pixbuf \
        gnome_vfs \
        gsm \
        hermes \
        ivorbis \
        jack \
        jpeg \
        ladspa \
        lame \
        lcs \
        libcaca \
        libdv \
        libfame \
        libfametest\
        libmng \
        libmms \
        libpng \
        librfb \
        libvisual \
        mad \
        mikmod \
        libmikmodtest \
        mpeg2dec \
        mpeg2enc \
        mplex \
        musepack \
        musicbrainz \
        nas \
        ogg \
        oggtest \
        opengl \
        pango \
        polyp \
        dv1394 \
        qcam \
        raw1394 \
        sdl \
        sdltest \
        shout \
        shout2 \
        shout2test \
        sidplay \
        smoothwave \
        sndfile \
        speex \
        swfdec \
        theora \
        vcd \
        vorbis \
        vorbistest \
        wavpack \
        x264 \
        xvid

# Disable all plugins by default\
.for d in ${GST_ALL_PLUGINS}
CONFIGURE_ARGS+=    --disable-${d}
.endfor

CONFIGURE_ARGS+=--disable-tests \
        --disable-examples \
        --disable-amrnb \
        --disable-alsa \
        --disable-http \
        --enable-cdrom \
        --disable-gconf \
        --disable-gconftool \
        --disable-schemas-install \
        --enable-oss \
        --disable-osx_audio \
        --disable-osx_video \
        --disable-tarkin \
        --enable-static \
        --disable-sunaudio \
        --disable-gst_v4l \
        --disable-gst_v4l2 \
        --disable-xine \
        --enable-x \
        --enable-xshm \
        --enable-xvideo

# spc is broken a the moment
#.if (${ARCH} == "i386")
#BUILD_DEPENDS+=    nasm:${PORTSDIR}/devel/nasm
#CONFIGURE_ARGS+=--enable-spc
#PLIST_SUB+=    SPC=""
#.else
CONFIGURE_ARGS+=--disable-spc
PLIST_SUB+= SPC="@comment "
#.endif

.if ${GST_PLUGIN}!="base"

GST_PLUGIN_SUFFIX?= -${GST_PLUGIN}

COMMENT=    Gstreamer ${GST_PLUGIN} plugin

# Enable the right plugin

CONFIGURE_ARGS:=${CONFIGURE_ARGS:S|--disable-${GST_PLUGIN}|--enable-${GST_PLUGIN}|}

# Build/Install directory. defaults to ext/${GST_PLUGIN}
#   few plugins are in sys/
GST_PLUGIN_DIR?=    ext/${GST_PLUGIN}

#
GST_LIB_DIR=        lib/gstreamer-${VERSION}

# Auto create PLIST
PLIST=      ${NONEXISTENT}
PLIST_FILES?=   ${GST_LIB_DIR}/libgst${GST_PLUGIN}${GST_PLIST_SUFFIX}.so \
        ${GST_LIB_DIR}/libgst${GST_PLUGIN}${GST_PLIST_SUFFIX}.a \
        ${GST_LIB_DIR}/libgst${GST_PLUGIN}${GST_PLIST_SUFFIX}.la

# aalib
.if ${GST_PLUGIN}=="aalib"
LIB_DEPENDS+=   aa.1:${PORTSDIR}/graphics/aalib
PLIST_FILES=    ${GST_LIB_DIR}/libgstaasink.so \
        ${GST_LIB_DIR}/libgstaasink.a \
        ${GST_LIB_DIR}/libgstaasink.la
.endif

# artsd
.if ${GST_PLUGIN}=="artsd"
LIB_DEPENDS+=   artsc.0:${PORTSDIR}/audio/arts
GST_PLIST_SUFFIX=   sink
CONFIGURE_ARGS+=--enable-artsc
.endif

# cairo
.if ${GST_PLUGIN}=="cairo"
LIB_DEPENDS+=   cairo.2:${PORTSDIR}/graphics/cairo
.endif

# cdparanoia
.if ${GST_PLUGIN}=="cdparanoia"
LIB_DEPENDS+=   cdda_interface.0:${PORTSDIR}/audio/cdparanoia
.endif

# dirac
.if ${GST_PLUGIN}=="dirac"
LIB_DEPENDS+=   dirac_encoder.0:${PORTSDIR}/multimedia/dirac
.endif

# dts
.if ${GST_PLUGIN}=="dts"
BUILD_DEPENDS+= ${LOCALBASE}/lib/libdts_pic.a:${PORTSDIR}/multimedia/libdts
RUN_DEPENDS+=   ${LOCALBASE}/lib/libdts_pic.a:${PORTSDIR}/multimedia/libdts
GST_PLIST_SUFFIX=   dec
.endif

# esound
.if ${GST_PLUGIN}=="esound"
USE_GNOME+= esound
GST_PLUGIN_DIR= ext/esd
PLIST_FILES=    ${GST_LIB_DIR}/libgstesd.so \
        ${GST_LIB_DIR}/libgstesd.a \
        ${GST_LIB_DIR}/libgstesd.la
.endif

# faac
.if ${GST_PLUGIN}=="faac"
LIB_DEPENDS+=   faac.0:${PORTSDIR}/audio/faac
.endif

# faad
.if ${GST_PLUGIN}=="faad"
LIB_DEPENDS+=   faad.0:${PORTSDIR}/audio/faad
.endif

# flac
.if ${GST_PLUGIN}=="flac"
LIB_DEPENDS+=   FLAC.7:${PORTSDIR}/audio/flac
.endif

# gconf
.if ${GST_PLUGIN}=="gconf"
USE_GNOME+= gconf2
GST_PLUGIN_DIR= gst-libs/gst/gconf \
        ext/gconf \
        gconf
GCONF_SCHEMAS=  gstreamer-0.8.schemas

PLIST_FILES=    include/gstreamer-0.8/gst/gconf/gconf.h \
        lib/gstreamer-0.8/libgstgconfelements.a \
        lib/gstreamer-0.8/libgstgconfelements.la \
        lib/gstreamer-0.8/libgstgconfelements.so \
        lib/libgstgconf-0.8.a \
        lib/libgstgconf-0.8.la \
        lib/libgstgconf-0.8.so \
        lib/libgstgconf-0.8.so.1 \
        libdata/pkgconfig/gstreamer-gconf-0.8.pc \
        '@unexec rmdir %D/include/gstreamer-0.8/gst/gconf 2>/dev/null || true'
.endif

# gdkpixbuf
.if ${GST_PLUGIN}=="gdkpixbuf"
USE_GNOME+= gtk20
GST_PLUGIN_DIR= ext/gdk_pixbuf
.endif

# gnomevfs
.if ${GST_PLUGIN}=="gnomevfs"
USE_GNOME+= gnomevfs2
CONFIGURE_ARGS+=--enable-gnome_vfs
.endif

# gsm
.if ${GST_PLUGIN}=="gsm"
LIB_DEPENDS+=   gsm.1:${PORTSDIR}/audio/gsm
.endif

# jack
.if ${GST_PLUGIN}=="jack"
LIB_DEPENDS+=   jack.0:${PORTSDIR}/audio/jack
.endif

# libcdaudio
.if ${GST_PLUGIN}=="cdaudio"
LIB_DEPENDS+=   cdaudio.1:${PORTSDIR}/audio/libcdaudio
.endif

# libcdio
.if ${GST_PLUGIN}=="cdio"
LIB_DEPENDS+=   cdio.6:${PORTSDIR}/sysutils/libcdio
PLIST_FILES=    ${GST_LIB_DIR}/libgstcddasrc.so \
        ${GST_LIB_DIR}/libgstcddasrc.a \
        ${GST_LIB_DIR}/libgstcddasrc.la
.endif

# libvisual
.if ${GST_PLUGIN}=="libvisual"
LIB_DEPENDS+=   visual.0:${PORTSDIR}/graphics/libvisual
.endif

# musepack
.if ${GST_PLUGIN}=="musepack"
LIB_DEPENDS+=   mpcdec.4:${PORTSDIR}/audio/libmpcdec
.endif

# hermes
.if ${GST_PLUGIN}=="hermes"
LIB_DEPENDS+=   Hermes.1:${PORTSDIR}/graphics/Hermes
PLIST_FILES=    ${GST_LIB_DIR}/libgsthermescolorspace.so \
        ${GST_LIB_DIR}/libgsthermescolorspace.a \
        ${GST_LIB_DIR}/libgsthermescolorspace.la
.endif

# jpeg
.if ${GST_PLUGIN}=="jpeg"
LIB_DEPENDS+=   jpeg.9:${PORTSDIR}/graphics/jpeg
CONFLICTS+= gstreamer-plugins-jpeg-mmx-*
.endif

# jpeg-mmx
.if ${GST_PLUGIN}=="jpeg-mmx"
LIB_DEPENDS+=   jpeg-mmx.62:${PORTSDIR}/graphics/jpeg-mmx
CONFLICTS+= gstreamer-plugins-jpeg-*.*

GST_PLUGIN_DIR= ext/jpeg
PLIST_FILES=    ${GST_LIB_DIR}/libgstjpeg.so \
        ${GST_LIB_DIR}/libgstjpeg.a \
        ${GST_LIB_DIR}/libgstjpeg.la
.endif

# ladspa
.if ${GST_PLUGIN}=="ladspa"
BUILD_DEPENDS+= ${LOCALBASE}/include/ladspa.h:${PORTSDIR}/audio/ladspa
.endif

# lame
.if ${GST_PLUGIN}=="lame"
LIB_DEPENDS+=   mp3lame.0:${PORTSDIR}/audio/lame
.endif

# a52dec
.if ${GST_PLUGIN}=="a52dec"
LIB_DEPENDS+=   a52.0:${PORTSDIR}/audio/liba52
.endif

# audiofile
.if ${GST_PLUGIN}=="audiofile"
LIB_DEPENDS+=   audiofile.0:${PORTSDIR}/audio/libaudiofile
.endif

# libcaca
.if ${GST_PLUGIN}=="libcaca"
BUILD_DEPENDS+= ${LOCALBASE}/lib/libcaca.a:${PORTSDIR}/graphics/libcaca
PLIST_FILES=    ${GST_LIB_DIR}/libgstcacasink.so \
        ${GST_LIB_DIR}/libgstcacasink.a \
        ${GST_LIB_DIR}/libgstcacasink.la
.endif

# dv
.if ${GST_PLUGIN}=="dv"
LIB_DEPENDS+=   dv.4:${PORTSDIR}/multimedia/libdv
GST_PLIST_SUFFIX=   dec
EXTRA_LIBS= -ldv
.endif

# dvd (dvdnav dvdread)
.if ${GST_PLUGIN}=="dvd"
EXTRA_LIBS+=    -ldvdnav
LIB_DEPENDS+=   dvdnav.4:${PORTSDIR}/multimedia/libdvdnav
GST_PLUGIN_DIR= ext/dvdnav \
        ext/dvdread
PLIST_FILES=    ${GST_LIB_DIR}/libgstdvdnavsrc.so \
        ${GST_LIB_DIR}/libgstdvdnavsrc.a \
        ${GST_LIB_DIR}/libgstdvdnavsrc.la \
        ${GST_LIB_DIR}/libgstdvdreadsrc.a \
        ${GST_LIB_DIR}/libgstdvdreadsrc.la \
        ${GST_LIB_DIR}/libgstdvdreadsrc.so
.endif

# libfame
.if ${GST_PLUGIN}=="libfame"
LIB_DEPENDS+=   fame-0.9.1:${PORTSDIR}/multimedia/libfame
.endif

# libmms
.if ${GST_PLUGIN}=="libmms"
LIB_DEPENDS+=   mms.0:${PORTSDIR}/net/libmms
PLIST_FILES=    ${GST_LIB_DIR}/libgstmms.so \
        ${GST_LIB_DIR}/libgstmms.a \
        ${GST_LIB_DIR}/libgstmms.la
.endif

# libmng
.if ${GST_PLUGIN}=="libmng"
LIB_DEPENDS+=   mng.1:${PORTSDIR}/graphics/libmng
PLIST_FILES=    ${GST_LIB_DIR}/libgstmng.so \
        ${GST_LIB_DIR}/libgstmng.a \
        ${GST_LIB_DIR}/libgstmng.la
.endif

# mikmod
.if ${GST_PLUGIN}=="mikmod"
LIB_DEPENDS+=   mikmod.2:${PORTSDIR}/audio/libmikmod
.endif

# mpeg2dec
.if ${GST_PLUGIN}=="mpeg2dec"
LIB_DEPENDS+=   mpeg2.0:${PORTSDIR}/multimedia/libmpeg2
.endif

# mplex
.if ${GST_PLUGIN}=="mplex"
LIB_DEPENDS+=   lavjpeg-1.8.0:${PORTSDIR}/multimedia/mjpegtools
.endif

# musicbrainz
.if ${GST_PLUGIN}=="musicbrainz"
LIB_DEPENDS+=   musicbrainz.4:${PORTSDIR}/audio/libmusicbrainz
PLIST_FILES=    lib/gstreamer-${VERSION}/libgsttrm.so \
        lib/gstreamer-${VERSION}/libgsttrm.a \
        lib/gstreamer-${VERSION}/libgsttrm.la
.endif

# shout
.if ${GST_PLUGIN}=="shout"
LIB_DEPENDS+=   shout.2:${PORTSDIR}/audio/libshout
.endif

# shout2
.if ${GST_PLUGIN}=="shout2"
LIB_DEPENDS+=   shout.5:${PORTSDIR}/audio/libshout2
.endif

# sidplay
.if ${GST_PLUGIN}=="sidplay"
LIB_DEPENDS+=   sidplay.1:${PORTSDIR}/audio/libsidplay
PLIST_FILES=    ${GST_LIB_DIR}/libgstsid.so \
        ${GST_LIB_DIR}/libgstsid.a \
        ${GST_LIB_DIR}/libgstsid.la
.endif

# sndfile
.if ${GST_PLUGIN}=="sndfile"
LIB_DEPENDS+=   sndfile.1:${PORTSDIR}/audio/libsndfile
.endif

# theora
.if ${GST_PLUGIN}=="theora"
LIB_DEPENDS+=   theora.1:${PORTSDIR}/multimedia/libtheora
.endif

# mad
.if ${GST_PLUGIN}=="mad"
LIB_DEPENDS+=   mad.2:${PORTSDIR}/audio/libmad \
        id3tag.0:${PORTSDIR}/audio/libid3tag
.endif

# mpeg2enc
.if ${GST_PLUGIN}=="mpeg2enc"
USE_GSTREAMER+= mplex
LIB_DEPENDS+=   lavjpeg-1.8.0:${PORTSDIR}/multimedia/mjpegtools

# XXX - make sure CONFIGURE works with mpeg2enc even with "ccache
# c++" ... weird but necessary
CONFIGURE_ENV+= HAVE_CXX=yes
.endif

# nas
.if ${GST_PLUGIN}=="nas"
LIB_DEPENDS+=   audio.2:${PORTSDIR}/audio/nas
GST_PLIST_SUFFIX=   sink
.endif

# ogg
.if ${GST_PLUGIN}=="ogg"
LIB_DEPENDS+=   ogg.5:${PORTSDIR}/audio/libogg
.endif

# pango
.if ${GST_PLUGIN}=="pango"
USE_GNOME+= pango
PLIST_FILES=    ${GST_LIB_DIR}/libgsttextoverlay.so \
        ${GST_LIB_DIR}/libgsttextoverlay.a \
        ${GST_LIB_DIR}/libgsttextoverlay.la \
        ${GST_LIB_DIR}/libgsttimeoverlay.a \
        ${GST_LIB_DIR}/libgsttimeoverlay.la \
        ${GST_LIB_DIR}/libgsttimeoverlay.so
.endif

# libpng and the snapshot plugin
.if ${GST_PLUGIN}=="libpng"
LIB_DEPENDS+=   png.5:${PORTSDIR}/graphics/png
GST_PLUGIN_DIR= ext/libpng \
                ext/snapshot
PLIST_FILES=    ${GST_LIB_DIR}/libgstpng.so \
        ${GST_LIB_DIR}/libgstpng.a \
        ${GST_LIB_DIR}/libgstpng.la \
        ${GST_LIB_DIR}/libgstpng.a \
        ${GST_LIB_DIR}/libgstpng.la \
        ${GST_LIB_DIR}/libgstsnapshot.so
.endif

# poly
.if ${GST_PLUGIN}=="polyp"
LIB_DEPENDS+=   polyp-0.7.0:${PORTSDIR}/audio/polypaudio
PLIST_FILES=    ${GST_LIB_DIR}/libpolypaudio.so \
        ${GST_LIB_DIR}/libpolypaudio.a \
        ${GST_LIB_DIR}/libpolypaudio.la
GST_PLUGIN_DIR= ext/polyp
.endif

# sdl
.if ${GST_PLUGIN}=="sdl"
USE_SDL+=   sdl
GST_PLIST_SUFFIX=   videosink
.endif

# smoothwave
.if ${GST_PLUGIN}=="smoothwave"
USE_GNOME+= gtk20
.endif

# speex
.if ${GST_PLUGIN}=="speex"
LIB_DEPENDS+=   speex.3:${PORTSDIR}/audio/speex
.endif

# swfdec
.if ${GST_PLUGIN}=="swfdec"
LIB_DEPENDS+=   swfdec-0.3.0:${PORTSDIR}/graphics/swfdec
.endif

# vorbis
.if ${GST_PLUGIN}=="vorbis"
USE_GSTREAMER+= ogg
LIB_DEPENDS+=   vorbis.3:${PORTSDIR}/audio/libvorbis
.endif

# ivorbis
.if ${GST_PLUGIN}=="ivorbis"
LIB_DEPENDS+=   vorbisidec.1:${PORTSDIR}/audio/libtremor
.endif

# wavpack
.if ${GST_PLUGIN}=="wavpack"
LIB_DEPENDS+=   wavpack.0:${PORTSDIR}/audio/wavpack
.endif

# x264
.if ${GST_PLUGIN}=="x264"
LIB_DEPENDS+=   x264.1:${PORTSDIR}/multimedia/x264
PLIST_FILES=    ${GST_LIB_DIR}/libx264.so \
        ${GST_LIB_DIR}/libx264.a \
        ${GST_LIB_DIR}/libx264.la
.endif

# xvid
.if ${GST_PLUGIN}=="xvid"
LIB_DEPENDS+=   xvidcore.4:${PORTSDIR}/multimedia/xvid
.endif

LIB_DEPENDS+=   gstplay-${VERSION}.${SHLIB_VERSION}:${PORTSDIR}/multimedia/gstreamer-plugins80

PLIST_FILES+=   '@exec %D/bin/gst-register-${VERSION} --gst-registry=%D/share/gnome/cache/gstreamer-${VERSION}/registry.xml 2>/dev/null || true'
PLIST_FILES+=   '@unexec %D/bin/gst-register-${VERSION} --gst-registry=%D/share/gnome/cache/gstreamer-${VERSION}/registry.xml 2>/dev/null || true'

do-build:
.if ${GST_PLUGIN} == "gconf"
    @cd ${WRKSRC}/pkgconfig && ../config.status &
.endif
.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

do-install:
.for dir in ${GST_PLUGIN_DIR}
    @cd ${WRKSRC}/${dir}; ${SETENV} ${MAKE_ENV} ${GMAKE} ${MAKE_FLAGS} \
        ${MAKEFILE} ${MAKE_ARGS} ${INSTALL_TARGET}
.endfor
.if ${GST_PLUGIN} == "gconf"
    @cd ${WRKSRC}/pkgconfig && ${GMAKE} gstreamer-gconf-0.8.pc
    @${INSTALL_SCRIPT} ${WRKSRC}/pkgconfig/gstreamer-gconf-0.8.pc \
        ${PREFIX}/libdata/pkgconfig/gstreamer-gconf-0.8.pc
.endif

.endif