public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
From: "Sam James" <sam@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-util/watchman/
Date: Wed,  9 Mar 2022 15:34:18 +0000 (UTC)	[thread overview]
Message-ID: <1646840045.4c29770e33a10d662d6789eb72a8c25652a3db76.sam@gentoo> (raw)

commit:     4c29770e33a10d662d6789eb72a8c25652a3db76
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Wed Mar  9 15:34:05 2022 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed Mar  9 15:34:05 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4c29770e

dev-util/watchman: add 2022.03.07.00

Signed-off-by: Sam James <sam <AT> gentoo.org>

 dev-util/watchman/Manifest                      |   1 +
 dev-util/watchman/watchman-2022.03.07.00.ebuild | 210 ++++++++++++++++++++++++
 2 files changed, 211 insertions(+)

diff --git a/dev-util/watchman/Manifest b/dev-util/watchman/Manifest
index 1968eb412dce..8164c78c5140 100644
--- a/dev-util/watchman/Manifest
+++ b/dev-util/watchman/Manifest
@@ -81,6 +81,7 @@ DIST vec_map-0.8.2.crate 14466 BLAKE2B 8f109fbff19604b82ea2aa61c952e2ce9b5597ccc
 DIST version_check-0.9.4.crate 14895 BLAKE2B fa1fa4008af165bfc1fdbe560488afd9d232cfafee94104fbcc4cbc52f234849bff9ddfa88109a1ac682f6d9c1d86b0459893d223f64e65adc08966aaf93dc89 SHA512 b172dc9a3759a4a683ffc39b9a40b03b9974b626a088217de87090466cef695226557c226cf3e469b2b25ee7297b7eb0d7719878cab42457f80146a81943c0c8
 DIST wasi-0.10.2+wasi-snapshot-preview1.crate 27505 BLAKE2B 4eb8644b945633d6e856ad80dd74990be19eb6af99823b147163384f61d471e2d9ec054d78a7064072344be53783e57073e8fffc6d5555c149b4834a9bf31dba SHA512 06977a294d76369a3867c45abdd8a87ea5c84e5a3681075ba0d14af1aee3114ff24495c7e7f7fe1e6e42230e65fba0e062898e69bc89e0209af62c2d14094ec7
 DIST watchman-2022.02.28.00.tar.gz 3778698 BLAKE2B d4c9cea5066cd187db53829f60d207eddfafc0db9f685ecc84217769d7fc269a409126dd6171d7e8146c3d2d945a45b09b97643c8e83932381d14a4933ad566c SHA512 2297ed75fb9fbe5d3c303eba7b701c06793b2dfa1dacdc1d2912e5c77449b06061ca2e54115d2de73f1f4e3358a84634b7a5510cdc6b327e961e2ecc04747092
+DIST watchman-2022.03.07.00.tar.gz 3780084 BLAKE2B e5ad1002ece9e7846c1806e10b48a595137ba4a86db73272d04faf3ba633d1935d2fa5609002c74cb989fe9fccbc366307d3241c9593730b401732c1c6773556 SHA512 93098f814b1b3340e43851000d1c3e579c2d0bb7b98539e435456e89eeddd002d602a69825a35e19f70e3db0b20ca3bbd2c8c86a7bf63901dd45b79fe5523c06
 DIST watchman-4.9.0.tar.gz 3508045 BLAKE2B 413b779f02736442c371af1d9e18e5c84f05f9e9465c114dc4bdf79cbc1d823f1ad3167abef22818652a924ca2cb563c54d18f7599b987f579655d8a2b82162a SHA512 3c1222ba41383b26c2c427415e75abdb4bef5a95001438c3debe7cf3ca654944ecf08e432c5ad0aefa2a6554ae73ff0f6995e7f4ee61cdb2cde80f8378d3a704
 DIST winapi-0.3.9.crate 1200382 BLAKE2B cb5799749ccd935ea2d7068d953cecf19f543d9db7dc16ad4584bb7005373ada34937a3ced7225544d8bc765da599911c7a3190efefb3a25b7c1bb7123b4f673 SHA512 ff8b7b78065f3d8999ec03c725a0460ebc059771bf071c7a3df3f0ecd733edf3b0a2450024d4e24e1aedddaecd9038ce1376c0d8bbf45132068cf45cf4a53a97
 DIST winapi-i686-pc-windows-gnu-0.4.0.crate 2918815 BLAKE2B 4d357e4d30f9552972170d65b9a5358b69c46a3e772fe05efc22f3d4ffc1caeeaad7aacdc7abd503a7ad0545f8bd7d22bf351dcb6df76f812fa4d45c34d65df0 SHA512 a672ccefd0730a8166fef1d4e39f9034d9ae426a3f5e28d1f4169fa5c5790767693f281d890e7804773b34acdb0ae1febac33cde8c50c0044a5a6152c7209ec2

