summary refs log tree commit diff
path: root/pkgs/applications/science/electronics/alliance
diff options
context:
space:
mode:
authorRam Kromberg <ramkromberg@mail.com>2016-07-30 17:35:51 +0300
committerobadz <obadz-git@obadz.com>2016-07-30 15:35:51 +0100
commit78d82f33ac4a3e75c23c8759982b16c57f652b30 (patch)
tree596d08d5bbc01a7b3b9e91af9399b182efb12531 /pkgs/applications/science/electronics/alliance
parent29739ece1f1e6a7602207ff03273f6a59907f322 (diff)
downloadnixpkgs-78d82f33ac4a3e75c23c8759982b16c57f652b30.tar
nixpkgs-78d82f33ac4a3e75c23c8759982b16c57f652b30.tar.gz
nixpkgs-78d82f33ac4a3e75c23c8759982b16c57f652b30.tar.bz2
nixpkgs-78d82f33ac4a3e75c23c8759982b16c57f652b30.tar.lz
nixpkgs-78d82f33ac4a3e75c23c8759982b16c57f652b30.tar.xz
nixpkgs-78d82f33ac4a3e75c23c8759982b16c57f652b30.tar.zst
nixpkgs-78d82f33ac4a3e75c23c8759982b16c57f652b30.zip
alliance: 5.0 -> 5.1.1 (#17353)
Diffstat (limited to 'pkgs/applications/science/electronics/alliance')
-rw-r--r--pkgs/applications/science/electronics/alliance/default.nix77
1 files changed, 64 insertions, 13 deletions
diff --git a/pkgs/applications/science/electronics/alliance/default.nix b/pkgs/applications/science/electronics/alliance/default.nix
index ee22c66dfec..ee01643d85e 100644
--- a/pkgs/applications/science/electronics/alliance/default.nix
+++ b/pkgs/applications/science/electronics/alliance/default.nix
@@ -1,23 +1,74 @@
-{stdenv, fetchurl, xproto, motif, libX11, libXt, libXpm, bison, flex}:
+{ stdenv, fetchurl
+, xproto, motif, libX11, libXt, libXpm, bison
+, flex, automake, autoconf, libtool
+}:
 
-stdenv.mkDerivation {
-  name = "alliance-5.0-20070718";
+stdenv.mkDerivation rec {
+  name = "alliance-${version}";
+  version = "5.1.1";
 
   src = fetchurl {
-    url = http://www-asim.lip6.fr/pub/alliance/distribution/5.0/alliance-5.0-20070718.tar.gz;
-    sha256 = "4e17c8f9f4d344061166856d47e58527c6ae870fda0c73b5ba0200967d23af9f";
+    url = "http://www-asim.lip6.fr/pub/alliance/distribution/5.0/${name}.tar.bz2";
+    sha256 = "046c9qwl1vbww0ljm4xyxf5jpz9nq62b2q0wdz9xjimgh4c207w1";
   };
 
-  buildInputs = [ xproto motif xproto libX11 libXt libXpm bison flex];
 
-  patchPhase = ''
-    sed -i -e \
-      "s/private: static void  operator delete/public: static void  operator delete/" \
-      nero/src/ADefs.h
+  nativeBuildInputs = [ libtool automake autoconf flex ];
+  buildInputs = [ xproto motif xproto libX11 libXt libXpm bison ];
+
+  sourceRoot = "alliance/src/";
+
+  configureFlags = [
+    "--prefix=$(out)"
+    "--disable-static"
+  ];
+
+  preConfigure = ''
+    mkdir -p $out/etc
+
+    #texlive for docs seems extreme
+    mkdir -p $out/share/alliance
+    mv ./documentation $out/share/alliance
+    substituteInPlace autostuff \
+      --replace "$newdirs documentation" "$newdirs" \
+      --replace documentation Solaris
+
+    substituteInPlace sea/src/DEF_grammar_lex.l \
+      --replace "ifndef FLEX_BETA" "if (YY_FLEX_MAJOR_VERSION <= 2) && (YY_FLEX_MINOR_VERSION < 6)"
+    ./autostuff
+  '';
+
+  allianceInstaller = ''
+    #!${stdenv.shell}
+    cp -v -r -n --no-preserve=mode  $out/etc/* /etc/ > /etc/alliance-install.log
+  '';
+
+  allianceUnInstaller = ''
+    #!${stdenv.shell}
+    awk '{print \$3}' /etc/alliance-install.log | xargs rm
+    awk '{print \$3}' /etc/alliance-install.log | xargs rmdir
+    rm /etc/alliance-install.log
+  '';
+
+  postInstall = ''
+    sed -i "s|ALLIANCE_TOP|$out|" distrib/*.desktop
+    mkdir -p $out/share/applications
+    cp -p distrib/*.desktop $out/share/applications/
+    mkdir -p $out/icons/hicolor/48x48/apps/
+    cp -p distrib/*.png $out/icons/hicolor/48x48/apps/
+
+    echo "${allianceInstaller}" > $out/bin/alliance-install
+    chmod +x $out/bin/alliance-install
+
+    echo "${allianceUnInstaller}" > $out/bin/alliance-uninstall
+    chmod +x $out/bin/alliance-uninstall
   '';
 
-  meta = {
-      description = "Complete set of free CAD tools and portable libraries for VLSI design";
-      homepage = http://www-asim.lip6.fr/recherche/alliance/;
+  meta = with stdenv.lib; {
+    description = "Complete set of free CAD tools and portable libraries for VLSI design";
+    homepage = http://www-asim.lip6.fr/recherche/alliance/;
+    license = with licenses; gpl2Plus;
+    maintainers = with maintainers; [ ];
+    platforms = with platforms; linux;
   };
 }