View | Details | Raw Unified | Return to bug 236454
Collapse All | Expand All

(-)Makefile (-7 / +25 lines)
Lines 1-9 Link Here
1
# $FreeBSD$
1
# $FreeBSD$
2
2
3
PORTNAME=	J
3
PORTNAME=	J
4
DISTVERSIONPREFIX=	j
4
PORTVERSION=	${JVERSION:S/^j//:S/-release//}
5
DISTVERSION=	808
6
DISTVERSIONSUFFIX=	-release
7
CATEGORIES=	lang math
5
CATEGORIES=	lang math
8
6
9
MAINTAINER=	sevenjp@gmail.com
7
MAINTAINER=	sevenjp@gmail.com
Lines 10-25 Link Here
10
COMMENT=	J programming language
8
COMMENT=	J programming language
11
9
12
LICENSE=	GPLv3
10
LICENSE=	GPLv3
13
LICENSE_FILE=	${WRKSRC}/license.txt
11
LICENSE_FILE=	${WRKDIR}/jsource-${JVERSION}/license.txt
14
12
15
ONLY_FOR_ARCHS=	amd64
13
ONLY_FOR_ARCHS_REASON_amd64=	Not built or tested for other archs. i386 needs hostdefs and netdefs files to be generated.
16
ONLY_FOR_ARCHS_REASON_i386=	i386 needs hostdefs and netdefs files to be generated.
17
14
18
BUILD_DEPENDS=	bash:shells/bash
15
BUILD_DEPENDS=	bash:shells/bash
19
LIB_DEPENDS=	libpcreposix.so:devel/pcre \
16
LIB_DEPENDS=	libpcre2-8.so:devel/pcre2 \
20
		libsqlite3.so:databases/sqlite3
17
		libsqlite3.so:databases/sqlite3
21
18
22
USES+=		libedit gmake shebangfix uidfix
19
USES+=		libedit gmake shebangfix uidfix
20
23
SHEBANG_GLOB=	*.sh
21
SHEBANG_GLOB=	*.sh
24
22
25
SUB_FILES=	jconsole profile.ijs
23
SUB_FILES=	jconsole profile.ijs
Lines 27-36 Link Here
27
USE_GITHUB=	yes
25
USE_GITHUB=	yes
28
GH_ACCOUNT=	jsoftware
26
GH_ACCOUNT=	jsoftware
29
GH_PROJECT=	jsource
27
GH_PROJECT=	jsource
28
GH_TAGNAME=	${JVERSION}
30
29
30
# J is released with ports-unfriendly versioning
31
JVERSION=	j807-release
32
31
BIN_FILES=	jconsole
33
BIN_FILES=	jconsole
32
LIB_FILES=	libj.so libtsdll.so
34
LIB_FILES=	libj.so libtsdll.so
33
35
36
OPTIONS_DEFINE= OPENMP
37
OPTIONS_DEFAULT=
38
39
OPENMP_DESC= Build with OpenMP support
40
OPENMP_USES+= compiler:openmp
41
OPENMP_MAKE_ENV+= USE_OPENMP=1
42
OPENMP_LIB_DEPENDS= libgomp.so:lang/gcc7
43
44
# J wants to install jconsole, also provided by openjdk
45
CONFLICTS_INSTALL= openjdk6 \
46
		openjdk6-jre \
47
		openjdk7 \
48
		openjdk7-jre \
49
		openjdk8 \
50
		openjdk8-jre
51
34
do-install:
52
do-install:
35
	${MKDIR} ${STAGEDIR}${PREFIX}/lib/j/bin
53
	${MKDIR} ${STAGEDIR}${PREFIX}/lib/j/bin
36
	${MKDIR} ${STAGEDIR}${PREFIX}/share/j/system
54
	${MKDIR} ${STAGEDIR}${PREFIX}/share/j/system
(-)distinfo (-3 / +3 lines)
Lines 1-3 Link Here
1
TIMESTAMP = 1528123249
1
TIMESTAMP = 1546772563
2
SHA256 (jsoftware-jsource-j808-release_GH0.tar.gz) = 1c7335e0d705bfc630da230ee8d196487627eed6f9374728bcac6b9ffbb1fd1d
2
SHA256 (jsoftware-jsource-807-j807-release_GH0.tar.gz) = 324ff0b046c9f7f24f18a72fa8a4253ad54c99a48c397fd2c724392f5e097d7f
3
SIZE (jsoftware-jsource-j808-release_GH0.tar.gz) = 2128876
3
SIZE (jsoftware-jsource-807-j807-release_GH0.tar.gz) = 2398318
(-)files/jconsole.in (-2 lines)
Lines 1-5 Link Here
1
#!/bin/sh
1
#!/bin/sh
2
2
3
# $FreeBSD$
4
5
exec %%LOCALBASE%%/lib/j/bin/jconsole -jprofile %%LOCALBASE%%/share/j/profile.ijs
3
exec %%LOCALBASE%%/lib/j/bin/jconsole -jprofile %%LOCALBASE%%/share/j/profile.ijs
(-)files/patch-Makefile (-5 / +2 lines)
Lines 1-6 Link Here
1
--- Makefile.orig	2018-04-09 18:07:38 UTC
1
--- Makefile.orig	2018-04-09 18:07:38 UTC
2
+++ Makefile
2
+++ Makefile
3
@@ -0,0 +1,21 @@
3
@@ -0,0 +1,18 @@
4
+.PHONY: all
4
+.PHONY: all
5
+all: make-${ARCH}
5
+all: make-${ARCH}
6
+
6
+
Lines 10-20 Link Here
10
+.PHONY: make-i386
10
+.PHONY: make-i386
11
+make-i386: build-j32
11
+make-i386: build-j32
12
+
12
+
13
+.PHONY: init
13
+build-%:
14
+init:
15
+	make/install.sh
14
+	make/install.sh
16
+
17
+build-%: init
18
+	make/build_jconsole.sh $*
15
+	make/build_jconsole.sh $*
19
+	make/build_libj.sh $*
16
+	make/build_libj.sh $*
20
+	make/build_tsdll.sh $*
17
+	make/build_tsdll.sh $*
(-)files/patch-jlibrary_system_config_base.cfg (-11 / +11 lines)
Lines 1-21 Link Here
1
--- jlibrary/system/config/base.cfg.orig	2016-11-25 19:04:24 UTC
1
--- jlibrary/system/config/base.cfg.orig	2019-01-06 11:06:00 UTC
2
+++ jlibrary/system/config/base.cfg
2
+++ jlibrary/system/config/base.cfg
3
@@ -93,6 +93,18 @@ case. 'Linux' do.
3
@@ -90,6 +90,18 @@ case. 'Linux' do.
4
   XDiff=: '/usr/bin/meld'
4
   XDiff=: ''
5
   Editor=: 'geany +%l %f'
5
   Editor=: ''
6
   Editor_nox=: 'vi -c%l %f'
6
   Editor_nox=: ''
7
+case. 'FreeBSD' do.
7
+case. 'FreeBSD' do.
8
+  BoxForm=: 0
8
+  BoxForm=: 0
9
+  Browser=: ''
9
+  Browser=: ''
10
+  Browser_nox=: '/usr/bin/w3m'
10
+  Browser_nox=: ''
11
+  EPSReader=: '/usr/bin/evince'
11
+  EPSReader=: ''
12
+  ImageViewer=: ''
12
+  ImageViewer=: ''
13
+  ImageViewer_nox=: ''
13
+  ImageViewer_nox=: ''
14
+  PDFReader=: '/usr/bin/evince'
14
+  PDFReader=: ''
15
+  PDFReader_nox=: ''
15
+  PDFReader_nox=: ''
16
+  XDiff=: '/usr/bin/meld'
16
+  XDiff=: ''
17
+  Editor=: 'geany +%l %f'
17
+  Editor=: ''
18
+  Editor_nox=: 'vi -c%l %f'
18
+  Editor_nox=: ''  
19
 case. 'Win' do.
19
 case. 'Win' do.
20
   BoxForm=: 1
20
   BoxForm=: 1
21
   Browser=: ''
21
   Browser=: ''
(-)files/patch-jlibrary_system_main_regex.ijs (-9 / +18 lines)
Lines 1-10 Link Here
1
--- jlibrary/system/main/regex.ijs.orig	2018-03-07 18:59:01 UTC
1
--- jlibrary/system/main/regex.ijs.orig	2019-01-06 11:11:14 UTC
2
+++ jlibrary/system/main/regex.ijs
2
+++ jlibrary/system/main/regex.ijs
3
@@ -101,6 +101,7 @@ NB. rxdll is in bin or tools/regex
3
@@ -179,6 +179,7 @@ select. UNAME
4
 select. UNAME
4
 case. 'Win' do. t=. 'jpcre2.dll'
5
 case. 'Win' do. t=. 'jpcre.dll'
5
 case. 'Darwin' do. t=. 'libjpcre2.dylib'
6
 case. 'Darwin' do. t=. 'libjpcre.dylib'
6
 case. 'Linux' do. t=. 'libjpcre2.so'
7
+case. 'FreeBSD' do. t=. 'libpcreposix.so' 
7
+case. 'FreeBSD' do. t=. 'libjpcre2.so'
8
 fcase. 'Linux' do.
8
 case. 'Android' do. t=. 'libjpcre2.so'
9
   if. 2 0-:('libpcreposix.so.3 dummyfunction n')&(15!:0) ::(15!:10) '' do.
9
 end.
10
     rxdll=: 'libpcreposix.so.3'
10
 
11
@@ -191,6 +192,8 @@ NB. fall back one more time
12
 if. ('Android'-:UNAME) *. 0 = 1!:4 :: 0: <f do.
13
   f=. (({.~i:&'/')LIBFILE),'/',t
14
 elseif. ('Linux'-:UNAME) *. (IFUNIX>'/'e.LIBFILE) *. 0 = 1!:4 :: 0: <f do.
15
+  f=. 'libpcre2-8.so.0'
16
+elseif. ('FreeBSD'-:UNAME) *. (IFUNIX>'/'e.LIBFILE) *. 0 = 1!:4 :: 0: <f do.
17
   f=. 'libpcre2-8.so.0'
18
 elseif. 0 = 1!:4 :: 0: <f do.
19
   f=. t
(-)files/patch-jlibrary_system_main_stdlib.ijs (-5 / +13 lines)
Lines 1-6 Link Here
1
--- jlibrary/system/main/stdlib.ijs.orig	2016-11-25 19:04:24 UTC
1
--- jlibrary/system/main/stdlib.ijs.orig	2018-10-02 13:24:06 UTC
2
+++ jlibrary/system/main/stdlib.ijs
2
+++ jlibrary/system/main/stdlib.ijs
3
@@ -93,6 +93,7 @@ if. (<'home') -.@e. {."1 SystemFolders d
3
@@ -44,6 +44,7 @@ if. notdef 'FHS' do.
4
   FHS=: IFUNIX>'/'e.LIBFILE
5
 end.
6
 'libc.so.6 setlocale > x i *c'&(15!:0)^:(UNAME-:'Linux') 1;,'C'
7
+'libc.so.7 setlocale > x i *c'&(15!:0)^:(UNAME-:'FreeBSD') 1;,'C'
8
 if. notdef 'IFRASPI' do.
9
   if. UNAME -: 'Linux' do.
10
     cpu=. 2!:0 'cat /proc/cpuinfo'
11
@@ -106,6 +107,7 @@ if. (<'home') -.@e. {."1 SystemFolders do.
4
   elseif. 'Android'-:UNAME do. t=. '/sdcard'
12
   elseif. 'Android'-:UNAME do. t=. '/sdcard'
5
   elseif. 'Darwin'-:UNAME do. t=. (0-:t){::'';~t=. 2!:5'HOME'
13
   elseif. 'Darwin'-:UNAME do. t=. (0-:t){::'';~t=. 2!:5'HOME'
6
   elseif. 'Linux'-:UNAME do. t=. (0-:t){::'';~t=. 2!:5'HOME'
14
   elseif. 'Linux'-:UNAME do. t=. (0-:t){::'';~t=. 2!:5'HOME'
Lines 8-14 Link Here
8
   elseif. do. t=. ''
16
   elseif. do. t=. ''
9
   end.
17
   end.
10
   if. (''-:t)+.((,'/')-:t)+.('/root'-:t)+.('/usr/'-:5{.t) do.
18
   if. (''-:t)+.((,'/')-:t)+.('/root'-:t)+.('/usr/'-:5{.t) do.
11
@@ -107,6 +108,7 @@ if. (<'temp') -.@e. {."1 SystemFolders d
19
@@ -120,6 +122,7 @@ if. (<'temp') -.@e. {."1 SystemFolders do.
12
   elseif. 'Android'-:UNAME do. t=. '/sdcard'
20
   elseif. 'Android'-:UNAME do. t=. '/sdcard'
13
   elseif. 'Darwin'-:UNAME do. 1!:5 ::] <t=. '/tmp/',":2!:6''
21
   elseif. 'Darwin'-:UNAME do. 1!:5 ::] <t=. '/tmp/',":2!:6''
14
   elseif. 'Linux'-:UNAME do. 1!:5 ::] <t=. '/tmp/',":2!:6''
22
   elseif. 'Linux'-:UNAME do. 1!:5 ::] <t=. '/tmp/',":2!:6''
Lines 16-22 Link Here
16
   elseif. do. t=. ''
24
   elseif. do. t=. ''
17
   end.
25
   end.
18
   SystemFolders=: SystemFolders, 'temp';t
26
   SystemFolders=: SystemFolders, 'temp';t
19
@@ -119,14 +121,14 @@ end.
27
@@ -132,14 +135,14 @@ end.
20
 18!:4 <'z'
28
 18!:4 <'z'
21
 18!:4 <'z'
29
 18!:4 <'z'
22
 UNXLIB=: ([: <;._1 ' ',]);._2 (0 : 0)
30
 UNXLIB=: ([: <;._1 ' ',]);._2 (0 : 0)
Lines 36-42 Link Here
36
 (<r,c) {:: UNXLIB_z_
44
 (<r,c) {:: UNXLIB_z_
37
 )
45
 )
38
 18!:4 <'z'
46
 18!:4 <'z'
39
@@ -1337,7 +1339,7 @@ require 'pacman'
47
@@ -1343,7 +1346,7 @@ require 'pacman'
40
 do_install_jpacman_ y
48
 do_install_jpacman_ y
41
 )
49
 )
42
 getqtbin=: 3 : 0
50
 getqtbin=: 3 : 0
(-)files/patch-jsrc_jeload.c (+11 lines)
Line 0 Link Here
1
--- jsrc/jeload.c.orig	2019-03-10 11:13:19 UTC
2
+++ jsrc/jeload.c
3
@@ -330,6 +330,8 @@ int jefirst(int type,char* arg)
4
 	strcat(input,"[UNAME_z_=:'Win'");
5
 #elif defined(__MACH__)
6
 	strcat(input,"[UNAME_z_=:'Darwin'");
7
+#elif defined(__FreeBSD__)
8
+	strcat(input,"[UNAME_z_=:'FreeBSD'");
9
 #elif !defined(ANDROID)
10
 	strcat(input,"[UNAME_z_=:'Linux'");
11
 #endif
(-)files/patch-make_build__jconsole.sh (-11 / +7 lines)
Lines 1-21 Link Here
1
--- make/build_jconsole.sh.orig	2018-04-09 17:54:22 UTC
1
--- make/build_jconsole.sh.orig	2019-01-06 17:19:19 UTC
2
+++ make/build_jconsole.sh
2
+++ make/build_jconsole.sh
3
@@ -1,9 +1,8 @@
3
@@ -1,6 +1,6 @@
4
 #!/usr/local/bin/bash
4
 #!/usr/local/bin/bash
5
 # $1 is j32 or j64
5
 # $1 is j32 or j64
6
-cd ~
6
-cd ~
7
-. jvars.sh
8
+. make/jvars.sh
7
+. make/jvars.sh
9
 
8
 
10
-common=" -fPIC -O1 -Wextra "
9
 common=" -fPIC -O1 -Wextra -Wno-unused-parameter "
11
+common=" -fPIC -Wextra "
12
 
10
 
13
 case $jplatform\_$1 in
11
@@ -29,6 +29,14 @@ LINK=" -ledit -ldl -lncurses -m32 -mmacosx-version-min
14
 
12
 darwin_j64)
15
@@ -27,6 +26,14 @@ darwin_j64)
16
 COMPILE="$common -DREADLINE -mmacosx-version-min=10.5"
13
 COMPILE="$common -DREADLINE -mmacosx-version-min=10.5"
17
 LINK=" -ledit -ldl -lncurses -mmacosx-version-min=10.5 -o jconsole "
14
 LINK=" -ledit -ldl -lncurses -mmacosx-version-min=10.5 -o jconsole "
18
 ;;
15
+;;
19
+freebsd_j32)
16
+freebsd_j32)
20
+COMPILE="$common -m32 -DREADLINE"
17
+COMPILE="$common -m32 -DREADLINE"
21
+LINK="-L${LOCALBASE}/lib -ledit -m32 -o jconsole "
18
+LINK="-L${LOCALBASE}/lib -ledit -m32 -o jconsole "
Lines 23-29 Link Here
23
+freebsd_j64)
20
+freebsd_j64)
24
+COMPILE="$common -DREADLINE"
21
+COMPILE="$common -DREADLINE"
25
+LINK="-L${LOCALBASE}/lib -ledit -o jconsole "
22
+LINK="-L${LOCALBASE}/lib -ledit -o jconsole "
26
+;;
23
 ;;
