blob: a7d2efeb96d0f2d86574b4035173c0c6259c192f [file] [log] [blame]
//================================================= -*- mode: c++ -*- ====
//
// poppler-config.h
//
// Copyright 1996-2011 Glyph & Cog, LLC
//
//========================================================================
//========================================================================
//
// Modified under the Poppler project - http://poppler.freedesktop.org
//
// All changes made under the Poppler project to this file are licensed
// under GPL version 2 or later
//
// Copyright (C) 2014 Bogdan Cristea <cristeab@gmail.com>
// Copyright (C) 2014 Hib Eris <hib@hiberis.nl>
//
// To see a description of the changes please see the Changelog file that
// came with your tarball or type make ChangeLog if you are building from git
//
//========================================================================
#ifndef POPPLER_CONFIG_H
#define POPPLER_CONFIG_H
#include <stdio.h>
// We duplicate some of the config.h #define's here since they are
// used in some of the header files we install. The #ifndef/#endif
// around #undef look odd, but it's to silence warnings about
// redefining those symbols.
/* Defines the poppler version. */
#ifndef POPPLER_VERSION
#undef POPPLER_VERSION
#endif
/* Enable multithreading support. */
#ifndef MULTITHREADED
#undef MULTITHREADED
#endif
/* Use fixedpoint. */
#ifndef USE_FIXEDPOINT
#undef USE_FIXEDPOINT
#endif
/* Use single precision arithmetic in the Splash backend */
#ifndef USE_FLOAT
#undef USE_FLOAT
#endif
/* Include support for OPI comments. */
#ifndef OPI_SUPPORT
#undef OPI_SUPPORT
#endif
/* Enable word list support. */
#ifndef TEXTOUT_WORD_LIST
#undef TEXTOUT_WORD_LIST
#endif
/* Support for curl is compiled in. */
#ifndef POPPLER_HAS_CURL_SUPPORT
#undef POPPLER_HAS_CURL_SUPPORT
#endif
/* Use libjpeg instead of builtin jpeg decoder. */
#ifndef ENABLE_LIBJPEG
#undef ENABLE_LIBJPEG
#endif
/* Build against libtiff. */
#ifndef ENABLE_LIBTIFF
#undef ENABLE_LIBTIFF
#endif
/* Build against libpng. */
#ifndef ENABLE_LIBPNG
#undef ENABLE_LIBPNG
#endif
/* Use zlib instead of builtin zlib decoder. */
#ifndef ENABLE_ZLIB
#undef ENABLE_ZLIB
#endif
/* Define to 1 if you have the <dirent.h> header file, and it defines `DIR'.
*/
#ifndef HAVE_DIRENT_H
#undef HAVE_DIRENT_H
#endif
/* Defines if gettimeofday is available on your system */
#ifndef HAVE_GETTIMEOFDAY
#undef HAVE_GETTIMEOFDAY
#endif
/* Define to 1 if you have the <ndir.h> header file, and it defines `DIR'. */
#ifndef HAVE_NDIR_H
#undef HAVE_NDIR_H
#endif
/* Define to 1 if you have the <sys/dir.h> header file, and it defines `DIR'.
*/
#ifndef HAVE_SYS_DIR_H
#undef HAVE_SYS_DIR_H
#endif
/* Define to 1 if you have the <sys/ndir.h> header file, and it defines `DIR'.
*/
#ifndef HAVE_SYS_NDIR_H
#undef HAVE_SYS_NDIR_H
#endif
/* Have FreeType2 include files */
#ifndef HAVE_FREETYPE_H
#undef HAVE_FREETYPE_H
#endif
/* Defines if use cms */
#ifndef USE_CMS
#undef USE_CMS
#endif
// Also, there are preprocessor symbols in the header files
// that are used but never defined when building poppler using configure
// or cmake: DISABLE_OUTLINE, DEBUG_MEM, SPLASH_CMYK, HAVE_T1LIB_H,
// ENABLE_PLUGINS, DEBUG_FORMS, HAVE_FREETYPE_FREETYPE_H
//------------------------------------------------------------------------
// version
//------------------------------------------------------------------------
// copyright notice
#define popplerCopyright "Copyright 2005-2014 The Poppler Developers - http://poppler.freedesktop.org"
#define xpdfCopyright "Copyright 1996-2011 Glyph & Cog, LLC"
//------------------------------------------------------------------------
// popen
//------------------------------------------------------------------------
#if defined(_MSC_VER) || defined(__BORLANDC__)
#define popen _popen
#define pclose _pclose
#endif
#if defined(VMS) || defined(VMCMS) || defined(DOS) || defined(OS2) || defined(__EMX__) || defined(_WIN32) || defined(__DJGPP__) || defined(MACOS)
#define POPEN_READ_MODE "rb"
#else
#define POPEN_READ_MODE "r"
#endif
//------------------------------------------------------------------------
// Win32 stuff
//------------------------------------------------------------------------
#if defined(_WIN32) && !defined(_MSC_VER)
#include <windef.h>
#else
#define CDECL
#endif
#if defined(_WIN32)
#ifdef _MSC_VER
#define strtok_r strtok_s
#elif __MINGW32__ && !defined(__WINPTHREADS_VERSION)
char * strtok_r (char *s, const char *delim, char **save_ptr);
#endif
#endif
//------------------------------------------------------------------------
// Compiler
//------------------------------------------------------------------------
#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ > 4)
#ifdef __MINGW_PRINTF_FORMAT
#define GCC_PRINTF_FORMAT(fmt_index, va_index) \
__attribute__((__format__(__MINGW_PRINTF_FORMAT, fmt_index, va_index)))
#else
#define GCC_PRINTF_FORMAT(fmt_index, va_index) \
__attribute__((__format__(__printf__, fmt_index, va_index)))
#endif
#else
#define GCC_PRINTF_FORMAT(fmt_index, va_index)
#endif
#if defined(_MSC_VER)
#define fmax(a, b) std::max(a, b)
#define fmin(a, b) std::min(a, b)
#endif
#endif /* POPPLER_CONFIG_H */