On Thu, Apr 2, 2015 at 11:49 AM, Tom Lane <tgl@sss.pgh.pa.us> wrote:
Michael Paquier <michael.paquier@gmail.com> writes: > The patch attached fixes all those inconsistencies (tested build on OSX and > Windows).
I think this is going in the wrong direction entirely, ie doubling down on Alvaro's original mistake. libpq *must not* depend on libpgcommon, because the latter is not compiled to be position-independent code (on machines where that matters).
Hm, OK. I was not aware of that.
Furthermore, proposing to add this:
+#ifndef FRONTEND +#error "This file is not expected to be compiled for backend code" +#endif
seems to me to prove that connstrings.c didn't belong in src/common in the first place.
I'm too tired to think through exactly what this should be like instead, but we do have rules about what goes where, and the response to violating those rules should not be to break down the divisions even more.
libpgport sounds like the only place then. I guess that it would be right to revert this patch on master and replace it with a version similar to what has been done in backbranches for now, and look again at this refactoring stuff...