27
 *)
24
 *)
28
 echo no case for those parameters
25
 echo no case for those parameters
29
 exit
(-)files/patch-make_build__libj.sh (-25 / +25 lines)
Lines 1-42 Link Here
1
--- make/build_libj.sh.orig	2018-04-09 18:12:26 UTC
1
--- make/build_libj.sh.orig	2019-03-10 15:39:26 UTC
2
+++ make/build_libj.sh
2
+++ make/build_libj.sh
3
@@ -1,7 +1,6 @@
3
@@ -1,6 +1,6 @@
4
 #!/usr/local/bin/bash
4
 #!/usr/local/bin/bash
5
 # $1 is j32 or j64
5
 # $1 is j32 or j64
6
-cd ~
6
-cd ~
7
-. jvars.sh
8
+. make/jvars.sh
7
+. make/jvars.sh
9
 
8
 
10
 # gcc 5 vs 4 - killing off linux asm routines (overflow detection)
9
 # gcc 5 vs 4 - killing off linux asm routines (overflow detection)
11
 # new fast code uses builtins not available in gcc 4
10
 # new fast code uses builtins not available in gcc 4
12
@@ -15,6 +14,8 @@ common="-fPIC -O1 -fno-if-conversion2 -f
11
@@ -14,7 +14,7 @@ if [ $USE_OPENMP -eq 1 ] ; then
13
 # clang
