1*86d7f5d3SJohn Marino ///////////////////////////////////////////////////////////////////////////////
2*86d7f5d3SJohn Marino //
3*86d7f5d3SJohn Marino /// \file       tuklib_progname.h
4*86d7f5d3SJohn Marino /// \brief      Program name to be displayed in messages
5*86d7f5d3SJohn Marino //
6*86d7f5d3SJohn Marino //  Author:     Lasse Collin
7*86d7f5d3SJohn Marino //
8*86d7f5d3SJohn Marino //  This file has been put into the public domain.
9*86d7f5d3SJohn Marino //  You can do whatever you want with this file.
10*86d7f5d3SJohn Marino //
11*86d7f5d3SJohn Marino ///////////////////////////////////////////////////////////////////////////////
12*86d7f5d3SJohn Marino 
13*86d7f5d3SJohn Marino #ifndef TUKLIB_PROGNAME_H
14*86d7f5d3SJohn Marino #define TUKLIB_PROGNAME_H
15*86d7f5d3SJohn Marino 
16*86d7f5d3SJohn Marino #include "tuklib_common.h"
17*86d7f5d3SJohn Marino #include <errno.h>
18*86d7f5d3SJohn Marino 
19*86d7f5d3SJohn Marino TUKLIB_DECLS_BEGIN
20*86d7f5d3SJohn Marino 
21*86d7f5d3SJohn Marino #if HAVE_DECL_PROGRAM_INVOCATION_NAME
22*86d7f5d3SJohn Marino #	define progname program_invocation_name
23*86d7f5d3SJohn Marino #else
24*86d7f5d3SJohn Marino #	define progname TUKLIB_SYMBOL(tuklib_progname)
25*86d7f5d3SJohn Marino 	extern char *progname;
26*86d7f5d3SJohn Marino #endif
27*86d7f5d3SJohn Marino 
28*86d7f5d3SJohn Marino #define tuklib_progname_init TUKLIB_SYMBOL(tuklib_progname_init)
29*86d7f5d3SJohn Marino extern void tuklib_progname_init(char **argv);
30*86d7f5d3SJohn Marino 
31*86d7f5d3SJohn Marino TUKLIB_DECLS_END
32*86d7f5d3SJohn Marino #endif
33