diff options
author | Sam Lantinga <slouken@libsdl.org> | 2006-02-20 12:45:51 +0000 |
---|---|---|
committer | Sam Lantinga <slouken@libsdl.org> | 2006-02-20 12:45:51 +0000 |
commit | f41e6271cd1233e9e311d41c5d7306568aa093da (patch) | |
tree | 18645e12732a319a1446ff4171dcc4fbcc9500c0 /build-scripts | |
parent | f3c0bf6f8f9d739afc70b65607a0b206fd5cf9b5 (diff) |
Blargle-fnargle dependencies and build rules
Diffstat (limited to 'build-scripts')
-rwxr-xr-x | build-scripts/makedep.sh | 46 |
1 files changed, 21 insertions, 25 deletions
diff --git a/build-scripts/makedep.sh b/build-scripts/makedep.sh index 50ce568c0d..772fd12ae4 100755 --- a/build-scripts/makedep.sh +++ b/build-scripts/makedep.sh @@ -2,6 +2,11 @@ # # Generate dependencies from a list of source files +BUILDC="\\\$\\(LIBTOOL\\) --mode=compile \\\$\\(CC\\) \\\$\\(CFLAGS\\) -c \$src -o \\\$@" +BUILDCC=$BUILDC +BUILDM=$BUILDC +BUILDASM="\\\$\\(LIBTOOL\\) --tag=CC --mode=compile \\\$\\(auxdir\\)/strip_fPIC.sh \\\$\\(NASM\\) \$src -o \\\$@" + # Check to make sure our environment variables are set if test x"$INCLUDE" = x -o x"$SOURCES" = x -o x"$objects" = x -o x"$output" = x; then echo "SOURCES, INCLUDE, objects, and output needs to be set" @@ -21,27 +26,19 @@ search_deps() while read file do cache=${cache_prefix}_`generate_var $file` if test -f $cache; then - # We already ahve this cached - if test x$2 = x; then - cat $cache - else - cat $cache >>$2 - fi - continue; + : # We already ahve this cached + else + : >$cache + for path in $base `echo $INCLUDE | sed 's|-I||g'` + do dep="$path/$file" + if test -f "$dep"; then + echo " $dep \\" >>$cache + search_deps $dep >>$cache + break + fi + done fi - for path in $base `echo $INCLUDE | sed 's|-I||g'` - do dep="$path/$file" - if test -f "$dep"; then - echo " $dep \\" >>$cache - if test x$2 = x; then - echo " $dep \\" - else - echo " $dep \\" >>$2 - fi - search_deps $dep $cache - break - fi - done + cat $cache done } @@ -54,13 +51,12 @@ do echo "Generating dependencies for $src" search_deps $src | sort | uniq >>${output}.new echo "" >>${output}.new case $ext in - asm) echo " \$(BUILDASM)" >>${output}.new;; - cc) echo " \$(BUILDCC)" >>${output}.new;; - c) echo " \$(BUILDC)" >>${output}.new;; - m) echo " \$(BUILDM)" >>${output}.new;; + c) eval echo \\" $BUILDC\\" >>${output}.new;; + cc) eval echo \\" $BUILDCC\\" >>${output}.new;; + m) eval echo \\" $BUILDM\\" >>${output}.new;; + asm) eval echo \\" $BUILDASM\\" >>${output}.new;; *) echo "Unknown file extension: $ext";; esac echo "" >>${output}.new done -rm -f ${cache_prefix}* mv ${output}.new ${output} |