summaryrefslogtreecommitdiff
path: root/libbb
diff options
context:
space:
mode:
Diffstat (limited to 'libbb')
-rwxr-xr-xlibbb/mk_loop_h.sh23
1 files changed, 13 insertions, 10 deletions
diff --git a/libbb/mk_loop_h.sh b/libbb/mk_loop_h.sh
index c33c010..71c9873 100755
--- a/libbb/mk_loop_h.sh
+++ b/libbb/mk_loop_h.sh
@@ -2,8 +2,7 @@
#
# Figure out (i) the type of dev_t (ii) the defines for loop stuff
#
-
-rm -f loop.h
+# Output of this script is normally redirected to "loop.h".
# Since 1.3.79 there is an include file <asm/posix_types.h>
# that defines __kernel_dev_t.
@@ -12,23 +11,27 @@ rm -f loop.h
# avoids namespace pollution. Otherwise we guess that __kernel_dev_t
# is an unsigned short (which is true on i386, but false on alpha).
+# BUG: This test is actually broken if your gcc is not configured to
+# search /usr/include, as may well happen with cross-compilers.
+# It would be better to ask $(CC) if these files can be found.
+
if [ -f /usr/include/linux/posix_types.h ]; then
- echo '#include <linux/posix_types.h>' >> loop.h
- echo '#undef dev_t' >> loop.h
- echo '#define dev_t __kernel_dev_t' >> loop.h
+ echo '#include <linux/posix_types.h>'
+ echo '#undef dev_t'
+ echo '#define dev_t __kernel_dev_t'
else
- echo '#undef dev_t' >> loop.h
- echo '#define dev_t unsigned short' >> loop.h
+ echo '#undef dev_t'
+ echo '#define dev_t unsigned short'
fi
# Next we have to find the loop stuff itself.
# First try kernel source, then a private version.
if [ -f /usr/include/linux/loop.h ]; then
- echo '#include <linux/loop.h>' >> loop.h
+ echo '#include <linux/loop.h>'
else
- echo '#include "real_loop.h"' >> loop.h
+ echo '#include "real_loop.h"'
fi
-echo '#undef dev_t' >> loop.h
+echo '#undef dev_t'