summaryrefslogtreecommitdiff
path: root/src/wx/wscript
blob: 18eb46f82aed6b619f2f785cf4a7897a3344b233 (plain)
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
import os
import glob
from waflib import Logs
import i18n

sources = """
          about_dialog.cc
          audio_dialog.cc
          audio_mapping_view.cc
          audio_panel.cc
          audio_plot.cc
          config_dialog.cc
          content_menu.cc
          dci_metadata_dialog.cc
          dir_picker_ctrl.cc
          film_editor.cc
          film_editor_panel.cc
          film_viewer.cc
          filter_dialog.cc
          filter_view.cc
          gain_calculator_dialog.cc
          job_manager_view.cc
          job_wrapper.cc
          new_film_dialog.cc
          properties_dialog.cc
          repeat_dialog.cc
          server_dialog.cc
          subtitle_panel.cc
          timecode.cc
          timeline.cc
          timeline_dialog.cc
          timing_panel.cc
          video_panel.cc
          wx_util.cc
          wx_ui_signaller.cc
          """

def configure(conf):
    args = '--cppflags --cxxflags'
    if not conf.env.STATIC:
        args += ' --libs'

    conf.check_cfg(msg='Checking for wxWidgets', package='', path=conf.options.wx_config, args=args,
                   uselib_store='WXWIDGETS', mandatory=True)

    if conf.env.STATIC:
	# wx-config returns its static libraries as full paths, without -l prefixes, which confuses
        # check_cfg(), so just hard-code it all.
        conf.env.STLIB_WXWIDGETS = ['wx_gtk2u_xrc-2.9', 'wx_gtk2u_qa-2.9', 'wx_baseu_net-2.9', 'wx_gtk2u_html-2.9',
                                    'wx_gtk2u_adv-2.9', 'wx_gtk2u_core-2.9', 'wx_baseu_xml-2.9', 'wx_baseu-2.9']
        conf.env.LIB_WXWIDGETS = ['tiff', 'SM', 'dl', 'jpeg', 'png', 'X11']
 
    conf.in_msg = 1
    wx_version = conf.check_cfg(package='', path=conf.options.wx_config, args='--version').strip()
    conf.im_msg = 0
    if wx_version != '2.9.4':
        conf.fatal('wxwidgets version 2.9.4 is required; %s found' % wx_version)

def build(bld):
    if bld.env.STATIC:
        obj = bld(features = 'cxx cxxstlib')
    else:
        obj = bld(features = 'cxx cxxshlib')

    obj.name   = 'libdcpomatic-wx'
#    obj.includes = [ '..' ]
    obj.export_includes = ['..']
    obj.uselib = 'WXWIDGETS'
    if bld.env.TARGET_LINUX:
        obj.uselib += ' GTK'
    obj.use = 'libdcpomatic'
    obj.source = sources
    obj.target = 'dcpomatic-wx'

    i18n.po_to_mo(os.path.join('src', 'wx'), 'libdcpomatic-wx', bld)

def pot(bld):
    i18n.pot(os.path.join('src', 'wx'), sources, 'libdcpomatic-wx')

def pot_merge(bld):
    i18n.pot_merge(os.path.join('src', 'wx'), 'libdcpomatic-wx')