12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879 |
- #!/bin/sh
- set -e
-
- cd /usr/src/php/ext
-
- usage() {
- echo "usage: $0 [-jN] ext-name [ext-name ...]"
- echo " ie: $0 gd mysqli"
- echo " $0 pdo pdo_mysql"
- echo " $0 -j5 gd mbstring mysqli pdo pdo_mysql shmop"
- echo
- echo 'if custom ./configure arguments are necessary, see docker-php-ext-configure'
- echo
- echo 'Possible values for ext-name:'
- echo $(find /usr/src/php/ext -mindepth 2 -maxdepth 2 -type f -name 'config.m4' | cut -d/ -f6 | sort)
- }
-
- opts="$(getopt -o 'h?j:' --long 'help,jobs:' -- "$@" || { usage >&2 && false; })"
- eval set -- "$opts"
-
- j=1
- while true; do
- flag="$1"
- shift
- case "$flag" in
- --help|-h|'-?') usage && exit 0 ;;
- --jobs|-j) j="$1" && shift ;;
- --) break ;;
- *)
- {
- echo "error: unknown flag: $flag"
- usage
- } >&2
- exit 1
- ;;
- esac
- done
-
- exts=
- for ext; do
- if [ -z "$ext" ]; then
- continue
- fi
- if [ ! -d "$ext" ]; then
- echo >&2 "error: $(pwd -P)/$ext does not exist"
- echo >&2
- usage >&2
- exit 1
- fi
- exts="$exts $ext"
- done
-
- if [ -z "$exts" ]; then
- usage >&2
- exit 1
- fi
-
- if [ -e /lib/apk/db/installed ] && [ -n "$PHPIZE_DEPS" ]; then
- apk add --no-cache --virtual .phpize-deps $PHPIZE_DEPS
- fi
-
- for ext in $exts; do
- (
- cd "$ext"
- [ -e Makefile ] || docker-php-ext-configure "$ext"
- make -j"$j"
- make -j"$j" install
- find modules \
- -maxdepth 1 \
- -name '*.so' \
- -exec basename '{}' ';' \
- | xargs -r docker-php-ext-enable
- make -j"$j" clean
- )
- done
-
- if [ -e /lib/apk/db/installed ] && [ -n "$PHPIZE_DEPS" ]; then
- apk del .phpize-deps
- fi
|