private string directory;
private string gir_namespace;
private string gir_version;
+ private string gir_shared_library;
protected virtual string? get_interface_comment (Interface iface) {
return null;
* @param context a code context
* @param filename a relative or absolute filename
*/
- public void write_file (CodeContext context, string directory, string gir_filename, string gir_namespace, string gir_version, string package) {
+ public void write_file (CodeContext context, string directory, string gir_filename, string gir_namespace, string gir_version, string package, string? gir_shared_library) {
this.context = context;
this.directory = directory;
this.gir_namespace = gir_namespace;
this.gir_version = gir_version;
+ this.gir_shared_library = gir_shared_library;
var root_symbol = context.root;
var glib_ns = root_symbol.scope.lookup ("GLib");
write_indent ();
buffer.append_printf ("<namespace name=\"%s\" version=\"%s\"", gir_namespace, gir_version);
string? cprefix = CCodeBaseModule.get_ccode_prefix (ns);
+ if (gir_shared_library != null) {
+ buffer.append_printf(" shared-library=\"%s\"", gir_shared_library);
+ }
if (cprefix != null) {
buffer.append_printf (" c:prefix=\"%s\"", cprefix);
}
static string[] metadata_directories;
static string vapi_filename;
static string library;
+ static string shared_library;
static string gir;
[CCode (array_length = false, array_null_terminated = true)]
static string[] packages;
{ "pkg", 0, 0, OptionArg.STRING_ARRAY, ref packages, "Include binding for PACKAGE", "PACKAGE..." },
{ "vapi", 0, 0, OptionArg.FILENAME, ref vapi_filename, "Output VAPI file name", "FILE" },
{ "library", 0, 0, OptionArg.STRING, ref library, "Library name", "NAME" },
+ { "shared-library", 0, 0, OptionArg.STRING, ref shared_library, "Shared library name used in generated gir", "NAME" },
{ "gir", 0, 0, OptionArg.STRING, ref gir, "GObject-Introspection repository file name", "NAME-VERSION.gir" },
{ "basedir", 'b', 0, OptionArg.FILENAME, ref basedir, "Base source directory", "DIRECTORY" },
{ "directory", 'd', 0, OptionArg.FILENAME, ref directory, "Output directory", "DIRECTORY" },
gir_directory = context.directory;
}
- gir_writer.write_file (context, gir_directory, gir, gir_namespace, gir_version, library);
+ gir_writer.write_file (context, gir_directory, gir, gir_namespace, gir_version, library, shared_library);
}
}