nsprpub/pr/src/prvrsion.c

changeset 0
6474c204b198
equal deleted inserted replaced
-1:000000000000 0:af017aa7758f
1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
2 /* This Source Code Form is subject to the terms of the Mozilla Public
3 * License, v. 2.0. If a copy of the MPL was not distributed with this
4 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
5
6 #include "prinit.h"
7 #include "prvrsion.h"
8
9 /************************************************************************/
10 /**************************IDENTITY AND VERSIONING***********************/
11 /************************************************************************/
12 #include "_pr_bld.h"
13 #if !defined(_BUILD_TIME)
14 #ifdef HAVE_LONG_LONG
15 #define _BUILD_TIME 0
16 #else
17 #define _BUILD_TIME {0, 0}
18 #endif
19 #endif
20 #if !defined(_BUILD_STRING)
21 #define _BUILD_STRING ""
22 #endif
23 #if !defined(_PRODUCTION)
24 #define _PRODUCTION ""
25 #endif
26 #if defined(DEBUG)
27 #define _DEBUG_STRING " (debug)"
28 #else
29 #define _DEBUG_STRING ""
30 #endif
31
32 /*
33 * A trick to expand the PR_VMAJOR macro before concatenation.
34 */
35 #define CONCAT(x, y) x ## y
36 #define CONCAT2(x, y) CONCAT(x, y)
37 #define VERSION_DESC_NAME CONCAT2(prVersionDescription_libnspr, PR_VMAJOR)
38
39 PRVersionDescription VERSION_DESC_NAME =
40 {
41 /* version */ 2, /* this is the only one supported */
42 /* buildTime */ _BUILD_TIME, /* usecs since midnight 1/1/1970 GMT */
43 /* buildTimeString */ _BUILD_STRING, /* ditto, but human readable */
44 /* vMajor */ PR_VMAJOR, /* NSPR's version number */
45 /* vMinor */ PR_VMINOR, /* and minor version */
46 /* vPatch */ PR_VPATCH, /* and patch */
47 /* beta */ PR_BETA, /* beta build boolean */
48 #if defined(DEBUG)
49 /* debug */ PR_TRUE, /* a debug build */
50 #else
51 /* debug */ PR_FALSE, /* an optomized build */
52 #endif
53 /* special */ PR_FALSE, /* they're all special, but ... */
54 /* filename */ _PRODUCTION, /* the produced library name */
55 /* description */ "Portable runtime", /* what we are */
56 /* security */ "N/A", /* not applicable here */
57 /* copywrite */ "Copyright (c) 1998 Netscape Communications Corporation. All Rights Reserved",
58 /* comment */ "License information: http://www.mozilla.org/MPL/",
59 /* specialString */ ""
60 };
61
62 #ifdef XP_UNIX
63
64 /*
65 * Version information for the 'ident' and 'what commands
66 *
67 * NOTE: the first component of the concatenated rcsid string
68 * must not end in a '$' to prevent rcs keyword substitution.
69 */
70 static char rcsid[] = "$Header: NSPR " PR_VERSION _DEBUG_STRING
71 " " _BUILD_STRING " $";
72 static char sccsid[] = "@(#)NSPR " PR_VERSION _DEBUG_STRING
73 " " _BUILD_STRING;
74
75 #endif /* XP_UNIX */
76
77 PR_IMPLEMENT(const PRVersionDescription*) libVersionPoint(void)
78 {
79 #ifdef XP_UNIX
80 /*
81 * Add dummy references to rcsid and sccsid to prevent them
82 * from being optimized away as unused variables.
83 */
84 const char *dummy;
85
86 dummy = rcsid;
87 dummy = sccsid;
88 #endif
89 return &VERSION_DESC_NAME;
90 } /* versionEntryPointType */
91
92 /* prvrsion.c */
93

mercurial