public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
From: "Rui Huang" <vowstar@gmail.com>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] repo/proj/guru:dev commit in: sci-electronics/bluespec/
Date: Fri, 07 Mar 2025 09:32:21 +0000 (UTC)	[thread overview]
Message-ID: <1741339840.7517372d635d1d5a79e3dfa27c00a79e9b4e7f0c.vowstar@gentoo> (raw)

commit:     7517372d635d1d5a79e3dfa27c00a79e9b4e7f0c
Author:     Huang Rui <vowstar <AT> gmail <DOT> com>
AuthorDate: Fri Mar  7 09:30:40 2025 +0000
Commit:     Rui Huang <vowstar <AT> gmail <DOT> com>
CommitDate: Fri Mar  7 09:30:40 2025 +0000
URL:        https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=7517372d

sci-electronics/bluespec: add 2024.01

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

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

diff --git a/sci-electronics/bluespec/Manifest b/sci-electronics/bluespec/Manifest
index fc42dc842..4c09d65ba 100644
--- a/sci-electronics/bluespec/Manifest
+++ b/sci-electronics/bluespec/Manifest
@@ -1,4 +1,5 @@
 DIST bluespec-2022.01.tar.gz 25576850 BLAKE2B c80dada5bdbc13bd8ff4205ff8b65384845548b61190dd0d3729d877be576b78acfd38857adf427321f9ba078bae2891640cf211e907ca2db679bd7a0d2bb536 SHA512 e6a1e0197d42ca402180735d1f2c41ab84b47eb8708d4ff49a9d509a928dec7cda88d06353faaebefcabacb734d6f7dd1cee1b6e1053010231c8ae508cb80789
 DIST bluespec-2023.01.tar.gz 26431509 BLAKE2B 10cb153e3dfc6779e48ead139da53463ffd4610c389feee73b64ae74e65e411cb9408e324e76f5b56b1accbe012c79017f528d4daa2d575ae73b16f5cf9d4733 SHA512 704926ba3e9d04a3a12c5c77793151a68d650e5ce84c3d5e6a6b86187dea322cd0e0ba78a5fd840e2dbd3a01a7d27ca30b9648158056b2c96eb522722bdef302
 DIST bluespec-2023.07.tar.gz 26449912 BLAKE2B de40024ee5a61b608d341d940d631e6350c3d45eeb8e52fc046ef4b6175c17c9867894d7a73dc656fefe19b952da7baafba1d2d685e990bb08c4e90435519815 SHA512 c14c7a17c53dc59ed8c62022fec932f7c8da13ef3d5aaa5c0439c492e89919bb2cb647cfb862e4d072cfb9bdbbe3e5ed0b98f9a609a6cbb7bbd5ce55384cbb5e
+DIST bluespec-2024.01.tar.gz 26477100 BLAKE2B 257204eb8a677a26ce4dc24a1f646b48b8d5247ec4427fb9dc98e1a31ae71c649d835237c822c24818f31b3da434f9b430383cc948d4893034074b4347a7f183 SHA512 e5c8213e73bb58fb46db374b4e26631ca56c2681b691dd6357fe6a1bb5c70641fe7f53a7e3f20a489b4d435a0f94b6e14b33fa56dbb83c80190999bba47580c8
 DIST yices-2.6.4.tar.gz 10186909 BLAKE2B 1c4b6297fd59924e9d99b9e17eb4b42e9bfbc24dcd56631beb9b72103c91578eb72b90cb9e228a5e9d489efc520a2e1d41185e9c3f4a8c43fc93f8dabba7414d SHA512 d8102c41fda0e200fd1336ae317b516d2797d10c187b8f7aecf0c9b08b4b487b90bef8c358099b2da51c0367326939f9610fd4e6d5a41a392cf1114bd04b8763

diff --git a/sci-electronics/bluespec/bluespec-2024.01.ebuild b/sci-electronics/bluespec/bluespec-2024.01.ebuild
new file mode 100644
index 000000000..2728fc3f4
--- /dev/null
+++ b/sci-electronics/bluespec/bluespec-2024.01.ebuild
@@ -0,0 +1,145 @@
+# Copyright 1999-2024 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
+	)
+"
+
+BDEPEND="
+	dev-haskell/cabal:0=
+	dev-lang/ghc:0=
+	dev-lang/perl
+	dev-util/gperf
+	doc? (
+		dev-ruby/asciidoctor
+		dev-ruby/asciidoctor-pdf
+		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	other threads:[~2025-03-07  9:32 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-03-07  9:32 Rui Huang [this message]
  -- strict thread matches above, loose matches on Subject: below --
2025-03-08 11:07 [gentoo-commits] repo/proj/guru:dev commit in: sci-electronics/bluespec/ Lucio Sauer
2025-03-07  9:32 Rui Huang
2023-11-03  3:18 Rui Huang
2023-11-02 13:53 Rui Huang
2023-11-02 13:53 Rui Huang
2023-03-23 14:04 Rui Huang
2022-09-07  3:11 Rui Huang
2022-09-07  3:11 Rui Huang
2022-09-07  2:51 Rui Huang
2022-08-28 20:28 Rui Huang
2022-08-28 17:01 Rui Huang
2022-08-28 14:42 Rui Huang

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=1741339840.7517372d635d1d5a79e3dfa27c00a79e9b4e7f0c.vowstar@gentoo \
    --to=vowstar@gmail.com \
    --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