chiark / gitweb /
Refugees from Catacomb: low-level buffer primitives.
[mLib] / quis.c
CommitLineData
0875b58f 1/* -*-c-*-
2 *
8656dc50 3 * $Id: quis.c,v 1.6 2004/04/08 01:36:13 mdw Exp $
0875b58f 4 *
5 * Setting the program name
6 *
7 * (c) 1998 Straylight/Edgeware
8 */
9
c846879c 10/*----- Licensing notice --------------------------------------------------*
0875b58f 11 *
12 * This file is part of the mLib utilities library.
13 *
14 * mLib is free software; you can redistribute it and/or modify
c846879c 15 * it under the terms of the GNU Library General Public License as
16 * published by the Free Software Foundation; either version 2 of the
17 * License, or (at your option) any later version.
18 *
0875b58f 19 * mLib is distributed in the hope that it will be useful,
20 * but WITHOUT ANY WARRANTY; without even the implied warranty of
21 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
c846879c 22 * GNU Library General Public License for more details.
23 *
24 * You should have received a copy of the GNU Library General Public
0bd98442 25 * License along with mLib; if not, write to the Free
26 * Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,
27 * MA 02111-1307, USA.
0875b58f 28 */
29
0875b58f 30/*----- Header files ------------------------------------------------------*/
31
32#include <stdarg.h>
33#include <stdio.h>
34#include <stdlib.h>
35#include <string.h>
36
37#include "quis.h"
38
39/*----- Global variables --------------------------------------------------*/
40
41const char *pn__name = "<UNNAMED>"; /* Program name */
42
43/*----- Functions provided ------------------------------------------------*/
44
45/* --- @quis@ --- *
46 *
47 * Arguments: ---
48 *
49 * Returns: Pointer to the program name.
50 *
51 * Use: Returns the program name.
52 */
53
54const char *quis(void) { return (QUIS); }
55
56/* --- @ego@ --- *
57 *
58 * Arguments: @const char *p@ = pointer to program name
59 *
60 * Returns: ---
61 *
62 * Use: Tells mLib what the program's name is.
63 */
64
65#ifndef PATHSEP
66# if defined(__riscos)
67# define PATHSEP '.'
68# elif defined(__unix) || defined(unix)
69# define PATHSEP '/'
70# else
71# define PATHSEP '\\'
72# endif
73#endif
74
75void ego(const char *p)
76{
77 const char *q = p;
78 while (*q) {
79 if (*q++ == PATHSEP)
80 p = q;
81 }
1c66031e 82 if (*p == '-')
83 p++;
0875b58f 84 pn__name = p;
85}
86
f826a458 87#undef PATHSEP
88
0875b58f 89/*----- That's all, folks -------------------------------------------------*/