12
 OPENMP=" -fopenmp "
14
 # common="-Werror -fPIC -O1 -fwrapv -fno-strict-aliasing -Wextra -Wno-clobbered -Wno-maybe-uninitialized -Wno-unused-parameter -Wno-sign-compare -Wno-empty-body -Wno-unused-value -Wno-pointer-sign -Wno-parentheses -Wno-unsequenced -Wno-string-plus-int"
13
 LDOPENMP=" -fopenmp "
15
 darwin="-fPIC -O1 -fwrapv -fno-strict-aliasing -Wno-string-plus-int -Wno-empty-body -Wno-unsequenced -Wno-unused-value -Wno-pointer-sign -Wno-parentheses -Wno-return-type -Wno-constant-logical-operand -Wno-comment -Wno-unsequenced"
14
 if [ "x$compiler" = x'gcc' ] ; then
16
+freebsd="-fPIC -O1 -fwrapv -fno-strict-aliasing -Wno-string-plus-int -Wno-empty-body -Wno-unsequenced -Wno-unused-value -Wno-pointer-sign -Wno-parentheses -Wno-return-type -Wno-constant-logical-operand -Wno-comment -Wno-unsequenced"
15
-LDOPENMP32=" -l:libgomp.so.1 "    # gcc
16
+LDOPENMP32=" -l:libgomp.so "    # gcc
17
 else
18
 LDOPENMP32=" -l:libomp.so.5 "     # clang
19
 fi
20
@@ -92,6 +92,22 @@ TARGET=libj.dylib
21
 COMPILE="$darwin -mavx -mmacosx-version-min=10.5 -DC_AVX=1"
22
 LINK=" -dynamiclib -lm -ldl $LDOPENMP -mmacosx-version-min=10.5 -o libj.dylib"
23
 OBJS_FMA=" blis/gemm_int-fma.o "
24
+;;
17
+
25
+
18
 
19
 case $jplatform\_$1 in
20
 
21
@@ -50,6 +51,21 @@ TARGET=libj.dylib
22
 COMPILE="$darwin -mmacosx-version-min=10.5"
23
 LINK=" -dynamiclib -lm -ldl -mmacosx-version-min=10.5 -o libj.dylib"
24
 ;;
25
+
26
+freebsd_j32) # freebsd x86
26
+freebsd_j32) # freebsd x86
27
+TARGET=libj.so
27
+TARGET=libj.so
28
+# faster, but sse2 not available for 32-bit amd cpu
28
+# faster, but sse2 not available for 32-bit amd cpu
29
+# sse does not support mfpmath=sse in 32-bit gcc
29
+# sse does not support mfpmath=sse in 32-bit gcc
30
+COMPILE="$freebsd -m32 -msse2 -mfpmath=sse -DC_NOMULTINTRINSIC "
30
+COMPILE="$common -m32 -msse2 -mfpmath=sse -DC_NOMULTINTRINSIC "
31
+# slower, use 387 fpu and truncate extra precision
31
+# slower, use 387 fpu and truncate extra precision
32
+# COMPILE="$freebsd -m32 -ffloat-store "
32
+# COMPILE="$common -m32 -ffloat-store "
33
+LINK=" -shared -Wl,-soname,libj.so -m32 -lm -o libj.so "
33
+LINK=" -shared -Wl,-soname,libj.so -m32 -lm -ldl $LDOPENMP32 -o libj.so "
34
+;;
34
+;;
35
+freebsd_j64) # freebsd x86
35
+
36
+freebsd_j64) # freebsd amd64
36
+TARGET=libj.so
37
+TARGET=libj.so
37
+COMPILE="$freebsd -DC_NOMULTINTRINSIC "
38
+COMPILE="$common -DC_NOMULTINTRINSIC "
38
+LINK=" -shared -Wl,-soname,libj.so -lm -o libj.so "
39
+LINK=" -shared -Wl,-soname,libj.so -lm -ldl $LDOPENMP -o libj.so "
39
+;;
40
 ;;
