On Mon, Mar 26, 2012 at 8:02 PM, Alon Bar-Lev <alon.bar...@gmail.com> wrote:
> On Mon, Mar 26, 2012 at 7:55 PM, Gert Doering <g...@greenie.muc.de> wrote:
>> Hi,
>>
>> On Mon, Mar 26, 2012 at 07:51:01PM +0200, Alon Bar-Lev wrote:
>>> The benefit is to divide the code into libraries and core which is
>>> easier to maintain and reuse.
>>
>> I'm not sure I understand what's so hard about "compile stuff, use
>> 'ar' to pack into libopenvpn.a" that stuff needs more convolutions.
>>
>> We're not building a shared library - which I agree is major pains unless
>> handled by libtool.  But static libraries are easy on about everything
>> (except Windows, can't speak about that).
>
> libtool has the advantage of making it very simple as far as build is
> maintenance is, in all platforms in exact same way.
> It also will enable us to build the plugins properly in future.
> Even if you do what you suggested (ar), the gcc command-line will be
> long as we need to add the additional CPPFLAGS, LDFLAGS.

The
---
".deps/status.Tpo" -c -o status.o status.c;  then mv -f
".deps/status.Tpo" ".deps/status.Po"; else rm -f ".deps/status.Tpo"
---

Are for dependency tracking, so that if you change a file dependencies
will be recompiled... This was the same in previous build.

So we had:
---
gcc -DHAVE_CONFIG_H -I.   -I. -I/usr/kerberos/include    -g -O2 -MT
status.o -MD -MP -MF .deps/status.Tpo -c -o status.o status.c
---

And now:
---
if gcc -DHAVE_CONFIG_H -I. -I. -I../.. -I../../include
-I../../src/compat      -I/usr/include -I/usr/include     -g -O2 -MT
status.o -MD -MP -MF ".deps/status.Tpo" -c -o status.o status.c;  then
mv -f ".deps/status.Tpo" ".deps/status.Po"; else rm -f
".deps/status.Tpo"; exit 1; fi
---

What this makes sure is that if compile fails the dependencies is removed....
Delta:
---
if (.*);  then mv -f ".deps/status.Tpo" ".deps/status.Po"; else rm -f
".deps/status.Tpo"; exit 1; fi
---

Not worth dropping the comfort of libtool and manually code toolchain
commands just to remove this delta.

>>> Anyway, new automake does support silent rules, try the following[1]
>>> patch and see if it makes you happier.
>>
>> This is missing the point: I think what automake/autoconf is doing now
>> is much too complicated.  I *like* to see what it's doing, and hiding
>> complexity by just not showing it is a step into the wrong direction.
>
> When you like, use "make V=1", or --disable-silent-rules to configure.
>
>>
>>> Again, this demonstrate how current merge procedure is inappropriate,
>>> as instead of single build system rewrite merge we have aftershocks.
>>> Branch should be tested and  reviewed, and tested and reviewed until
>>> no known issues found, and all happy of its quality.
>>
>> We're doing that now: branch is called "master".
>
> Nope, this is not the rule of "master" branch.
> "master" = as much stable as possible, not playground.
>
> Alon.

Reply via email to