Bug 479874 (mingw32-postgresql) - Review Request: mingw32-postgresql - postgresql development library's libpq
Summary: Review Request: mingw32-postgresql - postgresql development library's libpq
Keywords:
Status: CLOSED WONTFIX
Alias: mingw32-postgresql
Product: Fedora
Classification: Fedora
Component: Package Review
Version: rawhide
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Nobody's working on this, feel free to take it
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard: NotReady
Depends On: 454410 454416
Blocks:
TreeView+ depends on / blocked
 
Reported: 2009-01-13 18:12 UTC by Itamar Reis Peixoto
Modified: 2012-08-26 13:07 UTC (History)
9 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2012-08-26 13:07:31 UTC
Type: ---
Embargoed:
erik-fedora: fedora-review?


Attachments (Terms of Use)

Description Itamar Reis Peixoto 2009-01-13 18:12:55 UTC
Spec URL: http://ispbrasil.com.br/pgsql/mingw32-postgresql.spec
SRPM URL: http://ispbrasil.com.br/pgsql/mingw32-postgresql-8.3.5-1snapshot.fc10.src.rpm

Description:
postgresql compiled by mingw (libpq.dll) and header files.


koji scratch build

http://koji.fedoraproject.org/koji/taskinfo?taskID=1049994

some patch's need's to be merged into upstream, should I cc Tom Lane here ?


https://fcp.surfsite.org/modules/newbb/viewtopic.php?viewmode=thread&topic_id=64290&forum=11&post_id=306080

http://archives.postgresql.org/pgsql-hackers/2008-11/msg00367.php

I'm also need help enabling openssl in postgresql 

with this package I am able to build and run programs linked with libpq
http://www.postgresql.org/docs/8.1/static/libpq-build.html

this package also depends on secur32.dll

mingw32(secur32.dll) is needed by mingw32-postgresql-8.3.5-1snapshot.fc10.noarch

wine seems to have this file.

[itamar@itamar pg-snap]$ rpm -qf /usr/lib/wine/secur32.dll.so
wine-core-1.1.10-1.fc10.i386

Comment 1 Richard W.M. Jones 2009-01-14 09:21:46 UTC
Please send any upstream patches to the PostgreSQL
mailing list:

  http://archives.postgresql.org/pgsql-hackers/

I will mail Tom Lane myself and ask him if he wants to
be CC'd on this bug, but he's quite a busy chap.

> this package also depends on secur32.dll
> 
> mingw32(secur32.dll) is needed by
> mingw32-postgresql-8.3.5-1snapshot.fc10.noarch

We need to add that pseudo-provides to mingw32-filesystem.
I'll do this today.

