diff options
author | Steph Fox <sfox@php.net> | 2008-08-01 13:45:06 +0000 |
---|---|---|
committer | Steph Fox <sfox@php.net> | 2008-08-01 13:45:06 +0000 |
commit | c6aa379d74535bf5e245fa9941b235498f987196 (patch) | |
tree | 424c932ee1b638095dbc89f7bd980111cfc69617 /ext/phar/config.w32 | |
parent | 63249f7ea3068d57f59f2e5c95563a0a8376d106 (diff) | |
download | php-git-c6aa379d74535bf5e245fa9941b235498f987196.tar.gz |
- This is as good as it gets in HEAD at present (~30% tests fail here)
Diffstat (limited to 'ext/phar/config.w32')
-rw-r--r-- | ext/phar/config.w32 | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/ext/phar/config.w32 b/ext/phar/config.w32 index cbc68ca2e5..6632180649 100644 --- a/ext/phar/config.w32 +++ b/ext/phar/config.w32 @@ -2,11 +2,37 @@ // vim:ft=javascript ARG_ENABLE("phar", "enable phar support", "no"); +ARG_ENABLE("phar-native-ssl", "enable phar with native OpenSSL support", "no"); + +if (PHP_PHAR_NATIVE_SSL != "no") { + PHP_PHAR = PHP_PHAR_NATIVE_SSL; + PHP_PHAR_SHARED = PHP_PHAR_NATIVE_SSL_SHARED; +} if (PHP_PHAR != "no") { EXTENSION("phar", "dirstream.c func_interceptors.c phar.c phar_object.c phar_path_check.c stream.c tar.c util.c zip.c"); if (PHP_PHAR_SHARED) { ADD_FLAG("CFLAGS_PHAR", "/D COMPILE_DL_PHAR "); } + if (PHP_PHAR_NATIVE_SSL != "no") { + if (CHECK_LIB("libeay32st.lib", "phar")) { + /* We don't really need GDI for this, but there's no + way to avoid linking it in the static openssl build */ + ADD_FLAG("LIBS_PHAR", "libeay32st.lib gdi32.lib"); + if (PHP_DEBUG == "no") { + /* Silence irrelevant-to-us warning in release builds */ + ADD_FLAG("LDFLAGS_PHAR", "/IGNORE:4089 "); + } + AC_DEFINE('PHAR_HAVE_OPENSSL', 1); + STDOUT.WriteLine(' Native OpenSSL support in Phar enabled'); + } else { + WARNING('Could not enable native OpenSSL support in Phar'); + } + } else { + /* If ext/openssl is built-in we can at least use the API directly */ + if (PHP_OPENSSL != "no" && !PHP_OPENSSL_SHARED) { + AC_DEFINE('PHAR_HAVE_OPENSSL', 1); + } + } ADD_EXTENSION_DEP('phar', 'spl', true); } |