Hi, On Jul 18, 2017 16:47, "Carsten Haitzler" <ras...@rasterman.com> wrote:
On Tue, 18 Jul 2017 22:13:30 +0000 Mike Blumenkrantz <michael.blumenkra...@gmail.com> said: > Hi, > > I've spent some time over the past couple days investigating ways to > improve efficiency during development. I came across the meson build system > (http://mesonbuild.com/), and the time comparisons to autotools made meson > seem staggeringly fast. Additionally, it seems to be quite flexible and > have cross-compilation support. > > A fully functional meson build system for enlightenment can now be found in > my "meson" branch. My current benchmarks with it: oh. so here it is. > meson: > meson . build 2.05s user 0.64s system 103% cpu 2.607 total > ninja 379.02s user 60.36s system 347% cpu 2:06.31 total > sudo ninja install 2.36s user 0.35s system 98% cpu 2.746 total > > autotools: > ( autoreconf -fi && ./configure --prefix=/usr --libdir=/usr/lib64 ) 16.46s > user 2.74s system 96% cpu 19.830 total > make -j16 536.93s user 145.03s system 349% cpu 3:15.22 total > sudo make -j16 install 11.75s user 2.16s system 165% cpu 8.427 total > > > As seen above, this saves me over a minute for each rebuild, and I will > likely merge it into the main tree soon if no major issues are reported. more strategically... shouldn't we discuss this also for efl? i'd like us to keep the same build systems for both efl and e. they are our 2 major core flagship projects. i do not think they should diverge. Migrating simpler project like e is easier. It does also give a very good view of what problem we could run in. i think it's cool to experiment and look into build systems. there was work with cmake for efl. you're looking at meson for e. Moving efl to any new build system, even a simple one like meson, will take month of full time work just to make sure we do support all the platform we do, have proper tests in place, have proper cross compilation and so on. Let's say we shouldn't limit what we improve in other project due to the size of work in efl. Cmake was only a proof of concept and there are a lot of work to be done with it to say it's done. I also dislike cmake for its syntax and its limited support for cross compilation. Also none of our dependencies have managed to move to cmake, while the one who tried meson managed in no time. Give a look at enlightenment meson files and at efl cmake file to make your own opinion there. My opinion here is that meson is on track to be the replacement of autotools in the open source community. Cedric > > Known (unfixable) issue: > * If you have a configured source directory (ie. you have run ./configure), > the build may error due to inclusion of conflicting headers generated from > autotools and headers generated from meson. make clean will not delete > these headers; they require manual deletion or maintainer-clean. > > > To use after pulling meson branch: > 1. <Install meson+ninja> > 2. cd enlightenment > 3. meson . build && cd build > 3.5. [optional] mesonconf -D[option]=[value] (most options are now, instead > of --enable-option, -Doption=true; all options listed when running > mesonconf with no params) > 4. ninja > 5. sudo ninja install > ------------------------------------------------------------ ------------------ > Check out the vibrant tech community on one of the world's most > engaging tech sites, Slashdot.org! http://sdm.link/slashdot > _______________________________________________ > enlightenment-devel mailing list > enlightenment-devel@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/enlightenment-devel > -- ------------- Codito, ergo sum - "I code, therefore I am" -------------- The Rasterman (Carsten Haitzler) ras...@rasterman.com ------------------------------------------------------------ ------------------ Check out the vibrant tech community on one of the world's most engaging tech sites, Slashdot.org! http://sdm.link/slashdot _______________________________________________ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel ------------------------------------------------------------------------------ Check out the vibrant tech community on one of the world's most engaging tech sites, Slashdot.org! http://sdm.link/slashdot _______________________________________________ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel