-
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Daniele Rondina
committed
May 12, 2023
1 parent
bf57419
commit a3f14c0
Showing
4 changed files
with
209 additions
and
2 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
46 changes: 46 additions & 0 deletions
46
packages/atoms/media-gfx/media-gfx/inkscape/files/inkscape-1.2.2-fix-compile.patch
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,46 @@ | ||
https://src.fedoraproject.org/rpms/inkscape/blob/rawhide/f/0001-Fix-build-with-GCC13.patch | ||
https://gitlab.com/inkscape/inkscape/-/merge_requests/5108 | ||
https://gitlab.com/inkscape/inkscape/-/merge_requests/5111 (version which got accepted upstream) | ||
https://bugs.gentoo.org/903867 | ||
|
||
From c68f5f9cade8a890efefcb4c2e0fc57762211286 Mon Sep 17 00:00:00 2001 | ||
From: Elliott Sales de Andrade <quantum.analyst@gmail.com> | ||
Date: Fri, 24 Feb 2023 14:01:18 -0500 | ||
Subject: [PATCH] Fix build with GCC13 | ||
|
||
GCC 13 now complains about this line: | ||
``` | ||
src/ui/widget/selected-style.cpp:111:6: error: statement-expressions are not allowed outside functions nor in template-argument lists | ||
111 | {g_strdup("application/x-oswb-color"), 0, APP_OSWB_COLOR} | ||
| ^~~~~~~~ | ||
``` | ||
|
||
However, it is not necessary to strdup the string constant as the value | ||
just needs to exist indefinitely, and it will as a constant. While C | ||
doesn't mind the `const` difference, a simple cast will silence C++'s | ||
higher strictness. | ||
|
||
And in fact, the other use of `GtkTargetEntry` in | ||
`src/ui/drag-and-drop.cpp` does the same cast. | ||
|
||
Signed-off-by: Elliott Sales de Andrade <quantum.analyst@gmail.com> | ||
--- a/src/ui/widget/selected-style.cpp | ||
+++ b/src/ui/widget/selected-style.cpp | ||
@@ -100,14 +100,8 @@ enum ui_drop_target_info { | ||
APP_OSWB_COLOR | ||
}; | ||
|
||
-//TODO: warning: deprecated conversion from string constant to ‘gchar*’ | ||
-// | ||
-//Turn out to be warnings that we should probably leave in place. The | ||
-// pointers/types used need to be read-only. So until we correct the using | ||
-// code, those warnings are actually desired. They say "Hey! Fix this". We | ||
-// definitely don't want to hide/ignore them. --JonCruz | ||
static const GtkTargetEntry ui_drop_target_entries [] = { | ||
- {g_strdup("application/x-oswb-color"), 0, APP_OSWB_COLOR} | ||
+ {(gchar *)"application/x-oswb-color", 0, APP_OSWB_COLOR} | ||
}; | ||
|
||
static guint nui_drop_target_entries = G_N_ELEMENTS(ui_drop_target_entries); | ||
-- | ||
2.39.2 |
154 changes: 154 additions & 0 deletions
154
packages/atoms/media-gfx/media-gfx/inkscape/inkscape-1.2.2.ebuild
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,154 @@ | ||
# Distributed under the terms of the GNU General Public License v2 | ||
|
||
EAPI=7 | ||
|
||
PYTHON_COMPAT=( python3+ ) | ||
PYTHON_REQ_USE="xml" | ||
|
||
inherit cmake flag-o-matic xdg toolchain-funcs python-single-r1 | ||
|
||
DESCRIPTION="SVG based generic vector-drawing program" | ||
HOMEPAGE="https://inkscape.org/" | ||
SRC_URI="https://media.inkscape.org/dl/resources/file/inkscape-${PV}.tar.xz" | ||
LICENSE="GPL-2 LGPL-2.1" | ||
SLOT="0" | ||
KEYWORDS="*" | ||
IUSE="cdr dbus dia exif graphicsmagick imagemagick inkjar jemalloc jpeg lcms | ||
openmp postscript spell static-libs svg2 visio wpg" | ||
|
||
REQUIRED_USE="${PYTHON_REQUIRED_USE}" | ||
|
||
BDEPEND=" | ||
dev-util/glib-utils | ||
>=dev-util/intltool-0.40 | ||
>=sys-devel/gettext-0.17 | ||
virtual/pkgconfig | ||
" | ||
COMMON_DEPEND="${PYTHON_DEPS} | ||
app-text/poppler[cairo] | ||
>=dev-cpp/cairomm-1.12 | ||
>=dev-cpp/glibmm-2.54.1 | ||
dev-cpp/gtkmm:3.0 | ||
>=dev-cpp/pangomm-2.40 | ||
>=dev-libs/boehm-gc-7.1:= | ||
dev-libs/double-conversion:= | ||
>=dev-libs/glib-2.41 | ||
>=dev-libs/libsigc++-2.8 | ||
>=dev-libs/libxml2-2.7.4 | ||
>=dev-libs/libxslt-1.1.25 | ||
dev-libs/gdl:3 | ||
dev-libs/popt | ||
media-gfx/potrace | ||
media-libs/fontconfig | ||
media-libs/freetype:2 | ||
media-libs/libpng:0= | ||
net-libs/libsoup | ||
sci-libs/gsl:= | ||
x11-libs/libX11 | ||
>=x11-libs/pango-1.37.2 | ||
x11-libs/gtk+:3 | ||
dev-python/lxml[${PYTHON_USEDEP}] | ||
media-gfx/scour[${PYTHON_USEDEP}] | ||
cdr? ( | ||
app-text/libwpg:0.3 | ||
dev-libs/librevenge | ||
media-libs/libcdr | ||
) | ||
dbus? ( dev-libs/dbus-glib ) | ||
exif? ( media-libs/libexif ) | ||
imagemagick? ( | ||
!graphicsmagick? ( media-gfx/imagemagick:=[cxx] ) | ||
graphicsmagick? ( media-gfx/graphicsmagick:=[cxx] ) | ||
) | ||
jemalloc? ( dev-libs/jemalloc ) | ||
jpeg? ( virtual/jpeg:0 ) | ||
lcms? ( media-libs/lcms:2 ) | ||
spell? ( | ||
app-text/aspell | ||
app-text/gtkspell:3 | ||
) | ||
visio? ( | ||
app-text/libwpg:0.3 | ||
dev-libs/librevenge | ||
media-libs/libvisio | ||
) | ||
wpg? ( | ||
app-text/libwpg:0.3 | ||
dev-libs/librevenge | ||
) | ||
" | ||
# These only use executables provided by these packages | ||
# See share/extensions for more details. inkscape can tell you to | ||
# install these so we could of course just not depend on those and rely | ||
# on that. | ||
RDEPEND="${COMMON_DEPEND} | ||
dev-python/numpy[${PYTHON_USEDEP}] | ||
dia? ( app-office/dia ) | ||
postscript? ( app-text/ghostscript-gpl ) | ||
" | ||
DEPEND="${COMMON_DEPEND} | ||
>=dev-libs/boost-1.65 | ||
" | ||
|
||
PATCHES=( | ||
"${FILESDIR}"/inkscape-1.2.2-fix-compile.patch | ||
) | ||
|
||
RESTRICT="test" | ||
|
||
post_src_unpack() { | ||
mv "${WORKDIR}"/"${P}"* "${S}" | ||
} | ||
|
||
pkg_pretend() { | ||
if [[ ${MERGE_TYPE} != binary ]] && use openmp; then | ||
tc-has-openmp || die "Please switch to an openmp compatible compiler" | ||
fi | ||
} | ||
|
||
src_prepare() { | ||
cmake_src_prepare | ||
sed -i "/install.*COPYING/d" CMakeScripts/ConfigCPack.cmake || die | ||
} | ||
|
||
src_configure() { | ||
# aliasing unsafe wrt #310393 | ||
append-flags -fno-strict-aliasing | ||
|
||
local mycmakeargs=( | ||
# -DWITH_LPETOOL # Compile with LPE Tool and experimental LPEs enabled | ||
-DENABLE_POPPLER=ON | ||
-DWITH_NLS=ON | ||
-DENABLE_POPPLER_CAIRO=ON | ||
-DWITH_PROFILING=OFF | ||
-DWITH_LIBCDR=$(usex cdr) | ||
-DWITH_DBUS=$(usex dbus) | ||
-DWITH_IMAGE_MAGICK=$(usex imagemagick $(usex !graphicsmagick)) # requires ImageMagick 6, only IM must be enabled | ||
-DWITH_GRAPHICS_MAGICK=$(usex graphicsmagick $(usex imagemagick)) # both must be enabled to use GraphicsMagick | ||
-DWITH_JEMALLOC=$(usex jemalloc) | ||
-DENABLE_LCMS=$(usex lcms) | ||
-DWITH_OPENMP=$(usex openmp) | ||
-DBUILD_SHARED_LIBS=$(usex !static-libs) | ||
-DWITH_SVG2=$(usex svg2) | ||
-DWITH_LIBVISIO=$(usex visio) | ||
-DWITH_LIBWPG=$(usex wpg) | ||
) | ||
|
||
cmake_src_configure | ||
} | ||
|
||
src_install() { | ||
cmake_src_install | ||
|
||
find "${ED}" -type f -name "*.la" -delete || die | ||
|
||
find "${ED}"/usr/share/man -type f -maxdepth 3 -name '*.bz2' -exec bzip2 -d {} \; || die | ||
|
||
find "${ED}"/usr/share/man -type f -maxdepth 3 -name '*.gz' -exec gzip -d {} \; || die | ||
|
||
local extdir="${ED}"/usr/share/${PN}/extensions | ||
|
||
if [[ -e "${extdir}" ]] && [[ -n $(find "${extdir}" -mindepth 1) ]]; then | ||
python_optimize "${ED}"/usr/share/${PN}/extensions | ||
fi | ||
} |