/* config.h-vms. Generated by hand by Klaus Kämpf <kkaempf@rmi.de>      -*-C-*-

Copyright (C) 1996-2022 Free Software Foundation, Inc.
This file is part of GNU Make.

GNU Make is free software; you can redistribute it and/or modify it under the
terms of the GNU General Public License as published by the Free Software
Foundation; either version 3 of the License, or (at your option) any later
version.

GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
A PARTICULAR PURPOSE.  See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with
this program.  If not, see <https://www.gnu.org/licenses/>.  */

#include "mkconfig.h"

#define MK_VMS 1

/* Pull in types.h here to get __CRTL_VER defined for old versions of the
   compiler which don't define it. */
#ifdef __DECC
# include <types.h>
#endif

/* Define to 1 if on AIX 3.
   System headers sometimes define this.
   We just want to avoid a redefinition error message.  */
#ifndef _ALL_SOURCE
/* #undef _ALL_SOURCE */
#endif

/* Define to 1 if NLS is requested.  */
/* #undef ENABLE_NLS */

/* Define as 1 if you have dcgettext.  */
/* #undef HAVE_DCGETTEXT */

/* Define as 1 if you have gettext and don't want to use GNU gettext.  */
/* #undef HAVE_GETTEXT */

/* Embed GNU Guile support */
/* #undef HAVE_GUILE */

/* Define to 1 if your locale.h file contains LC_MESSAGES.  */
/* #undef HAVE_LC_MESSAGES */

/* Define to the installation directory for locales.  */
#define LOCALEDIR ""

/* Define as 1 if you have the stpcpy function.  */
/* #undef HAVE_STPCPY */

/* Define to 1 if the closedir function returns void instead of int.  */
/* #undef CLOSEDIR_VOID */

/* Define to empty if the keyword does not work.  */
/* #undef const */

/* Define to one of _getb67, GETB67, getb67 for Cray-2 and Cray-YMP systems.
   This function is required for alloca.c support on those systems.  */
/* #undef CRAY_STACKSEG_END */

/* Define for DGUX with <sys/dg_sys_info.h>.  */
/* #undef DGUX */

/* Define to the widest signed integer type if <stdint.h> and <inttypes.h> do
   not define. */
#define intmax_t unsigned long

/* Define to 'unsigned long' or 'unsigned long long'
   if <inttypes.h> doesn't define.  */
#define uintmax_t unsigned long

/* Define to 'int' if <sys/types.h> doesn't define.  */
/* #undef gid_t */

/* Define to 1 if you have alloca, as a function or macro.  */
#define HAVE_ALLOCA 1

/* Define to 1 if you have <alloca.h> and it should be used (not on Ultrix).  */
/* #undef HAVE_ALLOCA_H */

/* Define to 1 if you have the declaration of 'getloadavg'. */
/* #undef HAVE_DECL_GETLOADAVG */

/* Define to 1 if you have the fdopen function.  */
#define HAVE_FDOPEN 1

/* Define to 1 if your system has a working fnmatch function.  */
/* #undef HAVE_FNMATCH */

/* Define to 1 if you have the getmntent function.  */
/* #undef HAVE_GETMNTENT */

/* Define to 1 if the 'long double' type works.  */
/* #undef HAVE_LONG_DOUBLE */

/* Define to 1 if you support file names longer than 14 characters.  */
#define HAVE_LONG_FILE_NAMES 1

/* Define to 1 if you have a working 'mmap' system call.  */
/* #undef HAVE_MMAP */

/* Define to 1 if system calls automatically restart after interruption
   by a signal.  */
/* #undef HAVE_RESTARTABLE_SYSCALLS */

/* Define to 1 if your struct stat has st_blksize.  */
/* #undef HAVE_ST_BLKSIZE */

/* Define to 1 if your struct stat has st_blocks.  */
/* #undef HAVE_ST_BLOCKS */

/* Define to 1 if you have the strcoll function and it is properly defined.  */
/* #undef HAVE_STRCOLL */

/* Define to 1 if you have the strncasecmp' function. */
#if __CRTL_VER >= 70000000
#define HAVE_STRNCASECMP 1
#endif

/* Define to 1 if your struct stat has st_rdev.  */
/* #undef HAVE_ST_RDEV */

/* Define to 1 if you have the strftime function.  */
/* #undef HAVE_STRFTIME */

/* Define to 1 if you have <sys/wait.h> that is POSIX.1 compatible.  */
/* #undef HAVE_SYS_WAIT_H */

/* Define to 1 if your struct tm has tm_zone.  */
/* #undef HAVE_TM_ZONE */

/* Define to 1 if you don't have tm_zone but do have the external array
   tzname.  */
/* #undef HAVE_TZNAME */

/* Define to 1 if you have <unistd.h>.  */
#ifdef __DECC
#define HAVE_UNISTD_H 1
#endif

/* Define to 1 if utime(file, NULL) sets file's timestamp to the present.  */
/* #undef HAVE_UTIME_NULL */

/* Define to 1 if you have the wait3 system call.  */
/* #undef HAVE_WAIT3 */

