summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lang/gcc7/Makefile4
-rw-r--r--lang/gcc7/files/patch-armv7-support21
2 files changed, 23 insertions, 2 deletions
diff --git a/lang/gcc7/Makefile b/lang/gcc7/Makefile
index 897c2d1c1bbd..c508fa9552bf 100644
--- a/lang/gcc7/Makefile
+++ b/lang/gcc7/Makefile
@@ -14,7 +14,7 @@ COMMENT= GNU Compiler Collection 7
LICENSE= GPLv3 GPLv3RLE
LICENSE_COMB= multi
-ONLY_FOR_ARCHS= aarch64 amd64 arm armv6 i386 powerpc powerpc64 sparc64
+ONLY_FOR_ARCHS= aarch64 amd64 arm armv6 armv7 i386 powerpc powerpc64 sparc64
LIB_DEPENDS= libgmp.so:math/gmp \
libmpfr.so:math/mpfr \
@@ -62,7 +62,7 @@ CONFIGURE_ENV+= UNAME_m="powerpc64"
USE_GCC= yes
.endif
-.if ${ARCH} == armv6
+.if ${ARCH} == armv6 || ${ARCH} == armv7
. if ${COMPILER_TYPE} == clang
. if empty(PORT_OPTIONS:MBOOTSTRAP)
MAKE_ARGS+=CXXFLAGS+=-fbracket-depth=512
diff --git a/lang/gcc7/files/patch-armv7-support b/lang/gcc7/files/patch-armv7-support
new file mode 100644
index 000000000000..532885d81b13
--- /dev/null
+++ b/lang/gcc7/files/patch-armv7-support
@@ -0,0 +1,21 @@
+---UTC
+Index: gcc/config.gcc
+===================================================================
+--- gcc/config.gcc (revision 253513)
++++ gcc/config.gcc (working copy)
+@@ -1077,11 +1077,14 @@
+ case $target in
+ armv6*-*-freebsd*)
+ target_cpu_cname="arm1176jzfs"
+- tm_defines="${tm_defines} TARGET_FREEBSD_ARMv6=1"
+ if test $fbsd_major -ge 11; then
+ tm_defines="${tm_defines} TARGET_FREEBSD_ARM_HARD_FLOAT=1"
+ fi
+ ;;
++ armv7*-*-freebsd*)
++ target_cpu_cname="genericv7a"
++ tm_defines="${tm_defines} TARGET_FREEBSD_ARM_HARD_FLOAT=1"
++ ;;
+ *)
+ target_cpu_cname="arm9"
+ ;;