Changeset 9:43ef657bdc29
- Timestamp:
- 08/11/06 16:30:38 (2 years ago)
- Files:
-
- Env/BuildJob.py (modified) (6 diffs)
- SConscript (modified) (1 diff)
- SConstruct (modified) (2 diffs)
- eXosip/SConscript (modified) (1 diff)
- httptunnel/SConscript (modified) (1 diff)
- libs/curl/SConscript (modified) (3 diffs)
- libs/ffmpeg/SConscript (modified) (1 diff)
- libs/ffmpeg/SConscript-avcodec (modified) (1 diff)
- libs/ffmpeg/SConscript-avutil (modified) (1 diff)
- libs/openssl/SConscript (modified) (3 diffs)
- libs/pixertool/SConscript (modified) (3 diffs)
- libs/timer/SConscript (modified) (3 diffs)
- libs/util/SConscript (modified) (1 diff)
- libs/util/cutil/SConscript (modified) (1 diff)
- libs/util/util/SConscript (modified) (3 diffs)
- libs/webcam/SConscript (modified) (6 diffs)
- phapi/SConscript (modified) (4 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
Env/BuildJob.py
r7 r9 1 1 import sets, os, time, sys 2 2 from SCons.Environment import Environment 3 4 Set = sets.Set 3 5 4 6 class ModuleInfo: … … 24 26 return [] 25 27 26 print "Preparing for:", self.name28 # print "Preparing for:", self.name, " libs=", self.libs 27 29 for m in self.depends: 28 30 m.prepare(env) … … 34 36 elibs = sets.ImmutableSet(evar('LIBS')) 35 37 38 36 39 newlp = self.libpathes - elp 37 40 newinc = self.includes - einc 38 41 newlibs = self.libs - elibs 42 39 43 40 44 if len(newlp): … … 43 47 env.Append(CPPPATH = list(newinc)) 44 48 if len(newlibs): 45 env.Append(LIBS = list(newl p))49 env.Append(LIBS = list(newlibs)) 46 50 47 51 … … 123 127 print msg, l 124 128 125 showprep("Before preparing")126 usedModules = [ self.modules[x] for x in uses]129 # showprep("Before preparing") 130 usedModules = [ self.modules[x] for x in ( Set(uses) & Set(self.modules.keys())) ] 127 131 for m in usedModules: 128 132 m.prepare(env) 129 133 130 showprep("After preparing")134 # showprep("After preparing") 131 135 132 136 … … 164 168 165 169 166 bldDir = env.GetBuildPath("configure") 167 168 170 bldDir = env.Dir(".").path 171 172 173 print "blddir", bldDir 169 174 makefile = env.Command(makeFiles, configureFiles, 170 175 'cd ' + bldDir + ' && ' + configureCommand) SConscript
r7 r9 56 56 57 57 projects = [ 58 'libs/ffmpeg', 58 59 'libs/portaudio', 59 60 'libs/curl', 60 61 'libs/util', 62 'libs/timer', 63 'libs/pixertool', 64 'libs/webcam', 61 65 'httptunnel', 62 66 'libosip2', SConstruct
r8 r9 5 5 opts = Options('version.py') 6 6 opts.AddOptions( 7 BoolOption('video', "Enable Video Support", False),8 BoolOption('ssl', "Enable SSL support", False),9 BoolOption('httptunnel', "Enable HTTP tunneling support", False),7 BoolOption('video', "Enable Video Support", True), 8 BoolOption('ssl', "Enable SSL support", True), 9 BoolOption('httptunnel', "Enable HTTP tunneling support", True), 10 10 BoolOption('netlib', "Enable netlib module support", False), 11 11 BoolOption('phapi_embed', 'Compile PHPAPI for embedded environment', False), … … 26 26 BoolOption('enable_phapi_embed', "Enable EMBEDDED version of PHAPI", False), 27 27 BoolOption('qos_debug', "Enable QoS debugging functionality", False), 28 BoolOption('enable_video', "Enable Video functionality", False),29 28 BoolOption('enable_alsa', "Disable ALSA driver", False), 30 29 ('target_os', "Target platform", sys.platform), eXosip/SConscript
r8 r9 56 56 57 57 exosiplib = env.StaticLibrary('eXosip', source = exosipobj) 58 BJ.DefModule('eXosip', includes = ["# eXosip/include"], libpath = [exosiplib[0].dir], libs = ["eXosip"])58 BJ.DefModule('eXosip', includes = ["#/eXosip/include"], libpath = [exosiplib[0].dir], libs = ["eXosip"]) 59 59 60 60 Alias('eXosip', exosiplib) httptunnel/SConscript
r7 r9 21 21 22 22 BJ.Prepare(env, ['veronacurl']) 23 httptunnel = env.StaticLibrary('httptunnel', sources, CPPDEFINES = defines, CPPPATH=["#libs/curl/include", "."]) 24 BJ.DefModule('httptunnel', includes = ['.'], libpath = ['.'], libs = ['httptunnel'], uses = ['veronacurl'], node = httptunnel) 23 env.Append(CPPDEFINES = defines, CPPPATH=["."]) 25 24 25 if env['shared_phapi']: 26 ho = env.SharedObject( source = sources) 27 else: 28 ho = env.StaticObject( source = sources) 29 30 ht = env.StaticLibrary('httptunnel', source = ho) 31 BJ.DefModule('httptunnel', includes = ['#/httptunnel'], libpath = [ht[0].dir], libs = ['httptunnel'], uses = ['veronacurl'], node = ht) 32 Alias('httptunnel', ht) libs/curl/SConscript
r6 r9 9 9 'lib' 10 10 ] 11 uses = [] 11 12 12 13 defines = { … … 23 24 24 25 if env['ssl']: 25 libs += ['openssl']26 uses += ['openssl'] 26 27 defines['USE_SSLEAY'] = 1 27 28 defines['USE_OPENSSL'] = 1 … … 112 113 env.Append(CPPPATH = include_path, CPPDEFINES = defines, LIBS = libs) 113 114 115 BJ.Prepare(env, uses) 116 114 117 if BJ.osxTarget: 115 veronacurl_lib=env.StaticLibrary('veronacurl', sources)118 lib=env.StaticLibrary('veronacurl', sources) 116 119 else: 117 veronacurl_lib=env.SharedLibrary('veronacurl', sources)120 lib=env.SharedLibrary('veronacurl', sources) 118 121 119 BJ.DefModule('veronacurl', includes = [' include'], libs = ['veronacurl'], node = veronacurl_lib)122 BJ.DefModule('veronacurl', includes = ['#/libs/curl/include'], libpath = [ lib[0].dir ], libs = ['veronacurl'], node = lib) libs/ffmpeg/SConscript
r0 r9 1 Import('BJ') 2 1 3 import SCons.Util 2 4 3 env = GlobalGetEnvironment()5 env = BJ.NewEnv() 4 6 5 env.GlobalAddDoxyfile()6 7 7 if GlobalOSWindows():8 if BJ.win32Target: 8 9 env.Tool('mingw') 9 10 env['SHLIBPREFIX'] = '' libs/ffmpeg/SConscript-avcodec
r0 r9 1 env = GlobalGetEnvironment()1 Import('BJ') 2 2 3 libs = [ 4 'avutil' 5 ] 3 env = BJ.NewEnv() 6 4 7 includes = [8 'libavcodec'9 ]10 5 11 env.GlobalAddIncludePath(includes)12 env.GlobalUseLibraries(libs)13 6 14 if GlobalArchX86() and GlobalOSMacOSX(): 15 env.GlobalAutoconf('avcodec', ['libavcodec/libavcodec.a'], 16 './configure --disable-mmx --enable-memalign-hack', 'cd libavcodec && make', 17 ['configure'], ['config.mak']) 18 else: 19 env.GlobalAutoconf('avcodec', ['libavcodec/libavcodec.a'], 20 './configure', 'cd libavcodec && make', 7 BJ.Autoconf(env, 'avcodec', ['libavcodec/libavcodec.a'], 8 File('configure').srcnode().abspath, 'cd libavcodec && make', 21 9 ['configure'], ['config.mak']) 22 10 23 11 12 BJ.DefModule('avcodec', includes = ["#/libs/ffmpeg/libavcodec"], libpath = [Dir("libavcodec").abspath], libs = ["avcodec"]) 13 libs/ffmpeg/SConscript-avutil
r0 r9 1 env = GlobalGetEnvironment()1 Import('BJ') 2 2 3 includes = [ 4 'libavutil' 5 ] 6 env.GlobalAddIncludePath(includes) 3 env = BJ.NewEnv() 7 4 8 if GlobalArchX86() and GlobalOSMacOSX(): 9 env.GlobalAutoconf('avutil', ['libavutil/libavutil.a'], 10 './configure --disable-mmx --enable-memalign-hack', 'cd libavutil && make', 11 ['configure'], ['config.mak']) 12 else: 13 env.GlobalAutoconf('avutil', ['libavutil/libavutil.a'], 14 './configure', 'cd libavutil && make', 5 6 7 BJ.Autoconf(env, 'avutil', ['libavutil/libavutil.a'], 8 File('configure').srcnode().abspath , 'cd libavutil && make', 15 9 ['configure'], ['config.mak']) 16 10 11 12 13 BJ.DefModule('avutil', includes = ["#/libs/ffmpeg/libavutil"], libpath = [Dir("libavutil").abspath], libs = ["avutil"]) 14 15 libs/openssl/SConscript
r0 r9 1 env = GlobalGetEnvironment() 1 Import('BJ') 2 2 3 3 4 libs = [] … … 6 7 defines = {} 7 8 8 if GlobalOSWindows():9 if BJ.win32target: 9 10 include_path += [ 10 ' inc32/openssl',11 ' inc32',11 '#/libs/openssl/inc32/openssl', 12 '#/libs/openssl/inc32', 12 13 ] 13 14 14 if GlobalCCMSVC():15 if BJ.msvc: 15 16 libs += [ 16 17 'libeay32', 17 18 'ssleay32', 18 19 ] 19 lib_path += [' out32/msvc']20 lib_path += ['#/libs/openssl/out32/msvc'] 20 21 21 elif GlobalCCMinGW():22 elif bBJ.mingw: 22 23 libs += [ 23 24 'ssl', 24 25 'crypto', 25 26 ] 26 lib_path += [' out32/mingw']27 lib_path += ['#/libs/openssl/out32/mingw'] 27 28 28 29 else: … … 32 33 ] 33 34 34 env.GlobalAddIncludePath(include_path)35 env.GlobalAddLibPath(lib_path)36 env.GlobalAddDefines(defines)37 env.GlobalUseLibraries(libs)38 35 39 if GlobalOSWindows(): 40 if GlobalCCMSVC(): 41 env.GlobalDeclareLibrary('openssl', ['out32/msvc/libeay32.lib', 'out32/msvc/ssleay32.lib']) 42 print env['LIBS'] 43 #env['LIBS'].remove('openssl') 44 elif GlobalCCMinGW(): 45 env.GlobalDeclareLibrary('openssl', ['out32/mingw/libcrypto.a', 'out32/mingw/libssl.a']) 46 print env['LIBS'] 47 #env['LIBS'].remove('openssl') 48 else: 49 env.GlobalDeclareSystemLibrary('openssl') 36 37 38 BJ.DefModule('openssl', libpath = lib_path, libs = libs) libs/pixertool/SConscript
r0 r9 1 env = GlobalGetEnvironment() 1 Import('BJ') 2 3 env = BJ.NewEnv() 2 4 3 5 libs = [ 4 6 'owcutil', 5 'avcodec' 7 'owutil', 8 'avcodec', 9 'avutil' 10 6 11 ] 12 7 13 lib_path = [] 8 14 defines = {} … … 16 22 ] 17 23 18 if GlobalCCMSVC():24 if BJ.msvc: 19 25 libs += ['winmm', 'strmiids', 'comsupp'] 20 26 sources += ['src/directx/directx-pixertool.cpp'] 21 27 22 elif GlobalOSLinux():28 elif BJ.linuxTarget: 23 29 sources += ['src/v4l/v4l-pixertool.c'] 24 30 25 elif GlobalOSMacOSX():31 elif BJ.osxTarget: 26 32 sources += ['src/quicktime/quicktime-pixertool.c'] 27 33 … … 29 35 sources += ['src/null-pixertool.cpp'] 30 36 31 env.GlobalAddIncludePath(include_path) 32 env.GlobalAddDefines(defines) 33 env.GlobalUseLibraries(libs) 37 env.Append(CPPPATH = include_path, CPPDEFINES = defines) 38 BJ.Prepare(env, libs) 34 39 35 env.GlobalStaticLibrary('pixertool', sources, headers) 40 if env['shared_phapi']: 41 pxo = env.SharedObject( source = sources ) 42 else: 43 pxo = env.StaticObject( source = sources ) 44 45 pxl = env.StaticLibrary('pixertool', source = pxo) 46 47 BJ.DefModule('pixertool', includes = ["#/libs/pixertool/include"], libpath = [pxl[0].dir], libs = ["pixertool"], 48 uses = ["owutil", "owcutil", "avcodec", "avutil"], node = pxl) 49 50 Alias('pixertool', pxl) 36 51 37 52 #env.SConscript('tests/SConscript') libs/timer/SConscript
r0 r9 1 env = GlobalGetEnvironment() 1 Import("BJ") 2 3 env = BJ.NewEnv() 4 2 5 3 6 libs = [] … … 9 12 defines = {} 10 13 11 if GlobalOSWindows():14 if BJ.win32Target: 12 15 sources += ['src/win32_mm/impl_timer.c'] 13 16 defines['TIMER_ENABLE_WINMM_IMPL'] = 1 … … 17 20 defines['TIMER_ENABLE_CLOCK_GETTIME_IMPL'] = 1 18 21 19 if GlobalOSLinux():22 if BJ.linuxTarget: 20 23 libs += ['rt', 'pthread'] 21 24 22 env.GlobalAddDefines(defines)23 env.GlobalAddIncludePath(include_path)24 env.GlobalUseLibraries(libs)25 25 26 env.GlobalStaticLibrary('wtimer', sources, headers) 26 env.Append(CCPDEFINES = defines, CPPPATH = include_path) 27 28 if env['shared_phapi']: 29 objs = env.SharedObject( source = sources ) 30 else: 31 objs = env.StaticObject( source = sources ) 32 33 lib = env.StaticLibrary('wtimer', source = objs ) 34 35 BJ.DefModule("wtimer", includes = ["#/libs/timer/include"], libpath = [lib[0].dir], libs = [ "wtimer" ], node = lib) 36 Alias("wtimer", lib) 37 libs/util/SConscript
r6 r9 5 5 projects = [ 6 6 'cutil', 7 #'util',7 'util', 8 8 # 'thread', 9 9 # 'http', libs/util/cutil/SConscript
r6 r9 22 22 23 23 24 utilobjs = env.SharedObject( source = sources, CPPPATH = include_path) 24 if env['shared_phapi']: 25 utilobjs = env.SharedObject( source = sources, CPPPATH = include_path) 26 else: 27 utilobjs = env.StaticObject( source = sources, CPPPATH = include_path) 28 29 25 30 cutil = env.StaticLibrary('owcutil', source = utilobjs) 26 Alias('cutil', cutil) 31 BJ.DefModule("owcutil", includes = ["#/libs/util/cutil/include"], libpath = [cutil[0].dir], libs = ["owcutil"], node = cutil) 32 Alias('owcutil', cutil) libs/util/util/SConscript
r0 r9 1 env = GlobalGetEnvironment() 1 Import("BJ") 2 3 env = BJ.NewEnv() 2 4 3 5 libs = [ … … 6 8 'owcutil', 7 9 ] 10 8 11 lib_path = [] 9 12 include_path = ['include'] … … 28 31 ] 29 32 30 if GlobalOSWindows():33 if BJ.win32Target: 31 34 libs += ['advapi32', 'shell32'] 32 35 33 elif GlobalOSMacOSX():36 elif BJ.osxTarget: 34 37 link_flags += ['-framework CoreFoundation'] 35 38 36 if GlobalCCMSVC():39 if BJ.msvc: 37 40 libs += ['shlwapi'] 38 41 39 env.GlobalAddLinkFlags(link_flags)40 env.GlobalAddIncludePath(include_path)41 env.GlobalUseLibraries(libs)42 env.GlobalAddDoxyfile()43 42 44 env.GlobalStaticLibrary('owutil', sources) 43 env.Append(CPPPATH = include_path) 44 BJ.Prepare(env, ["owcutil"]) 45 46 if env['shared_phapi']: 47 objs = env.SharedObject( source = sources) 48 else: 49 objs = env.StaticObject( source = sources) 50 51 52 lib = env.StaticLibrary("owutil", source = objs) 53 54 print "DEFINING owutil" 55 BJ.DefModule("owutil", includes = ["#/libs/util/util/include"], libpath = [ lib[0].dir ], libs = ["owutil"], node = lib) 56 Alias("owutil", lib) 45 57 46 58 #env.SConscript('tests/SConscript') libs/webcam/SConscript
r0 r9 1 env = GlobalGetEnvironment() 1 Import("BJ") 2 3 env = BJ.NewEnv() 4 2 5 3 6 libs = [ … … 5 8 'pixertool', 6 9 ] 10 7 11 #if GlobalOSLinux() or GlobalOSMacOSX(): 8 if GlobalOSMacOSX():12 if BJ.osxTarget: 9 13 libs.append('owthread') 10 14 … … 28 32 ] 29 33 30 if GlobalCCMSVC():34 if BJ.msvc: 31 35 headers += [ 32 36 'include/DirectXWebcamDriverFactory.h', … … 40 44 libs += ["winmm", "strmiids", "comsupp"] 41 45 42 if GlobalOSLinux():46 if BJ.linuxTarget: 43 47 headers += [ 44 48 'include/V4LWebcamDriverFactory.h', … … 49 53 ] 50 54 51 if GlobalOSMacOSX():55 if BJ.osxTarget: 52 56 headers += [ 53 57 'include/QuicktimeWebcamDriverFactory.h', … … 62 66 63 67 64 env. GlobalAddIncludePath(include_path)65 env.GlobalUseLibraries(libs) 68 env.Append(CPPPATH = include_path) 69 BJ.Prepare(env, libs) 66 70 67 env.GlobalStaticLibrary('webcam', sources, headers) 71 if env['shared_phapi']: 72 wbo = env.SharedObject( source=sources) 73 else: 74 wbo = env.StaticObject( source=sources) 68 75 69 #env.SConscript('tests/SConscript') 76 77 wblib = env.StaticLibrary('webcam', source = wbo) 78 Alias('webcam', wblib) 79 80 BJ.DefModule('webcam', includes = ["#/libs/webcam/include"], libpath = [wblib[0].dir], libs = ["webcam"]) 81 82 83 phapi/SConscript
r8 r9 114 114 115 115 if env["video"]: 116 libs += [ 'wtimer', 'owutil' ]116 libs += [ 'avcodec', 'avutil', 'wtimer', 'owutil' ] 117 117 118 118 … … 200 200 libs += ['pthread', 'rt'] 201 201 202 if env[' enable_video']:202 if env['video']: 203 203 libs += [ 204 204 'avcodec', … … 227 227 228 228 229 defines['USE_HTTP_TUNNEL'] = 1229 defines['USE_HTTP_TUNNEL'] = 1 230 230 231 231 if env['libsamplerate']: … … 295 295 env.ParseConfig('pkg-config --cflags --libs gthread-2.0') 296 296 297 env.Append(CPPPATH = include_path, CPPDEFINES = defines, LINKFLAGS = link_flags, LIBS = libs,LIBPATH = ["ilbc", "stun", "gsm"])298 BJ.Prepare(env, ["ortp", "eXosip", "portaudio", "osip"])297 env.Append(CPPPATH = include_path, CPPDEFINES = defines, LINKFLAGS = link_flags, LIBPATH = ["ilbc", "stun", "gsm"]) 298 BJ.Prepare(env, libs) 299 299 300 300 if shphapi:
