commit:     f9a5da648ae06f5521ecccbcbbdb39ec40923f7b
Author:     Huang Rui <vowstar <AT> gmail <DOT> com>
AuthorDate: Thu Dec 11 06:20:07 2025 +0000
Commit:     Haelwenn Monnier <contact <AT> hacktivis <DOT> me>
CommitDate: Thu Dec 11 06:20:07 2025 +0000
URL:        https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=f9a5da64

sci-electronics/bluespec: add 2025.07

Signed-off-by: Huang Rui <vowstar <AT> gmail.com>

 sci-electronics/bluespec/Manifest                |   1 +
 sci-electronics/bluespec/bluespec-2025.07.ebuild | 146 +++++++++++++++++++++++
 2 files changed, 147 insertions(+)

diff --git a/sci-electronics/bluespec/Manifest 
b/sci-electronics/bluespec/Manifest
index e3fe5209f8..42b9e3db95 100644
--- a/sci-electronics/bluespec/Manifest
+++ b/sci-electronics/bluespec/Manifest
@@ -4,4 +4,5 @@ DIST bluespec-2023.07.tar.gz 26449912 BLAKE2B 
de40024ee5a61b608d341d940d631e6350
 DIST bluespec-2024.01.tar.gz 26477100 BLAKE2B 
257204eb8a677a26ce4dc24a1f646b48b8d5247ec4427fb9dc98e1a31ae71c649d835237c822c24818f31b3da434f9b430383cc948d4893034074b4347a7f183
 SHA512 
e5c8213e73bb58fb46db374b4e26631ca56c2681b691dd6357fe6a1bb5c70641fe7f53a7e3f20a489b4d435a0f94b6e14b33fa56dbb83c80190999bba47580c8
 DIST bluespec-2024.07.tar.gz 26477765 BLAKE2B 
5c5d5030ac873b404f2be4705dc10e96dc5851e7d999851bdef3ef3174da33570a5501883724884950034dcc5939fdbbebcd8169493a4cc9ef3a448fa9dc5faa
 SHA512 
7d8ec7ddd4d967195c0cba7f6988708aa5f53f621d862d7fa5b932d66756486cb65987258e19acdccabc3b7a85fef27cc0fadfe2d880384c225429c31dcaa2f4
 DIST bluespec-2025.01.1.tar.gz 26482892 BLAKE2B 
4f0c67de78bf37f9de894ad544430613491de3a97d7f2a00767adf12ccd527146af1d55cd90fdaa25441611fb18f9755a847bf7d7cb89db350eac92b914348e1
 SHA512 
d1d9fc149da0b793cf9158bf72219942cd11bef8b0e8ddce51a22de591cbad07cce367bb72e3c718bca1e81d3768a298b4f3e61cbb5b4b3cc04cf1cc7796908a
+DIST bluespec-2025.07.tar.gz 26491666 BLAKE2B 
3f25503c366fcff69cd0e7d8bd63f80c46a10f69e1a67b0ebfaf57c47d8985b3124e46bfecc5197895875dee7825cdef708629b2f8f1d4d15e6cf4f1e389c841
 SHA512 
25e415f53819c402a50743643b75f3d0b1d18665d5b1216e7d86df8bd2ea8dbd3528359d0b575b19c0c13e4fe1c4df47562240ab969714e55ca60f9a1ae1b404
 DIST yices-2.6.4.tar.gz 10186909 BLAKE2B 
1c4b6297fd59924e9d99b9e17eb4b42e9bfbc24dcd56631beb9b72103c91578eb72b90cb9e228a5e9d489efc520a2e1d41185e9c3f4a8c43fc93f8dabba7414d
 SHA512 
d8102c41fda0e200fd1336ae317b516d2797d10c187b8f7aecf0c9b08b4b487b90bef8c358099b2da51c0367326939f9610fd4e6d5a41a392cf1114bd04b8763

