Resolves:rh#738256:- redhat-lsb fails to build on ARM

This commit is contained in:
Parag Nemade 2011-11-30 15:33:27 +05:30
parent d34d5bf415
commit 8992e4db52
2 changed files with 36 additions and 11 deletions

View File

@ -1,6 +1,6 @@
--- redhat_lsb_trigger.c.jj 2008-04-16 19:50:14.000000000 +0200 --- redhat_lsb_trigger.c.triggerfix 2008-04-16 18:50:14.000000000 +0100
+++ redhat_lsb_trigger.c 2009-10-26 19:51:12.886058784 +0100 +++ redhat_lsb_trigger.c 2011-09-14 11:50:42.563080000 +0100
@@ -423,10 +423,76 @@ is_ia64 (void) @@ -423,10 +423,76 @@
#define is_ia64() 0 #define is_ia64() 0
#endif #endif
@ -79,10 +79,18 @@
INTERNAL_SYSCALL_DECL (err); INTERNAL_SYSCALL_DECL (err);
char lsbsover[] = LSBSOVER; char lsbsover[] = LSBSOVER;
char *LSBVER, *p = lsbsover; char *LSBVER, *p = lsbsover;
@@ -455,11 +521,18 @@ void __libc_csu_fini (void) { } @@ -450,15 +516,38 @@
int __libc_multiple_threads __attribute__((nocommon));
int __libc_enable_asynccancel (void) { return 0; }
void __libc_disable_asynccancel (int x) { }
+#ifndef __arm__
void __libc_csu_init (void) { }
void __libc_csu_fini (void) { }
+#endif
pid_t __fork (void) { return -1; } pid_t __fork (void) { return -1; }
char thr_buf[65536]; char thr_buf[65536];
-#ifndef __powerpc__
+void +void
+__attribute__ ((noreturn)) +__attribute__ ((noreturn))
+__stack_chk_fail (void) +__stack_chk_fail (void)
@ -92,16 +100,28 @@
+ INTERNAL_SYSCALL (exit, err, 1, 1); + INTERNAL_SYSCALL (exit, err, 1, 1);
+} +}
+ +
#ifndef __powerpc__ +#if defined __powerpc__
+
+struct startup_info
+{
+ void *sda_base;
+ int (*main) (int, char **, char **, void *);
+ int (*init) (int, char **, char **, void *);
+ void (*fini) (void);
+};
+
+int __libc_start_main (int argc, char **argv, char **ev,
+ void *auxvec, void (*rtld_fini) (void),
+ struct startup_info *stinfo,
+ char **stack_on_entry)
+#elif defined __arm__
-/* /usr/lib/gcc/ppc64-redhat-linux/4.1.2/../../../../lib64/libc.a(libc-start.o): In function `__libc_start_main': -/* /usr/lib/gcc/ppc64-redhat-linux/4.1.2/../../../../lib64/libc.a(libc-start.o): In function `__libc_start_main':
- * * (.opd+0x10): multiple definition of `__libc_start_main' */ - * * (.opd+0x10): multiple definition of `__libc_start_main' */
-int ___libc_start_main (int (*main) (int argc, char **argv), int ___libc_start_main (int (*main) (int argc, char **argv),
+int __libc_start_main (int (*main) (int argc, char **argv),
int argc, char **argv, int argc, char **argv,
void (*init) (void), void (*fini) (void), void (*init) (void), void (*fini) (void),
void (*rtld_fini) (void), void * stack_end) @@ -472,9 +561,7 @@
@@ -472,9 +545,7 @@ struct startup_info
void (*fini) (void); void (*fini) (void);
}; };

View File

@ -49,13 +49,14 @@
Summary: LSB base libraries support for Red Hat Enterprise Linux Summary: LSB base libraries support for Red Hat Enterprise Linux
Name: redhat-lsb Name: redhat-lsb
Version: 4.0 Version: 4.0
Release: 7%{?dist} Release: 7.1%{?dist}
URL: http://www.linuxfoundation.org/collaborate/workgroups/lsb URL: http://www.linuxfoundation.org/collaborate/workgroups/lsb
Source0: %{name}-%{version}-%{srcrelease}.tar.bz2 Source0: %{name}-%{version}-%{srcrelease}.tar.bz2
#Source1: http://prdownloads.sourceforge.net/lsb/lsb-release-%{upstreamlsbrelver}.tar.gz #Source1: http://prdownloads.sourceforge.net/lsb/lsb-release-%{upstreamlsbrelver}.tar.gz
Patch0: lsb-release-3.1-update-init-functions.patch Patch0: lsb-release-3.1-update-init-functions.patch
Patch1: redhat-lsb-lsb_start_daemon-fix.patch Patch1: redhat-lsb-lsb_start_daemon-fix.patch
Patch2: redhat-lsb-trigger.patch Patch2: redhat-lsb-trigger.patch
Patch3: redhat-lsb-arm.patch
License: GPLv2 License: GPLv2
Group: System Environment/Base Group: System Environment/Base
BuildRequires: glibc-static BuildRequires: glibc-static
@ -86,7 +87,7 @@ Provides: lsb = %{version}
Provides: lsb-core-%{archname} = %{version} Provides: lsb-core-%{archname} = %{version}
Provides: lsb-core-noarch = %{version} Provides: lsb-core-noarch = %{version}
ExclusiveArch: %{ix86} ia64 x86_64 ppc ppc64 s390 s390x ExclusiveArch: %{ix86} ia64 x86_64 ppc ppc64 s390 s390x %{arm}
%ifarch %{ix86} %ifarch %{ix86}
# archLSB IA32 Base Libraries # archLSB IA32 Base Libraries
@ -617,6 +618,7 @@ The Linux Standard Base (LSB) Printing Specifications define components that are
%patch0 -p1 %patch0 -p1
%patch1 -p1 %patch1 -p1
%patch2 -p0 -b .triggerfix %patch2 -p0 -b .triggerfix
%patch3 -p1 -b .arm
%build %build
cd lsb-release-%{upstreamlsbrelver} cd lsb-release-%{upstreamlsbrelver}
@ -727,6 +729,9 @@ fi
%changelog %changelog
* Wed Nov 30 2011 Parag <pnemade AT redhat DOT com> - 4.0-7.1
- Resolves:rh#738256:- redhat-lsb fails to build on ARM
* Wed Oct 12 2011 Parag <pnemade AT redhat DOT com> - 4.0-7 * Wed Oct 12 2011 Parag <pnemade AT redhat DOT com> - 4.0-7
- Resolves:rh#654689,rh#736822 - Resolves:rh#654689,rh#736822
- Added dependencies for perl-Locale-Codes and perl-Class-ISA - Added dependencies for perl-Locale-Codes and perl-Class-ISA