diff options
Diffstat (limited to 'dev-lang')
| -rw-r--r-- | dev-lang/bun-bin/Manifest | 12 | ||||
| -rw-r--r-- | dev-lang/bun-bin/bun-bin-1.3.5.ebuild | 205 |
2 files changed, 217 insertions, 0 deletions
diff --git a/dev-lang/bun-bin/Manifest b/dev-lang/bun-bin/Manifest index 222ddee..e5eb7ac 100644 --- a/dev-lang/bun-bin/Manifest +++ b/dev-lang/bun-bin/Manifest @@ -10,3 +10,15 @@ DIST bun-bin-1.2.10-arm64-musl-profile.zip 141923221 BLAKE2B db699b4f1a74a4d20ac DIST bun-bin-1.2.10-arm64-musl.zip 30509353 BLAKE2B 15726264245927eaaac3ad93c5d764fac8d0efa97868205ec0a0383d6dc84c6439e605a38320226c3f6d56ba0bce0cbba79bf8db7466abb1f2848148122741ff SHA512 ebb23ecb8e6250e5f9c527942c3a726960536ec0ae3efb33634013dc7261b3293289504aebaba0e107b8b5378e3beaceaf09a7d82dc87ad2cf8e50ff3a4e941d DIST bun-bin-1.2.10-arm64-profile.zip 187816486 BLAKE2B dc211bdc587615590a718e614fc36754428a80edf871936294112a8dc1d92d99f893b739d607aef0b26b79501a44ea4dc243f395b2017a98d1b54dd9c23d710d SHA512 c30c39471632e6497c319d0c78868bf773f449a53e4bd6a7b35740401385c4ebb5b2f4a6fcd984325dfe0b9de4352294feb11731c1641684c1fae14fc8793d57 DIST bun-bin-1.2.10-arm64.zip 36535494 BLAKE2B 9c6a6bbc36ae1987743f8f7378f97c661251945c4ebdafc51bea08681ed755bc54beedaf10d6de58d22dba4df3c9ab2bbed10367f7e26f4183141793fa90b4cd SHA512 5d317d4c72066c8cae079027d84477a11d9e26f683273839a9514fdf61ea291083361fc5b20e49ab875d4d8e22a2e1c8e5975fb830eda8561c7972801112d7e3 +DIST bun-bin-1.3.5-amd64-baseline-profile.zip 200978422 BLAKE2B daa2e9cc62ed0d9cb52a167eaaa7c1486c74d5ee59e59812ccfd9216f33006ee8e359e3707244f9d960988ee8edcd18afb451b65d1305f5fa772ccf2761458ae SHA512 6c2c3889873d90eeb45ee41f1bccf9cab22a53dcc864531c0d65caccfd96044dca1dbb2b687a50c448c9051d63c5cdecc6d8b3c7f413c754f6c79c959442f070 +DIST bun-bin-1.3.5-amd64-baseline.zip 39274201 BLAKE2B 2d8ca9f1d6481afee831e24b44593f69792998be6cde7f22bbbd465685f04d633a0a9543a129be8eb7660f3402170d210cefeecfccf766668322a9a7da2400ad SHA512 78221e84ab79f051af08746ec83f3d9bafef14f399fb144c1ee092e2038b70de4eea520a4c35f9c3031f9e95ede9c0b81460931c48903021622c683e192d74ca +DIST bun-bin-1.3.5-amd64-musl-baseline-profile.zip 175819065 BLAKE2B 005d2f846e507baec58fd2e8e12b15ba295ba0484432500827c4576c83e0d0474ec43ebc6df449b4f7191959d610202af40ff5bad658eb3a7461c9198f8c73ad SHA512 d2ca05c602ebb930b7acf2cabc30bc7cb6f2b82da49d87d2573daa83640a2febd321ec7ccdd295dc6f77f430c58121d5c299dd23cf8946c2f6c84efb037ca617 +DIST bun-bin-1.3.5-amd64-musl-baseline.zip 36896090 BLAKE2B de3ed4294eca7e3b0cfba7cb264680a34d69442f1e4a2cd90701ad9c1f47f6f578fec2bcebb1a3c02a654ff488c1470ad588b2bc4d8ccaff728a23ee4a74ac0b SHA512 d5d599314bfbffb2b46e4e8db11e9710f39d5e99d07a48aaa166a2eaebf89bf79ba4f74b1c927e04d2cd1c77632e3e1e4823eed0fb502f0feb6e6dc07239e0be +DIST bun-bin-1.3.5-amd64-musl-profile.zip 176083116 BLAKE2B a182b1a3f14570f2a3a25fa2a4e2b742b569b773d5a830e69b58097f65bbed7d16297a9594cf4ae4a0728d8a1fbbd9cb172e4c8994c14d72c6fdbe7be499daed SHA512 15b04902e5e70725f297c92a02feeaf5d5d85710acd9ac0f0857a50ccd7e2cab22448bf2eaf6b6db6111a0d4288541afcab1b51f6a86319a5e2fc395819cf161 +DIST bun-bin-1.3.5-amd64-musl.zip 37061202 BLAKE2B e35fc4b50ecc5475448a7dbbb36901c585e6635877023dbffb50b35ef2962cc18fb7b9f80389c83dd7d30b9f16c810491f78e8c5535cd15ff481e530ba8930da SHA512 63599c105cba4d28f1343d32dc74c485a7df08c242ee3038400918859387a5c470c523259e04e588d6a55aaf9caed481c42541206f2154b99f973851f511cb2d +DIST bun-bin-1.3.5-amd64-profile.zip 201276998 BLAKE2B 4768c3737cc74228f6bb15c11e9b319d685b6826106b6ccd014ff4ef4c13e8b823c6ace8204bb766e2166735b251fa3c4d44bdfc03451e2234e974ff95741cb1 SHA512 e69fd133cd87ff94dbed22e7c001ff56160e59134de683f933883d5983f6f5d2cfb2f5960880556e8ef44062d7fa165880c62cfd56e39398421b440f1ce0a841 +DIST bun-bin-1.3.5-amd64.zip 39449358 BLAKE2B f5cb85236c41fa5f049098d0a87bbbee23a55cc8321471fc878ef766570231bd04b67c6d4d24d06123271fb356564e02c5ca62c79e349e4375788c06a07e8a33 SHA512 d4c09bb174717d782beca3b544fcc940b21fd544ac2b0288bdd1bc4c2453a2433cfa630e18a1fbe19a379c41c7e232d039764a14585fbff9a4922d9d81a81523 +DIST bun-bin-1.3.5-arm64-musl-profile.zip 167726948 BLAKE2B 260f238dfe9785fa309ec902ac40f162f064b3f65442f74c940d1154989fa762f655ffde6d4cf3de9f6058a133cbe6b92585667492fd0bc3a66fb148da517a92 SHA512 2884cbd41de3af90e80d2b793e947362026d00393347a23c3b5ecf5d71d02f09b3eb129ef272cb51345eb69e6c5330b8a477657b5432f8ff846dde8fb74528ee +DIST bun-bin-1.3.5-arm64-musl.zip 35785531 BLAKE2B 6369355518735dba2e8d5e0e1faf60e939d2bc3975cca517954073d28003d7bd06ef3e90eda2e4d16f39e7afa2a9f64fa2c676ccc1650e332634d7485c348774 SHA512 f0aa895398f1ffa44c86d41665c2571ffb923d51309a395e37137f111b4c82f38488e0a323a3a9e13043f806503a22576dc1f51d94d4390de115c45c666e3677 +DIST bun-bin-1.3.5-arm64-profile.zip 188534059 BLAKE2B 17c2317894e75b766d3aacfe46664af829a23593b72c4aead995375f45de7980ad9dc828d41e3b410fcc70a27146aad5fd6e0f699a27dc98d63ed897b6f0decd SHA512 dbf68642a0d7dc0ad164e7836314e32ba6385121105558f4504ab9f609c0a259f19d4a43d8ff976e89bfd5c1f28da0c497069d7ae85b6e419905eecc4a04b70b +DIST bun-bin-1.3.5-arm64.zip 37798811 BLAKE2B 70f510ca915fd4159b4801b1b11f4532914e4713c22c20af5916c6ff49f8e5821b647d194f0a723839e13f5f49bcfac90c66afa076b537a71c0f3d8e134e1e0c SHA512 d67c0909787e9d6124135fcca1486d9c657ad0540537b2d721b7c8d2a66e02776792769a51e80d56a3e0c2fb041ebc8df6106fd0e6ff78ca9590b47d29ed3945 diff --git a/dev-lang/bun-bin/bun-bin-1.3.5.ebuild b/dev-lang/bun-bin/bun-bin-1.3.5.ebuild new file mode 100644 index 0000000..ed66125 --- /dev/null +++ b/dev-lang/bun-bin/bun-bin-1.3.5.ebuild @@ -0,0 +1,205 @@ +# Copyright 2020-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit shell-completion + +BUN_PN="${PN//-bin/}" + +DESCRIPTION="Incredibly fast JavaScript runtime, bundler, test runner, and package manager" +HOMEPAGE="https://bun.sh" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="-* amd64 ~arm64" +IUSE="bash-completion cpu_flags_x86_avx2 debug fish-completion zsh-completion" + +DEPEND=" + bash-completion? ( >=app-shells/bash-completion-2.0 ) + fish-completion? ( app-shells/fish ) + zsh-completion? ( app-shells/zsh ) +" + +bun_bin_filename_prefix() { + local -r arch=$1 + local -r elibc=$2 + local -ir avx2=$3 + local -ir debug=$4 + + local -a specifier + + # -- Add CPU architecture. + case "${arch}" in + amd64) specifier+=('x64') ;; + arm64) specifier+=('aarch64') ;; + * ) die "Unsupported arch: '${arch}'" ;; + esac + + # -- Add libc type. + case "${elibc}" in + musl ) specifier+=('musl') ;; + glibc) : ;; + * ) die "Unsupported libc: '${elibc}'" ;; + esac + + # -- Add CPU features. + (( avx2 == 0 )) && + specifier+=('baseline') + + # -- Add debug type. + (( debug != 0 )) && + specifier+=('profile') + + # -- Construct string. + suffix="$(IFS='-'; echo "${specifier[*]}")" + echo "bun-linux-${suffix}" +} + +BASE_URI="https://github.com/oven-sh/${BUN_PN}/releases/download/${BUN_PN}-v${PV}" +SRC_URI=" + amd64? ( + elibc_musl? ( + cpu_flags_x86_avx2? ( + debug? ( + ${BASE_URI}/$(bun_bin_filename_prefix amd64 musl 1 1).zip + -> ${PN}-${PV}-amd64-musl-profile.zip + ) + !debug? ( + ${BASE_URI}/$(bun_bin_filename_prefix amd64 musl 1 0).zip + -> ${PN}-${PV}-amd64-musl.zip + ) + ) + !cpu_flags_x86_avx2? ( + debug? ( + ${BASE_URI}/$(bun_bin_filename_prefix amd64 musl 0 1).zip + -> ${PN}-${PV}-amd64-musl-baseline-profile.zip + ) + !debug? ( + ${BASE_URI}/$(bun_bin_filename_prefix amd64 musl 0 0).zip + -> ${PN}-${PV}-amd64-musl-baseline.zip + ) + ) + ) + !elibc_musl? ( + cpu_flags_x86_avx2? ( + debug? ( + ${BASE_URI}/$(bun_bin_filename_prefix amd64 glibc 1 1).zip + -> ${PN}-${PV}-amd64-profile.zip + ) + !debug? ( + ${BASE_URI}/$(bun_bin_filename_prefix amd64 glibc 1 0).zip + -> ${PN}-${PV}-amd64.zip + ) + ) + !cpu_flags_x86_avx2? ( + debug? ( + ${BASE_URI}/$(bun_bin_filename_prefix amd64 glibc 0 1).zip + -> ${PN}-${PV}-amd64-baseline-profile.zip + ) + !debug? ( + ${BASE_URI}/$(bun_bin_filename_prefix amd64 glibc 0 0).zip + -> ${PN}-${PV}-amd64-baseline.zip + ) + ) + ) + ) + arm64? ( + elibc_musl? ( + debug? ( + ${BASE_URI}/$(bun_bin_filename_prefix arm64 musl 1 1).zip + -> ${PN}-${PV}-arm64-musl-profile.zip + ) + !debug? ( + ${BASE_URI}/$(bun_bin_filename_prefix arm64 musl 1 0).zip + -> ${PN}-${PV}-arm64-musl.zip + ) + ) + !elibc_musl? ( + debug? ( + ${BASE_URI}/$(bun_bin_filename_prefix arm64 glibc 1 1).zip + -> ${PN}-${PV}-arm64-profile.zip + ) + !debug? ( + ${BASE_URI}/$(bun_bin_filename_prefix arm64 glibc 1 0).zip + -> ${PN}-${PV}-arm64.zip + ) + ) + ) +" + +BDEPEND="app-arch/unzip" + +QA_PREBUILT="*" + +bun_bin_dirname() { + local elibc + if use elibc_glibc; then + elibc='glibc' + elif use elibc_musl; then + elibc='musl' + else + die 'Unsupported libc' + fi + + local -i avx2=0 + if use cpu_flags_x86_avx2 \ + || [[ "${ARCH}" == 'arm64' ]]; then + (( avx2 = 1 )) + fi + + local -i debug=0 + use debug && + (( debug = 1 )) + + bun_bin_filename_prefix "${ARCH}" "${elibc}" "${avx2}" "${debug}" +} + +src_unpack() { + unpack "${A}" + mv "$(bun_bin_dirname)" "${P}" +} + +src_compile() { + local bun_bin='bun' + if use debug; then + bun_bin='bun-profile' + fi + + if use bash-completion; then + SHELL=bash "./${bun_bin}" completions > bun.bash || + die 'Unable to generate bash completions' + fi + + if use fish-completion; then + SHELL=fish "./${bun_bin}" completions > bun.fish || + die 'Unable to generate fish completions' + fi + + if use zsh-completion; then + SHELL=zsh "./${bun_bin}" completions > bun.zsh || + die 'Unable to generate zsh completions' + fi +} + +src_install() { + exeinto /usr/bin + + if use debug; then + doexe bun-profile + dosym /usr/bin/bun-profile /usr/bin/bun + dosym /usr/bin/bun-profile /usr/bin/bunx + else + doexe bun + dosym /usr/bin/bun /usr/bin/bunx + fi + + use bash-completion && + newbashcomp bun.bash "${BUN_PN}" + + use fish-completion && + newfishcomp bun.fish bun.fish + + use zsh-completion && + newzshcomp bun.zsh "_${BUN_PN}" +} |
