Merge branch 'hardened-stdenv' into staging

Closes #12895

Amazing work by @globin & @fpletz getting hardened compiler flags by
enabled default on the whole package set
This commit is contained in:
obadz
2016-08-22 01:19:35 +01:00
468 changed files with 1777 additions and 1453 deletions

View File

@@ -5,7 +5,7 @@ let
/* TODO: there are also MacOS, FreeBSD and Windows versions */
x86_64-linux = {
arch = "linuxx86";
sha256 = "0d2vhp5n74yhwixnvlsnp7dzaf9aj6zd2894hr2728djyd8x9fx6";
sha256 = "07cny2qkzc624bzpdsy4iakcln0p7v5rhf8bv0vnh6rhpvnahrnq";
runtime = "lx86cl64";
kernel = "linuxx8664";
};

View File

@@ -14,6 +14,8 @@ stdenv.mkDerivation rec {
})
else throw "Architecture not supported";
hardeningDisable = [ "format" "pic" ];
# clm uses timestamps of dcl, icl, abc and o files to decide what must be rebuild
# and for chroot builds all of the library files will have equal timestamps. This
# makes clm try to rebuild the library modules (and fail due to absence of write permission

View File

@@ -9,6 +9,8 @@ stdenv.mkDerivation rec {
sha256 = "154dyr2ph4n0kwi8yx0n78j128kw29rk9r9f7s2gddzrdl712jr3";
};
hardeningDisable = [ "format" ];
makeFlags = "PREFIX=$(out)";
meta = {

View File

@@ -23,9 +23,11 @@ in
stdenv.mkDerivation {
inherit (s) name version;
inherit buildInputs propagatedBuildInputs;
src = fetchurl {
inherit (s) url sha256;
};
configureFlags = [
"--enable-threads"
"--with-gmp-prefix=${gmp.dev}"
@@ -35,12 +37,16 @@ stdenv.mkDerivation {
(stdenv.lib.optional (! noUnicode)
"--enable-unicode")
;
hardeningDisable = [ "format" ];
postInstall = ''
sed -e 's/@[-a-zA-Z_]*@//g' -i $out/bin/ecl-config
wrapProgram "$out/bin/ecl" \
--prefix NIX_LDFLAGS ' ' "-L${gmp.lib or gmp.out or gmp}/lib" \
--prefix NIX_LDFLAGS ' ' "-L${libffi.lib or libffi.out or libffi}/lib"
'';
meta = {
inherit (s) version;
description = "Lisp implementation aiming to be small, fast and easy to embed";

View File

@@ -11,7 +11,7 @@ else
edk2 = stdenv.mkDerivation {
name = "edk2-2014-12-10";
src = fetchgit {
url = git://github.com/tianocore/edk2;
rev = "684a565a04";
@@ -20,9 +20,9 @@ edk2 = stdenv.mkDerivation {
buildInputs = [ libuuid pythonFull ];
buildPhase = ''
make -C BaseTools
'';
makeFlags = "-C BaseTools";
hardeningDisable = [ "format" "fortify" ];
installPhase = ''
mkdir -vp $out

View File

@@ -134,6 +134,8 @@ stdenv.mkDerivation ({
inherit langC langCC langFortran langJava langAda;
};
hardeningDisable = [ "format" ] ++ optional (name != "gnat") "all";
patches =
[ ]
++ optional (cross != null) ../libstdc++-target.patch
@@ -207,7 +209,7 @@ stdenv.mkDerivation ({
nativeBuildInputs = [ texinfo which gettext ]
++ optional (perl != null) perl;
buildInputs = [ gmp mpfr libmpc libelf ]
++ (optional (ppl != null) ppl)
++ (optional (cloogppl != null) cloogppl)

View File

@@ -193,6 +193,8 @@ stdenv.mkDerivation ({
inherit patches enableMultilib;
hardeningDisable = [ "format" ];
libc_dev = stdenv.cc.libc_dev;
postPatch =

View File

@@ -217,6 +217,8 @@ stdenv.mkDerivation ({
inherit patches;
hardeningDisable = [ "format" ];
outputs = [ "out" "lib" "doc" ];
setOutputFlags = false;
NIX_NO_SELF_RPATH = true;

View File

@@ -221,6 +221,8 @@ stdenv.mkDerivation ({
inherit patches;
hardeningDisable = [ "format" ];
outputs = if langJava || langGo then ["out" "man" "info"]
else [ "out" "lib" "man" "info" ];
setOutputFlags = false;

View File

@@ -219,6 +219,9 @@ stdenv.mkDerivation ({
inherit sha256;
};
# FIXME stackprotector needs gcc 4.9 in bootstrap tools
hardeningDisable = [ "stackprotector" "format" ];
inherit patches;
outputs = [ "out" "lib" "man" "info" ];

View File

@@ -226,6 +226,8 @@ stdenv.mkDerivation ({
libc_dev = stdenv.cc.libc_dev;
hardeningDisable = [ "format" ];
postPatch =
if (stdenv.isGNU
|| (libcCross != null # e.g., building `gcc.crossDrv'

View File

@@ -7,12 +7,18 @@
stdenv.mkDerivation rec {
name = "gfortran-${version}";
version = "5.1.0";
buildInputs = [gmp mpfr libmpc isl_0_14 cloog zlib];
buildInputs = [ gmp mpfr libmpc isl_0_14 cloog zlib ];
src = fetchurl {
url = "mirror://gnu/gcc/gcc-${version}/gcc-${version}.tar.bz2";
sha256 = "1bd5vj4px3s8nlakbgrh38ynxq4s654m6nxz7lrj03mvkkwgvnmp";
};
patches = ./gfortran-darwin.patch;
hardeningDisable = [ "format" ];
configureFlags = ''
--disable-bootstrap
--disable-cloog-version-check
@@ -28,11 +34,15 @@ stdenv.mkDerivation rec {
--with-native-system-header-dir=${Libsystem}/include
--with-system-zlib
'';
postConfigure = ''
export DYLD_LIBRARY_PATH=`pwd`/`uname -m`-apple-darwin`uname -r`/libgcc
'';
makeFlags = ["CC=clang"];
makeFlags = [ "CC=clang" ];
passthru.cc = stdenv.cc.cc;
meta = with stdenv.lib; {
description = "GNU Fortran compiler, part of the GNU Compiler Collection";
homepage = "https://gcc.gnu.org/fortran/";

View File

@@ -32,24 +32,9 @@ stdenv.mkDerivation rec {
"--enable-ansi"
];
# Upstream bug submitted - http://savannah.gnu.org/bugs/index.php?30371
# $TMPDIR must have no extension
# setVars = a.noDepEntry ''
# export TMPDIR="''${TMPDIR:-''${TMP:-''${TEMP}}}/tmp-for-gcl"
# mkdir -p "$TMPDIR"
# '';
hardeningDisable = [ "pic" "bindnow" ];
preBuild = ''
# sed -re "s@/bin/cat@$(which cat)@g" -i configure */configure
# sed -re "s@if test -d /proc/self @if false @" -i configure
# sed -re 's^([ \t])cpp ^\1cpp -I${stdenv.cc.cc}/include -I${stdenv.cc.libc}/include ^g' -i makefile
export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -fgnu89-inline"
'';
/* doConfigure should be removed if not needed */
# phaseNames = ["setVars" "doUnpack" "preBuild"
# "doConfigure" "doMakeInstall"];
NIX_CFLAGS_COMPILE = "-fgnu89-inline";
meta = {
description = "GNU Common Lisp compiler working via GCC";

View File

@@ -12,6 +12,8 @@ stdenv.mkDerivation rec {
buildInputs = [ghc libedit perl gmp];
hardeningDisable = [ "format" ];
configureFlags = [
"--with-gmp-libraries=${gmp.out}/lib"
"--with-gmp-includes=${gmp.dev}/include"

View File

@@ -20,6 +20,8 @@ stdenv.mkDerivation rec {
buildInputs = [ pcre ];
propagatedBuildInputs = lib.optional stdenv.isDarwin Security;
hardeningDisable = [ "all" ];
# I'm not sure what go wants from its 'src', but the go installation manual
# describes an installation keeping the src.
preUnpack = ''

View File

@@ -31,6 +31,8 @@ stdenv.mkDerivation rec {
Security Foundation
];
hardeningDisable = [ "all" ];
# I'm not sure what go wants from its 'src', but the go installation manual
# describes an installation keeping the src.
preUnpack = ''

View File

@@ -29,6 +29,8 @@ stdenv.mkDerivation rec {
Security Foundation
];
hardeningDisable = [ "all" ];
# I'm not sure what go wants from its 'src', but the go installation manual
# describes an installation keeping the src.
preUnpack = ''

View File

@@ -11,6 +11,8 @@ stdenv.mkDerivation rec {
sha256 = "13miyas47bmijmadm68cbvb21n4s156gjafz7kfx9brk9djfkh0q";
};
hardeningDisable = stdenv.lib.optional stdenv.isi686 "pic";
patchPhase = ''
sed -i -e "s|/tmp/make.log|$TMPDIR/make.log|g" src/Pl2Wam/check_boot
'';

View File

@@ -13,6 +13,8 @@ stdenv.mkDerivation rec {
buildInputs = [ makeWrapper ];
propagatedBuildInputs = [ gmp ];
hardeningDisable = [ "format" ];
configureFlags = [
"GMP_CFLAGS=-I${gmp.dev}/include"
"GMP_LDFLAGS=-L${gmp.out}/lib"

View File

@@ -12,6 +12,8 @@ stdenv.mkDerivation {
else if stdenv.system == "x86_64-linux" then "linux64"
else throw "Unsupported system";
hardeningDisable = [ "format" ];
buildPhase = ''
cd emu
make -f Makefile.picat.$ARCH

View File

@@ -1,29 +0,0 @@
source $stdenv/setup
configureFlags="--with-lua=$lua"
MKFLAGS="-w$lua/include/lauxlib.h,$lua/include/luadebug.h,$lua/include/lua.h,$lua/include/lualib.h"
buildPhase() {
mk timestamps
mk $MKFLAGS all.opt
}
installPhase() {
mk $MKFLAGS install.opt
for file in $out/bin/*.opt; do
mv $file ${file%.opt}
done
find $out/man -type f -exec gzip -9n {} \;
find $out -name \*.a -exec echo stripping {} \; \
-exec strip -S {} \;
patchELF $out
}
checkPhase="mk $MKFLAGS test.opt"
genericBuild

View File

@@ -1,12 +0,0 @@
{stdenv, fetchurl, mk, ocaml, noweb, lua, groff }:
stdenv.mkDerivation {
name = "qcmm-2006-01-31";
src = fetchurl {
url = http://tarballs.nixos.org/qc--20060131.tar.gz;
md5 = "9097830775bcf22c9bad54f389f5db23";
};
buildInputs = [ mk ocaml noweb groff ];
patches = [ ./qcmm.patch ];
builder = ./builder.sh;
inherit lua;
}

View File

@@ -1,121 +0,0 @@
diff -ur qc--20060131.orig/configure qc--20060131/configure
--- qc--20060131.orig/configure 2005-11-05 22:15:24.000000000 +0100
+++ qc--20060131/configure 2006-02-02 14:29:07.000000000 +0100
@@ -93,7 +93,22 @@
# for file in dirs and return, full path, if found, and "" otherwise.
#
-sub search { search_with( sub($) { return (-f shift) }, @_) }
+sub combine {
+ my $base = shift;
+ my $file = shift;
+ return ("$base/$file")
+};
+
+sub search { search_with( sub($) { return (-f shift) }, \&combine, @_) }
+
+sub search_suffix {
+ my $f = sub($) {
+ my $suffix = shift;
+ my $base = shift;
+ return ($base . $suffix);
+ };
+ search_with(sub($) { return (-f shift) }, $f, @_)
+}
sub searchx {
my $f = sub($) {
@@ -105,16 +120,17 @@
}
return (1==2); # how do you write false in perl?
};
- search_with($f, @_)
+ search_with($f, \&combine, @_)
}
sub search_with {
my $p = shift;
+ my $com = shift;
my $file = shift;
- printf(LOG "searching for %-20s", $file);
+ printf(LOG "searching for %-20s ", $file);
while ($f = shift (@_)) {
- my $x = "$f/$file";
+ my $x = &$com($f, $file);
if (&$p($x)) {
print LOG "found $x\n";
return $x
@@ -124,6 +140,20 @@
return "";
}
+#configure lua based on some known installation prefix
+sub config_lua {
+ my $base = shift;
+ @libsuffix = ( ".so", "40.so", ".a", "40.a" );
+
+ $x{lua_h} = "$base/include/lua.h";
+ $x{lualib_h} = "$base/include/lualib.h";
+ $x{liblua} = search_suffix("$base/lib/liblua", @libsuffix);
+ $x{liblualib} = search_suffix("$base/lib/liblualib", @libsuffix);
+ $x{lua_inc} = "-I$base/include";
+ $x{lua_lib} = "-L$base/lib/";
+ $x{lua_libs} = "-llua -llualib";
+}
+
#
# compile and run a small C program to find out about architecture
@@ -183,6 +213,8 @@
./configure [options]
+ --with-lua=/lua/path lua is installed in /lua/path the default
+ is to search for standard locations
--prefix=/usr/local install into the /usr/local hierarchy which
is also the default
-h, --help this summary
@@ -224,15 +256,15 @@
# We start from here with reading the command line
# ------------------------------------------------------------------
+open (LOG, ">$configure_log") || die "cannot write configure.log: $!";
+
foreach (@ARGV) {
if (/^--?prefix=(.*)$/) { $x{prefix}=$1 }
elsif (/^--?h(elp?)$/) { usage(); exit 0 }
+ elsif (/^--?with-lua=(.*)$/) { config_lua($1) }
else { usage(); exit 1 }
}
-
-open (LOG, ">$configure_log") || die "cannot write configure.log: $!";
-
# check for various executables and versions. Only update variable if
# it is not already set.
#
diff -ur qc--20060131.orig/doc/mkfile qc--20060131/doc/mkfile
--- qc--20060131.orig/doc/mkfile 2005-11-07 01:41:21.000000000 +0100
+++ qc--20060131/doc/mkfile 2006-02-02 00:38:00.000000000 +0100
@@ -92,7 +92,7 @@
# and accessible from Lua as This.manual.
qc--.man:D: qc--.1
- GROFF_NO_SGR=1 nroff -man -Tascii qc--.1 | ul -t dump > $target
+ GROFF_NO_SGR=1 nroff -man -Tascii qc--.1 > $target
release.tex:D: release.nw
noweave -delay $prereq > $target
diff -ur qc--20060131.orig/mkfile qc--20060131/mkfile
--- qc--20060131.orig/mkfile 2005-07-01 22:29:52.000000000 +0200
+++ qc--20060131/mkfile 2006-02-02 19:15:53.000000000 +0100
@@ -97,7 +97,7 @@
cd test2 && NPROC=1 mk $MKFLAGS all
test.opt:V: all.opt
- cd test2 && NPROC=1 mk QC=../bin/qc--.opt $MKFLAGS all
+ cd test2 && NPROC=1 mk $MKFLAGS QC=../bin/qc--.opt all
coverage: test2/ocamlprof.dump
rm -f $target

View File

@@ -27,6 +27,8 @@ stdenv.mkDerivation rec {
enableParallelBuilding = true;
hardeningDisable = [ "format" ];
meta = with stdenv.lib; {
description = "Smalltalk programming language and environment";
longDescription = ''

View File

@@ -1,47 +0,0 @@
{stdenv, fetchurl, aterm, pkgconfig, getopt}:
rec {
inherit aterm;
sdf = stdenv.mkDerivation rec {
name = "sdf2-bundle-2.3.3";
src = fetchurl {
url = ftp://ftp.stratego-language.org/pub/stratego/sdf2/sdf2-bundle-2.3.3/sdf2-bundle-2.3.3.tar.gz;
md5 = "62ecabe5fbb8bbe043ee18470107ef88";
};
buildInputs = [pkgconfig aterm getopt];
preConfigure = ''
substituteInPlace pgen/src/sdf2table.src \
--replace getopt ${getopt}/bin/getopt
'';
meta = {
homepage = http://www.program-transformation.org/Sdf/SdfBundle;
meta = "Tools for the SDF2 Syntax Definition Formalism, including the `pgen' parser generator and `sglr' parser";
};
};
strategoxt = stdenv.mkDerivation {
name = "strategoxt-0.16";
src = fetchurl {
url = ftp://ftp.strategoxt.org/pub/stratego/StrategoXT/strategoxt-0.16/strategoxt-0.16.tar.gz;
md5 = "8b8eabbd785faa84ec20134b63d4829e";
};
buildInputs = [pkgconfig aterm sdf getopt];
meta = {
homepage = http://strategoxt.org/;
meta = "A language and toolset for program transformation";
};
};
}

View File

@@ -1,112 +0,0 @@
{stdenv, fetchurl, aterm, pkgconfig, getopt, jdk, readline, ncurses}:
rec {
inherit aterm;
sdf = stdenv.mkDerivation ( rec {
name = "sdf2-bundle-2.4";
src = fetchurl {
url = "ftp://ftp.strategoxt.org/pub/stratego/StrategoXT/strategoxt-0.17/sdf2-bundle-2.4.tar.gz";
sha256 = "2ec83151173378f48a3326e905d11049d094bf9f0c7cff781bc2fce0f3afbc11";
};
buildInputs = [pkgconfig aterm];
preConfigure = ''
substituteInPlace pgen/src/sdf2table.src \
--replace getopt ${getopt}/bin/getopt
'';
meta = {
homepage = http://www.program-transformation.org/Sdf/SdfBundle;
meta = "Tools for the SDF2 Syntax Definition Formalism, including the `pgen' parser generator and `sglr' parser";
};
} // ( if stdenv.system == "i686-cygwin" then { CFLAGS = "-O2 -Wl,--stack=0x2300000"; } else {} ) ) ;
strategoxt = stdenv.mkDerivation rec {
name = "strategoxt-0.17";
src = fetchurl {
url = "ftp://ftp.strategoxt.org/pub/stratego/StrategoXT/strategoxt-0.17/strategoxt-0.17.tar.gz";
sha256 = "70355576c3ce3c5a8a26435705a49cf7d13e91eada974a654534d63e0d34acdb";
};
buildInputs = [pkgconfig aterm sdf getopt];
meta = {
homepage = http://strategoxt.org/;
meta = "A language and toolset for program transformation";
};
};
strategoShell = stdenv.mkDerivation rec {
name = "stratego-shell-0.7";
src = fetchurl {
url = "ftp://ftp.strategoxt.org/pub/stratego/StrategoXT/strategoxt-0.17/stratego-shell-0.7.tar.gz";
sha256 = "0q21vks9gaw9v4rxz90wb0pxzb19l7gwi4nbjvk4zb1imdk7znck";
};
buildInputs = [pkgconfig aterm sdf strategoxt getopt readline ncurses];
meta = {
homepage = http://strategoxt.org/;
meta = "A language and toolset for program transformation";
};
};
javafront = stdenv.mkDerivation (rec {
name = "java-front-0.9";
src = fetchurl {
url = "ftp://ftp.strategoxt.org/pub/stratego/java-front/java-front-0.9/java-front-0.9.tar.gz";
sha256 = "96f40bf31486d3ced3ecebdcc0067e83ce6acbdbe57e3c847136ac3d7b62cc3c";
};
buildInputs = [pkgconfig aterm sdf strategoxt];
# !!! The explicit `--with-strategoxt' is necessary; otherwise we
# get an XTC registration that refers to "/share/strategoxt/XTC".
configureFlags = "--enable-xtc --with-strategoxt=${strategoxt}";
meta = {
homepage = http://strategoxt.org/Stratego/JavaFront;
meta = "Tools for generating or transforming Java code";
};
} // ( if stdenv.system == "i686-cygwin" then { CFLAGS = "-O2"; } else {} ) ) ;
dryad = stdenv.mkDerivation rec {
name = "dryad-0.2pre18355";
src = fetchurl {
url = "http://releases.strategoxt.org/dryad/${name}-zbqfh1rm/dryad-0.2pre18355.tar.gz";
sha256 = "2c27b7f82f87ffc27b75969acc365560651275d348b3b5cbb530276d20ae83ab";
};
buildInputs = [jdk pkgconfig aterm sdf strategoxt javafront];
meta = {
homepage = http://strategoxt.org/Stratego/TheDryad;
meta = "A collection of tools for developing transformation systems for Java source and bytecode";
};
};
/*
libraries = ... {
configureFlags =
if stdenv ? isMinGW && stdenv.isMinGW then "--with-std=C99" else "";
# avoids loads of warnings about too big description fields because of a broken debug format
CFLAGS =
if stdenv ? isMinGW && stdenv.isMinGW then "-O2" else null;
};
*/
}

View File

@@ -1,124 +0,0 @@
{stdenv, fetchurl, aterm, pkgconfig, getopt, jdk, makeStaticBinaries, readline, ncurses}:
rec {
inherit aterm;
sdf = stdenv.mkDerivation ( rec {
name = "sdf2-bundle-2.4";
src = fetchurl {
url = "ftp://ftp.strategoxt.org/pub/stratego/StrategoXT/strategoxt-0.17/sdf2-bundle-2.4.tar.gz";
sha256 = "2ec83151173378f48a3326e905d11049d094bf9f0c7cff781bc2fce0f3afbc11";
};
buildInputs = [pkgconfig aterm];
preConfigure = ''
substituteInPlace pgen/src/sdf2table.src \
--replace getopt ${getopt}/bin/getopt
'';
meta = {
homepage = http://www.program-transformation.org/Sdf/SdfBundle;
meta = "Tools for the SDF2 Syntax Definition Formalism, including the `pgen' parser generator and `sglr' parser";
};
} // ( if stdenv.system == "i686-cygwin" then { CFLAGS = "-O2 -Wl,--stack=0x2300000"; } else {} ) ) ;
strategoxt = stdenv.mkDerivation rec {
name = "strategoxt-1.8pre24429";
src = fetchurl {
url = http://hydra.nixos.org/build/2175544/download/1/strategoxt-1.8pre24429.tar.gz;
sha256 = "124f1d61a440b94c38b731c2e7015340dbbc1deb6d442b31dbecb46b0a00fa83";
};
buildInputs = [pkgconfig aterm sdf getopt];
meta = {
homepage = http://strategoxt.org/;
meta = "A language and toolset for program transformation";
};
};
strategoShell = stdenv.mkDerivation rec {
name = "stratego-shell-0.7";
src = fetchurl {
url = "ftp://ftp.strategoxt.org/pub/stratego/StrategoXT/strategoxt-0.17/stratego-shell-0.7.tar.gz";
sha256 = "0q21vks9gaw9v4rxz90wb0pxzb19l7gwi4nbjvk4zb1imdk7znck";
};
buildInputs = [pkgconfig aterm sdf strategoxt getopt readline ncurses];
meta = {
homepage = http://strategoxt.org/;
meta = "A language and toolset for program transformation";
broken = true;
};
};
javafront = stdenv.mkDerivation (rec {
name = "java-front-0.9.1pre20122";
src = fetchurl {
url = "http://hydra.nixos.org/build/766286/download/1/java-front-0.9.1pre20122.tar.gz";
sha256 = "ef85d3af962fcd54e028ea501e64220b86af335a49143f2819bd3f4789bef7e6";
};
buildInputs = [pkgconfig aterm sdf strategoxt];
# !!! The explicit `--with-strategoxt' is necessary; otherwise we
# get an XTC registration that refers to "/share/strategoxt/XTC".
configureFlags = "--enable-xtc --with-strategoxt=${strategoxt}";
meta = {
homepage = http://strategoxt.org/Stratego/JavaFront;
meta = "Tools for generating or transforming Java code";
};
} // ( if stdenv.system == "i686-cygwin" then { CFLAGS = "-O2"; } else {} ) ) ;
aspectjfront = stdenv.mkDerivation (rec {
name = "aspectj-front-0.2pre20035";
src = fetchurl {
url = "http://hydra.nixos.org/build/175690/download/1/aspectj-front-0.2pre20035.tar.gz";
sha256 = "48f6cda6f9f19436e9553e8d27e6bb42500d08370332e3ad214affb49851e58e";
};
buildInputs = [pkgconfig aterm sdf strategoxt javafront];
} // ( if stdenv.system == "i686-cygwin" then { CFLAGS = "-O2"; } else {} ) ) ;
dryad = stdenv.mkDerivation rec {
name = "dryad-0.2pre18355";
src = fetchurl {
url = "http://releases.strategoxt.org/dryad/${name}-zbqfh1rm/dryad-0.2pre18355.tar.gz";
sha256 = "2c27b7f82f87ffc27b75969acc365560651275d348b3b5cbb530276d20ae83ab";
};
buildInputs = [jdk pkgconfig aterm sdf strategoxt javafront];
meta = {
homepage = http://strategoxt.org/Stratego/TheDryad;
meta = "A collection of tools for developing transformation systems for Java source and bytecode";
broken = true;
};
};
/*
libraries = ... {
configureFlags =
if stdenv ? isMinGW && stdenv.isMinGW then "--with-std=C99" else "";
# avoids loads of warnings about too big description fields because of a broken debug format
CFLAGS =
if stdenv ? isMinGW && stdenv.isMinGW then "-O2" else null;
};
*/
}

View File

@@ -17,6 +17,8 @@ stdenv.mkDerivation {
buildInputs = [ gmp readline openssl libjpeg unixODBC libXinerama
libXft libXpm libSM libXt zlib freetype pkgconfig fontconfig ];
hardeningDisable = [ "format" ];
configureFlags = "--with-world --enable-gmp --enable-shared";
buildFlags = "world";

View File

@@ -12,6 +12,8 @@ stdenv.mkDerivation {
buildInputs = [ omake ocaml flex bison ];
hardeningDisable = [ "format" ];
buildPhase = "omake all";
checkPhase = "omake check";

View File

@@ -24,6 +24,8 @@ stdenv.mkDerivation rec {
nativeBuildInputs = [ perl texinfo ];
hardeningDisable = [ "fortify" ];
postPatch = ''
substituteInPlace "texi2pod.pl" \
--replace "/usr/bin/perl" "${perl}/bin/perl"

View File

@@ -1,24 +0,0 @@
{ stdenv, fetchurl, pkgconfig, strategoPackages }:
stdenv.mkDerivation rec {
name = "webdsl-9.7pre4168";
src = fetchurl {
url = "http://hydra.nixos.org/build/654196/download/1/${name}.tar.gz";
sha256 = "08bec3ba02254ec7474ce70206b7be4390fe07456cfc57d927d96a21dd6dcb33";
};
buildInputs =
[ pkgconfig strategoPackages.aterm strategoPackages.sdf
strategoPackages.strategoxt strategoPackages.javafront
];
# This corrected a failing build on at least one 64 bit Linux system.
# See the comment about this here: http://webdsl.org/selectpage/Download/WebDSLOnLinux
preBuild = (if stdenv.system == "x86_64-linux" then "ulimit -s unlimited" else "");
meta = {
homepage = http://webdsl.org/;
description = "A domain-specific language for developing dynamic web applications with a rich data model";
};
}

View File

@@ -2,16 +2,21 @@
stdenv.mkDerivation rec {
name = "wla-dx-git-2016-02-27";
src = fetchFromGitHub {
owner = "vhelin";
repo = "wla-dx";
rev = "8189fe8d5620584ea16563875ff3c5430527c86a";
sha256 = "02zgkcyfx7y8j6jvyi12lm29fydnd7m3rxv6g2psv23fyzmpkkir";
};
hardeningDisable = [ "format" ];
installPhase = ''
mkdir -p $out/bin
install binaries/* $out/bin
'';
nativeBuildInputs = [ cmake ];
meta = with stdenv.lib; {