diff options
author | Maciej Barć <xgqt@gentoo.org> | 2023-03-13 16:42:26 +0100 |
---|---|---|
committer | Maciej Barć <xgqt@gentoo.org> | 2023-03-13 22:37:56 +0100 |
commit | 08156641467f5b945f6ae730aaddd5ab1d480ad0 (patch) | |
tree | b2c6390c4175d4eaa1311018903be94bccbb7e33 /sci-mathematics | |
parent | go-module.eclass: inherit toolchain-funcs for tc-endian (diff) | |
download | gentoo-08156641467f5b945f6ae730aaddd5ab1d480ad0.tar.gz gentoo-08156641467f5b945f6ae730aaddd5ab1d480ad0.tar.bz2 gentoo-08156641467f5b945f6ae730aaddd5ab1d480ad0.zip |
sci-mathematics/abc: new package; add 0_p20230313 and live
Signed-off-by: Maciej Barć <xgqt@gentoo.org>
Diffstat (limited to 'sci-mathematics')
-rw-r--r-- | sci-mathematics/abc/Manifest | 1 | ||||
-rw-r--r-- | sci-mathematics/abc/abc-0_p20230313.ebuild | 58 | ||||
-rw-r--r-- | sci-mathematics/abc/abc-9999.ebuild | 58 | ||||
-rw-r--r-- | sci-mathematics/abc/files/abc-0_p20230313-libabc.patch | 11 | ||||
-rw-r--r-- | sci-mathematics/abc/metadata.xml | 20 |
5 files changed, 148 insertions, 0 deletions
diff --git a/sci-mathematics/abc/Manifest b/sci-mathematics/abc/Manifest new file mode 100644 index 000000000000..641321f549e5 --- /dev/null +++ b/sci-mathematics/abc/Manifest @@ -0,0 +1 @@ +DIST abc-0_p20230313.tar.gz 6082725 BLAKE2B 3647e813d04545eba68faae58ce8f36747e0ebf13befbaaca646c783acdf9994209a5c58beadc20b1b18a2c77a64ac589e899595e3f1374df9e363a3416271a6 SHA512 a3512b280cbac747178c6e3decc785aff5eb4130a95eea2f3bab6d61a41c89758116b0d94cbbbb4d4060fbfbaa0fa1638a9e211f3f2677910bbfe8e8d629e7ee diff --git a/sci-mathematics/abc/abc-0_p20230313.ebuild b/sci-mathematics/abc/abc-0_p20230313.ebuild new file mode 100644 index 000000000000..2b2acf6d5866 --- /dev/null +++ b/sci-mathematics/abc/abc-0_p20230313.ebuild @@ -0,0 +1,58 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit toolchain-funcs + +DESCRIPTION="System for sequential logic synthesis and formal verification" +HOMEPAGE="https://people.eecs.berkeley.edu/~alanmi/abc/ + https://github.com/berkeley-abc/abc/" + +if [[ ${PV} == *9999* ]] ; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/berkeley-abc/abc.git" +elif [[ ${PV} == *_p20230313 ]] ; then + COMMIT=a5f4841486d4a491913943c5b92167a9e988abac + SRC_URI="https://github.com/berkeley-abc/abc/archive/${COMMIT}.tar.gz + -> ${P}.tar.gz" + S="${WORKDIR}"/abc-${COMMIT} + KEYWORDS="~amd64 ~x86" +else + die "unsupported abc version, given: ${PV}" +fi + +LICENSE="BSD" +SLOT="0" +IUSE="+readline +threads" + +RDEPEND="readline? ( sys-libs/readline:= )" +DEPEND="${RDEPEND}" + +PATCHES=( "${FILESDIR}"/abc-0_p20230313-libabc.patch ) + +src_compile() { + local -a mymakeargs=( + AR="$(tc-getAR)" + CC="$(tc-getCC)" + CXX="$(tc-getCXX)" + LD="$(tc-getCXX)" + ABC_MAKE_VERBOSE=1 + ABC_USE_NO_CUDD=1 + ABC_USE_PIC=1 + $(usex readline "ABC_USE_READLINE=1" "ABC_USE_NO_READLINE=1") + $(usex threads "ABC_USE_PTHREADS=1" "ABC_USE_NO_PTHREADS=1") + ) + emake "${mymakeargs[@]}" libabc.so + emake "${mymakeargs[@]}" abc +} + +src_install() { + exeinto /usr/bin + doexe abc + + newlib.so libabc.so libabc.so.0 + dosym -r /usr/$(get_libdir)/libabc.so.0 /usr/$(get_libdir)/libabc.so + + dodoc README.md readmeaig +} diff --git a/sci-mathematics/abc/abc-9999.ebuild b/sci-mathematics/abc/abc-9999.ebuild new file mode 100644 index 000000000000..2b2acf6d5866 --- /dev/null +++ b/sci-mathematics/abc/abc-9999.ebuild @@ -0,0 +1,58 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit toolchain-funcs + +DESCRIPTION="System for sequential logic synthesis and formal verification" +HOMEPAGE="https://people.eecs.berkeley.edu/~alanmi/abc/ + https://github.com/berkeley-abc/abc/" + +if [[ ${PV} == *9999* ]] ; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/berkeley-abc/abc.git" +elif [[ ${PV} == *_p20230313 ]] ; then + COMMIT=a5f4841486d4a491913943c5b92167a9e988abac + SRC_URI="https://github.com/berkeley-abc/abc/archive/${COMMIT}.tar.gz + -> ${P}.tar.gz" + S="${WORKDIR}"/abc-${COMMIT} + KEYWORDS="~amd64 ~x86" +else + die "unsupported abc version, given: ${PV}" +fi + +LICENSE="BSD" +SLOT="0" +IUSE="+readline +threads" + +RDEPEND="readline? ( sys-libs/readline:= )" +DEPEND="${RDEPEND}" + +PATCHES=( "${FILESDIR}"/abc-0_p20230313-libabc.patch ) + +src_compile() { + local -a mymakeargs=( + AR="$(tc-getAR)" + CC="$(tc-getCC)" + CXX="$(tc-getCXX)" + LD="$(tc-getCXX)" + ABC_MAKE_VERBOSE=1 + ABC_USE_NO_CUDD=1 + ABC_USE_PIC=1 + $(usex readline "ABC_USE_READLINE=1" "ABC_USE_NO_READLINE=1") + $(usex threads "ABC_USE_PTHREADS=1" "ABC_USE_NO_PTHREADS=1") + ) + emake "${mymakeargs[@]}" libabc.so + emake "${mymakeargs[@]}" abc +} + +src_install() { + exeinto /usr/bin + doexe abc + + newlib.so libabc.so libabc.so.0 + dosym -r /usr/$(get_libdir)/libabc.so.0 /usr/$(get_libdir)/libabc.so + + dodoc README.md readmeaig +} diff --git a/sci-mathematics/abc/files/abc-0_p20230313-libabc.patch b/sci-mathematics/abc/files/abc-0_p20230313-libabc.patch new file mode 100644 index 000000000000..57691dc18775 --- /dev/null +++ b/sci-mathematics/abc/files/abc-0_p20230313-libabc.patch @@ -0,0 +1,11 @@ +--- a/Makefile ++++ b/Makefile +@@ -221,7 +221,7 @@ lib$(PROG).a: $(LIBOBJ) + + lib$(PROG).so: $(LIBOBJ) + @echo "$(MSG_PREFIX)\`\` Linking:" $(notdir $@) +- $(VERBOSE)$(CXX) -shared -o $@ $^ $(LIBS) ++ $(VERBOSE)$(CXX) -shared -o $@ $^ $(LDFLAGS) -Wl,-soname,lib$(PROG).so.0 $(LIBS) + + docs: + @echo "$(MSG_PREFIX)\`\` Building documentation." $(notdir $@) diff --git a/sci-mathematics/abc/metadata.xml b/sci-mathematics/abc/metadata.xml new file mode 100644 index 000000000000..dc9439f27baf --- /dev/null +++ b/sci-mathematics/abc/metadata.xml @@ -0,0 +1,20 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> + +<pkgmetadata> + <maintainer type="project"> + <email>sci-mathematics@gentoo.org</email> + <name>Gentoo Mathematics Project</name> + </maintainer> + <longdescription> + ABC is a growing software system for synthesis and verification of binary + sequential logic circuits appearing in synchronous hardware designs. ABC + combines scalable logic optimization based on And-Inverter Graphs (AIGs), + optimal-delay DAG-based technology mapping for look-up tables and standard + cells, and innovative algorithms for sequential synthesis and verification. + </longdescription> + <upstream> + <bugs-to>https://github.com/berkeley-abc/abc/issues/</bugs-to> + <remote-id type="github">berkeley-abc/abc</remote-id> + </upstream> +</pkgmetadata> |