1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
|
/*
* tclPkgConfig.c --
*
* This file contains the configuration information to
* embed into the tcl binary library.
*
* Copyright (c) 2002 Andreas Kupries <andreas_kupries@users.sourceforge.net>
*
* See the file "license.terms" for information on usage and redistribution
* of this file, and for a DISCLAIMER OF ALL WARRANTIES.
*
* RCS: @(#) $Id: tclPkgConfig.c,v 1.2 2003/06/09 22:48:33 andreas_kupries Exp $
*/
/* Note, the definitions in this module are influenced by the
* following C preprocessor macros:
*
* OSCMa = shortcut for "old style configuration macro activates"
* NSCMdt = shortcut for "new style configuration macro declares that"
*
* - TCL_THREADS OSCMa compilation as threaded core.
* - TCL_MEM_DEBUG OSCMa memory debugging.
* - TCL_COMPILE_DEBUG OSCMa debugging of bytecode compiler.
* - TCL_COMPILE_STATS OSCMa bytecode compiler statistics.
*
* - TCL_CFG_DO64BIT NSCMdt tcl is compiled for a 64bit system.
* - TCL_CFG_DEBUG NSCMdt tcl is compiled with symbol info on.
* - TCL_CFG_OPTIMIZED NSCMdt tcl is compiled with cc optimizations on.
* - TCL_CFG_PROFILED NSCMdt tcl is compiled with profiling info.
*
* - CFG_RUNTIME_* Paths to various stuff at runtime.
* - CFG_INSTALL_* Paths to various stuff at installation time.
*
* - TCL_CFGVAL_ENCODING string containing the encoding used for the
* configuration values.
*/
#include "tclInt.h"
/* Use C preprocessor statements to define the various values for the
* embedded configuration information. */
#ifdef TCL_THREADS
# define CFG_THREADED "1"
#else
# define CFG_THREADED "0"
#endif
#ifdef TCL_MEM_DEBUG
# define CFG_MEMDEBUG "1"
#else
# define CFG_MEMDEBUG "0"
#endif
#ifdef TCL_COMPILE_DEBUG
# define CFG_COMPILE_DEBUG "1"
#else
# define CFG_COMPILE_DEBUG "0"
#endif
#ifdef TCL_COMPILE_STATS
# define CFG_COMPILE_STATS "1"
#else
# define CFG_COMPILE_STATS "0"
#endif
#ifdef TCL_CFG_DO64BIT
# define CFG_64 "1"
#else
# define CFG_64 "0"
#endif
#ifdef TCL_CFG_DEBUG
# define CFG_DEBUG "1"
#else
# define CFG_DEBUG "0"
#endif
#ifdef TCL_CFG_OPTIMIZED
# define CFG_OPTIMIZED "1"
#else
# define CFG_OPTIMIZED "0"
#endif
#ifdef TCL_CFG_PROFILED
# define CFG_PROFILED "1"
#else
# define CFG_PROFILED "0"
#endif
static Tcl_Config cfg [] = {
{"debug", CFG_DEBUG},
{"threaded", CFG_THREADED},
{"profiled", CFG_PROFILED},
{"64bit", CFG_64},
{"optimized", CFG_OPTIMIZED},
{"mem_debug", CFG_MEMDEBUG},
{"compile_debug", CFG_COMPILE_DEBUG},
{"compile_stats", CFG_COMPILE_STATS},
/* Runtime paths to various stuff */
{"libdir,runtime", CFG_RUNTIME_LIBDIR},
{"bindir,runtime", CFG_RUNTIME_BINDIR},
{"scriptdir,runtime", CFG_RUNTIME_SCRDIR},
{"includedir,runtime", CFG_RUNTIME_INCDIR},
{"docdir,runtime", CFG_RUNTIME_DOCDIR},
/* Installation paths to various stuff */
{"libdir,install", CFG_INSTALL_LIBDIR},
{"bindir,install", CFG_INSTALL_BINDIR},
{"scriptdir,install", CFG_INSTALL_SCRDIR},
{"includedir,install", CFG_INSTALL_INCDIR},
{"docdir,install", CFG_INSTALL_DOCDIR},
/* Last entry, closes the array */
{NULL, NULL}
};
void
TclInitEmbeddedConfigurationInformation (interp)
Tcl_Interp* interp; /* Interpreter the configuration
* command is registered in. */
{
Tcl_RegisterConfig (interp, "tcl", cfg, TCL_CFGVAL_ENCODING);
}
|