summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'sys-libs/pkgcraft/pkgcraft-0.0.5.ebuild')
-rw-r--r--sys-libs/pkgcraft/pkgcraft-0.0.5.ebuild243
1 files changed, 243 insertions, 0 deletions
diff --git a/sys-libs/pkgcraft/pkgcraft-0.0.5.ebuild b/sys-libs/pkgcraft/pkgcraft-0.0.5.ebuild
new file mode 100644
index 000000000000..7a4e720339c5
--- /dev/null
+++ b/sys-libs/pkgcraft/pkgcraft-0.0.5.ebuild
@@ -0,0 +1,243 @@
+# Copyright 2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+CRATES="
+ahash-0.7.6
+aho-corasick-0.7.20
+annotate-snippets-0.6.1
+async_once-0.2.6
+async-trait-0.1.64
+autocfg-1.1.0
+autotools-0.2.5
+bindgen-0.63.0
+bitflags-1.3.2
+cached-0.42.0
+cached_proc_macro-0.16.0
+cached_proc_macro_types-0.1.0
+camino-1.1.2
+cc-1.0.79
+cexpr-0.6.0
+cfg-if-1.0.0
+chic-1.2.2
+clang-sys-1.4.0
+clap-4.1.4
+clap_derive-4.1.0
+clap_lex-0.3.1
+crossbeam-channel-0.5.6
+crossbeam-utils-0.8.14
+darling-0.14.2
+darling_core-0.14.2
+darling_macro-0.14.2
+dlv-list-0.3.0
+either-1.8.1
+enum-as-inner-0.5.1
+errno-0.2.8
+errno-dragonfly-0.1.2
+fastrand-1.8.0
+filetime-0.2.19
+fnv-1.0.7
+futures-0.3.26
+futures-channel-0.3.26
+futures-core-0.3.26
+futures-executor-0.3.26
+futures-io-0.3.26
+futures-macro-0.3.26
+futures-sink-0.3.26
+futures-task-0.3.26
+futures-util-0.3.26
+getrandom-0.2.8
+glob-0.3.1
+hashbrown-0.12.3
+hashbrown-0.13.2
+heck-0.4.1
+hermit-abi-0.2.6
+hermit-abi-0.3.0
+ident_case-1.0.1
+indexmap-1.9.2
+indoc-2.0.0
+instant-0.1.12
+io-lifetimes-1.0.5
+is_executable-1.0.1
+is-terminal-0.4.3
+itertools-0.10.5
+lazycell-1.3.0
+lazy_static-1.4.0
+libc-0.2.139
+libloading-0.7.4
+linux-raw-sys-0.1.4
+log-0.4.17
+memchr-2.5.0
+memoffset-0.7.1
+minimal-lexical-0.2.1
+nix-0.26.2
+nom-7.1.3
+nom8-0.2.0
+nu-ansi-term-0.46.0
+num_cpus-1.15.0
+once_cell-1.17.0
+ordered-multimap-0.4.3
+os_str_bytes-6.4.1
+overload-0.1.1
+peeking_take_while-0.1.2
+peg-0.8.1
+peg-macros-0.8.1
+peg-runtime-0.8.1
+pin-project-lite-0.2.9
+pin-utils-0.1.0
+pkgcraft-0.0.5
+proc-macro2-1.0.51
+proc-macro-error-1.0.4
+proc-macro-error-attr-1.0.4
+quote-1.0.23
+redox_syscall-0.2.16
+regex-1.7.1
+regex-syntax-0.6.28
+remove_dir_all-0.5.3
+roxmltree-0.18.0
+rustc-hash-1.1.0
+rust-ini-0.18.0
+rustix-0.36.8
+rustversion-1.0.11
+same-file-1.0.6
+scallop-0.0.4
+serde-1.0.152
+serde_derive-1.0.152
+serde_spanned-0.6.1
+serde_with-2.2.0
+serde_with_macros-2.2.0
+sharded-slab-0.1.4
+shlex-1.1.0
+slab-0.4.7
+smallvec-1.10.0
+static_assertions-1.1.0
+strsim-0.10.0
+strum-0.24.1
+strum_macros-0.24.3
+syn-1.0.107
+sys-info-0.9.1
+tempfile-3.3.0
+termcolor-1.2.0
+thiserror-1.0.38
+thiserror-impl-1.0.38
+thread_local-1.1.4
+tokio-1.25.0
+tokio-macros-1.8.2
+toml-0.7.1
+toml_datetime-0.6.1
+toml_edit-0.19.1
+tracing-0.1.37
+tracing-attributes-0.1.23
+tracing-core-0.1.30
+tracing-log-0.1.3
+tracing-subscriber-0.3.16
+unicode-ident-1.0.6
+valuable-0.1.0
+version_check-0.9.4
+walkdir-2.3.2
+wasi-0.11.0+wasi-snapshot-preview1
+which-4.4.0
+winapi-0.3.9
+winapi-i686-pc-windows-gnu-0.4.0
+winapi-util-0.1.5
+winapi-x86_64-pc-windows-gnu-0.4.0
+windows_aarch64_gnullvm-0.42.1
+windows_aarch64_msvc-0.42.1
+windows_i686_gnu-0.42.1
+windows_i686_msvc-0.42.1
+windows-sys-0.42.0
+windows-sys-0.45.0
+windows-targets-0.42.1
+windows_x86_64_gnu-0.42.1
+windows_x86_64_gnullvm-0.42.1
+windows_x86_64_msvc-0.42.1
+xmlparser-0.13.5
+"
+CRATES+="
+ pkgcraft-c-${PV}
+"
+
+inherit edo cargo toolchain-funcs
+
+DESCRIPTION="C library for pkgcraft"
+HOMEPAGE="https://pkgcraft.github.io/"
+
+if [[ ${PV} == 9999 ]] ; then
+ EGIT_REPO_URI="https://github.com/pkgcraft/pkgcraft"
+ inherit git-r3
+
+ S="${WORKDIR}"/${P}/crates/pkgcraft-c
+
+ BDEPEND="test? ( dev-util/cargo-nextest )"
+else
+ SRC_URI="$(cargo_crate_uris)"
+ S="${WORKDIR}"/cargo_home/gentoo/pkgcraft-c-${PV}
+
+ KEYWORDS="~amd64"
+fi
+
+LICENSE="MIT"
+# Dependent crate licenses
+LICENSE+=" Apache-2.0 BSD GPL-3+ ISC MIT Unicode-DFS-2016"
+SLOT="0/${PV}"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+# clang needed for bindgen
+BDEPEND+="
+ dev-util/cargo-c
+ sys-devel/clang
+ >=virtual/rust-1.65
+"
+
+QA_FLAGS_IGNORED="usr/lib.*/libpkgcraft.so.*"
+
+src_unpack() {
+ if [[ ${PV} == 9999 ]] ; then
+ git-r3_src_unpack
+ cargo_live_src_unpack
+ else
+ cargo_src_unpack
+ fi
+}
+
+src_compile() {
+ local cargoargs=(
+ --library-type=cdylib
+ --prefix=/usr
+ --libdir="/usr/$(get_libdir)"
+ )
+
+ # For scallop building bash
+ tc-export AR CC
+
+ # Can pass -vv if need more output from e.g. scallop configure
+ edo cargo cbuild "${cargoargs[@]}"
+}
+
+src_test() {
+ if [[ ${PV} == 9999 ]] ; then
+ # It's interesting to test the whole thing rather than just
+ # pkgcraft-c.
+ cd "${WORKDIR}"/${P} || die
+
+ # Need nextest per README (separate processes required)
+ # Invocation from https://github.com/pkgcraft/pkgcraft/blob/main/.github/workflows/ci.yml#L56
+ edo cargo nextest run --color always --all-features
+ else
+ # TODO: swap to meson for tests to avoid overtesting
+ cargo_src_test
+ fi
+}
+
+src_install() {
+ local cargoargs=(
+ --library-type=cdylib
+ --prefix=/usr
+ --libdir="/usr/$(get_libdir)"
+ --destdir="${ED}"
+ )
+
+ edo cargo cinstall "${cargoargs[@]}"
+}