forked from thesofproject/sof
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathldscripts.cmake
More file actions
46 lines (30 loc) · 2.29 KB
/
ldscripts.cmake
File metadata and controls
46 lines (30 loc) · 2.29 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
set(IMR "0xa1608000")
set(HPSRAM "0xa06a1000")
# reserve space for manifest???
math(EXPR IMR "${IMR} + 9 * 4096" OUTPUT_FORMAT HEXADECIMAL)
math(EXPR HPSRAM "${HPSRAM} + 9 * 4096" OUTPUT_FORMAT HEXADECIMAL)
###set(MODULES_LIST sample sample2)
#separate_arguments(MODULES_LIST NATIVE_COMMAND ${MODULES_LIST})
set(LDSCRIPT_FILE elf32xtensa.x)
file(WRITE ${LDSCRIPT_FILE} "")
file(APPEND ${LDSCRIPT_FILE} "INCLUDE ${CMAKE_CURRENT_BINARY_DIR}/memory_header_linker_script.txt\n")
configure_file(${CMAKE_CURRENT_LIST_DIR}/memory_header_linker_script.txt.in ${CMAKE_CURRENT_BINARY_DIR}/memory_header_linker_script.txt)
file(APPEND ${LDSCRIPT_FILE} "INCLUDE ${CMAKE_CURRENT_BINARY_DIR}/common_text_linker_script.txt\n")
file(COPY ${CMAKE_CURRENT_LIST_DIR}/common_text_linker_script.txt DESTINATION ${CMAKE_CURRENT_BINARY_DIR}/)
file(APPEND ${LDSCRIPT_FILE} "INCLUDE ${CMAKE_CURRENT_BINARY_DIR}/common_rodata_linker_script.txt\n")
file(COPY ${CMAKE_CURRENT_LIST_DIR}/common_rodata_linker_script.txt DESTINATION ${CMAKE_CURRENT_BINARY_DIR}/)
#foreach(MODULE ${MODULES_LIST})
# file(READ ${MODULE}.nm NM_CONTENTS)
# string(REGEX MATCH "[A-Za-z0-9_]+PackageEntryPoint" PACKAGE_ENTRY_POINT ${NM_CONTENTS})
file(APPEND ${LDSCRIPT_FILE} "INCLUDE ${CMAKE_CURRENT_BINARY_DIR}/text_linker_script.txt\n")
configure_file(${CMAKE_CURRENT_LIST_DIR}/module_text_linker_script.txt.in ${CMAKE_CURRENT_BINARY_DIR}/text_linker_script.txt)
file(APPEND ${LDSCRIPT_FILE} "INCLUDE ${CMAKE_CURRENT_BINARY_DIR}/rodata_linker_script.txt\n")
configure_file(${CMAKE_CURRENT_LIST_DIR}/module_rodata_linker_script.txt.in ${CMAKE_CURRENT_BINARY_DIR}/rodata_linker_script.txt)
file(APPEND ${LDSCRIPT_FILE} "INCLUDE ${CMAKE_CURRENT_BINARY_DIR}/bss_linker_script.txt\n")
configure_file(${CMAKE_CURRENT_LIST_DIR}/module_bss_linker_script.txt.in ${CMAKE_CURRENT_BINARY_DIR}/bss_linker_script.txt)
#endforeach()
file(APPEND ${LDSCRIPT_FILE} "INCLUDE ${CMAKE_CURRENT_BINARY_DIR}/xt_linker_script.txt\n")
file(COPY ${CMAKE_CURRENT_LIST_DIR}/xt_linker_script.txt DESTINATION ${CMAKE_CURRENT_BINARY_DIR}/)
###set(LIBNAME ${LIBRARY})
file(APPEND ${LDSCRIPT_FILE} "INCLUDE ${CMAKE_CURRENT_BINARY_DIR}/guard_linker_script.txt\n")
configure_file(${CMAKE_CURRENT_LIST_DIR}/guard_linker_script.txt.in ${CMAKE_CURRENT_BINARY_DIR}/guard_linker_script.txt)