summaryrefslogtreecommitdiffstats
path: root/tools
diff options
context:
space:
mode:
Diffstat (limited to 'tools')
-rw-r--r--tools/wixl/builder.vala7
-rw-r--r--tools/wixl/wix.vala19
2 files changed, 26 insertions, 0 deletions
diff --git a/tools/wixl/builder.vala b/tools/wixl/builder.vala
index a7405ad..b57cac8 100644
--- a/tools/wixl/builder.vala
+++ b/tools/wixl/builder.vala
@@ -1031,6 +1031,13 @@ namespace Wixl {
db.table_custom_action.add (action.Id, type, action.Property, action.ExeCommand);
}
+
+ public override void visit_binary (WixBinary binary) throws GLib.Error {
+ FileInfo info;
+
+ binary.file = find_file (binary.SourceFile, out info);
+ db.table_binary.add (binary.Id, binary.file.get_path ());
+ }
}
} // Wixl
diff --git a/tools/wixl/wix.vala b/tools/wixl/wix.vala
index 52ec667..717062b 100644
--- a/tools/wixl/wix.vala
+++ b/tools/wixl/wix.vala
@@ -63,6 +63,7 @@ namespace Wixl {
public abstract void visit_service_install (WixServiceInstall service_install, VisitState state) throws GLib.Error;
public abstract void visit_registry_search (WixRegistrySearch search) throws GLib.Error;
public abstract void visit_custom_action (WixCustomAction action) throws GLib.Error;
+ public abstract void visit_binary (WixBinary binary) throws GLib.Error;
}
public abstract class WixNode: Object {
@@ -912,12 +913,29 @@ namespace Wixl {
public string ExeCommand { get; set; }
public string Impersonate { get; set; }
public string Return { get; set; }
+ public string BinaryKey { get; set; }
+ public string DllEntry { get; set; }
+ public string HideTarget { get; set; }
public override void accept (WixNodeVisitor visitor) throws GLib.Error {
visitor.visit_custom_action (this);
}
}
+ public class WixBinary: WixElement {
+ static construct {
+ name = "Binary";
+ }
+
+ public string SourceFile { get; set; }
+
+ public File file;
+
+ public override void accept (WixNodeVisitor visitor) throws GLib.Error {
+ visitor.visit_binary (this);
+ }
+ }
+
public class WixProduct: WixElement {
static construct {
name = "Product";
@@ -938,6 +956,7 @@ namespace Wixl {
typeof (WixProperty),
typeof (WixUpgrade),
typeof (WixCustomAction),
+ typeof (WixBinary),
});
}