@@ -1,39 +1,39 | |||||
1 | set(rtems_dir /opt/rtems-4.10/) |
|
1 | set(rtems_dir /opt/rtems-4.10/) | |
2 |
|
2 | |||
3 | set(CMAKE_SYSTEM_NAME rtems) |
|
3 | set(CMAKE_SYSTEM_NAME rtems) | |
4 | set(CMAKE_C_COMPILER ${rtems_dir}/bin/sparc-rtems-gcc) |
|
4 | set(CMAKE_C_COMPILER ${rtems_dir}/bin/sparc-rtems-gcc) | |
5 | set(CMAKE_CXX_COMPILER ${rtems_dir}/bin/sparc-rtems-g++) |
|
5 | set(CMAKE_CXX_COMPILER ${rtems_dir}/bin/sparc-rtems-g++) | |
6 | set(CMAKE_LINKER ${rtems_dir}/bin/sparc-rtems-g++) |
|
6 | set(CMAKE_LINKER ${rtems_dir}/bin/sparc-rtems-g++) | |
7 | SET(CMAKE_EXE_LINKER_FLAGS "-static") |
|
7 | SET(CMAKE_EXE_LINKER_FLAGS "-static") | |
8 | option(fix-b2bst "Activate -mfix-b2bst switch to mitigate \"LEON3FT Stale Cache Entry After Store with Data Tag Parity Error\" errata, GRLIB-TN-0009" ON) |
|
8 | option(fix-b2bst "Activate -mfix-b2bst switch to mitigate \"LEON3FT Stale Cache Entry After Store with Data Tag Parity Error\" errata, GRLIB-TN-0009" ON) | |
9 |
|
9 | |||
10 | option(Coverage "Enables code coverage" OFF) |
|
10 | option(Coverage "Enables code coverage" OFF) | |
11 |
|
11 | |||
12 |
|
12 | |||
13 | set(CMAKE_C_FLAGS_RELEASE "-O3") |
|
13 | set(CMAKE_C_FLAGS_RELEASE "-O3") | |
14 |
set(CMAKE_C_FLAGS_DEBUG "-O |
|
14 | set(CMAKE_C_FLAGS_DEBUG "-O3 -fno-inline") | |
15 |
|
15 | |||
16 |
|
16 | |||
17 | if(fix-b2bst) |
|
17 | if(fix-b2bst) | |
18 | set(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} -mfix-b2bst") |
|
18 | set(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} -mfix-b2bst") | |
19 | set(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -mfix-b2bst") |
|
19 | set(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -mfix-b2bst") | |
20 | endif() |
|
20 | endif() | |
21 |
|
21 | |||
22 |
|
22 | |||
23 | set(CMAKE_C_LINK_EXECUTABLE "<CMAKE_LINKER> <FLAGS> -Xlinker -Map=<TARGET>.map <CMAKE_CXX_LINK_FLAGS> <LINK_FLAGS> <OBJECTS> -o <TARGET> <LINK_LIBRARIES>") |
|
23 | set(CMAKE_C_LINK_EXECUTABLE "<CMAKE_LINKER> <FLAGS> -Xlinker -Map=<TARGET>.map <CMAKE_CXX_LINK_FLAGS> <LINK_FLAGS> <OBJECTS> -o <TARGET> <LINK_LIBRARIES>") | |
24 |
|
24 | |||
25 | include_directories("${rtems_dir}/sparc-rtems/leon3/lib/include") |
|
25 | include_directories("${rtems_dir}/sparc-rtems/leon3/lib/include") | |
26 |
|
26 | |||
27 | function (check_b2bst target bin) |
|
27 | function (check_b2bst target bin) | |
28 | add_custom_command(TARGET ${target} |
|
28 | add_custom_command(TARGET ${target} | |
29 | POST_BUILD |
|
29 | POST_BUILD | |
30 | COMMAND ${rtems_dir}/bin/sparc-rtems-objdump -d ${bin}/${target} | ${CMAKE_SOURCE_DIR}/sparc/leon3ft-b2bst-scan.tcl |
|
30 | COMMAND ${rtems_dir}/bin/sparc-rtems-objdump -d ${bin}/${target} | ${CMAKE_SOURCE_DIR}/sparc/leon3ft-b2bst-scan.tcl | |
31 | ) |
|
31 | ) | |
32 | endfunction() |
|
32 | endfunction() | |
33 |
|
33 | |||
34 | function (build_srec target bin rev) |
|
34 | function (build_srec target bin rev) | |
35 | add_custom_command(TARGET ${target} |
|
35 | add_custom_command(TARGET ${target} | |
36 | POST_BUILD |
|
36 | POST_BUILD | |
37 | COMMAND ${rtems_dir}/bin/sparc-rtems-objcopy -j .data -F srec ${bin}/${target} RpwLfrApp_XXXX_data_rev-${rev}.srec && ${rtems_dir}/bin/sparc-rtems-objcopy -j .text -F srec ${bin}/${target} RpwLfrApp_XXXX_text_rev-${rev}.srec |
|
37 | COMMAND ${rtems_dir}/bin/sparc-rtems-objcopy -j .data -F srec ${bin}/${target} RpwLfrApp_XXXX_data_rev-${rev}.srec && ${rtems_dir}/bin/sparc-rtems-objcopy -j .text -F srec ${bin}/${target} RpwLfrApp_XXXX_text_rev-${rev}.srec | |
38 | ) |
|
38 | ) | |
39 | endfunction() |
|
39 | endfunction() |
General Comments 0
You need to be logged in to leave comments.
Login now