Thu Sep 21 01:44:06 2023 UTC ()
meson: note packaging bug causing bulk build failures

A fix is being tested that works for py-pandas multi-version builds in
pbulk, but it needs refinement, as does patching for py-scipy. (And
patching each package doesn't scale as a practice, but that's probably
more a concern for post-branch.) Add this note for now as a stop-gap,
should someone else be looking into this.


(gutteridge)
diff -r1.55 -r1.56 pkgsrc/devel/meson/Makefile

cvs diff -r1.55 -r1.56 pkgsrc/devel/meson/Makefile (expand / switch to unified diff)

--- pkgsrc/devel/meson/Makefile 2023/08/25 13:41:30 1.55
+++ pkgsrc/devel/meson/Makefile 2023/09/21 01:44:06 1.56
@@ -1,14 +1,14 @@ @@ -1,14 +1,14 @@
1# $NetBSD: Makefile,v 1.55 2023/08/25 13:41:30 adam Exp $ 1# $NetBSD: Makefile,v 1.56 2023/09/21 01:44:06 gutteridge Exp $
2 2
3DISTNAME= meson-1.2.1 3DISTNAME= meson-1.2.1
4PKGREVISION= 2 4PKGREVISION= 2
5CATEGORIES= devel python 5CATEGORIES= devel python
6MASTER_SITES= ${MASTER_SITE_PYPI:=m/meson/} 6MASTER_SITES= ${MASTER_SITE_PYPI:=m/meson/}
7 7
8MAINTAINER= pkgsrc-users@NetBSD.org 8MAINTAINER= pkgsrc-users@NetBSD.org
9HOMEPAGE= https://mesonbuild.com/ 9HOMEPAGE= https://mesonbuild.com/
10COMMENT= Open source build system meant to be fast and user friendly 10COMMENT= Open source build system meant to be fast and user friendly
11LICENSE= apache-2.0 11LICENSE= apache-2.0
12 12
13CONFLICTS= ${PYPKGPREFIX}-meson-[0-9]* 13CONFLICTS= ${PYPKGPREFIX}-meson-[0-9]*
14SUPERSEDES= ${PYPKGPREFIX}-meson-[0-9]* 14SUPERSEDES= ${PYPKGPREFIX}-meson-[0-9]*
@@ -17,26 +17,30 @@ DEPENDS+= ninja-build>=1.7:../../devel/n @@ -17,26 +17,30 @@ DEPENDS+= ninja-build>=1.7:../../devel/n
17 17
18PYTHON_VERSIONS_INCOMPATIBLE= 27 18PYTHON_VERSIONS_INCOMPATIBLE= 27
19 19
20USE_PKG_RESOURCES= yes 20USE_PKG_RESOURCES= yes
21 21
22USE_LANGUAGES= c c++ # c++ for tests 22USE_LANGUAGES= c c++ # c++ for tests
23 23
24SUBST_CLASSES+= man 24SUBST_CLASSES+= man
25SUBST_SED.man+= -e "s,share/man,${PKGMANDIR}," 25SUBST_SED.man+= -e "s,share/man,${PKGMANDIR},"
26SUBST_FILES.man+= setup.py 26SUBST_FILES.man+= setup.py
27SUBST_STAGE.man= pre-configure 27SUBST_STAGE.man= pre-configure
28SUBST_MESSAGE.man= Fixing man page installation path. 28SUBST_MESSAGE.man= Fixing man page installation path.
29 29
 30# XXX this isn't an entirely correct approach, as this package is not
 31# Python-versioned, while py-cython is. This means in bulk builds, any
 32# Python packages that use meson and cython will fail with a mismatch
 33# for non-default Python versions, e.g., py-pandas and py-scipy.
30SUBST_CLASSES+= cython 34SUBST_CLASSES+= cython
31SUBST_STAGE.cython= pre-configure 35SUBST_STAGE.cython= pre-configure
32SUBST_MESSAGE.cython= Fixing cython binary name. 36SUBST_MESSAGE.cython= Fixing cython binary name.
33SUBST_FILES.cython= mesonbuild/compilers/detect.py 37SUBST_FILES.cython= mesonbuild/compilers/detect.py
34SUBST_SED.cython= -e "s,'cython3','cython-${PYVERSSUFFIX}'," 38SUBST_SED.cython= -e "s,'cython3','cython-${PYVERSSUFFIX}',"
35 39
36REPLACE_PYTHON+= ghwt.py 40REPLACE_PYTHON+= ghwt.py
37REPLACE_PYTHON+= meson.py 41REPLACE_PYTHON+= meson.py
38REPLACE_PYTHON+= mesonbuild/rewriter.py 42REPLACE_PYTHON+= mesonbuild/rewriter.py
39REPLACE_PYTHON+= mesonbuild/cmake/data/run_ctgt.py 43REPLACE_PYTHON+= mesonbuild/cmake/data/run_ctgt.py
40REPLACE_PYTHON+= run_*.py 44REPLACE_PYTHON+= run_*.py
41REPLACE_PYTHON+= test\ cases/*/*/*.py 45REPLACE_PYTHON+= test\ cases/*/*/*.py
42REPLACE_PYTHON+= test\ cases/*/*/*/*.py 46REPLACE_PYTHON+= test\ cases/*/*/*/*.py