mirror of
https://github.com/PX4/PX4-Autopilot.git
synced 2026-06-02 03:36:48 +08:00
Use kconfig- prefix to avoid tool name conflicts (from Jose Pablo Carballo)
git-svn-id: http://svn.code.sf.net/p/nuttx/code/trunk@5496 42af7a65-404d-4744-a932-0658087f49c3
This commit is contained in:
+49
-14
@@ -1,8 +1,18 @@
|
|||||||
misc/tools/README.txt
|
misc/tools/README.txt
|
||||||
=====================
|
=====================
|
||||||
|
|
||||||
|
Contents:
|
||||||
|
|
||||||
|
o genromfs-0.5.2.tar.gz
|
||||||
|
o kconfig-frontends
|
||||||
|
- --program-prefix=
|
||||||
|
- kconfig-frontends-3.3.0-1-libintl.patch
|
||||||
|
- kconfig-macos.patch
|
||||||
|
- kconfig-macos.patch
|
||||||
|
- kconfig-frontends for Windows
|
||||||
|
|
||||||
genromfs-0.5.2.tar.gz
|
genromfs-0.5.2.tar.gz
|
||||||
---------------------
|
=====================
|
||||||
|
|
||||||
This is a snapshot of the genromfs tarball taken from
|
This is a snapshot of the genromfs tarball taken from
|
||||||
http://sourceforge.net/projects/romfs/. This snapshot is provided to
|
http://sourceforge.net/projects/romfs/. This snapshot is provided to
|
||||||
@@ -12,34 +22,60 @@ genromfs-0.5.2.tar.gz
|
|||||||
from the buildroot.
|
from the buildroot.
|
||||||
|
|
||||||
kconfig-frontends
|
kconfig-frontends
|
||||||
-----------------
|
=================
|
||||||
|
|
||||||
This is a snapshot of the kconfig-frontends version 3.6.0 tarball taken
|
This is a snapshot of the kconfig-frontends version 3.7.0 tarball taken
|
||||||
from http://ymorin.is-a-geek.org/projects/kconfig-frontends.
|
from http://ymorin.is-a-geek.org/projects/kconfig-frontends.
|
||||||
|
|
||||||
General build instructions:
|
General build instructions:
|
||||||
|
|
||||||
cd kconfig-frontends
|
cd kconfig-frontends
|
||||||
./configure --program-prefix=
|
./configure
|
||||||
make
|
make
|
||||||
make install
|
make install
|
||||||
|
|
||||||
If you do not specify --program-prefix= in the configuration, then the
|
To suppress the nconf and the graphical interfaces which are not used by
|
||||||
current kconfig-frontends code will add the prefix kconfig- to the generated
|
NuttX:
|
||||||
tools.
|
|
||||||
|
|
||||||
To suppress the graphical interfaces:
|
./configure --disable-gconf --disable-qconf
|
||||||
|
|
||||||
./configure --disable-gconf --disable-qconf --program-prefix=
|
|
||||||
make
|
make
|
||||||
make install
|
make install
|
||||||
|
|
||||||
|
To suppress the graphical interfaces, use static libraries, and disable
|
||||||
|
creation of other utilities:
|
||||||
|
|
||||||
|
./configure --disable-shared --enable-static --disable-gconf --disable-qconf --disable-nconf --disable-utils
|
||||||
|
make
|
||||||
|
make install
|
||||||
|
|
||||||
|
You may require root privileges to 'make install'.
|
||||||
|
|
||||||
|
--program-prefix=
|
||||||
|
-----------------
|
||||||
|
|
||||||
|
Beginning somwhere between version 3.3.0 and 3.6.0, the prefix was added
|
||||||
|
to the kconfig-frontends tools. The default prefix is kconfig-. So,
|
||||||
|
after 3.3.0, conf becomes kconfig-conf, mconf becomes kconfig-mconf, etc.
|
||||||
|
All of the NuttX documentation, Makefiles, scripts have been updated to
|
||||||
|
used this default prefix.
|
||||||
|
|
||||||
|
This introduces an incompatibility with the 3.3.0 version. In the 3.6.0
|
||||||
|
timeframe, the configure argument --program-prefix= was added to
|
||||||
|
eliminated the kconfig- prefix. This, however, caused problems when we
|
||||||
|
got to the 3.7.0 version which generates a binary called kconfig-diff
|
||||||
|
(installed at /usr/local/bin). Without the prefix, may conflict with
|
||||||
|
the standard diff utility (at /bin), depending upon how your PATH
|
||||||
|
variable is configured. Because of this, we decided to "bite the bullet"
|
||||||
|
and use the standard prefix at 3.7.0 and later.
|
||||||
|
|
||||||
|
This problem could probably also be avoided using --disable-utils.
|
||||||
|
|
||||||
kconfig-frontends-3.3.0-1-libintl.patch
|
kconfig-frontends-3.3.0-1-libintl.patch
|
||||||
---------------------------------------
|
---------------------------------------
|
||||||
|
|
||||||
The above build instructions did not work for me under my Cygwin
|
The above build instructions did not work for me under my Cygwin
|
||||||
installation with kconfig-frontends-3.3.0. This patch is a awful hack
|
installation with kconfig-frontends-3.3.0. This patch is a awful hack
|
||||||
but will successfully build 'mconf' under Cygwin.
|
but will successfully build 'kconfig-mconf' under Cygwin.
|
||||||
|
|
||||||
cat kconfig-frontends-3.3.0-1-libintl.patch | patch -p0
|
cat kconfig-frontends-3.3.0-1-libintl.patch | patch -p0
|
||||||
cd kconfig-frontends-3.3.0-1
|
cd kconfig-frontends-3.3.0-1
|
||||||
@@ -49,8 +85,7 @@ kconfig-frontends-3.3.0-1-libintl.patch
|
|||||||
|
|
||||||
See: http://ymorin.is-a-geek.org/hg/kconfig-frontends/file/tip/docs/known-issues.txt
|
See: http://ymorin.is-a-geek.org/hg/kconfig-frontends/file/tip/docs/known-issues.txt
|
||||||
|
|
||||||
Update: According to the release notes, version 3.6.0 (and above)
|
Update: Version 3.6.0 (and above) will build on Cygwin with no patches:
|
||||||
will build on Cygwin with no patches:
|
|
||||||
|
|
||||||
http://ymorin.is-a-geek.org/download/kconfig-frontends/
|
http://ymorin.is-a-geek.org/download/kconfig-frontends/
|
||||||
|
|
||||||
@@ -66,7 +101,7 @@ kconfig-macos.patch
|
|||||||
make install
|
make install
|
||||||
|
|
||||||
kconfig-frontends for Windows
|
kconfig-frontends for Windows
|
||||||
=============================
|
-----------------------------
|
||||||
|
|
||||||
From http://tech.groups.yahoo.com/group/nuttx/message/2900:
|
From http://tech.groups.yahoo.com/group/nuttx/message/2900:
|
||||||
|
|
||||||
|
|||||||
+3
-3
@@ -642,13 +642,13 @@ pass2dep: context tools/mkdeps$(HOSTEXEEXT)
|
|||||||
# misc/tools/README.txt for additional information.
|
# misc/tools/README.txt for additional information.
|
||||||
|
|
||||||
config:
|
config:
|
||||||
$(Q) APPSDIR=${CONFIG_APPS_DIR} conf Kconfig
|
$(Q) APPSDIR=${CONFIG_APPS_DIR} kconfig-conf Kconfig
|
||||||
|
|
||||||
oldconfig:
|
oldconfig:
|
||||||
$(Q) APPSDIR=${CONFIG_APPS_DIR} conf --oldconfig Kconfig
|
$(Q) APPSDIR=${CONFIG_APPS_DIR} kconfig-conf --oldconfig Kconfig
|
||||||
|
|
||||||
menuconfig:
|
menuconfig:
|
||||||
$(Q) APPSDIR=${CONFIG_APPS_DIR} mconf Kconfig
|
$(Q) APPSDIR=${CONFIG_APPS_DIR} kconfig-mconf Kconfig
|
||||||
|
|
||||||
# export
|
# export
|
||||||
#
|
#
|
||||||
|
|||||||
+3
-3
@@ -651,13 +651,13 @@ configenv:
|
|||||||
$(Q) set APPSDIR=${CONFIG_APPS_DIR}
|
$(Q) set APPSDIR=${CONFIG_APPS_DIR}
|
||||||
|
|
||||||
config: configenv
|
config: configenv
|
||||||
$(Q) conf Kconfig
|
$(Q) kconfig-conf Kconfig
|
||||||
|
|
||||||
oldconfig: configenv
|
oldconfig: configenv
|
||||||
$(Q) conf --oldconfig Kconfig
|
$(Q) kconfig-conf --oldconfig Kconfig
|
||||||
|
|
||||||
menuconfig: configenv
|
menuconfig: configenv
|
||||||
$(Q) mconf Kconfig
|
$(Q) kconfig-mconf Kconfig
|
||||||
|
|
||||||
# export
|
# export
|
||||||
#
|
#
|
||||||
|
|||||||
+10
-10
@@ -243,8 +243,8 @@ additional file to the directory the NuttX application package (APPSDIR)):
|
|||||||
The appconfig file describes the applications that need to be
|
The appconfig file describes the applications that need to be
|
||||||
built in the appliction directory (APPSDIR). Not all configurations
|
built in the appliction directory (APPSDIR). Not all configurations
|
||||||
have an appconfig file. This file is deprecated and will not be
|
have an appconfig file. This file is deprecated and will not be
|
||||||
used with new defconfig files produced with the mconf configuration
|
used with new defconfig files produced with the kconfig-mconf
|
||||||
tool.
|
configuration tool.
|
||||||
|
|
||||||
General information about configuring NuttX can be found in:
|
General information about configuring NuttX can be found in:
|
||||||
|
|
||||||
@@ -439,14 +439,14 @@ NuttX Configuration Tool under DOS
|
|||||||
And of course, after you use the configuration tool you need to
|
And of course, after you use the configuration tool you need to
|
||||||
restore CONFIG_WINDOWS_NATIVE=y and the correct CONFIG_APPS_DIR.
|
restore CONFIG_WINDOWS_NATIVE=y and the correct CONFIG_APPS_DIR.
|
||||||
|
|
||||||
2) You can, with some effort, run the the Cygwin mconf tool directly
|
2) You can, with some effort, run the the Cygwin kconfig-mconf tool
|
||||||
in the CMD.exe shell. In this case, you do not have to modify the
|
directly in the CMD.exe shell. In this case, you do not have to
|
||||||
.config file, but there are other complexities:
|
modify the .config file, but there are other complexities:
|
||||||
|
|
||||||
a. You need to temporarily set the Cgywin directories in the PATH
|
a. You need to temporarily set the Cgywin directories in the PATH
|
||||||
variable then run mconf manually like:
|
variable then run kconfig-mconf manually like:
|
||||||
|
|
||||||
mconf Kconfig
|
kconfig-mconf Kconfig
|
||||||
|
|
||||||
There is a Windows bacht file at tools/kconfig.bat that automates
|
There is a Windows bacht file at tools/kconfig.bat that automates
|
||||||
these steps:
|
these steps:
|
||||||
@@ -454,9 +454,9 @@ NuttX Configuration Tool under DOS
|
|||||||
tools/kconfig menuconfig
|
tools/kconfig menuconfig
|
||||||
|
|
||||||
b. There is an issue with accessing DOS environment variables from
|
b. There is an issue with accessing DOS environment variables from
|
||||||
the Cygwin mconf running in the CMD.exe shell. The following
|
the Cygwin kconfig-mconf running in the CMD.exe shell. The
|
||||||
change to the top-level Kconfig file seems to work around these
|
following change to the top-level Kconfig file seems to work
|
||||||
problems:
|
around these problems:
|
||||||
|
|
||||||
config APPSDIR
|
config APPSDIR
|
||||||
string
|
string
|
||||||
|
|||||||
@@ -60,7 +60,7 @@ config LM3S_DFU
|
|||||||
bool "DFU"
|
bool "DFU"
|
||||||
default y
|
default y
|
||||||
|
|
||||||
menu "Select LM3S Peripheral Support"
|
menu "Stellaris Peripheral Support"
|
||||||
|
|
||||||
config LM3S_UART0
|
config LM3S_UART0
|
||||||
bool "UART0"
|
bool "UART0"
|
||||||
@@ -86,10 +86,10 @@ config LM3S_UART2
|
|||||||
default n
|
default n
|
||||||
|
|
||||||
config LM3S_ETHERNET
|
config LM3S_ETHERNET
|
||||||
bool "LM3S Ethernet"
|
bool "Stellaris Ethernet"
|
||||||
default n
|
default n
|
||||||
---help---
|
---help---
|
||||||
This must be set (along with NET) to build the LM3S Ethernet driver.
|
This must be set (along with NET) to build the Stellaris Ethernet driver.
|
||||||
|
|
||||||
endmenu
|
endmenu
|
||||||
|
|
||||||
@@ -134,7 +134,7 @@ config LM3S_DISABLE_GPIOJ_IRQS
|
|||||||
endmenu
|
endmenu
|
||||||
|
|
||||||
if LM3S_ETHERNET
|
if LM3S_ETHERNET
|
||||||
menu "LM3S Ethernet Configuration"
|
menu "Stellaris Ethernet Configuration"
|
||||||
|
|
||||||
config LM3S_ETHLEDS
|
config LM3S_ETHLEDS
|
||||||
bool "Ethernet LEDs"
|
bool "Ethernet LEDs"
|
||||||
@@ -199,7 +199,7 @@ endmenu
|
|||||||
endif
|
endif
|
||||||
|
|
||||||
if !SSI0_DISABLE || !SSI1_DISABLE
|
if !SSI0_DISABLE || !SSI1_DISABLE
|
||||||
menu "LM3S SSI Configuration"
|
menu "Stellaris SSI Configuration"
|
||||||
|
|
||||||
config SSI_POLLWAIT
|
config SSI_POLLWAIT
|
||||||
bool "Poll Wait (No-Interrupt) Mode"
|
bool "Poll Wait (No-Interrupt) Mode"
|
||||||
|
|||||||
@@ -187,7 +187,7 @@ Atmel AVRISP mkII Connection
|
|||||||
Toolchains
|
Toolchains
|
||||||
^^^^^^^^^^
|
^^^^^^^^^^
|
||||||
|
|
||||||
The toolchain may be selected using the mconf tool (via 'make menuconfig'),
|
The toolchain may be selected using the kconfig-mconf tool (via 'make menuconfig'),
|
||||||
by editing the existing configuration file (defconfig), or by overriding
|
by editing the existing configuration file (defconfig), or by overriding
|
||||||
the toolchain on the make commandline with CONFIG_AVR_TOOLCHAIN=<toolchain>.
|
the toolchain on the make commandline with CONFIG_AVR_TOOLCHAIN=<toolchain>.
|
||||||
|
|
||||||
|
|||||||
@@ -53,7 +53,7 @@ GNU Toolchain Options
|
|||||||
If you are not using CONFIG_LPC31_BUILDROOT, then you may also have to modify
|
If you are not using CONFIG_LPC31_BUILDROOT, then you may also have to modify
|
||||||
the PATH in the setenv.h file if your make cannot find the tools.
|
the PATH in the setenv.h file if your make cannot find the tools.
|
||||||
|
|
||||||
The toolchain may also be set using the mconf utility (make menuconfig) or by
|
The toolchain may also be set using the kconfig-mconf utility (make menuconfig) or by
|
||||||
passing CONFIG_ARM_TOOLCHAIN=<toolchain> to make, where <toolchain> is one
|
passing CONFIG_ARM_TOOLCHAIN=<toolchain> to make, where <toolchain> is one
|
||||||
of CODESOURCERYW, CODESOURCERYL, DEVKITARM, BUILDROOT or GNU_EABI as described
|
of CODESOURCERYW, CODESOURCERYL, DEVKITARM, BUILDROOT or GNU_EABI as described
|
||||||
above.
|
above.
|
||||||
|
|||||||
@@ -52,8 +52,8 @@ GNU Toolchain Options
|
|||||||
If you are not using CONFIG_LPC31_BUILDROOT, then you may also have to modify
|
If you are not using CONFIG_LPC31_BUILDROOT, then you may also have to modify
|
||||||
the PATH in the setenv.h file if your make cannot find the tools.
|
the PATH in the setenv.h file if your make cannot find the tools.
|
||||||
|
|
||||||
The toolchain may also be set using the mconf utility (make menuconfig) or by
|
The toolchain may also be set using the kconfig-mconf utility (make menuconfig)
|
||||||
passing CONFIG_ARM_TOOLCHAIN=<toolchain> to make, where <toolchain> is one
|
or by passing CONFIG_ARM_TOOLCHAIN=<toolchain> to make, where <toolchain> is one
|
||||||
of CODESOURCERYW, CODESOURCERYL, DEVKITARM, BUILDROOT or GNU_EABI as described
|
of CODESOURCERYW, CODESOURCERYL, DEVKITARM, BUILDROOT or GNU_EABI as described
|
||||||
above.
|
above.
|
||||||
|
|
||||||
|
|||||||
@@ -88,8 +88,8 @@ available:
|
|||||||
1. This configuration uses the mconf-based configuration tool. To
|
1. This configuration uses the mconf-based configuration tool. To
|
||||||
change this configuration using that tool, you should:
|
change this configuration using that tool, you should:
|
||||||
|
|
||||||
a. Build and install the mconf tool. See nuttx/README.txt and
|
a. Build and install the kconfig-mconf tool. See nuttx/README.txt
|
||||||
misc/tools/
|
and misc/tools/
|
||||||
|
|
||||||
b. Execute 'make menuconfig' in nuttx/ in order to start the
|
b. Execute 'make menuconfig' in nuttx/ in order to start the
|
||||||
reconfiguration process.
|
reconfiguration process.
|
||||||
|
|||||||
@@ -102,8 +102,8 @@ ostest
|
|||||||
1. This configuration uses the mconf-based configuration tool. To
|
1. This configuration uses the mconf-based configuration tool. To
|
||||||
change this configuration using that tool, you should:
|
change this configuration using that tool, you should:
|
||||||
|
|
||||||
a. Build and install the mconf tool. See nuttx/README.txt and
|
a. Build and install the kconfig-mconf tool. See nuttx/README.txt
|
||||||
misc/tools/
|
and misc/tools/
|
||||||
|
|
||||||
b. Execute 'make menuconfig' in nuttx/ in order to start the
|
b. Execute 'make menuconfig' in nuttx/ in order to start the
|
||||||
reconfiguration process.
|
reconfiguration process.
|
||||||
|
|||||||
@@ -826,9 +826,9 @@ Where <subdir> is one of the following:
|
|||||||
contains support for some built-in applications that can be enabled by making
|
contains support for some built-in applications that can be enabled by making
|
||||||
some additional minor change to the configuration file.
|
some additional minor change to the configuration file.
|
||||||
|
|
||||||
Reconfiguring: This configuration uses to the mconf configuration tool to control
|
Reconfiguring: This configuration uses to the kconfig-mconf configuration tool
|
||||||
the configuration. See the section entitled "NuttX Configuration Tool"
|
to control the configuration. See the section entitled "NuttX Configuration
|
||||||
in the top-level README.txt file.
|
Tool" in the top-level README.txt file.
|
||||||
|
|
||||||
Start Delays: If no SD card is present in the slot, or if the network is not
|
Start Delays: If no SD card is present in the slot, or if the network is not
|
||||||
connected, then there will be long start-up delays before you get the NSH
|
connected, then there will be long start-up delays before you get the NSH
|
||||||
@@ -842,7 +842,7 @@ Where <subdir> is one of the following:
|
|||||||
verified. The ENC28J60 network is not yet functional. Networking is
|
verified. The ENC28J60 network is not yet functional. Networking is
|
||||||
enabled by default in this configuration for testing purposes. To use this
|
enabled by default in this configuration for testing purposes. To use this
|
||||||
configuration, the network must currently be disabled. To do this using
|
configuration, the network must currently be disabled. To do this using
|
||||||
the mconf configuration tool:
|
the kconfig-mconf configuration tool:
|
||||||
|
|
||||||
> make menuconfig
|
> make menuconfig
|
||||||
|
|
||||||
|
|||||||
@@ -482,8 +482,8 @@ Where <subdir> is one of the following:
|
|||||||
1. This configuration uses the mconf-based configuration tool. To
|
1. This configuration uses the mconf-based configuration tool. To
|
||||||
change this configuration using that tool, you should:
|
change this configuration using that tool, you should:
|
||||||
|
|
||||||
a. Build and install the mconf tool. See nuttx/README.txt and
|
a. Build and install the kconfig-mconf tool. See nuttx/README.txt
|
||||||
misc/tools/
|
and misc/tools/
|
||||||
|
|
||||||
b. Execute 'make menuconfig' in nuttx/ in order to start the
|
b. Execute 'make menuconfig' in nuttx/ in order to start the
|
||||||
reconfiguration process.
|
reconfiguration process.
|
||||||
@@ -512,8 +512,8 @@ Where <subdir> is one of the following:
|
|||||||
1. This configuration uses the mconf-based configuration tool. To
|
1. This configuration uses the mconf-based configuration tool. To
|
||||||
change this configuration using that tool, you should:
|
change this configuration using that tool, you should:
|
||||||
|
|
||||||
a. Build and install the mconf tool. See nuttx/README.txt and
|
a. Build and install the kconfig-mconf tool. See nuttx/README.txt
|
||||||
misc/tools/
|
and misc/tools/
|
||||||
|
|
||||||
b. Execute 'make menuconfig' in nuttx/ in order to start the
|
b. Execute 'make menuconfig' in nuttx/ in order to start the
|
||||||
reconfiguration process.
|
reconfiguration process.
|
||||||
@@ -532,8 +532,8 @@ Where <subdir> is one of the following:
|
|||||||
1. This configuration uses the mconf-based configuration tool. To
|
1. This configuration uses the mconf-based configuration tool. To
|
||||||
change this configuration using that tool, you should:
|
change this configuration using that tool, you should:
|
||||||
|
|
||||||
a. Build and install the mconf tool. See nuttx/README.txt and
|
a. Build and install the kconfig-mconf tool. See nuttx/README.txt
|
||||||
misc/tools/
|
and misc/tools/
|
||||||
|
|
||||||
b. Execute 'make menuconfig' in nuttx/ in order to start the
|
b. Execute 'make menuconfig' in nuttx/ in order to start the
|
||||||
reconfiguration process.
|
reconfiguration process.
|
||||||
|
|||||||
@@ -354,8 +354,8 @@ nsh:
|
|||||||
1. This configuration uses the mconf-based configuration tool. To
|
1. This configuration uses the mconf-based configuration tool. To
|
||||||
change this configuration using that tool, you should:
|
change this configuration using that tool, you should:
|
||||||
|
|
||||||
a. Build and install the mconf tool. See nuttx/README.txt and
|
a. Build and install the kconfig-mconf tool. See nuttx/README.txt
|
||||||
misc/tools/
|
and misc/tools/
|
||||||
|
|
||||||
b. Execute 'make menuconfig' in nuttx/ in order to start the
|
b. Execute 'make menuconfig' in nuttx/ in order to start the
|
||||||
reconfiguration process.
|
reconfiguration process.
|
||||||
|
|||||||
@@ -200,7 +200,7 @@ There are several toolchain options. However, testing has been performed
|
|||||||
using *only* the NuttX buildroot toolchain described below. Therefore,
|
using *only* the NuttX buildroot toolchain described below. Therefore,
|
||||||
the NuttX buildroot toolchain is the recommended choice.
|
the NuttX buildroot toolchain is the recommended choice.
|
||||||
|
|
||||||
The toolchain may be selected using the mconf tool (via 'make menuconfig'),
|
The toolchain may be selected using the kconfig-mconf tool (via 'make menuconfig'),
|
||||||
by editing the existing configuration file (defconfig), or by overriding
|
by editing the existing configuration file (defconfig), or by overriding
|
||||||
the toolchain on the make commandline with CONFIG_AVR_TOOLCHAIN=<toolchain>.
|
the toolchain on the make commandline with CONFIG_AVR_TOOLCHAIN=<toolchain>.
|
||||||
|
|
||||||
|
|||||||
@@ -324,7 +324,7 @@ Toolchains
|
|||||||
==========
|
==========
|
||||||
|
|
||||||
Note that in addition to the configuration options listed below, the
|
Note that in addition to the configuration options listed below, the
|
||||||
toolchain can be configured using the mconf utility ('make menuconfig')
|
toolchain can be configured using the kconfig-mconf utility ('make menuconfig')
|
||||||
or by passing CONFIG_MIPS32_TOOLCHAIN=<toolchain> to make, where
|
or by passing CONFIG_MIPS32_TOOLCHAIN=<toolchain> to make, where
|
||||||
<toolchain> is one of GNU_ELF, MICROCHIPL, MICROCHIPW, MICROCHIPL_LITE,
|
<toolchain> is one of GNU_ELF, MICROCHIPL, MICROCHIPW, MICROCHIPL_LITE,
|
||||||
MICROCHIPW_LITE, MICROCHIPOPENL or PINGUINOW as described below.
|
MICROCHIPW_LITE, MICROCHIPOPENL or PINGUINOW as described below.
|
||||||
|
|||||||
@@ -72,8 +72,8 @@ GNU Toolchain Options
|
|||||||
If you are not using CONFIG_DM320_BUILDROOT, then you may also have to modify
|
If you are not using CONFIG_DM320_BUILDROOT, then you may also have to modify
|
||||||
the PATH in the setenv.h file if your make cannot find the tools.
|
the PATH in the setenv.h file if your make cannot find the tools.
|
||||||
|
|
||||||
The toolchain may also be set using the mconf utility (make menuconfig) or by
|
The toolchain may also be set using the kconfig-mconf utility (make menuconfig)
|
||||||
passing CONFIG_ARM_TOOLCHAIN=<toolchain> to make, where <toolchain> is one
|
or by passing CONFIG_ARM_TOOLCHAIN=<toolchain> to make, where <toolchain> is one
|
||||||
of CODESOURCERYW, CODESOURCERYL, DEVKITARM, BUILDROOT or GNU_EABI as described
|
of CODESOURCERYW, CODESOURCERYL, DEVKITARM, BUILDROOT or GNU_EABI as described
|
||||||
above.
|
above.
|
||||||
|
|
||||||
|
|||||||
@@ -904,8 +904,8 @@ Where <subdir> is one of the following:
|
|||||||
1. This configuration uses the mconf-based configuration tool. To
|
1. This configuration uses the mconf-based configuration tool. To
|
||||||
change this configuration using that tool, you should:
|
change this configuration using that tool, you should:
|
||||||
|
|
||||||
a. Build and install the mconf tool. See nuttx/README.txt and
|
a. Build and install the kconfig-mconf tool. See nuttx/README.txt
|
||||||
misc/tools/
|
and misc/tools/
|
||||||
|
|
||||||
b. Execute 'make menuconfig' in nuttx/ in order to start the
|
b. Execute 'make menuconfig' in nuttx/ in order to start the
|
||||||
reconfiguration process.
|
reconfiguration process.
|
||||||
|
|||||||
@@ -209,8 +209,8 @@ cxxtest
|
|||||||
2. This configuration uses the mconf-based configuration tool. To
|
2. This configuration uses the mconf-based configuration tool. To
|
||||||
change this configuration using that tool, you should:
|
change this configuration using that tool, you should:
|
||||||
|
|
||||||
a. Build and install the mconf tool. See nuttx/README.txt and
|
a. Build and install the kconfig-mconf tool. See nuttx/README.txt
|
||||||
misc/tools/
|
and misc/tools/
|
||||||
|
|
||||||
b. Execute 'make menuconfig' in nuttx/ in order to start the
|
b. Execute 'make menuconfig' in nuttx/ in order to start the
|
||||||
reconfiguration process.
|
reconfiguration process.
|
||||||
@@ -455,8 +455,8 @@ nxlines
|
|||||||
1. This configuration uses the mconf-based configuration tool. To
|
1. This configuration uses the mconf-based configuration tool. To
|
||||||
change this configuration using that tool, you should:
|
change this configuration using that tool, you should:
|
||||||
|
|
||||||
a. Build and install the mconf tool. See nuttx/README.txt and
|
a. Build and install the kconfig-mconf tool. See nuttx/README.txt
|
||||||
misc/tools/
|
and misc/tools/
|
||||||
|
|
||||||
b. Execute 'make menuconfig' in nuttx/ in order to start the
|
b. Execute 'make menuconfig' in nuttx/ in order to start the
|
||||||
reconfiguration process.
|
reconfiguration process.
|
||||||
@@ -481,8 +481,8 @@ nxwm
|
|||||||
1. This configuration uses the mconf-based configuration tool. To
|
1. This configuration uses the mconf-based configuration tool. To
|
||||||
change this configuration using that tool, you should:
|
change this configuration using that tool, you should:
|
||||||
|
|
||||||
a. Build and install the mconf tool. See nuttx/README.txt and
|
a. Build and install the kconfig-mconf tool. See nuttx/README.txt
|
||||||
misc/tools/
|
and misc/tools/
|
||||||
|
|
||||||
b. Execute 'make menuconfig' in nuttx/ in order to start the
|
b. Execute 'make menuconfig' in nuttx/ in order to start the
|
||||||
reconfiguration process.
|
reconfiguration process.
|
||||||
@@ -543,8 +543,8 @@ ostest
|
|||||||
1. This configuration uses the mconf-based configuration tool. To
|
1. This configuration uses the mconf-based configuration tool. To
|
||||||
change this configuration using that tool, you should:
|
change this configuration using that tool, you should:
|
||||||
|
|
||||||
a. Build and install the mconf tool. See nuttx/README.txt and
|
a. Build and install the kconfig mconf tool. See nuttx/README.txt
|
||||||
misc/tools/
|
and misc/tools/
|
||||||
|
|
||||||
b. Execute 'make menuconfig' in nuttx/ in order to start the
|
b. Execute 'make menuconfig' in nuttx/ in order to start the
|
||||||
reconfiguration process.
|
reconfiguration process.
|
||||||
|
|||||||
@@ -65,8 +65,8 @@ GNU Toolchain Options
|
|||||||
If you change the default toolchain, then you may also have to modify the PATH in
|
If you change the default toolchain, then you may also have to modify the PATH in
|
||||||
the setenv.h file if your make cannot find the tools.
|
the setenv.h file if your make cannot find the tools.
|
||||||
|
|
||||||
The toolchain may also be set using the mconf utility (make menuconfig) or by
|
The toolchain may also be set using the kconfig-mconf utility (make menuconfig)
|
||||||
passing CONFIG_ARMV7M_TOOLCHAIN=<toolchain> to make, where <toolchain> is one
|
or by passing CONFIG_ARMV7M_TOOLCHAIN=<toolchain> to make, where <toolchain> is one
|
||||||
of CODESOURCERYW, CODESOURCERYL, ATOLLOC, DEVKITARM, RAISONANCE, BUILDROOT or
|
of CODESOURCERYW, CODESOURCERYL, ATOLLOC, DEVKITARM, RAISONANCE, BUILDROOT or
|
||||||
GNU_EABI as described above.
|
GNU_EABI as described above.
|
||||||
|
|
||||||
@@ -1082,8 +1082,8 @@ Where <subdir> is one of the following:
|
|||||||
1. This configuration uses the mconf-based configuration tool. To
|
1. This configuration uses the mconf-based configuration tool. To
|
||||||
change this configuration using that tool, you should:
|
change this configuration using that tool, you should:
|
||||||
|
|
||||||
a. Build and install the mconf tool. See nuttx/README.txt and
|
a. Build and install the kconfig-mconf tool. See nuttx/README.txt
|
||||||
misc/tools/
|
and misc/tools/
|
||||||
|
|
||||||
b. Execute 'make menuconfig' in nuttx/ in order to start the
|
b. Execute 'make menuconfig' in nuttx/ in order to start the
|
||||||
reconfiguration process.
|
reconfiguration process.
|
||||||
|
|||||||
@@ -951,9 +951,9 @@ Where <subdir> is one of the following:
|
|||||||
CONFIG_EXAMPLES_DISCOVER_IPADDR - (not defined)
|
CONFIG_EXAMPLES_DISCOVER_IPADDR - (not defined)
|
||||||
CONFIG_EXAMPLES_DISCOVER_DRIPADDR - Router IP address
|
CONFIG_EXAMPLES_DISCOVER_DRIPADDR - Router IP address
|
||||||
|
|
||||||
NOTE: This configuration uses to the mconf configuration tool to control
|
NOTE: This configuration uses to the kconfig-mconf configuration tool to
|
||||||
the configuration. See the section entitled "NuttX Configuration Tool"
|
control the configuration. See the section entitled "NuttX Configuration
|
||||||
in the top-level README.txt file.
|
Tool" in the top-level README.txt file.
|
||||||
|
|
||||||
nettest:
|
nettest:
|
||||||
-------
|
-------
|
||||||
|
|||||||
@@ -1038,8 +1038,8 @@ Where <subdir> is one of the following:
|
|||||||
2. This configuration uses the mconf-based configuration tool. To
|
2. This configuration uses the mconf-based configuration tool. To
|
||||||
change this configuration using that tool, you should:
|
change this configuration using that tool, you should:
|
||||||
|
|
||||||
a. Build and install the mconf tool. See nuttx/README.txt and
|
a. Build and install the kconfig-mconf tool. See nuttx/README.txt
|
||||||
misc/tools/
|
and misc/tools/
|
||||||
|
|
||||||
b. Execute 'make menuconfig' in nuttx/ in order to start the
|
b. Execute 'make menuconfig' in nuttx/ in order to start the
|
||||||
reconfiguration process.
|
reconfiguration process.
|
||||||
@@ -1087,8 +1087,8 @@ Where <subdir> is one of the following:
|
|||||||
1. This configuration uses the mconf-based configuration tool. To
|
1. This configuration uses the mconf-based configuration tool. To
|
||||||
change this configuration using that tool, you should:
|
change this configuration using that tool, you should:
|
||||||
|
|
||||||
a. Build and install the mconf tool. See nuttx/README.txt and
|
a. Build and install the kconfig-mconf tool. See nuttx/README.txt
|
||||||
misc/tools/
|
and misc/tools/
|
||||||
|
|
||||||
b. Execute 'make menuconfig' in nuttx/ in order to start the
|
b. Execute 'make menuconfig' in nuttx/ in order to start the
|
||||||
reconfiguration process.
|
reconfiguration process.
|
||||||
@@ -1121,8 +1121,8 @@ Where <subdir> is one of the following:
|
|||||||
1. This configuration uses the mconf-based configuration tool. To
|
1. This configuration uses the mconf-based configuration tool. To
|
||||||
change this configuration using that tool, you should:
|
change this configuration using that tool, you should:
|
||||||
|
|
||||||
a. Build and install the mconf tool. See nuttx/README.txt and
|
a. Build and install the kconfig-mconf tool. See nuttx/README.txt
|
||||||
misc/tools/
|
and misc/tools/
|
||||||
|
|
||||||
b. Execute 'make menuconfig' in nuttx/ in order to start the
|
b. Execute 'make menuconfig' in nuttx/ in order to start the
|
||||||
reconfiguration process.
|
reconfiguration process.
|
||||||
@@ -1350,8 +1350,8 @@ Where <subdir> is one of the following:
|
|||||||
2. This configuration uses the mconf-based configuration tool. To
|
2. This configuration uses the mconf-based configuration tool. To
|
||||||
change this configuration using that tool, you should:
|
change this configuration using that tool, you should:
|
||||||
|
|
||||||
a. Build and install the mconf tool. See nuttx/README.txt and
|
a. Build and install the kconfig-mconf tool. See nuttx/README.txt
|
||||||
misc/tools/
|
and misc/tools/
|
||||||
|
|
||||||
b. Execute 'make menuconfig' in nuttx/ in order to start the
|
b. Execute 'make menuconfig' in nuttx/ in order to start the
|
||||||
reconfiguration process.
|
reconfiguration process.
|
||||||
|
|||||||
@@ -203,7 +203,7 @@ There are several toolchain options. However, testing has been performed
|
|||||||
using *only* the NuttX buildroot toolchain described below. Therefore,
|
using *only* the NuttX buildroot toolchain described below. Therefore,
|
||||||
the NuttX buildroot toolchain is the recommended choice.
|
the NuttX buildroot toolchain is the recommended choice.
|
||||||
|
|
||||||
The toolchain may be selected using the mconf tool (via 'make menuconfig'),
|
The toolchain may be selected using the kconfig-mconf tool (via 'make menuconfig'),
|
||||||
by editing the existing configuration file (defconfig), or by overriding
|
by editing the existing configuration file (defconfig), or by overriding
|
||||||
the toolchain on the make commandline with CONFIG_AVR_TOOLCHAIN=<toolchain>.
|
the toolchain on the make commandline with CONFIG_AVR_TOOLCHAIN=<toolchain>.
|
||||||
|
|
||||||
|
|||||||
@@ -165,7 +165,7 @@ Reconfiguring NuttX
|
|||||||
These configurations all use the kconfig-frontends, mconf-based configuration
|
These configurations all use the kconfig-frontends, mconf-based configuration
|
||||||
tool. To change this configuration using that tool, you should:
|
tool. To change this configuration using that tool, you should:
|
||||||
|
|
||||||
a. Build and install the mconf tool. See nuttx/README.txt and
|
a. Build and install the kconfig-mconf tool. See nuttx/README.txt and
|
||||||
misc/tools/README.txt
|
misc/tools/README.txt
|
||||||
|
|
||||||
b. Execute 'make menuconfig' in nuttx/ in order to start the reconfiguration
|
b. Execute 'make menuconfig' in nuttx/ in order to start the reconfiguration
|
||||||
|
|||||||
@@ -105,8 +105,8 @@ ostest
|
|||||||
1. This configuration uses the mconf-based configuration tool. To
|
1. This configuration uses the mconf-based configuration tool. To
|
||||||
change this configuration using that tool, you should:
|
change this configuration using that tool, you should:
|
||||||
|
|
||||||
a. Build and install the mconf tool. See nuttx/README.txt and
|
a. Build and install the kconfig-mconf tool. See nuttx/README.txt
|
||||||
misc/tools/
|
and misc/tools/
|
||||||
|
|
||||||
b. Execute 'make menuconfig' in nuttx/ in order to start the
|
b. Execute 'make menuconfig' in nuttx/ in order to start the
|
||||||
reconfiguration process.
|
reconfiguration process.
|
||||||
@@ -154,8 +154,8 @@ pashello
|
|||||||
1. This configuration uses the mconf-based configuration tool. To
|
1. This configuration uses the mconf-based configuration tool. To
|
||||||
change this configuration using that tool, you should:
|
change this configuration using that tool, you should:
|
||||||
|
|
||||||
a. Build and install the mconf tool. See nuttx/README.txt and
|
a. Build and install the kconfig-mconf tool. See nuttx/README.txt
|
||||||
misc/tools/
|
and misc/tools/
|
||||||
|
|
||||||
b. Execute 'make menuconfig' in nuttx/ in order to start the
|
b. Execute 'make menuconfig' in nuttx/ in order to start the
|
||||||
reconfiguration process.
|
reconfiguration process.
|
||||||
|
|||||||
@@ -112,7 +112,7 @@ Reconfiguring NuttX
|
|||||||
These configurations all use the kconfig-frontends, mconf-based configuration
|
These configurations all use the kconfig-frontends, mconf-based configuration
|
||||||
tool. To change this configuration using that tool, you should:
|
tool. To change this configuration using that tool, you should:
|
||||||
|
|
||||||
a. Build and install the mconf tool. See nuttx/README.txt and
|
a. Build and install the kconfig-mconf tool. See nuttx/README.txt and
|
||||||
misc/tools/README.txt
|
misc/tools/README.txt
|
||||||
|
|
||||||
b. Execute 'make menuconfig' in nuttx/ in order to start the reconfiguration
|
b. Execute 'make menuconfig' in nuttx/ in order to start the reconfiguration
|
||||||
|
|||||||
@@ -73,8 +73,8 @@ available:
|
|||||||
1. This configuration uses the mconf-based configuration tool. To
|
1. This configuration uses the mconf-based configuration tool. To
|
||||||
change this configuration using that tool, you should:
|
change this configuration using that tool, you should:
|
||||||
|
|
||||||
a. Build and install the mconf tool. See nuttx/README.txt and
|
a. Build and install the kconfig-mconf tool. See nuttx/README.txt
|
||||||
misc/tools/
|
and misc/tools/
|
||||||
|
|
||||||
b. Execute 'make menuconfig' in nuttx/ in order to start the
|
b. Execute 'make menuconfig' in nuttx/ in order to start the
|
||||||
reconfiguration process.
|
reconfiguration process.
|
||||||
|
|||||||
@@ -73,8 +73,8 @@ available:
|
|||||||
1. This configuration uses the mconf-based configuration tool. To
|
1. This configuration uses the mconf-based configuration tool. To
|
||||||
change this configuration using that tool, you should:
|
change this configuration using that tool, you should:
|
||||||
|
|
||||||
a. Build and install the mconf tool. See nuttx/README.txt and
|
a. Build and install the kconfig-mconf tool. See nuttx/README.txt
|
||||||
misc/tools/
|
and misc/tools/
|
||||||
|
|
||||||
b. Execute 'make menuconfig' in nuttx/ in order to start the
|
b. Execute 'make menuconfig' in nuttx/ in order to start the
|
||||||
reconfiguration process.
|
reconfiguration process.
|
||||||
|
|||||||
@@ -303,8 +303,8 @@ Configurations:
|
|||||||
1. This configuration uses the mconf-based configuration tool. To
|
1. This configuration uses the mconf-based configuration tool. To
|
||||||
change this configuration using that tool, you should:
|
change this configuration using that tool, you should:
|
||||||
|
|
||||||
a. Build and install the mconf tool. See nuttx/README.txt and
|
a. Build and install the kconfig-mconf tool. See nuttx/README.txt
|
||||||
misc/tools/
|
and misc/tools/
|
||||||
|
|
||||||
b. Execute 'make menuconfig' in nuttx/ in order to start the
|
b. Execute 'make menuconfig' in nuttx/ in order to start the
|
||||||
reconfiguration process.
|
reconfiguration process.
|
||||||
@@ -327,8 +327,8 @@ Configurations:
|
|||||||
1. This configuration uses the mconf-based configuration tool. To
|
1. This configuration uses the mconf-based configuration tool. To
|
||||||
change this configuration using that tool, you should:
|
change this configuration using that tool, you should:
|
||||||
|
|
||||||
a. Build and install the mconf tool. See nuttx/README.txt and
|
a. Build and install the kconfig-mconf tool. See nuttx/README.txt
|
||||||
misc/tools/
|
and misc/tools/
|
||||||
|
|
||||||
b. Execute 'make menuconfig' in nuttx/ in order to start the
|
b. Execute 'make menuconfig' in nuttx/ in order to start the
|
||||||
reconfiguration process.
|
reconfiguration process.
|
||||||
|
|||||||
@@ -0,0 +1,137 @@
|
|||||||
|
/****************************************************************************
|
||||||
|
* include/spawn.h
|
||||||
|
*
|
||||||
|
* 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.
|
||||||
|
*
|
||||||
|
****************************************************************************/
|
||||||
|
|
||||||
|
#ifndef __INCLUDE_LIBGEN_H
|
||||||
|
#define __INCLUDE_LIBGEN_H
|
||||||
|
|
||||||
|
/****************************************************************************
|
||||||
|
* Included Files
|
||||||
|
****************************************************************************/
|
||||||
|
|
||||||
|
#include <nuttx/config.h>
|
||||||
|
#include <signal.h>
|
||||||
|
|
||||||
|
/****************************************************************************
|
||||||
|
* Pre-processor Definitions
|
||||||
|
****************************************************************************/
|
||||||
|
|
||||||
|
/* "The spawn.h header shall define the flags that may be set in a
|
||||||
|
* posix_spawnattr_t object using the posix_spawnattr_setflags() function:"
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define POSIX_SPAWN_RESETIDS (1 << 0)
|
||||||
|
#define POSIX_SPAWN_SETPGROUP (1 << 1)
|
||||||
|
#define POSIX_SPAWN_SETSCHEDPARAM (1 << 2)
|
||||||
|
#define POSIX_SPAWN_SETSCHEDULER (1 << 3)
|
||||||
|
#define POSIX_SPAWN_SETSIGDEF (1 << 4)
|
||||||
|
#define POSIX_SPAWN_SETSIGMASK (1 << 5)
|
||||||
|
|
||||||
|
/****************************************************************************
|
||||||
|
* Type Definitions
|
||||||
|
****************************************************************************/
|
||||||
|
/* "The spawn.h header shall define the posix_spawnattr_t and
|
||||||
|
* posix_spawn_file_actions_t types used in performing spawn operations.
|
||||||
|
*/
|
||||||
|
|
||||||
|
struct posix_spawnattr_s
|
||||||
|
{
|
||||||
|
/* To be provided */
|
||||||
|
};
|
||||||
|
typedef struct posix_spawnattr_s posix_spawnattr_t;
|
||||||
|
|
||||||
|
struct posix_spawn_file_actions_s
|
||||||
|
{
|
||||||
|
/* To be provided */
|
||||||
|
};
|
||||||
|
typedef struct posix_spawn_file_actions_s posix_spawn_file_actions_t;
|
||||||
|
|
||||||
|
/****************************************************************************
|
||||||
|
* Public Function Prototypes
|
||||||
|
****************************************************************************/
|
||||||
|
/* "The following shall be declared as functions and may also be defined as
|
||||||
|
* macros. Function prototypes shall be provided."
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
extern "C"
|
||||||
|
{
|
||||||
|
#endif
|
||||||
|
|
||||||
|
int posix_spawn(FAR pid_t *, FAR const char *,
|
||||||
|
FAR const posix_spawn_file_actions_t *, FAR const posix_spawnattr_t *,
|
||||||
|
FAR char *const [], FAR char *const []);
|
||||||
|
int posix_spawnp(FAR pid_t *, FAR const char *,
|
||||||
|
FAR const posix_spawn_file_actions_t *, FAR const posix_spawnattr_t *,
|
||||||
|
FAR char *const [], FAR char *const []);
|
||||||
|
|
||||||
|
int posix_spawn_file_actions_init(FAR posix_spawn_file_actions_t *);
|
||||||
|
int posix_spawn_file_actions_destroy(FAR posix_spawn_file_actions_t *);
|
||||||
|
|
||||||
|
int posix_spawn_file_actions_addclose(FAR posix_spawn_file_actions_t *,
|
||||||
|
int);
|
||||||
|
int posix_spawn_file_actions_adddup2(FAR posix_spawn_file_actions_t *,
|
||||||
|
int, int);
|
||||||
|
int posix_spawn_file_actions_addopen(FAR posix_spawn_file_actions_t *,
|
||||||
|
int, FAR const char *, int, mode_t);
|
||||||
|
|
||||||
|
int posix_spawnattr_init(FAR posix_spawnattr_t *);
|
||||||
|
int posix_spawnattr_destroy(FAR posix_spawnattr_t *);
|
||||||
|
|
||||||
|
int posix_spawnattr_getflags(FAR const posix_spawnattr_t *, FAR short *);
|
||||||
|
int posix_spawnattr_getpgroup(FAR const posix_spawnattr_t *, FAR pid_t *);
|
||||||
|
int posix_spawnattr_getschedparam(FAR const posix_spawnattr_t *,
|
||||||
|
FAR struct sched_param *);
|
||||||
|
int posix_spawnattr_getschedpolicy(FAR const posix_spawnattr_t *,
|
||||||
|
FAR int *);
|
||||||
|
int posix_spawnattr_getsigdefault(FAR const posix_spawnattr_t *,
|
||||||
|
FAR sigset_t *);
|
||||||
|
int posix_spawnattr_getsigmask(FAR const posix_spawnattr_t *,
|
||||||
|
FAR sigset_t *);
|
||||||
|
|
||||||
|
int posix_spawnattr_setflags(FAR posix_spawnattr_t *, short);
|
||||||
|
int posix_spawnattr_setpgroup(FAR posix_spawnattr_t *, pid_t);
|
||||||
|
int posix_spawnattr_setschedparam(FAR posix_spawnattr_t *,
|
||||||
|
FAR const struct sched_param *);
|
||||||
|
int posix_spawnattr_setschedpolicy(FAR posix_spawnattr_t *, int);
|
||||||
|
int posix_spawnattr_setsigdefault(FAR posix_spawnattr_t *,
|
||||||
|
FAR const sigset_t *);
|
||||||
|
int posix_spawnattr_setsigmask(FAR posix_spawnattr_t *,
|
||||||
|
FAR const sigset_t *);
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#endif /* __INCLUDE_LIBGEN_H */
|
||||||
+16
-12
@@ -72,15 +72,17 @@ config EOL_IS_EITHER_CRLF
|
|||||||
endchoice
|
endchoice
|
||||||
|
|
||||||
config LIBC_EXECFUNCS
|
config LIBC_EXECFUNCS
|
||||||
bool "Enable exec[l|v] Support"
|
bool "Enable exec[l|v] / posix_spawn() Support"
|
||||||
default n
|
default n
|
||||||
depends on !BINFMT_DISABLE
|
depends on !BINFMT_DISABLE
|
||||||
---help---
|
---help---
|
||||||
Enable support for the exec[l|v] family of functions that can be
|
Enable support for the exec[l|v] family of functions that can be
|
||||||
used to start other programs, terminating the current program.
|
used to start other programs, terminating the current program and
|
||||||
Typical usage is (1) first call vfork() to create a new thread, then
|
the posix_spawn() familty of functions that can be used start other
|
||||||
(2) call exec[l|v] to replace the new thread with a program from the
|
programs without terminating the current program. The typical
|
||||||
file system.
|
usage of the exec[l|v] functions is (1) first call vfork() to create
|
||||||
|
a new thread, then (2) call exec[l|v] to replace the new thread with
|
||||||
|
a program from the file system.
|
||||||
|
|
||||||
NOTE 1: This two step process start is completely unnecessary in
|
NOTE 1: This two step process start is completely unnecessary in
|
||||||
NuttX and is provided only for compatibily with Unix systems. These
|
NuttX and is provided only for compatibily with Unix systems. These
|
||||||
@@ -89,9 +91,11 @@ config LIBC_EXECFUNCS
|
|||||||
the new thread will be terminated by the exec[l|v] call, it really
|
the new thread will be terminated by the exec[l|v] call, it really
|
||||||
served no purpose other than to suport Unix compatility.
|
served no purpose other than to suport Unix compatility.
|
||||||
|
|
||||||
NOTE 2: Support for exec[l|v] is conditional because is requires
|
The posix_spawn() functions do not have this inefficiency.
|
||||||
additional support for symbol tables that will not be available in
|
|
||||||
the typical system.
|
NOTE 2: Support for exec[l|v] and posix_spawn() is conditional
|
||||||
|
because they require additional support for symbol tables that
|
||||||
|
will not be available in the typical system.
|
||||||
|
|
||||||
if LIBC_EXECFUNCS
|
if LIBC_EXECFUNCS
|
||||||
|
|
||||||
@@ -99,8 +103,8 @@ config EXECFUNCS_SYMTAB
|
|||||||
string "Symbol table used by exec[l|v]"
|
string "Symbol table used by exec[l|v]"
|
||||||
default "g_symtab"
|
default "g_symtab"
|
||||||
---help---
|
---help---
|
||||||
The exec[l|v] functions are wrapper functions that (1) call the non-
|
The exec[l|v] and posix_spawn() functions are wrapper functions that
|
||||||
standard binfmt function 'exec', and then (2) exit(0). The binfmt
|
call the non-standard binfmt function 'exec'). The binfmt
|
||||||
function 'exec' needs to have (1) a symbol table that provides the
|
function 'exec' needs to have (1) a symbol table that provides the
|
||||||
list of symbols exported by the base code, and (2) the number of
|
list of symbols exported by the base code, and (2) the number of
|
||||||
symbols in that table. This selection provides the name of that
|
symbols in that table. This selection provides the name of that
|
||||||
@@ -110,8 +114,8 @@ config EXECFUNCS_NSYMBOLS
|
|||||||
int "Number of Symbols in the Table"
|
int "Number of Symbols in the Table"
|
||||||
default 0
|
default 0
|
||||||
---help---
|
---help---
|
||||||
The exec[l|v] functions are wrapper functions that (1) call the non-
|
The exec[l|v] and posix_spawn() functions are wrapper functions that
|
||||||
standard binfmt function 'exec', and then (2) exit(0). The binfmt
|
call the non-standard binfmt function 'exec'). The binfmt
|
||||||
function 'exec' needs to have (1) a symbol table that provides the
|
function 'exec' needs to have (1) a symbol table that provides the
|
||||||
list of symbols exported by the base code, and (2) the number of
|
list of symbols exported by the base code, and (2) the number of
|
||||||
symbols in that table. This selection provides the number of
|
symbols in that table. This selection provides the number of
|
||||||
|
|||||||
@@ -57,6 +57,7 @@ include time/Make.defs
|
|||||||
include libgen/Make.defs
|
include libgen/Make.defs
|
||||||
include dirent/Make.defs
|
include dirent/Make.defs
|
||||||
include termios/Make.defs
|
include termios/Make.defs
|
||||||
|
include spawn/Make.defs
|
||||||
include queue/Make.defs
|
include queue/Make.defs
|
||||||
include misc/Make.defs
|
include misc/Make.defs
|
||||||
|
|
||||||
|
|||||||
@@ -0,0 +1,46 @@
|
|||||||
|
############################################################################
|
||||||
|
# libc/spawn/Make.defs
|
||||||
|
#
|
||||||
|
# Copyright (C) 2013 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.
|
||||||
|
#
|
||||||
|
############################################################################
|
||||||
|
|
||||||
|
# Add the spawn C files to the build
|
||||||
|
|
||||||
|
ifeq ($(CONFIG_LIBC_EXECFUNCS),y)
|
||||||
|
|
||||||
|
CSRCS +=
|
||||||
|
|
||||||
|
# Add the spawn directory to the build
|
||||||
|
|
||||||
|
DEPPATH += --dep-path spawn
|
||||||
|
VPATH += :spawn
|
||||||
|
endif
|
||||||
@@ -445,11 +445,11 @@ kconfig.bat
|
|||||||
only a few options for the Windows user (see the top-level README.txt
|
only a few options for the Windows user (see the top-level README.txt
|
||||||
file).
|
file).
|
||||||
|
|
||||||
You can, with some effort, run the the Cygwin mconf tool directly
|
You can, with some effort, run the the Cygwin kconfig-mconf tool directly
|
||||||
in the CMD.exe shell. In this case, you do not have to modify the
|
in the CMD.exe shell. In this case, you do not have to modify the
|
||||||
.config file, but there are other complexities: You need to
|
.config file, but there are other complexities: You need to
|
||||||
temporarily set the Cgywin directories in the PATH variable and
|
temporarily set the Cgywin directories in the PATH variable and
|
||||||
then run mconf outside of the Make system.
|
then run kconfig-mconf outside of the Make system.
|
||||||
|
|
||||||
kconfig.bat is a Windows batch file at tools/kconfig.bat that automates
|
kconfig.bat is a Windows batch file at tools/kconfig.bat that automates
|
||||||
these steps. It is used from the top-level NuttX directory like:
|
these steps. It is used from the top-level NuttX directory like:
|
||||||
@@ -457,8 +457,8 @@ kconfig.bat
|
|||||||
tools/kconfig menuconfig
|
tools/kconfig menuconfig
|
||||||
|
|
||||||
NOTE: There is an currently an issue with accessing DOS environment
|
NOTE: There is an currently an issue with accessing DOS environment
|
||||||
variables from the Cygwin mconf running in the CMD.exe shell. The
|
variables from the Cygwin kconfig-mconf running in the CMD.exe shell.
|
||||||
following change to the top-level Kconfig file seems to work around
|
The following change to the top-level Kconfig file seems to work around
|
||||||
these problems:
|
these problems:
|
||||||
|
|
||||||
config APPSDIR
|
config APPSDIR
|
||||||
|
|||||||
@@ -100,15 +100,15 @@ echo ERROR: Unrecognized action: %action%
|
|||||||
goto :ShowUsage
|
goto :ShowUsage
|
||||||
|
|
||||||
:DoConfig
|
:DoConfig
|
||||||
conf Kconfig
|
kconfig-conf Kconfig
|
||||||
goto End
|
goto End
|
||||||
|
|
||||||
:DoOldConfig
|
:DoOldConfig
|
||||||
conf --oldconfig Kconfig
|
kconfig-conf --oldconfig Kconfig
|
||||||
goto End
|
goto End
|
||||||
|
|
||||||
:DoMenuConfig
|
:DoMenuConfig
|
||||||
mconf Kconfig
|
kconfig-mconf Kconfig
|
||||||
goto End
|
goto End
|
||||||
|
|
||||||
:MissingArgument
|
:MissingArgument
|
||||||
|
|||||||
Reference in New Issue
Block a user