OpenCores
URL https://opencores.org/ocsvn/c0or1k/c0or1k/trunk

Subversion Repositories c0or1k

[/] [c0or1k/] [trunk/] [conts/] [test_suite0/] [build.readme] - Rev 2

Compare with Previous | Blame | View Log

                Codezero Buildsystem For This Container

                   Autogenerated by the Build system


This is an autogenerated file that is meant to walk you through the build
process. It is meant to be the most simple to get on with, therefore if
you feel any complications, please reach us on our l4dev.org mailing list
on http://lists.l4dev.org/mailman/listinfo/codezero-devel

You have created a new container called `test_suite0'.

The parameters you have supplied are described in the ".container" file
placed at the top-level directory. Note, that this is only an informative
file for your reference, and it can be optionally removed.


                        1. Directory Structure:

1.1) Directory tree:
.
|-- SConstruct
|-- build.readme
|-- .container
|-- include
|   `-- linker.lds.example
|-- main.c
`-- src
    |-- test.c

In the above directory tree:

1.2) |-- SConstruct

This is the top-level build file, that will build your project in its current
state. You may freely reorganize directories, but must reflect changes in this
file. For more, please see the SCons build tool at http://www.scons.org/

The build system will search for this file, and execute it by the:

`scons'

command at the root of the directory. You may issue the same command manually
for building and testing your build. If you choose to use another build tool
such as make, you may freely replace scons, and the build system will search
and call your custom build command.

1.3) |--include
     `--src

These are the directories that include your header files and sources. You may
freely change and reorganize these, but make sure to have a valid build file
that reflects those changes at the top-level directory.

1.4) |-- include
     |   `-- linker.lds.example

This is an example linker script for your project. Using this as your default
linker script is often useful, since it has been autogenerated to contain all
the parameters you need for the memory regions of your application defined at
configuration time. You may freely replace it, but make sure to edit the
top-level build script accordingly.


                        2. Build Process

2.1) Build overview

The complete Codezero system will be built from a top-level `build.py' script by
that resides in the top-level directory of Codezero sources.

The Codezero system build script will build this container at a certain stage
during the build, by referring to build script file named such as `SConstruct'
or `Makefile' that resides in this container's top-level directory.

Once the executables are built, it will search for all files with a .elf
extension in any of the subdirectories, and recognize those as loadable
executables. There may be more than one of these files present after the build.

In the future this behaviour may change such that the loadable executable files
are also specified in the configuration.

Finally, executables of all containers will be picked up and built into the
final.elf file, which is a self-loading elf executable.


                        3. Reconfiguring this container

If you want to reconfigure the container with new parameters, you may do so by
executing the `configure.py' script at the top-level Codezero directory by:

'./configure.py'

This will populate only brand new container directories with new files. It will
update it's existing internal configuration for existing containers (such as
container memory regions) but it won't touch any files that exist under an
already-defined container.

If you want to start from scratch, specify a new directory name, if you want
to reconfigure existing container parameters, run this on an existing directory,
and it will only update its internal records for this container, but not touch
the directory.


                        4. Example source files

Example source files populated by the configuration contain valid examples
of how the generic libl4 userspace library can be used. Each test contains a
valid example from the available API, and may be modified, changed and removed
freely.


Compare with Previous | Blame | View Log

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.