aboutsummaryrefslogtreecommitdiffstats
path: root/lang/ocaml
diff options
context:
space:
mode:
Diffstat (limited to 'lang/ocaml')
-rw-r--r--lang/ocaml/Makefile4
-rw-r--r--lang/ocaml/files/patch-configure23
2 files changed, 22 insertions, 5 deletions
diff --git a/lang/ocaml/Makefile b/lang/ocaml/Makefile
index 46ed723edb9e..71396e9463ca 100644
--- a/lang/ocaml/Makefile
+++ b/lang/ocaml/Makefile
@@ -20,7 +20,6 @@ LICENSE_FILE_QPL10= ${WRKSRC}/LICENSE
LICENSE_PERMS_QPL10= dist-mirror dist-sell pkg-mirror pkg-sell auto-accept
BROKEN_aarch64= Does not build: sh: as: not found
-BROKEN_armv7= Does not build: hasgot.c: undefined reference to `tgetent'
BROKEN_sparc64= No rule to make target 'none.o', needed by 'libasmrun.a'
BROKEN_mips64= No ASM support
BROKEN_mips= No ASM support
@@ -33,6 +32,7 @@ ALL_TARGET= world.opt
STRIP=
SSP_UNSAFE= yes
MAKE_JOBS_UNSAFE= yes
+LDFLAGS_armv7= -Wl,-znotext
LDFLAGS_i386= -Wl,-znotext
CONFIGURE_ARGS= -verbose -prefix "${PREFIX}" \
@@ -151,7 +151,7 @@ post-install:
${INSTALL_DATA} ${_DISTDIR}${DOCSDISTNAME}-refman.pdf ${STAGEDIR}${DOCSDIR}
.endif
# Spacetime profiling is only available for native code on 64-bit targets
-.if ${ARCH} == i386 || ${ARCH} == powerpc
+.if ${ARCH} == armv7 || ${ARCH} == i386 || ${ARCH} == powerpc
@${REINPLACE_CMD} -e '/raw_spacetime_lib/d' ${TMPPLIST}
.endif
diff --git a/lang/ocaml/files/patch-configure b/lang/ocaml/files/patch-configure
index 7fbf89721503..547042cbff71 100644
--- a/lang/ocaml/files/patch-configure
+++ b/lang/ocaml/files/patch-configure
@@ -35,7 +35,15 @@
powerpc-*-netbsd*) arch=power; model=ppc; system=elf;;
powerpc-*-openbsd*) arch=power; model=ppc; system=bsd_elf;;
s390x*-*-linux*) arch=s390x; model=z10; system=elf;;
-@@ -946,6 +951,7 @@ case "$target" in
+@@ -930,6 +935,7 @@ case "$target" in
+ armv6t2*-*-linux-gnueabi) arch=arm; model=armv6t2; system=linux_eabi;;
+ armv6*-*-linux-gnueabi) arch=arm; model=armv6; system=linux_eabi;;
+ armv6*-*-freebsd*) arch=arm; model=armv6; system=freebsd;;
++ armv7*-*-freebsd*) arch=arm; model=armv7; system=freebsd;;
+ earmv6*-*-netbsd*) arch=arm; model=armv6; system=netbsd;;
+ earmv7*-*-netbsd*) arch=arm; model=armv7; system=netbsd;;
+ armv5te*-*-linux-gnueabi) arch=arm; model=armv5te; system=linux_eabi;;
+@@ -946,6 +952,7 @@ case "$target" in
x86_64-*-darwin*) arch=amd64; system=macosx;;
x86_64-*-mingw*) arch=amd64; system=mingw;;
aarch64-*-linux*) arch=arm64; system=linux;;
@@ -43,7 +51,7 @@
x86_64-*-cygwin*) arch=amd64; system=cygwin;;
esac
-@@ -1051,10 +1057,12 @@ case "$arch,$system" in
+@@ -1051,10 +1058,12 @@ case "$arch,$system" in
case "$nativecc" in gcc*) ;; *) cc_profile='-xpg';; esac;;
amd64,linux) profiling='true';;
amd64,openbsd) profiling='true';;
@@ -56,7 +64,16 @@
arm,linux*) profiling='true';;
power,elf) profiling='true';;
power,bsd*) profiling='true';;
-@@ -2029,7 +2037,7 @@ MKLIB=${TOOLPREF}ar rc \$(1) \$(2); ${TOOLPREF}ranlib
+@@ -1168,7 +1177,7 @@ fi
+
+ if test "$with_curses" = "yes"; then
+ for libs in "" "-lcurses" "-ltermcap" "-lcurses -ltermcap" "-lncurses"; do
+- if sh ./hasgot $libs tgetent tgetstr tgetnum tputs; then
++ if sh ./hasgot -i term.h $libs tgetent tgetstr tgetnum tputs; then
+ inf "termcap functions found (with libraries '$libs')"
+ echo "#define HAS_TERMCAP" >> s.h
+ curseslibs="${libs}"
+@@ -2029,7 +2037,7 @@ MKLIB=${TOOLPREF}ar rc \$(1) \$(2); ${TOOLPREF}ranlib
#ml Printf.sprintf "${TOOLPREF}ar rc %s %s %s; ${TOOLPREF}ranlib %s"
#ml out opts files out;;
EOF