Fri Feb 23 17:04:43 2018 UTC ()
Add support for DESTDIR

Fix building math/z3 in privileged mode when not building as root:
ocamlfind: Cannot mkdir /usr/pkg/lib/ocaml/site-lib/Z3: Permission denied

This now uses the option -destdir when calling ocamlfind(1). It also
includes a workaround for what might be a bug in ocamlfind(1), where it
also wants to update ld.conf in spite of specifying -destdir.

Tested on NetBSD/amd64.

ok dholland@


(khorben)
diff -r1.2 -r1.3 pkgsrc/math/z3/distinfo
diff -r1.1 -r1.2 pkgsrc/math/z3/patches/patch-scripts_mk__util.py

cvs diff -r1.2 -r1.3 pkgsrc/math/z3/distinfo (expand / switch to unified diff)

--- pkgsrc/math/z3/distinfo 2016/07/16 04:02:13 1.2
+++ pkgsrc/math/z3/distinfo 2018/02/23 17:04:43 1.3
@@ -1,13 +1,13 @@ @@ -1,13 +1,13 @@
1$NetBSD: distinfo,v 1.2 2016/07/16 04:02:13 markd Exp $ 1$NetBSD: distinfo,v 1.3 2018/02/23 17:04:43 khorben Exp $
2 2
3SHA1 (z3-4.4.1.tar.gz) = 60094acaa53459ec694899aca9f17aa830875610 3SHA1 (z3-4.4.1.tar.gz) = 60094acaa53459ec694899aca9f17aa830875610
4RMD160 (z3-4.4.1.tar.gz) = 2c891e115a5d097dbbda53c1b322c65bc5b679f7 4RMD160 (z3-4.4.1.tar.gz) = 2c891e115a5d097dbbda53c1b322c65bc5b679f7
5SHA512 (z3-4.4.1.tar.gz) = 76991a24f47f2b53ceb8d7a9a6be19913c57994ffb6cf6acfe30f61b2e73959cf02a99f656053594fccb5aaf4d1f44b3ae7e51f1c8953b213d738ceeeaea74f8 5SHA512 (z3-4.4.1.tar.gz) = 76991a24f47f2b53ceb8d7a9a6be19913c57994ffb6cf6acfe30f61b2e73959cf02a99f656053594fccb5aaf4d1f44b3ae7e51f1c8953b213d738ceeeaea74f8
6Size (z3-4.4.1.tar.gz) = 3347371 bytes 6Size (z3-4.4.1.tar.gz) = 3347371 bytes
7SHA1 (z3-jumbo-patch-20151123.gz) = d31b8840575536104680bb624b15cc1c2084a7fb 7SHA1 (z3-jumbo-patch-20151123.gz) = d31b8840575536104680bb624b15cc1c2084a7fb
8RMD160 (z3-jumbo-patch-20151123.gz) = eb74bd41125e1b07a7f873774a2c354e3c8ca378 8RMD160 (z3-jumbo-patch-20151123.gz) = eb74bd41125e1b07a7f873774a2c354e3c8ca378
9SHA512 (z3-jumbo-patch-20151123.gz) = c23d363bf53b40c3ccbfc10d03ef3621d6abfa9cf86375e7e853e85a0971db70992173df04df1a895e16d4a9b533e955953455a7533889963d2920a4b48d0056 9SHA512 (z3-jumbo-patch-20151123.gz) = c23d363bf53b40c3ccbfc10d03ef3621d6abfa9cf86375e7e853e85a0971db70992173df04df1a895e16d4a9b533e955953455a7533889963d2920a4b48d0056
10Size (z3-jumbo-patch-20151123.gz) = 4395 bytes 10Size (z3-jumbo-patch-20151123.gz) = 4395 bytes
11SHA1 (patch-scripts_mk__util.py) = 1ab32d86649c5b3e83e9b20632d21018a1e22617 11SHA1 (patch-scripts_mk__util.py) = 84ccd3fa33a3fcffa53af6f838f6caacdfec40a8
12SHA1 (patch-src_util_debug.cpp) = 607ea4e078884920a3034cf00779dce25fc8e623 12SHA1 (patch-src_util_debug.cpp) = 607ea4e078884920a3034cf00779dce25fc8e623
13SHA1 (patch-src_util_mpz.cpp) = 69988bec1472df14209ae0dbfdc8a94c9e71cc82 13SHA1 (patch-src_util_mpz.cpp) = 69988bec1472df14209ae0dbfdc8a94c9e71cc82

