aboutsummaryrefslogtreecommitdiffstats
path: root/lang/J/Makefile
blob: 050fa01d1529e529879fbc0563ff6dd63c377122 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
# $FreeBSD$

PORTNAME=   J
PORTVERSION=    ${JVERSION:S/^j//:S/-release//}
PORTEPOCH=  1
CATEGORIES= lang math

MAINTAINER= sevenjp@gmail.com
COMMENT=    J programming language

LICENSE=    GPLv3
LICENSE_FILE=   ${WRKDIR}/jsource-${JVERSION}/license.txt

ONLY_FOR_ARCHS= amd64
ONLY_FOR_ARCHS_REASON_amd64=    Not built or tested for other archs. i386 needs hostdefs and netdefs files to be generated.

BUILD_DEPENDS=  bash:shells/bash
LIB_DEPENDS=    libpcre2-8.so:devel/pcre2 \
        libsqlite3.so:databases/sqlite3

USES+=      libedit gmake shebangfix uidfix

SHEBANG_GLOB=   *.sh

SUB_FILES=  jconsole profile.ijs

USE_GITHUB= yes
GH_ACCOUNT= jsoftware
GH_PROJECT= jsource
GH_TAGNAME= ${JVERSION}

# J is released with ports-unfriendly versioning
JVERSION=   j807-release

BIN_FILES=  jconsole
LIB_FILES=  libj.so libtsdll.so

OPTIONS_DEFINE= OPENMP

OPENMP_DESC=    Build with OpenMP support
OPENMP_USES=    compiler:openmp
OPENMP_MAKE_ENV=    USE_OPENMP=1
OPENMP_LIB_DEPENDS= libgomp.so:lang/gcc7

# J wants to install jconsole, also provided by openjdk
CONFLICTS_INSTALL=  openjdk6 \
        openjdk6-jre \
        openjdk7 \
        openjdk7-jre \
        openjdk8 \
        openjdk8-jre

do-install:
    ${MKDIR} ${STAGEDIR}${PREFIX}/lib/j/bin
    ${MKDIR} ${STAGEDIR}${PREFIX}/share/j/system
    ${MKDIR} ${STAGEDIR}${PREFIX}/share/j/addons
    ${INSTALL_PROGRAM} ${BIN_FILES:C!^!${WRKDIR}/jbld/j64/bin/!} ${STAGEDIR}${PREFIX}/lib/j/bin/
    ${INSTALL_LIB} ${LIB_FILES:C!^!${WRKDIR}/jbld/j64/bin/!} ${STAGEDIR}${PREFIX}/lib/j/bin # Required by the J runtime
    ${INSTALL_DATA} ${WRKDIR}/profile.ijs ${STAGEDIR}${PREFIX}/share/j/
    ${INSTALL_SCRIPT} ${WRKDIR}/jconsole ${STAGEDIR}${PREFIX}/bin/
    (cd ${WRKDIR}/jbld/j64/system && ${COPYTREE_SHARE} \* ${STAGEDIR}${PREFIX}/share/j/system)
    (cd ${WRKDIR}/jbld/j64/addons && ${COPYTREE_SHARE} \* ${STAGEDIR}${PREFIX}/share/j/addons)

.include <bsd.port.mk>