On Mon, Jan 16, 2017 at 3:41 PM, <marcel-hollerb...@t-online.de> wrote: > On Mon, Jan 16, 2017 at 12:05:29PM -0200, Gustavo Sverzut Barbieri wrote: >> On Mon, Jan 16, 2017 at 6:55 AM, <marcel-hollerb...@t-online.de> wrote: >> > Hello, >> > >> > On Mon, Jan 16, 2017 at 01:26:28PM +1030, Simon Lees wrote: >> >> >> >> >> >> On 01/16/2017 01:00 PM, Carsten Haitzler (The Rasterman) wrote: >> >> > I'm going to bring this up as it's highly controversial... and not >> >> > everyone is >> >> > going to be happy, but doing NOTHING is worse. >> >> > >> >> > >> >> > I propose that whatever we come up with should support at minimum the >> >> > following >> >> > build system "features": >> >> > >> >> > * configure --prefix=XXX >> >> > * configure --bindir=XXX >> >> > * configure --sysconfdir=XXX >> >> > * configure --libdir=XXX >> >> > * configure --includedir=XXX >> >> > * configure --datadir=XXX >> >> > * configure --localedir=XXX >> >> > * configure --mandir=XXX >> >> > * configure --docdir=XXX >> >> > * at least all the relevant configure features we added for efl >> >> > * make (from any dir/subdir) >> >> > * make install >> >> > * make uninstall >> >> > * make DESTDIR=xxx >> >> > * make dist >> >> > * make distcheck >> >> > * make check >> >> > * cross-compiling (--host=XXX --build=XXX) >> >> > * gettext support >> >> > >> >> >> >> I'm feeling lazy but the output of openSUSE's cmake rpm macro is the >> >> following and will answer some questions, cmake doesn't support make >> >> dist out of the box, you could write a custom one or use something >> >> called cpack (i've never used it), most projects just do a clean >> >> checkout and tar it up and ship the tarball. "make check" can be done >> >> with a custom command in cmake, cross compiling is also certainly >> >> supported. >> > >> > Just to clarify things a bit here: >> > >> > - cpack is quite easy you add a bit of configuration to your >> > CMakeLists.txt and you have make package, this will then generate all >> > the packages you have configured, those can be source-packages or >> > directly a debian packages (just needs to be configured. >> >> cpack is kinda of annoying and I don't see it as being any good for >> projects that already have a public git repository. As with automake, >> it's easy for developers to forget files and tarballs can't 'make >> dist' anyway. >> >> IMO it's much simpler and more reliable to simple translate 'make >> dist' to 'git archive' and require that to be executed from within a >> git repository. We can even offer a 'make clone' that will 'git clone' >> the current tag/commit and setup the non-GIT folder as a GIT one. Or >> ignore that, since developers are supposed to work on GIT anyways. >> >> >> > - there is the test target, which is somehow what check is in efl. So >> > if its okay to use a different target name, you dont even need a >> > custom command. >> >> all systems support some kind of 'make check' since they can manage >> dependencies and execute commands -- all that is needed. >> >> the actual tests are written by us on top of 'check' library. > > The message was not 'this is possible with cmake' it was more that there > is 1:1 the same utility (build a executable, call add_test), > so there is no need for custom commands that generate the test > results or something like that. So the quote '"make check" can be done' > with a custom command in cmake', that sounds like there is no test util, > is wrong.
got it. anyway, cmake is nice overall, not the best to handle configure dependencies* (kconfig shines there), but we can do those manually in cmake as we do in autoconf. Given multiple cmake backends, the ninja x make is handled transparently... * google tells me that cmake's best effort is to use https://cmake.org/cmake/help/v3.6/module/CMakeDependentOption.html#module:CMakeDependentOption which i miles away behind kconfig -- Gustavo Sverzut Barbieri -------------------------------------- Mobile: +55 (16) 99354-9890 ------------------------------------------------------------------------------ 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