41
 
40
 *)
42
 *)
41
 echo no case for those parameters
42
 exit
(-)files/patch-make_build__tsdll.sh (-9 / +21 lines)
Lines 1-21 Link Here
1
--- make/build_tsdll.sh.orig	2018-04-09 18:00:06 UTC
1
--- make/build_tsdll.sh.orig	2019-03-10 15:32:23 UTC
2
+++ make/build_tsdll.sh
2
+++ make/build_tsdll.sh
3
@@ -1,9 +1,8 @@
3
@@ -1,9 +1,22 @@
4
 #!/usr/local/bin/bash
4
 #!/usr/local/bin/bash
5
 # $1 is j32 or j64
5
 # $1 is j32 or j64
6
-cd ~
6
-cd ~
7
-. jvars.sh
8
+. make/jvars.sh
7
+. make/jvars.sh
9
 
8
 
10
-common=" -fPIC -O1 -Werror -Wextra -Wno-unused-parameter"
9
+compiler=${CC:0:3}
11
+common=" -fPIC -Werror -Wextra -Wno-unused-parameter"
10
+
11
 common=" -fPIC -O1 -Werror -Wextra -Wno-unused-parameter"
12
 
12
 
13
+if [ "x$compiler" = x'gcc' ] ; then
14
+OVER_GCC_VER7=$(echo `$CC -dumpversion | cut -f1 -d.` \>= 7 | bc)
15
+if [ $OVER_GCC_VER7 -eq 1 ] ; then
16
+common="$common -Wno-implicit-fallthrough"
17
+fi
18
+OVER_GCC_VER8=$(echo `$CC -dumpversion | cut -f1 -d.` \>= 8 | bc)
19
+if [ $OVER_GCC_VER8 -eq 1 ] ; then
20
+common="$common -Wno-cast-function-type"
21
+fi
22
+fi
23
+
13
 case $jplatform\_$1 in
