diff --git a/ChangeLog b/ChangeLog index 9b27102330..39a4dff565 100644 --- a/ChangeLog +++ b/ChangeLog @@ -3584,3 +3584,4 @@ tool. * configs/stm32f4discovery/src/up_ug2864ambag01.c: Board-specific initialization for UG-2864AMBAG01 OLED connecte to STM32F4Disovery. + * libxx/libxx_stdthrow.cxx: Exception stubs from Petteri Aimonen. diff --git a/Documentation/NuttShell.html b/Documentation/NuttShell.html index 31546a100c..1b14f96f61 100644 --- a/Documentation/NuttShell.html +++ b/Documentation/NuttShell.html @@ -8,7 +8,7 @@

NuttShell (NSH)

-

Last Updated: November 4, 2012

+

Last Updated: November 9, 2012

@@ -173,187 +173,193 @@
- 2.16 Manage Network Configuration (ifconfig) + 2.16 Hexadecimal Dump of File or Device (hexdump)
- 2.17 Take a network down (ifdown) + 2.17 Manage Network Configuration (ifconfig)
- 2.18 Bring a network up (ifup) + 2.18 Take a network down (ifdown)
- 2.19 Send a signal to a task (kill) + 2.19 Bring a network up (ifup)
- 2.20 Setup/teardown the Loop Device (losetup) + 2.20 Send a signal to a task (kill)
- 2.21 List Directory Contents (ls) + 2.21 Setup/teardown the Loop Device (losetup)
- 2.22 Calculate MD5 (md5) + 2.22 List Directory Contents (ls)
- 2.23 Access Memory (mb, mh, and mw) + 2.23 Calculate MD5 (md5)
- 2.24 Show Current Tasks and Threads (ps) + 2.24 Access Memory (mb, mh, and mw)
- 2.25 Create a Directory (mkdir) + 2.25 Show Current Tasks and Threads (ps)
- 2.26 Create a FAT Filesystem (mkfatfs) + 2.26 Create a Directory (mkdir)
- 2.27 Create a FIFO (mkfifo) + 2.27 Create a FAT Filesystem (mkfatfs)
- 2.28 Create a RAMDISK (mkrd) + 2.28 Create a FIFO (mkfifo)
- 2.29 Mount a File System (mount) + 2.29 Create a RAMDISK (mkrd)
- 2.30 Rename a File (mv) + 2.30 Mount a File System (mount)
- 2.31 Mount an NFS file system (nfsmount) + 2.31 Rename a File (mv)
- 2.32 Check Network Peer (ping) + 2.32 Mount an NFS file system (nfsmount)
- 2.33 Send File Via TFTP (put) + 2.33 Check Network Peer (ping)
- 2.34 Show Current Working Directory (pwd) + 2.34 Send File Via TFTP (put)
- 2.35 Remove a File (rm) + 2.35 Show Current Working Directory (pwd)
- 2.36 Remove a Directory (rmdir) + 2.36 Remove a File (rm)
- 2.37 Set an Environment Variable (set) + 2.37 Remove a Directory (rmdir)
- 2.38 Execute an NSH Script (sh) + 2.38 Set an Environment Variable (set)
- 2.39 Wait for Seconds (sleep) + 2.39 Execute an NSH Script (sh)
- 2.40 Unmount a File System (umount) + 2.40 Wait for Seconds (sleep)
- 2.41 Unset an Environment Variable (unset) + 2.41 Unmount a File System (umount)
- 2.42 URL Decode (urldecode) + 2.42 Unset an Environment Variable (unset)
- 2.43 URL Encode (urlencode) + 2.43 URL Decode (urldecode)
- 2.44 Wait for Microseconds (usleep) + 2.44 URL Encode (urlencode)
- 2.45 Get File Via HTTP (wget) + 2.45 Wait for Microseconds (usleep)
- 2.46 Hexadecimal Dump (xd) + 2.46 Get File Via HTTP (wget) + + + +
+ + 2.47 Hexadecimal Dump of Memory (xd) @@ -1182,7 +1188,31 @@ help [-v] [<cmd>] + +
-

