mirror of
https://github.com/apache/nuttx-apps.git
synced 2025-10-19 02:17:37 +08:00
nshlib: Tighten up some conditional logic
This commit is contained in:
29
nshlib/nsh.h
29
nshlib/nsh.h
@@ -641,6 +641,30 @@
|
|||||||
# undef NSH_HAVE_CPULOAD
|
# undef NSH_HAVE_CPULOAD
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#if !defined(CONFIG_FS_PROCFS) || (defined(CONFIG_FS_PROCFS_EXCLUDE_BLOCKS) && \
|
||||||
|
defined(CONFIG_FS_PROCFS_EXCLUDE_USAGE))
|
||||||
|
# undef CONFIG_NSH_DISABLE_DF /* 'df' depends on fs procfs */
|
||||||
|
# define CONFIG_NSH_DISABLE_DF 1
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if defined(CONFIG_FS_PROCFS) || !defined(CONFIG_NSH_DISABLE_DF)
|
||||||
|
# define HAVE_DF_HUMANREADBLE 1
|
||||||
|
# define HAVE_DF_BLOCKOUTPUT 1
|
||||||
|
# if defined(CONFIG_FS_PROCFS_EXCLUDE_USAGE)
|
||||||
|
# undefine HAVE_DF_HUMANREADBLE
|
||||||
|
# endif
|
||||||
|
# if defined(CONFIG_FS_PROCFS_EXCLUDE_BLOCKS)
|
||||||
|
# undefine HAVE_DF_BLOCKOUTPUT
|
||||||
|
# endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if defined(CONFIG_FS_PROCFS) || !defined(CONFIG_NSH_DISABLE_MOUNT)
|
||||||
|
# define HAVE_MOUNT_LIST 1
|
||||||
|
# if defined(CONFIG_FS_PROCFS_EXCLUDE_MOUNT)
|
||||||
|
# undefine HAVE_MOUNT_LIST
|
||||||
|
# endif
|
||||||
|
#endif
|
||||||
|
|
||||||
/* Suppress unused file utilities */
|
/* Suppress unused file utilities */
|
||||||
|
|
||||||
#define NSH_HAVE_CATFILE 1
|
#define NSH_HAVE_CATFILE 1
|
||||||
@@ -656,10 +680,11 @@
|
|||||||
# undef NSH_HAVE_TRIMDIR
|
# undef NSH_HAVE_TRIMDIR
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/* nsh_catfile used by cat, ifconfig, ifup/down */
|
/* nsh_catfile used by cat, ifconfig, ifup/down, df, and mount */
|
||||||
|
|
||||||
#if defined(CONFIG_NSH_DISABLE_CAT) && defined(CONFIG_NSH_DISABLE_IFCONFIG) && \
|
#if defined(CONFIG_NSH_DISABLE_CAT) && defined(CONFIG_NSH_DISABLE_IFCONFIG) && \
|
||||||
defined(CONFIG_NSH_DISABLE_IFUPDOWN)
|
defined(CONFIG_NSH_DISABLE_IFUPDOWN) && defined(CONFIG_NSH_DISABLE_DF) && \
|
||||||
|
(defined(CONFIG_NSH_DISABLE_MOUNT) || !defined(HAVE_MOUNT_LIST))
|
||||||
# undef NSH_HAVE_CATFILE
|
# undef NSH_HAVE_CATFILE
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
@@ -171,7 +171,11 @@ static const struct cmdmap_s g_cmdmap[] =
|
|||||||
#if CONFIG_NFILE_DESCRIPTORS > 0 && !defined(CONFIG_DISABLE_MOUNTPOINT) && \
|
#if CONFIG_NFILE_DESCRIPTORS > 0 && !defined(CONFIG_DISABLE_MOUNTPOINT) && \
|
||||||
defined(CONFIG_FS_READABLE) && !defined(CONFIG_NSH_DISABLE_DF)
|
defined(CONFIG_FS_READABLE) && !defined(CONFIG_NSH_DISABLE_DF)
|
||||||
#ifdef NSH_HAVE_CATFILE
|
#ifdef NSH_HAVE_CATFILE
|
||||||
|
#if defined(HAVE_DF_HUMANREADBLE) && defined(HAVE_DF_BLOCKOUTPUT)
|
||||||
{ "df", cmd_df, 1, 2, "[-h]" },
|
{ "df", cmd_df, 1, 2, "[-h]" },
|
||||||
|
#else
|
||||||
|
{ "df", cmd_df, 1, 1, NULL },
|
||||||
|
#endif
|
||||||
#endif
|
#endif
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@@ -339,8 +343,10 @@ static const struct cmdmap_s g_cmdmap[] =
|
|||||||
|
|
||||||
#if !defined(CONFIG_DISABLE_MOUNTPOINT) && CONFIG_NFILE_DESCRIPTORS > 0 && defined(CONFIG_FS_READABLE)
|
#if !defined(CONFIG_DISABLE_MOUNTPOINT) && CONFIG_NFILE_DESCRIPTORS > 0 && defined(CONFIG_FS_READABLE)
|
||||||
#ifndef CONFIG_NSH_DISABLE_MOUNT
|
#ifndef CONFIG_NSH_DISABLE_MOUNT
|
||||||
#ifdef NSH_HAVE_CATFILE
|
#if defined(NSH_HAVE_CATFILE) && defined(HAVE_MOUNT_LIST)
|
||||||
{ "mount", cmd_mount, 1, 7, "[-t <fstype> [-o <options>] [<block-device>] <mount-point>]" },
|
{ "mount", cmd_mount, 1, 7, "[-t <fstype> [-o <options>] [<block-device>] <mount-point>]" },
|
||||||
|
#else
|
||||||
|
{ "mount", cmd_mount, 4, 7, "-t <fstype> [-o <options>] [<block-device>] <mount-point>" },
|
||||||
#endif
|
#endif
|
||||||
#endif
|
#endif
|
||||||
#endif
|
#endif
|
||||||
|
@@ -71,24 +71,24 @@
|
|||||||
#ifdef NSH_HAVE_CATFILE
|
#ifdef NSH_HAVE_CATFILE
|
||||||
int cmd_df(FAR struct nsh_vtbl_s *vtbl, int argc, char **argv)
|
int cmd_df(FAR struct nsh_vtbl_s *vtbl, int argc, char **argv)
|
||||||
{
|
{
|
||||||
|
#if defined(HAVE_DF_HUMANREADBLE) && defined(HAVE_DF_BLOCKOUTPUT)
|
||||||
if (argc > 1 && strcmp(argv[1], "-h") == 0)
|
if (argc > 1 && strcmp(argv[1], "-h") == 0)
|
||||||
|
#endif
|
||||||
|
#ifdef HAVE_DF_HUMANREADBLE
|
||||||
{
|
{
|
||||||
#ifndef CONFIG_FS_PROCFS_EXCLUDE_BLOCKS
|
|
||||||
return nsh_catfile(vtbl, argv[0],
|
return nsh_catfile(vtbl, argv[0],
|
||||||
CONFIG_NSH_PROC_MOUNTPOINT "/fs/usage");
|
CONFIG_NSH_PROC_MOUNTPOINT "/fs/usage");
|
||||||
#else
|
|
||||||
return ERROR; /* REVISIT, some feedback would be good */
|
|
||||||
#endif
|
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
|
#if defined(HAVE_DF_HUMANREADBLE) && defined(HAVE_DF_BLOCKOUTPUT)
|
||||||
else
|
else
|
||||||
|
#endif
|
||||||
|
#ifdef HAVE_DF_BLOCKOUTPUT
|
||||||
{
|
{
|
||||||
#ifndef CONFIG_FS_PROCFS_EXCLUDE_USAGE
|
|
||||||
return nsh_catfile(vtbl, argv[0],
|
return nsh_catfile(vtbl, argv[0],
|
||||||
CONFIG_NSH_PROC_MOUNTPOINT "/fs/blocks");
|
CONFIG_NSH_PROC_MOUNTPOINT "/fs/blocks");
|
||||||
#else
|
|
||||||
return ERROR; /* REVISIT, some feedback would be good */
|
|
||||||
#endif
|
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
#endif
|
#endif
|
||||||
@@ -113,7 +113,7 @@ int cmd_mount(FAR struct nsh_vtbl_s *vtbl, int argc, char **argv)
|
|||||||
|
|
||||||
/* The mount command behaves differently if no parameters are provided. */
|
/* The mount command behaves differently if no parameters are provided. */
|
||||||
|
|
||||||
#if defined(NSH_HAVE_CATFILE) && !defined(CONFIG_FS_PROCFS_EXCLUDE_MOUNT)
|
#if defined(NSH_HAVE_CATFILE) && defined(HAVE_MOUNT_LIST)
|
||||||
if (argc < 2)
|
if (argc < 2)
|
||||||
{
|
{
|
||||||
return nsh_catfile(vtbl, argv[0],
|
return nsh_catfile(vtbl, argv[0],
|
||||||
|
Reference in New Issue
Block a user