mostang.com!davidm | c2e6b4c | 2003-03-28 07:43:22 +0000 | [diff] [blame] | 1 | #!/bin/sh |
mostang.com!davidm | dfdbabd | 2004-05-04 22:19:18 +0000 | [diff] [blame^] | 2 | cwd=`pwd` |
| 3 | dir=`basename ${cwd}` |
| 4 | # |
| 5 | # When compiling a file that goes into libunwind, we only |
| 6 | # need to compile it when we really do support UNW_LOCAL_ONLY. |
| 7 | # In contrast, libunwind-tests should always get compiled. |
| 8 | # |
| 9 | if test $dir = "tests"; then |
| 10 | local_only_test="" |
| 11 | else |
| 12 | local_only_test="defined(UNW_LOCAL_ONLY) && " |
| 13 | fi |
mostang.com!davidm | e455a92 | 2003-04-23 19:22:42 +0000 | [diff] [blame] | 14 | for gname in `ls G*.c G*.cxx G*.S 2>/dev/null`; do |
mostang.com!davidm | c2e6b4c | 2003-03-28 07:43:22 +0000 | [diff] [blame] | 15 | lname="L$(expr $gname : '.\(.*\)')" |
| 16 | bk edit $lname >/dev/null 2>&1 |
mostang.com!davidm | e455a92 | 2003-04-23 19:22:42 +0000 | [diff] [blame] | 17 | ext=$(expr $gname : '[^.]*[.]\(.*\)') |
| 18 | if [ "$ext" = "S" ]; then |
| 19 | include="" |
| 20 | else |
| 21 | include="#include <libunwind.h>" |
| 22 | fi |
mostang.com!davidm | 50e11fa | 2003-04-03 07:59:15 +0000 | [diff] [blame] | 23 | echo -e "\ |
| 24 | #define UNW_LOCAL_ONLY\n\ |
mostang.com!davidm | e455a92 | 2003-04-23 19:22:42 +0000 | [diff] [blame] | 25 | $include\n\ |
mostang.com!davidm | dfdbabd | 2004-05-04 22:19:18 +0000 | [diff] [blame^] | 26 | #if ${local_only_test}!defined(UNW_REMOTE_ONLY)\n\ |
mostang.com!davidm | 50e11fa | 2003-04-03 07:59:15 +0000 | [diff] [blame] | 27 | #include \"$gname\"\n\ |
| 28 | #endif" > $lname |
| 29 | echo created $lname |
mostang.com!davidm | c2e6b4c | 2003-03-28 07:43:22 +0000 | [diff] [blame] | 30 | done |