#!/usr/bin/env python
from waflib.extras import autowaf as autowaf
import os

# Mandatory variables
top = '.'
out = 'build'

def options(opt):
    autowaf.set_options(opt)

def configure(conf):
    pass

def build(bld):
    obj = bld(features = 'cxx cxxshlib')
    obj.source = '''
            interface.cc
            ardour_websockets.cc
            typed_value.cc
            state.cc
            message.cc
            client.cc
            component.cc
            mixer.cc
            transport.cc
            server.cc
            feedback.cc
            dispatcher.cc
            manifest.cc
            resources.cc
            json.cc
    '''
    obj.defines      = [ 'PACKAGE="ardour_websockets"' ]
    obj.defines     += [ 'ARDOURSURFACE_DLL_EXPORTS' ]
    obj.includes     = ['.', './websockets']
    obj.name         = 'libardour_websockets'
    obj.target       = 'ardour_websockets'
    obj.uselib       = 'GLIBMM XML WEBSOCKETS OPENSSL'
    obj.use          = 'libardour libardour_cp libgtkmm2ext libpbd'
    obj.install_path = os.path.join(bld.env['LIBDIR'], 'surfaces')

    if bld.env['build_target'] == 'mingw':
        obj.defines+= [ '_WIN32_WINNT=0x0601', 'WINVER=0x0601' ]

def shutdown():
    autowaf.shutdown()
