1 | /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
|
---|
2 | /* ***** BEGIN LICENSE BLOCK *****
|
---|
3 | * Version: MPL 1.1/GPL 2.0/LGPL 2.1
|
---|
4 | *
|
---|
5 | * The contents of this file are subject to the Mozilla Public License Version
|
---|
6 | * 1.1 (the "License"); you may not use this file except in compliance with
|
---|
7 | * the License. You may obtain a copy of the License at
|
---|
8 | * http://www.mozilla.org/MPL/
|
---|
9 | *
|
---|
10 | * Software distributed under the License is distributed on an "AS IS" basis,
|
---|
11 | * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
|
---|
12 | * for the specific language governing rights and limitations under the
|
---|
13 | * License.
|
---|
14 | *
|
---|
15 | * The Original Code is the Netscape Portable Runtime (NSPR).
|
---|
16 | *
|
---|
17 | * The Initial Developer of the Original Code is
|
---|
18 | * Netscape Communications Corporation.
|
---|
19 | * Portions created by the Initial Developer are Copyright (C) 1998-2000
|
---|
20 | * the Initial Developer. All Rights Reserved.
|
---|
21 | *
|
---|
22 | * Contributor(s):
|
---|
23 | *
|
---|
24 | * Alternatively, the contents of this file may be used under the terms of
|
---|
25 | * either the GNU General Public License Version 2 or later (the "GPL"), or
|
---|
26 | * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
|
---|
27 | * in which case the provisions of the GPL or the LGPL are applicable instead
|
---|
28 | * of those above. If you wish to allow use of your version of this file only
|
---|
29 | * under the terms of either the GPL or the LGPL, and not to allow others to
|
---|
30 | * use your version of this file under the terms of the MPL, indicate your
|
---|
31 | * decision by deleting the provisions above and replace them with the notice
|
---|
32 | * and other provisions required by the GPL or the LGPL. If you do not delete
|
---|
33 | * the provisions above, a recipient may use your version of this file under
|
---|
34 | * the terms of any one of the MPL, the GPL or the LGPL.
|
---|
35 | *
|
---|
36 | * ***** END LICENSE BLOCK ***** */
|
---|
37 |
|
---|
38 | #include "prinit.h"
|
---|
39 | #include "prvrsion.h"
|
---|
40 |
|
---|
41 | /************************************************************************/
|
---|
42 | /**************************IDENTITY AND VERSIONING***********************/
|
---|
43 | /************************************************************************/
|
---|
44 | #include "_pl_bld.h"
|
---|
45 | #if !defined(_BUILD_TIME)
|
---|
46 | #ifdef HAVE_LONG_LONG
|
---|
47 | #define _BUILD_TIME 0
|
---|
48 | #else
|
---|
49 | #define _BUILD_TIME {0, 0}
|
---|
50 | #endif
|
---|
51 | #endif
|
---|
52 | #if !defined(_BUILD_STRING)
|
---|
53 | #define _BUILD_STRING ""
|
---|
54 | #endif
|
---|
55 | #if !defined(_PRODUCTION)
|
---|
56 | #define _PRODUCTION ""
|
---|
57 | #endif
|
---|
58 | #if defined(DEBUG)
|
---|
59 | #define _DEBUG_STRING " (debug)"
|
---|
60 | #else
|
---|
61 | #define _DEBUG_STRING ""
|
---|
62 | #endif
|
---|
63 |
|
---|
64 | /*
|
---|
65 | * A trick to expand the PR_VMAJOR macro before concatenation.
|
---|
66 | */
|
---|
67 | #define CONCAT(x, y) x ## y
|
---|
68 | #define CONCAT2(x, y) CONCAT(x, y)
|
---|
69 | #define VERSION_DESC_NAME CONCAT2(prVersionDescription_libprstrms, PR_VMAJOR)
|
---|
70 |
|
---|
71 | PRVersionDescription VERSION_DESC_NAME =
|
---|
72 | {
|
---|
73 | /* version */ 2, /* this is the only one supported */
|
---|
74 | /* buildTime */ _BUILD_TIME, /* usecs since midnight 1/1/1970 GMT */
|
---|
75 | /* buildTimeString */ _BUILD_STRING, /* ditto, but human readable */
|
---|
76 | /* vMajor */ PR_VMAJOR, /* NSPR's version number */
|
---|
77 | /* vMinor */ PR_VMINOR, /* and minor version */
|
---|
78 | /* vPatch */ PR_VPATCH, /* and patch */
|
---|
79 | /* beta */ PR_BETA, /* beta build boolean */
|
---|
80 | #if defined(DEBUG)
|
---|
81 | /* debug */ PR_TRUE, /* a debug build */
|
---|
82 | #else
|
---|
83 | /* debug */ PR_FALSE, /* an optomized build */
|
---|
84 | #endif
|
---|
85 | /* special */ PR_FALSE, /* they're all special, but ... */
|
---|
86 | /* filename */ _PRODUCTION, /* the produced library name */
|
---|
87 | /* description */ "Portable runtime", /* what we are */
|
---|
88 | /* security */ "N/A", /* not applicable here */
|
---|
89 | /* copywrite */ "Copyright (c) 1998 Netscape Communications Corporation. All Rights Reserved",
|
---|
90 | /* comment */ "http://www.mozilla.org/MPL/",
|
---|
91 | /* specialString */ ""
|
---|
92 | };
|
---|
93 |
|
---|
94 | #ifdef XP_UNIX
|
---|
95 |
|
---|
96 | /*
|
---|
97 | * Version information for the 'ident' and 'what commands
|
---|
98 | *
|
---|
99 | * NOTE: the first component of the concatenated rcsid string
|
---|
100 | * must not end in a '$' to prevent rcs keyword substitution.
|
---|
101 | */
|
---|
102 | static char rcsid[] = "$Header: NSPR " PR_VERSION _DEBUG_STRING
|
---|
103 | " " _BUILD_STRING " $";
|
---|
104 | static char sccsid[] = "@(#)NSPR " PR_VERSION _DEBUG_STRING
|
---|
105 | " " _BUILD_STRING;
|
---|
106 |
|
---|
107 | #endif /* XP_UNIX */
|
---|
108 |
|
---|
109 | PR_IMPLEMENT(const PRVersionDescription*) libVersionPoint()
|
---|
110 | {
|
---|
111 | #ifdef XP_UNIX
|
---|
112 | /*
|
---|
113 | * Add dummy references to rcsid and sccsid to prevent them
|
---|
114 | * from being optimized away as unused variables.
|
---|
115 | */
|
---|
116 | const char *dummy;
|
---|
117 |
|
---|
118 | dummy = rcsid;
|
---|
119 | dummy = sccsid;
|
---|
120 | #endif
|
---|
121 | return &VERSION_DESC_NAME;
|
---|
122 | } /* versionEntryPointType */
|
---|
123 |
|
---|
124 | /* plvrsion.c */
|
---|
125 |
|
---|