freebsd-ports/multimedia/transcode/Makefile
Kubilay Kocak 9b08af5e1a multimedia/{lib}x264: Update to 0.144.2533 and major refactor
- Update to 0.144.2533 (from upstream stable branch) [1]
- Switch x264 and libx264 ports to master/slave ports respectively
- Bump PORTREVISION for dependent ports as the shared library version
  has changed.

multimedia/x264:

- Clean up and update "updating instructions" in Makefile header
- Tweak COMMENT
- Only LIB_DEPENDS on libx264 and add PLIST_FILES if this isn't the
  libx264 port.
- Allow COMMENT, USES, OPTIONS_*, CONFIGURE_ARGS to be overriden in
  libx264 port.
- Place common configure arguments in a CONFIGURE_COMMON_ARGS variable
  to make overriding values without duplication easier.
- Use --prefix configure argument over post-patch replacements
- Enable stripping of binaries and libraries if DEBUG is off. Remove
  post-install target STRIP_CMD accordingly.

- Delete patch-Makefile in favour of patching WRKSRC/configure to
  identify amd64, arm64 and mipsn32. powerpc and powerpc64 are now
  covered upstream without needing patches.

- Patch out a bogus compiler argument check (cc_check) that results
  in -Wno-maybe-uninitialized being added to CFLAGS causing causes
  warnings when clang is cc. The cc_check function checks for basename
  $CC to identify compiler type (icl, clang, gcc, etc).

multimedia/libx264:

- Remove all Makefile entries that are duplicated or common and found
  in the master port (x264).
- Set lib as the PKGNAMEPREFIX
- Tweak COMMENT
- Delete upstreamed ARM patches [1]
- Delete all but one patch, as they duplicate those in x264.
- Dont remove pkgconfig/libdata directory

Changes:

  https://git.videolan.org/?p=x264.git;a=shortlog;h=refs/heads/stable

Based on:

PR:		201260 [1]
Submitted by:	Andrey Cherkashin <andoriyu gmail com> [1]
2015-07-03 07:02:44 +00:00

161 lines
5 KiB
Makefile