diff --git a/sci-electronics/bluespec/bluespec-2025.07.ebuild 
b/sci-electronics/bluespec/bluespec-2025.07.ebuild
new file mode 100644
index 0000000000..4515f4d0d8
--- /dev/null
+++ b/sci-electronics/bluespec/bluespec-2025.07.ebuild
@@ -0,0 +1,146 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DESCRIPTION="Toolchain for the Bluespec Hardware Definition Language"
+HOMEPAGE="https://github.com/B-Lang-org/bsc";
+
+if [[ ${PV} == "9999" ]] ; then
+       EGIT_REPO_URI="https://github.com/B-Lang-org/bsc.git";
+       inherit git-r3
+else
+       SRC_URI="
+               
https://github.com/B-Lang-org/bsc/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz
+               
https://github.com/SRI-CSL/yices2/archive/refs/tags/Yices-2.6.4.tar.gz -> 
yices-2.6.4.tar.gz
+       "
+       S="${WORKDIR}/bsc-${PV}"
+       S_YICES="${WORKDIR}/yices2-Yices-2.6.4"
+       KEYWORDS="~amd64 ~x86"
+fi
+
+LICENSE="BSD GPL-3+ MIT"
+SLOT="${PV}"
+IUSE="doc test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+       app-eselect/eselect-bluespec
+       app-shells/tcsh
+       dev-haskell/old-time:0=
+       dev-haskell/regex-compat:0=
+       dev-haskell/split:0=
+       dev-haskell/syb:0=
+       dev-lang/tcl
+"
+
+DEPEND="
+       ${RDEPEND}
+       test? (
+               dev-util/dejagnu
+               sci-electronics/iverilog
+               sci-electronics/systemc
+               sys-process/time
+       )
+"
+
+# USE=doc also required dev-ruby/asciidoctor-pdf,
+# which is masked due to bug 954116.
+BDEPEND="
+       dev-haskell/cabal:0=
+       dev-lang/ghc:0=
+       dev-lang/perl
+       dev-util/gperf
+       doc? (
+               dev-ruby/asciidoctor
+               dev-texlive/texlive-bibtexextra
+               dev-texlive/texlive-fontsextra
+               dev-texlive/texlive-fontutils
+               dev-texlive/texlive-latex
+               dev-texlive/texlive-latexextra
+               dev-texlive/texlive-latexrecommended
+               dev-texlive/texlive-plaingeneric
+       )
+       sys-apps/coreutils
+       dev-build/automake
+       sys-devel/bison
+       sys-devel/flex
+       virtual/pkgconfig
+"
+
+PATCHES=(
+       "${FILESDIR}"/${PN}-2022.01-libstp-stub-makefile.patch
+)
+
+# Do not complain about CFLAGS etc since we don't use them
+QA_FLAGS_IGNORED="
+       usr/share/bsc/bsc-${PV}/bin/core/.*
+       usr/share/bsc/bsc-${PV}/lib/SAT/.*
+       usr/share/bsc/bsc-${PV}/lib/VPI/.*
+"
+
+src_prepare() {
+       if [[ ${PV} != "9999" ]] ; then
+               rm -r "${S}"/src/vendor/yices/v2.6/yices2 || die
+               ln -s "${S_YICES}" "${S}"/src/vendor/yices/v2.6/yices2 || die
+       fi
+
+       default
+}
+
+src_compile() {
+       # NO_DEPS_CHECKS=1: skip the subrepo check (this deriviation uses 
yices.src instead of the subrepo)
+       # LDCONFIG=ldconfig: https://github.com/B-Lang-org/bsc/pull/43
+       # STP_STUB=1: https://github.com/B-Lang-org/bsc/pull/278
+       emake \
+               "NO_DEPS_CHECKS=1" \
+               "LDCONFIG=ldconfig" \
+               "STP_STUB=1" \
+               $(usex doc "" "NOASCIIDOCTOR=1") \
+               $(usex doc "install-doc" "") \
+               $(usex doc "install-release" "") \
+               install-src \
+               $(usex doc "release" "")
+       emake -C src/comp \
+               install-extra
+}
+
+src_test() {
+       emake check-smoke
+       emake -C testsuite check
+}
+
+# Call eselect bluespec update with --if-unset
+# to respect user's choice
+eselect_bluespec_update() {
+       ebegin "Calling eselect bluespec update"
+       eselect bluespec update --if-unset
+       eend $?
+}
+
+src_install() {
+       # From https://github.com/B-Lang-org/bsc/blob/main/INSTALL.md,
+       # upstream recommend placing the inst directory at
+       # the path /usr/share/bsc/bsc-<VERSION> for multi-version.
+       local INSTALL_PATH=/usr/share/bsc/bsc-"${PV}"
+       local ED_INSTALL_PATH="${ED}${INSTALL_PATH}"
+       mkdir -p "${ED_INSTALL_PATH}" || die
+       local f
+       for f in "${S}"/inst/bin/*; do
+               if [[ ! -d "${f}" ]] ; then
+                       local b=$(basename ${f})
+                       sed -i "s|ABSNAME=.*\$|ABSNAME=\$(readlink -f -- 
\"\$0\")|g" "${f}" || die
+               fi
+       done
+       cp -dr --preserve=mode,timestamp "${S}"/inst/* "${ED_INSTALL_PATH}"/ || 
die
+       insinto "${INSTALL_PATH}"/vimfiles
+       doins -r "${S}"/util/vim/{ftdetect,indent,syntax}
+}
+
+pkg_postinst() {
+       eselect_bluespec_update
+}
+
+pkg_postrm() {
+       eselect_bluespec_update
+}

Reply via email to