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/circt/
Date: Sat, 27 Aug 2022 19:20:21 +0000 (UTC)	[thread overview]
Message-ID: <1661628007.bfcb1aadadf0596996c72382a25c3d405a33cac3.vowstar@gentoo> (raw)

commit:     bfcb1aadadf0596996c72382a25c3d405a33cac3
Author:     Huang Rui <vowstar <AT> gmail <DOT> com>
AuthorDate: Sat Aug 27 19:20:07 2022 +0000
Commit:     Rui Huang <vowstar <AT> gmail <DOT> com>
CommitDate: Sat Aug 27 19:20:07 2022 +0000
URL:        https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=bfcb1aad

sci-electronics/circt: new package, add 1.14.0

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

 sci-electronics/circt/Manifest            |   2 +
 sci-electronics/circt/circt-1.14.0.ebuild | 116 ++++++++++++++++++++++++++++++
 sci-electronics/circt/metadata.xml        |  18 +++++
 3 files changed, 136 insertions(+)

diff --git a/sci-electronics/circt/Manifest b/sci-electronics/circt/Manifest
new file mode 100644
index 000000000..4fd0d394c
--- /dev/null
+++ b/sci-electronics/circt/Manifest
@@ -0,0 +1,2 @@
+DIST circt-1.14.0.tar.gz 2152570 BLAKE2B 3901c0d146a4410cc2ee5a0556ce54decea4fb1998b83a2999ec97493efcdefbb2bb0c33b5ee127c9627568bdd92669bf1c064930abf6954aa33cbb382fea006 SHA512 1d2b2696c7ce42cf90a9209f2b0d04862681645cfe733e0dd2f6c48754a9fa035f2d5033b2c0278841edaaee9a72802a00226f210a032e81b79d4d3df5bcf7cf
+DIST llvm-project-fe0f72d5c55a9b95c5564089e946e8f08112e995.tar.gz 166019098 BLAKE2B c3613d5465522249597fe8a882cd4cdd2f8b4030a9fee73c47643f0e64ea0b97a212f9e4637e5a096e30e679460dac039b0c244daf4b0bd04c4da42efb4744d0 SHA512 bc71f42c8af87559fbc384a6cf473b5bdb42a04e698e7e44c94d9ea27f763d7f0bd4dea63e0eef9d29cdfb2ad203b14eeb6431bba336583cfb0ce19f12a40a72

