# Run using: iffe - set cc cc : run configdata > out
# Second cc can be replace with $(CC) $(CFLAGS)
set config
iff GVIZ_CONFIG
cat{
}end
lib __freadable
lib cbrt math.h -lm
lib setenv
lib vsnprintf
lib setmode
lib iconv
lib lsqrt
lib drand48
lib feenableexcept -D_GNU_SOURCE fenv.h -lm
lib fesetenv -D_GNU_SOURCE fenv.h -lm
lib lrand48
lib srand48
lib sincos
lib strcasecmp
lib strncasecmp
lib strerror

hdr dirent
hdr dlfcn
hdr errno
hdr fenv
hdr fpu_control
hdr ft2build
hdr getopt
hdr iconv
hdr inttypes
hdr malloc
hdr ndir
hdr netdb
hdr search
hdr stdbool
hdr stdint
hdr strings
hdr termios
hdr unistd

sys types
sys mman
sys stat
sys select
sys fpu
sys ndir
cat{ }end

dat errno stdio.h errno.h yes{
/* Define if errno is declared in system include files.  */
#define HAVE_ERRNO_DECL 1
}end

#  Specify internal structure of FILE.
#  This is used to determine if more characters are waiting in the stream.
if mem - FILE._cnt stdio.h {
/* Define if FILE has _cnt field */
#define HAVE_FILE_CNT 1
}
elif mem - FILE._IO_read_end stdio.h {
/* Define if FILE has _IO_read_end field */
#define HAVE_FILE_IO_READ_END 1
}
elif mem - FILE.next stdio.h {
/* Define if FILE has next field */
#define HAVE_FILE_NEXT 1
}
elif mem - FILE._r stdio.h {
/* Define if FILE has _r field */
#define HAVE_FILE_R 1
}
else {
# error "Unknown field in FILE for remaining characters"
}
endif

link{
    #include <stdlib.h>
    #if HAVE_STDINT_H
    #include <stdint.h>
    #endif
    #if HAVE_INTTYPES_H
    #include <inttypes.h>
    #endif
    #if HAVE_UNISTD_H
    #include <unistd.h>
    #endif
    intptr_t  abc;
    int main() {}
}end yes{
/* Define if intptr_t is declared */
#define HAVE_INTPTR_T 1
}end

compile{
    #include <iconv.h>
    iconv_t xx; 
}end yes{
/* Define if <iconv.h> defines iconv_t. */
#define HAVE_ICONV_T_DEF 1
}end

compile{
    #include <fenv.h>
    void foo() {fesetenv (FE_NONIEEE_ENV);} 
}end yes{
/* Define if FE_NONIEEE_ENV defined in <fenv.h>. */
#define FE_NONIEEE_ENV 1
}end

# libgd features
cat{
/*******************************************************************/
/* Undefine if you don't want the libgd features or don't have the */
/* necessary 3rd party library.                                    */
/*******************************************************************/
/* Define if the GD library has the GD_FONTCONFIG feature */
#define HAVE_GD_FONTCONFIG 1

/* Define if the GD library has the GD_FREETYPE feature */
#define HAVE_GD_FREETYPE 1

/* Define if the GD library has the GD_GIF feature */
#define HAVE_GD_GIF 1

/* Define if the GD library has the GD_JPEG feature */
#define HAVE_GD_JPEG 1

/* Define if the GD library has the GD_PNG feature */
#define HAVE_GD_PNG 1

/* Define if either internal or external GD library is available */
#define HAVE_LIBGD 1
}end

# 3rd party libraries features
cat{
/*******************************************************************/
/* Undefine if you don't have the necessary 3rd party library.     */
/*******************************************************************/
/* Define if you have the jpeg library (-ljpeg).  */
#define	HAVE_LIBJPEG    1

/* Define if you have the `m' library (-lm). */
#define HAVE_LIBM 1

/* Define if you have the png library (-lpng).  */
#define HAVE_LIBPNG     1	

/* Define if you have the freetype library (-lfreetype),  */
#define	HAVE_LIBFREETYPE   1
#define	HAVE_FREETYPE2   1

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

/* Define if you have the FONTCONFIG library */
#define HAVE_LIBFONTCONFIG 1

/* Define if you have the z library (-lz).  */
#define HAVE_LIBZ       1

/* Define if you have the expat library (-lexpat). */
#define HAVE_LIBEXPAT       1

/* Define if you have the xpm library (-lXpm).  */
/* At present, the xpm library isn't really used */
/* #define HAVE_LIBXPM       1 */
}end

cat{
/*******************************************************************/
/* The following usually aren't changed.                           */
/*******************************************************************/
/* Define if you don't want on-demand plugin loading */
#define DISABLE_LTDL 1

/* Define if you want the gd renderers (png, gif, etc ) */
#define GD_RENDER 1

/* Default DPI. */
#define DEFAULT_DPI 96
 
/* Define if you want SFDP. */
#define SFDP 1
 
/* Define if you want to use the triangle library. */
#define HAVE_TRIANGLE 1
 
#define VERSION "VVVV"

/* Define if you have the pango library with cairo support */
/* #define HAVE_PANGOCAIRO 1 */

/* Define if you want DIGCOLA */ 
#define DIGCOLA 1
/* Define if you want IPSEPCOLA */ 
#define IPSEPCOLA 1

/* #define MOSEK 1 */

#ifndef DEFAULT_FONTPATH
# ifdef _UWIN
#  define DEFAULT_FONTPATH    "/win/fonts"
#  define PATHSEPARATOR ":"
#  else
#  ifdef MSWIN32
#   define DEFAULT_FONTPATH    "C:/WINDOWS/FONTS;C:/WINNT/Fonts;C:/winnt/fonts"
#   define PATHSEPARATOR ";"
#  else
#   define DEFAULT_FONTPATH    "/usr/share/ttf:/usr/local/share/ttf:/usr/share/fonts/ttf:/usr/local/share/fonts/ttf:/usr/lib/fonts:/usr/local/lib/fonts:/usr/lib/fonts/ttf:/usr/local/lib/fonts/ttf:/usr/common/share/fonts/ttf:/usr/common/graphviz/lib/fonts/ttf:/windows/fonts:/dos/windows/fonts:/usr/add-on/share/ttf:/usr/openwin/lib/X11/fonts/TrueType:."
#   define PATHSEPARATOR ":"
#  endif
# endif
#endif
}end

