After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 782145 - [PATCH] Move GXml configuration from Autotools to Meson
[PATCH] Move GXml configuration from Autotools to Meson
Status: RESOLVED FIXED
Product: gxml
Classification: Other
Component: general
unspecified
Other Linux
: Normal normal
: ---
Assigned To: Daniel Espinosa
GXml maintainer(s)
Depends on:
Blocks:
 
 
Reported: 2017-05-03 23:53 UTC by Yannick Inizan
Modified: 2017-05-18 23:56 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
[PATCH] Porting project from Autotools to Meson. (7.52 KB, patch)
2017-05-03 23:53 UTC, Yannick Inizan
needs-work Details | Review

Description Yannick Inizan 2017-05-03 23:53:47 UTC
Created attachment 351016 [details] [review]
[PATCH] Porting project from Autotools to Meson.

With this patch, we can configure GXml project with Meson. (without tests, for the moment)
Comment 1 Daniel Espinosa 2017-05-05 17:06:41 UTC
Review of attachment 351016 [details] [review]:

Please try not to touch Autotools at all. But is required, consider the following:

AUTOTOOLS

I found usefull to have a gxml.pc file to create a gxm-$API_VERSION.pc one, so use in configure.ac:


gxml/gxml-$API_VERSION.pc:gxml/gxml.pc.in


while you need a gxml/gxml.pc.in


For gxml.deps, use same approach. Create a gxml/gxml.deps files with actual content, don't create it in Makefile.am and in configure.ac use:

gxml/gxml-$API_VERSION.deps:gxml/gxml.deps


I don't see what is the use of PCDEPS in configure.ac, try to avoid it, it appears to be used only in menson build system.

MESON

While I'll try to test your  implementation, because it should work without autotools, I haven't done yet.
Comment 2 Daniel Espinosa 2017-05-05 18:04:13 UTC
I found meson build fails at:

gxml/meson.build line 117, with something about custome directory.

I've library target, removing all install_dir. I'm sure this is not the correct way, but works at least to compile. Now I have:

gxml = library('gxml-@0@'.format(API_VERSION),
	sources,
	version : GXML_VERSION,
	vala_header : 'gxml.h',
	vala_vapi : 'gxml-@0@.vapi'.format(API_VERSION),
	vala_gir : 'GXml-@0@.gir'.format(API_VERSION),
	dependencies : [ gee, gio, xml ],
	vala_args : [
		'--vapidir=' + meson.source_root() + '/vapi',
		'--pkg', 'config'
	],
	c_args : [
		'-include',
		meson.current_build_dir() + '/config.h',
		xlibxml_cflags
	],
	install : true)


Could you review your code. I'm using meson 0.37.1.
Comment 3 Daniel Espinosa 2017-05-05 18:05:19 UTC
I'm pushing your work in a local branch. Once you provide a working patch, I'll push to master.
Comment 4 Daniel Espinosa 2017-05-05 19:14:46 UTC
I've upgraded to meson 0.40.1, no error on gxml/meson.build, but missing po/meson.build, have you missed to include it in your patch?
Comment 5 Daniel Espinosa 2017-05-06 00:47:42 UTC
I've pushed your work to repository. Made some additional changes and would like to see if i18n can be ported to Meson too.

I keep this bug open, because we need to check if ported has been successfully accomplished.
Comment 6 Daniel Espinosa 2017-05-18 23:56:55 UTC
Seems no work remain and now GXml has been ported to Meson.

Thanks for your work.