[vala/wip/meson: 6/7] WIP
- From: Rico Tzschichholz <ricotz src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [vala/wip/meson: 6/7] WIP
- Date: Thu, 10 Aug 2017 09:16:57 +0000 (UTC)
commit c104fa19dba1d6b4ae87fcb09c318d0b0fcc7b20
Author: Rico Tzschichholz <ricotz ubuntu com>
Date: Wed Aug 9 15:18:46 2017 +0200
WIP
ccode/meson.build | 7 +-
codegen/meson.build | 4 +-
compiler/meson.build | 7 +-
config.h.meson | 3 +
doc/meson.build | 8 ++-
gee/meson.build | 16 ++-
gobject-introspection/meson.build | 6 +-
libvaladoc/meson.build | 170 +++++++++++++++++++++++++++++++
libvaladoc/valadoc.deps.in | 2 +-
meson.build | 69 ++++++++++---
vala/meson.build | 17 ++--
valadoc/doclets/devhelp/meson.build | 12 ++
valadoc/doclets/gtkdoc/meson.build | 17 +++
valadoc/doclets/html/meson.build | 12 ++
valadoc/doclets/meson.build | 4 +
valadoc/icons/meson.build | 35 +++++++
valadoc/meson.build | 23 ++++
vapigen/meson.build | 22 ++--
vapigen/vala-gen-introspect/meson.build | 3 +
19 files changed, 387 insertions(+), 50 deletions(-)
---
diff --git a/ccode/meson.build b/ccode/meson.build
index 3b4e547..cf753f7 100644
--- a/ccode/meson.build
+++ b/ccode/meson.build
@@ -57,12 +57,11 @@ valaccode_sources = [
valaccode_lib = static_library(
'valaccode',
valaccode_sources,
- dependencies: [glib, gobject, valagee, valacore],
+ dependencies: [gobject_dep, valagee_dep],
install: false,
- include_directories: include_directories('.', '..'),
- vala_args: ['--use-header', '--pkg=config', '--vapidir=' + join_paths(meson.source_root(), 'vapi')],
+ vala_args: ['--use-header'],
vala_header: 'valaccode.h',
vala_vapi: 'valaccode.vapi',
)
-valaccode = declare_dependency(link_with: [valaccode_lib], include_directories: include_directories('.'))
+valaccode_dep = declare_dependency(link_with: [valaccode_lib], dependencies: [valagee_dep],
include_directories: include_directories('.'))
diff --git a/codegen/meson.build b/codegen/meson.build
index 48385db..433f3ce 100644
--- a/codegen/meson.build
+++ b/codegen/meson.build
@@ -32,11 +32,11 @@ valacodegen_sources = [
valacodegen_lib = static_library(
'valacodegen',
valacodegen_sources,
- dependencies: [glib, gobject, valagee, valaccode, valacore],
+ dependencies: [gobject_dep, valacore_dep, valaccode_dep],
install: false,
vala_args: ['--use-header'],
vala_header: 'valacodegen.h',
vala_vapi: 'valacodegen.vapi',
)
-valacodegen = declare_dependency(link_with: [valacodegen_lib], include_directories: include_directories('.'))
+valacodegen_dep = declare_dependency(link_with: [valacodegen_lib], dependencies : [valacore_dep,
valaccode_dep], include_directories: include_directories('.'))
diff --git a/compiler/meson.build b/compiler/meson.build
index 84f51b0..ac7ab28 100644
--- a/compiler/meson.build
+++ b/compiler/meson.build
@@ -7,8 +7,9 @@ valac_name = 'valac@0@'.format(vala_version_suffix)
executable(
valac_name,
valac_sources,
- dependencies: [glib, gobject, valacore, valagee, valaccode, valacodegen],
+ dependencies: [glib_dep, valacodegen_dep],
install: true,
- include_directories: include_directories('.', '..'),
- vala_args: ['--pkg=config', '--vapidir=' + join_paths(meson.source_root(), 'vapi')]
)
+
+# https://github.com/mesonbuild/meson/issues/1602
+meson.add_install_script('sh', '-c', 'cd $DESTDIR@0@; ln -fs @1@
valac'.format(join_paths(get_option('prefix'), get_option('bindir')), valac_name))
diff --git a/config.h.meson b/config.h.meson
index f98435e..2c8f864 100644
--- a/config.h.meson
+++ b/config.h.meson
@@ -26,3 +26,6 @@
/* Version number of package */
#mesondefine VERSION
+
+/* API-Version of package */
+#mesondefine API_VERSION
diff --git a/doc/meson.build b/doc/meson.build
index 14e9e6a..9d68b25 100644
--- a/doc/meson.build
+++ b/doc/meson.build
@@ -1 +1,7 @@
-install_man(['vala-gen-introspect.1', 'valac.1', 'vapigen.1'])
+install_man(['vala-gen-introspect.1', 'valac.1', 'valadoc.1', 'vapigen.1'])
+
+# https://github.com/mesonbuild/meson/issues/1602
+meson.add_install_script('sh', '-c', 'cd $DESTDIR@0@/man1; ln -fs vala-gen-introspect.1.gz
@1@'.format(join_paths(get_option('prefix'), get_option('mandir')), 'vala-gen-introspect@0 1
gz'.format(vala_version_suffix)))
+meson.add_install_script('sh', '-c', 'cd $DESTDIR@0@/man1; ln -fs valac.1.gz
@1@'.format(join_paths(get_option('prefix'), get_option('mandir')), 'valac@0 1
gz'.format(vala_version_suffix)))
+meson.add_install_script('sh', '-c', 'cd $DESTDIR@0@/man1; ln -fs valadoc.1.gz
@1@'.format(join_paths(get_option('prefix'), get_option('mandir')), 'valadoc@0 1
gz'.format(vala_version_suffix)))
+meson.add_install_script('sh', '-c', 'cd $DESTDIR@0@/man1; ln -fs vapigen.1.gz
@1@'.format(join_paths(get_option('prefix'), get_option('mandir')), 'vapigen@0 1
gz'.format(vala_version_suffix)))
diff --git a/gee/meson.build b/gee/meson.build
index 5379a5b..7fb7ba8 100644
--- a/gee/meson.build
+++ b/gee/meson.build
@@ -8,19 +8,23 @@ valagee_sources = [
'list.vala',
'mapiterator.vala',
'map.vala',
- 'set.vala'
+ 'set.vala',
+ 'timsort.vala'
]
valagee_lib = static_library(
'valagee',
valagee_sources,
- dependencies: [glib, gobject],
- install: false,
+ dependencies: [gobject_dep],
+ install: [ false, true, false ],
+ install_dir: [
+ false,
+ join_paths (get_option('includedir'), 'vala@0@'.format (vala_version_suffix)),
+ false
+ ],
vala_args: ['--use-header'],
vala_header: 'valagee.h',
vala_vapi: 'valagee.vapi',
)
-valagee = declare_dependency(link_with: [valagee_lib], include_directories: include_directories('.'))
-
-install_headers('valagee.h', subdir: 'vala@0@'.format(vala_version_suffix))
+valagee_dep = declare_dependency(link_with: [valagee_lib], include_directories: include_directories('.',
'..'))
diff --git a/gobject-introspection/meson.build b/gobject-introspection/meson.build
index b25becb..8c3ffc0 100644
--- a/gobject-introspection/meson.build
+++ b/gobject-introspection/meson.build
@@ -7,9 +7,9 @@ gidl_sources = [
gidl_lib = static_library('gidl',
gidl_sources,
- dependencies: [glib, gobject, gmodule])
+ dependencies: [gobject_dep, gmodule_dep])
-gidl = declare_dependency(link_with: gidl_lib, include_directories: include_directories('.'))
+gidl_dep = declare_dependency(link_with: [gidl_lib], include_directories: include_directories('.'))
flex = find_program('flex')
@@ -39,4 +39,4 @@ executable(gen_introspect_name,
gen_introspect_sources,
install: true,
install_dir: join_paths(get_option('libdir'), 'vala@0@'.format(vala_version_suffix)),
- dependencies: [glib, gobject, gmodule, gidl])
+ dependencies: [gobject_dep, gmodule_dep, gidl_dep])
diff --git a/libvaladoc/meson.build b/libvaladoc/meson.build
new file mode 100644
index 0000000..5364727
--- /dev/null
+++ b/libvaladoc/meson.build
@@ -0,0 +1,170 @@
+libvaladoc_sources = [
+ 'doclet.vala',
+ 'errorreporter.vala',
+ 'filehelper.vala',
+ 'moduleloader.vala',
+ 'settings.vala',
+ 'markupwriter.vala',
+ 'gtkdocmarkupwriter.vala',
+ 'devhelp-markupwriter.vala',
+ 'ctyperesolver.vala',
+ 'markupsourcelocation.vala',
+ 'markuptokentype.vala',
+ 'markupreader.vala',
+ 'gtkdocrenderer.vala',
+ 'documentation/commentscanner.vala',
+ 'documentation/documentation.vala',
+ 'documentation/documentationparser.vala',
+ 'documentation/wiki.vala',
+ 'documentation/wikiscanner.vala',
+ 'documentation/gtkdoccommentparser.vala',
+ 'documentation/gtkdoccommentscanner.vala',
+ 'documentation/gtkdocmarkdownparser.vala',
+ 'documentation/gtkdocmarkdownscanner.vala',
+ 'documentation/importerhelper.vala',
+ 'documentation/girmetadata.vala',
+ 'importer/documentationimporter.vala',
+ 'importer/valadocdocumentationimporter.vala',
+ 'importer/valadocdocumentationimporterscanner.vala',
+ 'importer/girdocumentationimporter.vala',
+ 'importer/internalidregistrar.vala',
+ 'api/symbolaccessibility.vala',
+ 'api/sourcecomment.vala',
+ 'api/girsourcecomment.vala',
+ 'api/attributeargument.vala',
+ 'api/attribute.vala',
+ 'api/array.vala',
+ 'api/callable.vala',
+ 'api/childsymbolregistrar.vala',
+ 'api/class.vala',
+ 'api/constant.vala',
+ 'api/delegate.vala',
+ 'api/enum.vala',
+ 'api/enumvalue.vala',
+ 'api/errorcode.vala',
+ 'api/errordomain.vala',
+ 'api/field.vala',
+ 'api/formalparameter.vala',
+ 'api/formalparametertype.vala',
+ 'api/interface.vala',
+ 'api/item.vala',
+ 'api/member.vala',
+ 'api/method.vala',
+ 'api/methodbindingtype.vala',
+ 'api/namespace.vala',
+ 'api/node.vala',
+ 'api/nodetype.vala',
+ 'api/ownership.vala',
+ 'api/package.vala',
+ 'api/pointer.vala',
+ 'api/property.vala',
+ 'api/propertyaccessor.vala',
+ 'api/propertyaccessortype.vala',
+ 'api/propertybindingtype.vala',
+ 'api/signal.vala',
+ 'api/signaturebuilder.vala',
+ 'api/sourcefile.vala',
+ 'api/struct.vala',
+ 'api/symbol.vala',
+ 'api/tree.vala',
+ 'api/typeparameter.vala',
+ 'api/typereference.vala',
+ 'api/typesymbol.vala',
+ 'api/browsable.vala',
+ 'api/visitor.vala',
+ 'api/driver.vala',
+ 'content/block.vala',
+ 'content/blockcontent.vala',
+ 'content/comment.vala',
+ 'content/contentfactory.vala',
+ 'content/contentelement.vala',
+ 'content/contentrenderer.vala',
+ 'content/contentvisitor.vala',
+ 'content/embedded.vala',
+ 'content/headline.vala',
+ 'content/inline.vala',
+ 'content/inlinetaglet.vala',
+ 'content/inlinecontent.vala',
+ 'content/wikilink.vala',
+ 'content/link.vala',
+ 'content/list.vala',
+ 'content/listitem.vala',
+ 'content/page.vala',
+ 'content/paragraph.vala',
+ 'content/warning.vala',
+ 'content/note.vala',
+ 'content/resourcelocator.vala',
+ 'content/run.vala',
+ 'content/sourcecode.vala',
+ 'content/styleattributes.vala',
+ 'content/symbollink.vala',
+ 'content/table.vala',
+ 'content/tablecell.vala',
+ 'content/tablerow.vala',
+ 'content/taglet.vala',
+ 'content/text.vala',
+ 'charts/chart.vala',
+ 'charts/chartfactory.vala',
+ 'charts/hierarchychart.vala',
+ 'charts/simplechartfactory.vala',
+ 'parser/manyrule.vala',
+ 'parser/oneofrule.vala',
+ 'parser/optionalrule.vala',
+ 'parser/parser.vala',
+ 'parser/parsercallback.vala',
+ 'parser/rule.vala',
+ 'parser/scanner.vala',
+ 'parser/sequencerule.vala',
+ 'parser/sourcelocation.vala',
+ 'parser/stubrule.vala',
+ 'parser/token.vala',
+ 'parser/tokentype.vala',
+ 'taglets/tagletdeprecated.vala',
+ 'taglets/tagletinheritdoc.vala',
+ 'taglets/tagletinit.vala',
+ 'taglets/tagletlink.vala',
+ 'taglets/tagletparam.vala',
+ 'taglets/tagletreturn.vala',
+ 'taglets/tagletsee.vala',
+ 'taglets/tagletsince.vala',
+ 'taglets/tagletthrows.vala',
+ 'highlighter/scanner.vala',
+ 'highlighter/codescanner.vala',
+ 'highlighter/xmlscanner.vala',
+ 'highlighter/codetoken.vala',
+ 'highlighter/highlighter.vala',
+ 'html/basicdoclet.vala',
+ 'html/htmlchartfactory.vala',
+ 'html/linkhelper.vala',
+ 'html/cssclassresolver.vala',
+ 'html/htmlmarkupwriter.vala',
+ 'html/htmlrenderer.vala'
+]
+
+libvaladoc_lib = shared_library(
+ 'valadoc@0@'.format(vala_version_suffix),
+ libvaladoc_sources,
+ dependencies: [gmodule_dep, valagee_dep, libgvc_dep],
+ soversion: '0.0.0',
+ install: true,
+ install_dir: [
+ true,
+ join_paths (get_option('includedir'), 'valadoc@0@'.format (vala_version_suffix)),
+ true
+ ],
+ c_args: ['-DPACKAGE_ICONDIR="@0@"'.format(join_paths(get_option('datadir'), 'valadoc', 'icons'))],
+ vala_args: ['--use-header'],
+ vala_header: 'valadoc.h',
+ vala_vapi: 'valadoc@0@.vapi'.format(vala_version_suffix),
+)
+
+libvaladoc_dep = declare_dependency(link_with: [libvaladoc_lib], dependencies: [gmodule_dep, valagee_dep,
libgvc_dep], include_directories: include_directories('.'))
+
+configure_file(input: 'valadoc.deps.in', output: 'valadoc@0@.deps'.format(vala_version_suffix),
configuration: conf)
+
+configure_file(
+ input: 'valadoc.pc.in',
+ output: 'valadoc@0@.pc'.format(vala_version_suffix),
+ configuration: pkgconf,
+ install_dir: pkg_install_dir
+)
diff --git a/libvaladoc/valadoc.deps.in b/libvaladoc/valadoc.deps.in
index 024e034..a478ae8 100644
--- a/libvaladoc/valadoc.deps.in
+++ b/libvaladoc/valadoc.deps.in
@@ -1,3 +1,3 @@
gmodule-2.0
libgvc
-libvala@PACKAGE_SUFFIX@
+libvala@PACKAGE_SUFFIX_UNQUOTED@
diff --git a/meson.build b/meson.build
index e3fb542..6c6d845 100644
--- a/meson.build
+++ b/meson.build
@@ -1,7 +1,19 @@
-project('Vala', 'c', 'vala', version: '0.37.0', meson_version: '0.40.1')
+project('Vala',
+ 'c', 'vala',
+ version: '0.37.2',
+ meson_version: '>= 0.41.2',
+ license: 'LGPL2.1'
+)
+
+vala_version_required = '0.16.1'
+vala = meson.get_compiler('vala')
+if not vala.version().version_compare('>= @0@'.format(vala_version_required))
+ error('Valac >= @0@ required!'.format(vala_version_required))
+endif
vala_version = meson.project_version()
-vala_version_suffix = '-0.38'
+vala_api_version = '0.38'
+vala_version_suffix = '-@0@'.format(vala_api_version)
conf = configuration_data()
@@ -11,10 +23,12 @@ conf.set_quoted('PACKAGE_DATADIR', join_paths(get_option('prefix'), get_option('
conf.set('PACKAGE_NAME', '"vala"')
conf.set('PACKAGE_STRING', '"vala @0@"'.format(vala_version))
conf.set('PACKAGE_SUFFIX', '"@0@"'.format(vala_version_suffix))
+conf.set('PACKAGE_SUFFIX_UNQUOTED', '@0@'.format(vala_version_suffix))
conf.set('PACKAGE_TARNAME', '"vala"')
conf.set('PACKAGE_URL', '"https://wiki.gnome.org/Projects/Vala"')
conf.set_quoted('PACKAGE_VERSION', vala_version)
conf.set_quoted('VERSION', vala_version)
+conf.set_quoted('API_VERSION', vala_api_version)
conf.set_quoted('BUILD_VERSION', vala_version)
configure_file(input: 'config.h.meson', output: 'config.h', configuration: conf)
configure_file(input: 'version.h.meson', output: 'version.h', configuration: conf)
@@ -39,21 +53,49 @@ configure_file(
install_dir: pkg_install_dir
)
+add_project_arguments([
+ '--disable-version-header',
+ '--hide-internal',
+ '--vapidir', join_paths(meson.source_root(), 'vapi'),
+ '--pkg', 'config',
+ ],
+ language: 'vala'
+)
-add_global_arguments(['-Wno-deprecated-declarations',
- '-Wno-discarded-qualifiers',
- '-Wno-incompatible-pointer-types',
- '-Wno-unused'], language: 'c')
-add_global_arguments(['--disable-version-header',
- '--hide-internal'], language: 'vala')
-
+add_project_arguments([
+ '-Wno-discarded-qualifiers',
+ '-Wno-incompatible-pointer-types',
+ '-Wno-unused',
+ '-DGLIB_VERSION_MIN_REQUIRED=GLIB_VERSION_2_40',
+ '-DGLIB_VERSION_MAX_ALLOWED=GLIB_VERSION_2_40',
+ ],
+ language: 'c',
+)
glib_version_required = '2.40.0'
+libgvc_version_required = '2.16'
-glib = dependency('glib-2.0', version: '>= @0@'.format(glib_version_required))
-gobject = dependency('gobject-2.0', version: '>= @0@'.format(glib_version_required))
-gmodule = dependency('gmodule-2.0', version: '>= @0@'.format(glib_version_required))
+glib_dep = dependency('glib-2.0', version: '>= @0@'.format(glib_version_required))
+gobject_dep = dependency('gobject-2.0', version: '>= @0@'.format(glib_version_required))
+gmodule_dep = dependency('gmodule-2.0', version: '>= @0@'.format(glib_version_required))
+libgvc_dep = dependency('libgvc', version: '>= @0@'.format(libgvc_version_required))
+# Check for CGraph support of libgvc
+cc = meson.get_compiler('c')
+if cc.run('#include <gvc.h>
+ int main(void) {
+ #ifdef WITH_CGRAPH
+ return 0;
+ #else
+ return -1;
+ #endif
+ }',
+ dependencies: libgvc_dep).returncode() == 0
+ add_project_arguments(
+ '-D', 'WITH_CGRAPH',
+ language: 'vala'
+ )
+endif
subdir('gobject-introspection')
subdir('gee')
@@ -62,7 +104,8 @@ subdir('ccode')
subdir('codegen')
subdir('compiler')
subdir('vapigen')
+subdir('libvaladoc')
+subdir('valadoc')
subdir('doc')
install_data('vala.m4', install_dir: 'share/aclocal')
-#add_install_script('unversioned-install.sh')
diff --git a/vala/meson.build b/vala/meson.build
index 82d639a..f801c24 100644
--- a/vala/meson.build
+++ b/vala/meson.build
@@ -153,16 +153,19 @@ valacore_sources = [
valacore_lib = shared_library(
'vala@0@'.format(vala_version_suffix),
valacore_sources,
- dependencies: [glib, gobject, gmodule, valagee],
+ dependencies: [gobject_dep, gmodule_dep, valagee_dep],
soversion: '0.0.0',
install: true,
- include_directories: include_directories('.', '..'),
- vala_args: ['--use-header', '--pkg=config', '--vapidir=' + join_paths(meson.source_root(), 'vapi')],
+ vala_args: ['--use-header'],
vala_header: 'vala.h',
- #vala_vapi: 'vala.vapi',
+ vala_vapi: 'vala@0@.vapi'.format (vala_version_suffix),
+ install_dir: [
+ true,
+ join_paths (get_option('includedir'), 'vala@0@'.format (vala_version_suffix)),
+ true
+ ],
)
-valacore = declare_dependency(link_with: [valacore_lib],
- include_directories: include_directories('.', '..'))
+# TODO Prepend valagee.vapi to vala-*.vapi
-install_headers('vala.h', subdir: 'vala@0@'.format(vala_version_suffix))
+valacore_dep = declare_dependency(link_with: [valacore_lib], dependencies: [valagee_dep],
include_directories: include_directories('.', '..'))
diff --git a/valadoc/doclets/devhelp/meson.build b/valadoc/doclets/devhelp/meson.build
new file mode 100644
index 0000000..f21e196
--- /dev/null
+++ b/valadoc/doclets/devhelp/meson.build
@@ -0,0 +1,12 @@
+doclet_devhelp_sources = [
+ 'doclet.vala'
+]
+
+shared_module(
+ 'doclet',
+ doclet_devhelp_sources,
+ dependencies: [gobject_dep, libvaladoc_dep],
+ install: true,
+ install_dir: join_paths(get_option('libdir'), 'valadoc', 'doclets', 'devhelp'),
+ c_args: ['-DPACKAGE_ICONDIR="@0@"'.format(join_paths(get_option('datadir'), 'valadoc', 'icons'))],
+)
diff --git a/valadoc/doclets/gtkdoc/meson.build b/valadoc/doclets/gtkdoc/meson.build
new file mode 100644
index 0000000..ac46b6a
--- /dev/null
+++ b/valadoc/doclets/gtkdoc/meson.build
@@ -0,0 +1,17 @@
+doclet_gtkdoc_sources = [
+ 'commentconverter.vala',
+ 'dbus.vala',
+ 'doclet.vala',
+ 'gcomment.vala',
+ 'generator.vala',
+ 'utils.vala'
+]
+
+shared_module(
+ 'doclet',
+ doclet_gtkdoc_sources,
+ dependencies: [gobject_dep, libvaladoc_dep],
+ install: true,
+ install_dir: join_paths (get_option('libdir'), 'valadoc', 'doclets', 'gtkdoc'),
+ c_args: ['-DPACKAGE_ICONDIR="@0@"'.format(join_paths(get_option('datadir'), 'valadoc', 'icons'))],
+)
diff --git a/valadoc/doclets/html/meson.build b/valadoc/doclets/html/meson.build
new file mode 100644
index 0000000..09235f3
--- /dev/null
+++ b/valadoc/doclets/html/meson.build
@@ -0,0 +1,12 @@
+doclet_html_sources = [
+ 'doclet.vala'
+]
+
+shared_module(
+ 'doclet',
+ doclet_html_sources,
+ dependencies: [gobject_dep, libvaladoc_dep],
+ install: true,
+ install_dir: join_paths (get_option('libdir'), 'valadoc', 'doclets', 'html'),
+ c_args: ['-DPACKAGE_ICONDIR="@0@"'.format(join_paths(get_option('datadir'), 'valadoc', 'icons'))],
+)
diff --git a/valadoc/doclets/meson.build b/valadoc/doclets/meson.build
new file mode 100644
index 0000000..b517bf4
--- /dev/null
+++ b/valadoc/doclets/meson.build
@@ -0,0 +1,4 @@
+# FIXME clashing shared_module targetnames
+#subdir('devhelp')
+#subdir('gtkdoc')
+subdir('html')
diff --git a/valadoc/icons/meson.build b/valadoc/icons/meson.build
new file mode 100644
index 0000000..194f957
--- /dev/null
+++ b/valadoc/icons/meson.build
@@ -0,0 +1,35 @@
+install_data([
+ 'abstractclass.png',
+ 'abstractmethod.png',
+ 'abstractproperty.png',
+ 'class.png',
+ 'coll_close.png',
+ 'coll_open.png',
+ 'constant.png',
+ 'constructor.png',
+ 'delegate.png',
+ 'devhelpstyle.css',
+ 'enum.png',
+ 'enumvalue.png',
+ 'errorcode.png',
+ 'errordomain.png',
+ 'field.png',
+ 'interface.png',
+ 'method.png',
+ 'namespace.png',
+ 'package.png',
+ 'packages.png',
+ 'property.png',
+ 'scripts.js',
+ 'signal.png',
+ 'staticmethod.png',
+ 'struct.png',
+ 'style.css',
+ 'tip.png',
+ 'virtualmethod.png',
+ 'virtualproperty.png',
+ 'warning.png',
+ 'wikistyle.css',
+ ],
+ install_dir: join_paths('share', 'valadoc', 'icons'),
+)
diff --git a/valadoc/meson.build b/valadoc/meson.build
new file mode 100644
index 0000000..a502669
--- /dev/null
+++ b/valadoc/meson.build
@@ -0,0 +1,23 @@
+valadoc_sources = [
+ 'driver.vala',
+ 'girwriter.vala',
+ 'initializerbuilder.vala',
+ 'symbolresolver.vala',
+ 'treebuilder.vala',
+ 'valadoc.vala'
+]
+
+valadoc_name = 'valadoc@0@'.format(vala_version_suffix)
+
+executable(
+ valadoc_name,
+ valadoc_sources,
+ dependencies: [gobject_dep, valacodegen_dep, libvaladoc_dep],
+ install: true,
+)
+
+# https://github.com/mesonbuild/meson/issues/1602
+meson.add_install_script('sh', '-c', 'cd $DESTDIR@0@; ln -fs @1@
valadoc'.format(join_paths(get_option('prefix'), get_option('bindir')), valadoc_name))
+
+subdir('doclets')
+subdir('icons')
diff --git a/vapigen/meson.build b/vapigen/meson.build
index 66b8365..c1a9602 100644
--- a/vapigen/meson.build
+++ b/vapigen/meson.build
@@ -8,15 +8,14 @@ vapigen_name = 'vapigen@0@'.format(vala_version_suffix)
executable(
vapigen_name,
vapigen_sources,
- dependencies: [glib, gobject, valagee, valacore, gidl],
+ dependencies: [glib_dep, valagee_dep, valacore_dep, gidl_dep],
install: true,
- include_directories: include_directories('..'),
- vala_args: [
- '--pkg=config', '--vapidir=' + join_paths(meson.source_root(), 'vapi'),
- '--pkg=gidl', '--vapidir=' + join_paths(meson.source_root(), 'gobject-introspection')
- ]
+ vala_args: ['--pkg', 'gidl', '--vapidir', join_paths(meson.source_root(), 'gobject-introspection')],
)
+# https://github.com/mesonbuild/meson/issues/1602
+meson.add_install_script('sh', '-c', 'cd $DESTDIR@0@; ln -fs @1@
vapigen'.format(join_paths(get_option('prefix'), get_option('bindir')), vapigen_name))
+
vapicheck_sources = [
'valavapicheck.vala'
]
@@ -26,11 +25,14 @@ vapicheck_name = 'vapicheck@0@'.format(vala_version_suffix)
executable(
vapicheck_name,
vapicheck_sources,
- dependencies: [glib, gobject, valagee, valacore, gidl],
+ dependencies: [glib_dep, valagee_dep, valacore_dep, gidl_dep],
install: true,
- vala_args: ['--pkg=gidl', '--vapidir=' + join_paths(meson.source_root(), 'gobject-introspection')]
+ vala_args: ['--pkg', 'gidl', '--vapidir', join_paths(meson.source_root(), 'gobject-introspection')],
)
+# https://github.com/mesonbuild/meson/issues/1602
+meson.add_install_script('sh', '-c', 'cd $DESTDIR@0@; ln -fs @1@
vapicheck'.format(join_paths(get_option('prefix'), get_option('bindir')), vapicheck_name))
+
configure_file(
input: 'vapigen.pc.in',
output: 'vapigen@0@.pc'.format(vala_version_suffix),
@@ -38,7 +40,7 @@ configure_file(
install_dir: pkg_install_dir
)
-install_data('vapigen.m4', install_dir: 'share/aclocal')
-install_data('Makefile.vapigen', install_dir: 'share/vala')
+install_data('vapigen.m4', install_dir: join_paths('share', 'aclocal'))
+install_data('Makefile.vapigen', install_dir: join_paths('share', 'vala'))
subdir('vala-gen-introspect')
diff --git a/vapigen/vala-gen-introspect/meson.build b/vapigen/vala-gen-introspect/meson.build
index 6cb1582..045de47 100644
--- a/vapigen/vala-gen-introspect/meson.build
+++ b/vapigen/vala-gen-introspect/meson.build
@@ -4,3 +4,6 @@ configure_file(
configuration: pkgconf,
install_dir: join_paths(get_option('prefix'), get_option('bindir'))
)
+
+# https://github.com/mesonbuild/meson/issues/1602
+meson.add_install_script('sh', '-c', 'cd $DESTDIR@0@; ln -fs @1@
vala-gen-introspect'.format(join_paths(get_option('prefix'), get_option('bindir')),
'vala-gen-introspect@0@'.format(vala_version_suffix)))
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]