aboutsummaryrefslogtreecommitdiffstats
path: root/app/nginx/auto/lib/pcre/conf
diff options
context:
space:
mode:
authorKonstantin Ananyev <konstantin.ananyev@intel.com>2017-10-31 12:40:17 +0000
committerKonstantin Ananyev <konstantin.ananyev@intel.com>2017-10-31 14:19:39 +0000
commite18a033b921d0d79fa8278f853548e6125b93e0c (patch)
treea6a55edf6ddceef824561818c9836914c326340d /app/nginx/auto/lib/pcre/conf
parent7e18fa1bf263822c46d7431a911b41d6377d5f69 (diff)
Integrate TLDK with NGINX
Created a clone of nginx (from https://github.com/nginx/nginx) to demonstrate and benchmark TLDK library integrated with real world application. A new nginx module is created and and BSD socket-like API is implemented on top of native TLDK API. Note, that right now only minimalistic subset of socket-like API is provided: - accept - close - readv - recv - writev so only limited nginx functionality is available for a moment. Change-Id: Ie1efe9349a0538da4348a48fb8306cbf636b5a92 Signed-off-by: Mohammad Abdul Awal <mohammad.abdul.awal@intel.com> Signed-off-by: Reshma Pattan <reshma.pattan@intel.com> Signed-off-by: Remy Horton <remy.horton@intel.com> Signed-off-by: Konstantin Ananyev <konstantin.ananyev@intel.com>
Diffstat (limited to 'app/nginx/auto/lib/pcre/conf')
-rw-r--r--app/nginx/auto/lib/pcre/conf203
1 files changed, 203 insertions, 0 deletions
diff --git a/app/nginx/auto/lib/pcre/conf b/app/nginx/auto/lib/pcre/conf
new file mode 100644
index 0000000..5e3960f
--- /dev/null
+++ b/app/nginx/auto/lib/pcre/conf
@@ -0,0 +1,203 @@
+
+# Copyright (C) Igor Sysoev
+# Copyright (C) Nginx, Inc.
+
+
+if [ $PCRE != NONE ]; then
+ CORE_INCS="$CORE_INCS $PCRE"
+
+ case "$NGX_CC_NAME" in
+
+ msvc | owc | bcc)
+ have=NGX_PCRE . auto/have
+ have=PCRE_STATIC . auto/have
+ CORE_DEPS="$CORE_DEPS $PCRE/pcre.h"
+ LINK_DEPS="$LINK_DEPS $PCRE/pcre.lib"
+ CORE_LIBS="$CORE_LIBS $PCRE/pcre.lib"
+ ;;
+
+ icc)
+ have=NGX_PCRE . auto/have
+ CORE_DEPS="$CORE_DEPS $PCRE/pcre.h"
+
+ LINK_DEPS="$LINK_DEPS $PCRE/.libs/libpcre.a"
+
+ echo $ngx_n "checking for PCRE library ...$ngx_c"
+
+ if [ -f $PCRE/pcre.h ]; then
+ ngx_pcre_ver=`grep PCRE_MAJOR $PCRE/pcre.h \
+ | sed -e 's/^.*PCRE_MAJOR.* \(.*\)$/\1/'`
+
+ else if [ -f $PCRE/configure.in ]; then
+ ngx_pcre_ver=`grep PCRE_MAJOR= $PCRE/configure.in \
+ | sed -e 's/^.*=\(.*\)$/\1/'`
+
+ else
+ ngx_pcre_ver=`grep pcre_major, $PCRE/configure.ac \
+ | sed -e 's/^.*pcre_major,.*\[\(.*\)\].*$/\1/'`
+ fi
+ fi
+
+ echo " $ngx_pcre_ver major version found"
+
+ # to allow -ipo optimization we link with the *.o but not library
+
+ case "$ngx_pcre_ver" in
+ 4|5)
+ CORE_LIBS="$CORE_LIBS $PCRE/pcre.o"
+ ;;
+
+ 6)
+ CORE_LIBS="$CORE_LIBS $PCRE/pcre_chartables.o"
+ CORE_LIBS="$CORE_LIBS $PCRE/pcre_compile.o"
+ CORE_LIBS="$CORE_LIBS $PCRE/pcre_exec.o"
+ CORE_LIBS="$CORE_LIBS $PCRE/pcre_fullinfo.o"
+ CORE_LIBS="$CORE_LIBS $PCRE/pcre_globals.o"
+ CORE_LIBS="$CORE_LIBS $PCRE/pcre_tables.o"
+ CORE_LIBS="$CORE_LIBS $PCRE/pcre_try_flipped.o"
+ ;;
+
+ *)
+ CORE_LIBS="$CORE_LIBS $PCRE/pcre_chartables.o"
+ CORE_LIBS="$CORE_LIBS $PCRE/pcre_compile.o"
+ CORE_LIBS="$CORE_LIBS $PCRE/pcre_exec.o"
+ CORE_LIBS="$CORE_LIBS $PCRE/pcre_fullinfo.o"
+ CORE_LIBS="$CORE_LIBS $PCRE/pcre_globals.o"
+ CORE_LIBS="$CORE_LIBS $PCRE/pcre_tables.o"
+ CORE_LIBS="$CORE_LIBS $PCRE/pcre_try_flipped.o"
+ CORE_LIBS="$CORE_LIBS $PCRE/pcre_newline.o"
+ ;;
+
+ esac
+ ;;
+
+ *)
+ have=NGX_PCRE . auto/have
+
+ if [ "$NGX_PLATFORM" = win32 ]; then
+ have=PCRE_STATIC . auto/have
+ fi
+
+ CORE_DEPS="$CORE_DEPS $PCRE/pcre.h"
+ LINK_DEPS="$LINK_DEPS $PCRE/.libs/libpcre.a"
+ CORE_LIBS="$CORE_LIBS $PCRE/.libs/libpcre.a"
+ ;;
+
+ esac
+
+
+ if [ $PCRE_JIT = YES ]; then
+ have=NGX_HAVE_PCRE_JIT . auto/have
+ PCRE_CONF_OPT="$PCRE_CONF_OPT --enable-jit"
+ fi
+
+else
+
+ if [ "$NGX_PLATFORM" != win32 ]; then
+
+ PCRE=NO
+
+ ngx_feature="PCRE library"
+ ngx_feature_name="NGX_PCRE"
+ ngx_feature_run=no
+ ngx_feature_incs="#include <pcre.h>"
+ ngx_feature_path=
+ ngx_feature_libs="-lpcre"
+ ngx_feature_test="pcre *re;
+ re = pcre_compile(NULL, 0, NULL, 0, NULL);
+ if (re == NULL) return 1"
+ . auto/feature
+
+ if [ $ngx_found = no ]; then
+
+ # FreeBSD port
+
+ ngx_feature="PCRE library in /usr/local/"
+ ngx_feature_path="/usr/local/include"
+
+ if [ $NGX_RPATH = YES ]; then
+ ngx_feature_libs="-R/usr/local/lib -L/usr/local/lib -lpcre"
+ else
+ ngx_feature_libs="-L/usr/local/lib -lpcre"
+ fi
+
+ . auto/feature
+ fi
+
+ if [ $ngx_found = no ]; then
+
+ # RedHat RPM, Solaris package
+
+ ngx_feature="PCRE library in /usr/include/pcre/"
+ ngx_feature_path="/usr/include/pcre"
+ ngx_feature_libs="-lpcre"
+
+ . auto/feature
+ fi
+
+ if [ $ngx_found = no ]; then
+
+ # NetBSD port
+
+ ngx_feature="PCRE library in /usr/pkg/"
+ ngx_feature_path="/usr/pkg/include"
+
+ if [ $NGX_RPATH = YES ]; then
+ ngx_feature_libs="-R/usr/pkg/lib -L/usr/pkg/lib -lpcre"
+ else
+ ngx_feature_libs="-L/usr/pkg/lib -lpcre"
+ fi
+
+ . auto/feature
+ fi
+
+ if [ $ngx_found = no ]; then
+
+ # MacPorts
+
+ ngx_feature="PCRE library in /opt/local/"
+ ngx_feature_path="/opt/local/include"
+
+ if [ $NGX_RPATH = YES ]; then
+ ngx_feature_libs="-R/opt/local/lib -L/opt/local/lib -lpcre"
+ else
+ ngx_feature_libs="-L/opt/local/lib -lpcre"
+ fi
+
+ . auto/feature
+ fi
+
+ if [ $ngx_found = yes ]; then
+ CORE_INCS="$CORE_INCS $ngx_feature_path"
+ CORE_LIBS="$CORE_LIBS $ngx_feature_libs"
+ PCRE=YES
+ fi
+
+ if [ $PCRE = YES ]; then
+ ngx_feature="PCRE JIT support"
+ ngx_feature_name="NGX_HAVE_PCRE_JIT"
+ ngx_feature_test="int jit = 0;
+ pcre_free_study(NULL);
+ pcre_config(PCRE_CONFIG_JIT, &jit);
+ if (jit != 1) return 1;"
+ . auto/feature
+
+ if [ $ngx_found = yes ]; then
+ PCRE_JIT=YES
+ fi
+ fi
+ fi
+
+ if [ $PCRE != YES ]; then
+cat << END
+
+$0: error: the HTTP rewrite module requires the PCRE library.
+You can either disable the module by using --without-http_rewrite_module
+option, or install the PCRE library into the system, or build the PCRE library
+statically from the source with nginx by using --with-pcre=<path> option.
+
+END
+ exit 1
+ fi
+
+fi