1
0
This repository has been archived on 2024-07-22. You can view files and clone it, but cannot push or open issues or pull requests.
2024-07-22 01:58:46 -03:00

274 lines
8.2 KiB
C
Executable File

/*
* Automatic configuration flags
*
* Copyright 2000 by Gray Watson
*
* This file is part of the dmalloc package.
*
* Permission to use, copy, modify, and distribute this software for any
* purpose and without fee is hereby granted, provided
* that the above copyright notice and this permission notice appear
* in all copies, and that the name of Gray Watson not be used in
* advertising or publicity pertaining to distribution of the document
* or software without specific, written prior permission.
*
* Gray Watson makes no representations about the suitability of the
* software described herein for any purpose. It is provided "as is"
* without express or implied warranty.
*
* The author may be contacted via http://dmalloc.com/
*
* $Id: //BBN_Linux/Branch/Branch_for_Rel_TP_ASEAN_20161216/tclinux_phoenix/apps/public/tools/dmalloc-5.5.2/conf.h.in#1 $
*/
#ifndef __CONF_H__
#define __CONF_H__
/* please see settings.h for manual configuration options */
/*
* NOTE: The following settings should not need to be tuned by hand.
*/
/*
* Set to 1 if the mprotect function was found and the PROT_NONE,
* PROT_READ, and PROT_WRITE defines were found in sys/mman.h. This
* is so that we can restrict access to certain blocks of memory.
*/
#define PROTECT_ALLOWED 0
/*
* (char *)sbrk(const int incr) is the main heap-memory allocation
* routine that most systems employ. This extends the program's data
* space by INCR number of bytes.
*
* NOTE: If configure generates a 0 for this and HAVE_MMAP on your
* system, you should see the INTERNAL_MEMORY_SPACE setting in the
* settings.h file which is created from the settings.dist file.
*/
#define HAVE_SBRK 0
/*
* (void *)mmap(...) is another heap-memory allocation routine that
* systems employ. On newer systems it is often preferable over sbrk.
* It allocates a block of memory in the virtual-memory system. The
* USE_MMAP define is set if the standard mmap call works.
*
* NOTE: If configure generates a 0 for this and HAVE_SBRK on your
* system, you should see the INTERNAL_MEMORY_SPACE setting in the
* settings.h file which is created from the settings.dist file.
*/
#define HAVE_MMAP 0
#define USE_MMAP 0
/*
* This is the basic block size in bits. If possible, the configure
* script will set this to be the value returned by the getpagesize()
* function. If not then some sort of best guess will be necessary.
* 15 (meaning basic block size of 32k) will probably be good.
*
* NOTE: some sbrk functions round to the correct page-size. No
* problems aside from a possible small increase in the administration
* overhead should happen if this value is too high.
*/
#define BASIC_BLOCK 15
/*
* The alignment value of all allocations in number of bytes for
* loading admin information before an allocation. If possible, the
* configure script will set this to be the value returned by
* sizeof(long) which in most systems is the register width.
*
* NOTE: the value will never be auto-configured to be less than 8
* because some system (like sparc for instance) report the sizeof(long)
* == 4 while the register size is 8 bytes. Certain memory needs to be of
* the same base as the register size (stack frames, code, etc.). Any
* ideas how I can determine the register size in a better (and portable)
* fashion?
*
* NOTE: larger the number the more memory may be wasted by certain
* debugging settings like fence-post checking.
*/
#define ALLOCATION_ALIGNMENT 8
/*
* This checks to see if the abort routine does extensive cleaning up
* before halting a program. If so then it may call malloc functions
* making the library go recursive. If abort is set to not okay then
* you should tune the KILL_PROCESS and SIGNAL_INCLUDE options in
* settings.h if you want the library to be able to dump core.
*/
#define ABORT_OKAY 0
/*
* This checks to see if we can include signal.h and get SIGHUP,
* SIGINT, and SIGTERM for the catch-signals token. With this token,
* you can have the library do an automatic shutdown if we see the
* above signals.
*/
#define SIGNAL_OKAY 0
#define RETSIGTYPE void
/*
* This checks to see if we can include return.h and use the assembly
* macros there to call the callers address for logging. If you do
* not want this behavior, then set the USE_RETURN_MACROS to 0 in the
* settings.h file.
*/
#define RETURN_MACROS_WORK 0
/*
* Why can't the compiler folks agree about this. I really hate Unix
* sometimes for its blatant disregard for anything approaching a
* standard.
*/
#define IDENT_WORKS 0
/*
* Which pthread include file to use.
*/
#define HAVE_PTHREAD_H 0
#define HAVE_PTHREADS_H 0
/*
* What pthread functions do we have?
*/
#define HAVE_PTHREAD_MUTEX_INIT 0
#define HAVE_PTHREAD_MUTEX_LOCK 0
#define HAVE_PTHREAD_MUTEX_UNLOCK 0
/*
* What is the pthread mutex type? Usually (always?) it is
* pthread_mutex_t.
*/
#define THREAD_MUTEX_T pthread_mutex_t
/*
* On some systems, you initialize mutex variables with NULL. Others
* require various stupid non-portable incantations. The OSF 3.2 guys
* should be ashamed of themselves. This only is used if the
* LOCK_THREADS setting is enabled in the settings.h.
*/
#define THREAD_LOCK_INIT_VAL 0L
/*
* Under the Cygwin environment, when malloc calls getenv, it core
* dumps. This is because Cygwin, as far as I know, is loading the
* shared libraries for the various system functions and goes
* recursive with a call to getenv. Ugh.
*
* So we have to delay the getenv call. This sets when we can do the
* getenv call so the environmental processing is delayed.
*/
#define GETENV_SAFE 0
/*
* See whether support exists for the constructor attribute which
* allows the library to run code before main() is called. I know
* that later versions of gcc have support for this and maybe other
* compilers do as well.
*/
#define CONSTRUCTOR_WORKS 0
/*
* See whether support exists for the destructor attribute which
* allows the library to run code after main() is exited. I know
* that later versions of gcc have support for this and maybe other
* compilers do as well.
*/
#define DESTRUCTOR_WORKS 0
/*
* See if we have the GetEnvironmentVariableA Cygwin function. This
* is used as a getenv replacement.
*/
#define HAVE_GETENVIRONMENTVARIABLEA 0
/*
* LIBRARY DEFINES:
*/
/*
* Whether the compiler and OS has standard C headers.
*/
#undef STDC_HEADERS
/*
* Some systems have functions which can register routines to be
* called by exit(3) (or when the program returns from main). This
* functionality allows the dmalloc_shutdown() routine to be called
* automatically upon program completion so that the library can log
* statistics. Use the AUTO_SHUTDOWN define above to disable this.
* Please send me mail if this functionality exists on your system but
* in another name.
*
* NOTE: If neither is available, take a look at atexit.c in the
* contrib directory which may provide this useful functionality for
* your system.
*/
#define HAVE_ATEXIT 0
#define HAVE_ON_EXIT 0
/* Is the DMALLOC_SIZE type unsigned? */
#define DMALLOC_SIZE_UNSIGNED 0
/*
* The dmalloc library provides its own versions of the following
* functions, or knows how to work around their absence.
*/
/* bells and whistles */
#define HAVE_FORK 0
#define HAVE_GETHOSTNAME 0
#define HAVE_GETPID 0
#define HAVE_GETUID 0
#define HAVE_TIME 0
#define HAVE_CTIME 0
#define HAVE_VPRINTF 0
#define HAVE_SNPRINTF 0
#define HAVE_VSNPRINTF 0
#define HAVE_RECALLOC 0
#define HAVE_MEMALIGN 0
#define HAVE_VALLOC 0
/* various functions for arg checking and/or internal use */
#define HAVE_ATOI 0
#define HAVE_ATOL 0
#define HAVE_BCMP 0
#define HAVE_BCOPY 0
#define HAVE_BZERO 0
#define HAVE_INDEX 0
#define HAVE_MEMCCPY 0
#define HAVE_MEMCHR 0
#define HAVE_MEMCMP 0
#define HAVE_MEMCPY 0
#define HAVE_MEMMOVE 0
#define HAVE_MEMSET 0
#define HAVE_RINDEX 0
#define HAVE_STRCASECMP 0
#define HAVE_STRCAT 0
#define HAVE_STRCHR 0
#define HAVE_STRCMP 0
#define HAVE_STRCPY 0
#define HAVE_STRCSPN 0
#define HAVE_STRDUP 0
#define HAVE_STRLEN 0
#define HAVE_STRNCASECMP 0
#define HAVE_STRNCAT 0
#define HAVE_STRNCMP 0
#define HAVE_STRNCPY 0
#define HAVE_STRNDUP 0
#define HAVE_STRPBRK 0
#define HAVE_STRRCHR 0
#define HAVE_STRSEP 0
#define HAVE_STRSPN 0
#define HAVE_STRSTR 0
#define HAVE_STRTOK 0
/* manual settings */
#include "settings.h"
#endif /* ! __CONF_H__ */