On 11/24/2017 04:55 PM, Martine Lenders wrote:
Hi Daniel,

2017-11-24 16:47 GMT+01:00 Daniel Petry <[email protected] <mailto:[email protected]>>:

    […]

    1) Move build information concerning a particular module into that
    module's Makefile
    2) Make the module makefiles able to be written with purely
    declarative
    language
    3) Retain backwards compatibility with the current build system


 I don't think it is possible this way and I don't think that's what Gaëtan meant. Makefiles demand to be in make's language, so you can't just make up your own declarative language in them. You could however use some declaritive language files like json or yaml and generate Makefiles from them (or let make parse them).

Hi,

I may have mixed 'Makefile' and file written in a 'GNUMake' language in my description.

They address different steps of the build:
* Makefile is when you actually compile the source files to an archive with a given configuration (CC, CFLAGS, INCLUDES) * All the Makefile.dep/Makefile.include/Makefile.features files that prepare this configuration and say which Makefile to execute

And its the part of configuration I would like to address.
Regarding `Makefile` I just want to remove the `DIRS +=` part of it.


What I want is add another file `module.desc` grouping the existing information and metadata on the module:
* Submodule
* is it a pseudomodule
* includes path
* dependencies
* global CFLAGS
* … and add more.

Regarding the "purely declarative", I would like to express it in GNUMake syntax and restrict to setting specially named variables. My rational about this, is that if its written in XML, and let make parse them, it is still required to translate the information to variables that the make build system can understand. So still needs to have a syntax to describe, for example, that a module has an optional dependency on another, and so be definable in a gnu make syntax.

Cheers,
Gaëtan

Cheers,
Martine



_______________________________________________
devel mailing list
[email protected]
https://lists.riot-os.org/mailman/listinfo/devel

_______________________________________________
devel mailing list
[email protected]
https://lists.riot-os.org/mailman/listinfo/devel

Reply via email to