| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
A "make distclean" is not supported. So, it makes no sense to have pure
"make distclean" related stuff in the Makefile.am.
|
|
|
|
|
|
| |
This patch is a part of the BSP source reorganization.
Update #3285.
|
|
|
|
|
|
|
|
| |
Provide HAS_NETWORKING and HAS_SMP Automake conditionals for all BSPs.
This patch is a part of the BSP source reorganization.
Update #3285.
|
|
|
|
|
|
| |
This patch is a part of the BSP source reorganization.
Update #3285.
|
|
|
|
|
| |
A "make dist" is not supported. So, it makes no sense to have pure "make
dist" related stuff in the Makefile.am.
|
|
|
|
|
|
| |
This patch is a part of the BSP source reorganization.
Update #3285.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The previous cache manager support used a single souce file
(cache_manager.c) which included an implementation header (cache_.h).
This required the use of specialized include paths to find the right
header file. Change this to include a generic implementation header
(cacheimpl.h) in specialized source files.
Use the following directories and files:
* bsps/shared/cache
* bsps/@RTEMS_CPU@/shared/cache
* bsps/@RTEMS_CPU@/@RTEMS_BSP_FAMILY/start/cache.c
Update #3285.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
A speciality of the RTEMS build system was the make preinstall step. It
copied header files from arbitrary locations into the build tree. The
header files were included via the -Bsome/build/tree/path GCC command
line option.
This has at least seven problems:
* The make preinstall step itself needs time and disk space.
* Errors in header files show up in the build tree copy. This makes it
hard for editors to open the right file to fix the error.
* There is no clear relationship between source and build tree header
files. This makes an audit of the build process difficult.
* The visibility of all header files in the build tree makes it
difficult to enforce API barriers. For example it is discouraged to
use BSP-specifics in the cpukit.
* An introduction of a new build system is difficult.
* Include paths specified by the -B option are system headers. This
may suppress warnings.
* The parallel build had sporadic failures on some hosts.
This patch removes the make preinstall step. All installed header
files are moved to dedicated include directories in the source tree.
Let @RTEMS_CPU@ be the target architecture, e.g. arm, powerpc, sparc,
etc. Let @RTEMS_BSP_FAMILIY@ be a BSP family base directory, e.g.
erc32, imx, qoriq, etc.
The new cpukit include directories are:
* cpukit/include
* cpukit/score/cpu/@RTEMS_CPU@/include
* cpukit/libnetworking
The new BSP include directories are:
* bsps/include
* bsps/@RTEMS_CPU@/include
* bsps/@RTEMS_CPU@/@RTEMS_BSP_FAMILIY@/include
There are build tree include directories for generated files.
The include directory order favours the most general header file, e.g.
it is not possible to override general header files via the include path
order.
The "bootstrap -p" option was removed. The new "bootstrap -H" option
should be used to regenerate the "headers.am" files.
Update #3254.
|
|
|
|
|
|
|
| |
This is necessary to pick up mandatory flags provided by the build
system.
Update #3254.
|
|
|
|
|
|
|
|
|
|
| |
This makes it possible to easily use
EXTRA_DIST += foobar
in fragments.
Update #3254.
|
|
|
|
| |
Updates #3520.
|
|
|
|
| |
Updates #3520.
|
|
|
|
| |
Updates #3520.
|
|
|
|
|
|
| |
Patch was not intended to be pushed yet.
Updates #3520.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Done:
arm
bfin
epiphany
i386
lm32
m32c
mips
moxie
nios2
or1k
powerpc
riscv
sh
sparc
sparc64
v850
To do:
m68k
Differences noted:
+ endfile was sometimes before startfile
+ endfile sometimes was hard-coded and did not have -qrtems version
+ Should -e XXX (e.g. entry point) be in linkcmds?
+ Should -u XXX (e.g. undefined symbols) be in linkcmds?
+ Typos: Odd spacing, "old_endfiles" typo, and *(old_endfiles) (not %)
+ nios2: Referenced crtnn.o not crtn.o (error)
Need to revisit:
+ m32c, moxie, sparc64 includes !nostdlib which is not used elsewhere
+ sh has -EL/-EB mapping. Why needed?
+ sparc64 didn't include crti.o/crtn.o but it is part of toolset
+ v850 uses something like this for link and end_file:
"%{qrtems: %(old_link)}"
This means that these are unnecessary. Try this on all.
+ mips uses old_link all the time also.
+ arm/tms750 adds -EB.
+ powerpc: Why do we have rtems_crt* and not use something from GCC?
Updates #3520.
|
|
|
|
| |
Updates #3250.
|
|
|
|
|
|
|
|
|
| |
Since the <tm27.h> is highly BSP-dependent and used only by the tm27
test program we must provide this header file for each BSP. Without the
preinstall build target each header file must have a unique source
header file.
Update #3254.
|
|
|
|
|
|
|
| |
This header file contained timing overhead values which are hard to
maintain.
Update #3254.
|
|
|
|
|
|
|
|
|
| |
Remove BSP-specific defaults for RTEMS_BSP_CLEANUP_OPTIONS to simplify
the BSP configuration and documentation. Change defaults to:
BSP_PRESS_KEY_FOR_RESET=0
BSP_RESET_BOARD_AT_EXIT=1
BSP_PRINT_EXCEPTION_CONTEXT=1
|
|
|
|
| |
Update #3239.
|
|
|
|
| |
Closes #3025.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Change the testsuite configuration files to hold state information about
a test. The states are:
exclude - Do not build the test
expected-fail - The test is expected to fail
indeterminate - The test may pass or may fail
A message is printed just after the test's BEGIN message to indicate
there is a special state for the test. No state message means the test
is expected to pass.
This support requires tests are correctly written to the use standard
support to begin and end a test.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
updates #2577.
For the m32csim BSP variant without this option sample executables
sizes were as follows:
text data bss dec hex filename
143148 1118 4664 148930 245c2 ticker.exe
55140 584 876 56600 dd18 minimum.exe
268638 1804 6598 277040 43a30 capture.exe
161226 1184 4712 167122 28cd2 nsecs.exe
389500 1518 5176 396194 60ba2 paranoia.exe
135256 1118 4638 141012 226d4 base_sp.exe
139728 1146 6482 147356 23f9c unlimited.exe
165500 1092 4638 171230 29cde hello.exe
For the m32csim BSP variant with this option sample executables
sizes were as follows:
text data bss dec hex filename
137586 1096 4526 143208 22f68 ticker.exe
31136 454 738 32328 7e48 minimum.exe
252540 1764 6458 260762 3fa9a capture.exe
155716 1162 4570 161448 276a8 nsecs.exe
378606 1492 5038 385136 5e070 paranoia.exe
124526 1092 4500 130118 1fc46 base_sp.exe
128746 1120 6344 136210 21412 unlimited.exe
154278 1066 4500 159844 27064 hello.exe
|
|
|
|
| |
Update #2408.
|
|
|
|
|
|
|
| |
This avoids potential dead code in _Thread_Handler(). It gets rid of
the dangerous function pointer casts.
Update #2514.
|
| |
|
|
|
|
|
|
| |
Use the bsp_predriver_hook() instead.
Update #2408.
|
|
|
|
|
| |
Fix broken RTEMS linker set descriptions introduced by
b618d8cfc54f84d4ed03dc7b7fa510c872e6128a.
|
|
|
|
| |
Update #2408.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This was done by the following script run from libbsp:
find * -name bsp.h | xargs -e grep -l "#ifndef.*_BSP_H" | while read b
do
echo $b
cpu=`echo $b | cut -d'/' -f1 | tr '[:lower:]' '[:upper:]' `
bsp=`echo $b | cut -d'/' -f2 | tr '[:lower:]' '[:upper:]' `
g="LIBBSP_${cpu}_${bsp}_BSP_H"
# echo $g
sed -e "s/ifndef _BSP_H/ifndef ${g}/" \
-e "s/define _BSP_H/define ${g}/" \
-i $b
done
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
Close #2219.
|
| |
|
|
|
|
| |
Some includes may use C++ and this conflicts if surrounded extern "C".
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
The file console-polled.h provides the prototypes for the three
required methods when implementing a single port polled console
driver. This paradigm is common on simulators and simple hardware.
+ Updated the BSPs Makefile.am to make console-polled.h available.
+ Regenerated the BSPs preinstall.sm.
+ Updated console support files to include <bsp/console-polled.h>.
+ Updated console support files to make printk() support method static.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This change starts with removing the effectively empty file
timerdrv.h. The prototypes for benchmark_timer_XXX() were in
btimer.h which was not universally used. Thus every use of
timerdrv.h had to be changed to btimer.h. Then the prototypes
for benchmark_timer_read() had to be adjusted to return
benchmark_timer_t rather than int or uint32_t.
I took this opportunity to also correct the file headers to
separate the copyright from the file description comments which
is needed to ensure the copyright isn't propagated into Doxygen
output.
|
|
|
|
|
| |
With this patch the preinstall.am files are in a set order and not
dependent on now perl implements a hash.
|
|
|
|
|
|
|
| |
The first pass at building these was without networking enabled.
This pass addresses that plus accounts for some new BSPs which
needed testsuite.tcfg files and BSPs which could not link tests
which had been added since the first pass.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The following BSPs do not have tick support so the tests fail:
arm1136jfs
arm1136js
arm7tdmi
arm920
armcortexa9 (does not run any more)
avrtest
h8sim
h8sxsim
m32csim
m32rsim
moxiesim
simsh1
simsh2
simsh4
v850e1sim
v850e2sim
v850e2v3sim
v850esim
v850essim
v850sim
This list was provided by Joel in the following post:
http://www.rtems.org/pipermail/rtems-devel/2014-April/006526.html
|
|
|
|
|
| |
The TLS section symbols had wrong values in case of an empty TLS data
section and a nonempty TLS BSS section.
|
| |
|