Wed Jul 26 09:41:31 2017 UTC ()
Changed ocaml.mk to allow for multiple opam .install files


(jaapb)
diff -r1.13 -r1.14 pkgsrc/mk/ocaml.mk

cvs diff -r1.13 -r1.14 pkgsrc/mk/Attic/ocaml.mk (expand / switch to unified diff)

--- pkgsrc/mk/Attic/ocaml.mk 2017/07/23 12:20:46 1.13
+++ pkgsrc/mk/Attic/ocaml.mk 2017/07/26 09:41:31 1.14
@@ -1,14 +1,14 @@ @@ -1,14 +1,14 @@
1# $NetBSD: ocaml.mk,v 1.13 2017/07/23 12:20:46 jaapb Exp $ 1# $NetBSD: ocaml.mk,v 1.14 2017/07/26 09:41:31 jaapb Exp $
2# 2#
3# This Makefile fragment handles the common variables used by OCaml packages. 3# This Makefile fragment handles the common variables used by OCaml packages.
4# 4#
5# Build def variables: 5# Build def variables:
6# OCAML_USE_OPT_COMPILER  6# OCAML_USE_OPT_COMPILER
7# if set to yes, will enable optimised (native code) compilation 7# if set to yes, will enable optimised (native code) compilation
8# default value: depends on architecture 8# default value: depends on architecture
9# 9#
10# PLIST variable: 10# PLIST variable:
11# PLIST.ocaml-opt for files only installed when using the optimised compiler 11# PLIST.ocaml-opt for files only installed when using the optimised compiler
12# Set based on OCAML_USE_OPT_COMPILER 12# Set based on OCAML_USE_OPT_COMPILER
13#  13#
14# Package-settable variables: 14# Package-settable variables:
@@ -49,27 +49,28 @@ _PKG_VARS.ocaml= \ @@ -49,27 +49,28 @@ _PKG_VARS.ocaml= \
49 OCAML_FINDLIB_REGISTER \ 49 OCAML_FINDLIB_REGISTER \
50 OCAML_USE_OASIS \ 50 OCAML_USE_OASIS \
51 OCAML_USE_OASIS_DYNRUN \ 51 OCAML_USE_OASIS_DYNRUN \
52 OASIS_BUILD_ARGS \ 52 OASIS_BUILD_ARGS \
53 OCAML_USE_OPAM \ 53 OCAML_USE_OPAM \
54 OCAML_USE_TOPKG \ 54 OCAML_USE_TOPKG \
55 OCAML_TOPKG_NAME \ 55 OCAML_TOPKG_NAME \
56 OCAML_TOPKG_DOCDIR \ 56 OCAML_TOPKG_DOCDIR \
57 OCAML_TOPKG_TARGETS \ 57 OCAML_TOPKG_TARGETS \
58 OCAML_TOPKG_OPTIONAL_TARGETS \ 58 OCAML_TOPKG_OPTIONAL_TARGETS \
59 OCAML_USE_JBUILDER \ 59 OCAML_USE_JBUILDER \
60 JBUILDER_BUILD_FLAGS \ 60 JBUILDER_BUILD_FLAGS \
61 JBUILDER_BUILD_TARGETS \ 61 JBUILDER_BUILD_TARGETS \
62 OCAML_BUILD_ARGS 62 OCAML_BUILD_ARGS \
 63 OPAM_INSTALL_FILES
