[Freeipa-devel] [freeipa PR#171][comment] Build system cleanup phase 2

lslebodn freeipa-github-notification at redhat.com
Thu Oct 20 13:40:30 UTC 2016


  URL: https://github.com/freeipa/freeipa/pull/171
Title: #171: Build system cleanup phase 2

lslebodn commented:
"""
> 08:53 < pspacek> lslebodn: I would appreciate patch showing the nicer solution to me. I do not think it
>                  is that easy as you claim, especially when we count in that client_only build depends                     heavily on spec file, which is not usable in Debian at all, which makes
>                  client-only-purely-upstream-point completely moot. 
Currently it is possible to build just a client part with following steps. Ant it has nothing to do with downstream specfile

```
make version-update
cd client; ../autogen.sh --prefix=%{_usr} --sysconfdir=%{_sysconfdir} --localstatedir=%{_localstatedir} --libdir=%{_libdir} --mandir=%{_mandir}; cd ..
make client-install
```
As you can see configure script is executed only in client sub-directory.
Here I am not interested in python part of client code.
My concerns are pure related to C-code.

But after merging everything to the one big configure script it would not be possible
without patching a master. 

And you also wanted to see some patches with nicer solution
here is a POC:

```
AC_ARG_WITH([server],
                [AC_HELP_STRING([--with-server],
                                [Whether to build with server support [yes]]
                               )
                ],
                [],
                with_server=yes
               )
if test x"$with_server" = xyes; then
        AC_SUBST(HAVE_SERVER)
        AC_DEFINE_UNQUOTED(HAVE_SERVER, 1, [Build with server support])
        m4_include([./install/configure.ac.inc]]
        m4_include([./daemons/configure.ac.inc]]
        m4_include([./asn1/configure.acac.inc]]
fi
m4_include([./client/configure.ac])

AM_CONDITIONAL([BUILD_SERVER], [test x"$with_server" = xyes])

```
Or If you you can merge configure part into main configure script rather then `m4_include([./client/configure.ac])`
"""

See the full comment at https://github.com/freeipa/freeipa/pull/171#issuecomment-255108446


More information about the Freeipa-devel mailing list