1import sys 2 3Import('env') 4 5libc_env = env.Clone() 6 7src = [ ] 8 9src_common = [ 10 "abort.c", 11 "assert.c", 12 "core/mutex.c", 13 "dir.c", 14 "exit.c", 15 "file.c", 16 "malloc.c", 17 "printf.c", 18 "process.c", 19 "posix/mman.c", 20 "posix/pthread.c", 21 "stdlib.c", 22 "string.c", 23 "syscall.c", 24 "time.c", 25] 26 27src_amd64 = [ 28# "amd64/entry.S", 29 "amd64/syscall.S", 30] 31 32if (env["ARCH"] == "amd64"): 33 src.append(src_amd64) 34src.append(src_common) 35 36libc_env.Append(CPPFLAGS = ['-nostdinc']) 37libc_env.Append(CPPPATH = ['#build/include']) 38 39libc_env.StaticLibrary("libc", src) 40libc_env.StaticObject("crt1", "crt1.c") 41libc_env.StaticObject("crti", "crti.S") 42libc_env.StaticObject("crtn", "crtn.S") 43 44