5 PHP_MIRROR ?
= http
://us1.php.net
/distributions
/
8 exec_prefix ?
= $(prefix)
9 bindir = $(exec_prefix)/bin
10 srcdir := $(dir $(word $(words $(MAKEFILE_LIST
)),$(MAKEFILE_LIST
)))
12 enable_maintainer_zts ?
= no
15 with_config_file_scan_dir ?
= $(prefix)/etc
/php.d
17 with_php_config ?
= $(bindir)/php-config
18 extdir
= $(shell $(with_php_config
) --extension-dir
2>/dev
/null
)
20 PECL_MIRROR ?
= http
://pecl.php.net
/get/
21 PECL_EXTENSION ?
= $(shell cut
-d
: -f1
<<<"$(PECL)")
22 PECL_SONAME ?
= $(if
$(shell cut
-d
: -f2
<<<"$(PECL)"),$(shell cut
-d
: -f2
<<<"$(PECL)"),$(PECL_EXTENSION
))
23 PECL_VERSION ?
= $(shell cut
-d
: -f3
-s
<<<"$(PECL)")
24 PECL_INI
= $(with_config_file_scan_dir
)/pecl.ini
26 PHP_VERSION ?
= $(shell php
$(srcdir)/php-version.php
$(PHP
) < $(srcdir)/php-versions.json
2>/dev
/null
)
28 .PHONY
: all php
check clean reconf pecl ext
test
36 @if
test -d
$(srcdir)/php-
$(PHP_VERSION
); then cd
$(srcdir)/php-
$(PHP_VERSION
); make
distclean || true
; done
38 check: $(srcdir)/php-versions.json
39 @if
test -z
"$(PHP)"; then echo
"No php version specified, e.g. PHP=5.6"; exit
1; fi
41 reconf
: check $(srcdir)/php-
$(PHP_VERSION
)/configure
42 cd
$(srcdir)/php-
$(PHP_VERSION
) && .
/configure
-C
--prefix=$(prefix)
44 php
: check $(bindir)/php
46 $(srcdir)/php-versions.json
: $(srcdir)/php-version.php
47 curl
-Sso
$@ http
://php.net
/releases
/active.php
49 $(srcdir)/php-
$(PHP_VERSION
)/configure
: |
$(srcdir)/php-versions.json
50 curl
-Ss
$(PHP_MIRROR
)/php-
$(PHP_VERSION
).
tar.bz2 |
tar xj
-C
$(srcdir)
52 $(srcdir)/php-
$(PHP_VERSION
)/Makefile
: $(srcdir)/php-
$(PHP_VERSION
)/configure |
$(srcdir)/php-versions.json
53 cd
$(srcdir)/php-
$(PHP_VERSION
) && .
/configure
-C
--prefix=$(prefix)
55 $(srcdir)/php-
$(PHP_VERSION
)/sapi
/cli
/php
: $(srcdir)/php-
$(PHP_VERSION
)/Makefile |
$(srcdir)/php-versions.json
56 cd
$(srcdir)/php-
$(PHP_VERSION
) && make
-s
-j
$(JOBS
) V
=0 || make
58 $(bindir)/php
: $(srcdir)/php-
$(PHP_VERSION
)/sapi
/cli
/php |
$(srcdir)/php-versions.json
59 cd
$(srcdir)/php-
$(PHP_VERSION
) && make
-s
install V
=0
61 $(with_config_file_scan_dir
):
67 @if
test -z
"$(PECL)"; then echo
"No pecl extension specified, e.g. PECL=pecl_http:http"; exit
1; fi
69 $(PECL_INI
): |
$(with_config_file_scan_dir
)
72 $(srcdir)/pecl-
$(PECL_EXTENSION
):
73 test -e
$@ || ln
-s
$(CURDIR
) $@
75 $(srcdir)/pecl-
$(PECL_EXTENSION
)/config.m4
:
76 mkdir
-p
$(srcdir)/pecl-
$(PECL_EXTENSION
)
77 curl
-Ss
$(PECL_MIRROR
)/$(PECL_EXTENSION
)$(if
$(PECL_VERSION
),/$(PECL_VERSION
)) |
tar xz
--strip-components
1 -C
$(srcdir)/pecl-
$(PECL_EXTENSION
)
79 $(srcdir)/pecl-
$(PECL_EXTENSION
)/configure
: $(srcdir)/pecl-
$(PECL_EXTENSION
)/config.m4
80 cd
$(srcdir)/pecl-
$(PECL_EXTENSION
) && $(bindir)/phpize
82 $(srcdir)/pecl-
$(PECL_EXTENSION
)/Makefile
: $(srcdir)/pecl-
$(PECL_EXTENSION
)/configure
83 cd
$(srcdir)/pecl-
$(PECL_EXTENSION
) && .
/configure
-C
85 $(srcdir)/pecl-
$(PECL_EXTENSION
)/.libs
/$(PECL_SONAME
).so
: $(srcdir)/pecl-
$(PECL_EXTENSION
)/Makefile
86 cd
$(srcdir)/pecl-
$(PECL_EXTENSION
) && make
-s
-j
$(JOBS
) V
=0 || make
88 $(extdir
)/$(PECL_SONAME
).so
: $(srcdir)/pecl-
$(PECL_EXTENSION
)/.libs
/$(PECL_SONAME
).so
89 cd
$(srcdir)/pecl-
$(PECL_EXTENSION
) && make
-s
install V
=0
91 pecl
: pecl-check php
$(extdir
)/$(PECL_SONAME
).so |
$(PECL_INI
)
92 grep
-q extension
=$(PECL_SONAME
).so
$(PECL_INI
) || echo extension
=$(PECL_SONAME
).so
>> $(PECL_INI
)
94 ext
: pecl-check
$(srcdir)/pecl-
$(PECL_EXTENSION
) pecl
97 REPORT_EXIT_STATUS
=1 NO_INTERACTION
=1 $(bindir)/php run-tests.php
-p
$(bindir)/php
--show-diff tests