Hi,

Actually my custom rule will install correctly as th .eo.h file is the only
declared output and so no other files are installed. In this way you can
generate all three files in one eolian_gen pass which is much faster.

Andy

On Tue, 14 Nov 2017 at 10:50, <marcel-hollerb...@t-online.de> wrote:

> Hi Andy,
>
> The reason why this works for you is that the two files are build with
> one command the the .eo.h file is causing both files to be generated.
>
> But this will not work for the case that you need to generate the
> .eo.h and .eo.c file undependend from each other.
> Which is the case for something like a library since we need to
> install the .eo.h file, so we need a different custom_target rule.
> (This looks like
>
> https://git.enlightenment.org/tools/examples.git/diff/tutorial/c/eo-lib/src/meson.build?h=devs/bu5hm4n/lib-sample&id=2a3dc8412067e612475f1d9a4181165fb91d0f64
> )
>
> Greetings,
>    Marcel Hollerbach
> On Tue, Nov 14, 2017 at 10:17:57AM +0000, Andrew Williams wrote:
> > Hi Marcel,
> >
> > I don't think that meson requires that we compile the output of a task.
> We
> > can simply fail to mention it as an output. Leave the only output as the
> > .eo.h for example? The .c file will get picked up by the appropriate
> > include and so get compiled indirectly.
> >
> > I don't know if I did the right thing but I do have eolian_gen working in
> > meson in one of the examples:
> >
> https://git.enlightenment.org/tools/examples.git/tree/tutorial/c/eo-classes/src/meson.build
> >
> > It could be tidied up but the gist of it is that class.eo.h is a declared
> > output, class.eo.c is slipped into the build space for later inclusion
> and
> > the class.c (this is what meson did not like much) is slipped into the
> > source dir for implementation additions.
> >
> > I hope this is of some interest,
> > Andrew
> >
> > On Tue, 14 Nov 2017 at 08:16 <marcel-hollerb...@t-online.de> wrote:
> >
> > > Hello,
> > >
> > > i am currently looking how we can work with meson in the efl tree. And
> > > quite a big problem came up. Right now we translate a .eo file into a
> > > .eo.c and .eo.h file, where the .eo.c is not a standalone c file, it
> > > must be included, it does not compile by itself.
> > >
> > > In meson we can just put the .eo.c file into the other sources and put
> > > them into library(...) or executable(...) which leads to meson thinking
> > > it needs to compile the file with a c compiler, since the file has the
> > > .c extension.
> > >
> > > My plan is now to generate .eo.x and .eo.h files to solve this
> > > issue, we use .x in our codebase for files that are not usefull in
> > > standalone and must be included in some way.
> > >
> > > Opinions?
> > >
> > > Greetings,
> > >    Marcel Hollerbach
> > >
> > >
> > >
> ------------------------------------------------------------------------------
> > > 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
> > >
> > --
> > http://andywilliams.me
> > http://ajwillia.ms
> >
> ------------------------------------------------------------------------------
> > 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
>
-- 
http://andywilliams.me
http://ajwillia.ms
------------------------------------------------------------------------------
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