svn commit: r502857 - in head: Mk lang/julia lang/julia/files
Li-Wen Hsu
lwhsu at FreeBSD.org
Tue May 28 06:12:48 UTC 2019
Author: lwhsu
Date: Tue May 28 06:12:47 2019
New Revision: 502857
URL: https://svnweb.freebsd.org/changeset/ports/502857
Log:
Turn lang/julia to metaport & introduce JULIA_DEFAULT to bsd.default-versions.mk
PR: 235872
Submitted by: Iblis Lin <iblis at hs.ntnu.edu.tw> (maintainer)
Deleted:
head/lang/julia/distinfo
head/lang/julia/files/
head/lang/julia/pkg-message
head/lang/julia/pkg-plist
Modified:
head/Mk/bsd.default-versions.mk
head/lang/julia/Makefile
Modified: head/Mk/bsd.default-versions.mk
==============================================================================
--- head/Mk/bsd.default-versions.mk Tue May 28 06:08:12 2019 (r502856)
+++ head/Mk/bsd.default-versions.mk Tue May 28 06:12:47 2019 (r502857)
@@ -16,8 +16,8 @@ _INCLUDE_BSD_DEFAULT_VERSIONS_MK= yes
LOCALBASE?= /usr/local
.for lang in APACHE BDB COROSYNC EMACS FIREBIRD FORTRAN FPC GCC GHOSTSCRIPT \
- LAZARUS LINUX LLVM LUA MYSQL PERL5 PGSQL PHP PYTHON PYTHON2 PYTHON3 \
- RUBY RUST SAMBA SSL TCLTK VARNISH
+ JULIA LAZARUS LINUX LLVM LUA MYSQL PERL5 PGSQL PHP PYTHON PYTHON2 \
+ PYTHON3 RUBY RUST SAMBA SSL TCLTK VARNISH
.if defined(${lang}_DEFAULT)
ERROR+= "The variable ${lang}_DEFAULT is set and it should only be defined through DEFAULT_VERSIONS+=${lang:tl}=${${lang}_DEFAULT} in /etc/make.conf"
.endif
@@ -47,6 +47,8 @@ FPC_DEFAULT?= 3.0.4
GCC_DEFAULT?= 8
# Possible values: 7, 8, 9, agpl
GHOSTSCRIPT_DEFAULT?= agpl
+# Possible values: 0.6, 0.7, 1.0, 1.1
+JULIA_DEFAULT?= 1.0
# Possible values: 2.0.0
LAZARUS_DEFAULT?= 2.0.0
.if ${ARCH} == amd64
Modified: head/lang/julia/Makefile
==============================================================================
--- head/lang/julia/Makefile Tue May 28 06:08:12 2019 (r502856)
+++ head/lang/julia/Makefile Tue May 28 06:12:47 2019 (r502857)
@@ -3,119 +3,57 @@
PORTNAME= julia
PORTVERSION= 1.0.3
-PORTREVISION= 2
-DISTVERSIONSUFFIX= -full
CATEGORIES= lang math
-MASTER_SITES= https://github.com/JuliaLang/julia/releases/download/v${PORTVERSION}/
+MASTER_SITES= # empty
+DISTFILES= # empty
+EXTRACT_ONLY= # empty
MAINTAINER= iblis at hs.ntnu.edu.tw
-COMMENT= Julia Language: A fresh approach to technical computing
+COMMENT= Meta port for the different versions of Julia compiler
-LICENSE= MIT
-LICENSE_FILE= ${WRKSRC}/LICENSE.md
+# LICENSE= # empty
+# LICENSE_FILE= # empty
ONLY_FOR_ARCHS= amd64 i386
-LIB_DEPENDS= libcurl.so:ftp/curl \
- libgit2.so:devel/libgit2 \
- libgmp.so:math/gmp \
- libmbedtls.so:security/mbedtls \
- libmpfr.so:math/mpfr \
- libopenblasp.so:math/openblas \
- libpcre2-8.so:devel/pcre2 \
- libssh2.so:security/libssh2 \
- libutf8proc.so:textproc/utf8proc
-BUILD_DEPENDS= patchelf:sysutils/patchelf \
- pcre2-config:devel/pcre2 \
- cmake:devel/cmake
+NO_BUILD= yes
-USES= gmake compiler:c++11-lib fortran python:2.7,build perl5
-USE_LDCONFIG= yes
+PLIST_FILES= bin/julia \
+ man/man1/julia.1.gz\
+ etc/julia
-WRKSRC= ${WRKDIR}/${PORTNAME}-${PORTVERSION}
+OPTIONS_DEFINE= V06 V07 V10 V11
+OPTIONS_DEFAULT= V${JULIA_DEFAULT:S/.//} D${JULIA_DEFAULT:S/.//}
+OPTIONS_SINGLE= DEFAULTVER
+OPTIONS_SINGLE_DEFAULTVER= D06 D07 D10 D11 # D stands for default
-ALL_TARGET= default
-INSTALL_TARGET= install
-TEST_TARGET= test
+V06_DESC= Install v${:!${MAKE} -C ${PORTSDIR}/lang/julia06 -v PORTVERSION!} release
+V07_DESC= Install v${:!${MAKE} -C ${PORTSDIR}/lang/julia07 -v PORTVERSION!} release
+V10_DESC= Install v${:!${MAKE} -C ${PORTSDIR}/lang/julia10 -v PORTVERSION!} release \
+ (1.x long-term support branch)
+V11_DESC= Install v${:!${MAKE} -C ${PORTSDIR}/lang/julia11 -v PORTVERSION!} release
-PLIST_SUB= VERSION="${PORTVERSION:R}"
+V06_RUN_DEPENDS= julia06:lang/julia06
+V07_RUN_DEPENDS= julia07:lang/julia07
+V10_RUN_DEPENDS= julia10:lang/julia10
+V11_RUN_DEPENDS= julia11:lang/julia11
-CXXFLAGS+= -stdlib=libc++ -std=c++11
-MAKE_ARGS+= prefix=${PREFIX} \
- JCXXFLAGS="${CXXFLAGS}" \
- FORCE_ASSERTIONS=${FORCE_ASSERTIONS} \
- USE_GPL_LIBS=${USE_GPL_LIBS} \
- USE_SYSTEM_BLAS=1 \
- USE_SYSTEM_CURL=1 \
- USE_SYSTEM_GMP=1 \
- USE_SYSTEM_LAPACK=1 \
- USE_SYSTEM_LIBGIT2=1 \
- USE_SYSTEM_LIBSSH2=1 \
- USE_SYSTEM_LIBUV=0 \
- USE_SYSTEM_MBEDTLS=1 \
- USE_SYSTEM_MPFR=1 \
- USE_SYSTEM_PATCHELF=1 \
- USE_SYSTEM_PCRE=1 \
- USE_SYSTEM_UTF8PROC=1 \
- NO_GIT=1
+DEFAULTVER_DESC= Select default version
+D06_DESC= Please select a version for setting up symbolic links of
+D07_DESC= bin/julia, manpage and etc/startup.jl.
-OPTIONS_DEFINE= DEBUG DOCS GPL_LIBS DESKTOP NATIVE
-OPTIONS_DEFAULT= SYSLIBM
-OPTIONS_GROUP= PRIVATE
-OPTIONS_SINGLE= LIBM
-OPTIONS_SINGLE_LIBM= SYSLIBM OPENLIBM
-OPTIONS_SUB= yes
+D06_IMPLIES= V06
+D07_IMPLIES= V07
+D10_IMPLIES= V10
+D11_IMPLIES= V11
-LIBM_DESC= Math library implementation
-
-DEBUG_VARS= FORCE_ASSERTIONS=1 \
- ALL_TARGET=all
-DEBUG_MAKE_ARGS= BUNDLE_DEBUG_LIBS=1
-
-PORTDOCS= html
-DOCS_VARS= INSTALL_TARGET+=install-docs
-
-GPL_LIBS_DESC= Build with GPL lib: SUITESPARSE
-GPL_LIBS_MAKE_ARGS= USE_SYSTEM_SUITESPARSE=0
-GPL_LIBS_VARS= USE_GPL_LIBS=1
-
-DESKTOP_DESC= Install icon, .desktop and appdata files
-DESKTOP_VARS= INSTALL_TARGET+=install-desktop \
- INSTALLS_ICONS=yes
-
-SYSLIBM_DESC= Build with system libm
-SYSLIBM_MAKE_ARGS= USE_SYSTEM_LIBM=1
-
-OPENLIBM_DESC= Build with OpenLibm (math/openlibm)
-OPENLIBM_MAKE_ARGS= USE_SYSTEM_OPENLIBM=1
-OPENLIBM_LIB_DEPENDS= libopenlibm.so:math/openlibm
-
.include <bsd.port.options.mk>
-NATIVE_DESC= Build with native CPU JIT tuning
-.if ${PORT_OPTIONS:MNATIVE}
-MAKE_ARGS+= JULIA_CPU_TARGET=native
-.else
-.if ${ARCH} == "amd64"
-MAKE_ARGS+= JULIA_CPU_TARGET=x86-64
-.elif ${ARCH} == "i386"
-MAKE_ARGS+= JULIA_CPU_TARGET=pentium4
-.else
-MAKE_ARGS+= JULIA_CPU_TARGET=generic
-.endif
-.endif # .if ${PORT_OPTIONS:MNATIVE}
+_JULIA_VER= ${PORT_OPTIONS:MD*:S/D//}
-.if ${ARCH} == "i386"
-EXTRA_PATCHES+= ${PATCHDIR}/extra-patch-ui_Makefile
-.endif
-
-post-configure:
- ${CC} ${CFLAGS} -lopenblas ${LDFLAGS} -o ${WRKSRC}/check_openblas \
- ${FILESDIR}/check_openblas.c
- ${WRKSRC}/check_openblas && ( \
- echo "USE_BLAS64=1" >> ${WRKSRC}/Make.user \
- ) || ( \
- echo "USE_BLAS64=0" >> ${WRKSRC}/Make.user \
- )
+do-install:
+ ${RLN} julia${_JULIA_VER} ${STAGEDIR}${PREFIX}/bin/julia
+ ${RLN} ../julia/julia${_JULIA_VER}/etc/julia ${STAGEDIR}${PREFIX}/etc
+ ${RLN} julia${_JULIA_VER}.1.gz ${STAGEDIR}${PREFIX}/man/man1/julia.1.gz
.include <bsd.port.mk>
More information about the svn-ports-head
mailing list