summaryrefslogblamecommitdiffstats
path: root/php-pear/php/DEPENDS
blob: adf9b773c4baaef9355aa72a05838d200276214c (plain) (tree)
1
2
3
4
5
6
7
8
9
10
11
12
                          
 



                                      





                                                                                                      
                                               
    
 
 
               



                                                                       
 



                                               
                                  
                                                           
    



                                                                                                                               
     






                                                          
                                                      
    
                                       




                                                                               
 

                                   
                             



                                                                   
                                                      
      
                                                      
    
     
 
                                     
                                                           
                                           
                                                       
     




                                                                     



                                                       
                                                                        
                                            
                                          





                                                                    

     
                                                                 
 

                                                     
                                                       




                                                   




                                                           
                        


                                                                       
 



                                                                       
 






                                                     
 



                                                 

                                                                                                      
                                                                         
                                           

     



                                                         



                                                         



                                                       



                                                                                               

                  
                                                


                                                                                                         
                                                 
        
                                                             
      

                                                           
    
    
                                        
     
 
                                     
                                         




















                                                            

                                                                                                  
                                                                        
                                                     
                                                                        
    
                                                           

     
             
                                                









                                                                        
     
 



                                                 
                                           


                                                           



                                                      





                                                                  



                                                 







                                                   



                                                                      
                                     

                                                           
                                          
                                               
 



                                                         
                           

                                                            


                                                   

                                                           

                                               
 



                                                       
 



                                                              
 



                                                         
  
. ${GRIMOIRE}/FUNCTIONS &&

# takes two params
# $1 is the driver name
# $2 is the spell name (for depending)
function db_driver_depends() {
  local db_driver="$1"
  local db_spell="$2"

  if list_find "$PHP5_DATABASE_DRIVERS" "$db_driver" || list_find "$PHP5_DATABASE_DRIVERS" "all"; then
    depends $db_spell "--with-$db_driver"
  else
    list_add "PHP5_OPTS" "--without-$db_driver"
  fi
}

depends flex &&
# Officially these are optional, but we require them because some other
# optional extensions depend on it, and they're omnipresent anyway
depends readline "--with-readline" &&
depends zlib "--with-zlib" &&

optional_depends bzip2 \
                 "--with-bz2" "--without-bz2" \
                 "for compression support" &&

if [[ "$PHP5_PEAR" == "y" ]]; then
  depends libxml2 '--enable-xml --enable-dom --with-xmlrpc'
else
  optional_depends libxml2 \
                   "--enable-xml --enable-dom --with-xmlrpc" \
                   "--disable-xml --disable-dom --without-xmlrpc --disable-xmlreader --disable-xmlwriter --disable-simplexml" \
                   "For XML support (required for SOAP)"
fi &&

optional_depends libxslt \
                 "--with-xsl" "--without-xsl" \
                 "for XSLT support" &&

if is_depends_enabled $SPELL libxml2 ; then
  config_query_option PHP5_OPTS "Enable SOAP support?" n \
                      "--enable-soap" "--disable-soap"
else
  list_add "PHP5_OPTS" "--disable-soap"
fi &&

optional_depends pth \
                 "--with-tsrm-pth=${INSTALL_ROOT}/usr" "--with-tsrm-pthreads" \
                 "use GNU Portable Threads instead of POSIX threads" &&

if [[ $PHP5_SAPI == apache ]]; then
  case "${PHP5_APACHE}" in
    handler) depends APACHE;;
    filter) depends APACHE2 '--with-apxs2 --without-apxs';;
  esac &&

  if [[ "$(get_spell_provider $SPELL APACHE)" == 'apache1' ]]; then
    list_add "PHP5_OPTS" "--with-apxs --without-apxs2"
  else
    list_add "PHP5_OPTS" "--with-apxs2 --without-apxs"
  fi
fi &&

if [[ "$PHP5_PCRE" == "none" ]]; then
 list_add "PHP5_OPTS" "--without-pcre-regex --without-pcre"
elif [[ "$PHP5_PCRE" == "external" ]]; then
  depends pcre "--with-pcre-regex=${INSTALL_ROOT}/usr" 
