1*10465441SEvalZeroImport('rtconfig') 2*10465441SEvalZerofrom building import * 3*10465441SEvalZero 4*10465441SEvalZerocwd = GetCurrentDir() 5*10465441SEvalZerosrc = Split(''' 6*10465441SEvalZeroshell.c 7*10465441SEvalZerosymbol.c 8*10465441SEvalZerocmd.c 9*10465441SEvalZero''') 10*10465441SEvalZero 11*10465441SEvalZerofsh_src = Split(''' 12*10465441SEvalZerofinsh_compiler.c 13*10465441SEvalZerofinsh_error.c 14*10465441SEvalZerofinsh_heap.c 15*10465441SEvalZerofinsh_init.c 16*10465441SEvalZerofinsh_node.c 17*10465441SEvalZerofinsh_ops.c 18*10465441SEvalZerofinsh_parser.c 19*10465441SEvalZerofinsh_var.c 20*10465441SEvalZerofinsh_vm.c 21*10465441SEvalZerofinsh_token.c 22*10465441SEvalZero''') 23*10465441SEvalZero 24*10465441SEvalZeromsh_src = Split(''' 25*10465441SEvalZeromsh.c 26*10465441SEvalZeromsh_cmd.c 27*10465441SEvalZeromsh_file.c 28*10465441SEvalZero''') 29*10465441SEvalZero 30*10465441SEvalZeroCPPPATH = [cwd] 31*10465441SEvalZeroif rtconfig.CROSS_TOOL == 'keil': 32*10465441SEvalZero LINKFLAGS = ' --keep *.o(FSymTab)' 33*10465441SEvalZero 34*10465441SEvalZero if not GetDepend('FINSH_USING_MSH_ONLY'): 35*10465441SEvalZero LINKFLAGS = LINKFLAGS + ' --keep *.o(VSymTab) ' 36*10465441SEvalZeroelse: 37*10465441SEvalZero LINKFLAGS = '' 38*10465441SEvalZero 39*10465441SEvalZeroif GetDepend('FINSH_USING_MSH'): 40*10465441SEvalZero src = src + msh_src 41*10465441SEvalZeroif not GetDepend('FINSH_USING_MSH_ONLY'): 42*10465441SEvalZero src = src + fsh_src 43*10465441SEvalZero 44*10465441SEvalZerogroup = DefineGroup('finsh', src, depend = ['RT_USING_FINSH'], CPPPATH = CPPPATH, LINKFLAGS = LINKFLAGS) 45*10465441SEvalZero 46*10465441SEvalZeroReturn('group') 47