2.16 Manage Network Configuration (ifconfig)

+

2.16 Hexadecimal Dump of File or Device (hexdump)

+
+ +

Command Syntax:

+ +

+ Synopsis. + Dump data in hexadecimal format from a file or character device. +

+ + +
+ + + + + + + +
+

2.17 Manage Network Configuration (ifconfig)

@@ -1236,7 +1266,7 @@ ifconfig nic_name ip_address
-

2.17 Take a network down (ifdown)

+

2.18 Take a network down (ifdown)

@@ -1259,7 +1289,7 @@ ifdown eth0
-

2.18 Bring a network up (ifup)

+

2.19 Bring a network up (ifup)

@@ -1282,7 +1312,7 @@ ifup eth0
-

2.19 Send a signal to a task (kill)

+

2.20 Send a signal to a task (kill)

@@ -1323,7 +1353,7 @@ nsh>
-

2.20 Setup/teardown the Loop Device (losetup)

+

2.21 Setup/teardown the Loop Device (losetup)

@@ -1376,7 +1406,7 @@ losetup d <dev-path>
-

2.21 List Directory Contents (ls)

+

2.22 List Directory Contents (ls)

@@ -1413,7 +1443,7 @@ ls [-lRs] <dir-path>
-

2.22 Calculate MD5 (md5)

+

2.23 Calculate MD5 (md5)

@@ -1430,7 +1460,7 @@ md5 [-f] <string or filepath>
-

2.23 Access Memory (mb, mh, and mw)

+

2.24 Access Memory (mb, mh, and mw)

@@ -1484,7 +1514,7 @@ nsh>
-

2.24 Show Current Tasks and Threads (ps)

+

2.25 Show Current Tasks and Threads (ps)

@@ -1510,7 +1540,7 @@ nsh>
-

2.25 Create a Directory (mkdir)

+

2.26 Create a Directory (mkdir)

@@ -1545,7 +1575,7 @@ nsh>
-

2.26 Create a FAT Filesystem (mkfatfs)

+

2.27 Create a FAT Filesystem (mkfatfs)

@@ -1565,7 +1595,7 @@ mkfatfs <path>
-

2.27 Create a FIFO (mkfifo)

+

2.28 Create a FIFO (mkfifo)

@@ -1603,7 +1633,7 @@ nsh>
-

2.28 Create a RAMDISK (mkrd)

+

2.29 Create a RAMDISK (mkrd)

@@ -1654,7 +1684,7 @@ nsh>
-

2.29 Mount a File System (mount)

+

2.30 Mount a File System (mount)

@@ -1733,7 +1763,7 @@ nsh> mount
-

2.30 Rename a File (mv)

+

2.31 Rename a File (mv)

@@ -1751,7 +1781,7 @@ mv <old-path> <new-path>
-

2.31 Mount an NFS file system (nfsmount)

+

2.32 Mount an NFS file system (nfsmount)

@@ -1770,7 +1800,7 @@ nfsmount <server-address> <mount-point> <remote-path>
-

2.32 Check Network Peer (ping)

+

2.33 Check Network Peer (ping)

@@ -1803,7 +1833,7 @@ nsh>
-

2.33 Send File Via TFTP (put)

+

2.34 Send File Via TFTP (put)

@@ -1838,7 +1868,7 @@ put [-b|-n] [-f <remote-path>] -h <ip-address> <local-path>
-

2.34 Show Current Working Directory (pwd)

+

2.35 Show Current Working Directory (pwd)

@@ -1868,7 +1898,7 @@ nsh>
-

2.35 Remove a File (rm)

+

2.36 Remove a File (rm)

@@ -1902,7 +1932,7 @@ nsh>
-

2.36 Remove a Directory (rmdir)

+

2.37 Remove a Directory (rmdir)

@@ -1937,7 +1967,7 @@ nsh>
-

2.37 Set an Environment Variable (set)

+

2.38 Set an Environment Variable (set)

@@ -1963,7 +1993,7 @@ nsh>
-

2.38 Execute an NSH Script (sh)

+

2.39 Execute an NSH Script (sh)

