From patchwork Tue Dec 19 00:09:22 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Joseph Myers X-Patchwork-Id: 25001 Received: (qmail 41520 invoked by alias); 19 Dec 2017 00:09:29 -0000 Mailing-List: contact libc-alpha-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: libc-alpha-owner@sourceware.org Delivered-To: mailing list libc-alpha@sourceware.org Received: (qmail 41504 invoked by uid 89); 19 Dec 2017 00:09:29 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-24.5 required=5.0 tests=AWL, BAYES_00, GIT_PATCH_0, GIT_PATCH_1, GIT_PATCH_2, GIT_PATCH_3, RCVD_IN_DNSWL_NONE, SPF_PASS, URIBL_RED autolearn=ham version=3.3.2 spammy=Hx-languages-length:1939 X-HELO: relay1.mentorg.com Date: Tue, 19 Dec 2017 00:09:22 +0000 From: Joseph Myers To: Subject: Fix build-many-glibcs.py arm-linux-gnueabihf builds with mainline GCC [committed] Message-ID: User-Agent: Alpine 2.20 (DEB 67 2015-01-07) MIME-Version: 1.0 X-ClientProxiedBy: svr-ies-mbx-01.mgc.mentorg.com (139.181.222.1) To svr-ies-mbx-01.mgc.mentorg.com (139.181.222.1) My fix to make the arm-linux-gnueabihf build-many-glibcs.py builds actually use the hard-float ABI as intended showed up another issue when building with mainline GCC: GCC now determines an FPU based on the selected CPU or architecture and gives an error for -mfloat-abi=hard when the CPU does not imply a choice of FPU. This patch fixes all the affected configurations to specify a suitable --with-cpu, --with-fpu or -mfpu option explicitly to avoid that error from GCC. Tested the relevant configurations with build-many-glibcs.py with mainline GCC. Committed. 2017-12-19 Joseph Myers * scripts/build-many-glibcs.py (Context.add_all_configs): Specify CPU or FPU for ARM hard-float configurations. diff --git a/scripts/build-many-glibcs.py b/scripts/build-many-glibcs.py index 5453000..dd4c70d 100755 --- a/scripts/build-many-glibcs.py +++ b/scripts/build-many-glibcs.py @@ -175,19 +175,20 @@ class Context(object): gcc_cfg=['--with-arch=armv7-a']) self.add_config(arch='arm', os_name='linux-gnueabihf', - gcc_cfg=['--with-float=hard'], + gcc_cfg=['--with-float=hard', '--with-cpu=arm926ej-s'], extra_glibcs=[{'variant': 'v7a', - 'ccopts': '-march=armv7-a'}, + 'ccopts': '-march=armv7-a -mfpu=vfpv3'}, {'variant': 'v7a-disable-multi-arch', - 'ccopts': '-march=armv7-a', + 'ccopts': '-march=armv7-a -mfpu=vfpv3', 'cfg': ['--disable-multi-arch']}]) self.add_config(arch='armeb', os_name='linux-gnueabihf', - gcc_cfg=['--with-float=hard']) + gcc_cfg=['--with-float=hard', '--with-cpu=arm926ej-s']) self.add_config(arch='armeb', os_name='linux-gnueabihf', variant='be8', - gcc_cfg=['--with-float=hard', '--with-arch=armv7-a']) + gcc_cfg=['--with-float=hard', '--with-arch=armv7-a', + '--with-fpu=vfpv3']) self.add_config(arch='hppa', os_name='linux-gnu') self.add_config(arch='ia64',