GNUnet 0.21.1
GNUNET_OS_ProjectData Struct Reference

Project-specific data used to help the OS subsystem find installation paths. More...

#include <gnunet_os_lib.h>

Data Fields

const char * libname
 Name of a library that is installed in the "lib/" directory of the project, such as "libgnunetutil". More...
 
const char * project_dirname
 Name of the project that is used in the "libexec" prefix, For example, "gnunet". More...
 
const char * binary_name
 Name of a project-specific binary that should be in "$PREFIX/bin/". More...
 
const char * env_varname
 Name of an environment variable that can be used to override installation path detection, for example "GNUNET_PREFIX". More...
 
const char * env_varname_alt
 Alternative name of an environment variable that can be used to override installation path detection, if "env_varname" is not set. More...
 
const char * base_config_varname
 Name of an environment variable that can be used to override the location from which default configuration files are loaded from, for example "GNUNET_BASE_CONFIG". More...
 
const char * bug_email
 E-mail address for reporting bugs. More...
 
const char * homepage
 Project homepage. More...
 
const char * config_file
 Configuration file name (in $XDG_CONFIG_HOME) to use. More...
 
const char * user_config_file
 Configuration file name to use (if $XDG_CONFIG_HOME is not set). More...
 
const char * version
 String identifying the current project version. More...
 
int is_gnu
 Non-zero means this project is part of GNU. More...
 
char * gettext_domain
 Gettext domain for localisation, e.g. More...
 
char * gettext_path
 Gettext directory, e.g. More...
 
char * agpl_url
 URL pointing to the source code of the application. More...
 

Detailed Description

Project-specific data used to help the OS subsystem find installation paths.

Definition at line 214 of file gnunet_os_lib.h.

Field Documentation

◆ libname

const char* GNUNET_OS_ProjectData::libname

Name of a library that is installed in the "lib/" directory of the project, such as "libgnunetutil".

Used to locate the installation by scanning dependencies of the current process.

Definition at line 221 of file gnunet_os_lib.h.

Referenced by GNUNET_DATACACHE_create().

◆ project_dirname

const char* GNUNET_OS_ProjectData::project_dirname

Name of the project that is used in the "libexec" prefix, For example, "gnunet".

Certain helper binaries are then expected to be installed in "$PREFIX/libexec/gnunet/" and resources in "$PREFIX/share/gnunet/".

Definition at line 229 of file gnunet_os_lib.h.

Referenced by GNUNET_CONFIGURATION_default(), GNUNET_CONFIGURATION_default_filename(), GNUNET_OS_installation_get_path(), and os_get_gnunet_path().

◆ binary_name

const char* GNUNET_OS_ProjectData::binary_name

Name of a project-specific binary that should be in "$PREFIX/bin/".

Used to determine installation path from $PATH variable. For example "gnunet-arm". On W32, ".exe" should be omitted.

Definition at line 236 of file gnunet_os_lib.h.

Referenced by os_get_gnunet_path().

◆ env_varname

const char* GNUNET_OS_ProjectData::env_varname

Name of an environment variable that can be used to override installation path detection, for example "GNUNET_PREFIX".

Definition at line 242 of file gnunet_os_lib.h.

Referenced by get_path_from_GNUNET_PREFIX(), and os_get_gnunet_path().

◆ env_varname_alt

const char* GNUNET_OS_ProjectData::env_varname_alt

Alternative name of an environment variable that can be used to override installation path detection, if "env_varname" is not set.

Again, for example, "GNUNET_PREFIX".

Definition at line 249 of file gnunet_os_lib.h.

Referenced by get_path_from_GNUNET_PREFIX().

◆ base_config_varname

const char* GNUNET_OS_ProjectData::base_config_varname

Name of an environment variable that can be used to override the location from which default configuration files are loaded from, for example "GNUNET_BASE_CONFIG".

Definition at line 256 of file gnunet_os_lib.h.

Referenced by GNUNET_CONFIGURATION_load().

◆ bug_email

const char* GNUNET_OS_ProjectData::bug_email

E-mail address for reporting bugs.

Definition at line 261 of file gnunet_os_lib.h.

Referenced by format_help().

◆ homepage

const char* GNUNET_OS_ProjectData::homepage

Project homepage.

Definition at line 266 of file gnunet_os_lib.h.

Referenced by format_help().

◆ config_file

const char* GNUNET_OS_ProjectData::config_file

Configuration file name (in $XDG_CONFIG_HOME) to use.

Definition at line 271 of file gnunet_os_lib.h.

Referenced by GNUNET_CONFIGURATION_default(), GNUNET_CONFIGURATION_default_filename(), GNUNET_PROGRAM_run2(), GNUNET_SERVICE_main(), and GNUNET_SERVICE_run_().

◆ user_config_file

const char* GNUNET_OS_ProjectData::user_config_file

Configuration file name to use (if $XDG_CONFIG_HOME is not set).

Definition at line 276 of file gnunet_os_lib.h.

Referenced by GNUNET_CONFIGURATION_default(), GNUNET_CONFIGURATION_default_filename(), GNUNET_PROGRAM_run2(), GNUNET_SERVICE_main(), and GNUNET_SERVICE_run_().

◆ version

const char* GNUNET_OS_ProjectData::version

String identifying the current project version.

Definition at line 281 of file gnunet_os_lib.h.

Referenced by GNUNET_PROGRAM_run2(), GNUNET_SERVICE_main(), and GNUNET_SERVICE_run_().

◆ is_gnu

int GNUNET_OS_ProjectData::is_gnu

Non-zero means this project is part of GNU.

Definition at line 286 of file gnunet_os_lib.h.

Referenced by format_help().

◆ gettext_domain

char* GNUNET_OS_ProjectData::gettext_domain

Gettext domain for localisation, e.g.

the PACKAGE macro. Setting this field to NULL disables gettext.

Definition at line 292 of file gnunet_os_lib.h.

Referenced by GNUNET_PROGRAM_run2(), and GNUNET_SERVICE_run_().

◆ gettext_path

char* GNUNET_OS_ProjectData::gettext_path

Gettext directory, e.g.

the LOCALEDIR macro. If this field is NULL, the path is automatically inferred.

Definition at line 298 of file gnunet_os_lib.h.

Referenced by GNUNET_PROGRAM_run2(), and GNUNET_SERVICE_run_().

◆ agpl_url

char* GNUNET_OS_ProjectData::agpl_url

URL pointing to the source code of the application.

Required for AGPL. Setting this to NULL disables the built-in mechanism, but you must provide it in some other way. If non-NULL, message type 1 and 2 are reserved.

Definition at line 306 of file gnunet_os_lib.h.

Referenced by GNUNET_CADET_open_port(), GNUNET_SERVICE_register_(), GNUNET_SERVICE_run_(), and return_agpl().


The documentation for this struct was generated from the following file: