Re: A Gtk's build system ?

On Wed, Aug 6, 2014 at 4:35 PM, Christian Hergert <christian hergert me> wrote:
 and Gtk+ is
one of the most portable pieces of software in our ecosystem.

if this true, and that is debatable, then it is mostly because Gtk+ delegates so much to other libraries. When you look at the entire stack required to build and use Gtk+ on a platform, it is quite a huge undertaking. Building this stack for a non-*nix platform is intimidating and difficult and autotools is off little or no help with the issues.

Making sure that waf runs properly on all of the target systems is going
to take some upfront work. Just because it uses Python doesn't mean it's
portable. Plenty of Python API's return different values based on the
host operating system.

-- Christian

On 08/06/2014 01:01 PM, Krzysztof Kosiński wrote:
> 2014-08-06 21:43 GMT+02:00 Colomban Wendling <lists ban herbesfolles org>:
>> Le 06/08/2014 21:30, Krzysztof Kosiński a écrit :
>>> [Waf] does not require silly lists of files to work
>> If that refers to using globs in the build system files, don't.  Glob
>> showed on many a situation to be the source of various build problems,
>> including, but not limited to, a file to be missing from the source tree
>> (which would not be easily noticeable and would work on the author's
>> setup), or unexpected files to be included in a build.
> I am not really convinced by this.
> 1. If there are any uncommitted files, version control will tell you about this.
> 2. If you have 'unexpected files' in the source tree, you are doing
> something wrong.
> 3. Another common argument in favor of file lists is determining what
> to include in the tarball. This is only an issue because by default
> Autotools create a giant mess by putting generated files in the same
> directories as the sources (CMake does this as well). Waf always puts
> all generated files in a separate directory, so everything that's not
> in the build directory should be distributed.
>> Also, FWIW patterns can generally be used just fine in Autotools -- but
>> again, please, don't use them.
> Autotools can't correctly use patterns / wildcards, because it
> requires manually re-running automake whenever a file is added or
> deleted.
> Waf stores a database of files seen on last build and therefore
> doesn't suffer from this problem.
> Regards, Krzysztof
> _______________________________________________
> gtk-devel-list mailing list
> gtk-devel-list gnome org
gtk-devel-list mailing list
gtk-devel-list gnome org

[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]