24
 case $jplatform\_$1 in
14
 
25
 
15
@@ -33,6 +32,16 @@ TARGET=libtsdll.dylib
26
 linux_j32)
27
@@ -35,6 +48,16 @@ darwin_j64)
28
 TARGET=libtsdll.dylib
16
 COMPILE="$common "
29
 COMPILE="$common "
17
 LINK=" -dynamiclib -o libtsdll.dylib "
30
 LINK=" -dynamiclib -o libtsdll.dylib "
18
 ;;
31
+;;
19
+freebsd_j32)
32
+freebsd_j32)
20
+TARGET=libtsdll.so
33
+TARGET=libtsdll.so
21
+COMPILE="$common -m32 "
34
+COMPILE="$common -m32 "
Lines 25-31 Link Here
25
+TARGET=libtsdll.so
38
+TARGET=libtsdll.so
26
+COMPILE="$common "
39
+COMPILE="$common "
27
+LINK=" -shared -Wl,-soname,libtsdll.so -o libtsdll.so "
40
+LINK=" -shared -Wl,-soname,libtsdll.so -o libtsdll.so "
28
+;;
41
 ;;
29
 *)
42
 *)
30
 echo no case for those parameters
43
 echo no case for those parameters
31
 exit
(-)files/patch-make_domake.sh (-16 / +8 lines)
Lines 1-19 Link Here
1
--- make/domake.sh.orig	2018-04-09 18:08:56 UTC
1
--- make/domake.sh.orig	2019-01-06 11:36:39 UTC
2
+++ make/domake.sh
2
+++ make/domake.sh
3
@@ -3,8 +3,7 @@
3
@@ -15,7 +15,7 @@ if [ $1 = "j64nonavx" ] ; then
4
 # run by build_jconsole and build_libj
4
  avx=-nonavx
5
 # $1 is j32 or j64
5
 fi 
6
 
6
 
7
-cd ~
7
-echo "building  $jbld/$targ/bin/$TARGET $avx"
8
-. jvars.sh
9
+. make/jvars.sh
10
 
11
 echo $TARGET
12
 echo $COMPILE
13
@@ -12,5 +11,5 @@ echo $LINK
14
 mkdir -p $jbld/jout/$TARGET/$1
15
 cd $jbld/jout/$TARGET/$1
16
 
17
-make -f $jmake/makefile
18
+gmake -f $jmake/makefile
8
+gmake -f $jmake/makefile
19
 cp $TARGET $jbld/$1/bin
9
 echo "output in $jbld/$targ/bin/build_$TARGET$avx.txt"
10
 make -f $jmake/makefile >$jbld/$targ/bin/build_$TARGET$avx.txt 2>&1
11
 echo `egrep -w 'warning|error|note' $jbld/$targ/bin/build_$TARGET$avx.txt`
(-)files/patch-make_jvars.sh (-9 / +18 lines)
Lines 1-16 Link Here
1
--- make/jvars.sh.orig	2018-04-09 18:05:09 UTC
1
--- make/jvars.sh.orig	2019-03-10 15:55:44 UTC
2
+++ make/jvars.sh
2
+++ make/jvars.sh
3
@@ -1,11 +1,11 @@
3
@@ -2,7 +2,7 @@
4
 # source shell script (read with . jvars.sh) so stuff is easy to find
4
 # source shell script (read with . jvars.sh) so stuff is easy to find
5
 
5
 
6
 # edit following if your install is not standard 
6
 # edit following if your install is not standard 