# Created by: Hendrik Scholz <hendrik@scholz.net>
# $FreeBSD$
PORTNAME= transcode
PORTVERSION= 1.1.7
PORTREVISION= 23
CATEGORIES= multimedia
MASTER_SITES= http://cdn.bitbucket.org/france/transcode-tcforge/downloads/
MAINTAINER= cyberbotx@cyberbotx.com
COMMENT= Text-console utility for video stream processing
LICENSE= GPLv2
LIB_DEPENDS= libavcodec.so:${PORTSDIR}/multimedia/ffmpeg
USE_LDCONFIG= yes
USES= gmake libtool pkgconfig tar:bzip2
USE_GCC= any
WANT_SDL= yes
WANT_GNOME= yes
GNU_CONFIGURE= yes
CONFIGURE_ARGS= --enable-oss
CPPFLAGS+= -I${LOCALBASE}/include
LDFLAGS+= -L${LOCALBASE}/lib
INSTALL_TARGET= install-strip
NO_OPTIONS_SORT= yes
OPTIONS_DEFINE= DOCS OPTIMIZED_CFLAGS X11 MPEG2 BKTR POSTPROC FREETYPE LAME \
XVID X264 OGG VORBIS THEORA DVDREAD DV QUICKTIME LZO A52 \
FAAC LIBXML2 MJPEGTOOLS SDL IMAGEMAGICK JPEG ICONV V4L
OPTIONS_DEFAULT= LAME DVDREAD JPEG ICONV
BKTR_DESC= Bktr capture card support
POSTPROC_DESC= Libpostproc support
DVDREAD_DESC= Libdvdread support
LZO_DESC= LZO compression support
X11_USE= xorg=xv,xaw,xpm
X11_CONFIGURE_WITH= x
MPEG2_LIB_DEPENDS= libmpeg2.so:${PORTSDIR}/multimedia/libmpeg2
MPEG2_CONFIGURE_ENABLE= libmpeg2 libmpeg2convert
BKTR_CONFIGURE_ENABLE= bktr
POSTPROC_CONFIGURE_ENABLE= libpostproc
FREETYPE_LIB_DEPENDS= libfreetype.so:${PORTSDIR}/print/freetype2
FREETYPE_CONFIGURE_ENABLE= freetype2
LAME_LIB_DEPENDS= libmp3lame.so:${PORTSDIR}/audio/lame
LAME_CONFIGURE_ENABLE= lame
LAME_CONFIGURE_ON= --with-lame-prefix=${LOCALBASE}
XVID_LIB_DEPENDS= libxvidcore.so:${PORTSDIR}/multimedia/xvid
XVID_CONFIGURE_ENABLE= xvid
XVID_CONFIGURE_ON= --with-xvid-prefix=${LOCALBASE}
X264_LIB_DEPENDS= libx264.so:${PORTSDIR}/multimedia/libx264
X264_CONFIGURE_ENABLE= x264
OGG_LIB_DEPENDS= libogg.so:${PORTSDIR}/audio/libogg
OGG_CONFIGURE_ENABLE= ogg
VORBIS_LIB_DEPENDS= libvorbis.so:${PORTSDIR}/audio/libvorbis
VORBIS_CONFIGURE_ENABLE= vorbis
THEORA_LIB_DEPENDS= libtheora.so:${PORTSDIR}/multimedia/libtheora
THEORA_CONFIGURE_ENABLE= theora
DVDREAD_LIB_DEPENDS= libdvdread.so:${PORTSDIR}/multimedia/libdvdread
DVDREAD_CONFIGURE_ENABLE= libdvdread
DVDREAD_CONFIGURE_ON= --with-libdvdread-prefix=${LOCALBASE}
DV_LIB_DEPENDS= libdv.so:${PORTSDIR}/multimedia/libdv
DV_CONFIGURE_ENABLE= libdv
QUICKTIME_LIB_DEPENDS= libquicktime.so:${PORTSDIR}/multimedia/libquicktime
QUICKTIME_CONFIGURE_ENABLE= libquicktime
LZO_LIB_DEPENDS= liblzo2.so:${PORTSDIR}/archivers/lzo2
LZO_CONFIGURE_ENABLE= lzo
LZO_CONFIGURE_ON= --with-lzo-prefix=${LOCALBASE} --with-lzo-includes=${LOCALBASE}
A52_LIB_DEPENDS= liba52.so:${PORTSDIR}/audio/liba52
A52_CONFIGURE_ENABLE= a52
A52_CONFIGURE_ON= --with-a52-prefix=${LOCALBASE}
FAAC_LIB_DEPENDS= libfaac.so:${PORTSDIR}/audio/faac
FAAC_CONFIGURE_ENABLE= faac
FAAC_CONFIGURE_ON= --with-faac-prefix=${LOCALBASE}
LIBXML2_USE= GNOME=libxml2
LIBXML2_CONFIGURE_ENABLE= libxml2
MJPEGTOOLS_LIB_DEPENDS= liblavjpeg.so:${PORTSDIR}/multimedia/mjpegtools
MJPEGTOOLS_CONFIGURE_ENABLE= mjpegtools
SDL_USE= SDL=sdl
SDL_CONFIGURE_ENABLE= sdl
SDL_CONFIGURE_ENV_ON= SDL_CONFIG="${SDL_CONFIG}"
IMAGEMAGICK_LIB_DEPENDS= libMagickWand-6.so:${PORTSDIR}/graphics/ImageMagick
IMAGEMAGICK_CONFIGURE_ENABLE= imagemagick
IMAGEMAGICK_CONFIGURE_ON= --with-imagemagick-prefix=${LOCALBASE}
JPEG_USES= jpeg
JPEG_CONFIGURE_ENABLE= libjpeg
JPEG_CONFIGURE_ON= --with-libjpeg-prefix=${LOCALBASE}
ICONV_USES= iconv
ICONV_CONFIGURE_ENABLE= iconv
ICONV_CONFIGURE_ON= --with-iconv-prefix=${ICONV_PREFIX}
V4L_BUILD_DEPENDS= ${LOCALBASE}/include/linux/videodev2.h:${PORTSDIR}/multimedia/v4l_compat
V4L_CONFIGURE_ENABLE= v4l
.include <bsd.port.pre.mk>
.if empty(ICONV_LIB)
CONFIGURE_ARGS+=ac_cv_lib_iconv_iconv_open=no \
ac_cv_lib_iconv_libiconv_open=no
.endif
post-extract:
@${RM} ${WRKSRC}/import/v4l/videodev*
post-patch:
.if ${PORT_OPTIONS:MLZO}
@${REINPLACE_CMD} -e 's|%%NUV%%|nuv|' ${WRKSRC}/import/Makefile.in
.else
@${REINPLACE_CMD} -e 's|%%NUV%%||' ${WRKSRC}/import/Makefile.in
.endif
.if !${PORT_OPTIONS:MOPTIMIZED_CFLAGS}
@${FIND} ${WRKSRC} -type f | ${XARGS} -n 10 -x ${REINPLACE_CMD} \
-e 's|-O[236]|${CFLAGS}|'
.endif
@${REINPLACE_CMD} -E -e 's|loff_t|uint64_t|' ${WRKSRC}/avilib/avidump.c
@${REINPLACE_CMD} -E -e 's|<SDL/|<|' ${WRKSRC}/filter/preview/display.h
@${REINPLACE_CMD} -e '/^static.*lrint/s|static ||' ${WRKSRC}/filter/filter_modfps.c
@${REINPLACE_CMD} -E -e 's|(-la52)|\1 ${LIBA52_DEP_LIBS}|g ; \
s|FFMPEG_VERSION|LIBAVCODEC_IDENT|g ; \
s|-lMagick|-lMagickCore|g' \
${CONFIGURE_WRKSRC}/${CONFIGURE_SCRIPT}
@${REINPLACE_CMD} -E -e 's|-ldl||g' ${WRKSRC}/configure
@${REINPLACE_CMD} -E -e 's|%%LOCALBASE%%|${LOCALBASE}|g' ${WRKSRC}/configure
@${REINPLACE_CMD} -E -e 's|WRKSRC|${WRKSRC}|g' ${WRKSRC}/export/Makefile.in
@${REINPLACE_CMD} -E -e 's|<quicktime/|<lqt/|g' \
${WRKSRC}/configure \
${WRKSRC}/export/export_mov.c \
${WRKSRC}/import/decode_mov.c \
${WRKSRC}/import/import_mov.c \
${WRKSRC}/import/probe_mov.c
post-stage:
@(cd ${STAGEDIR}${PREFIX} && \
${FIND} -s lib/transcode -type f -or -type l >> ${TMPPLIST})
.include <bsd.port.post.mk>