[vala/switch-to-gir: 8/34] girparser: Parse included GIR files
- From: Luca Bruno <lucabru src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [vala/switch-to-gir: 8/34] girparser: Parse included GIR files
- Date: Sun, 29 Aug 2010 16:20:23 +0000 (UTC)
commit e782e115e98e16dcb60cb9a430d91c9236362cec
Author: Luca Bruno <lethalman88 gmail com>
Date: Mon Aug 23 22:05:33 2010 +0200
girparser: Parse included GIR files
vala/valagirparser.vala | 7 +++++++
vapigen/valavapigen.vala | 6 ++++--
2 files changed, 11 insertions(+), 2 deletions(-)
---
diff --git a/vala/valagirparser.vala b/vala/valagirparser.vala
index a258d84..2a232d9 100644
--- a/vala/valagirparser.vala
+++ b/vala/valagirparser.vala
@@ -162,6 +162,13 @@ public class Vala.GirParser : CodeVisitor {
void parse_include () {
start_element ("include");
+ var pkg = reader.get_attribute ("name");
+ var version = reader.get_attribute ("version");
+ if (version != null) {
+ pkg = "%s-%s".printf (pkg, version);
+ }
+ // add the package to the queue
+ context.add_external_package (pkg);
next ();
end_element ("include");
}
diff --git a/vapigen/valavapigen.vala b/vapigen/valavapigen.vala
index 8dc9d0a..e339192 100644
--- a/vapigen/valavapigen.vala
+++ b/vapigen/valavapigen.vala
@@ -122,7 +122,6 @@ class Vala.VAPIGen : Object {
Report.error (null, "%s not found".printf (source));
}
}
- sources = null;
if (context.report.get_errors () > 0) {
return quit ();
@@ -165,7 +164,10 @@ class Vala.VAPIGen : Object {
// interface writer ignores external packages
foreach (SourceFile file in context.get_source_files ()) {
- if (!file.filename.has_suffix (".vapi")) {
+ if (file.filename.has_suffix (".vapi")) {
+ continue;
+ }
+ if (file.filename in sources) {
file.external_package = false;
}
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]