Merge 'staging' into master
This commit is contained in:
@@ -44,4 +44,6 @@ stdenv.mkDerivation rec {
|
||||
langC = true;
|
||||
|
||||
buildInputs = stdenv.lib.optionals langF77 [ gmp mpfr bison flex ];
|
||||
|
||||
meta.broken = true;
|
||||
}
|
||||
|
||||
@@ -109,13 +109,11 @@ if test "$noSysDirs" = "1"; then
|
||||
fi
|
||||
fi
|
||||
|
||||
|
||||
# CFLAGS_FOR_TARGET are needed for the libstdc++ configure script to find
|
||||
# the startfiles.
|
||||
# FLAGS_FOR_TARGET are needed for the target libraries to receive the -Bxxx
|
||||
# for the startfiles.
|
||||
makeFlagsArray=( \
|
||||
"${makeFlagsArray[@]}" \
|
||||
makeFlagsArray+=( \
|
||||
NATIVE_SYSTEM_HEADER_DIR="$NIX_FIXINC_DUMMY" \
|
||||
SYSTEM_HEADER_DIR="$NIX_FIXINC_DUMMY" \
|
||||
CFLAGS_FOR_BUILD="$EXTRA_FLAGS $EXTRA_LDFLAGS" \
|
||||
@@ -128,8 +126,7 @@ if test "$noSysDirs" = "1"; then
|
||||
)
|
||||
|
||||
if test -z "$targetConfig"; then
|
||||
makeFlagsArray=( \
|
||||
"${makeFlagsArray[@]}" \
|
||||
makeFlagsArray+=( \
|
||||
BOOT_CFLAGS="$EXTRA_FLAGS $EXTRA_LDFLAGS" \
|
||||
BOOT_LDFLAGS="$EXTRA_TARGET_CFLAGS $EXTRA_TARGET_LDFLAGS" \
|
||||
)
|
||||
@@ -138,13 +135,11 @@ if test "$noSysDirs" = "1"; then
|
||||
if test -n "$targetConfig" -a "$crossStageStatic" == 1; then
|
||||
# We don't want the gcc build to assume there will be a libc providing
|
||||
# limits.h in this stagae
|
||||
makeFlagsArray=( \
|
||||
"${makeFlagsArray[@]}" \
|
||||
makeFlagsArray+=( \
|
||||
LIMITS_H_TEST=false \
|
||||
)
|
||||
else
|
||||
makeFlagsArray=( \
|
||||
"${makeFlagsArray[@]}" \
|
||||
makeFlagsArray+=( \
|
||||
LIMITS_H_TEST=true \
|
||||
)
|
||||
fi
|
||||
@@ -163,6 +158,7 @@ preConfigure() {
|
||||
# Patch to get armvt5el working:
|
||||
sed -i -e 's/ arm)/ arm*)/' newlib/configure.host
|
||||
fi
|
||||
|
||||
# Bug - they packaged zlib
|
||||
if test -d "zlib"; then
|
||||
# This breaks the build without-headers, which should build only
|
||||
@@ -189,8 +185,8 @@ preConfigure() {
|
||||
fi
|
||||
|
||||
# Eval the preConfigure script from nix expression.
|
||||
eval $providedPreConfigure;
|
||||
env;
|
||||
eval "$providedPreConfigure"
|
||||
|
||||
# Perform the build in a different directory.
|
||||
mkdir ../build
|
||||
cd ../build
|
||||
@@ -204,6 +200,15 @@ postConfigure() {
|
||||
}
|
||||
|
||||
|
||||
preInstall() {
|
||||
# Make ‘lib64’ a symlink to ‘lib’.
|
||||
if [ -n "$is64bit" -a -z "$enableMultilib" ]; then
|
||||
mkdir -p $out/lib
|
||||
ln -s lib $out/lib64
|
||||
fi
|
||||
}
|
||||
|
||||
|
||||
postInstall() {
|
||||
# Remove precompiled headers for now. They are very big and
|
||||
# probably not very useful yet.
|
||||
|
||||
@@ -67,7 +67,6 @@ let version = "4.8.3";
|
||||
patches = []
|
||||
++ optional enableParallelBuilding ./parallel-bconfig.patch
|
||||
++ optional (cross != null) ./libstdc++-target.patch
|
||||
# ++ optional noSysDirs ./no-sys-dirs.patch
|
||||
# The GNAT Makefiles did not pay attention to CFLAGS_FOR_TARGET for its
|
||||
# target libraries and tools.
|
||||
++ optional langAda ./gnat-cflags.patch
|
||||
@@ -304,14 +303,21 @@ stdenv.mkDerivation ({
|
||||
"\"--with-host-libstdcxx=-Wl,-rpath,\$prefix/lib/amd64 -lstdc++\"
|
||||
\"--with-boot-ldflags=-L../prev-x86_64-pc-solaris2.11/libstdc++-v3/src/.libs\""}
|
||||
);
|
||||
${stdenv.lib.optionalString (stdenv.isSunOS && stdenv.is64bit)
|
||||
''
|
||||
export NIX_LDFLAGS=`echo $NIX_LDFLAGS | sed -e s~$prefix/lib~$prefix/lib/amd64~g`
|
||||
export LDFLAGS_FOR_TARGET="-Wl,-rpath,$prefix/lib/amd64 $LDFLAGS_FOR_TARGET"
|
||||
export CXXFLAGS_FOR_TARGET="-Wl,-rpath,$prefix/lib/amd64 $CXXFLAGS_FOR_TARGET"
|
||||
export CFLAGS_FOR_TARGET="-Wl,-rpath,$prefix/lib/amd64 $CFLAGS_FOR_TARGET"
|
||||
''}
|
||||
'';
|
||||
'' + stdenv.lib.optionalString (stdenv.isSunOS && stdenv.is64bit) ''
|
||||
export NIX_LDFLAGS=`echo $NIX_LDFLAGS | sed -e s~$prefix/lib~$prefix/lib/amd64~g`
|
||||
export LDFLAGS_FOR_TARGET="-Wl,-rpath,$prefix/lib/amd64 $LDFLAGS_FOR_TARGET"
|
||||
export CXXFLAGS_FOR_TARGET="-Wl,-rpath,$prefix/lib/amd64 $CXXFLAGS_FOR_TARGET"
|
||||
export CFLAGS_FOR_TARGET="-Wl,-rpath,$prefix/lib/amd64 $CFLAGS_FOR_TARGET"
|
||||
'' + stdenv.lib.optionalString stdenv.isDarwin ''
|
||||
if SDKROOT=$(/usr/bin/xcrun --show-sdk-path); then
|
||||
configureFlagsArray+=(--with-native-system-header-dir=$SDKROOT/usr/include)
|
||||
makeFlagsArray+=( \
|
||||
CFLAGS_FOR_BUILD=-F$SDKROOT/System/Library/Frameworks \
|
||||
CFLAGS_FOR_TARGET=-F$SDKROOT/System/Library/Frameworks \
|
||||
FLAGS_FOR_TARGET=-F$SDKROOT/System/Library/Frameworks \
|
||||
)
|
||||
fi
|
||||
'';
|
||||
|
||||
dontDisableStatic = true;
|
||||
|
||||
@@ -494,9 +500,11 @@ stdenv.mkDerivation ({
|
||||
else null;
|
||||
|
||||
passthru =
|
||||
{ inherit langC langCC langObjC langObjCpp langAda langFortran langVhdl langGo enableMultilib version; };
|
||||
{ inherit langC langCC langObjC langObjCpp langAda langFortran langVhdl langGo version; };
|
||||
|
||||
inherit enableParallelBuilding;
|
||||
inherit enableParallelBuilding enableMultilib;
|
||||
|
||||
inherit (stdenv) is64bit;
|
||||
|
||||
meta = {
|
||||
homepage = http://gcc.gnu.org/;
|
||||
|
||||
@@ -1,41 +0,0 @@
|
||||
diff -ru gcc-4.3.1-orig/gcc/cppdefault.c gcc-4.3.1/gcc/cppdefault.c
|
||||
--- gcc-4.3.1-orig/gcc/cppdefault.c 2007-07-26 10:37:01.000000000 +0200
|
||||
+++ gcc-4.3.1/gcc/cppdefault.c 2008-06-25 17:48:23.000000000 +0200
|
||||
@@ -41,6 +41,10 @@
|
||||
# undef CROSS_INCLUDE_DIR
|
||||
#endif
|
||||
|
||||
+#undef LOCAL_INCLUDE_DIR
|
||||
+#undef SYSTEM_INCLUDE_DIR
|
||||
+#undef STANDARD_INCLUDE_DIR
|
||||
+
|
||||
const struct default_include cpp_include_defaults[]
|
||||
#ifdef INCLUDE_DEFAULTS
|
||||
= INCLUDE_DEFAULTS;
|
||||
diff -ru gcc-4.3.1-orig/gcc/gcc.c gcc-4.3.1/gcc/gcc.c
|
||||
--- gcc-4.3.1-orig/gcc/gcc.c 2008-03-02 23:55:19.000000000 +0100
|
||||
+++ gcc-4.3.1/gcc/gcc.c 2008-06-25 17:52:53.000000000 +0200
|
||||
@@ -1478,10 +1478,10 @@
|
||||
/* Default prefixes to attach to command names. */
|
||||
|
||||
#ifndef STANDARD_STARTFILE_PREFIX_1
|
||||
-#define STANDARD_STARTFILE_PREFIX_1 "/lib/"
|
||||
+#define STANDARD_STARTFILE_PREFIX_1 ""
|
||||
#endif
|
||||
#ifndef STANDARD_STARTFILE_PREFIX_2
|
||||
-#define STANDARD_STARTFILE_PREFIX_2 "/usr/lib/"
|
||||
+#define STANDARD_STARTFILE_PREFIX_2 ""
|
||||
#endif
|
||||
|
||||
#ifdef CROSS_DIRECTORY_STRUCTURE /* Don't use these prefixes for a cross compiler. */
|
||||
--- gcc-4.3.1-orig/gcc/Makefile.in 2008-05-11 20:54:15.000000000 +0200
|
||||
+++ gcc-4.3.1/gcc/Makefile.in 2008-06-25 17:48:23.000000000 +0200
|
||||
@@ -3277,7 +3281,7 @@
|
||||
-DGPLUSPLUS_INCLUDE_DIR=\"$(gcc_gxx_include_dir)\" \
|
||||
-DGPLUSPLUS_TOOL_INCLUDE_DIR=\"$(gcc_gxx_include_dir)/$(target_noncanonical)\" \
|
||||
-DGPLUSPLUS_BACKWARD_INCLUDE_DIR=\"$(gcc_gxx_include_dir)/backward\" \
|
||||
- -DLOCAL_INCLUDE_DIR=\"$(local_includedir)\" \
|
||||
+ -DLOCAL_INCLUDE_DIR=\"/no-such-dir\" \
|
||||
-DCROSS_INCLUDE_DIR=\"$(CROSS_SYSTEM_HEADER_DIR)\" \
|
||||
-DTOOL_INCLUDE_DIR=\"$(gcc_tooldir)/include\" \
|
||||
-DPREFIX=\"$(prefix)/\" \
|
||||
@@ -34,14 +34,14 @@ stdenv.mkDerivation rec {
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
ensureDir $out/bin
|
||||
mkdir -p $out/bin
|
||||
cp ghdl_mcode $out/bin
|
||||
|
||||
ensureDir $out/share/ghdl_mcode/translate
|
||||
mkdir -p $out/share/ghdl_mcode/translate
|
||||
cp -R ../lib $out/share/ghdl_mcode/translate
|
||||
cp -R ../../libraries $out/share/ghdl_mcode
|
||||
|
||||
ensureDir $out/share/man/man1
|
||||
mkdir -p $out/share/man/man1
|
||||
cp ../../doc/ghdl.1 $out/share/man/man1/ghdl_mcode.1
|
||||
|
||||
# Ghdl has some timestamps checks, storing file timestamps in '.cf' files.
|
||||
|
||||
@@ -69,7 +69,7 @@ stdenv.mkDerivation {
|
||||
# http://lists.science.uu.nl/pipermail/nix-dev/2013-October/011891.html
|
||||
# Fix for "libgcc_s.so.1 must be installed for pthread_cancel to work"
|
||||
# during tests:
|
||||
export LD_LIBRARY_PATH="$(dirname $(echo ${stdenv.gcc.gcc}/lib*/libgcc_s.so))"
|
||||
export LD_LIBRARY_PATH="$(dirname $(echo ${stdenv.gcc.gcc}/lib/libgcc_s.so))"
|
||||
|
||||
mkdir -p "$out/bin"
|
||||
export GOROOT="$(pwd)/"
|
||||
|
||||
@@ -40,7 +40,7 @@ stdenv.mkDerivation rec {
|
||||
propagatedBuildInputs = [ go ];
|
||||
|
||||
installPhase = ''
|
||||
ensureDir $out/bin
|
||||
mkdir -p $out/bin
|
||||
export GOPATH=$src
|
||||
go build -v -o $out/bin/gox github.com/mitchellh/gox
|
||||
'';
|
||||
|
||||
@@ -11,7 +11,7 @@ stdenv.mkDerivation {
|
||||
buildInputs = [ unzip ];
|
||||
|
||||
installPhase = ''
|
||||
ensureDir $out
|
||||
mkdir -p $out
|
||||
unzip $src
|
||||
mv gwt-2.4.0 $out/bin
|
||||
'';
|
||||
|
||||
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
|
||||
'';
|
||||
|
||||
preConfigure = ''
|
||||
ensureDir $out/lib/mercury/cgi-bin ;
|
||||
mkdir -p $out/lib/mercury/cgi-bin ;
|
||||
configureFlags="--enable-deep-profiler=$out/lib/mercury/cgi-bin";
|
||||
'';
|
||||
|
||||
|
||||
@@ -37,7 +37,7 @@ stdenv.mkDerivation rec {
|
||||
patch -p0 < ${./mips64.patch}
|
||||
'';
|
||||
postBuild = ''
|
||||
ensureDir $out/include
|
||||
mkdir -p $out/include
|
||||
ln -sv $out/lib/ocaml/caml $out/include/caml
|
||||
'';
|
||||
|
||||
|
||||
@@ -1,16 +1,18 @@
|
||||
{ stdenv, fetchurl, setJavaClassPath }:
|
||||
{ stdenv, fetchurl, unzip, setJavaClassPath }:
|
||||
let
|
||||
jdk = stdenv.mkDerivation {
|
||||
name = "openjdk6-b16-24_apr_2009-r1";
|
||||
name = "openjdk-7u60b30";
|
||||
|
||||
# From https://github.com/alexkasko/openjdk-unofficial-builds
|
||||
src = fetchurl {
|
||||
url = http://landonf.bikemonkey.org/static/soylatte/bsd-dist/openjdk6_darwin/openjdk6-b16-24_apr_2009-r1.tar.bz2;
|
||||
sha256 = "14pbv6jjk95k7hbgiwyvjdjv8pccm7m8a130k0q7mjssf4qmpx1v";
|
||||
url = https://bitbucket.org/alexkasko/openjdk-unofficial-builds/downloads/openjdk-1.7.0-u60-unofficial-macosx-x86_64-bundle.zip;
|
||||
sha256 = "af510a4d566712d82c17054bb39f91d98c69a85586e244c6123669a0bd4b7401";
|
||||
};
|
||||
|
||||
buildInputs = [ unzip ];
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p $out
|
||||
cp -vR * $out/
|
||||
mv */Contents/Home $out
|
||||
|
||||
# jni.h expects jni_md.h to be in the header search path.
|
||||
ln -s $out/include/darwin/*_md.h $out/include/
|
||||
|
||||
@@ -54,13 +54,13 @@ stdenv.mkDerivation rec {
|
||||
export LC_ALL=en_US.UTF-8
|
||||
|
||||
# Set up link to cymake, which has been built already.
|
||||
ensureDir bin/.local
|
||||
mkdir -p bin/.local
|
||||
ln -s ${curryFront}/bin/cymake bin/.local/
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
# Prepare PAKCSHOME directory.
|
||||
ensureDir $out/pakcs
|
||||
mkdir -p $out/pakcs
|
||||
for d in bin curry2prolog currytools lib tools cpns include www examples docs ; do
|
||||
cp -r $d $out/pakcs ;
|
||||
done
|
||||
@@ -80,7 +80,7 @@ stdenv.mkDerivation rec {
|
||||
(cd $out/pakcs/www ; make)
|
||||
|
||||
# Install bin.
|
||||
ensureDir $out/bin
|
||||
mkdir -p $out/bin
|
||||
for b in makecurrycgi .makesavedstate pakcs parsecurry cleancurry \
|
||||
addtypes cass currybrowse currycreatemake currydoc currytest \
|
||||
dataToXml erd2curry ; do
|
||||
@@ -88,7 +88,7 @@ stdenv.mkDerivation rec {
|
||||
done
|
||||
|
||||
# Place emacs lisp files in expected locations.
|
||||
ensureDir $out/share/emacs/site-lisp/curry-pakcs
|
||||
mkdir -p $out/share/emacs/site-lisp/curry-pakcs
|
||||
for e in "tools/emacs/"*.el ; do
|
||||
cp $e $out/share/emacs/site-lisp/curry-pakcs/ ;
|
||||
done
|
||||
|
||||
@@ -15,9 +15,9 @@ stdenv.mkDerivation rec {
|
||||
};
|
||||
|
||||
installPhase = ''
|
||||
ensureDir $out/bin
|
||||
mkdir -p $out/bin
|
||||
cp -p src/runtime/sbcl $out/bin
|
||||
ensureDir $out/share/sbcl
|
||||
mkdir -p $out/share/sbcl
|
||||
cp -p output/sbcl.core $out/share/sbcl
|
||||
'';
|
||||
|
||||
|
||||
@@ -51,7 +51,7 @@ stdenv.mkDerivation rec {
|
||||
|
||||
preBuild = ''
|
||||
export INSTALL_ROOT=$out
|
||||
ensureDir test-home
|
||||
mkdir -p test-home
|
||||
export HOME=$PWD/test-home
|
||||
'';
|
||||
|
||||
|
||||
@@ -22,10 +22,10 @@ stdenv.mkDerivation rec {
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
ensureDir $out/bin
|
||||
mkdir -p $out/bin
|
||||
rsync -av bin/ $out/bin/
|
||||
|
||||
ensureDir $out/lib
|
||||
mkdir -p $out/lib
|
||||
rsync -av lib/ $out/lib/
|
||||
'';
|
||||
|
||||
|
||||
Reference in New Issue
Block a user