On Mon, 16 Jan 2017 12:05:29 -0200 Gustavo Sverzut Barbieri
<barbi...@gmail.com> said:

> 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.

i would agree here. taking the "hand rolled makefile + sh" example - this would
just be a custom "dist" target that would simply use git archive and create a
tarball with the correct version in its filename. a "distcheck" target would
rely on the dist target, then unpack that same tarball, cd into it, do a build
and install to a test directory, then clean it all up when done (with any error
along the way stopping it). it'd be a few lines of make rules realistically.

> 
> >  - 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.

i wasn't meaning it had to be literally "make check" but an equivalent that
builds the tests in-tree and then runs them reporting results. HOW we
accomplish this is a good question. i'd go for a:

  make install DESTDIR=./tests/install
  export LD_LIBRARY_PATH=./tests/install/lib
  export PATH=./tests/install/bin:$PATH
  make tests
  ./tests/bin/testharness.sh

ie literally install efl in the tests tree so efl is running "as it normally
would or should as a relocatable library/binary set an then use it in
preference to anything else on the system to run tests"

> 
> -- 
> Gustavo Sverzut Barbieri
> --------------------------------------
> Mobile: +55 (16) 99354-9890
> 
> ------------------------------------------------------------------------------
> Developer Access Program for Intel Xeon Phi Processors
> Access to Intel Xeon Phi processor-based developer platforms.
> With one year of Intel Parallel Studio XE.
> Training and support from Colfax.
> Order your platform today. http://sdm.link/xeonphi
> _______________________________________________
> 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

Reply via email to