commit: 1963be8bc0976d927f21319d2372ef3f3e3541d1 Author: Sam James <sam <AT> gentoo <DOT> org> AuthorDate: Wed Feb 4 22:23:15 2026 +0000 Commit: Sam James <sam <AT> gentoo <DOT> org> CommitDate: Wed Feb 4 22:23:56 2026 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1963be8b
dev-util/godcc: new package, add 1.0 I've started working on eclass integration for flag-o-matic.eclass and toolchain-funcs.eclass which will resolve some TODOs here. Also about to report the LTO & autoconf bugs. Signed-off-by: Sam James <sam <AT> gentoo.org> dev-util/godcc/Manifest | 1 + dev-util/godcc/files/godbolt.stunnel | 7 +++++ dev-util/godcc/godcc-1.0.ebuild | 58 ++++++++++++++++++++++++++++++++++++ dev-util/godcc/metadata.xml | 8 +++++ 4 files changed, 74 insertions(+) diff --git a/dev-util/godcc/Manifest b/dev-util/godcc/Manifest new file mode 100644 index 000000000000..03bba5179fcb --- /dev/null +++ b/dev-util/godcc/Manifest @@ -0,0 +1 @@ +DIST godcc-1.0.tar.gz 251780 BLAKE2B d0304b05d8ee2afdebf61ff5f7723f3568c3a176f697c889b4649ca56e318ab505fefde9b4790c4b0df0b624f104c5937cf45c7186eff1f4d88d41dc39beaff3 SHA512 eabd91502a5c09fa57aa2e4fce6c8cd281b425cee0f38cebcda5605d337554849ae991646a1acf131798bf5bc9dd1bd227e0be360a715d27c8911640bf3da5e7 diff --git a/dev-util/godcc/files/godbolt.stunnel b/dev-util/godcc/files/godbolt.stunnel new file mode 100644 index 000000000000..8a39dbe82bfd --- /dev/null +++ b/dev-util/godcc/files/godbolt.stunnel @@ -0,0 +1,7 @@ +sslVersion = all +foreground = yes + +[remote] +client = yes +accept = 8888 +connect = godbolt.org:443 diff --git a/dev-util/godcc/godcc-1.0.ebuild b/dev-util/godcc/godcc-1.0.ebuild new file mode 100644 index 000000000000..0175de4a6c68 --- /dev/null +++ b/dev-util/godcc/godcc-1.0.ebuild @@ -0,0 +1,58 @@ +# Copyright 2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DESCRIPTION="Full-fledged command-line interface to Compiler Explorer instances" +# https://jemarch.net/godcc 404s for now +HOMEPAGE="https://git.sr.ht/~jemarch/godcc" +SRC_URI="https://jemarch.net/${P}.tar.gz" + +LICENSE="GPL-3+" +SLOT="0" +#KEYWORDS="~amd64" + +RDEPEND="dev-libs/boehm-gc" +DEPEND="${RDEPEND}" +# TODO: We will want a pkg_pretend check for whether the active compiler +# supports algol68 once eclass support is there. +BDEPEND=" + sys-devel/gcc[algol68(-)] +" + +src_configure() { + # This hack is needed as flag-o-matic.eclass doesn't yet support + # Algol 68, WIP. + export A68FLAGS="${A68FLAGS:--O2} -ftrampoline-impl=heap" + + default +} + +src_compile() { + # Workaround autoconf bug where configure-time A68FLAGS get + # clobbered to -O2 -g. + # + # -fno-lto because of -Wlto-type-mismatch with prelude + emake A68FLAGS="${A68FLAGS} -fno-lto" +} + +src_install() { + default + + dodoc "${FILESDIR}"/godbolt.stunnel +} + +pkg_postinst() { + # https://git.sr.ht/~jemarch/godcc/tree/b49882aec95f56486bc2d08d3c324145c6a8d6c0/item/README.md + if [[ -z ${REPLACING_VERSIONS} ]] ; then + einfo "Unless running your own Compiler Explorer instance locally," + einfo "you will likely need to run a proxy to strip HTTPS. The recommended" + einfo "setup for this is with net-misc/stunnel." + einfo "" + einfo "An example config is installed at ${BROOT}/usr/share/doc/${PF}/godbolt.stunnel," + einfo "which can be used as:" + einfo " # stunnel godbolt.stunnel" + einfo " $ export GODCC_CEHOST=localhost GODCC_CEPORT=8888" + einfo " $ godcc ..." + fi +} diff --git a/dev-util/godcc/metadata.xml b/dev-util/godcc/metadata.xml new file mode 100644 index 000000000000..641cbd3703e7 --- /dev/null +++ b/dev-util/godcc/metadata.xml @@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="person"> + <email>[email protected]</email> + <name>Sam James</name> + </maintainer> +</pkgmetadata>
