mirror of
https://github.com/drasko/codezero.git
synced 2026-01-12 02:43:15 +01:00
Simplify the top-level SConstruct a bit by transfering responsibility for ensuring the dependency on the configuration files to the SConscript files.
This commit is contained in:
@@ -133,13 +133,11 @@ else :
|
||||
crts = {}
|
||||
for variant in ['baremetal']:
|
||||
(libs[variant], crts[variant]) = SConscript('libs/c/SConscript', variant_dir = buildDirectory + '/lib/c/' + variant, duplicate = 0, exports = {'environment': libraryEnvironment, 'variant': variant})
|
||||
Depends((libs[variant], crts[variant]), libraryEnvironment['configFiles'])
|
||||
|
||||
baseEnvironment['baremetal_libc'] = libs['baremetal']
|
||||
baseEnvironment['baremetal_crt0'] = crts['baremetal']
|
||||
|
||||
libelf = SConscript('libs/elf/SConscript', variant_dir = buildDirectory + '/lib/elf', duplicate = 0, exports = {'environment': libraryEnvironment})
|
||||
Depends(libelf, libraryEnvironment['configFiles'])
|
||||
|
||||
Alias('libs', crts.values() + libs.values() + [libelf])
|
||||
|
||||
@@ -163,7 +161,6 @@ else :
|
||||
CPPFLAGS = ['-include', 'config.h', '-include', 'cml2Config.h', '-include', 'macros.h', '-include', 'types.h', '-D__KERNEL__'])
|
||||
|
||||
startAxf = SConscript('src/SConscript' , variant_dir = buildDirectory + '/kernel' , duplicate = 0, exports = {'environment': kernelEnvironment})
|
||||
Depends(startAxf, kernelEnvironment['configFiles'])
|
||||
|
||||
Alias('kernel', startAxf)
|
||||
|
||||
@@ -183,8 +180,6 @@ else :
|
||||
for library in taskLibraryNames:
|
||||
taskLibraries.append(SConscript(posixServicesDirectory + library + '/SConscript', variant_dir = buildDirectory + '/' + posixServicesDirectory + library, duplicate = 0, exports = {'environment': taskSupportLibraryEnvironment, 'posixServicesDirectory': posixServicesDirectory}))
|
||||
|
||||
Depends(taskLibraries, taskSupportLibraryEnvironment['configFiles'])
|
||||
|
||||
Alias ('tasklibs', taskLibraries)
|
||||
|
||||
########## Build the tasks ########################
|
||||
@@ -229,7 +224,6 @@ else :
|
||||
tasks.append(program)
|
||||
if i < len(imageOrderData) - 1:
|
||||
imageOrderData[i+1][1].append(program)
|
||||
Depends(tasks, tasksEnvironment['configFiles'])
|
||||
|
||||
Alias ('tasks', tasks)
|
||||
|
||||
|
||||
@@ -89,5 +89,6 @@ bootdescSource = environment.Command('bootdesc.c', images, generateBootdesc)
|
||||
objects = environment.Object(bootdescSource)
|
||||
Depends(objects, environment['configFiles'])
|
||||
bootdesc = environment.Command('bootdesc.axf', environment.Program('bootdesc_intermediate', objects) + [images[1]] , relocateBootdesc)
|
||||
Depends(bootdesc, environment['configFiles'])
|
||||
|
||||
Return('bootdesc')
|
||||
|
||||
@@ -27,5 +27,6 @@ e['CCFLAGS'] = ['-g', '-nostdlib', '-Wall', '-ffreestanding', '-std=gnu99']
|
||||
objects = e.StaticObject(Glob('src/*.c') + Glob('src/arch-' + environment['ARCH'] + '/*.[cS]'))
|
||||
Depends(objects, e['configFiles'])
|
||||
library = e.StaticLibrary('c', objects)
|
||||
Depends(library, e['configFiles'])
|
||||
|
||||
Return('library')
|
||||
|
||||
@@ -29,5 +29,6 @@ e['CCFLAGS'] = ['-g', '-nostdlib', '-Wall', '-ffreestanding', '-std=gnu99']
|
||||
objects = e.StaticObject(Glob('src/*.c') + Glob('src/' + e['ARCH'] + '/*.[cS]'))
|
||||
Depends(objects, e['configFiles'])
|
||||
library = e.StaticLibrary('l4', objects)
|
||||
Depends(library, e['configFiles'])
|
||||
|
||||
Return('library')
|
||||
|
||||
@@ -25,14 +25,17 @@ e.Append(CPPPATH = ['#' + posixServicesDirectory + 'libl4/include' , '.' ])
|
||||
mmObjects = e.StaticObject(Glob('mm/*.c'))
|
||||
Depends(mmObjects, e['configFiles'])
|
||||
mmLibrary = e.StaticLibrary('mm', mmObjects)
|
||||
Depends(mmLibrary, e['configFiles'])
|
||||
|
||||
kmObjects = e.StaticObject(Glob('kmalloc/*.c'))
|
||||
Depends(kmObjects, e['configFiles'])
|
||||
kmLibrary = e.StaticLibrary('km', kmObjects)
|
||||
Depends(kmLibrary, e['configFiles'])
|
||||
|
||||
mcObjects = e.StaticObject(Glob('memcache/*.c'))
|
||||
Depends(mcObjects, e['configFiles'])
|
||||
mcLibrary = e.StaticLibrary('mc', mcObjects)
|
||||
Depends(mcLibrary, e['configFiles'])
|
||||
|
||||
libraries = (mmLibrary, kmLibrary, mcLibrary)
|
||||
|
||||
|
||||
@@ -29,5 +29,6 @@ e['CCFLAGS'] = ['-g', '-nostdlib', '-Wall', '-ffreestanding', '-std=gnu99']
|
||||
objects = e.StaticObject(Glob('*.c'))
|
||||
Depends(objects, e['configFiles'])
|
||||
library = e.StaticLibrary('posix', objects)
|
||||
Depends(library, e['configFiles'])
|
||||
|
||||
Return('library')
|
||||
|
||||
@@ -32,10 +32,11 @@ e.Append(CPPPATH = ['include', 'include/sys-' + variant + '/arch-' + environment
|
||||
|
||||
objects = e.StaticObject(source)
|
||||
Depends (objects, e['configFiles'])
|
||||
library = e.StaticLibrary('c-' + variant, objects)
|
||||
Depends (library, e['configFiles'])
|
||||
runTime = e.StaticObject('crt/sys-' + variant + '/arch-' + e['ARCH'] + '/crt0.S')
|
||||
Depends (runTime, e['configFiles'])
|
||||
|
||||
result = (
|
||||
e.StaticLibrary('c-' + variant, objects),
|
||||
e.StaticObject('crt/sys-' + variant + '/arch-' + e['ARCH'] + '/crt0.S')
|
||||
)
|
||||
result = (library, runTime)
|
||||
|
||||
Return('result')
|
||||
|
||||
@@ -25,5 +25,6 @@ e.Append(CPPPATH = ['include', '#libs/c/include', '#libs/c/include/arch/' + e['A
|
||||
objects = e.StaticObject(Glob('src/*.c'))
|
||||
Depends(objects, e['configFiles'])
|
||||
library = e.StaticLibrary('elf', objects)
|
||||
Depends(library, e['configFiles'])
|
||||
|
||||
Return('library')
|
||||
|
||||
Reference in New Issue
Block a user