[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