aboutsummaryrefslogtreecommitdiff
path: root/applets
diff options
context:
space:
mode:
authorErik Andersen <andersen@codepoet.org>2000-03-17 01:12:41 +0000
committerErik Andersen <andersen@codepoet.org>2000-03-17 01:12:41 +0000
commit6273f655c8e5a1b7233f94fd606ceaed95b9c7a7 (patch)
treead754ea972e52bb21db4323d916bacfb4f1c3f07 /applets
parent161220c4985b8c05a57f09b2693a6cad74d2e81d (diff)
downloadbusybox-6273f655c8e5a1b7233f94fd606ceaed95b9c7a7.tar.gz
Several fixes.
-Erik
Diffstat (limited to 'applets')
-rw-r--r--applets/busybox.c4
-rwxr-xr-xapplets/busybox.mkll3
-rwxr-xr-xapplets/busybox.sh11
3 files changed, 11 insertions, 7 deletions
diff --git a/applets/busybox.c b/applets/busybox.c
index 7582647d5..ee745e73e 100644
--- a/applets/busybox.c
+++ b/applets/busybox.c
@@ -4,10 +4,6 @@
#include <string.h>
#include <errno.h>
-#ifndef BB_INIT
-#undef BB_FEATURE_LINUXRC
-#endif
-
static int been_there_done_that = 0;
/* It has been alledged that doing such things can
diff --git a/applets/busybox.mkll b/applets/busybox.mkll
index fa1bff209..90f28e8b7 100755
--- a/applets/busybox.mkll
+++ b/applets/busybox.mkll
@@ -4,7 +4,8 @@
DF="busybox.def.h"
MF="busybox.c"
-LIST="$(sed -n '/^#define/{s/^#define BB_FEATURE_.*//g;s/^#define //p;}' $DF)"
+#LIST="$(sed -n '/^#define/{s/^#define BB_FEATURE_.*//g;s/^#define //p;}' $DF)"
+LIST="$(cpp $DF -dM | sed -n -e '/^.*BB_FEATURE.*$/d;s/^#define.*\<BB_\(.*\)\>/\1/gp;' | sort)"
for def in ${LIST}; do
i=`sed -n '/^#ifdef \<'$def'\>.*/,/^#endif/{ s/.*\"\(.*\)\".*\(_BB_DIR_[A-Z_]*\).*$/\2\/\1/gp; }' $MF`
diff --git a/applets/busybox.sh b/applets/busybox.sh
index 304ac87e7..c4e241f84 100755
--- a/applets/busybox.sh
+++ b/applets/busybox.sh
@@ -1,3 +1,10 @@
#!/bin/sh
-sed -n -e 's/^#define.*BB_FEATURE.*$//g;y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/;' \
- -e '/^#define/{s/.*bb_//;s/$/.o/p;}' busybox.def.h
+
+# I added in the extra "ls" so only source files that
+# actually exist will show up in the compile list.
+ls -1 ` \
+ cpp busybox.def.h -dM | \
+ sed -n -e '/^.*BB_FEATURE.*$/d;s/^#define.*\<BB_\(.*\)\>/\1.c/gp;' \
+ | tr [:upper:] [:lower:] | sort
+` 2>/dev/null | sed -e 's/\.c$/\.o/g'
+