@@ -1981,7 +2011,7 @@ sh <script-path>
-

2.39 Wait for Seconds (sleep)

+

2.40 Wait for Seconds (sleep)

@@ -1998,7 +2028,7 @@ sleep <sec>
-

2.40 Unmount a File System (umount)

+

2.41 Unmount a File System (umount)

@@ -2028,7 +2058,7 @@ nsh>
-

2.41 Unset an Environment Variable (unset)

+

2.42 Unset an Environment Variable (unset)

@@ -2054,7 +2084,7 @@ nsh>
-

2.42 URL Decode (urldecode)

+

2.43 URL Decode (urldecode)

@@ -2071,7 +2101,7 @@ urldecode [-f] <string or filepath>
-

2.43 URL Encode (urlencode)

+

2.44 URL Encode (urlencode)

@@ -2088,7 +2118,7 @@ urlencode [-f] <string or filepath>
-

2.44 Wait for Microseconds (usleep)

+

2.45 Wait for Microseconds (usleep)

@@ -2105,7 +2135,7 @@ usleep <usec>
- 2.45 Get File Via HTTP (wget) + 2.46 Get File Via HTTP (wget)
@@ -2132,7 +2162,7 @@ wget [-o <local-path>] <url>
-

2.46 Hexadecimal dump (xd)

+

2.47 Hexadecimal Dump of Memory (xd)

