From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id 30C8D15800D for ; Mon, 3 Jul 2023 15:16:12 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 39D4BE0849; Mon, 3 Jul 2023 15:16:11 +0000 (UTC) Received: from smtp.gentoo.org (woodpecker.gentoo.org [140.211.166.183]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id 177BFE0849 for ; Mon, 3 Jul 2023 15:16:11 +0000 (UTC) Received: from oystercatcher.gentoo.org (oystercatcher.gentoo.org [148.251.78.52]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id 12F3C33BE99 for ; Mon, 3 Jul 2023 15:16:10 +0000 (UTC) Received: from localhost.localdomain (localhost [IPv6:::1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id 68702AC3 for ; Mon, 3 Jul 2023 15:16:08 +0000 (UTC) From: "Sam James" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Sam James" Message-ID: <1688397356.dfefaa456bd69bc14e3a1c2c6c1b0cc19c6b0869.sam@gentoo> Subject: [gentoo-commits] repo/gentoo:master commit in: www-client/elinks/files/, www-client/elinks/ X-VCS-Repository: repo/gentoo X-VCS-Files: www-client/elinks/elinks-0.16.1.1-r2.ebuild www-client/elinks/files/elinks-0.16.1.1-perl-5.38.patch X-VCS-Directories: www-client/elinks/files/ www-client/elinks/ X-VCS-Committer: sam X-VCS-Committer-Name: Sam James X-VCS-Revision: dfefaa456bd69bc14e3a1c2c6c1b0cc19c6b0869 X-VCS-Branch: master Date: Mon, 3 Jul 2023 15:16:08 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply X-Archives-Salt: 8b58c59d-488c-44cd-ac34-69b6d2795e28 X-Archives-Hash: 1f54db6e9104744ad41cfc21e664ea14 commit: dfefaa456bd69bc14e3a1c2c6c1b0cc19c6b0869 Author: Sam James gentoo org> AuthorDate: Mon Jul 3 15:15:11 2023 +0000 Commit: Sam James gentoo org> CommitDate: Mon Jul 3 15:15:56 2023 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=dfefaa45 www-client/elinks: fix build w/ perl-5.38 Closes: https://bugs.gentoo.org/909042 Thanks-to: Azamat H. Hackimov gmail.com> Signed-off-by: Sam James gentoo.org> www-client/elinks/elinks-0.16.1.1-r2.ebuild | 172 +++++++++++++++++++++ .../elinks/files/elinks-0.16.1.1-perl-5.38.patch | 62 ++++++++ 2 files changed, 234 insertions(+) diff --git a/www-client/elinks/elinks-0.16.1.1-r2.ebuild b/www-client/elinks/elinks-0.16.1.1-r2.ebuild new file mode 100644 index 000000000000..16b07eae2f9b --- /dev/null +++ b/www-client/elinks/elinks-0.16.1.1-r2.ebuild @@ -0,0 +1,172 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{10..11} ) +LUA_COMPAT=( lua5-{1,2,3,4} luajit ) + +inherit meson lua-single python-any-r1 + +DESCRIPTION="Advanced and well-established text-mode web browser" +HOMEPAGE="http://elinks.or.cz/" + +if [[ ${PV} == *9999 ]] ; then + EGIT_REPO_URI="https://github.com/rkd77/felinks" + inherit git-r3 +else + SRC_URI="https://github.com/rkd77/elinks/releases/download/v${PV}/${P}.tar.xz" + + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris" +fi + +LICENSE="GPL-2" +SLOT="0" +IUSE="bittorrent brotli bzip2 debug finger ftp gopher gpm gnutls guile idn" +IUSE+=" javascript lua lzma +mouse nls nntp perl samba ssl test tre unicode X xml zlib zstd" +RESTRICT="!test? ( test )" +REQUIRED_USE="lua? ( ${LUA_REQUIRED_USE} )" + +RDEPEND=" + >=sys-libs/ncurses-5.2:=[unicode(+)] + brotli? ( app-arch/brotli:= ) + bzip2? ( >=app-arch/bzip2-1.0.2 ) + gpm? ( + >=sys-libs/gpm-1.20.0-r5 + ) + guile? ( >=dev-scheme/guile-1.6.4-r1[deprecated] ) + idn? ( net-dns/libidn:= ) + javascript? ( + dev-cpp/libxmlpp:5.0 + dev-lang/mujs:= + ) + lua? ( ${LUA_DEPS} ) + lzma? ( app-arch/xz-utils ) + perl? ( dev-lang/perl:= ) + samba? ( net-fs/samba ) + ssl? ( + !gnutls? ( dev-libs/openssl:= ) + gnutls? ( net-libs/gnutls:= ) + ) + tre? ( dev-libs/tre ) + X? ( + x11-libs/libX11 + x11-libs/libXt + ) + xml? ( >=dev-libs/expat-1.95.4 ) + zlib? ( >=sys-libs/zlib-1.1.4 ) + zstd? ( app-arch/zstd:= ) +" +DEPEND="${RDEPEND} + X? ( x11-base/xorg-proto )" +BDEPEND=" + ${PYTHON_DEPS} + virtual/pkgconfig + nls? ( sys-devel/gettext ) + test? ( + net-dns/libidn + ) +" + +PATCHES=( + "${FILESDIR}"/${PN}-0.16.1.1-perl-5.38.patch +) + +pkg_setup() { + use lua && lua-single_pkg_setup + + python-any-r1_pkg_setup +} + +src_configure() { + local emesonargs=( + -Ddocdir="${EPREFIX}"/usr/share/doc/${PF} + -Dhtmldoc=false + -Dpdfdoc=false + -D88-colors=true + -D256-colors=true + $(meson_use bittorrent) + $(meson_use brotli) + $(meson_use bzip2 bzlib) + $(usex debug '-Ddebug=true' '-Dfastmem=true') + $(meson_use finger) + $(meson_use ftp) + -Dfsp=false + -Dgemini=false + $(meson_use nls gettext) + $(meson_use gopher) + $(meson_use gpm) + $(meson_use guile) + -Dgssapi=false + -Dhtml-highlight=true + $(meson_use idn) + $(meson_use javascript mujs) + -Dipv6=true + -Dleds=true + -Dlibev=false + -Dlibevent=false + -Dluapkg=$(usex lua ${ELUA:-0} '') + $(meson_use lzma) + $(meson_use mouse) + #-Dmujs=false + $(meson_use nls) + $(meson_use nntp) + $(meson_use perl) + -Dpython=false + -Dquickjs=false + -Druby=false + $(meson_use samba smb) + -Dsm-scripting=false + -Dspidermonkey=false + -Dterminfo=true + $(meson_use test) + $(meson_use tre) + -Dtrue-color=true + $(meson_use xml xbel) + $(meson_use X x) + $(meson_use zlib) + $(meson_use zstd) + ) + + if use ssl ; then + if use gnutls ; then + emesonargs+=( -Dgnutls=true ) + else + emesonargs+=( -Dopenssl=true) + fi + else + emesonargs+=( -Dgnutls=false -Dopenssl=false ) + fi + + meson_src_configure +} + +src_install() { + meson_src_install + + insinto /etc/elinks + newins contrib/keybind-full.conf keybind-full.sample + newins contrib/keybind.conf keybind.conf.sample + + dodoc AUTHORS BUGS ChangeLog INSTALL NEWS README SITES THANKS TODO doc/*.* + docinto contrib ; dodoc contrib/{README,colws.diff,elinks[-.]vim*} + docinto contrib/lua ; dodoc contrib/lua/{*.lua,elinks-remote} + docinto contrib/conv ; dodoc contrib/conv/*.* + docinto contrib/guile ; dodoc contrib/guile/*.scm + + # elinks uses an internal copy of gettext which ships files that may + # collide with the system's gettext (https://bugs.gentoo.org/635090) + rm -f "${ED}"/usr/{share/locale/locale,lib/charset}.alias || die +} + +pkg_postinst() { + elog "You may want to convert your html.cfg and links.cfg of" + elog "Links or older ELinks versions to the new ELinks elinks.conf" + elog "using ${EROOT}/usr/share/doc/${PF}/contrib/conv/conf-links2elinks.pl" + elog + elog "Please have a look at ${EROOT}/etc/elinks/keybind-full.sample and" + elog "${EROOT}/etc/elinks/keybind.conf.sample for some bindings examples." + elog + elog "You will have to set your TERM variable to 'xterm-256color'" + elog "to be able to use 256 colors in elinks." +} diff --git a/www-client/elinks/files/elinks-0.16.1.1-perl-5.38.patch b/www-client/elinks/files/elinks-0.16.1.1-perl-5.38.patch new file mode 100644 index 000000000000..08808a8eaf51 --- /dev/null +++ b/www-client/elinks/files/elinks-0.16.1.1-perl-5.38.patch @@ -0,0 +1,62 @@ +https://bugs.gentoo.org/909042 +https://github.com/rkd77/elinks/pull/243 +https://github.com/rkd77/elinks/commit/9b3cbca0fb493dc5be44649991dfdf30b746f153 + +[rebased for 0.16.x] + +From 393bf23a2683971a72217839657bb2945a36ee54 Mon Sep 17 00:00:00 2001 +From: "Azamat H. Hackimov" +Date: Mon, 3 Jul 2023 14:12:22 +0300 +Subject: [PATCH] Fix compilation with Perl 5.38 + +Perl now includes own `struct object` which clashes with elinks +implementation. Renamed `struct object` to `struct elinks_object` to +avoid it. + +Bug: https://bugs.gentoo.org/909042 +--- a/src/main/object.h ++++ b/src/main/object.h +@@ -11,7 +11,7 @@ extern "C" { + #define DEBUG_REFCOUNT + #endif + +-struct object { ++struct elinks_object { + int refcount; + #ifdef CONFIG_DEBUG + char *name; +@@ -20,10 +20,10 @@ struct object { + + #define OBJECT_HEAD(type) \ + LIST_HEAD(type); \ +- struct object object ++ struct elinks_object object + + struct object_head { +- OBJECT_HEAD(struct object *); ++ OBJECT_HEAD(struct elinks_object *); + }; + + #ifdef DEBUG_REFCOUNT +--- a/src/protocol/uri.c ++++ b/src/protocol/uri.c +@@ -1578,7 +1578,7 @@ struct uri_cache_entry { + + struct uri_cache { + struct hash *map; +- struct object object; ++ struct elinks_object object; + }; + + static struct uri_cache uri_cache; +--- a/src/protocol/uri.h ++++ b/src/protocol/uri.h +@@ -89,7 +89,7 @@ struct uri { + unsigned int form:1; /* URI originated from form */ + + /* Usage count object. */ +- struct object object; ++ struct elinks_object object; + }; + + enum uri_errno {