# Copyright AllSeen Alliance. All rights reserved.
#
#    Permission to use, copy, modify, and/or distribute this software for any
#    purpose with or without fee is hereby granted, provided that the above
#    copyright notice and this permission notice appear in all copies.
#
#    THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
#    WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
#    MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
#    ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
#    WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
#    ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
#    OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.

Import('server_sample_env')

local_env = server_sample_env.Clone()

vars = Variables()
vars.Add('JSON_LIB', 'The JSON library to link against.', 'json')
vars.Update(local_env)
Help(vars.GenerateHelpText(local_env))

if local_env['OS'] == 'openwrt':
   local_env.Append(CPPDEFINES = '_OPEN_WRT_')

local_env.Append(CPPPATH = ['.'])

local_env.Prepend(LIBS = [ 'alljoyn_about',
                           'alljoyn_services_common' ])

if '_CONFIG_' in local_env["CPPDEFINES"] :  
    local_env.Prepend(LIBS = [ 'alljoyn_config' ])

if '_NOTIFICATION_' in local_env["CPPDEFINES"] :  
    local_env.Prepend(LIBS = [ 'alljoyn_notification' ])

if '_CONTROLPANEL_' in local_env["CPPDEFINES"] :  
    local_env.Prepend(LIBS = [ 'alljoyn_controlpanel' ])

if '_ONBOARDING_' in local_env["CPPDEFINES"] :  
    local_env.Prepend(LIBS = [ 'alljoyn_onboarding',
                               local_env['JSON_LIB'] ])
                           
if local_env['BR'] == 'on' and local_env.has_key('ajrlib'):
    # Build apps with bundled daemon support
    local_env.Prepend(LIBS = [local_env['ajrlib']])

local_env.Append(CPPPATH = local_env.Dir('$APP_COMMON_DIR/cpp/samples_common').srcnode())
local_env.VariantDir('AppCommon', '$APP_COMMON_DIR/cpp/samples_common/', duplicate = 0)
cobjs = local_env.SConscript('AppCommon/SConscript', {'env': local_env})

# Sample programs
local_env2 = local_env.Clone()

sample_dirs = [
    'ServerSample',
    'ACServerSample'
    ]

exports = { 'env': local_env2, 'cobjs': cobjs }
progs = [ local_env2.SConscript('%s/SConscript' % sampleapp, exports = exports) for sampleapp in sample_dirs ]
Return('progs')

