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

lpxm_sources = [
    'lpx.cc',
    'gui.cc',
]    

def options(opt):
    pass

def configure(conf):
    autowaf.check_pkg(conf, 'pangomm-1.4', uselib_store='PANGOMM', atleast_version='1.4', mandatory=True)
    autowaf.check_pkg(conf, 'cairomm-1.0', uselib_store='CAIROMM', atleast_version='1.8.4', mandatory=True)


def build(bld):
    obj = bld(features = 'cxx cxxshlib')
    obj.source         = list(lpxm_sources)
    obj.source        += [ 'launchpad_mini_interface.cc' ]
    obj.defines        = [ 'PACKAGE="ardour_launchpad_mini"' ]
    obj.defines       += [ 'ARDOURSURFACE_DLL_EXPORTS' ]
    obj.defines       += [ 'LAUNCHPAD_MINI' ]
    obj.includes       = ['.', ]
    obj.name           = 'libardour_launchpad_mini'
    obj.target         = 'ardour_launchpad_mini'
    obj.uselib         = 'CAIROMM PANGOMM USB SIGCPP XML OSX'
    obj.use            = 'libardour libardour_cp libardour_midisurface libgtkmm2ext libpbd libevoral libcanvas libtemporal'
    obj.install_path   = os.path.join(bld.env['LIBDIR'], 'surfaces')
    if bld.is_defined('YTK'):
        obj.use    += ' libytkmm'
        obj.uselib += ' GLIBMM GIOMM'
    else:
        obj.uselib += ' GTKMM'

    obj = bld(features = 'cxx cxxshlib')
    obj.source         = list(lpxm_sources)
    obj.source        += [ 'launchpad_x_interface.cc' ]
    obj.defines        = [ 'PACKAGE="ardour_launchpad_x"' ]
    obj.defines       += [ 'ARDOURSURFACE_DLL_EXPORTS' ]
    obj.includes       = ['.', ]
    obj.name           = 'libardour_launchpad_x'
    obj.target         = 'ardour_launchpad_x'
    obj.uselib         = 'CAIROMM PANGOMM USB SIGCPP XML OSX'
    obj.use            = 'libardour libardour_cp libardour_midisurface libgtkmm2ext libpbd libevoral libcanvas libtemporal'
    obj.install_path   = os.path.join(bld.env['LIBDIR'], 'surfaces')
    if bld.is_defined('YTK'):
        obj.use    += ' libytkmm'
        obj.uselib += ' GLIBMM GIOMM'
    else:
        obj.uselib += ' GTKMM'
