[RFC] OMK RTEMS applications build approach
Pavel Pisa
ppisa4lists at pikron.com
Fri Sep 21 14:09:47 UTC 2007
Hello all,
I am not sure, if that question about making easier
building process has been meant for RTEMS BSP, core
build or applications build.
In the case of applications, we use our OMK build system
to build code against RTEMS installed in /opt. This solution
allows us to very simple way build application for RTEMS,
VxWorks, Linux, embedded system-less targets without need
to modify most of libraries or their Makefiles.
We have updated rules this week to be compatible
even with MinGW environment. Hope, hope all MinGW
discrepancies to regular POSIX environment are cough now.
We would be happy, if some brave souls would test this
solution in different setups as well.
The hard prerequisite is recent GNU make, minimal
version is 3.81. The application template for RTEMS
can be found there
http://cmp.felk.cvut.cz/~pisa/rtems/rtems-omk-template.tar.gz
The only change required to build for specific board should be
update of the "config.target" file which points to the place, where
RTEMS "Makefile.inc" can be found. The contents of "config.target"
for ARM920T CSB336 build is next line in my case
RTEMS_MAKEFILE_PATH=/opt/rtems/arm-rtems/csb336
The actual build process is controlled by files "Makefile.omk"
in each project directory. This file file tries to follow
AutoMake syntax but does not require automake/configure
conversion passes. Simple typing "make" in any source
directory builds tree starting from that position.
Typing "make W=1" build whole tree even if current working
directory are in some project subdirectory.
Actual version does not solve exclusion of some managers,
because our applications use most of them anyway.
But automatic whole tree dependences between header files,
libraries, applications etc. are handled automatically.
The latest version of full OMK rules snippets set can
be found at
http://rtime.felk.cvut.cz/darcs/darcsweb.cgi?r=omk;a=summary
http://rtime.felk.cvut.cz/repos/omk/
Not only DCE CTU and PiKRON's projects are based on these rules.
There are even other projects using them. For example AQuoSA
project
http://aquosa.sourceforge.net/
Best wishes
Pavel Pisa
e-mail: pisa at cmp.felk.cvut.cz
www: http://cmp.felk.cvut.cz/~pisa
work: http://www.pikron.com
More information about the users
mailing list