gplugin/gplugin

merge these diverged branches together
feature/gtk-doc
2018-05-07, Gary Kramlich
d92f986ed621
merge these diverged branches together
--- a/.hgignore Mon May 07 20:55:46 2018 -0500
+++ b/.hgignore Mon May 07 21:06:06 2018 -0500
@@ -6,6 +6,7 @@
*.pyc
syntax: regexp
+^artifacts\/
^build.*\/
^packaging\/debian\/tmp\/
^packaging\/debian\/(.+\.)?(substvars|debhelper\.log)$
--- a/ChangeLog Mon May 07 20:55:46 2018 -0500
+++ b/ChangeLog Mon May 07 21:06:06 2018 -0500
@@ -4,6 +4,7 @@
* Changed the build system to meson. See INSTALL for instructions.
* Added gplugin_plugin_get_dependent_plugins. (fixes #8)
* Remove ability to disable unit testing.
+ * Bumped the glib requirement to 2.40.0
0.27.0: 2016/04/18
* Bumped the glib requirement to 2.34.0
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/convey.yml Mon May 07 21:06:06 2018 -0500
@@ -0,0 +1,306 @@
+tasks:
+ import:
+ type: import
+ files:
+ - .
+ import-artifacts:
+ type: import
+ files: artifacts
+
+ package-cloud:
+ image: rwgrim/package-cloud:latest
+ command: push --verbose ${REPOSITORY}/${DISTRIBUTION} artifacts/${FILES}
+ workdir: /workspace
+
+ #############################################################################
+ # Alpine
+ #############################################################################
+ build-alpine-edge-amd64:
+ image: gplugin/builders:alpine-edge-amd64
+ export-alpine-edge-amd64:
+ type: export
+ files: alpine-edge-amd64:artifacts/
+
+ #############################################################################
+ # Coverity
+ #############################################################################
+ build-coverity:
+ image: gplugin/builders:coverity
+ export-coverity:
+ type: export
+ files: coverity:artifacts/coverity
+
+ #############################################################################
+ # Debian
+ #############################################################################
+ build-debian-oldstable-amd64:
+ image: gplugin/builders:debian-jessie-amd64
+ export-debian-oldstable-amd64:
+ type: export
+ files: debian-oldstable-amd64:artifacts/
+ build-debian-stable-amd64:
+ image: gplugin/builders:debian-stretch-amd64
+ export-debian-stable-amd64:
+ type: export
+ files: debian-stable-amd64:artifacts/
+ package-cloud-debian-stable-amd64:
+ type: extend
+ task: package-cloud
+ environment:
+ - PACKAGECLOUD_TOKEN
+ - REPOSITORY=pidgin/experimental
+ - DISTRIBUTION=debian/stretch
+ - FILES=debian-stable-amd64/debs/*.deb
+ package-cloud-debian-stable-source:
+ type: extend
+ task: package-cloud
+ environment:
+ - PACKAGECLOUD_TOKEN
+ - REPOSITORY=pidgin/experimental
+ - DISTRIBUTION=debian/stretch
+ - FILES=debian-stretch-amd64/debs/*.dsc
+ build-debian-testing-amd64:
+ image: gplugin/builders:debian-buster-amd64
+ export-debian-testing-amd64:
+ type: export
+ files: debian-testing-amd64:artifacts/
+ package-cloud-debian-testing-amd64:
+ type: extend
+ task: package-cloud
+ environment:
+ - PACKAGECLOUD_TOKEN
+ - REPOSITORY=pidgin/experimental
+ - DISTRIBUTION=debian/buster
+ - FILES=debian-testing-amd64/debs/*.deb
+ package-cloud-debian-testing-source:
+ type: extend
+ task: package-cloud
+ environment:
+ - PACKAGECLOUD_TOKEN
+ - REPOSITORY=pidgin/experimental
+ - DISTRIBUTION=debian/buster
+ - FILES=debian-testing-amd64/debs/*.dsc
+
+ #############################################################################
+ # Fedora
+ #############################################################################
+ build-fedora-25-amd64:
+ image: gplugin/builders:fedora-25-amd64
+ export-fedora-25-amd64:
+ type: export
+ files: fedora-25-amd64:artifacts/
+ package-cloud-fedora-25-amd64:
+ type: extend
+ task: package-cloud
+ environment:
+ - PACKAGECLOUD_TOKEN
+ - REPOSITORY=pidgin/experimental
+ - DISTRIBUTION=fedora/25
+ - FILES=fedora-25-amd64/x86_64/*.rpm
+ build-fedora-26-amd64:
+ image: gplugin/builders:fedora-26-amd64
+ export-fedora-26-amd64:
+ type: export
+ files: fedora-26-amd64:artifacts/
+ package-cloud-fedora-26-amd64:
+ type: extend
+ task: package-cloud
+ environment:
+ - PACKAGECLOUD_TOKEN
+ - REPOSITORY=pidgin/experimental
+ - DISTRIBUTION=fedora/26
+ - FILES=fedora-26-amd64/x86_64/*.rpm
+
+ #############################################################################
+ # OpenSUSE
+ #############################################################################
+ build-opensuse-tumbleweed-amd64:
+ image: gplugin/builders:opensuse-tumbleweed-amd64
+ export-opensuse-tumbleweed-amd64:
+ type: export
+ files: opensuse-tumbleweed-amd64:artifacts/
+ package-cloud-opensuse-tumbleweed-amd64:
+ type: extend
+ task: package-cloud
+ environment:
+ - PACKAGECLOUD_TOKEN
+ - REPOSITORY=pidgin/experimental
+ - DISTRIBUTION=opensuse/tumbleweed
+ - FILES=opensuse-tumbleweed-amd64/x86_64/*.rpm
+
+ #############################################################################
+ # scanbuild
+ #############################################################################
+ build-scanbuild:
+ image: gplugin/builders:scanbuild
+ export-scanbuild:
+ type: export
+ files: scanbuild:artifacts/
+
+ #############################################################################
+ # Ubuntu
+ #############################################################################
+ build-ubuntu-xenial-amd64:
+ image: gplugin/builders:ubuntu-xenial-amd64
+ export-ubuntu-xenial-amd64:
+ type: export
+ files: debian-xenial-amd64:artifacts/
+ package-cloud-ubuntu-xenial-amd64:
+ type: extend
+ task: package-cloud
+ environment:
+ - PACKAGECLOUD_TOKEN
+ - REPOSITORY=pidgin/experimental
+ - DISTRIBUTION=ubuntu/xenial
+ - FILES=ubuntu-xenial-amd64/debs/*.deb
+ package-cloud-ubuntu-xenial-source:
+ type: extend
+ task: package-cloud
+ environment:
+ - PACKAGECLOUD_TOKEN
+ - REPOSITORY=pidgin/experimental
+ - DISTRIBUTION=ubuntu/xenial
+ - FILES=ubuntu-xenial-amd64/debs/*.dsc
+ build-ubuntu-zesty-amd64:
+ image: gplugin/builders:ubuntu-zesty-amd64
+ export-ubuntu-zesty-amd64:
+ type: export
+ files: debian-zesty-amd64:artifacts/
+ package-cloud-ubuntu-zesty-amd64:
+ type: extend
+ task: package-cloud
+ environment:
+ - PACKAGECLOUD_TOKEN
+ - REPOSITORY=pidgin/experimental
+ - DISTRIBUTION=ubuntu/zesty
+ - FILES=ubuntu-zesty-amd64/debs/*.deb
+ package-cloud-ubuntu-zesty-source:
+ type: extend
+ task: package-cloud
+ environment:
+ - PACKAGECLOUD_TOKEN
+ - REPOSITORY=pidgin/experimental
+ - DISTRIBUTION=ubuntu/zesty
+ - FILES=ubuntu-zesty-amd64/debs/*.dsc
+
+plans:
+ alpine-edge-amd64:
+ stages:
+ - tasks:
+ - import
+ - build-alpine-edge-amd64
+ - export-alpine-edge-amd64
+ debian-oldstable-amd64:
+ stages:
+ - tasks:
+ - import
+ - build-debian-oldstable-amd64
+ - export-debian-oldstable-amd64
+ debian-stable-amd64:
+ stages:
+ - tasks:
+ - import
+ - build-debian-stable-amd64
+ - export-debian-stable-amd64
+ debian-testing-amd64:
+ stages:
+ - tasks:
+ - import
+ - build-debian-testing-amd64
+ - export-debian-testing-amd64
+ debian-package-cloud:
+ stages:
+ - name: import packages
+ tasks: import-artifacts
+ - name: upload packages
+ concurrent: true
+ tasks:
+ - package-cloud-debian-stable-amd64
+ - package-cloud-debian-stable-source
+ - package-cloud-debian-testing-amd64
+ - package-cloud-debian-testing-source
+
+ fedora-25-amd64:
+ stages:
+ - tasks:
+ - import
+ - build-fedora-25-amd64
+ - export-fedora-25-amd64
+ fedora-26-amd64:
+ stages:
+ - tasks:
+ - import
+ - build-fedora-26-amd64
+ - export-fedora-26-amd64
+ fedora-package-cloud:
+ stages:
+ - name: import packages
+ tasks: import-artifacts
+ - name: upload packages
+ concurrent: true
+ tasks:
+ - package-cloud-fedora-25-amd64
+ - package-cloud-fedora-26-amd64
+
+ coverity:
+ stages:
+ - tasks:
+ - import
+ - build-coverity
+ - export-coverity
+
+ opensuse-tumbleweed-amd64:
+ stages:
+ - tasks:
+ - import
+ - build-opensuse-tumbleweed-amd64
+ - export-opensuse-tumbleweed-amd64
+ opensuse-package-cloud:
+ stages:
+ - name: import packages
+ tasks: import-artifacts
+ - name: upload packages
+ concurrent: true
+ tasks:
+ - package-cloud-opensuse-tumbleweed-amd64
+
+ scanbuild:
+ stages:
+ - tasks:
+ - import
+ - build-scanbuild
+ - export-scanbuild
+
+ ubuntu-xenial-amd64:
+ stages:
+ - tasks:
+ - import
+ - build-ubuntu-xenial-amd64
+ - export-ubuntu-xenial-amd64
+ ubuntu-zesty-amd64:
+ stages:
+ - tasks:
+ - import
+ - build-ubuntu-zesty-amd64
+ - export-ubuntu-zesty-amd64
+
+meta-plans:
+ alpine:
+ plans:
+ - alpine-edge-amd64
+ debian:
+ plans:
+ # old stable has a bunch of issues with
+ # old meson that need to be sorted out.
+ # - debian-oldstable-amd64
+ - debian-stable-amd64
+ - debian-testing-amd64
+ fedora:
+ plans:
+ - fedora-25-amd64
+ - fedora-26-amd64
+ ubuntu:
+ plans:
+ - ubuntu-xenial-amd64
+ - ubuntu-zesty-amd64
+
--- a/gplugin-gtk/gplugin-gtk-plugin-info.c Mon May 07 20:55:46 2018 -0500
+++ b/gplugin-gtk/gplugin-gtk-plugin-info.c Mon May 07 21:06:06 2018 -0500
@@ -332,7 +332,7 @@
g_object_unref(G_OBJECT(priv->plugin));
if(GPLUGIN_IS_PLUGIN(plugin))
- priv->plugin = g_object_ref(G_OBJECT(plugin));
+ priv->plugin = GPLUGIN_PLUGIN(g_object_ref(G_OBJECT(plugin)));
else
priv->plugin = NULL;
@@ -356,6 +356,6 @@
priv = GPLUGIN_GTK_PLUGIN_INFO_GET_PRIVATE(info);
- return (priv->plugin) ? g_object_ref(G_OBJECT(priv->plugin)) : NULL;
+ return (priv->plugin) ? GPLUGIN_PLUGIN(g_object_ref(G_OBJECT(priv->plugin))) : NULL;
}
--- a/gplugin/gplugin-manager.c Mon May 07 20:55:46 2018 -0500
+++ b/gplugin/gplugin-manager.c Mon May 07 21:06:06 2018 -0500
@@ -648,7 +648,7 @@
* version.
*/
for(m = matches; m; m = m->next) {
- GPluginPlugin *dplugin = g_object_ref(G_OBJECT(m->data));
+ GPluginPlugin *dplugin = GPLUGIN_PLUGIN(g_object_ref(G_OBJECT(m->data)));
gboolean ret = FALSE;
if(oop && over) {
@@ -1331,7 +1331,7 @@
if(plugins_list == NULL)
return NULL;
- plugin = g_object_ref(G_OBJECT(plugins_list->data));
+ plugin = GPLUGIN_PLUGIN(g_object_ref(G_OBJECT(plugins_list->data)));
gplugin_manager_free_plugin_list(plugins_list);
--- a/gplugin/gplugin-plugin.c Mon May 07 20:55:46 2018 -0500
+++ b/gplugin/gplugin-plugin.c Mon May 07 21:06:06 2018 -0500
@@ -106,7 +106,7 @@
g_object_unref(G_OBJECT(priv->loader));
if(GPLUGIN_IS_LOADER(loader))
- priv->loader = g_object_ref(G_OBJECT(loader));
+ priv->loader = GPLUGIN_LOADER(g_object_ref(G_OBJECT(loader)));
else
priv->loader = NULL;
}
@@ -115,10 +115,14 @@
gplugin_plugin_set_info(GPluginPlugin *plugin, GPluginPluginInfo *info) {
GPluginPluginPrivate *priv = GPLUGIN_PLUGIN_GET_PRIVATE(plugin);
- if(priv->info)
+ if(priv->info) {
g_object_unref(G_OBJECT(priv->info));
+ priv->info = NULL;
+ }
- priv->info = (info) ? g_object_ref(G_OBJECT(info)) : NULL;
+ if(info) {
+ priv->info = GPLUGIN_PLUGIN_INFO(g_object_ref(G_OBJECT(info)));
+ }
}
gchar *
@@ -346,7 +350,7 @@
priv = GPLUGIN_PLUGIN_GET_PRIVATE(plugin);
- return (priv->info) ? g_object_ref(G_OBJECT(priv->loader)) : NULL;
+ return (priv->info) ? GPLUGIN_LOADER(g_object_ref(G_OBJECT(priv->loader))) : NULL;
}
/**
@@ -365,7 +369,7 @@
priv = GPLUGIN_PLUGIN_GET_PRIVATE(plugin);
- return (priv->info) ? g_object_ref(G_OBJECT(priv->info)) : NULL;
+ return (priv->info) ? GPLUGIN_PLUGIN_INFO(g_object_ref(G_OBJECT(priv->info))) : NULL;
}
/**
--- a/meson.build Mon May 07 20:55:46 2018 -0500
+++ b/meson.build Mon May 07 21:06:06 2018 -0500
@@ -1,7 +1,7 @@
###############################################################################
# Project Info
###############################################################################
-project('gplugin', 'c', version : '0.28.0-dev',
+project('gplugin', 'c', version : '0.28.0dev',
meson_version : '>=0.37.0',
default_options : ['c_std=c99'])
@@ -35,7 +35,7 @@
help2man = find_program('help2man')
endif
-GLIB = dependency('glib-2.0', version : '>=2.34.0')
+GLIB = dependency('glib-2.0', version : '>=2.40.0')
GOBJECT = dependency('gobject-2.0')
# we separate gmodule out so our test aren't linked to it
--- a/packaging/gplugin.spec.in Mon May 07 20:55:46 2018 -0500
+++ b/packaging/gplugin.spec.in Mon May 07 21:06:06 2018 -0500
@@ -143,7 +143,6 @@
pushd build
CFLAGS="%{optflags}" meson \
- -Wno-dev \
--prefix=%{_prefix} \
-Dlua=true \
-Dpython=true \
@@ -155,7 +154,7 @@
%install
pushd build
-ninja install DESTDIR=%{buildroot}
+DESTDIR=%{buildroot} ninja install
# Unneeded files
rm -rf %{buildroot}%{_datadir}/doc/gplugin/