Mon Feb 29 13:51:28 2016 UTC ()
Ensure linker arguments get passed to ocamlmklib correctly.


(jperkin)
diff -r1.35 -r1.36 pkgsrc/lang/ocaml/buildlink3.mk
diff -r1.2 -r1.3 pkgsrc/lang/ocaml/files/wrapper.sh

cvs diff -r1.35 -r1.36 pkgsrc/lang/ocaml/buildlink3.mk (expand / switch to unified diff)

--- pkgsrc/lang/ocaml/buildlink3.mk 2016/01/16 10:32:53 1.35
+++ pkgsrc/lang/ocaml/buildlink3.mk 2016/02/29 13:51:27 1.36
@@ -1,40 +1,41 @@ @@ -1,40 +1,41 @@
1# $NetBSD: buildlink3.mk,v 1.35 2016/01/16 10:32:53 jaapb Exp $ 1# $NetBSD: buildlink3.mk,v 1.36 2016/02/29 13:51:27 jperkin Exp $
2 2
3BUILDLINK_TREE+= ocaml 3BUILDLINK_TREE+= ocaml
4 4
5.if !defined(OCAML_BUILDLINK3_MK) 5.if !defined(OCAML_BUILDLINK3_MK)
6OCAML_BUILDLINK3_MK:= 6OCAML_BUILDLINK3_MK:=
7 7
8BUILDLINK_API_DEPENDS.ocaml+= ocaml>=3.08.2 8BUILDLINK_API_DEPENDS.ocaml+= ocaml>=3.08.2
9BUILDLINK_ABI_DEPENDS.ocaml+= ocaml>=4.02.3 9BUILDLINK_ABI_DEPENDS.ocaml+= ocaml>=4.02.3
10BUILDLINK_PKGSRCDIR.ocaml?= ../../lang/ocaml 10BUILDLINK_PKGSRCDIR.ocaml?= ../../lang/ocaml
11#BUILDLINK_DEPMETHOD.ocaml?= build 11#BUILDLINK_DEPMETHOD.ocaml?= build
12 12
13BUILDLINK_PASSTHRU_DIRS+= ${BUILDLINK_PREFIX.ocaml}/lib/ocaml 13BUILDLINK_PASSTHRU_DIRS+= ${BUILDLINK_PREFIX.ocaml}/lib/ocaml
14 14
15BUILDLINK_TARGETS+= ocaml-wrappers 15BUILDLINK_TARGETS+= ocaml-wrappers
16OCAML_WRAPPERS= ocamlc ocamlc.opt ocamlcp ocamlmklib ocamlmktop \ 16OCAML_WRAPPERS= ocamlc ocamlc.opt ocamlcp ocamlmklib ocamlmktop \
17 ocamlopt ocamlopt.opt 17 ocamlopt ocamlopt.opt
18OCAMLBIN_WRAPPERS= ocaml ocamldep ocamllex ocamlyacc 18OCAMLBIN_WRAPPERS= ocaml ocamldep ocamllex ocamlyacc
19 19
20.PHONY: ocaml-wrappers 20.PHONY: ocaml-wrappers
21ocaml-wrappers: 21ocaml-wrappers:
22 ${RUN} \ 22 ${RUN} \
23 for w in ${OCAML_WRAPPERS}; do \ 23 for w in ${OCAML_WRAPPERS}; do \
24 ${SED} -e 's|@SH@|'${SH:Q}'|g' \ 24 ${SED} -e 's|@SH@|'${SH:Q}'|g' \
25 -e 's|@OCAML_PREFIX@|${BUILDLINK_PREFIX.ocaml}|g' \ 25 -e 's|@OCAML_PREFIX@|${BUILDLINK_PREFIX.ocaml}|g' \
26 -e 's|@CFLAGS@|'${CFLAGS:Q}'|g' \ 26 -e 's|@CFLAGS@|'${CFLAGS:Q}'|g' \
27 -e 's|@LDFLAGS@|'${LDFLAGS:Q}'|g' \ 27 -e 's|@LDFLAGS@|'${LDFLAGS:Q}'|g' \
 28 -e 's|@WRAPPEE@|'$$w'|g' \
28 < ${.CURDIR}/../../lang/ocaml/files/wrapper.sh \ 29 < ${.CURDIR}/../../lang/ocaml/files/wrapper.sh \
29 > ${BUILDLINK_DIR}/bin/"$$w"; \ 30 > ${BUILDLINK_DIR}/bin/"$$w"; \
30 ${CHMOD} +x ${BUILDLINK_DIR}/bin/"$$w"; \ 31 ${CHMOD} +x ${BUILDLINK_DIR}/bin/"$$w"; \
31 done 32 done
32 ${RUN} \ 33 ${RUN} \
33 for w in ${OCAMLBIN_WRAPPERS}; do \ 34 for w in ${OCAMLBIN_WRAPPERS}; do \
34 ${LN} -s ${BUILDLINK_PREFIX.ocaml}/bin/"$$w" \ 35 ${LN} -s ${BUILDLINK_PREFIX.ocaml}/bin/"$$w" \
35 ${BUILDLINK_DIR}/bin/"$$w"; \ 36 ${BUILDLINK_DIR}/bin/"$$w"; \
36 done 37 done
37 38
38.include "../../mk/termcap.buildlink3.mk" 39.include "../../mk/termcap.buildlink3.mk"
39 40
40.endif # OCAML_BUILDLINK3_MK 41.endif # OCAML_BUILDLINK3_MK

cvs diff -r1.2 -r1.3 pkgsrc/lang/ocaml/files/wrapper.sh (expand / switch to unified diff)

--- pkgsrc/lang/ocaml/files/wrapper.sh 2005/02/04 21:35:51 1.2
+++ pkgsrc/lang/ocaml/files/wrapper.sh 2016/02/29 13:51:28 1.3
@@ -1,21 +1,25 @@ @@ -1,21 +1,25 @@
1#!@SH@ 1#!@SH@
2 2
3# $NetBSD: wrapper.sh,v 1.2 2005/02/04 21:35:51 adrianp Exp $ 3# $NetBSD: wrapper.sh,v 1.3 2016/02/29 13:51:28 jperkin Exp $
4 4
5BINDIR='@OCAML_PREFIX@' 5BINDIR='@OCAML_PREFIX@'
6CFLAGS='@CFLAGS@' 6CFLAGS='@CFLAGS@'
7LDFLAGS='@LDFLAGS@' 7LDFLAGS='@LDFLAGS@'
 8WRAPPEE='@WRAPPEE@'
8 9
9if echo "$@" | grep ' -c ' >/dev/null 10if echo "$@" | grep ' -c ' >/dev/null || [ "${WRAPPEE}" = "ocamlmklib" ]; then
10then 
11 flags="${CFLAGS}" 11 flags="${CFLAGS}"
12else 12else
13 flags="${CFLAGS} ${LDFLAGS}" 13 flags="${CFLAGS} ${LDFLAGS}"
14fi 14fi
15 15
16for f in ${flags} 16for f in ${flags}
17do 17do
18 MLFLAGS="${MLFLAGS} -ccopt ${f}" 18 MLFLAGS="${MLFLAGS} -ccopt ${f}"
19done 19done
20 20
21exec "@OCAML_PREFIX@/bin/`basename $0`" ${MLFLAGS} "$@" 21if [ "${WRAPPEE}" = "ocamlmklib" ]; then
 22 MLFLAGS="${MLFLAGS} ${LDFLAGS}"
 23fi
 24
 25exec "@OCAML_PREFIX@/bin/${WRAPPEE}" ${MLFLAGS} "$@"