1
0
mirror of https://git.FreeBSD.org/ports.git synced 2024-12-30 05:40:06 +00:00
freebsd-ports/math/sage/Makefile
Jan Beich 84e727457f multimedia/ffmpeg: update to 3.4
Notable changes:
- i386/amd64 now depend on NASM per https://git.ffmpeg.org/gitweb/ffmpeg.git/commitdiff/4f9297ac3b39
- NETCDF is now MYSOFA but the dependency doesn't exist in ports yet
- SCHROEDINGER is gone per https://git.ffmpeg.org/gitweb/ffmpeg.git/commitdiff/220b24c7c9
- DRM, LIBRSVG2, LIBXML2 are new options
- ABI isn't completely compatible: some structs have changed

Minor cleanup:
- Don't pass --disable-{in,out}dev when it's already blocked by disabled dependency
- Drop redundant "Enable" from option descriptions
- Switch CDIO_DESC to use Mk/bsd.options.desc.mk

Changes:	https://git.ffmpeg.org/gitweb/ffmpeg.git/blob/n3.4:/Changelog
ABI:		https://abi-laboratory.pro/tracker/timeline/ffmpeg/
PR:		223057
Exp-run by:	antoine
2017-10-21 06:50:49 +00:00

131 lines
4.0 KiB
Makefile

# Created by: Stephen Montgomery-Smith <stephen@FreeBSD.org>
# $FreeBSD$
PORTNAME= sage
PORTVERSION= 6.7
PORTREVISION= 2
CATEGORIES= math
MASTER_SITES= http://boxen.math.washington.edu/home/sagemath/sage-mirror/src/ \
http://mirrors.xmission.com/sage/src/ \
http://www-ftp.lip6.fr/pub/math/sagemath/src/ \
http://mirrors.mit.edu/sage/src/ \
http://www.sagemath.org/src-old/
PKGNAMESUFFIX= -math
MAINTAINER= stephen@FreeBSD.org
COMMENT= Open source Mathematics software
LICENSE= GPLv3
LICENSE_FILE= ${WRKSRC}/COPYING.txt
BUILD_DEPENDS= bash:shells/bash \
convert:graphics/ImageMagick \
ffmpeg:multimedia/ffmpeg \
automake:devel/automake \
autoconf:devel/autoconf
LIB_DEPENDS= libatlas.so:math/atlas \
liblapack.so:math/lapack
RUN_DEPENDS= bash:shells/bash
pre-extract:
@${ECHO_MSG}
@${ECHO_MSG} Instead of installing the port, which will take a considerable amount of
@${ECHO_MSG} extra time and space, you can instead type \"make build\". Then you can move
@${ECHO_MSG} work/${PORTNAME}-${PORTVERSION} to wherever you like, and run sage from there.
@${ECHO_MSG} However, there is no guarantee that this alternative will always work.
@sleep 10
PLIST_FILES= bin/sage
USE_TEX= latex:build
USES= gmake iconv jpeg tk perl5
# Optimization flags will be defined by the source
CFLAGS:= ${CFLAGS:C/^-O.*$//}
FFLAGS:= ${CFLAGS:C/^-O.*$//}
MAKE_ENV+= SAGE_PORT=yes \
SAGE_ATLAS_LIB=${LOCALBASE}/lib \
DOT_SAGE=${WRKSRC}/tmp/.sage \
SAGE_FAT_BINARY=yes \
PERL=${PERL}
# The following is needed for the lapack subpackage.
MAKE_ARGS+= ARCH="${AR}"
post-patch:
# Create wrapper for invocation of make.
@${MKDIR} ${WRKSRC}/local/bin
@${LN} -s -f ${LOCALBASE}/bin/gmake ${WRKSRC}/local/bin/make
# Create wrapper for invocation of ld.
@${SED} -e 's#%%LD%%#${LOCALBASE}/bin/ld#' \
${FILESDIR}/ld.in > ${WRKSRC}/local/bin/ld
@${CHMOD} +x ${WRKSRC}/local/bin/ld
post-build:
${RM} -r ${WRKSRC}/tmp/.sage
${CHMOD} -R a+rX ${WRKSRC}
check regression-test test: build
@${ECHO_MSG} This test can also be performed after installation by typing \"sage -testall\".
@${ECHO_MSG}
cd ${WRKSRC} && ${SETENV} DOT_SAGE=${WRKSRC}/tmp/.sage ./sage -testall
${RM} ${WRKSRC}/python*.core
# Don't build docs (because of mysterious race conditions).
ALL_TARGET= build
INSTALL_SAGE_DIR= ${PREFIX}/${PORTNAME}-${PORTVERSION}
STAGED_SAGE_DIR= ${STAGEDIR}${INSTALL_SAGE_DIR}
do-install:
cd ${WRKDIR} && ${FIND} -s ${WRKSRC} | \
${GREP} -v '^${WRKSRC}/upstream/' | \
${GREP} -v '^${WRKSRC}/tmp' | \
${SED} -e 's#${WRKDIR}/##' | \
${CPIO} -pmud -R ${BINOWN}:${BINGRP} ${STAGEDIR}${PREFIX}
${ECHO_CMD} | ${SETENV} DOT_SAGE=${STAGED_SAGE_DIR}/tmp/.sage ${STAGED_SAGE_DIR}/sage
${RM} -r ${STAGED_SAGE_DIR}/tmp/.sage
${SED} -e "s+#SAGE_ROOT.*+SAGE_ROOT=${INSTALL_SAGE_DIR}+" ${WRKSRC}/sage > ${STAGEDIR}${PREFIX}/bin/sage
${CHMOD} ${BINMODE} ${STAGEDIR}${PREFIX}/bin/sage
post-install:
@${FIND} -s ${STAGED_SAGE_DIR} -not -type d | \
${SED} -e 's#${STAGEDIR}${PREFIX}/##' >> ${TMPPLIST}
@${FIND} -s ${STAGED_SAGE_DIR} -type d -empty | \
${SED} -e 's#${STAGEDIR}${PREFIX}/#@dir #' >> ${TMPPLIST}
.include <bsd.port.pre.mk>
MAKE_ENV+= MAKE="${MAKE} -j${MAKE_JOBS_NUMBER}"
.ifdef MAINTAINER_MODE
test-fbsd-patches: patch
${RM} -r ${WRKSRC}/build/pkgs/*/src; \
for d in ${WRKSRC}/build/pkgs/*; do \
if ls $$d/fbsd-patch-* > /dev/null 2>&1; then \
${ECHO_MSG} Testing patches in $${d##*/}; \
b=$${d##*/}-`${CAT} $$d/package-version.txt | ${SED} 's/\.p.*//'`; \
c=${WRKSRC}/upstream/$$b.tar.bz2 ; \
if [ ! -e $$c ]; then \
c=${WRKSRC}/upstream/$$b.tar.gz ; \
if [ ! -e $$c ]; then \
${ECHO_MSG} Couldn\'t find $$c; \
exit 1; \
fi; \
fi; \
b=`echo $$b | sed 's/python/Python/'` ; \
if ! (cd $$d && tar xf $$c && ${MV} $$b src); then \
${ECHO_MSG} Unable to unarchive $$c; \
exit 1; \
fi; \
if ! (cd $$d && ${CAT} fbsd-patch-* | patch); then \
${ECHO_MSG} Patches in $${d##*/} failed; \
exit 1; \
fi; \
fi; \
done; \
${RM} -r ${WRKSRC}/build/pkgs/*/src
.endif
.include <bsd.port.post.mk>