Annotation of embedaddon/libiconv/srclib/progname.h, revision 1.1.1.3
1.1 misho 1: /* Program name management.
1.1.1.3 ! misho 2: Copyright (C) 2001-2004, 2006, 2009-2019 Free Software Foundation, Inc.
1.1.1.2 misho 3: Written by Bruno Haible <bruno@clisp.org>, 2001.
1.1 misho 4:
5: This program is free software: you can redistribute it and/or modify
6: it under the terms of the GNU General Public License as published by
7: the Free Software Foundation; either version 3 of the License, or
8: (at your option) any later version.
9:
10: This program is distributed in the hope that it will be useful,
11: but WITHOUT ANY WARRANTY; without even the implied warranty of
12: MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13: GNU General Public License for more details.
14:
15: You should have received a copy of the GNU General Public License
1.1.1.3 ! misho 16: along with this program. If not, see <https://www.gnu.org/licenses/>. */
1.1 misho 17:
18: #ifndef _PROGNAME_H
19: #define _PROGNAME_H
20:
21: /* Programs using this file should do the following in main():
22: set_program_name (argv[0]);
23: */
24:
25:
26: #ifdef __cplusplus
27: extern "C" {
28: #endif
29:
30:
31: /* String containing name the program is called with. */
32: extern DLL_VARIABLE const char *program_name;
33:
1.1.1.2 misho 34: /* Set program_name, based on argv[0].
35: argv0 must be a string allocated with indefinite extent, and must not be
36: modified after this call. */
1.1 misho 37: extern void set_program_name (const char *argv0);
38:
39: #if ENABLE_RELOCATABLE
40:
41: /* Set program_name, based on argv[0], and original installation prefix and
42: directory, for relocatability. */
43: extern void set_program_name_and_installdir (const char *argv0,
1.1.1.2 misho 44: const char *orig_installprefix,
45: const char *orig_installdir);
1.1 misho 46: #undef set_program_name
47: #define set_program_name(ARG0) \
48: set_program_name_and_installdir (ARG0, INSTALLPREFIX, INSTALLDIR)
49:
50: /* Return the full pathname of the current executable, based on the earlier
51: call to set_program_name_and_installdir. Return NULL if unknown. */
52: extern char *get_full_program_name (void);
53:
54: #endif
55:
56:
57: #ifdef __cplusplus
58: }
59: #endif
60:
61:
62: #endif /* _PROGNAME_H */
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>