#!/usr/bin/env python from waflib.extras import autowaf as autowaf # Version of this package (even if built as a child) MAJOR = '2' MINOR = '24' MICRO = '5' LIBYTKMM_VERSION = "%s.%s.%s" % (MAJOR, MINOR, MICRO) I18N_PACKAGE = 'libytkmm' libytkmm_sources = [ 'aboutdialog.cc', 'accelgroup.cc', 'accelkey.cc', 'accellabel.cc', 'accelmap.cc', 'action.cc', 'actiongroup.cc', 'activatable.cc', 'adjustment.cc', 'alignment.cc', 'arrow.cc', 'aspectframe.cc', 'assistant.cc', 'bin.cc', 'box.cc', 'builder.cc', 'button.cc', 'buttonbox.cc', 'celleditable.cc', 'celllayout.cc', 'cellrenderer.cc', 'cellrenderer_generation.cc', 'cellrendereraccel.cc', 'cellrenderercombo.cc', 'cellrendererpixbuf.cc', 'cellrendererprogress.cc', 'cellrendererspin.cc', 'cellrendererspinner.cc', 'cellrenderertext.cc', 'cellrenderertoggle.cc', 'cellview.cc', 'checkbutton.cc', 'checkmenuitem.cc', 'clipboard.cc', 'colorbutton.cc', 'colorselection.cc', 'combobox.cc', 'comboboxentry.cc', 'comboboxentrytext.cc', 'comboboxtext.cc', 'container.cc', 'dialog.cc', 'drawingarea.cc', 'editable.cc', 'entry.cc', 'entrybuffer.cc', 'entrycompletion.cc', 'enums.cc', 'eventbox.cc', 'expander.cc', 'filechooser.cc', 'filechooserbutton.cc', 'filechooserdialog.cc', 'filechooserwidget.cc', 'filefilter.cc', 'fixed.cc', 'fontbutton.cc', 'fontselection.cc', 'frame.cc', 'handlebox.cc', 'iconfactory.cc', 'iconinfo.cc', 'iconset.cc', 'iconsource.cc', 'icontheme.cc', 'iconview.cc', 'image.cc', 'imagemenuitem.cc', 'infobar.cc', 'invisible.cc', 'item.cc', 'label.cc', 'layout.cc', 'linkbutton.cc', 'liststore.cc', 'listviewtext.cc', 'main.cc', 'menu.cc', 'menu_elems.cc', 'menubar.cc', 'menuitem.cc', 'menushell.cc', 'menutoolbutton.cc', 'messagedialog.cc', 'misc.cc', 'notebook.cc', 'object.cc', 'offscreenwindow.cc', 'optionmenu.cc', 'orientable.cc', 'paned.cc', 'plug.cc', 'progressbar.cc', 'radioaction.cc', 'radiobutton.cc', 'radiobuttongroup.cc', 'radiomenuitem.cc', 'radiotoolbutton.cc', 'range.cc', 'rc.cc', 'recentaction.cc', 'recentchooser.cc', 'recentchooserdialog.cc', 'recentchoosermenu.cc', 'recentchooserwidget.cc', 'recentfilter.cc', 'recentinfo.cc', 'recentmanager.cc', 'ruler.cc', 'scale.cc', 'scalebutton.cc', 'scrollbar.cc', 'scrolledwindow.cc', 'selectiondata.cc', 'selectiondata_private.cc', 'separator.cc', 'separatormenuitem.cc', 'separatortoolitem.cc', 'settings.cc', 'sizegroup.cc', 'socket.cc', 'spinbutton.cc', 'spinner.cc', 'statusbar.cc', 'stock.cc', 'stockid.cc', 'stockitem.cc', 'style.cc', 'table.cc', 'targetentry.cc', 'targetlist.cc', 'tearoffmenuitem.cc', 'textattributes.cc', 'textbuffer.cc', 'textchildanchor.cc', 'textiter.cc', 'textmark.cc', 'texttag.cc', 'texttagtable.cc', 'textview.cc', 'toggleaction.cc', 'togglebutton.cc', 'toggletoolbutton.cc', 'toolbar.cc', 'toolbutton.cc', 'toolitem.cc', 'toolitemgroup.cc', 'toolpalette.cc', 'toolshell.cc', 'tooltip.cc', 'tooltips.cc', 'treedragdest.cc', 'treedragsource.cc', 'treeiter.cc', 'treemodel.cc', 'treemodelcolumn.cc', 'treemodelfilter.cc', 'treemodelsort.cc', 'treepath.cc', 'treerowreference.cc', 'treeselection.cc', 'treesortable.cc', 'treestore.cc', 'treeview.cc', 'treeview_private.cc', 'treeviewcolumn.cc', 'uimanager.cc', 'viewport.cc', 'widget.cc', 'window.cc', 'wrap_init.cc', ] def options(opt): pass def configure(conf): if conf.is_defined('YTK'): autowaf.check_pkg(conf, 'giomm-2.4', uselib_store='GIOMM', atleast_version='2.2', mandatory=True) autowaf.check_pkg(conf, 'cairomm-1.0', uselib_store='CAIROMM', atleast_version='1.8.4', mandatory=True) autowaf.check_pkg(conf, 'pangomm-1.4', uselib_store='PANGOMM', atleast_version='1.4', mandatory=True) autowaf.check_pkg(conf, 'glibmm-2.4', uselib_store='GLIBMM', atleast_version='2.32.0', mandatory=True) autowaf.check_pkg(conf, 'sigc++-2.0', uselib_store='SIGCPP', atleast_version='2.0', mandatory=True) def build(bld): if not bld.is_defined('YTK'): return obj = bld.shlib(features = 'cxx cxxshlib', source=libytkmm_sources) obj.cxxflags = [ bld.env['compiler_flags_dict']['pic'], '-w' ] obj.cflags = [ bld.env['compiler_flags_dict']['pic'], '-w' ] obj.export_includes = ['ytkmm'] obj.includes = ['.', 'ytkmm'] obj.name = 'libytkmm' obj.target = 'ytkmm' obj.use = ['libztk', 'libytk', 'libztkmm', 'libydkmm' ] obj.uselib = 'GLIBMM GIOMM SIGCPP CAIROMM PANGOMM' obj.defines = [ '_LARGEFILE64_SOURCE', '_REENTRANT', 'G_LOG_DOMAIN="gtkmm"', 'GTKMM_BUILD=1', '_FILE_OFFSET_BITS=64' ] obj.vnum = LIBYTKMM_VERSION obj.install_path = bld.env['LIBDIR']