]> granicus.if.org Git - postgresql/commitdiff
Fix #if blocks.
authorBruce Momjian <bruce@momjian.us>
Fri, 26 Aug 2011 17:09:39 +0000 (13:09 -0400)
committerBruce Momjian <bruce@momjian.us>
Fri, 26 Aug 2011 22:15:13 +0000 (18:15 -0400)
src/tools/pginclude/pgrminclude

index e0173fdc5f2a0457ae881dcd452288274c821522..0f0e10b899820be4d9d5fa1f0e0e680055fc71b7 100755 (executable)
@@ -11,19 +11,18 @@ grep -v '\./pg_config.h' |
 grep -v '\./c.h' |
 while read FILE
 do
-        # Skip files with #if and #ifdef blocks because the blocks
-       # might contain code that is not compiled on this platform.
-       grep -q '^#if' "$FILE" && continue
-
        if [ `expr $FILE : '.*\.h$'` -ne 0 ]
        then    IS_INCLUDE="Y"
        else    IS_INCLUDE="N"
        fi
 
        # loop through all includes
-       cat "$FILE" | grep "^#include" |
+       cat "$FILE" | 
+       grep "^#include\>" |
        grep -v '/\* *pgrminclude  *ignore *\*/' |
        sed 's/^#include[       ]*[<"]\([^>"]*\).*$/\1/g' |
+       grep -v 'parser/kwlist\.h' |
+       grep -v '\.c$' |
        while read INCLUDE
        do
                if [ "$1" = "-v" ]
@@ -43,12 +42,18 @@ do
                grep -A1 '^#include[    ][      ]*[<"]'"$INCLUDE"'[>"]' "$FILE" |
                     egrep -q '^#else|^#endif' && continue
 
-               # remove defines from include files
+               # Remove all #if and #ifdef blocks because the blocks
+               # might contain code that is not compiled on this platform.
+               cat "$FILE" |
+               grep -v "^#if" |
+               grep -v "^#else" |
+               grep -v "^#endif" |
                if [ "$IS_INCLUDE" = "Y" ]
-               then    cat "$FILE" | grep -v "^#if" | grep -v "^#else" |
-                       grep -v "^#endif" | sed 's/->[a-zA-Z0-9_\.]*//g' >/tmp/$$a
-               else    cat "$FILE" >/tmp/$$a
-               fi
+               then    # remove struct references
+#                      sed 's/->[a-zA-Z0-9_\.]*//g'
+                       cat
+               else    cat
+               fi >/tmp/$$a
 
                # set up initial file contents
                grep -v '^#include[     ][      ]*[<"]'"$INCLUDE"'[>"]' \