Revamp how libraries are done
This commit is contained in:
parent
b745019f39
commit
164d2944f6
2 changed files with 16 additions and 12 deletions
10
SConstruct
10
SConstruct
|
@ -39,9 +39,17 @@ for mode in (MODE.split(',') if MODE else ['debug']):
|
|||
env.Append(CPPPATH=['.'])
|
||||
|
||||
# Process all lib dirs.
|
||||
env['AVAILABLE_LIBS'] = {}
|
||||
for lib in os.listdir(LIB_DIR.abspath):
|
||||
lib_dir = LIB_DIR.Dir(lib)
|
||||
if not lib_dir.isdir():
|
||||
print 'Skipping {} in lib directory: is not a directory'.format(lib)
|
||||
continue
|
||||
lib_out_dir = out_dir.Dir('lib').Dir(lib)
|
||||
do_sconscript(env, LIB_DIR.Dir(lib), lib_out_dir)
|
||||
output = do_sconscript(env, LIB_DIR.Dir(lib), lib_out_dir)
|
||||
if not output:
|
||||
print "Lib {} didn't return any object".format(lib)
|
||||
env['AVAILABLE_LIBS'][lib] = output
|
||||
env.Append(LIBPATH=[lib_out_dir])
|
||||
|
||||
# Get source files.
|
||||
|
|
|
@ -1,13 +1,16 @@
|
|||
# SConscript
|
||||
# vim: set ft=python:
|
||||
#
|
||||
# Build file for the gtest library. This file also serves as an example for how
|
||||
# to build libraries for inclusion with my SCons environment. Libraries should
|
||||
# return a build object.
|
||||
#
|
||||
# Eryn Wells <eryn@erynwells.me>
|
||||
|
||||
import os.path
|
||||
|
||||
Import('env')
|
||||
Import('build_env')
|
||||
|
||||
env.Append(CPPPATH=[Dir('include').srcnode()])
|
||||
|
||||
files = [
|
||||
'gtest-all.cc',
|
||||
|
@ -20,12 +23,5 @@ files = [
|
|||
'gtest.cc',
|
||||
]
|
||||
|
||||
objs = []
|
||||
for f in files:
|
||||
objs.append(env.Object(f))
|
||||
|
||||
include_dir = Dir('include').srcnode()
|
||||
env.Append(CPPPATH=[include_dir])
|
||||
build_env.Append(CPPPATH=[include_dir])
|
||||
|
||||
gtest = env.Library('gtest', objs)
|
||||
gtest = env.Library('gtest', files)
|
||||
Return('gtest')
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue