File: SConscript

package info (click to toggle)
libffado 2.4.9-3
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 9,604 kB
  • sloc: cpp: 77,151; python: 8,997; ansic: 2,951; sh: 1,429; xml: 855; makefile: 29
file content (95 lines) | stat: -rw-r--r-- 3,662 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
#
# Copyright (C) 2007-2008 Arnold Krille
# Copyright (C) 2007-2008 Pieter Palmers
#
# This file is part of FFADO
# FFADO = Free FireWire (pro-)audio drivers for Linux
#
# FFADO is based upon FreeBoB.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 2 of the License, or
# (at your option) version 3 of the License.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program.  If not, see <http://www.gnu.org/licenses/>.
#

Import( 'env' )

env = env.Clone()

env.MergeFlags( "-I#/ -I#/src -L%ssrc -lffado" % env['build_base'] )

if not env.GetOption( "clean" ):
    env.MergeFlags( "-lpthread" )
    env.MergeFlags( env['LIBIEC61883_FLAGS'].decode() )
    env.MergeFlags( env['LIBRAW1394_FLAGS'].decode() )
    if not env['SERIALIZE_USE_EXPAT']:
        if 'LIBXML30_FLAGS' in env :
             env.MergeFlags( env['LIBXML30_FLAGS'].decode() )
        if not('LIBXML30_FLAGS' in env) :
             env.MergeFlags( env['LIBXML26_FLAGS'].decode() )
    else:
        env.PrependUnique( LIBS=["expat"] )

static_env = env.Clone()

#
# deactivate as they don't seem ported to the new api: test-extplugcmd,
# test-mixer, test-volume
#
apps = {
        "ffado-test" : "test-ffado.cpp",
        "test-fw410" : "test-fw410.cpp",
        #"test-extplugcmd" : "test-extplugcmd.cpp",
        #"test-mixer" : "test-mixer.cpp",
        "test-timestampedbuffer" : "test-timestampedbuffer.cpp",
        "test-ieee1394service" : "test-ieee1394service.cpp",
        "test-streamdump" : "test-streamdump.cpp",
        "test-bufferops" : "test-bufferops.cpp",
        "test-watchdog" : "test-watchdog.cpp",
        "test-messagequeue" : "test-messagequeue.cpp",
        "test-shm" : "test-shm.cpp",
        "test-ipcringbuffer" : "test-ipcringbuffer.cpp",
        "test-devicestringparser" : "test-devicestringparser.cpp",
        "dumpiso_mod" : "dumpiso_mod.cpp",
        "scan-devreg" : "scan-devreg.cpp",
        "test-cycle-time" : "test-cycle-time.c"
}

if env['ENABLE_BEBOB']:
    apps.update( { "test-focusrite" : "test-focusrite.cpp" } )
if env['ENABLE_GENERICAVC']:
    if 'ALSA_FLAGS' in env and env["ALSA_FLAGS"]:
        env.MergeFlags( env["ALSA_FLAGS"].decode() )
        apps.update( { "test-scs" : "test-scs.cpp" } )
    apps.update( { "test-volume" : "test-volume.cpp" } )
    apps.update( { "test-enhanced-mixer" : "test-enhanced-mixer.cpp" } )
    # MB: utility to unmute M-Audio Ozonic
    apps.update( { "unmute-ozonic" : "unmute-ozonic.cpp" } )
    apps.update( { "test-avccmd" : "test-avccmd.cpp" } )
if env['ENABLE_FIREWORKS']:
    apps.update( { "test-echomixer" : "test-echomixer.cpp" } )
if env['ENABLE_DICE']:
    apps.update( { "test-dice-eap" : "test-dice-eap.cpp" } )
    apps.update( { "set-default-router-config-dice-eap" : "set-default-router-config-dice-eap.cpp" } )

for app in apps.keys():
    env.Program( target=app, source = env.Split( apps[app] ) )
    env.Install( "$bindir", app )

env.SConscript( dirs=["streaming", "systemtests"], exports="env" )

# static versions
if static_env['BUILD_STATIC_TOOLS']:
    static_env.Append(LIBS=File('#/src/libffado.a'))
    for app in apps.keys():
        static_app = app + "-static"
        static_env.Program( target=static_app, source = static_env.Split( apps[app] ) )