public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
From: "Sam James" <sam@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] repo/gentoo:master commit in: app-office/lyx/files/, app-office/lyx/
Date: Sat,  7 May 2022 03:53:36 +0000 (UTC)	[thread overview]
Message-ID: <1651895608.8c4c4cb2567ec797af16cbdb1e072ff6fef0c0bf.sam@gentoo> (raw)

commit:     8c4c4cb2567ec797af16cbdb1e072ff6fef0c0bf
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sat May  7 03:52:40 2022 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sat May  7 03:53:28 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8c4c4cb2

app-office/lyx: fix build with GCC 12

Also, add Python 3.10 (add a patch from Fedora too).

Closes: https://bugs.gentoo.org/841743
Signed-off-by: Sam James <sam <AT> gentoo.org>

 app-office/lyx/files/lyx-2.3.6.1-gcc12.patch  |  22 +++
 app-office/lyx/files/lyx-2.3.6.1-python.patch |  50 +++++++
 app-office/lyx/lyx-2.3.6.1-r2.ebuild          | 187 ++++++++++++++++++++++++++
 3 files changed, 259 insertions(+)

diff --git a/app-office/lyx/files/lyx-2.3.6.1-gcc12.patch b/app-office/lyx/files/lyx-2.3.6.1-gcc12.patch
new file mode 100644
index 000000000000..b1acbdb9087d
--- /dev/null
+++ b/app-office/lyx/files/lyx-2.3.6.1-gcc12.patch
@@ -0,0 +1,22 @@
+https://src.fedoraproject.org/rpms/lyx/raw/rawhide/f/lyx-2.3.6-fix-gcc12.patch
+https://bugs.gentoo.org/841743
+--- a/src/insets/InsetListings.cpp
++++ b/src/insets/InsetListings.cpp
+@@ -44,6 +44,7 @@
+ 
+ #include "support/regex.h"
+ 
++#include <cstring>
+ #include <sstream>
+ 
+ using namespace std;
+--- a/src/lyxfind.cpp
++++ b/src/lyxfind.cpp
+@@ -52,6 +52,7 @@
+ #include "support/lstrings.h"
+ 
+ #include "support/regex.h"
++#include <iterator>
+ 
+ using namespace std;
+ using namespace lyx::support;

diff --git a/app-office/lyx/files/lyx-2.3.6.1-python.patch b/app-office/lyx/files/lyx-2.3.6.1-python.patch
new file mode 100644
index 000000000000..666d82c06bf8
--- /dev/null
+++ b/app-office/lyx/files/lyx-2.3.6.1-python.patch
@@ -0,0 +1,50 @@
+https://src.fedoraproject.org/rpms/lyx/raw/054d18eb79a8ec3d4480ab4449b3c62b12770d2d/f/lyx-2.3.6-layout2layout.patch
+--- a/lib/scripts/layout2layout.py
++++ b/lib/scripts/layout2layout.py
+@@ -256,7 +256,7 @@
+ 
+ def trim_bom(line):
+     " Remove byte order mark."
+-    if line[0:3] == "\357\273\277":
++    if line[0:3] == b"\357\273\277":
+         return line[3:]
+     else:
+         return line
+@@ -345,8 +345,8 @@
+     # for categories
+     re_Declaration = re.compile(b'^#\\s*\\Declare\\w+Class.*$')
+     re_ExtractCategory = re.compile(b'^(#\\s*\\Declare\\w+Class(?:\\[[^]]*?\\])?){([^(]+?)\\s+\\(([^)]+?)\\)\\s*}\\s*$')
+-    ConvDict = {"article": "Articles", "book" : "Books", "letter" : "Letters", "report": "Reports", \
+-                "presentation" : "Presentations", "curriculum vitae" : "Curricula Vitae", "handout" : "Handouts"}
++    ConvDict = {b"article": b"Articles", b"book" : b"Books", b"letter" : b"Letters", b"report": b"Reports", \
++                b"presentation" : b"Presentations", b"curriculum vitae" : b"Curricula Vitae", b"handout" : b"Handouts"}
+     # Arguments
+     re_OptArgs = re.compile(b'^(\\s*)OptionalArgs(\\s+)(\\d+)\\D*$', re.IGNORECASE)
+     re_ReqArgs = re.compile(b'^(\\s*)RequiredArgs(\\s+)(\\d+)\\D*$', re.IGNORECASE)
+@@ -485,7 +485,7 @@
+                 continue
+             col  = match.group(2)
+             if col == "collapsable":
+-                lines[i] = match.group(1) + "collapsible"
++                lines[i] = match.group(1) + b"collapsible"
+             i += 1
+             continue
+ 
+@@ -703,7 +703,7 @@
+             # Insert the required number of arguments at the end of the style definition
+             match = re_End.match(lines[i])
+             if match:
+-                newarg = ['']
++                newarg = [b'']
+                 # First the optionals (this is the required order pre 2.1)
+                 if opts > 0:
+                     if opts == 1:
+@@ -1153,7 +1153,7 @@
+             if latextype == b"item_environment" and label.lower() == b"counter_enumi":
+                 lines[labeltype_line] = re_LabelType.sub(b'\\1\\2\\3Enumerate', lines[labeltype_line])
+                 # Don't add the LabelCounter line later
+-                counter = ""
++                counter = b""
+ 
+             # Replace
+             #

