Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 28 Apr 2013 15:16:53 +0100
From:      Chris Rees <crees@FreeBSD.org>
To:        Scot Hetzel <swhetzel@gmail.com>
Cc:        "pgsql@freebsd.org" <pgsql@freebsd.org>, FreeBSD Ports <freebsd-ports@freebsd.org>, Palle Girgensohn <girgen@pingpong.net>, Florent Peterschmitt <florent@peterschmitt.fr>
Subject:   Re: poudriere - postgresql90-client, LDAP, requires ldap.h
Message-ID:  <CADLo839_c8t0B6Y-xxSaG-_Ffxjy4thWEG6-RZKp11PeewJ0RA@mail.gmail.com>
In-Reply-To: <CACdU%2Bf-q%2BzssqvExvfp3Gg%2B224UJOF2fKsW5fdtyVKYPyOLrGg@mail.gmail.com>
References:  <517C1DCE.2050603@peterschmitt.fr> <517C3F8F.2080602@FreeBSD.org> <517C43E6.4080907@peterschmitt.fr> <CACdU%2Bf_to4bJa0KUe7LUv-%2Bha9CFuqtFFf_97qydORx42yvOSg@mail.gmail.com> <CADLo83-3VswgRKjwWWst-qoToKsE=SGkyvrRkZphN0Yn7BZHww@mail.gmail.com> <B35C6528-05E8-4CA2-ADA0-B209FF431CE5@pingpong.net> <CACdU%2Bf-q%2BzssqvExvfp3Gg%2B224UJOF2fKsW5fdtyVKYPyOLrGg@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On 28 April 2013 15:07, Scot Hetzel <swhetzel@gmail.com> wrote:
> On Sun, Apr 28, 2013 at 6:25 AM, Palle Girgensohn <girgen@pingpong.net>
> wrote:
>> 28 apr 2013 kl. 10:37 skrev Chris Rees <crees@FreeBSD.org>:
>>
>> > Please CC maintainers when you're asking about specific ports!
>> > On 28 April 2013 07:05, Scot Hetzel <swhetzel@gmail.com> wrote:
>> >> On Sat, Apr 27, 2013 at 4:32 PM, Florent Peterschmitt <
>> >> florent@peterschmitt.fr> wrote:
>> >>
>> >>> Le 27/04/2013 23:13, Matthew Seaman a =E9crit :
>> >>>> On 27/04/2013 19:49, Florent Peterschmitt wrote:
>> >>>>> Hello,
>> >>>>>
>> >>>>> I use the latest poudriere-devel to make my own pkg repository, an=
d
>> >>>>> would like to build postgresql with LDAP support.
>> >>>>>
>> >>>>> Since it's in a virgin jail, and because the log said =AB hey I ne=
ed
>> >>>>> ldap.h =BB, I understand that openldap should be installed but, is=
 it
>> >>>>> the
>> >>>>> good way to do ? For each package requirement, it is needed to
>> >>>>> install
>> >>>>> it by hand ? (or with previously built packages :) )
>> >>>>>
>> >>>>
>> >>>> You should use the 'poudriere options' command to enable LDAP suppo=
rt
>> >>>> in
>> >>>> the postgresql server.
>> >>>
>> >>> Yep, I did that. Sorry, I missed to say I already have done this. Th=
e
>> >>> problem is that when building the package, the configure step fail
>> >>> saying ldap.h is missing.
>> >>>
>> >>>> Now, when you use poudriere to build the postgresql package, it wil=
l
>> >>>> have LDAP client added as a requirement -- so poudriere will also
>> >>>> build
>> >>>> you an LDAP package -- and when you go to install postgresql, ldap
>> >>>> will
>> >>>> be installed as well as a dependency.
>> >>>>
>> >>>>      Cheers,
>> >>>>
>> >>>>      Matthew
>> >>>>
>> >>> Yep. But how does work poudriere ? Because I have built postfix and
>> >>> dovecot2 with LDAP support and there was no problem. I think it's a
>> >>> problem from the port itself and not from poudriere, I should try in=
 a
