# -*- mode: python; coding: utf-8; -*- # Codezero -- a microkernel for embedded systems. # # Copyright © 2009 B Labs Ltd # # This program is free software: you can redistribute it and/or modify it under the terms of the GNU # General Public License as published by the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even # the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public # License for more details. # # You should have received a copy of the GNU General Public License along with this program. If not, see # . # # Author: Russel Winder Import('environment', 'variant') source = \ Glob('src/*.c') + \ Glob('src/sys-' + variant + '/*.c') + \ Glob('src/sys-' + variant + '/arch-' + environment['ARCH'] + '/*.c') + \ Glob('src/sys-' + variant + '/arch-' + environment['ARCH'] + '/plat-' + environment['PLATFORM'] + '/*.c') + \ Glob('src/arch-' + environment['ARCH'] + '/*.c') + \ Glob('src/arch-' + environment['ARCH'] + '/*.S') e = environment.Clone() e.Append(CPPPATH = ['include', 'include/sys-' + variant + '/arch-' + environment['ARCH']]) objects = e.StaticObject(source) Depends (objects, e['configFiles']) result = ( e.StaticLibrary('c-' + variant, objects), e.StaticObject('crt/sys-' + variant + '/arch-' + e['ARCH'] + '/crt0.S') ) Return('result')