summaryrefslogtreecommitdiff
path: root/components/mm/SConscript
blob: cc205119f832b34b1713cc3ef00d3172d6c83eaa (plain)
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
import os
from building import *

group = []
cwd = GetCurrentDir()

new_riscv_common = GetDepend('RT_USING_RISCV_NEW_COMMON')
legacy_mmu_arch = (GetDepend('ARCH_ARM_CORTEX_A') or
                   GetDepend('ARCH_ARMV8') or
                   (GetDepend('ARCH_RISCV64') and not new_riscv_common))
new_riscv_mmu_arch = (new_riscv_common and
                      GetDepend('ARCH_MM_MMU'))

if legacy_mmu_arch or new_riscv_mmu_arch:
    src = Glob('*.c') + Glob('*_gcc.S')
    SrcRemove(src, ['ioremap-nommu.c'])
    if not GetDepend('RT_USING_MEMBLOCK'):
        SrcRemove(src, ['mm_memblock.c'])

    CPPPATH = [cwd]

    group = DefineGroup('Memm', src, depend = ['ARCH_MM_MMU'], CPPPATH = CPPPATH)
elif GetDepend('RT_USING_OFW'):
    group = DefineGroup('Memm', ['ioremap-nommu.c'], depend = ['RT_USING_OFW'], CPPPATH = [cwd])

group = group + SConscript(os.path.join('utest', 'SConscript'))

Return('group')