diff --git a/dev-util/watchman/watchman-2022.03.07.00.ebuild b/dev-util/watchman/watchman-2022.03.07.00.ebuild
new file mode 100644
index 000000000000..da684483d094
--- /dev/null
+++ b/dev-util/watchman/watchman-2022.03.07.00.ebuild
@@ -0,0 +1,210 @@
+# Copyright 2020-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# TODO: Split into different variables then combine for each component?
+# Not all is in rust/ dir.
+# Rust components: watchman/cli watchman/rust/serde_bser watchman/rust/watchman_client
+CRATES="
+ahash-0.3.8
+ansi_term-0.12.1
+anyhow-1.0.55
+atty-0.2.14
+autocfg-1.1.0
+bitflags-1.3.2
+byteorder-1.4.3
+bytes-1.1.0
+cfg-if-1.0.0
+clap-2.34.0
+const-random-0.1.13
+const-random-macro-0.1.13
+crossbeam-0.8.1
+crossbeam-channel-0.5.2
+crossbeam-deque-0.8.1
+crossbeam-epoch-0.9.7
+crossbeam-queue-0.3.4
+crossbeam-utils-0.8.7
+crunchy-0.2.2
+either-1.6.1
+futures-0.1.31
+futures-0.3.21
+futures-channel-0.3.21
+futures-core-0.3.21
+futures-executor-0.3.21
+futures-io-0.3.21
+futures-macro-0.3.21
+futures-sink-0.3.21
+futures-task-0.3.21
+futures-util-0.3.21
+getrandom-0.2.5
+heck-0.3.3
+hermit-abi-0.1.19
+jwalk-0.6.0
+lazy_static-1.4.0
+libc-0.2.119
+lock_api-0.4.6
+log-0.4.14
+maplit-1.0.2
+memchr-2.4.1
+memoffset-0.6.5
+mio-0.8.0
+miow-0.3.7
+ntapi-0.3.7
+num_cpus-1.13.1
+once_cell-1.9.0
+parking_lot-0.12.0
+parking_lot_core-0.9.1
+pin-project-lite-0.2.8
+pin-utils-0.1.0
+proc-macro2-1.0.36
+proc-macro-error-1.0.4
+proc-macro-error-attr-1.0.4
+proc-macro-hack-0.5.19
+quote-1.0.15
+rayon-1.5.1
+rayon-core-1.9.1
+redox_syscall-0.2.10
+scopeguard-1.1.0
+serde-1.0.136
+serde_derive-1.0.136
+signal-hook-registry-1.4.0
+slab-0.4.5
+smallvec-1.8.0
+socket2-0.4.4
+strsim-0.8.0
+structopt-0.3.26
+structopt-derive-0.4.18
+syn-1.0.86
+textwrap-0.11.0
+thiserror-1.0.30
+thiserror-impl-1.0.30
+tiny-keccak-2.0.2
+tokio-1.17.0
+tokio-macros-1.7.0
+tokio-util-0.6.9
+unicode-segmentation-1.9.0
+unicode-width-0.1.9
+unicode-xid-0.2.2
+vec_map-0.8.2
+version_check-0.9.4
+wasi-0.10.2+wasi-snapshot-preview1
+winapi-0.3.9
+winapi-i686-pc-windows-gnu-0.4.0
+winapi-x86_64-pc-windows-gnu-0.4.0
+windows_aarch64_msvc-0.32.0
+windows_i686_gnu-0.32.0
+windows_i686_msvc-0.32.0
+windows-sys-0.32.0
+windows_x86_64_gnu-0.32.0
+windows_x86_64_msvc-0.32.0
+"
+
+PYTHON_COMPAT=( python3_{8,9,10} )
+DISTUTILS_USE_PEP517=setuptools
+inherit cargo cmake distutils-r1 tmpfiles
+
+DESCRIPTION="A file watching service"
+HOMEPAGE="https://facebook.github.io/watchman/"
+SRC_URI="https://github.com/facebook/watchman/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+SRC_URI+=" $(cargo_crate_uris)"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="llvm-libunwind python"
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+
+# See https://github.com/facebook/watchman/blob/main/CMakeLists.txt#L342 for libevent
+RDEPEND="
+	dev-libs/libevent:=
+	dev-libs/libpcre
+	~dev-cpp/folly-${PV}:=
+	dev-cpp/glog:=
+	>=dev-libs/libfmt-8.1.1-r1:=
+	dev-libs/openssl:=
+	llvm-libunwind? ( sys-libs/llvm-libunwind:= )
+	!llvm-libunwind? ( sys-libs/libunwind:= )
+	python? ( ${PYTHON_DEPS} )"
+# TODO: Make gtest test-only (needs a fair bit of patching)
+DEPEND="${RDEPEND}
+	dev-cpp/gtest"
+
+PATCHES=(
+	"${FILESDIR}"/watchman-2022.02.28.00-python-working-dir.patch
+	"${FILESDIR}"/watchman-2022.02.28.00-libatomic.patch
+)
+
+# Rust utility
+QA_FLAGS_IGNORED="usr/bin/watchmanctl"
+
+distutils_enable_tests unittest
+
+src_prepare() {
+	cmake_src_prepare
+}
+
+src_configure() {
+	# https://github.com/facebook/watchman/blob/789678cf9855fb07b402afb75b01e4f8786deba2/build/fbcode_builder/CMake/RustStaticLibrary.cmake#L17
+	export RUST_VENDORED_CRATES_DIR="${ECARGO_VENDOR}"
+	export RUST_CARGO_HOME="${ECARGO_HOME}"
+	export CARGO_HOME="${ECARGO_HOME}"
+	# Build system already handles avoiding Rust-jobs-while-CMake-jobs-spawned issue
+	# https://github.com/facebook/watchman/blob/789678cf9855fb07b402afb75b01e4f8786deba2/build/fbcode_builder/CMake/RustStaticLibrary.cmake#L69
+	# so no need to force -j1 via cargo jobs
+
+	local mycmakeargs=(
+		# Rust wrangling
+		-DUSE_CARGO_VENDOR=ON
+		-DGENERATE_CARGO_VENDOR_CONFIG=OFF
+		-DRUST_CARGO_HOME="${RUST_CARGO_HOME}"
+
+		# General bits
+		-DWATCHMAN_STATE_DIR="${EPREFIX}"/run/watchman
+		-DWATCHMAN_VERSION_OVERRIDE=${PV}
+
+		# Fails to build against fbthrift for now in libatomic troubles
+		-DENABLE_EDEN_SUPPORT=OFF
+
+		# We handle this ourselves
+		-DCMAKE_DISABLE_FIND_PACKAGE_Python3=ON
+	)
+
+	cmake_src_configure
+}
+
+src_compile() {
+	cmake_src_compile
+
+	if use python ; then
+		pushd watchman/python >/dev/null || die
+		distutils-r1_src_compile
+		popd >/dev/null || die
+	fi
+}
+
+src_test() {
+	cmake_src_test
+
+	if use python ; then
+		pushd watchman/python >/dev/null || die
+		distutils-r1_src_test
+		popd >/dev/null || die
+	fi
+}
+
+src_install() {
+	cmake_src_install
+
+	newtmpfiles "${FILESDIR}"/watchman.tmpfiles watchman.conf
+
+	if use python ; then
+		pushd watchman/python >/dev/null || die
+		distutils-r1_src_install
+		popd >/dev/null || die
+	fi
+}
+
+pkg_postinst() {
+	tmpfiles_process watchman.conf
+}


             reply	other threads:[~2022-03-09 15:34 UTC|newest]

