From badcd40f2328f034d98d7e173534ec990bd76160 Mon Sep 17 00:00:00 2001 From: mrg Date: Thu, 18 Apr 2019 10:07:07 +0000 Subject: [PATCH] - various updates for GCC 7 riscv definitions: -mabi and -march changed - add missing LIBGCC_MACHINE_ARCH - add the new ldscripts for riscv64 MKCOMPAT. --- compat/riscv64/rv32/bsd.rv32.mk | 24 ++++++++-- distrib/sets/lists/comp/ad.riscv | 80 +++++++++++++++++++++++++++++++- 2 files changed, 98 insertions(+), 6 deletions(-) diff --git a/compat/riscv64/rv32/bsd.rv32.mk b/compat/riscv64/rv32/bsd.rv32.mk index 7be4d4fba602..cfa4b0be72c0 100644 --- a/compat/riscv64/rv32/bsd.rv32.mk +++ b/compat/riscv64/rv32/bsd.rv32.mk @@ -1,22 +1,36 @@ -# $NetBSD: bsd.rv32.mk,v 1.2 2015/06/24 22:20:25 matt Exp $ - +# $NetBSD: bsd.rv32.mk,v 1.3 2019/04/18 10:07:07 mrg Exp $ +# Keep this out of the .ifndef section, otherwise bsd.own.mk overrides this .if empty(LD:M-m) LD+= -m elf32lriscv .endif -.if !defined(MBLIBDIR) + +.ifndef _COMPAT_BSD_RV32_MK_ +_COMPAT_BSD_RV32_MK_=1 + MLIBDIR= rv32 +LIBGCC_MACHINE_ARCH= riscv32 LIBC_MACHINE_ARCH= riscv32 COMMON_MACHINE_ARCH= riscv32 KVM_MACHINE_ARCH= riscv32 -LDELFSO_MACHINE_ARCH= riscv32 PTHREAD_MACHINE_ARCH= riscv32 BFD_MACHINE_ARCH= riscv32 CSU_MACHINE_ARCH= riscv32 CRYPTO_MACHINE_CPU= riscv32 LDELFSO_MACHINE_CPU= riscv32 +LDELFSO_MACHINE_ARCH= riscv32 GOMP_MACHINE_ARCH= riscv32 XORG_MACHINE_ARCH= riscv32 -.include "${.PARSEDIR}/../../m32.mk" +.if empty(COPTS:M-mbi) +_RV32_OPTS= -mabi=ilp32 -march=rv32g +COPTS+= ${_RV32_OPTS} +CPUFLAGS+= ${_RV32_OPTS} +LDADD+= ${_RV32_OPTS} +LDFLAGS+= ${_RV32_OPTS} +MKDEPFLAGS+= ${_RV32_OPTS} +.endif + +.include "../../Makefile.compat" + .endif diff --git a/distrib/sets/lists/comp/ad.riscv b/distrib/sets/lists/comp/ad.riscv index fa4c83510141..21ac9f0c6642 100644 --- a/distrib/sets/lists/comp/ad.riscv +++ b/distrib/sets/lists/comp/ad.riscv @@ -1,4 +1,4 @@ -# $NetBSD: ad.riscv,v 1.13 2019/04/17 07:55:33 mrg Exp $ +# $NetBSD: ad.riscv,v 1.14 2019/04/18 10:07:07 mrg Exp $ ./usr/include/g++/bits/riscv32 comp-c-include arch64,compat ./usr/include/g++/bits/riscv32/c++config.h comp-c-include arch64,gcc,compat ./usr/include/g++/bits/riscv64 comp-c-include arch64,compat @@ -51,3 +51,81 @@ ./usr/include/riscv/types.h comp-c-include ./usr/include/riscv/vmparam.h comp-c-include ./usr/include/riscv/wchar_limits.h comp-c-include +./usr/libdata/ldscripts/elf32lriscv.x comp-util-bin binutils,arch64,compat +./usr/libdata/ldscripts/elf32lriscv.xbn comp-util-bin binutils,arch64,compat +./usr/libdata/ldscripts/elf32lriscv.xc comp-util-bin binutils,arch64,compat +./usr/libdata/ldscripts/elf32lriscv.xd comp-util-bin binutils,arch64,compat +./usr/libdata/ldscripts/elf32lriscv.xdc comp-util-bin binutils,arch64,compat +./usr/libdata/ldscripts/elf32lriscv.xdw comp-util-bin binutils,arch64,compat +./usr/libdata/ldscripts/elf32lriscv.xn comp-util-bin binutils,arch64,compat +./usr/libdata/ldscripts/elf32lriscv.xr comp-util-bin binutils,arch64,compat +./usr/libdata/ldscripts/elf32lriscv.xs comp-util-bin binutils,arch64,compat +./usr/libdata/ldscripts/elf32lriscv.xsc comp-util-bin binutils,arch64,compat +./usr/libdata/ldscripts/elf32lriscv.xsw comp-util-bin binutils,arch64,compat +./usr/libdata/ldscripts/elf32lriscv.xu comp-util-bin binutils,arch64,compat +./usr/libdata/ldscripts/elf32lriscv.xw comp-util-bin binutils,arch64,compat +./usr/libdata/ldscripts/elf32lriscv_ilp32.x comp-util-bin binutils,arch64,compat +./usr/libdata/ldscripts/elf32lriscv_ilp32.xbn comp-util-bin binutils,arch64,compat +./usr/libdata/ldscripts/elf32lriscv_ilp32.xc comp-util-bin binutils,arch64,compat +./usr/libdata/ldscripts/elf32lriscv_ilp32.xd comp-util-bin binutils,arch64,compat +./usr/libdata/ldscripts/elf32lriscv_ilp32.xdc comp-util-bin binutils,arch64,compat +./usr/libdata/ldscripts/elf32lriscv_ilp32.xdw comp-util-bin binutils,arch64,compat +./usr/libdata/ldscripts/elf32lriscv_ilp32.xn comp-util-bin binutils,arch64,compat +./usr/libdata/ldscripts/elf32lriscv_ilp32.xr comp-util-bin binutils,arch64,compat +./usr/libdata/ldscripts/elf32lriscv_ilp32.xs comp-util-bin binutils,arch64,compat +./usr/libdata/ldscripts/elf32lriscv_ilp32.xsc comp-util-bin binutils,arch64,compat +./usr/libdata/ldscripts/elf32lriscv_ilp32.xsw comp-util-bin binutils,arch64,compat +./usr/libdata/ldscripts/elf32lriscv_ilp32.xu comp-util-bin binutils,arch64,compat +./usr/libdata/ldscripts/elf32lriscv_ilp32.xw comp-util-bin binutils,arch64,compat +./usr/libdata/ldscripts/elf32lriscv_ilp32f.x comp-util-bin binutils,arch64,compat +./usr/libdata/ldscripts/elf32lriscv_ilp32f.xbn comp-util-bin binutils,arch64,compat +./usr/libdata/ldscripts/elf32lriscv_ilp32f.xc comp-util-bin binutils,arch64,compat +./usr/libdata/ldscripts/elf32lriscv_ilp32f.xd comp-util-bin binutils,arch64,compat +./usr/libdata/ldscripts/elf32lriscv_ilp32f.xdc comp-util-bin binutils,arch64,compat +./usr/libdata/ldscripts/elf32lriscv_ilp32f.xdw comp-util-bin binutils,arch64,compat +./usr/libdata/ldscripts/elf32lriscv_ilp32f.xn comp-util-bin binutils,arch64,compat +./usr/libdata/ldscripts/elf32lriscv_ilp32f.xr comp-util-bin binutils,arch64,compat +./usr/libdata/ldscripts/elf32lriscv_ilp32f.xs comp-util-bin binutils,arch64,compat +./usr/libdata/ldscripts/elf32lriscv_ilp32f.xsc comp-util-bin binutils,arch64,compat +./usr/libdata/ldscripts/elf32lriscv_ilp32f.xsw comp-util-bin binutils,arch64,compat +./usr/libdata/ldscripts/elf32lriscv_ilp32f.xu comp-util-bin binutils,arch64,compat +./usr/libdata/ldscripts/elf32lriscv_ilp32f.xw comp-util-bin binutils,arch64,compat +./usr/libdata/ldscripts/elf64lriscv.x comp-util-bin binutils,arch64,compat +./usr/libdata/ldscripts/elf64lriscv.xbn comp-util-bin binutils,arch64,compat +./usr/libdata/ldscripts/elf64lriscv.xc comp-util-bin binutils,arch64,compat +./usr/libdata/ldscripts/elf64lriscv.xd comp-util-bin binutils,arch64,compat +./usr/libdata/ldscripts/elf64lriscv.xdc comp-util-bin binutils,arch64,compat +./usr/libdata/ldscripts/elf64lriscv.xdw comp-util-bin binutils,arch64,compat +./usr/libdata/ldscripts/elf64lriscv.xn comp-util-bin binutils,arch64,compat +./usr/libdata/ldscripts/elf64lriscv.xr comp-util-bin binutils,arch64,compat +./usr/libdata/ldscripts/elf64lriscv.xs comp-util-bin binutils,arch64,compat +./usr/libdata/ldscripts/elf64lriscv.xsc comp-util-bin binutils,arch64,compat +./usr/libdata/ldscripts/elf64lriscv.xsw comp-util-bin binutils,arch64,compat +./usr/libdata/ldscripts/elf64lriscv.xu comp-util-bin binutils,arch64,compat +./usr/libdata/ldscripts/elf64lriscv.xw comp-util-bin binutils,arch64,compat +./usr/libdata/ldscripts/elf64lriscv_lp64.x comp-util-bin binutils,arch64,compat +./usr/libdata/ldscripts/elf64lriscv_lp64.xbn comp-util-bin binutils,arch64,compat +./usr/libdata/ldscripts/elf64lriscv_lp64.xc comp-util-bin binutils,arch64,compat +./usr/libdata/ldscripts/elf64lriscv_lp64.xd comp-util-bin binutils,arch64,compat +./usr/libdata/ldscripts/elf64lriscv_lp64.xdc comp-util-bin binutils,arch64,compat +./usr/libdata/ldscripts/elf64lriscv_lp64.xdw comp-util-bin binutils,arch64,compat +./usr/libdata/ldscripts/elf64lriscv_lp64.xn comp-util-bin binutils,arch64,compat +./usr/libdata/ldscripts/elf64lriscv_lp64.xr comp-util-bin binutils,arch64,compat +./usr/libdata/ldscripts/elf64lriscv_lp64.xs comp-util-bin binutils,arch64,compat +./usr/libdata/ldscripts/elf64lriscv_lp64.xsc comp-util-bin binutils,arch64,compat +./usr/libdata/ldscripts/elf64lriscv_lp64.xsw comp-util-bin binutils,arch64,compat +./usr/libdata/ldscripts/elf64lriscv_lp64.xu comp-util-bin binutils,arch64,compat +./usr/libdata/ldscripts/elf64lriscv_lp64.xw comp-util-bin binutils,arch64,compat +./usr/libdata/ldscripts/elf64lriscv_lp64f.x comp-util-bin binutils,arch64,compat +./usr/libdata/ldscripts/elf64lriscv_lp64f.xbn comp-util-bin binutils,arch64,compat +./usr/libdata/ldscripts/elf64lriscv_lp64f.xc comp-util-bin binutils,arch64,compat +./usr/libdata/ldscripts/elf64lriscv_lp64f.xd comp-util-bin binutils,arch64,compat +./usr/libdata/ldscripts/elf64lriscv_lp64f.xdc comp-util-bin binutils,arch64,compat +./usr/libdata/ldscripts/elf64lriscv_lp64f.xdw comp-util-bin binutils,arch64,compat +./usr/libdata/ldscripts/elf64lriscv_lp64f.xn comp-util-bin binutils,arch64,compat +./usr/libdata/ldscripts/elf64lriscv_lp64f.xr comp-util-bin binutils,arch64,compat +./usr/libdata/ldscripts/elf64lriscv_lp64f.xs comp-util-bin binutils,arch64,compat +./usr/libdata/ldscripts/elf64lriscv_lp64f.xsc comp-util-bin binutils,arch64,compat +./usr/libdata/ldscripts/elf64lriscv_lp64f.xsw comp-util-bin binutils,arch64,compat +./usr/libdata/ldscripts/elf64lriscv_lp64f.xu comp-util-bin binutils,arch64,compat +./usr/libdata/ldscripts/elf64lriscv_lp64f.xw comp-util-bin binutils,arch64,compat