nuttx-apps/examples/elf
Gregory Nutt 1056cce2b5 apps/examples/elf: Correct mount point configuration error.
If an external file system is used but is not mounted by the the ELF example, then a compilation error will occur.  This configuration problem has existed for a long time but was unmasked by a recent PR.  In the failure mode, CONFIG_EXAMPLES_ELF_FSTYPE would not be defined because it depends on CONFIG_EXAMPLES_ELF_FSMOUNT which is not defined.  The resulting mountpoint, MOUNTPT, would therefore be left in an invalid state.  Previous changes to conditional logic now allowed setenv() to run and to attempt to set the PATH variable to MOUNTPT, causing a compile time failure like this:

    CC:  elf_main.c
    elf_main.c: In function 'elf_main':
    elf_main.c:113:32: error: expected ')' before 'CONFIG_EXAMPLES_ELF_FSTYPE'
     #  define MOUNTPT      "/mnt/" CONFIG_EXAMPLES_ELF_FSTYPE
                                ^~~~~~~~~~~~~~~~~~~~~~~~~~
    elf_main.c:364:18: note: in expansion of macro 'MOUNTPT'
       setenv("PATH", MOUNTPT, 1);
                       ^~~~~~~
    elf_main.c:364:3: error: too few arguments to function 'setenv'
       setenv("PATH", MOUNTPT, 1);
       ^~~~~~
    In file included from elf_main.c:47:
    D:\Spuda\Documents\projects\nuttx\master\nuttx-fork\include/stdlib.h:158:11: note: declared here
     int       setenv(FAR const char *name, FAR const char *value, int overwrite);
               ^~~~~~

This problem was found during manual build testing using configuration lx_cpu:nsh.
2020-02-15 18:06:43 +01:00
..
tests apps/examples/elf: Resolve issue issue 63 2020-02-15 23:55:33 +08:00
.gitignore .dSYM only needs to be in the same .gitignore files as .exe 2013-05-30 15:02:04 -06:00
elf_main.c apps/examples/elf: Correct mount point configuration error. 2020-02-15 18:06:43 +01:00
Kconfig Remove extra whitespace from files (#43) 2020-01-31 08:29:24 -06:00
Make.defs apps/: In all Make.def files, append to CONFIGURED_APPS patch with the absolute path. 2019-10-17 11:33:59 -06:00
Makefile Makefiles: This reverts part of commit cf0365ea9. It restores 'conditional' inclusion of TOPDIR/Make.defs. Otherwise all make targets fail if the board has not been configured. That is okay most of the time, but not for things like clean and distclean which should not depend on being configured. 2019-10-15 09:25:48 +08:00