Changeset 63660a3 in mainline for kernel/meson.build
- Timestamp:
- 2019-08-17T12:49:43Z (5 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 41408d94
- Parents:
- 2c38a55b
- git-author:
- Jiří Zárevúcky <zarevucky.jiri@…> (2019-06-26 14:31:18)
- git-committer:
- Jiří Zárevúcky <zarevucky.jiri@…> (2019-08-17 12:49:43)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
kernel/meson.build
r2c38a55b r63660a3 1 1 2 ## The at-sign3 #4 # The `atsign` variable holds the ASCII character representing the at-sign5 # ('@') used in various $(AS) constructs (e.g. @progbits). On architectures that6 # don't use '@' for starting a comment, `atsign` is merely '@'. However, on7 # those that do use it for starting a comment (e.g. arm32), `atsign` must be8 # defined as the percentile-sign ('%') in the architecture-dependent files.9 #10 atsign = '@'11 12 ## Some architectures need a particular string at the beginning of assembly files.13 as_prolog = ''14 15 kernel_c_args = []16 kernel_link_args = []17 kernel_includes = []18 2 arch_src = [] 19 3 4 # Fills arch_src. 20 5 subdir('arch' / h_arch) 6 7 # Defines genarch_src. 21 8 subdir('genarch') 9 10 # Defines generic_src, instrumentable_src. 22 11 subdir('generic') 12 13 # Defines test_src 23 14 subdir('test') 24 15 … … 27 18 symtab_section = '.section symtab.data, "a", ' + atsign + 'progbits;' 28 19 29 kernel_include s += include_directories(20 kernel_include_dirs = include_directories( 30 21 'generic/include', 31 22 'genarch/include', … … 46 37 ] 47 38 39 # Preprocess linker script using C preprocessor. 48 40 kernel_ldscript = custom_target('_link.ld', 49 41 input: 'arch' / h_arch / '_link.ld.in', … … 63 55 ) 64 56 65 kernel_link_args +=[57 kernel_link_args = arch_kernel_link_args + [ 66 58 '-Wl,--nmagic', 67 59 '-T', meson.current_build_dir() / '_link.ld', … … 73 65 endif 74 66 75 kernel_c_args +=kernel_defs + [67 kernel_c_args = arch_kernel_c_args + kernel_defs + [ 76 68 '-ffreestanding', 77 69 # TODO: remove this flag … … 88 80 89 81 instrumentables = static_library('instrumentables', instrumentable_src, 90 include_directories: kernel_include s,82 include_directories: kernel_include_dirs, 91 83 implicit_include_directories: false, 92 84 c_args: kernel_c_args + (CONFIG_TRACE ? [ '-finstrument-functions' ] : []), … … 95 87 96 88 noninstrumentables = static_library('noninstrumentables', arch_src, genarch_src, generic_src, test_src, 97 include_directories: kernel_include s,89 include_directories: kernel_include_dirs, 98 90 implicit_include_directories: false, 99 91 c_args: kernel_c_args, … … 129 121 output: 'empty_map.S', 130 122 capture: true, 131 command: [ 'echo', as_prolog + symtab_section ],123 command: [ 'echo', kernel_as_prolog + symtab_section ], 132 124 ) 133 125 … … 139 131 140 132 kernel_elf = executable(kernel_name + '.elf', kernel_map_S, 141 include_directories: kernel_include s,133 include_directories: kernel_include_dirs, 142 134 implicit_include_directories: false, 143 135 c_args: kernel_c_args, … … 170 162 output: kernel_map_S_name, 171 163 capture: true, 172 command: [ 'echo', as_prolog + symtab_section + ' .incbin "@INPUT@"' ],164 command: [ 'echo', kernel_as_prolog + symtab_section + ' .incbin "@INPUT@"' ], 173 165 ) 174 166 endif
Note:
See TracChangeset
for help on using the changeset viewer.