Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 16 Jul 2013 19:15:19 +0000 (UTC)
From:      Andrew Turner <andrew@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r253396 - in head: . share/mk sys/conf sys/sys tools/build/options
Message-ID:  <201307161915.r6GJFJKI059649@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: andrew
Date: Tue Jul 16 19:15:19 2013
New Revision: 253396
URL: http://svnweb.freebsd.org/changeset/base/253396

Log:
  2 years, 10 months, 22 days after the projects/arm_eabi branch was created
  make the ARM EABI the default ABI on arm, armeb, armv6 and armv6eb.
  
  This is intended to be the default ABI from now on with the old ABI to be
  retired. Because of this all users are strongly suggested to upgrade to the
  ARM EABI.
  
  As the two ABIs are incompatible it is unlikely upgrading in place will
  work. Users should perform a full backup and either use an external machine
  to upgrade, or install to an alternative location on their media. They
  should also reinstall all ports or packages when these are available.
  
  The only known issues are:
   - pkg incorrectly detects the ABI. This is fixed upstream, and will a
     patch will be made to the port.
   - GDB can have issues with executables built with clang.
  
  __FreeBSD_version has been bumped.

Added:
  head/tools/build/options/WITHOUT_ARM_EABI
     - copied, changed from r253395, head/tools/build/options/WITH_ARM_EABI
Deleted:
  head/tools/build/options/WITH_ARM_EABI
Modified:
  head/UPDATING
  head/share/mk/bsd.own.mk
  head/sys/conf/Makefile.arm
  head/sys/sys/param.h

Modified: head/UPDATING
==============================================================================
--- head/UPDATING	Tue Jul 16 16:37:08 2013	(r253395)
+++ head/UPDATING	Tue Jul 16 19:15:19 2013	(r253396)
@@ -31,6 +31,16 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 10
 	disable the most expensive debugging functionality run
 	"ln -s 'abort:false,junk:false' /etc/malloc.conf".)
 
+20130716:
+	The default ARM ABI has changed to the ARM EABI. The old ABI is
+	incompatible with the ARM EABI and all programs and modules will
+	need to be rebuilt to work with a new kernel.
+
+	To keep using the old ABI ensure the WITHOUT_ARM_EABI knob is set.
+
+	NOTE: Support for the old ABI will be removed in the future and
+	users are advised to upgrade.
+
 20130709:
 	pkg_install has been disconnected from the build if you really need it
 	you should add WITH_PKGTOOLS in your src.conf(5).

Modified: head/share/mk/bsd.own.mk
==============================================================================
--- head/share/mk/bsd.own.mk	Tue Jul 16 16:37:08 2013	(r253395)
+++ head/share/mk/bsd.own.mk	Tue Jul 16 19:15:19 2013	(r253396)
@@ -245,6 +245,7 @@ __DEFAULT_YES_OPTIONS = \
     ACPI \
     AMD \
     APM \
+    ARM_EABI \
     ASSERT_DEBUG \
     AT \
     ATF \
@@ -363,7 +364,6 @@ __DEFAULT_YES_OPTIONS = \
     ZONEINFO
 
 __DEFAULT_NO_OPTIONS = \
-    ARM_EABI \
     BSD_PATCH \
     BIND_IDN \
     BIND_LARGE_FILE \

Modified: head/sys/conf/Makefile.arm
==============================================================================
--- head/sys/conf/Makefile.arm	Tue Jul 16 16:37:08 2013	(r253395)
+++ head/sys/conf/Makefile.arm	Tue Jul 16 19:15:19 2013	(r253396)
@@ -44,10 +44,10 @@ CFLAGS += -mno-thumb-interwork
 .endif
 
 .if empty(DDB_ENABLED)
-.if !defined(WITH_ARM_EABI) && ${COMPILER_TYPE} != "clang"
+.if defined(WITHOUT_ARM_EABI) && ${COMPILER_TYPE} != "clang"
 CFLAGS += -mno-apcs-frame
 .endif
-.elif defined(WITH_ARM_EABI)
+.elif !defined(WITHOUT_ARM_EABI)
 CFLAGS += -funwind-tables
 .if ${COMPILER_TYPE} == "clang"
 # clang requires us to tell it to emit assembly with unwind information

Modified: head/sys/sys/param.h
==============================================================================
--- head/sys/sys/param.h	Tue Jul 16 16:37:08 2013	(r253395)
+++ head/sys/sys/param.h	Tue Jul 16 19:15:19 2013	(r253396)
@@ -58,7 +58,7 @@
  *		in the range 5 to 9.
  */
 #undef __FreeBSD_version
-#define __FreeBSD_version 1000037	/* Master, propagated to newvers */
+#define __FreeBSD_version 1000038	/* Master, propagated to newvers */
 
 /*
  * __FreeBSD_kernel__ indicates that this system uses the kernel of FreeBSD,

Copied and modified: head/tools/build/options/WITHOUT_ARM_EABI (from r253395, head/tools/build/options/WITH_ARM_EABI)
==============================================================================
--- head/tools/build/options/WITH_ARM_EABI	Tue Jul 16 16:37:08 2013	(r253395, copy source)
+++ head/tools/build/options/WITHOUT_ARM_EABI	Tue Jul 16 19:15:19 2013	(r253396)
@@ -1,2 +1,2 @@
 .\" $FreeBSD$
-Set the ARM ABI to EABI.
+Set the ARM ABI to OABI.



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201307161915.r6GJFJKI059649>