Merge pull request #53150 from yrashk/eaglemode

eaglemode: 0.86.0 -> 0.94.0
This commit is contained in:
markuskowa 2019-01-03 20:01:07 +01:00 committed by GitHub
commit eebd1a9263
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -1,35 +1,36 @@
{ stdenv, fetchurl, perl, libX11, libjpeg, libpng, libtiff, pkgconfig, { stdenv, fetchurl, perl, libX11, libXinerama, libjpeg, libpng, libtiff, pkgconfig,
librsvg, glib, gtk2, libXext, libXxf86vm, poppler, xineLib }: librsvg, glib, gtk2, libXext, libXxf86vm, poppler, xineLib, ghostscript, makeWrapper }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "eaglemode-0.86.0"; name = "eaglemode-${version}";
version = "0.94.0";
src = fetchurl { src = fetchurl {
url = "mirror://sourceforge/eaglemode/${name}.tar.bz2"; url = "mirror://sourceforge/eaglemode/${name}.tar.bz2";
sha256 = "1a2hzyck95g740qg4p4wd4fjwsmlknh75i9sbx5r5v9pyr4i3m4f"; sha256 = "1sr3bd9y9j2svqvdwhrak29yy9cxf92w9vq2cim7a8hzwi9qfy9k";
}; };
nativeBuildInputs = [ pkgconfig ]; nativeBuildInputs = [ pkgconfig ];
buildInputs = [ perl libX11 libjpeg libpng libtiff buildInputs = [ perl libX11 libXinerama libjpeg libpng libtiff
librsvg glib gtk2 libXxf86vm libXext poppler xineLib ]; librsvg glib gtk2 libXxf86vm libXext poppler xineLib ghostscript makeWrapper ];
# The program tries to dlopen both Xxf86vm and Xext, so we use the # The program tries to dlopen Xxf86vm, Xext and Xinerama, so we use the
# trick on NIX_LDFLAGS and dontPatchELF to make it find them. # trick on NIX_LDFLAGS and dontPatchELF to make it find them.
# I use 'yes y' to skip a build error linking with xineLib, # I use 'yes y' to skip a build error linking with xineLib,
# because xine stopped exporting "_x_vo_new_port" # because xine stopped exporting "_x_vo_new_port"
# https://sourceforge.net/projects/eaglemode/forums/forum/808824/topic/5115261 # https://sourceforge.net/projects/eaglemode/forums/forum/808824/topic/5115261
buildPhase = '' buildPhase = ''
export NIX_LDFLAGS="$NIX_LDFLAGS -lXxf86vm -lXext" export NIX_LDFLAGS="$NIX_LDFLAGS -lXxf86vm -lXext -lXinerama"
perl make.pl build perl make.pl build
''; '';
dontPatchELF = true; dontPatchELF = true;
# eaglemode expects doc to be in the root directory
forceShare = [ "man" "info" ];
installPhase = '' installPhase = ''
perl make.pl install dir=$out perl make.pl install dir=$out
# I don't like this... but it seems the way they plan to run it by now. wrapProgram $out/bin/eaglemode --set EM_DIR "$out" --prefix LD_LIBRARY_PATH : "$out/lib" --prefix PATH : "${ghostscript}/bin"
# Run 'eaglemode.sh', not 'eaglemode'.
ln -s $out/eaglemode.sh $out/bin/eaglemode.sh
''; '';
meta = with stdenv.lib; { meta = with stdenv.lib; {
@ -38,6 +39,5 @@ stdenv.mkDerivation rec {
license = licenses.gpl3; license = licenses.gpl3;
maintainers = with maintainers; [ ]; maintainers = with maintainers; [ ];
platforms = platforms.linux; platforms = platforms.linux;
broken = true;
}; };
} }