at v206 44 lines 1.2 kB view raw
1{ stdenv, fetchurl, gawk }: 2 3let startFPC = import ./binary.nix { inherit stdenv fetchurl; }; in 4 5stdenv.mkDerivation rec { 6 version = "2.6.4"; 7 name = "fpc-${version}"; 8 9 src = fetchurl { 10 url = "mirror://sourceforge/freepascal/fpcbuild-${version}.tar.gz"; 11 sha256 = "1akdlp4n9ai1gnn4yq236i5rx03rs5sjfgk60myb7nb9lk7kp74d"; 12 }; 13 14 buildInputs = [ startFPC gawk ]; 15 16 preConfigure = 17 if stdenv.system == "i686-linux" || stdenv.system == "x86_64-linux" then '' 18 sed -e "s@'/lib/ld-linux[^']*'@'''@" -i fpcsrc/compiler/systems/t_linux.pas 19 sed -e "s@'/lib64/ld-linux[^']*'@'''@" -i fpcsrc/compiler/systems/t_linux.pas 20 '' else ""; 21 22 makeFlags = "NOGDB=1 FPC=${startFPC}/bin/fpc"; 23 24 installFlags = "INSTALL_PREFIX=\${out}"; 25 26 postInstall = '' 27 for i in $out/lib/fpc/*/ppc*; do 28 ln -fs $i $out/bin/$(basename $i) 29 done 30 mkdir -p $out/lib/fpc/etc/ 31 $out/lib/fpc/*/samplecfg $out/lib/fpc/${version} $out/lib/fpc/etc/ 32 ''; 33 34 passthru = { 35 bootstrap = startFPC; 36 }; 37 38 meta = { 39 description = "Free Pascal Compiler from a source distribution"; 40 maintainers = [stdenv.lib.maintainers.raskin]; 41 platforms = stdenv.lib.platforms.linux; 42 inherit version; 43 }; 44}