Thread overview: 35+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-03-09 15:34 Sam James [this message]
  -- strict thread matches above, loose matches on Subject: below --
2024-05-28 19:01 [gentoo-commits] repo/gentoo:master commit in: dev-util/watchman/ Michał Górny
2023-11-25  6:21 Sam James
2023-11-25  6:21 Sam James
2023-06-24  8:29 Arthur Zamarin
2023-06-02 12:45 Sam James
2023-06-02 12:40 Sam James
2023-05-04  9:03 Sam James
2023-05-01  1:43 Sam James
2023-04-14  3:39 Sam James
2023-02-16  3:29 Sam James
2023-02-16  3:29 Sam James
2023-02-06 21:25 Sam James
2022-12-16 20:48 Arthur Zamarin
2022-09-18  0:35 Sam James
2022-09-18  0:35 Sam James
2022-09-06  4:18 Sam James
2022-08-29 20:13 Sam James
2022-08-23  3:30 Sam James
2022-08-15 17:08 Sam James
2022-08-13 15:09 Sam James
2022-07-09  4:47 Sam James
2022-05-16 12:51 Agostino Sarubbo
2022-04-17 16:44 Sam James
2022-04-16  3:07 Sam James
2022-04-05  3:08 Sam James
2022-04-05  3:08 Sam James
2022-04-01  3:53 Sam James
2022-04-01  3:53 Sam James
2022-03-22  1:48 Sam James
2022-03-21 16:37 Patrice Clement
2022-03-18  6:16 Sam James
2022-03-02  3:20 Sam James
2021-06-12  9:47 Patrice Clement
2020-11-13  8:13 Patrice Clement

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1646840045.4c29770e33a10d662d6789eb72a8c25652a3db76.sam@gentoo \
    --to=sam@gentoo.org \
    --cc=gentoo-commits@lists.gentoo.org \
    --cc=gentoo-dev@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox