freebsd-ports/multimedia/ffmpeg-devel/Makefile
Doug Barton ffde46cbf9 Now that new style rc.d scripts are being run as part of the
base rcorder, hard coded variable values in these scripts
are overriding the values in /etc/rc.conf[.local] (due to
the way that variables from the latter are read at boot time).

Therefore, change the boot scripts to set default values only
if the variable is unset in /etc/rc.conf[.local]. This will
allow the service to start at boot time if it's been enabled
as the user would expect.

This change will be a noop for users who have systems that
have not yet been upgraded to the new rc.d code in the base.

In many cases there are other variables in the scripts that
should get similar treatment, however I did not change
anything other than the _enable lines. I'll leave the rest
up to the maintainers to do as they see fit.

Bump PORTREVISION to make sure that users and packages
pick up this change.
2006-01-07 06:29:57 +00:00

628 lines
15 KiB
Makefile

# New ports collection makefile for: ffmpeg cvs
# Date created: Sun May 1 20:46:59 UTC 2005
# Whom: Mario Sergio Fujikawa Ferreira <lioux@FreeBSD.org>
#
# $FreeBSD$
#
PORTNAME= ffmpeg
DISTVERSION= 0.4.9.cvs.${RELEASE_DATE}
PORTREVISION= 2
CATEGORIES= multimedia audio ipv6 net
MASTER_SITES= ${MASTER_SITE_LOCAL}
# http://mplayerhq.hu/MPlayer/cvs/
MASTER_SITE_SUBDIR= lioux
PKGNAMESUFFIX= -devel
DISTNAME= FFMpeg-${RELEASE_DATE}
MAINTAINER= lioux@FreeBSD.org
COMMENT= Hyper fast realtime audio/video encoder/converter, streaming server
HAS_CONFIGURE= yes
USE_BZIP2= yes
USE_GMAKE= yes
USE_REINPLACE= yes
WANT_SDL= yes
CONFIGURE_ARGS= --cc="${CC}" --prefix="${PREFIX}" \
--make="${GMAKE}" \
--disable-debug \
--enable-memalign-hack \
--enable-shared \
--source-path=${WRKSRC}
FFMPEG_CFLAGS= \
-I${WRKSRC}/libavcodec \
-I${WRKSRC}/libavcodec/i386 \
-I${WRKSRC}/libavformat \
-I${LOCALBASE}/include \
-I${X11BASE}/include \
-I. -I.. \
-L${LOCALBASE}/lib \
-L${X11BASE}/lib \
${CFLAGS}
FFMPEG_LDFLAGS= \
-L${WRKSRC}/libavcodec/libpostproc \
-L${WRKSRC}/libavcodec \
-L${WRKSRC}/libavformat \
-L${LOCALBASE}/lib \
-L${X11BASE}/lib \
${LDFLAGS} \
-lm \
-fpie \
-fPIE
PLIST_SUB= SHLIB_VERSION=${SHLIB_VERSION}
INSTALLS_SHLIB= yes
NO_LATEST_LINK= yes
CONFLICTS= ffmpeg-[0-9]*-*
RELEASE_DATE= 2005122600
SHLIB_VERSION= 1
MAN1= ffmpeg.1
##
DOC_FILES= COPYING Changelog README
# under subdir doc
DOC_DOCFILES= TODO faq.html ffmpeg-doc.html \
ffplay-doc.html ffserver-doc.html \
hooks.html optimization.txt
#
PORTDOCS= *
## headers
HEADER_FILES= libavcodec/avcodec.h \
libavcodec/dsputil.h \
libavutil/common.h
#
# libraries
LIB_FILES= libavcodec/libavcodec.a \
libavformat/libavformat.a \
libavutil/libavutil.a
.include <bsd.port.pre.mk>
.if ${ARCH} == "ia64" || ${ARCH} == "amd64"
BROKEN= "Does not compile on ${ARCH}"
.endif
##
## default options
##
GPLLIBS=yes
WITHOUT_LIBA52=yes
##
## support detection
##
.if !defined(WITHOUT_IPV6) && ${OSVERSION} >= 400014
WITH_IPV6= yes
.endif
##
## arch detection
##
.if ${ARCH} != "i386"
WITHOUT_MMX= yes
.else
#EXTRA_PATCHES+= ${FILESDIR}/extra-bktr-patch-libavformat::Makefile
.endif
## sse hardware vector support
.if (defined(MACHINE_CPU) && ${MACHINE_CPU:Msse} == "sse")
WITH_BUILTIN_VECTOR= yes
.endif
# sparc64 doest not like bktr
.if ${ARCH} == "sparc64"
CONFIGURE_ARGS+= --disable-bktr
.endif
##
## lib detection
##
## dts
.if exists(${LOCALBASE}/lib/libdts.a)
WITH_DTS=yes
.endif
## faac
.if exists(${LOCALBASE}/lib/libfaac.so)
WITH_FAAC=yes
.endif
## faad
.if exists(${LOCALBASE}/lib/libfaad.so)
WITH_FAAD=yes
.endif
## freetype2
.if exists(${LOCALBASE}/lib/libfreetype.so)
WITH_FREETYPE2=yes
.endif
## gsm
.if exists(${LOCALBASE}/lib/libgsm.so)
WITH_GSM=yes
.endif
## imlib2
.if exists(${LOCALBASE}/lib/libImlib2.so)
WITH_IMLIB2=yes
.endif
## lame mp3
.if exists(${LOCALBASE}/lib/libmp3lame.so)
WITH_MP3=yes
.endif
## ogg
.if exists(${LOCALBASE}/lib/libogg.so)
WITH_OGG=yes
.endif
## sdl
.if ${HAVE_SDL:Msdl}
WITH_SDL=yes
.endif
## theora
.if exists(${LOCALBASE}/lib/libtheora.so)
## XXX theora does not work for the time being
WITH_THEORA=yes
.endif
## vorbis
.if exists(${LOCALBASE}/lib/libvorbisenc.so)
WITH_VORBIS=yes
.endif
# x264
.if exists(${LOCALBASE}/lib/libx264.so)
WITH_X264=yes
.endif
# xvid
.if exists(${LOCALBASE}/lib/libxvidcore.so)
WITH_XVID=yes
.endif
##
## support activation
##
## PORTDOCS
.ifndef(NOPORTDOCS)
BUILD_DEPENDS+= texi2html:${PORTSDIR}/textproc/texi2html
.endif
## optimization
# breaks ffmpeg build if defined
FFMPEG_CFLAGS+= -fno-force-addr
.ifdef(WITH_OPTIMIZED_CFLAGS)
FFMPEG_CFLAGS+= -O3 -ffast-math -fomit-frame-pointer
. if ${OSVERSION} > 502124
FFMPEG_CFLAGS+= -fno-unit-at-a-time
. endif
.endif
## a52
.ifndef(WITHOUT_LIBA52)
LIB_DEPENDS+= a52.0:${PORTSDIR}/audio/liba52
CONFIGURE_ARGS+= --enable-a52 \
--enable-a52bin
# libavcodec needs it
FFMPEG_LDFLAGS+= -la52
.else
CONFIGURE_ARGS+= --enable-a52
.endif
## dts
.ifdef(WITH_DTS)
BUILD_DEPENDS+= ${LOCALBASE}/lib/libdts.a:${PORTSDIR}/multimedia/libdts
CONFIGURE_ARGS+= --enable-dts
.endif
## faac
.ifdef(WITH_FAAC)
LIB_DEPENDS+= faac.0:${PORTSDIR}/audio/faac
CONFIGURE_ARGS+= --enable-faac
.endif
## faad
.ifdef(WITH_FAAD)
LIB_DEPENDS+= faad.0:${PORTSDIR}/audio/faad
CONFIGURE_ARGS+= --enable-faad \
--enable-faadbin
.endif
## ffserver
.ifdef(WITHOUT_FFMPEG_FFSERVER)
CONFIGURE_ARGS+= --disable-ffserver
.else
USE_RC_SUBR= yes
MAN1+= ffserver.1
PLIST_FILES+= bin/ffserver \
etc/ffserver.conf.sample \
etc/rc.d/ffserver.sh
.endif
## gpl libs
.ifdef(GPLLIBS)
CONFIGURE_ARGS+= --enable-gpl
.endif
## disable mmx
.ifdef(WITHOUT_MMX)
CONFIGURE_ARGS+= --disable-mmx
WITHOUT_BUILTIN_VECTOR= yes
.endif
## gsm
.ifdef(WITH_GSM)
LIB_DEPENDS+= gsm.1:${PORTSDIR}/audio/gsm
CONFIGURE_ARGS+= --enable-libgsm
.endif
## mp3
.ifdef(WITH_MP3)
LIB_DEPENDS+= mp3lame.0:${PORTSDIR}/audio/lame
CONFIGURE_ARGS+= --enable-mp3lame
.endif
## ogg
.ifdef(WITH_OGG)
LIB_DEPENDS+= ogg.5:${PORTSDIR}/audio/libogg
CONFIGURE_ARGS+= --enable-libogg
.endif
## post processing
.ifndef(WITHOUT_POSTPROCESS)
CONFIGURE_ARGS+= --enable-pp \
--enable-shared-pp
LIB_FILES+= libavcodec/libpostproc/libpostproc.a
PLIST_DIRS+= include/ffmpeg/postproc
PLIST_FILES+= include/ffmpeg/postproc/postprocess.h \
lib/libpostproc.a \
lib/libpostproc.so \
lib/libpostproc.so.0 \
lib/libpostproc.so.%%SHLIB_VERSION%% \
libdata/pkgconfig/libpostproc.pc
.endif
## pthreads
.ifndef(WITHOUT_PTHREADS)
CONFIGURE_ARGS+= --enable-pthreads
.endif
## SDL
.ifdef(WITH_SDL)
USE_SDL= sdl
MAN1+= ffplay.1
PLIST_FILES+= bin/ffplay
.else
CONFIGURE_ARGS+= --disable-ffplay
.endif
## theora
.ifdef(WITH_THEORA)
LIB_DEPENDS+= theora.1:${PORTSDIR}/multimedia/libtheora
CONFIGURE_ARGS+= --enable-theora
.endif
## vorbis
.ifdef(WITH_VORBIS)
LIB_DEPENDS+= vorbisenc.2:${PORTSDIR}/audio/libvorbis
CONFIGURE_ARGS+= --enable-vorbis
FFMPEG_CFLAGS+= -I${LOCALBASE}/include/vorbis
.endif
# x264
.ifdef(WITH_X264)
LIB_DEPENDS+= x264.1:${PORTSDIR}/multimedia/x264
CONFIGURE_ARGS+= --enable-x264
.endif
## builtin vector, requires mmx
.if !defined(WITHOUT_BUILTIN_VECTOR) && defined(WITH_BUILTIN_VECTOR)
FFMPEG_CFLAGS+= -msse
.endif
## vhook
.ifndef(WITHOUT_VHOOK)
PLIST_DIRS+= lib/vhook
PLIST_FILES+= \
lib/vhook/fish.so \
lib/vhook/null.so \
lib/vhook/ppm.so \
lib/vhook/watermark.so
# enable freetype2
. ifdef(WITH_FREETYPE2)
LIB_DEPENDS+= freetype.9:${PORTSDIR}/print/freetype2
PLIST_FILES+= lib/vhook/drawtext.so
. endif # freetype2
# enable imlib2
. ifdef(WITH_IMLIB2)
LIB_DEPENDS+= Imlib2.3:${PORTSDIR}/graphics/imlib2
PLIST_FILES+= lib/vhook/imlib2.so
. else
WITHOUT_IMLIB2= yes
. endif # imlib2
.else
CONFIGURE_ARGS+= --disable-vhook
.endif ## WITHOUT_VHOOK
## xvid
.ifdef(WITH_XVID)
LIB_DEPENDS+= xvidcore.4:${PORTSDIR}/multimedia/xvid
CONFIGURE_ARGS+= --enable-xvid
.endif
###
### XXX - PLIST_DIRS come after PLIST entries so some aforementioned
### entries breaks PLIST
###
PLIST_DIRS+= include/ffmpeg
pre-everything::
.ifndef(WITHOUT_LIBA52)
@${ECHO_MSG} 'You can disable liba52 support by defining WITHOUT_LIBA52'
@${ECHO_MSG}
.endif
.if !defined(WITHOUT_BUILTIN_VECTOR) && !defined(WITH_BUILTIN_VECTOR)
@${ECHO_MSG} 'Define WITH_BUILTIN_VECTOR if your system supports SSE'
@${ECHO_MSG}
.endif
.ifndef(WITH_DTS)
@${ECHO_MSG} 'Define WITH_DTS to enable DTS codec'
@${ECHO_MSG}
.endif
.ifndef(WITH_FAAC)
@${ECHO_MSG} 'Define WITH_FAAC to enable FAAC codec'
@${ECHO_MSG}
.endif
.ifndef(WITH_FAAD)
@${ECHO_MSG} 'Define WITH_FAAD to enable FAAD codec'
@${ECHO_MSG}
.endif
.ifndef(WITHOUT_FFMPEG_FFSERVER)
@${ECHO_MSG} 'Define WITHOUT_FFMPEG_FFSERVER to disable ffserver build'
@${ECHO_MSG}
.endif
.ifndef(WITH_FREETYPE2)
@${ECHO_MSG} 'Define WITH_FREETYPE2 to enable VHOOK drawtext FREETYPE2 codec'
@${ECHO_MSG}
.endif
.ifndef(WITHOUT_IPV6)
@${ECHO_MSG} 'Define WITHOUT_IPV6 to disable IPV6 network support'
@${ECHO_MSG}
.endif
.ifndef(WITH_GSM)
@${ECHO_MSG} 'Define WITH_GSM to enable GSM codec'
@${ECHO_MSG}
.endif
.ifndef(WITHOUT_MMX)
@${ECHO_MSG} 'Define WITHOUT_MMX if your system does not support MMX'
@${ECHO_MSG}
.endif
.ifndef(WITH_MP3)
@${ECHO_MSG} 'Define WITH_MP3 to enable lame MP3 codec'
@${ECHO_MSG}
.endif
.ifndef(WITH_OGG)
@${ECHO_MSG} 'Define WITH_OGG to enable OGG codec'
@${ECHO_MSG}
.endif
.ifndef(WITH_OPTIMIZED_CFLAGS)
@${ECHO_MSG} 'You can enable additional compilation optimizations'
@${ECHO_MSG} 'by defining WITH_OPTIMIZED_CFLAGS'
@${ECHO_MSG}
.endif
.ifndef(WITHOUT_PTHREADS)
@${ECHO_MSG} 'Define WITHOUT_PTHREADS to disable threading support'
@${ECHO_MSG}
.endif
.ifndef(WITHOUT_POSTPROCESS)
@${ECHO_MSG} 'You can disable post process support by defining'
@${ECHO_MSG} 'WITHOUT_POSTPROCESS'
@${ECHO_MSG} 'Beware that this might break some ports that require it'
@${ECHO_MSG}
.endif
.ifndef(WITH_SDL)
@${ECHO_MSG} 'Define WITH_SDL to enable ffplay SDL version'
@${ECHO_MSG}
.endif
.ifndef(WITH_THEORA)
@${ECHO_MSG} 'Define WITH_THEORA to enable THEORA codec'
@${ECHO_MSG}
.endif
.ifndef(WITHOUT_VHOOK)
@${ECHO_MSG} 'You can disable vhook support by defining WITHOUT_VHOOK'
@${ECHO_MSG}
.endif
.ifndef(WITH_VORBIS)
@${ECHO_MSG} 'Define WITH_VORBIS to enable libvorbisenc VORBIS codec'
@${ECHO_MSG}
.endif
.ifndef(WITH_X264)
@${ECHO_MSG} 'Define WITH_VORBIS to enable X264 codec'
@${ECHO_MSG}
.endif
.ifndef(WITH_XVID)
@${ECHO_MSG} 'Define WITH_VORBIS to enable XVID codec'
@${ECHO_MSG}
.endif
.if ${ARCH} == "i386"
. ifndef(WITH_VIDEO_CAPTURE)
@${ECHO_MSG} 'Define WITH_VIDEO_CAPTURE to enable bktr(4) driver'
@${ECHO_MSG} 'video capture'
@${ECHO_MSG}
. else
.if !(defined(WITH_BKTR_FORMAT) && defined(WITH_BKTR_DEV))
@${ECHO_MSG}
@${ECHO_MSG} 'If you want to capture from a bktr(4) supported card'
@${ECHO_MSG} 'you will probably need to set the input device and format'
@${ECHO_MSG} 'You can set WITH_BKTR_FORMAT to NTSC or PAL and you can set'
@${ECHO_MSG} 'WITH_BKTR_DEV to 0, 1, 2 or 3 (1 is usually the tuner)'
@${ECHO_MSG} 'so for a PAL tuner make WITH_BKTR_FORMAT=PAL WITH_BKTR_DEV=1'
@${ECHO_MSG}
@${ECHO_MSG} 'Warning: invalid settings will probably dump cores'
@${ECHO_MSG}
.endif
. endif # WITH_VIDEO_CAPTURE
.endif # ${ARCH} == i386
post-extract:
.if ${ARCH} == "i386"
# install booktree extension
# @${CP} ${FILESDIR}/grab_bsdbktr.c ${WRKSRC}/libavformat/
.endif # ${ARCH} == i386
post-patch:
# {C,LD}FLAGS safeness
@${FIND} ${WRKDIR} -type f -name "Makefile" -print0 | \
${XARGS} -0 -n 5 -x \
${REINPLACE_CMD} -E \
-e 's@^(CFLAGS.+)$$@\1 ${FFMPEG_CFLAGS}@' \
-e 's@^(FFLIBS|LDFLAGS)(.+)$$@\1\2 ${FFMPEG_LDFLAGS}@'
# fix x264 math, use correct log base 2 from math(3)
@${REINPLACE_CMD} -E \
-e 's| log2| log|' \
${WRKSRC}/libavcodec/x264.c
@${REINPLACE_CMD} -E \
-e "s|(EXTRALIBS[[:space:]]*=)|\1-L${LOCALBASE}/lib |g" \
${CONFIGURE_WRKSRC}/${CONFIGURE_SCRIPT}
# force detection of texi2html
.ifndef(NOPORTDOCS)
@${REINPLACE_CMD} -E \
-e 's|^(texi2html=)no|\1yes|' \
${CONFIGURE_WRKSRC}/${CONFIGURE_SCRIPT}
.endif
.if ${ARCH} == "i386"
.ifdef(WITH_VIDEO_CAPTURE)
# set proper audio device
.ifdef(WITH_AUDIO_DEV)
@${REINPLACE_CMD} -E \
-e 's!/dev/dsp!${WITH_AUDIO_DEV:Q}!' \
${WRKSRC}/libavformat/audio.c
.endif
.ifdef(WITH_BKTR_DEV)
@${REINPLACE_CMD} -E \
-e "s!idev = 0!idev = ${WITH_BKTR_DEV}!" \
${WRKSRC}/libavformat/grab_bsdbktr.c
.endif
.ifdef(WITH_BKTR_FORMAT)
@${REINPLACE_CMD} -E \
-e "s!VIDEO_FORMAT NTSC!VIDEO_FORMAT ${WITH_BKTR_FORMAT}!" \
${WRKSRC}/libavformat/grab_bsdbktr.c
.endif
.endif # WITH_VIDEO_CAPTURE
.endif # ${ARCH} == i386
# malloc.h was deprecated in favor of stdlib.h
# do not shadow fprintf(3) with bogus statement
@${FIND} ${WRKSRC} -type f -print0 | \
${XARGS} -0 -n 5 -x ${REINPLACE_CMD} -E \
-e 's|malloc\.h|stdlib\.h|' \
-e 's|^.*please_use_av_log.*$$||'
.ifndef(WITHOUT_LIBA52)
@${REINPLACE_CMD} -e 's|-ldl||' \
${CONFIGURE_WRKSRC}/${CONFIGURE_SCRIPT}
@${REINPLACE_CMD} -E \
-e 's|../(avcodec.h)|\1|' \
${WRKSRC}/libavcodec/liba52/a52.h
.endif
.ifndef(WITHOUT_FFMPEG_FFSERVER)
@${SED} -e 's|%%PREFIX%%|${PREFIX}|; s|%%RC_SUBR%%|${RC_SUBR}|' \
${FILESDIR}/ffserver.sh >${WRKDIR}/ffserver.sh
@${REINPLACE_CMD} -e "s!/etc/ffserver.conf!${PREFIX}/etc/ffserver.conf!g" \
${WRKSRC}/ffserver.c ${WRKSRC}/doc/ffserver-doc.texi
@${REINPLACE_CMD} -e 's!NoDaemon!# NoDaemon!g' \
${WRKSRC}/doc/ffserver.conf
.endif
.if defined(WITH_IMLIB2) && !defined(WITHOUT_IMLIB2)
@${REINPLACE_CMD} -E \
-e 's|^(imlib2).*$$|\1=yes|' \
${CONFIGURE_WRKSRC}/${CONFIGURE_SCRIPT}
@${REINPLACE_CMD} -E \
-e 's|(-lImlib2)|-L ${LOCALBASE}/lib \1|' \
${WRKSRC}/vhook/Makefile
.endif
.if defined(WITH_IPV6) && ${OSVERSION} >= 400014
@${REINPLACE_CMD} -E \
-e 's|^(ipv6).*$$|\1=yes|' \
${CONFIGURE_WRKSRC}/${CONFIGURE_SCRIPT}
.endif
.ifdef(WITH_SDL)
@${REINPLACE_CMD} -E \
-e 's|sdl-config|${SDL_CONFIG}|g' \
${CONFIGURE_WRKSRC}/${CONFIGURE_SCRIPT}
@${FIND} ${WRKSRC} -type f | \
${XARGS} -n 10 ${REINPLACE_CMD} -E \
-e 's|#include <SDL|#include <SDL11/SDL|'
.endif
.ifndef(WITHOUT_POSTPROCESS)
@${LN} -sf libpostproc.so \
${WRKSRC}/libavcodec/libpostproc/libpostproc.so.${SHLIB_VERSION}
.endif
.if !defined(WITHOUT_BUILTIN_VECTOR) && defined(WITH_BUILTIN_VECTOR)
@${REINPLACE_CMD} -E \
-e 's|^([[:space:]]+builtin_vector).*$$|\1=yes|' \
${CONFIGURE_WRKSRC}/${CONFIGURE_SCRIPT}
.else
@${REINPLACE_CMD} -E \
-e 's|^([[:space:]]+builtin_vector).*$$|\1=no|' \
${CONFIGURE_WRKSRC}/${CONFIGURE_SCRIPT}
.endif
post-configure:
# FreeBSD 5.4-STABLE and later have lrintf()
.if ${OSVERSION} >= 504100
@${ECHO_CMD} '#define HAVE_LRINTF' >> ${WRKSRC}/config.h
.endif
.ifdef(WITH_DTS)
@${REINPLACE_CMD} -E \
-e 's|-ldts|${LOCALBASE}/lib/libdts.a|' \
-e 's|(-lx264)|-L${LOCALBASE}/lib \1|' \
${WRKSRC}/config.mak \
${WRKSRC}/libavcodec/Makefile
.endif
.ifndef(WITH_THEORA)
@${REINPLACE_CMD} -E \
-e 's|^(CONFIG_LIBTHEORA).*$$|\1=no|' \
${WRKSRC}/config.mak
.endif
# shared libraries PIC
@${REINPLACE_CMD} -E \
-e 's|^(PIC[[:space:]]*=.*)$$|\1 -fpic -fPIC -DPIC|' \
${WRKSRC}/config.mak
post-install:
.ifndef(NOPORTDOCS)
@${MKDIR} ${DOCSDIR}
.for file in ${DOC_FILES}
@${INSTALL_DATA} ${WRKSRC}/${file} ${DOCSDIR}
.endfor
.for file in ${DOC_DOCFILES}
@${INSTALL_DATA} ${WRKSRC}/doc/${file} ${DOCSDIR}
.endfor
.endif
.ifndef(WITHOUT_FFMPEG_FFSERVER)
@${INSTALL_DATA} ${WRKSRC}/doc/ffserver.conf \
${PREFIX}/etc/ffserver.conf.sample
@${INSTALL_SCRIPT} ${WRKDIR}/ffserver.sh ${PREFIX}/etc/rc.d
.endif
.for file in ${HEADER_FILES}
# fix header references prior to installation
@${REINPLACE_CMD} -e 's|"common.h"|<ffmpeg/common.h>|; \
s|"avcodec.h"|<ffmpeg/avcodec.h>|' \
${WRKSRC}/${file}
@${INSTALL_DATA} ${WRKSRC}/${file} \
${PREFIX}/include/ffmpeg/${file:T}
# change headers back so reinstall target works
@${REINPLACE_CMD} -e 's|<ffmpeg/common.h>|"common.h"|; \
s|<ffmpeg/avcodec.h>|"avcodec.h"|' \
${WRKSRC}/${file}
.endfor
.for file in ${LIB_FILES}
@${INSTALL_DATA} ${WRKSRC}/${file} ${PREFIX}/lib/${file:T}
@${LN} -sf ${file:T:R}.so \
${PREFIX}/lib/${file:T:R}.so.${SHLIB_VERSION}
.endfor
.ifndef(WITHOUT_POSTPROCESS)
# XXX - libavcodec.so needs libpostproc.so but looks for libpostproc.so.0
# existence instead of libpostproc.so.${SHLIB_VERSION}
@${LN} -sf libpostproc.so \
${PREFIX}/lib/libpostproc.so.0
.endif
.include <bsd.port.post.mk>