hush/applets/busybox.mkll
Erik Andersen e9fee653dc Use gcc -E instead of cpp to enhance portability for brain
damaged platforms (i.e. OpenLinux) that do not have cpp in
the default path but instead hide it under /usr/lib/...
 -Erik
2000-04-06 00:10:39 +00:00

21 lines
635 B
Bash
Executable File

#!/bin/sh
# Make busybox links list file.
DF="busybox.def.h"
MF="busybox.c"
#LIST="$(sed -n '/^#define/{s/^#define BB_FEATURE_.*//g;s/^#define //p;}' $DF)"
LIST="$(gcc -E -dM $DF | 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`
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