cvs diff -r1.1 -r1.2 pkgsrc/math/z3/patches/patch-scripts_mk__util.py (expand / switch to unified diff)

--- pkgsrc/math/z3/patches/patch-scripts_mk__util.py 2015/11/24 05:45:58 1.1
+++ pkgsrc/math/z3/patches/patch-scripts_mk__util.py 2018/02/23 17:04:43 1.2
@@ -1,16 +1,28 @@ @@ -1,16 +1,28 @@
1$NetBSD: patch-scripts_mk__util.py,v 1.1 2015/11/24 05:45:58 dholland Exp $ 1$NetBSD: patch-scripts_mk__util.py,v 1.2 2018/02/23 17:04:43 khorben Exp $
2 2
3For pkgsrc, use site-packages rather than dist-packages. 3For pkgsrc, use site-packages rather than dist-packages.
 4Add support for DESTDIR.
4 5
5diff -r 59247c69b92d scripts/mk_util.py 6diff -r 59247c69b92d scripts/mk_util.py
6--- scripts/mk_util.py Mon Nov 23 19:08:36 2015 -0500 7--- scripts/mk_util.py.orig 2018-02-22 23:06:23.490379838 +0000
7+++ scripts/mk_util.py Mon Nov 23 19:50:45 2015 -0500 8+++ scripts/mk_util.py
8@@ -637,7 +637,7 @@ 9@@ -637,7 +637,7 @@ def parse_options():
9 SLOW_OPTIMIZE = True 10 SLOW_OPTIMIZE = True
10 elif not IS_WINDOWS and opt in ('-p', '--prefix'): 11 elif not IS_WINDOWS and opt in ('-p', '--prefix'):
11 PREFIX = arg 12 PREFIX = arg
12- PYTHON_PACKAGE_DIR = os.path.join(PREFIX, 'lib', 'python%s' % distutils.sysconfig.get_python_version(), 'dist-packages') 13- PYTHON_PACKAGE_DIR = os.path.join(PREFIX, 'lib', 'python%s' % distutils.sysconfig.get_python_version(), 'dist-packages')
13+ PYTHON_PACKAGE_DIR = os.path.join(PREFIX, 'lib', 'python%s' % distutils.sysconfig.get_python_version(), 'site-packages') 14+ PYTHON_PACKAGE_DIR = os.path.join(PREFIX, 'lib', 'python%s' % distutils.sysconfig.get_python_version(), 'site-packages')
14 mk_dir(DESTDIR + PYTHON_PACKAGE_DIR) 15 mk_dir(DESTDIR + PYTHON_PACKAGE_DIR)
15 if sys.version >= "3": 16 if sys.version >= "3":
16 mk_dir(os.path.join(DESTDIR + PYTHON_PACKAGE_DIR, '__pycache__')) 17 mk_dir(os.path.join(DESTDIR + PYTHON_PACKAGE_DIR, '__pycache__'))
 18@@ -1506,8 +1506,8 @@ class MLComponent(Component):
 19 get_component(Z3_DLL_COMPONENT).dll_name + '$(SO_EXT)',
 20 os.path.join(sub_dir, 'z3ml.cmxa'),
 21 os.path.join(sub_dir, 'META')))
 22- out.write('\t%s remove Z3\n' % (OCAMLFIND))
 23- out.write('\t%s install Z3 %s' % (OCAMLFIND, (os.path.join(sub_dir, 'META'))))
 24+ out.write('\t%s remove -destdir $(DESTDIR)/ -ldconf ignore Z3\n' % (OCAMLFIND))
 25+ out.write('\t%s install -destdir $(DESTDIR)/ -ldconf ignore Z3 %s' % (OCAMLFIND, (os.path.join(sub_dir, 'META'))))
 26 for m in modules:
 27 out.write(' %s.cma' % (os.path.join(sub_dir, m)))
 28 out.write(' %s.cmx' % (os.path.join(sub_dir, m)))