mirror of
https://github.com/apache/nuttx.git
synced 2026-06-05 15:58:59 +08:00
configs/sim/nx11: Configuration converted to use the kconfig-frontends tools
This commit is contained in:
+76
-191
@@ -191,21 +191,45 @@ X11. See the discussion "Stack Size Issues" above.
|
||||
Configurations
|
||||
^^^^^^^^^^^^^^
|
||||
|
||||
Common Configuration Information
|
||||
--------------------------------
|
||||
|
||||
1. Each configuration is maintained in a sub-directory and can be selected
|
||||
as follow:
|
||||
|
||||
cd <nuttx-directory>/tools
|
||||
./configure.sh sim/<subdir>
|
||||
cd -
|
||||
. ./setenv.sh
|
||||
|
||||
If this is a Windows native build, then configure.bat should be used
|
||||
instead of configure.sh:
|
||||
|
||||
configure.bat sim\<subdir>
|
||||
|
||||
Where <subdir> is one of the following sub-directories.
|
||||
|
||||
2. All configurations uses the mconf-based configuration tool. To
|
||||
change this configuration using that tool, you should:
|
||||
|
||||
a. Build and install the kconfig mconf tool. See nuttx/README.txt
|
||||
and misc/tools/
|
||||
|
||||
b. Execute 'make menuconfig' in nuttx/ in order to start the
|
||||
reconfiguration process.
|
||||
|
||||
Configuration Sub-Directories
|
||||
-----------------------------
|
||||
|
||||
configdata
|
||||
Description
|
||||
-----------
|
||||
|
||||
A unit test for the MTD configuration data driver.
|
||||
|
||||
cxxtest
|
||||
|
||||
Description
|
||||
-----------
|
||||
The C++ standard libary test at apps/examples/cxxtest configuration. This
|
||||
test is used to verify the uClibc++ port to NuttX. This configuration may
|
||||
be selected as follows:
|
||||
|
||||
cd <nuttx-directory>/tools
|
||||
./configure.sh sim/cxxtest
|
||||
The C++ standard libary test at apps/examples/cxxtest configuration. This
|
||||
test is used to verify the uClibc++ port to NuttX.
|
||||
|
||||
NOTES
|
||||
-----
|
||||
@@ -214,20 +238,11 @@ cxxtest
|
||||
misc/uClibc++ in GIT. See the README.txt file for instructions on
|
||||
how to install uClibc++
|
||||
|
||||
2. This configuration uses the mconf-based configuration tool. To
|
||||
change this configuration using that tool, you should:
|
||||
|
||||
a. Build and install the kconfig-mconf tool. See nuttx/README.txt
|
||||
and misc/tools/
|
||||
|
||||
b. Execute 'make menuconfig' in nuttx/ in order to start the
|
||||
reconfiguration process.
|
||||
|
||||
3. At present (2012/11/02), exceptions are disabled in this example
|
||||
2. At present (2012/11/02), exceptions are disabled in this example
|
||||
CONFIG_UCLIBCXX_EXCEPTIONS=n). It is probably not necessary to
|
||||
disable exceptions.
|
||||
|
||||
4. Unfortunately, this example will not run now.
|
||||
3. Unfortunately, this example will not run now.
|
||||
|
||||
The reason that the example will not run on the simulator has
|
||||
to do with when static constructors are enabled: In the simulator
|
||||
@@ -240,25 +255,7 @@ cxxtest
|
||||
|
||||
mount
|
||||
|
||||
Description
|
||||
-----------
|
||||
Configures to use apps/examples/mount. This configuration may be
|
||||
selected as follows:
|
||||
|
||||
cd <nuttx-directory>/tools
|
||||
./configure.sh sim/mount
|
||||
|
||||
NOTES
|
||||
-----
|
||||
|
||||
1. This configuration uses the mconf-based configuration tool. To
|
||||
change this configuration using that tool, you should:
|
||||
|
||||
a. Build and install the kconfig-mconf tool. See nuttx/README.txt
|
||||
and misc/tools/
|
||||
|
||||
b. Execute 'make menuconfig' in nuttx/ in order to start the
|
||||
reconfiguration process.
|
||||
Configures to use apps/examples/mount.
|
||||
|
||||
mtdpart
|
||||
|
||||
@@ -267,27 +264,12 @@ mtdpart
|
||||
|
||||
nettest
|
||||
|
||||
Description
|
||||
-----------
|
||||
Configures to use apps/examples/nettest. This configuration
|
||||
enables networking using the network TAP device. It may
|
||||
be selected via:
|
||||
|
||||
cd <nuttx-directory>/tools
|
||||
./configure.sh sim/nettest
|
||||
enables networking using the network TAP device.
|
||||
|
||||
NOTES:
|
||||
------
|
||||
1. This configuration uses the mconf-based configuration tool. To
|
||||
change this configuration using that tool, you should:
|
||||
|
||||
a. Build and install the kconfig mconf tool. See nuttx/README.txt
|
||||
and misc/tools/
|
||||
|
||||
b. Execute 'make menuconfig' in nuttx/ in order to start the
|
||||
reconfiguration process.
|
||||
|
||||
2. The NuttX network is not, however, functional on the Linux TAP
|
||||
1. The NuttX network is not, however, functional on the Linux TAP
|
||||
device yet.
|
||||
|
||||
UPDATE: The TAP device does apparently work according to a NuttX
|
||||
@@ -296,7 +278,7 @@ nettest
|
||||
waiting from input from the host OS). My failure to get the TAP
|
||||
device working appears to have been a cockpit error.
|
||||
|
||||
3. As of NuttX-5.18, when built on Windows, this test does not try
|
||||
2. As of NuttX-5.18, when built on Windows, this test does not try
|
||||
to use the TAP device (which is not available on Cygwin anyway),
|
||||
but inside will try to use the Cygwin WPCAP library. Only the
|
||||
most preliminary testing has been performed with the Cygwin WPCAP
|
||||
@@ -309,29 +291,14 @@ nettest
|
||||
|
||||
nsh
|
||||
|
||||
Description
|
||||
-----------
|
||||
Configures to use the NuttShell at apps/examples/nsh. This configuration
|
||||
may be selected as follows:
|
||||
|
||||
cd <nuttx-directory>/tools
|
||||
./configure.sh sim/nsh
|
||||
Configures to use the NuttShell at apps/examples/nsh.
|
||||
|
||||
NOTES:
|
||||
------
|
||||
1. This configuration uses the mconf-based configuration tool. To
|
||||
change this configuration using that tool, you should:
|
||||
|
||||
a. Build and install the kconfig-mconf tool. See nuttx/README.txt
|
||||
and misc/tools/
|
||||
|
||||
b. Execute 'make menuconfig' in nuttx/ in order to start the
|
||||
reconfiguration process.
|
||||
|
||||
2. This version has one builtin function: This configuration:
|
||||
1. This version has one builtin function: This configuration:
|
||||
apps/examples/hello.
|
||||
|
||||
3. This configuration has BINFS enabled so that the builtin applications
|
||||
2. This configuration has BINFS enabled so that the builtin applications
|
||||
can be made visible in the file system. Because of that, the
|
||||
build in applications do not work as other examples.
|
||||
|
||||
@@ -360,57 +327,35 @@ nsh
|
||||
|
||||
nsh2
|
||||
|
||||
Description
|
||||
-----------
|
||||
This is another example that configures to use the NuttShell at apps/examples/nsh.
|
||||
Like nsh, this version uses NSH built-in functions: The nx, nxhello, and
|
||||
nxlines examples are included as built-in functions.
|
||||
|
||||
NOTES:
|
||||
------
|
||||
1. This configuration uses the mconf-based configuration tool. To
|
||||
change this configuration using that tool, you should:
|
||||
|
||||
a. Build and install the kconfig-mconf tool. See nuttx/README.txt
|
||||
and misc/tools/
|
||||
|
||||
b. Execute 'make menuconfig' in nuttx/ in order to start the
|
||||
reconfiguration process.
|
||||
|
||||
2. X11 Configuration
|
||||
1. X11 Configuration
|
||||
|
||||
This configuration uses an X11-based framebuffer driver. Of course, this
|
||||
configuration can only be used in environments that support X11! (And it
|
||||
may not even be usable in all of those environments without some "tweaking"
|
||||
See discussion below under the nx11 configuration).
|
||||
|
||||
3. Configuring
|
||||
|
||||
This configuration may be selected as follows:
|
||||
|
||||
cd <nuttx-directory>/tools
|
||||
./configure.sh sim/nsh2
|
||||
|
||||
nx
|
||||
|
||||
Description
|
||||
-----------
|
||||
Configures to use apps/examples/nx. This configuration may be
|
||||
selected as follows:
|
||||
Configures to use apps/examples/nx.
|
||||
|
||||
cd <nuttx-directory>/tools
|
||||
./configure.sh sim/nx
|
||||
NOTES:
|
||||
|
||||
1. Special Framebuffer Configuration
|
||||
|
||||
Special Framebuffer Configuration
|
||||
---------------------------------
|
||||
Special simulated framebuffer configuration options:
|
||||
|
||||
CONFIG_SIM_FBHEIGHT - Height of the framebuffer in pixels
|
||||
CONFIG_SIM_FBWIDTH - Width of the framebuffer in pixels.
|
||||
CONFIG_SIM_FBBPP - Pixel depth in bits
|
||||
|
||||
No Display!
|
||||
-----------
|
||||
2. No Display!
|
||||
|
||||
This version has NO DISPLAY and is only useful for debugging NX
|
||||
internals in environments where X11 is not supported. There is
|
||||
and additonal configuration that may be added to include an X11-
|
||||
@@ -420,8 +365,8 @@ nx
|
||||
|
||||
See the "nx11" configuration below for more information.
|
||||
|
||||
Multi- and Single-User Modes
|
||||
----------------------------
|
||||
3. Multi- and Single-User Modes
|
||||
|
||||
The default is the single-user NX implementation. To select
|
||||
the multi-user NX implementation:
|
||||
|
||||
@@ -430,21 +375,14 @@ nx
|
||||
|
||||
nx11
|
||||
|
||||
Description
|
||||
-----------
|
||||
Configures to use apps/examples/nx. This configuration is similar
|
||||
to the nx configuration except that it adds support for an X11-
|
||||
based framebuffer driver. Of course, this configuration can only
|
||||
be used in environments that support X11! (And it may not even
|
||||
be usable in all of those environments without some "tweaking").
|
||||
|
||||
This configuration may be selected as follows:
|
||||
1. Special Framebuffer Configuration
|
||||
|
||||
cd <nuttx-directory>/tools
|
||||
./configure.sh sim/nx11
|
||||
|
||||
Special Framebuffer Configuration
|
||||
---------------------------------
|
||||
This configuration uses the same special simulated framebuffer
|
||||
configuration options as the nx configuration:
|
||||
|
||||
@@ -453,8 +391,8 @@ nx11
|
||||
CONFIG_SIM_FBWIDTH - Width of the framebuffer in pixels.
|
||||
CONFIG_SIM_FBBPP - Pixel depth in bits
|
||||
|
||||
X11 Configuration
|
||||
-----------------
|
||||
2. X11 Configuration
|
||||
|
||||
But now, since CONFIG_SIM_X11FB is also selected the following
|
||||
definitions are needed
|
||||
|
||||
@@ -462,14 +400,14 @@ nx11
|
||||
CONFIG_FB_CMAP=y
|
||||
|
||||
My system has 24-bit color, but packed into 32-bit words so
|
||||
the correct seeting of CONFIG_SIM_FBBPP is 32.
|
||||
the correct setting of CONFIG_SIM_FBBPP is 32.
|
||||
|
||||
For whatever value of CONFIG_SIM_FBBPP is selected, the
|
||||
corresponidng CONFIG_NX_DISABLE_*BPP setting must not be
|
||||
corresponding CONFIG_NX_DISABLE_*BPP setting must not be
|
||||
disabled.
|
||||
|
||||
Touchscreen Support
|
||||
-------------------
|
||||
3. Touchscreen Support
|
||||
|
||||
A X11 mouse-based touchscreen simulation can also be enabled
|
||||
by setting:
|
||||
|
||||
@@ -482,22 +420,22 @@ nx11
|
||||
|
||||
NOTES:
|
||||
|
||||
1. If you do not have the call to sim_tcinitialize(0), the build
|
||||
a. If you do not have the call to sim_tcinitialize(0), the build
|
||||
will mysteriously fail claiming that is can't find up_tcenter()
|
||||
and up_tcleave(). That is a consequence of the crazy way that
|
||||
the simulation is built and can only be eliminated by calling
|
||||
up_simtouchscreen(0) from your application.
|
||||
|
||||
2. You must first up_fbinitialize() before calling up_simtouchscreen()
|
||||
b. You must first up_fbinitialize() before calling up_simtouchscreen()
|
||||
or you will get a crash.
|
||||
|
||||
3. Call sim_tcunininitializee() when you are finished with the
|
||||
c. Call sim_tcunininitializee() when you are finished with the
|
||||
simulated touchscreen.
|
||||
|
||||
4. Enable CONFIG_DEBUG_INPUT=y for touchscreen debug output.
|
||||
d. Enable CONFIG_DEBUG_INPUT=y for touchscreen debug output.
|
||||
|
||||
4. X11 Build Issues
|
||||
|
||||
X11 Build Issues
|
||||
----------------
|
||||
To get the system to compile under various X11 installations
|
||||
you may have to modify a few things. For example, in order
|
||||
to find libXext, I had to make the following change under
|
||||
@@ -506,16 +444,16 @@ nx11
|
||||
cd /usr/lib/
|
||||
sudo ln -s libXext.so.6.4.0 libXext.so
|
||||
|
||||
Multi- and Single-User Modes
|
||||
----------------------------
|
||||
5. Multi- and Single-User Modes
|
||||
|
||||
The default is the single-user NX implementation. To select
|
||||
the multi-user NX implementation:
|
||||
|
||||
CONFG_NX_MULTIUSER=y
|
||||
CONFIG_DISABLE_MQUEUE=n
|
||||
|
||||
apps/examples/nxconsole
|
||||
-----------------------
|
||||
6. apps/examples/nxconsole
|
||||
|
||||
This configuration is also set up to use the apps/examples/nxconsole
|
||||
test instead of apps/examples/nx. To enable this configuration,
|
||||
First, select Multi-User mode as described above. Then add the
|
||||
@@ -527,15 +465,11 @@ nx11
|
||||
-CONFIG_NX_MULTIUSER=n
|
||||
+CONFIG_NX_MULTIUSER=y
|
||||
|
||||
Comment out the following in the appconfig file:
|
||||
-CONFIG_EXAMPLES_NX=y
|
||||
+CONFIG_EXAMPLES_NX=n
|
||||
|
||||
-CONFIGURED_APPS += examples/nx
|
||||
+#CONFIGURED_APPS += examples/nx
|
||||
|
||||
And uncomment the following:
|
||||
|
||||
-#CONFIGURED_APPS += examples/nxconsole
|
||||
+CONFIGURED_APPS += examples/nxconsole
|
||||
-CONFIG_EXAMPLES_NXCONSOLE=n
|
||||
+CONFIG_EXAMPLES_NXCONSOLE=y
|
||||
|
||||
See apps/examples/README.txt for further details.
|
||||
|
||||
@@ -548,17 +482,6 @@ nxlines
|
||||
|
||||
This is the apps/examples/nxlines test.
|
||||
|
||||
NOTES:
|
||||
------
|
||||
1. This configuration uses the mconf-based configuration tool. To
|
||||
change this configuration using that tool, you should:
|
||||
|
||||
a. Build and install the kconfig-mconf tool. See nuttx/README.txt
|
||||
and misc/tools/
|
||||
|
||||
b. Execute 'make menuconfig' in nuttx/ in order to start the
|
||||
reconfiguration process.
|
||||
|
||||
nxwm
|
||||
|
||||
This is a special configuration setup for the NxWM window manager
|
||||
@@ -575,17 +498,8 @@ nxwm
|
||||
nuttx-code/NxWidgets/UnitTests/READEM.txt
|
||||
|
||||
NOTES
|
||||
-----
|
||||
1. This configuration uses the mconf-based configuration tool. To
|
||||
change this configuration using that tool, you should:
|
||||
|
||||
a. Build and install the kconfig-mconf tool. See nuttx/README.txt
|
||||
and misc/tools/
|
||||
|
||||
b. Execute 'make menuconfig' in nuttx/ in order to start the
|
||||
reconfiguration process.
|
||||
|
||||
2. There is an issue with running this example under the
|
||||
1. There is an issue with running this example under the
|
||||
simulation. In the default configuration, this example will
|
||||
run the NxConsole example which waits on readline() for console
|
||||
input. When it calls readline(), the whole system blocks
|
||||
@@ -628,47 +542,18 @@ nxwm
|
||||
|
||||
ostest
|
||||
|
||||
Description
|
||||
-----------
|
||||
The "standard" NuttX apps/examples/ostest configuration. This
|
||||
configuration may be selected as follows:
|
||||
|
||||
cd <nuttx-directory>/tools
|
||||
./configure.sh sim/ostest
|
||||
|
||||
NOTES
|
||||
-----
|
||||
1. This configuration uses the mconf-based configuration tool. To
|
||||
change this configuration using that tool, you should:
|
||||
|
||||
a. Build and install the kconfig mconf tool. See nuttx/README.txt
|
||||
and misc/tools/
|
||||
|
||||
b. Execute 'make menuconfig' in nuttx/ in order to start the
|
||||
reconfiguration process.
|
||||
The "standard" NuttX apps/examples/ostest configuration.
|
||||
|
||||
pashello
|
||||
|
||||
Description
|
||||
-----------
|
||||
Configures to use apps/examples/pashello. This configuration may
|
||||
by selected as follows:
|
||||
|
||||
cd <nuttx-directory>/tools
|
||||
./configure.sh sim/pashello
|
||||
Configures to use apps/examples/pashello.
|
||||
|
||||
touchscreen
|
||||
|
||||
Description
|
||||
-----------
|
||||
This configuration uses the simple touchscreen test at
|
||||
apps/examples/touchscreen. This test will create an empty X11 window
|
||||
and will print the touchscreen output as it is received from the
|
||||
simulated touchscreen driver. This configuration may
|
||||
by selected as follows:
|
||||
|
||||
cd <nuttx-directory>/tools
|
||||
./configure.sh sim/touchscreen
|
||||
simulated touchscreen driver.
|
||||
|
||||
Since this example uses the simulated frame buffer driver, the
|
||||
most of the configuration settings discussed for the "nx11"
|
||||
|
||||
@@ -1,41 +0,0 @@
|
||||
############################################################################
|
||||
# configs/sim/nx11/appconfig
|
||||
#
|
||||
# Copyright (C) 2011-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.
|
||||
#
|
||||
############################################################################
|
||||
|
||||
# Path to example in apps/examples containing the user_start entry point
|
||||
# Various NX tests can be supported, simply comment-out examples/nx and
|
||||
# uncomment the test you wish to perform
|
||||
|
||||
CONFIGURED_APPS += examples/nx
|
||||
#CONFIGURED_APPS += examples/nxconsole
|
||||
+550
-226
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user