summaryrefslogtreecommitdiff
path: root/config_h.SH
diff options
context:
space:
mode:
Diffstat (limited to 'config_h.SH')
-rw-r--r--config_h.SH353
1 files changed, 353 insertions, 0 deletions
diff --git a/config_h.SH b/config_h.SH
new file mode 100644
index 0000000..cf2fa77
--- /dev/null
+++ b/config_h.SH
@@ -0,0 +1,353 @@
+case $CONFIG in
+'')
+ if test -f config.sh; then TOP=.;
+ elif test -f ../config.sh; then TOP=..;
+ elif test -f ../../config.sh; then TOP=../..;
+ elif test -f ../../../config.sh; then TOP=../../..;
+ elif test -f ../../../../config.sh; then TOP=../../../..;
+ else
+ echo "Can't find config.sh."; exit 1
+ fi
+ . $TOP/config.sh
+ ;;
+esac
+case "$0" in
+*/*) cd `expr X$0 : 'X\(.*\)/'` ;;
+esac
+echo "Extracting config.h (with variable substitutions)"
+sed <<!GROK!THIS! >config.h -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un-def!#undef!'
+/*
+ * This file was produced by running the config_h.SH script, which
+ * gets its values from config.sh, which is generally produced by
+ * running Configure.
+ *
+ * Feel free to modify any of this as the need arises. Note, however,
+ * that running config_h.SH again will wipe out any changes you've made.
+ * For a more permanent change edit config.sh and rerun config_h.SH.
+ *
+ * \$Id: config_h.SH,v 1.1 2004-05-03 05:17:48 behdad Exp $
+ */
+
+/*
+ * Package name : $package
+ * Source directory : $src
+ * Configuration time: $cf_time
+ * Configured by : $cf_by
+ * Target system : $myuname
+ */
+
+#ifndef _config_h_
+#define _config_h_
+
+/* VMS:
+ * This symbol, if defined, indicates that the program is running under
+ * VMS. It is currently only set in conjunction with the EUNICE symbol.
+ */
+/* BSD:
+ * This symbol, if defined, indicates that the program is running under
+ * a BSD system.
+ */
+#$d_eunice VMS /**/
+#$d_bsd BSD /**/
+
+/* CPP_FILE_COM:
+ * This symbol contains the first part of the string which will invoke
+ * the C preprocessor a file and produce to standard output, preserving
+ * comments. Typical value of "cc -E -C" or "/lib/cpp -C".
+ */
+/* CPP_STDIN_FLAGS:
+ * This variable contains any flags necessary to get CPP_FILE_COM to
+ * read from the standard input.
+ */
+/* CPP_IGN_HDRS:
+ * This symbol is defined if CPP_FILE_COM ignores *.h files.
+ */
+/* CPP_CAN_STDIN:
+ * This symbol is defined if CPP_FILE_COM can read standard input
+ * directly.
+ */
+#define CPP_FILE_COM "$cppfilecom"
+#define CPP_STDIN_FLAGS "$cppstdinflags"
+#$d_cppignhdrs CPP_IGN_HDRS /* does CPP ignore .h files? */
+#$d_cppcanstdin CPP_CAN_STDIN /* can CPP read stdin directly? */
+
+/* HAS_ACCESS:
+ * This manifest constant lets the C program know that the access()
+ * system call is available to check for accessibility using real UID/GID.
+ * (always present on UNIX.)
+ */
+#$d_access HAS_ACCESS /**/
+
+/* HASATTRIBUTE:
+ * This symbol indicates the C compiler can check for function attributes,
+ * such as printf formats. This is normally only supported by GNU cc.
+ */
+#$d_attribut HASATTRIBUTE /**/
+#ifndef HASATTRIBUTE
+#define __attribute__(_arg_)
+#endif
+
+/* HASCONST:
+ * This symbol, if defined, indicates that this C compiler knows about
+ * the const type. There is no need to actually test for that symbol
+ * within your programs. The mere use of the "const" keyword will
+ * trigger the necessary tests.
+ */
+#$d_const HASCONST /**/
+#ifndef HASCONST
+#define const
+#endif
+
+/* FLEXFILENAMES:
+ * This symbol, if defined, indicates that the system supports filenames
+ * longer than 14 characters.
+ */
+#$d_flexfnam FLEXFILENAMES /**/
+
+/* HAS_LINK:
+ * This symbol, if defined, indicates that the link routine is
+ * available to create hard links.
+ */
+#$d_link HAS_LINK /**/
+
+/* HAS_OPEN3:
+ * This manifest constant lets the C program know that the three
+ * argument form of open(2) is available.
+ */
+#$d_open3 HAS_OPEN3 /**/
+
+/* HAS_STRCHR:
+ * This symbol is defined to indicate that the strchr()/strrchr()
+ * functions are available for string searching. If not, try the
+ * index()/rindex() pair.
+ */
+/* HAS_INDEX:
+ * This symbol is defined to indicate that the index()/rindex()
+ * functions are available for string searching.
+ */
+#$d_strchr HAS_STRCHR /**/
+#$d_index HAS_INDEX /**/
+
+/* HAS_STRFTIME:
+ * This symbol, if defined, indicates that the strftime routine is
+ * available to format locale-specific times.
+ */
+#$d_strftime HAS_STRFTIME /**/
+
+/* HAS_STRSTR:
+ * This symbol, if defined, indicates that the strstr routine is
+ * available to find substrings.
+ */
+#$d_strstr HAS_STRSTR /**/
+
+/* HAS_SYMLINK:
+ * This symbol, if defined, indicates that the symlink routine is available
+ * to create symbolic links.
+ */
+#$d_symlink HAS_SYMLINK /**/
+
+/* Time_t:
+ * This symbol holds the type returned by time(). It can be long,
+ * or time_t on BSD sites (in which case <sys/types.h> should be
+ * included).
+ */
+#define Time_t $timetype /* Time type */
+
+/* Signal_t:
+ * This symbol's value is either "void" or "int", corresponding to the
+ * appropriate return type of a signal handler. Thus, you can declare
+ * a signal handler using "Signal_t (*handler)()", and define the
+ * handler using "Signal_t handler(sig)".
+ */
+#define Signal_t $signal_t /* Signal handler's return type */
+
+/* HASVOLATILE:
+ * This symbol, if defined, indicates that this C compiler knows about
+ * the volatile declaration.
+ */
+#$d_volatile HASVOLATILE /**/
+#ifndef HASVOLATILE
+#define volatile
+#endif
+
+/* I_FCNTL:
+ * This manifest constant tells the C program to include <fcntl.h>.
+ */
+#$i_fcntl I_FCNTL /**/
+
+/* I_STDDEF:
+ * This symbol, if defined, indicates that <stddef.h> exists and should
+ * be included.
+ */
+#$i_stddef I_STDDEF /**/
+
+/* I_STDLIB:
+ * This symbol, if defined, indicates that <stdlib.h> exists and should
+ * be included.
+ */
+#$i_stdlib I_STDLIB /**/
+
+/* I_STRING:
+ * This symbol, if defined, indicates to the C program that it should
+ * include <string.h> (USG systems) instead of <strings.h> (BSD systems).
+ */
+#$i_string I_STRING /**/
+
+/* I_SYS_FILE:
+ * This symbol, if defined, indicates to the C program that it should
+ * include <sys/file.h> to get definition of R_OK and friends.
+ */
+#$i_sysfile I_SYS_FILE /**/
+
+/* I_SYS_TYPES:
+ * This symbol, if defined, indicates to the C program that it should
+ * include <sys/types.h>.
+ */
+#$i_systypes I_SYS_TYPES /**/
+
+/* I_TIME:
+ * This symbol, if defined, indicates to the C program that it should
+ * include <time.h>.
+ */
+/* I_SYS_TIME:
+ * This symbol, if defined, indicates to the C program that it should
+ * include <sys/time.h>.
+ */
+#$i_time I_TIME /**/
+#$i_systime I_SYS_TIME /**/
+
+/* I_UNISTD:
+ * This symbol, if defined, indicates to the C program that it should
+ * include <unistd.h>.
+ */
+#$i_unistd I_UNISTD /**/
+
+/* I_STDARG:
+ * This symbol, if defined, indicates that <stdarg.h> exists and should
+ * be included.
+ */
+/* I_VARARGS:
+ * This symbol, if defined, indicates to the C program that it should
+ * include <varargs.h>.
+ */
+#$i_stdarg I_STDARG /**/
+#$i_varargs I_VARARGS /**/
+
+/* CAN_PROTOTYPE:
+ * If defined, this macro indicates that the C compiler can handle
+ * function prototypes.
+ */
+/* DOTS:
+ * This macro is used to specify the ... in function prototypes which
+ * have arbitrary additional arguments.
+ */
+/* NXT_ARG:
+ * This macro is used to separate arguments in the declared argument list.
+ */
+/* P_FUNC:
+ * This macro is used to declare "private" (static) functions.
+ * It takes three arguments: the function type and name, a parenthesized
+ * traditional (comma separated) argument list, and the declared argument
+ * list (in which arguments are separated with NXT_ARG, and additional
+ * arbitrary arguments are specified with DOTS). For example:
+ *
+ * P_FUNC(int foo, (bar, baz), int bar NXT_ARG char *baz[])
+ */
+/* P_FUNC_VOID:
+ * This macro is used to declare "private" (static) functions that have
+ * no arguments. The macro takes one argument: the function type and name.
+ * For example:
+ *
+ * P_FUNC_VOID(int subr)
+ */
+/* V_FUNC:
+ * This macro is used to declare "public" (non-static) functions.
+ * It takes three arguments: the function type and name, a parenthesized
+ * traditional (comma separated) argument list, and the declared argument
+ * list (in which arguments are separated with NXT_ARG, and additional
+ * arbitrary arguments are specified with DOTS). For example:
+ *
+ * V_FUNC(int main, (argc, argv), int argc NXT_ARG char *argv[])
+ */
+/* V_FUNC_VOID:
+ * This macro is used to declare "public" (non-static) functions that have
+ * no arguments. The macro takes one argument: the function type and name.
+ * For example:
+ *
+ * V_FUNC_VOID(int fork)
+ */
+/* _:
+ * This macro is used to declare function parameters for folks who want
+ * to make declarations with prototypes using a different style than
+ * the above macros. Use double parentheses. For example:
+ *
+ * int main _((int argc, char *argv[]));
+ */
+#$prototype CAN_PROTOTYPE /**/
+#ifdef CAN_PROTOTYPE
+#define NXT_ARG ,
+#define DOTS , ...
+#define V_FUNC(name, arglist, args)name(args)
+#define P_FUNC(name, arglist, args)static name(args)
+#define V_FUNC_VOID(name)name(void)
+#define P_FUNC_VOID(name)static name(void)
+#define _(args) args
+#else
+#define NXT_ARG ;
+#define DOTS
+#define V_FUNC(name, arglist, args)name arglist args;
+#define P_FUNC(name, arglist, args)static name arglist args;
+#define V_FUNC_VOID(name)name()
+#define P_FUNC_VOID(name)static name()
+#define _(args) ()
+#endif
+
+/* CAN_VAPROTO:
+ * This variable is defined on systems supporting prototype declaration
+ * of functions with a variable number of arguments.
+ */
+/* _V:
+ * This macro is used to declare function parameters in prototypes for
+ * functions with a variable number of parameters. Use double parentheses.
+ * For example:
+ *
+ * int printf _V((char *fmt, ...));
+ *
+ * Remember to use the plain simple _() macro when declaring a function
+ * with no variable number of arguments, since it might be possible to
+ * have a non-effect _V() macro and still get prototypes via _().
+ */
+#$vaproto CAN_VAPROTO /**/
+#ifdef CAN_VAPROTO
+#define _V(args) args
+#else
+#define _V(args) ()
+#endif
+
+/* VOIDFLAGS:
+ * This symbol indicates how much support of the void type is given by this
+ * compiler. What various bits mean:
+ *
+ * 1 = supports declaration of void
+ * 2 = supports arrays of pointers to functions returning void
+ * 4 = supports comparisons between pointers to void functions and
+ * addresses of void functions
+ * 8 = suports declaration of generic void pointers
+ *
+ * The package designer should define VOIDUSED to indicate the requirements
+ * of the package. This can be done either by #defining VOIDUSED before
+ * including config.h, or by defining defvoidused in Myinit.U. If the
+ * latter approach is taken, only those flags will be tested. If the
+ * level of void support necessary is not present, defines void to int.
+ */
+#ifndef VOIDUSED
+#define VOIDUSED $defvoidused
+#endif
+#define VOIDFLAGS $voidflags
+#if (VOIDFLAGS & VOIDUSED) != VOIDUSED
+#define void int /* is void to be avoided? */
+#define M_VOID /* Xenix strikes again */
+#endif
+
+#endif
+!GROK!THIS!