diff options
Diffstat (limited to 'auto/modules/python')
-rw-r--r-- | auto/modules/python/conf | 54 | ||||
-rw-r--r-- | auto/modules/python/make | 24 |
2 files changed, 78 insertions, 0 deletions
diff --git a/auto/modules/python/conf b/auto/modules/python/conf new file mode 100644 index 00000000..1c298a2d --- /dev/null +++ b/auto/modules/python/conf @@ -0,0 +1,54 @@ + +# Copyright (C) NGINX, Inc. +# Copyright (C) Valentin V. Bartenev + + +NXT_PYTHON_VERSION=`${NXT_PYTHON} -c \ + 'import sysconfig, sys; \ + sys.stdout.write(sysconfig.get_python_version())'` + +NXT_PYTHON_INCLUDE=`${NXT_PYTHON} -c \ + 'import sysconfig, sys; \ + sys.stdout.write(sysconfig.get_path("platinclude"))'` + +NXT_PYTHON_LIB="-lpython${NXT_PYTHON_VERSION}" + +NXT_PYTHON_LIBS=`${NXT_PYTHON} -c \ + 'import sysconfig, sys; \ + sys.stdout.write(sysconfig.get_config_var("SYSLIBS") \ + + " " + sysconfig.get_config_var("LIBS"))'` + + +nxt_feature="Python" +nxt_feature_name=NXT_HAVE_PYTHON +nxt_feature_run=no +nxt_feature_incs="-I${NXT_PYTHON_INCLUDE}" +nxt_feature_libs="$NXT_PYTHON_LIB $NXT_PYTHON_LIBS" +nxt_feature_test="#include <Python.h> + + int main() { + Py_Initialize(); + }" + +. auto/feature + +if [ $nxt_found = no ]; then + $echo + $echo $0: error: no Python found. + $echo + exit 1; +fi + + +$echo " + Python version: ${NXT_PYTHON_VERSION}" + + +NXT_PYTHON_MODULE_SRCS=" \ + src/nxt_python_wsgi.c \ +" + + +NXT_MODULES_INIT="$NXT_MODULES_INIT nxt_python_wsgi_init" +NXT_MODULES_SRCS="$NXT_MODULES_SRCS $NXT_PYTHON_MODULE_SRCS" + +NXT_LIB_AUX_LIBS="$NXT_LIB_AUX_LIBS $NXT_PYTHON_LIB $NXT_PYTHON_LIBS" diff --git a/auto/modules/python/make b/auto/modules/python/make new file mode 100644 index 00000000..edb8f0c0 --- /dev/null +++ b/auto/modules/python/make @@ -0,0 +1,24 @@ + +# Copyright (C) NGINX, Inc. +# Copyright (C) Valentin V. Bartenev + + +$echo >> $NXT_MAKEFILE +$echo >> $NXT_MAKEFILE + + +# The python module object files. + +for nxt_src in $NXT_PYTHON_MODULE_SRCS +do + nxt_obj=`$echo $nxt_src | sed -e "s/\.c$/\.o/"` + cat << END >> $NXT_MAKEFILE + +$NXT_BUILD_DIR/$nxt_obj: $nxt_src + \$(CC) -c \$(CFLAGS) \$(NXT_INCS) -I $NXT_PYTHON_INCLUDE \\ + $NXT_LIB_AUX_CFLAGS \\ + -o $NXT_BUILD_DIR/$nxt_obj \\ + $nxt_src +END + +done |