/* Define to 1 if on MINIX.  */
/* #undef _MINIX */

/* Define to 1 if your struct nlist has an n_un member.  */
/* #undef NLIST_NAME_UNION */

/* Define to 1 if you have <nlist.h>.  */
/* #undef NLIST_STRUCT */

/* Define to 1 if your C compiler doesn't accept -c and -o together.  */
/* #undef NO_MINUS_C_MINUS_O */

/* Define to 'int' if <sys/types.h> doesn't define.  */
/* I assume types.h is available for all 5.0 cc/cxx compilers */
#if __DECC_VER < 50090000
#define pid_t int
#endif

/* Define to 1 if the system does not provide POSIX.1 features except
   with this defined.  */
/* #undef _POSIX_1_SOURCE */

/* Define to 1 if you need to in order for stat and other things to work.  */
/* #undef _POSIX_SOURCE */

/* If using the C implementation of alloca, define if you know the
   direction of stack growth for your system; otherwise it will be
   automatically deduced at run-time.
        STACK_DIRECTION > 0 => grows toward higher addresses
        STACK_DIRECTION < 0 => grows toward lower addresses
        STACK_DIRECTION = 0 => direction of growth unknown
 */
/* #undef STACK_DIRECTION */

/* Define to 1 if the 'S_IS*' macros in <sys/stat.h> do not work properly.  */
/* #undef STAT_MACROS_BROKEN */

/* Define to 1 if you have the ANSI C header files.  */
/* #undef STDC_HEADERS */

/* Define on System V Release 4.  */
/* #undef SVR4 */

/* Define to 1 if 'sys_siglist' is declared by <signal.h>.  */
/* #undef SYS_SIGLIST_DECLARED */

/* Define to 'int' if <sys/types.h> doesn't define.  */
#if __DECC_VER < 50090000
#define uid_t int
#endif

/* Define for Encore UMAX.  */
/* #undef UMAX */

/* Define for Encore UMAX 4.3 that has <inq_status/cpustats.h>
   instead of <sys/cpustats.h>.  */
/* #undef UMAX4_3 */

/* Define to the name of the SCCS 'get' command.  */
/* #undef SCCS_GET */

/* Define this if the SCCS 'get' command understands the '-G<file>' option.  */
/* #undef SCCS_GET_MINUS_G */

/* Define this to enable job server support in GNU make.  */
/* #undef MAKE_JOBSERVER */

/* Define to be the nanoseconds member of struct stat's st_mtim,
   if it exists.  */
/* #undef ST_MTIM_NSEC */

/* Define to 1 if the C library defines the variable 'sys_siglist'.  */
/* #undefine HAVE_SYS_SIGLIST */

/* Define to 1 if the C library defines the variable '_sys_siglist'.  */
/* #undef HAVE__SYS_SIGLIST */

/* Define to 1 if you have the 'union wait' type in <sys/wait.h>.  */
/* #undef HAVE_UNION_WAIT */

/* Define to 1 if you have the dup2 function.  */
#define HAVE_DUP2 1

/* Define to 1 if you have the getcwd function.  */
#define HAVE_GETCWD 1

/* Define to 1 if you have the getgroups function.  */
/* #undef HAVE_GETGROUPS */

/* Define to 1 if you have the gethostbyname function.  */
/* #undef HAVE_GETHOSTBYNAME */

/* Define to 1 if you have the gethostname function.  */
/* #undef HAVE_GETHOSTNAME */

/* Define to 1 if you have the memmove function.  */
#define HAVE_MEMMOVE 1

/* Define to 1 if you have the 'mkfifo' function.  */
/* #undef HAVE_MKFIFO */

/* Define to 1 if you have the mktemp function.  */
#define HAVE_MKTEMP 1

/* Define to 1 if you have the psignal function.  */
/* #undef HAVE_PSIGNAL */

/* Define to 1 if you have the pstat_getdynamic function.  */
/* #undef HAVE_PSTAT_GETDYNAMIC */

/* Define to 1 if you have the setegid function.  */
/* #undef HAVE_SETEGID */

/* Define to 1 if you have the seteuid function.  */
/* #undef HAVE_SETEUID */

/* Define to 1 if you have the setlinebuf function.  */
/* #undef HAVE_SETLINEBUF */

/* Define to 1 if you have the setregid function.  */
/* #undefine HAVE_SETREGID */

/* Define to 1 if you have the setreuid function.  */
/* #define HAVE_SETREUID */

/* Define to 1 if you have the sigsetmask function.  */
#define HAVE_SIGSETMASK 1

/* Define to 1 if you have the socket function.  */
/* #undef HAVE_SOCKET */

/* Define to 1 if you have the strcasecmp function.  */
#define HAVE_STRCASECMP 1

/* Define to 1 if you have the strcmpi function.  */
/* #undef HAVE_STRCMPI */

/* Define to 1 if you have the stricmp function.  */
/* #undef HAVE_STRICMP */

/* Define to 1 if you have the strsignal function.  */
/* #undef HAVE_STRSIGNAL */

