for multibuild.pl -- I would have missed this stupid mess otherwise.
-Erik
-- added "stopped jobs" warning to ash on exit
* Adam Slattery
-- Fixed ping compile problem
+ * Robert J. Osborne <rj@resourceinternational.com>
+ -- fixed a vi bug with delete and escape sequences on empty files.
-Erik Andersen, 31 July 2001
#if defined __UCLIBC__ && ! defined __UCLIBC_HAS_MMU__
#undef BB_RPM2CPIO /* Uses gz_open(), which uses fork() */
#undef BB_DPKG_DEB /* Uses gz_open(), which uses fork() */
- #undef BB_FEATURE_ASH /* Uses fork() */
- #undef BB_FEATURE_HUSH /* Uses fork() */
- #undef BB_FEATURE_LASH /* Uses fork() */
+ #undef BB_ASH /* Uses fork() */
+ #undef BB_HUSH /* Uses fork() */
+ #undef BB_LASH /* Uses fork() */
#undef BB_INIT /* Uses fork() */
#undef BB_FEATURE_TAR_GZIP /* Uses fork() */
#undef BB_SYSLOGD /* Uses daemon() */
#undef BB_FEATURE_COMMAND_USERNAME_COMPLETION
#undef BB_FEATURE_SH_FANCY_PROMPT
#endif
- #if ! defined BB_FEATURE_LASH && ! defined BB_FEATURE_HUSH && ! defined BB_FEATURE_MSH && ! defined BB_FEATURE_ASH
- #define BB_FEATURE_MSH
- #endif
- #if defined BB_FEATURE_ASH
- #undef BB_FEATURE_MSH
- #undef BB_FEATURE_HUSH
- #undef BB_FEATURE_LASH
- #elif defined BB_FEATURE_MSH
- #undef BB_FEATURE_HUSH
- #undef BB_FEATURE_LASH
- #elif defined BB_FEATURE_HUSH
- #undef BB_FEATURE_LASH
- #endif
#else
#undef BB_FEATURE_SH_APPLETS_ALWAYS_WIN
#undef BB_FEATURE_SH_STANDALONE_SHELL
* if the len=0 and no chars to delete */
if (len == 0) {
prepare_to_die:
-#if !defined(BB_FEATURE_ASH)
+#if !defined(BB_ASH)
printf("exit");
goto_new_line();
/* cmdedit_reset_term() called in atexit */
// Nothing beyond this point should ever be touched by
// mere mortals so leave this stuff alone.
//
+#include <features.h>
+#if defined __UCLIBC__ && ! defined __UCLIBC_HAS_MMU__
+ #undef BB_RPM2CPIO /* Uses gz_open(), which uses fork() */
+ #undef BB_DPKG_DEB /* Uses gz_open(), which uses fork() */
+ #undef BB_ASH /* Uses fork() */
+ #undef BB_HUSH /* Uses fork() */
+ #undef BB_LASH /* Uses fork() */
+ #undef BB_INIT /* Uses fork() */
+ #undef BB_FEATURE_TAR_GZIP /* Uses fork() */
+ #undef BB_SYSLOGD /* Uses daemon() */
+ #undef BB_KLOGD /* Uses daemon() */
+ #undef BB_UPDATE /* Uses daemon() */
+#endif
#if defined BB_ASH || defined BB_HUSH || defined BB_LASH || defined BB_MSH
#if defined BB_FEATURE_COMMAND_EDITING
#define BB_CMDEDIT
#undef BB_FEATURE_COMMAND_USERNAME_COMPLETION
#undef BB_FEATURE_SH_FANCY_PROMPT
#endif
- #if ! defined BB_FEATURE_LASH && ! defined BB_FEATURE_HUSH && ! defined BB_FEATURE_MSH && ! defined BB_FEATURE_ASH
- #define BB_FEATURE_MSH
- #endif
- #if defined BB_FEATURE_ASH && (defined BB_FEATURE_LASH || defined BB_FEATURE_HUSH || defined BB_FEATURE_MSH)
- #undef BB_FEATURE_LASH
- #undef BB_FEATURE_HUSH
- #undef BB_FEATURE_MSH
- #elif defined BB_FEATURE_MSH && (defined BB_FEATURE_LASH || defined BB_FEATURE_HUSH || defined BB_FEATURE_MSH)
- #undef BB_FEATURE_LASH
- #undef BB_FEATURE_HUSH
- #undef BB_FEATURE_ASH
- #elif defined BB_FEATURE_HUSH && (defined BB_FEATURE_LASH || defined BB_FEATURE_HUSH || defined BB_FEATURE_MSH)
- #undef BB_FEATURE_LASH
- #undef BB_FEATURE_MSH
- #undef BB_FEATURE_ASH
- #elif defined BB_FEATURE_LASH && (defined BB_FEATURE_LASH || defined BB_FEATURE_HUSH || defined BB_FEATURE_MSH)
- #undef BB_FEATURE_HUSH
- #undef BB_FEATURE_MSH
- #undef BB_FEATURE_ASH
- #endif
#else
#undef BB_FEATURE_SH_APPLETS_ALWAYS_WIN
#undef BB_FEATURE_SH_STANDALONE_SHELL
# define BB_SH
# define shell_main msh_main
#endif
+
// Nothing beyond this point should ever be touched by
// mere mortals so leave this stuff alone.
//
+#include <features.h>
+#if defined __UCLIBC__ && ! defined __UCLIBC_HAS_MMU__
+ #undef BB_RPM2CPIO /* Uses gz_open(), which uses fork() */
+ #undef BB_DPKG_DEB /* Uses gz_open(), which uses fork() */
+ #undef BB_ASH /* Uses fork() */
+ #undef BB_HUSH /* Uses fork() */
+ #undef BB_LASH /* Uses fork() */
+ #undef BB_INIT /* Uses fork() */
+ #undef BB_FEATURE_TAR_GZIP /* Uses fork() */
+ #undef BB_SYSLOGD /* Uses daemon() */
+ #undef BB_KLOGD /* Uses daemon() */
+ #undef BB_UPDATE /* Uses daemon() */
+#endif
#if defined BB_ASH || defined BB_HUSH || defined BB_LASH || defined BB_MSH
#if defined BB_FEATURE_COMMAND_EDITING
#define BB_CMDEDIT
#undef BB_FEATURE_COMMAND_USERNAME_COMPLETION
#undef BB_FEATURE_SH_FANCY_PROMPT
#endif
- #if ! defined BB_FEATURE_LASH && ! defined BB_FEATURE_HUSH && ! defined BB_FEATURE_MSH && ! defined BB_FEATURE_ASH
- #define BB_FEATURE_MSH
- #endif
- #if defined BB_FEATURE_ASH && (defined BB_FEATURE_LASH || defined BB_FEATURE_HUSH || defined BB_FEATURE_MSH)
- #undef BB_FEATURE_LASH
- #undef BB_FEATURE_HUSH
- #undef BB_FEATURE_MSH
- #elif defined BB_FEATURE_MSH && (defined BB_FEATURE_LASH || defined BB_FEATURE_HUSH || defined BB_FEATURE_MSH)
- #undef BB_FEATURE_LASH
- #undef BB_FEATURE_HUSH
- #undef BB_FEATURE_ASH
- #elif defined BB_FEATURE_HUSH && (defined BB_FEATURE_LASH || defined BB_FEATURE_HUSH || defined BB_FEATURE_MSH)
- #undef BB_FEATURE_LASH
- #undef BB_FEATURE_MSH
- #undef BB_FEATURE_ASH
- #elif defined BB_FEATURE_LASH && (defined BB_FEATURE_LASH || defined BB_FEATURE_HUSH || defined BB_FEATURE_MSH)
- #undef BB_FEATURE_HUSH
- #undef BB_FEATURE_MSH
- #undef BB_FEATURE_ASH
- #endif
#else
#undef BB_FEATURE_SH_APPLETS_ALWAYS_WIN
#undef BB_FEATURE_SH_STANDALONE_SHELL
# define BB_SH
# define shell_main msh_main
#endif
+
+
// Nothing beyond this point should ever be touched by
// mere mortals so leave this stuff alone.
//
+#include <features.h>
+#if defined __UCLIBC__ && ! defined __UCLIBC_HAS_MMU__
+ #undef BB_RPM2CPIO /* Uses gz_open(), which uses fork() */
+ #undef BB_DPKG_DEB /* Uses gz_open(), which uses fork() */
+ #undef BB_ASH /* Uses fork() */
+ #undef BB_HUSH /* Uses fork() */
+ #undef BB_LASH /* Uses fork() */
+ #undef BB_INIT /* Uses fork() */
+ #undef BB_FEATURE_TAR_GZIP /* Uses fork() */
+ #undef BB_SYSLOGD /* Uses daemon() */
+ #undef BB_KLOGD /* Uses daemon() */
+ #undef BB_UPDATE /* Uses daemon() */
+#endif
#if defined BB_ASH || defined BB_HUSH || defined BB_LASH || defined BB_MSH
#if defined BB_FEATURE_COMMAND_EDITING
#define BB_CMDEDIT
#undef BB_FEATURE_COMMAND_USERNAME_COMPLETION
#undef BB_FEATURE_SH_FANCY_PROMPT
#endif
- #if ! defined BB_FEATURE_LASH && ! defined BB_FEATURE_HUSH && ! defined BB_FEATURE_MSH && ! defined BB_FEATURE_ASH
- #define BB_FEATURE_MSH
- #endif
- #if defined BB_FEATURE_ASH && (defined BB_FEATURE_LASH || defined BB_FEATURE_HUSH || defined BB_FEATURE_MSH)
- #undef BB_FEATURE_LASH
- #undef BB_FEATURE_HUSH
- #undef BB_FEATURE_MSH
- #elif defined BB_FEATURE_MSH && (defined BB_FEATURE_LASH || defined BB_FEATURE_HUSH || defined BB_FEATURE_MSH)
- #undef BB_FEATURE_LASH
- #undef BB_FEATURE_HUSH
- #undef BB_FEATURE_ASH
- #elif defined BB_FEATURE_HUSH && (defined BB_FEATURE_LASH || defined BB_FEATURE_HUSH || defined BB_FEATURE_MSH)
- #undef BB_FEATURE_LASH
- #undef BB_FEATURE_MSH
- #undef BB_FEATURE_ASH
- #elif defined BB_FEATURE_LASH && (defined BB_FEATURE_LASH || defined BB_FEATURE_HUSH || defined BB_FEATURE_MSH)
- #undef BB_FEATURE_HUSH
- #undef BB_FEATURE_MSH
- #undef BB_FEATURE_ASH
- #endif
#else
#undef BB_FEATURE_SH_APPLETS_ALWAYS_WIN
#undef BB_FEATURE_SH_STANDALONE_SHELL
# define BB_SH
# define shell_main msh_main
#endif
+
+
+
* if the len=0 and no chars to delete */
if (len == 0) {
prepare_to_die:
-#if !defined(BB_FEATURE_ASH)
+#if !defined(BB_ASH)
printf("exit");
goto_new_line();
/* cmdedit_reset_term() called in atexit */