#!/bin/sh

# Copyright (C) Igor Sysoev


. auto/options
. auto/init
. auto/sources

test -d $OBJS || mkdir $OBJS
echo > $NGX_AUTO_CONFIG_H

if [ $DEBUG = YES ]; then
    have=NGX_DEBUG . auto/have
fi

have=NGX_USE_HTTP_FILE_CACHE_UNIQ . auto/have
have=NGX_SUPPRESS_WARN . auto/have


if [ "$PLATFORM" != win32 ]; then
    . auto/headers
fi

. auto/os/conf
. auto/modules

. auto/cc
. auto/lib/conf

if [ "$PLATFORM" != win32 ]; then
    . auto/threads
fi

. auto/make
. auto/lib/make
. auto/install

if [ "$PLATFORM" != win32 ]; then
    . auto/unix
fi

have=NGX_SMP . auto/have

have=NGX_PREFIX value="\"$PREFIX/\"" . auto/define
have=NGX_SBIN_PATH value="\"$SBIN_PATH\"" . auto/define
have=NGX_CONF_PATH value="\"$CONF_PATH\"" . auto/define
have=NGX_PID_PATH value="\"$PID_PATH\"" . auto/define
if [ ".$ERROR_LOG_PATH" != "." ]; then
    have=NGX_ERROR_LOG_PATH value="\"$ERROR_LOG_PATH\"" . auto/define
fi
have=NGX_HTTP_LOG_PATH value="\"$HTTP_LOG_PATH\"" . auto/define

. auto/summary