fi &&

optional_depends C-CLIENT \
                 "--with-imap=${INSTALL_ROOT}/usr" "--without-imap" \
                 "for IMAP support" &&

optional_depends openssl \
                 "--with-openssl" "--without-openssl" \
                 "for OpenSSL support" &&

if is_depends_enabled $SPELL $(get_spell_provider $SPELL C-CLIENT); then
  if is_depends_enabled $SPELL openssl; then
    list_add "PHP5_OPTS" "--with-imap-ssl"
  else
    optional_depends openssl \
                     "--with-imap-ssl" \
                     "--without-imap-ssl" \
                     "for SSL support with IMAP (but not elsewhere)"
  fi
fi &&

optional_depends MAIL-TRANSPORT-AGENT "" "" "for SMTP support" &&

optional_depends aspell \
                 "--with-pspell" "--without-pspell" \
                 "use aspell for spelling functions" &&

optional_depends mhash \
                 "--with-mhash" "--without-mhash" \
                 "for hash functions support" &&

if is_version_less 5.2.9999 "${VERSION}"; then
  optional_depends enchant \
                   "--with-enchant" "--without-enchant" \
                   "use enchant for spelling functions?" &&

  optional_depends icu \
                   "--enable-intl --with-icu-dir=${INSTALL_ROOT}/usr" \
                   "--disable-intl --without-icu-dir" \
                   "for ICU unicode (internationalization) support" &&

  optional_depends oniguruma \
                   "--with-onig=${INSTALL_ROOT}/usr" "--without-onig" \
                   "for external oniguruma"
fi &&

optional_depends libmcrypt \
                 "--with-mcrypt" "--without-mcrypt" \
                 "for crypto library" &&

optional_depends curl \
                 "--with-curl" "--without-curl" \
                 "for cURL URL stream functions" &&

optional_depends net-snmp \
                 "--with-snmp" "--without-snmp" \
                 "for SNMP support" &&

if is_depends_enabled $SPELL curl; then
    config_query_option PHP5_OPTS "Do you want to use cURL for URL streams in core PHP functions?" n \
                        "--with-curlwrappers" "--without-curlwrappers" &&
    depends -sub NO_ARES curl '--with-curl'
fi &&

optional_depends gmp \
                 "--with-gmp" "--without-gmp" \
                 "GNU multi-precision library support" &&

optional_depends krb5 \
                 "--with-kerberos" "--without-kerberos" \
                 "for Kerberos support" &&

optional_depends gettext \
                 "--with-gettext" "--without-gettext" \
                 "for GNU gettext support" &&

# new database madness
# DB_DRIVERS="mysql mysqli pgsql sqlite sqlite3 firebird unixODBC iODBC"
# PDO_DRIVERS="mysql pgsql firebird unixODBC iODBC"
if list_find "$PHP5_DATABASE_DRIVERS" "mysql" || list_find "$PHP5_DATABASE_DRIVERS" "all"; then
  depends MYSQL &&

  if is_version_less 5.2.9999 "${VERSION}"; then
    config_query PHP5_MYSQLND "Do you want to use the MySQL Native Driver [mysqlnd]? (expiremental)" n &&

    if [[ "${PHP5_MYSQLND}" == "y" ]]; then
      list_add "PHP5_OPTS" "--with-mysql=mysqlnd"
    else
      list_add "PHP5_OPTS" "--with-mysql=${INSTALL_ROOT}/usr"
    fi
  else
    list_add "PHP5_OPTS" "--with-mysql=${INSTALL_ROOT}/usr"
  fi
else
  list_add "PHP5_OPTS" "--without-mysql"
fi &&

db_driver_depends "mysqli" "MYSQL" &&
db_driver_depends "pgsql" "postgresql" &&

if is_version_less "${VERSION}" 5.4; then
  db_driver_depends "sqlite" "sqlite2"
fi &&

if is_version_less 5.2.9999 "${VERSION}"; then
  db_driver_depends "sqlite3" "sqlite"
fi &&

if list_find "${PHP5_DATABASE_DRIVERS}" "firebird"; then
  depends firebird "--with-pdo-firebird=${INSTALL_ROOT}/usr"
else
  list_add "PHP5_OPTS" "--without-pdo-firebird"
fi &&

if list_find "${PHP5_DATABASE_DRIVERS}" "sqlite3"; then
  depends sqlite "--with-pdo-sqlite=${INSTALL_ROOT}/usr"
else
  list_add "PHP5_OPTS" "--without-pdo-sqlite"
fi &&

# unixODBC and iODBC are mutually exclusive... first one in wins?
if list_find "$PHP5_DATABASE_DRIVERS" "unixODBC" || list_find "$PHP5_DATABASE_DRIVERS" "all"; then
  depends unixodbc "--with-unixODBC=${INSTALL_ROOT}/usr --without-iodbc"
elif list_find "$PHP5_DATABASE_DRIVERS" "iODBC"; then
  depends unixodbc "--with-iodbc=${INSTALL_ROOT}/usr --without-unixODBC"
else
  list_add "PHP5_OPTS" "--without-iodbc --without-unixODBC"
fi &&

# DBA drivers
if list_find "${PHP5_OPTS}" "--enable-dba"; then
  for foo in $PHP5_DBA_DRIVERS; do
    if [[ $foo != none ]]; then
      # handle the few special cases
      if [[ "$foo" == "db4" ]]; then
        depends db "--with-db4"
      elif [[ "$foo" != "flatfile" ]] && [[ "$foo" != "inifile" ]]; then
        depends $foo "--with-$foo"
      fi
    fi
  done
fi &&

optional_depends openldap \
                 "--with-ldap" "--without-ldap" \
                 "for LDAP support" &&

if is_depends_enabled $SPELL openldap; then
  optional_depends LIBSASL \
                 "--with-ldap-sasl" "--without-ldap-sasl" \
                 "for LDAP with Cyrus SASL support" &&

  if list_find "${PHP5_OPTS}" "--with-ldap-sasl"; then
    depends -sub openldap SASL
  fi
fi &&

optional_depends mm \
                 "--with-mm" "--without-mm" \
                 "for sharing memory between related processes" &&

optional_depends tidy \
                 "--with-tidy" "--without-tidy" \
                 "for HTML Tidy support" &&

optional_depends re2c \
                 "" "" \
                 "to regenerate PHP parsers" &&

optional_depends libexif \
                 "--enable-exif" "--disable-exif" \
                 "for image metadata support" &&

if [[ "${PHP5_GD}" == "external" ]]; then
    depends gd "--with-gd=${INSTALL_ROOT}/usr --enable-gd-native-ttf" 
fi &&

if [[ "${PHP5_GD}" != "none" ]]; then
    optional_depends libxpm \
                     "--with-xpm-dir=${INSTALL_ROOT}/usr" \
                     "--without-xpm-dir" \
                     "for XPM image support" &&

  if [[ "${PHP5_GD}" == "internal" ]]; then
    depends JPEG "--with-jpeg-dir=${INSTALL_ROOT}/usr" &&
    depends libpng "--with-png-dir=${INSTALL_ROOT}/usr"
  else
    optional_depends JPEG \
                     "--with-jpeg-dir=${INSTALL_ROOT}/usr" \
                     "--without-jpeg-dir" \
                     "for JPEG support (for GD)" &&

    optional_depends libpng \
                     "--with-png-dir=${INSTALL_ROOT}/usr" \
                     "--without-png-dir" \
                     "for PNG support (for GD)"
  fi &&

  optional_depends t1lib \
                   "--with-t1lib=${INSTALL_ROOT}/usr" \
                   "--without-t1lib" \
                   "for t1lib support" &&

  optional_depends freetype2 \
                   "--with-freetype-dir=${INSTALL_ROOT}/usr" \
                   "--without-freetype-dir" \
                   "for freetype2 support" &&

  optional_depends font-jis-misc \
                   "--enable-gd-jis-conv" \
                   "--disable-gd-jis-conv" \
                   "for JIS-mapped Japanese font support"
fi