PROJECT_NAME=Apache2

# make the generated documentation searchable
SEARCHENGINE=YES
INPUT=.
RECURSIVE=YES
FILE_PATTERNS=*.h

OUTPUT_DIRECTORY=docs/dox

#EXTRACT_STATIC=YES
EXTRACT_ALL=YES

# add documentation for functions that are declared internal use only
INTERNAL_DOCS=YES
HAVE_DOT=YES
CLASS_GRAPH=YES


ENABLE_PREPROCESSING=YES
MACRO_EXPANSION=YES
QUIET=YES
EXPAND_ONLY_PREDEF=YES
#EXPAND_AS_DEFINED=
# not sure why this doesn't work as EXPAND_AS_DEFINED, it should!
PREDEFINED="APR_DECLARE(x)=x" \
       "APR_DECLARE_NONSTD(x)=x" \
       "AP_DECLARE_HOOK(ret,name,args)=ret name args;" \
       "APR_DECLARE_OPTIONAL_FN(ret,name,args)=ret name args;" \
       "APR_DECLARE_EXTERNAL_HOOK(ns,link,ret,name,args)= ret ns##_hook_##name args;" \
       "AP_DECLARE(x)=x" \
       "AP_DECLARE_NONSTD(x)=x" \
       AP_CORE_DECLARE(x)=x \
       "AP_CORE_DECLARE_NONSTD(x)=x" \       
       "APR_HAS_THREADS" \
       "APR_HAS_MMAP" \
	APR_HAS_INLINE \
	APR_HAS_FLOCK_SERIALIZE \
	APR_HAS_SYSVSEM_SERIALIZE \
	APR_HAS_POSIXSEM_SERIALIZE \
	APR_HAS_FCNTL_SERIALIZE \
	APR_HAS_PROC_PTHREAD_SERIALIZE \
	APR_HAS_RWLOCK_SERIALIZE \
	APR_HAS_SHARED_MEMORY \
	APR_HAS_SENDFILE \
	APR_HAS_FORK \
	APR_HAS_RANDOM \
	APR_HAS_XLATE \
	APR_HAS_OTHER_CHILD \
	APR_HAS_DSO \
	APR_HAS_SO_ACCEPTFILTER \
	APR_HAS_UNICODE_FS \
	APR_HAS_PROC_INVOKED \
	APR_HAS_USER \
	APR_HAS_LARGE_FILES \
	APR_HAS_XTHREAD_FILES \
	DOXYGEN= \
	APU_DECLARE_DATA= \
	__pre_nw__= \
	"APU_DECLARE(x)=x" \
	"CACHE_DECLARE(x)=x" \
	"PROXY_DECLARE(x)=x"
	

OPTIMIZE_OUTPUT_FOR_C=YES

GENERATE_TREEVIEW=YES

FULL_PATH_NAMES=YES
# some autoconf guru needs to make configure set this correctly...
#STRIP_FROM_PATH=/var/www/lxr/source

#GENERATE_TAGFILE=docs/dox/httpd.tag
#TAGFILES=../apr/docs/dox/apr.tag=/apr ../apr-util/docs/dox/apu.tag=/apr-util
