head 1.3; access; symbols pkgsrc-2023Q4:1.3.0.62 pkgsrc-2023Q4-base:1.3 pkgsrc-2023Q3:1.3.0.60 pkgsrc-2023Q3-base:1.3 pkgsrc-2023Q2:1.3.0.58 pkgsrc-2023Q2-base:1.3 pkgsrc-2023Q1:1.3.0.56 pkgsrc-2023Q1-base:1.3 pkgsrc-2022Q4:1.3.0.54 pkgsrc-2022Q4-base:1.3 pkgsrc-2022Q3:1.3.0.52 pkgsrc-2022Q3-base:1.3 pkgsrc-2022Q2:1.3.0.50 pkgsrc-2022Q2-base:1.3 pkgsrc-2022Q1:1.3.0.48 pkgsrc-2022Q1-base:1.3 pkgsrc-2021Q4:1.3.0.46 pkgsrc-2021Q4-base:1.3 pkgsrc-2021Q3:1.3.0.44 pkgsrc-2021Q3-base:1.3 pkgsrc-2021Q2:1.3.0.42 pkgsrc-2021Q2-base:1.3 pkgsrc-2021Q1:1.3.0.40 pkgsrc-2021Q1-base:1.3 pkgsrc-2020Q4:1.3.0.38 pkgsrc-2020Q4-base:1.3 pkgsrc-2020Q3:1.3.0.36 pkgsrc-2020Q3-base:1.3 pkgsrc-2020Q2:1.3.0.32 pkgsrc-2020Q2-base:1.3 pkgsrc-2020Q1:1.3.0.12 pkgsrc-2020Q1-base:1.3 pkgsrc-2019Q4:1.3.0.34 pkgsrc-2019Q4-base:1.3 pkgsrc-2019Q3:1.3.0.30 pkgsrc-2019Q3-base:1.3 pkgsrc-2019Q2:1.3.0.28 pkgsrc-2019Q2-base:1.3 pkgsrc-2019Q1:1.3.0.26 pkgsrc-2019Q1-base:1.3 pkgsrc-2018Q4:1.3.0.24 pkgsrc-2018Q4-base:1.3 pkgsrc-2018Q3:1.3.0.22 pkgsrc-2018Q3-base:1.3 pkgsrc-2018Q2:1.3.0.20 pkgsrc-2018Q2-base:1.3 pkgsrc-2018Q1:1.3.0.18 pkgsrc-2018Q1-base:1.3 pkgsrc-2017Q4:1.3.0.16 pkgsrc-2017Q4-base:1.3 pkgsrc-2017Q3:1.3.0.14 pkgsrc-2017Q3-base:1.3 pkgsrc-2017Q2:1.3.0.10 pkgsrc-2017Q2-base:1.3 pkgsrc-2017Q1:1.3.0.8 pkgsrc-2017Q1-base:1.3 pkgsrc-2016Q4:1.3.0.6 pkgsrc-2016Q4-base:1.3 pkgsrc-2016Q3:1.3.0.4 pkgsrc-2016Q3-base:1.3 pkgsrc-2016Q2:1.3.0.2 pkgsrc-2016Q2-base:1.3; locks; strict; comment @# @; 1.3 date 2016.06.25.13.52.28; author jaapb; state Exp; branches; next 1.2; commitid Sj1aVp8v9BC5TQbz; 1.2 date 2016.06.17.08.53.42; author jaapb; state Exp; branches; next 1.1; commitid mp117SGAwvHavNaz; 1.1 date 2016.04.12.15.52.29; author jaapb; state Exp; branches; next ; commitid 1dugVGWFu6IIWl2z; desc @@ 1.3 log @Updated pkginstall framework to correct bug in findlib registration. Discussed on packages@@ and okayed by jperkin. @ text @# $NetBSD: ocaml-findlib-register,v 1.2 2016/06/17 08:53:42 jaapb Exp $ # # Generate an +OCAML_FINDLIB_REGISTER script that handles registration for # findlib after a binary installation # case "${STAGE},$1" in UNPACK,|UNPACK,+OCAML_FINDLIB_REGISTER) ${CAT} > ./+OCAML_FINDLIB_REGISTER << 'EOF' #!@@SH@@ # # +OCAML_FINDLIB_REGISTER - ocaml-findlib registration script # # Usage: ./+OCAML_FINDLIB_REGISTER ADD|REMOVE [findlib_pkg_dir] # # This script supports two actions, ADD and REMOVE, that will # add or remove directories from the ocaml ld.conf file (standard location # is in LOCALBASE/lib/ocaml/ld.conf) # ECHO="@@ECHO@@" GREP="@@GREP@@" MV="@@MV@@" OCAML_FINDLIB_DIRS="@@OCAML_FINDLIB_DIRS@@" OCAML_FINDLIB_REGISTER="@@OCAML_FINDLIB_REGISTER@@" OCAML_SITELIBDIR="@@OCAML_SITELIBDIR@@" PWD_CMD="@@PWD_CMD@@" RM="@@RM@@" TOUCH="@@TOUCH@@" SELF=$0 ACTION=$1 LDCONF="@@PREFIX@@/lib/ocaml/ld.conf" CURDIR=`${PWD_CMD}` PKG_METADATA_DIR="${2-${CURDIR}}" : ${PKGNAME=${PKG_METADATA_DIR##*/}} : ${PKG_PREFIX=@@PREFIX@@} case "${OCAML_FINDLIB_REGISTER_VERBOSE:-@@OCAML_FINDLIB_REGISTER_VERBOSE@@}" in [Yy][Ee][Ss]|[Tt][Rr][Uu][Ee]|[Oo][Nn]|1) echo="${ECHO}" ;; [Nn][Oo]|[Ff][Aa][Ll][Ss][Ee]|[Oo][Ff][Ff]|0) echo=":" ;; esac ${TOUCH} "${LDCONF}.tmp" for i in ${OCAML_FINDLIB_DIRS} do ${GREP} -F -v -- "${OCAML_SITELIBDIR}/$i" < "${LDCONF}" > "${LDCONF}.tmp" case $ACTION in ADD) $echo "${PKGNAME}: adding $i to ${LDCONF}" ${ECHO} "@@PREFIX@@/${OCAML_SITELIBDIR}/$i" >> "${LDCONF}.tmp" ;; REMOVE) $echo "${PKGNAME}: removing $i from ${LDCONF}" ;; esac ${MV} -f "${LDCONF}.tmp" "${LDCONF}" done EOF ${CHMOD} +x ./+OCAML_FINDLIB_REGISTER ;; esac @ 1.2 log @Two fixes to the ocaml-findlib-register pkginstall fragment: - set a sensible default for OCAML_FINDLIB_DIRS (and factorise out OCAML_SITELIBDIR) - make it possible not to register any directory by setting OCAML_FINDLIB_REGISTER to no @ text @d1 1 a1 1 # $NetBSD: ocaml-findlib-register,v 1.1 2016/04/12 15:52:29 jaapb Exp $ d48 1 a48 1 ${TOUCH} ${LDCONF}.tmp d51 1 a51 1 ${GREP} -F -v -- "${OCAML_SITELIBDIR}/$i" < "${LDCONF}" >> "${LDCONF}.tmp" d62 1 a63 1 ${MV} -f "${LDCONF}.tmp" "${LDCONF}" @ 1.1 log @Added a pkginstall fragment that takes over from ocaml-findlib-register (a script included in the ocaml-findlib package) and removes the need to call said script explicitly from PLIST. Packages that use findlib will now automatically add directories that are in OCAML_FINDLIB_DIRS (set by default to $(OCAML_SITELIBDIR)/${PKGBASE}) to the file ${PREFIX}/lib/ocaml/ld.conf. This behaviour can be disabled by undefining OCAML_FINDLIB_REGISTER. @ text @d1 1 a1 1 # $NetBSD: info-files,v 1.4 2007/07/12 19:41:46 jlam Exp $ d23 2 d51 1 a51 1 ${GREP} -F -v -- "$i" < "${LDCONF}" >> "${LDCONF}.tmp" d55 1 a55 1 ${ECHO} "@@PREFIX@@/$i" >> "${LDCONF}.tmp" @