Red Hat Bugzilla – Bug 784281
feature request: include libpgport.a in postgresql-devel (or its dynamic version somewhere)
Last modified: 2016-04-19 06:56:35 EDT
Description of problem:
libpgport.a library is required by couple of 3rd party packages to build
(pg_bulkload among others), and it would be nice to have this library built
as part of postgresql-devel
Version-Release number of selected component (if applicable):
any version-release of postgresql-devel included in recent Fedora or Rawhide
Steps to Reproduce:
libpgport.a missing in postgresql-devel
libpgport.a present in postgresql-devel
I need it too for building repmgr.
This bug appears to have been reported against 'rawhide' during the Fedora 19 development cycle.
Changing version to '19'.
(As we did not run this process for some time, it could affect also pre-Fedora 19 development
cycle bugs. We are very sorry. It will help us with cleanup during Fedora 19 End Of Life. Thank you.)
More information and reason for this action is here:
This package has changed ownership in the Fedora Package Database. Reassigning to the new owner of this component.
Note the upstream thread:
FWIW, I think we should go the dynamic library way in future.
Created attachment 900792 [details]
Add a static subpackage
I just uploaded a patch which adds a static subpackage. Thoughts?
(In reply to Sam Kottler from comment #7)
> I just uploaded a patch which adds a static subpackage. Thoughts?
Sam, haven't you tried to propose upstream patch which would allow us to build
dynamic libpgport.so? Personally, I am not strictly against it but probably
we should give the patch try.
Pavel regarding our conversation earlier today:
As it stands it seems like this bug is preventing building any extension using pgxs.
The following commands import pgxs.mk into the extension Makefile
PGXS := $(shell $(PG_CONFIG) --pgxs)
By doing this pgxs/src/Makefile.global also is imported which sets $(LIBS) to include "-lpgcommon" and "-lpgport"
It seems that by removing the *.a files any extension build using the above make commands will unconditionally fail with scl postgresql-devel.
Is there a workaround for building extensions using the scl postgresql-devel package or must we use the postgres rpms from the PGDG repos (which include these particular .a files) if we want to build external extensions?
(In reply to Nick Carboni from comment #9)
> Pavel regarding our conversation earlier today:
> As it stands it seems like this bug is preventing building any extension
> using pgxs.
Not all extensions (really) require pgcommon.a and pgport.a.
> The following commands import pgxs.mk into the extension Makefile
> PGXS := $(shell $(PG_CONFIG) --pgxs)
> include $(PGXS)
> By doing this pgxs/src/Makefile.global also is imported which sets $(LIBS)
> to include "-lpgcommon" and "-lpgport"
> It seems that by removing the *.a files any extension build using the above
> make commands will unconditionally fail with scl postgresql-devel.
Also with non-scl, yes.
> Is there a workaround for building extensions using the scl postgresql-devel
> package or must we use the postgres rpms from the PGDG repos (which include
> these particular .a files) if we want to build external extensions?
There is IMO no work-around. You could filter-out the -l* flags, but
that is not what you want as you need those static libraries.
> Also with non-scl, yes.
This is not true, the PGDG postgresql*-devel package supplies these packages.
.. right, I was talking about Fedora/RHEL packages, not PGDG.
I would like to package repmgr in EPEL 6/7 but this same issue exists there. Should I open a separate bugzilla against RHEL?
Dave, you can definitely clone the bug for the record; but I can't promise it
will be fixed -- bugzilla is just bug/feature tracking tool. For Red Hat
Enterprise Linux issues, it is important to contact our support channels.
Committed to F24+ (24 & 25):