Merge pull request #127 from kinvolk/t-lo/update-to-gcc-9.3.0

dev-util,sys-devel,sys-libs,sys-kernel: update to gcc-9.3.0
This commit is contained in:
Thilo Fromm 2020-11-18 14:52:55 +01:00 committed by GitHub
commit 2bebee3291
82 changed files with 1546 additions and 2536 deletions

View File

@ -0,0 +1,8 @@
# Copyright 2019-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit acct-group
ACCT_GROUP_ID=275

View File

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>chutzpah@gentoo.org</email>
<name>Patrick McLean</name>
</maintainer>
</pkgmetadata>

View File

@ -0,0 +1,13 @@
# Copyright 2019-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit acct-user
DESCRIPTION="User for net-dns/dnsmasq"
ACCT_USER_ID=275
ACCT_USER_GROUPS=( dnsmasq )
acct-user_add_deps

View File

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>chutzpah@gentoo.org</email>
<name>Patrick McLean</name>
</maintainer>
</pkgmetadata>

View File

@ -19,3 +19,4 @@ EBUILD perf-4.9.13.ebuild 4780 SHA256 1c4108a23d10577e90236a4a093f768af270bf049e
MISC ChangeLog 3650 SHA256 0975840be7bd7127c7d5b83a130f6ae8621256a7f02eb80196c69298b918eca2 SHA512 742d129e590b0c36adc7cc3b81fa51184c1c147dec3aa5c844a704f81cbab7023f39229c7e06ffcf06f4a5af5d1ba44100b8421f4c52fa5b8f8c47df4016d7ae WHIRLPOOL effae523378dd7bbdfac3dbb990e7e1a0b8d0cb18c08128c138f3e84d8f6419a9c117c4e7ed867d2ebc4e32279ab12f6c99a921d596f36da2cac74c89c55abc3
MISC ChangeLog-2015 6264 SHA256 740d932dcee9533fa7cb6a2a03eecdc04aeb744b5d456dcb9972f6c228b57e2f SHA512 aebf127fb17bd1fd086d9f0057dfb5f044e789f943dbda5ef2260b5145944c4f8f44d241610209ec9c9a65908aa932019d5f0d3c027dfb5869423daf6762cb08 WHIRLPOOL 0f040aa61460166d988e4becfe91449bab91e90c5ac2d5da04eeb8685142a96700f776625f21b4997d5518857597c851934ebcdf6e558407ee25adce0d5ca63f
MISC metadata.xml 1153 SHA256 880863b904a364fe264b2d6e4db2d5086b543df748a140aeab88bf531db1c88e SHA512 18e5b436d7ae5ba8c9da8bd4007e33006e25f351d9e01e55127bd35f47446663faafa1de37283410e0cec9f00b8b4422afb4a8d256b8161d88c3c084e8c9a09d WHIRLPOOL 2f765f9167d86eb0317b673f91f2c44190dc6d1a231d2fc047cdea57c8c0fcc03083bdfa03fae2abae1263d225141f1b9f6109f91026c77d47f7e532fb907c31
DIST linux-5.8.tar.xz 114459324 BLAKE2B 7bd97f8fa4527840754434414c07283e89731dc8ebb1e95fa5bc1469a60af1122582c0d3b6e262e77882f023190068df3537bd8b65964b3caa820bb2c8e579c7 SHA512 45a53ecf351096ef6e98242cca4228b8da9b9139ecc6963695791ea6fb7a9484a4e1c19dcca7ce7cbfdfa49de0451b70973bb078f12bdae9cbaddbc3f8092556

View File

@ -0,0 +1,17 @@
https://bugs.gentoo.org/678652
Created-By: Maciej S. Szmigiero <mail@maciej.szmigiero.name>
---
--- a/tools/build/feature/test-clang.cpp 2018-12-24 00:55:59.000000000 +0100
+++ b/tools/build/feature/test-clang.cpp 2019-04-06 16:05:56.828757243 +0200
@@ -1,10 +1,10 @@
// SPDX-License-Identifier: GPL-2.0
-#include "clang/Basic/VirtualFileSystem.h"
#include "clang/Driver/Driver.h"
#include "clang/Frontend/TextDiagnosticPrinter.h"
#include "llvm/ADT/IntrusiveRefCntPtr.h"
#include "llvm/Support/ManagedStatic.h"
#include "llvm/Support/raw_ostream.h"
+#include "llvm/Support/VirtualFileSystem.h"
using namespace clang;
using namespace clang::driver;

View File

@ -0,0 +1,60 @@
From 0ada120c883d4f1f6aafd01cf0fbb10d8bbba015 Mon Sep 17 00:00:00 2001
From: Changbin Du <changbin.du@gmail.com>
Date: Tue, 28 Jan 2020 23:29:38 +0800
Subject: perf: Make perf able to build with latest libbfd
libbfd has changed the bfd_section_* macros to inline functions
bfd_section_<field> since 2019-09-18. See below two commits:
o http://www.sourceware.org/ml/gdb-cvs/2019-09/msg00064.html
o https://www.sourceware.org/ml/gdb-cvs/2019-09/msg00072.html
This fix make perf able to build with both old and new libbfd.
Signed-off-by: Changbin Du <changbin.du@gmail.com>
Acked-by: Jiri Olsa <jolsa@redhat.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Link: http://lore.kernel.org/lkml/20200128152938.31413-1-changbin.du@gmail.com
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
---
tools/perf/util/srcline.c | 16 +++++++++++++++-
1 file changed, 15 insertions(+), 1 deletion(-)
diff --git a/tools/perf/util/srcline.c b/tools/perf/util/srcline.c
index 6ccf6f6..5b7d6c1 100644
--- a/tools/perf/util/srcline.c
+++ b/tools/perf/util/srcline.c
@@ -193,16 +193,30 @@ static void find_address_in_section(bfd *abfd, asection *section, void *data)
bfd_vma pc, vma;
bfd_size_type size;
struct a2l_data *a2l = data;
+ flagword flags;
if (a2l->found)
return;
- if ((bfd_get_section_flags(abfd, section) & SEC_ALLOC) == 0)
+#ifdef bfd_get_section_flags
+ flags = bfd_get_section_flags(abfd, section);
+#else
+ flags = bfd_section_flags(section);
+#endif
+ if ((flags & SEC_ALLOC) == 0)
return;
pc = a2l->addr;
+#ifdef bfd_get_section_vma
vma = bfd_get_section_vma(abfd, section);
+#else
+ vma = bfd_section_vma(section);
+#endif
+#ifdef bfd_get_section_size
size = bfd_get_section_size(section);
+#else
+ size = bfd_section_size(section);
+#endif
if (pc < vma || pc >= vma + size)
return;
--
cgit v1.1

View File

@ -0,0 +1,17 @@
https://bugs.gentoo.org/695726
Created-By: Maciej S. Szmigiero <mail@maciej.szmigiero.name>
Created-By: Dennis Schridde <devurandom@gmx.net>
--- a/tools/perf/util/c++/clang.cpp.orig 2019-12-20 16:39:21.015363866 +0100
+++ b/tools/perf/util/c++/clang.cpp 2019-12-20 16:40:04.051639185 +0100
@@ -71,7 +71,11 @@
CompilerInstance Clang;
Clang.createDiagnostics();
+#if CLANG_VERSION_MAJOR < 9
Clang.setVirtualFileSystem(&*VFS);
+#else
+ Clang.createFileManager(&*VFS);
+#endif
#if CLANG_VERSION_MAJOR < 4
IntrusiveRefCntPtr<CompilerInvocation> CI =

View File