/* Define to 1 if you have the `strtoll' function. */
#define HAVE_STRTOLL 1

/* Define to 1 if you have the wait3 function.  */
/* #undef HAVE_WAIT3 */

/* Define to 1 if you have the waitpid function.  */
/* #undef HAVE_WAITPID */

/* Define to 1 if you have the <dirent.h> header file.  */
#define HAVE_DIRENT_H 1

/* Define to 1 if you have the <fcntl.h> header file.  */
#ifdef __DECC
#define HAVE_FCNTL_H 1
#endif

/* Define to 1 if you have the <limits.h> header file.  */
#define HAVE_LIMITS_H 1

/* Define to 1 if you have the <mach/mach.h> header file.  */
/* #undef HAVE_MACH_MACH_H */

/* Define to 1 if you have the <memory.h> header file.  */
/* #undef HAVE_MEMORY_H */

/* Define to 1 if you have the `mempcpy' function.  */
/* #undef HAVE_MEMPCPY */

/* Define to 1 if you have the <ndir.h> header file.  */
/* #undef HAVE_NDIR_H */

/* Define to 1 if you have the <stdlib.h> header file.  */
#define HAVE_STDLIB_H 1

/* Define to 1 if you have the <string.h> header file.  */
#define HAVE_STRING_H 1

/* Define to 1 if you have the <sys/dir.h> header file.  */
/* #undef HAVE_SYS_DIR_H */

/* Define to 1 if you have the <sys/ndir.h> header file.  */
/* #undef HAVE_SYS_NDIR_H */

/* Define to 1 if you have the <sys/param.h> header file.  */
/* #undef HAVE_SYS_PARAM_H */

/* Define to 1 if you have the <sys/timeb.h> header file.  */
#ifndef __GNUC__
#define HAVE_SYS_TIMEB_H 1
#endif

/* Define to 1 if you have the <sys/wait.h> header file.  */
/* #undef HAVE_SYS_WAIT_H */

/* Define to 1 if you have the dgc library (-ldgc).  */
/* #undef HAVE_LIBDGC */

/* Define to 1 if you have the kstat library (-lkstat).  */
/* #undef HAVE_LIBKSTAT *

/* Define to 1 if you have the sun library (-lsun).  */
/* #undef HAVE_LIBSUN */

/* Define to 1 if you have the `isatty' function. */
/* #undef HAVE_ISATTY */

/* Define to 1 if you have the `ttyname' function. */
/* #undef HAVE_TTYNAME */

/* Use high resolution file timestamps if nonzero. */
#define FILE_TIMESTAMP_HI_RES 0

/* Define for case insensitve filenames */
#define HAVE_CASE_INSENSITIVE_FS 1

/* VMS specific, define it if you want to use case sensitive targets */
/* #undef WANT_CASE_SENSITIVE_TARGETS */

/* VMS specific, V7.0 has opendir() and friends, so it's undefined */
/* If you want to use non-VMS code for opendir() etc. on V7.0 and greater
   define the first or both macros AND change the compile command to get the
   non-VMS versions linked: (prefix=(all,except=(opendir,...  */
/* #undef HAVE_VMSDIR_H */
/* #undef _DIRENT_HAVE_D_NAMLEN */

/* On older systems without 7.0 backport of CRTL use non-VMS code for opendir() etc. */
#if __CRTL_VER < 70000000
# define HAVE_VMSDIR_H 1
#endif

#if defined(HAVE_VMSDIR_H) && defined(HAVE_DIRENT_H)
#undef HAVE_DIRENT_H
#endif

#define HAVE_STDLIB_H 1
#define INCLUDEDIR "sys$sysroot:[syslib]"
#define LIBDIR "sys$sysroot:[syslib]"

/* Don't use RTL functions of OpenVMS */
#ifdef __DECC
#include <stdio.h>
#include <unistd.h>
#define getopt   gnu_getopt
#define optarg   gnu_optarg
#define optopt   gnu_optopt
#define optind   gnu_optind
#define opterr   gnu_opterr
#define globfree gnu_globfree
#define glob     gnu_glob
#endif

/* Define if using alloca.c.  */
/* #undef C_ALLOCA */
/* maybe this should be placed into makeint.h */
#if     defined(__VAX) && defined(__DECC)
#define alloca(n)       __ALLOCA(n)
#endif

/* Define WORDS_BIGENDIAN to 1 if your processor stores words with the most
   significant byte first (like Motorola and SPARC, unlike Intel). */
/* #  undef WORDS_BIGENDIAN */

/* Output sync sypport */
#define NO_OUTPUT_SYNC

/* Define to 1 to write even short single-line actions into a VMS/DCL command
   file; this also enables exporting make environment variables into the
   (sub-)process, which executes the action.
   The usual make rules apply whether a shell variable - here a DCL symbol or
   VMS logical [see CRTL getenv()] - is added to the make environment and
   is exported. */
#define USE_DCL_COM_FILE 1

/* Build host information. */
#define MAKE_HOST "VMS"
