]> git.ipfire.org Git - thirdparty/vala.git/commitdiff
add bindings for g_get_system_*_dirs
authorJuerg Billeter <j@bitron.ch>
Sun, 2 Mar 2008 11:09:09 +0000 (11:09 +0000)
committerJürg Billeter <juergbi@src.gnome.org>
Sun, 2 Mar 2008 11:09:09 +0000 (11:09 +0000)
2008-03-02  Juerg Billeter  <j@bitron.ch>

* vapi/glib-2.0.vapi: add bindings for g_get_system_*_dirs

* vala/valacodecontext.vala: use g_get_system_data_dirs to find
  VAPI files, should make valac relocatable on Windows

svn path=/trunk/; revision=1083

ChangeLog
vala/valacodecontext.vala
vapi/glib-2.0.vapi

index 138ffb730809ee80bc18e58ee7d9fdf2837a62b4..78b29139886bcdf839790da60795dc34b5b10600 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2008-03-02  Jürg Billeter  <j@bitron.ch>
+
+       * vapi/glib-2.0.vapi: add bindings for g_get_system_*_dirs
+
+       * vala/valacodecontext.vala: use g_get_system_data_dirs to find
+         VAPI files, should make valac relocatable on Windows
+
 2008-03-02  Jürg Billeter  <j@bitron.ch>
 
        * vapi/glib-2.0.vapi: add dir separator bindings,
index 3f1f5c05aed7eb50ceaf5539c7f4b6eab8cf2d1e..241c74d0a72799c43cb4dc59dfeda680038c9914 100644 (file)
@@ -402,14 +402,11 @@ public class Vala.CodeContext : Object {
                        return filename;
                }
 
-               filename = Path.build_filename ("/usr/local/share/vala/vapi", basename);
-               if (FileUtils.test (filename, FileTest.EXISTS)) {
-                       return filename;
-               }
-
-               filename = Path.build_filename ("/usr/share/vala/vapi", basename);
-               if (FileUtils.test (filename, FileTest.EXISTS)) {
-                       return filename;
+               foreach (string vapidir in Environment.get_system_data_dirs ()) {
+                       var filename = Path.build_filename (vapidir, "vala/vapi", basename);
+                       if (FileUtils.test (filename, FileTest.EXISTS)) {
+                               return filename;
+                       }
                }
 
                return null;
index 1107feecd38d32115798d696803529d2b1cbb1b3..a2862c23ea54b9f69dd5e9e667f60c4bfb8ad0fb 100644 (file)
@@ -1672,6 +1672,10 @@ namespace GLib {
                public static weak string get_user_name ();
                [CCode (cname = "g_get_user_data_dir")]
                public static weak string get_user_data_dir ();
+               [CCode (cname = "g_get_system_data_dirs"), NoArrayLength]
+               public static weak string[] get_system_data_dirs ();
+               [CCode (cname = "g_get_system_config_dirs"), NoArrayLength]
+               public static weak string[] get_system_config_dirs ();
                [CCode (cname = "g_get_host_name")]
                public static weak string! get_host_name ();
                [CCode (cname = "g_get_home_dir")]