FreeBSD Bugzilla – Attachment 223791 Details for
Bug 254678
Mk/Uses/ninja.mk: Add support for devel/samurai
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
[patch]
v1
samurai.diff (text/plain), 12.49 KB, created by
Tobias Kortkamp
on 2021-04-03 20:28:04 UTC
(
hide
)
Description:
v1
Filename:
MIME Type:
Creator:
Tobias Kortkamp
Created:
2021-04-03 20:28:04 UTC
Size:
12.49 KB
patch
obsolete
>Index: Mk/Uses/ninja.mk >=================================================================== >--- Mk/Uses/ninja.mk (revision 569609) >+++ Mk/Uses/ninja.mk (working copy) >@@ -4,26 +4,72 @@ > # > # Feature: ninja > # Usage: USES=ninja >+# Valid ARGS: build, make (default), run > # >+# build add a build dependency on ninja >+# make use ninja for the build instead of make, implies "build" >+# run add a run dependency on ninja >+# > # MAINTAINER: portmgr@FreeBSD.org > > .if !defined(_INCLUDE_USES_NINJA_MK) > _INCLUDE_USES_NINJA_MK= yes > >-.if !empty(ninja_ARGS) >-IGNORE= Incorrect 'USES+= ninja:${ninja_ARGS}' ninja takes no arguments >+_valid_ARGS= build make run >+ >+.for _arg in ${ninja_ARGS} >+. if empty(_valid_ARGS:M${_arg}) >+IGNORE= 'USES+= ninja:${ninja_ARGS}' usage: argument [${_arg}] is not recognized >+. endif >+.endfor >+ >+.if empty(ninja_ARGS) >+ninja_ARGS+= make > .endif > >-MAKE_ARGS+= -v >+.if ${ninja_ARGS:Mmake} >+ninja_ARGS+= build >+.endif > >-BUILD_DEPENDS+= ninja:devel/ninja >+.if ${NINJA_DEFAULT} == ninja >+NINJA_CMD= ninja >+_NINJA_PORT= devel/ninja >+.elif ${NINJA_DEFAULT} == samurai >+NINJA_CMD= samu >+_NINJA_PORT= devel/samurai >+MAKE_ENV+= SAMUFLAGS="-v -j${MAKE_JOBS_NUMBER}" >+. if ${ninja_ARGS:Mbuild} && !${BINARY_ALIAS:U:Mninja=*} >+# Cmake and Meson have native support for Samurai and detect and >+# use it when Ninja is not available in the build environment. The >+# alias is needed for other ports which call Ninja directly and do >+# not fall back to Samurai. There should be no harm in providing it >+# generally. >+BINARY_ALIAS+= ninja=samu >+. endif >+.else >+IGNORE= invalid DEFAULT_VERSIONS+=ninja=${NINJA_DEFAULT} >+.endif > >+.if ${ninja_ARGS:Mbuild} >+BUILD_DEPENDS+= ${NINJA_CMD}:${_NINJA_PORT} >+# Humanize build log and include percentage of completed jobs %p in it. >+# See samu(1) or the Ninja manual. >+MAKE_ENV+= NINJA_STATUS="[%p %s/%t] " >+.endif >+ >+.if ${ninja_ARGS:Mmake} >+MAKE_ARGS+= -v > CMAKE_ARGS+= -GNinja > MAKEFILE= >-MAKE_CMD= ninja >+MAKE_CMD= ${NINJA_CMD} > MAKE_FLAGS= > # Set a minimal job of 1 > _MAKE_JOBS= -j${MAKE_JOBS_NUMBER} > _DESTDIR_VIA_ENV= yes >+.endif > >+.if ${ninja_ARGS:Mrun} >+RUN_DEPENDS+= ${NINJA_CMD}:${_NINJA_PORT} > .endif >+ >+.endif >Index: Mk/bsd.default-versions.mk >=================================================================== >--- Mk/bsd.default-versions.mk (revision 569609) >+++ Mk/bsd.default-versions.mk (working copy) >@@ -20,7 +20,7 @@ > LOCALBASE?= /usr/local > > .for lang in APACHE BDB COROSYNC EMACS FIREBIRD FORTRAN FPC GCC GHOSTSCRIPT \ >- IMAGEMAGICK JAVA LAZARUS LIBRSVG2 LINUX LLVM LUA MYSQL PERL5 \ >+ IMAGEMAGICK JAVA LAZARUS LIBRSVG2 LINUX LLVM LUA MYSQL NINJA PERL5 \ > PGSQL PHP PYTHON PYTHON2 PYTHON3 RUBY RUST SAMBA SSL TCLTK VARNISH > .if defined(${lang}_DEFAULT) > ERROR+= "The variable ${lang}_DEFAULT is set and it should only be defined through DEFAULT_VERSIONS+=${lang:tl}=${${lang}_DEFAULT} in /etc/make.conf" >@@ -83,6 +83,8 @@ > MONO_DEFAULT= 5.10 > # Possible values: 5.5, 5.6, 5.7, 8.0, 10.3m, 10.4m, 10.5m, 5.5p, 5.6p, 5.7p, 5.6w, 5.7w > MYSQL_DEFAULT?= 5.7 >+# Possible values: ninja, samurai >+NINJA_DEFAULT?= ninja > # Possible values: 5.28, 5.30, 5.32, devel > .if !exists(${LOCALBASE}/bin/perl) || (!defined(_PORTS_ENV_CHECK) && \ > defined(PACKAGE_BUILDING)) >Index: devel/jiri/Makefile >=================================================================== >--- devel/jiri/Makefile (revision 569609) >+++ devel/jiri/Makefile (working copy) >@@ -13,11 +13,10 @@ > LICENSE= BSD3CLAUSE > LICENSE_FILE= ${WRKSRC}/LICENSE > >-BUILD_DEPENDS= cmake:devel/cmake \ >- ninja:devel/ninja >+BUILD_DEPENDS= cmake:devel/cmake > RUN_DEPENDS= git:devel/git > >-USES= go:modules >+USES= go:modules ninja:build > > GITHASH= 1eee1043d12d1baabae7f2466cc0b1646395e32c > TIMESTAMP= 2020-08-28T00:00:00.000000 >Index: devel/meson/Makefile >=================================================================== >--- devel/meson/Makefile (revision 569609) >+++ devel/meson/Makefile (working copy) >@@ -12,10 +12,9 @@ > LICENSE= APACHE20 > LICENSE_FILE= ${WRKSRC}/COPYING > >-RUN_DEPENDS= ninja:devel/ninja > TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}pytest-xdist>0:devel/py-pytest-xdist@${PY_FLAVOR} > >-USES= python:3.6+ shebangfix >+USES= ninja:run python:3.6+ shebangfix > USE_PYTHON= autoplist distutils noflavors > SHEBANG_FILES= mesonbuild/rewriter.py \ > mesonbuild/scripts/cmake_run_ctgt.py >Index: devel/tinygo/Makefile >=================================================================== >--- devel/tinygo/Makefile (revision 569609) >+++ devel/tinygo/Makefile (working copy) >@@ -12,11 +12,10 @@ > LICENSE= BSD3CLAUSE > LICENSE_FILE= ${WRKSRC}/LICENSE > >-BUILD_DEPENDS= cmake:devel/cmake \ >- ninja:devel/ninja >+BUILD_DEPENDS= cmake:devel/cmake > TEST_DEPENDS= qemu-system-arm:emulators/qemu > >-USES= gmake go:modules,run >+USES= gmake go:modules,run ninja:build > > USE_GITHUB= yes > GH_ACCOUNT= tinygo-org >Index: graphics/py-h3/Makefile >=================================================================== >--- graphics/py-h3/Makefile (revision 569609) >+++ graphics/py-h3/Makefile (working copy) >@@ -15,13 +15,12 @@ > > BUILD_DEPENDS= cmake:devel/cmake \ > h3>=${PORTVERSION}:graphics/h3 \ >- ninja:devel/ninja \ > ${PYTHON_PKGNAMEPREFIX}scikit-build>=0:devel/py-scikit-build@${PY_FLAVOR} > LIB_DEPENDS= libh3.so:graphics/h3 > TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}numpy>=0,1:math/py-numpy@${PY_FLAVOR} \ > ${PYTHON_PKGNAMEPREFIX}pytest>=0:devel/py-pytest@${PY_FLAVOR} > >-USES= localbase:ldflags python:3.6+ >+USES= localbase:ldflags ninja:build python:3.6+ > USE_PYTHON= autoplist concurrent cython distutils > > CFLAGS+= -I${LOCALBASE}/include/h3 >Index: japanese/mozc-server/Makefile >=================================================================== >--- japanese/mozc-server/Makefile (revision 569609) >+++ japanese/mozc-server/Makefile (working copy) >@@ -10,8 +10,7 @@ > MAINTAINER= hrs@FreeBSD.org > COMMENT?= Mozc Japanese Input Method, Server > >-BUILD_DEPENDS= ninja:devel/ninja \ >- ${PYTHON_PKGNAMEPREFIX}gyp>=20200512:devel/py-gyp@${PY_FLAVOR} >+BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}gyp>=20200512:devel/py-gyp@${PY_FLAVOR} > EXTRACT_DEPENDS=${PYTHON_CMD}:${PYTHON_PORTSDIR} > LIB_DEPENDS= libprotobuf.so:devel/protobuf \ > libzinnia.so:japanese/zinnia >@@ -26,8 +25,8 @@ > GH_ACCOUNT= hrs-allbsd > GH_TUPLE= hiroyuki-komatsu:japanese-usage-dictionary:e5b3425:udic > >-USES= compiler:c++11-lang pkgconfig gmake \ >- tar:bzip2 python:3.5+,build shebangfix >+USES= compiler:c++11-lang gmake ninja:build pkgconfig \ >+ python:3.5+,build shebangfix tar:bzip2 > SHEBANG_FILES= src/build_mozc.py > BUILD_WRKSRC= ${WRKSRC}/src > >Index: lang/mono6.8/Makefile >=================================================================== >--- lang/mono6.8/Makefile (revision 569609) >+++ lang/mono6.8/Makefile (working copy) >@@ -80,7 +80,7 @@ > > NINJA_DESC= Use ninja to build wherever possible > NINJA_CONFIGURE_ON= ninja >-NINJA_BUILD_DEPENDS= ninja>0:devel/ninja >+NINJA_USES= ninja:build > > NLS_DESC= NLS Localization Support > NLS_CONFIGURE_OFF= --disable-nls >Index: lang/rust/Makefile >=================================================================== >--- lang/rust/Makefile (revision 569609) >+++ lang/rust/Makefile (working copy) >@@ -29,11 +29,10 @@ > ONLY_FOR_ARCHS?= aarch64 amd64 armv6 armv7 i386 powerpc64 powerpc64le > ONLY_FOR_ARCHS_REASON?= requires prebuilt bootstrap compiler > >-BUILD_DEPENDS= cmake:devel/cmake \ >- ninja:devel/ninja >+BUILD_DEPENDS= cmake:devel/cmake > LIB_DEPENDS= libcurl.so:ftp/curl > >-USES= pkgconfig python:3.6+,build ssl tar:xz >+USES= ninja:build pkgconfig python:3.6+,build ssl tar:xz > > MAKE_ENV= DESTDIR=${STAGEDIR} \ > OPENSSL_DIR="${OPENSSLBASE}" \ >Index: lang/rust-bootstrap/Makefile >=================================================================== >--- lang/rust-bootstrap/Makefile (revision 569609) >+++ lang/rust-bootstrap/Makefile (working copy) >@@ -31,7 +31,6 @@ > > BUILD_DEPENDS= cmake:devel/cmake \ > gmake:devel/gmake \ >- ninja:devel/ninja \ > rust>=${PORTVERSION}:lang/rust > > FLAVORS= aarch64 amd64 armv6 armv7 i386 powerpc64_elfv1 powerpc64_elfv2 powerpc64le >@@ -48,7 +47,7 @@ > powerpc64_elfv2_PKGNAMEPREFIX= powerpc64-elfv2- > powerpc64le_PKGNAMEPREFIX= powerpc64le- > >-USES= perl5 python:3.6+,build tar:xz >+USES= ninja:build perl5 python:3.6+,build tar:xz > .if ${FLAVOR} == powerpc64_elfv1 > USE_GCC= 9:build > .endif >Index: math/py-pdal/Makefile >=================================================================== >--- math/py-pdal/Makefile (revision 569609) >+++ math/py-pdal/Makefile (working copy) >@@ -14,13 +14,12 @@ > > BUILD_DEPENDS= ${PYNUMPY} \ > ${PYTHON_PKGNAMEPREFIX}scikit-build>0:devel/py-scikit-build@${PY_FLAVOR} \ >- ${LOCALBASE}/bin/cmake:devel/cmake \ >- ${LOCALBASE}/bin/ninja:devel/ninja >+ cmake:devel/cmake > LIB_DEPENDS= libpdal_base.so:math/pdal > RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}packaging>=0:devel/py-packaging@${PY_FLAVOR} \ > ${PYNUMPY} > >-USES= compiler:c++11-lang python:3.6+ >+USES= compiler:c++11-lang ninja:build python:3.6+ > USE_PYTHON= autoplist cython distutils > > post-install: >Index: math/sage/Makefile >=================================================================== >--- math/sage/Makefile (revision 569609) >+++ math/sage/Makefile (working copy) >@@ -143,7 +143,6 @@ > pari-nftables>0:math/pari_nftables \ > pari-seadata>0:math/pari_seadata\ > QuadraticSieve:math/flintqs \ >- ninja:devel/ninja \ > gpatch:devel/patch \ > rubiks>0:math/rubiks \ > sympow:math/sympow \ >@@ -339,9 +338,10 @@ > yasm:devel/yasm \ > pixz:archivers/pixz > >-USES= autoreconf blaslapack:openblas compiler:c++11-lib fortran \ >- gettext gmake gnome iconv jpeg libtool localbase ncurses perl5 \ >- pkgconfig python:3.7+ readline shebangfix sqlite tk xorg >+USES= autoreconf blaslapack:openblas compiler:c++11-lib fortran \ >+ gettext gmake gnome iconv jpeg libtool localbase ncurses \ >+ ninja:build perl5 pkgconfig python:3.7+ readline shebangfix \ >+ sqlite tk xorg > USE_TEX= latex:build pdftex:build tex:build > USE_XORG= x11 xext xscrnsaver > USE_GNOME= cairo glib20 pango >Index: sysutils/fluxengine/Makefile >=================================================================== >--- sysutils/fluxengine/Makefile (revision 569609) >+++ sysutils/fluxengine/Makefile (working copy) >@@ -10,10 +10,8 @@ > LICENSE= MIT > LICENSE_FILE= ${WRKSRC}/COPYING.md > >-BUILD_DEPENDS= ninja:devel/ninja >+USES= compiler:gcc-c++11-lib gmake ninja:build pkgconfig sqlite > >-USES= pkgconfig gmake compiler:gcc-c++11-lib sqlite >- > USE_GITHUB= yes > GH_ACCOUNT= davidgiven > GH_TAGNAME= 61ff48c >Index: sysutils/fluxengine/files/patch-mkninja.sh >=================================================================== >--- sysutils/fluxengine/files/patch-mkninja.sh (nonexistent) >+++ sysutils/fluxengine/files/patch-mkninja.sh (working copy) >@@ -0,0 +1,17 @@ >+Fix ninja generator >+ >+devel/samurai does not like the extra whitespace: >+ >+ninja: .obj/build.ninja:6:5: expected name >+ >+--- mkninja.sh.orig 2021-03-31 12:47:37 UTC >++++ mkninja.sh >+@@ -7,7 +7,7 @@ rule cxx >+ description = CXX \$in >+ depfile = \$out.d >+ deps = gcc >+- >++ >+ rule library >+ command = $AR \$out \$in >+ description = AR \$in > >Property changes on: sysutils/fluxengine/files/patch-mkninja.sh >___________________________________________________________________ >Added: fbsd:nokeywords >## -0,0 +1 ## >+yes >\ No newline at end of property >Added: svn:eol-style >## -0,0 +1 ## >+native >\ No newline at end of property >Added: svn:mime-type >## -0,0 +1 ## >+text/plain >\ No newline at end of property >Index: www/qt5-webengine/Makefile >=================================================================== >--- www/qt5-webengine/Makefile (revision 569609) >+++ www/qt5-webengine/Makefile (working copy) >@@ -26,7 +26,6 @@ > COMMENT= Qt 5 library to render web content > > BUILD_DEPENDS= bison:devel/bison \ >- ninja:devel/ninja \ > yasm:devel/yasm \ > ${LOCALBASE}/include/linux/input.h:devel/evdev-proto \ > ${LOCALBASE}/include/linux/videodev2.h:multimedia/v4l_compat >@@ -74,7 +73,7 @@ > # We pass `norecursive' to USES=qmake because src/plugins/plugins.pro checks > # whether webenginewidgets is available, which fails when qmake processes all > # .pro files at once. >-USES= gl gnome gperf jpeg python:2.7,build pkgconfig \ >+USES= gl gnome gperf jpeg ninja:build pkgconfig python:2.7,build \ > qmake:norecursive,outsource qt-dist:5,webengine shebangfix xorg > USE_GL= gl > USE_GNOME= glib20 libxml2 libxslt >Index: x11-fonts/font-manager/Makefile >=================================================================== >--- x11-fonts/font-manager/Makefile (revision 569609) >+++ x11-fonts/font-manager/Makefile (working copy) >@@ -13,7 +13,6 @@ > > BUILD_DEPENDS= cmake:devel/cmake \ > itstool:textproc/itstool \ >- ninja:devel/ninja \ > valac:lang/vala \ > yelp-build:textproc/yelp-tools > LIB_DEPENDS= libfontconfig.so:x11-fonts/fontconfig \
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 254678
:
223729
|
223791