diff options
author | jperkin <jperkin@pkgsrc.org> | 2021-01-12 11:19:17 +0000 |
---|---|---|
committer | jperkin <jperkin@pkgsrc.org> | 2021-01-12 11:19:17 +0000 |
commit | 248c210b25a05a4b2d6546cce2c87c34e0db89d1 (patch) | |
tree | 22cf599b4f3dd7bd71ec000f38dcb5224515ba03 /lang/ocaml | |
parent | 9439d4044f3571c3e3cc2a98fcc8550d49232dca (diff) | |
download | pkgsrc-248c210b25a05a4b2d6546cce2c87c34e0db89d1.tar.gz |
ocaml: Fix ocamlmklib wrapper script for ld options.
Tested by wiz for relro.
Diffstat (limited to 'lang/ocaml')
-rw-r--r-- | lang/ocaml/files/wrapper.sh | 19 |
1 files changed, 13 insertions, 6 deletions
diff --git a/lang/ocaml/files/wrapper.sh b/lang/ocaml/files/wrapper.sh index 32a2a4c5225..50f78d8cc53 100644 --- a/lang/ocaml/files/wrapper.sh +++ b/lang/ocaml/files/wrapper.sh @@ -1,6 +1,6 @@ #!@SH@ # -# $NetBSD: wrapper.sh,v 1.4 2021/01/10 11:13:33 jperkin Exp $ +# $NetBSD: wrapper.sh,v 1.5 2021/01/12 11:19:17 jperkin Exp $ CFLAGS='@CFLAGS@' LDFLAGS='@LDFLAGS@' @@ -10,13 +10,20 @@ for flag in ${CFLAGS}; do cflags="${cflags} -ccopt ${flag}" done for flag in ${LDFLAGS}; do - ldflags="${ldflags} -ccopt ${flag}" + cldflags="${cldflags} -ccopt ${flag}" + ldflags="${ldflags} -ldopt ${flag}" done -if echo "$@" | grep ' -c ' >/dev/null; then - MLFLAGS="${cflags}" -else +case "${WRAPPEE} $@" in +ocamlmklib*) MLFLAGS="${cflags} ${ldflags}" -fi + ;; +*" -c "*) + MLFLAGS="${cflags}" + ;; +*) + MLFLAGS="${cflags} ${cldflags}" + ;; +esac exec "@OCAML_PREFIX@/bin/${WRAPPEE}" ${MLFLAGS} "$@" |