@@ -2271,6 +2301,11 @@ nsh>
CONFIG_NSH_DISABLE_HELP + + hexdump + CONFIG_NFILE_DESCRIPTORS > 0 + CONFIG_NSH_DISABLE_HEXDUMP + ifconfig CONFIG_NET @@ -3795,14 +3830,15 @@ mount -t vfat /dev/ram1 /tmp
  • exec
  • exec_namedapp()
  • exit
  • +
  • free
  • -
  • free
  • g_cmdmap
  • genromfs
  • get
  • Greeting
  • help
  • +
  • hexdump
  • if-then[-else]-fi
  • ifconfig
  • ifdown
  • diff --git a/Documentation/README.html b/Documentation/README.html index 7c82c3f157..61d5c43af1 100644 --- a/Documentation/README.html +++ b/Documentation/README.html @@ -246,38 +246,46 @@ | | `- README.txt | `- tools/ | `- README.txt - `- apps/ - |- README.txt - |- examples/ - | |- json/README.txt - | |- pashello/README.txt - | `- README.txt - |- graphics/ - | `- "tiff/README.txt - |- interpreters/ - | |- ficl/README.txt - | `- README.txt - |- modbus/ - | `- README.txt - |- netutils/ - | | |- discover/README.txt - | | |- ftpc/README.txt - | | |- json/README.txt - | | |- telnetd/README.txt - | `- README.txt - |- nshlib/ - | `- README.txt - |- NxWidgets/ - | `- README.txt - `- system/ - |- i2c/README.txt - |- free/README.txt - |- install/README.txt - |- poweroff/README.txt - |- ramtron/README.txt - |- sdcard/README.txt - |- sysinfo/README.txt - `- README.txt + |- apps/ + | |- README.txt + | |- examples/ + | | |- json/README.txt + | | |- pashello/README.txt + | | `- README.txt + | |- graphics/ + | | `- "tiff/README.txt + | |- interpreters/ + | | |- ficl/README.txt + | | `- README.txt + | |- modbus/ + | | `- README.txt + | |- netutils/ + | | | |- discover/README.txt + | | | |- ftpc/README.txt + | | | |- json/README.txt + | | | |- telnetd/README.txt + | | `- README.txt + | |- nshlib/ + | | `- README.txt + | |- NxWidgets/ + | | `- README.txt + | `- system/ + | |- i2c/README.txt + | |- free/README.txt + | |- install/README.txt + | |- poweroff/README.txt + | |- ramtron/README.txt + | |- sdcard/README.txt + | |- sysinfo/README.txt + | `- README.txt + `- NxWidgets + |- Doxygen + | `- README.txt + |- tools + | `- README.txt + |- UnitTests + | `- README.txt + `- README.txt diff --git a/README.txt b/README.txt index ee7f62588d..85bb7f3814 100644 --- a/README.txt +++ b/README.txt @@ -894,3 +894,12 @@ apps | `- sysinfo | `- README.txt `- README.txt + + NxWidgets + |- Doxygen + | `- README.txt + |- tools + | `- README.txt + |- UnitTests + | `- README.txt + `- README.txt diff --git a/arch/arm/src/stm32/Kconfig b/arch/arm/src/stm32/Kconfig index 047359ea07..a0e3fab0c6 100644 --- a/arch/arm/src/stm32/Kconfig +++ b/arch/arm/src/stm32/Kconfig @@ -180,7 +180,6 @@ config STM32_STM32F10XX config STM32_VALUELINE bool - select ARMV7M_CMNVECTOR config STM32_HIGHDENSITY bool diff --git a/arch/arm/src/stm32/chip/stm32_eth.h b/arch/arm/src/stm32/chip/stm32_eth.h index a4a109d016..92a229cccd 100644 --- a/arch/arm/src/stm32/chip/stm32_eth.h +++ b/arch/arm/src/stm32/chip/stm32_eth.h @@ -835,14 +835,6 @@ struct eth_rxdesc_s * Public Functions ****************************************************************************************************/ -#undef EXTERN -#if defined(__cplusplus) -#define EXTERN extern "C" -extern "C" { -#else -#define EXTERN extern -#endif - #endif /* __ASSEMBLY__ */ #endif /* STM32_NETHERNET > 0 */ #endif /* __ARCH_ARM_SRC_STM32_CHIP_STM32_ETH_H */ diff --git a/libxx/Makefile b/libxx/Makefile index a749269b09..584af4e962 100644 --- a/libxx/Makefile +++ b/libxx/Makefile @@ -46,7 +46,12 @@ CXXSRCS = libxx_cxapurevirtual.cxx libxx_eabi_atexit.cxx libxx_cxa_atexit.cxx # uClibx++ replaces them ifneq ($(CONFIG_UCLIBCXX),y) -CXXSRCS += libxx_delete.cxx libxx_deletea.cxx libxx_new.cxx libxx_newa.cxx +CXXSRCS += libxx_delete.cxx libxx_deletea.cxx libxx_new.cxx libxx_newa.cxx +CXXSRCS += libxx_stdthrow.cxx +else +ifneq ($(UCLIBCXX_EXCEPTION),y) +CXXSRCS += libxx_stdthrow.cxx +endif endif # Paths diff --git a/libxx/libxx_stdthrow.cxx b/libxx/libxx_stdthrow.cxx new file mode 100644 index 0000000000..588fae2642 --- /dev/null +++ b/libxx/libxx_stdthrow.cxx @@ -0,0 +1,74 @@ +//*************************************************************************** +// libxx/libxx_newa.cxx +// +// Copyright (C) 2012 Gregory Nutt. All rights reserved. +// Author: Petteri Aimonen ; +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions +// are met: +// +// 1. Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// 2. Redistributions in binary form must reproduce the above copyright +// notice, this list of conditions and the following disclaimer in +// the documentation and/or other materials provided with the +// distribution. +// 3. Neither the name NuttX nor the names of its contributors may be +// used to endorse or promote products derived from this software +// without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS +// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE +// COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, +// INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, +// BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS +// OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED +// AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +// LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN +// ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +// POSSIBILITY OF SUCH DAMAGE. +// +//*************************************************************************** + +//*************************************************************************** +// Included Files +//*************************************************************************** + +#include +#include + +//*************************************************************************** +// Definitions +//*************************************************************************** + +//*************************************************************************** +// Private Data +//*************************************************************************** + +//*************************************************************************** +// Public Functions +//*************************************************************************** + +namespace std +{ + void __throw_out_of_range(const char*) + { + dbg("C++: Vector .at() with argument out of range\n"); + abort(); + } + + void __throw_length_error(const char*) + { + dbg("C++: Vector resize to excessive length\n"); + abort(); + } + + void __throw_bad_alloc() + { + dbg("C++: Bad allocation\n"); + abort(); + } +}