config BR2_PACKAGE_PHP_ARCH_SUPPORTS
	bool
	# see fiber_cpu in configure.ac
	default y if BR2_aarch64 || BR2_aarch64_be
	default y if BR2_arm || BR2_armeb
	default y if BR2_i386 || BR2_x86_64
	default y if BR2_mips || BR2_mipsel || BR2_mips64 || BR2_mips64el
	default y if BR2_powerpc || BR2_powerpc64 || BR2_powerpc64le
	default y if BR2_RISCV_64
	default y if BR2_s390x
	default y if BR2_TOOLCHAIN_HAS_UCONTEXT

config BR2_PACKAGE_PHP
	bool "php"
	depends on BR2_PACKAGE_PHP_ARCH_SUPPORTS
	# 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
	depends on BR2_USE_WCHAR
	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

comment "php needs a toolchain w/ wchar"
	depends on BR2_PACKAGE_PHP_ARCH_SUPPORTS
	depends on !BR2_BINFMT_FLAT
	depends on !BR2_USE_WCHAR
