How will user's compile with Makefiles? Was: Re: large bss size for sample applications

Pavel Pisa ppisa4lists at pikron.com
Wed Sep 30 22:46:34 UTC 2015


Hello Chris and others,

I have no problem if most of RTEMS makefiles are replaced by something
better but I would really regret if 

  /opt/rtems4.11/arm-rtemsX.YY/BSP_Z/Makefile.inc

file is not generated and installed during BSP build process.

This file holds enough information to build complex application
with same setting as is the one used to build BSP.
And I would prefer if these variables values are preserved
after install in some form which can be directly read by GNU make.

I can imagine calling some pkgconfig like tool to obtain these
values but it would mean that we have to run that tool once
and store/cache results somewhere in the build to not suffer from
overhead to call the tool when make is parsing makefile in each
directory.

The question is if to keep /opt/rtems4.11/make/custom . If defines
are directly inlined in BSP specific Makefile.inc it can
be even better.

May it be that I am too afraid of changes. But example which
I fear off is my experience with MBED testing. It uses python
based build system or provides Eclipse integration. I have not been
able to integrate it with our build system yet even that base MBED
build only generates libraries as RTEMS does. But it is optimized
to generate Makefiles based packages as partial distributions
for companies EDKs but not for install and use from own applications.
Used compiler parameters are hidden in python based build system
or in complete but easily not reusable makefiles generated for given
exported example.

We cannot switch to WAF only build for our application code
because it would not support Linux userspace and kernelspace,
about 20 different systemless embedded hardware targets from
H8S, nRF51, LPC, MSP430 etc. and crosscompile to RTEMS
and Linux on more archs from single source submodules
trees usually symlinked at toplevel of target specific
build tree.

So, please, do not hide basic setting.  Store it in some
simple human and make readable form in BSP install directory
as a list of assignments. There is not much more required
to build application if these values are exported.

Thanks,

           Pavel





More information about the devel mailing list