198 lines
6.7 KiB
Makefile
198 lines
6.7 KiB
Makefile
# $NetBSD: Makefile,v 1.229 2021/12/08 16:05:31 adam Exp $
|
|
|
|
#
|
|
# If updating this package, please try to ensure PLIST.Darwin is kept in sync
|
|
# to avoid unnecessarily breaking macOS users.
|
|
#
|
|
DISTNAME= R-4.1.2
|
|
PKGREVISION= 1
|
|
CATEGORIES= math
|
|
MASTER_SITES= ${MASTER_SITE_R_CRAN:=base/R-4/}
|
|
|
|
MAINTAINER= pkgsrc-users@NetBSD.org
|
|
HOMEPAGE= https://www.R-project.org/
|
|
COMMENT= Statistical language for data analysis and graphics
|
|
LICENSE= gnu-gpl-v2
|
|
|
|
USE_GCC_RUNTIME= yes
|
|
|
|
BUILD_TARGET= all info
|
|
INSTALL_TARGET= install install-info
|
|
TEST_TARGET= check
|
|
USE_LANGUAGES= c c++ fortran
|
|
USE_LIBTOOL= yes
|
|
USE_TOOLS+= aclocal autoconf autoreconf automake gmake gzip:run
|
|
USE_TOOLS+= makeinfo perl:run pkg-config sed unzip:run
|
|
TEXINFO_REQD= 5.1
|
|
INFO_FILES= yes
|
|
|
|
PTHREAD_AUTO_VARS= yes
|
|
|
|
GNU_CONFIGURE= yes
|
|
GNU_CONFIGURE_ICONV= no
|
|
CONFIGURE_ARGS+= --enable-R-shlib
|
|
CONFIGURE_ARGS+= --with-readline
|
|
CONFIGURE_ARGS+= --with-tcltk
|
|
CONFIGURE_ARGS+= --with-tcl-config=${BUILDLINK_PREFIX.tcl}/lib/tclConfig.sh
|
|
CONFIGURE_ARGS+= --with-tk-config=${BUILDLINK_PREFIX.tk}/lib/tkConfig.sh
|
|
|
|
.include "../../mk/bsd.prefs.mk"
|
|
.if ${OPSYS} == "NetBSD" || ${OPSYS} == "FreeBSD"
|
|
CONFIGURE_ARGS+= --enable-long-double=no
|
|
.endif
|
|
|
|
.if ${OPSYS} != "Linux"
|
|
USE_GNU_ICONV= yes # latin1 support, iconvlist
|
|
.endif
|
|
|
|
PLIST_VARS+= x11
|
|
|
|
# Disable Mac OS specific support used by R.app
|
|
.if ${OPSYS} == "Darwin"
|
|
CONFIGURE_ARGS+= --disable-R-framework
|
|
CONFIGURE_ARGS+= --with-aqua
|
|
CONFIGURE_ARGS+= --without-x
|
|
.else
|
|
USE_TOOLS+= xmkmf
|
|
CONFIGURE_ARGS+= --with-x
|
|
PLIST.x11= yes
|
|
.endif
|
|
|
|
# Think about making this consistent with Numpy, using a full
|
|
# BLAS/LAPACK by default and only on request accelerate. Just
|
|
# BLAS_ACCEPTED= ${_BLAS_TYPES} accelerate.framework
|
|
# (here and in buildlink3.mk) and deleting the first conditional
|
|
# branch might work, given that R knows what todo with
|
|
# -framework Accelerate. Someone on Darwin really needs to test.
|
|
.if exists(/System/Library/Frameworks/Accelerate.framework)
|
|
CONFIGURE_ARGS+= --with-blas="-framework Accelerate"
|
|
CONFIGURE_ARGS+= --with-lapack # contained in the above
|
|
.else
|
|
# Could be two distinct libraries. Note that, at least int the past,
|
|
# R folks were not fond of linking external lapack.
|
|
CONFIGURE_ARGS+= --disable-BLAS-shlib
|
|
CONFIGURE_ARGS+= --with-blas=${BLAS_LIBS:Q}
|
|
CONFIGURE_ARGS+= --with-lapack=${LAPACK_LIBS:Q}
|
|
.endif
|
|
|
|
# Work around missing MAIN__() definition used in -lF77 by AC_CHECK_LIB.
|
|
# and other failures due to not linking to support libs during testing
|
|
CONFIGURE_ENV+= ac_cv_lib_blas_dgemm=yes
|
|
CONFIGURE_ENV+= ac_cv_lib_blas_dgemm_=yes
|
|
CONFIGURE_ENV+= r_cv_complete_blas=yes
|
|
|
|
# Broken test for bzlib >= 1.0.5 in R 2.7.0
|
|
CONFIGURE_ENV+= r_cv_have_bzlib=yes
|
|
# Override zlib 1.2.5 requirement
|
|
CONFIGURE_ENV+= r_cv_header_zlib_h=yes
|
|
|
|
CONFIGURE_ENV+= GETWD=${TOOLS_PWD_CMD}
|
|
CONFIGURE_ENV+= lt_cv_path_LD=${LD:Q}
|
|
CONFIGURE_ENV+= lt_cv_path_SED=${TOOLS_SED}
|
|
CONFIGURE_ENV+= ac_cv_path_R_GZIPCMD=${TOOLS_GZIP_CMD}
|
|
CONFIGURE_ENV+= ac_cv_path_R_UNZIPCMD=${TOOLS_PATH.unzip}
|
|
CONFIGURE_ENV+= r_cv_prog_f77_flag_mieee=no
|
|
CONFIGURE_ENV+= ac_cv_path_PDFLATEX=""
|
|
|
|
# We don't want "lib64"
|
|
CONFIGURE_ENV+= LIBnn=lib
|
|
|
|
# Package assumes it can append to files (specifically DESCRIPTION) that have
|
|
# been installed SHAREMODE
|
|
SHAREMODE= 644
|
|
|
|
CONFIGURE_ARGS.Darwin+= --disable-openmp
|
|
|
|
# R_PAPERSIZE can be: A4, Letter, Legal, Executive
|
|
.if defined(PAPERSIZE)
|
|
R_PAPERSIZE?= ${PAPERSIZE}
|
|
.else
|
|
R_PAPERSIZE?= A4
|
|
.endif
|
|
.if (${R_PAPERSIZE} == "Letterdj")
|
|
R_PAPERSIZE= Letter
|
|
.endif
|
|
CONFIGURE_ENV+= R_PAPERSIZE=${R_PAPERSIZE:Q}
|
|
|
|
# These macros are used during the build, so strip off the -o,-g flags.
|
|
INSTALL_DATA= ${INSTALL} ${COPY} -m ${SHAREMODE}
|
|
INSTALL_SCRIPT= ${INSTALL} ${COPY} -m ${BINMODE}
|
|
|
|
## to build NEWS.pdf
|
|
#BUILD_DEPENDS+= tex-latex-bin-[0-9]*:../../print/tex-latex-bin
|
|
#BUILD_DEPENDS+= tex-metafont-[0-9]*:../../fonts/tex-metafont
|
|
#BUILD_DEPENDS+= tex-ae-[0-9]*:../../fonts/tex-ae
|
|
#BUILD_DEPENDS+= tex-ec-[0-9]*:../../fonts/tex-ec
|
|
#BUILD_DEPENDS+= tex-tools-[0-9]*:../../print/tex-tools
|
|
#BUILD_DEPENDS+= tex-url-[0-9]*:../../print/tex-url
|
|
#BUILD_DEPENDS+= tex-oberdiek-[0-9]*:../../print/tex-oberdiek
|
|
#BUILD_DEPENDS+= tex-amsfonts-[0-9]*:../../fonts/tex-amsfonts
|
|
#BUILD_DEPENDS+= tex-cm-[0-9]*:../../fonts/tex-cm
|
|
#BUILD_DEPENDS+= tex-cm-super-[0-9]*:../../fonts/tex-cm-super
|
|
#BUILD_DEPENDS+= tex-fontname-[0-9]*:../../fonts/tex-fontname
|
|
#BUILD_DEPENDS+= tex-graphics-[0-9]*:../../print/tex-graphics
|
|
#BUILD_DEPENDS+= tex-hyperref-[0-9]*:../../print/tex-hyperref
|
|
#BUILD_DEPENDS+= tex-iftex>=1.0d:../../print/tex-iftex
|
|
#BUILD_DEPENDS+= tex-latex-[0-9]*:../../print/tex-latex
|
|
#BUILD_DEPENDS+= tex-latexconfig-[0-9]*:../../print/tex-latexconfig
|
|
#BUILD_DEPENDS+= tex-mptopdf-[0-9]*:../../graphics/tex-mptopdf
|
|
#BUILD_DEPENDS+= tex-pdftex-def-[0-9]*:../../print/tex-pdftex
|
|
|
|
SUBST_CLASSES+= fixwrap
|
|
SUBST_STAGE.fixwrap= post-build
|
|
SUBST_FILES.fixwrap= libtool
|
|
SUBST_SED.fixwrap= -e "s,${WRAPPER_BINDIR}/libtool,${PKG_LIBTOOL},g"
|
|
|
|
BUILDLINK_API_DEPENDS.bzip2+= bzip2>=1.0.5
|
|
|
|
# failed to convert strong functions and variables: Invalid type identifier
|
|
CTF_FILES_SKIP+= lib/R/library/mgcv/libs/mgcv.so
|
|
|
|
# Exposes PKG_CONFIG_LIBDIR buildlink paths in a comment.
|
|
CHECK_WRKREF_SKIP+= lib/R/etc/Makeconf
|
|
|
|
pre-configure:
|
|
${RUN} cd ${WRKSRC} && autoreconf -fvi || echo Ignore the warnings from autoreconf
|
|
|
|
# Fix library names. Relies on build system using -headerpad_max_install_names.
|
|
.if ${OPSYS} == "Darwin"
|
|
.PHONY: fix-darwin-install-name
|
|
post-install: fix-darwin-install-name
|
|
fix-darwin-install-name:
|
|
${FIND} ${DESTDIR}${PREFIX} -name "*.so" | while read lib; do \
|
|
libname=`basename $${lib}`; \
|
|
libdir=`dirname $${lib} | sed -e 's,${DESTDIR},,'`; \
|
|
install_name_tool -id $${libdir}/$${libname} $${lib}; \
|
|
done
|
|
.endif
|
|
|
|
.include "../../archivers/bzip2/buildlink3.mk"
|
|
.include "../../archivers/xz/buildlink3.mk"
|
|
.include "../../converters/libiconv/buildlink3.mk"
|
|
.include "../../devel/gettext-lib/buildlink3.mk"
|
|
.include "../../devel/glib2/buildlink3.mk"
|
|
.include "../../devel/pango/buildlink3.mk"
|
|
.include "../../devel/pcre2/buildlink3.mk"
|
|
# uses callback interface
|
|
.include "../../devel/readline/buildlink3.mk"
|
|
.include "../../devel/zlib/buildlink3.mk"
|
|
.include "../../graphics/cairo/buildlink3.mk"
|
|
.include "../../mk/jpeg.buildlink3.mk"
|
|
.include "../../graphics/png/buildlink3.mk"
|
|
.include "../../graphics/tiff/buildlink3.mk"
|
|
.if !exists(/System/Library/Frameworks/Accelerate.framework)
|
|
.include "../../mk/blas.buildlink3.mk"
|
|
.endif
|
|
.include "../../www/curl/buildlink3.mk"
|
|
.include "../../x11/tk/buildlink3.mk"
|
|
|
|
.if ${OPSYS} != "Darwin"
|
|
.include "../../x11/libXt/buildlink3.mk"
|
|
.endif
|
|
|
|
INSTALL_TEMPLATES+= ../../math/R/files/pkg-index.tmpl
|
|
DEINSTALL_TEMPLATES+= ../../math/R/files/pkg-index.tmpl
|
|
PRINT_PLIST_AWK+= /^lib\/R\/doc\/html\/packages.html$$/ { next; }
|
|
|
|
.include "../../mk/pthread.buildlink3.mk"
|
|
.include "../../mk/bsd.pkg.mk"
|