Adrian Schröter <adrian@suse.de> writes:
Good answer, thanks Jan,
On Montag, 26. Januar 2015, 10:57:12 wrote Jan Engelhardt:
On Monday 2015-01-26 10:30, Bamvor Jian Zhang wrote:
I got 4 commit about aarch64 in obs source code[openbuildservice] with "git log --grep aarch64": effc064 [backend] aarch64 workers can also build 32bit arm e0bd2e5 [api] add aarch64 to xml schema file b71ecfe [api] add aarch64 architecture 0c08cbe [backend] add aarch64 architecture
But I still not puzzled about how to start.
I also found some Linux32 definitions in obs source code[openbuildservice], does it mean the ilp32 is supported on the following architecture?
src/backend/BSCando.pm: 'x86_64' => [ 'x86_64', 'i586:linux32', 'i686:linux32' ], src/backend/BSCando.pm: 'sparc64' => [ 'sparc64v', 'sparc64', 'sparcv9v', 'sparcv9', 'sparcv8:linux32', 'sparc:linux32' ],
This table maps `uname -m` to packages that can be built (using :helper). Therefore,
I just want to add here that this helper "linux32" needs to be available as binary to do the personality switch. I hope the aarch64 kernel supports this and you have such a binary doing the 64bit->32bit personality switch.
linux32 (ie. personality(PER_LINUX32)) will switch the uname -m output from aarch64 to armv8l.
BTW: basically, add ilp32 support means that adding ilp32 support to kernel, gcc and glibc. And pass CC or CXX with additional -mabi=ilp32 to overwrite the default -mabi=lp64 when building the packages.
This is better done in /usr/lib/rpm/rpmrc:
optflags: x86_64 -O2 -g -m64 -D_FORTIFY_SOURCE=2 ... optflags: x32 -O2 -g -mx32 -D_FORTIFY_SOURCE=2 ...
which means rpm itself needs to be augmented first.
Or even better, you have a gcc.rpm for aarch32 architecture which has this default already?
Presumable a armv8l architecture will have a compiler that defaults to generating 32-bit (ILP32) code. Andreas. -- Andreas Schwab, SUSE Labs, schwab@suse.de GPG Key fingerprint = 0196 BAD8 1CE9 1970 F4BE 1748 E4D4 88E3 0EEA B9D7 "And now for something completely different." -- To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-buildservice+owner@opensuse.org