summaryrefslogtreecommitdiff
path: root/dev-lang/boogie
diff options
context:
space:
mode:
Diffstat (limited to 'dev-lang/boogie')
-rw-r--r--dev-lang/boogie/Manifest2
-rw-r--r--dev-lang/boogie/boogie-2.16.0.ebuild94
2 files changed, 96 insertions, 0 deletions
diff --git a/dev-lang/boogie/Manifest b/dev-lang/boogie/Manifest
index 95f95a2efa0e..e102931fe98c 100644
--- a/dev-lang/boogie/Manifest
+++ b/dev-lang/boogie/Manifest
@@ -1,6 +1,8 @@
DIST boogie-2.15.8-deps.tar.xz 71100772 BLAKE2B 1249627710fe0cc08c640ac7fe5e518793d237291810dc2df5d26bae2a4fd0fec15f0529b6fb799231002881665c2b2cf66b3a6a88494c780e96e51d78086959 SHA512 ee8df5693264c6b6e925f966a85e312e2df80d121c6e81786e7672d1591cdab8a66601c7d740df9db9704330a82f5aa01982d758cc4d5f151838be41c4d0b76f
DIST boogie-2.15.8.tar.gz 1548233 BLAKE2B cd3d46b6702eb9c16cdb94ae9776ee52bb142be57e3b0dfd014e59c2f3a98aec84d891544cbd239d773c49ac6bc0b3e1eb5e1eb5cda1f1a0b9aa029f0ee674f2 SHA512 5e214a6451b0ac6a33088797957661cdb35e7fc99f880935f0f1d9329975c11a0849f5ba6244e90f528e6cc31dc2fc83636506130f59464889bf04ecf6130990
DIST boogie-2.15.9.tar.gz 1542068 BLAKE2B eb4802a628b3b96b02dd4736e6958f3b4362142f948e675e0f13c2270d062e42f1e441ddee427340e974cf6dbb3b6700b750318570e830ba0541c6737096991e SHA512 93eab4ba7f746c78c054f6ee8355c408e4435a836fc45def5485c973e4aec50e419412ecd376ff412632cb466384ad9df90bb368af4dc5e23cd7e207e47b5b1f
+DIST boogie-2.16.0.tar.gz 1540957 BLAKE2B e42615f1a0963aa68cc898945aafa6b518acc2134da17b717a81b4c5601bdb8112b79e96aafdb277a5517ca855679175bb5e6fdf9faae37b2e4b00f7c0ff3af5 SHA512 50be3d688f92481890687ba6853ff30716899a045ef1a5915f8bd2c4e86deec73983edaf9e96766efb7c4bc0d522e0087d472de1bf6151adbe35ef903cd8a875
EBUILD boogie-2.15.8-r4.ebuild 2162 BLAKE2B 47c62cb3cb42c1d3fc54d9862cf59d5e745592c97eda31ca7d7f7c431838b50ddd34aa7ab569db1d811a4bef0b87b2cc03f44e94f2672adf299cb4b94ae06c83 SHA512 9c02b41e1e1b9465866d0ae450ae577e1e6b45d4aae2525e41fa047fc223caee112203bbe0851b5c74016114c5f9976c1b4c3c488408dda760ebe994a7cc9b77
EBUILD boogie-2.15.9.ebuild 2191 BLAKE2B 7167928f0a65d0239cd95cc0f3b3957dd52c4ef3a63597474f1bdc9a09d743376689db39d3ee581d99858fef39aa860c70b74d7a945a2e4f6531a726252f2b31 SHA512 8f6db106f5af25fedd460dd939cd9053870874338e796ccebb9bfb057782d1e7dab605748da1f858a30322c1ea9946aaa02d67e9c34fb430997083b926b7ec13
+EBUILD boogie-2.16.0.ebuild 2191 BLAKE2B 7167928f0a65d0239cd95cc0f3b3957dd52c4ef3a63597474f1bdc9a09d743376689db39d3ee581d99858fef39aa860c70b74d7a945a2e4f6531a726252f2b31 SHA512 8f6db106f5af25fedd460dd939cd9053870874338e796ccebb9bfb057782d1e7dab605748da1f858a30322c1ea9946aaa02d67e9c34fb430997083b926b7ec13
MISC metadata.xml 1090 BLAKE2B 838630d17f9e2aa9d8d329f5f6da0e2f00636c3e01ceb02e10f06d3b53b722859818343c6a6936e1d2a495b9ec8d77b729f03dfbc0e017dace31116dccee4ff7 SHA512 e66f1077862a81efd0e311d6e2a2f0b4cd5fd650748c4232e3d70cbd982685bf03da616092929686589e115a4fe3ba2d52c420b416222ccae221469ca2d5face
diff --git a/dev-lang/boogie/boogie-2.16.0.ebuild b/dev-lang/boogie/boogie-2.16.0.ebuild
new file mode 100644
index 000000000000..f4b0b0eea17f
--- /dev/null
+++ b/dev-lang/boogie/boogie-2.16.0.ebuild
@@ -0,0 +1,94 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DOTNET_COMPAT=6.0
+
+inherit edo multiprocessing
+
+DESCRIPTION="SMT-based program verifier"
+HOMEPAGE="https://github.com/boogie-org/boogie/"
+SRC_URI="
+ https://github.com/boogie-org/${PN}/archive/v${PV}.tar.gz
+ -> ${P}.tar.gz
+ https://dev.gentoo.org/~xgqt/distfiles/deps/${PN}-2.15.8-deps.tar.xz
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="debug test"
+RESTRICT="!test? ( test )"
+
+BDEPEND="virtual/dotnet-sdk:${DOTNET_COMPAT}"
+RDEPEND="
+ ${BDEPEND}
+ sci-mathematics/z3
+"
+BDEPEND+="
+ test? (
+ dev-python/lit
+ dev-python/OutputCheck
+ )
+"
+
+# Generated by dotnet.
+QA_PREBUILT="/usr/share/boogie/BoogieDriver"
+
+src_prepare() {
+ export DOTNET_CLI_TELEMETRY_OPTOUT=1
+ export DOTNET_NOLOGO=1
+ export DOTNET_CONFIGURATION=$(usex debug Debug Release)
+ export DOTNET_OUTPUT="${WORKDIR}"/${P}_net${DOTNET_COMPAT}_${DOTNET_CONFIGURATION}/${PN}
+ export NUGET_PACKAGES="${WORKDIR}"/${PN}-2.15.8/Source/nuget_packages
+
+ default
+
+ # Remove bad tests.
+ local bad_tests=(
+ civl/inductive-sequentialization/BroadcastConsensus.bpl
+ livevars/bla1.bpl
+ prover/cvc5.bpl
+ test0/MaxKeepGoingSplits.bpl
+ test15/CaptureInlineUnroll.bpl
+ test15/CaptureState.bpl
+ test15/CommonVariablesPruning.bpl
+ )
+ local bad_test
+ for bad_test in ${bad_tests[@]} ; do
+ rm "${S}"/Test/${bad_test} || die
+ done
+
+ # Update the boogieBinary variable.
+ sed "/^boogieBinary/s|= .*|= '${DOTNET_OUTPUT}/BoogieDriver.dll'|" \
+ -i "${S}"/Test/lit.site.cfg || die "failed to update lit.site.cfg"
+}
+
+src_configure() {
+ edob dotnet restore "${S}"/Source \
+ --source "${NUGET_PACKAGES}" -p:TargetFramework=net${DOTNET_COMPAT}
+}
+
+src_compile() {
+ local myopts=(
+ --configuration ${DOTNET_CONFIGURATION}
+ --no-restore
+ --no-self-contained
+ --nologo
+ --output "${DOTNET_OUTPUT}"
+ -consoleLoggerParameters:ErrorsOnly
+ -maxCpuCount:$(makeopts_jobs)
+ )
+ edob dotnet build ${myopts[@]} "${S}"/Source
+}
+
+src_test() {
+ lit "${S}"/Test || die "tests failed"
+}
+
+src_install() {
+ mkdir -p "${ED}"/usr/share/ || die
+ cp -r "${DOTNET_OUTPUT}" "${ED}"/usr/share/ || die
+ dosym -r /usr/share/${PN}/BoogieDriver /usr/bin/boogie
+}