Blender  V3.3
Macros | Typedefs | Functions
wayland_dynload_utils.h File Reference
#include <dlfcn.h>
#include <stdbool.h>

Go to the source code of this file.

Macros

#define dynamic_library_open(path)   dlopen(path, RTLD_NOW)
 
#define dynamic_library_close(lib)   dlclose(lib)
 
#define dynamic_library_find(lib, symbol)   dlsym(lib, symbol)
 

Typedefs

typedef voidDynamicLibrary
 

Functions

DynamicLibrary dynamic_library_open_array_with_error (const char **paths, int paths_num, bool verbose, int *r_path_index)
 
voiddynamic_library_find_with_error (DynamicLibrary lib, const char *symbol, const char *path_lib)
 

Detailed Description

Utility defines.

Definition in file wayland_dynload_utils.h.

Macro Definition Documentation

◆ dynamic_library_close

#define dynamic_library_close (   lib)    dlclose(lib)

Definition at line 17 of file wayland_dynload_utils.h.

◆ dynamic_library_find

#define dynamic_library_find (   lib,
  symbol 
)    dlsym(lib, symbol)

Definition at line 18 of file wayland_dynload_utils.h.

◆ dynamic_library_open

#define dynamic_library_open (   path)    dlopen(path, RTLD_NOW)

Definition at line 16 of file wayland_dynload_utils.h.

Typedef Documentation

◆ DynamicLibrary

typedef void* DynamicLibrary

Definition at line 14 of file wayland_dynload_utils.h.

Function Documentation

◆ dynamic_library_find_with_error()

void* dynamic_library_find_with_error ( DynamicLibrary  lib,
const char *  symbol,
const char *  path_lib 
)

Find a symbol, printing an error when the symbol isn't found.

Definition at line 33 of file wayland_dynload_utils.c.

References dynamic_library_find, lib, and NULL.

◆ dynamic_library_open_array_with_error()

DynamicLibrary dynamic_library_open_array_with_error ( const char **  paths,
int  paths_num,
bool  verbose,
int *  r_path_index 
)

Loads a library from an array, printing an error when the symbol isn't found.

Definition at line 11 of file wayland_dynload_utils.c.

References Freestyle::a, dynamic_library_open, lib, NULL, and verbose.

Referenced by wayland_dynload_client_init(), wayland_dynload_cursor_init(), wayland_dynload_egl_init(), and wayland_dynload_libdecor_init().