diff --git a/sci-electronics/circt/circt-1.14.0.ebuild b/sci-electronics/circt/circt-1.14.0.ebuild
new file mode 100644
index 000000000..14b7a0b36
--- /dev/null
+++ b/sci-electronics/circt/circt-1.14.0.ebuild
@@ -0,0 +1,116 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="8"
+
+MY_PV="$(ver_cut 1)/$(ver_cut 2)/$(ver_cut 3)"
+MY_LLVM_PV="fe0f72d5c55a9b95c5564089e946e8f08112e995"
+CMAKE_BUILD_TYPE="Release"
+CMAKE_MAKEFILE_GENERATOR="ninja"
+PYTHON_COMPAT=( python3_{8..11} )
+inherit cmake python-r1
+
+DESCRIPTION="The fast free Verilog/SystemVerilog simulator"
+HOMEPAGE="
+	https://circt.llvm.org
+	https://github.com/llvm/circt
+"
+
+if [[ "${PV}" == "9999" ]] ; then
+	inherit git-r3
+	EGIT_REPO_URI="https://github.com/llvm/${PN}.git"
+	EGIT_SUBMODULES=( '*' )
+else
+	SRC_URI="
+		https://github.com/llvm/circt/archive/refs/tags/sifive/${MY_PV}.tar.gz -> ${P}.tar.gz
+		https://github.com/llvm/llvm-project/archive/${MY_LLVM_PV}.tar.gz -> llvm-project-${MY_LLVM_PV}.tar.gz
+	"
+	KEYWORDS="~amd64 ~arm64 ~riscv ~x86"
+	S_CIRCT="${WORKDIR}/${PN}-sifive-$(ver_cut 1)-$(ver_cut 2)-$(ver_cut 3)"
+	S_LLVM="${WORKDIR}/llvm-project-${MY_LLVM_PV}"
+	S="${S_LLVM}/llvm"
+fi
+
+LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA BSD public-domain rc"
+SLOT="0"
+IUSE="test"
+REQUIRED_USE=" ${PYTHON_REQUIRED_USE} "
+
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+	${PYTHON_DEPS}
+	test? (
+		dev-python/psutil[${PYTHON_USEDEP}]
+		sci-electronics/verilator
+	)
+	sys-libs/ncurses:0=
+"
+
+DEPEND="
+	${RDEPEND}
+"
+
+BDEPEND="
+	dev-util/ninja
+	virtual/pkgconfig
+"
+
+DOCS=(
+	"${S_LLVM}/llvm/llvm-LICENSE.TXT"
+	"${S_LLVM}/mlir/mlir-LICENSE.TXT"
+	"${S_CIRCT}/circt-LICENSE"
+)
+
+src_configure() {
+	python_setup
+
+	local mycmakeargs=(
+		-D Python3_EXECUTABLE="${PYTHON}" \
+		-D CMAKE_INSTALL_PREFIX=/usr \
+		-D LLVM_BINUTILS_INCDIR=/usr/include \
+		-D LLVM_ENABLE_PROJECTS=mlir \
+		-D BUILD_SHARED_LIBS=OFF \
+		-D LLVM_STATIC_LINK_CXX_STDLIB=ON \
+		-D LLVM_ENABLE_ASSERTIONS=ON \
+		-D LLVM_BUILD_EXAMPLES=OFF \
+		-D LLVM_ENABLE_BINDINGS=OFF \
+		-D LLVM_ENABLE_OCAMLDOC=OFF \
+		-D LLVM_OPTIMIZED_TABLEGEN=ON \
+		-D LLVM_EXTERNAL_PROJECTS=circt \
+		-D LLVM_EXTERNAL_CIRCT_SOURCE_DIR="${S_CIRCT}" \
+		-D LLVM_BUILD_TOOLS=ON
+	)
+	cmake_src_configure
+}
+
+src_test() {
+	pushd "${BUILD_DIR}" || die
+	eninja check-mlir
+	eninja check-circt
+	eninja check-circt-integration
+	popd || die
+}
+
+src_install() {
+	mv "${S_LLVM}/llvm/LICENSE.TXT" "${S_LLVM}/llvm/llvm-LICENSE.TXT" || die
+	mv "${S_LLVM}/mlir/LICENSE.TXT" "${S_LLVM}/mlir/mlir-LICENSE.TXT" || die
+	mv "${S_CIRCT}/LICENSE" "${S_CIRCT}/circt-LICENSE" || die
+	einstalldocs
+	exeinto /usr/bin
+	doexe "${BUILD_DIR}"/bin/circt-capi-ir-test
+	doexe "${BUILD_DIR}"/bin/circt-lsp-server
+	doexe "${BUILD_DIR}"/bin/circt-opt
+	doexe "${BUILD_DIR}"/bin/circt-reduce
+	doexe "${BUILD_DIR}"/bin/circt-rtl-sim.py
+	doexe "${BUILD_DIR}"/bin/circt-translate
+	doexe "${BUILD_DIR}"/bin/esi_cosim.py
+	doexe "${BUILD_DIR}"/bin/esi-cosim-runner.py
+	doexe "${BUILD_DIR}"/bin/esi-tester
+	doexe "${BUILD_DIR}"/bin/firtool
+	doexe "${BUILD_DIR}"/bin/handshake-runner
+	doexe "${BUILD_DIR}"/bin/llhd-sim
+	doexe "${BUILD_DIR}"/bin/py-split-input-file.py
+	# llhd-sim not static linked
+	dolib.so "${BUILD_DIR}"/lib/libcirct-llhd-signals-runtime-wrappers.so
+}

diff --git a/sci-electronics/circt/metadata.xml b/sci-electronics/circt/metadata.xml
new file mode 100644
index 000000000..ce85e6abd
--- /dev/null
+++ b/sci-electronics/circt/metadata.xml
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+	<maintainer type="person">
+		<email>vowstar@gmail.com</email>
+		<name>Huang Rui</name>
+	</maintainer>
+	<upstream>
+		<remote-id type="github">verilator/verilator</remote-id>
+	</upstream>
+	<longdescription lang="en">
+	Verilator, the fastest free Verilog HDL simulator.
+	Accepts synthesizable Verilog or SystemVerilog
+	Performs lint code-quality checks
+	Compiles into multithreaded C++, SystemC, or (soon) C++-under-Python
+	Creates XML to front-end your own tools
+	</longdescription>
+</pkgmetadata>


             reply	other threads:[~2022-08-27 23:25 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-08-27 19:20 Rui Huang [this message]
  -- strict thread matches above, loose matches on Subject: below --
2022-08-28  4:56 [gentoo-commits] repo/proj/guru:dev commit in: sci-electronics/circt/ Rui Huang
2022-09-06  2:22 Rui Huang
2023-03-31  6:00 Rui Huang
2024-06-12 16:33 Yuhang Zeng
2024-06-12 16:33 Yuhang Zeng

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=1661628007.bfcb1aadadf0596996c72382a25c3d405a33cac3.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