175 lines
4.6 KiB
Bash
175 lines
4.6 KiB
Bash
# POWER Maintainer: Alexander Baldeck <alex.bldck@gmail.com>
|
|
# Maintainer:
|
|
# Contributor: Tobias Kieslich <tobias@justdreams.de>
|
|
# Contributor: tobias <tobias@archlinux.org>
|
|
|
|
pkgname=inkscape
|
|
pkgver=1.3.2
|
|
pkgrel=8
|
|
pkgdesc='Professional vector graphics editor'
|
|
url='https://inkscape.org/'
|
|
license=('GPL' 'LGPL')
|
|
arch=(x86_64 powerpc64le powerpc64 powerpc riscv64)
|
|
makedepends=('cmake' 'boost' 'git' 'glib2-devel')
|
|
|
|
depends=(
|
|
'atkmm'
|
|
'boost-libs'
|
|
'cairo'
|
|
'cairomm'
|
|
'double-conversion'
|
|
'fontconfig'
|
|
'freetype2'
|
|
'gc'
|
|
'gcc-libs'
|
|
'gdk-pixbuf2'
|
|
'glib2'
|
|
'glibc'
|
|
'glibmm'
|
|
'gobject-introspection-runtime'
|
|
'graphicsmagick'
|
|
'gsl'
|
|
'gspell'
|
|
'gtk3'
|
|
'gtkmm3'
|
|
'gtksourceview4'
|
|
'harfbuzz'
|
|
'hicolor-icon-theme'
|
|
'lcms2'
|
|
#'lib2geom'
|
|
'libcdr'
|
|
'libepoxy'
|
|
'libjpeg-turbo'
|
|
'libpng'
|
|
'librevenge'
|
|
'libsigc++'
|
|
'libsoup'
|
|
'libvisio'
|
|
'libwpg'
|
|
'libx11'
|
|
'libxml2'
|
|
'libxslt'
|
|
'pango'
|
|
'pangomm'
|
|
'poppler'
|
|
'poppler-glib'
|
|
'potrace'
|
|
'python'
|
|
'python-appdirs'
|
|
'python-beautifulsoup4'
|
|
'python-cachecontrol'
|
|
'python-cairo'
|
|
'python-certifi'
|
|
'python-chardet'
|
|
'python-coverage'
|
|
'python-cssselect'
|
|
'python-filelock'
|
|
'python-gobject'
|
|
'python-idna'
|
|
'python-lockfile'
|
|
'python-lxml'
|
|
'python-msgpack'
|
|
'python-numpy'
|
|
'python-packaging'
|
|
'python-pillow'
|
|
'python-pyserial'
|
|
'python-requests'
|
|
'python-six'
|
|
'python-urllib3'
|
|
'python-zstandard'
|
|
'readline'
|
|
'scour'
|
|
'ttf-font'
|
|
'zlib'
|
|
)
|
|
|
|
optdepends=(
|
|
'fig2dev: xfig input'
|
|
'gvfs: import clip art'
|
|
'pstoedit: latex formulas'
|
|
# this pulls in texlive-basic, so should suffice
|
|
'texlive-pstricks: latex formulas'
|
|
)
|
|
|
|
#source=("https://media.inkscape.org/dl/resources/file/${pkgname}-${pkgver}.tar.bz2")
|
|
source=("git+https://gitlab.com/inkscape/inkscape.git#tag=INKSCAPE_${pkgver//./_}"
|
|
'inkscape-extensions::git+https://gitlab.com/inkscape/extensions.git'
|
|
'inkscape-lib2geom::git+https://gitlab.com/inkscape/lib2geom.git'
|
|
'inkscape-themes::git+https://gitlab.com/inkscape/themes.git'
|
|
'inkscape-extras-extensions-gcodetools::git+https://gitlab.com/inkscape/extras/extensions-gcodetools.git'
|
|
'inkscape-extras-extension-manager::git+https://gitlab.com/inkscape/extras/extension-manager.git'
|
|
'inkscape-extras-inkscape-import-clipart::git+https://gitlab.com/inkscape/extras/inkscape-import-clipart.git'
|
|
'inkscape-extras-extension-xaml::git+https://gitlab.com/inkscape/extras/extension-xaml.git'
|
|
'0001-Remove-device-manager.h-.cpp-and-src-ui-dialog-input.patch')
|
|
sha256sums=('31d286dff9a3e295b7f89f806300ecc91c306e08a273f29501082fe33f1ebafe'
|
|
'SKIP'
|
|
'SKIP'
|
|
'SKIP'
|
|
'SKIP'
|
|
'SKIP'
|
|
'SKIP'
|
|
'SKIP'
|
|
'61f633e640aead31562c8c1f4d8f110d0d43c14efe0c3d93f050969673e9f329')
|
|
|
|
_backports=(
|
|
# current git 1.3.x branch
|
|
"INKSCAPE_${pkgver//./_}..9f538bd40a737d7228cf47951e5566e1dbc953ac"
|
|
|
|
# Fix build with poppler >= 24.05.0
|
|
'96ca7a6c215aa14336b52753f56244dc8796ec43'
|
|
# Fix build with >=poppler-24.03.0
|
|
'f7e944575ea5247952d23f85dfa905cfa13f7b28'
|
|
|
|
# Up C++ version to C++20.
|
|
'1798e9c13b786f3d077ba0132592c4d5c1d1fb9b'
|
|
)
|
|
|
|
_reverts=(
|
|
)
|
|
|
|
prepare() {
|
|
cd "${pkgname}"
|
|
git submodule set-url share/extensions ../inkscape-extensions/
|
|
git submodule set-url src/3rdparty/2geom ../inkscape-lib2geom/
|
|
git submodule set-url share/themes ../inkscape-themes/
|
|
git -c protocol.file.allow=always submodule update --init
|
|
|
|
( cd share/extensions/
|
|
git submodule set-url other/gcodetools ../inkscape-extras-extensions-gcodetools/
|
|
git submodule set-url other/inkman ../inkscape-extras-extension-manager/
|
|
git submodule set-url other/clipart ../inkscape-extras-inkscape-import-clipart/
|
|
git submodule set-url other/extension-xaml ../inkscape-extras-extension-xaml/
|
|
git -c protocol.file.allow=always submodule update --init )
|
|
|
|
local _c _l
|
|
for _c in "${_backports[@]}"; do
|
|
if [[ "${_c}" == *..* ]]; then _l='--reverse'; else _l='--max-count=1'; fi
|
|
git log --oneline "${_l}" "${_c}"
|
|
git cherry-pick --mainline 1 --no-commit "${_c}"
|
|
done
|
|
for _c in "${_reverts[@]}"; do
|
|
if [[ "${_c}" == *..* ]]; then _l='--reverse'; else _l='--max-count=1'; fi
|
|
git log --oneline "${_l}" "${_c}"
|
|
git revert --mainline 1 --no-commit "${_c}"
|
|
done
|
|
|
|
patch -Np1 < ../0001-Remove-device-manager.h-.cpp-and-src-ui-dialog-input.patch
|
|
}
|
|
|
|
build() {
|
|
local cmake_options=(
|
|
-B build
|
|
-D CMAKE_BUILD_TYPE=None
|
|
-D CMAKE_INSTALL_PREFIX:PATH=/usr
|
|
-W no-dev
|
|
-S $pkgname
|
|
)
|
|
|
|
cmake "${cmake_options[@]}"
|
|
cmake --build build
|
|
}
|
|
|
|
package() {
|
|
DESTDIR="${pkgdir}" cmake --build build --target install
|
|
}
|