>> >>> new system (perhaps, a jail, without poudriere).
>> >>>
>> >>
>> >> The problem seems to be caused by the following from
>> >> databases/postgresql91-server/Makefile:
>> >>
>> >> 66     .if !defined(CLIENT_ONLY) && !defined(SLAVE_ONLY)
>> >> 67     SERVER_ONLY=3D yes
>> >> 68     USE_RC_SUBR=3D postgresql
>> >> 69     USE_PGSQL=3D yes
>> >> 70     WANT_PGSQL_VER=3D
>> >> ${DISTVERSION:C/([0-9][0-9]*)\.([0-9][0-9]*).*/\1\2/g}
>> >> 71     USERS=3D ${PG_USER}
>> >> 72     GROUPS=3D ${PG_GROUP}
>> >> 73     SUB_FILES+=3D 502.pgsql
>> >> 74     .endif
>> >>
>> >> 81     .if !defined(SLAVE_ONLY)
>> >> 82     OPTIONS_DEFINE+=3D NLS DTRACE PAM LDAP GSSAPI OPTIMIZED_CFLAGS=
 XML
>> >> TZDATA DEBUG KRB5
>> >> 83     OPTIONS_SINGLE=3D KRB5
>> >> 84     OPTIONS_SINGLE_KRB5=3D MIT_KRB5 HEIMDAL_KRB5
>> >> :
>> >> 112     OPTIONS_DEFAULT=3D NLS XML TZDATA INTDATE SSL
>> >> 113     .endif # !SLAVE_ONLY
>> >>
>> >> 159     . if ${PORT_OPTIONS:MLDAP}
>> >> 160     CONFIGURE_ARGS+=3D--with-ldap
>> >> 161     . if defined (SERVER_ONLY)
>> >> 162     USE_OPENLDAP=3D yes
>> >> 163     . endif
>> >> 164     . endif
>> >>
>> >> NOTE: postgresql90-client/Makefile includes
>> >> postgresql90-server/Makefile
>> >> which then includes postgresql91-server/Makefile
>> >>
>> >> Unfortunately, you can't set USE_OPENLDAP as a build depends.  Try
>> >> commenting out lines 161 and 163 in the postgresql91-server/Makefile.
>> >> This
>> >> will add OpenLDAP as a LIB_DEPENDS to the postgresql*-client ports.
>> >>
>> >
>> > Actually,
>> >
>> > [crees@medusa]~% psql
>> > Shared object "libldap_r-2.4.so.8" not found, required by "libpq.so.5"
>> > [crees@medusa]~%
>> >
>> > LDAP is indeed a LIB_DEPENDS.
>> >
>> > Palle, Jason, if you don't object I'm going to add || defined
>> > (CLIENT_ONLY) to line 161 above.
>> >
>> > Chris
>>
>> It seems strange to me that psql should require libldap? That seems like=
 a
>> bug, or am I missing something? Why would the client side of the connect=
ion
>> need to use ldap?
>
>
> Since the postgresql*-client ports install the below files:
>
> bin/clusterdb
> bin/createdb
> bin/createlang
> bin/createuser
> bin/dropdb
> bin/droplang
> bin/dropuser
> bin/ecpg
> bin/pg_config
> bin/pg_dump
> bin/pg_dumpall
> bin/pg_restore
> bin/psql
> bin/reindexdb
> bin/vacuumdb
> lib/libecpg.so.6
> lib/libecpg_compat.so.3
> lib/libpgtypes.so.3
> lib/libpq.so.5
>
> We'll need someone to check with ldd to see if they require any of the ld=
ap
> libraries after commenting out lines 161 and 163. If they don't require
> LDAP, then we just need to remove LDAP from line 82, and add the below
> between line 82 and 83:
>
> .if defined (SERVER_ONLY)
> OPTIONS_DEFINE+=3D LDAP
> .endif
>
> Then move line 161 to before line 159.

Ohononono, you can't just set different OPTIONS for each port, that
makes them stomp over the saved ones for each variant-- I got bitten
by that before.  The simpler solution would be to ignore the setting
for LDAP for anything !server.

Can anyone find out whether a non-LDAP client works with an LDAP
server?  I'm pretty certain it shouldn't be a problem.

Chris



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CADLo839_c8t0B6Y-xxSaG-_Ffxjy4thWEG6-RZKp11PeewJ0RA>