You've already forked macports-ports
mirror of
https://github.com/macports/macports-ports.git
synced 2026-07-12 18:20:25 -07:00
192 lines
7.0 KiB
Tcl
192 lines
7.0 KiB
Tcl
# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4
|
|
|
|
PortSystem 1.0
|
|
PortGroup cmake 1.1
|
|
PortGroup boost 1.0
|
|
|
|
name inkscape
|
|
conflicts inkscape-devel
|
|
set my_name inkscape
|
|
|
|
set ver_num 1.3.2
|
|
set ver_date 2023-11-25
|
|
set ver_hash 091e20ef0f
|
|
set ver_gal_item 44615
|
|
version ${ver_num}
|
|
revision 4
|
|
epoch 0
|
|
|
|
categories graphics gnome
|
|
license GPL-3+
|
|
maintainers {mascguy @mascguy} openmaintainer
|
|
|
|
description This is the current stable release version of Inkscape.
|
|
long_description Inkscape is an multi-platform, Open-Source Vector Graphics Editor \
|
|
that uses SVG as its native file format. \
|
|
{*}${description}
|
|
homepage https://inkscape.org/
|
|
|
|
master_sites https://inkscape.org/gallery/item/${ver_gal_item}
|
|
worksrcdir ${my_name}-${ver_num}_${ver_date}_${ver_hash}
|
|
distname ${my_name}-${ver_num}
|
|
dist_subdir ${my_name}
|
|
use_xz yes
|
|
|
|
checksums rmd160 74eccccef78c5a7887f8867646413d019fe7c037 \
|
|
sha256 dbd1844dc443fe5e10d3e9a887144e5fb7223852fff191cfb5ef7adeab0e086b \
|
|
size 44720944
|
|
|
|
cmake.generator Ninja
|
|
|
|
set python_major 3
|
|
set python_minor 12
|
|
set python_version ${python_major}${python_minor}
|
|
|
|
patchfiles-append libxml2-2.12.0.patch
|
|
patchfiles-append poppler-24.03.0.patch
|
|
|
|
post-patch {
|
|
reinplace "s|\"python-interpreter\", *\{\"python3\"|\"python-interpreter\", \{\"python${python_major}.${python_minor}\"|g" \
|
|
${worksrcpath}/src/extension/implementation/script.cpp
|
|
reinplace "s|COMMAND python3 |COMMAND ${prefix}/bin/python${python_major}.${python_minor} |g" \
|
|
${worksrcpath}/share/filters/CMakeLists.txt \
|
|
${worksrcpath}/share/markers/CMakeLists.txt \
|
|
${worksrcpath}/share/paint/CMakeLists.txt \
|
|
${worksrcpath}/share/palettes/CMakeLists.txt \
|
|
${worksrcpath}/share/symbols/CMakeLists.txt \
|
|
${worksrcpath}/share/templates/CMakeLists.txt
|
|
reinplace {s|^#include "Object\.h"|#include <poppler/Object.h>|} \
|
|
${worksrcpath}/src/extension/internal/pdfinput/pdf-parser.cpp \
|
|
${worksrcpath}/src/extension/internal/pdfinput/pdf-parser.h
|
|
reinplace "s|\"\$\{CMAKE_INSTALL_LIBDIR\}/inkscape\"|\$\{CMAKE_INSTALL_LIBDIR\}|" \
|
|
${worksrcpath}/src/CMakeLists.txt
|
|
}
|
|
|
|
# Blacklist older Clang versions, for compilation errors:
|
|
# src/display/cairo-utils.cpp:
|
|
# No matching function for call to 'isnan'
|
|
# src/ui/dialog/objects.cpp:
|
|
# No member named 'extract'
|
|
# See: https://trac.macports.org/ticket/65002
|
|
compiler.blacklist-append \
|
|
{clang < 1001}
|
|
|
|
# Blacklist macports-clang-15+ to prevent
|
|
# error: no template named 'unary_function' in namespace 'std'
|
|
compiler.blacklist-append \
|
|
{macports-clang-1[5-9]}
|
|
|
|
# Need no-invalid-constexpr, due to lib2geom. Remove if/when fixed in future
|
|
if { [string match *clang* ${configure.compiler}] } {
|
|
configure.cxxflags-append \
|
|
-Wno-invalid-constexpr \
|
|
-Wno-error=unknown-warning-option \
|
|
-Wno-unknown-warning-option
|
|
}
|
|
|
|
# this port only uses boost headers during build
|
|
# and does not link with any boost libraries
|
|
# no need to rebuild due to boost library ABI changes
|
|
boost.depends_type build
|
|
depends_build-append \
|
|
port:gettext \
|
|
port:gtest \
|
|
path:bin/pkg-config:pkgconfig
|
|
|
|
depends_lib-append \
|
|
port:boehmgc \
|
|
path:lib/pkgconfig/cairo.pc:cairo \
|
|
port:desktop-file-utils \
|
|
port:double-conversion \
|
|
port:fontconfig \
|
|
path:lib/pkgconfig/gdk-pixbuf-2.0.pc:gdk-pixbuf2 \
|
|
port:gdl3 \
|
|
port:gettext-runtime \
|
|
path:lib/pkgconfig/glibmm-2.68.pc:glibmm \
|
|
port:gsl \
|
|
port:gspell \
|
|
port:gtkmm3 \
|
|
port:gtksourceview4 \
|
|
path:lib/pkgconfig/harfbuzz.pc:harfbuzz \
|
|
port:ImageMagick \
|
|
port:lcms2 \
|
|
port:lib2geom \
|
|
port:libcdr-0.1 \
|
|
port:libepoxy \
|
|
path:include/turbojpeg.h:libjpeg-turbo \
|
|
port:libpng \
|
|
port:libsigcxx2 \
|
|
path:lib/pkgconfig/libsoup-2.4.pc:libsoup-2.4 \
|
|
port:libvisio-0.1 \
|
|
port:libwpg-0.3 \
|
|
port:libxml2 \
|
|
port:libxslt \
|
|
path:lib/pkgconfig/pango.pc:pango \
|
|
path:lib/pkgconfig/poppler.pc:poppler \
|
|
port:potrace \
|
|
port:python${python_version} \
|
|
port:zlib
|
|
|
|
depends_run-append \
|
|
port:adwaita-icon-theme \
|
|
port:py${python_version}-cssselect \
|
|
port:py${python_version}-lxml \
|
|
port:py${python_version}-numpy \
|
|
port:py${python_version}-scour
|
|
|
|
compiler.cxx_standard \
|
|
2017
|
|
|
|
configure.args-append \
|
|
-DBUILD_TESTING=OFF \
|
|
-DENABLE_LCMS=ON \
|
|
-DENABLE_POPPLER=ON \
|
|
-DENABLE_POPPLER_CAIRO=OFF \
|
|
-DWITH_ASAN=OFF \
|
|
-DWITH_GNU_READLINE=OFF \
|
|
-DWITH_GRAPHICS_MAGICK=OFF \
|
|
-DWITH_GSOURCEVIEW=ON \
|
|
-DWITH_GSPELL=ON \
|
|
-DWITH_IMAGE_MAGICK=ON \
|
|
-DWITH_INTERNAL_CAIRO=OFF \
|
|
-DWITH_INTERNAL_2GEOM=OFF \
|
|
-DWITH_JEMALLOC=OFF \
|
|
-DWITH_LIBCDR=ON \
|
|
-DWITH_LIBVISIO=ON \
|
|
-DWITH_LIBWPG=ON \
|
|
-DWITH_MANPAGE_COMPRESSION=OFF \
|
|
-DWITH_NLS=ON \
|
|
-DWITH_OPENMP=OFF \
|
|
-DWITH_PROFILING=OFF \
|
|
-DWITH_X11=OFF
|
|
|
|
# The following dummy variants are used to identify this port's binary dependencies,
|
|
# based on which variant of gtkmm is used for the build.
|
|
variant x11 conflicts quartz {}
|
|
variant quartz conflicts x11 {}
|
|
|
|
if {![variant_isset quartz]} {
|
|
default_variants +x11
|
|
}
|
|
|
|
variant tests description {Enable tests} {
|
|
configure.args-replace \
|
|
-DBUILD_TESTING=OFF \
|
|
-DBUILD_TESTING=ON
|
|
|
|
test.run yes
|
|
}
|
|
|
|
post-activate {
|
|
system "${prefix}/bin/gtk-update-icon-cache -f -t ${prefix}/share/icons/hicolor"
|
|
system "${prefix}/bin/update-desktop-database ${prefix}/share/applications"
|
|
}
|
|
|
|
notes {
|
|
Install port 'inkscape-app', to create a macOS app launcher.
|
|
}
|
|
|
|
livecheck.type regex
|
|
livecheck.url https://inkscape.org/release/
|
|
livecheck.regex ">Inkscape (\\d+(?:\\.\\d+)*)<"
|