blob: 452fd4085ad970f6fe8034eeca87aec093ea5a0f (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
|
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python3_{8..10} )
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/"
SRC_URI="mirror://sourceforge/project/${PN}/${PN}-devel/${PV}/${P}.tar.xz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="amd64 ppc ppc64 x86"
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]
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=(
# non(?)-upstreamable
"${FILESDIR}"/${PN}-1.5.3-fpic.patch
"${FILESDIR}"/${PN}-1.5.6-docdir.patch
"${FILESDIR}"/${PN}-1.5.8-findhyphen-1.patch
"${FILESDIR}"/${PN}-1.5.6-findhyphen.patch
"${FILESDIR}"/${PN}-1.5.8-poppler-22.2.0-1.patch
"${FILESDIR}"/${PN}-1.5.8-poppler-22.2.0-2.patch
"${FILESDIR}"/${PN}-1.5.8-poppler-22.03.0.patch # bug 834537
"${FILESDIR}"/${PN}-1.5.8-poppler-22.04.0.patch # bug 843287
"${FILESDIR}"/${PN}-1.5.8-poppler-22.09.0.patch
)
CMAKE_BUILD_TYPE="Release"
S="${WORKDIR}/${P}"
src_prepare() {
cmake_src_prepare
rm -r codegen/cheetah scribus/third_party/hyphen || die
sed \
-e "/^\s*unzip\.[ch]/d" \
-e "/^\s*ioapi\.[ch]/d" \
-i scribus/CMakeLists.txt Scribus.pro || die
rm scribus/ioapi.[ch] || die
sed \
-e 's:\(${CMAKE_INSTALL_PREFIX}\):./\1:g' \
-i resources/templates/CMakeLists.txt || die
sed \
-e "/^add_subdirectory(ui\/qml)/s/^/#DONT/" \
-i scribus/CMakeLists.txt || die # nothing but a bogus Hello World test
}
src_configure() {
# bug #550818
append-cppflags -DHAVE_MEMRCHR
local mycmakeargs=(
-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/scripts/{FontSample,CalendarWizard}.py || die
fi
if use scripts; then
python_fix_shebang "${ED}"/usr/share/scribus/scripts
python_optimize "${ED}"/usr/share/scribus/scripts
else
rm "${ED}"/usr/share/scribus/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.png
done
newicon -s 64 resources/iconsets/artwork/icon_32x32@2x.png scribus.png
doicon resources/iconsets/*/scribus.png
domenu scribus.desktop
}
pkg_postinst() {
xdg_pkg_postinst
optfeature "MS Word .doc file import filter support" app-text/antiword
}
|