[packages/crossarm-gcc] cleanups and alignment with gcc.spec; rel 2
atler
atler at pld-linux.org
Sat Nov 6 23:56:26 CET 2021
commit 0c70515586758312ab66a1a77ea4226fc0e58aa0
Author: Jan Palus <atler at pld-linux.org>
Date: Sat Nov 6 23:44:49 2021 +0100
cleanups and alignment with gcc.spec; rel 2
crossarm-embedded-uclibc.config | 142 ----------------------------------------
crossarm-gcc.spec | 82 ++++++++++-------------
crossarm-lpc210x-crt0.s | 85 ------------------------
3 files changed, 33 insertions(+), 276 deletions(-)
---
diff --git a/crossarm-gcc.spec b/crossarm-gcc.spec
index a9976be..8880435 100644
--- a/crossarm-gcc.spec
+++ b/crossarm-gcc.spec
@@ -2,10 +2,7 @@
# MUST SEE:
# - GCC ARM Improvement Project - http://www.inf.u-szeged.hu/gcc-arm/
# - Developing StrongARM shellocde - http://phrack.org/show.php?p=58&a=10
-#
-# Conditional build:
-%bcond_without gnueabi # build without Embedded ABI support
-#
+
Summary: Cross ARM GNU binary utility development utilities - gcc
Summary(es.UTF-8): Utilitarios para desarrollo de binarios de la GNU - ARM gcc
Summary(fr.UTF-8): Utilitaires de développement binaire de GNU - ARM gcc
@@ -14,44 +11,40 @@ Summary(pt_BR.UTF-8): Utilitários para desenvolvimento de binários da GNU - AR
Summary(tr.UTF-8): GNU geliştirme araçları - ARM gcc
Name: crossarm-gcc
Version: 11.2.0
-Release: 1%{?with_gnueabi:gnueabi}
+Release: 2
Epoch: 1
License: GPL
Group: Development/Languages
Source0: https://gcc.gnu.org/pub/gcc/releases/gcc-%{version}/gcc-%{version}.tar.xz
# Source0-md5: 31c86f2ced76acac66992eeedce2fce2
-%define _llh_ver 2.6.12.0
-Source1: http://ep09.pld-linux.org/~mmazur/linux-libc-headers/linux-libc-headers-%{_llh_ver}.tar.bz2
-# Source1-md5: eae2f562afe224ad50f65a6acfb4252c
-%define _uclibc_ver 0.9.27
-Source2: http://uclibc.org/downloads/uClibc-%{_uclibc_ver}.tar.bz2
-# Source2-md5: 6250bd6524283bd8e7bc976d43a46ec0
-Source3: crossarm-embedded-uclibc.config
-Source4: crossarm-lpc210x-crt0.s
URL: http://gcc.gnu.org/
-BuildRequires: autoconf
-BuildRequires: automake
+BuildRequires: autoconf >= 2.64
+BuildRequires: automake >= 1:1.11.1
BuildRequires: bison
-BuildRequires: crossarm-binutils%{?with_gnueabi:(gnueabi)}
-BuildRequires: flex
+BuildRequires: crossarm-binutils >= 2.30
+BuildRequires: flex >= 2.5.4
BuildRequires: gmp-devel >= 4.3.2
-BuildRequires: kernel-module-build
+BuildRequires: isl-devel >= 0.15
BuildRequires: libmpc-devel >= 0.8.1
BuildRequires: mpfr-devel >= 3.1.0
-Requires: crossarm-binutils%{?with_gnueabi:(gnueabi)}
+BuildRequires: tar >= 1:1.22
+BuildRequires: xz
+BuildRequires: zlib-devel
+BuildRequires: zstd-devel
+Requires: crossarm-binutils >= 2.30
Requires: gcc-dirs
Requires: gmp >= 4.3.2
+Requires: isl >= 0.15
Requires: libmpc >= 0.8.1
Requires: mpfr >= 3.1.0
-ExcludeArch: arm
+ExcludeArch: %{arm}
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
-%define target arm-linux%{?with_gnueabi:-gnueabi}
+%define target arm-linux-gnueabi
%define arch %{_prefix}/%{target}
%define gccarch %{_libdir}/gcc/%{target}
%define gcclib %{gccarch}/%{version}
-
-%define _noautostrip .*/libgc.*\\.a
+%define filterout -Werror=format-security
%description
This package contains a cross-gcc which allows the creation of
@@ -78,26 +71,15 @@ This package adds C++ support to the GNU Compiler Collection for ARM.
Ten pakiet dodaje obsługę C++ do kompilatora gcc dla ARM.
%prep
-%setup -q -n gcc-%{version} -a1 -a2
+%setup -q -n gcc-%{version}
%build
-FAKE_ROOT=$PWD/fake-root
-rm -rf $FAKE_ROOT
-
-install -d $FAKE_ROOT%{_prefix}
-cp -r uClibc-%{_uclibc_ver}/* $FAKE_ROOT%{_prefix}
-cd $FAKE_ROOT%{_prefix}
-install %{SOURCE3} .config
-%{__make} headers
-cd -
-
-cp -f /usr/share/automake/config.* .
rm -rf obj-%{target}
install -d obj-%{target}
cd obj-%{target}
-XCFLAGS="%{rpmcflags}" \
-XCXXFLAGS="%{rpmcxxflags}" \
+CFLAGS="%{rpmcflags}" \
+CXXFLAGS="%{rpmcxxflags}" \
TEXCONFIG=false \
../configure \
--prefix=%{_prefix} \
@@ -117,19 +99,19 @@ TEXCONFIG=false \
--with-demangler-in-ld \
--with-system-zlib \
--enable-multilib \
- --with-sysroot=$FAKE_ROOT \
--without-x \
--target=%{target} \
--host=%{_target_platform} \
--build=%{_target_platform}
%{__make} all-gcc
+%{__make} all-target-libgcc
%install
rm -rf $RPM_BUILD_ROOT
install -d $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
-%{__make} -C obj-%{target} install-gcc \
+%{__make} -C obj-%{target} install-gcc install-target-libgcc \
DESTDIR=$RPM_BUILD_ROOT
install obj-%{target}/gcc/specs $RPM_BUILD_ROOT%{gcclib}
@@ -140,20 +122,11 @@ rm -f $RPM_BUILD_ROOT%{_libdir}/libiberty.a
# include/ contains install-tools/include/* and headers that were fixed up
# by fixincludes, we don't want former
gccdir=$(echo $RPM_BUILD_ROOT%{_libdir}/gcc/*/*/)
-mkdir $gccdir/tmp
-# we have to save these however
-#{?with_java:mv -f $gccdir/include/{gcj,libffi/ffitarget.h} $gccdir/tmp}
-mv -f $gccdir/include-fixed/syslimits.h $gccdir/tmp
-rm -rf $gccdir/include
-mv -f $gccdir/tmp $gccdir/include
+cp -p $gccdir/include-fixed/syslimits.h $gccdir/include
cp -f $gccdir/install-tools/include/*.h $gccdir/include
# but we don't want anything more from install-tools
rm -rf $gccdir/install-tools
-# custom startup file(s)
-install %{SOURCE4} $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
-%{target}-as -mcpu=arm7tdmi %{SOURCE4} -o $RPM_BUILD_ROOT%{gcclib}/lpc210x-crt0.o
-
%clean
rm -rf $RPM_BUILD_ROOT
@@ -162,7 +135,13 @@ rm -rf $RPM_BUILD_ROOT
%attr(755,root,root) %{_bindir}/%{target}-cpp
%attr(755,root,root) %{_bindir}/%{target}-gcc
%attr(755,root,root) %{_bindir}/%{target}-gcc-%{version}
+%attr(755,root,root) %{_bindir}/%{target}-gcc-ar
+%attr(755,root,root) %{_bindir}/%{target}-gcc-nm
+%attr(755,root,root) %{_bindir}/%{target}-gcc-ranlib
%attr(755,root,root) %{_bindir}/%{target}-gcov
+%attr(755,root,root) %{_bindir}/%{target}-gcov-dump
+%attr(755,root,root) %{_bindir}/%{target}-gcov-tool
+%attr(755,root,root) %{_bindir}/%{target}-lto-dump
%dir %{gccarch}
%dir %{gcclib}
%attr(755,root,root) %{gcclib}/cc1
@@ -171,12 +150,17 @@ rm -rf $RPM_BUILD_ROOT
%attr(755,root,root) %{gcclib}/lto1
%attr(755,root,root) %{gcclib}/liblto_plugin.so*
%{gcclib}/*crt*.o
+%{gcclib}/libgcc.a
+%{gcclib}/libgcov.a
%{gcclib}/specs*
%dir %{gcclib}/include
%{gcclib}/include/*.h
%{_mandir}/man1/%{target}-cpp.1*
%{_mandir}/man1/%{target}-gcc.1*
%{_mandir}/man1/%{target}-gcov.1*
+%{_mandir}/man1/%{target}-gcov-dump.1*
+%{_mandir}/man1/%{target}-gcov-tool.1*
+%{_mandir}/man1/%{target}-lto-dump.1*
%{_examplesdir}/%{name}-%{version}
%files c++
diff --git a/crossarm-embedded-uclibc.config b/crossarm-embedded-uclibc.config
deleted file mode 100644
index be2530c..0000000
--- a/crossarm-embedded-uclibc.config
+++ /dev/null
@@ -1,142 +0,0 @@
-#
-# Automatically generated make config: don't edit
-#
-# TARGET_alpha is not set
-TARGET_arm=y
-# TARGET_bfin is not set
-# TARGET_cris is not set
-# TARGET_e1 is not set
-# TARGET_frv is not set
-# TARGET_h8300 is not set
-# TARGET_i386 is not set
-# TARGET_i960 is not set
-# TARGET_m68k is not set
-# TARGET_microblaze is not set
-# TARGET_mips is not set
-# TARGET_nios is not set
-# TARGET_nios2 is not set
-# TARGET_powerpc is not set
-# TARGET_sh is not set
-# TARGET_sparc is not set
-# TARGET_v850 is not set
-
-#
-# Target Architecture Features and Options
-#
-HAVE_ELF=y
-ARCH_SUPPORTS_LITTLE_ENDIAN=y
-TARGET_ARCH="arm"
-ARCH_SUPPORTS_BIG_ENDIAN=y
-CONFIG_GENERIC_ARM=y
-# CONFIG_ARM610 is not set
-# CONFIG_ARM710 is not set
-# CONFIG_ARM720T is not set
-# CONFIG_ARM920T is not set
-# CONFIG_ARM922T is not set
-# CONFIG_ARM926T is not set
-# CONFIG_ARM_SA110 is not set
-# CONFIG_ARM_SA1100 is not set
-# CONFIG_ARM_XSCALE is not set
-ARCH_LITTLE_ENDIAN=y
-# ARCH_BIG_ENDIAN is not set
-# ARCH_HAS_NO_MMU is not set
-# ARCH_HAS_MMU is not set
-# UCLIBC_HAS_FLOATS is not set
-WARNINGS="-Wall"
-KERNEL_SOURCE="/usr/src/linux"
-UCLIBC_UCLINUX_BROKEN_MUNMAP=y
-EXCLUDE_BRK=y
-C_SYMBOL_PREFIX=""
-HAVE_DOT_CONFIG=y
-
-#
-# General Library Settings
-#
-# HAVE_NO_PIC is not set
-# DOPIC is not set
-# HAVE_NO_SHARED is not set
-# ARCH_HAS_NO_LDSO is not set
-UCLIBC_CTOR_DTOR=y
-# HAS_NO_THREADS is not set
-# UCLIBC_HAS_THREADS is not set
-# UCLIBC_HAS_LFS is not set
-MALLOC=y
-# MALLOC_SIMPLE is not set
-# MALLOC_STANDARD is not set
-# MALLOC_GLIBC_COMPAT is not set
-UCLIBC_DYNAMIC_ATEXIT=y
-# HAS_SHADOW is not set
-# UNIX98PTY_ONLY is not set
-# ASSUME_DEVPTS is not set
-# UCLIBC_HAS_TM_EXTENSIONS is not set
-# UCLIBC_HAS_TZ_CACHING is not set
-# UCLIBC_HAS_TZ_FILE is not set
-
-#
-# Networking Support
-#
-# UCLIBC_HAS_IPV6 is not set
-# UCLIBC_HAS_RPC is not set
-
-#
-# String and Stdio Support
-#
-# UCLIBC_HAS_STRING_GENERIC_OPT is not set
-UCLIBC_HAS_STRING_ARCH_OPT=y
-UCLIBC_HAS_CTYPE_TABLES=y
-UCLIBC_HAS_CTYPE_SIGNED=y
-UCLIBC_HAS_CTYPE_UNSAFE=y
-# UCLIBC_HAS_CTYPE_CHECKED is not set
-# UCLIBC_HAS_CTYPE_ENFORCED is not set
-# UCLIBC_HAS_WCHAR is not set
-# UCLIBC_HAS_LOCALE is not set
-# UCLIBC_HAS_GLIBC_CUSTOM_PRINTF is not set
-# USE_OLD_VFPRINTF is not set
-UCLIBC_PRINTF_SCANF_POSITIONAL_ARGS=9
-# UCLIBC_HAS_SCANF_GLIBC_A_FLAG is not set
-# UCLIBC_HAS_STDIO_BUFSIZ_NONE is not set
-UCLIBC_HAS_STDIO_BUFSIZ_256=y
-# UCLIBC_HAS_STDIO_BUFSIZ_512 is not set
-# UCLIBC_HAS_STDIO_BUFSIZ_1024 is not set
-# UCLIBC_HAS_STDIO_BUFSIZ_2048 is not set
-# UCLIBC_HAS_STDIO_BUFSIZ_4096 is not set
-# UCLIBC_HAS_STDIO_BUFSIZ_8192 is not set
-UCLIBC_HAS_STDIO_BUILTIN_BUFFER_NONE=y
-# UCLIBC_HAS_STDIO_BUILTIN_BUFFER_4 is not set
-# UCLIBC_HAS_STDIO_BUILTIN_BUFFER_8 is not set
-UCLIBC_HAS_STDIO_GETC_MACRO=y
-UCLIBC_HAS_STDIO_PUTC_MACRO=y
-UCLIBC_HAS_STDIO_AUTO_RW_TRANSITION=y
-# UCLIBC_HAS_FOPEN_EXCLUSIVE_MODE is not set
-# UCLIBC_HAS_GLIBC_CUSTOM_STREAMS is not set
-# UCLIBC_HAS_PRINTF_M_SPEC is not set
-# UCLIBC_HAS_ERRNO_MESSAGES is not set
-# UCLIBC_HAS_SIGNUM_MESSAGES is not set
-# UCLIBC_HAS_GNU_GETOPT is not set
-
-#
-# Big and Tall
-#
-# UCLIBC_HAS_REGEX is not set
-# UCLIBC_HAS_WORDEXP is not set
-# UCLIBC_HAS_FTW is not set
-# UCLIBC_HAS_GLOB is not set
-
-#
-# Library Installation Options
-#
-RUNTIME_PREFIX="/usr/$(TARGET_ARCH)-linux-eabi-uclibc/"
-DEVEL_PREFIX="/usr/$(TARGET_ARCH)-linux-eabi-uclibc/usr/"
-
-#
-# uClibc security related options
-#
-# UCLIBC_SECURITY is not set
-
-#
-# uClibc development/debugging options
-#
-# DODEBUG is not set
-# DOASSERTS is not set
-# UCLIBC_MALLOC_DEBUGGING is not set
-# UCLIBC_MJN3_ONLY is not set
diff --git a/crossarm-lpc210x-crt0.s b/crossarm-lpc210x-crt0.s
deleted file mode 100644
index 0453ea4..0000000
--- a/crossarm-lpc210x-crt0.s
+++ /dev/null
@@ -1,85 +0,0 @@
-
- .set SYSTEM_MODE, 0x1F
- .set UNDEFINED_MODE, 0x1B
- .set ABORT_MODE, 0x17
- .set SUPERVISOR_MODE, 0x13
- .set IRQ_MODE, 0x12
- .set FIQ_MODE, 0x11
- .set USER_MODE, 0x10
-
- .text
- .arm
- .org 0
- .align 0
-
-# exception vectors
-
- b reset_handler
- ldr pc, undefined_instruction_handler_addr
- ldr pc, software_interrupt_handler_addr
- ldr pc, prefetch_abort_handler_addr
- ldr pc, data_abort_handler_addr
- ldr pc, endless_loop /* ARM-reserved vector */
- ldr pc, irq_handler_addr
- ldr pc, fiq_handler_addr
-
-undefined_instruction_handler_addr: .long undefined_instruction_handler
-software_interrupt_handler_addr: .long software_interrupt_handler
-prefetch_abort_handler_addr: .long prefetch_abort_handler
-data_abort_handler_addr: .long data_abort_handler
-irq_handler_addr: .long irq_handler
-fiq_handler_addr: .long fiq_handler
-
-.global reset_handler
-reset_handler:
-
- msr cpsr_c, #UNDEFINED_MODE
- ldr sp, =__UNDEFINED_SP__
- msr cpsr_c, #ABORT_MODE
- ldr sp, =__ABORT_SP__
- msr cpsr_c, #IRQ_MODE
- ldr sp, =__IRQ_SP__
- msr cpsr_c, #FIQ_MODE
- ldr sp, =__FIQ_SP__
- msr cpsr_c, #SUPERVISOR_MODE
- ldr sp, =__SUPERVISOR_SP__
-
-# setup a default stack limit (when compiled with "-mapcs-stack-check").
-# sub sl, sp, #__USER_STACK_SIZE__
-
-# relocate .data(rw) section (copy from FLASH to RAM).
-
- ldr r1, =__text_end__
- ldr r2, =__data_start__
- ldr r3, =__data_end__
-
-reset_handler_L01:
-
- cmp r2, r3
- ldrlo r0, [r1], #4
- strlo r0, [r2], #4
- blo reset_handler_L01
-
-# clear .bss(rw) section.
-
- mov r0, #0
- ldr r1, =__bss_start__
- ldr r2, =__bss_end__
-
-reset_handler_L02:
-
- cmp r1, r2
- strlo r0, [r1], #4
- blo reset_handler_L02
-
-# set up arguments to main() and call.
-
- mov r0, #0
- mov r1, #0
- bl main
-
-.global endless_loop
-endless_loop:
- b endless_loop
-
- .end
================================================================
---- gitweb:
http://git.pld-linux.org/gitweb.cgi/packages/crossarm-gcc.git/commitdiff/0c70515586758312ab66a1a77ea4226fc0e58aa0
More information about the pld-cvs-commit
mailing list