Commit Graph

476 Commits

Author SHA1 Message Date
Jakub Zelenka
cdc33251d2 Add OpenSSL 1.1.0 support to PHP 7.0 2017-04-07 19:21:33 +01:00
Remi Collet
015a80ef7b report about OpenSSL 1.1 not supported during configure 2017-02-22 08:39:07 +01:00
Ondřej Surý
1bdffee820
Prevent fd leak in readdir_r that causes false negative on readdir_r implementation when compiled with AddressSanitizer 2017-01-10 11:51:27 +00:00
Joe Watkins
699ab98f9d
fix build broken by #2124 2017-01-06 16:18:24 +00:00
Stanislav Malyshev
343c056772 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  acinclude.m4: fix krb5-config detection and usage in PHP_SETUP_KERBEROS.
  Add more mbfl string size checks (bug #73505)
2016-11-26 15:36:57 -08:00
Michael Orlitzky
114277ed45 acinclude.m4: fix krb5-config detection and usage in PHP_SETUP_KERBEROS.
When building with kerberos support (--with-kerberos), a few libraries
and flags need to be added to various parts of the build system. The
most reliable way to get those flags is through the krb5-config
program that ships with both major implementations of kerberos. The
PHP_SETUP_KERBEROS macro in acinclude.m4 attempts to detect
krb5-config, and use it.

However, there's a bug in that macro. The --with-kerberos parameter
accepts a directory where the kerberos libraries can be found. When a
directory is given, it is stored in the PHP_KERBEROS variable. The
following test,

  if test "$PHP_KERBEROS" = "yes" && test -x "$KRB5_CONFIG"; then

thus fails whenever a directory is passed to --with-kerberos, since it
compares a directory name against the string "yes". This causes
krb5-config to go unused, and some unreliable fallback logic is
attempted instead. One consequence of this is that the Heimdal
kerberos implementation cannot be substituted for the MIT one, at
least when a directory is passed to --with-kerberos.

This commit reverses the logic and checks for "$PHP_KERBEROS" != "no".
To confirm that this fixes the issue, one can inspect the "-l" library
flags that get appended to the command-line. On a machine with Heimdal
and the unmodified acinclude.m4, running

  ./configure --with-openssl --with-kerberos=/usr

will log (for example) to config.log,

  configure:18082: checking for krb5-config
  configure:18101: found /usr/bin/krb5-config
  configure:18114: result: /usr/bin/krb5-config
  configure:18450: checking for RAND_egd
  configure:18450: cc ... conftest.c ... -lgssapi_krb5 -lkrb5 ...

which are the library names for the MIT implementation. After patching
acinclude.m4 to negate the logic, the same command on the same machine
outputs (to config.log):

  configure:18450: cc ... conftest.c -lgssapi -lheimntlm ...

These are the correct library names for the Heimdal implementation.

PHP-Bug: 73214
2016-11-26 15:36:49 -08:00
Joe Watkins
274951a4a2 Fix #73219 (fix acinclude when / is present) 2016-11-20 05:34:08 +00:00
Joe Watkins
1524e00ccc improve 7132fe19c2 2016-05-13 12:47:36 +01:00
Joe Watkins
7132fe19c2 fix 1bb8a7b0b8 2016-05-13 09:25:15 +01:00
Joe Watkins
1bb8a7b0b8 fix #72180 (Env variables incorrectly pretty printed in config.nice, phpinfo) 2016-05-13 07:41:11 +01:00
Dmitry Stogov
59424bb7bd Fixed bug #71006 (symbol referencing errors on Sparc/Solaris) 2015-12-03 13:28:41 +03:00
Jakub Zelenka
6a81363405 Require at least OpenSSL version 0.9.8 2015-09-20 13:01:15 +01:00
Bob Weinand
82b73fd1e3 Remove assumption that extensions are in ext/ext-name
Fixes also a weird ln (symlink) hack for phpdbg
2015-08-21 00:13:02 +02:00
Dmitry Stogov
f596c953e4 Fixed PHP_CHECK_BUILTIN_EXPECT setting 2015-03-23 12:00:37 +03:00
Levi Morrison
017f89e871 Move check for __builtin_expect to configure
This allows __builtin_expect to be used more accurately
2015-03-22 10:31:14 -06:00
Maxime BESSON
f384971552 Look for PDO include files in the right folder
Configure scripts for extensions look for PDO include files in
$prefix/include/php. This change makes them look into $phpincludedir
instead, which may be different from $prefix/include/php.
2015-02-06 12:06:29 +01:00
Anatol Belski
ef6e9386e3 remove some remains from the old patch 2014-09-25 19:27:36 +02:00
Anatol Belski
fb17d6516d Merge remote-tracking branch 'origin/master' into native-tls
* origin/master:
  fixed copying of the struct as it's not being modified
  avoid strlen usage in loop
  Removes accidentally added files.
  Reverts some unwanted changes
  Deletes patch leftovers
  Replaces php5 with php7, without whitespace changes.
2014-09-20 21:37:19 +02:00
krakjoe
b3aebda9ea native tls initial patch 2014-09-20 20:22:14 +01:00
Florian MARGAINE
cf0303e782 Replaces php5 with php7, without whitespace changes. 2014-09-20 10:01:44 +02:00
Lior Kaplan
56d02d564e Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  typofixes
2014-08-17 15:51:15 +03:00
Lior Kaplan
be2128c805 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  typofixes
2014-08-17 15:48:22 +03:00
Veres Lajos
3f42f2f5d1 typofixes 2014-08-17 15:44:02 +03:00
Remi Collet
cc6c7dd8ff Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  NEWS
  NEWS
  Fix bug #67390 insecure temporary file use in the configure script
2014-06-06 14:19:05 +02:00
Remi Collet
38e11dfaee Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  NEWS
  Fix bug #67390 insecure temporary file use in the configure script
2014-06-06 14:18:17 +02:00
Remi Collet
91bcadd85e Fix bug #67390 insecure temporary file use in the configure script 2014-06-06 14:16:04 +02:00
Christopher Jones
2251e4369a Merge branch 'PHP-5.5'
* PHP-5.5:
  With --enable-dtrace, the correct PIC/non-PIC .o files on Solaris and Linux are now used.  DTrace is part of Oracle Linux.  See https://oss.oracle.com/projects/DTrace/
2013-08-16 10:57:55 -07:00
Christopher Jones
4b4ffaf703 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  With --enable-dtrace, the correct PIC/non-PIC .o files on Solaris and Linux are now used.  DTrace is part of Oracle Linux.  See https://oss.oracle.com/projects/DTrace/
2013-08-16 10:49:05 -07:00
Christopher Jones
0ebef462ce With --enable-dtrace, the correct PIC/non-PIC .o files on Solaris and
Linux are now used.  DTrace is part of Oracle Linux.  See
https://oss.oracle.com/projects/DTrace/

This patch does not change DTrace linking for non-Solaris/Linux
platforms.

For SystemTap users on Linux, this patch removes the compilation
warning:
  Warning: Linking the shared library libphp5.la against the
  non-libtool objects Zend/zend_dtrace.d.o is not portable!
2013-08-16 10:40:50 -07:00
Michael Wallner
14caf174ff unify stdint type usage
if you need C99 stdint types, just include "php_stdint.h"
2013-08-06 22:49:56 +02:00
Christopher Jones
ca0497bba2 Merge branch 'PHP-5.5'
* PHP-5.5:
  NEWS for recent DTrace merges. Remove redundant 'cp' during DTrace install.
  Fixed bug #62691 (solaris sed has no -i switch) Make 'make distclean' remove generated DTrace .h file
  Enable dtrace probes on linux as they are compatible with systemtap
  Fixed bug #63706: Cannot build PHP-5.5 with --enable-dtrace on Fedora 17
2013-08-05 15:46:54 -07:00
Christopher Jones
18f17818a6 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  NEWS for recent DTrace merges. Remove redundant 'cp' during DTrace install.
2013-08-05 15:40:56 -07:00
Christopher Jones
47d66a0b4e NEWS for recent DTrace merges.
Remove redundant 'cp' during DTrace install.
2013-08-05 15:38:36 -07:00
Christopher Jones
3bbe5931bc Fixed bug #62691 (solaris sed has no -i switch)
Make 'make distclean' remove generated DTrace .h file
2013-08-05 15:18:12 -07:00
David Soria Parra
a5c524f1be Enable dtrace probes on linux as they are compatible with systemtap
You can build php with dtrace probes enabled on linux if you have
systemtap with uprobes.
2013-08-05 15:07:04 -07:00
Remi Collet
3c5e229212 Fixed bug #63706: Cannot build PHP-5.5 with --enable-dtrace on Fedora 17 2013-08-05 14:52:12 -07:00
Christopher Jones
8fdf1ad32d Merge branch 'PHP-5.5'
* PHP-5.5:
  Add an empty make command for DTrace .d files to stop an implicit circular dependency in GNU Make which causes .d files to be overwritten (Bug 61268)
  Merge branch 'PHP-5.4'
2013-08-05 14:28:24 -07:00
Christopher Jones
b90b551228 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Add an empty make command for DTrace .d files to stop an implicit circular dependency in GNU Make which causes .d files to be overwritten (Bug 61268)
  Merge branch 'PHP-5.4'

Conflicts:
	ext/mysqlnd/mysqlnd.c
2013-08-05 14:27:54 -07:00
Christopher Jones
ec4019e8f6 Add an empty make command for DTrace .d files to stop an implicit
circular dependency in GNU Make which causes .d files to be
overwritten (Bug 61268)
2013-08-05 14:21:06 -07:00
Michael Wallner
a8bc184207 fix generating config.nice
Configure runs like:
$./configure -C CFLAGS="-ggdb" --enable-debug --prefix=$(pwd)/usr
did result in an empty config.nice

* allow single dash flags like -C, -s etc.
* allow passing evnironment variables as arguments
2013-08-02 13:15:55 +02:00
Christopher Jones
e3a4b87e89 Fixed bug #62691 (solaris sed has no -i switch)
Make 'make distclean' remove generated DTrace .h file
2013-07-31 09:58:28 -07:00
Adam Harvey
296a12efbb Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fix bug #65088 (Generated configure script is malformed on OpenBSD).
2013-06-23 11:04:10 -07:00
Adam Harvey
2531307be6 Fix bug #65088 (Generated configure script is malformed on OpenBSD).
We fell foul of a "common urban legend"[0], which resulted in us backslash
escaping double quotes that we didn't need to in acinclude.m4. This worked fine
on most shells, but OpenBSD's ksh implementation really didn't like it.

[0] http://www.gnu.org/savannah-checkouts/gnu/autoconf/manual/autoconf-2.69/html_node/Shell-Substitutions.html
2013-06-23 11:02:00 -07:00
Stanislav Malyshev
02e4d7a290 Merge branch 'pull-request/341'
* pull-request/341: (23 commits)
  typofixes
2013-06-10 14:30:59 -07:00
Stanislav Malyshev
ac40c0b562 Merge branch 'pull-request/341'
* pull-request/341: (23 commits)
  typofixes
2013-06-10 14:20:18 -07:00
Remi Collet
201128d39c Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  With pkgconfig < 0.28 output is a single space With pkgconfig = 0.28 output is an empty string, This breaks the test on the 2 vars
2013-03-28 10:25:39 +01:00
Remi Collet
640e72ce91 With pkgconfig < 0.28 output is a single space
With pkgconfig = 0.28 output is an empty string,
This breaks the test on the 2 vars

Need to split when
LIB set (ex -lssl -lcrypto)
INC empty (because /usr/include used)
2013-03-28 10:22:20 +01:00
Remi Collet
717b367085 Fixed bug #63706: Cannot build PHP-5.5 with --enable-dtrace on Fedora 17 2012-12-16 08:51:17 +01:00
David Soria Parra
3de00bc615 Enable dtrace probes on linux as they are compatible with systemtap
You can build php with dtrace probes enabled on linux if you have
systemtap with uprobes.
2012-12-04 19:36:06 +01:00
Gustavo Lopes
011af74b23 Fix version in check message 2012-08-26 23:12:41 +02:00