diff --git a/Makefile b/Makefile
index ca1a726..44d5b5e 100644
--- a/Makefile
+++ b/Makefile
@@ -227,7 +227,10 @@
 	    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 @@
 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 @@
 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)
diff --git a/chroot.c b/chroot.c
index f2d9b4d..0440e46 100644
--- a/chroot.c
+++ b/chroot.c
@@ -48,17 +48,17 @@
 		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 @@
 		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
-
-
-
