The GNU make CURDIR will always be a POSIX-like path with forward slashes as path segment separators. If we know that this is a native build, then we need to fix up the path so the DELIM will match the actual delimiter.
since the file generated by REGISTER macro don't have such suffix
Change-Id: I6814f5bd257563f897c63d9698f8892d9649dcef
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
Application.mk: Fix to not register a builtin app when BUILD_MODULE=y
Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>
Approved-by: GregoryN <gnutt@nuttx.org>
Author: anchao <anchao@pinecone.net>
apps/, most main() function: Correct CONFIG_BUILD_LOADABLE usage
Loadable apps/: Correct loadable symbol table generate
apps/system/ubloxmodem: Fix build break
apps/examples/ostest: start restart/waitpid/user test from main loop
apps/nshlib: Expand reboot and poweroff commands to include a second, optional mode argument
Author: Gregory Nutt <gnutt@nuttx.org>
An attempt to fix build issues. Does not work.
apps/examples/ostest: Fix some inappropriate renaming of static functions introduced with recent patches.
apps/builtin/exec_builtin.c: Fix a error introduced by recent comments. Found in build testing.
Author: anchao <anchao@pinecone.net>
apps/builtin/exec_builtin.c: Try posix_spawn if builtin apps do not have have an entry point.
apps/Application.mk: introduce MODULE config to simplify tristate(m)
apps/nsh: Change the nuttx shell module type to tristate
apps: Add loadable application support
script/mksymtab: Generate symbol table name by default
apps/builtin: Allow loadable applications can register with apps/builtin.
apps/builtin/exec_builtin.c: Try posix_spawn if builtin apps do not have have an entry point.
apps/Application.mk: introduce MODULE config to simplify tristate(m)
apps/nsh: Change the nuttx shell module type to tristate
apps: Add loadable application support
script/mksymtab: Generate symbol table name by default
apps/builtin: Allow loadable applications can register with apps/builtin.
Merged in masayuki2009/nuttx.apps/loadable_app (pull request #148)
loadable app support
* apps: Introduce a build system for loadable apps for nsh.
This PR consits of following changes. (NOTE: Changes to each
application will be provided separately)
apps/nshlib/Kconfig:
Add 'option modules' to NSH_FILE_APPS so that a user can change
an application configuration to tristate (y/n/m)
apps/Make.defs:
Override COMPILE and COMPILEXX macros to compile loadable apps.
To make loadable apps, -DLOADABLE_APP is added to the flags.
Also, introduce ELFLD to link a lodable app.
Please note that the variable 'LOADABLE' must be defined in
each application Makefile if you want to make a loadable app.
apps/Application.mk:
Add .build target in case of 'LOADABLE=y' which is used to
link a final loadable application and install the app to
apps/bin.
apps/Makefile:
Add SYMTABSRC and SYMTABOBJ variables for loadable apps which
will be generated under the apps directory.
Add make_symbols target which will be called when all applications
are installed to generate symtab_app.c which is used for
nsh to inform symbol information to the NuttX kernel.
Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>
* apps/examples/hello: Apply changes to support a lodable app.
Kconfig:
Change the application state from bool to tristate
Make.defs:
Change the condition to build. By default, the application is
not selected (i.e. 'n'), so if other states (i.e. y/m) are
selected, the application will be compiled.
Makefile:
If the application is specified to 'm', the variable 'LOADABLE'
must be defined here. Also note that other variables (PRIORITY
and STACKSIZE) can only be used for built-in apps.
hello_main.c
Add LOADABLE_APP condition to main().
Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>
* apps/examples/helloxx: Apply changes to support a lodable app.
Kconfig:
Change the application state from bool to tristate
Make.defs:
Change the condition to build. By default, the application is
not selected (i.e. 'n'), so if other states (i.e. y/m) are
selected, the application will be compiled.
Makefile:
If the application is specified to 'm', the variable 'LOADABLE'
must be defined here. Also note that other variables (PRIORITY
and STACKSIZE) can only be used for built-in apps.
helloxx_main.c
Add LOADABLE_APP condition to main().
Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>
Approved-by: GregoryN <gnutt@nuttx.org>