7
-jgit=~/gitdev/jsource # git jsource folder
7
-jgit=~/git/jsource # git jsource folder
8
+jgit=~/jsource-j808-release # git jsource folder
8
+jgit=~/jsource-j807-release # git jsource folder
9
 jbld=~/jbld           # test libraries and binaries will be put here
9
 jbld=~/jbld        # test libraries and binaries will be put here
10
 
10
 
11
 # edit platform to build - linux darwin raspberry
11
 # platform and shared library suffix
12
-jplatform=linux
12
@@ -10,7 +10,12 @@ jplatform=`uname|tr '[:upper:]' '[:lower:]'`
13
+jplatform=freebsd
13
 jsuffix=so
14
 if [ $jplatform = "darwin" ] ; then jsuffix=dylib ; fi
14
 
15
 
16
-CC=clang # compiler
17
+USE_OPENMP="${USE_OPENMP:=0}"
18
+if [ $USE_OPENMP -eq 1 ] ; then
19
+    CC=gcc8
20
+else
21
+    CC=clang # compiler
22
+fi
23
 
15
 # should not be necessary to edit after here
24
 # should not be necessary to edit after here
16
 j32=$jbld/j32/bin/jconsole
25
 tsu=$jgit/test/tsu.ijs
(-)files/patch-make_makefile (-5 / +7 lines)
Lines 1-9 Link Here
1
--- make/makefile.orig	2016-11-25 19:04:24 UTC
1
--- make/makefile.orig	2018-10-02 13:24:06 UTC
2
+++ make/makefile
2
+++ make/makefile
3
@@ -1,5 +1,5 @@
3
@@ -3,7 +3,7 @@ vpath % $(jgit)/jsrc
4
 vpath % $(jgit)/jsrc
4
 %.o: %.c
5
 	$(CC) -c $(CFLAGS) $(CFLAGS_FMA) -o$@ $^
5
 
6
 
6
-CFLAGS=$(COMPILE)
7
-CFLAGS=$(COMPILE)
7
+CFLAGS+=$(COMPILE)
8
+CFLAGS+=$(COMPILE)
8
 $(TARGET) : $(OBJS)
9
 $(OBJS_FMA) : CFLAGS_FMA := -mfma 
9
 	$(CC)  $(OBJS) $(LINK)
10
 $(TARGET) : $(OBJS) $(OBJS_FMA)
11
 	$(CC)  $(OBJS) $(OBJS_FMA) $(LINK)
