Issue 127040 - Patch for arm 32
Summary: Patch for arm 32
Status: CONFIRMED
Alias: None
Product: Build Tools
Classification: Code
Component: configure (show other issues)
Version: 4.2.0-dev
Hardware: Other Linux 32-bit
: P5 (lowest) Normal (vote)
Target Milestone: ---
Assignee: AOO issues mailing list
QA Contact:
URL:
Keywords: new_implementation
Depends on:
Blocks:
 
Reported: 2016-07-13 06:56 UTC by eric.bachard
Modified: 2017-12-02 16:22 UTC (History)
4 users (show)

See Also:
Issue Type: PATCH
Latest Confirmation in: ---
Developer Difficulty: ---


Attachments
Patch to allow building on arm 32 bits (5.41 KB, patch)
2016-07-13 07:47 UTC, eric.bachard
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this issue.
Description eric.bachard 2016-07-13 06:56:13 UTC
It was not possible to build on Linux ARM (32 bits) with the trunk version of Aoo, while it does perfectly build with OOo4Kids and OOoLight.

So, I propose a patch, using the same changes I did on ARM for OOo4Kids and OOoLight a while ago, and perfectly building and working on recent armv7+ boards.

The attached patch, under Apache License, is a proposal (feel free to improve it) to allow building AOo on :

- old fashion ARMV4T on old machines (was before the patch) ;
- softfp abi on ARMV6 ;
- hardfloat abi arm isa v7+ architectures.

IMPORTANT : after the patch being applied,and before configure, you MUST run "autoconf" in the main directory, to apply and keep the proposed changes.

Modified files :

- solenv/inc/unxlngr.mk : added ARM_FLAVOUR, ARMV7 macros, improved ARM_TARGET with better flags ;
- sal/osl/unx/intelck.c : added smp barriers (arm processors are multi-cores since a while) ;
- configure_ac : added new cases, ARMV7 is now the default (doesn't make sense to build OOo for previous architectures, but who knows ... ) ;
- set_soenv.in : added ARM_FLAVOUR macro ;
- modified EPM_FLAGS (needed when building the .debs) ;
- added OUTPATH : unxlngrh for hardfloat abi when available.

How to use it : 

at configure time, add :

--with-arm-target=7  (or 5, or 6 ... ) => will define ARMV7 macro
And in the case the libc is fpuv3 comptabile, the hardfloat abi will be used, (else it will be the softfp).

Notes:
- this patch has just been partially tested with AOO build
- it has not been tested on armv8 (64 bits)
- default value is armv7+ isa ;
- the flags need to be checked after configure.

Tested on Raspberry Pi 3 rev. B

Regards,
Eric Bachard
Comment 1 eric.bachard 2016-07-13 06:59:33 UTC
Setting some keywords.

Why does our public email appear in the issue ? 

This is open door to spam, and I'm not able to change that ?
Comment 2 damjan 2016-07-13 07:38:46 UTC
(In reply to eric.bachard from comment #1)
> Setting some keywords.
> 
> Why does our public email appear in the issue ? 
> 
> This is open door to spam, and I'm not able to change that ?

It only appears to logged in users.

Where is your patch?
Comment 3 eric.bachard 2016-07-13 07:47:14 UTC
Created attachment 85606 [details]
Patch to allow building on arm 32 bits

Sorry, I believed it was attached.

Apologies :-/
Comment 4 oooforum (fr) 2016-07-13 14:03:42 UTC
Good to see come back ;-)
Set status as PATCH