Comment 2 Richard W.M. Jones 2009-01-14 09:23:26 UTC
(In reply to comment #1)
> I will mail Tom Lane myself and ask him if he wants to
> be CC'd on this bug, but he's quite a busy chap.

Actually he's already in the CC for the bug.

Comment 3 Richard W.M. Jones 2009-01-14 10:24:33 UTC
(In reply to comment #1)
> > this package also depends on secur32.dll
> > 
> > mingw32(secur32.dll) is needed by
> > mingw32-postgresql-8.3.5-1snapshot.fc10.noarch
> 
> We need to add that pseudo-provides to mingw32-filesystem.
> I'll do this today.

I've done this now.  You will need to adjust the dependencies
as follows:

  branch  dependency
----------------------------------------
  devel:  mingw32-filesystem >= 42
  F-10:   mingw32-filesystem >= 40-3
  EL-5:   mingw32-filesystem >= 40-3

Comment 4 Tom "spot" Callaway 2009-03-06 19:22:24 UTC
I started trying to do this review, but I kept tripping over things:

- Package uses %{_mingw32_libdir}/*, see: http://fedoraproject.org/wiki/Packaging/MinGW#Do_not_use_.25.7B_mingw32_bindir.7D.2F.2A_or_.25.7B_mingw32_libdir.7D.2F.2A_in_.25files_section

- Spec is missing correct BuildRequires (see Comment #3)
- Package contains static libraries:
/usr/i686-pc-mingw32/sys-root/mingw/lib/libecpg.a
/usr/i686-pc-mingw32/sys-root/mingw/lib/libecpg_compat.a
/usr/i686-pc-mingw32/sys-root/mingw/lib/libpgport.a
/usr/i686-pc-mingw32/sys-root/mingw/lib/libpgtypes.a
/usr/i686-pc-mingw32/sys-root/mingw/lib/libpostgres.a
/usr/i686-pc-mingw32/sys-root/mingw/lib/libpq.a

See: http://fedoraproject.org/wiki/Packaging/MinGW#Static_libraries

- Not in sync with rawhide (8.3.6 vs 8.3.5).
- Normal postgresql is carrying six patches not found here:
Patch1: rpm-pgsql.patch
Patch2: postgresql-ac-version.patch
Patch3: postgresql-logging.patch
Patch4: postgresql-test.patch
Patch5: pgtcl-no-rpath.patch
Patch6: postgresql-perl-rpath.patch
- Built with an entirely different set of configure options

I am very uncomfortable with this package as is. I'd really prefer if someone like Tom Lane did the review here.

Comment 5 Tom Lane 2009-03-06 20:04:43 UTC
Well, I know nothing whatever about mingw, let alone packaging for mingw on Fedora, and do not intend to learn about it.  So I'm not sure I can contribute much here.  I can partially answer spot's question though: the patches we carry in the Fedora postgresql package are things I don't care to upstream because they adapt the software to more-or-less-Fedora-specific issues, like obeying FHS layout or meeting the proscription against using rpath.  I'm not sure if any of that is applicable to a mingw build.
In general though I think the thrust of his question is good --- you should make this look as much like the regular Fedora postgresql package as you reasonably can.  At the very least it seems like having the same set of subpackages is a reasonable expectation.  (But leave out PyGreSQL and pgtcl, which really should get split into their own SRPMS, and will be if those packages ever get through review.)

Comment 6 Richard W.M. Jones 2009-03-06 20:18:33 UTC
(In reply to comment #4)
> I started trying to do this review, but I kept tripping over things:
> 
> - Package uses %{_mingw32_libdir}/*, see:
> http://fedoraproject.org/wiki/Packaging/MinGW#Do_not_use_.25.7B_mingw32_bindir.7D.2F.2A_or_.25.7B_mingw32_libdir.7D.2F.2A_in_.25files_section

Itamar [packager], I'd prefer if the libraries were listed explicitly.
We have had problems with libtool "disappearing" libraries,
and by listing them explicitly we catch this.

> - Spec is missing correct BuildRequires (see Comment #3)
> - Package contains static libraries:
> /usr/i686-pc-mingw32/sys-root/mingw/lib/libecpg.a
> /usr/i686-pc-mingw32/sys-root/mingw/lib/libecpg_compat.a
> /usr/i686-pc-mingw32/sys-root/mingw/lib/libpgport.a
> /usr/i686-pc-mingw32/sys-root/mingw/lib/libpgtypes.a
> /usr/i686-pc-mingw32/sys-root/mingw/lib/libpostgres.a
> /usr/i686-pc-mingw32/sys-root/mingw/lib/libpq.a
> 
> See: http://fedoraproject.org/wiki/Packaging/MinGW#Static_libraries

Itamar, are we building this library statically?  We certainly
shouldn't be - we should build DLLs always.  If you need static
libraries, then they should go in a separate -static subpackage.

> - Not in sync with rawhide (8.3.6 vs 8.3.5).
> - Normal postgresql is carrying six patches not found here:
> Patch1: rpm-pgsql.patch
> Patch2: postgresql-ac-version.patch
> Patch3: postgresql-logging.patch
> Patch4: postgresql-test.patch
> Patch5: pgtcl-no-rpath.patch
> Patch6: postgresql-perl-rpath.patch
> - Built with an entirely different set of configure options

Itamar, all of these should be fixed.  We should keep the package
as close to the native Fedora package as possible, mainly because
it reduces the chance that we are susceptible to different bugs or
security errata than the native package.  So we benefit from the
native package's testing.

Comment 7 Itamar Reis Peixoto 2009-03-08 02:08:34 UTC
(In reply to comment #6)

this package contains only libpq (library for connecting to postgresql), like in  the postgresql-devel package

all patches in the current fedora postgresql package are most related to linux and doesn't make sense here.

the version of this package should be 8,4dev, because the version 8.3.6 doesn't build because missing patches something like in the link below.

http://git.postgresql.org/?p=postgresql.git&a=search&h=HEAD&st=commit&s=dllwrap

backporting these patches to 8.3.6 will be a wast of time.

I will post a new src.rpm soon  with all other related items fixed.

Comment 8 Tom Lane 2009-03-08 03:36:37 UTC
Oh, I somehow missed the hint in the bug title that this is only supposed to provide libpq and not the whole postgres package.  That's a perfectly respectable goal, but I suggest that the package is misnamed in that case.  What would happen if someone later wants to package all of postgres for mingw?

I think that you should call it mingw32-postgresql-libs and try to make the package contents match the -libs subpackage of the regular postgresql SRPM.

Comment 9 Daniel Berrangé 2009-03-09 10:19:20 UTC
Cross compiled applications are not allowed under the Fedora MinGW rules, only development libraries are within scope. So if someone did want to provide a complete PostgreSQL server cross-compiled, it would not be part of the Fedora packageset, so there is no naming clash problem there.

Comment 10 Richard W.M. Jones 2009-03-09 15:44:09 UTC
Just to update people, we are possibly going to drop this package
from the Fedora 11 feature requirements.  (That does NOT mean dropping
the package!)  There is discussion going on here:

http://lists.fedoraproject.org/pipermail/fedora-mingw/2009-March/000751.html

Comment 11 Itamar Reis Peixoto 2009-03-09 18:47:10 UTC
I have made some cleanups, and I am still able to build postgresql examples

http://www.postgresql.org/docs/8.3/interactive/libpq-example.html


spec: http://ispbrasil.com.br/pgsql/new/mingw32-postgresql.spec
srpm:  http://ispbrasil.com.br/pgsql/new/mingw32-postgresql-8.3.5-2snapshot.fc10.src.rpm

I need only to fix the version tag,this package is a dev snapshot,since the 8.3.6 tarball doesn't build with fedora-mingw It should be something like 8.4.0-dev, suggestions are welcome.

Comment 12 Erik van Pienbroek 2009-05-09 18:24:20 UTC
Just took a quick look at this:

- The .dll files should be in %{_mingw32_bindir} instead of %{_mingw32_libdir} (like all the rest of the mingw32 packages)
- The .dll.a and .la files need to be packaged in %{_mingw32_libdir} (so they shouldn't be removed)
- The header files should also be packaged or else applications can't compile against this library

Comment 13 Erik van Pienbroek 2009-06-05 18:25:46 UTC
Ping: Itamar Reis Peixoto

Comment 14 Jason Tibbitts 2009-07-17 22:56:37 UTC
It's been six weeks since that ping.  I guess this should be closed soon.

Comment 16 Rafael Aquini 2010-08-20 01:10:31 UTC
PING

Since it's been more than a year with no progress; I guess this bug should
be closed soon if there is no response, shouldn't it?

Comment 17 Richard W.M. Jones 2010-08-20 07:42:16 UTC
Is there a reason to close it?  Someone may pick it up again.

Comment 18 Rafael Aquini 2010-08-20 11:54:20 UTC
Richard,

This is a janitorial work on Fedora Package Review queues, 
-- http://fedoraproject.org/PackageReviewStatus/ -- in order to identify and close stalled reviews. 

I'm just following this policy:
http://fedoraproject.org/wiki/Policy_for_stalled_package_reviews

Regards

Comment 19 Richard W.M. Jones 2010-08-20 12:43:16 UTC
Does adding NotReady to the Whiteboard help?

Comment 20 Jason Tibbitts 2010-08-20 12:46:12 UTC
If you really want to, fine, but someone will just close notready bugs eventually anyway.

Isn't it far easier to find these submitted but abandoned tickets by following the FE-DEADREVIEW tracker anyway?

Comment 21 Erik van Pienbroek 2010-11-06 23:27:24 UTC
Itamar Reis Peixoto: do you still wish to maintain this package in Fedora? If so, please update it to the latest postgresql version (8.4.5) and I'll take a look at it

Comment 22 Itamar Reis Peixoto 2010-11-06 23:36:40 UTC
(In reply to comment #21)
> Itamar Reis Peixoto: do you still wish to maintain this package in Fedora? If
> so, please update it to the latest postgresql version (8.4.5) and I'll take a
> look at it

ok, I will do it soon

Comment 24 Erik van Pienbroek 2010-11-28 23:01:35 UTC
The comments I mentioned earlier still apply to this package:

- The .dll files should be in %{_mingw32_bindir} instead of %{_mingw32_libdir}
(like all the rest of the mingw32 packages)
- The .dll.a and .la files need to be packaged in %{_mingw32_libdir} (so they
shouldn't be removed)
- The header files should also be packaged or else applications can't compile
against this library

Comment 25 Kalev Lember 2011-05-05 10:49:10 UTC
Itamar, are you still interested in this package?

Comment 26 Erik van Pienbroek 2012-06-15 15:24:58 UTC
Itamar: do you still want us to continue with the review of this package?
If so, please update the package so it is based on the new MinGW packaging guidelines (which are valid as of Fedora 17): https://fedoraproject.org/wiki/Packaging:MinGW

If we don't hear anything from you in one week, I'm going to close this review request as per http://fedoraproject.org/wiki/Policy_for_stalled_package_reviews

Comment 27 Erik van Pienbroek 2012-08-26 13:07:31 UTC
Abandoned ticket, closing


Note You need to log in before you can comment on or make changes to this bug.