STM3240G-EVAL knxwm: Work around CodeSourcery library bug by switching to buildroot

This commit is contained in:
Gregory Nutt
2013-12-31 10:55:46 -06:00
parent 9945fa0c47
commit bd0ad373e4
3 changed files with 17 additions and 6 deletions
+11 -1
View File
@@ -987,10 +987,20 @@ Where <subdir> is one of the following:
CONFIG_HOST_WINDOWS=y : Windows CONFIG_HOST_WINDOWS=y : Windows
CONFIG_WINDOWS_CYGWIN=y : Cygwin environment on Windows CONFIG_WINDOWS_CYGWIN=y : Cygwin environment on Windows
CONFIG_ARMV7M_TOOLCHAIN_CODESOURCERYW=y : CodeSourcery under Windows CONFIG_ARMV7M_TOOLCHAIN_BUILDROOT=y : NuttX EABI buildroot toolchain
CONFIG_CXX_NEWLONG=y : size_t is long (maybe?)
This is easily changed by modifying the configuration. This is easily changed by modifying the configuration.
NOTE: When I used a recent CodeSourcery toolchain, then toolchain
generated an illegal blx to an even address when calling into one
of the EABI math libraries. I don't know why this happened or if
the probably is repeatable with other CodeSourcery versions. You
can try for yourself setting:
CONFIG_ARMV7M_TOOLCHAIN_CODESOURCERYW=y : CodeSourcery under Windows
CONFIG_CXX_NEWLONG=n : size_t is unsigned int (maybe?)
3. In addition to the the kernel mode build, this NxWM configuration 3. In addition to the the kernel mode build, this NxWM configuration
differences from the nxwm configuration in that: differences from the nxwm configuration in that:
+2 -2
View File
@@ -56,8 +56,8 @@
# error "CONFIG_NUTTX_USERSPACE not defined" # error "CONFIG_NUTTX_USERSPACE not defined"
#endif #endif
#if CONFIG_NUTTX_USERSPACE != 0x08020000 #if CONFIG_NUTTX_USERSPACE != 0x08040000
# error "CONFIG_NUTTX_USERSPACE must be 0x08020000 to match memory.ld" # error "CONFIG_NUTTX_USERSPACE must be 0x08040000 to match memory.ld"
#endif #endif
/**************************************************************************** /****************************************************************************
+4 -3
View File
@@ -113,13 +113,14 @@ CONFIG_ARMV7M_MPU_NREGIONS=8
# ARMV7M Configuration Options # ARMV7M Configuration Options
# #
# CONFIG_ARMV7M_TOOLCHAIN_ATOLLIC is not set # CONFIG_ARMV7M_TOOLCHAIN_ATOLLIC is not set
# CONFIG_ARMV7M_TOOLCHAIN_BUILDROOT is not set CONFIG_ARMV7M_TOOLCHAIN_BUILDROOT=y
# CONFIG_ARMV7M_TOOLCHAIN_CODEREDW is not set # CONFIG_ARMV7M_TOOLCHAIN_CODEREDW is not set
CONFIG_ARMV7M_TOOLCHAIN_CODESOURCERYW=y # CONFIG_ARMV7M_TOOLCHAIN_CODESOURCERYW is not set
# CONFIG_ARMV7M_TOOLCHAIN_DEVKITARM is not set # CONFIG_ARMV7M_TOOLCHAIN_DEVKITARM is not set
# CONFIG_ARMV7M_TOOLCHAIN_GNU_EABIL is not set # CONFIG_ARMV7M_TOOLCHAIN_GNU_EABIL is not set
# CONFIG_ARMV7M_TOOLCHAIN_GNU_EABIW is not set # CONFIG_ARMV7M_TOOLCHAIN_GNU_EABIW is not set
# CONFIG_ARMV7M_TOOLCHAIN_RAISONANCE is not set # CONFIG_ARMV7M_TOOLCHAIN_RAISONANCE is not set
# CONFIG_ARMV7M_OABI_TOOLCHAIN is not set
# CONFIG_SERIAL_TERMIOS is not set # CONFIG_SERIAL_TERMIOS is not set
# #
@@ -761,7 +762,7 @@ CONFIG_SCHED_USRWORK=y
# CONFIG_C99_BOOL8 is not set # CONFIG_C99_BOOL8 is not set
CONFIG_HAVE_CXX=y CONFIG_HAVE_CXX=y
CONFIG_HAVE_CXXINITIALIZE=y CONFIG_HAVE_CXXINITIALIZE=y
# CONFIG_CXX_NEWLONG is not set CONFIG_CXX_NEWLONG=y
# #
# uClibc++ Standard C++ Library # uClibc++ Standard C++ Library