meson.build 2.28 KB
Newer Older
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 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96
gst_base_sources = [
  'gstadapter.c',
  'gstbaseparse.c',
  'gstbasesink.c',
  'gstbasesrc.c',
  'gstbasetransform.c',
  'gstbitreader.c',
  'gstbytereader.c',
  'gstbytewriter.c',
  'gstcollectpads.c',
  'gstdataqueue.c',
  'gstflowcombiner.c',
  'gstpushsrc.c',
  'gstqueuearray.c',
  'gsttypefindhelper.c',
]

gst_base_headers = [
  'base.h',
  'gstadapter.h',
  'gstbaseparse.h',
  'gstbasesink.h',
  'gstbasesrc.h',
  'gstbasetransform.h',
  'gstbitreader.h',
  'gstbytereader.h',
  'gstbytewriter.h',
  'gstcollectpads.h',
  'gstdataqueue.h',
  'gstflowcombiner.h',
  'gstpushsrc.h',
  'gstqueuearray.h',
  'gsttypefindhelper.h',
]

if libtype != 'shared'
  gst_base_static = static_library('gstbase-@0@'.format(apiversion),
    gst_base_sources,
    c_args : gst_c_args,
    install : true,
    include_directories : [configinc, libsinc],
    dependencies : [gobject_dep, glib_dep, gst_dep],
  )
  gst_base = gst_base_static
endif

if libtype != 'static'
  gst_base_shared = shared_library('gstbase-@0@'.format(apiversion),
    gst_base_sources,
    c_args : gst_c_args,
    version : libversion,
    soversion : soversion,
    install : true,
    include_directories : [configinc, libsinc],
    dependencies : [gobject_dep, glib_dep, gst_dep],
    vs_module_defs: vs_module_defs_dir + 'libgstbase.def',
  )
  gst_base = gst_base_shared
  if build_gir
    gnome.generate_gir(gst_base_shared,
      sources : gst_base_sources + gst_base_headers,
      namespace : 'GstBase',
      nsversion : apiversion,
      identifier_prefix : 'Gst',
      symbol_prefix : 'gst',
      export_packages : 'gstreamer-base-1.0',
      link_with : libgst_shared,
      include_directories : [configinc, libsinc, privinc],
      includes : ['GLib-2.0', 'GObject-2.0', 'GModule-2.0', 'Gst-1.0'],
      install : true,
      extra_args : gir_init_section,
    )
  endif
endif

gst_base_dep = declare_dependency(link_with : gst_base,
  include_directories : [libsinc],
  dependencies : [gst_dep])

install_headers('base.h',
  'gstadapter.h',
  'gstbaseparse.h',
  'gstbasesink.h',
  'gstbasesrc.h',
  'gstbasetransform.h',
  'gstbitreader.h',
  'gstbytereader.h',
  'gstbytewriter.h',
  'gstcollectpads.h',
  'gstdataqueue.h',
  'gstflowcombiner.h',
  'gstpushsrc.h',
  'gstqueuearray.h',
  'gsttypefindhelper.h',
  subdir : 'gstreamer-1.0/gst/base',
)