diff options
Diffstat (limited to 'app-office/scribus')
-rw-r--r-- | app-office/scribus/Manifest | 1 | ||||
-rw-r--r-- | app-office/scribus/files/scribus-1.6.1-boost-1.85-2.patch | 27 | ||||
-rw-r--r-- | app-office/scribus/files/scribus-1.6.1-boost-1.85.patch | 39 | ||||
-rw-r--r-- | app-office/scribus/scribus-1.6.1-r1.ebuild | 2 | ||||
-rw-r--r-- | app-office/scribus/scribus-1.6.2.ebuild | 157 | ||||
-rw-r--r-- | app-office/scribus/scribus-1.6.9999.ebuild | 157 |
6 files changed, 383 insertions, 0 deletions
diff --git a/app-office/scribus/Manifest b/app-office/scribus/Manifest index 0ffc05a70363..48266e2a2a49 100644 --- a/app-office/scribus/Manifest +++ b/app-office/scribus/Manifest @@ -1 +1,2 @@ DIST scribus-1.6.1.tar.xz 73266900 BLAKE2B b8120823cf98201ed197748cffe3f12019acfbd4831b497585ad7d04fa6d6e470bf4bc85dac15700483dfc977c56136cb49bcee20106f482cd9b0022d75d28d5 SHA512 ffde5628ea314dab8f212f78e7dd96cd258ceaebccc5b8de2c21e338a433f82d7fbbb047d05882abb07b4dceac031141b77fef933c9a3ed0e26f29bb94377e7e +DIST scribus-1.6.2.tar.xz 73129400 BLAKE2B 2da98dc322319db18a157f66aef024b7392dbbfaf22adba14f719b48c644d1cc1546cc4d0cccf6dfe479571cf84de6f5645e5d452154f96ddc886e390702d547 SHA512 2f691c1f6b7beada89be410a2936b23641913bf26bd2152974bbaa747aeafb05aa797356a85bd55c14f60f0031ce1addedc9a3ce3e92546ebbb45f96a5ff3e62 diff --git a/app-office/scribus/files/scribus-1.6.1-boost-1.85-2.patch b/app-office/scribus/files/scribus-1.6.1-boost-1.85-2.patch new file mode 100644 index 000000000000..55bc9934964b --- /dev/null +++ b/app-office/scribus/files/scribus-1.6.1-boost-1.85-2.patch @@ -0,0 +1,27 @@ +From 3116328e804c7366ec64c4224cbf20b0f14e52c8 Mon Sep 17 00:00:00 2001 +From: Jean Ghali <jghali@libertysurf.fr> +Date: Sun, 31 Mar 2024 21:40:42 +0000 +Subject: [PATCH] Fix C++20 related warning "template-id is not allowed for + constructor in C++20" + +git-svn-id: svn://scribus.net/trunk/Scribus@26079 11d20701-8431-0410-a711-e3c959e3b870 +--- a/scribus/third_party/lib2geom/rect.h ++++ b/scribus/third_party/lib2geom/rect.h +@@ -56,14 +56,14 @@ class D2<Interval> { + private: + Interval f[2]; + public: +- D2<Interval>() { f[X] = f[Y] = Interval(0, 0); } ++ D2() { f[X] = f[Y] = Interval(0, 0); } + +- D2<Interval>(Interval const &a, Interval const &b) { ++ D2(Interval const &a, Interval const &b) { + f[X] = a; + f[Y] = b; + } + +- D2<Interval>(Point const & a, Point const & b) { ++ D2(Point const & a, Point const & b) { + f[X] = Interval(a[X], b[X]); + f[Y] = Interval(a[Y], b[Y]); + } diff --git a/app-office/scribus/files/scribus-1.6.1-boost-1.85.patch b/app-office/scribus/files/scribus-1.6.1-boost-1.85.patch new file mode 100644 index 000000000000..9d5dc0868843 --- /dev/null +++ b/app-office/scribus/files/scribus-1.6.1-boost-1.85.patch @@ -0,0 +1,39 @@ +From 3e80b387a226f1abac2bcce6e4300467c189d264 Mon Sep 17 00:00:00 2001 +From: Jean Ghali <jghali@libertysurf.fr> +Date: Sat, 1 Jun 2024 22:04:13 +0000 +Subject: [PATCH] #17229: scribus fails to compile with boost 1.85.0 + +git-svn-id: svn://scribus.net/branches/Version16x/Scribus@26170 11d20701-8431-0410-a711-e3c959e3b870 +--- a/scribus/third_party/lib2geom/point.h ++++ b/scribus/third_party/lib2geom/point.h +@@ -121,10 +121,14 @@ class Point { + + Point &operator*=(Matrix const &m); + +- inline int operator == (const Point &in_pnt) { ++ inline bool operator==(const Point &in_pnt) const { + return ((_pt[X] == in_pnt[X]) && (_pt[Y] == in_pnt[Y])); + } + ++ inline bool operator!=(const Point &in_pnt) const { ++ return ((_pt[X] != in_pnt[X]) || (_pt[Y] != in_pnt[Y])); ++ } ++ + friend inline std::ostream &operator<< (std::ostream &out_file, const Geom::Point &in_pnt); + }; + +@@ -144,14 +148,6 @@ inline Point operator^(Point const &a, Point const &b) { + return ret; + } + +-//IMPL: boost::EqualityComparableConcept +-inline bool operator==(Point const &a, Point const &b) { +- return (a[X] == b[X]) && (a[Y] == b[Y]); +-} +-inline bool operator!=(Point const &a, Point const &b) { +- return (a[X] != b[X]) || (a[Y] != b[Y]); +-} +- + /** This is a lexicographical ordering for points. It is remarkably useful for sweepline algorithms*/ + inline bool operator<=(Point const &a, Point const &b) { + return ( ( a[Y] < b[Y] ) || diff --git a/app-office/scribus/scribus-1.6.1-r1.ebuild b/app-office/scribus/scribus-1.6.1-r1.ebuild index bf38de284c12..3b20f7808237 100644 --- a/app-office/scribus/scribus-1.6.1-r1.ebuild +++ b/app-office/scribus/scribus-1.6.1-r1.ebuild @@ -78,6 +78,8 @@ PATCHES=( "${FILESDIR}"/${PN}-1.7.0-fix-icon-version.patch "${FILESDIR}"/${PN}-1.6.1-poppler-24.03.patch "${FILESDIR}"/${PN}-1.6.1-poppler-24.05.patch + "${FILESDIR}"/${PN}-1.6.1-boost-1.85.patch + "${FILESDIR}"/${PN}-1.6.1-boost-1.85-2.patch ) src_prepare() { diff --git a/app-office/scribus/scribus-1.6.2.ebuild b/app-office/scribus/scribus-1.6.2.ebuild new file mode 100644 index 000000000000..13ccc1b48d25 --- /dev/null +++ b/app-office/scribus/scribus-1.6.2.ebuild @@ -0,0 +1,157 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{10..13} ) +PYTHON_REQ_USE="tk?" +inherit cmake desktop flag-o-matic optfeature python-single-r1 xdg + +DESCRIPTION="Desktop publishing (DTP) and layout program" +HOMEPAGE="https://www.scribus.net/" + +if [[ "${PV}" == *9999* ]] ; then + EGIT_REPO_URI="https://github.com/scribusproject/scribus" + EGIT_BRANCH="Version16x" + inherit git-r3 +else + SRC_URI="https://downloads.sourceforge.net/project/${PN}/${PN}/${PV}/${P}.tar.xz" + S="${WORKDIR}/${P}" + KEYWORDS="~amd64 ~ppc ~ppc64 ~x86" +fi + +LICENSE="GPL-2" +SLOT="$(ver_cut 1-2)" +IUSE="+boost debug examples graphicsmagick hunspell +minimal osg +pdf scripts +templates tk" + +REQUIRED_USE="${PYTHON_REQUIRED_USE} + tk? ( scripts )" + +# osg +# couple of third_party libs bundled +DEPEND="${PYTHON_DEPS} + app-text/libmspub + app-text/libqxp + app-text/poppler:= + dev-libs/hyphen + dev-libs/icu:0= + dev-libs/librevenge + dev-libs/libxml2 + dev-qt/qtcore:5 + dev-qt/qtgui:5[-gles2-only,X] + dev-qt/qtnetwork:5 + dev-qt/qtopengl:5 + dev-qt/qtprintsupport:5 + dev-qt/qtwidgets:5 + dev-qt/qtxml:5 + media-libs/fontconfig + media-libs/freetype:2 + media-libs/harfbuzz:0=[icu] + media-libs/lcms:2 + media-libs/libcdr + media-libs/libfreehand + media-libs/libjpeg-turbo:= + media-libs/libpagemaker + media-libs/libpng:0= + media-libs/libvisio + media-libs/libzmf + media-libs/tiff:= + net-print/cups + sys-libs/zlib[minizip] + x11-libs/cairo[X,svg(+)] + boost? ( dev-libs/boost:= ) + graphicsmagick? ( media-gfx/graphicsmagick:= ) + hunspell? ( app-text/hunspell:= ) + osg? ( dev-games/openscenegraph:= ) + pdf? ( app-text/podofo:0= ) + scripts? ( + $(python_gen_cond_dep ' + dev-python/pillow[tk?,${PYTHON_USEDEP}] + ') + ) +" +RDEPEND="${DEPEND} + app-text/ghostscript-gpl +" +BDEPEND=" + dev-qt/linguist-tools:5 + virtual/pkgconfig +" + +PATCHES=( + "${FILESDIR}"/${PN}-1.5.8-cmake.patch # bug 886251 + "${FILESDIR}"/${PN}-1.5.3-fpic.patch + "${FILESDIR}"/${PN}-1.6.1-findhyphen.patch + "${FILESDIR}"/${PN}-1.7.0-fix-icon-version.patch +) + +src_prepare() { + cmake_src_prepare + cmake_run_in scribus cmake_comment_add_subdirectory ui/qml + + # for safety remove files that we patched out + rm -r scribus/third_party/hyphen || die +} + +src_configure() { + # bug #550818 + append-cppflags -DHAVE_MEMRCHR + + local mycmakeargs=( + -DTAG_VERSION="-${SLOT}" + -DHAVE_PYTHON=ON + -DWANT_DISTROBUILD=ON + -DWANT_CPP17=ON + -DDOCDIR="${EPREFIX}"/usr/share/doc/${PF}/ + -DPython3_EXECUTABLE="${PYTHON}" + -DWITH_BOOST=$(usex boost) + -DWANT_DEBUG=$(usex debug) + -DWANT_NOEXAMPLES=$(usex !examples) + -DWANT_GRAPHICSMAGICK=$(usex graphicsmagick) + -DWANT_HUNSPELL=$(usex hunspell) + -DWANT_HEADERINSTALL=$(usex !minimal) + -DWANT_NOOSG=$(usex !osg) + -DWITH_PODOFO=$(usex pdf) + -DWANT_NOTEMPLATES=$(usex !templates) + ) + cmake_src_configure +} + +src_install() { + cmake_src_install + + if ! use tk; then + rm "${ED}"/usr/share/scribus-${SLOT}/scripts/{FontSample,CalendarWizard}.py || die + fi + if use scripts; then + python_fix_shebang "${ED}"/usr/share/scribus-${SLOT}/scripts + python_optimize "${ED}"/usr/share/scribus-${SLOT}/scripts + else + rm "${ED}"/usr/share/scribus-${SLOT}/scripts/*.py || die + fi + + mv "${ED}"/usr/share/doc/${PF}/{en,html} || die + ln -sf html "${ED}"/usr/share/doc/${PF}/en || die + + # These files are parsed to populate the help/about window. + cat >> "${T}"/COPYING <<- EOF || die + ${PN} is licensed under the "${LICENSE}". + Please visit https://www.gnu.org/licenses/gpl-2.0.html for the complete license text. + EOF + dodoc "${T}"/COPYING + docompress -x /usr/share/doc/${PF}/en /usr/share/doc/${PF}/{AUTHORS,TRANSLATION,LINKS,COPYING} + + local size + for size in 16 32 128 256 512; do + newicon -s $size resources/iconsets/artwork/icon_${size}x${size}.png scribus-${SLOT}.png + done + newicon -s 64 resources/iconsets/artwork/icon_32x32@2x.png scribus-${SLOT}.png + newicon resources/iconsets/1_5_1/scribus.png scribus-${SLOT}.png + newmenu scribus.desktop scribus-${SLOT}.desktop +} + +pkg_postinst() { + xdg_pkg_postinst + + optfeature "MS Word .doc file import filter support" app-text/antiword +} diff --git a/app-office/scribus/scribus-1.6.9999.ebuild b/app-office/scribus/scribus-1.6.9999.ebuild new file mode 100644 index 000000000000..13ccc1b48d25 --- /dev/null +++ b/app-office/scribus/scribus-1.6.9999.ebuild @@ -0,0 +1,157 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{10..13} ) +PYTHON_REQ_USE="tk?" +inherit cmake desktop flag-o-matic optfeature python-single-r1 xdg + +DESCRIPTION="Desktop publishing (DTP) and layout program" +HOMEPAGE="https://www.scribus.net/" + +if [[ "${PV}" == *9999* ]] ; then + EGIT_REPO_URI="https://github.com/scribusproject/scribus" + EGIT_BRANCH="Version16x" + inherit git-r3 +else + SRC_URI="https://downloads.sourceforge.net/project/${PN}/${PN}/${PV}/${P}.tar.xz" + S="${WORKDIR}/${P}" + KEYWORDS="~amd64 ~ppc ~ppc64 ~x86" +fi + +LICENSE="GPL-2" +SLOT="$(ver_cut 1-2)" +IUSE="+boost debug examples graphicsmagick hunspell +minimal osg +pdf scripts +templates tk" + +REQUIRED_USE="${PYTHON_REQUIRED_USE} + tk? ( scripts )" + +# osg +# couple of third_party libs bundled +DEPEND="${PYTHON_DEPS} + app-text/libmspub + app-text/libqxp + app-text/poppler:= + dev-libs/hyphen + dev-libs/icu:0= + dev-libs/librevenge + dev-libs/libxml2 + dev-qt/qtcore:5 + dev-qt/qtgui:5[-gles2-only,X] + dev-qt/qtnetwork:5 + dev-qt/qtopengl:5 + dev-qt/qtprintsupport:5 + dev-qt/qtwidgets:5 + dev-qt/qtxml:5 + media-libs/fontconfig + media-libs/freetype:2 + media-libs/harfbuzz:0=[icu] + media-libs/lcms:2 + media-libs/libcdr + media-libs/libfreehand + media-libs/libjpeg-turbo:= + media-libs/libpagemaker + media-libs/libpng:0= + media-libs/libvisio + media-libs/libzmf + media-libs/tiff:= + net-print/cups + sys-libs/zlib[minizip] + x11-libs/cairo[X,svg(+)] + boost? ( dev-libs/boost:= ) + graphicsmagick? ( media-gfx/graphicsmagick:= ) + hunspell? ( app-text/hunspell:= ) + osg? ( dev-games/openscenegraph:= ) + pdf? ( app-text/podofo:0= ) + scripts? ( + $(python_gen_cond_dep ' + dev-python/pillow[tk?,${PYTHON_USEDEP}] + ') + ) +" +RDEPEND="${DEPEND} + app-text/ghostscript-gpl +" +BDEPEND=" + dev-qt/linguist-tools:5 + virtual/pkgconfig +" + +PATCHES=( + "${FILESDIR}"/${PN}-1.5.8-cmake.patch # bug 886251 + "${FILESDIR}"/${PN}-1.5.3-fpic.patch + "${FILESDIR}"/${PN}-1.6.1-findhyphen.patch + "${FILESDIR}"/${PN}-1.7.0-fix-icon-version.patch +) + +src_prepare() { + cmake_src_prepare + cmake_run_in scribus cmake_comment_add_subdirectory ui/qml + + # for safety remove files that we patched out + rm -r scribus/third_party/hyphen || die +} + +src_configure() { + # bug #550818 + append-cppflags -DHAVE_MEMRCHR + + local mycmakeargs=( + -DTAG_VERSION="-${SLOT}" + -DHAVE_PYTHON=ON + -DWANT_DISTROBUILD=ON + -DWANT_CPP17=ON + -DDOCDIR="${EPREFIX}"/usr/share/doc/${PF}/ + -DPython3_EXECUTABLE="${PYTHON}" + -DWITH_BOOST=$(usex boost) + -DWANT_DEBUG=$(usex debug) + -DWANT_NOEXAMPLES=$(usex !examples) + -DWANT_GRAPHICSMAGICK=$(usex graphicsmagick) + -DWANT_HUNSPELL=$(usex hunspell) + -DWANT_HEADERINSTALL=$(usex !minimal) + -DWANT_NOOSG=$(usex !osg) + -DWITH_PODOFO=$(usex pdf) + -DWANT_NOTEMPLATES=$(usex !templates) + ) + cmake_src_configure +} + +src_install() { + cmake_src_install + + if ! use tk; then + rm "${ED}"/usr/share/scribus-${SLOT}/scripts/{FontSample,CalendarWizard}.py || die + fi + if use scripts; then + python_fix_shebang "${ED}"/usr/share/scribus-${SLOT}/scripts + python_optimize "${ED}"/usr/share/scribus-${SLOT}/scripts + else + rm "${ED}"/usr/share/scribus-${SLOT}/scripts/*.py || die + fi + + mv "${ED}"/usr/share/doc/${PF}/{en,html} || die + ln -sf html "${ED}"/usr/share/doc/${PF}/en || die + + # These files are parsed to populate the help/about window. + cat >> "${T}"/COPYING <<- EOF || die + ${PN} is licensed under the "${LICENSE}". + Please visit https://www.gnu.org/licenses/gpl-2.0.html for the complete license text. + EOF + dodoc "${T}"/COPYING + docompress -x /usr/share/doc/${PF}/en /usr/share/doc/${PF}/{AUTHORS,TRANSLATION,LINKS,COPYING} + + local size + for size in 16 32 128 256 512; do + newicon -s $size resources/iconsets/artwork/icon_${size}x${size}.png scribus-${SLOT}.png + done + newicon -s 64 resources/iconsets/artwork/icon_32x32@2x.png scribus-${SLOT}.png + newicon resources/iconsets/1_5_1/scribus.png scribus-${SLOT}.png + newmenu scribus.desktop scribus-${SLOT}.desktop +} + +pkg_postinst() { + xdg_pkg_postinst + + optfeature "MS Word .doc file import filter support" app-text/antiword +} |