diff options
author | patacongo <patacongo@42af7a65-404d-4744-a932-0658087f49c3> | 2010-04-14 01:17:42 +0000 |
---|---|---|
committer | patacongo <patacongo@42af7a65-404d-4744-a932-0658087f49c3> | 2010-04-14 01:17:42 +0000 |
commit | b3de9210c819286206ac649886918c713f977be4 (patch) | |
tree | dedf83769730aa99b4cff01ab67c902902e6f816 /nuttx | |
parent | da731966b0ad8969cf1a8a33eb3651bd76287157 (diff) | |
download | px4-nuttx-b3de9210c819286206ac649886918c713f977be4.tar.gz px4-nuttx-b3de9210c819286206ac649886918c713f977be4.tar.bz2 px4-nuttx-b3de9210c819286206ac649886918c713f977be4.zip |
Add a README
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@2592 42af7a65-404d-4744-a932-0658087f49c3
Diffstat (limited to 'nuttx')
-rwxr-xr-x | nuttx/Documentation/README.html | 8 | ||||
-rwxr-xr-x | nuttx/README.txt | 8 | ||||
-rwxr-xr-x | nuttx/tools/README.txt | 112 |
3 files changed, 122 insertions, 6 deletions
diff --git a/nuttx/Documentation/README.html b/nuttx/Documentation/README.html index 686ed824b..885deaccf 100755 --- a/nuttx/Documentation/README.html +++ b/nuttx/Documentation/README.html @@ -143,6 +143,8 @@ | `- <a href="graphics/README.txt"><b><i>README.txt</i></b></a> |- libxx/ | `- <a href="libxx/README.txt"><b><i>README.txt</i></b></a> - `- netutils/ - |- <a href="netutils/telnetd/README.txt">telnetd/README.txt</a> - `- <a href="netutils/README"><b><i>README</a></a> + |- netutils/ + | |- <a href="netutils/telnetd/README.txt">telnetd/README.txt</a> + | `- <a href="netutils/README"><b><i>README</i></b></a> + `- tools/ + `- <a href="tols/README.txt"><b><i>README.txt</i></b></a>
\ No newline at end of file diff --git a/nuttx/README.txt b/nuttx/README.txt index 3222bad92..4c2fb772e 100755 --- a/nuttx/README.txt +++ b/nuttx/README.txt @@ -234,6 +234,8 @@ Below is a guide to the available README files in the NuttX source tree: | `- README.txt |- libxx/ | `- README.txt - `- netutils/ - |- telnetd/README.txt - `- README + |- netutils/ + | |- telnetd/README.txt + | `- README + `- tools/ + `- README.txt diff --git a/nuttx/tools/README.txt b/nuttx/tools/README.txt new file mode 100755 index 000000000..ea13db9a0 --- /dev/null +++ b/nuttx/tools/README.txt @@ -0,0 +1,112 @@ +tools/README.txt
+^^^^^^^^^^^^^^^^
+
+This README file addresses the contents of the NuttX tools/ directory.
+
+The tools/ directory contains miscellaneous scripts and host C programs
+that are necessary parts of the the NuttX build system. These files
+include:
+
+README.txt
+
+ This file
+
+configure.sh
+
+ This is a bash script that is used to configure NuttX for a given
+ target board. See configs/README.txt or Documentation/NuttxPortingGuide.html
+ for a description of how to configure NuttX with this script.
+
+mkconfig.c
+
+ This is C file that is used to build mkconfig program. The mkconfig
+ program is used during the intial NuttX build.
+
+ When you configure NuttX, you will copy a configuration file called .config
+ into the top level NuttX directory (See configs/README.txt or
+ Documentation/NuttxPortingGuide.html). The first time you make NuttX,
+ the top-level makefile will build the mkconfig executable from mkconfig.c
+ (using Makefile.mkconfig). The top-level Makefile will then execute the
+ mkconfig program to convert the .config file in the top level directory
+ into include/nuttx/config.h. config.h is a another version of the
+ NuttX configuration that can be included by C files.
+
+Makefile.mkconfig
+
+ This is the makefile that is used to make the mkconfig program from
+ the mkconfig.c C file.
+
+mkdeps.sh
+mknulldeps.sh
+
+ NuttX uses the GCC compilers capabilities to create Makefile dependencies.
+ The bash script mkdeps.sh is used to run GCC in order to create the
+ dependencies. If a NuttX configuration uses the GCC toolchain, its Make.defs
+ file (see configs/README.txt) will include a line like:
+
+ MKDEP = $(TOPDIR)/tools/mkdeps.sh
+
+ If the NuttX configuration does not use a GCC compatible toolchain, then
+ it cannot use the dependencies and instead it uses mknulldeps.sh:
+
+ MKDEP = $(TOPDIR)/tools/mknulldeps.sh
+
+ The mknulldeps.sh is a stub script that does essentially nothing.
+
+
+incdir.sh
+
+ Different compilers have different conventions for specifying lists
+ of include file paths on the the compiler command line. This bash
+ script allows the build system to create include file paths without
+ concern for the particular compiler in use.
+
+link.sh
+winlink.sh
+unlink.sh
+
+ Different file system have different capabilities for symbolic links.
+ Some windows file systems have no native support for symbolic links.
+ Cygwin running under windows has special links built in that work with
+ all cygwin tools. However, they do not work when Windows native tools
+ are used with cygwin. In that case something different must be done.
+
+ If you are building under Linux or under cygwin with a cygwin tool
+ chain, then your Make.defs file may have definitions like the
+ following:
+
+ DIRLINK = $(TOPDIR)/tools/link.sh
+ DIRUNLINK = (TOPDIR)/tools/unlink.sh
+
+ The first definition is not always present because link.sh is the
+ default. link.sh is a bash script that performs a normal, Linux-style
+ symbolic link; unlink.sh is a do-it-all unlinking script.
+
+ But if you are building under cygwin using a Windows native toolchain,
+ then you will need something like the following in you Make.defs file:
+
+ DIRLINK = $(TOPDIR)/tools/winlink.sh
+ DIRUNLINK = (TOPDIR)/tools/unlink.sh
+
+ winlink.sh will copy the whole directory instead of linking it.
+
+ NOTE: I have been told that some NuttX users have been able to build
+ successfully using the GnuWin32 tools and modifying the link.sh
+ script so that it uses the NTFS mklink command. But I have never
+ tried that
+
+mkimage.sh
+
+ The creates a downloadable image as needed with the rrload bootloader.
+
+indent.sh
+
+ This script can be used to indent .c and .h files in a manner similar
+ to my coding NuttX coding style. It doesn't do a really good job,
+ however (see the comments at the top of the indent.sh file).
+
+zipme.sh
+
+ I use this script to create the nutt-xx.yy.tar.gz tarballs for
+ release on SourceForge. It is handy because it also does the
+ kind of clean that you need to do to make a clean code release.
|