inkscape: Fix build on NixOS

The first problem that was introduced in a276d5160c
was a linking error:

ld: cannot find -licui18n
ld: cannot find -licuuc
ld: cannot find -licudata

So I added icu to the buildInputs.

The second problem was that the interpreter wasn't patched in
share/filters, apparently this is only needed when building with
autotools:

make[3]: Entering directory '/build/inkscape-0.92.3/share/filters'
./i18n.py ./filters.svg > ./filters.svg.h
./i18n.py: /usr/bin/env: bad interpreter: No such file or directory

A similar error also occurs for share/palettes, share/patterns,
share/symbols and share/templates, so I added patching the interpreter
there as well.

Switching to autotools in Inkscape is a very bad idea, because upstream
currently still has their own autotools files in the 0.92.x tree but
master already has them removed, see this commit:

e471a664f9

However for the sake of trying to not break Inkscape on Darwin again,
I tried to keep the fixes minimal and not went back to CMake.

I did however mark the stuff that's unneeded for CMake, so that we can
avoid forgetting to remove that crap once we get back to CMake.

Signed-off-by: aszlig <aszlig@nix.build>
Cc: @matthewbauer
This commit is contained in:
aszlig 2018-04-25 16:42:28 +02:00
parent 542f3dba06
commit 6c748ae749
No known key found for this signature in database
GPG key ID: 684089CE67EBB691

View file

@ -4,6 +4,7 @@
, gsl, python2, poppler, imagemagick, libwpg, librevenge
, libvisio, libcdr, libexif, potrace, autoreconfHook
, intltool
, icu # Not needed for building with CMake
, lib
}:
@ -27,6 +28,13 @@ stdenv.mkDerivation rec {
patchShebangs share/extensions
patchShebangs fix-roff-punct
# XXX: Not needed for CMake:
patchShebangs share/filters
patchShebangs share/palettes
patchShebangs share/patterns
patchShebangs share/symbols
patchShebangs share/templates
# Python is used at run-time to execute scripts, e.g., those from
# the "Effects" menu.
substituteInPlace src/extension/implementation/script.cpp \
@ -38,7 +46,7 @@ stdenv.mkDerivation rec {
perl perlXMLParser libXft libpng zlib popt boehmgc
libxml2 libxslt glib gtkmm2 glibmm libsigcxx lcms boost gettext
makeWrapper gsl poppler imagemagick libwpg librevenge
libvisio libcdr libexif potrace python2Env
libvisio libcdr libexif potrace python2Env icu
];
enableParallelBuilding = true;