Mention dependency problems caused by pgrminclude on include files.
authorBruce Momjian <bruce@momjian.us>
Mon, 17 Jul 2006 19:37:21 +0000 (19:37 +0000)
committerBruce Momjian <bruce@momjian.us>
Mon, 17 Jul 2006 19:37:21 +0000 (19:37 +0000)
src/tools/pginclude/README

index ac6cd7edfe23dae99d2a0507e26572a5cf97292e..35f8220526a4c3322f6150f46e920d7af1fb92db 100644 (file)
@@ -13,7 +13,7 @@ pgrminclude [-v]
 pgcheckdefines
        check for #ifdef tests on symbols defined in files that
        weren't included --- this is a necessary sanity check on
-       pgrminclude!
+       pgrminclude
 
 pgdefine   create macro calls for all defines in the file (used by
        the above routines)
@@ -22,9 +22,19 @@ It is also a good idea to sort the pg-specific include files in
 alphabetic order.  This is best done with a text editor. Typical usage
 order would be:
 
-   pgfixinclude  
-   pgcompinclude
-   pgrminclude /src/include
-   pgcompinclude
+   pgfixinclude
+   sort include references
+   run multiple times:
+       pgcompinclude
+       pgrminclude /src/include
    pgrminclude /
    pgcheckdefines
+
+There is a complexity when modifying /src/include.  If include file 1
+includes file 2, and file 2 includes file 3, then when file 1 is
+processed, it needs only file 2, not file 3.  However, if later, include
+file 2 is processed, and file 3 is not needed by file 2 and is removed,
+file 1 might then need to include file 3.  For this reason, the
+pgcompinclude and pgrminclude /src/include steps must be run several
+times until all includes compile cleanly.
+