@ -0,0 +1,44 @@
From 55542113c690a567e728e40d4181d7d037fc21b0 Mon Sep 17 00:00:00 2001
From: Jiri Olsa <jolsa@kernel.org>
Date: Fri, 11 Oct 2019 14:21:55 +0200
Subject: perf tools: Propagate CFLAGS to libperf
Andi reported that 'make DEBUG=1' does not propagate to the libbperf
code. It's true also for the other flags. Changing the code to propagate
the global build flags to libperf compilation.
Reported-by: Andi Kleen <ak@linux.intel.com>
Signed-off-by: Jiri Olsa <jolsa@kernel.org>
Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Cc: Michael Petlan <mpetlan@redhat.com>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Link: http://lore.kernel.org/lkml/20191011122155.15738-1-jolsa@kernel.org
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
---
tools/perf/lib/core.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
(limited to 'tools/perf/lib/core.c')
diff --git a/tools/perf/lib/core.c b/tools/perf/lib/core.c
index d0b9ae422b9f..58fc894b76c5 100644
--- a/tools/perf/lib/core.c
+++ b/tools/perf/lib/core.c
@@ -5,11 +5,12 @@
#include <stdio.h>
#include <stdarg.h>
#include <unistd.h>
+#include <linux/compiler.h>
#include <perf/core.h>
#include <internal/lib.h>
#include "internal.h"
-static int __base_pr(enum libperf_print_level level, const char *format,
+static int __base_pr(enum libperf_print_level level __maybe_unused, const char *format,
va_list args)
{
return vfprintf(stderr, format, args);
--
cgit 1.2-0.3.lf.el7

View File

@ -1,33 +1,41 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>naota@gentoo.org</email>
</maintainer>
<maintainer type="person">
<email>dlan@gentoo.org</email>
<name>Yixun Lan</name>
</maintainer>
<use>
<flag name="demangle">
Enable C++ symbol name demangling, using libbfd from
<pkg>sys-devel/binutils</pkg>. When this flag is enabled, the
package will have to be rebuilt after every version bump of
binutils.
</flag>
<flag name="doc">
Build documentation and man pages. With this USE flag disabled,
the --help parameter for perf and its sub-tools will not be
available. This is optional because it depends on a few
documentation handling tools that are not always welcome on user
systems.
</flag>
<flag name="numa">Enable NUMA support</flag>
<flag name="perl">
Add support for Perl as a scripting language for perf tools.
</flag>
<flag name="unwind">
Use sys-libs/libunwind for frame unwinding support.
</flag>
</use>
<maintainer type="person">
<email>naota@gentoo.org</email>
</maintainer>
<maintainer type="person">
<email>dlan@gentoo.org</email>
<name>Yixun Lan</name>
</maintainer>
<maintainer type="person">
<email>amadio@gentoo.org</email>
<name>Guilherme Amadio</name>
</maintainer>
<use>
<flag name="clang">Enable builtin clang and LLVM support</flag>
<flag name="demangle">
Enable C++ symbol name demangling, using libbfd from
<pkg>sys-devel/binutils</pkg>. When this flag is enabled, the
package will have to be rebuilt after every version bump of
binutils.
</flag>
<flag name="doc">
Build documentation and man pages. With this USE flag disabled,
the --help parameter for perf and its sub-tools will not be
available. This is optional because it depends on a few
documentation handling tools that are not always welcome on user
systems.
</flag>
<flag name="numa">Enable NUMA support</flag>
<flag name="perl">
Add support for Perl as a scripting language for perf tools.
</flag>
<flag name="systemtap">
Add support to define SDT event in perf tools.
</flag>
<flag name="unwind">
Use sys-libs/libunwind for frame unwinding support.
</flag>
</use>
</pkgmetadata>

View File

@ -42,7 +42,7 @@ IUSE="audit debug +demangle +doc gtk numa perl python slang unwind"
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
RDEPEND="audit? ( sys-process/audit )
demangle? ( sys-devel/binutils:= )
demangle? ( sys-devel/binutils )
gtk? ( x11-libs/gtk+:2 )
numa? ( sys-process/numactl )
perl? ( dev-lang/perl )

View File

@ -0,0 +1,241 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PYTHON_COMPAT=( python3_{6,7} )
inherit bash-completion-r1 estack eutils llvm toolchain-funcs prefix python-r1 linux-info
MY_PV="${PV/_/-}"
MY_PV="${MY_PV/-pre/-git}"
DESCRIPTION="Userland tools for Linux Performance Counters"
HOMEPAGE="https://perf.wiki.kernel.org/"
LINUX_V="${PV:0:1}.x"
if [[ ${PV} == *_rc* ]] ; then
LINUX_VER=$(ver_cut 1-2).$(($(ver_cut 3)-1))
PATCH_VERSION=$(ver_cut 1-3)
LINUX_PATCH=patch-${PV//_/-}.xz
SRC_URI="https://www.kernel.org/pub/linux/kernel/v${LINUX_V}/testing/${LINUX_PATCH}
https://www.kernel.org/pub/linux/kernel/v${LINUX_V}/testing/v${PATCH_VERSION}/${LINUX_PATCH}"
elif [[ ${PV} == *.*.* ]] ; then
# stable-release series
LINUX_VER=$(ver_cut 1-2)
LINUX_PATCH=patch-${PV}.xz
SRC_URI="https://www.kernel.org/pub/linux/kernel/v${LINUX_V}/${LINUX_PATCH}"
else
LINUX_VER=${PV}
SRC_URI=""
fi
LINUX_SOURCES="linux-${LINUX_VER}.tar.xz"
SRC_URI+=" https://www.kernel.org/pub/linux/kernel/v${LINUX_V}/${LINUX_SOURCES}"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~alpha amd64 ~arm arm64 ~mips ~ppc ~ppc64 ~x86 amd64-linux ~x86-linux"
IUSE="audit clang crypt debug +demangle +doc gtk java lzma numa perl python slang systemtap unwind zlib"
# TODO babeltrace
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
RDEPEND="audit? ( sys-process/audit )
crypt? ( dev-libs/openssl:0= )
clang? (
<sys-devel/clang-10:*
<sys-devel/llvm-10:*
)
demangle? ( sys-libs/binutils-libs:= )
gtk? ( x11-libs/gtk+:2 )
java? ( virtual/jre:* )
lzma? ( app-arch/xz-utils )
numa? ( sys-process/numactl )
perl? ( dev-lang/perl:= )
python? ( ${PYTHON_DEPS} )
slang? ( sys-libs/slang )
systemtap? ( dev-util/systemtap )
unwind? ( sys-libs/libunwind )
zlib? ( sys-libs/zlib )
dev-libs/elfutils"
DEPEND="${RDEPEND}
>=sys-kernel/linux-headers-4.19
${LINUX_PATCH+dev-util/patchutils}
sys-devel/bison
sys-devel/flex
java? ( virtual/jdk )
doc? (
app-text/asciidoc
app-text/sgml-common
app-text/xmlto
sys-process/time
)"
S_K="${WORKDIR}/linux-${LINUX_VER}"
S="${S_K}/tools/perf"
CONFIG_CHECK="~PERF_EVENTS ~KALLSYMS"
pkg_setup() {
use clang && LLVM_MAX_SLOT=9 llvm_pkg_setup
}
src_unpack() {
local paths=(
tools/arch tools/build tools/include tools/lib tools/perf tools/scripts
scripts include lib "arch/*/lib"
)
# We expect the tar implementation to support the -j option (both
# GNU tar and libarchive's tar support that).
echo ">>> Unpacking ${LINUX_SOURCES} (${paths[*]}) to ${PWD}"
tar --wildcards -xpf "${DISTDIR}"/${LINUX_SOURCES} \
"${paths[@]/#/linux-${LINUX_VER}/}" || die
if [[ -n ${LINUX_PATCH} ]] ; then
eshopts_push -o noglob
ebegin "Filtering partial source patch"
filterdiff -p1 ${paths[@]/#/-i } -z "${DISTDIR}"/${LINUX_PATCH} \
> ${P}.patch
eend $? || die "filterdiff failed"
eshopts_pop
fi
local a
for a in ${A}; do
[[ ${a} == ${LINUX_SOURCES} ]] && continue
[[ ${a} == ${LINUX_PATCH} ]] && continue
unpack ${a}
done
}
src_prepare() {
default
if [[ -n ${LINUX_PATCH} ]] ; then
pushd "${S_K}" >/dev/null || die
eapply "${WORKDIR}"/${P}.patch
popd || die
fi
# Drop some upstream too-developer-oriented flags and fix the
# Makefile in general
sed -i \
-e "s:\$(sysconfdir_SQ)/bash_completion.d:$(get_bashcompdir):" \
"${S}"/Makefile.perf || die
# A few places still use -Werror w/out $(WERROR) protection.
sed -i -e 's:-Werror::' \
"${S}"/Makefile.perf "${S_K}"/tools/lib/bpf/Makefile || die
# Avoid the call to make kernelversion
echo "#define PERF_VERSION \"${MY_PV}\"" > PERF-VERSION-FILE
# The code likes to compile local assembly files which lack ELF markings.
find -name '*.S' -exec sed -i '$a.section .note.GNU-stack,"",%progbits' {} +
# Fix shebang to use python from prefix
if [[ -n "${EPREFIX}" ]]; then
hprefixify ${S_K}/scripts/bpf_helpers_doc.py
fi
}
puse() { usex $1 "" no; }
perf_make() {
# The arch parsing is a bit funky. The perf tools package is integrated
# into the kernel, so it wants an ARCH that looks like the kernel arch,
# but it also wants to know about the split value -- i386/x86_64 vs just
# x86. We can get that by telling the func to use an older linux version.
# It's kind of a hack, but not that bad ...
# LIBDIR sets a search path of perf-gtk.so. Bug 515954
local arch=$(tc-arch-kernel)
local java_dir
use java && java_dir="/etc/java-config-2/current-system-vm"
# FIXME: NO_CORESIGHT
# FIXME: NO_LIBBABELTRACE
emake V=1 VF=1 \
HOSTCC="$(tc-getBUILD_CC)" HOSTLD="$(tc-getBUILD_LD)" \
CC="$(tc-getCC)" CXX="$(tc-getCXX)" AR="$(tc-getAR)" LD="$(tc-getLD)" NM="$(tc-getNM)" \
PKG_CONFIG="$(tc-getPKG_CONFIG)" \
prefix="${EPREFIX}/usr" bindir_relative="bin" \
EXTRA_CFLAGS="${CFLAGS}" \
ARCH="${arch}" \
JDIR="${java_dir}" \
LIBCLANGLLVM=$(usex clang 1 "") \
NO_AUXTRACE="" \
NO_BACKTRACE="" \
NO_CORESIGHT=1 \
NO_DEMANGLE=$(puse demangle) \
NO_GTK2=$(puse gtk) \
NO_JVMTI=$(puse java) \
NO_LIBAUDIT=$(puse audit) \
NO_LIBBABELTRACE=1 \
NO_LIBBIONIC=1 \
NO_LIBBPF="" \
NO_LIBCRYPTO=$(puse crypt) \
NO_LIBDW_DWARF_UNWIND="" \
NO_LIBELF="" \
NO_LIBNUMA=$(puse numa) \
NO_LIBPERL=$(puse perl) \
NO_LIBPYTHON=$(puse python) \
NO_LIBUNWIND=$(puse unwind) \
NO_SDT=$(puse systemtap) \
NO_SLANG=$(puse slang) \
NO_LZMA=$(puse lzma) \
NO_ZLIB= \
WERROR=0 \
LIBDIR="/usr/libexec/perf-core" \
"$@"
}
src_compile() {
# test-clang.bin not build with g++
if use clang; then
pushd "${S_K}/tools/build/feature/" || die
make V=1 CXX=${CHOST}-clang++ test-clang.bin || die
popd
fi
perf_make -f Makefile.perf
use doc && perf_make -C Documentation
}
src_test() {
:
}
src_install() {
_install_python_ext() {
perf_make -f Makefile.perf install-python_ext DESTDIR="${D}"
}
perf_make -f Makefile.perf install DESTDIR="${D}"
if use python; then
python_foreach_impl _install_python_ext
fi
rm -rv "${ED}"/usr/share/doc/perf-tip || die
if use gtk; then
local libdir
libdir="$(get_libdir)"
# on some arches it ends up in lib even on 64bit, ppc64 for instance.
[[ -f "${ED}"/usr/lib/libperf-gtk.so ]] && libdir="lib"
mv "${ED}"/usr/${libdir}/libperf-gtk.so \
"${ED}"/usr/libexec/perf-core || die
fi
dodoc CREDITS
dodoc *txt Documentation/*.txt
if use doc ; then
HTML_DOCS="Documentation/*.html" einstalldocs
doman Documentation/*.1
fi
}
pkg_postinst() {
if ! use doc ; then
elog "Without the doc USE flag you won't get any documentation nor man pages."
elog "And without man pages, you won't get any --help output for perf and its"
elog "sub-tools."
fi
}

File diff suppressed because it is too large Load Diff

View File

@ -1,3 +1,4 @@
DIST dnsmasq-2.76.tar.xz 480796 SHA256 4b92698dee19ca0cb2a8f2e48f1d2dffd01a21eb15d1fbed4cf085630c8c9f96 SHA512 8a930f3e7cdc0c291ce89bea8128a4b8438b9aa9e660a2ac037e0baa4c5c74f4482a8f83b0410066a759444b3c4e1cf62a9beb625e38509690227996de10e06a WHIRLPOOL e0710f879fd6f8e27581b8c400704660941601cd2077f32d7c2b3f9791c6be8404469770e74f7e1a03880507a32a30c19b89f6a953a757ad01305f829448f0bc
DIST dnsmasq-2.77.tar.xz 487244 SHA256 6eac3b1c50ae25170e3ff8c96ddb55236cf45007633fdb8a35b1f3e02f5f8b8a SHA512 6ca98a71a8fdfd606e29c58b34dadfa63148c39f931570cca67a287e044d52c6ec2f8acbf5620ada3312e9db3a2fd63877188d829c070beaa730607e3309e768 WHIRLPOOL 94a4fdc23d81fe38456756d81e53f1258ccd360c4d22952c889f2d5f76d401696587a5362f5aacd1ef86799874ac9eae3c3879d0fe81b66beeafb2f3ce0e01d0
DIST dnsmasq-2.78.tar.xz 489172 SHA256 89949f438c74b0c7543f06689c319484bd126cc4b1f8c745c742ab397681252b SHA512 9b79b84e5a768d52f90f6335ccef2c404ecd7a13e78e49f4cd0755fffc6cf34d0dc96ad4c72cad1dab3c5743a8d0d789b3e9b6e625b03c5675bb898ca61a698b WHIRLPOOL 3fdde3511c39b5f42a8166936576b60f7114a54388e317136ef9c4b5770c02106706dc0612361b18d25fa16a340e613c98aa78973e2dc038dc93f2a664d27606
DIST dnsmasq-2.82.tar.xz 509904 BLAKE2B 4df3778b2ec6775a6147f66d53b8dd7068d97872c6e5d3a16716faeb0ca489331560c77d6fa9cc913af0d7e0320a6ef463c690bb9e3fdbd8c266ed273e5a5403 SHA512 faf36efdaa3abe84994e46aea018b0a324218d42814baac056ca635f6d03f1301e7b4d958f92b272a8e3a7ac358f3a4e2606129a217587b471aedb3ce23e903b

View File

@ -0,0 +1,205 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit toolchain-funcs flag-o-matic systemd
DESCRIPTION="Small forwarding DNS server"
HOMEPAGE="http://www.thekelleys.org.uk/dnsmasq/doc.html"
SRC_URI="http://www.thekelleys.org.uk/dnsmasq/${P}.tar.xz"
LICENSE="|| ( GPL-2 GPL-3 )"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 ~s390 sparc x86"
IUSE="auth-dns conntrack dbus +dhcp dhcp-tools dnssec +dumpfile id idn libidn2"
IUSE+=" +inotify ipv6 lua nls script selinux static tftp"
DM_LINGUAS=(de es fi fr id it no pl pt_BR ro)
BDEPEND="
app-arch/xz-utils
virtual/pkgconfig
nls? ( sys-devel/gettext )
"
COMMON_DEPEND="
acct-group/dnsmasq
acct-user/dnsmasq
dbus? ( sys-apps/dbus:= )
idn? (
!libidn2? ( net-dns/libidn:0= )
libidn2? ( >=net-dns/libidn2-2.0:= )
)
lua? ( dev-lang/lua:* )
conntrack? ( net-libs/libnetfilter_conntrack:= )
nls? ( sys-devel/gettext )
"
DEPEND="${COMMON_DEPEND}
dnssec? (
dev-libs/nettle:=[gmp]
static? ( >=dev-libs/nettle-3.4[static-libs(+)] )
)
"
RDEPEND="${COMMON_DEPEND}
dnssec? (
!static? ( >=dev-libs/nettle-3.4:=[gmp] )
)
selinux? ( sec-policy/selinux-dnsmasq )
"
REQUIRED_USE="
dhcp-tools? ( dhcp )
lua? ( script )
libidn2? ( idn )"
use_have() {
local no_only
if [[ ${1} == '-n' ]]; then
no_only=1
shift
fi
local useflag="${1}"
shift
local uword="${1:-${useflag}}"
shift
while [[ ${uword} ]]; do
uword="${uword^^}"
if ! use "${useflag}"; then
printf -- " -DNO_%s" "${uword}"
elif [[ -z "${no_only}" ]]; then
printf -- " -DHAVE_%s" "${uword}"
fi
uword="${1}"
shift
done
}
pkg_pretend() {
if use static; then
einfo "Only sys-libs/gmp and dev-libs/nettle are statically linked."
use dnssec || einfo "Thus, ${P}[!dnssec,static] makes no sense;" \
"in this case the static USE flag does nothing."
fi
}
src_prepare() {
default
sed -i -r 's:lua5.[0-9]+:lua:' Makefile || die
sed -i "s:%%PREFIX%%:${EPREFIX}/usr:" \
dnsmasq.conf.example || die
}
src_configure() {
COPTS=(
$(use_have -n auth-dns auth)
$(use_have conntrack)
$(use_have dbus)
$(use libidn2 || use_have idn)
$(use_have libidn2)
$(use_have -n inotify)
$(use_have -n dhcp dhcp dhcp6)
$(use_have -n ipv6 ipv6 dhcp6)
$(use_have -n id id)
$(use_have lua luascript)
$(use_have -n script)
$(use_have -n tftp)
$(use_have dnssec)
$(use_have static dnssec_static)
$(use_have -n dumpfile)
)
}
src_compile() {
emake \
PREFIX=/usr \
MANDIR=/usr/share/man \
CC="$(tc-getCC)" \
PKG_CONFIG="$(tc-getPKG_CONFIG)" \
CFLAGS="${CFLAGS}" \
LDFLAGS="${LDFLAGS}" \
COPTS="${COPTS[*]}" \
CONFFILE="/etc/${PN}.conf" \
all$(use nls && printf -- "-i18n\n")
use dhcp-tools && emake -C contrib/lease-tools \
PREFIX=/usr \
MANDIR=/usr/share/man \
CC="$(tc-getCC)" \
PKG_CONFIG="$(tc-getPKG_CONFIG)" \
CFLAGS="${CFLAGS}" \
LDFLAGS="${LDFLAGS}" \
all
}
src_install() {
local lingua puid
emake \
PREFIX=/usr \
MANDIR=/usr/share/man \
COPTS="${COPTS[*]}" \
DESTDIR="${ED}" \
install$(use nls && printf -- "-i18n\n")
for lingua in "${DM_LINGUAS[@]}"; do
has ${lingua} ${LINGUAS-${lingua}} \
|| rm -rf "${ED}"/usr/share/locale/${lingua}
done
[[ -d "${D}"/usr/share/locale/ ]] && \
rmdir --ignore-fail-on-non-empty "${ED}"/usr/share/locale/
dodoc CHANGELOG CHANGELOG.archive FAQ dnsmasq.conf.example
dodoc -r logo
docinto html/
dodoc *.html
newinitd "${FILESDIR}"/dnsmasq-init-r4 ${PN}
newconfd "${FILESDIR}"/dnsmasq.confd-r1 ${PN}
insinto /etc/logrotate.d
newins "${FILESDIR}"/dnsmasq.logrotate ${PN}
insinto /etc
newins dnsmasq.conf.example dnsmasq.conf
insinto /usr/share/dnsmasq
doins trust-anchors.conf
if use dhcp; then
keepdir /var/lib/misc
newinitd "${FILESDIR}"/dnsmasq-init-dhcp-r3 ${PN}
fi
if use dbus; then
insinto /etc/dbus-1/system.d
doins dbus/dnsmasq.conf
fi
if use dhcp-tools; then
dosbin contrib/lease-tools/{dhcp_release,dhcp_lease_time}
doman contrib/lease-tools/{dhcp_release,dhcp_lease_time}.1
if use ipv6; then
dosbin contrib/lease-tools/dhcp_release6
doman contrib/lease-tools/dhcp_release6.1
fi
fi
systemd_newunit "${FILESDIR}"/${PN}.service-r1 ${PN}.service
}
pkg_preinst() {
[[ -f /var/lib/misc/dnsmasq.leases ]] && \
cp /var/lib/misc/dnsmasq.leases "${T}"
}
pkg_postinst() {
[[ -f "${T}"/dnsmasq.leases ]] && \
cp "${T}"/dnsmasq.leases /var/lib/misc/dnsmasq.leases
}

View File

@ -0,0 +1,35 @@
#!/sbin/openrc-run
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License, v2 or later
extra_started_commands="reload rotate"
pidfile="/var/run/dnsmasq.pid"
command="/usr/sbin/dnsmasq"
command_args="-x ${pidfile} ${DNSMASQ_OPTS}"
retry="TERM/3/TERM/5"
depend() {
provide dns
need localmount net
after bootmisc
use logger
}
start_pre() {
checkpath --owner dnsmasq:dnsmasq \
--mode 0644 \
--file /var/lib/misc/dnsmasq.leases
}
reload() {
ebegin "Reloading ${RC_SVCNAME}"
start-stop-daemon --signal HUP --pidfile "${pidfile}"
eend $?
}
rotate() {
ebegin "Reopening ${RC_SVCNAME} log file"
start-stop-daemon --signal USR2 --pidfile "${pidfile}"
eend $?
}

View File

@ -0,0 +1,29 @@
#!/sbin/openrc-run
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License, v2 or later
extra_started_commands="reload rotate"
pidfile="/var/run/dnsmasq.pid"
command="/usr/sbin/dnsmasq"
command_args="-x ${pidfile} ${DNSMASQ_OPTS}"
retry="TERM/3/TERM/5"
depend() {
provide dns
need localmount net
after bootmisc
use logger
}
reload() {
ebegin "Reloading ${RC_SVCNAME}"
start-stop-daemon --signal HUP --pidfile "${pidfile}"
eend $?
}
rotate() {
ebegin "Reopening ${RC_SVCNAME} log file"
start-stop-daemon --signal USR2 --pidfile "${pidfile}"
eend $?
}

View File

@ -0,0 +1,8 @@
/var/log/dnsmasq.log {
create 640 dnsmasq root
notifempty
missingok
postrotate
test -r /var/run/dnsmasq.pid && kill -USR2 "$(head -n1 /var/run/dnsmasq.pid)"
endscript
}

View File

@ -11,6 +11,7 @@
<flag name="dhcp-tools">Install extra command line tools for manually managing DHCP leases.</flag>
<flag name="dhcp">Enable support for acting as a DHCP server.</flag>
<flag name="dnssec">Enable support DNSSEC validation and caching.</flag>
<flag name="dumpfile">Include code to dump packets to a libpcap-format file for debugging</flag>
<flag name="id">Whether report *.bind CHAOS info to clients, otherwise forward such requests upstream instead</flag>
<flag name="libidn2">Enable support for Internationalized Domain Names, via net-dns/libidn2 rather than net-dns/libidn</flag>
<flag name="script">Enable support for calling scripts when leases change.</flag>

View File

@ -0,0 +1 @@
DIST binutils-config-5.3.2.tar.xz 6840 BLAKE2B 4f02b8d1f3f8d4adca811772edba6167fc0e739f8ff1e895f30745eca45b559da6622bb76a0cac6016d6e864fe7ad6c921c64c7ec1c18c130b3a64a1dd7b9cbc SHA512 03dfecf46fee941b7b9fc35b63ffd22c795ab54f0444f16fc00ed44d27c81f6baaca33170fb700cfc4d767be469f305890882839536363bc466ad200d28d2228

View File

@ -0,0 +1,43 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit prefix
if [[ ${PV} == 9999 ]]; then
EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/binutils-config.git"
inherit git-r3
else
SRC_URI="https://dev.gentoo.org/~slyfox/distfiles/${P}.tar.xz"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86"
fi
DESCRIPTION="Utility to change the binutils version being used"
HOMEPAGE="https://wiki.gentoo.org/wiki/Project:Toolchain"
LICENSE="GPL-2"
SLOT="0"
IUSE="+native-symlinks"
# We also RDEPEND on sys-apps/findutils which is in base @system
RDEPEND="sys-apps/gentoo-functions"
src_compile() {
emake DESTDIR="${D}" PV="${PV}" USE_NATIVE_LINKS="$(usex native-symlinks)"
}
src_install() {
emake DESTDIR="${D}" PV="${PV}" install
use prefix && eprefixify "${ED}"/usr/bin/${PN}
}
pkg_postinst() {
# Re-register all targets. USE flags or new versions can change
# installed symlinks.
local x
for x in $(binutils-config -C -l 2>/dev/null | awk '$NF == "*" { print $2 }') ; do
binutils-config ${x}
done
}

View File

@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>toolchain@gentoo.org</email>
<name>Gentoo Toolchain Project</name>
</maintainer>
<maintainer type="project">
<email>toolchain@gentoo.org</email>
<name>Gentoo Toolchain Project</name>
</maintainer>
<use>
<flag name="native-symlinks">Install native symlinks like 'as' or 'ar' to /usr/bin. Otherwise keep only ${CTARGET}-as and friends.</flag>
</use>
</pkgmetadata>

View File

@ -1,17 +1,5 @@
DIST binutils-2.25.1-patches-1.1.tar.xz 18724 BLAKE2B 0a8380427247463340b28fa28171f127b9a3c8163ce63d103d1d15492c30df9cf24a5122ff271dc80425a0b212438f5d39f99783fda52e7b5e861a3f5f0e2992 SHA512 209c55bf26b51d8c513b40abd2d95f687159c4e964a6c732924f277d04c97323c427fe452c63d5ec6962dcd8892d6d5d807ba88826739425bce6812a31f573dd
DIST binutils-2.25.1.tar.bz2 24163561 BLAKE2B 25fc879f99d6547fd0dc911e74c35cf52f3da2c0f9fd758031dda90da63cdd819345d0a69f692a40dee9f63895d816cee7910a9f48ce56e7b4251827768946f4 SHA512 0b36dda0e6d32cd25613c0e64b56b28312515c54d6a159efd3db9a86717f114ab0a0a1f69d08975084d55713ebaeab64e4085c9b3d1c3fa86712869f80eb954d
DIST binutils-2.26.1-patches-1.0.tar.xz 11212 BLAKE2B f785930a9bf994312f3a525ef46727c582e6cd3992b5648bdf4c787f55fed4b36c69be3ac7d9962dcd72b6dbe0155dbf23d1daa14be5c7ad5da1cf634f2522aa SHA512 c520967659c66f05f7ad795bb0bc2522e139977ab3ae8cfd9ec0d093a412a7291d1cabaa6b429c618fcf7253458a6fbe5a7dc3f62e0ac9762667308067db075c
DIST binutils-2.26.1.tar.bz2 25595243 BLAKE2B 5114ab9ebfc1097f0ebfd1e134ea098b583724d2c822fb7365b6212be0edfd313961bcee8de1193f359b7e904b23146036bfa9e3e7bc0621160bf85f573a8d44 SHA512 9d9165609fd3b0f20d616f9891fc8e2b466eb13e2bfce40125e12427f8f201d20e2b8322bb6cb2b45e8df812f0e8ac059149f8a1f69ba3ed9d86a35c6a540b67
DIST binutils-2.27-patches-1.1.tar.xz 9828 BLAKE2B 158787c0ee2b26ad78d90b0ce3c8c0c79256d2e85d5f4b582b275953235555a6323f791a98e1de357559994fef284a910a54749dcfc3ac0aea9cfad6ee70980e SHA512 5059a784344e0554965473808b9d72af34f793e5538e82010adbbf586d583ddfd9f5ca637e6ba658e566c406244ae79b2ab5135995bcfedc8a96b9293366199d
DIST binutils-2.27.tar.bz2 26099568 BLAKE2B e9433b4dc28b0aeaa31d21fc039459e73c47050bb79dc0cf3f00e384604c37c0c1704ac6cba79c6b15edcbfd13f17b8013efeaca422d5b0e5a7f60c202fc5d18 SHA512 cf276f84935312361a2ca077e04d0b469d23a3aed979d8ba5d92ea590904ffb2c2e7ed12cc842822bfc402836be86f479660cef3791aa62f3753d8a1a6f564cb
DIST binutils-2.28.1-patches-1.0.tar.xz 19772 BLAKE2B 146b393b49ba868c7c064c58275ba1af3b7cbc7e97cc55b03c80d8b391955c40dd4e81ac4eeabcdfb53e41ea334a377d86300e037f8ccb810555a48dfa9da878 SHA512 c2c7d22e1013e79040c4dcb4d70649e78a070976ba3a4bc2ceb4805827b9d93eea1805c85db4fcb6b31be5218c3d7b42a4990437a7c01dc01fd7e9dedb606828
DIST binutils-2.28.1.tar.bz2 28120394 BLAKE2B 3a0ed2bcf0c859638546b7460d9e6f0a55518402ff0c65c90ce462a318f5ae6690961616d188ce6cf0271c9f2fb8b7902782d32cf0e711068c53d3d06956d89e SHA512 5ec5212497b0fa8324f6a0884c284cb71c01942bbd39356d1ae745a5c9d97274c10f9d9c723f4bef6f0217662dfcd0c36e4e955a7599b11217658dc7b97553eb
DIST binutils-2.29.1-patches-3.tar.xz 20904 BLAKE2B 5549cb2412123e4ad3a13935762cc0dca46215950dbf38a149caf4c6416da382a0fd7ecffe97b10bce4dfdcef5edc2673d49bb21e9d37be37e33b454a8c2bc1a SHA512 ba54efaf9e9f668d2922972acd2cdf5c3e6f174cfcc73d29953ab4ba6e157ce0cb500c583568a4e3baaaa92c9d30c394a327f29b51292acc66f8d3f20f5eae2a
DIST binutils-2.29.1.tar.bz2 29123355 BLAKE2B 83de518a27bae0f13c57b1979493dd7f7cabae424cff5e8495d1f064da24b6ef9e1c19d1d1adad2dca7142372782023f66b4b4223170a49b96ba3834266fe878 SHA512 4063d34555526922376ccceb3f14b43e287442e82a8038cf50f4f51ad97d438c672c0e310ca4b856c9aff5aa9911073e256e8298a7a3f1844eeb60b90d955592
DIST binutils-2.30-patches-5.tar.xz 590864 BLAKE2B 71de4d08f92ab1898ad576a21763f955067cbbed543250888e0c5d51f4ef77d0d829049e9a835691cf2de03965fbcc9bcfa092eb304c03f9b885e7a3dadab286 SHA512 029b3be6ae9b8620f8580a35701bd4517b4e0232ff3cf9983b3808475c7443cbf500b6cace2c052df0bd1e47202838f4d2453238db28709a947117071d9ae804
DIST binutils-2.30.tar.xz 20286700 BLAKE2B 2dd5436a15a601011a1950e6082ec00082f5916fb82ce95ceab424fd8dc19f6daa7ac32a149f222ccdcc603354165cc206fde070eaa44fe2cc5e57486efc7868 SHA512 e747ea20d8d79fcd21b9d9f6695059caa7189d60f19256da398e34b789fea9a133c32b192e9693b5828d27683739b0198431bf8b3e39fb3b04884cf89d9aa839
DIST binutils-2.31.1-patches-7.tar.xz 76828 BLAKE2B 354e7c3aa76c0cfe8fc6bb419a5b19294c0be09ebdff2fc4533dd16116fcd4f4a1b4c8db02233dabe33ca68347e0a30e542456988a4ead407edb47ed031e018c SHA512 c84ff9cd9f5b1e313e93d0f25bb4244950a73e0d97ec4dacb8763382219a08a01b16a8e93173032232ea4239098b29448331ed461f792e663e1117eb0811f85b
DIST binutils-2.31.1.tar.xz 20467996 BLAKE2B 6b914df1fbb7cf54f2159f71b2c2b09f3f6a569b7a3cb4cf9790d0a3733a7548bc0ea32334a178ed3b56e8b97656ae99c7abaf212601beeaeae9a0884c0f6051 SHA512 0fca326feb1d5f5fe505a827b20237fe3ec9c13eaf7ec7e35847fd71184f605ba1cefe1314b1b8f8a29c0aa9d88162849ee1c1a3e70c2f7407d88339b17edb30
DIST binutils-2.32-patches-2.tar.xz 145672 BLAKE2B 8218e621f99cb4bcd1638c3011449b94480d207eaeb79cf75c0072e0f1a86bfd1603fc4515bc40d3ac1921a18b9a211b20568f59b11b13eb44e6cff1329c5af9 SHA512 55c25a603f6175af3ade6848e5c1faba06a147d72e9a4f53d44502d97db76499485a67b278a654d18884714a7bf7b360c77c9e42dba3cdc188f805bfe461f09f
DIST binutils-2.32.tar.xz 20774880 BLAKE2B d1bdbd9c8487c091665c197974ce4bdf520b7a67ed6997a81b87e6a0af9514a091458244f583acec5ae580ac2ee5e908f67f483b8e5263cd18ced794cb235da6 SHA512 d326408f12a03d9a61a9de56584c2af12f81c2e50d2d7e835d51565df8314df01575724afa1e43bd0db45cfc9916b41519b67dfce03232aa4978704492a6994a
DIST binutils-2.35-patches-1.tar.xz 12216 BLAKE2B a811449da684e3501a7520a26639e04dda2f2d2fc8610974293eff3e4a1e23c4abeb97f52fe3b796679452bd6e3a5330fef4beb6f64b9ce2a1162076803390a0 SHA512 b8da16a4d97b264da925cc939b54bedbc148eb72a8d60f79d7ed222e9e299dca2a4f1fad4a6d60448d9d196c11331443eca0508dcbb85cb4c2da6c67bfaf4cd2
DIST binutils-2.35.tar.xz 22042160 BLAKE2B 72ea79edf3a77aa93dcf38274123abbae5ce8f800a95e6379b4c8807050b05c2dfec314f06c027b1343c5570f369324fa3e195d7e0db5f8a57c0579937c49d3f SHA512 9f222e4ab6720036402d03904fb11b73ab87714b85cd84997f7d357f405c7e10581d70202f9165a1ee0c70538632db27ecc9dfe627dddb1e6bc7edb1537cf786
DIST binutils-9999-patches-4.tar.xz 17480 BLAKE2B 8e85fb15c740e19bb27482bea134342970fe1af8c39639a16a087c1e3b7386e469d9db6b0d1c0e1e62d550c145814e3013ef65708e91313b648a94ac5c4cafed SHA512 6d09513da6995b83c24afd0799f918281198c412cb65f04e07002fed1b036fb1c6cb075be499a2415e8b286f288b80c02fae1b1dfcd288fe216254d31206b6e3

View File

@ -1,10 +0,0 @@
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI="4"
PATCHVER="1.1"
ELF2FLT_VER=""
inherit toolchain-binutils
KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~amd64-fbsd ~x86-fbsd"

View File

@ -1,10 +0,0 @@
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI="5"
PATCHVER="1.0"
ELF2FLT_VER=""
inherit toolchain-binutils
KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~amd64-fbsd ~x86-fbsd"

View File

@ -1,10 +0,0 @@
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI="5"
PATCHVER="1.1"
ELF2FLT_VER=""
inherit toolchain-binutils
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"

View File

@ -1,10 +0,0 @@
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI="5"
PATCHVER="1.0"
ELF2FLT_VER=""
inherit toolchain-binutils
KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~amd64-fbsd ~x86-fbsd"

View File

@ -1,12 +0,0 @@
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI="5"
PATCHVER="3"
ELF2FLT_VER=""
inherit toolchain-binutils
KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh ~sparc x86 ~amd64-fbsd ~x86-fbsd"
PATCHES=( "${FILESDIR}/${P}-nogoldtest.patch" )

View File

@ -1,419 +0,0 @@
# Copyright 1999-2018 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
inherit eutils libtool flag-o-matic gnuconfig multilib versionator
DESCRIPTION="Tools necessary to build programs"
HOMEPAGE="https://sourceware.org/binutils/"
LICENSE="GPL-3+"
IUSE="+cxx doc multitarget +nls static-libs test"
# Variables that can be set here:
# PATCH_VER - the patchset version
# Default: empty, no patching
# PATCH_BINUTILS_VER - the binutils version in the patchset name
# - Default: PV
# PATCH_DEV - Use download URI https://dev.gentoo.org/~{PATCH_DEV}/distfiles/...
# for the patchsets
# Default: dilfridge :)
PATCH_VER=5
case ${PV} in
9999)
BVER="git"
EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git"
inherit git-r3
S=${WORKDIR}/binutils
EGIT_CHECKOUT_DIR=${S}
;;
*)
BVER=${PV}
SRC_URI="mirror://gnu/binutils/binutils-${BVER}.tar.xz https://sourceware.org/pub/binutils/releases/binutils-${BVER}.tar.xz"
;;
esac
SLOT="${BVER}"
KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~amd64-fbsd ~x86-fbsd"
#
# The Gentoo patchset
#
PATCH_BINUTILS_VER=${PATCH_BINUTILS_VER:-${BVER}}
PATCH_DEV=${PATCH_DEV:-slyfox}
[[ -z ${PATCH_VER} ]] || SRC_URI="${SRC_URI}
https://dev.gentoo.org/~${PATCH_DEV}/distfiles/binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz"
#
# The cross-compile logic
#
export CTARGET=${CTARGET:-${CHOST}}
if [[ ${CTARGET} == ${CHOST} ]] ; then
if [[ ${CATEGORY} == cross-* ]] ; then
export CTARGET=${CATEGORY#cross-}
fi
fi
is_cross() { [[ ${CHOST} != ${CTARGET} ]] ; }
#
# The dependencies
#
RDEPEND="
>=sys-devel/binutils-config-3
sys-libs/zlib
"
DEPEND="${RDEPEND}
doc? ( sys-apps/texinfo )
test? ( dev-util/dejagnu )
nls? ( sys-devel/gettext )
sys-devel/flex
virtual/yacc
"
if is_cross ; then
# The build assumes the host has libiberty and such when cross-compiling
# its build tools. We should probably make binutils itself build a local
# copy to use, but until then, be lazy.
DEPEND+=" >=sys-libs/binutils-libs-${PV}"
fi
MY_BUILDDIR=${WORKDIR}/build
src_unpack() {
case ${PV} in
9999)
git-r3_src_unpack;
;;
*)
default
;;
esac
mkdir -p "${MY_BUILDDIR}"
}
src_prepare() {
if [[ ! -z ${PATCH_VER} ]] ; then
einfo "Applying binutils-${PATCH_BINUTILS_VER} patchset ${PATCH_VER}"
eapply "${WORKDIR}/patch"/*.patch
fi
# This check should probably go somewhere else, like pkg_pretend.
if [[ ${CTARGET} == *-uclibc* ]] ; then
if grep -qs 'linux-gnu' "${S}"/ltconfig ; then
die "sorry, but this binutils doesn't yet support uClibc :("
fi
fi
# Make sure our explicit libdir paths don't get clobbered. #562460
sed -i \
-e 's:@bfdlibdir@:@libdir@:g' \
-e 's:@bfdincludedir@:@includedir@:g' \
{bfd,opcodes}/Makefile.in || die
# Fix locale issues if possible #122216
if [[ -e ${FILESDIR}/binutils-configure-LANG.patch ]] ; then
einfo "Fixing misc issues in configure files"
for f in $(find "${S}" -name configure -exec grep -l 'autoconf version 2.13' {} +) ; do
ebegin " Updating ${f/${S}\/}"
patch "${f}" "${FILESDIR}"/binutils-configure-LANG.patch >& "${T}"/configure-patch.log \
|| eerror "Please file a bug about this"
eend $?
done
fi
# Fix conflicts with newer glibc #272594
if [[ -e libiberty/testsuite/test-demangle.c ]] ; then
sed -i 's:\<getline\>:get_line:g' libiberty/testsuite/test-demangle.c
fi
# Apply things from PATCHES and user dirs
default
# Run misc portage update scripts
gnuconfig_update
elibtoolize --portage --no-uclibc
}
toolchain-binutils_bugurl() {
printf "https://bugs.gentoo.org/"
}
toolchain-binutils_pkgversion() {
printf "Gentoo ${BVER}"
[[ -n ${PATCH_VER} ]] && printf " p${PATCH_VER}"
}
src_configure() {
# Setup some paths
LIBPATH=/usr/$(get_libdir)/binutils/${CTARGET}/${BVER}
INCPATH=${LIBPATH}/include
DATAPATH=/usr/share/binutils-data/${CTARGET}/${BVER}
if is_cross ; then
TOOLPATH=/usr/${CHOST}/${CTARGET}
else
TOOLPATH=/usr/${CTARGET}
fi
BINPATH=${TOOLPATH}/binutils-bin/${BVER}
# Make sure we filter $LINGUAS so that only ones that
# actually work make it through #42033
strip-linguas -u */po
# Keep things sane
strip-flags
local x
echo
for x in CATEGORY CBUILD CHOST CTARGET CFLAGS LDFLAGS ; do
einfo "$(printf '%10s' ${x}:) ${!x}"
done
echo
cd "${MY_BUILDDIR}"
local myconf=()
# enable gold (installed as ld.gold) and ld's plugin architecture
if use cxx ; then
myconf+=( --enable-gold )
myconf+=( --enable-plugins )
fi
if use nls ; then
myconf+=( --without-included-gettext )
else
myconf+=( --disable-nls )
fi
myconf+=( --with-system-zlib )
# For bi-arch systems, enable a 64bit bfd. This matches
# the bi-arch logic in toolchain.eclass. #446946
# We used to do it for everyone, but it's slow on 32bit arches. #438522
case $(tc-arch) in
ppc|sparc|x86) myconf+=( --enable-64-bit-bfd ) ;;
esac
use multitarget && myconf+=( --enable-targets=all --enable-64-bit-bfd )
[[ -n ${CBUILD} ]] && myconf+=( --build=${CBUILD} )
is_cross && myconf+=(
--with-sysroot="${EPREFIX}"/usr/${CTARGET}
--enable-poison-system-directories
)
# glibc-2.3.6 lacks support for this ... so rather than force glibc-2.5+
# on everyone in alpha (for now), we'll just enable it when possible
has_version ">=${CATEGORY}/glibc-2.5" && myconf+=( --enable-secureplt )
has_version ">=sys-libs/glibc-2.5" && myconf+=( --enable-secureplt )
# mips can't do hash-style=gnu ...
if [[ $(tc-arch) != mips ]] ; then
myconf+=( --enable-default-hash-style=gnu )
fi
myconf+=(
--prefix="${EPREFIX}"/usr
--host=${CHOST}
--target=${CTARGET}
--datadir="${EPREFIX}"${DATAPATH}
--datarootdir="${EPREFIX}"${DATAPATH}
--infodir="${EPREFIX}"${DATAPATH}/info
--mandir="${EPREFIX}"${DATAPATH}/man
--bindir="${EPREFIX}"${BINPATH}
--libdir="${EPREFIX}"${LIBPATH}
--libexecdir="${EPREFIX}"${LIBPATH}
--includedir="${EPREFIX}"${INCPATH}
--enable-obsolete
--enable-shared
--enable-threads
# Newer versions (>=2.27) offer a configure flag now.
--enable-relro
# Newer versions (>=2.24) make this an explicit option. #497268
--enable-install-libiberty
--disable-werror
--with-bugurl="$(toolchain-binutils_bugurl)"
--with-pkgversion="$(toolchain-binutils_pkgversion)"
$(use_enable static-libs static)
${EXTRA_ECONF}
# Disable modules that are in a combined binutils/gdb tree. #490566
--disable-{gdb,libdecnumber,readline,sim}
# Strip out broken static link flags.
# https://gcc.gnu.org/PR56750
--without-stage1-ldflags
# Change SONAME to avoid conflict across
# {native,cross}/binutils, binutils-libs. #666100
--with-extra-soversion-suffix=gentoo-${CATEGORY}-${PN}-$(usex multitarget mt st)
)
echo ./configure "${myconf[@]}"
"${S}"/configure "${myconf[@]}" || die
# Prevent makeinfo from running if doc is unset.
if ! use doc ; then
sed -i \
-e '/^MAKEINFO/s:=.*:= true:' \
Makefile || die
fi
}
src_compile() {
cd "${MY_BUILDDIR}"
# see Note [tooldir hack for ldscripts]
emake tooldir="${EPREFIX}${TOOLPATH}" all
# only build info pages if the user wants them
if use doc ; then
emake info
fi
# we nuke the manpages when we're left with junk
# (like when we bootstrap, no perl -> no manpages)
find . -name '*.1' -a -size 0 -delete
}
src_test() {
cd "${MY_BUILDDIR}"
emake -k check
}
src_install() {
local x d
cd "${MY_BUILDDIR}"
# see Note [tooldir hack for ldscripts]
emake DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install
rm -rf "${ED}"/${LIBPATH}/bin
use static-libs || find "${ED}" -name '*.la' -delete
# Newer versions of binutils get fancy with ${LIBPATH} #171905
cd "${ED}"/${LIBPATH}
for d in ../* ; do
[[ ${d} == ../${BVER} ]] && continue
mv ${d}/* . || die
rmdir ${d} || die
done
# Now we collect everything intp the proper SLOT-ed dirs
# When something is built to cross-compile, it installs into
# /usr/$CHOST/ by default ... we have to 'fix' that :)
if is_cross ; then
cd "${ED}"/${BINPATH}
for x in * ; do
mv ${x} ${x/${CTARGET}-}
done
if [[ -d ${ED}/usr/${CHOST}/${CTARGET} ]] ; then
mv "${ED}"/usr/${CHOST}/${CTARGET}/include "${ED}"/${INCPATH}
mv "${ED}"/usr/${CHOST}/${CTARGET}/lib/* "${ED}"/${LIBPATH}/
rm -r "${ED}"/usr/${CHOST}/{include,lib}
fi
fi
insinto ${INCPATH}
local libiberty_headers=(
# Not all the libiberty headers. See libiberty/Makefile.in:install_to_libdir.
demangle.h
dyn-string.h
fibheap.h
hashtab.h
libiberty.h
objalloc.h
splay-tree.h
)
doins "${libiberty_headers[@]/#/${S}/include/}" || die
if [[ -d ${ED}/${LIBPATH}/lib ]] ; then
mv "${ED}"/${LIBPATH}/lib/* "${ED}"/${LIBPATH}/
rm -r "${ED}"/${LIBPATH}/lib
fi
# Generate an env.d entry for this binutils
insinto /etc/env.d/binutils
cat <<-EOF > "${T}"/env.d
TARGET="${CTARGET}"
VER="${BVER}"
LIBPATH="${EPREFIX}${LIBPATH}"
EOF
newins "${T}"/env.d ${CTARGET}-${BVER}
# Handle documentation
if ! is_cross ; then
cd "${S}"
dodoc README
docinto bfd
dodoc bfd/ChangeLog* bfd/README bfd/PORTING bfd/TODO
docinto binutils
dodoc binutils/ChangeLog binutils/NEWS binutils/README
docinto gas
dodoc gas/ChangeLog* gas/CONTRIBUTORS gas/NEWS gas/README*
docinto gprof
dodoc gprof/ChangeLog* gprof/TEST gprof/TODO gprof/bbconv.pl
docinto ld
dodoc ld/ChangeLog* ld/README ld/NEWS ld/TODO
docinto libiberty
dodoc libiberty/ChangeLog* libiberty/README
docinto opcodes
dodoc opcodes/ChangeLog*
fi
# Remove shared info pages
rm -f "${ED}"/${DATAPATH}/info/{dir,configure.info,standards.info}
# Trim all empty dirs
find "${ED}" -depth -type d -exec rmdir {} + 2>/dev/null
}
pkg_postinst() {
# Make sure this ${CTARGET} has a binutils version selected
[[ -e ${EROOT}/etc/env.d/binutils/config-${CTARGET} ]] && return 0
binutils-config ${CTARGET}-${BVER}
}
pkg_postrm() {
local current_profile=$(binutils-config -c ${CTARGET})
# If no other versions exist, then uninstall for this
# target ... otherwise, switch to the newest version
# Note: only do this if this version is unmerged. We
# rerun binutils-config if this is a remerge, as
# we want the mtimes on the symlinks updated (if
# it is the same as the current selected profile)
if [[ ! -e ${EPREFIX}${BINPATH}/ld ]] && [[ ${current_profile} == ${CTARGET}-${BVER} ]] ; then
local choice=$(binutils-config -l | grep ${CTARGET} | awk '{print $2}')
choice=${choice//$'\n'/ }
choice=${choice/* }
if [[ -z ${choice} ]] ; then
binutils-config -u ${CTARGET}
else
binutils-config ${choice}
fi
elif [[ $(CHOST=${CTARGET} binutils-config -c) == ${CTARGET}-${BVER} ]] ; then
binutils-config ${CTARGET}-${BVER}
fi
}
# Note [slotting support]
# -----------------------
# Gentoo's layout for binutils files is non-standard as Gentoo
# supports slotted installation for binutils. Many tools
# still expect binutils to reside in known locations.
# binutils-config package restores symlinks into known locations,
# like:
# /usr/bin/${CTARGET}-<tool>
# /usr/bin/${CHOST}/${CTARGET}/lib/ldscrips
# /usr/include/
#
# Note [tooldir hack for ldscripts]
# ---------------------------------
# Build system does not allow ./configure to tweak every location
# we need for slotting binutils hence all the shuffling in
# src_install(). This note is about SCRIPTDIR define handling.
#
# SCRIPTDIR defines 'ldscripts/' directory location. SCRIPTDIR value
# is set at build-time in ld/Makefile.am as: 'scriptdir = $(tooldir)/lib'
# and hardcoded as -DSCRIPTDIR='"$(scriptdir)"' at compile time.
# Thus we can't just move files around after compilation finished.
#
# Our goal is the following:
# - at build-time set scriptdir to point to symlinked location:
# ${TOOLPATH}: /usr/${CHOST} (or /usr/${CHOST}/${CTARGET} for cross-case)
# - at install-time set scriptdir to point to slotted location:
# ${LIBPATH}: /usr/$(get_libdir)/binutils/${CTARGET}/${BVER}

View File

@ -1,65 +1,39 @@
# Copyright 1999-2019 Gentoo Authors
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
inherit eutils libtool flag-o-matic gnuconfig multilib versionator
inherit eutils libtool flag-o-matic gnuconfig multilib toolchain-funcs versionator
DESCRIPTION="Tools necessary to build programs"
HOMEPAGE="https://sourceware.org/binutils/"
LICENSE="GPL-3+"
# USE="+cxx" is a transitional flag until llvm migrates to new flags:
# bug #677888
IUSE="+cxx default-gold doc +gold multitarget +nls +plugins static-libs test"
REQUIRED_USE="cxx? ( gold plugins ) default-gold? ( gold )"
IUSE="default-gold doc +gold multitarget +nls +plugins static-libs test vanilla"
REQUIRED_USE="default-gold? ( gold )"
# Variables that can be set here:
# Variables that can be set here (ignored for live ebuilds)
# PATCH_VER - the patchset version
# Default: empty, no patching
# PATCH_BINUTILS_VER - the binutils version in the patchset name
# - Default: PV
# PATCH_DEV - Use download URI https://dev.gentoo.org/~{PATCH_DEV}/distfiles/...
# for the patchsets
# Default: dilfridge :)
PATCH_VER=7
PATCH_VER=1
PATCH_DEV=dilfridge
case ${PV} in
9999)
EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git"
inherit git-r3
S=${WORKDIR}/binutils
EGIT_CHECKOUT_DIR=${S}
SLOT=${PV}
;;
*.9999)
EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git"
inherit git-r3
S=${WORKDIR}/binutils
EGIT_CHECKOUT_DIR=${S}
EGIT_BRANCH=$(get_version_component_range 1-2)
EGIT_BRANCH="binutils-${EGIT_BRANCH/./_}-branch"
SLOT=$(get_version_component_range 1-2)
;;
*)
SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
SLOT=$(get_version_component_range 1-2)
KEYWORDS="alpha amd64 arm arm64 ~hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~amd64-fbsd ~x86-fbsd"
;;
esac
#
# The Gentoo patchset
#
PATCH_BINUTILS_VER=${PATCH_BINUTILS_VER:-${PV}}
PATCH_DEV=${PATCH_DEV:-slyfox}
[[ -z ${PATCH_VER} ]] || SRC_URI="${SRC_URI}
https://dev.gentoo.org/~${PATCH_DEV}/distfiles/binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz"
# Disable gold testsuite since it always fails.
PATCHES=( "${FILESDIR}/${PN}-2.29.1-nogoldtest.patch" )
if [[ ${PV} == 9999* ]]; then
inherit git-r3
SLOT=${PV}
else
PATCH_BINUTILS_VER=${PATCH_BINUTILS_VER:-${PV}}
PATCH_DEV=${PATCH_DEV:-slyfox}
SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
[[ -z ${PATCH_VER} ]] || SRC_URI="${SRC_URI}
https://dev.gentoo.org/~${PATCH_DEV}/distfiles/binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz"
SLOT=$(get_version_component_range 1-2)
KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sh ~sparc ~x86"
fi
#
# The cross-compile logic
@ -79,7 +53,8 @@ RDEPEND="
>=sys-devel/binutils-config-3
sys-libs/zlib
"
DEPEND="${RDEPEND}
DEPEND="${RDEPEND}"
BDEPEND="
doc? ( sys-apps/texinfo )
test? ( dev-util/dejagnu )
nls? ( sys-devel/gettext )
@ -87,24 +62,46 @@ DEPEND="${RDEPEND}
virtual/yacc
"
RESTRICT="!test? ( test )"
MY_BUILDDIR=${WORKDIR}/build
src_unpack() {
case ${PV} in
*9999)
git-r3_src_unpack
;;
*)
;;
esac
default
mkdir -p "${MY_BUILDDIR}"
if [[ ${PV} == 9999* ]] ; then
EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/toolchain/binutils-patches.git"
EGIT_CHECKOUT_DIR=${WORKDIR}/patches-git
git-r3_src_unpack
mv patches-git/9999 patch || die
EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git"
S=${WORKDIR}/binutils
EGIT_CHECKOUT_DIR=${S}
git-r3_src_unpack
else
unpack ${P}.tar.xz
cd "${WORKDIR}" || die
unpack binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz
fi
cd "${WORKDIR}" || die
mkdir -p "${MY_BUILDDIR}" || die
}
src_prepare() {
if [[ ! -z ${PATCH_VER} ]] ; then
einfo "Applying binutils-${PATCH_BINUTILS_VER} patchset ${PATCH_VER}"
eapply "${WORKDIR}/patch"/*.patch
local patchsetname
if [[ ${PV} == 9999* ]] ; then
patchsetname="from git master"
else
patchsetname="${PATCH_BINUTILS_VER}-${PATCH_VER}"
fi
if [[ ! -z ${PATCH_VER} ]] || [[ ${PV} == 9999* ]] ; then
if ! use vanilla; then
einfo "Applying binutils patchset ${patchsetname}"
eapply "${WORKDIR}/patch"
einfo "Done."
fi
fi
# This check should probably go somewhere else, like pkg_pretend.
@ -245,6 +242,8 @@ src_configure() {
--enable-relro
# Newer versions (>=2.24) make this an explicit option. #497268
--enable-install-libiberty
# Available from 2.35 on
--enable-textrel-check=warning
--disable-werror
--with-bugurl="$(toolchain-binutils_bugurl)"
--with-pkgversion="$(toolchain-binutils_pkgversion)"
@ -337,7 +336,7 @@ src_install() {
objalloc.h
splay-tree.h
)
doins "${libiberty_headers[@]/#/${S}/include/}" || die
doins "${libiberty_headers[@]/#/${S}/include/}"
if [[ -d ${ED}/${LIBPATH}/lib ]] ; then
mv "${ED}"/${LIBPATH}/lib/* "${ED}"/${LIBPATH}/
rm -r "${ED}"/${LIBPATH}/lib

View File

@ -11,6 +11,8 @@ LICENSE="GPL-3+"
IUSE="default-gold doc +gold multitarget +nls +plugins static-libs test"
REQUIRED_USE="default-gold? ( gold )"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
# Variables that can be set here:
# PATCH_VER - the patchset version
# Default: empty, no patching

View File

@ -1,3 +1,4 @@
DIST crossdev-20171230.tar.xz 23016 BLAKE2B 4661b3f9fac314b7346f0de7227d12ae2d6851e448f6d065471499df8ada5d699ef91c6b6bca285b2aefcbf67ab351fefbe9344c0884a7c0d33ff27215c8ed9c SHA512 bf8761a3018790501adb4bb173e3281d1d7628de8f65a1aa5df0b328a4af8088be466dbe8c185e7ed44aca31b078320a4f62c56351f4b7cbf832349184d9709f
DIST crossdev-20181020.tar.xz 27172 BLAKE2B 8a388d5201ab419b865b96a4314190a693a7e00f3b5ecc2db2efdf36efca102206b5c4c5633e5e4ee508f5433ff4e086460501462bacc86c2adb10cab33a0244 SHA512 dd7fa9522ce6f58684b54ddc57e088f19a8ad5392ff45ed5b2b1f95f4be7dbc753442adc1c2591a785d94070979200936ca713913e547e84ae02b05c83bf8cde
DIST crossdev-20181202.tar.xz 27184 BLAKE2B d1770f5148d666b22a20576b638e71bf6325e8a61776b8b47ecaf2e5437150554f6973c5306d233a836e4ffe3ff0480167c9b877c5f9e733681fd502016a19d4 SHA512 896bf050c81f3f34b2be187a851832494c039aa93177c806b689a75d16567f178e4ca33c21282fc320506b76e09b0cde8a45976b6309bf9bc5be8290db3dd8af
DIST crossdev-20200801.tar.xz 28268 BLAKE2B 36f22a2d1422d5f9e27a5559a8c141462853c4dc011ec98c66d235ef262ea9408fd5054b578963fd17ef630ea63e72c068d216f6ffbea7d191d1374a6ecc4033 SHA512 331af1525cdfc66380621b764bfc63178ce962b9071408d1ee08480caad9c0e4782a8fa5e5f3500fd2ea03ccd322895cc95d80106ad9e5b97a0e09ef5d88c94b

View File

@ -0,0 +1,36 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
if [[ ${PV} == "99999999" ]] ; then
inherit git-r3
EGIT_REPO_URI="git://anongit.gentoo.org/proj/crossdev.git"
else
SRC_URI="mirror://gentoo/${P}.tar.xz
https://dev.gentoo.org/~slyfox/distfiles/${P}.tar.xz"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86"
fi
DESCRIPTION="Gentoo Cross-toolchain generator"
HOMEPAGE="https://wiki.gentoo.org/wiki/Project:Crossdev"
LICENSE="GPL-2"
SLOT="0"
IUSE=""
RDEPEND="
>=sys-apps/portage-2.1
>=app-portage/portage-utils-0.55
app-shells/bash
sys-apps/gentoo-functions
"
DEPEND="app-arch/xz-utils"
src_install() {
default
if [[ "${PV}" == "99999999" ]] ; then
sed -i "s:@CDEVPV@:${EGIT_VERSION}:" "${ED}"/usr/bin/crossdev || die
fi
}

View File

@ -1,54 +0,0 @@
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
inherit toolchain-funcs
if [[ ${PV} == 9999 ]]; then
EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/gcc-config.git"
inherit git-r3
else
SRC_URI="mirror://gentoo/${P}.tar.xz
https://dev.gentoo.org/~slyfox/distfiles/${P}.tar.xz"
KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~amd64-fbsd ~x86-fbsd"
fi
DESCRIPTION="Utility to manage compilers"
HOMEPAGE="https://gitweb.gentoo.org/proj/gcc-config.git/"
LICENSE="GPL-2"
SLOT="0"
IUSE=""
RDEPEND=">=sys-apps/gentoo-functions-0.10"
src_compile() {
emake CC="$(tc-getCC)" \
PV="${PV}" \
SUBLIBDIR="$(get_libdir)"
}
src_install() {
emake \
DESTDIR="${D}" \
PV="${PV}" \
SUBLIBDIR="$(get_libdir)" \
install
}
pkg_postinst() {
# Scrub eselect-compiler remains
rm -f "${ROOT}"/etc/env.d/05compiler &
# We not longer use the /usr/include/g++-v3 hacks, as
# it is not needed ...
rm -f "${ROOT}"/usr/include/g++{,-v3} &
# Do we have a valid multi ver setup ?
local x
for x in $(gcc-config -C -l 2>/dev/null | awk '$NF == "*" { print $2 }') ; do
gcc-config ${x}
done
wait
}

View File

@ -1,84 +1,5 @@
DIST bounds-checking-gcc-3.3.6-1.00-r2.patch.bz2 829688 BLAKE2B 5a33cf9ecf04df64d23901c4b03f8ab5aad5e8ebeae225fa08c7ceb5fc28c5010685e7c429a1e8b8e21402fc5b906b2f3184a3095e302df647e031339c4e0cef SHA512 d4533d02289dcd2ee11952f83dc687d82624d6e31ddb548e4f54cde4ef9cced5a1aac5b64086441f8930274e31f20d0ee82850fe1257f96c08b05d406d3b2e26
DIST bounds-checking-gcc-3.4.4-1.00.1.patch.bz2 815566 BLAKE2B b202610cbc3e5a902a2bd9f3d217d224ea5f3ee68247557af907736cff577cd720065ab1567046d89f6d87cc433b3edbd1a24a3c8ef2ced97af9782ce49cab26 SHA512 da11cb354d5ec95c74081c2cbb29bcb49817a1f9d6875587b4a27f1c9fdea8f07eec8147b739bd18a4fa2365e5da50e4bca7d7531612fbf2514c50516d225ac2
DIST ecj-4.3.jar 1377431 BLAKE2B 1d6a8ae1cef0fc4ee325f935873e4a2e560c34cac929bc4190c7dd47e1ca4480ad608f0b7a5d00f2bde30ff2dc78f74ccb0effa48db1df9358a6e35ebce32100 SHA512 c4be72186d81747f1adce5a50de303c24bd6ed9f401bfa8871b1b864fe7591392218b1937b10d0e76014de8e0b6a1d5c4280475976218141cd1878c4a35217ff
DIST ecj-4.5.jar 1470676 BLAKE2B 793c10ba09fd8040c0e1181204141aea16780c9c9088e07126e00da2b510af2ad6f58d876357d7e98cbb02d783a3be434469d5de1df134ccb8cc508e45028d80 SHA512 d4e1bf7538ace56e3d69fa91da5bbd16c272923b4de0a9d8dee23ea2b75f9f38c603de72fc4061df49285c450b63f3df211cee5270e9fffc5447445d1a9c9e4e
DIST gcc-3.3.6-patches-1.10.tar.bz2 53739 BLAKE2B d22772d30c432669299e3e6df350920408c510a241a20e6795dcc680227342a16c3b6d2e477a17d6c49794005b42972ed30b4efe5b2d69398d283f50efdeb459 SHA512 be6cc8fae217f789982e324e0d3ad12d527e43ca4c168bce613397aaf3d86219b125e7b39c2b236638a68112cfee0e06c1b297fead712d92b3923b7195299d0a
DIST gcc-3.3.6-patches-1.9.tar.bz2 51760 BLAKE2B 68704c1ddb73d2966746dd1a57b9699c3130d9165dd990b0b70f13b0dc4c7c4503afcbb268fd54242e17bdd571d5d0a20c172ee431c3c772e7c3412d3f0ac884 SHA512 306220c537c5cd90af7638431e6547ee9a80199c384629b5fbda06c28b2d6168fcf1dd448c0e178b104f41e03a8ebda4f389489d205b9e66ade6637e4747196c
DIST gcc-3.3.6-uclibc-patches-1.0.tar.bz2 28882 BLAKE2B e1e1a1e24368d238b999df061e086c1376b095bba703154fd35edd6337b5fbc265722ffa01ae496e55a524d52792d7802867b38cd426c56397056d96e62036c9 SHA512 d060c1552d4f21b8b1cd6a6e56b9af4f62f61ce8ef4362afb1982b2ad9defe6a9648705cf780103d4f2061737553b6737c276d79b803b6b75ae94035bc881f0e
DIST gcc-3.3.6.tar.bz2 23972413 BLAKE2B e7b33edcdbbb13b0be41a41156bf6fb6dcfe4f5ad75c41de86cb37f854be6b7a6a8dda0e65d331461469848cd912e25920e8aa2dcb142cb661731ba571cb5de1 SHA512 576b88e2fa675314a79a85f180684fe5af370c596476a0bf02e33e8ae0e2be838417ea80675ce4194a8213792cf7ada50cae5131149e4b890ab61e0b8d50d0ed
DIST gcc-3.4.5-uclibc-patches-1.1.tar.bz2 70923 BLAKE2B 174eb5e437367a8e64a48f3764b4a3971afc7f5bffac583b7cf4e98a2ea2241ff896751137cc59d45a12b12333319efd52094925ba175073fe70dc143a5ea7fa SHA512 c0534a374e2e0416d0792373f9d11526226f9ce1a98e771469efa68388b709c72672b8db8fe77901144a96a23e4fd9f9a99f1d278f1e8fffda8a6b01e3b770fa
DIST gcc-3.4.6-patches-1.8.tar.bz2 61940 BLAKE2B 54026fc7f0a17cac4a219c2182865c597a417448310f2b10f948f971f9639eedf958d03474d999675180e8c8a7ef7f7929551c33fead53b909b4888a5483d78c SHA512 14c12628e0ccdc47492890a46d45f9ef1df3970d1103116c3c3be76ecf1b3560088232819891662f44d621877b59ed38dab48053885bd34e6516d7de514f42d6
DIST gcc-3.4.6.tar.bz2 28193401 BLAKE2B b3e2d52269e59acbdb04248d8d95bee957da29722f998ef39731b8f4fe9ce29ab6b29020be440d7d5db2b56f93fa77bc7e56f979912d03ebb755a92ab14927c9 SHA512 d235e1223d5faf8f37f2d73db35edeff44c88974b09dfcf325f4b181b16d7124710d93b1b65b60206ce3525f062236ea0f338b3a5341d7ecbe196d8e90c3ff18
DIST gcc-4.0.4-patches-1.3.tar.bz2 41994 BLAKE2B 2c6c5402256e177d197cf106e57e9d596d7559eb117f3a5e6b23ee524a08c79db76b192ad37240d209778742070a7cab8d1b73b2ae9bb5cd5accd1a760b26b61 SHA512 34999c783b0b2af782ae316c7a874a40a3e98faa8eb48409f951fc167ad4fb56c4fec93dc5cb6831b89f2dd90c80e3c89778fd73b9f176cb4470d8f5d1537b03
DIST gcc-4.0.4-patches-1.4.tar.bz2 42634 BLAKE2B 321c5dfbd194771ae28078fdde4baf5661f7cbb8127ff0bd7d23b7e1167e978776e0cdc26b2c1c8d7c469f964a223b67833caf78104b893d61ab243181fdf2f8 SHA512 190d86ea9620e24547726e30e36142c369424633060ecca0edd76f132b283068a680b5faa1bc14e6439fe7d8b5de8b6a9ef43438240831c19b99e753299e19d0
DIST gcc-4.0.4-uclibc-patches-1.0.tar.bz2 20164 BLAKE2B d2d9626f03bcf0b06f316f22f2d4ea71ba0721d8369ff914bb27e20c4423a2a5b511bb23e74d2efc247ecc9c0554144a7ebd16d8baf432e289226ef610bef978 SHA512 67bdb8be3b7d173795ae3692f8f76fb6c236bfe3054112db30e3f0a56982685fe0b15e2c37f7d9e15e6198e4a41e47e1434a2befeee4e9e460e7bc9e0fa9d235
DIST gcc-4.0.4.tar.bz2 32642939 BLAKE2B a152e6183bb288e587f1e6ad21401de5ce21f871aa4f82344bf76af4518d3286d281770754fd5744a9c0a86bd656be8bce88aa72380e42c438271e1f471c4d8e SHA512 194c12b5a1bc50c003f6fc849a4c0032388a960fb4b769bdb6e76cf330f04f880a0723661c991ec03742443c21ccba9af8599ae648a0777e0a5875c5fe7f6abd
DIST gcc-4.1.2-patches-1.6.tar.bz2 54513 BLAKE2B 5f9d6e3332cbfac0ef757dfbd45226414f41c39f8d828325ab0d1ae1a82855cc6cde09308a7e1565cbd9ddcb1b730681bf7ccf69643a29141b3b029e8fb61135 SHA512 0f225b66851c1e70afe19f59c8527631c8b42f0580922d979d2dbf367b4591a59e7047bcb52b36695bf24fcfd71ea814b0001e001fe0e39482dec7327bb74259
DIST gcc-4.1.2-patches-1.7.tar.bz2 55204 BLAKE2B dad75b6484a76233f17e47ab48749ab01b4fa905d020dde79aa784734ce26d6ef4328019bbc381ebb0c7692777f17b6c857407841baac36b8b5c65b0b0fce761 SHA512 c1e547857d5a78752a04ce95b23fa2fb3cbd78ae4df110cee3344a024622e4f8c58f2752fb57fd2d188a629bff2d1153aec0f415f46382860917e53887a5566d
DIST gcc-4.1.2-uclibc-patches-1.0.tar.bz2 20980 BLAKE2B cfc7dd4c7a0b1ed80c491d4ad56b05b05ff308fdbed2faa1b9f15b10c0f7834ee4ffcb0df1619f959f7a1a5f315305b550665c232404a8a3306e3e615539a0c8 SHA512 57789f4236a3085136afa83be3cef677bd813afd258d67bfdbecd2058f497cd459366d5515044c0208ab753946dc951dac6a3889752ca6dae836d837c22ce33b
DIST gcc-4.1.2.tar.bz2 39707720 BLAKE2B 966b6a64c118456c7fb66eb2ad0dd84b1d53ad88dcbd146f446ef097a6975f5d6a7f1bcbbc4bfcd4e48b00eeb8054728e412db3d9818cff1f195e37859a4e510 SHA512 b97d3b72a3b0355611d5090b2c715b7a774f0e466a89326a0226c2809d12dfafb2d7c5a7af54bd5e00c135bbb6596f535e1a484740f7f1f691e8a57e6f0425cc
DIST gcc-4.2.4-patches-1.4.tar.bz2 25768 BLAKE2B 502a83eb320ab4e4e4f210958b839f99e4c524ed49676ba909c297a9e0fc93b91411c8aa123e1180909297de0f42c0c320bbe3cf75319728f4a130bb56907f60 SHA512 dacd9d13f29e1e7baf136dee564fd0d128c20f77a8f7ab745263ad9dea8c694c006b89baf93f9aab7a0f93b48c2a54d80c4196f83f0f27c0fe17f7fba9a4fcfd
DIST gcc-4.2.4-patches-1.5.tar.bz2 26425 BLAKE2B 74723391829946d2485fefa5b69bdfad2bdc0ed5390abdcbee4a74829d95abc4a89b5c162a96c1dffac26924a872040e81d551f310dd20a0781b053e1421aeda SHA512 bfa62eb30bc5c311fee0d655ec24d1e3bf81312ee3556aa70c2ae71e857211fd55d8a96cf95266d27e40f39ddf2e7d771e49658f6f810a012c1daa180b0197d0
DIST gcc-4.2.4-uclibc-patches-1.0.tar.bz2 19167 BLAKE2B bf2bcc9ece9096cf7fda9999c56073774072fa03e5dbf389a617888b2269bc79a7cfb68a6e26da66dedce9f954a1766ed21bbdd907b747e9fb5ea3a0fbbb6474 SHA512 5545cfe6bfa7ab9a69a474cc051cc8744380077dcc193afefeb455e959e408a5e4dfd1adde5357886c7f598835400273ef80ad5c14976c0552b44f5cd48704ed
DIST gcc-4.2.4.tar.bz2 44025458 BLAKE2B 1d9645298dbbb1aba7b2957acf5b9839bd702a85120aa82d4cada0e4ea68a1d633422d8fcedc405504768e2f932e4b9d1a70a86da0b8efa5fc923b786ebc259f SHA512 c6e3e4fce1d27d0c56ab24f4809367d9329b620b7c124e88de190f2ea2ae57b5e06d0bda85c5a74237a4f94ddba53dc91faea0611fff7b19ad720edc312cb0d9
DIST gcc-4.3.6-patches-1.2.tar.bz2 76826 BLAKE2B c37cb013a6928e8494e9de1eab9601ee4575523b4bfa4e7c1f64cebbf64ef57bf877234a1e637515eef80535d2faa4ea67792e9434b44421a430b6fa6ab07921 SHA512 229692a6026ebadc4d87342fd11695338c0fb2a13c43ed6288710fbdca4d7330c74a2c8a46f60637be9c4c38365076f068d35c5a91faa1c69a55e5e7aeac79f8
DIST gcc-4.3.6-patches-1.3.tar.bz2 77886 BLAKE2B 076183e5dfb9a11d76ec52a8226d0e2f5ceeb34fed49af9e4c8c3a17455d80486214d66d43c812e6f5ac9e8cb34dc628b40ad9678ee30610aba61731150ddcde SHA512 fb7985da07da1cf9f159c31a3b6a037e673eb8441b8903df62831355c5c3510805fd183f0ac7c590c159cf5d97a8f25c407143d02888878266b6f6318169a3ba
DIST gcc-4.3.6-uclibc-patches-1.0.tar.bz2 3021 BLAKE2B c3b18a85253fc7b63e2f1fa541ce2c9bbe0c664fb5da8d494c89889d19aaebf513c40cabdf3271e3d074aace500bcde4f0ba4478c35ae0ae105b4a31d6e4e917 SHA512 6b85bf4caf5662ae114e472199c2f77d1fef63c485c073643968b6e0575c13bfa4ce9a32191908f34e70d41fd9fb5b9bc2b527542d82dac881a0462bfe89b120
DIST gcc-4.3.6.tar.bz2 59756702 BLAKE2B 0bca01c8c2e7d8dc2f971c2b2bfb52d61285154c3fd14d6356a1cf083622aadadd9031bf0aead9a285eb1c4200c2d9515773c256acbdc901842aa16e06cc81e7 SHA512 0cb43f523135c6d54b3b5e26de7044fe096c16e7c3af8e400b2b48c5e52b4b5aa56615b1eca5e326b0202cf34870daa6ac44ec9633762acafa4425552b4029ee
DIST gcc-4.4.3-specs-0.2.0.tar.bz2 2004 BLAKE2B 96f5ba2028bc6e0ef71e009857c37118a54d13d30de24d697c85e5772f9f2b7853615648cf2e4ee81d8385f6518c64588c0b56675c00f95ef39fca2a808f075e SHA512 779ecb0a064d2138b54569c8ae501975b8a6b72e5a3acbf8597619a8db77ee42ef9b0e62608d5192a15e4393e7dfc009bb50b994782236faa744b2c46b5fe517
DIST gcc-4.4.7-patches-1.3.tar.bz2 25866 BLAKE2B 30c6e50afd9fb3ff159b99a950f07f91ca7684fbcd11339d273695ba7b1cb324b43b23b821923d8f972af6b32e4dd45075b1fbf6740f034b0911831bae494025 SHA512 cb59c8bb72a5414a9930f63e55a175bdc57d51dc518ec7d1245684f4576daa139e10dbe050a75ac960607cb0a5ed52c49ed7139d74398278bb7012ecda7be09d
DIST gcc-4.4.7-patches-1.4.tar.bz2 26725 BLAKE2B 9d189cbf85621e09f12ca5ee4cf414b9c58d9c4f05cf39d13de358427f7744468a9b1cb75dac7f9b9994b7dd79aaff9f537a38170c2a9baee825223c294901c3 SHA512 b06b4bc966d6e40ab10227983e6a02ff98ae9c9657be6677259cf45a302049aef3103b5b4d391652e8e7faa1313d2a7c91bd34eeae892c8b89ccdff300128b9d
DIST gcc-4.4.7-uclibc-patches-1.0.tar.bz2 3016 BLAKE2B cced59dc8f03a2f8bce7f95c5028164b41189b2272ae6a0d525241dd24df827292dda39b1bd9b4d6c0741be0ff0eb4df62d7c6aadf54d54c2bf64f268c68988f SHA512 46a69cb8e2e3b97116d012b95a515953b2629be04228a2ac90fe628705e6bc3bdf05ee22e3ed7d5fd0fe6e60aad8f1f96f36e8dd3b231bdfd048e61c6cc15beb
DIST gcc-4.4.7.tar.bz2 63179340 BLAKE2B e01c90907228572c3d25bbb776c8232fa3f8e8f4112a27f69be2bad8eec50b68add39839f8d5726f5f82491f50e71fa1b44d98b60a3e0f145848a0e0e8760700 SHA512 5562a7319cfd8cc7c5261de9170f2cda86cbd3a231a444a5ec0ad3d8fd60af6f8bd86af8f201cebb7bddcd083d761834d1cbd652c68af0f5607d22a63439ed0e
DIST gcc-4.5.4-patches-1.3.tar.bz2 20108 BLAKE2B 2a78a7e0228ae78996e36b14ad2961d4aba2ebecd8714a393608a41cd53efdd83bc31aebd6fd460372458592167b187997819db1a8a5778474098de224c844af SHA512 ba5781da360b5049ba07aa46dd45b8405540dadd717ceb88c07d8803ba91a90b9ee32147932d3dddf1ae1ece148589cc2b0e709a3fbec7fe56266f6e925fa8a5
DIST gcc-4.5.4-patches-1.4.tar.bz2 21274 BLAKE2B 6c5c42be4c1a0954ca2c5181579e3d5af1e27bc2f91d77eee97c19f07b2fd2527bd4b96006e15aacc0009ad9b33ad5c9792768b84e002bec679c5a76aaaa9335 SHA512 4c8e9ece888eb0f09317886ceaddfc56536a58438c1b2d441831e916aa11d9584aa282de2535652d4f0bae235e7b0db725796ec57fc641f10a7123d7bcb1faad
DIST gcc-4.5.4-uclibc-patches-1.0.tar.bz2 3019 BLAKE2B abf53f85a4af1336437963595b04d2c24284ebf7cc76d845bc3502cf54ef2dcfc21f76fda336f99165cc9939daa8b8c8dc9493c276879670a3cd0ac0efe526da SHA512 b6aa0a7d029a2a00b36fe8906d76b434fcdfc7191cbc8fffbcb8b89a66eba61ba6cd0cfdba94a79929487fbbad2163083b085476498f8be77ad473d078b0095a
DIST gcc-4.5.4.tar.bz2 66426133 BLAKE2B 8725c7868e1fc9e72a28635f39aa014681aa502db4687e5d2d6ec7cf6d30b04902eca2ebbc1ef2b0e20b89908424d0053f0958e24ded5366fa1c38469913caa2 SHA512 78696b287d46aacd6f150920da376ea32f58ad9f0dafd2d3b7fa6dbdd8dd7afe659108d1dfaa5807617fc5248719f50b39c37ade0173ea5b9fec2091f4656115
DIST gcc-4.6.4-patches-1.3.tar.bz2 16443 BLAKE2B a6d5cb1b51319e3167f687b7efddffd7dc8772b656fc42bb68687c2acc95095c57edcc6c7677b4b23c3666545a7eab6129c39abd3c7877c50c699be1b9b2ac65 SHA512 ed904bb8438a23a2e1ec3aff28c4451128421426305ff07de50edbad51a066bee9d1a9042a9b26c36dbd57e1eb044a474088945d6d780c6e98d7563947fb9b9a
DIST gcc-4.6.4-patches-1.4.tar.bz2 17358 BLAKE2B 636ec75b1d3b6feeba5b21fc40faef6f8b23ff4079f80873f4faba4c44ecd9bdeac6b5a25dd6efcd1816ed594ea8d5d64c7bd41b7b7888fb04bf58148ceb50d5 SHA512 404d2ed19dd59b5eeff64ed5302eba48fc7e0613c20e3e40ebfe0a19131571d059d690113c7c5c00e8547615c6d1466beaa1e8ea16407d8208380c02dfb051b8
DIST gcc-4.6.4-uclibc-patches-1.0.tar.bz2 3010 BLAKE2B e841db5125638b0ec34323d0500786ab6577042a22af3b423433542164408199ac4ff1036d27999aa01aa96e9e50988df2e86835102142f74c3f8fb33096a47e SHA512 fd289089a30c768b0ec4e3459cf494bc5e9d4ecf87056dc183277c712f7d69ac4cf900950270d8eacfe686b4aa906e1ece87cae52f2cb00642e96c0b95dcf133
DIST gcc-4.6.4.tar.bz2 72006076 BLAKE2B 321c14c097c18cf60c32d228720980717e25e22e26ce5e75c3a411c423f9657eb896974200664132e2fb10c3010c5136d2da7f3c916fffddf7e4afe4e8bfdc20 SHA512 b5a5395782e0b9e61cda052f6e00c8575d1aa0b7e8db9e34c06e4e45f12ff37b436018536b7fa69a04a4235b5b368895652e3ed8fab2fe11763f9782ed9161dc
DIST gcc-4.7.4-patches-1.4.tar.bz2 18072 BLAKE2B 6bab25aee9f9ef605ce2942928a9d1aa91371b8fdec00643805e5010a4b0ffb043e0dd1a119d1064f79e499983374ed39e475a9718fce632cad07811363ed56b SHA512 9f5d68ba62aee909023542dcece81e4e448ea750254258107d4f70291d8ae99469c4518e42ffddbe6b622b258f463127be6e6ef7eaaeeeb0f59b3b719f3eadca
DIST gcc-4.7.4-patches-1.5.tar.bz2 20193 BLAKE2B 56c6258ee7c8c5657161e8eb182364b862d536300dbbb6ed7e781b45456a265debd299dc16496a543a291313af4d2cfd5f17a842abf64ebc3635d6b50458e4ae SHA512 340dea0cb11c676b5936ad1a32317987cd3a9b3271cf99bd50e40be39d5d361a218f4312deb2a6a17c6ae1fc7fd229b718857fde0e303b3537a4b89ba918c8d3
DIST gcc-4.7.4-piepatches-v0.5.5.tar.bz2 15358 BLAKE2B e0df0b19829d9f9b1e8719467a6e15336d58ccf50c182c3d14438bc7e8690940535f6391b83f359c4e0bedf16814b7d4e2b0888f4698740be511bf6a574f9556 SHA512 f5e078bf4c17f7b5be102f1e3358d91c72e80363b5e055a92461f78399a1bf27bf6cb690d41900719bb260b6529f5d1aac999e613fda6ac5e4efa27f622510e6
DIST gcc-4.7.4-uclibc-patches-1.0.tar.bz2 3019 BLAKE2B b24522bd5516e0f2bb4e8d20437e0a0aed22ea8cae3c78fc600688f71a57bb7fbd3d431737a30e4406a9ff5426ed7d2289b3efac4d5efaa5841f7db290ef023c SHA512 c2e6c96b74365f8233f6106fa03d94075b60f6f77c683aa2e27aceb007da723243f8e3ddea8b178e6a0f7939b8e35615165534dc74e5050f87680ab261a31c52
DIST gcc-4.7.4.tar.bz2 82935453 BLAKE2B 98cc902dd1506161b96c8eba10e5a5c7fb11d2dfd95ebac15825806fcdb262a1ff962b72275dcfc8453b753164fc234bdd666b207202cfd5a0a2b4cd09b8c741 SHA512 dfcb737073191e628231031a3571ec77ee760a59377630f4a6e4fdfa66f9ddad39fde47e3f0f227eb43cdf90e0d34cde5abdc9ac892c1e111a911062a66c9189
DIST gcc-4.8.5-patches-1.3.tar.bz2 26025 BLAKE2B 3744dfcac069b5f8321fc9cfb019d44c848d70d17e5908d3d97f0c314b98a7fd884235fec2b21c93027f6152577439f6d424f96836b113dcd589604af969c756 SHA512 8d190f81ca0d25281250dbf0a670fcf12334b0811a5bf664e6450942a2996d02b979c6e8f8760b287edad06df3d1f8e2fe5cb0c3dcf9677c3420457d841d9506
DIST gcc-4.8.5-patches-1.4.tar.bz2 28937 BLAKE2B ecc1d6836b2a2f924a6c5bc224804273901bd362436245fa5ac7c4648693c41931ae970ae8ba0b5a5e43cf2f73493bda2b950a96618df2557f88114b6becab39 SHA512 5cffbc0004e010b8f3140dee3a0e1414d9003461330250ca609eaa98f5ef78ea1f55eae8ad2dc17f11370e036c958825c2940962cd22ca661b469b116b8be8c2
DIST gcc-4.8.5-piepatches-v0.6.2.tar.bz2 14265 BLAKE2B b3bb37957ba8ee446967a3a60fee61c26a49f237241bbaf8bb3c3ec63656dd0492f518b129c8ef43cc06091742bc9c0b1042bb612c1110732b1e9608f28753ad SHA512 cd6af4047d4719dae9dbe86ce5342c7d8ddec38aad032486713b08e1b0cb711f5ca017e08d583137d51b8d4ef673366ba310e71bca7b49b82e9314781d6e9d99
DIST gcc-4.8.5-uclibc-patches-1.0.tar.bz2 2976 BLAKE2B 1a804fd0b2fd5756e824f3eb511cf62d6af0fa8059ebcffadf6deb85e242ec8728b7883f2e054b465b87e4b61b6a2b55061a68eb8329c3a79a659d4c15808d21 SHA512 5469128eab06525915c75241797ad9ec4b63072ebfd5e110319bf810633cf3fbed39bbda4f6a0c74e537b248e7642780ecbe2086ad10be6e66b7dd289fa6534f
DIST gcc-4.8.5.tar.bz2 86165587 BLAKE2B 760931013f96083078e74b8376eede6c23954e1f41cb44dbbdd8220fdede48807d89b9ca44fc4ae309f7cef441831b533512f1145cd563c5c797e96cf6cf1bfa SHA512 47fdfeca0c0a624cdec9c4ae47137d056c918d5c386d4b96985bb3c8172aba377cb66cbcc30e80832fd244a7d98f562c20198056915c70cfef0977545073a8ea
DIST gcc-4.9.4-patches-1.3.tar.bz2 26060 BLAKE2B a61cb29111e8a9e35d810c0c557e901fc0d78e3b62027f5ea622d29becff9492e350c932824b23e5a38604bc3fa6c39fed9db902df4f830a3a362f1a1c2d9f58 SHA512 0214da6712a1b583f028be60e562f742d3d484d930976e2fce7be090113517c0e07faa20f750411b5125902f38a9944fe0c1dc8605d161c5bb11843acdebab75
DIST gcc-4.9.4-piepatches-v0.6.4.tar.bz2 14414 BLAKE2B 2eccd4f2a164fbb32d13c7fe91627a2424c0a5570fe0cac97c2bb1c95294ba3d770832da7c445f75c91791466c5139a1e13753a3a40d87ff5e44e42749adee27 SHA512 243fa272ea0e49f700a76508bab3e03bbb353bcb930581b2f87f9a47df5cd3880e29f20b71612b21190adc463849e1e6ac2a38a49c0002b562d93d436f538285
DIST gcc-4.9.4-uclibc-patches-1.0.tar.bz2 2618 BLAKE2B bff85a4088fb94fdb7a8b0bd552be98ace3e6d145889b6f8b4a1f2db2dad14342d155890ab159b42d5b55d88dfb7c392eb7f92590084e1958f6284c561da30f1 SHA512 5a1f44caa9261f4947101379628143869b31dec67fa28605e8e1f3894d4b7120c3f68ba6deb59da7a74fa906e27ab32cd3767761837dc3dfebc37865d349d6db
DIST gcc-4.9.4.tar.bz2 90097606 BLAKE2B 373ff939ea72d6c4a7f3ab899b852b4c919481af2cfe3291281d9354c58a270d2eba73a0f301d90840dfabf423c82b368e113df7a2cb6cc28b2a703b0b6eb585 SHA512 93abb78e16277454f41a8e9810f41f66c0fdffdc539a762ff6b67d3037f78db971378683fd2ebf707d1d51c059fad2161fe42d110c330027f40214b7db0f3efe
DIST gcc-5.4.0-patches-1.11.tar.bz2 35481 BLAKE2B 6a74fa85864bc62b506afba20adff693cb4554cd747cdb26e5ca6aa45eb511a9fbeb8afc654d55a786fbacd157164c4836de226b9bab4185774634182627c9a5 SHA512 b1d5bca91a8b2fddd2ba11573befc4bf957f9c2c149f1aa8b3ca336020b9101bd595cdeaae712f6eaaf4f7510f1f06cc6c49f62fe80b1bdf33f026118bc7074a
DIST gcc-5.4.0-patches-1.9.tar.bz2 33602 BLAKE2B 2c914ad9c62eb1aa4ef941f332c1cc840b09e7aafa9eabe6598ddd6635816286e53ed142b466f10ed3616fe6bd39f4a42e2ed1d8f23596506f4f2ac3e032e467 SHA512 b83163722582d7ee92a87fde5018009f6ca4188ed77f89c34d9d35330126740e4bd54d3b4f2c2db9a1694632417b1b37a92499817a9f168a8cc6a3d8865216cf
DIST gcc-5.4.0-piepatches-v0.6.5.tar.bz2 14551 BLAKE2B 6f3de9be0990a7580785821d8c85114a1907571c06bdf3a15ad91258f7c9e8bb6a4d2ddb8615f33bedf0ad036d215507e004fc095f788e40c824ae0ab3ffbb05 SHA512 4890f0713d261982ab81a20f93c5f65193aa1dfa171e3f9e5867f0b80ec7c1e76c5a997b1a4e6f47f8ce36af54ac91125c5bff8bf6d971b7d77c65a57a40a3c0
DIST gcc-5.4.0-uclibc-patches-1.0.tar.bz2 3731 BLAKE2B fa436d1c1d9c150714092132f816740f8218dfeb4f9a6a8c830ea54d211a020f209e6fd1fcc313b2560b82c7855120053d346af72b7c12c88a7a948379dd2356 SHA512 009f34197e79c5e8c6497a0db01ac45cc657e92e56a663b4f3281661d108b2a129cd977fab5f0064f225d6812ae91e82bab22a2b10ae02c486881eeed85ec7a3
DIST gcc-5.4.0.tar.bz2 95661481 BLAKE2B bf882acfa28cc1064cddd21e25332fff6bc65505d6af9acb2e455916edbc4f6b1de9b3524867f51d7819fc4f213ce21332fbf67cf71cd6c7b96fb8907e51d570 SHA512 2941cc950c8f2409a314df497631f9b0266211aa74746c1839c46e04f1c7c299afe2528d1ef16ea39def408a644ba48f97519ec7a7dd37d260c3e9423514265b
DIST gcc-5.5.0-patches-1.0.tar.bz2 29527 BLAKE2B 3ee9565591e6c07d658ebecc36972a0a5835856bf8969da6997e02c4e79cef45a2dc565609f7bd02aa27c4c9db406b3502417da010e94e6d05d37f56af1ca71f SHA512 07f331c70da5e45be295e9559735f34479b4d6187da5354d5e23cb77760c372990030ce9c7408bcc9605e3c5e81c8acb10689b3aad57574378a20b0f22a4f3c3
DIST gcc-5.5.0-piepatches-v0.6.5.tar.bz2 14327 BLAKE2B db24b2d321328307147b0dccabf9b66424302c4b8994c2981f09efe65af58692dc8fe69a65d262f60015ac15a2d1850c2b86964592b72c994737e61c1d8827ef SHA512 2e3ee95c8f2c36968fd6dfaf7bfcfd03d9d98e9a5ee827fbff06d8b28cf0375072165f7299baa9eceb8aee3af21dbd0099f9ba5162ccd52751af8f1c750de9e1
DIST gcc-5.5.0-uclibc-patches-1.0.tar.bz2 3518 BLAKE2B b528d79d41de1099f3540c168339350b403568f38a338a5eeaf0a080ebc850cfa390ec72f03a6c61433f2617eaa452ed0c7397a530662188e9a73e5144bd6a1d SHA512 97b97d99fd121642ba7c170c62de245e9f2719dbfae148e0d69f7ee172f84669277f4ef26554fb4cecfab5956587ce50131d92e4244f28f914d1eecd2c361ba5
DIST gcc-5.5.0.tar.xz 71096120 BLAKE2B 1e29ed718c8eb96facc405248b69406d77e27118473550ebd67cb1d62c627d3a394aeffca904e94a1a4c9edf7d0ba5fcd2a81e4b008790c64c1ba43dbed58781 SHA512 670ff52c2ae12c7852c12987e91798c5aa8bd6daf21f0d6e0cd57a4aa59cc4f06a837fe76426eaa1424cfddca937bed377680700eadc04d76b9180d462364fa1
DIST gcc-6.4.0-patches-1.3.tar.bz2 13617 BLAKE2B 6bfb1d70397e6ca4359e5d190e36003c18c7a03a9be4f923461dcff11307601e6b3502a2e289585b53baeb919008d83c29ad24078f814aed9b331140e4687419 SHA512 91be7c8db0004cdd150fec0f8daa709374753d2f524c58087dcf45b6696dbd609972297e866f971fba1aa679464cf96a384dd111e104183c0939ab69add017b2
DIST gcc-6.4.0-patches-1.8.tar.bz2 16904 BLAKE2B cc5b47919e6586b8860b7ffd62a90251061d0d07f5fab3085b56fd5fe6419e6f84f98ee5fdaaddeb8ff3e8745178a0e38c8eff55aac7f6d8a97d269afe465618 SHA512 c55ac6b73b4f2ee1fbc2bbfd8d5176e7721ad45899cc4aa8dc858b366504f837d951d614c6af6ce698c320639c49855fd786b7d97e8475091601a4b7c0c2c652
DIST gcc-6.4.0-uclibc-patches-1.0.tar.bz2 1586 BLAKE2B 21f97a9e1c349b3d52def092a03e5a90533521da9af586be7ee527594f2d65745491ff8758d88c99a7ac215bde7ebf4e47a0a36cfcd7e66f70e0bebf2dadd922 SHA512 266dbe2bb53d892a24cd752d5c6833ea33f8df8b11b0471700ee53865243cd41f412f9bea8a369b474c9cd1435faff2e03902c7cb5638dd3ddcaa665aa2ec522
DIST gcc-6.4.0.tar.xz 76156220 BLAKE2B 2018c338b28ea644cdd1b327cb0dfe7ee9aa2010357c93f7e71969f587c58d3fdfa2bb4c82a309490c48bc86924400022fa93f41dc6c4345878d1bc1d8204265 SHA512 02c60e54527c7adf584798d5251f8a0b80c93d5deafce82501b2c28e6692e0bd783927bbfc4bc527a863c0cccc025150a34740a9e29badb02d4b48e56a8aba90
DIST gcc-6.5.0-patches-1.tar.bz2 9084 BLAKE2B fab5e50d786db1a5b552475d257ce3ace601e6201d51a6bf7ac31e0a5adeffb45a2a59bfbfa3fe2a6372200ee0af434d473de828b60b7668fdda75e0cad7ee71 SHA512 b8896db839ab46023dffa1fe1c6641555482d94a0d6097a0a3b70cc69063711a7d1c4e75cfdfd4db3daaf1c902888a212607ac2c605b17158cd51620c687946d
DIST gcc-6.5.0.tar.xz 74355588 BLAKE2B 538595d32000b15a53577f0dc6b164d75791a8ccdf90500d5f667ff78378ef4ab9bedb8a590848907caf863bf1165ebe108b5e81eb4b54e85ced4002affde693 SHA512 ce046f9a50050fd54b870aab764f7db187fe7ea92eb4aaffb7c3689ca623755604e231f2af97ef795f41c406bb80c797dd69957cfdd51dfa2ba60813f72b7eac
DIST gcc-7.3.0-patches-1.4.tar.bz2 8238 BLAKE2B 72a5dcb046558c8f5c3a75040fe24ce1106c43af7510d6febf667b4377cb9caea5ebe9e1287af90e4ebfffa3f3f22ca85f533acf57c2e2d896f92adc1659b9f5 SHA512 24ed0d82240426efb111bbf48913b96fdc824ae3aa5a653298a726ebe64a40791f484229bbab9cc58f73d658e0b4b83ccd13081cfbea6e1673ef1d076cca3b33
DIST gcc-7.3.0-patches-1.8.tar.bz2 14435 BLAKE2B 3e5c1abad56ccd6e0aa7739cb7cd651ec07ef9bf25be554343f1fa0444f251de41bde5fe6f8bb9e85e3f7a5cf8b2b83515647d93d62f338fa7843581fcaff2f8 SHA512 4d9d76b3d47f1af4f23cae15278d165b22065a3d1512323d1e31b5e0cb47e4654733dc43fa11906a3bd18e827621c9a5ec62b73563f8e5ead663c29f7d0d7345
DIST gcc-7.3.0.tar.xz 62462388 BLAKE2B dc8f132b21bd0543c3d9dd17557038aafe65675aa73c540954234a3c972b4c31c939149bd50183d072ab6c8d16919e19daeaaffd619ce2ccd62dbdf9a5bb3302 SHA512 ad41a7e4584e40e92cdf860bc0288500fbaf5dfb7e8c3fcabe9eba809c87bcfa85b46c19c19921b0cdf6d05483faede8287bb9ea120c0d1559449a70e602c8d4
DIST gcc-7.4.0-patches-1.1.tar.bz2 8778 BLAKE2B 52b02b3c619b99912ee254599788abebe3963cf85e49b56166069318e340a8e271d767e82798e6062fc2a042a86a88da66ab95f2d9e42933ff17688d616a903f SHA512 02ec2eb2460e24cf46f7a04ca3b80ca120719389a54a740070e991d9c96b6fd55d1fa04eb4249fd3043edc9c0f6519b5babcce76036cd0146183512aaae2d573
DIST gcc-7.4.0-patches-1.2.tar.bz2 9380 BLAKE2B a9608c7993b875f1c8d81e2aa15c46e10f91e6f37a723d7c09dd29dff7bb169a58597afc483dd46ffb3ce24944f824d746aa49d1a59924036e04aa855ca875aa SHA512 7959126eee11c10d9c3bbc867f6a74273dbd6e8f2d896d65b3fe1de73f0d8e09fbb62c7ff02ba8d1798206251ad1059c4490cdefa8adff09212eb23403923642
DIST gcc-7.4.0.tar.xz 62601888 BLAKE2B df91ec680d5389736d3a37a2d85cf2e12fbe87b642fdf4b332e67a043e00944aca00243cc6709f86abd92115cb5a78502146636395571d1ea4899531e15d5d0e SHA512 8864d8e4b97c2e1a4f17422f6e68120172ebefeab97b1757734f7185ca68a6b9a89011c6833c03fa454c17b0ac35b15e1d284881e6971035948ac6100f3aa45e
DIST gcc-8.2.0-patches-1.6.tar.bz2 17138 BLAKE2B edbeba9c41972836de072955c0db51406603aaf0dbb5f84ac1c5d8d2d61a8df6d725356655b69e3678950a0dc6dacc1bc2bf56f3620d685fe5c32045b3893f96 SHA512 32e7bddb5ec288def1e5c79d58023d90e29d77e83b70e3f21a22f4da78061cc49184d92c43807bdfd56a5067cbb9a8cfbfcb514016662aa1a24d791c7bd87b6b
DIST gcc-8.2.0-patches-1.7.tar.bz2 18166 BLAKE2B 2aff918d253d76c9b7d76b2d82e85c42f2ab8717e73831965b3a0fcc92b1ceacd7aa0b433dd0c180ad16906cfe059c020b256d01271ef95a6e56b08d41f4acfe SHA512 5110b610a4c9116ecd91490f66e570c09217c6b4d18bf46af5e1a51ed043df188ce313bdae6ba670b8800842387c98c1b83b7e1e0c396cbce71e6726d81f589c
DIST gcc-8.2.0.tar.xz 63460876 BLAKE2B c5372b0bdfcd2729577dca287b294623b78c583491998404eb307768c573618bdaaedb7d9ae0e39ba41a62a14b9525dff0e3083285754b7f5bb9987ecf635185 SHA512 64898a165f67e136d802a92e7633bf1b06c85266027e52127ea025bf5fc2291b5e858288aac0bdba246e6cdf7c6ec88bc8e0e7f3f6f1985f4297710cafde56ed
DIST gcc-8.3.0-patches-1.0.tar.bz2 12278 BLAKE2B 793465c5de0af850c7f3017b3011e68f3bd1664e6ce3500a3dc3003d37c03fe81857698957770a135eadd395a7767fa804d354ecdcdeb1d83623280ca569d4ec SHA512 0efadd2481713992807fed2683666f1094b3757674754601c079569f3ef70cd7aed3cefc9f815f4e59a21d37e4e940c122df714e16f3878a5f966450c4273669
DIST gcc-8.3.0-patches-1.1.tar.bz2 14430 BLAKE2B c702fbdb18c3c952cdb9adead3a193c948d78a4cb4b041beaa51a06b907fd357bb10a2f8d47d55978ebb08590fd7c9a6ec3df8e7a007173e20a55d251d947c72 SHA512 9e2284f597bab6f78ca24ead358b1f50495aefc9e0a416ace24c94723db7b2fb82d48426876138d00c82bcaf9c2f8b4674885988448dcf16dee1b764face9af4
DIST gcc-8.3.0.tar.xz 63694700 BLAKE2B 71df2ff5bd6874d57519c2e9af6b22152c8c4d7fab906a5f427b41bc4e8e742127592a8684120d9d3c9ce6241439531850be08ec0a4f29dbfdee95435655fdca SHA512 1811337ae3add9680cec64968a2509d085b6dc5b6783fc1e8c295e3e47416196fd1a3ad8dfe7e10be2276b4f62c357659ce2902f239f60a8648548231b4b5802
DIST gcc-9.1.0-patches-1.0.tar.bz2 12235 BLAKE2B 3f7a11dfaf05f14a1affcc602bcbea685a214025abc24d6c9df9634a1024142529c3d380d9bcbe50e1d1acdc47f095154cd872fc23487538e697a1fd563b5f23 SHA512 c9a1979e994e08f90a6ec44f088c407946c955f786b7b47adcfc3a56fab5fcaf571442ce60f380444092aad9801cd32f8a4d137bb6076f9a5cf9c961902e52fb
DIST gcc-9.1.0.tar.xz 70546856 BLAKE2B 0f7e5575aebc24113d12a56eb3dbf4bcdba3c656a76513c44dbbcded9ee71629727f24949bf2e1424682a9e5eda7c51eed93317e6f80013f5a837aaf25b82805 SHA512 b6134df027e734cee5395afd739fcfa4ea319a6017d662e54e89df927dea19d3fff7a6e35d676685383034e3db01c9d0b653f63574c274eeb15a2cb0bc7a1f28
DIST gdc-0.24-src.tar.bz2 1012099 BLAKE2B 2c85058aad09af328719a702f69d655b9aa9655f2a83bb46bd21367cd442ed72c9b471ddaa764753f782dcb2f22fe51b052a965ed08290e0d9415b543481d144 SHA512 9aec7e4b102e602dfb61cd09ea4b4a96af637ceb3d726235261d09ebd35dbd416abcbfe0e46918e48474bd241fe9bb29abc145a65aa834669295aaee4fca0686
DIST gcc-9.3.0-patches-3.tar.bz2 14193 BLAKE2B 4863fec1af41a8cdb2c24479b28812df36c1f71ab71d267ff0efc467cfb8ce99ed77714ceaedfb08b0d1eb0eb9316758cc7cbc5a8ad0bb582050690935e64b46 SHA512 8b90a5826df64e6f74e4f6c0e5acead695b38f671e26485b110d5b341daaad4ac21aabb04baae9ad457408eed274888b7f785bbc782611acfc7261e6a315d110
DIST gcc-9.3.0.tar.xz 70533868 BLAKE2B 21efb1432aefad5ed9b9b395e88ef2adfda3a8ea6e3e808cd151da6e66df9fed1bafdc8b8ff055d4b2272ac786d8b7ddc4293bb6b51c55c40a261a0eda0e7cb4 SHA512 4b9e3639eef6e623747a22c37a904b4750c93b6da77cf3958d5047e9b5ebddb7eebe091cc16ca0a227c0ecbd2bf3b984b221130f269a97ee4cc18f9cf6c444de

View File

@ -0,0 +1,11 @@
# Flatcar Container Linux notes for the GCC package
This readme captures notes for upgrading GCC in the SDK toolchain.
Starting notes
- The SDK uses cross compiler environments for all boards, even "native" (x86 on x86).
- For "merely" one-shot compiling OS image packages with a newer gcc version it is sufficient to supply the build recipe and then build it as a cross compiler. For making the update persistent, the SDK needs to be build first (all 4 stages).
- The SDK build uses its own set of build recipes, i.e. **not** `src/third-party/(coreos-overlay|portage-stable). Instead, the recipes included with the bootstrap SDK (used to build the new SDK) are used. These reside in `chroot/var/gentoo/repos/gentoo`.
- This effectively prevents *replacing* gcc in a single step, as the SDK bootstrap process will try to build the old gcc during the first stage(s)
- Instead, the new gcc version's build recipe needs to be added, then the SDK needs to be built, and then the old version's recipe can be removed.

View File

@ -0,0 +1,29 @@
https://bugs.gentoo.org/707958
https://gcc.gnu.org/PR88879
Subject: [PATCH] sel-sched: allow negative insn priority (PR 88879)
From: Alexander Monakov <amonakov@ispras.ru>
PR rtl-optimization/88879
* sel-sched.c (sel_target_adjust_priority): Remove assert.
From-SVN: r271039
---
gcc/ChangeLog | 5 +++++
gcc/sel-sched.c | 2 --
2 files changed, 5 insertions(+), 2 deletions(-)
--- a/gcc/sel-sched.c
+++ b/gcc/sel-sched.c
@@ -3331,8 +3331,6 @@ sel_target_adjust_priority (expr_t expr)
else
new_priority = priority;
- gcc_assert (new_priority >= 0);
-
/* If the priority has changed, adjust EXPR_PRIORITY_ADJ accordingly. */
EXPR_PRIORITY_ADJ (expr) = new_priority - EXPR_PRIORITY (expr);
--
2.25.0

View File

@ -4,8 +4,8 @@ that it violates the cheesy version grep.
http://bugs.gentoo.org/198182
--- configure
+++ configure
--- a/configure
+++ b/configure
@@ -3573,6 +3573,6 @@
:
else

View File

@ -1,37 +0,0 @@
# Copyright 1999-2015 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI="5"
PATCH_VER="1.9"
UCLIBC_VER="1.0"
HTB_VER="1.00-r2"
inherit eutils toolchain
# ia64 - broken static handling; USE=static emerge busybox
KEYWORDS="~amd64 ~x86"
# NOTE: we SHOULD be using at least binutils 2.15.90.0.1 everywhere for proper
# .eh_frame ld optimisation and symbol visibility support, but it hasnt been
# well tested in gentoo on any arch other than amd64!!
RDEPEND=">=sys-devel/binutils-2.14.90.0.6-r1"
DEPEND="${RDEPEND}
amd64? ( >=sys-devel/binutils-2.15.90.0.1.1-r1 )"
src_prepare() {
toolchain_src_prepare
if [[ -n ${UCLIBC_VER} ]] && [[ ${CTARGET} == *-uclibc* ]] ; then
mv "${S}"/gcc-3.3.2/libstdc++-v3/config/os/uclibc "${S}"/libstdc++-v3/config/os/ || die
mv "${S}"/gcc-3.3.2/libstdc++-v3/config/locale/uclibc "${S}"/libstdc++-v3/config/locale/ || die
fi
# Anything useful and objc will require libffi. Seriously. Lets just force
# libffi to install with USE="objc", even though it normally only installs
# if you attempt to build gcj.
if use objc && ! use gcj ; then
epatch "${FILESDIR}"/3.3.4/libffi-without-libgcj.patch
#epatch "${FILESDIR}"/3.4.3/libffi-nogcj-lib-path-fix.patch
fi
}

View File

@ -1,37 +0,0 @@
# Copyright 1999-2018 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="5"
PATCH_VER="1.10"
UCLIBC_VER="1.0"
HTB_VER="1.00-r2"
inherit eutils toolchain
# ia64 - broken static handling; USE=static emerge busybox
KEYWORDS="~amd64 ~x86"
# NOTE: we SHOULD be using at least binutils 2.15.90.0.1 everywhere for proper
# .eh_frame ld optimisation and symbol visibility support, but it hasnt been
# well tested in gentoo on any arch other than amd64!!
RDEPEND=">=sys-devel/binutils-2.14.90.0.6-r1"
DEPEND="${RDEPEND}
amd64? ( >=sys-devel/binutils-2.15.90.0.1.1-r1 )"
src_prepare() {
toolchain_src_prepare
if [[ -n ${UCLIBC_VER} ]] && [[ ${CTARGET} == *-uclibc* ]] ; then
mv "${S}"/gcc-3.3.2/libstdc++-v3/config/os/uclibc "${S}"/libstdc++-v3/config/os/ || die
mv "${S}"/gcc-3.3.2/libstdc++-v3/config/locale/uclibc "${S}"/libstdc++-v3/config/locale/ || die
fi
# Anything useful and objc will require libffi. Seriously. Lets just force
# libffi to install with USE="objc", even though it normally only installs
# if you attempt to build gcj.
if use objc && ! use gcj ; then
epatch "${FILESDIR}"/3.3.4/libffi-without-libgcj.patch
#epatch "${FILESDIR}"/3.4.3/libffi-nogcj-lib-path-fix.patch
fi
}

View File

@ -1,48 +0,0 @@
# Copyright 1999-2015 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI="5"
PATCH_VER="1.8"
UCLIBC_VER="1.1"
UCLIBC_GCC_VER="3.4.5"
HTB_VER="1.00.1"
HTB_GCC_VER="3.4.4"
D_VER="0.24"
inherit eutils toolchain
KEYWORDS="-* alpha amd64 arm ~ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~x86-fbsd"
# we need a proper glibc version for the Scrt1.o provided to the pie-ssp specs
# NOTE: we SHOULD be using at least binutils 2.15.90.0.1 everywhere for proper
# .eh_frame ld optimisation and symbol visibility support, but it hasnt been
# well tested in gentoo on any arch other than amd64!!
RDEPEND=""
DEPEND="${RDEPEND}
>=sys-devel/binutils-2.14.90.0.8-r1
amd64? ( >=sys-devel/binutils-2.15.90.0.1.1-r1 )"
src_prepare() {
toolchain_src_prepare
# Anything useful and objc will require libffi. Seriously. Lets just force
# libffi to install with USE="objc", even though it normally only installs
# if you attempt to build gcj.
if use objc && ! use gcj ; then
epatch "${FILESDIR}"/3.4.3/libffi-without-libgcj.patch
#epatch "${FILESDIR}"/3.4.3/libffi-nogcj-lib-path-fix.patch
fi
# Fix cross-compiling
epatch "${FILESDIR}"/3.4.4/gcc-3.4.4-cross-compile.patch
# Arch stuff
case $(tc-arch) in
amd64)
if is_multilib ; then
sed -i -e '/GLIBCXX_IS_NATIVE=/s:false:true:' libstdc++-v3/configure || die
fi
;;
esac
}

View File

@ -1,15 +0,0 @@
# Copyright 1999-2018 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="5"
PATCH_VER="1.4"
UCLIBC_VER="1.0"
inherit toolchain
KEYWORDS=""
RDEPEND=""
DEPEND="${RDEPEND}
>=${CATEGORY}/binutils-2.15.94"

View File

@ -1,15 +0,0 @@
# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI="5"
PATCH_VER="1.3"
UCLIBC_VER="1.0"
inherit toolchain
KEYWORDS=""
RDEPEND=""
DEPEND="${RDEPEND}
>=${CATEGORY}/binutils-2.15.94"

View File

@ -1,29 +0,0 @@
# Copyright 1999-2018 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="5"
PATCH_VER="1.7"
UCLIBC_VER="1.0"
D_VER="0.24"
inherit eutils toolchain
KEYWORDS="-* ~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~x86-fbsd"
RDEPEND=""
DEPEND="${RDEPEND}
ppc? ( >=${CATEGORY}/binutils-2.17 )
ppc64? ( >=${CATEGORY}/binutils-2.17 )
>=${CATEGORY}/binutils-2.15.94"
src_prepare() {
toolchain_src_prepare
use vanilla && return 0
# Fix cross-compiling
epatch "${FILESDIR}"/4.1.0/gcc-4.1.0-cross-compile.patch
epatch "${FILESDIR}"/4.1.0/gcc-4.1.0-fast-math-i386-Os-workaround.patch
}

View File

@ -1,29 +0,0 @@
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI="5"
PATCH_VER="1.6"
UCLIBC_VER="1.0"
D_VER="0.24"
inherit eutils toolchain
KEYWORDS="-* alpha amd64 arm hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh sparc x86 ~x86-fbsd"
RDEPEND=""
DEPEND="${RDEPEND}
ppc? ( >=${CATEGORY}/binutils-2.17 )
ppc64? ( >=${CATEGORY}/binutils-2.17 )
>=${CATEGORY}/binutils-2.15.94"
src_prepare() {
toolchain_src_prepare
use vanilla && return 0
# Fix cross-compiling
epatch "${FILESDIR}"/4.1.0/gcc-4.1.0-cross-compile.patch
epatch "${FILESDIR}"/4.1.0/gcc-4.1.0-fast-math-i386-Os-workaround.patch
}

View File

@ -1,17 +0,0 @@
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI="5"
PATCH_VER="1.4"
UCLIBC_VER="1.0"
inherit toolchain
KEYWORDS="~alpha ~amd64 ~arm hppa ~ia64 ~m68k ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd"
RDEPEND=""
DEPEND="${RDEPEND}
ppc? ( >=${CATEGORY}/binutils-2.17 )
ppc64? ( >=${CATEGORY}/binutils-2.17 )
>=${CATEGORY}/binutils-2.15.94"

View File

@ -1,17 +0,0 @@
# Copyright 1999-2018 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="5"
PATCH_VER="1.5"
UCLIBC_VER="1.0"
inherit toolchain
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd"
RDEPEND=""
DEPEND="${RDEPEND}
ppc? ( >=${CATEGORY}/binutils-2.17 )
ppc64? ( >=${CATEGORY}/binutils-2.17 )
>=${CATEGORY}/binutils-2.15.94"

View File

@ -1,28 +0,0 @@
# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI="5"
PATCH_VER="1.2"
UCLIBC_VER="1.0"
inherit toolchain
KEYWORDS="alpha amd64 arm -hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh sparc x86 ~x86-fbsd"
RDEPEND=""
DEPEND="${RDEPEND}
ppc? ( >=${CATEGORY}/binutils-2.17 )
ppc64? ( >=${CATEGORY}/binutils-2.17 )
>=${CATEGORY}/binutils-2.15.94"
if [[ ${CATEGORY} != cross-* ]] ; then
PDEPEND="${PDEPEND} elibc_glibc? ( >=sys-libs/glibc-2.8 )"
fi
src_prepare() {
toolchain_src_prepare
use vanilla && return 0
sed -i 's/use_fixproto=yes/:/' gcc/config.gcc #PR33200
}

View File

@ -1,28 +0,0 @@
# Copyright 1999-2018 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="5"
PATCH_VER="1.3"
UCLIBC_VER="1.0"
inherit toolchain
KEYWORDS="~alpha ~amd64 ~arm -hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~x86-fbsd"
RDEPEND=""
DEPEND="${RDEPEND}
ppc? ( >=${CATEGORY}/binutils-2.17 )
ppc64? ( >=${CATEGORY}/binutils-2.17 )
>=${CATEGORY}/binutils-2.15.94"
if [[ ${CATEGORY} != cross-* ]] ; then
PDEPEND="${PDEPEND} elibc_glibc? ( >=sys-libs/glibc-2.8 )"
fi
src_prepare() {
toolchain_src_prepare
use vanilla && return 0
sed -i 's/use_fixproto=yes/:/' gcc/config.gcc #PR33200
}

View File

@ -1,28 +0,0 @@
# Copyright 1999-2018 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="5"
PATCH_VER="1.4"
UCLIBC_VER="1.0"
inherit eutils toolchain
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~x86-fbsd"
RDEPEND=""
DEPEND="${RDEPEND}
elibc_glibc? ( >=sys-libs/glibc-2.8 )
ppc? ( >=${CATEGORY}/binutils-2.17 )
ppc64? ( >=${CATEGORY}/binutils-2.17 )
>=${CATEGORY}/binutils-2.15.94"
if [[ ${CATEGORY} != cross-* ]] ; then
PDEPEND="${PDEPEND} elibc_glibc? ( >=sys-libs/glibc-2.8 )"
fi
src_prepare() {
toolchain_src_prepare
use vanilla && return 0
sed -i 's/use_fixproto=yes/:/' gcc/config.gcc #PR33200
}

View File

@ -1,28 +0,0 @@
# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI="5"
PATCH_VER="1.3"
UCLIBC_VER="1.0"
inherit eutils toolchain
KEYWORDS="alpha amd64 arm hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh sparc x86 ~x86-fbsd"
RDEPEND=""
DEPEND="${RDEPEND}
elibc_glibc? ( >=sys-libs/glibc-2.8 )
ppc? ( >=${CATEGORY}/binutils-2.17 )
ppc64? ( >=${CATEGORY}/binutils-2.17 )
>=${CATEGORY}/binutils-2.15.94"
if [[ ${CATEGORY} != cross-* ]] ; then
PDEPEND="${PDEPEND} elibc_glibc? ( >=sys-libs/glibc-2.8 )"
fi
src_prepare() {
toolchain_src_prepare
use vanilla && return 0
sed -i 's/use_fixproto=yes/:/' gcc/config.gcc #PR33200
}

View File

@ -1,29 +0,0 @@
# Copyright 1999-2018 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="5"
PATCH_VER="1.4"
UCLIBC_VER="1.0"
inherit eutils toolchain
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
RDEPEND=""
DEPEND="${RDEPEND}
elibc_glibc? ( >=sys-libs/glibc-2.8 )
ppc? ( >=${CATEGORY}/binutils-2.17 )
ppc64? ( >=${CATEGORY}/binutils-2.17 )
>=${CATEGORY}/binutils-2.15.94"
if [[ ${CATEGORY} != cross-* ]] ; then
PDEPEND="${PDEPEND} elibc_glibc? ( >=sys-libs/glibc-2.8 )"
fi
src_prepare() {
toolchain_src_prepare
use vanilla && return 0
sed -i 's/use_fixproto=yes/:/' gcc/config.gcc #PR33200
}

View File

@ -1,29 +0,0 @@
# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI="5"
PATCH_VER="1.3"
UCLIBC_VER="1.0"
inherit eutils toolchain
KEYWORDS="alpha amd64 arm hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd"
RDEPEND=""
DEPEND="${RDEPEND}
elibc_glibc? ( >=sys-libs/glibc-2.8 )
ppc? ( >=${CATEGORY}/binutils-2.17 )
ppc64? ( >=${CATEGORY}/binutils-2.17 )
>=${CATEGORY}/binutils-2.15.94"
if [[ ${CATEGORY} != cross-* ]] ; then
PDEPEND="${PDEPEND} elibc_glibc? ( >=sys-libs/glibc-2.8 )"
fi
src_prepare() {
toolchain_src_prepare
use vanilla && return 0
sed -i 's/use_fixproto=yes/:/' gcc/config.gcc #PR33200
}

View File

@ -1,30 +0,0 @@
# Copyright 1999-2018 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="5"
PATCH_VER="1.4"
UCLIBC_VER="1.0"
inherit eutils toolchain
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
RDEPEND=""
DEPEND="${RDEPEND}
elibc_glibc? ( >=sys-libs/glibc-2.8 )
>=${CATEGORY}/binutils-2.18"
if [[ ${CATEGORY} != cross-* ]] ; then
PDEPEND="${PDEPEND} elibc_glibc? ( >=sys-libs/glibc-2.8 )"
fi
src_prepare() {
if has_version '<sys-libs/glibc-2.12' ; then
ewarn "Your host glibc is too old; disabling automatic fortify."
ewarn "Please rebuild gcc after upgrading to >=glibc-2.12 #362315"
EPATCH_EXCLUDE+=" 10_all_default-fortify-source.patch"
fi
toolchain_src_prepare
}

View File

@ -1,30 +0,0 @@
# Copyright 1999-2015 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI="5"
PATCH_VER="1.3"
UCLIBC_VER="1.0"
inherit eutils toolchain
KEYWORDS="alpha amd64 arm hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd"
RDEPEND=""
DEPEND="${RDEPEND}
elibc_glibc? ( >=sys-libs/glibc-2.8 )
>=${CATEGORY}/binutils-2.18"
if [[ ${CATEGORY} != cross-* ]] ; then
PDEPEND="${PDEPEND} elibc_glibc? ( >=sys-libs/glibc-2.8 )"
fi
src_prepare() {
if has_version '<sys-libs/glibc-2.12' ; then
ewarn "Your host glibc is too old; disabling automatic fortify."
ewarn "Please rebuild gcc after upgrading to >=glibc-2.12 #362315"
EPATCH_EXCLUDE+=" 10_all_default-fortify-source.patch"
fi
toolchain_src_prepare
}

View File

@ -1,47 +0,0 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI="5"
PATCH_VER="1.4"
UCLIBC_VER="1.0"
# Hardened gcc 4 stuff
PIE_VER="0.5.5"
SPECS_VER="0.2.0"
SPECS_GCC_VER="4.4.3"
# arch/libc configurations known to be stable with {PIE,SSP}-by-default
PIE_GLIBC_STABLE="x86 amd64 ppc ppc64 arm ia64"
PIE_UCLIBC_STABLE="x86 arm amd64 ppc ppc64"
SSP_STABLE="amd64 x86 ppc ppc64 arm"
# uclibc need tls and nptl support for SSP support
# uclibc need to be >= 0.9.33
SSP_UCLIBC_STABLE="x86 amd64 ppc ppc64 arm"
#end Hardened stuff
inherit eutils toolchain
KEYWORDS="alpha amd64 arm hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 -amd64-fbsd -x86-fbsd"
RDEPEND=""
DEPEND="${RDEPEND}
elibc_glibc? ( >=sys-libs/glibc-2.8 )
>=${CATEGORY}/binutils-2.18"
if [[ ${CATEGORY} != cross-* ]] ; then
PDEPEND="${PDEPEND} elibc_glibc? ( >=sys-libs/glibc-2.8 )"
fi
src_prepare() {
if has_version '<sys-libs/glibc-2.12' ; then
ewarn "Your host glibc is too old; disabling automatic fortify."
ewarn "Please rebuild gcc after upgrading to >=glibc-2.12 #362315"
EPATCH_EXCLUDE+=" 10_all_default-fortify-source.patch"
fi
toolchain_src_prepare
use vanilla && return 0
[[ ${CHOST} == ${CTARGET} ]] && epatch "${FILESDIR}"/gcc-spec-env.patch
}

View File

@ -1,47 +0,0 @@
# Copyright 1999-2018 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="5"
PATCH_VER="1.5"
UCLIBC_VER="1.0"
# Hardened gcc 4 stuff
PIE_VER="0.5.5"
SPECS_VER="0.2.0"
SPECS_GCC_VER="4.4.3"
# arch/libc configurations known to be stable with {PIE,SSP}-by-default
PIE_GLIBC_STABLE="x86 amd64 ppc ppc64 arm ia64"
PIE_UCLIBC_STABLE="x86 arm amd64 ppc ppc64"
SSP_STABLE="amd64 x86 ppc ppc64 arm"
# uclibc need tls and nptl support for SSP support
# uclibc need to be >= 0.9.33
SSP_UCLIBC_STABLE="x86 amd64 ppc ppc64 arm"
#end Hardened stuff
inherit eutils toolchain
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 -amd64-fbsd -x86-fbsd"
RDEPEND=""
DEPEND="${RDEPEND}
elibc_glibc? ( >=sys-libs/glibc-2.8 )
>=${CATEGORY}/binutils-2.18"
if [[ ${CATEGORY} != cross-* ]] ; then
PDEPEND="${PDEPEND} elibc_glibc? ( >=sys-libs/glibc-2.8 )"
fi
src_prepare() {
if has_version '<sys-libs/glibc-2.12' ; then
ewarn "Your host glibc is too old; disabling automatic fortify."
ewarn "Please rebuild gcc after upgrading to >=glibc-2.12 #362315"
EPATCH_EXCLUDE+=" 10_all_default-fortify-source.patch"
fi
toolchain_src_prepare
use vanilla && return 0
[[ ${CHOST} == ${CTARGET} ]] && epatch "${FILESDIR}"/gcc-spec-env.patch
}

View File

@ -1,47 +0,0 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI="5"
PATCH_VER="1.3"
UCLIBC_VER="1.0"
# Hardened gcc 4 stuff
PIE_VER="0.6.2"
SPECS_VER="0.2.0"
SPECS_GCC_VER="4.4.3"
# arch/libc configurations known to be stable with {PIE,SSP}-by-default
PIE_GLIBC_STABLE="x86 amd64 mips ppc ppc64 arm ia64"
PIE_UCLIBC_STABLE="x86 arm amd64 mips ppc ppc64"
SSP_STABLE="amd64 x86 mips ppc ppc64 arm"
# uclibc need tls and nptl support for SSP support
# uclibc need to be >= 0.9.33
SSP_UCLIBC_STABLE="x86 amd64 mips ppc ppc64 arm"
#end Hardened stuff
inherit eutils toolchain
KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~amd64-fbsd ~x86-fbsd"
RDEPEND=""
DEPEND="${RDEPEND}
elibc_glibc? ( >=sys-libs/glibc-2.8 )
>=${CATEGORY}/binutils-2.20"
if [[ ${CATEGORY} != cross-* ]] ; then
PDEPEND="${PDEPEND} elibc_glibc? ( >=sys-libs/glibc-2.8 )"
fi
src_prepare() {
if has_version '<sys-libs/glibc-2.12' ; then
ewarn "Your host glibc is too old; disabling automatic fortify."
ewarn "Please rebuild gcc after upgrading to >=glibc-2.12 #362315"
EPATCH_EXCLUDE+=" 10_all_default-fortify-source.patch"
fi
toolchain_src_prepare
use vanilla && return 0
#Use -r1 for newer piepatchet that use DRIVER_SELF_SPECS for the hardened specs.
[[ ${CHOST} == ${CTARGET} ]] && epatch "${FILESDIR}"/gcc-spec-env-r1.patch
}

View File

@ -1,47 +0,0 @@
# Copyright 1999-2018 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="5"
PATCH_VER="1.4"
UCLIBC_VER="1.0"
# Hardened gcc 4 stuff
PIE_VER="0.6.2"
SPECS_VER="0.2.0"
SPECS_GCC_VER="4.4.3"
# arch/libc configurations known to be stable with {PIE,SSP}-by-default
PIE_GLIBC_STABLE="x86 amd64 mips ppc ppc64 arm ia64"
PIE_UCLIBC_STABLE="x86 arm amd64 mips ppc ppc64"
SSP_STABLE="amd64 x86 mips ppc ppc64 arm"
# uclibc need tls and nptl support for SSP support
# uclibc need to be >= 0.9.33
SSP_UCLIBC_STABLE="x86 amd64 mips ppc ppc64 arm"
#end Hardened stuff
inherit eutils toolchain
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
RDEPEND=""
DEPEND="${RDEPEND}
elibc_glibc? ( >=sys-libs/glibc-2.8 )
>=${CATEGORY}/binutils-2.20"
if [[ ${CATEGORY} != cross-* ]] ; then
PDEPEND="${PDEPEND} elibc_glibc? ( >=sys-libs/glibc-2.8 )"
fi
src_prepare() {
if has_version '<sys-libs/glibc-2.12' ; then
ewarn "Your host glibc is too old; disabling automatic fortify."
ewarn "Please rebuild gcc after upgrading to >=glibc-2.12 #362315"
EPATCH_EXCLUDE+=" 10_all_default-fortify-source.patch"
fi
toolchain_src_prepare
use vanilla && return 0
#Use -r1 for newer piepatchet that use DRIVER_SELF_SPECS for the hardened specs.
[[ ${CHOST} == ${CTARGET} ]] && epatch "${FILESDIR}"/gcc-spec-env-r1.patch
}

View File

@ -1,50 +0,0 @@
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI="5"
PATCH_VER="1.3"
UCLIBC_VER="1.0"
# Hardened gcc 4 stuff
PIE_VER="0.6.4"
SPECS_VER="0.2.0"
SPECS_GCC_VER="4.4.3"
# arch/libc configurations known to be stable with {PIE,SSP}-by-default
PIE_GLIBC_STABLE="x86 amd64 mips ppc ppc64 arm ia64"
PIE_UCLIBC_STABLE="x86 arm amd64 mips ppc ppc64"
SSP_STABLE="amd64 x86 mips ppc ppc64 arm"
# uclibc need tls and nptl support for SSP support
# uclibc need to be >= 0.9.33
SSP_UCLIBC_STABLE="x86 amd64 mips ppc ppc64 arm"
#end Hardened stuff
inherit eutils toolchain
KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~amd64-fbsd ~x86-fbsd"
RDEPEND=""
DEPEND="${RDEPEND}
elibc_glibc? ( >=sys-libs/glibc-2.8 )
>=${CATEGORY}/binutils-2.20"
if [[ ${CATEGORY} != cross-* ]] ; then
PDEPEND="${PDEPEND} elibc_glibc? ( >=sys-libs/glibc-2.8 )"
fi
src_prepare() {
if has_version '<sys-libs/glibc-2.12' ; then
ewarn "Your host glibc is too old; disabling automatic fortify."
ewarn "Please rebuild gcc after upgrading to >=glibc-2.12 #362315"
EPATCH_EXCLUDE+=" 10_all_default-fortify-source.patch"
fi
# Bug 638056
epatch "${FILESDIR}/${P}-bootstrap.patch"
toolchain_src_prepare
use vanilla && return 0
# Use -r1 for newer piepatchet that use DRIVER_SELF_SPECS for the hardened specs.
[[ ${CHOST} == ${CTARGET} ]] && epatch "${FILESDIR}"/gcc-spec-env-r1.patch
}

View File

@ -1,44 +0,0 @@
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI="5"
PATCH_VER="1.9"
UCLIBC_VER="1.0"
# Hardened gcc 4 stuff
PIE_VER="0.6.5"
SPECS_VER="0.2.0"
SPECS_GCC_VER="4.4.3"
# arch/libc configurations known to be stable with {PIE,SSP}-by-default
PIE_GLIBC_STABLE="x86 amd64 mips ppc ppc64 arm ia64"
PIE_UCLIBC_STABLE="x86 arm amd64 mips ppc ppc64"
SSP_STABLE="amd64 x86 mips ppc ppc64 arm"
# uclibc need tls and nptl support for SSP support
# uclibc need to be >= 0.9.33
SSP_UCLIBC_STABLE="x86 amd64 mips ppc ppc64 arm"
#end Hardened stuff
inherit toolchain
KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~amd64-fbsd ~x86-fbsd"
RDEPEND=""
DEPEND="${RDEPEND}
elibc_glibc? ( >=sys-libs/glibc-2.8 )
>=${CATEGORY}/binutils-2.20"
if [[ ${CATEGORY} != cross-* ]] ; then
PDEPEND="${PDEPEND} elibc_glibc? ( >=sys-libs/glibc-2.8 )"
fi
src_prepare() {
if has_version '<sys-libs/glibc-2.12' ; then
ewarn "Your host glibc is too old; disabling automatic fortify."
ewarn "Please rebuild gcc after upgrading to >=glibc-2.12 #362315"
EPATCH_EXCLUDE+=" 10_all_default-fortify-source.patch"
fi
is_crosscompile && EPATCH_EXCLUDE+=" 05_all_gcc-spec-env.patch"
toolchain_src_prepare
}

View File

@ -1,44 +0,0 @@
# Copyright 1999-2018 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="5"
PATCH_VER="1.11"
UCLIBC_VER="1.0"
# Hardened gcc 4 stuff
PIE_VER="0.6.5"
SPECS_VER="0.2.0"
SPECS_GCC_VER="4.4.3"
# arch/libc configurations known to be stable with {PIE,SSP}-by-default
PIE_GLIBC_STABLE="x86 amd64 mips ppc ppc64 arm ia64"
PIE_UCLIBC_STABLE="x86 arm amd64 mips ppc ppc64"
SSP_STABLE="amd64 x86 mips ppc ppc64 arm"
# uclibc need tls and nptl support for SSP support
# uclibc need to be >= 0.9.33
SSP_UCLIBC_STABLE="x86 amd64 mips ppc ppc64 arm"
#end Hardened stuff
inherit toolchain
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
RDEPEND=""
DEPEND="${RDEPEND}
elibc_glibc? ( >=sys-libs/glibc-2.8 )
>=${CATEGORY}/binutils-2.20"
if [[ ${CATEGORY} != cross-* ]] ; then
PDEPEND="${PDEPEND} elibc_glibc? ( >=sys-libs/glibc-2.8 )"
fi
src_prepare() {
if has_version '<sys-libs/glibc-2.12' ; then
ewarn "Your host glibc is too old; disabling automatic fortify."
ewarn "Please rebuild gcc after upgrading to >=glibc-2.12 #362315"
EPATCH_EXCLUDE+=" 10_all_default-fortify-source.patch"
fi
is_crosscompile && EPATCH_EXCLUDE+=" 05_all_gcc-spec-env.patch"
toolchain_src_prepare
}

View File

@ -1,44 +0,0 @@
# Copyright 1999-2018 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="5"
PATCH_VER="1.0"
UCLIBC_VER="1.0"
# Hardened gcc 4 stuff
PIE_VER="0.6.5"
SPECS_VER="0.2.0"
SPECS_GCC_VER="4.4.3"
# arch/libc configurations known to be stable with {PIE,SSP}-by-default
PIE_GLIBC_STABLE="x86 amd64 mips ppc ppc64 arm ia64"
PIE_UCLIBC_STABLE="x86 arm amd64 mips ppc ppc64"
SSP_STABLE="amd64 x86 mips ppc ppc64 arm"
# uclibc need tls and nptl support for SSP support
# uclibc need to be >= 0.9.33
SSP_UCLIBC_STABLE="x86 amd64 mips ppc ppc64 arm"
#end Hardened stuff
inherit toolchain
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
RDEPEND=""
DEPEND="${RDEPEND}
elibc_glibc? ( >=sys-libs/glibc-2.8 )
>=${CATEGORY}/binutils-2.20"
if [[ ${CATEGORY} != cross-* ]] ; then
PDEPEND="${PDEPEND} elibc_glibc? ( >=sys-libs/glibc-2.8 )"
fi
src_prepare() {
if has_version '<sys-libs/glibc-2.12' ; then
ewarn "Your host glibc is too old; disabling automatic fortify."
ewarn "Please rebuild gcc after upgrading to >=glibc-2.12 #362315"
EPATCH_EXCLUDE+=" 10_all_default-fortify-source.patch"
fi
is_crosscompile && EPATCH_EXCLUDE+=" 05_all_gcc-spec-env.patch"
toolchain_src_prepare
}

View File

@ -1,24 +0,0 @@
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI="5"
PATCH_VER="1.3"
UCLIBC_VER="1.0"
inherit toolchain
KEYWORDS="alpha amd64 arm arm64 hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd"
RDEPEND=""
DEPEND="${RDEPEND}
elibc_glibc? ( >=sys-libs/glibc-2.13 )
>=${CATEGORY}/binutils-2.20"
if [[ ${CATEGORY} != cross-* ]] ; then
PDEPEND="${PDEPEND} elibc_glibc? ( >=sys-libs/glibc-2.13 )"
fi
src_prepare() {
toolchain_src_prepare
}

View File

@ -1,24 +0,0 @@
# Copyright 1999-2018 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="5"
PATCH_VER="1.8"
UCLIBC_VER="1.0"
inherit toolchain
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
RDEPEND=""
DEPEND="${RDEPEND}
elibc_glibc? ( >=sys-libs/glibc-2.13 )
>=${CATEGORY}/binutils-2.20"
if [[ ${CATEGORY} != cross-* ]] ; then
PDEPEND="${PDEPEND} elibc_glibc? ( >=sys-libs/glibc-2.13 )"
fi
src_prepare() {
toolchain_src_prepare
}

View File

@ -1,23 +0,0 @@
# Copyright 1999-2018 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="5"
PATCH_VER="1"
inherit toolchain
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
RDEPEND=""
DEPEND="${RDEPEND}
elibc_glibc? ( >=sys-libs/glibc-2.13 )
>=${CATEGORY}/binutils-2.20"
if [[ ${CATEGORY} != cross-* ]] ; then
PDEPEND="${PDEPEND} elibc_glibc? ( >=sys-libs/glibc-2.13 )"
fi
src_prepare() {
toolchain_src_prepare
}

View File

@ -1,24 +0,0 @@
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI="5"
PATCH_VER="1.4"
#UCLIBC_VER="1.0"
inherit toolchain
KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~amd64-fbsd ~x86-fbsd ~ppc-macos"
RDEPEND=""
DEPEND="${RDEPEND}
elibc_glibc? ( >=sys-libs/glibc-2.13 )
>=${CATEGORY}/binutils-2.20"
if [[ ${CATEGORY} != cross-* ]] ; then
PDEPEND="${PDEPEND} elibc_glibc? ( >=sys-libs/glibc-2.13 )"
fi
src_prepare() {
toolchain_src_prepare
}

View File

@ -1,24 +0,0 @@
# Copyright 1999-2018 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="5"
PATCH_VER="1.8"
#UCLIBC_VER="1.0"
inherit toolchain
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~ppc-macos"
RDEPEND=""
DEPEND="${RDEPEND}
elibc_glibc? ( >=sys-libs/glibc-2.13 )
>=${CATEGORY}/binutils-2.20"
if [[ ${CATEGORY} != cross-* ]] ; then
PDEPEND="${PDEPEND} elibc_glibc? ( >=sys-libs/glibc-2.13 )"
fi
src_prepare() {
toolchain_src_prepare
}

View File

@ -1,19 +0,0 @@
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="5"
PATCH_VER="1.2"
inherit toolchain
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~ppc-macos"
RDEPEND=""
DEPEND="${RDEPEND}
elibc_glibc? ( >=sys-libs/glibc-2.13 )
>=${CATEGORY}/binutils-2.20"
if [[ ${CATEGORY} != cross-* ]] ; then
PDEPEND="${PDEPEND} elibc_glibc? ( >=sys-libs/glibc-2.13 )"
fi

View File

@ -1,23 +0,0 @@
# Copyright 1999-2018 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="5"
PATCH_VER="1.1"
inherit toolchain
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~ppc-macos"
RDEPEND=""
DEPEND="${RDEPEND}
elibc_glibc? ( >=sys-libs/glibc-2.13 )
>=${CATEGORY}/binutils-2.20"
if [[ ${CATEGORY} != cross-* ]] ; then
PDEPEND="${PDEPEND} elibc_glibc? ( >=sys-libs/glibc-2.13 )"
fi
src_prepare() {
toolchain_src_prepare
}

View File

@ -1,20 +0,0 @@
# Copyright 1999-2018 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="5"
PATCH_VER="1.6"
#UCLIBC_VER="1.0"
inherit toolchain
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
RDEPEND=""
DEPEND="${RDEPEND}
elibc_glibc? ( >=sys-libs/glibc-2.13 )
>=${CATEGORY}/binutils-2.20"
if [[ ${CATEGORY} != cross-* ]] ; then
PDEPEND="${PDEPEND} elibc_glibc? ( >=sys-libs/glibc-2.13 )"
fi

View File

@ -1,25 +0,0 @@
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="5"
PATCH_VER="1.7"
#UCLIBC_VER="1.0"
inherit toolchain
KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~amd64-fbsd ~x86-fbsd"
RDEPEND=""
DEPEND="${RDEPEND}
elibc_glibc? ( >=sys-libs/glibc-2.13 )
>=${CATEGORY}/binutils-2.20"
if [[ ${CATEGORY} != cross-* ]] ; then
PDEPEND="${PDEPEND} elibc_glibc? ( >=sys-libs/glibc-2.13 )"
fi
src_prepare() {
toolchain_src_prepare
epatch "${FILESDIR}"/gcc-8.3.0-ia64-bootstrap.patch
}

View File

@ -1,19 +0,0 @@
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="5"
PATCH_VER="1.0"
inherit toolchain
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
RDEPEND=""
DEPEND="${RDEPEND}
elibc_glibc? ( >=sys-libs/glibc-2.13 )
>=${CATEGORY}/binutils-2.20"
if [[ ${CATEGORY} != cross-* ]] ; then
PDEPEND="${PDEPEND} elibc_glibc? ( >=sys-libs/glibc-2.13 )"
fi

View File

@ -1,13 +1,13 @@
# Copyright 1999-2019 Gentoo Authors
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="6"
PATCH_VER="1.0"
PATCH_VER="3"
inherit toolchain
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86"
RDEPEND=""
DEPEND="${RDEPEND}

View File

@ -1,94 +0,0 @@
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI="5"
LIBTOOLIZE="true" #225559
WANT_LIBTOOL="none"
inherit autotools epatch epunt-cxx multilib unpacker
if [[ ${PV} == "9999" ]] ; then
EGIT_REPO_URI="git://git.savannah.gnu.org/${PN}.git
http://git.savannah.gnu.org/r/${PN}.git"
inherit git-r3
else
SRC_URI="mirror://gnu/${PN}/${P}.tar.xz"
KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~amd64-fbsd ~x86-fbsd"
fi
DESCRIPTION="A shared library tool for developers"
HOMEPAGE="https://www.gnu.org/software/libtool/"
LICENSE="GPL-2"
SLOT="2"
IUSE="vanilla"
# Pull in libltdl directly until we convert packages to the new dep.
RDEPEND="sys-devel/gnuconfig
>=sys-devel/autoconf-2.69
>=sys-devel/automake-1.13
dev-libs/libltdl:0
!<sys-apps/sandbox-2.10-r4"
DEPEND="${RDEPEND}
app-arch/xz-utils"
[[ ${PV} == "9999" ]] && DEPEND+=" sys-apps/help2man"
src_unpack() {
if [[ ${PV} == "9999" ]] ; then
git-r3_src_unpack
cd "${S}"
./bootstrap || die
else
unpacker_src_unpack
fi
}
src_prepare() {
use vanilla && return 0
epatch "${FILESDIR}"/${PN}-2.4.3-use-linux-version-in-fbsd.patch #109105
epatch "${FILESDIR}"/${P}-link-specs.patch
epatch "${FILESDIR}"/${P}-link-fsanitize.patch #573744
epatch "${FILESDIR}"/${P}-link-fuse-ld.patch
epatch "${FILESDIR}"/${P}-libtoolize-slow.patch
epatch "${FILESDIR}"/${P}-libtoolize-delay-help.patch
epatch "${FILESDIR}"/${P}-sed-quote-speedup.patch #542252
epatch "${FILESDIR}"/${P}-ppc64le.patch #581314
pushd libltdl >/dev/null
AT_NOELIBTOOLIZE=yes eautoreconf
popd >/dev/null
AT_NOELIBTOOLIZE=yes eautoreconf
epunt_cxx
# Make sure timestamps don't trigger a rebuild of man pages. #556512
if [[ ${PV} != "9999" ]] ; then
touch doc/*.1
export HELP2MAN=false
fi
}
src_configure() {
# the libtool script uses bash code in it and at configure time, tries
# to find a bash shell. if /bin/sh is bash, it uses that. this can
# cause problems for people who switch /bin/sh on the fly to other
# shells, so just force libtool to use /bin/bash all the time.
export CONFIG_SHELL=/bin/bash
# Do not bother hardcoding the full path to sed. Just rely on $PATH. #574550
export ac_cv_path_SED=$(basename "$(type -P sed)")
ECONF_SOURCE=${S} econf --disable-ltdl-install
}
src_test() {
emake check
}
src_install() {
default
local x
while read -d $'\0' -r x ; do
ln -sf "${EPREFIX}"/usr/share/gnuconfig/${x##*/} "${x}" || die
done < <(find "${ED}" '(' -name config.guess -o -name config.sub ')' -print0)
}

View File

@ -1,112 +0,0 @@
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI="5"
LIBTOOLIZE="true" #225559
WANT_LIBTOOL="none"
inherit autotools epatch epunt-cxx multilib unpacker prefix
if [[ ${PV} == "9999" ]] ; then
EGIT_REPO_URI="git://git.savannah.gnu.org/${PN}.git
http://git.savannah.gnu.org/r/${PN}.git"
inherit git-r3
else
SRC_URI="mirror://gnu/${PN}/${P}.tar.xz"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~x64-cygwin ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris ~x86-winnt"
fi
DESCRIPTION="A shared library tool for developers"
HOMEPAGE="https://www.gnu.org/software/libtool/"
LICENSE="GPL-2"
SLOT="2"
IUSE="vanilla"
# Pull in libltdl directly until we convert packages to the new dep.
RDEPEND="sys-devel/gnuconfig
>=sys-devel/autoconf-2.69
>=sys-devel/automake-1.13
dev-libs/libltdl:0
!<sys-apps/sandbox-2.10-r4"
DEPEND="${RDEPEND}
app-arch/xz-utils"
[[ ${PV} == "9999" ]] && DEPEND+=" sys-apps/help2man"
src_unpack() {
if [[ ${PV} == "9999" ]] ; then
git-r3_src_unpack
cd "${S}"
./bootstrap || die
else
unpacker_src_unpack
fi
}
src_prepare() {
use vanilla && return 0
epatch "${FILESDIR}"/${PN}-2.4.3-use-linux-version-in-fbsd.patch #109105
epatch "${FILESDIR}"/${P}-link-specs.patch
epatch "${FILESDIR}"/${P}-link-fsanitize.patch #573744
epatch "${FILESDIR}"/${P}-link-fuse-ld.patch
epatch "${FILESDIR}"/${P}-libtoolize-slow.patch
epatch "${FILESDIR}"/${P}-libtoolize-delay-help.patch
epatch "${FILESDIR}"/${P}-sed-quote-speedup.patch #542252
epatch "${FILESDIR}"/${P}-ppc64le.patch #581314
epatch "${FILESDIR}"/${PN}-2.4.6-mint.patch
epatch "${FILESDIR}"/${PN}-2.2.6a-darwin-module-bundle.patch
epatch "${FILESDIR}"/${PN}-2.4.6-darwin-use-linux-version.patch
if use prefix ; then
# seems that libtool has to know about EPREFIX a little bit
# better, since it fails to find prefix paths to search libs
# from, resulting in some packages building static only, since
# libtool is fooled into thinking that libraries are unavailable
# (argh...). This could also be fixed by making the gcc wrapper
# return the correct result for -print-search-dirs (doesn't
# include prefix dirs ...).
epatch "${FILESDIR}"/${PN}-2.2.10-eprefix.patch
eprefixify m4/libtool.m4
fi
pushd libltdl >/dev/null
AT_NOELIBTOOLIZE=yes eautoreconf
popd >/dev/null
AT_NOELIBTOOLIZE=yes eautoreconf
epunt_cxx
# Make sure timestamps don't trigger a rebuild of man pages. #556512
if [[ ${PV} != "9999" ]] ; then
touch doc/*.1
export HELP2MAN=false
fi
}
src_configure() {
# the libtool script uses bash code in it and at configure time, tries
# to find a bash shell. if /bin/sh is bash, it uses that. this can
# cause problems for people who switch /bin/sh on the fly to other
# shells, so just force libtool to use /bin/bash all the time.
export CONFIG_SHELL=$(type -P bash)
# Do not bother hardcoding the full path to sed. Just rely on $PATH. #574550
export ac_cv_path_SED=$(basename "$(type -P sed)")
local myconf
[[ ${CHOST} == *-darwin* ]] && myconf="--program-prefix=g"
ECONF_SOURCE=${S} econf ${myconf} --disable-ltdl-install
}
src_test() {
emake check
}
src_install() {
default
local x
while read -d $'\0' -r x ; do
ln -sf "${EPREFIX}"/usr/share/gnuconfig/${x##*/} "${x}" || die
done < <(find "${ED}" '(' -name config.guess -o -name config.sub ')' -print0)
}

View File

@ -1,19 +1,18 @@
# Copyright 1999-2018 Gentoo Foundation
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
LIBTOOLIZE="true" #225559
WANT_LIBTOOL="none"
inherit autotools epatch epunt-cxx multilib unpacker prefix
inherit autotools prefix
if [[ ${PV} == "9999" ]] ; then
EGIT_REPO_URI="git://git.savannah.gnu.org/${PN}.git
http://git.savannah.gnu.org/r/${PN}.git"
if [[ ${PV} == *9999 ]] ; then
EGIT_REPO_URI="https://git.savannah.gnu.org/git/libtool.git"
inherit git-r3
else
SRC_URI="mirror://gnu/${PN}/${P}.tar.xz"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~x64-cygwin ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris ~x86-winnt"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris ~x86-winnt"
fi
DESCRIPTION="A shared library tool for developers"
@ -24,48 +23,42 @@ SLOT="2"
IUSE="vanilla"
# Pull in libltdl directly until we convert packages to the new dep.
RDEPEND="sys-devel/gnuconfig
>=sys-devel/autoconf-2.69
>=sys-devel/automake-1.13
dev-libs/libltdl:0
!<sys-apps/sandbox-2.10-r4"
DEPEND="${RDEPEND}
app-arch/xz-utils"
[[ ${PV} == "9999" ]] && DEPEND+=" sys-apps/help2man"
RDEPEND="
sys-devel/gnuconfig
>=sys-devel/autoconf-2.69:*
>=sys-devel/automake-1.13:*
dev-libs/libltdl:0"
DEPEND="${RDEPEND}"
[[ ${PV} == *9999 ]] && BDEPEND="sys-apps/help2man"
PATCHES=(
"${FILESDIR}"/${PN}-2.4.3-use-linux-version-in-fbsd.patch #109105
"${FILESDIR}"/${P}-link-specs.patch
"${FILESDIR}"/${P}-link-fsanitize.patch #573744
"${FILESDIR}"/${P}-link-fuse-ld.patch
"${FILESDIR}"/${P}-libtoolize-slow.patch
"${FILESDIR}"/${P}-libtoolize-delay-help.patch
"${FILESDIR}"/${P}-sed-quote-speedup.patch #542252
"${FILESDIR}"/${P}-ppc64le.patch #581314
"${FILESDIR}"/${PN}-2.4.6-link-specs.patch
"${FILESDIR}"/${PN}-2.4.6-link-fsanitize.patch #573744
"${FILESDIR}"/${PN}-2.4.6-link-fuse-ld.patch
"${FILESDIR}"/${PN}-2.4.6-libtoolize-slow.patch
"${FILESDIR}"/${PN}-2.4.6-libtoolize-delay-help.patch
"${FILESDIR}"/${PN}-2.4.6-sed-quote-speedup.patch #542252
"${FILESDIR}"/${PN}-2.4.6-ppc64le.patch #581314
"${FILESDIR}"/${PN}-2.4.6-mint.patch
"${FILESDIR}"/${PN}-2.2.6a-darwin-module-bundle.patch
"${FILESDIR}"/${PN}-2.4.6-darwin-use-linux-version.patch
)
src_unpack() {
if [[ ${PV} == "9999" ]] ; then
git-r3_src_unpack
else
unpacker_src_unpack
fi
}
src_prepare() {
if [[ "${PV}" = 9999 ]] ; then
eapply "${FILESDIR}"/${P}-pthread.patch #650876
if [[ ${PV} == *9999 ]] ; then
eapply "${FILESDIR}"/${PN}-2.4.6-pthread.patch #650876
./bootstrap || die
else
PATCHES+=(
"${FILESDIR}"/${P}-pthread_bootstrapped.patch #650876
"${FILESDIR}"/${PN}-2.4.6-pthread_bootstrapped.patch #650876
)
fi
# WARNING: File build-aux/ltmain.sh is read-only; trying to patch anyway
chmod +w build-aux/ltmain.sh || die
if use vanilla ; then
eapply_user
return 0
@ -85,15 +78,14 @@ src_prepare() {
eprefixify m4/libtool.m4
fi
pushd libltdl >/dev/null
pushd libltdl >/dev/null || die
AT_NOELIBTOOLIZE=yes eautoreconf
popd >/dev/null
popd >/dev/null || die
AT_NOELIBTOOLIZE=yes eautoreconf
epunt_cxx
# Make sure timestamps don't trigger a rebuild of man pages. #556512
if [[ ${PV} != "9999" ]] ; then
touch doc/*.1
if [[ ${PV} != *9999 ]] ; then
touch doc/*.1 || die
export HELP2MAN=false
fi
}
@ -108,15 +100,10 @@ src_configure() {
# Do not bother hardcoding the full path to sed. Just rely on $PATH. #574550
export ac_cv_path_SED="$(basename "$(type -P sed)")"
local myconf
[[ ${CHOST} == *-darwin* ]] && myconf="--program-prefix=g"
[[ ${CHOST} == *-darwin* ]] && local myconf="--program-prefix=g"
ECONF_SOURCE=${S} econf ${myconf} --disable-ltdl-install
}
src_test() {
emake check
}
src_install() {
default

View File

@ -21,3 +21,7 @@ DIST gentoo-headers-base-4.19.tar.xz 7956220 BLAKE2B 5b6868188b6cb505556b8f30797
DIST gentoo-headers-base-4.20.tar.xz 8041716 BLAKE2B 09e95aedfd4288fb27ad6c1e4f53992d205e9402efb315a8c764a2836ba856c7ec3f509d30c21e656e1ca9fdeb4530d807a10e0a74e3510c8e90aa82b222bafe SHA512 705c0cf3244039ef319002f17ea702fa91673eac6bb6a790c8451cad1f16951328e1ca1e3d26043708fcdc78bfaa1ff065322947e23b41c4acb9ed2b8acba427
DIST gentoo-headers-base-4.4.tar.xz 3911752 BLAKE2B 5031ecd48b99cb0c9c35ca935fa6a62cc36c076bab193ec397fc0d543170f29c6d5a0827a2ea5517eb68fc838819cbe3e5abd125bb920992492369d5e5c1e7cb SHA512 1cd3de58ff790c3730bea38138c7a45ef95d04288c69ffeabebb884fab3add13bd9c99785ddd87a3ee467a0e1b1cdc457bbd28da349e7c178b4d2374c5fb78a3
DIST gentoo-headers-base-4.9.tar.xz 4052748 BLAKE2B e279954c56170fbfa4ebae8dade731825b3d5f0cd5d73a5b33cd93a9c8f5fa140e14edf0d5ac26a452fe8a61b16fdcc851f5329f56e4c8dcf4472a995de44c4c SHA512 a03418cfba7fa4531279d9122411af3e285e962506e8df9279fbbb27ae08a4e30725bd1cf03f48ad523f61f2889195e6c844fa4c7b4ef2f828baf47ef402abfa
DIST gentoo-headers-5.8-1.tar.xz 4304 BLAKE2B f4b1b1746def90903b504f5a8a485af0769bf7af90ddac68718c5041c0372785c05ab1c7e4c229c500a56f5835b41a505ffee3a4a07dd3093903a3e47ea6bcf0 SHA512 58d96e2dcce272e3b21f7e6f592f75916cb25b4aecd604a5d3aa45b1275ebe258022c3a00419814600dcadef8f289c343247a8cb8b2526b17baa56b9139b6fd4
DIST linux-5.8.tar.xz 114459324 BLAKE2B 7bd97f8fa4527840754434414c07283e89731dc8ebb1e95fa5bc1469a60af1122582c0d3b6e262e77882f023190068df3537bd8b65964b3caa820bb2c8e579c7 SHA512 45a53ecf351096ef6e98242cca4228b8da9b9139ecc6963695791ea6fb7a9484a4e1c19dcca7ce7cbfdfa49de0451b70973bb078f12bdae9cbaddbc3f8092556
DIST gentoo-headers-5.9-1.tar.xz 4304 BLAKE2B 5dda91dac529cf3afca220d0ec323f679eae00e850e127ca6fb7dd42313afe7d4e2b23860a5b58673c070456e1ebd6b0d48efd681a764eef1bab996de579fd11 SHA512 3522d25e4d13f703e69a7e8da1813b38c8977821363b56af1988d78c446087dea4c3499283a2fdef2dc000fde29b945abb821a01f53ac0ac6c2b551699b3b18c
DIST linux-5.9.tar.xz 115507140 BLAKE2B e8d11472d63a9f8409ca12a2e8c97c6963a3d4516b5a398b627d6ece565584526f9b5a1377a2fa4bd184c09c7db94c987428bc5d52df0c788464a67e9e8d6dcb SHA512 d3d92ce4246bad74c9a784212f160d98449b1e8793970c2c308276568d852b8effe0528686bdb87d55d691f09a826abf7938d69bdd4759ce65ddd5c05ffe4eca

View File

@ -0,0 +1,46 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="6"
ETYPE="headers"
H_SUPPORTEDARCH="alpha amd64 arc arm arm64 avr32 cris frv hexagon hppa ia64 m32r m68k metag microblaze mips mn10300 nios2 openrisc ppc ppc64 riscv s390 score sh sparc x86 xtensa"
inherit kernel-2 toolchain-funcs
detect_version
PATCH_PV=${PV} # to ease testing new versions against not existing patches
PATCH_VER="1"
SRC_URI="${KERNEL_URI}
${PATCH_VER:+mirror://gentoo/gentoo-headers-${PATCH_PV}-${PATCH_VER}.tar.xz}
${PATCH_VER:+https://dev.gentoo.org/~slyfox/distfiles/gentoo-headers-${PATCH_PV}-${PATCH_VER}.tar.xz}
"
KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 amd64-linux ~x86-linux"
DEPEND="app-arch/xz-utils
dev-lang/perl"
RDEPEND=""
S=${WORKDIR}/linux-${PV}
src_unpack() {
unpack ${A}
}
src_prepare() {
[[ -n ${PATCH_VER} ]] && eapply "${WORKDIR}"/${PATCH_PV}/*.patch
default
}
src_install() {
kernel-2_src_install
# hrm, build system sucks
find "${ED}" '(' -name '.install' -o -name '*.cmd' ')' -delete
find "${ED}" -depth -type d -delete 2>/dev/null
}
src_test() {
emake headers_check ${xmakeopts}
}

View File

@ -0,0 +1,46 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="6"
ETYPE="headers"
H_SUPPORTEDARCH="alpha amd64 arc arm arm64 avr32 cris frv hexagon hppa ia64 m32r m68k metag microblaze mips mn10300 nios2 openrisc ppc ppc64 riscv s390 score sh sparc x86 xtensa"
inherit kernel-2 toolchain-funcs
detect_version
PATCH_PV=${PV} # to ease testing new versions against not existing patches
PATCH_VER="1"
SRC_URI="${KERNEL_URI}
${PATCH_VER:+mirror://gentoo/gentoo-headers-${PATCH_PV}-${PATCH_VER}.tar.xz}
${PATCH_VER:+https://dev.gentoo.org/~slyfox/distfiles/gentoo-headers-${PATCH_PV}-${PATCH_VER}.tar.xz}
"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
DEPEND="app-arch/xz-utils
dev-lang/perl"
RDEPEND=""
S=${WORKDIR}/linux-${PV}
src_unpack() {
unpack ${A}
}
src_prepare() {
[[ -n ${PATCH_VER} ]] && eapply "${WORKDIR}"/${PATCH_PV}/*.patch
default
}
src_install() {
kernel-2_src_install
# hrm, build system sucks
find "${ED}" '(' -name '.install' -o -name '*.cmd' ')' -delete
find "${ED}" -depth -type d -delete 2>/dev/null
}
src_test() {
emake headers_check ${xmakeopts}
}

View File

@ -12,3 +12,5 @@ DIST binutils-2.31.1-patches-7.tar.xz 76828 BLAKE2B 354e7c3aa76c0cfe8fc6bb419a5b
DIST binutils-2.31.1.tar.xz 20467996 BLAKE2B 6b914df1fbb7cf54f2159f71b2c2b09f3f6a569b7a3cb4cf9790d0a3733a7548bc0ea32334a178ed3b56e8b97656ae99c7abaf212601beeaeae9a0884c0f6051 SHA512 0fca326feb1d5f5fe505a827b20237fe3ec9c13eaf7ec7e35847fd71184f605ba1cefe1314b1b8f8a29c0aa9d88162849ee1c1a3e70c2f7407d88339b17edb30
DIST binutils-2.32-patches-2.tar.xz 145672 BLAKE2B 8218e621f99cb4bcd1638c3011449b94480d207eaeb79cf75c0072e0f1a86bfd1603fc4515bc40d3ac1921a18b9a211b20568f59b11b13eb44e6cff1329c5af9 SHA512 55c25a603f6175af3ade6848e5c1faba06a147d72e9a4f53d44502d97db76499485a67b278a654d18884714a7bf7b360c77c9e42dba3cdc188f805bfe461f09f
DIST binutils-2.32.tar.xz 20774880 BLAKE2B d1bdbd9c8487c091665c197974ce4bdf520b7a67ed6997a81b87e6a0af9514a091458244f583acec5ae580ac2ee5e908f67f483b8e5263cd18ced794cb235da6 SHA512 d326408f12a03d9a61a9de56584c2af12f81c2e50d2d7e835d51565df8314df01575724afa1e43bd0db45cfc9916b41519b67dfce03232aa4978704492a6994a
DIST binutils-2.35-patches-1.tar.xz 12216 BLAKE2B a811449da684e3501a7520a26639e04dda2f2d2fc8610974293eff3e4a1e23c4abeb97f52fe3b796679452bd6e3a5330fef4beb6f64b9ce2a1162076803390a0 SHA512 b8da16a4d97b264da925cc939b54bedbc148eb72a8d60f79d7ed222e9e299dca2a4f1fad4a6d60448d9d196c11331443eca0508dcbb85cb4c2da6c67bfaf4cd2
DIST binutils-2.35.tar.xz 22042160 BLAKE2B 72ea79edf3a77aa93dcf38274123abbae5ce8f800a95e6379b4c8807050b05c2dfec314f06c027b1343c5570f369324fa3e195d7e0db5f8a57c0579937c49d3f SHA512 9f222e4ab6720036402d03904fb11b73ab87714b85cd84997f7d357f405c7e10581d70202f9165a1ee0c70538632db27ecc9dfe627dddb1e6bc7edb1537cf786

View File

@ -0,0 +1,119 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PATCH_VER=1
PATCH_DEV=dilfridge
inherit eutils libtool toolchain-funcs multilib-minimal
MY_PN="binutils"
MY_P="${MY_PN}-${PV}"
PATCH_BINUTILS_VER=${PATCH_BINUTILS_VER:-${PV}}
PATCH_DEV=${PATCH_DEV:-slyfox}
DESCRIPTION="Core binutils libraries (libbfd, libopcodes, libiberty) for external packages"
HOMEPAGE="https://sourceware.org/binutils/"
SRC_URI="mirror://gnu/binutils/${MY_P}.tar.xz
https://dev.gentoo.org/~${PATCH_DEV}/distfiles/${MY_PN}-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz"
LICENSE="|| ( GPL-3 LGPL-3 )"
SLOT="0/${PV}"
IUSE="64-bit-bfd multitarget nls static-libs"
#KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
BDEPEND="nls? ( sys-devel/gettext )"
DEPEND="sys-libs/zlib[${MULTILIB_USEDEP}]"
# Need a newer binutils-config that'll reset include/lib symlinks for us.
RDEPEND="${DEPEND}
>=sys-devel/binutils-config-5
"
S="${WORKDIR}/${MY_P}"
MULTILIB_WRAPPED_HEADERS=(
/usr/include/bfd.h
)
src_prepare() {
if [[ ! -z ${PATCH_VER} ]] ; then
einfo "Applying binutils-${PATCH_BINUTILS_VER} patchset ${PATCH_VER}"
eapply "${WORKDIR}/patch"/*.patch
fi
# Fix cross-compile relinking issue, bug #626402
elibtoolize
default
}
pkgversion() {
printf "Gentoo ${PVR}"
[[ -n ${PATCHVER} ]] && printf " p${PATCHVER}"
}
multilib_src_configure() {
local myconf=(
--enable-obsolete
--enable-shared
--enable-threads
# Newer versions (>=2.24) make this an explicit option. #497268
--enable-install-libiberty
--disable-werror
--with-bugurl="https://bugs.gentoo.org/"
--with-pkgversion="$(pkgversion)"
$(use_enable static-libs static)
# The binutils eclass enables this flag for all bi-arch builds,
# but other tools often don't care about that support. Put it
# beyond a flag if people really want it, but otherwise leave
# it disabled as it can slow things down on 32bit arches. #438522
$(use_enable 64-bit-bfd)
# This only disables building in the zlib subdir.
# For binutils itself, it'll use the system version. #591516
--without-zlib
--with-system-zlib
# We only care about the libs, so disable programs. #528088
--disable-{binutils,etc,ld,gas,gold,gprof}
# Disable modules that are in a combined binutils/gdb tree. #490566
--disable-{gdb,libdecnumber,readline,sim}
# Strip out broken static link flags.
# https://gcc.gnu.org/PR56750
--without-stage1-ldflags
# We pull in all USE-flags that change ABI in an incompatible
# way. #666100
# USE=multitarget change size of global arrays
# USE=64-bit-bfd changes data structures of exported API
--with-extra-soversion-suffix=gentoo-${CATEGORY}-${PN}-$(usex multitarget mt st)-$(usex 64-bit-bfd 64 def)
)
# mips can't do hash-style=gnu ...
if [[ $(tc-arch) != mips ]] ; then
myconf+=( --enable-default-hash-style=gnu )
fi
use multitarget && myconf+=( --enable-targets=all --enable-64-bit-bfd )
use nls \
&& myconf+=( --without-included-gettext ) \
|| myconf+=( --disable-nls )
ECONF_SOURCE=${S} \
econf "${myconf[@]}"
# Prevent makeinfo from running as we don't build docs here.
# bug #622652
sed -i \
-e '/^MAKEINFO/s:=.*:= true:' \
Makefile || die
}
multilib_src_install() {
default
# Provide libiberty.h directly.
dosym libiberty/libiberty.h /usr/include/libiberty.h
}
multilib_src_install_all() {
use static-libs || find "${ED}"/usr -name '*.la' -delete
}