File: config.m4

package info (click to toggle)
php8.4 8.4.16-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 211,276 kB
  • sloc: ansic: 1,176,142; php: 35,419; sh: 11,964; cpp: 7,208; pascal: 4,951; javascript: 3,091; asm: 2,817; yacc: 2,411; makefile: 696; xml: 446; python: 301; awk: 148
file content (131 lines) | stat: -rw-r--r-- 4,791 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
PHP_ARG_WITH([apxs2],
  [whether to build Apache 2 handler module support via DSO through APXS],
  [AS_HELP_STRING([[--with-apxs2[=FILE]]],
    [Build shared Apache 2 handler module. FILE is the optional pathname to
    the Apache apxs tool [apxs]])],
  [no],
  [no])

if test "$PHP_APXS2" != "no"; then
  AS_VAR_IF([PHP_APXS2], [yes], [
    APXS=apxs
    $APXS -q CFLAGS >/dev/null 2>&1
    if test "$?" != "0" && test -x /usr/sbin/apxs; then
      APXS=/usr/sbin/apxs
    fi
  ],
  [PHP_EXPAND_PATH([$PHP_APXS2], [APXS])])

  $APXS -q CFLAGS >/dev/null 2>&1
  if test "$?" != "0"; then
    AC_MSG_RESULT()
    AC_MSG_RESULT()
    AC_MSG_RESULT([Sorry, I cannot run apxs.  Possible reasons follow:])
    AC_MSG_RESULT()
    AC_MSG_RESULT([1. Perl is not installed])
    AC_MSG_RESULT([2. apxs was not found. Try to pass the path using --with-apxs2=/path/to/apxs])
    AC_MSG_RESULT([3. Apache was not built using --enable-so (the apxs usage page is displayed)])
    AC_MSG_RESULT()
    AC_MSG_RESULT([The output of $APXS follows:])
    $APXS -q CFLAGS
    AC_MSG_ERROR([Aborting])
  fi

  APXS_INCLUDEDIR=$($APXS -q INCLUDEDIR)
  APXS_HTTPD=$($APXS -q SBINDIR)/$($APXS -q TARGET)
  AS_IF([test ! -x "$APXS_HTTPD"], [AC_MSG_ERROR(m4_text_wrap([
    $APXS_HTTPD executable not found. Please, install Apache HTTP Server
    command-line utility.
  ]))])

  APXS_CFLAGS=$($APXS -q CFLAGS)
  APU_BINDIR=$($APXS -q APU_BINDIR)
  APR_BINDIR=$($APXS -q APR_BINDIR)

  dnl Pick up ap[ru]-N-config.
  APR_CONFIG=$($APXS -q APR_CONFIG 2>/dev/null || echo $APR_BINDIR/apr-config)
  APU_CONFIG=$($APXS -q APU_CONFIG 2>/dev/null || echo $APU_BINDIR/apu-config)

  APR_CFLAGS="$($APR_CONFIG --cppflags --includes)"
  APU_CFLAGS="$($APU_CONFIG --includes)"

  for flag in $APXS_CFLAGS; do
    AS_CASE([$flag], [-D*], [APACHE_CPPFLAGS="$APACHE_CPPFLAGS $flag"])
  done

  dnl Check Apache version. The HTTPD_VERSION was added in Apache 2.4.17.
  dnl Earlier versions can use the Apache HTTP Server command-line utility.
  APACHE_VERSION=$($APXS -q HTTPD_VERSION 2>/dev/null)
  AS_VAR_IF([APACHE_VERSION],, [
    ac_output=$($APXS_HTTPD -v 2>&1 | grep version | $SED -e 's/Oracle-HTTP-//')
    ac_IFS=$IFS
    IFS="- /.
"
    set $ac_output
    IFS=$ac_IFS
    APACHE_VERSION="$4.$5.$6"
  ])
  AS_VERSION_COMPARE([$APACHE_VERSION], [2.4.0],
    [AC_MSG_ERROR([Please note that Apache version >= 2.4 is required])])

  APXS_LIBEXECDIR='$(INSTALL_ROOT)'$($APXS -q LIBEXECDIR)
  INSTALL_IT="\$(mkinstalldirs) '$APXS_LIBEXECDIR' && \
               $APXS -S LIBEXECDIR='$APXS_LIBEXECDIR' \
                     -i -n php"

  LIBPHP_CFLAGS="-shared"
  PHP_SUBST([LIBPHP_CFLAGS])

  php_sapi_apache2handler_type=shared
  AS_CASE([$host_alias],
    [*aix*], [
      EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-brtl -Wl,-bI:$APXS_LIBEXECDIR/httpd.exp"
      INSTALL_IT="$INSTALL_IT $SAPI_LIBTOOL"
    ],
    [*darwin*], [
      dnl When using bundles on Darwin, we must resolve all symbols. However,
      dnl the linker does not recursively look at the bundle loader and pull in
      dnl its dependencies. Therefore, we must pull in the APR and APR-util
      dnl libraries.
      if test -x "$APR_CONFIG"; then
        MH_BUNDLE_FLAGS="$($APR_CONFIG --ldflags --link-ld --libs)"
      fi
      if test -x "$APU_CONFIG"; then
        MH_BUNDLE_FLAGS="$($APU_CONFIG --ldflags --link-ld --libs) $MH_BUNDLE_FLAGS"
      fi
      MH_BUNDLE_FLAGS="-bundle -bundle_loader $APXS_HTTPD $MH_BUNDLE_FLAGS"
      PHP_SUBST([MH_BUNDLE_FLAGS])
      php_sapi_apache2handler_type=bundle
      INSTALL_IT="$INSTALL_IT $SAPI_SHARED"
    ],
    [INSTALL_IT="$INSTALL_IT $SAPI_LIBTOOL"])

  PHP_SELECT_SAPI([apache2handler],
    [$php_sapi_apache2handler_type],
    [mod_php.c sapi_apache2.c apache_config.c php_functions.c],
    [
      $APACHE_CPPFLAGS
      -I$APXS_INCLUDEDIR
      $APR_CFLAGS
      $APU_CFLAGS
      -DZEND_ENABLE_STATIC_TSRMLS_CACHE=1
    ])

  AS_IF([$APXS_HTTPD -V 2>/dev/null | grep 'threaded:.*yes' >/dev/null 2>&1], [
    APACHE_THREADED_MPM=yes
    enable_zts=yes
  ], [APACHE_THREADED_MPM=no])

AC_CONFIG_COMMANDS([apache2handler], [AS_VAR_IF([enable_zts], [yes],,
  [AS_VAR_IF([APACHE_THREADED_MPM], [no],
    [AC_MSG_WARN([
+--------------------------------------------------------------------+
|                        *** WARNING ***                             |
|                                                                    |
| You have built PHP for Apache's current non-threaded MPM.          |
| If you change Apache to use a threaded MPM you must reconfigure    |
| PHP with --enable-zts                                              |
+--------------------------------------------------------------------+
  ])])])],
  [APACHE_THREADED_MPM="$APACHE_THREADED_MPM"; enable_zts="$enable_zts"])
fi