Initialize for gcc13
This commit is contained in:
commit
f414e21134
25 changed files with 6032 additions and 0 deletions
.gcc13.metadata.gitignoreREADME.First-for.SuSE.packagerschange_specgcc-add-defaultsspec.diffgcc10-amdgcn-llvm-as.patchgcc11-amdgcn-disable-hot-cold-partitioning.patchgcc11-gdwarf-4-default.patchgcc13-bsc1216664.patchgcc13-rpmlintrcgcc13-testresults-rpmlintrcgcc13.changesgcc13.specgcc41-ppc32-retaddr.patchgcc43-no-unwind-tables.diffgcc44-rename-info-files.patchgcc44-textdomain.patchgcc48-libstdc++-api-reference.patchgcc7-avoid-fixinc-error.diffgcc7-remove-Wexpansion-to-defined-from-Wextra.patchgcc9-reproducible-builds-buildid-for-checksum.patchgcc9-reproducible-builds.patchgdcflags.patchpr111411.patchtls-no-direct.diff
2
.gcc13.metadata
Normal file
2
.gcc13.metadata
Normal file
|
@ -0,0 +1,2 @@
|
|||
873bf484f0a6b4f7babc525a92b72a180dc6aa6a23fe80b2bd978135dba27f7a gcc-13.2.1+git7813.tar.xz
|
||||
b2d7fc7e568221eb9f4563e9f93e802b247f5ae465f1f0a7dd372fb134e4578d newlib-4.3.0.20230120.tar.xz
|
2
.gitignore
vendored
Normal file
2
.gitignore
vendored
Normal file
|
@ -0,0 +1,2 @@
|
|||
gcc-13.2.1+git7813.tar.xz
|
||||
newlib-4.3.0.20230120.tar.xz
|
31
README.First-for.SuSE.packagers
Normal file
31
README.First-for.SuSE.packagers
Normal file
|
@ -0,0 +1,31 @@
|
|||
IMPORTANT: Please change gcc.spec.in and then run ./pre_checkin.sh!
|
||||
Do not change gcc.spec directly!
|
||||
|
||||
Since GCC comes with a testsuite that runs for quite a long time and
|
||||
that test suite also contains some known failures, we should run the
|
||||
testsuite of GCC whenever the compiler is changed to ensure a high
|
||||
quality compiler.
|
||||
|
||||
The package is now split into multiple parts, gcc$VER,
|
||||
gcc$VER-testresults and libffi$VER (plus various spec files for
|
||||
cross and icecream cross compilers). The testsuite is run from
|
||||
gcc$VER-testresults, a dummy package with the testresults, gcc$VER-testresults,
|
||||
is generated from it which contains testing logfiles and summary.
|
||||
|
||||
Before checking in a new compiler, please do the following steps as QA
|
||||
measure to check that the new compiler does not introduce any new
|
||||
failures:
|
||||
|
||||
- Run mbuild for all archs for at least the gcc$VER and the gcc$VER-testresults
|
||||
subpackages
|
||||
|
||||
- When mbuild is finished, call
|
||||
/suse/rguenther/bin/compare-testresults.sh mbuild-directory
|
||||
(for the gcc$VER-testresults build).
|
||||
The output of that script should not show any failures. If it does,
|
||||
please fix them or discuss this with the gcc package maintainers.
|
||||
|
||||
- Do not remove this file.
|
||||
|
||||
Thanks,
|
||||
Your GCC packagers.
|
135
change_spec
Normal file
135
change_spec
Normal file
|
@ -0,0 +1,135 @@
|
|||
#!/bin/bash
|
||||
|
||||
do_crosses=1
|
||||
do_optional_compiler_languages=0
|
||||
rm -f gcc*-testresults.spec gcc*-testresults.changes gcc*.spec cross*.spec cross*.changes
|
||||
|
||||
# Default is to generate the normal gcc package
|
||||
# unless a parameter is given. In case that it is '-*',
|
||||
# that parameter will be used as suffix for the package name
|
||||
# and as suffix for the install path (/opt/gccSUFFIX)
|
||||
# In case that it is '[0-9]*', that parameter will be used
|
||||
# as a suffix for a versioned package name.
|
||||
|
||||
if [ $# -lt 1 ]; then
|
||||
echo No package suffix given
|
||||
outfile=gcc.spec
|
||||
else
|
||||
case $1 in
|
||||
[0-9]*)
|
||||
base_ver=$1
|
||||
outfile=gcc$1.spec
|
||||
;;
|
||||
*)
|
||||
echo Invalid package suffix
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
fi
|
||||
|
||||
: > $outfile
|
||||
if test "$do_optional_compiler_languages" = "1"; then
|
||||
echo '%define build_optional_compiler_languages 1' >> $outfile
|
||||
fi
|
||||
sed -e 's%@base_ver@%'$base_ver'%g' \
|
||||
gcc.spec.in \
|
||||
| sed -n -e '{
|
||||
/^# PACKAGE-BEGIN/h
|
||||
/^# PACKAGE-BEGIN/,/^# PACKAGE-END/H
|
||||
/^# PACKAGE-BEGIN/,/^# PACKAGE-END/!p
|
||||
/^# PACKAGE-END/{g
|
||||
s/@variant@//g
|
||||
p
|
||||
g
|
||||
s/@variant@/-32bit/g
|
||||
p
|
||||
g
|
||||
s/@variant@/-64bit/g
|
||||
p
|
||||
}
|
||||
}' >> $outfile
|
||||
|
||||
echo '%define building_testsuite 1' > gcc$base_ver-testresults.spec
|
||||
echo '%define run_tests 1' >> gcc$base_ver-testresults.spec
|
||||
sed -e '/^# GCC-TESTSUITE-DELETE-BEGIN/,/^# GCC-TESTSUITE-DELETE-END/d;s/-n gcc@base_ver@-testresults$//g;s/^Name:[[:space:]]*gcc@base_ver@/Name: gcc@base_ver@-testresults/g' \
|
||||
gcc.spec.in \
|
||||
| sed -e 's%@base_ver@%'$base_ver'%g' \
|
||||
>> gcc$base_ver-testresults.spec
|
||||
|
||||
echo '<multibuild>' > _multibuild
|
||||
echo '<flavor>'gcc$base_ver-testresults'</flavor>' >> _multibuild
|
||||
|
||||
add_cross() {
|
||||
local pkgname="$1"; shift
|
||||
local rpmtarget="$1"; shift
|
||||
local triplet="$1"; shift
|
||||
|
||||
echo "%define pkgname $pkgname" > $pkgname.spec
|
||||
echo "%define cross_arch $rpmtarget" >> $pkgname.spec
|
||||
echo "%define gcc_target_arch $triplet" >> $pkgname.spec
|
||||
echo "$@" >> $pkgname.spec
|
||||
{ sed -n -e '1,/SRC-COMMON-BEGIN/p' cross.spec.in
|
||||
sed -n -e '/SRC-COMMON-BEGIN/,/SRC-COMMON-END/p' $outfile
|
||||
sed -n -e '/SRC-COMMON-END/,/BUILD-COMMON-BEGIN/p' cross.spec.in
|
||||
sed -n -e '/BUILD-COMMON-BEGIN/,/BUILD-COMMON-END/p' $outfile
|
||||
sed -n -e '/BUILD-COMMON-END/,$p' cross.spec.in; } |
|
||||
sed -e "s#@base_ver@#$base_ver#" \
|
||||
-e "s/^\(ExclusiveArch.*\) $rpmtarget[^ \r]*/\1 /" \
|
||||
>> $pkgname.spec
|
||||
|
||||
echo '<flavor>'$pkgname'</flavor>' >> _multibuild
|
||||
}
|
||||
|
||||
add_newlib_cross() {
|
||||
add_cross $1-bootstrap $2 $3 "%define gcc_target_newlib 1
|
||||
%define gcc_libc_bootstrap 1"
|
||||
add_cross $1 $2 $3 "%define gcc_target_newlib 1"
|
||||
}
|
||||
|
||||
add_glibc_cross() {
|
||||
add_cross $1-bootstrap $2 $3 "%define gcc_libc_bootstrap 1"
|
||||
add_cross $1 $2 $3 "%define gcc_target_glibc 1"
|
||||
}
|
||||
|
||||
# We now support "proper" cross-compilers to suse targets via a
|
||||
# cross-glibc package, enable that via for example
|
||||
#
|
||||
# add_cross cross-aarch64-gcc$base_ver aarch64 aarch64-suse-linux
|
||||
#
|
||||
# For now keep the old way of doing things
|
||||
if test "$do_crosses" = 1 ; then
|
||||
add_glibc_cross cross-aarch64-gcc$base_ver aarch64 aarch64-suse-linux
|
||||
add_glibc_cross cross-riscv64-gcc$base_ver riscv64 riscv64-suse-linux
|
||||
add_glibc_cross cross-s390x-gcc$base_ver s390x s390x-suse-linux
|
||||
add_glibc_cross cross-ppc64le-gcc$base_ver ppc64le powerpc64le-suse-linux
|
||||
add_cross cross-arm-gcc$base_ver arm arm-suse-linux-gnueabi %define gcc_icecream 1
|
||||
add_cross cross-avr-gcc$base_ver-bootstrap avr avr "%define gcc_libc_bootstrap 1"
|
||||
add_cross cross-avr-gcc$base_ver avr avr
|
||||
add_newlib_cross cross-pru-gcc$base_ver pru pru
|
||||
add_cross cross-x86_64-gcc$base_ver x86_64 x86_64-suse-linux %define gcc_icecream 1
|
||||
add_cross cross-sparc-gcc$base_ver sparcv9 sparc-suse-linux %define gcc_icecream 1
|
||||
add_cross cross-sparc64-gcc$base_ver sparc64 sparc64-suse-linux %define gcc_icecream 1
|
||||
add_cross cross-ppc64-gcc$base_ver ppc64 powerpc64-suse-linux %define gcc_icecream 1
|
||||
add_cross cross-m68k-gcc$base_ver m68k m68k-suse-linux %define gcc_icecream 1
|
||||
add_cross cross-mips-gcc$base_ver mips mips-suse-linux %define gcc_icecream 1
|
||||
add_cross cross-hppa-gcc$base_ver-bootstrap hppa hppa-suse-linux %define gcc_libc_bootstrap 1
|
||||
add_cross cross-hppa-gcc$base_ver hppa hppa-suse-linux %define gcc_icecream 1
|
||||
add_newlib_cross cross-arm-none-gcc$base_ver arm-none arm-none-eabi
|
||||
add_newlib_cross cross-epiphany-gcc$base_ver epiphany epiphany-elf
|
||||
#add_newlib_cross cross-nds32le-gcc$base_ver nds32le nds32le-elf
|
||||
add_newlib_cross cross-riscv64-elf-gcc$base_ver riscv64 riscv64-elf
|
||||
#add_newlib_cross cross-rl78-gcc$base_ver rl78 rl78-elf
|
||||
add_newlib_cross cross-rx-gcc$base_ver rx rx-elf
|
||||
fi
|
||||
# the nvptx and amdgcn crosses are used for offloading
|
||||
add_cross cross-nvptx-gcc$base_ver nvptx nvptx-none %define gcc_accel 1
|
||||
add_cross cross-amdgcn-gcc$base_ver amdgcn amdgcn-amdhsa %define gcc_accel 1
|
||||
add_cross cross-bpf-gcc$base_ver bpf bpf-none
|
||||
|
||||
for f in *.spec; do
|
||||
sed -i -e '/^# .*-\(BEGIN\|END\)$/d' $f
|
||||
done
|
||||
|
||||
echo '</multibuild>' >> _multibuild
|
||||
|
||||
osc service localrun format_spec_file
|
51
gcc-add-defaultsspec.diff
Normal file
51
gcc-add-defaultsspec.diff
Normal file
|
@ -0,0 +1,51 @@
|
|||
Index: gcc/gcc.cc
|
||||
===================================================================
|
||||
--- gcc/gcc.cc.orig 2013-11-26 15:41:59.000000000 +0100
|
||||
+++ gcc/gcc.cc 2013-11-26 16:40:35.780548125 +0100
|
||||
@@ -258,6 +258,7 @@ static const char *replace_outfile_spec_
|
||||
static const char *remove_outfile_spec_function (int, const char **);
|
||||
static const char *version_compare_spec_function (int, const char **);
|
||||
static const char *include_spec_function (int, const char **);
|
||||
+static const char *include_noerr_spec_function (int, const char **);
|
||||
static const char *find_file_spec_function (int, const char **);
|
||||
static const char *find_plugindir_spec_function (int, const char **);
|
||||
static const char *print_asm_header_spec_function (int, const char **);
|
||||
@@ -1357,6 +1358,7 @@ static const struct spec_function static
|
||||
{ "remove-outfile", remove_outfile_spec_function },
|
||||
{ "version-compare", version_compare_spec_function },
|
||||
{ "include", include_spec_function },
|
||||
+ { "include_noerr", include_noerr_spec_function },
|
||||
{ "find-file", find_file_spec_function },
|
||||
{ "find-plugindir", find_plugindir_spec_function },
|
||||
{ "print-asm-header", print_asm_header_spec_function },
|
||||
@@ -6480,6 +6482,8 @@ main (int argc, char **argv)
|
||||
if (access (specs_file, R_OK) == 0)
|
||||
read_specs (specs_file, true, false);
|
||||
|
||||
+ do_self_spec ("%:include_noerr(defaults.spec)%(default_spec)");
|
||||
+
|
||||
/* Process any configure-time defaults specified for the command line
|
||||
options, via OPTION_DEFAULT_SPECS. */
|
||||
for (i = 0; i < ARRAY_SIZE (option_default_specs); i++)
|
||||
@@ -8401,6 +8405,21 @@ get_random_number (void)
|
||||
return ret ^ getpid ();
|
||||
}
|
||||
|
||||
+static const char *
|
||||
+include_noerr_spec_function (int argc, const char **argv)
|
||||
+{
|
||||
+ char *file;
|
||||
+
|
||||
+ if (argc != 1)
|
||||
+ abort ();
|
||||
+
|
||||
+ file = find_a_file (&startfile_prefixes, argv[0], R_OK, 0);
|
||||
+ if (file)
|
||||
+ read_specs (file, FALSE, TRUE);
|
||||
+
|
||||
+ return NULL;
|
||||
+}
|
||||
+
|
||||
/* %:compare-debug-dump-opt spec function. Save the last argument,
|
||||
expected to be the last -fdump-final-insns option, or generate a
|
||||
temporary. */
|
31
gcc10-amdgcn-llvm-as.patch
Normal file
31
gcc10-amdgcn-llvm-as.patch
Normal file
|
@ -0,0 +1,31 @@
|
|||
varasm.c: Always output flags in merged .section for LLVM assembler compatibility [PR97827]
|
||||
|
||||
For compatibility with LLVM 11's 'mc' assembler, the flags have to be
|
||||
repeated every time. See also LLVM Bug 48201 for this issue and
|
||||
https://reviews.llvm.org/D73999 for the patch causing the issue.
|
||||
|
||||
gcc/
|
||||
PR target/97827
|
||||
* varasm.c (default_elf_asm_named_section): Always output all
|
||||
flags if SECTION_MERGE, even if already declared before.
|
||||
|
||||
diff --git a/gcc/varasm.cc b/gcc/varasm.cc
|
||||
index 21be03aeba2..9cb46885aa5 100644
|
||||
--- a/gcc/varasm.cc
|
||||
+++ b/gcc/varasm.cc
|
||||
@@ -6792,10 +6792,13 @@ default_elf_asm_named_section (const char *name, unsigned int flags,
|
||||
/* If we have already declared this section, we can use an
|
||||
abbreviated form to switch back to it -- unless this section is
|
||||
part of a COMDAT groups or with SHF_GNU_RETAIN or with SHF_LINK_ORDER,
|
||||
- in which case GAS requires the full declaration every time. */
|
||||
+ in which case GAS requires the full declaration every time.
|
||||
+ LLVM's MC linker requires that the
|
||||
+ flags are identical, thus avoid the abbreviated form with MERGE. */
|
||||
if (!(HAVE_COMDAT_GROUP && (flags & SECTION_LINKONCE))
|
||||
&& !(flags & (SECTION_RETAIN | SECTION_LINK_ORDER))
|
||||
- && (flags & SECTION_DECLARED))
|
||||
+ && (flags & SECTION_DECLARED)
|
||||
+ && !(flags & SECTION_MERGE))
|
||||
{
|
||||
fprintf (asm_out_file, "\t.section\t%s\n", name);
|
||||
return;
|
22
gcc11-amdgcn-disable-hot-cold-partitioning.patch
Normal file
22
gcc11-amdgcn-disable-hot-cold-partitioning.patch
Normal file
|
@ -0,0 +1,22 @@
|
|||
diff --git a/gcc/config/gcn/gcn.cc b/gcc/config/gcn/gcn.cc
|
||||
index 6d02a4a02..d77f66182 100644
|
||||
--- a/gcc/config/gcn/gcn.cc
|
||||
+++ b/gcc/config/gcn/gcn.cc
|
||||
@@ -6413,9 +6413,17 @@ gcn_dwarf_register_span (rtx rtl)
|
||||
return p;
|
||||
}
|
||||
|
||||
+static void
|
||||
+gcn_override_options_after_change (void)
|
||||
+{
|
||||
+ flag_reorder_blocks_and_partition = 0;
|
||||
+}
|
||||
+
|
||||
/* }}} */
|
||||
/* {{{ TARGET hook overrides. */
|
||||
|
||||
+#undef TARGET_OVERRIDE_OPTIONS_AFTER_CHANGE
|
||||
+#define TARGET_OVERRIDE_OPTIONS_AFTER_CHANGE gcn_override_options_after_change
|
||||
#undef TARGET_ADDR_SPACE_ADDRESS_MODE
|
||||
#define TARGET_ADDR_SPACE_ADDRESS_MODE gcn_addr_space_address_mode
|
||||
#undef TARGET_ADDR_SPACE_DEBUG
|
29
gcc11-gdwarf-4-default.patch
Normal file
29
gcc11-gdwarf-4-default.patch
Normal file
|
@ -0,0 +1,29 @@
|
|||
diff --git a/gcc/defaults.h b/gcc/defaults.h
|
||||
index 376687d91b1..613003eb14f 100644
|
||||
--- a/gcc/defaults.h
|
||||
+++ b/gcc/defaults.h
|
||||
@@ -1444,7 +1444,7 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
|
||||
/* When generating dwarf info, the default standard version we'll honor
|
||||
and advertise in absence of -gdwarf-<N> on the command line. */
|
||||
#ifndef DWARF_VERSION_DEFAULT
|
||||
-#define DWARF_VERSION_DEFAULT 5
|
||||
+#define DWARF_VERSION_DEFAULT 4
|
||||
#endif
|
||||
|
||||
#ifndef USED_FOR_TARGET
|
||||
diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi
|
||||
index 04ca9d9b02b..944019edbc1 100644
|
||||
--- a/gcc/doc/invoke.texi
|
||||
+++ b/gcc/doc/invoke.texi
|
||||
@@ -11255,9 +11255,8 @@ possible.
|
||||
@itemx -gdwarf-@var{version}
|
||||
Produce debugging information in DWARF format (if that is supported).
|
||||
The value of @var{version} may be either 2, 3, 4 or 5; the default
|
||||
-version for most targets is 5 (with the exception of VxWorks, TPF and
|
||||
-Darwin/Mac OS X, which default to version 2, and AIX, which defaults
|
||||
-to version 4).
|
||||
+version for most targets is 4 (with the exception of VxWorks, TPF and
|
||||
+Darwin/Mac OS X, which default to version 2).
|
||||
|
||||
Note that with DWARF Version 2, some ports require and always
|
||||
use some non-conflicting DWARF 3 extensions in the unwind tables.
|
58
gcc13-bsc1216664.patch
Normal file
58
gcc13-bsc1216664.patch
Normal file
|
@ -0,0 +1,58 @@
|
|||
From 7562f089a190953b8ef615b90b7b0520e812a930 Mon Sep 17 00:00:00 2001
|
||||
From: Richard Biener <rguenther@suse.de>
|
||||
Date: Mon, 6 Nov 2023 11:31:40 +0100
|
||||
Subject: [PATCH] libstdc++/112351 - deal with __gthread_once failure during
|
||||
locale init
|
||||
To: gcc-patches@gcc.gnu.org
|
||||
|
||||
The following makes the C++98 locale init path follow the way the
|
||||
C++11 performs initialization. This way we deal with pthread_once
|
||||
failing, falling back to non-threadsafe initialization which, given we
|
||||
initialize from the library, should be serialized by the dynamic
|
||||
loader already.
|
||||
|
||||
PR libstdc++/112351
|
||||
libstdc++-v3/
|
||||
* src/c++98/locale.cc (locale::facet::_S_initialize_once):
|
||||
Check whether _S_c_locale is already initialized.
|
||||
(locale::facet::_S_get_c_locale): Always perform non-threadsafe
|
||||
init when threadsafe init failed.
|
||||
---
|
||||
libstdc++-v3/src/c++98/locale.cc | 13 ++++++++-----
|
||||
1 file changed, 8 insertions(+), 5 deletions(-)
|
||||
|
||||
diff --git a/libstdc++-v3/src/c++98/locale.cc b/libstdc++-v3/src/c++98/locale.cc
|
||||
index d308140bab7..1ef0c394cd7 100644
|
||||
--- a/libstdc++-v3/src/c++98/locale.cc
|
||||
+++ b/libstdc++-v3/src/c++98/locale.cc
|
||||
@@ -206,6 +206,12 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
|
||||
void
|
||||
locale::facet::_S_initialize_once()
|
||||
{
|
||||
+ // Need to check this because we could get called once from
|
||||
+ // _S_get_c_locale() when the program is single-threaded, and then again
|
||||
+ // (via __gthread_once) when it's multi-threaded.
|
||||
+ if (_S_c_locale)
|
||||
+ return;
|
||||
+
|
||||
// Initialize the underlying locale model.
|
||||
_S_create_c_locale(_S_c_locale, _S_c_name);
|
||||
}
|
||||
@@ -216,12 +222,9 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
|
||||
#ifdef __GTHREADS
|
||||
if (__gthread_active_p())
|
||||
__gthread_once(&_S_once, _S_initialize_once);
|
||||
- else
|
||||
#endif
|
||||
- {
|
||||
- if (!_S_c_locale)
|
||||
- _S_initialize_once();
|
||||
- }
|
||||
+ if (__builtin_expect (!_S_c_locale, 0))
|
||||
+ _S_initialize_once();
|
||||
return _S_c_locale;
|
||||
}
|
||||
|
||||
--
|
||||
2.35.3
|
||||
|
19
gcc13-rpmlintrc
Normal file
19
gcc13-rpmlintrc
Normal file
|
@ -0,0 +1,19 @@
|
|||
# This line is mandatory to access the configuration functions
|
||||
from Config import *
|
||||
|
||||
# gcc/gcc-c++ are devel packages even if not called -devel...
|
||||
addFilter ("gcc.*devel-file-in-non-devel-package")
|
||||
addFilter ("gcc.*devel-dependency glibc-devel")
|
||||
addFilter ("gcc.*devel-dependency libstdc")
|
||||
# libstdc++6-devel is the devel package of libstdc++6, no better name exists
|
||||
# and we do package static libs and the .so links (but in a gcc versioned
|
||||
# directory)
|
||||
addFilter ("libstdc.*shlib-policy-missing-lib")
|
||||
# We have names lib libgcc_s1-gcc7 for non-default GCCs
|
||||
addFilter ("shlib-policy-name-error")
|
||||
addFilter ("shlib-legacy-policy-name-error")
|
||||
# Packages provide libgcc_s1 = $version and conflict with other providers
|
||||
# of libgcc_s1
|
||||
addFilter ("conflicts-with-provides")
|
||||
# SLE12 rpmlint complains about valid SPDX licenses
|
||||
addFilter ("invalid-license")
|
10
gcc13-testresults-rpmlintrc
Normal file
10
gcc13-testresults-rpmlintrc
Normal file
|
@ -0,0 +1,10 @@
|
|||
# This line is mandatory to access the configuration functions
|
||||
from Config import *
|
||||
|
||||
# Currently gotools.log contains $RPM_BUILD_ROOT and there's nothing
|
||||
# to be done about that and neither do we care
|
||||
addFilter ("gcc.*-testresults.*file-contains-buildroot")
|
||||
|
||||
# The package should _not_ be noarch, testresults differ from architecture
|
||||
# to architecture
|
||||
addFilter ("gcc.*-testresults.*no-binary")
|
212
gcc13.changes
Normal file
212
gcc13.changes
Normal file
|
@ -0,0 +1,212 @@
|
|||
* Tue Nov 7 2023 rguenther@suse.com
|
||||
- Add gcc13-bsc1216664.patch, works around SAP ASE DB crash during
|
||||
C++ standard library initialization. [bsc#1216664]
|
||||
* Fri Sep 22 2023 dmueller@suse.com
|
||||
- add pr111411.patch (bsc#1215427)
|
||||
* Tue Sep 12 2023 rguenther@suse.com
|
||||
- Bump to b96e66fd4ef3e36983969fb8cdd1956f551a074b, git7831
|
||||
* Includes many bugfixes
|
||||
* Includes fix to -fstack-protector issues with variable
|
||||
length stack allocations on aarch64. [bsc#1214052] (CVE-2023-4039)
|
||||
* Mon Aug 28 2023 rguenther@suse.com
|
||||
- Disable building glibc cross compilers on SLE based code streams,
|
||||
the required cross-glibc packages are not available there.
|
||||
- Disable building avr cross on non-openSUSE code streams since
|
||||
avr-libc isn't available there.
|
||||
- Disable building newlib cross compilers on non-openSUSE code streams
|
||||
since newlib isn't available there.
|
||||
- Fix typo preventing s390x compiler build.
|
||||
- Raise s390x architecture baseline to z14 for ALP. [PED-253]
|
||||
- Turn cross compiler to ppc64le to a glibc cross.
|
||||
* Wed Aug 23 2023 rguenther@suse.com
|
||||
- Turn cross compiler to s390x to a glibc cross. [bsc#1214460]
|
||||
* Fri Aug 18 2023 msuchanek@suse.com
|
||||
- Raise Power architecture baseline to Power9 only for ALP (boo#1213915).
|
||||
* Thu Aug 3 2023 rguenther@suse.com
|
||||
- Bump to cc279d6c64562f05019e1d12d0d825f9391b5553, git7683
|
||||
* Includes GCC 13.2 release
|
||||
* Includes patch to fix broken testcase in libbacktrace, fixing
|
||||
build problems on SLES 12
|
||||
* Wed Aug 2 2023 schwab@suse.de
|
||||
- gdcflags.patch: Use substituted GDCFLAGS
|
||||
- Filter out -Werror=return-type from D compile flags
|
||||
* Thu Jul 20 2023 rguenther@suse.com
|
||||
- Bump to 9aac37ab8a7b919a89c6d64bc7107a8436996e93, git7597
|
||||
* GCC 13.2 RC1
|
||||
- Add rpmlint filter for SLE12 complaining about invalid licenses.
|
||||
* Tue Jul 11 2023 schwab@suse.de
|
||||
- Also handle -static-pie in the default-PIE specs
|
||||
* Mon Jul 10 2023 rguenther@suse.com
|
||||
- Bump to f9781fcf733ca3afe5b5811afd8ecbb18d9d3a11, git7552
|
||||
- Remove gcc13-pr110334.patch again as it breaks libreoffice build.
|
||||
* Wed Jun 28 2023 rguenther@suse.com
|
||||
- Bump to a533ded17fb13cbbb2fa5133ecd470360f66c5cf, git7489.
|
||||
- Add gcc13-pr110334.patch to fix missed optimization in Skia
|
||||
resulting in Firefox crashes when building with LTO. [boo#1212101]
|
||||
* Tue Jun 13 2023 rguenther@suse.com
|
||||
- Raise architecture levels for ALP. [PED-153]
|
||||
* Raise POWER architecture baseline to power9. [PED-2005]
|
||||
* Raise x86-64 architecture baseline to x86-64-v2 for ALP. [PED-252]
|
||||
* Delay raising s390x architecture baseline to z14. [PED-253]
|
||||
* Mon May 22 2023 rguenther@suse.com
|
||||
- Bump to dd36656ada05731c069ecd5b1878380294fb1f3e, git7364.
|
||||
* Includes the RISC-V atomic changes
|
||||
- Remove riscv-atomic.patch and riscv-pthread.patch now included
|
||||
- Make libstdc++6-devel packages own their directories since they
|
||||
can be installed standalone. [bsc#1211427]
|
||||
* Thu Apr 27 2023 rguenther@suse.com
|
||||
- Bump to 910735c5d7ce7607384fc1eec4189e90c8ae5c84, git7256.
|
||||
* Includes GCC 13.1 release and first bugfixes
|
||||
- Update riscv-atomic.patch from the version committed upstream.
|
||||
* Fri Apr 21 2023 rguenther@suse.com
|
||||
- Bump to f980561c60b0446cc427595198d7f3f4f90e0924, git7231.
|
||||
* fixes compile-time issue reported in [bsc#1210557]
|
||||
* GCC 13.1 RC3
|
||||
- Disable building the rust frontend.
|
||||
* Wed Apr 12 2023 mliska@suse.cz
|
||||
- Bump to d339e9802f758e051b0a1ef6db732ff846cbf4e3, git7162.
|
||||
* Tue Apr 11 2023 mliska@suse.cz
|
||||
- Add new x86-related intrinsics (amxcomplexintrin.h).
|
||||
* Tue Apr 11 2023 schwab@suse.de
|
||||
- riscv-atomic.patch: RISC-V: Add support for inlining subword atomic
|
||||
operations
|
||||
- riscv-pthread.patch: Don't add -latomic with -pthread
|
||||
* Tue Apr 4 2023 mliska@suse.cz
|
||||
- Bump to d0b961b802dd7d9d555ff4515835a479329326e9, git6995.
|
||||
* Fri Mar 24 2023 guillaume.gardet@opensuse.org
|
||||
- Add %%limit_build for gcc13 to avoid OOM
|
||||
* Fri Mar 24 2023 mliska@suse.cz
|
||||
- Use --enable-link-serialization rather that --enable-link-mutex,
|
||||
the benefit of the former one is that the linker jobs are not
|
||||
holding tokens of the make's jobserver.
|
||||
* Thu Mar 23 2023 mliska@suse.cz
|
||||
- Bump to c4792bd1de0621932a47fb86aca09fafafdb2972, git6840.
|
||||
* Tue Mar 21 2023 rguenther@suse.com
|
||||
- Add cross-bpf packages. See https://gcc.gnu.org/wiki/BPFBackEnd
|
||||
for the general state of BPF with GCC.
|
||||
* Tue Mar 21 2023 mliska@suse.cz
|
||||
- Bump to 5f413dc41ee4f8bc3a0fc295f98b75dceae52fa8, git6773.
|
||||
* Mon Feb 27 2023 rguenther@suse.com
|
||||
- Always enable the link mutex.
|
||||
* Mon Feb 27 2023 mliska@suse.cz
|
||||
- Bump to 529e03b9882fe48cfa3c182abb12a5858a5762a2, git6353.
|
||||
* Thu Feb 23 2023 mliska@suse.cz
|
||||
- Rebase gcc44-rename-info-files.patch patch.
|
||||
* Fri Jan 27 2023 mliska@suse.cz
|
||||
- Add support for new front-ends Rust and Modula-2.
|
||||
- Align _multibuild order with gcc12 package.
|
||||
- Bump to ca8fb0096713a8477614ef874f16ba5bf16c48bc, git5428.
|
||||
* Mon Jan 23 2023 rguenther@suse.com
|
||||
- Add bootstrap conditional to allow --without=bootstrap to be
|
||||
specified to speed up local builds for testing.
|
||||
* Mon Jan 23 2023 rguenther@suse.com
|
||||
- Bump included newlib to version 4.3.0.
|
||||
* Thu Jan 19 2023 rguenther@suse.com
|
||||
- Update to GCC trunk head (r13-5254-g05b9868b182bb9)
|
||||
* pulls Go frontend fix to fix build fail on s390x
|
||||
* pulls upstream fix for PR107678, obsoleting gcc13-pr107678.patch
|
||||
- Also package libhwasan_preinit.o on aarch64.
|
||||
* Tue Jan 17 2023 rguenther@suse.com
|
||||
- Configure external timezone database provided by the timezone
|
||||
package. Make libstdc++6 recommend timezone to get a fully
|
||||
working std::chrono. Install timezone when running the testsuite.
|
||||
- Remove dependence on doxygen and graphviz when building the
|
||||
testsuite. Those were used to build the libstdc++ API html
|
||||
documentation but we stopped shipping that when Java support
|
||||
was removed and nobody noticed. Purge traces of the built
|
||||
libstdc++6-gccN-doc package.
|
||||
- Package libhwasan_preinit.o on x86_64.
|
||||
* Mon Jan 16 2023 rguenther@suse.com
|
||||
- Update to GCC trunk head (r13-5199-g2f81164255bf0d)
|
||||
* pulls changes up to the start of Stage 4
|
||||
- Change version numbering to match the commit count from
|
||||
the git gcc-descr alias
|
||||
- Add gcc13-pr107678.patch to fix unwinding on aarch64 with
|
||||
pointer signing. [bsc#1206684]
|
||||
* Tue Dec 27 2022 lnussel@suse.com
|
||||
- Don't rely on %%usrmerged, set it based on standard %%suse_version
|
||||
* Thu Dec 22 2022 matwey.kornilov@gmail.com
|
||||
- Enable PRU flavour for gcc13
|
||||
* Mon Dec 19 2022 dmueller@suse.com
|
||||
- update floatn fixinclude pickup to check each header separately (bsc#1206480)
|
||||
* Wed Dec 14 2022 rguenther@suse.com
|
||||
- Redo floatn fixinclude pick-up to simply keep what is there.
|
||||
* Tue Dec 13 2022 rguenther@suse.com
|
||||
- Bump to 0a43f7b1a73c8e3b9cefffe430274d0a3d6d3291, git197351.
|
||||
- Bump libgo SONAME to libgo22.
|
||||
- Do not package libhwasan for biarch (32-bit architecture)
|
||||
as the extension depends on 64-bit pointers.
|
||||
- Sync cross.spec.in changes from gcc12 package.
|
||||
* Mon Dec 5 2022 rguenther@suse.com
|
||||
- Bump to 380d62c14c99d8df13b7a86660e7ee67d01ad827, git197210.
|
||||
- Adjust floatn fixincludes guard to work with SLE12 and earlier
|
||||
SLE15.
|
||||
* Thu Dec 1 2022 mliska@suse.cz
|
||||
- Bump to de144fdab17dbbb64ccb540056ab78b4ffb3fbbc, git197173.
|
||||
* Thu Dec 1 2022 mliska@suse.cz
|
||||
- Depend on at least LLVM 13 for GCN cross compiler.
|
||||
* Thu Dec 1 2022 mliska@suse.cz
|
||||
- Bump to 4304e09a1617bcf1c87f5bc96017ae5017379d75, git197155.
|
||||
* Thu Dec 1 2022 mliska@suse.cz
|
||||
- Rebase gcc44-rename-info-files.patch.
|
||||
* Wed Nov 30 2022 mliska@suse.cz
|
||||
- Bump to d13c359a49291f0a1206adbad4065677010b7e4b, git197143.
|
||||
* Tue Nov 29 2022 rguenther@suse.com
|
||||
- Sync changes from gcc12 package
|
||||
- Update embedded newlib to version 4.2.0
|
||||
* includes newlib-4.1.0-aligned_alloc.patch
|
||||
- Allow cross-pru-gcc12-bootstrap for armv7l architecture.
|
||||
PRU architecture is used for real-time MCUs embedded into TI
|
||||
armv7l and aarch64 SoCs. We need to have cross-pru-gcc12 for
|
||||
armv7l in order to build both host applications and PRU firmware
|
||||
during the same build.
|
||||
* Mon Nov 28 2022 mliska@suse.cz
|
||||
- Bump to 2b0ae7fb91f64fb005abf7d7903fd4c0764bb45c, git197102.
|
||||
* Tue Nov 22 2022 mliska@suse.cz
|
||||
- Handle new libstdc++exp.a lib.
|
||||
* Mon Nov 21 2022 mliska@suse.cz
|
||||
- Bump to 5c0d171f67d082c353ddc319859111d3b9126c17, git196938.
|
||||
* Tue Nov 8 2022 mliska@suse.cz
|
||||
- Add 2 new headers.
|
||||
* Mon Nov 7 2022 mliska@suse.cz
|
||||
- Bump to b457b779427b0f7b3fbac447811c9c52db5bc79e, git196485.
|
||||
* Tue Sep 27 2022 mliska@suse.cz
|
||||
- Revert --disable-fixincludes due to float128 needed fix.
|
||||
* Tue Sep 27 2022 mliska@suse.cz
|
||||
- Bump to 0b2706ac0e6d6b990d789325f9e081dfe4501f4f, git195623.
|
||||
* Wed Aug 31 2022 mliska@suse.cz
|
||||
- Bump to be9dd80f9334800300a80268dbb92cf3fafcfcf8, git195041.
|
||||
* Wed Aug 31 2022 mliska@suse.cz
|
||||
- Start using --disable-fixincludes.
|
||||
* Mon Aug 8 2022 mliska@suse.cz
|
||||
- Fix workaround for obs-service-format_spec_file.
|
||||
- Bump version in gcc.spec.in.
|
||||
* Fri Aug 5 2022 mliska@suse.cz
|
||||
- Bump to cc01a27db5411a4fe354a97b7c86703c5bc81243, git194700.
|
||||
* Thu Apr 28 2022 mliska@suse.cz
|
||||
- New package, inherits from gcc12
|
||||
- Take patches inherited from GCC 12.
|
||||
* gcc-add-defaultsspec.diff, add the ability to provide a specs
|
||||
file that is read by default
|
||||
* tls-no-direct.diff, avoid direct %%fs references on x86 to not
|
||||
slow down Xen
|
||||
* gcc43-no-unwind-tables.diff, do not produce unwind tables for
|
||||
CRT files
|
||||
* gcc41-ppc32-retaddr.patch, fix expansion of __builtin_return_addr
|
||||
for ppc, just a testcase
|
||||
* gcc44-textdomain.patch, make translation files version specific
|
||||
and adjust textdomain to find them
|
||||
* gcc44-rename-info-files.patch, fix cross-references in info files
|
||||
when renaming them to be version specific
|
||||
* gcc48-libstdc++-api-reference.patch, fix link in the installed
|
||||
libstdc++ html documentation
|
||||
* gcc48-remove-mpfr-2.4.0-requirement.patch, make GCC work with
|
||||
earlier mpfr versions on old products
|
||||
* gcc5-no-return-gcc43-workaround.patch, make build work with
|
||||
host gcc 4.3
|
||||
* gcc7-remove-Wexpansion-to-defined-from-Wextra.patch, removes
|
||||
new warning from -Wextra
|
||||
* gcc7-avoid-fixinc-error.diff
|
||||
* gcc9-reproducible-builds-buildid-for-checksum.patch
|
||||
* gcc9-reproducible-builds.patch
|
||||
* gcc10-amdgcn-llvm-as.patch
|
4131
gcc13.spec
Normal file
4131
gcc13.spec
Normal file
File diff suppressed because it is too large
Load diff
91
gcc41-ppc32-retaddr.patch
Normal file
91
gcc41-ppc32-retaddr.patch
Normal file
|
@ -0,0 +1,91 @@
|
|||
2005-11-28 Jakub Jelinek <jakub@redhat.com>
|
||||
|
||||
* config/rs6000/rs6000.c (rs6000_return_addr): If COUNT == 0,
|
||||
read word RETURN_ADDRESS_OFFSET bytes above arg_pointer_rtx
|
||||
instead of doing an extran indirection from frame_pointer_rtx.
|
||||
|
||||
* gcc.dg/20051128-1.c: New test.
|
||||
|
||||
#Index: gcc/config/rs6000/rs6000.cc
|
||||
#===================================================================
|
||||
#--- gcc/config/rs6000/rs6000.cc.orig 2013-11-26 15:42:33.000000000 +0100
|
||||
#+++ gcc/config/rs6000/rs6000.cc 2013-11-26 16:44:14.566089231 +0100
|
||||
#@@ -20878,18 +20878,22 @@ rs6000_return_addr (int count, rtx frame
|
||||
if (count != 0
|
||||
|| ((DEFAULT_ABI == ABI_V4 || DEFAULT_ABI == ABI_DARWIN) && flag_pic))
|
||||
{
|
||||
+ rtx x;
|
||||
cfun->machine->ra_needs_full_frame = 1;
|
||||
|
||||
- return
|
||||
- gen_rtx_MEM
|
||||
- (Pmode,
|
||||
- memory_address
|
||||
- (Pmode,
|
||||
- plus_constant (Pmode,
|
||||
- copy_to_reg
|
||||
- (gen_rtx_MEM (Pmode,
|
||||
- memory_address (Pmode, frame))),
|
||||
- RETURN_ADDRESS_OFFSET)));
|
||||
+ if (count == 0)
|
||||
+ {
|
||||
+ gcc_assert (frame == frame_pointer_rtx);
|
||||
+ x = arg_pointer_rtx;
|
||||
+ }
|
||||
+ else
|
||||
+ {
|
||||
+ x = memory_address (Pmode, frame);
|
||||
+ x = copy_to_reg (gen_rtx_MEM (Pmode, x));
|
||||
+ }
|
||||
+
|
||||
+ x = plus_constant (Pmode, x, RETURN_ADDRESS_OFFSET);
|
||||
+ return gen_rtx_MEM (Pmode, memory_address (Pmode, x));
|
||||
}
|
||||
|
||||
cfun->machine->ra_need_lr = 1;
|
||||
Index: gcc/testsuite/gcc.dg/20051128-1.c
|
||||
===================================================================
|
||||
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
|
||||
+++ gcc/testsuite/gcc.dg/20051128-1.c 2013-11-26 16:44:14.566089231 +0100
|
||||
@@ -0,0 +1,41 @@
|
||||
+/* { dg-do run } */
|
||||
+/* { dg-options "-O2 -fpic" } */
|
||||
+
|
||||
+extern void exit (int);
|
||||
+extern void abort (void);
|
||||
+
|
||||
+int b;
|
||||
+
|
||||
+struct A
|
||||
+{
|
||||
+ void *pad[147];
|
||||
+ void *ra, *h;
|
||||
+ long o;
|
||||
+};
|
||||
+
|
||||
+void
|
||||
+__attribute__((noinline))
|
||||
+foo (struct A *a, void *x)
|
||||
+{
|
||||
+ __builtin_memset (a, 0, sizeof (a));
|
||||
+ if (!b)
|
||||
+ exit (0);
|
||||
+}
|
||||
+
|
||||
+void
|
||||
+__attribute__((noinline))
|
||||
+bar (void)
|
||||
+{
|
||||
+ struct A a;
|
||||
+
|
||||
+ __builtin_unwind_init ();
|
||||
+ foo (&a, __builtin_return_address (0));
|
||||
+}
|
||||
+
|
||||
+int
|
||||
+main (void)
|
||||
+{
|
||||
+ bar ();
|
||||
+ abort ();
|
||||
+ return 0;
|
||||
+}
|
13
gcc43-no-unwind-tables.diff
Normal file
13
gcc43-no-unwind-tables.diff
Normal file
|
@ -0,0 +1,13 @@
|
|||
Index: libgcc/Makefile.in
|
||||
===================================================================
|
||||
--- libgcc/Makefile.in.orig 2015-12-14 11:33:03.225790694 +0100
|
||||
+++ libgcc/Makefile.in 2015-12-17 15:09:45.415136693 +0100
|
||||
@@ -301,7 +301,7 @@ CRTSTUFF_CFLAGS = -O2 $(GCC_CFLAGS) $(INCLUDES) $(MULTILIB_CFLAGS) -g0 \
|
||||
$(NO_PIE_CFLAGS) -finhibit-size-directive -fno-inline -fno-exceptions \
|
||||
-fno-zero-initialized-in-bss -fno-toplevel-reorder -fno-tree-vectorize \
|
||||
-fbuilding-libgcc -fno-stack-protector $(FORCE_EXPLICIT_EH_REGISTRY) \
|
||||
- $(INHIBIT_LIBC_CFLAGS) $(USE_TM_CLONE_REGISTRY)
|
||||
+ $(INHIBIT_LIBC_CFLAGS) $(USE_TM_CLONE_REGISTRY) -fno-unwind-tables -fno-asynchronous-unwind-tables
|
||||
|
||||
# Extra flags to use when compiling crt{begin,end}.o.
|
||||
CRTSTUFF_T_CFLAGS =
|
708
gcc44-rename-info-files.patch
Normal file
708
gcc44-rename-info-files.patch
Normal file
|
@ -0,0 +1,708 @@
|
|||
#! /bin/sh -e
|
||||
|
||||
# DP: Allow transformations on info file names. Reference the
|
||||
# DP: transformed info file names in the texinfo files.
|
||||
|
||||
dir=
|
||||
if [ $# -eq 3 -a "$2" = '-d' ]; then
|
||||
pdir="-d $3"
|
||||
dir="$3/"
|
||||
elif [ $# -ne 1 ]; then
|
||||
echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
|
||||
exit 1
|
||||
fi
|
||||
case "$1" in
|
||||
-patch)
|
||||
patch $pdir -f --no-backup-if-mismatch -p0 < $0
|
||||
;;
|
||||
-unpatch)
|
||||
patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
|
||||
;;
|
||||
*)
|
||||
echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
|
||||
exit 1
|
||||
esac
|
||||
exit 0
|
||||
|
||||
|
||||
gcc/ChangeLog:
|
||||
|
||||
2004-02-17 Matthias Klose <doko@debian.org>
|
||||
|
||||
* Makefile.in: Allow transformations on info file names.
|
||||
Define MAKEINFODEFS, macros to pass transformated info file
|
||||
names to makeinfo.
|
||||
* doc/cpp.texi: Use macros defined in MAKEINFODEFS for references.
|
||||
* doc/cppinternals.texi: Likewise.
|
||||
* doc/extend.texi: Likewise.
|
||||
* doc/gcc.texi: Likewise.
|
||||
* doc/gccint.texi: Likewise.
|
||||
* doc/invoke.texi: Likewise.
|
||||
* doc/libgcc.texi: Likewise.
|
||||
* doc/makefile.texi: Likewise.
|
||||
* doc/passes.texi: Likewise.
|
||||
* doc/sourcebuild.texi: Likewise.
|
||||
* doc/standards.texi: Likewise.
|
||||
* doc/trouble.texi: Likewise.
|
||||
|
||||
gcc/fortran/ChangeLog:
|
||||
* Make-lang.in: Allow transformations on info file names.
|
||||
Pass macros of transformated info file defined in MAKEINFODEFS
|
||||
names to makeinfo.
|
||||
* gfortran.texi: Use macros defined in MAKEINFODEFS for references.
|
||||
|
||||
gcc/java/ChangeLog:
|
||||
* Make-lang.in: Allow transformations on info file names.
|
||||
Pass macros of transformated info file defined in MAKEINFODEFS
|
||||
names to makeinfo.
|
||||
* gcj.texi: Use macros defined in MAKEINFODEFS for references.
|
||||
|
||||
|
||||
---
|
||||
gcc/Makefile.in | 74 ++++++++++++++++++++++++++++++++++++----------
|
||||
gcc/ada/gnat-style.texi | 2 -
|
||||
gcc/ada/gnat_rm.texi | 2 -
|
||||
gcc/ada/gnat_ugn.texi | 2 -
|
||||
gcc/doc/cpp.texi | 2 -
|
||||
gcc/doc/cppinternals.texi | 2 -
|
||||
gcc/doc/extend.texi | 2 -
|
||||
gcc/doc/gcc.texi | 8 ++--
|
||||
gcc/doc/gccint.texi | 4 +-
|
||||
gcc/doc/install.texi | 2 -
|
||||
gcc/doc/invoke.texi | 10 +++---
|
||||
gcc/doc/libgcc.texi | 2 -
|
||||
gcc/doc/makefile.texi | 2 -
|
||||
gcc/doc/passes.texi | 2 -
|
||||
gcc/doc/standards.texi | 4 +-
|
||||
gcc/fortran/Make-lang.in | 11 +++---
|
||||
gcc/fortran/gfortran.texi | 2 -
|
||||
gcc/java/Make-lang.in | 19 +++++++++--
|
||||
gcc/java/gcj.texi | 20 ++++++------
|
||||
libgomp/Makefile.am | 13 ++++----
|
||||
libgomp/Makefile.in | 14 ++++----
|
||||
libgomp/libgomp.texi | 2 -
|
||||
22 files changed, 131 insertions(+), 70 deletions(-)
|
||||
|
||||
diff --git a/gcc/Makefile.in b/gcc/Makefile.in
|
||||
index d8b76d83d68..4f9c274ee38 100644
|
||||
--- a/gcc/Makefile.in
|
||||
+++ b/gcc/Makefile.in
|
||||
@@ -3333,8 +3333,29 @@ install-no-fixedincludes:
|
||||
|
||||
doc: $(BUILD_INFO) $(GENERATED_MANPAGES)
|
||||
|
||||
-INFOFILES = doc/cpp.info doc/gcc.info doc/gccint.info \
|
||||
- doc/gccinstall.info doc/cppinternals.info
|
||||
+INFO_CPP_NAME = $(shell echo cpp|sed '$(program_transform_name)')
|
||||
+INFO_GCC_NAME = $(shell echo gcc|sed '$(program_transform_name)')
|
||||
+INFO_GXX_NAME = $(shell echo g++|sed '$(program_transform_name)')
|
||||
+INFO_GCCINT_NAME = $(shell echo gccint|sed '$(program_transform_name)')
|
||||
+INFO_GCCINSTALL_NAME = $(shell echo gccinstall|sed '$(program_transform_name)')
|
||||
+INFO_CPPINT_NAME = $(shell echo cppinternals|sed '$(program_transform_name)')
|
||||
+
|
||||
+INFO_FORTRAN_NAME = $(shell echo gfortran|sed '$(program_transform_name)')
|
||||
+INFO_GCJ_NAME = $(shell echo gcj|sed '$(program_transform_name)')
|
||||
+INFO_GDC_NAME = $(shell echo gdc|sed '$(program_transform_name)')
|
||||
+
|
||||
+INFOFILES = doc/$(INFO_CPP_NAME).info doc/$(INFO_GCC_NAME).info \
|
||||
+ doc/$(INFO_GCCINT_NAME).info \
|
||||
+ doc/$(INFO_GCCINSTALL_NAME).info doc/$(INFO_CPPINT_NAME).info
|
||||
+
|
||||
+MAKEINFODEFS = -D 'fncpp $(INFO_CPP_NAME)' -D 'fngcc $(INFO_GCC_NAME)' \
|
||||
+ -D 'fngxx $(INFO_GXX_NAME)' \
|
||||
+ -D 'fngccint $(INFO_GCCINT_NAME)' \
|
||||
+ -D 'fngccinstall $(INFO_GCCINSTALL_NAME)' \
|
||||
+ -D 'fncppint $(INFO_CPPINT_NAME)' \
|
||||
+ -D 'fngfortran $(INFO_FORTRAN_NAME)' \
|
||||
+ -D 'fngcj $(INFO_GCJ_NAME)' \
|
||||
+ -D 'fngdc $(INFO_GDC_NAME)'
|
||||
|
||||
info: $(INFOFILES) lang.info @GENINSRC@ srcinfo lang.srcinfo
|
||||
|
||||
@@ -3390,21 +3411,41 @@ gcc-vers.texi: $(BASEVER) $(DEVPHASE)
|
||||
# patterns. To use them, put each of the specific targets with its
|
||||
# specific dependencies but no build commands.
|
||||
|
||||
-doc/cpp.info: $(TEXI_CPP_FILES)
|
||||
-doc/gcc.info: $(TEXI_GCC_FILES)
|
||||
-doc/gccint.info: $(TEXI_GCCINT_FILES)
|
||||
-doc/cppinternals.info: $(TEXI_CPPINT_FILES)
|
||||
-
|
||||
+# Generic entry to handle info files, which are not renamed (currently Ada)
|
||||
doc/%.info: %.texi
|
||||
if [ x$(BUILD_INFO) = xinfo ]; then \
|
||||
$(MAKEINFO) $(MAKEINFOFLAGS) -I . -I $(gcc_docdir) \
|
||||
-I $(gcc_docdir)/include -o $@ $<; \
|
||||
fi
|
||||
|
||||
+doc/$(INFO_CPP_NAME).info: $(TEXI_CPP_FILES)
|
||||
+ if [ x$(BUILD_INFO) = xinfo ]; then \
|
||||
+ $(MAKEINFO) $(MAKEINFOFLAGS) $(MAKEINFODEFS) -I $(gcc_docdir) \
|
||||
+ -I $(gcc_docdir)/include -o $@ $<; \
|
||||
+ fi
|
||||
+
|
||||
+doc/$(INFO_GCC_NAME).info: $(TEXI_GCC_FILES)
|
||||
+ if [ x$(BUILD_INFO) = xinfo ]; then \
|
||||
+ $(MAKEINFO) $(MAKEINFOFLAGS) $(MAKEINFODEFS) -I $(gcc_docdir) \
|
||||
+ -I $(gcc_docdir)/include -o $@ $<; \
|
||||
+ fi
|
||||
+
|
||||
+doc/$(INFO_GCCINT_NAME).info: $(TEXI_GCCINT_FILES)
|
||||
+ if [ x$(BUILD_INFO) = xinfo ]; then \
|
||||
+ $(MAKEINFO) $(MAKEINFOFLAGS) $(MAKEINFODEFS) -I $(gcc_docdir) \
|
||||
+ -I $(gcc_docdir)/include -o $@ $<; \
|
||||
+ fi
|
||||
+
|
||||
+doc/$(INFO_CPPINT_NAME).info: $(TEXI_CPPINT_FILES)
|
||||
+ if [ x$(BUILD_INFO) = xinfo ]; then \
|
||||
+ $(MAKEINFO) $(MAKEINFOFLAGS) $(MAKEINFODEFS) -I $(gcc_docdir) \
|
||||
+ -I $(gcc_docdir)/include -o $@ $<; \
|
||||
+ fi
|
||||
+
|
||||
# Duplicate entry to handle renaming of gccinstall.info
|
||||
-doc/gccinstall.info: $(TEXI_GCCINSTALL_FILES)
|
||||
+doc/$(INFO_GCCINSTALL_NAME).info: $(TEXI_GCCINSTALL_FILES)
|
||||
if [ x$(BUILD_INFO) = xinfo ]; then \
|
||||
- $(MAKEINFO) $(MAKEINFOFLAGS) -I $(gcc_docdir) \
|
||||
+ $(MAKEINFO) $(MAKEINFOFLAGS) $(MAKEINFODEFS) -I $(gcc_docdir) \
|
||||
-I $(gcc_docdir)/include -o $@ $<; \
|
||||
fi
|
||||
|
||||
@@ -3815,11 +3856,11 @@ install-driver: installdirs xgcc$(exeext)
|
||||
# $(INSTALL_DATA) might be a relative pathname, so we can't cd into srcdir
|
||||
# to do the install.
|
||||
install-info:: doc installdirs \
|
||||
- $(DESTDIR)$(infodir)/cpp.info \
|
||||
- $(DESTDIR)$(infodir)/gcc.info \
|
||||
- $(DESTDIR)$(infodir)/cppinternals.info \
|
||||
- $(DESTDIR)$(infodir)/gccinstall.info \
|
||||
- $(DESTDIR)$(infodir)/gccint.info \
|
||||
+ $(DESTDIR)$(infodir)/$(INFO_CPP_NAME).info \
|
||||
+ $(DESTDIR)$(infodir)/$(INFO_GCC_NAME).info \
|
||||
+ $(DESTDIR)$(infodir)/$(INFO_CPPINT_NAME).info \
|
||||
+ $(DESTDIR)$(infodir)/$(INFO_GCCINSTALL_NAME).info \
|
||||
+ $(DESTDIR)$(infodir)/$(INFO_GCCINT_NAME).info \
|
||||
lang.install-info
|
||||
|
||||
$(DESTDIR)$(infodir)/%.info: doc/%.info installdirs
|
||||
@@ -4058,8 +4099,11 @@ uninstall: lang.uninstall
|
||||
-rm -rf $(DESTDIR)$(bindir)/$(GCOV_INSTALL_NAME)$(exeext)
|
||||
-rm -rf $(DESTDIR)$(man1dir)/$(GCC_INSTALL_NAME)$(man1ext)
|
||||
-rm -rf $(DESTDIR)$(man1dir)/cpp$(man1ext)
|
||||
- -rm -f $(DESTDIR)$(infodir)/cpp.info* $(DESTDIR)$(infodir)/gcc.info*
|
||||
- -rm -f $(DESTDIR)$(infodir)/cppinternals.info* $(DESTDIR)$(infodir)/gccint.info*
|
||||
+ -rm -f $(DESTDIR)$(infodir)/$(INFO_CPP_NAME).info*
|
||||
+ -rm -f $(DESTDIR)$(infodir)/$(INFO_GCC_NAME).info*
|
||||
+ -rm -f $(DESTDIR)$(infodir)/$(INFO_CPPINT_NAME).info*
|
||||
+ -rm -f $(DESTDIR)$(infodir)/$(INFO_GCCINT_NAME).info*
|
||||
+ -rm -f $(DESTDIR)$(infodir)/$(INFO_GCCINSTALL_NAME).info*
|
||||
for i in ar nm ranlib ; do \
|
||||
install_name=`echo gcc-$$i|sed '$(program_transform_name)'`$(exeext) ;\
|
||||
target_install_name=$(target_noncanonical)-`echo gcc-$$i|sed '$(program_transform_name)'`$(exeext) ; \
|
||||
diff --git a/gcc/ada/gnat-style.texi b/gcc/ada/gnat-style.texi
|
||||
index f3b1c29a24f..46bd21535cf 100644
|
||||
--- a/gcc/ada/gnat-style.texi
|
||||
+++ b/gcc/ada/gnat-style.texi
|
||||
@@ -12,7 +12,7 @@
|
||||
@finalout
|
||||
@dircategory GNU Ada Tools
|
||||
@direntry
|
||||
-* gnat-style: (gnat-style.info). gnat-style
|
||||
+* gnat-style: (gnat-style-12.info). gnat-style
|
||||
@end direntry
|
||||
|
||||
@c %**end of header
|
||||
diff --git a/gcc/ada/gnat_rm.texi b/gcc/ada/gnat_rm.texi
|
||||
index 212ed3df9d8..bed8ce40548 100644
|
||||
--- a/gcc/ada/gnat_rm.texi
|
||||
+++ b/gcc/ada/gnat_rm.texi
|
||||
@@ -12,7 +12,7 @@
|
||||
@finalout
|
||||
@dircategory GNU Ada Tools
|
||||
@direntry
|
||||
-* gnat_rm: (gnat_rm.info). gnat_rm
|
||||
+* GNAT Reference Manual: (gnat_rm-12). Reference Manual for GNU Ada tools.
|
||||
@end direntry
|
||||
|
||||
@c %**end of header
|
||||
diff --git a/gcc/ada/gnat_ugn.texi b/gcc/ada/gnat_ugn.texi
|
||||
index a1daff92fbe..514931ec139 100644
|
||||
--- a/gcc/ada/gnat_ugn.texi
|
||||
+++ b/gcc/ada/gnat_ugn.texi
|
||||
@@ -12,7 +12,7 @@
|
||||
@finalout
|
||||
@dircategory GNU Ada Tools
|
||||
@direntry
|
||||
-* gnat_ugn: (gnat_ugn.info). gnat_ugn
|
||||
+* User's Guide: (gnat_ugn-12).
|
||||
@end direntry
|
||||
|
||||
@c %**end of header
|
||||
diff --git a/gcc/d/Make-lang.in b/gcc/d/Make-lang.in
|
||||
index 1679fb81097..6845aa67d43 100644
|
||||
--- a/gcc/d/Make-lang.in
|
||||
+++ b/gcc/d/Make-lang.in
|
||||
@@ -247,10 +247,11 @@ D_TEXI_FILES = \
|
||||
$(gcc_docdir)/include/gcc-common.texi \
|
||||
gcc-vers.texi
|
||||
|
||||
-doc/gdc.info: $(D_TEXI_FILES)
|
||||
+INFO_GDC_NAME = $(shell echo gdc|sed '$(program_transform_name)')
|
||||
+doc/$(INFO_GDC_NAME).info: $(D_TEXI_FILES)
|
||||
if test "x$(BUILD_INFO)" = xinfo; then \
|
||||
- rm -f doc/gdc.info*; \
|
||||
- $(MAKEINFO) $(MAKEINFOFLAGS) -I $(gcc_docdir) \
|
||||
+ rm -f doc/$(INFO_GDC_NAME).info*; \
|
||||
+ $(MAKEINFO) $(MAKEINFOFLAGS) $(MAKEINFODEFS) -I $(gcc_docdir) \
|
||||
-I $(gcc_docdir)/include -o $@ $<; \
|
||||
else true; fi
|
||||
|
||||
@@ -275,11 +276,11 @@ gdc.pod: d/gdc.texi
|
||||
d.all.cross: gdc-cross$(exeext)
|
||||
d.start.encap: gdc$(exeext)
|
||||
d.rest.encap:
|
||||
-d.info: doc/gdc.info
|
||||
+d.info: doc/$(INFO_GDC_NAME).info
|
||||
d.dvi: doc/gdc.dvi
|
||||
d.pdf: doc/gdc.pdf
|
||||
d.html: $(build_htmldir)/gdc/index.html
|
||||
-d.srcinfo: doc/gdc.info
|
||||
+d.srcinfo: doc/$(INFO_GDC_NAME).info
|
||||
-cp -p $^ $(srcdir)/doc
|
||||
d.srcextra:
|
||||
|
||||
@@ -320,7 +321,7 @@ d.install-common: installdirs
|
||||
|
||||
d.install-plugin:
|
||||
|
||||
-d.install-info: $(DESTDIR)$(infodir)/gdc.info
|
||||
+d.install-info: $(DESTDIR)$(infodir)/$(INFO_GDC_NAME).info
|
||||
|
||||
d.install-pdf: doc/gdc.pdf
|
||||
@$(NORMAL_INSTALL)
|
||||
@@ -370,7 +371,7 @@ d.uninstall:
|
||||
-rm -rf $(DESTDIR)$(bindir)/$(D_INSTALL_NAME)$(exeext)
|
||||
-rm -rf $(DESTDIR)$(man1dir)/$(D_INSTALL_NAME)$(man1ext)
|
||||
-rm -rf $(DESTDIR)$(bindir)/$(D_TARGET_INSTALL_NAME)$(exeext)
|
||||
- -rm -rf $(DESTDIR)$(infodir)/gdc.info*
|
||||
+ -rm -rf $(DESTDIR)$(infodir)/$(INFO_GDC_NAME).info*
|
||||
|
||||
# Clean hooks.
|
||||
|
||||
diff --git a/gcc/d/gdc.texi b/gcc/d/gdc.texi
|
||||
index 24b6ee00478..1a35bb099e6 100644
|
||||
--- a/gcc/d/gdc.texi
|
||||
+++ b/gcc/d/gdc.texi
|
||||
@@ -38,7 +38,7 @@ man page gfdl(7).
|
||||
@format
|
||||
@dircategory Software development
|
||||
@direntry
|
||||
-* gdc: (gdc). A GCC-based compiler for the D language
|
||||
+* @value{fngdc}: (@value{fngdc}). A GCC-based compiler for the D language
|
||||
@end direntry
|
||||
@end format
|
||||
|
||||
diff --git a/gcc/doc/cpp.texi b/gcc/doc/cpp.texi
|
||||
index b0a2ce3ac6b..922a1c95181 100644
|
||||
--- a/gcc/doc/cpp.texi
|
||||
+++ b/gcc/doc/cpp.texi
|
||||
@@ -50,7 +50,7 @@ This manual contains no Invariant Sections. The Front-Cover Texts are
|
||||
@ifinfo
|
||||
@dircategory Software development
|
||||
@direntry
|
||||
-* Cpp: (cpp). The GNU C preprocessor.
|
||||
+* @value{fncpp}: (@value{fncpp}). The GNU C preprocessor.
|
||||
@end direntry
|
||||
@end ifinfo
|
||||
|
||||
diff --git a/gcc/doc/cppinternals.texi b/gcc/doc/cppinternals.texi
|
||||
index a8ddb5c190e..e8fe1fcf2d8 100644
|
||||
--- a/gcc/doc/cppinternals.texi
|
||||
+++ b/gcc/doc/cppinternals.texi
|
||||
@@ -7,7 +7,7 @@
|
||||
@ifinfo
|
||||
@dircategory Software development
|
||||
@direntry
|
||||
-* Cpplib: (cppinternals). Cpplib internals.
|
||||
+* @value{fncppint}: (@value{fncppint}). Cpplib internals.
|
||||
@end direntry
|
||||
@end ifinfo
|
||||
|
||||
diff --git a/gcc/doc/extend.texi b/gcc/doc/extend.texi
|
||||
index 3adb67aa47a..0fae318cade 100644
|
||||
--- a/gcc/doc/extend.texi
|
||||
+++ b/gcc/doc/extend.texi
|
||||
@@ -24488,7 +24488,7 @@ want to write code that checks whether these features are available, you can
|
||||
test for the GNU compiler the same way as for C programs: check for a
|
||||
predefined macro @code{__GNUC__}. You can also use @code{__GNUG__} to
|
||||
test specifically for GNU C++ (@pxref{Common Predefined Macros,,
|
||||
-Predefined Macros,cpp,The GNU C Preprocessor}).
|
||||
+Predefined Macros,@value{fncpp},The GNU C Preprocessor}).
|
||||
|
||||
@menu
|
||||
* C++ Volatiles:: What constitutes an access to a volatile object.
|
||||
diff --git a/gcc/doc/gcc.texi b/gcc/doc/gcc.texi
|
||||
index b3d500d4f47..d58e57dd480 100644
|
||||
--- a/gcc/doc/gcc.texi
|
||||
+++ b/gcc/doc/gcc.texi
|
||||
@@ -70,12 +70,12 @@ Texts being (a) (see below), and with the Back-Cover Texts being (b)
|
||||
@ifnottex
|
||||
@dircategory Software development
|
||||
@direntry
|
||||
-* gcc: (gcc). The GNU Compiler Collection.
|
||||
-* g++: (gcc). The GNU C++ compiler.
|
||||
-* gcov: (gcc) Gcov. @command{gcov}---a test coverage program.
|
||||
-* gcov-tool: (gcc) Gcov-tool. @command{gcov-tool}---an offline gcda profile processing program.
|
||||
-* gcov-dump: (gcc) Gcov-dump. @command{gcov-dump}---an offline gcda and gcno profile dump tool.
|
||||
-* lto-dump: (gcc) lto-dump. @command{lto-dump}---Tool for
|
||||
+* @value{fngcc}: (@value{fngcc}). The GNU Compiler Collection.
|
||||
+* @value{fngxx}: (@value{fngcc}). The GNU C++ compiler.
|
||||
+* gcov: (@value{fngcc}) Gcov. @command{gcov}---a test coverage program.
|
||||
+* gcov-tool: (@value{fngcc}) Gcov-tool. @command{gcov-tool}---an offline gcda profile processing program.
|
||||
+* gcov-dump: (@value{fngcc}) Gcov-dump. @command{gcov-dump}---an offline gcda and gcno profile dump tool.
|
||||
+* lto-dump: (@value{fngcc}) Lto-dump. @command{lto-dump}---Tool for
|
||||
dumping LTO object files.
|
||||
@end direntry
|
||||
@sp 1
|
||||
@@ -135,7 +135,7 @@ version @value{version-GCC}.
|
||||
The internals of the GNU compilers, including how to port them to new
|
||||
targets and some information about how to write front ends for new
|
||||
languages, are documented in a separate manual. @xref{Top,,
|
||||
-Introduction, gccint, GNU Compiler Collection (GCC) Internals}.
|
||||
+Introduction, @value{fngccint}, GNU Compiler Collection (GCC) Internals}.
|
||||
|
||||
@menu
|
||||
* G++ and GCC:: You can compile C or C++ programs.
|
||||
diff --git a/gcc/doc/gccint.texi b/gcc/doc/gccint.texi
|
||||
index 33cf7fdafce..8c76bf8a0c6 100644
|
||||
--- a/gcc/doc/gccint.texi
|
||||
+++ b/gcc/doc/gccint.texi
|
||||
@@ -49,7 +49,7 @@ Texts being (a) (see below), and with the Back-Cover Texts being (b)
|
||||
@ifnottex
|
||||
@dircategory Software development
|
||||
@direntry
|
||||
-* gccint: (gccint). Internals of the GNU Compiler Collection.
|
||||
+* @value{fngccint}: (@value{fngccint}). Internals of the GNU Compiler Collection.
|
||||
@end direntry
|
||||
This file documents the internals of the GNU compilers.
|
||||
@sp 1
|
||||
@@ -81,7 +81,7 @@ write front ends for new languages. It corresponds to the compilers
|
||||
@value{VERSION_PACKAGE}
|
||||
@end ifset
|
||||
version @value{version-GCC}. The use of the GNU compilers is documented in a
|
||||
-separate manual. @xref{Top,, Introduction, gcc, Using the GNU
|
||||
+separate manual. @xref{Top,, Introduction, @value{fngcc}, Using the GNU
|
||||
Compiler Collection (GCC)}.
|
||||
|
||||
This manual is mainly a reference manual rather than a tutorial. It
|
||||
diff --git a/gcc/doc/install.texi b/gcc/doc/install.texi
|
||||
index 63fc949b447..a5a1b01fc55 100644
|
||||
--- a/gcc/doc/install.texi
|
||||
+++ b/gcc/doc/install.texi
|
||||
@@ -89,7 +89,7 @@ Free Documentation License}''.
|
||||
@end ifinfo
|
||||
@dircategory Software development
|
||||
@direntry
|
||||
-* gccinstall: (gccinstall). Installing the GNU Compiler Collection.
|
||||
+* @value{fngccinstall}: (@value{fngccinstall}). Installing the GNU Compiler Collection.
|
||||
@end direntry
|
||||
|
||||
@c Part 3 Titlepage and Copyright
|
||||
diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi
|
||||
index def2df4584b..e5385a6140f 100644
|
||||
--- a/gcc/doc/invoke.texi
|
||||
+++ b/gcc/doc/invoke.texi
|
||||
@@ -17722,7 +17722,7 @@ One of the standard libraries bypassed by @option{-nostdlib} and
|
||||
@option{-nodefaultlibs} is @file{libgcc.a}, a library of internal subroutines
|
||||
which GCC uses to overcome shortcomings of particular machines, or special
|
||||
needs for some languages.
|
||||
-(@xref{Interface,,Interfacing to GCC Output,gccint,GNU Compiler
|
||||
+(@xref{Interface,,Interfacing to GCC Output,@value{fngccint},GNU Compiler
|
||||
Collection (GCC) Internals},
|
||||
for more discussion of @file{libgcc.a}.)
|
||||
In most cases, you need @file{libgcc.a} even when you want to avoid
|
||||
@@ -17731,7 +17731,7 @@ or @option{-nodefaultlibs} you should usually specify @option{-lgcc} as well.
|
||||
This ensures that you have no unresolved references to internal GCC
|
||||
library subroutines.
|
||||
(An example of such an internal subroutine is @code{__main}, used to ensure C++
|
||||
-constructors are called; @pxref{Collect2,,@code{collect2}, gccint,
|
||||
+constructors are called; @pxref{Collect2,,@code{collect2}, @value{fngccint},
|
||||
GNU Compiler Collection (GCC) Internals}.)
|
||||
|
||||
@opindex nostdlib++
|
||||
@@ -35109,7 +35109,7 @@ Note that you can also specify places to search using options such as
|
||||
@option{-B}, @option{-I} and @option{-L} (@pxref{Directory Options}). These
|
||||
take precedence over places specified using environment variables, which
|
||||
in turn take precedence over those specified by the configuration of GCC@.
|
||||
-@xref{Driver,, Controlling the Compilation Driver @file{gcc}, gccint,
|
||||
+@xref{Driver,, Controlling the Compilation Driver @file{gcc}, @value{fngccint},
|
||||
GNU Compiler Collection (GCC) Internals}.
|
||||
|
||||
@table @env
|
||||
@@ -35289,7 +35289,7 @@ the headers it contains change.
|
||||
|
||||
A precompiled header file is searched for when @code{#include} is
|
||||
seen in the compilation. As it searches for the included file
|
||||
-(@pxref{Search Path,,Search Path,cpp,The C Preprocessor}) the
|
||||
+(@pxref{Search Path,,Search Path,@value{fncpp},The C Preprocessor}) the
|
||||
compiler looks for a precompiled header in each directory just before it
|
||||
looks for the include file in that directory. The name searched for is
|
||||
the name specified in the @code{#include} with @samp{.gch} appended. If
|
||||
diff --git a/gcc/doc/libgcc.texi b/gcc/doc/libgcc.texi
|
||||
index 73aa803f97b..e005588b88e 100644
|
||||
--- a/gcc/doc/libgcc.texi
|
||||
+++ b/gcc/doc/libgcc.texi
|
||||
@@ -24,7 +24,7 @@ that needs them.
|
||||
GCC will also generate calls to C library routines, such as
|
||||
@code{memcpy} and @code{memset}, in some cases. The set of routines
|
||||
that GCC may possibly use is documented in @ref{Other
|
||||
-Builtins,,,gcc, Using the GNU Compiler Collection (GCC)}.
|
||||
+Builtins,,,@value{fngcc}, Using the GNU Compiler Collection (GCC)}.
|
||||
|
||||
These routines take arguments and return values of a specific machine
|
||||
mode, not a specific C type. @xref{Machine Modes}, for an explanation
|
||||
diff --git a/gcc/fortran/Make-lang.in b/gcc/fortran/Make-lang.in
|
||||
index 1666fd8f0ff..96ec8861a3d 100644
|
||||
--- a/gcc/fortran/Make-lang.in
|
||||
+++ b/gcc/fortran/Make-lang.in
|
||||
@@ -116,7 +116,8 @@ fortran.tags: force
|
||||
cd $(srcdir)/fortran; $(ETAGS) -o TAGS.sub *.cc *.h; \
|
||||
$(ETAGS) --include TAGS.sub --include ../TAGS.sub
|
||||
|
||||
-fortran.info: doc/gfortran.info doc/gfc-internals.info
|
||||
+INFO_FORTRAN_NAME = $(shell echo gfortran|sed '$(program_transform_name)')
|
||||
+fortran.info: doc/$(INFO_FORTRAN_NAME).info
|
||||
|
||||
F95_DVIFILES = doc/gfortran.dvi
|
||||
|
||||
@@ -199,10 +200,10 @@ GFORTRAN_TEXI = \
|
||||
$(srcdir)/doc/include/gcc-common.texi \
|
||||
gcc-vers.texi
|
||||
|
||||
-doc/gfortran.info: $(GFORTRAN_TEXI)
|
||||
+doc/$(INFO_FORTRAN_NAME).info: $(GFORTRAN_TEXI)
|
||||
if [ x$(BUILD_INFO) = xinfo ]; then \
|
||||
rm -f doc/gfortran.info-*; \
|
||||
- $(MAKEINFO) -I $(srcdir)/doc/include -I $(srcdir)/fortran \
|
||||
+ $(MAKEINFO) $(MAKEINFODEFS) -I $(srcdir)/doc/include -I $(srcdir)/fortran \
|
||||
-o $@ $<; \
|
||||
else true; fi
|
||||
|
||||
@@ -267,7 +268,7 @@ fortran.install-common: install-finclude-dir installdirs
|
||||
|
||||
fortran.install-plugin:
|
||||
|
||||
-fortran.install-info: $(DESTDIR)$(infodir)/gfortran.info
|
||||
+fortran.install-info: $(DESTDIR)$(infodir)/$(INFO_FORTRAN_NAME).info
|
||||
|
||||
fortran.install-man: $(DESTDIR)$(man1dir)/$(GFORTRAN_INSTALL_NAME)$(man1ext)
|
||||
|
||||
@@ -285,7 +286,7 @@ fortran.uninstall:
|
||||
rm -rf $(DESTDIR)$(bindir)/$(GFORTRAN_INSTALL_NAME)$(exeext); \
|
||||
rm -rf $(DESTDIR)$(man1dir)/$(GFORTRAN_INSTALL_NAME)$(man1ext); \
|
||||
rm -rf $(DESTDIR)$(bindir)/$(GFORTRAN_TARGET_INSTALL_NAME)$(exeext); \
|
||||
- rm -rf $(DESTDIR)$(infodir)/gfortran.info*
|
||||
+ rm -rf $(DESTDIR)$(infodir)/$(INFO_FORTRAN_NAME).info*
|
||||
|
||||
#
|
||||
# Clean hooks:
|
||||
diff --git a/gcc/fortran/gfortran.texi b/gcc/fortran/gfortran.texi
|
||||
index b96712987e1..55ed2a540c2 100644
|
||||
--- a/gcc/fortran/gfortran.texi
|
||||
+++ b/gcc/fortran/gfortran.texi
|
||||
@@ -101,7 +101,7 @@ Texts being (a) (see below), and with the Back-Cover Texts being (b)
|
||||
@ifinfo
|
||||
@dircategory Software development
|
||||
@direntry
|
||||
-* gfortran: (gfortran). The GNU Fortran Compiler.
|
||||
+* @value{fngfortran}: (@value{fngfortran}). The GNU Fortran Compiler.
|
||||
@end direntry
|
||||
This file documents the use and the internals of
|
||||
the GNU Fortran compiler, (@command{gfortran}).
|
||||
diff --git a/libffi/Makefile.am b/libffi/Makefile.am
|
||||
index c6d6f849c53..6fbf374a2e7 100644
|
||||
--- a/libffi/Makefile.am
|
||||
+++ b/libffi/Makefile.am
|
||||
@@ -28,6 +28,8 @@ TEXINFO_TEX = ../gcc/doc/include/texinfo.tex
|
||||
# Defines info, dvi, pdf and html targets
|
||||
MAKEINFOFLAGS = -I $(srcdir)/../gcc/doc/include
|
||||
info_TEXINFOS = doc/libffi.texi
|
||||
+INFO_LIBFFI_NAME = $(shell echo libffi | sed '${program_transform_name}')
|
||||
+INFO_DEPS = doc/$(INFO_LIBFFI_NAME).info
|
||||
|
||||
# AM_CONDITIONAL on configure option --generated-files-in-srcdir
|
||||
if GENINSRC
|
||||
@@ -45,14 +47,14 @@ endif
|
||||
|
||||
all-local: $(STAMP_GENINSRC)
|
||||
|
||||
-stamp-geninsrc: doc/libffi.info
|
||||
- cp -p $(top_builddir)/doc/libffi.info $(srcdir)/doc/libffi.info
|
||||
+stamp-geninsrc: doc/$(INFO_LIBFFI_NAME).info
|
||||
+ cp -p $(top_builddir)/doc/$(INFO_LIBFFI_NAME).info $(srcdir)/doc/libffi.info
|
||||
@touch $@
|
||||
|
||||
-doc/libffi.info: $(STAMP_BUILD_INFO)
|
||||
+doc/$(INFO_LIBFFI_NAME).info: $(STAMP_BUILD_INFO)
|
||||
|
||||
stamp-build-info: doc/libffi.texi $(srcdir)/doc/version.texi doc/$(am__dirstamp)
|
||||
- $(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -I $(srcdir)/doc -o doc/libffi.info $(srcdir)/doc/libffi.texi
|
||||
+ $(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -D 'fnlibffi $(INFO_LIBFFI_NAME)' -I $(srcdir)/doc -o doc/$(INFO_LIBFFI_NAME).info $(srcdir)/doc/libffi.texi
|
||||
@touch $@
|
||||
|
||||
CLEANFILES = $(STAMP_GENINSRC) $(STAMP_BUILD_INFO)
|
||||
diff --git a/libffi/Makefile.in b/libffi/Makefile.in
|
||||
index 5524a6a571e..1898ffee446 100644
|
||||
--- a/libffi/Makefile.in
|
||||
+++ b/libffi/Makefile.in
|
||||
@@ -249,7 +249,8 @@ AM_V_texidevnull = $(am__v_texidevnull_@AM_V@)
|
||||
am__v_texidevnull_ = $(am__v_texidevnull_@AM_DEFAULT_V@)
|
||||
am__v_texidevnull_0 = > /dev/null
|
||||
am__v_texidevnull_1 =
|
||||
-INFO_DEPS = doc/libffi.info
|
||||
+INFO_LIBFFI_NAME = $(shell echo libffi | sed '${program_transform_name}')
|
||||
+INFO_DEPS = doc/$(INFO_LIBFFI_NAME).info
|
||||
am__TEXINFO_TEX_DIR = $(srcdir)/../gcc/doc/include
|
||||
DVIS = doc/libffi.dvi
|
||||
PDFS = doc/libffi.pdf
|
||||
@@ -473,6 +474,8 @@ TEXINFO_TEX = ../gcc/doc/include/texinfo.tex
|
||||
# Defines info, dvi, pdf and html targets
|
||||
MAKEINFOFLAGS = -I $(srcdir)/../gcc/doc/include
|
||||
info_TEXINFOS = doc/libffi.texi
|
||||
+INFO_LIBFFI_NAME = $(shell echo libffi | sed '${program_transform_name}')
|
||||
+INFO_DEPS = doc/$(INFO_LIBFFI_NAME).info
|
||||
@GENINSRC_FALSE@STAMP_GENINSRC =
|
||||
|
||||
# AM_CONDITIONAL on configure option --generated-files-in-srcdir
|
||||
@@ -1906,14 +1909,15 @@ uninstall-am: uninstall-dvi-am uninstall-html-am uninstall-info-am \
|
||||
|
||||
all-local: $(STAMP_GENINSRC)
|
||||
|
||||
-stamp-geninsrc: doc/libffi.info
|
||||
- cp -p $(top_builddir)/doc/libffi.info $(srcdir)/doc/libffi.info
|
||||
+$(srcdir)/doc/libffi.info: stamp-geninsrc
|
||||
+stamp-geninsrc: doc/$(INFO_LIBFFI_NAME).info
|
||||
+ cp -p $(top_builddir)/doc/$(INFO_LIBFFI_NAME).info $(srcdir)/doc/libffi.info
|
||||
@touch $@
|
||||
|
||||
-doc/libffi.info: $(STAMP_BUILD_INFO)
|
||||
+doc/$(INFO_LIBFFI_NAME).info: $(STAMP_BUILD_INFO)
|
||||
|
||||
stamp-build-info: doc/libffi.texi $(srcdir)/doc/version.texi doc/$(am__dirstamp)
|
||||
- $(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -I $(srcdir)/doc -o doc/libffi.info $(srcdir)/doc/libffi.texi
|
||||
+ $(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -D 'fnlibffi $(INFO_LIBFFI_NAME)' -I $(srcdir)/doc -o doc/$(INFO_LIBFFI_NAME).info $(srcdir)/doc/libffi.texi
|
||||
@touch $@
|
||||
@LIBFFI_BUILD_VERSIONED_SHLIB_SUN_TRUE@@LIBFFI_BUILD_VERSIONED_SHLIB_TRUE@libffi.map-sun : libffi.map $(top_srcdir)/../contrib/make_sunver.pl \
|
||||
@LIBFFI_BUILD_VERSIONED_SHLIB_SUN_TRUE@@LIBFFI_BUILD_VERSIONED_SHLIB_TRUE@ $(libffi_la_OBJECTS) $(libffi_la_LIBADD)
|
||||
diff --git a/libffi/doc/libffi.texi b/libffi/doc/libffi.texi
|
||||
index 7fd3625d992..62dc76d6d64 100644
|
||||
--- a/libffi/doc/libffi.texi
|
||||
+++ b/libffi/doc/libffi.texi
|
||||
@@ -43,7 +43,7 @@ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
|
||||
@dircategory Development
|
||||
@direntry
|
||||
-* libffi: (libffi). Portable foreign function interface library.
|
||||
+* libffi: (@value{fnlibffi}). Portable foreign-function interface library.
|
||||
@end direntry
|
||||
|
||||
@titlepage
|
||||
diff --git a/libgomp/Makefile.am b/libgomp/Makefile.am
|
||||
index 428f7a9dab5..cce97d85bc8 100644
|
||||
--- a/libgomp/Makefile.am
|
||||
+++ b/libgomp/Makefile.am
|
||||
@@ -129,14 +129,17 @@ endif
|
||||
|
||||
all-local: $(STAMP_GENINSRC)
|
||||
|
||||
-stamp-geninsrc: libgomp.info
|
||||
- cp -p $(top_builddir)/libgomp.info $(srcdir)/libgomp.info
|
||||
+INFO_LIBGOMP_NAME = $(shell echo libgomp|sed '$(program_transform_name)')
|
||||
+stamp-geninsrc: $(INFO_LIBGOMP_NAME).info
|
||||
+ cp -p $(top_builddir)/$(INFO_LIBGOMP_NAME).info $(srcdir)/libgomp.info
|
||||
@touch $@
|
||||
|
||||
-libgomp.info: $(STAMP_BUILD_INFO)
|
||||
+libgomp.info: $(INFO_LIBGOMP_NAME).info
|
||||
+ cp $(INFO_LIBGOMP_NAME).info libgomp.info
|
||||
+$(STAMP_BUILD_INFO).info: $(STAMP_BUILD_INFO)
|
||||
|
||||
stamp-build-info: libgomp.texi
|
||||
- $(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -I $(srcdir) -o libgomp.info $(srcdir)/libgomp.texi
|
||||
+ $(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -I $(srcdir) -o $(INFO_LIBGOMP_NAME).info $(srcdir)/libgomp.texi
|
||||
@touch $@
|
||||
|
||||
|
||||
diff --git a/libgomp/Makefile.in b/libgomp/Makefile.in
|
||||
index 2c81ccacc1d..0fb67876733 100644
|
||||
--- a/libgomp/Makefile.in
|
||||
+++ b/libgomp/Makefile.in
|
||||
@@ -612,6 +612,7 @@ info_TEXINFOS = libgomp.texi
|
||||
|
||||
# AM_CONDITIONAL on configure check ACX_CHECK_PROG_VER([MAKEINFO])
|
||||
@BUILD_INFO_TRUE@STAMP_BUILD_INFO = stamp-build-info
|
||||
+INFO_LIBGOMP_NAME = $(shell echo libgomp|sed '$(program_transform_name)')
|
||||
CLEANFILES = $(STAMP_GENINSRC) $(STAMP_BUILD_INFO)
|
||||
MAINTAINERCLEANFILES = $(srcdir)/libgomp.info
|
||||
MULTISRCTOP =
|
||||
@@ -1392,15 +1393,16 @@ env.lo: libgomp_f.h
|
||||
env.o: libgomp_f.h
|
||||
|
||||
all-local: $(STAMP_GENINSRC)
|
||||
-
|
||||
-stamp-geninsrc: libgomp.info
|
||||
- cp -p $(top_builddir)/libgomp.info $(srcdir)/libgomp.info
|
||||
+stamp-geninsrc: $(INFO_LIBGOMP_NAME).info
|
||||
+ cp -p $(top_builddir)/$(INFO_LIBGOMP_NAME).info $(srcdir)/libgomp.info
|
||||
@touch $@
|
||||
|
||||
-libgomp.info: $(STAMP_BUILD_INFO)
|
||||
+libgomp.info: $(INFO_LIBGOMP_NAME).info
|
||||
+ cp $(INFO_LIBGOMP_NAME).info libgomp.info
|
||||
+$(INFO_LIBGOMP_NAME).info: $(STAMP_BUILD_INFO)
|
||||
|
||||
stamp-build-info: libgomp.texi
|
||||
- $(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -I $(srcdir) -o libgomp.info $(srcdir)/libgomp.texi
|
||||
+ $(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -D 'fnlibgomp $(INFO_LIBGOMP_NAME)' -I $(srcdir) -o $(INFO_LIBGOMP_NAME).info $(srcdir)/libgomp.texi
|
||||
@touch $@
|
||||
|
||||
# target overrides
|
||||
diff --git a/libgomp/libgomp.texi b/libgomp/libgomp.texi
|
||||
index 5bcb84a1d6f..60715911924 100644
|
||||
--- a/libgomp/libgomp.texi
|
||||
+++ b/libgomp/libgomp.texi
|
||||
@@ -31,7 +31,7 @@ texts being (a) (see below), and with the Back-Cover Texts being (b)
|
||||
@ifinfo
|
||||
@dircategory GNU Libraries
|
||||
@direntry
|
||||
-* libgomp: (libgomp). GNU Offloading and Multi Processing Runtime Library.
|
||||
+* @value{fnlibgomp}: (@value{fnlibgomp}). GNU Offloading and Multi Processing Runtime Library.
|
||||
@end direntry
|
||||
|
||||
This manual documents libgomp, the GNU Offloading and Multi Processing
|
||||
diff --git a/libitm/libitm.texi b/libitm/libitm.texi
|
||||
index 9bb818fa53f..e62a90231f5 100644
|
||||
--- a/libitm/libitm.texi
|
||||
+++ b/libitm/libitm.texi
|
||||
@@ -20,7 +20,7 @@ Free Documentation License''.
|
||||
@ifinfo
|
||||
@dircategory GNU Libraries
|
||||
@direntry
|
||||
-* libitm: (libitm). GNU Transactional Memory Library
|
||||
+* libitm: (libitm-6). GNU Transactional Memory Library
|
||||
@end direntry
|
||||
|
||||
This manual documents the GNU Transactional Memory Library.
|
||||
diff --git a/libquadmath/libquadmath.texi b/libquadmath/libquadmath.texi
|
||||
index 2e3a62511b1..ac658f5f2a7 100644
|
||||
--- a/libquadmath/libquadmath.texi
|
||||
+++ b/libquadmath/libquadmath.texi
|
||||
@@ -25,7 +25,7 @@ copy and modify this GNU manual.
|
||||
@ifinfo
|
||||
@dircategory GNU Libraries
|
||||
@direntry
|
||||
-* libquadmath: (libquadmath). GCC Quad-Precision Math Library
|
||||
+* libquadmath: (libquadmath-6). GCC Quad-Precision Math Library
|
||||
@end direntry
|
||||
|
||||
This manual documents the GCC Quad-Precision Math Library API.
|
115
gcc44-textdomain.patch
Normal file
115
gcc44-textdomain.patch
Normal file
|
@ -0,0 +1,115 @@
|
|||
#! /bin/sh -e
|
||||
|
||||
# DP: Set gettext's domain and textdomain to the versioned package name.
|
||||
|
||||
dir=
|
||||
if [ $# -eq 3 -a "$2" = '-d' ]; then
|
||||
pdir="-d $3"
|
||||
dir="$3/"
|
||||
elif [ $# -ne 1 ]; then
|
||||
echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
|
||||
exit 1
|
||||
fi
|
||||
case "$1" in
|
||||
-patch)
|
||||
patch $pdir -f --no-backup-if-mismatch -p0 < $0
|
||||
;;
|
||||
-unpatch)
|
||||
patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
|
||||
;;
|
||||
*)
|
||||
echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
|
||||
exit 1
|
||||
esac
|
||||
exit 0
|
||||
|
||||
diff --git a/gcc/Makefile.in b/gcc/Makefile.in
|
||||
index 0fe2ba241..86e5fb9e7 100644
|
||||
--- a/gcc/Makefile.in
|
||||
+++ b/gcc/Makefile.in
|
||||
@@ -4303,8 +4303,8 @@ install-po:
|
||||
dir=$(localedir)/$$lang/LC_MESSAGES; \
|
||||
echo $(mkinstalldirs) $(DESTDIR)$$dir; \
|
||||
$(mkinstalldirs) $(DESTDIR)$$dir || exit 1; \
|
||||
- echo $(INSTALL_DATA) $$cat $(DESTDIR)$$dir/gcc.mo; \
|
||||
- $(INSTALL_DATA) $$cat $(DESTDIR)$$dir/gcc.mo; \
|
||||
+ echo $(INSTALL_DATA) $$cat $(DESTDIR)$$dir/gcc-13.mo; \
|
||||
+ $(INSTALL_DATA) $$cat $(DESTDIR)$$dir/gcc-13.mo; \
|
||||
done
|
||||
|
||||
# Rule for regenerating the message template (gcc.pot).
|
||||
diff --git a/gcc/intl.cc b/gcc/intl.cc
|
||||
index e8108b7dc..62895c11f 100644
|
||||
--- a/gcc/intl.cc
|
||||
+++ b/gcc/intl.cc
|
||||
@@ -55,8 +55,8 @@ gcc_init_libintl (void)
|
||||
setlocale (LC_ALL, "");
|
||||
#endif
|
||||
|
||||
- (void) bindtextdomain ("gcc", LOCALEDIR);
|
||||
- (void) textdomain ("gcc");
|
||||
+ (void) bindtextdomain ("gcc-13", LOCALEDIR);
|
||||
+ (void) textdomain ("gcc-13");
|
||||
|
||||
/* Opening quotation mark. */
|
||||
open_quote = _("`");
|
||||
diff --git a/libcpp/Makefile.in b/libcpp/Makefile.in
|
||||
index 5fbba9b9c..c37bc6bcf 100644
|
||||
--- a/libcpp/Makefile.in
|
||||
+++ b/libcpp/Makefile.in
|
||||
@@ -49,6 +49,7 @@ LDFLAGS = @LDFLAGS@
|
||||
LIBICONV = @LIBICONV@
|
||||
LIBINTL = @LIBINTL@
|
||||
PACKAGE = @PACKAGE@
|
||||
+PACKAGE_SUFFIX = -13
|
||||
RANLIB = @RANLIB@
|
||||
SHELL = @SHELL@
|
||||
USED_CATALOGS = @USED_CATALOGS@
|
||||
@@ -76,8 +77,10 @@ INCLUDES = -I$(srcdir) -I. -I$(srcdir)/../include @INCINTL@ \
|
||||
|
||||
ALL_CFLAGS = $(CFLAGS) $(WARN_CFLAGS) $(INCLUDES) $(CPPFLAGS) $(PICFLAG) \
|
||||
$(CET_HOST_FLAGS)
|
||||
+ALL_CFLAGS += -DPACKAGE_SUFFIX=\"$(strip $(PACKAGE_SUFFIX))\"
|
||||
ALL_CXXFLAGS = $(CXXFLAGS) $(WARN_CXXFLAGS) $(NOEXCEPTION_FLAGS) $(INCLUDES) \
|
||||
$(CPPFLAGS) $(PICFLAG) $(CET_HOST_FLAGS)
|
||||
+ALL_CXXFLAGS += -DPACKAGE_SUFFIX=\"$(strip $(PACKAGE_SUFFIX))\"
|
||||
|
||||
# The name of the compiler to use.
|
||||
COMPILER = $(CXX)
|
||||
@@ -166,8 +169,8 @@ install-strip install: all installdirs
|
||||
else continue; \
|
||||
fi; \
|
||||
dir=$(localedir)/$$lang/LC_MESSAGES; \
|
||||
- echo $(INSTALL_DATA) $$cat $(DESTDIR)$$dir/$(PACKAGE).mo; \
|
||||
- $(INSTALL_DATA) $$cat $(DESTDIR)$$dir/$(PACKAGE).mo; \
|
||||
+ echo $(INSTALL_DATA) $$cat $(DESTDIR)$$dir/$(PACKAGE)$(PACKAGE_SUFFIX).mo; \
|
||||
+ $(INSTALL_DATA) $$cat $(DESTDIR)$$dir/$(PACKAGE)$(PACKAGE_SUFFIX).mo; \
|
||||
done
|
||||
|
||||
mostlyclean:
|
||||
diff --git a/libcpp/init.cc b/libcpp/init.cc
|
||||
index 63124c816..4471ff358 100644
|
||||
--- a/libcpp/init.cc
|
||||
+++ b/libcpp/init.cc
|
||||
@@ -167,7 +167,7 @@ init_library (void)
|
||||
init_trigraph_map ();
|
||||
|
||||
#ifdef ENABLE_NLS
|
||||
- (void) bindtextdomain (PACKAGE, LOCALEDIR);
|
||||
+ (void) bindtextdomain (PACKAGE PACKAGE_SUFFIX, LOCALEDIR);
|
||||
#endif
|
||||
}
|
||||
}
|
||||
diff --git a/libcpp/system.h b/libcpp/system.h
|
||||
index 0a0629d55..6fc28a651 100644
|
||||
--- a/libcpp/system.h
|
||||
+++ b/libcpp/system.h
|
||||
@@ -284,7 +284,7 @@ extern int errno;
|
||||
#endif
|
||||
|
||||
#ifndef _
|
||||
-# define _(msgid) dgettext (PACKAGE, msgid)
|
||||
+# define _(msgid) dgettext (PACKAGE PACKAGE_SUFFIX, msgid)
|
||||
#endif
|
||||
|
||||
#ifndef N_
|
14
gcc48-libstdc++-api-reference.patch
Normal file
14
gcc48-libstdc++-api-reference.patch
Normal file
|
@ -0,0 +1,14 @@
|
|||
Index: libstdc++-v3/doc/html/index.html
|
||||
===================================================================
|
||||
--- libstdc++-v3/doc/html/index.html (revision 210144)
|
||||
+++ libstdc++-v3/doc/html/index.html (working copy)
|
||||
@@ -18,7 +18,7 @@
|
||||
</p></li><li class="listitem"><p>
|
||||
<a class="link" href="faq.html" title="Frequently Asked Questions">Frequently Asked Questions</a>
|
||||
</p></li><li class="listitem"><p>
|
||||
- <a class="link" href="api.html" title="The GNU C++ Library API Reference">API and Source Documentation</a>
|
||||
+ <a class="link" href="api/index.html" title="The GNU C++ Library API Reference">API and Source Documentation</a>
|
||||
</p></li></ul></div><p>
|
||||
</p></div></div></div><hr /></div><div class="toc"><p><strong>Table of Contents</strong></p><dl class="toc"><dt><span class="book"><a href="manual/index.html">The GNU C++ Library Manual</a></span></dt><dd><dl><dt><span class="part"><a href="manual/intro.html">I.
|
||||
Introduction
|
||||
|
18
gcc7-avoid-fixinc-error.diff
Normal file
18
gcc7-avoid-fixinc-error.diff
Normal file
|
@ -0,0 +1,18 @@
|
|||
Index: gcc/Makefile.in
|
||||
===================================================================
|
||||
--- gcc/Makefile.in (revision 255776)
|
||||
+++ gcc/Makefile.in (working copy)
|
||||
@@ -3066,13 +3066,6 @@ stmp-fixinc: gsyslimits.h macro_list fix
|
||||
sysroot_headers_suffix=`echo $${ml} | sed -e 's/;.*$$//'`; \
|
||||
multi_dir=`echo $${ml} | sed -e 's/^[^;]*;//'`; \
|
||||
fix_dir=include-fixed$${multi_dir}; \
|
||||
- if ! $(inhibit_libc) && test ! -d ${BUILD_SYSTEM_HEADER_DIR}; then \
|
||||
- echo The directory that should contain system headers does not exist: >&2 ; \
|
||||
- echo " ${BUILD_SYSTEM_HEADER_DIR}" >&2 ; \
|
||||
- tooldir_sysinc=`echo "${gcc_tooldir}/sys-include" | sed -e :a -e "s,[^/]*/\.\.\/,," -e ta`; \
|
||||
- if test "x${BUILD_SYSTEM_HEADER_DIR}" = "x$${tooldir_sysinc}"; \
|
||||
- then sleep 1; else exit 1; fi; \
|
||||
- fi; \
|
||||
$(mkinstalldirs) $${fix_dir}; \
|
||||
chmod a+rx $${fix_dir} || true; \
|
||||
(TARGET_MACHINE='$(target)'; srcdir=`cd $(srcdir); ${PWD_COMMAND}`; \
|
13
gcc7-remove-Wexpansion-to-defined-from-Wextra.patch
Normal file
13
gcc7-remove-Wexpansion-to-defined-from-Wextra.patch
Normal file
|
@ -0,0 +1,13 @@
|
|||
Index: gcc/c-family/c.opt
|
||||
===================================================================
|
||||
--- gcc/c-family/c.opt (revision 246224)
|
||||
+++ gcc/c-family/c.opt (working copy)
|
||||
@@ -596,7 +596,7 @@ C ObjC C++ ObjC++ Var(warn_double_promot
|
||||
Warn about implicit conversions from \"float\" to \"double\".
|
||||
|
||||
Wexpansion-to-defined
|
||||
-C ObjC C++ ObjC++ CPP(warn_expansion_to_defined) CppReason(CPP_W_EXPANSION_TO_DEFINED) Var(cpp_warn_expansion_to_defined) Init(0) Warning EnabledBy(Wextra || Wpedantic)
|
||||
+C ObjC C++ ObjC++ CPP(warn_expansion_to_defined) CppReason(CPP_W_EXPANSION_TO_DEFINED) Var(cpp_warn_expansion_to_defined) Init(0) Warning EnabledBy(Wpedantic)
|
||||
Warn if \"defined\" is used outside #if.
|
||||
|
||||
Wimplicit-function-declaration
|
116
gcc9-reproducible-builds-buildid-for-checksum.patch
Normal file
116
gcc9-reproducible-builds-buildid-for-checksum.patch
Normal file
|
@ -0,0 +1,116 @@
|
|||
Use the binaries build-id as checksum for PCH purposes.
|
||||
|
||||
diff --git a/gcc/c-family/c-pch.cc b/gcc/c-family/c-pch.cc
|
||||
index 2cafa1387bb..7f51f977378 100644
|
||||
--- a/gcc/c-family/c-pch.cc
|
||||
+++ b/gcc/c-family/c-pch.cc
|
||||
@@ -64,6 +64,66 @@ static FILE *pch_outfile;
|
||||
|
||||
static const char *get_ident (void);
|
||||
|
||||
+#if _GNU_SOURCE
|
||||
+#include <link.h>
|
||||
+
|
||||
+#define ALIGN(val, align) (((val) + (align) - 1) & ~((align) - 1))
|
||||
+
|
||||
+static int
|
||||
+get_build_id_1 (struct dl_phdr_info *info, size_t, void *data)
|
||||
+{
|
||||
+ for (unsigned i = 0; i < info->dlpi_phnum; ++i)
|
||||
+ {
|
||||
+ if (info->dlpi_phdr[i].p_type != PT_NOTE)
|
||||
+ continue;
|
||||
+ ElfW(Nhdr) *nhdr
|
||||
+ = (ElfW(Nhdr) *)(info->dlpi_addr + info->dlpi_phdr[i].p_vaddr);
|
||||
+ ptrdiff_t size = info->dlpi_phdr[i].p_filesz;
|
||||
+ ptrdiff_t align = info->dlpi_phdr[i].p_align;
|
||||
+ if (align != 8)
|
||||
+ align = 4;
|
||||
+ while (size >= (ptrdiff_t)sizeof (ElfW(Nhdr)))
|
||||
+ {
|
||||
+ if (nhdr->n_type == NT_GNU_BUILD_ID
|
||||
+ && nhdr->n_namesz == 4
|
||||
+ && strncmp ((char *)nhdr
|
||||
+ + sizeof (ElfW(Nhdr)),
|
||||
+ "GNU", 4) == 0
|
||||
+ && nhdr->n_descsz >= 16)
|
||||
+ {
|
||||
+ memcpy (data,
|
||||
+ (char *)nhdr
|
||||
+ + ALIGN (sizeof (ElfW(Nhdr))
|
||||
+ + nhdr->n_namesz, align), 16);
|
||||
+ return 1;
|
||||
+ }
|
||||
+ size_t offset = (ALIGN (sizeof (ElfW(Nhdr))
|
||||
+ + nhdr->n_namesz, align)
|
||||
+ + ALIGN(nhdr->n_descsz, align));
|
||||
+ nhdr = (ElfW(Nhdr) *)((char *)nhdr + offset);
|
||||
+ size -= offset;
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
+ return 0;
|
||||
+}
|
||||
+
|
||||
+static const unsigned char *
|
||||
+get_build_id ()
|
||||
+{
|
||||
+ static unsigned char build_id[16];
|
||||
+ if (!dl_iterate_phdr (get_build_id_1, build_id))
|
||||
+ return NULL;
|
||||
+ return build_id;
|
||||
+}
|
||||
+#else
|
||||
+static const unsigned char *
|
||||
+get_build_id ()
|
||||
+{
|
||||
+ return NULL;
|
||||
+}
|
||||
+#endif
|
||||
+
|
||||
/* Compute an appropriate 8-byte magic number for the PCH file, so that
|
||||
utilities like file(1) can identify it, and so that GCC can quickly
|
||||
ignore non-PCH files and PCH files that are of a completely different
|
||||
@@ -118,8 +178,11 @@ pch_init (void)
|
||||
}
|
||||
target_validity = targetm.get_pch_validity (&v.target_data_length);
|
||||
|
||||
+ const unsigned char *chksum = get_build_id ();
|
||||
+ if (!chksum)
|
||||
+ chksum = executable_checksum;
|
||||
if (fwrite (partial_pch, IDENT_LENGTH, 1, f) != 1
|
||||
- || fwrite (executable_checksum, 16, 1, f) != 1
|
||||
+ || fwrite (chksum, 16, 1, f) != 1
|
||||
|| fwrite (&v, sizeof (v), 1, f) != 1
|
||||
|| fwrite (target_validity, v.target_data_length, 1, f) != 1)
|
||||
fatal_error (input_location, "cannot write to %s: %m", pch_file);
|
||||
@@ -234,7 +297,10 @@ c_common_valid_pch (cpp_reader *pfile, const char *name, int fd)
|
||||
cpp_warning (pfile, CPP_W_INVALID_PCH, "%s: not a PCH file", name);
|
||||
return 2;
|
||||
}
|
||||
- if (memcmp (ident + IDENT_LENGTH, executable_checksum, 16) != 0)
|
||||
+ const unsigned char *chksum = get_build_id ();
|
||||
+ if (!chksum)
|
||||
+ chksum = executable_checksum;
|
||||
+ if (memcmp (ident + IDENT_LENGTH, chksum, 16) != 0)
|
||||
{
|
||||
cpp_warning (pfile, CPP_W_INVALID_PCH,
|
||||
"%s: created by a different GCC executable", name);
|
||||
diff --git a/gcc/genchecksum.cc b/gcc/genchecksum.cc
|
||||
index 47280f5147b..bcfdcacf954 100644
|
||||
--- a/gcc/genchecksum.cc
|
||||
+++ b/gcc/genchecksum.cc
|
||||
@@ -113,8 +113,13 @@ main (int argc, char ** argv)
|
||||
puts ("#include \"config.h\"");
|
||||
puts ("#include \"system.h\"");
|
||||
fputs ("EXPORTED_CONST unsigned char executable_checksum[16] = { ", stdout);
|
||||
+#if _GNU_SOURCE
|
||||
+ for (i = 0; i < 16; i++)
|
||||
+ printf ("0x%02x%s", 0, i == 15 ? " };\n" : ", ");
|
||||
+#else
|
||||
for (i = 0; i < 16; i++)
|
||||
printf ("0x%02x%s", result[i], i == 15 ? " };\n" : ", ");
|
||||
+#endif
|
||||
|
||||
return 0;
|
||||
}
|
15
gcc9-reproducible-builds.patch
Normal file
15
gcc9-reproducible-builds.patch
Normal file
|
@ -0,0 +1,15 @@
|
|||
Avoid leaking current data on generated file for Ada.
|
||||
|
||||
Index: gcc/ada/gcc-interface/Makefile.in
|
||||
===================================================================
|
||||
--- gcc/ada/gcc-interface/Makefile.in (revision 268977)
|
||||
+++ gcc/ada/gcc-interface/Makefile.in (working copy)
|
||||
@@ -2407,6 +2407,7 @@ $(RTSDIR)/s-oscons.ads: ../stamp-gnatlib
|
||||
$(OSCONS_CPP) ; \
|
||||
$(OSCONS_EXTRACT) ; \
|
||||
../bldtools/oscons/xoscons s-oscons)
|
||||
+ touch -r $(fsrcpfx)ada/gsocket.h $@
|
||||
|
||||
gnatlib: ../stamp-gnatlib1-$(RTSDIR) ../stamp-gnatlib2-$(RTSDIR) $(RTSDIR)/s-oscons.ads
|
||||
test -f $(RTSDIR)/s-oscons.ads || exit 1
|
||||
|
57
gdcflags.patch
Normal file
57
gdcflags.patch
Normal file
|
@ -0,0 +1,57 @@
|
|||
From 1ed21e23d6d4da8201a09558b71d9a34281e54dd Mon Sep 17 00:00:00 2001
|
||||
From: Andreas Schwab <schwab@suse.de>
|
||||
Date: Sun, 16 Jul 2023 19:43:56 +0200
|
||||
Subject: [PATCH] Use substituted GDCFLAGS
|
||||
|
||||
Use the substituted value for GCDFLAGS instead of hardcoding $(CFLAGS) so
|
||||
that the subdir configure scripts use the configured value.
|
||||
|
||||
* configure.ac (GDCFLAGS): Set default from ${CFLAGS}.
|
||||
* configure: Regenerate.
|
||||
* Makefile.in (GDCFLAGS): Substitute @GDCFLAGS@.
|
||||
---
|
||||
Makefile.in | 2 +-
|
||||
configure | 1 +
|
||||
configure.ac | 1 +
|
||||
3 files changed, 3 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/Makefile.in b/Makefile.in
|
||||
index 04307ca561b..144bccd2603 100644
|
||||
--- a/Makefile.in
|
||||
+++ b/Makefile.in
|
||||
@@ -444,7 +444,7 @@ LIBCFLAGS = $(CFLAGS)
|
||||
CXXFLAGS = @CXXFLAGS@
|
||||
LIBCXXFLAGS = $(CXXFLAGS) -fno-implicit-templates
|
||||
GOCFLAGS = $(CFLAGS)
|
||||
-GDCFLAGS = $(CFLAGS)
|
||||
+GDCFLAGS = @GDCFLAGS@
|
||||
GM2FLAGS = $(CFLAGS)
|
||||
|
||||
# Pass additional PGO and LTO compiler options to the PGO build.
|
||||
diff --git a/configure b/configure
|
||||
index 0d3f5c6455d..3269da9829f 100755
|
||||
--- a/configure
|
||||
+++ b/configure
|
||||
@@ -12947,6 +12947,7 @@ fi
|
||||
|
||||
|
||||
|
||||
+GDCFLAGS=${GDCFLAGS-${CFLAGS}}
|
||||
|
||||
# Target tools.
|
||||
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index dddab2a56d8..d07a0fa7698 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -3662,6 +3662,7 @@ AC_SUBST(CFLAGS)
|
||||
AC_SUBST(CXXFLAGS)
|
||||
AC_SUBST(GDC)
|
||||
AC_SUBST(GDCFLAGS)
|
||||
+GDCFLAGS=${GDCFLAGS-${CFLAGS}}
|
||||
|
||||
# Target tools.
|
||||
AC_ARG_WITH([build-time-tools],
|
||||
--
|
||||
2.41.0
|
||||
|
119
pr111411.patch
Normal file
119
pr111411.patch
Normal file
|
@ -0,0 +1,119 @@
|
|||
From 74f99f1adc696f446115f36974a3f94f66294a53 Mon Sep 17 00:00:00 2001
|
||||
From: Richard Sandiford <richard.sandiford@arm.com>
|
||||
Date: Wed, 20 Sep 2023 11:13:20 +0100
|
||||
Subject: [PATCH] aarch64: Fix loose ldpstp check [PR111411]
|
||||
|
||||
aarch64_operands_ok_for_ldpstp contained the code:
|
||||
|
||||
/* One of the memory accesses must be a mempair operand.
|
||||
If it is not the first one, they need to be swapped by the
|
||||
peephole. */
|
||||
if (!aarch64_mem_pair_operand (mem_1, GET_MODE (mem_1))
|
||||
&& !aarch64_mem_pair_operand (mem_2, GET_MODE (mem_2)))
|
||||
return false;
|
||||
|
||||
But the requirement isn't just that one of the accesses must be a
|
||||
valid mempair operand. It's that the lower access must be, since
|
||||
that's the access that will be used for the instruction operand.
|
||||
|
||||
gcc/
|
||||
PR target/111411
|
||||
* config/aarch64/aarch64.cc (aarch64_operands_ok_for_ldpstp): Require
|
||||
the lower memory access to a mem-pair operand.
|
||||
|
||||
gcc/testsuite/
|
||||
PR target/111411
|
||||
* gcc.dg/rtl/aarch64/pr111411.c: New test.
|
||||
|
||||
(cherry picked from commit 2d38f45bcca62ca0c7afef4b579f82c5c2a01610)
|
||||
---
|
||||
gcc/config/aarch64/aarch64.cc | 8 ++-
|
||||
gcc/testsuite/gcc.dg/rtl/aarch64/pr111411.c | 57 +++++++++++++++++++++
|
||||
2 files changed, 60 insertions(+), 5 deletions(-)
|
||||
create mode 100644 gcc/testsuite/gcc.dg/rtl/aarch64/pr111411.c
|
||||
|
||||
diff --git a/gcc/config/aarch64/aarch64.cc b/gcc/config/aarch64/aarch64.cc
|
||||
index 96c3f48fdc4..a979accd90a 100644
|
||||
--- a/gcc/config/aarch64/aarch64.cc
|
||||
+++ b/gcc/config/aarch64/aarch64.cc
|
||||
@@ -26031,11 +26031,9 @@ aarch64_operands_ok_for_ldpstp (rtx *operands, bool load,
|
||||
gcc_assert (known_eq (GET_MODE_SIZE (GET_MODE (mem_1)),
|
||||
GET_MODE_SIZE (GET_MODE (mem_2))));
|
||||
|
||||
- /* One of the memory accesses must be a mempair operand.
|
||||
- If it is not the first one, they need to be swapped by the
|
||||
- peephole. */
|
||||
- if (!aarch64_mem_pair_operand (mem_1, GET_MODE (mem_1))
|
||||
- && !aarch64_mem_pair_operand (mem_2, GET_MODE (mem_2)))
|
||||
+ /* The lower memory access must be a mem-pair operand. */
|
||||
+ rtx lower_mem = reversed ? mem_2 : mem_1;
|
||||
+ if (!aarch64_mem_pair_operand (lower_mem, GET_MODE (lower_mem)))
|
||||
return false;
|
||||
|
||||
if (REG_P (reg_1) && FP_REGNUM_P (REGNO (reg_1)))
|
||||
diff --git a/gcc/testsuite/gcc.dg/rtl/aarch64/pr111411.c b/gcc/testsuite/gcc.dg/rtl/aarch64/pr111411.c
|
||||
new file mode 100644
|
||||
index 00000000000..ad07e9c6c89
|
||||
--- /dev/null
|
||||
+++ b/gcc/testsuite/gcc.dg/rtl/aarch64/pr111411.c
|
||||
@@ -0,0 +1,57 @@
|
||||
+/* { dg-do compile { target aarch64*-*-* } } */
|
||||
+/* { dg-require-effective-target lp64 } */
|
||||
+/* { dg-options "-O -fdisable-rtl-postreload -fpeephole2 -fno-schedule-fusion" } */
|
||||
+
|
||||
+extern int data[];
|
||||
+
|
||||
+void __RTL (startwith ("ira")) foo (void *ptr)
|
||||
+{
|
||||
+ (function "foo"
|
||||
+ (param "ptr"
|
||||
+ (DECL_RTL (reg/v:DI <0> [ ptr ]))
|
||||
+ (DECL_RTL_INCOMING (reg/v:DI x0 [ ptr ]))
|
||||
+ ) ;; param "ptr"
|
||||
+ (insn-chain
|
||||
+ (block 2
|
||||
+ (edge-from entry (flags "FALLTHRU"))
|
||||
+ (cnote 3 [bb 2] NOTE_INSN_BASIC_BLOCK)
|
||||
+ (insn 4 (set (reg:DI <0>) (reg:DI x0)))
|
||||
+ (insn 5 (set (reg:DI <1>)
|
||||
+ (plus:DI (reg:DI <0>) (const_int 768))))
|
||||
+ (insn 6 (set (mem:SI (plus:DI (reg:DI <0>)
|
||||
+ (const_int 508)) [1 &data+508 S4 A4])
|
||||
+ (const_int 0)))
|
||||
+ (insn 7 (set (mem:SI (plus:DI (reg:DI <1>)
|
||||
+ (const_int -256)) [1 &data+512 S4 A4])
|
||||
+ (const_int 0)))
|
||||
+ (edge-to exit (flags "FALLTHRU"))
|
||||
+ ) ;; block 2
|
||||
+ ) ;; insn-chain
|
||||
+ ) ;; function
|
||||
+}
|
||||
+
|
||||
+void __RTL (startwith ("ira")) bar (void *ptr)
|
||||
+{
|
||||
+ (function "bar"
|
||||
+ (param "ptr"
|
||||
+ (DECL_RTL (reg/v:DI <0> [ ptr ]))
|
||||
+ (DECL_RTL_INCOMING (reg/v:DI x0 [ ptr ]))
|
||||
+ ) ;; param "ptr"
|
||||
+ (insn-chain
|
||||
+ (block 2
|
||||
+ (edge-from entry (flags "FALLTHRU"))
|
||||
+ (cnote 3 [bb 2] NOTE_INSN_BASIC_BLOCK)
|
||||
+ (insn 4 (set (reg:DI <0>) (reg:DI x0)))
|
||||
+ (insn 5 (set (reg:DI <1>)
|
||||
+ (plus:DI (reg:DI <0>) (const_int 768))))
|
||||
+ (insn 6 (set (mem:SI (plus:DI (reg:DI <1>)
|
||||
+ (const_int -256)) [1 &data+512 S4 A4])
|
||||
+ (const_int 0)))
|
||||
+ (insn 7 (set (mem:SI (plus:DI (reg:DI <0>)
|
||||
+ (const_int 508)) [1 &data+508 S4 A4])
|
||||
+ (const_int 0)))
|
||||
+ (edge-to exit (flags "FALLTHRU"))
|
||||
+ ) ;; block 2
|
||||
+ ) ;; insn-chain
|
||||
+ ) ;; function
|
||||
+}
|
||||
--
|
||||
2.39.3
|
||||
|
20
tls-no-direct.diff
Normal file
20
tls-no-direct.diff
Normal file
|
@ -0,0 +1,20 @@
|
|||
For i?86 negative offsets to %fs segment accesses cause a hypervisor
|
||||
trap for Xen. Avoid this by making accesses indirect.
|
||||
|
||||
??? Note that similar to the behavior on SLE11 this only affects
|
||||
the compiler built on %ix86, not that on x86_64, even with -m32.
|
||||
|
||||
Index: gcc/config/i386/linux.h
|
||||
===================================================================
|
||||
--- gcc/config/i386/linux.h.orig 2015-12-17 15:07:37.785650062 +0100
|
||||
+++ gcc/config/i386/linux.h 2015-12-17 15:08:06.393983290 +0100
|
||||
@@ -24,3 +24,9 @@ along with GCC; see the file COPYING3.
|
||||
|
||||
#undef MUSL_DYNAMIC_LINKER
|
||||
#define MUSL_DYNAMIC_LINKER "/lib/ld-musl-i386.so.1"
|
||||
+
|
||||
+/* This slows down Xen, so take a very small general performance hit
|
||||
+ for not accessing the %fs segment with negative offsets by making
|
||||
+ GCC not emit direct accesses to %fs at all. */
|
||||
+#undef TARGET_TLS_DIRECT_SEG_REFS_DEFAULT
|
||||
+#define TARGET_TLS_DIRECT_SEG_REFS_DEFAULT 0
|
Loading…
Add table
Reference in a new issue