Commit Graph

101 Commits

Author SHA1 Message Date
Tianon Gravi
3dc9a6988d Add "--with-pic" to configure flags (specifically to fix i386)
After looking/comparing at the output of `./configure` for our i386 and amd64 builds against that of Debian's i386 build, our i386 build was the only one of the three to include `checking whether to force non-PIC code in shared modules... yes` (the other two were `no`).

Debian includes `--with-pic`, and we do not.

Looking at the upstream PHP code for this configure check (313a56add0/configure.ac (L241-L256)), this makes total sense, and explains why i386 is the only architecture we see this issue on:

```m4
dnl Disable PIC mode by default where it is known to be safe to do so, to avoid
dnl the performance hit from the lost register.
AC_MSG_CHECKING([whether to force non-PIC code in shared modules])
case $host_alias in
  i?86-*-linux*|i?86-*-freebsd*)
    if test "${with_pic+set}" != "set" || test "$with_pic" = "no"; then
      with_pic=no
      AC_MSG_RESULT(yes)
    else
      AC_MSG_RESULT(no)
    fi
    ;;
  *)
    AC_MSG_RESULT(no)
    ;;
esac
```

This was probably already implied by our `CFLAGS` (and the compiler) on Alpine, but I figured it doesn't hurt to be explicit / consistent.
2020-11-04 17:22:43 -08:00
Joe Ferguson
e12d4c5d46 Drop md5 checksums 2020-10-29 13:51:51 -07:00
Joe Ferguson
a940d67380 Drop .so from "extension=" in docker-php-ext-enable generated ini files 2020-10-23 12:34:00 -07:00
Docker Library Bot
fbba7966bc Update 7.2 to 7.2.34 2020-10-01 14:15:57 +00:00
Tianon Gravi
165f8ca09c Add initial jq-based templating engine 2020-08-28 15:17:53 -07:00
Docker Library Bot
8663909bd0 Update to 7.2.33 2020-08-06 12:46:15 +00:00
Docker Library Bot
25b211a712 Update to 7.2.32 2020-07-09 17:52:38 +00:00
Tianon Gravi
1daa5daf97 Properly pin all buster dists in stretch-based images 2020-06-22 11:00:40 -07:00
J0WI
99e1354f48 Add Alpine 3.12 2020-06-11 00:49:23 +02:00
Joe Ferguson
a041c4250b Add ini-name to ext-install to pass along to ext-enable
Support an absolute path for --ini-name
2020-06-02 10:41:14 -07:00
Docker Library Bot
057b438e69 Update to 7.2.31 2020-05-14 12:46:13 +00:00
Tianon Gravi
b3532e478a Update upstream download URLs
These are the URLs listed on https://www.php.net/downloads (and the URLs Homebrew is using), so they seem more appropriate/correct than these older URLs we've been using.
2020-05-05 13:28:02 -07:00
Tianon Gravi
1cc409c705 Apply typo fixes 2020-04-27 11:51:58 -07:00
Tianon Gravi
d41f0d0c2a Update to 7.2.30 (security update)
Closes #1002
2020-04-17 13:36:13 -07:00
Tianon Gravi
7ccfc9272c Remove "--hash-style=both"
It turns out that --hash-style=gnu is considered better than either of --hash-style=both or --hash-style=sysv, assuming your environment/platform supports it.

On amd64 with both Debian's and Alpine's linkers, --hash-style=gnu is the default.