63_DEF_VARS.ocaml= \ 64_DEF_VARS.ocaml= \
64 OCAML_USE_OPT_COMPILER 65 OCAML_USE_OPT_COMPILER
65_SYS_VARS.ocaml= \ 66_SYS_VARS.ocaml= \
66 OCAML_SITELIBDIR 67 OCAML_SITELIBDIR
67 68
68# Default value of OCAML_USE_FINDLIB 69# Default value of OCAML_USE_FINDLIB
69OCAML_USE_FINDLIB?= no 70OCAML_USE_FINDLIB?= no
70 71
71# Default value of OCAML_USE_OASIS 72# Default value of OCAML_USE_OASIS
72OCAML_USE_OASIS?= no 73OCAML_USE_OASIS?= no
73 74
74# Default value of OCAML_USE_OASIS_DYNRUN 75# Default value of OCAML_USE_OASIS_DYNRUN
75OCAML_USE_OASIS_DYNRUN?= no 76OCAML_USE_OASIS_DYNRUN?= no
@@ -82,26 +83,27 @@ OCAML_USE_TOPKG?= no @@ -82,26 +83,27 @@ OCAML_USE_TOPKG?= no
82 83
83# Default value of OCAML_USE_JBUILDER 84# Default value of OCAML_USE_JBUILDER
84OCAML_USE_JBUILDER?= no 85OCAML_USE_JBUILDER?= no
85 86
86OCAML_TOPKG_NAME?= ${PKGBASE:S/^ocaml-//} 87OCAML_TOPKG_NAME?= ${PKGBASE:S/^ocaml-//}
87OCAML_TOPKG_DOCDIR?= ${PREFIX}/share/doc 88OCAML_TOPKG_DOCDIR?= ${PREFIX}/share/doc
88 89
89OCAML_TOPKG_NAME?= ${PKGBASE:S/^ocaml-//} 90OCAML_TOPKG_NAME?= ${PKGBASE:S/^ocaml-//}
90 91
91OCAML_TOPKG_TARGETS?= # empty 92OCAML_TOPKG_TARGETS?= # empty
92OCAML_TOPKG_OPTIONAL_TARGETS?= # empty 93OCAML_TOPKG_OPTIONAL_TARGETS?= # empty
93OCAML_TOPKG_NATIVE_TARGETS?= # empty 94OCAML_TOPKG_NATIVE_TARGETS?= # empty
94 95
 96OPAM_INSTALL_FILES?= ${OCAML_TOPKG_NAME}
95JBUILDER_BUILD_FLAGS?= # empty 97JBUILDER_BUILD_FLAGS?= # empty
96JBUILDER_BUILD_TARGETS?= @install 98JBUILDER_BUILD_TARGETS?= @install
97 99
98# Default value of OASIS_BUILD_ARGS 100# Default value of OASIS_BUILD_ARGS
99OASIS_BUILD_ARGS?= # empty 101OASIS_BUILD_ARGS?= # empty
100 102
101# Default value of OCAML_ENABLE_BINARY_COMPILER 103# Default value of OCAML_ENABLE_BINARY_COMPILER
102.if (${MACHINE_ARCH} == "i386") || (${MACHINE_ARCH} == "x86_64") || \ 104.if (${MACHINE_ARCH} == "i386") || (${MACHINE_ARCH} == "x86_64") || \
103 (${MACHINE_ARCH} == "powerpc") || (${MACHINE_ARCH} == "sparc") || \ 105 (${MACHINE_ARCH} == "powerpc") || (${MACHINE_ARCH} == "sparc") || \
104 (${MACHINE_ARCH} == "arm") 106 (${MACHINE_ARCH} == "arm")
105OCAML_USE_OPT_COMPILER?= yes 107OCAML_USE_OPT_COMPILER?= yes
106.else 108.else
107OCAML_USE_OPT_COMPILER?= no 109OCAML_USE_OPT_COMPILER?= no
@@ -216,30 +218,32 @@ do-install: @@ -216,30 +218,32 @@ do-install:
216 218
217do-build: 219do-build:
218 ${RUN} cd ${WRKSRC} && \ 220 ${RUN} cd ${WRKSRC} && \
219 ${SETENV} ${MAKE_ENV} ocaml pkg/pkg.ml build 221 ${SETENV} ${MAKE_ENV} ocaml pkg/pkg.ml build
220 222
221.endif # topkg 223.endif # topkg
222 224
223# 225#
224# opam targets 226# opam targets
225# 227#
226.if ${OCAML_USE_OPAM} == "yes"  228.if ${OCAML_USE_OPAM} == "yes"
227 229
228do-install: 230do-install:
229 ${RUN} cd ${WRKSRC} && opam-installer -i --prefix ${DESTDIR}${PREFIX} \ 231 ${RUN} for i in ${OPAM_INSTALL_FILES}; do \
 232 cd ${WRKSRC} && opam-installer -i --prefix ${DESTDIR}${PREFIX} \
230 --libdir ${OCAML_SITELIBDIR} \ 233 --libdir ${OCAML_SITELIBDIR} \
231 --docdir ${DESTDIR}/${OCAML_TOPKG_DOCDIR} \ 234 --docdir ${DESTDIR}/${OCAML_TOPKG_DOCDIR} \
232 ${OCAML_TOPKG_NAME}.install 235 $$i.install; \
 236 done
233 237
234.endif # topkg-opam 238.endif # topkg-opam
235 239
236# 240#
237# jbuilder targets 241# jbuilder targets
238# 242#
239.if ${OCAML_USE_JBUILDER} == "yes" 243.if ${OCAML_USE_JBUILDER} == "yes"
240 244
241do-build: 245do-build:
242 ${RUN} cd ${WRKSRC} && jbuilder build -j ${MAKE_JOBS} \ 246 ${RUN} cd ${WRKSRC} && jbuilder build -j ${MAKE_JOBS} \
243 ${JBUILDER_BUILD_FLAGS} ${JBUILDER_BUILD_TARGETS} 247 ${JBUILDER_BUILD_FLAGS} ${JBUILDER_BUILD_TARGETS}
244 248
245.endif # topkg-jbuilder 249.endif # topkg-jbuilder