gcc-snapshot: remove
Package is marked as broken for >2 years and used a fairly old snapshot from the gcc7-branch, so I fairly doubt that this is somewhere used (and is also pretty misleading as you don't expect a random snapshot from gcc7 at `pkgs.gcc-snapshot`).
This commit is contained in:
parent
d2c86759b4
commit
dd6a291e9f
@ -615,6 +615,12 @@ auth required pam_succeed_if.so uid >= 1000 quiet
|
|||||||
<link xlink:href="https://www.oracle.com/technetwork/developer-tools/sql-developer/downloads/sqldev-relnotes-194-5908846.html">release notes</link>.
|
<link xlink:href="https://www.oracle.com/technetwork/developer-tools/sql-developer/downloads/sqldev-relnotes-194-5908846.html">release notes</link>.
|
||||||
</para>
|
</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
The <package>gcc-snapshot</package>-package has been removed. It's marked as broken for >2 years and used to point
|
||||||
|
to a fairly old snapshot from the <package>gcc7</package>-branch.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
</itemizedlist>
|
</itemizedlist>
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
|
@ -1,252 +0,0 @@
|
|||||||
{ stdenv, targetPackages, fetchurl, fetchpatch, noSysDirs
|
|
||||||
, langC ? true, langCC ? true, langFortran ? false
|
|
||||||
, langObjC ? stdenv.targetPlatform.isDarwin
|
|
||||||
, langObjCpp ? stdenv.targetPlatform.isDarwin
|
|
||||||
, langGo ? false
|
|
||||||
, profiledCompiler ? false
|
|
||||||
, staticCompiler ? false
|
|
||||||
, enableShared ? true
|
|
||||||
, enableLTO ? true
|
|
||||||
, texinfo ? null
|
|
||||||
, perl ? null # optional, for texi2pod (then pod2man)
|
|
||||||
, gmp, mpfr, libmpc, gettext, which
|
|
||||||
, libelf # optional, for link-time optimizations (LTO)
|
|
||||||
, isl ? null # optional, for the Graphite optimization framework.
|
|
||||||
, zlib ? null
|
|
||||||
, enableMultilib ? false
|
|
||||||
, enablePlugin ? stdenv.hostPlatform == stdenv.buildPlatform # Whether to support user-supplied plug-ins
|
|
||||||
, name ? "gcc"
|
|
||||||
, libcCross ? null
|
|
||||||
, threadsCross ? null # for MinGW
|
|
||||||
, crossStageStatic ? false
|
|
||||||
, # Strip kills static libs of other archs (hence no cross)
|
|
||||||
stripped ? stdenv.hostPlatform == stdenv.buildPlatform
|
|
||||||
&& stdenv.targetPlatform == stdenv.hostPlatform
|
|
||||||
, gnused ? null
|
|
||||||
, cloog # unused; just for compat with gcc4, as we override the parameter on some places
|
|
||||||
, flex ? null
|
|
||||||
, buildPackages
|
|
||||||
}:
|
|
||||||
|
|
||||||
# LTO needs libelf and zlib.
|
|
||||||
assert libelf != null -> zlib != null;
|
|
||||||
|
|
||||||
# Make sure we get GNU sed.
|
|
||||||
assert stdenv.hostPlatform.isDarwin -> gnused != null;
|
|
||||||
|
|
||||||
# The go frontend is written in c++
|
|
||||||
assert langGo -> langCC;
|
|
||||||
|
|
||||||
# threadsCross is just for MinGW
|
|
||||||
assert threadsCross != null -> stdenv.targetPlatform.isWindows;
|
|
||||||
|
|
||||||
with stdenv.lib;
|
|
||||||
with builtins;
|
|
||||||
|
|
||||||
let majorVersion = "7";
|
|
||||||
version = "${majorVersion}-20170409";
|
|
||||||
|
|
||||||
inherit (stdenv) buildPlatform hostPlatform targetPlatform;
|
|
||||||
|
|
||||||
patches =
|
|
||||||
[ ]
|
|
||||||
++ optional (targetPlatform != hostPlatform) ../libstdc++-target.patch
|
|
||||||
++ optional noSysDirs ../no-sys-dirs.patch
|
|
||||||
++ optional langFortran ../gfortran-driving.patch
|
|
||||||
++ optional (!crossStageStatic && targetPlatform.isMinGW) (fetchpatch {
|
|
||||||
url = "https://raw.githubusercontent.com/lhmouse/MINGW-packages/${import ../common/mfcgthreads-patches-repo.nix}/mingw-w64-gcc-git/9000-gcc-${majorVersion}-branch-Added-mcf-thread-model-support-from-mcfgthread.patch";
|
|
||||||
sha256 = "1nyjnshpq5gbcbbpfv27hy4ajvycmgkpiabkjlxnnrnq1d99k1ay";
|
|
||||||
});
|
|
||||||
|
|
||||||
/* Cross-gcc settings (build == host != target) */
|
|
||||||
crossMingw = targetPlatform != hostPlatform && targetPlatform.libc == "msvcrt";
|
|
||||||
stageNameAddon = if crossStageStatic then "stage-static" else "stage-final";
|
|
||||||
crossNameAddon = optionalString (targetPlatform != hostPlatform) "${targetPlatform.config}-${stageNameAddon}-";
|
|
||||||
|
|
||||||
in
|
|
||||||
|
|
||||||
stdenv.mkDerivation ({
|
|
||||||
pname = "${crossNameAddon}${name}${if stripped then "" else "-debug"}";
|
|
||||||
inherit version;
|
|
||||||
|
|
||||||
builder = ../builder.sh;
|
|
||||||
|
|
||||||
src = fetchurl {
|
|
||||||
url = "mirror://gcc/snapshots/${version}/gcc-${version}.tar.bz2";
|
|
||||||
sha256 = "19197rw1xrpkb8h10lfgn6zj7yj52x95hdmr0x5lg8i4v3i23b67";
|
|
||||||
};
|
|
||||||
|
|
||||||
inherit patches;
|
|
||||||
|
|
||||||
outputs = [ "out" "lib" "man" "info" ];
|
|
||||||
setOutputFlags = false;
|
|
||||||
NIX_NO_SELF_RPATH = true;
|
|
||||||
|
|
||||||
libc_dev = stdenv.cc.libc_dev;
|
|
||||||
|
|
||||||
hardeningDisable = [ "format" "pie" ];
|
|
||||||
|
|
||||||
postPatch =
|
|
||||||
if targetPlatform != hostPlatform || stdenv.cc.libc != null then
|
|
||||||
# On NixOS, use the right path to the dynamic linker instead of
|
|
||||||
# `/lib/ld*.so'.
|
|
||||||
let
|
|
||||||
libc = if libcCross != null then libcCross else stdenv.cc.libc;
|
|
||||||
in
|
|
||||||
'' echo "fixing the \`GLIBC_DYNAMIC_LINKER' and \`UCLIBC_DYNAMIC_LINKER' macros..."
|
|
||||||
for header in "gcc/config/"*-gnu.h "gcc/config/"*"/"*.h
|
|
||||||
do
|
|
||||||
grep -q LIBC_DYNAMIC_LINKER "$header" || continue
|
|
||||||
echo " fixing \`$header'..."
|
|
||||||
sed -i "$header" \
|
|
||||||
-e 's|define[[:blank:]]*\([UCG]\+\)LIBC_DYNAMIC_LINKER\([0-9]*\)[[:blank:]]"\([^\"]\+\)"$|define \1LIBC_DYNAMIC_LINKER\2 "${libc.out}\3"|g'
|
|
||||||
done
|
|
||||||
''
|
|
||||||
else null;
|
|
||||||
|
|
||||||
inherit noSysDirs staticCompiler crossStageStatic
|
|
||||||
libcCross crossMingw;
|
|
||||||
|
|
||||||
depsBuildBuild = [ buildPackages.stdenv.cc ];
|
|
||||||
nativeBuildInputs = [ texinfo which gettext ]
|
|
||||||
++ (optional (perl != null) perl);
|
|
||||||
|
|
||||||
# For building runtime libs
|
|
||||||
depsBuildTarget =
|
|
||||||
if hostPlatform == buildPlatform then [
|
|
||||||
targetPackages.stdenv.cc.bintools # newly-built gcc will be used
|
|
||||||
] else assert targetPlatform == hostPlatform; [ # build != host == target
|
|
||||||
stdenv.cc
|
|
||||||
];
|
|
||||||
|
|
||||||
buildInputs = [
|
|
||||||
gmp mpfr libmpc libelf flex
|
|
||||||
targetPackages.stdenv.cc.bintools # For linking code at run-time
|
|
||||||
] ++ (optional (isl != null) isl)
|
|
||||||
++ (optional (zlib != null) zlib)
|
|
||||||
# The builder relies on GNU sed (for instance, Darwin's `sed' fails with
|
|
||||||
# "-i may not be used with stdin"), and `stdenvNative' doesn't provide it.
|
|
||||||
++ (optional hostPlatform.isDarwin gnused)
|
|
||||||
;
|
|
||||||
|
|
||||||
depsTargetTarget = optional (!crossStageStatic && threadsCross != null) threadsCross;
|
|
||||||
|
|
||||||
NIX_LDFLAGS = stdenv.lib.optionalString hostPlatform.isSunOS "-lm -ldl";
|
|
||||||
|
|
||||||
preConfigure = import ../common/pre-configure.nix {
|
|
||||||
inherit (stdenv) lib;
|
|
||||||
inherit version hostPlatform langGo;
|
|
||||||
};
|
|
||||||
|
|
||||||
dontDisableStatic = true;
|
|
||||||
|
|
||||||
# TODO(@Ericson2314): Always pass "--target" and always prefix.
|
|
||||||
configurePlatforms = [ "build" "host" ] ++ stdenv.lib.optional (targetPlatform != hostPlatform) "target";
|
|
||||||
|
|
||||||
configureFlags = import ../common/configure-flags.nix {
|
|
||||||
inherit
|
|
||||||
stdenv
|
|
||||||
targetPackages
|
|
||||||
crossStageStatic libcCross
|
|
||||||
version
|
|
||||||
|
|
||||||
gmp mpfr libmpc libelf isl
|
|
||||||
|
|
||||||
enableLTO
|
|
||||||
enableMultilib
|
|
||||||
enablePlugin
|
|
||||||
enableShared
|
|
||||||
|
|
||||||
langC
|
|
||||||
langCC
|
|
||||||
langFortran
|
|
||||||
langGo
|
|
||||||
langObjC
|
|
||||||
langObjCpp
|
|
||||||
;
|
|
||||||
};
|
|
||||||
|
|
||||||
targetConfig = if targetPlatform != hostPlatform then targetPlatform.config else null;
|
|
||||||
|
|
||||||
buildFlags = optional
|
|
||||||
(targetPlatform == hostPlatform && hostPlatform == buildPlatform)
|
|
||||||
(if profiledCompiler then "profiledbootstrap" else "bootstrap");
|
|
||||||
|
|
||||||
dontStrip = !stripped;
|
|
||||||
NIX_STRIP_DEBUG = !stripped;
|
|
||||||
|
|
||||||
installTargets =
|
|
||||||
if stripped
|
|
||||||
then "install-strip"
|
|
||||||
else "install";
|
|
||||||
|
|
||||||
# https://gcc.gnu.org/install/specific.html#x86-64-x-solaris210
|
|
||||||
${if hostPlatform.system == "x86_64-solaris" then "CC" else null} = "gcc -m64";
|
|
||||||
|
|
||||||
# Setting $CPATH and $LIBRARY_PATH to make sure both `gcc' and `xgcc' find the
|
|
||||||
# library headers and binaries, regarless of the language being compiled.
|
|
||||||
#
|
|
||||||
# Likewise, the LTO code doesn't find zlib.
|
|
||||||
#
|
|
||||||
# Cross-compiling, we need gcc not to read ./specs in order to build the g++
|
|
||||||
# compiler (after the specs for the cross-gcc are created). Having
|
|
||||||
# LIBRARY_PATH= makes gcc read the specs from ., and the build breaks.
|
|
||||||
|
|
||||||
CPATH = optionals (targetPlatform == hostPlatform) (makeSearchPathOutput "dev" "include" ([]
|
|
||||||
++ optional (zlib != null) zlib
|
|
||||||
));
|
|
||||||
|
|
||||||
LIBRARY_PATH = optionals (targetPlatform == hostPlatform) (makeLibraryPath (optional (zlib != null) zlib));
|
|
||||||
|
|
||||||
inherit
|
|
||||||
(import ../common/extra-target-flags.nix {
|
|
||||||
inherit stdenv crossStageStatic libcCross threadsCross;
|
|
||||||
})
|
|
||||||
EXTRA_TARGET_FLAGS
|
|
||||||
EXTRA_TARGET_LDFLAGS
|
|
||||||
;
|
|
||||||
|
|
||||||
passthru = {
|
|
||||||
inherit langC langCC langObjC langObjCpp langFortran langGo version;
|
|
||||||
isGNU = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
enableParallelBuilding = true;
|
|
||||||
inherit enableMultilib;
|
|
||||||
|
|
||||||
inherit (stdenv) is64bit;
|
|
||||||
|
|
||||||
meta = {
|
|
||||||
homepage = https://gcc.gnu.org/;
|
|
||||||
license = stdenv.lib.licenses.gpl3Plus; # runtime support libraries are typically LGPLv3+
|
|
||||||
description = "GNU Compiler Collection, version ${version}"
|
|
||||||
+ (if stripped then "" else " (with debugging info)");
|
|
||||||
|
|
||||||
longDescription = ''
|
|
||||||
The GNU Compiler Collection includes compiler front ends for C, C++,
|
|
||||||
Objective-C, Fortran, OpenMP for C/C++/Fortran, and Ada, as well as
|
|
||||||
libraries for these languages (libstdc++, libgomp,...).
|
|
||||||
|
|
||||||
GCC development is a part of the GNU Project, aiming to improve the
|
|
||||||
compiler used in the GNU system including the GNU/Linux variant.
|
|
||||||
'';
|
|
||||||
|
|
||||||
maintainers = with stdenv.lib.maintainers; [ ];
|
|
||||||
|
|
||||||
platforms =
|
|
||||||
stdenv.lib.platforms.linux ++
|
|
||||||
stdenv.lib.platforms.freebsd ++
|
|
||||||
stdenv.lib.platforms.illumos ++
|
|
||||||
stdenv.lib.platforms.darwin;
|
|
||||||
|
|
||||||
broken = true;
|
|
||||||
};
|
|
||||||
}
|
|
||||||
|
|
||||||
// optionalAttrs (targetPlatform != hostPlatform && targetPlatform.libc == "msvcrt" && crossStageStatic) {
|
|
||||||
makeFlags = [ "all-gcc" "all-target-libgcc" ];
|
|
||||||
installTargets = "install-gcc install-target-libgcc";
|
|
||||||
}
|
|
||||||
|
|
||||||
// optionalAttrs (enableMultilib) { dontMoveLib64 = true; }
|
|
||||||
)
|
|
@ -571,4 +571,6 @@ mapAliases ({
|
|||||||
|
|
||||||
dnscrypt-proxy = throw "dnscrypt-proxy has been removed. Please use dnscrypt-proxy2."; # added 2020-02-02
|
dnscrypt-proxy = throw "dnscrypt-proxy has been removed. Please use dnscrypt-proxy2."; # added 2020-02-02
|
||||||
sqldeveloper_18 = throw "sqldeveloper_18 is not maintained anymore!"; # added 2020-02-04
|
sqldeveloper_18 = throw "sqldeveloper_18 is not maintained anymore!"; # added 2020-02-04
|
||||||
|
|
||||||
|
gcc-snapshot = throw "Marked as broken for >2 years, additionally this 'snapshot' pointed to a fairly old one from gcc7.";
|
||||||
})
|
})
|
||||||
|
@ -8133,18 +8133,6 @@ in
|
|||||||
isl = if !stdenv.isDarwin then isl_0_17 else null;
|
isl = if !stdenv.isDarwin then isl_0_17 else null;
|
||||||
}));
|
}));
|
||||||
|
|
||||||
gcc-snapshot = lowPrio (wrapCC (callPackage ../development/compilers/gcc/snapshot {
|
|
||||||
inherit noSysDirs;
|
|
||||||
|
|
||||||
# PGO seems to speed up compilation by gcc by ~10%, see #445 discussion
|
|
||||||
profiledCompiler = with stdenv; (!isDarwin && (isi686 || isx86_64));
|
|
||||||
|
|
||||||
libcCross = if stdenv.targetPlatform != stdenv.buildPlatform then libcCross else null;
|
|
||||||
threadsCross = if stdenv.targetPlatform != stdenv.buildPlatform then threadsCross else null;
|
|
||||||
|
|
||||||
isl = isl_0_17;
|
|
||||||
}));
|
|
||||||
|
|
||||||
gfortran = gfortran9;
|
gfortran = gfortran9;
|
||||||
|
|
||||||
gfortran48 = wrapCC (gcc48.cc.override {
|
gfortran48 = wrapCC (gcc48.cc.override {
|
||||||
|
Loading…
Reference in New Issue
Block a user