diff options
-rw-r--r-- | Makefile | 16 | ||||
-rw-r--r-- | chroot.c | 12 | ||||
-rw-r--r-- | coreutils/chroot.c | 12 | ||||
-rw-r--r-- | debian/Config.h-deb | 6 | ||||
-rw-r--r-- | debian/Config.h-static | 17 | ||||
-rw-r--r-- | debian/Config.h-udeb | 8 |
6 files changed, 41 insertions, 30 deletions
@@ -227,7 +227,10 @@ ifneq ($(strip $(USE_SYSTEM_PWD_GRP)),true) fgetpwent.c __getgrent.c grent.c getgrnam.c getgrgid.c fgetgrent.c \ initgroups.c setgroups.c PWD_OBJS=$(patsubst %.c,$(PWD_GRP)/%.o, $(PWD_CSRC)) - PWD_CFLAGS = -I$(PWD_GRP_DIR) +ifneq ($(strip $(BB_SRC_DIR)),) + PWD_CFLAGS = -I- -I. +endif + PWD_CFLAGS += -I$(PWD_GRP_DIR) else CFLAGS += -DUSE_SYSTEM_PWD_GRP endif @@ -249,9 +252,10 @@ xgetcwd.c xreadlink.c xregcomp.c interface.c remove_file.c last_char_is.c \ copyfd.c vherror_msg.c herror_msg.c herror_msg_and_die.c xgethostbyname.c \ dirname.c make_directory.c create_icmp_socket.c u_signal_names.c arith.c LIBBB_OBJS=$(patsubst %.c,$(LIBBB)/%.o, $(LIBBB_CSRC)) -LIBBB_CFLAGS = -I$(LIBBB) -ifneq ($(strip $(BB_SRC_DIR)),) - LIBBB_CFLAGS += -I$(BB_SRC_DIR)/$(LIBBB) +ifeq ($(strip $(BB_SRC_DIR)),) + LIBBB_CFLAGS += -I$(LIBBB) +else + LIBBB_CFLAGS = -I- -I. -I./$(LIBBB) -I$(BB_SRC_DIR)/$(LIBBB) -I$(BB_SRC_DIR) endif LIBBB_MSRC=libbb/messages.c @@ -351,7 +355,11 @@ busybox.links: busybox.mkll Config.h applets.h nfsmount.o cmdedit.o: %.o: %.h ash.o hush.o lash.o msh.o: cmdedit.h $(OBJECTS): %.o: %.c Config.h busybox.h applets.h Makefile +ifeq ($(strip $(BB_SRC_DIR)),) $(CC) $(CFLAGS) -I. $(patsubst %,-I%,$(subst :, ,$(BB_SRC_DIR))) -c $< -o $*.o +else + $(CC) $(CFLAGS) -I- -I. $(patsubst %,-I%,$(subst :, ,$(BB_SRC_DIR))) -c $< -o $*.o +endif $(PWD_OBJS): %.o: %.c Config.h busybox.h applets.h Makefile - mkdir -p $(PWD_GRP) @@ -48,17 +48,17 @@ int chroot_main(int argc, char **argv) prog = *argv; execvp(*argv, argv); } else { -#ifndef BB_SH - prog = getenv("SHELL"); - if (!prog) - prog = "/bin/sh"; - execlp(prog, prog, NULL); -#else +#if defined(BB_SH) && defined BB_FEATURE_SH_STANDALONE_SHELL char shell[] = "/bin/sh"; char *shell_argv[2] = { shell, NULL }; applet_name = shell; shell_main(1, shell_argv); return EXIT_SUCCESS; +#else + prog = getenv("SHELL"); + if (!prog) + prog = "/bin/sh"; + execlp(prog, prog, NULL); #endif } perror_msg_and_die("cannot execute %s", prog); diff --git a/coreutils/chroot.c b/coreutils/chroot.c index f2d9b4d..0440e46 100644 --- a/coreutils/chroot.c +++ b/coreutils/chroot.c @@ -48,17 +48,17 @@ int chroot_main(int argc, char **argv) prog = *argv; execvp(*argv, argv); } else { -#ifndef BB_SH - prog = getenv("SHELL"); - if (!prog) - prog = "/bin/sh"; - execlp(prog, prog, NULL); -#else +#if defined(BB_SH) && defined BB_FEATURE_SH_STANDALONE_SHELL char shell[] = "/bin/sh"; char *shell_argv[2] = { shell, NULL }; applet_name = shell; shell_main(1, shell_argv); return EXIT_SUCCESS; +#else + prog = getenv("SHELL"); + if (!prog) + prog = "/bin/sh"; + execlp(prog, prog, NULL); #endif } perror_msg_and_die("cannot execute %s", prog); diff --git a/debian/Config.h-deb b/debian/Config.h-deb index f8b2bdc..892ce13 100644 --- a/debian/Config.h-deb +++ b/debian/Config.h-deb @@ -78,13 +78,15 @@ #define BB_MKNOD #define BB_MKSWAP //#define BB_MKTEMP -//#define BB_NC +//#define BB_MODPROBE #define BB_MORE #define BB_MOUNT //#define BB_MSH //#define BB_MT #define BB_MV +//#define BB_NC //#define BB_NSLOOKUP +//#define BB_PIDOF #define BB_PING //#define BB_PIVOT_ROOT #define BB_POWEROFF @@ -117,6 +119,7 @@ //#define BB_TFTP #define BB_TOUCH #define BB_TR +//#define BB_TRACEROUTE #define BB_TRUE_FALSE #define BB_TTY //#define BB_UNIX2DOS @@ -468,4 +471,3 @@ # define BB_SH # define shell_main msh_main #endif - diff --git a/debian/Config.h-static b/debian/Config.h-static index 90d7e15..71f6df0 100644 --- a/debian/Config.h-static +++ b/debian/Config.h-static @@ -52,7 +52,7 @@ #define BB_HEAD #define BB_HOSTID #define BB_HOSTNAME -#define BB_HUSH +//#define BB_HUSH #define BB_ID #define BB_IFCONFIG #define BB_INIT @@ -60,7 +60,7 @@ #define BB_KILL #define BB_KILLALL #define BB_KLOGD -#define BB_LASH +//#define BB_LASH #define BB_LENGTH #define BB_LN #define BB_LOADACM @@ -78,13 +78,15 @@ #define BB_MKNOD #define BB_MKSWAP #define BB_MKTEMP -#define BB_NC +//#define BB_MODPROBE #define BB_MORE #define BB_MOUNT -#define BB_MSH +//#define BB_MSH #define BB_MT #define BB_MV +#define BB_NC #define BB_NSLOOKUP +#define BB_PIDOF #define BB_PING #define BB_PIVOT_ROOT #define BB_POWEROFF @@ -117,6 +119,7 @@ #define BB_TFTP #define BB_TOUCH #define BB_TR +#define BB_TRACEROUTE #define BB_TRUE_FALSE #define BB_TTY #define BB_UNIX2DOS @@ -148,10 +151,10 @@ // // If you enabled one or more of the shells, you may select which one // should be run when sh is invoked: -//#define BB_FEATURE_SH_IS_ASH +#define BB_FEATURE_SH_IS_ASH //#define BB_FEATURE_SH_IS_HUSH //#define BB_FEATURE_SH_IS_LASH -#define BB_FEATURE_SH_IS_MSH +//#define BB_FEATURE_SH_IS_MSH // // BusyBox will, by default, malloc space for its buffers. This costs code // size for the call to xmalloc. You can use the following feature to have @@ -468,5 +471,3 @@ # define BB_SH # define shell_main msh_main #endif - - diff --git a/debian/Config.h-udeb b/debian/Config.h-udeb index d3994a4..51446ff 100644 --- a/debian/Config.h-udeb +++ b/debian/Config.h-udeb @@ -78,13 +78,15 @@ #define BB_MKNOD #define BB_MKSWAP //#define BB_MKTEMP -//#define BB_NC +//#define BB_MODPROBE #define BB_MORE #define BB_MOUNT //#define BB_MSH //#define BB_MT #define BB_MV +//#define BB_NC //#define BB_NSLOOKUP +//#define BB_PIDOF #define BB_PING #define BB_PIVOT_ROOT #define BB_POWEROFF @@ -117,6 +119,7 @@ //#define BB_TFTP #define BB_TOUCH #define BB_TR +//#define BB_TRACEROUTE #define BB_TRUE_FALSE #define BB_TTY //#define BB_UNIX2DOS @@ -468,6 +471,3 @@ # define BB_SH # define shell_main msh_main #endif - - - |