[valadoc] doclets/gtkdoc: Fix finding headers and handling of external C files
- From: Luca Bruno <lucabru src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [valadoc] doclets/gtkdoc: Fix finding headers and handling of external C files
- Date: Mon, 2 Aug 2010 22:13:03 +0000 (UTC)
commit f3d9a291c4051551e296314507ddb5a5c1e5922a
Author: Luca Bruno <lethalman88 gmail com>
Date: Mon Aug 2 22:53:42 2010 +0200
doclets/gtkdoc: Fix finding headers and handling of external C files
src/doclets/gtkdoc/doclet.vala | 36 +++++++++++++++++-------------------
src/doclets/gtkdoc/utils.vala | 11 +++++++++++
2 files changed, 28 insertions(+), 19 deletions(-)
---
diff --git a/src/doclets/gtkdoc/doclet.vala b/src/doclets/gtkdoc/doclet.vala
index ae89212..88ac902 100644
--- a/src/doclets/gtkdoc/doclet.vala
+++ b/src/doclets/gtkdoc/doclet.vala
@@ -138,29 +138,27 @@ public class Gtkdoc.Director : Valadoc.Doclet, Object {
return;
}
- string filename;
+ string relative_name;
- while ((filename = dir.read_name()) != null) {
+ while ((relative_name = dir.read_name()) != null) {
+ var filename = Path.build_filename (dirname, relative_name);
if (filename.has_suffix (".h")) {
- var stream = FileStream.open (Path.build_filename (dirname, filename), "r");
- if (stream != null) {
- var line = stream.read_line ();
- if (line != null) {
- if (line.str ("generated by valac") != null) {
- vala_headers += filename;
- } else {
- c_headers += filename;
- }
- }
+ if (is_generated_by_vala (filename)) {
+ vala_headers += filename;
+ } else {
+ c_headers += filename;
}
} else if (filename.has_suffix (".c")) {
- try {
- string contents;
- FileUtils.get_contents (filename, out contents);
- FileUtils.set_contents (Path.build_filename (output_dir, Path.get_basename (filename)), contents);
- } catch (Error e) {
- warning ("GtkDoc: Can't copy %s: %s", filename, e.message);
- return;
+ // copy external C files for documentation
+ if (!is_generated_by_vala (filename)) {
+ try {
+ string contents;
+ FileUtils.get_contents (filename, out contents);
+ FileUtils.set_contents (Path.build_filename (output_dir, Path.get_basename (filename)), contents);
+ } catch (Error e) {
+ warning ("GtkDoc: Can't copy %s: %s", filename, e.message);
+ return;
+ }
}
}
}
diff --git a/src/doclets/gtkdoc/utils.vala b/src/doclets/gtkdoc/utils.vala
index 40f388e..6cf913e 100644
--- a/src/doclets/gtkdoc/utils.vala
+++ b/src/doclets/gtkdoc/utils.vala
@@ -163,6 +163,17 @@ namespace Gtkdoc {
return false;
}
}
+
+ public bool is_generated_by_vala (string filename) {
+ var stream = FileStream.open (filename, "r");
+ if (stream != null) {
+ var line = stream.read_line ();
+ if (line != null) {
+ return line.str ("generated by valac") != null;
+ }
+ }
+ return false;
+ }
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]