summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--nuttx/arch/avr/src/avr32/Toolchain.defs5
-rw-r--r--nuttx/arch/z80/src/ez80/Toolchain.defs47
-rw-r--r--nuttx/arch/z80/src/z8/Toolchain.defs47
-rw-r--r--nuttx/arch/z80/src/z80/Toolchain.defs75
-rw-r--r--nuttx/configs/xtrs/README.txt22
-rw-r--r--nuttx/configs/z80sim/README.txt20
6 files changed, 215 insertions, 1 deletions
diff --git a/nuttx/arch/avr/src/avr32/Toolchain.defs b/nuttx/arch/avr/src/avr32/Toolchain.defs
index 6a4b1234e..b45abadc1 100644
--- a/nuttx/arch/avr/src/avr32/Toolchain.defs
+++ b/nuttx/arch/avr/src/avr32/Toolchain.defs
@@ -39,6 +39,11 @@
# Since all of the supported toolchains are variants of the Atmel-patched
# GCC, the only interesting question to answer here is whether or not
# the build is hosted on Windows, and how to override the configuration.
+#
+# NOTE: There is a logic error in the following: CONFIG_HOST_WINDOWS means
+# that we are operating on a Windows platform. But in the case where we
+# have an AVR32 toolchain built under Cygwin, the correct setting would be
+# GNU, not AVRTOOLSW.
#
CROSSDEV = avr32-
diff --git a/nuttx/arch/z80/src/ez80/Toolchain.defs b/nuttx/arch/z80/src/ez80/Toolchain.defs
new file mode 100644
index 000000000..483bc84e7
--- /dev/null
+++ b/nuttx/arch/z80/src/ez80/Toolchain.defs
@@ -0,0 +1,47 @@
+############################################################################
+# arch/z80/src/ez80/Toolchain.defs
+#
+# Copyright (C) 2012 Gregory Nutt. All rights reserved.
+# Author: Gregory Nutt <gnutt@nuttx.org>
+#
+# 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.
+#
+############################################################################
+
+# Setup for the selected toolchain
+
+#
+# The ZiLOG ZDS-II Windows toolchain is the only toolchain available for
+# the ez80.
+#
+
+CONFIG_EZ80_TOOLCHAIN ?= ZDSII
+
+ifneq ($(CONFIG_WINDOWS_NATIVE),y)
+ WINTOOL = y
+endif
diff --git a/nuttx/arch/z80/src/z8/Toolchain.defs b/nuttx/arch/z80/src/z8/Toolchain.defs
new file mode 100644
index 000000000..a5f139eb5
--- /dev/null
+++ b/nuttx/arch/z80/src/z8/Toolchain.defs
@@ -0,0 +1,47 @@
+############################################################################
+# arch/z80/src/z8/Toolchain.defs
+#
+# Copyright (C) 2012 Gregory Nutt. All rights reserved.
+# Author: Gregory Nutt <gnutt@nuttx.org>
+#
+# 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.
+#
+############################################################################
+
+# Setup for the selected toolchain
+
+#
+# The ZiLOG ZDS-II Windows toolchain is the only toolchain available for
+# the z8.
+#
+
+CONFIG_Z8_TOOLCHAIN ?= ZDSII
+
+ifneq ($(CONFIG_WINDOWS_NATIVE),y)
+ WINTOOL = y
+endif
diff --git a/nuttx/arch/z80/src/z80/Toolchain.defs b/nuttx/arch/z80/src/z80/Toolchain.defs
new file mode 100644
index 000000000..9c262f593
--- /dev/null
+++ b/nuttx/arch/z80/src/z80/Toolchain.defs
@@ -0,0 +1,75 @@
+############################################################################
+# arch/z80/src/z80/Toolchain.defs
+#
+# Copyright (C) 2012 Gregory Nutt. All rights reserved.
+# Author: Gregory Nutt <gnutt@nuttx.org>
+#
+# 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.
+#
+############################################################################
+
+# Setup for the selected toolchain
+
+#
+# SDCC is currently the only z80 toolchain supported. See
+# http://sdcc.sourceforge.net/. Source and pre-built SDCC binaries can be
+# downloaded from the SDCC SourceForge site:
+# http://sourceforge.net/projects/sdcc/files/. Pre-built binaries are
+# available for Linux, MAC OSX, and for Win32. In addition, SDCC can be
+# built to run on Windows as a POSIX toolchain. The various SDCC options are
+# selected in the NuttX configuration with:
+#
+# CONFIG_SDCC_POSIX=y : SDCC for Linux, MAC OSX or Cygwin
+# CONFIG_SDCC_WINDOWS=y : SDCC for Win32
+#
+
+ifeq ($(filter y, \
+ $(CONFIG_SDCC_POSIX) \
+ ),y)
+ CONFIG_Z80_TOOLCHAIN ?= POSIX
+endif
+ifeq ($(filter y, \
+ $(CONFIG_SDCC_WINDOWS) \
+ ),y)
+ CONFIG_Z80_TOOLCHAIN ?= WINDOWS
+endif
+
+# SDCC toolchain under Linux, MAC OSX or Cygwin
+
+ifeq ($(CONFIG_Z80_TOOLCHAIN),POSIX)
+endif
+
+# SDCC toolchain under Windows/Cygwin
+
+ifeq ($(CONFIG_AVR_TOOLCHAIN),WINAVR)
+ ifneq ($(CONFIG_WINDOWS_NATIVE),y)
+ WINTOOL = y
+ endif
+endif
+
+
diff --git a/nuttx/configs/xtrs/README.txt b/nuttx/configs/xtrs/README.txt
index ecd44e4e2..08f3fbea1 100644
--- a/nuttx/configs/xtrs/README.txt
+++ b/nuttx/configs/xtrs/README.txt
@@ -12,6 +12,7 @@ Contents
o Getting a TRS80 emulator and DOS disks
o Loading an executable into xtrs
o Configuring NuttX
+ o SDCC
o Building the SDCC toolchain
o SDCC Update
o Newer SDCC Versions
@@ -47,6 +48,7 @@ Configuring NuttX
^^^^^^^^^^^^^^^^^
ostest
+
This configuration performs a simple, minimal OS test using
examples/ostest. This can be configurated as follows:
@@ -56,6 +58,7 @@ Configuring NuttX
. ./setenv.sh
nsh
+
This configuration file builds NSH (examples/nsh). This
configuration is not functional due to issues with use of the
simulated serial driver (see the TODO list).
@@ -67,7 +70,8 @@ Configuring NuttX
cd -
. ./setenv.sh
- pashello
+ pashello
+
Configures to use examples/pashello for execution from FLASH
See examples/README.txt for information about pashello.
@@ -81,9 +85,25 @@ Configuring NuttX
cd -
. ./setenv.sh
+SDCC
+^^^^
+
+These z80 configurations all use the SDCC toolchain (http://sdcc.sourceforge.net/).
+Source and pre-built SDCC binaries can be downloaded from the SDCC SourceForge
+site: http://sourceforge.net/projects/sdcc/files/ . Pre-built binaries are
+available for Linux, MAC OSX, and for Win32. Various SDCC options can be
+selected with:
+
+ CONFIG_SDCC_POSIX=y : SDCC for Linux, MAC OSX or Cygwin (see below)
+ CONFIG_SDCC_WINDOWS=y : SDCC for Win32
+
Building the SDCC toolchain
^^^^^^^^^^^^^^^^^^^^^^^^^^^
+You may also want to build your own SDCC toolchain. You might want to do this,
+for example, if you are running under Cygwin and want a Cygwin compatible
+SDCC toolchain.
+
The SDCC toolchain is built with the standard configure/make/make install
sequence. However, some special actions are required to generate libraries
compatible with this build. First start with the usual steps
diff --git a/nuttx/configs/z80sim/README.txt b/nuttx/configs/z80sim/README.txt
index 0dcb1b37d..1d5ae7116 100644
--- a/nuttx/configs/z80sim/README.txt
+++ b/nuttx/configs/z80sim/README.txt
@@ -12,6 +12,7 @@ Contents
^^^^^^^^
o Configuring NuttX
+ o SDCC
o Building the SDCC toolchain
o SDCC Update
o Newer SDCC Versions
@@ -20,6 +21,7 @@ Configuring NuttX
^^^^^^^^^^^^^^^^^
ostest
+
This configuration performs a simple, minimal OS test using
examples/ostest. This can be configurated as follows:
@@ -29,6 +31,7 @@ Configuring NuttX
. ./setenv.sh
nsh
+
This configuration file builds NSH (examples/nsh). This
configuration is not functional due to issues with use of the
simulated serial driver (see the TODO list).
@@ -41,6 +44,7 @@ Configuring NuttX
. ./setenv.sh
pashello
+
Configures to use examples/pashello for execution from FLASH
See examples/README.txt for information about pashello.
@@ -54,9 +58,25 @@ Configuring NuttX
cd -
. ./setenv.sh
+SDCC
+^^^^
+
+These z80 configurations all use the SDCC toolchain (http://sdcc.sourceforge.net/).
+Source and pre-built SDCC binaries can be downloaded from the SDCC SourceForge
+site: http://sourceforge.net/projects/sdcc/files/ . Pre-built binaries are
+available for Linux, MAC OSX, and for Win32. Various SDCC options can be
+selected with:
+
+ CONFIG_SDCC_POSIX=y : SDCC for Linux, MAC OSX or Cygwin (see below)
+ CONFIG_SDCC_WINDOWS=y : SDCC for Win32
+
Building the SDCC toolchain
^^^^^^^^^^^^^^^^^^^^^^^^^^^
+You may also want to build your own SDCC toolchain. You might want to do this,
+for example, if you are running under Cygwin and want a Cygwin compatible
+SDCC toolchain.
+
The SDCC toolchain is built with the standard configure/make/make install
sequence. However, some special actions are required to generate libraries
compatible with this build. First start with the usual steps