commit: 42654c42eb843e2bde65808dbb70817df7fb1723
Author: Jason A. Donenfeld <zx2c4 <AT> gentoo <DOT> org>
AuthorDate: Tue Mar 3 15:00:42 2026 +0000
Commit: Jason A. Donenfeld <zx2c4 <AT> gentoo <DOT> org>
CommitDate: Tue Mar 3 15:16:42 2026 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=42654c42
x11-libs/fox: add 1.7.89
Signed-off-by: Jason A. Donenfeld <zx2c4 <AT> gentoo.org>
x11-libs/fox/Manifest | 1 +
x11-libs/fox/files/fox-1.7.89-sanitize.patch | 33 ++++++++
x11-libs/fox/fox-1.7.89.ebuild | 120 +++++++++++++++++++++++++++
3 files changed, 154 insertions(+)
diff --git a/x11-libs/fox/Manifest b/x11-libs/fox/Manifest
index 7a65c8fc236c..c0d56e401954 100644
--- a/x11-libs/fox/Manifest
+++ b/x11-libs/fox/Manifest
@@ -1,2 +1,3 @@
DIST fox-1.6.57.tar.gz 4284018 BLAKE2B
3efbc6188225f9444fbd347359e8b4041a08fe654acb99c48e4966e501a2f72a44863f2e9b60ae810a259951f89cfc27b9a8b6341e029627066712e0dbf20e40
SHA512
e7b91054a9ea674818803415284cb61572935d22466e446cb37ef68344e2684e8acd567f7c8a6912f939dcbcc37455119ad6a01ac30513f460d0b3937b7e6087
DIST fox-1.7.85.tar.gz 5912948 BLAKE2B
ba9b224212efd91e4643e4f97bfd571802c48bf379239a4f580f820e1f6d8c8d55c321febfd42b4dfc7b366715e893365cd198c4cb9c22c5fb8c525b16b1f888
SHA512
7a67d564c69ddac1a9dec62837943ec7aabd951c72715ac12300f728f0fad3365e39cdbf7fe1ab31e0ae8cf11381d62eaeb3edb64d1773d4cd2279db4fd280d8
+DIST fox-1.7.89.tar.gz 5963863 BLAKE2B
b0a2f019bf91962fb8e039901fc98d181c19637d3360ea86c507c86d985fd4a6c10c87a654588db990559421cc1d6ec49015e1e44a972da2012095d7e20d3d81
SHA512
38a9956a43b6c9af135d853b25bb0a242597f6b6c95a1a4826c29aa6a52f2c6f20ec58bff9175eca53316170ea3e23e2a87191998720ded75c4b92888cca3f6b
diff --git a/x11-libs/fox/files/fox-1.7.89-sanitize.patch
b/x11-libs/fox/files/fox-1.7.89-sanitize.patch
new file mode 100644
index 000000000000..61aab806f712
--- /dev/null
+++ b/x11-libs/fox/files/fox-1.7.89-sanitize.patch
@@ -0,0 +1,33 @@
+diff '--color=auto' -ru fox-1.7.89-orig/configure.ac fox-1.7.89/configure.ac
+--- fox-1.7.89-orig/configure.ac 2026-03-03 15:59:25.946665867 +0100
++++ fox-1.7.89/configure.ac 2026-03-03 15:59:40.625259877 +0100
+@@ -65,9 +65,6 @@
+ AC_SUBST(LT_REVISION)
+ AC_SUBST(LT_AGE)
+
+-# Prevents setting flags.
+-CXXFLAGS=""
+-
+ # More secret source
+ AC_USE_SYSTEM_EXTENSIONS
+
+@@ -144,7 +141,6 @@
+ CXXFLAGS="${CXXFLAGS} -O2 -DNDEBUG"
+ if test "${GXX}" = "yes" ; then
+ CXXFLAGS="${CXXFLAGS} -ffast-math -fstrict-overflow -fstrict-aliasing
-finline-functions -fomit-frame-pointer "
+- LDFLAGS="-s ${LDFLAGS}"
+ fi
+ fi
+
+diff '--color=auto' -ru fox-1.7.89-orig/Makefile.am fox-1.7.89/Makefile.am
+--- fox-1.7.89-orig/Makefile.am 2026-03-03 15:59:25.954180200 +0100
++++ fox-1.7.89/Makefile.am 2026-03-03 15:59:53.105434761 +0100
+@@ -3,7 +3,7 @@
+ # For non-gcc compilers, change the options to "no-dependencies"
+ AUTOMAKE_OPTIONS = foreign dist-zip
+
+-SUBDIRS = utils include lib chart doc tests shutterbug adie pathfinder
calculator controlpanel glviewer windows
++SUBDIRS = utils include lib chart doc tests shutterbug adie pathfinder
calculator controlpanel glviewer
+ EXTRA_DIST = ADDITIONS AUTHORS INSTALL LICENSE LICENSE_ADDENDUM TRACING
README fox.spec fox-config index.html aclocal.m4
+
+ bin_SCRIPTS = fox-config
diff --git a/x11-libs/fox/fox-1.7.89.ebuild b/x11-libs/fox/fox-1.7.89.ebuild
new file mode 100644
index 000000000000..86d503d38001
--- /dev/null
+++ b/x11-libs/fox/fox-1.7.89.ebuild
@@ -0,0 +1,120 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools flag-o-matic
+
+DESCRIPTION="C++ Toolkit for developing Graphical User Interfaces easily and
effectively"
+HOMEPAGE="http://www.fox-toolkit.org/"
+SRC_URI="http://fox-toolkit.org/ftp/${P}.tar.gz"
+
+LICENSE="LGPL-2.1"
+SLOT="1.7"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~mips ~ppc ~ppc64 ~sparc ~x86"
+IUSE="+bzip2 +jpeg +opengl tiff +truetype +zlib debug doc profile tools"
+
+COMMON_DEPEND="
+ x11-libs/libICE
+ x11-libs/libSM
+ x11-libs/libX11
+ x11-libs/libXcursor
+ x11-libs/libXext
+ x11-libs/libXfixes
+ x11-libs/libXi
+ x11-libs/libXrandr
+ x11-libs/libXrender
+ bzip2? ( app-arch/bzip2 )
+ jpeg? ( media-libs/libjpeg-turbo:= )
+ opengl? ( virtual/glu virtual/opengl )
+ tiff? ( media-libs/tiff:= )
+ truetype? (
+ media-libs/fontconfig
+ media-libs/freetype:2
+ x11-libs/libXft
+ )
+ zlib? ( virtual/zlib:= )
+"
+RDEPEND="
+ ${COMMON_DEPEND}
+ x11-libs/fox-wrapper
+"
+DEPEND="
+ ${COMMON_DEPEND}
+ x11-base/xorg-proto
+ x11-libs/libXt
+"
+BDEPEND="doc? ( app-text/doxygen )"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.7.84-pthread_rwlock_prefer_writer_np-musl.patch
+ "${FILESDIR}"/${PN}-1.7.89-sanitize.patch
+ "${FILESDIR}"/${PN}-1.7.85-tools.patch
+ # fix from snapshot-1.7.86. to remove in the next release.
+ "${FILESDIR}"/${PN}-1.7.85-fix-metaclass-header.patch
+)
+
+src_prepare() {
+ default
+ eautoreconf
+}
+
+src_configure() {
+ # -Werror=strict-aliasing (bug #864412, bug #940648)
+ # Do not trust it for LTO either.
+ append-flags -fno-strict-aliasing
+ filter-lto
+
+ use debug || append-cppflags -DNDEBUG
+
+ # Not using --enable-release because of the options it sets like no SSP
+ econf \
+ $(use_enable debug) \
+ $(use_enable bzip2 bz2lib) \
+ $(use_enable jpeg) \
+ $(use_with opengl) \
+ $(use_enable tiff) \
+ $(use_with truetype xft) \
+ $(use_enable zlib) \
+ $(use_with profile profiling) \
+ $(use_with tools)
+}
+
+src_compile() {
+ emake
+ use doc && emake -C doc docs
+}
+
+src_install() {
+ emake install \
+ DESTDIR="${D}" \
+ htmldir="${EPREFIX}"/usr/share/doc/${PF}/html \
+ artdir="${EPREFIX}"/usr/share/doc/${PF}/html/art \
+ screenshotsdir="${EPREFIX}"/usr/share/doc/${PF}/html/screenshots
+
+ local CP="${ED}"/usr/bin/ControlPanel
+ if [[ -f ${CP} ]]; then
+ mv "${CP}" "${ED}"/usr/bin/fox-ControlPanel-${SLOT} || \
+ die "Failed to install ControlPanel"
+ fi
+
+ dodoc ADDITIONS AUTHORS LICENSE_ADDENDUM README TRACING
+
+ if use doc; then
+ # install class reference docs if USE=doc
+ docinto html
+ dodoc -r doc/ref
+ else
+ # remove documentation if USE=-doc
+ rm -rf "${ED}"/usr/share/doc/${PF}/html || die
+ fi
+
+ # slot fox-config
+ if [[ -f ${ED}/usr/bin/fox-config ]] ; then
+ mv "${ED}"/usr/bin/fox-config
"${ED}"/usr/bin/fox-${SLOT}-config \
+ || die "failed to install fox-config"
+ fi
+
+ # no static archives
+ find "${D}" -name '*.la' -delete || die
+}