This is especially relevant on MIPS (mips64le), where "ld: .gnu.hash is incompatible with the MIPS ABI" (so the linker sanely defaults to --hash-style=sysv there, as it should).
2020-04-16 20:49:46 -07:00
Docker Library Bot
03574f9618 Update to 7.2.29 2020-03-19 15:09:56 +00:00
Docker Library Bot
23ac7b5e0d Update to 7.2.28 2020-02-20 12:18:24 +00:00
Docker Library Bot
bac7b0ca07 Update to 7.2.27 2020-01-23 13:46:14 +00:00
J0WI
622b2415c6 Add Alpine 3.11 2019-12-20 01:33:57 +01:00
Docker Library Bot
331e0f4b4d Update to 7.2.26 2019-12-18 13:46:13 +00:00
Joe Ferguson
9bcb75e9db Prevent "silent" failures by having docker-php-ext-configure error on unknown flags so users have to fix them
"configure: WARNING: unrecognized options" just gets lost in all the configure output
2019-12-03 16:32:01 -08:00
Tianon Gravi
49d861431a Swap "WINCH" for "SIGWINCH" (which fixes containerd's ability to use this value) 2019-11-28 07:42:43 -08:00
Docker Library Bot
4bac7da6e7 Update to 7.2.25 2019-11-21 19:46:17 +00:00
Docker Library Bot
af0a051a02 Update to 7.2.24 2019-10-24 12:46:17 +00:00
Tianon Gravi
88a8a1e14a Add comment to remind us why we added largefile support 2019-10-21 10:36:14 -07:00
Delfer
168caf5849 Enabled large file support (affects 32bit systems)
Build flags added: -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64
According to https://www.php.net/manual/en/intro.filesystem.php
2019-10-21 10:33:20 -07:00
Ivan Kurnosov
3a546766fd Always build with external sqlite 2019-10-02 16:05:35 -07:00
Tianon Gravi
05b4342c7b Update to 7.2.23 2019-09-26 08:55:08 -07:00
Docker Library Bot
3308ce8ba0 Update to 7.2.22 2019-08-30 00:48:55 +00:00
Tianon Gravi
9e50ad0642 Set STOPSIGNAL to WINCH for httpd's "graceful-stop"
See https://httpd.apache.org/docs/2.4/stopping.html#gracefulstop for more details!

Closes #877
2019-08-20 13:12:33 -07:00
Docker Library Bot
b909ae3f88 Update to 7.2.21 2019-08-01 12:46:37 +00:00
Joe Ferguson
7eb1b847f1 Update s390x test to the proper dpkg-architecture value
+ dpkg-architecture --query DEB_BUILD_GNU_TYPE
+ gnuArch=s390x-linux-musl
+ test s390x-linux-musl '=' s390x-linux-gnu
2019-07-25 16:06:53 -07:00
Tianon Gravi
a0ce8afda4 Add temporary "freetype-config" workaround for PHP 7.3, 7.2, and 7.1 on buster
See:

- https://github.com/docker-library/php/issues/865
- https://bugs.php.net/bug.php?id=76324
- https://github.com/php/php-src/pull/3632
- 2d03197749

This is not necessary for Debian Stretch (where `freetype-config` still exists) nor PHP 7.4+ (where `pkg-config` is used instead/in addition).
2019-07-19 14:20:04 -07:00
J0WI
ccbe53516f Add Debian Buster variant 2019-07-10 17:20:35 +02:00
Docker Library Bot
66234ccc01 Update to 7.2.20 2019-07-04 12:46:24 +00:00
Tianon Gravi
afa08b1838 Replace "stretch" with "buster" for PHP 7.4-rc given the imminent Debian release
Also, ditch Alpine 3.9 on PHP 7.4-rc.
2019-07-01 14:26:08 -07:00
Tianon Gravi
250c2d872d Add "set -u" and more consistency 2019-06-24 14:55:17 -07:00
J0WI
82d590a8c7 Use already available curl and consistent code style 2019-06-24 12:55:09 -07:00
J0WI
3802051cc9 Add Alpine 3.10 2019-06-20 15:20:27 +02:00
Joe Ferguson
3a3efd8f02 Drop alpine 3.8 and jessie builds; these were only kept around for users to transition to stretch or 3.9 (see https://github.com/docker-library/php/issues/504) 2019-06-14 16:41:39 -07:00
Joe Ferguson
a9f19e9df5 Apply minor changes to non 7.4 versions to make deleting lines easier for 7.4 2019-06-14 14:04:15 -07:00
Tianon Gravi
a7e2de0e8f Send PHP errors/warnings to stderr in our scripts 2019-06-07 14:00:03 -07:00
Docker Library Bot
fa29b56ad4 Update to 7.2.19 2019-05-30 18:46:11 +00:00
Docker Library Bot
d9352e08aa Update to 7.2.18 2019-05-02 12:46:10 +00:00
Tianon Gravi
545a73c970 Update comment format to match our other inline comments 2019-04-23 14:31:59 -07:00
Luís Cobucci
e21810a050
Perform graceful stops on PHP-FPM
The default signal used by docker to stop a container is SIGTERM and
that signal is understood by PHP-FPM as immediate termination.

This means that `php-fpm` won't wait for in-flight requests to finish
before of stopping the workers and main process. This behaviour is quite
undesired for production environments and should be avoided as much as
possible.

This implementation is meant to be extremely simple and only address the
stop signal used when running `docker stop`. `php-fpm` signal choices
are somewhat peculiar (`SIGUSR2` for example) and if we want to "fix"
them we would have to use a tool (e.g.: `dumb-init`).

More info:

 - https://linux.die.net/man/8/php-fpm
 - https://docs.docker.com/engine/reference/builder/#stopsignal
 - https://github.com/Yelp/dumb-init
 - https://github.com/usabilla/php-docker-template/pull/102
2019-04-18 17:20:45 +02:00
Docker Library Bot
cf02ea0f79 Update to 7.2.17 2019-04-04 22:16:22 +00:00
Docker Library Bot
873725e57e Update to 7.2.16 2019-03-07 13:47:49 +00:00
Tianon Gravi
a1ebdc9851 Remove "--virtual" where it's not providing value (and use "apk del --no-network" consistently) 2019-03-04 16:41:05 -08:00
Joe Ferguson
640a30e8ff Apply 'remove extensions/*.a' to templates and run update.sh 2019-02-14 16:30:31 -08:00