Move more things to the lib tool
This commit is contained in:
parent
e0f3f0a2b4
commit
bd7a79c9e1
2 changed files with 17 additions and 15 deletions
|
@ -5,9 +5,12 @@
|
|||
SCons builder for a lib directory.
|
||||
'''
|
||||
|
||||
import os
|
||||
|
||||
import SCons.Errors
|
||||
import SCons.Script
|
||||
|
||||
|
||||
def _lib(env, name):
|
||||
return env['LIBS'].get(name)
|
||||
|
||||
|
@ -18,6 +21,19 @@ def _register_lib(env, name, lib):
|
|||
env['LIBS'][name] = lib
|
||||
|
||||
|
||||
def _lib_dirs(env):
|
||||
for lib in os.listdir(env.lib_root.abspath):
|
||||
lib_dir = env.lib_root.Dir(lib)
|
||||
if not lib_dir.isdir():
|
||||
continue
|
||||
yield (lib, lib_dir)
|
||||
|
||||
|
||||
def _process_lib_dirs(env):
|
||||
for name, _ in _lib_dirs(env):
|
||||
env.LibDir(name)
|
||||
|
||||
|
||||
def _process_lib_dir(env, lib, src_dir=None, out_dir=None, inc_dir=None):
|
||||
if not src_dir:
|
||||
src_dir = env.lib_root.Dir(lib)
|
||||
|
@ -64,6 +80,7 @@ def generate(env):
|
|||
env.AddMethod(_build_library(env, env.StaticLibrary), 'StaticLibrary')
|
||||
env.AddMethod(_build_library(env, env.SharedLibrary), 'SharedLibrary')
|
||||
env.AddMethod(_lib, 'lib')
|
||||
env.AddMethod(_process_lib_dirs, 'process_lib_dirs')
|
||||
|
||||
def exists(env):
|
||||
return True
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue