summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEli Schwartz <eschwartz93@gmail.com>2024-01-16 15:45:34 -0500
committerSam James <sam@gentoo.org>2024-01-17 06:33:41 +0000
commit84298741b114a83fe224a4d9c4ffd84e8c20fc95 (patch)
tree48dcba8318c6966fd98174044f064f2e3ab3a182 /www-client/links
parentsys-apps/usbutils: Stabilize 017 ppc64, #922276 (diff)
downloadgentoo-84298741b114a83fe224a4d9c4ffd84e8c20fc95.tar.gz
gentoo-84298741b114a83fe224a4d9c4ffd84e8c20fc95.tar.bz2
gentoo-84298741b114a83fe224a4d9c4ffd84e8c20fc95.zip
www-client/links: reduce USE=X dependency to the minimum requirement
links checks for the X11 headers at configure time, and builds against them. It doesn't use any Xext content, and doesn't need to depend on it. Separately, it does require xorg-proto at build time, similar to many other packages. However it declared no dependency on it at all. The dependency could be transitively satisfied by other software using xorg-proto if built from source without binpkgs, but best not to rely on that! Signed-off-by: Eli Schwartz <eschwartz93@gmail.com> Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'www-client/links')
-rw-r--r--www-client/links/links-2.29-r1.ebuild186
1 files changed, 186 insertions, 0 deletions
diff --git a/www-client/links/links-2.29-r1.ebuild b/www-client/links/links-2.29-r1.ebuild
new file mode 100644
index 000000000000..a68d5dea0f87
--- /dev/null
+++ b/www-client/links/links-2.29-r1.ebuild
@@ -0,0 +1,186 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools desktop toolchain-funcs xdg-utils
+
+DESCRIPTION="A fast and lightweight web browser running in both graphics and text mode"
+HOMEPAGE="http://links.twibright.com/"
+SRC_URI="http://${PN}.twibright.com/download/${P}.tar.bz2
+ X? ( https://dashboard.snapcraft.io/site_media/appmedia/2018/07/links-graphics-xlinks-logo-pic.png )"
+
+LICENSE="GPL-2"
+SLOT="2"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="avif brotli bzip2 fbcon freetype gpm jpeg libevent livecd lzip lzma selinux ssl suid svga tiff webp X zlib zstd"
+
+GRAPHICS_DEPEND="media-libs/libpng:="
+
+RDEPEND="
+ dev-libs/libbsd
+ avif? (
+ media-libs/libavif:=
+ )
+ brotli? (
+ app-arch/brotli:=
+ )
+ bzip2? (
+ app-arch/bzip2
+ )
+ fbcon? (
+ ${GRAPHICS_DEPEND}
+ )
+ freetype? (
+ media-libs/fontconfig
+ media-libs/freetype
+ )
+ gpm? (
+ sys-libs/gpm
+ )
+ jpeg? (
+ media-libs/libjpeg-turbo:=
+ )
+ libevent? (
+ dev-libs/libevent:=
+ )
+ livecd? (
+ ${GRAPHICS_DEPEND}
+ sys-libs/gpm
+ media-libs/libjpeg-turbo:=
+ )
+ lzip? (
+ app-arch/lzlib
+ )
+ lzma? (
+ app-arch/xz-utils
+ )
+ ssl? (
+ dev-libs/openssl:=
+ )
+ svga? (
+ ${GRAPHICS_DEPEND}
+ media-libs/svgalib
+ )
+ tiff? (
+ media-libs/tiff:=
+ )
+ webp? (
+ media-libs/libwebp:=
+ )
+ X? (
+ ${GRAPHICS_DEPEND}
+ x11-libs/libX11
+ )
+ zlib? (
+ sys-libs/zlib
+ )
+ zstd? (
+ app-arch/zstd:=
+ )"
+
+DEPEND="${RDEPEND}
+ fbcon? ( virtual/os-headers )
+ livecd? ( virtual/os-headers )
+ X? ( x11-base/xorg-proto )
+"
+
+BDEPEND="virtual/pkgconfig"
+
+IDEPEND="X? ( dev-util/desktop-file-utils )"
+
+RDEPEND+=" selinux? ( sec-policy/selinux-links )"
+
+REQUIRED_USE="!livecd? ( fbcon? ( gpm ) )
+ svga? ( suid )"
+
+DOCS=( AUTHORS BRAILLE_HOWTO ChangeLog KEYS NEWS README SITES )
+
+PATCHES=( "${FILESDIR}/links-2.29-fix-zstd-only-build.patch" )
+
+src_prepare() {
+ use X && xdg_environment_reset
+
+ pushd intl > /dev/null || die
+ ./gen-intl || die
+ ./synclang || die
+ popd > /dev/null || die
+
+ # error: conditional "am__fastdepCXX" was never defined (for eautoreconf)
+ sed -i \
+ -e '/AC_PROG_CXX/s:dnl ::' \
+ -e 's:AM_CONFIG_HEADER:AC_CONFIG_HEADERS:' \
+ configure.in || die #467020
+
+ # Upstream configure produced by broken autoconf-2.13. This also fixes
+ # toolchain detection.
+ mv configure.in configure.ac || die
+
+ default
+ eautoreconf #131440 and #103483#c23
+}
+
+src_configure() {
+ local myconf
+
+ if use livecd; then
+ export ac_cv_lib_gpm_Gpm_Open=yes
+ myconf+=' --with-fb --with-libjpeg'
+ else
+ export ac_cv_lib_gpm_Gpm_Open=$(usex gpm)
+ fi
+
+ if use X || use fbcon || use svga || use livecd; then
+ myconf+=' --enable-graphics'
+ fi
+
+ tc-export PKG_CONFIG
+
+ econf \
+ --without-directfb \
+ --without-librsvg \
+ --with-ipv6 \
+ $(use_with avif libavif) \
+ $(use_with brotli) \
+ $(use_with bzip2) \
+ $(use_with fbcon fb) \
+ $(use_with freetype) \
+ $(use_with jpeg libjpeg) \
+ $(use_with libevent) \
+ $(use_with lzip) \
+ $(use_with lzma) \
+ $(use_with ssl) \
+ $(use_with svga svgalib) \
+ $(use_with tiff libtiff) \
+ $(use_with webp libwebp) \
+ $(use_with X x) \
+ $(use_with zlib) \
+ $(use_with zstd) \
+ ${myconf}
+}
+
+src_install() {
+ HTML_DOCS="doc/links_cal/*"
+ default
+
+ if use X; then
+ newicon "${DISTDIR}"/links-graphics-xlinks-logo-pic.png links.png
+ make_desktop_entry 'links -g %u' Links links 'Network;WebBrowser'
+ local d="${ED}"/usr/share/applications
+ echo 'MimeType=x-scheme-handler/http;' >> "${d}"/*.desktop || die
+ if use ssl; then
+ sed -i -e 's:x-scheme-handler/http;:&x-scheme-handler/https;:' \
+ "${d}"/*.desktop || die
+ fi
+ fi
+
+ use suid && fperms 4755 /usr/bin/links
+}
+
+pkg_postinst() {
+ use X && xdg_desktop_database_update
+}
+
+pkg_postrm() {
+ use X && xdg_desktop_database_update
+}