]> granicus.if.org Git - postgresql/commit
Build backend/parser/scan.l and interfaces/ecpg/preproc/pgc.l standalone.
authorTom Lane <tgl@sss.pgh.pa.us>
Sat, 19 Mar 2016 16:07:16 +0000 (12:07 -0400)
committerTom Lane <tgl@sss.pgh.pa.us>
Sat, 19 Mar 2016 16:07:24 +0000 (12:07 -0400)
commit72b1e3a21f0540ffa5c1f8f474b6c52097a368bb
treed674d146a01972573c9db10fc4a61906d40a87e4
parent7bafffea647e21864cb857ab5b6fe266f2d0976a
Build backend/parser/scan.l and interfaces/ecpg/preproc/pgc.l standalone.

Now that we know about the %top{} trick, we can revert to building flex
lexers as separate .o files.  This is worth doing for a couple of reasons
besides sheer cleanliness.  We can narrow the scope of the -Wno-error flag
that's forced on scan.c.  Also, since these grammar and lexer files are
so large, splitting them into separate build targets should have some
advantages in build speed, particularly in parallel or ccache'd builds.

We have quite a few other .l files that could be changed likewise, but the
above arguments don't apply to them, so the benefit of fixing them seems
pretty minimal.  Leave the rest for some other day.
src/backend/parser/Makefile
src/backend/parser/gram.y
src/backend/parser/scan.l
src/interfaces/ecpg/preproc/Makefile
src/interfaces/ecpg/preproc/ecpg.trailer
src/interfaces/ecpg/preproc/pgc.l