gcc6: initial import
This commit is contained in:
parent
ae0967749a
commit
fd8a6be9f6
1430
gcc6/.footprint
Normal file
1430
gcc6/.footprint
Normal file
File diff suppressed because it is too large
Load Diff
4
gcc6/.md5sum
Normal file
4
gcc6/.md5sum
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
61a057afa31006764b957a483ba90b9d gcc-4.7.3-multilib-dirs.patch
|
||||||
|
edaeff1cc020b16a0c19a6d5e80dc2fd gcc-6.5.0.tar.xz
|
||||||
|
7c9128522053af79791bcfdd55834c2a gcc-nocheck-fixincludes.patch
|
||||||
|
b685d5d712adc38129cbe4fd426ed703 libsanitizer.patch
|
65
gcc6/Pkgfile
Normal file
65
gcc6/Pkgfile
Normal file
@ -0,0 +1,65 @@
|
|||||||
|
# Description: The GNU Compiler Collection, Version 6
|
||||||
|
# URL: http://gcc.gnu.org
|
||||||
|
# Maintainer: John Vogel, jvogel4 at stny dot rr dot com
|
||||||
|
# Depends on: zlib libmpc
|
||||||
|
|
||||||
|
name=gcc6
|
||||||
|
version=6.5.0
|
||||||
|
release=1
|
||||||
|
source=(https://gcc.gnu.org/pub/gcc/releases/gcc-$version/gcc-$version.tar.xz
|
||||||
|
gcc-nocheck-fixincludes.patch gcc-4.7.3-multilib-dirs.patch
|
||||||
|
libsanitizer.patch)
|
||||||
|
|
||||||
|
build() {
|
||||||
|
patch -d gcc-$version -p1 -i $SRC/gcc-nocheck-fixincludes.patch
|
||||||
|
patch -d gcc-$version -p1 -i $SRC/gcc-4.7.3-multilib-dirs.patch
|
||||||
|
patch -d gcc-$version -p2 -i $SRC/libsanitizer.patch
|
||||||
|
|
||||||
|
# Do not run fixincludes
|
||||||
|
#sed -i 's@\./fixinc\.sh@-c true@' gcc-$version/gcc/Makefile.in
|
||||||
|
|
||||||
|
#export LD_PRELOAD=/usr/lib/libstdc++.so
|
||||||
|
|
||||||
|
export CFLAGS="-O2 -march=x86-64"
|
||||||
|
export CXXFLAGS="${CFLAGS}"
|
||||||
|
|
||||||
|
mkdir build
|
||||||
|
cd build
|
||||||
|
../gcc-$version/configure \
|
||||||
|
--prefix=/usr \
|
||||||
|
--libexecdir=/usr/lib \
|
||||||
|
--enable-bootstrap \
|
||||||
|
--enable-version-specific-runtime-libs \
|
||||||
|
--enable-languages=c,c++,objc \
|
||||||
|
--enable-threads=posix \
|
||||||
|
--enable-__cxa_atexit \
|
||||||
|
--enable-clocale=gnu \
|
||||||
|
--enable-shared \
|
||||||
|
--disable-nls \
|
||||||
|
--with-x=no \
|
||||||
|
--with-system-zlib \
|
||||||
|
--disable-multilib \
|
||||||
|
--enable-default-pie \
|
||||||
|
--enable-default-ssp \
|
||||||
|
--with-pkgversion="CRUX-x86_64" \
|
||||||
|
--program-suffix="-${version%%.*}"
|
||||||
|
|
||||||
|
make bootstrap
|
||||||
|
make -j1 DESTDIR=$PKG install
|
||||||
|
|
||||||
|
|
||||||
|
target_alias=$(sed -n -e 's/^target=\(.*\)$/\1/p' Makefile)
|
||||||
|
mv $PKG/usr/lib/libcc1.* $PKG/usr/lib/gcc/$target_alias/$version
|
||||||
|
mv $PKG/usr/lib/gcc/$target_alias/$version/include-fixed/{limits.h,syslimits.h} \
|
||||||
|
$PKG/usr/lib/gcc/$target_alias/$version/include/
|
||||||
|
mv $PKG/usr/lib/gcc/$target_alias/lib/libgcc_s.so* \
|
||||||
|
$PKG/usr/lib/gcc/$target_alias/$version/
|
||||||
|
rm -r $PKG/usr/lib/gcc/$target_alias/lib
|
||||||
|
rm -r $PKG/usr/share/{info,gcc-$version}
|
||||||
|
rm -r $PKG/usr/bin/$target_alias-*
|
||||||
|
rm -r $PKG/usr/lib/gcc/$target_alias/$version/{install-tools,include-fixed}
|
||||||
|
rm -r $PKG/usr/share/man/man7
|
||||||
|
|
||||||
|
sed -i "s|-L$SRC[^ ]* ||g" \
|
||||||
|
$PKG/usr/lib/gcc/x86_64-pc-linux-gnu/$version/{libstdc++.la,libsupc++.la}
|
||||||
|
}
|
23
gcc6/gcc-4.7.3-multilib-dirs.patch
Normal file
23
gcc6/gcc-4.7.3-multilib-dirs.patch
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
diff -Nru gcc-4.7.3.orig/gcc/config/i386/linux64.h gcc-4.7.3/gcc/config/i386/linux64.h
|
||||||
|
--- gcc-4.7.3.orig/gcc/config/i386/linux64.h 2013-04-13 18:33:41.015109554 +0200
|
||||||
|
+++ gcc-4.7.3/gcc/config/i386/linux64.h 2013-04-13 18:34:01.147713013 +0200
|
||||||
|
@@ -28,6 +28,6 @@
|
||||||
|
#define GNU_USER_LINK_EMULATION64 "elf_x86_64"
|
||||||
|
#define GNU_USER_LINK_EMULATIONX32 "elf32_x86_64"
|
||||||
|
|
||||||
|
-#define GLIBC_DYNAMIC_LINKER32 "/lib/ld-linux.so.2"
|
||||||
|
-#define GLIBC_DYNAMIC_LINKER64 "/lib64/ld-linux-x86-64.so.2"
|
||||||
|
+#define GLIBC_DYNAMIC_LINKER32 "/lib32/ld-linux.so.2"
|
||||||
|
+#define GLIBC_DYNAMIC_LINKER64 "/lib/ld-linux-x86-64.so.2"
|
||||||
|
#define GLIBC_DYNAMIC_LINKERX32 "/libx32/ld-linux-x32.so.2"
|
||||||
|
diff -Nru gcc-4.7.3.orig/gcc/config/i386/t-linux64 gcc-4.7.3/gcc/config/i386/t-linux64
|
||||||
|
--- gcc-4.7.3.orig/gcc/config/i386/t-linux64 2013-04-13 18:33:41.015109554 +0200
|
||||||
|
+++ gcc-4.7.3/gcc/config/i386/t-linux64 2013-04-13 18:39:13.269752565 +0200
|
||||||
|
@@ -34,6 +34,6 @@
|
||||||
|
comma=,
|
||||||
|
MULTILIB_OPTIONS = $(subst $(comma),/,$(TM_MULTILIB_CONFIG))
|
||||||
|
MULTILIB_DIRNAMES = $(patsubst m%, %, $(subst /, ,$(MULTILIB_OPTIONS)))
|
||||||
|
-MULTILIB_OSDIRNAMES = m64=../lib64$(call if_multiarch,:x86_64-linux-gnu)
|
||||||
|
+MULTILIB_OSDIRNAMES = m64=../lib$(call if_multiarch,:x86_64-linux-gnu)
|
||||||
|
MULTILIB_OSDIRNAMES+= m32=$(if $(wildcard $(shell echo $(SYSTEM_HEADER_DIR))/../../usr/lib32),../lib32,../lib)$(call if_multiarch,:i386-linux-gnu)
|
||||||
|
MULTILIB_OSDIRNAMES+= mx32=../libx32$(call if_multiarch,:x86_64-linux-gnux32)
|
14
gcc6/gcc-nocheck-fixincludes.patch
Normal file
14
gcc6/gcc-nocheck-fixincludes.patch
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
diff -Nru gcc-4.7.3.orig/fixincludes/Makefile.in gcc-4.7.3/fixincludes/Makefile.in
|
||||||
|
--- gcc-4.7.3.orig/fixincludes/Makefile.in 2013-04-13 18:33:41.098439867 +0200
|
||||||
|
+++ gcc-4.7.3/fixincludes/Makefile.in 2013-04-13 18:41:29.354868695 +0200
|
||||||
|
@@ -173,9 +173,7 @@
|
||||||
|
cd $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS)
|
||||||
|
|
||||||
|
check : all
|
||||||
|
- autogen -T $(srcdir)/check.tpl $(srcdir)/inclhack.def
|
||||||
|
- $(SHELL) ./check.sh $(srcdir)/tests/base
|
||||||
|
- @rm -f ./check.sh
|
||||||
|
+ echo "No check here.."
|
||||||
|
|
||||||
|
install : all
|
||||||
|
-rm -rf $(DESTDIR)$(itoolsdir)
|
63
gcc6/libsanitizer.patch
Normal file
63
gcc6/libsanitizer.patch
Normal file
@ -0,0 +1,63 @@
|
|||||||
|
diff -aur src.pristine/gcc-6.5.0/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cc src.new/gcc-6.5.0/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cc
|
||||||
|
--- src.pristine/gcc-6.5.0/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cc 2020-02-26 21:58:22.465728543 -0500
|
||||||
|
+++ src.new/gcc-6.5.0/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cc 2020-02-26 22:17:14.997803617 -0500
|
||||||
|
@@ -1130,8 +1130,9 @@
|
||||||
|
#ifndef __GLIBC_PREREQ
|
||||||
|
#define __GLIBC_PREREQ(x, y) 0
|
||||||
|
#endif
|
||||||
|
-#if !defined(__aarch64__) || !SANITIZER_LINUX || __GLIBC_PREREQ (2, 21)
|
||||||
|
-/* On aarch64 glibc 2.20 and earlier provided incorrect mode field. */
|
||||||
|
+//#if !defined(__aarch64__) || !SANITIZER_LINUX || __GLIBC_PREREQ (2, 21)
|
||||||
|
+///* On aarch64 glibc 2.20 and earlier provided incorrect mode field. */
|
||||||
|
+#if !SANITIZER_LINUX || __GLIBC_PREREQ (2, 31)
|
||||||
|
CHECK_SIZE_AND_OFFSET(ipc_perm, mode);
|
||||||
|
#endif
|
||||||
|
|
||||||
|
diff -aur src.pristine/gcc-6.5.0/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.h src.new/gcc-6.5.0/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.h
|
||||||
|
--- src.pristine/gcc-6.5.0/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.h 2020-02-26 21:58:22.459061884 -0500
|
||||||
|
+++ src.new/gcc-6.5.0/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.h 2020-02-26 22:16:16.651201784 -0500
|
||||||
|
@@ -200,27 +200,28 @@
|
||||||
|
unsigned __seq;
|
||||||
|
u64 __unused1;
|
||||||
|
u64 __unused2;
|
||||||
|
-#elif defined(__mips__) || defined(__aarch64__)
|
||||||
|
- unsigned int mode;
|
||||||
|
- unsigned short __seq;
|
||||||
|
- unsigned short __pad1;
|
||||||
|
- unsigned long __unused1;
|
||||||
|
- unsigned long __unused2;
|
||||||
|
+ //#elif defined(__mips__) || defined(__aarch64__)
|
||||||
|
+ // unsigned int mode;
|
||||||
|
+ //unsigned short __seq;
|
||||||
|
+ //unsigned short __pad1;
|
||||||
|
+ //unsigned long __unused1;
|
||||||
|
+ //unsigned long __unused2;
|
||||||
|
#elif defined(__sparc__)
|
||||||
|
-# if defined(__arch64__)
|
||||||
|
+ //# if defined(__arch64__)
|
||||||
|
unsigned mode;
|
||||||
|
- unsigned short __pad1;
|
||||||
|
-# else
|
||||||
|
- unsigned short __pad1;
|
||||||
|
- unsigned short mode;
|
||||||
|
- unsigned short __pad2;
|
||||||
|
-# endif
|
||||||
|
+ //unsigned short __pad1;
|
||||||
|
+ //# else
|
||||||
|
+ //unsigned short __pad1;
|
||||||
|
+ //unsigned short mode;
|
||||||
|
+ unsigned short __pad2;
|
||||||
|
+ //# endif
|
||||||
|
unsigned short __seq;
|
||||||
|
unsigned long long __unused1;
|
||||||
|
unsigned long long __unused2;
|
||||||
|
#else
|
||||||
|
- unsigned short mode;
|
||||||
|
- unsigned short __pad1;
|
||||||
|
+ //unsigned short mode;
|
||||||
|
+ //unsigned short __pad1;
|
||||||
|
+ unsigned int mode;
|
||||||
|
unsigned short __seq;
|
||||||
|
unsigned short __pad2;
|
||||||
|
#if defined(__x86_64__) && !defined(_LP64)
|
||||||
|
Only in src.new/gcc-6.5.0/libsanitizer/sanitizer_common: sanitizer_platform_limits_posix.h~
|
Loading…
Reference in New Issue
Block a user