(-)files/patch-netdefs_netdefs.c (-8 / +8 lines)
Lines 1-11 Link Here
1
--- netdefs/netdefs.c.orig	2016-11-25 19:04:24 UTC
1
--- netdefs/netdefs.c.orig	2019-01-06 15:19:53 UTC
2
+++ netdefs/netdefs.c
2
+++ netdefs/netdefs.c
3
@@ -147,7 +147,7 @@ int main(){
3
@@ -152,7 +152,7 @@ int main(){
4
 	printf ("msg_iov_sz=: %d\n",sizeof(((struct msghdr*)0)->msg_iov));
4
 	printf ("msg_iov_sz=: " FMTI "\n",sizeof(((struct msghdr*)0)->msg_iov));
5
 	printf ("msg_iovlen_off=: %d\n",offset(struct msghdr,msg_iovlen));
5
 	printf ("msg_iovlen_off=: " FMTI "\n",offset(struct msghdr,msg_iovlen));
6
 	printf ("msg_iovlen_sz=: %d\n",sizeof(((struct msghdr*)0)->msg_iovlen));
6
 	printf ("msg_iovlen_sz=: " FMTI "\n",sizeof(((struct msghdr*)0)->msg_iovlen));
7
-#if defined(linux) || defined(Darwin)
7
-#if defined(linux) || defined(Darwin)
8
+#if defined(linux) || defined(Darwin) || defined(__FreeBSD__)
8
+#if defined(linux) || defined(Darwin) || defined(__FreeBSD__)
9
 	printf ("msg_control_off=: %d\n",offset(struct msghdr,msg_control));
9
 	printf ("msg_control_off=: " FMTI "\n",offset(struct msghdr,msg_control));
10
 	printf ("msg_control_sz=: %d\n",sizeof(((struct msghdr*)0)->msg_control));
10
 	printf ("msg_control_sz=: " FMTI "\n",sizeof(((struct msghdr*)0)->msg_control));
11
 	printf ("msg_controllen_off=: %d\n",offset(struct msghdr,msg_controllen));
11
 	printf ("msg_controllen_off=: " FMTI "\n",offset(struct msghdr,msg_controllen));
(-)files/profile.ijs.in (-1 lines)
Lines 1-7 Link Here
1
NB. J profile
1
NB. J profile
2
NB. JFE sets BINPATH_z_ and ARGV_z_
2
NB. JFE sets BINPATH_z_ and ARGV_z_
3
NB. add your sentences in startup.ijs
3
NB. add your sentences in startup.ijs
4
NB. $FreeBSD$
5
4
6
systype=. 9!:12''
5
systype=. 9!:12''
7
jpathsep_z_=: '/'&(('\' I.@:= ])})
6
jpathsep_z_=: '/'&(('\' I.@:= ])})
(-)pkg-plist (-5 / +9 lines)
Lines 2-7 Link Here
2
lib/j/bin/jconsole
2
lib/j/bin/jconsole
3
lib/j/bin/libj.so
3
lib/j/bin/libj.so
4
lib/j/bin/libtsdll.so
4
lib/j/bin/libtsdll.so
5
share/j/addons/data/jfiles/history.txt
6
share/j/addons/data/jfiles/jfiles.ijs
7
share/j/addons/data/jfiles/jfiles.txt
8
share/j/addons/data/jfiles/keyfiles.txt
9
share/j/addons/data/jfiles/manifest.ijs
10
share/j/addons/data/jfiles/test/test0.ijs
11
share/j/addons/data/jfiles/test/test1.ijs
5
share/j/addons/data/jmf/history.txt
12
share/j/addons/data/jmf/history.txt
6
share/j/addons/data/jmf/jmf.ijs
13
share/j/addons/data/jmf/jmf.ijs
7
share/j/addons/data/jmf/manifest.ijs
14
share/j/addons/data/jmf/manifest.ijs
Lines 109-114 Link Here
109
share/j/system/config/version.txt
116
share/j/system/config/version.txt
110
share/j/system/defs/hostdefs_aix.ijs
117
share/j/system/defs/hostdefs_aix.ijs
111
share/j/system/defs/hostdefs_android.ijs
118
share/j/system/defs/hostdefs_android.ijs
119
share/j/system/defs/hostdefs_android_64.ijs
112
share/j/system/defs/hostdefs_darwin.ijs
120
share/j/system/defs/hostdefs_darwin.ijs
113
share/j/system/defs/hostdefs_darwin_64.ijs
121
share/j/system/defs/hostdefs_darwin_64.ijs
114
share/j/system/defs/hostdefs_freebsd_64.ijs
122
share/j/system/defs/hostdefs_freebsd_64.ijs
Lines 120-125 Link Here
120
share/j/system/defs/hostdefs_win_64.ijs
128
share/j/system/defs/hostdefs_win_64.ijs
121
share/j/system/defs/netdefs_aix.ijs
129
share/j/system/defs/netdefs_aix.ijs
122
share/j/system/defs/netdefs_android.ijs
130
share/j/system/defs/netdefs_android.ijs
131
share/j/system/defs/netdefs_android_64.ijs
123
share/j/system/defs/netdefs_darwin.ijs
132
share/j/system/defs/netdefs_darwin.ijs
124
share/j/system/defs/netdefs_darwin_64.ijs
133
share/j/system/defs/netdefs_darwin_64.ijs
125
share/j/system/defs/netdefs_freebsd_64.ijs
134
share/j/system/defs/netdefs_freebsd_64.ijs
Lines 129-135 Link Here
129
share/j/system/defs/netdefs_sunos.ijs
138
share/j/system/defs/netdefs_sunos.ijs
130
share/j/system/defs/netdefs_win.ijs
139
share/j/system/defs/netdefs_win.ijs
131
share/j/system/defs/netdefs_win_64.ijs
140
share/j/system/defs/netdefs_win_64.ijs
132
share/j/system/main/ctag.ijs
133
share/j/system/main/regex.ijs
141
share/j/system/main/regex.ijs
134
share/j/system/main/regex.ijs.orig
142
share/j/system/main/regex.ijs.orig
135
share/j/system/main/socket.ijs
143
share/j/system/main/socket.ijs
Lines 138-146 Link Here
138
share/j/system/main/task.ijs
146
share/j/system/main/task.ijs
139
share/j/system/util/boot.ijs
147
share/j/system/util/boot.ijs
140
share/j/system/util/configure.ijs
148
share/j/system/util/configure.ijs
141
share/j/system/util/edit.png
142
share/j/system/util/edit.svg
143
share/j/system/util/jadetag.ijs
144
share/j/system/util/pacman.ijs
149
share/j/system/util/pacman.ijs
145
share/j/system/util/pm.ijs
150
share/j/system/util/pm.ijs
146
share/j/system/util/pp.ijs
151
share/j/system/util/pp.ijs
Lines 147-150 Link Here
147
share/j/system/util/project.ijs
152
share/j/system/util/project.ijs
148
share/j/system/util/scripts.ijs
153
share/j/system/util/scripts.ijs
149
share/j/system/util/tar.ijs
154
share/j/system/util/tar.ijs
150
share/j/system/util/term.png

Return to bug 236454