Patch from Larry Doolittle so it will build the newdocs right.
authorEric Andersen <andersen@codepoet.org>
Sat, 2 Dec 2000 00:44:48 +0000 (00:44 -0000)
committerEric Andersen <andersen@codepoet.org>
Sat, 2 Dec 2000 00:44:48 +0000 (00:44 -0000)
Makefile
applets.h
applets/busybox.mkll
busybox.mkll
include/applets.h

index 3b24002fc770f888e4f6a282f6a158aee0e3d34f..345c3c35fc13599fe27a85e8a73d7d64178167ea 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -184,19 +184,19 @@ docs/busybox.txt: docs/busybox.sgml
        @echo BusyBox Documentation
        @echo
        - mkdir -p docs
-       (cd docs; sgmltools -b txt $(BB_SRC_DIR)/busybox.sgml)
+       (cd docs; sgmltools -b txt busybox.sgml)
 
 docs/busybox.dvi: docs/busybox.sgml
        - mkdir -p docs
-       (cd docs; sgmltools -b dvi $(BB_SRC_DIR)/busybox.sgml)
+       (cd docs; sgmltools -b dvi busybox.sgml)
 
 docs/busybox.ps: docs/busybox.sgml
        - mkdir -p docs
-       (cd docs; sgmltools -b ps $(BB_SRC_DIR)/busybox.sgml)
+       (cd docs; sgmltools -b ps busybox.sgml)
 
 docs/busybox.pdf: docs/busybox.ps
        - mkdir -p docs
-       (cd docs; ps2pdf $(BB_SRC_DIR)/busybox.ps)
+       (cd docs; ps2pdf busybox.ps)
 
 docs/busybox/busyboxdocumentation.html: docs/busybox.sgml
        - mkdir -p docs
@@ -209,7 +209,7 @@ busybox: $(OBJECTS)
        $(STRIP)
 
 busybox.links: Config.h
-       -$(BB_SRC_DIR)/busybox.mkll $(BB_SRC_DIR)/applets.h | sort >$@
+       - $(BB_SRC_DIR)/busybox.mkll $(CONFIG_H) $(BB_SRC_DIR)/applets.h >$@
 
 nfsmount.o cmdedit.o: %.o: %.h
 $(OBJECTS): %.o: %.c Config.h busybox.h Makefile
index 254924a7a75bb5b5f674d5d0540895f0a561986a..fe8c597827fcead05fd54200e05bb1179f9f1bbb 100644 (file)
--- a/applets.h
+++ b/applets.h
  * file result in the listing remaining in ascii order. You have been warned.
  */
 
-#ifndef PROTOTYPES
-const struct BB_applet applets[] = {
-#define APPLET(a,b,c,d) {a,b,c,d},
-#define APPLET_NOUSAGE(a,b,c) {a,b,c,NULL},
-#else
+#if defined(PROTOTYPES)
 #define APPLET(a,b,c,d) \
        extern int b(int argc, char **argv); \
        extern const char d[];
 #define APPLET_NOUSAGE(a,b,c) \
        extern int b(int argc, char **argv);
+#elif defined(MAKE_LINKS)
+#define APPLET(a,b,c,d) LINK c a
+#define APPLET_NOUSAGE(a,b,c) LINK c a
+#else
+const struct BB_applet applets[] = {
+#define APPLET(a,b,c,d) {a,b,c,d},
+#define APPLET_NOUSAGE(a,b,c) {a,b,c,NULL},
 #endif
 
 #ifdef BB_TEST
@@ -378,7 +381,7 @@ const struct BB_applet applets[] = {
        APPLET("zcat", gunzip_main, _BB_DIR_BIN, gunzip_usage)
 #endif
 
-#ifndef PROTOTYPES
+#if !defined(PROTOTYPES) && !defined(MAKE_LINKS)
        { 0,NULL,0,NULL}
 };
 
index 922dcdd81fcf649f216d30e50ab43b51826fc15b..12fa06f40c76785fa18f73a944d0ef535d1a53c4 100755 (executable)
@@ -1,23 +1,16 @@
 #!/bin/sh
 # Make busybox links list file.
 
-DF="Config.h"
-
-MF=$1
-if [ "$MF" = "" ]; then
-    MF="applets.h"
-fi
-
-LIST="$(gcc -E -dM $DF | sed -n -e '/^.*BB_FEATURE.*$/d;s/^#define.*\<BB_\(.*\)\>/BB_\1/gp;' | sort)"
-
-for def in ${LIST}; do
-       i=`sed -n '/^#ifdef \<'$def'\>.*/,/^#endif/{ s/.*\"\(.*\)\".*\(_BB_DIR_[A-Z_]*\).*$/\2\/\1/gp; }' $MF`
-       for j in $i; do 
-               if [ -z $j ] ; then 
-                       continue;
-               fi;
-               echo $j | sed -e 's/_BB_DIR_ROOT//g;s/_BB_DIR_BIN/\/bin/g;' \
-                   -e 's/_BB_DIR_SBIN/\/sbin/g;s/_BB_DIR_USR_BIN/\/usr\/bin/g;' \
-                   -e 's/_BB_DIR_USR_SBIN/\/usr\/sbin/g;'
-       done;
-done
+CONFIG_H=${1:-Config.h}
+APPLETS_H=${2:-applets.h}
+gcc -E -DMAKE_LINKS -include $CONFIG_H $APPLETS_H |
+  awk '/^[ \t]*LINK/{
+       match($2,"_BB_DIR[A-Z_]*")
+       dir=substr($2,RSTART+7,RLENGTH-7)
+       gsub("_","/",dir)
+       if(dir=="/ROOT") dir=""
+       file=$3
+       gsub("\"","",file)
+       if (file=="busybox") next
+       print tolower(dir) "/" file
+  }'
index 922dcdd81fcf649f216d30e50ab43b51826fc15b..12fa06f40c76785fa18f73a944d0ef535d1a53c4 100755 (executable)
@@ -1,23 +1,16 @@
 #!/bin/sh
 # Make busybox links list file.
 
-DF="Config.h"
-
-MF=$1
-if [ "$MF" = "" ]; then
-    MF="applets.h"
-fi
-
-LIST="$(gcc -E -dM $DF | sed -n -e '/^.*BB_FEATURE.*$/d;s/^#define.*\<BB_\(.*\)\>/BB_\1/gp;' | sort)"
-
-for def in ${LIST}; do
-       i=`sed -n '/^#ifdef \<'$def'\>.*/,/^#endif/{ s/.*\"\(.*\)\".*\(_BB_DIR_[A-Z_]*\).*$/\2\/\1/gp; }' $MF`
-       for j in $i; do 
-               if [ -z $j ] ; then 
-                       continue;
-               fi;
-               echo $j | sed -e 's/_BB_DIR_ROOT//g;s/_BB_DIR_BIN/\/bin/g;' \
-                   -e 's/_BB_DIR_SBIN/\/sbin/g;s/_BB_DIR_USR_BIN/\/usr\/bin/g;' \
-                   -e 's/_BB_DIR_USR_SBIN/\/usr\/sbin/g;'
-       done;
-done
+CONFIG_H=${1:-Config.h}
+APPLETS_H=${2:-applets.h}
+gcc -E -DMAKE_LINKS -include $CONFIG_H $APPLETS_H |
+  awk '/^[ \t]*LINK/{
+       match($2,"_BB_DIR[A-Z_]*")
+       dir=substr($2,RSTART+7,RLENGTH-7)
+       gsub("_","/",dir)
+       if(dir=="/ROOT") dir=""
+       file=$3
+       gsub("\"","",file)
+       if (file=="busybox") next
+       print tolower(dir) "/" file
+  }'
index 254924a7a75bb5b5f674d5d0540895f0a561986a..fe8c597827fcead05fd54200e05bb1179f9f1bbb 100644 (file)
  * file result in the listing remaining in ascii order. You have been warned.
  */
 
-#ifndef PROTOTYPES
-const struct BB_applet applets[] = {
-#define APPLET(a,b,c,d) {a,b,c,d},
-#define APPLET_NOUSAGE(a,b,c) {a,b,c,NULL},
-#else
+#if defined(PROTOTYPES)
 #define APPLET(a,b,c,d) \
        extern int b(int argc, char **argv); \
        extern const char d[];
 #define APPLET_NOUSAGE(a,b,c) \
        extern int b(int argc, char **argv);
+#elif defined(MAKE_LINKS)
+#define APPLET(a,b,c,d) LINK c a
+#define APPLET_NOUSAGE(a,b,c) LINK c a
+#else
+const struct BB_applet applets[] = {
+#define APPLET(a,b,c,d) {a,b,c,d},
+#define APPLET_NOUSAGE(a,b,c) {a,b,c,NULL},
 #endif
 
 #ifdef BB_TEST
@@ -378,7 +381,7 @@ const struct BB_applet applets[] = {
        APPLET("zcat", gunzip_main, _BB_DIR_BIN, gunzip_usage)
 #endif
 
-#ifndef PROTOTYPES
+#if !defined(PROTOTYPES) && !defined(MAKE_LINKS)
        { 0,NULL,0,NULL}
 };