[gnome-builder/wip/tingping/meson-build] fixup! build: Initial conversion to Meson



commit a2e10c8305f5e5bbf03b3f6716dd9744ccb0d24b
Author: Patrick Griffis <tingping tingping se>
Date:   Mon Oct 10 13:10:13 2016 -0400

    fixup! build: Initial conversion to Meson

 contrib/egg/meson.build             |   16 ++++++++++++----
 contrib/gd/meson.build              |    2 +-
 contrib/libeditorconfig/meson.build |    2 +-
 contrib/nautilus/meson.build        |    2 +-
 contrib/search/meson.build          |    2 +-
 contrib/tmpl/meson.build            |   13 +++++++++----
 contrib/xml/meson.build             |    2 +-
 data/fonts/meson.build              |    2 +-
 data/gsettings/meson.build          |    2 +-
 data/icons/meson.build              |    2 +-
 data/meson.build                    |   17 +++++++++--------
 data/style-schemes/meson.build      |    2 +-
 libide/meson.build                  |   14 +++++++-------
 meson.build                         |    9 +++++----
 plugins/meson.build                 |    2 +-
 15 files changed, 52 insertions(+), 37 deletions(-)
---
diff --git a/contrib/egg/meson.build b/contrib/egg/meson.build
index 3f09805..5d4e26b 100644
--- a/contrib/egg/meson.build
+++ b/contrib/egg/meson.build
@@ -83,7 +83,7 @@ libegg_deps = [
 libegg = shared_library('egg-private', libegg_sources,
   dependencies: libegg_deps,
   install: true,
-  install_dir: get_option('libdir') + '/gnome-builder',
+  install_dir: pkglibdir,
 )
 
 libegg_dep = declare_dependency(
@@ -96,7 +96,7 @@ libegg_dep = declare_dependency(
 
 if get_option('with_introspection')
 
-gnome.generate_gir(libegg,
+libegg_gir = gnome.generate_gir(libegg,
   sources: libegg_sources + libegg_headers,
   nsversion: '1.0',
   namespace: 'Egg',
@@ -104,8 +104,16 @@ gnome.generate_gir(libegg,
   identifier_prefix: 'Egg',
   includes: ['Gtk-3.0'],
   install: true,
-  install_dir_gir: get_option('datadir') + '/gnome-builder/gir-1.0',
-  install_dir_typelib: get_option('datadir') + '/gnome-builder/girepository-1.0',
+  install_dir_gir: pkggirdir,
+  install_dir_typelib: pkgtypelibdir,
+  extra_args: [
+    '--c-include=egg-private.h',
+  ]
 )
 
+#gnome.generate_vapi('egg-private',
+#  sources: libegg_gir[0],
+#  packages: ['gio-2.0', 'gtk+-3.0'],
+#)
+
 endif
diff --git a/contrib/gd/meson.build b/contrib/gd/meson.build
index 43f930f..d3a3762 100644
--- a/contrib/gd/meson.build
+++ b/contrib/gd/meson.build
@@ -15,5 +15,5 @@ libgd_deps = [
 
 libgd = static_library('gd', libgd_sources,
   dependencies: libgd_deps,
-  c_args: ['-fPIC'],
+  pic: true,
 )
diff --git a/contrib/libeditorconfig/meson.build b/contrib/libeditorconfig/meson.build
index 980cfb2..43e685c 100644
--- a/contrib/libeditorconfig/meson.build
+++ b/contrib/libeditorconfig/meson.build
@@ -32,12 +32,12 @@ libeditorconfig_args = [
        '-Deditorconfig_VERSION_MINOR=0',
        '-Deditorconfig_VERSION_PATCH=0',
        '-Deditorconfig_VERSION_SUFFIX=0',
-       '-fPIC',
 ]
 
 libeditorconfig = static_library('editorconfig',
   libeditorconfig_sources,
   dependencies: libeditorconfig_deps,
   c_args: libeditorconfig_args,
+  pic: true,
 )
 endif
diff --git a/contrib/nautilus/meson.build b/contrib/nautilus/meson.build
index 7ff9de8..61a404b 100644
--- a/contrib/nautilus/meson.build
+++ b/contrib/nautilus/meson.build
@@ -9,5 +9,5 @@ libnautilus_deps = [
 
 libnautilus = static_library('nautilus', libnautilus_sources,
   dependencies: libnautilus_deps,
-  c_args: ['-fPIC'],
+  pic: true,
 )
diff --git a/contrib/search/meson.build b/contrib/search/meson.build
index da88ac8..2c65456 100644
--- a/contrib/search/meson.build
+++ b/contrib/search/meson.build
@@ -9,5 +9,5 @@ libsearch_deps = [
 
 libsearch = static_library('search', libsearch_sources,
   dependencies: libsearch_deps,
-  c_args: ['-fPIC'],
+  pic: true,
 )
diff --git a/contrib/tmpl/meson.build b/contrib/tmpl/meson.build
index d141bbf..a807951 100644
--- a/contrib/tmpl/meson.build
+++ b/contrib/tmpl/meson.build
@@ -4,7 +4,7 @@ libtmpl_enum_headers = [
 ]
 
 libtmpl_headers_subdir = 'gnome-builder-' + meson.project_version() + '/template-glib'
-libtmpl_headers_dir = get_option('includedir') + '/' + libtmpl_headers_subdir
+libtmpl_headers_dir = path_join(get_option('includedir'), libtmpl_headers_subdir)
 
 libtmpl_enums = gnome.mkenums('tmpl-enums',
   h_template: 'tmpl-enums.h.in',
@@ -112,7 +112,7 @@ libtmpl = shared_library('template-glib-' + libtmpl_api_version, libtmpl_sources
   dependencies: libtmpl_deps,
   c_args: ['-DTMPL_GLIB_COMPILATION'],
   install: true,
-  install_dir: pkglibdir, # Was this the wrong dir?
+  install_dir: pkglibdir,
 )
 
 libtmpl_dep = declare_dependency(
@@ -152,11 +152,16 @@ libtmpl_gir = gnome.generate_gir(libtmpl,
   identifier_prefix: 'Tmpl',
   includes: ['Gio-2.0'],
   install: true,
-  install_dir_gir: get_option('datadir') + '/gnome-builder/gir-1.0',
-  install_dir_typelib: get_option('datadir') + '/gnome-builder/girepository-1.0',
+  install_dir_gir: pkggirdir,
+  install_dir_typelib: pkgtypelibdir,
   extra_args: [
     '-DTMPL_GLIB_COMPILATION',
   ]
 )
 
+#gnome.generate_vapi('template-glib-' + libtmpl_api_version,
+#  sources: [libtmpl_gir[0], 'Template-1.0.metadata'],
+#  packages: 'gio-2.0',
+#)
+
 endif
diff --git a/contrib/xml/meson.build b/contrib/xml/meson.build
index 80af309..23f5aeb 100644
--- a/contrib/xml/meson.build
+++ b/contrib/xml/meson.build
@@ -9,5 +9,5 @@ libxml_deps = [
 
 libxml = static_library('xml', libxml_sources,
   dependencies: libxml_deps,
-  c_args: ['-fPIC'],
+  pic: true,
 )
diff --git a/data/fonts/meson.build b/data/fonts/meson.build
index d666e8f..876048b 100644
--- a/data/fonts/meson.build
+++ b/data/fonts/meson.build
@@ -1,3 +1,3 @@
 install_data([
   'BuilderBlocks.ttf',
-], install_dir: get_option('datadir') + '/gnome-builder/fonts')
+], install_dir: path_join(get_option('datadir'), 'gnome-builder/fonts'))
diff --git a/data/gsettings/meson.build b/data/gsettings/meson.build
index dfc5ef7..e361a3d 100644
--- a/data/gsettings/meson.build
+++ b/data/gsettings/meson.build
@@ -1,4 +1,4 @@
-schema_dir = get_option('datadir') + '/glib-2.0/schemas'
+schema_dir = path_join(get_option('datadir'), 'glib-2.0', 'schemas')
 
 # Perhaps this should be moved to the plugin
 ctags_path = 'ctags'
diff --git a/data/icons/meson.build b/data/icons/meson.build
index f700a29..98fe6ef 100644
--- a/data/icons/meson.build
+++ b/data/icons/meson.build
@@ -1,4 +1,4 @@
-icondir = get_option('datadir') + '/icons'
+icondir = path_join(get_option('datadir'), 'icons')
 
 # FIXME: We have unrelated files in some of these
 
diff --git a/data/meson.build b/data/meson.build
index 1470e42..b34df93 100644
--- a/data/meson.build
+++ b/data/meson.build
@@ -1,4 +1,5 @@
 msgfmt = find_program('msgfmt')
+podir = path_join(meson.source_root(), 'po')
 
 # Desktop launcher and description file.
 custom_target(
@@ -6,9 +7,9 @@ custom_target(
   input: 'org.gnome.Builder.desktop.in.in',
   output: 'org.gnome.Builder.desktop',
   install: true,
-  install_dir: get_option('datadir') + '/applications',
+  install_dir: path_join(get_option('datadir'), 'applications'),
   command: [msgfmt, '--desktop', '--template', '@INPUT@',
-    '-d', meson.source_root() + '/po', '-o', '@OUTPUT@'],
+    '-d', podir, '-o', '@OUTPUT@'],
 )
 
 # Appdata file.
@@ -17,28 +18,28 @@ custom_target(
   input: 'org.gnome.Builder.appdata.xml.in',
   output: 'org.gnome.Builder.appdata.xml',
   install: true,
-  install_dir: get_option('datadir') + '/appdata',
+  install_dir: path_join(get_option('datadir'), 'appdata'),
   command: [msgfmt, '--xml', '--template', '@INPUT@',
-    '-d', meson.source_root() + '/po', '-o', '@OUTPUT@'],
+    '-d', podir, '-o', '@OUTPUT@'],
 )
 
 # D-Bus service file.
 dbusconf = configuration_data()
-dbusconf.set('bindir', '@0@/@1@'.format(get_option('prefix'), get_option('bindir')))
+dbusconf.set('bindir', path_join(get_option('prefix'), get_option('bindir')))
 configure_file(
        input: 'org.gnome.Builder.service.in',
        output: 'org.gnome.Builder.service',
        configuration: dbusconf,
        install: true,
-       install_dir: get_option('datadir') + '/dbus-1/services',
+       install_dir: path_join(get_option('datadir'), 'dbus-1', 'services'),
 )
 
 # pkg-config files.
-pkgpkgconfdir = get_option('libdir') + '/gnome-builder/pkgconfig'
+pkgpkgconfdir = path_join(get_option('libdir'), 'gnome-builder', 'pkgconfig')
 
 pkgconf = configuration_data()
 pkgconf.set('prefix', get_option('prefix'))
-pkgconf.set('libdir', '${exec_prefix}/' + get_option('libdir'))
+pkgconf.set('libdir', path_join('${exec_prefix}', get_option('libdir')))
 pkgconf.set('VERSION', meson.project_version())
 
 # TODO: Use the pkgconfig module to generate these
diff --git a/data/style-schemes/meson.build b/data/style-schemes/meson.build
index 29f1a58..a28a34b 100644
--- a/data/style-schemes/meson.build
+++ b/data/style-schemes/meson.build
@@ -1,4 +1,4 @@
 install_data([
   'builder.xml',
   'builder-dark.xml',
-], install_dir: get_option('datadir') + '/gtksourceview-3.0/styles')
+], install_dir: path_join(get_option('datadir'), 'gtksourceview-3.0/styles'))
diff --git a/libide/meson.build b/libide/meson.build
index 219eab1..e14ff61 100644
--- a/libide/meson.build
+++ b/libide/meson.build
@@ -15,7 +15,7 @@ libide_enum_headers = [
 ]
 
 libide_header_subdir = 'gnome-builder-' + meson.project_version() + '/libide'
-libide_header_dir = get_option('includedir') + '/' + libide_header_subdir
+libide_header_dir = path_join(get_option('includedir'), libide_header_subdir)
 
 # https://github.com/mesonbuild/meson/pull/718
 libide_enums = gnome.mkenums('ide-enums',
@@ -208,8 +208,8 @@ install_headers(libide_public_headers,
 subdir('resources')
 
 libide_icons_resources = gnome.compile_resources('ide-icons-resources',
-  meson.source_root() + '/data/icons/hicolor/icons.gresource.xml',
-  source_dir: meson.source_root() + '/data/icons/hicolor',
+  path_join(meson.source_root(), 'data/icons/hicolor/icons.gresource.xml'),
+  source_dir: path_join(meson.source_root(), 'data/icons/hicolor'),
   c_name: 'ide_icons',
 )
 
@@ -523,7 +523,7 @@ libide_deps = [
   libtmpl_dep,
 ]
 
-contrib_dir = meson.source_root() + '/contrib/'
+contrib_dir = path_join(meson.source_root(), 'contrib/')
 
 libide_includes = [
   contrib_dir + 'gd',
@@ -566,7 +566,7 @@ libide = shared_library('ide-' + libide_api_version, libide_sources,
   link_with: libide_libs,
   c_args: libide_args,
   install: true,
-  install_dir: get_option('libdir') + '/gnome-builder',
+  install_dir: pkglibdir,
 )
 
 libide_dep = declare_dependency(
@@ -589,8 +589,8 @@ gnome.generate_gir(libide,
   #dependencies: libide_dep,
   includes: ['Gio-2.0', 'Gtk-3.0', 'GtkSource-3.0', 'Peas-1.0', libtmpl_gir[0]],
   install: true,
-  install_dir_gir: get_option('datadir') + '/gnome-builder/gir-1.0',
-  install_dir_typelib: get_option('datadir') + '/gnome-builder/girepository-1.0',
+  install_dir_gir: pkggirdir,
+  install_dir_typelib: pkgtypelibdir,
   extra_args: [
     '-I' + meson.current_build_dir(),
   ]
diff --git a/meson.build b/meson.build
index 6c169c2..10d49f6 100644
--- a/meson.build
+++ b/meson.build
@@ -1,7 +1,7 @@
 project('gnome-builder', 'c',
   license: 'GPL3+',
   version: '3.22.0',
-  meson_version: '>=0.35.0',
+  meson_version: '>=0.36.0',
   # https://github.com/mesonbuild/meson/pull/834
   default_options: ['b_lundef=false'],
 )
@@ -16,7 +16,7 @@ conf.set_quoted('PACKAGE_VERSION', meson.project_version())
 conf.set_quoted('PACKAGE_STRING', 'gnome-builder-' + meson.project_version())
 conf.set_quoted('PACKAGE_DATADIR', get_option('datadir'))
 conf.set_quoted('PACKAGE_LIBDIR', get_option('datadir'))
-conf.set_quoted('PACKAGE_LOCALE_DIR', get_option('datadir') + '/locale')
+conf.set_quoted('PACKAGE_LOCALE_DIR', path_join(get_option('datadir'), 'locale'))
 conf.set_quoted('PACKAGE_LIBEXECDIR', get_option('libexecdir'))
 
 conf.set('GETTEXT_PACKAGE', 'PACKAGE_NAME')
@@ -43,8 +43,9 @@ configure_file(
   configuration: conf
 )
 
-pkglibdir = get_option('libdir') + '/gnome-builder'
-pkggirdir = get_option('datadir') + '/gnome-builder/gir-1.0'
+pkglibdir = path_join(get_option('libdir'), 'gnome-builder')
+pkggirdir = path_join(get_option('datadir'),' gnome-builder', 'gir-1.0')
+pkgtypelibdir = path_join(get_option('datadir'), 'gnome-builder', 'girepository-1.0')
 gnome = import('gnome')
 
 subdir('data')
diff --git a/plugins/meson.build b/plugins/meson.build
index a098b2d..3778488 100644
--- a/plugins/meson.build
+++ b/plugins/meson.build
@@ -1,4 +1,4 @@
-plugindir = get_option('libdir') + '/gnome-builder/plugins'
+plugindir = path_join(get_option('libdir'), 'gnome-builder/plugins')
 
 subdir('autotools')
 #subdir('autotools-templates')


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]