diff --git a/app-office/lyx/lyx-2.3.6.1-r2.ebuild b/app-office/lyx/lyx-2.3.6.1-r2.ebuild
new file mode 100644
index 000000000000..a8d622193e27
--- /dev/null
+++ b/app-office/lyx/lyx-2.3.6.1-r2.ebuild
@@ -0,0 +1,187 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{8..10} )
+
+MY_P="${P/_}"
+inherit desktop font python-single-r1 qmake-utils toolchain-funcs xdg-utils
+
+DESCRIPTION="WYSIWYM frontend for LaTeX, DocBook, etc"
+HOMEPAGE="https://www.lyx.org/"
+SRC_URI="ftp://ftp.lyx.org/pub/lyx/stable/2.3.x/${MY_P}.tar.xz
+	ftp://ftp.lyx.org/pub/lyx/devel/lyx-2.3/${MY_P}/${MY_P}.tar.xz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~ppc64 ~riscv ~sparc ~x86 ~x64-macos"
+IUSE="aspell cups debug dia dot enchant gnumeric html +hunspell +latex monolithic-build nls rcs rtf svg l10n_he"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+# bc needed http://comments.gmane.org/gmane.editors.lyx.devel/137498 and bug #787839
+BDEPEND="
+	sys-devel/bc
+	virtual/pkgconfig
+	nls? ( sys-devel/gettext )
+"
+RDEPEND="${PYTHON_DEPS}
+	app-text/mythes
+	dev-libs/boost:=
+	dev-qt/qtcore:5
+	dev-qt/qtgui:5
+	dev-qt/qtsvg:5
+	dev-qt/qtwidgets:5
+	dev-qt/qtx11extras:5
+	dev-texlive/texlive-fontsextra
+	sys-apps/file
+	sys-libs/zlib
+	virtual/imagemagick-tools[png,svg?]
+
+	x11-misc/xdg-utils
+
+	aspell? ( app-text/aspell )
+	cups? ( net-print/cups )
+	dia? ( app-office/dia )
+	dot? ( media-gfx/graphviz )
+	enchant? ( app-text/enchant:2 )
+	gnumeric? ( app-office/gnumeric )
+	html? ( dev-tex/html2latex )
+	hunspell? ( app-text/hunspell )
+	l10n_he? ( dev-tex/culmus-latex )
+	latex? (
+		app-text/dvipng
+		app-text/ghostscript-gpl
+		app-text/ps2eps
+		app-text/texlive
+		dev-texlive/texlive-fontsrecommended
+		dev-texlive/texlive-latexextra
+		dev-texlive/texlive-mathscience
+		dev-texlive/texlive-pictures
+		dev-texlive/texlive-plaingeneric
+		|| (
+			dev-tex/hevea
+			dev-tex/latex2html
+			dev-tex/tex4ht[java]
+			dev-tex/tth
+		)
+	)
+	rcs? ( dev-vcs/rcs )
+	rtf? (
+		app-text/unrtf
+		dev-tex/html2latex
+		dev-tex/latex2rtf
+	)
+	svg? ( || ( gnome-base/librsvg media-gfx/inkscape ) )
+"
+DEPEND="${RDEPEND}
+	dev-qt/qtconcurrent:5
+"
+
+DOCS=( ANNOUNCE NEWS README RELEASE-NOTES UPGRADING )
+
+S="${WORKDIR}/${MY_P}"
+
+FONT_S="${S}/lib/fonts"
+FONT_SUFFIX="ttf"
+
+PATCHES=(
+	# Try first with xdg-open before hardcoded commands
+	# Patch from Debian using a similar approach to Fedora
+	"${FILESDIR}"/${PN}-prefer-xdg-open.patch
+
+	"${FILESDIR}"/${P}-python.patch
+	"${FILESDIR}"/${P}-gcc12.patch
+)
+
+pkg_setup() {
+	python-single-r1_pkg_setup
+	font_pkg_setup
+}
+
+src_prepare() {
+	default
+
+	sed "s:python -tt:${EPYTHON} -tt:g" -i lib/configure.py || die
+}
+
+src_configure() {
+	tc-export CXX
+	#bug 221921
+	export VARTEXFONTS="${T}"/fonts
+
+	econf \
+		$(use_with aspell) \
+		$(use_enable debug) \
+		$(use_with enchant) \
+		$(use_with hunspell) \
+		$(use_enable monolithic-build) \
+		$(use_enable nls) \
+		--enable-qt5 \
+		--with-qt-dir=$(qt5_get_libdir)/qt5 \
+		--disable-stdlib-debug \
+		--without-included-boost \
+		--with-packaging=posix
+}
+
+src_install() {
+	default
+
+	if use l10n_he ; then
+		echo "\bind_file cua" > "${T}"/hebrew.bind || die
+		echo "\bind \"F12\" \"language hebrew\"" >> "${T}"/hebrew.bind || die
+
+		insinto /usr/share/lyx/bind
+		doins "${T}"/hebrew.bind
+	fi
+
+	newicon -s 32 "development/Win32/packaging/icons/lyx_32x32.png" ${PN}.png
+	doicon -s 48 "lib/images/lyx.png"
+	doicon -s scalable "lib/images/lyx.svg"
+
+	# fix for bug 91108
+	if use latex ; then
+		dosym ../../../lyx/tex /usr/share/texmf-site/tex/latex/lyx
+	fi
+
+	# fonts needed for proper math display, see also bug #15629
+	font_src_install
+
+	python_fix_shebang "${ED}"/usr/share/${PN}
+
+	if use hunspell ; then
+		dosym ../myspell /usr/share/lyx/dicts
+		dosym ../myspell /usr/share/lyx/thes
+	fi
+}
+
+pkg_postinst() {
+	font_pkg_postinst
+	xdg_icon_cache_update
+	xdg_desktop_database_update
+
+	# fix for bug 91108
+	if use latex ; then
+		texhash || die
+	fi
+
+	# instructions for RTL support. See also bug 168331.
+	if use l10n_he || has he ${LINGUAS} || has ar ${LINGUAS} ; then
+		elog
+		elog "Enabling RTL support in LyX:"
+		elog "If you intend to use a RTL language (such as Hebrew or Arabic)"
+		elog "You must enable RTL support in LyX. To do so start LyX and go to"
+		elog "Tools->Preferences->Language settings->Language"
+		elog "and make sure the \"Right-to-left language support\" is checked"
+		elog
+	fi
+}
+
+pkg_postrm() {
+	xdg_icon_cache_update
+	xdg_desktop_database_update
+
+	if use latex ; then
+		texhash || die
+	fi
+}


             reply	other threads:[~2022-05-07  3:53 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-05-07  3:53 Sam James [this message]
  -- strict thread matches above, loose matches on Subject: below --
2019-08-10 19:13 [gentoo-commits] repo/gentoo:master commit in: app-office/lyx/files/, app-office/lyx/ David Seifert
2018-03-30 18:09 Andreas Sturmlechner
2018-02-15  0:24 Andreas Sturmlechner

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1651895608.8c4c4cb2567ec797af16cbdb1e072ff6fef0c0bf.sam@gentoo \
    --to=sam@gentoo.org \
    --cc=gentoo-commits@lists.gentoo.org \
    --cc=gentoo-dev@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox