summaryrefslogtreecommitdiff
path: root/release/src/router/busybox/pristine_setup.sh
diff options
context:
space:
mode:
Diffstat (limited to 'release/src/router/busybox/pristine_setup.sh')
-rwxr-xr-xrelease/src/router/busybox/pristine_setup.sh46
1 files changed, 46 insertions, 0 deletions
diff --git a/release/src/router/busybox/pristine_setup.sh b/release/src/router/busybox/pristine_setup.sh
new file mode 100755
index 00000000..9e638f96
--- /dev/null
+++ b/release/src/router/busybox/pristine_setup.sh
@@ -0,0 +1,46 @@
+#!/bin/sh
+#
+# To compile BusyBox without touching the original sources
+# (as might be interesting for multi-target builds), create
+# an empty directory, cd into it, and run this program by
+# giving its explicit path (kind of like how you would run
+# configure, if BusyBox had one). Then you should be ready
+# to "make". Files in the build tree, in particular Config.h,
+# will override those in the pristine source tree.
+#
+# If you use a ? in your path name, you lose, see sed command below.
+
+export LC_ALL=POSIX
+export LC_CTYPE=POSIX
+
+DIR=${0%%/pristine_setup.sh}
+if [ ! -d $DIR ]; then
+ echo "unexpected problem: $DIR is not a directory. Aborting pristine setup"
+ exit
+fi
+
+echo " "
+
+if [ -e ./Config.h ]; then
+ echo "./Config.h already exists: not overwriting"
+ exit
+fi
+
+if [ -e ./Makefile ]; then
+ echo "./Makefile already exists: not overwriting"
+fi
+
+sed -e "s?BB_SRC_DIR =.*?BB_SRC_DIR = $DIR?" <$DIR/Makefile >Makefile || exit
+cp $DIR/Config.h Config.h || exit
+#mkdir -p pwd_grp
+
+if [ ! -r $DIR/sh.c ]; then
+ echo "Warning: no shell selected. You must make the symlink (sh.c to either"
+ echo "lash.c or hush.c) in $DIR, not here."
+fi
+
+echo " "
+echo "You may now type 'make' to build busybox in this directory"
+echo "($PWD) using the pristine sources in $DIR"
+echo " "
+