diff --git a/contrib/subprojects/dxml.wrap b/contrib/subprojects/dxml.wrap new file mode 100644 index 0000000..639e9cd --- /dev/null +++ b/contrib/subprojects/dxml.wrap @@ -0,0 +1,5 @@ +[wrap-git] +directory = dxml +url = https://github.com/ximion/dxml.git +revision = master +depth = 1 diff --git a/meson.build b/meson.build index 3c8dc92..8207b9e 100644 --- a/meson.build +++ b/meson.build @@ -25,6 +25,11 @@ lmdb_dep = dependency('lmdb', version : '>= 0.9.22') archive_dep = dependency('libarchive', version : '>= 3.2') curl_dep = dependency('libcurl') +dxml_dep = dependency('', required: false) +if get_option('rpmmd') + dxml_dep = dependency('dxml', fallback: ['dxml', 'dxml_dep']) +endif + # # Build interfaces from GIR # diff --git a/src/asgen/backends/rpmmd/rpmpkgindex.d b/src/asgen/backends/rpmmd/rpmpkgindex.d index 3d85104..3e8e989 100644 --- a/src/asgen/backends/rpmmd/rpmpkgindex.d +++ b/src/asgen/backends/rpmmd/rpmpkgindex.d @@ -25,7 +25,7 @@ import std.array : appender, empty; import std.string : format; import std.algorithm : canFind, endsWith; import std.conv : to; -import std.xml; +import dxml.parser : parseXML; static import std.file; import asgen.logging; diff --git a/src/asgen/meson.build b/src/asgen/meson.build index 1d69af1..9d7136c 100644 --- a/src/asgen/meson.build +++ b/src/asgen/meson.build @@ -91,7 +91,8 @@ asgen_exe = executable('appstream-generator', ascompose_dep, lmdb_dep, archive_dep, - curl_dep], + curl_dep, + dxml_dep], link_with: [girbind_lib], d_import_dirs: [data_import_dirs], install: true @@ -107,7 +108,8 @@ asgen_test_exe = executable('asgen_test', ascompose_dep, lmdb_dep, archive_dep, - curl_dep], + curl_dep, + dxml_dep], link_with: [girbind_lib], d_import_dirs: [data_import_dirs], d_unittest: true