mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-10-14 21:16:33 +02:00

Added DLL name and entry point name to the external clause. We constrained the units version to Bullseye (Debian 11.6) shipped libraries. They were generated using le following command: ```sh gir2pas -P Laz -e Set -i /usr/share/gir-1.0/Gtk-3.0.gir -o gtk3-test-2 \ -M atk-2.36 \ -M pango-1.16 \ -M pangocairo-1.46 \ -M glib-2.66 \ -M gio-2.66 \ -M gmodule-2.66 \ -M gobject-2.66 \ -M gtk-3.24 ``` Some files are still modified manually.
111 lines
3.4 KiB
ObjectPascal
111 lines
3.4 KiB
ObjectPascal
{ This is an autogenerated unit using gobject introspection (gir2pascal). Do not Edit. }
|
|
unit LazGModule2;
|
|
|
|
{$MODE OBJFPC}{$H+}
|
|
|
|
{$PACKRECORDS C}
|
|
{$MODESWITCH DUPLICATELOCALS+}
|
|
|
|
{$ifdef Unix}
|
|
{$LINKLIB libgmodule-2.0.so.0}
|
|
{$endif}
|
|
interface
|
|
uses
|
|
CTypes, LazGLib2;
|
|
|
|
const
|
|
{$ifdef MsWindows}
|
|
LazGModule2_library = 'libgmodule-2.0.so.dll';
|
|
{$else}
|
|
LazGModule2_library = 'libgmodule-2.0.so.0';
|
|
{$endif}
|
|
|
|
type
|
|
TGModuleFlagsIdx = (
|
|
TGModuleFlagsIdxMinValue = 0,
|
|
G_MODULE_BIND_LAZY = 0,
|
|
G_MODULE_BIND_LOCAL = 1,
|
|
TGModuleFlagsIdxMaxValue = 31
|
|
);
|
|
TGModuleFlags = Set of TGModuleFlagsIdx;
|
|
const
|
|
G_MODULE_BIND_MASK = [
|
|
G_MODULE_BIND_LAZY,
|
|
G_MODULE_BIND_LOCAL
|
|
]; {3 = $00000003}
|
|
|
|
type
|
|
|
|
|
|
{ TGModule }
|
|
PPGModule = ^PGModule;
|
|
PGModule = ^TGModule;
|
|
|
|
|
|
{ TGModuleFlags }
|
|
PPGModuleFlags = ^PGModuleFlags;
|
|
PGModuleFlags = ^TGModuleFlags;
|
|
TGModule = object
|
|
function close: gboolean; cdecl; inline;
|
|
procedure make_resident; cdecl; inline;
|
|
function name: Pgchar; cdecl; inline;
|
|
function symbol(symbol_name: Pgchar; symbol: Pgpointer): gboolean; cdecl; inline;
|
|
function build_path(directory: Pgchar; module_name: Pgchar): Pgchar; cdecl; inline; static;
|
|
function error: Pgchar; cdecl; inline; static;
|
|
function open(file_name: Pgchar; flags: TGModuleFlags): PGModule; cdecl; inline; static;
|
|
function supported: gboolean; cdecl; inline; static;
|
|
end;
|
|
TGModuleCheckInit = function(module: PGModule): Pgchar; cdecl;
|
|
TGModuleUnload = procedure(module: PGModule); cdecl;
|
|
|
|
function g_module_build_path(directory: Pgchar; module_name: Pgchar): Pgchar; cdecl; external LazGModule2_library name 'g_module_build_path';
|
|
function g_module_close(module: PGModule): gboolean; cdecl; external LazGModule2_library name 'g_module_close';
|
|
function g_module_error: Pgchar; cdecl; external LazGModule2_library name 'g_module_error';
|
|
function g_module_name(module: PGModule): Pgchar; cdecl; external LazGModule2_library name 'g_module_name';
|
|
function g_module_open(file_name: Pgchar; flags: TGModuleFlags): PGModule; cdecl; external LazGModule2_library name 'g_module_open';
|
|
function g_module_supported: gboolean; cdecl; external LazGModule2_library name 'g_module_supported';
|
|
function g_module_symbol(module: PGModule; symbol_name: Pgchar; symbol: Pgpointer): gboolean; cdecl; external LazGModule2_library name 'g_module_symbol';
|
|
procedure g_module_make_resident(module: PGModule); cdecl; external LazGModule2_library name 'g_module_make_resident';
|
|
implementation
|
|
function TGModule.close: gboolean; cdecl;
|
|
begin
|
|
Result := LazGModule2.g_module_close(@self);
|
|
end;
|
|
|
|
procedure TGModule.make_resident; cdecl;
|
|
begin
|
|
LazGModule2.g_module_make_resident(@self);
|
|
end;
|
|
|
|
function TGModule.name: Pgchar; cdecl;
|
|
begin
|
|
Result := LazGModule2.g_module_name(@self);
|
|
end;
|
|
|
|
function TGModule.symbol(symbol_name: Pgchar; symbol: Pgpointer): gboolean; cdecl;
|
|
begin
|
|
Result := LazGModule2.g_module_symbol(@self, symbol_name, symbol);
|
|
end;
|
|
|
|
function TGModule.build_path(directory: Pgchar; module_name: Pgchar): Pgchar; cdecl;
|
|
begin
|
|
Result := LazGModule2.g_module_build_path(directory, module_name);
|
|
end;
|
|
|
|
function TGModule.error: Pgchar; cdecl;
|
|
begin
|
|
Result := LazGModule2.g_module_error();
|
|
end;
|
|
|
|
function TGModule.open(file_name: Pgchar; flags: TGModuleFlags): PGModule; cdecl;
|
|
begin
|
|
Result := LazGModule2.g_module_open(file_name, flags);
|
|
end;
|
|
|
|
function TGModule.supported: gboolean; cdecl;
|
|
begin
|
|
Result := LazGModule2.g_module_supported();
|
|
end;
|
|
|
|
end.
|