Ecpg dependency
Hello,
After upgrade from 11.2 to 12.2 I found, that build of ecpg component
depends on pgcommon_shlib and pgport_shlib. But build of ecpg
doesn't include build of pgcommon_shlib and pgport_shlib. That means, if I
want to build ecpg, first I need to build pgcommon_shlib and pgport_shlib
and after that I am able to build ecpg.
I would like to ask if this behavior is expected or not ? Because previous
version doesn't require this separate builds.
Thanks
Filip Januš
On Tue, Mar 10, 2020 at 01:47:14PM +0100, Filip Janus wrote:
Hello,
After upgrade from 11.2 to 12.2 I found, that build of ecpg component depends
on�pgcommon_shlib and�pgport_shlib.� But build of ecpg doesn't�include build
of�pgcommon_shlib and�pgport_shlib. That means, if I want to build ecpg, first
I need to build��pgcommon_shlib and�pgport_shlib and after that I am able to
build ecpg.I would like to ask if this behavior is expected or not ? Because previous
version doesn't require this separate builds.
Ah, I see the problem, and this is a new bug in PG 12. The attached
patch fixes PG 12 and master.
--
Bruce Momjian <bruce@momjian.us> https://momjian.us
EnterpriseDB https://enterprisedb.com
+ As you are, so once was I. As I am, so you will be. +
+ Ancient Roman grave inscription +
Attachments:
ecpg.difftext/x-diff; charset=us-asciiDownload+2-0
On Sat, Mar 21, 2020 at 02:14:44PM -0400, Bruce Momjian wrote:
On Tue, Mar 10, 2020 at 01:47:14PM +0100, Filip Janus wrote:
Hello,
After upgrade from 11.2 to 12.2 I found, that build of ecpg component depends
on�pgcommon_shlib and�pgport_shlib.� But build of ecpg doesn't�include build
of�pgcommon_shlib and�pgport_shlib. That means, if I want to build ecpg, first
I need to build��pgcommon_shlib and�pgport_shlib and after that I am able to
build ecpg.I would like to ask if this behavior is expected or not ? Because previous
version doesn't require this separate builds.Ah, I see the problem, and this is a new bug in PG 12. The attached
patch fixes PG 12 and master.
+ all-lib: | submake-libpgport
Oh, I forgot to mention I got this line from
src/interfaces/libpq/Makefile:
--
Bruce Momjian <bruce@momjian.us> https://momjian.us
EnterpriseDB https://enterprisedb.com
+ As you are, so once was I. As I am, so you will be. +
+ Ancient Roman grave inscription +
Bruce Momjian <bruce@momjian.us> writes:
On Sat, Mar 21, 2020 at 02:14:44PM -0400, Bruce Momjian wrote:
On Tue, Mar 10, 2020 at 01:47:14PM +0100, Filip Janus wrote:
Hello,
After upgrade from 11.2 to 12.2 I found, that build of ecpg component depends
on pgcommon_shlib and pgport_shlib. But build of ecpg doesn't include build
of pgcommon_shlib and pgport_shlib. That means, if I want to build ecpg, first
I need to build pgcommon_shlib and pgport_shlib and after that I am able to
build ecpg.I would like to ask if this behavior is expected or not ? Because previous
version doesn't require this separate builds.Ah, I see the problem, and this is a new bug in PG 12. The attached
patch fixes PG 12 and master.+ all-lib: | submake-libpgport
Oh, I forgot to mention I got this line from
src/interfaces/libpq/Makefile:
And that line is wrong, but my patch to fix it¹ seems to have fallen
between the cracks.
[1]: /messages/by-id/871rsa13ae.fsf@wibble.ilmari.org
Adding the dependency to `all-lib` only fixes it for serial builds. To
fix it properly, so it works with parallel builds (e.g. 'make -j4 -C
src/interfaces/ecpg', the dependency needs to be declared via
SHLIB_PREREQS, as attached
- ilmari
--
- Twitter seems more influential [than blogs] in the 'gets reported in
the mainstream press' sense at least. - Matt McLeod
- That'd be because the content of a tweet is easier to condense down
to a mainstream media article. - Calle Dybedahl
Attachments:
0001-Add-missing-libpgport-prereq-in-ecpg-s-pgtypeslib.patchtext/x-diffDownload+2-1
On Sat, Mar 21, 2020 at 07:30:48PM +0000, Dagfinn Ilmari Manns�ker wrote:
Bruce Momjian <bruce@momjian.us> writes:
On Sat, Mar 21, 2020 at 02:14:44PM -0400, Bruce Momjian wrote:
On Tue, Mar 10, 2020 at 01:47:14PM +0100, Filip Janus wrote:
Hello,
After upgrade from 11.2 to 12.2 I found, that build of ecpg component depends
on�pgcommon_shlib and�pgport_shlib.� But build of ecpg doesn't�include build
of�pgcommon_shlib and�pgport_shlib. That means, if I want to build ecpg, first
I need to build��pgcommon_shlib and�pgport_shlib and after that I am able to
build ecpg.I would like to ask if this behavior is expected or not ? Because previous
version doesn't require this separate builds.Ah, I see the problem, and this is a new bug in PG 12. The attached
patch fixes PG 12 and master.+ all-lib: | submake-libpgport
Oh, I forgot to mention I got this line from
src/interfaces/libpq/Makefile:And that line is wrong, but my patch to fix it� seems to have fallen
between the cracks.[1] /messages/by-id/871rsa13ae.fsf@wibble.ilmari.org
Adding the dependency to `all-lib` only fixes it for serial builds. To
fix it properly, so it works with parallel builds (e.g. 'make -j4 -C
src/interfaces/ecpg', the dependency needs to be declared via
SHLIB_PREREQS, as attached
Oh, good catch. I did not notice that patch before. Adding that change
to src/interfaces/ecpg/pgtypeslib/Makefile fixes the stand-alone
compile.
The attached patch does this, and changes libpq to use it too, so
parallel Make works there too.
--
Bruce Momjian <bruce@momjian.us> https://momjian.us
EnterpriseDB https://enterprisedb.com
+ As you are, so once was I. As I am, so you will be. +
+ Ancient Roman grave inscription +
Attachments:
ecpg.difftext/x-diff; charset=us-asciiDownload+2-2
On Sat, Mar 21, 2020 at 06:13:03PM -0400, Bruce Momjian wrote:
On Sat, Mar 21, 2020 at 07:30:48PM +0000, Dagfinn Ilmari Manns�ker wrote:
Bruce Momjian <bruce@momjian.us> writes:
On Sat, Mar 21, 2020 at 02:14:44PM -0400, Bruce Momjian wrote:
Oh, I forgot to mention I got this line from
src/interfaces/libpq/Makefile:And that line is wrong, but my patch to fix it� seems to have fallen
between the cracks.[1] /messages/by-id/871rsa13ae.fsf@wibble.ilmari.org
Adding the dependency to `all-lib` only fixes it for serial builds. To
fix it properly, so it works with parallel builds (e.g. 'make -j4 -C
src/interfaces/ecpg', the dependency needs to be declared via
SHLIB_PREREQS, as attachedOh, good catch. I did not notice that patch before. Adding that change
to src/interfaces/ecpg/pgtypeslib/Makefile fixes the stand-alone
compile.
Patch applied and backpatched to PG 12. Thanks.
--
Bruce Momjian <bruce@momjian.us> https://momjian.us
EnterpriseDB https://enterprisedb.com
+ As you are, so once was I. As I am, so you will be. +
+ Ancient Roman grave inscription +