[Freeipa-devel] [PATCH] autotoolize ipa-client

William Jon McCann mccann at jhu.edu
Wed Oct 17 14:19:26 UTC 2007


On 10/17/07, Rob Crittenden <rcritten at redhat.com> wrote:
> Karl MacMillan wrote:
> > On Wed, 2007-10-17 at 09:50 -0400, Rob Crittenden wrote:
> >> William Jon McCann wrote:
> >>> On 10/16/07, Rob Crittenden <rcritten at redhat.com> wrote:
> >>>> William Jon McCann wrote:
> >>>>> Hi
> >>>>>
> >>>>> On 10/16/07, Karl MacMillan <kmacmill at redhat.com> wrote:
> >>>>>> On Fri, 2007-10-12 at 15:09 -0400, William Jon McCann wrote:
> >>>>>>> Hi,
> >>>>>>>
> >>>>>>> Here is a patch to autotoolize ipa-client.
> >>>>>>>
> >>>>>> Any ideas:
> >>>>>>
> >>>>>> $ ./configure
> >>>>>> ./configure: line 1627: AM_INIT_AUTOMAKE: command not found
> >>>>>> ./configure: line 1629: AM_MAINTAINER_MODE: command not found
> >>>>>> configure: Checking for Python
> >>>>>> ./configure: line 1637: syntax error near unexpected token `2.3'
> >>>>>> ./configure: line 1637: `AM_PATH_PYTHON(2.3)'
> >>>>> Did you run autogen.sh?  Strange, this looks like automake is broken
> >>>>> on your system.  Those are all standard macros.
> >>>>>
> >>>>>
> >>>> Along these lines, I wonder if we need separate autoconf configurations
> >>>> for each subdirectory. What do other large services do that include a
> >>>> client and a server (Samba for example, or openldap)?
> >>> It is usually based on how you package it.  There is usually one
> >>> configure script per package: ipa-client, ipa-server, ipa-python, etc.
> >> I'm not so sure about that and I think it would cause confusion (e.g.
> >> oops, forgot to use --prefix in one of the builds). I'm with John Dennis
> >> on this, one configure.ac to rule them all.
> >>
> >
> > That won't work because the rpm builds never see the top-level. They
> > only see the tgz of the subdirectory.
> >
> > Karl
> >
>
> There are two ways to resolve this:
>
> 1. For each RPM you do:
>
> cd freeipa-<VERSION>
> ./configure --options
> cd directory_I_care_about
> make all
> make install
> do rpm stuff
>
> So each package contains all the source to freeIPA, not just that
> particular subdirectory.
>
> 2. You have a single spec file that creates a bunch of packages (ala
> openldap, amanda, openoffice, httpd and other big packages).

Personally, I don't think this is a good idea.  You have nice separate
directories, packages, spec files, rpms now.  Why would you muddle
that up into one blob?  One of the reasons I put this patch together
was to make each package more distinct.

In my experience meta-packages are usually a mistake.  Xorg is a good example.

It would make is even more difficult than it is now to:
 * hack on one component
 * push updates for (only) one component
 * build an RPM for one component
 * etc

I just don't see any compelling reason to package the server and
client together.

Jon




More information about the Freeipa-devel mailing list