1ngx_feature_name= 2ngx_feature_run=no 3ngx_feature_incs="#include <libpq-fe.h>" 4ngx_feature_test="(void) PQconndefaults();" 5 6if [ -n "$LIBPQ_INC" -o -n "$LIBPQ_LIB" ]; then 7 # specified by LIBPQ_INC and LIBPQ_LIB 8 ngx_feature="libpq library in directories specified by LIBPQ_INC ($LIBPQ_INC) and LIBPQ_LIB ($LIBPQ_LIB)" 9 ngx_feature_path="$LIBPQ_INC" 10 if [ $NGX_RPATH = YES ]; then 11 ngx_feature_libs="-R$LIBPQ_LIB -L$LIBPQ_LIB -lpq" 12 else 13 ngx_feature_libs="-L$LIBPQ_LIB -lpq" 14 fi 15 . auto/feature 16else 17 if [ -z "$PG_CONFIG" ]; then 18 PG_CONFIG=pg_config 19 fi 20 21 if type $PG_CONFIG >/dev/null 2>&1; then 22 # based on information from pg_config 23 ngx_feature="libpq library (via $PG_CONFIG)" 24 ngx_feature_path="`$PG_CONFIG --includedir`" 25 if [ $NGX_RPATH = YES ]; then 26 ngx_feature_libs="-R`$PG_CONFIG --libdir` -L`$PG_CONFIG --libdir` -lpq" 27 else 28 ngx_feature_libs="-L`$PG_CONFIG --libdir` -lpq" 29 fi 30 . auto/feature 31 fi 32 33 # auto-discovery 34 if [ $ngx_found = no ]; then 35 # system-wide 36 ngx_feature="libpq library" 37 ngx_feature_path= 38 ngx_feature_libs="-lpq" 39 . auto/feature 40 fi 41 42 if [ $ngx_found = no ]; then 43 # Debian 44 ngx_feature="libpq library in /usr/../postgresql/" 45 ngx_feature_path="/usr/include/postgresql" 46 . auto/feature 47 fi 48 49 if [ $ngx_found = no ]; then 50 # FreeBSD 51 ngx_feature="libpq library in /usr/local/" 52 ngx_feature_path="/usr/local/include" 53 if [ $NGX_RPATH = YES ]; then 54 ngx_feature_libs="-R/usr/local/lib -L/usr/local/lib -lpq" 55 else 56 ngx_feature_libs="-L/usr/local/lib -lpq" 57 fi 58 . auto/feature 59 fi 60 61 if [ $ngx_found = no ]; then 62 # OpenBSD 63 ngx_feature="libpq library in /usr/local/../postgresql/" 64 ngx_feature_path="/usr/local/include/postgresql" 65 if [ $NGX_RPATH = YES ]; then 66 ngx_feature_libs="-R/usr/local/lib -L/usr/local/lib -lpq" 67 else 68 ngx_feature_libs="-L/usr/local/lib -lpq" 69 fi 70 . auto/feature 71 fi 72 73 if [ $ngx_found = no ]; then 74 # NetBSD 75 ngx_feature="libpq library in /usr/pkg/" 76 ngx_feature_path="/usr/pkg/include" 77 if [ $NGX_RPATH = YES ]; then 78 ngx_feature_libs="-R/usr/pkg/lib -L/usr/pkg/lib -lpq" 79 else 80 ngx_feature_libs="-L/usr/pkg/lib -lpq" 81 fi 82 . auto/feature 83 fi 84 85 if [ $ngx_found = no ]; then 86 # MacPorts 87 ngx_feature="libpq library in /opt/local/" 88 ngx_feature_path="/opt/local/include" 89 if [ $NGX_RPATH = YES ]; then 90 ngx_feature_libs="-R/opt/local/lib -L/opt/local/lib -lpq" 91 else 92 ngx_feature_libs="-L/opt/local/lib -lpq" 93 fi 94 . auto/feature 95 fi 96fi 97 98if [ $ngx_found = no ]; then 99 cat << END 100 $0: error: ngx_postgres addon was unable to find the libpq library. 101END 102 exit 1 103fi 104 105lib_version=90600 106ngx_feature="libpq library version 9.6" 107 108if [ $ngx_found = no ]; then 109 lib_version=90500 110 ngx_feature="libpq library version 9.5" 111 ngx_feature_test="printf(\"%d\", PQlibVersion())" 112 . auto/feature 113fi 114 115if [ $ngx_found = no ]; then 116 lib_version=90400 117 ngx_feature="libpq library version 9.4" 118 ngx_feature_test="printf(\"%d\", PQlibVersion())" 119 . auto/feature 120fi 121 122if [ $ngx_found = no ]; then 123 lib_version=90300 124 ngx_feature="libpq library version 9.3" 125 ngx_feature_test="printf(\"%d\", PQlibVersion())" 126 . auto/feature 127fi 128 129if [ $ngx_found = no ]; then 130 lib_version=90200 131 ngx_feature="libpq library version 9.2" 132 ngx_feature_test="printf(\"%d\", PQlibVersion())" 133 . auto/feature 134fi 135 136if [ $ngx_found = no ]; then 137 lib_version=90100 138 ngx_feature="libpq library version 9.1" 139 ngx_feature_test="printf(\"%d\", PQlibVersion())" 140 . auto/feature 141fi 142 143if [ $ngx_found = no ]; then 144 cat << END 145 $0: error: ngx_postgres addon was unable to detect version of the libpq library. 146END 147 exit 1 148fi 149 150ngx_addon_name=ngx_postgres_module 151NGX_SRCS="$ngx_addon_dir/src/ngx_postgres_escape.c $ngx_addon_dir/src/ngx_postgres_handler.c $ngx_addon_dir/src/ngx_postgres_keepalive.c $ngx_addon_dir/src/ngx_postgres_module.c $ngx_addon_dir/src/ngx_postgres_output.c $ngx_addon_dir/src/ngx_postgres_processor.c $ngx_addon_dir/src/ngx_postgres_rewrite.c $ngx_addon_dir/src/ngx_postgres_upstream.c $ngx_addon_dir/src/ngx_postgres_util.c $ngx_addon_dir/src/ngx_postgres_variable.c" 152NGX_DEPS="$ngx_addon_dir/src/ngx_postgres_escape.h $ngx_addon_dir/src/ngx_postgres_handler.h $ngx_addon_dir/src/ngx_postgres_keepalive.h $ngx_addon_dir/src/ngx_postgres_module.h $ngx_addon_dir/src/ngx_postgres_output.h $ngx_addon_dir/src/ngx_postgres_processor.h $ngx_addon_dir/src/ngx_postgres_rewrite.h $ngx_addon_dir/src/ngx_postgres_upstream.h $ngx_addon_dir/src/ngx_postgres_util.h $ngx_addon_dir/src/ngx_postgres_variable.h $ngx_addon_dir/src/ngx_postgres_ddebug.h $ngx_addon_dir/src/resty_dbd_stream.h" 153 154if test -n "$ngx_module_link"; then 155 ngx_module_type=HTTP 156 ngx_module_name=ngx_postgres_module 157 ngx_module_srcs="$NGX_SRCS" 158 ngx_module_deps="$NGX_DEPS" 159 ngx_module_libs="$ngx_feature_libs" 160 ngx_module_incs="$ngx_feature_path" 161 . auto/module 162else 163 HTTP_MODULES="$HTTP_MODULES ngx_postgres_module" 164 NGX_ADDON_SRCS="$NGX_ADDON_SRCS $NGX_SRCS" 165 NGX_ADDON_DEPS="$NGX_ADDON_DEPS $NGX_DEPS" 166 CORE_INCS="$CORE_INCS $ngx_feature_path" 167 CORE_LIBS="$CORE_LIBS $ngx_feature_libs" 168fi 169 170have=NGX_POSTGRES_MODULE . auto/have