Index: Makefile
===================================================================
--- Makefile	(revision 506265)
+++ Makefile	(working copy)
@@ -19,7 +19,6 @@
 LICENSE_PERMS_QPL10=	dist-mirror dist-sell pkg-mirror pkg-sell auto-accept
 
 BROKEN_aarch64=		Does not build: sh: as: not found
-BROKEN_armv7=		Does not build: hasgot.c: undefined reference to `tgetent'
 BROKEN_powerpc64=	Does not build: error: too few arguments to function gethostbyname_r
 BROKEN_sparc64=	No rule to make target 'none.o', needed by 'libasmrun.a'
 BROKEN_mips64=	No ASM support
@@ -33,6 +32,7 @@
 STRIP=
 SSP_UNSAFE=	yes
 MAKE_JOBS_UNSAFE=	yes
+LDFLAGS_armv7=	-Wl,-znotext
 LDFLAGS_i386=	-Wl,-znotext
 
 CONFIGURE_ARGS=	-verbose -prefix "${PREFIX}" \
@@ -151,7 +151,7 @@
 	${INSTALL_DATA} ${_DISTDIR}${DOCSDISTNAME}-refman.pdf ${STAGEDIR}${DOCSDIR}
 .endif
 # Spacetime profiling is only available for native code on 64-bit targets
-.if ${ARCH} == i386 || ${ARCH} == powerpc
+.if ${ARCH} == i386 || ${ARCH} == powerpc || ${ARCH} == armv7
 	@${REINPLACE_CMD} -e '/raw_spacetime_lib/d' ${TMPPLIST}
 .endif
 
Index: files/patch-configure
===================================================================
--- files/patch-configure	(revision 506265)
+++ files/patch-configure	(working copy)
@@ -33,7 +33,15 @@
    powerpc-*-netbsd*)            arch=power; model=ppc; system=elf;;
    powerpc-*-openbsd*)           arch=power; model=ppc; system=bsd_elf;;
    s390x*-*-linux*)              arch=s390x; model=z10; system=elf;;
-@@ -946,6 +949,7 @@ case "$target" in
+@@ -930,6 +933,7 @@ case "$target" in
+   armv6t2*-*-linux-gnueabi)     arch=arm; model=armv6t2; system=linux_eabi;;
+   armv6*-*-linux-gnueabi)       arch=arm; model=armv6; system=linux_eabi;;
+   armv6*-*-freebsd*)            arch=arm; model=armv6; system=freebsd;;
++  armv7*-*-freebsd*)            arch=arm; model=armv7; system=freebsd;;
+   earmv6*-*-netbsd*)            arch=arm; model=armv6; system=netbsd;;
+   earmv7*-*-netbsd*)            arch=arm; model=armv7; system=netbsd;;
+   armv5te*-*-linux-gnueabi)     arch=arm; model=armv5te; system=linux_eabi;;
+@@ -946,6 +950,7 @@ case "$target" in
    x86_64-*-darwin*)             arch=amd64; system=macosx;;
    x86_64-*-mingw*)              arch=amd64; system=mingw;;
    aarch64-*-linux*)             arch=arm64; system=linux;;
@@ -41,7 +49,7 @@
    x86_64-*-cygwin*)             arch=amd64; system=cygwin;;
  esac
  
-@@ -1051,10 +1055,12 @@ case "$arch,$system" in
+@@ -1051,10 +1056,12 @@ case "$arch,$system" in
      case "$nativecc" in gcc*) ;; *) cc_profile='-xpg';; esac;;
    amd64,linux) profiling='true';;
    amd64,openbsd) profiling='true';;
@@ -54,7 +62,16 @@
    arm,linux*) profiling='true';;
    power,elf) profiling='true';;
    power,bsd*) profiling='true';;
-@@ -2029,7 +2035,7 @@ MKLIB=${TOOLPREF}ar rc \$(1) \$(2); ${TOOLPREF}ranlib 
+@@ -1168,7 +1175,7 @@ fi
+ 
+ if test "$with_curses" = "yes"; then
+   for libs in "" "-lcurses" "-ltermcap" "-lcurses -ltermcap" "-lncurses"; do
+-    if sh ./hasgot $libs tgetent tgetstr tgetnum tputs; then
++    if sh ./hasgot -i term.h $libs tgetent tgetstr tgetnum tputs; then
+       inf "termcap functions found (with libraries '$libs')"
+       echo "#define HAS_TERMCAP" >> s.h
+       curseslibs="${libs}"
+@@ -2029,7 +2036,7 @@ MKLIB=${TOOLPREF}ar rc \$(1) \$(2); ${TOOLPREF}ranlib 
  #ml   Printf.sprintf "${TOOLPREF}ar rc %s %s %s; ${TOOLPREF}ranlib %s"
  #ml                  out opts files out;;
  EOF