config BR2_PACKAGE_PHP
	bool "php"
	# PHP uses -export-dynamic, which breaks with elf2flt with a
	# message like "ld.real: section .junk LMA [...,...] overlaps
	# section .text LMA [...,...]"
	depends on !BR2_BINFMT_FLAT
	select BR2_PACKAGE_PHP_SAPI_CGI if \
	       !BR2_PACKAGE_PHP_SAPI_APACHE && \
	       !BR2_PACKAGE_PHP_SAPI_CLI && \
	       !BR2_PACKAGE_PHP_SAPI_FPM &&  \
	       BR2_USE_MMU
	select BR2_PACKAGE_PHP_SAPI_CLI if !BR2_USE_MMU
	select BR2_PACKAGE_PCRE2
	help
	  PHP  is a widely-used general-purpose scripting
	  language that is especially suited for Web development
	  and can be embedded into HTML.

	  http://www.php.net

if BR2_PACKAGE_PHP

config BR2_PACKAGE_PHP_SAPI_APACHE
	bool "Apache interface"
	depends on BR2_PACKAGE_APACHE
	help
	  Apache module

config BR2_PACKAGE_PHP_SAPI_CGI
	bool "CGI interface"
	# CGI uses fork()
	depends on BR2_USE_MMU
	help
	  Common Gateway Interface

config BR2_PACKAGE_PHP_SAPI_CLI
	bool "CLI interface"
	help
	  Command Line Interface

config BR2_PACKAGE_PHP_SAPI_FPM
	bool "FPM interface"
	depends on BR2_USE_MMU
	# "Sparc v8 and predecessors are not and will not be supported"
	depends on !BR2_sparc
	help
	  PHP-FPM (FastCGI Process Manager)

source "package/php/Config.ext"

endif
