# -*- mode: python; coding: utf-8; -*- # # Codezero -- Virtualization microkernel for embedded systems. # # Copyright © 2009 B Labs Ltd import os, sys, shelve from os.path import join # Get global paths PROJRELROOT = '../../../' sys.path.append(PROJRELROOT) from config.configuration import * from config.projpaths import * Import('env', 'arch', 'type') variant = type # Needed by fputc(), for declaration of pl011_uart_tx() LIBDEV_PATH = join(PROJROOT, 'conts/libdev') LIBDEV_INCPATH = [LIBDEV_PATH + '/uart/include'] e = env.Clone() e.Append(CPPPATH = ['include', 'include/sys-' + variant + '/arch-' + arch, LIBDEV_INCPATH], CCFLAGS = ['-nostdinc', '-DVARIANT_' + variant.upper()]) source = \ Glob('src/*.c') + \ Glob('src/sys-' + variant + '/*.c') + \ Glob('src/sys-' + variant + '/arch-' + arch + '/*.c') + \ Glob('src/arch-' + arch + '/*.c') + \ Glob('src/arch-' + arch + '/*.S') + \ Glob('crt/sys-' + variant + '/arch-' + arch + '/*.[cS]') objects = e.StaticObject(source) library = e.StaticLibrary('c-' + variant, objects) Return('library')