Changeset 9:43ef657bdc29

Show
Ignore:
Timestamp:
08/11/06 16:30:38 (2 years ago)
Author:
vadim@mbdsys.com
Message:

Fixes for construction with video enabled

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • Env/BuildJob.py

    r7 r9  
    11import sets, os, time, sys 
    22from SCons.Environment import Environment 
     3 
     4Set = sets.Set 
    35 
    46class ModuleInfo: 
     
    2426            return [] 
    2527 
    26         print "Preparing for:", self.name  
     28        # print "Preparing for:", self.name, " libs=", self.libs  
    2729        for m in self.depends: 
    2830            m.prepare(env) 
     
    3436        elibs = sets.ImmutableSet(evar('LIBS')) 
    3537 
     38     
    3639        newlp = self.libpathes - elp 
    3740        newinc = self.includes - einc 
    3841        newlibs = self.libs - elibs  
     42         
    3943 
    4044        if len(newlp): 
     
    4347            env.Append(CPPPATH = list(newinc)) 
    4448        if len(newlibs): 
    45             env.Append(LIBS = list(newlp)) 
     49            env.Append(LIBS = list(newlibs)) 
    4650             
    4751         
     
    123127              print msg, l 
    124128 
    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()))
    127131          for m in usedModules: 
    128132              m.prepare(env) 
    129133               
    130           showprep("After preparing") 
     134          # showprep("After preparing") 
    131135 
    132136 
     
    164168 
    165169         
    166         bldDir = env.GetBuildPath("configure") 
    167          
    168  
     170        bldDir = env.Dir(".").path 
     171         
     172 
     173        print "blddir", bldDir 
    169174        makefile = env.Command(makeFiles, configureFiles, 
    170175                                        'cd ' + bldDir + ' && ' + configureCommand) 
  • SConscript

    r7 r9  
    5656 
    5757projects = [ 
     58        'libs/ffmpeg', 
    5859        'libs/portaudio',  
    5960        'libs/curl', 
    6061        'libs/util', 
     62        'libs/timer', 
     63        'libs/pixertool', 
     64        'libs/webcam', 
    6165        'httptunnel', 
    6266        'libosip2', 
  • SConstruct

    r8 r9  
    55opts = Options('version.py') 
    66opts.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), 
    1010        BoolOption('netlib',  "Enable netlib module support", False), 
    1111        BoolOption('phapi_embed',  'Compile PHPAPI for embedded environment', False), 
     
    2626        BoolOption('enable_phapi_embed', "Enable EMBEDDED version of PHAPI", False), 
    2727        BoolOption('qos_debug', "Enable QoS debugging functionality", False), 
    28         BoolOption('enable_video', "Enable Video functionality", False), 
    2928        BoolOption('enable_alsa', "Disable ALSA driver", False), 
    3029        ('target_os', "Target platform", sys.platform), 
  • eXosip/SConscript

    r8 r9  
    5656    
    5757exosiplib = env.StaticLibrary('eXosip', source = exosipobj) 
    58 BJ.DefModule('eXosip', includes = ["#eXosip/include"], libpath = [exosiplib[0].dir], libs = ["eXosip"]) 
     58BJ.DefModule('eXosip', includes = ["#/eXosip/include"], libpath = [exosiplib[0].dir], libs = ["eXosip"]) 
    5959 
    6060Alias('eXosip', exosiplib) 
  • httptunnel/SConscript

    r7 r9  
    2121 
    2222BJ.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) 
     23env.Append(CPPDEFINES = defines, CPPPATH=["."]) 
    2524 
     25if env['shared_phapi']: 
     26   ho = env.SharedObject( source = sources) 
     27else: 
     28   ho = env.StaticObject( source = sources) 
     29 
     30ht = env.StaticLibrary('httptunnel', source = ho) 
     31BJ.DefModule('httptunnel', includes = ['#/httptunnel'], libpath = [ht[0].dir], libs = ['httptunnel'], uses = ['veronacurl'], node = ht) 
     32Alias('httptunnel', ht) 
  • libs/curl/SConscript

    r6 r9  
    99        'lib' 
    1010] 
     11uses = [] 
    1112 
    1213defines = { 
     
    2324 
    2425if env['ssl']: 
    25         libs += ['openssl'] 
     26        uses += ['openssl'] 
    2627        defines['USE_SSLEAY'] = 1 
    2728        defines['USE_OPENSSL'] = 1 
     
    112113env.Append(CPPPATH = include_path, CPPDEFINES = defines, LIBS = libs) 
    113114 
     115BJ.Prepare(env, uses) 
     116 
    114117if BJ.osxTarget: 
    115         veronacurl_lib=env.StaticLibrary('veronacurl', sources) 
     118        lib=env.StaticLibrary('veronacurl', sources) 
    116119else: 
    117         veronacurl_lib=env.SharedLibrary('veronacurl', sources) 
     120        lib=env.SharedLibrary('veronacurl', sources) 
    118121 
    119 BJ.DefModule('veronacurl', includes = ['include'], libs = ['veronacurl'], node = veronacurl_lib) 
     122BJ.DefModule('veronacurl', includes = ['#/libs/curl/include'], libpath = [ lib[0].dir ],  libs = ['veronacurl'], node = lib) 
  • libs/ffmpeg/SConscript

    r0 r9  
     1Import('BJ') 
     2 
    13import SCons.Util 
    24 
    3 env = GlobalGetEnvironment() 
     5env = BJ.NewEnv() 
    46 
    5 env.GlobalAddDoxyfile() 
    67 
    7 if GlobalOSWindows()
     8if BJ.win32Target
    89        env.Tool('mingw') 
    910        env['SHLIBPREFIX'] = '' 
  • libs/ffmpeg/SConscript-avcodec

    r0 r9  
    1 env = GlobalGetEnvironment(
     1Import('BJ'
    22 
    3 libs = [ 
    4         'avutil' 
    5 
     3env = BJ.NewEnv() 
    64 
    7 includes = [ 
    8         'libavcodec' 
    9 ] 
    105 
    11 env.GlobalAddIncludePath(includes) 
    12 env.GlobalUseLibraries(libs) 
    136 
    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', 
     7BJ.Autoconf(env, 'avcodec', ['libavcodec/libavcodec.a'], 
     8                File('configure').srcnode().abspath, 'cd        libavcodec && make', 
    219                ['configure'], ['config.mak']) 
    2210 
    2311 
     12BJ.DefModule('avcodec', includes = ["#/libs/ffmpeg/libavcodec"], libpath = [Dir("libavcodec").abspath], libs = ["avcodec"]) 
     13 
  • libs/ffmpeg/SConscript-avutil

    r0 r9  
    1 env = GlobalGetEnvironment(
     1Import('BJ'
    22 
    3 includes = [ 
    4         'libavutil' 
    5 
    6 env.GlobalAddIncludePath(includes) 
     3env = BJ.NewEnv() 
    74 
    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 
     7BJ.Autoconf(env, 'avutil', ['libavutil/libavutil.a'], 
     8                File('configure').srcnode().abspath , 'cd       libavutil && make', 
    159                ['configure'], ['config.mak']) 
    1610 
     11 
     12 
     13BJ.DefModule('avutil', includes = ["#/libs/ffmpeg/libavutil"], libpath = [Dir("libavutil").abspath], libs = ["avutil"]) 
     14 
     15 
  • libs/openssl/SConscript

    r0 r9  
    1 env = GlobalGetEnvironment() 
     1Import('BJ') 
     2 
    23 
    34libs = [] 
     
    67defines = {} 
    78 
    8 if GlobalOSWindows()
     9if BJ.win32target
    910        include_path += [ 
    10                 'inc32/openssl', 
    11                 'inc32', 
     11                '#/libs/openssl/inc32/openssl', 
     12                '#/libs/openssl/inc32', 
    1213        ] 
    1314 
    14         if GlobalCCMSVC()
     15        if BJ.msvc
    1516                libs += [ 
    1617                        'libeay32', 
    1718                        'ssleay32', 
    1819                ] 
    19                 lib_path += ['out32/msvc'] 
     20                lib_path += ['#/libs/openssl/out32/msvc'] 
    2021 
    21         elif GlobalCCMinGW()
     22        elif bBJ.mingw
    2223                libs += [ 
    2324                        'ssl', 
    2425                        'crypto', 
    2526                ] 
    26                 lib_path += ['out32/mingw'] 
     27                lib_path += ['#/libs/openssl/out32/mingw'] 
    2728 
    2829else: 
     
    3233        ] 
    3334 
    34 env.GlobalAddIncludePath(include_path) 
    35 env.GlobalAddLibPath(lib_path) 
    36 env.GlobalAddDefines(defines) 
    37 env.GlobalUseLibraries(libs) 
    3835 
    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 
     38BJ.DefModule('openssl', libpath = lib_path, libs = libs) 
  • libs/pixertool/SConscript

    r0 r9  
    1 env = GlobalGetEnvironment() 
     1Import('BJ') 
     2 
     3env = BJ.NewEnv() 
    24 
    35libs = [ 
    46        'owcutil', 
    5         'avcodec' 
     7        'owutil', 
     8        'avcodec', 
     9        'avutil' 
     10         
    611] 
     12 
    713lib_path = [] 
    814defines = {} 
     
    1622] 
    1723 
    18 if GlobalCCMSVC()
     24if BJ.msvc
    1925        libs += ['winmm', 'strmiids', 'comsupp'] 
    2026        sources += ['src/directx/directx-pixertool.cpp'] 
    2127 
    22 elif GlobalOSLinux()
     28elif BJ.linuxTarget
    2329        sources += ['src/v4l/v4l-pixertool.c'] 
    2430 
    25 elif GlobalOSMacOSX()
     31elif BJ.osxTarget
    2632        sources += ['src/quicktime/quicktime-pixertool.c'] 
    2733 
     
    2935        sources += ['src/null-pixertool.cpp'] 
    3036 
    31 env.GlobalAddIncludePath(include_path) 
    32 env.GlobalAddDefines(defines) 
    33 env.GlobalUseLibraries(libs) 
     37env.Append(CPPPATH = include_path, CPPDEFINES = defines) 
     38BJ.Prepare(env, libs) 
    3439 
    35 env.GlobalStaticLibrary('pixertool', sources, headers) 
     40if env['shared_phapi']: 
     41   pxo = env.SharedObject( source = sources ) 
     42else: 
     43   pxo = env.StaticObject( source = sources ) 
     44 
     45pxl = env.StaticLibrary('pixertool', source = pxo) 
     46 
     47BJ.DefModule('pixertool', includes = ["#/libs/pixertool/include"], libpath = [pxl[0].dir], libs = ["pixertool"], 
     48             uses = ["owutil", "owcutil", "avcodec", "avutil"], node = pxl) 
     49 
     50Alias('pixertool', pxl) 
    3651 
    3752#env.SConscript('tests/SConscript') 
  • libs/timer/SConscript

    r0 r9  
    1 env = GlobalGetEnvironment() 
     1Import("BJ") 
     2 
     3env = BJ.NewEnv() 
     4 
    25 
    36libs = [] 
     
    912defines = {} 
    1013 
    11 if GlobalOSWindows()
     14if BJ.win32Target
    1215        sources += ['src/win32_mm/impl_timer.c'] 
    1316        defines['TIMER_ENABLE_WINMM_IMPL'] = 1 
     
    1720        defines['TIMER_ENABLE_CLOCK_GETTIME_IMPL'] = 1 
    1821 
    19         if GlobalOSLinux()
     22        if BJ.linuxTarget
    2023                libs += ['rt', 'pthread'] 
    2124 
    22 env.GlobalAddDefines(defines) 
    23 env.GlobalAddIncludePath(include_path) 
    24 env.GlobalUseLibraries(libs) 
    2525 
    26 env.GlobalStaticLibrary('wtimer', sources, headers) 
     26env.Append(CCPDEFINES = defines, CPPPATH = include_path) 
     27 
     28if env['shared_phapi']: 
     29   objs = env.SharedObject( source = sources ) 
     30else: 
     31   objs = env.StaticObject( source = sources ) 
     32 
     33lib = env.StaticLibrary('wtimer', source = objs ) 
     34 
     35BJ.DefModule("wtimer", includes = ["#/libs/timer/include"], libpath = [lib[0].dir], libs = [ "wtimer" ], node = lib) 
     36Alias("wtimer",  lib) 
     37 
  • libs/util/SConscript

    r6 r9  
    55projects = [ 
    66        'cutil', 
    7 #     'util', 
     7      'util', 
    88#       'thread', 
    99#       'http', 
  • libs/util/cutil/SConscript

    r6 r9  
    2222 
    2323 
    24 utilobjs = env.SharedObject( source = sources, CPPPATH = include_path) 
     24if env['shared_phapi']: 
     25        utilobjs = env.SharedObject( source = sources, CPPPATH = include_path) 
     26else: 
     27        utilobjs = env.StaticObject( source = sources, CPPPATH = include_path) 
     28 
     29 
    2530cutil = env.StaticLibrary('owcutil', source = utilobjs) 
    26 Alias('cutil', cutil) 
     31BJ.DefModule("owcutil", includes = ["#/libs/util/cutil/include"], libpath = [cutil[0].dir], libs = ["owcutil"], node = cutil) 
     32Alias('owcutil', cutil) 
  • libs/util/util/SConscript

    r0 r9  
    1 env = GlobalGetEnvironment() 
     1Import("BJ") 
     2 
     3env = BJ.NewEnv() 
    24 
    35libs = [ 
     
    68        'owcutil', 
    79] 
     10 
    811lib_path = [] 
    912include_path = ['include'] 
     
    2831] 
    2932 
    30 if GlobalOSWindows()
     33if BJ.win32Target
    3134        libs += ['advapi32', 'shell32'] 
    3235 
    33 elif GlobalOSMacOSX()
     36elif BJ.osxTarget
    3437        link_flags += ['-framework CoreFoundation'] 
    3538 
    36 if GlobalCCMSVC()
     39if BJ.msvc
    3740        libs += ['shlwapi'] 
    3841 
    39 env.GlobalAddLinkFlags(link_flags) 
    40 env.GlobalAddIncludePath(include_path) 
    41 env.GlobalUseLibraries(libs) 
    42 env.GlobalAddDoxyfile() 
    4342 
    44 env.GlobalStaticLibrary('owutil', sources) 
     43env.Append(CPPPATH = include_path) 
     44BJ.Prepare(env, ["owcutil"]) 
     45 
     46if env['shared_phapi']: 
     47   objs = env.SharedObject( source = sources) 
     48else: 
     49   objs = env.StaticObject( source = sources) 
     50 
     51 
     52lib = env.StaticLibrary("owutil", source = objs) 
     53 
     54print "DEFINING owutil" 
     55BJ.DefModule("owutil", includes = ["#/libs/util/util/include"], libpath = [ lib[0].dir ], libs = ["owutil"], node = lib) 
     56Alias("owutil", lib) 
    4557 
    4658#env.SConscript('tests/SConscript') 
  • libs/webcam/SConscript

    r0 r9  
    1 env = GlobalGetEnvironment() 
     1Import("BJ") 
     2 
     3env = BJ.NewEnv() 
     4 
    25 
    36libs = [ 
     
    58        'pixertool', 
    69] 
     10 
    711#if GlobalOSLinux() or GlobalOSMacOSX(): 
    8 if GlobalOSMacOSX()
     12if BJ.osxTarget
    913        libs.append('owthread') 
    1014 
     
    2832] 
    2933 
    30 if GlobalCCMSVC()
     34if BJ.msvc
    3135        headers += [ 
    3236                'include/DirectXWebcamDriverFactory.h', 
     
    4044        libs += ["winmm", "strmiids", "comsupp"] 
    4145 
    42 if GlobalOSLinux()
     46if BJ.linuxTarget
    4347        headers += [ 
    4448                'include/V4LWebcamDriverFactory.h', 
     
    4953        ] 
    5054 
    51 if GlobalOSMacOSX()
     55if BJ.osxTarget
    5256        headers += [ 
    5357                'include/QuicktimeWebcamDriverFactory.h', 
     
    6266 
    6367 
    64 env.GlobalAddIncludePath(include_path) 
    65 env.GlobalUseLibraries(libs) 
     68env.Append(CPPPATH = include_path) 
     69BJ.Prepare(env, libs)  
    6670 
    67 env.GlobalStaticLibrary('webcam', sources, headers) 
     71if env['shared_phapi']: 
     72   wbo = env.SharedObject( source=sources) 
     73else: 
     74   wbo = env.StaticObject( source=sources) 
    6875 
    69 #env.SConscript('tests/SConscript') 
     76 
     77wblib = env.StaticLibrary('webcam', source = wbo) 
     78Alias('webcam', wblib) 
     79 
     80BJ.DefModule('webcam', includes = ["#/libs/webcam/include"], libpath = [wblib[0].dir], libs = ["webcam"]) 
     81 
     82 
     83 
  • phapi/SConscript

    r8 r9  
    114114 
    115115if env["video"]: 
    116     libs += [ 'wtimer', 'owutil' ] 
     116    libs += [ 'avcodec', 'avutil', 'wtimer', 'owutil' ] 
    117117 
    118118 
     
    200200        libs += ['pthread', 'rt'] 
    201201 
    202 if env['enable_video']: 
     202if env['video']: 
    203203        libs += [ 
    204204                'avcodec', 
     
    227227 
    228228 
    229        defines['USE_HTTP_TUNNEL'] = 1 
     229    defines['USE_HTTP_TUNNEL'] = 1 
    230230 
    231231if env['libsamplerate']: 
     
    295295        env.ParseConfig('pkg-config --cflags --libs gthread-2.0') 
    296296 
    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"]
     297env.Append(CPPPATH = include_path, CPPDEFINES = defines, LINKFLAGS = link_flags, LIBPATH = ["ilbc", "stun", "gsm"]) 
     298BJ.Prepare(env, libs
    299299 
    300300if shphapi: