source: trunk/config.m4 @ 22

Last change on this file since 22 was 22, checked in by moo, 8 years ago

do not depends on mkstructinfo.awk if test is not enabled

File size: 2.9 KB
Line 
1dnl vim:ts=2:sw=2:expandtab
2
3AC_DEFUN([XCACHE_OPTION], [
4  PHP_ARG_ENABLE(xcache-$1, for XCache $1,
5  [  --enable-xcache-$2    XCache: $4], no, no)
6  if test "$PHP_$3" != "no"; then
7    xcache_sources="$xcache_sources $1.c"
8    HAVE_$3=1
9    AC_DEFINE([HAVE_$3], 1, [Define for XCache: $4])
10  else
11    HAVE_$3=
12  fi
13])dnl
14
15PHP_ARG_ENABLE(xcache, for XCache support,
16[  --enable-xcache         Include XCache support.])
17
18if test "$PHP_XCACHE" != "no"; then
19  xcache_sources="processor.c \
20                  xcache.c \
21                  mmap.c \
22                  mem.c \
23                  const_string.c \
24                  opcode_spec.c \
25                  stack.c \
26                  utils.c \
27                  lock.c \
28                  "
29  XCACHE_OPTION([optimizer],    [optimizer   ], [XCACHE_OPTIMIZER],    [(N/A)])
30  XCACHE_OPTION([coverage],     [coverage    ], [XCACHE_COVERAGE],     [Enable code coverage dumper, NOT for production server])
31  XCACHE_OPTION([assembler],    [assembler   ], [XCACHE_ASSEMBLER],    [(N/A)])
32  XCACHE_OPTION([disassembler], [disassembler], [XCACHE_DISASSEMBLER], [Enable opcode to php variable dumper, NOT for production server])
33  XCACHE_OPTION([encoder],      [encoder     ], [XCACHE_ENCODER],      [(N/A)])
34  XCACHE_OPTION([decoder],      [decoder     ], [XCACHE_DECODER],      [(N/A)])
35
36  PHP_NEW_EXTENSION(xcache, $xcache_sources, $ext_shared)
37  PHP_ADD_MAKEFILE_FRAGMENT()
38
39  PHP_ARG_ENABLE(xcache-test, for XCache self test,
40  [  --enable-xcache-test            XCache: Enable self test - FOR DEVELOPERS ONLY!!], no, no)
41  if test "$PHP_XCACHE_TEST" != "no"; then
42    XCACHE_ENABLE_TEST=-DXCACHE_ENABLE_TEST
43    AC_DEFINE([HAVE_XCACHE_TEST], 1, [Define to enable XCache self test])
44    XCACHE_STRUCTINFO='$(XCACHE_STRUCTINFO_OUT)'
45  else
46    XCACHE_ENABLE_TEST=
47    XCACHE_STRUCTINFO=
48  fi
49  PHP_SUBST([XCACHE_ENABLE_TEST])
50  PHP_SUBST([XCACHE_STRUCTINFO])
51
52  AC_PATH_PROGS([AWK], [gawk awk])
53  PHP_SUBST([AWK])
54  AC_PATH_PROGS([M4], [m4])
55  PHP_SUBST([M4])
56  AC_PATH_PROGS([GREP], [grep])
57  PHP_SUBST([GREP])
58  AC_PATH_PROGS([SED], [sed])
59  PHP_SUBST([SED])
60
61  AC_PATH_PROGS([INDENT], [indent cat])
62  case $INDENT in
63  */indent[)]
64    XCACHE_INDENT="$INDENT -kr --use-tabs --tab-size 4 -sob -nce"
65    ;;
66  *[)]
67    XCACHE_INDENT=cat
68    ;;
69  esac
70  PHP_SUBST([XCACHE_INDENT])
71
72  dnl $ac_srcdir etc require PHP_NEW_EXTENSION
73  XCACHE_PROC_SOURCES=`ls $ac_srcdir/processor/*.m4`
74  PHP_SUBST([XCACHE_PROC_SOURCES])
75
76  AC_MSG_CHECKING(if you have opcode_spec_def.h for XCache)
77  if test -e "$ac_srcdir/opcode_spec_def.h" ; then
78    AC_DEFINE([HAVE_XCACHE_OPCODE_SPEC_DEF], 1, [Define if you have opcode_spec_def.h for XCache])
79    AC_MSG_RESULT(yes)
80  else
81    dnl check for features depend on opcode_spec_def.h
82    AC_MSG_RESULT(no)
83    define([ERROR], [
84      AC_MSG_ERROR([cannot build with $1, $ac_srcdir/opcode_spec_def.h required])
85    ])
86    if test "$PHP_XCACHE_DISASSEMBLER" != "no" ; then
87      ERROR(disassembler)
88    fi
89    undefine([ERROR])
90  fi
91fi
Note: See TracBrowser for help on using the repository browser.