From: foobar Date: Thu, 24 May 2007 21:40:41 +0000 (+0000) Subject: - Allow build without flex/bison installed (fixes builddir != srcdir build X-Git-Tag: php-5.2.3RC1~5 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=efcdcd80b696c2e851dd72fcb61f5902f96e9261;p=php - Allow build without flex/bison installed (fixes builddir != srcdir build when using distributed sources which inlude pre-generated bison/flex output. See bug #38762 for more..) --- diff --git a/Makefile.frag b/Makefile.frag index a5da9c3947..81d5428c77 100644 --- a/Makefile.frag +++ b/Makefile.frag @@ -3,21 +3,21 @@ # Zend # -$(builddir)/zend_language_scanner.lo: $(builddir)/zend_language_parser.h -$(builddir)/zend_ini_scanner.lo: $(builddir)/zend_ini_parser.h +$(builddir)/zend_language_scanner.lo: $(srcdir)/zend_language_parser.h +$(builddir)/zend_ini_scanner.lo: $(srcdir)/zend_ini_parser.h -$(builddir)/zend_language_scanner.c: $(srcdir)/zend_language_scanner.l +$(srcdir)/zend_language_scanner.c: $(srcdir)/zend_language_scanner.l @$(LEX) -Pzend -S$(srcdir)/flex.skl -o$@ -i $(srcdir)/zend_language_scanner.l -$(builddir)/zend_language_parser.h: $(builddir)/zend_language_parser.c -$(builddir)/zend_language_parser.c: $(srcdir)/zend_language_parser.y +$(srcdir)/zend_language_parser.h: $(srcdir)/zend_language_parser.c +$(srcdir)/zend_language_parser.c: $(srcdir)/zend_language_parser.y @$(YACC) -p zend -v -d $(srcdir)/zend_language_parser.y -o $@ -$(builddir)/zend_ini_parser.h: $(builddir)/zend_ini_parser.c -$(builddir)/zend_ini_parser.c: $(srcdir)/zend_ini_parser.y +$(srcdir)/zend_ini_parser.h: $(srcdir)/zend_ini_parser.c +$(srcdir)/zend_ini_parser.c: $(srcdir)/zend_ini_parser.y @$(YACC) -p ini_ -v -d $(srcdir)/zend_ini_parser.y -o $@ -$(builddir)/zend_ini_scanner.c: $(srcdir)/zend_ini_scanner.l +$(srcdir)/zend_ini_scanner.c: $(srcdir)/zend_ini_scanner.l @$(LEX) -Pini_ -S$(srcdir)/flex.skl -o$@ -i $(srcdir)/zend_ini_scanner.l -$(builddir)/zend_indent.lo $(builddir)/zend_highlight.lo $(builddir)/zend_compile.lo: $(builddir)/zend_language_parser.h +$(builddir)/zend_indent.lo $(builddir)/zend_highlight.lo $(builddir)/zend_compile.lo: $(srcdir)/zend_language_parser.h diff --git a/acinclude.m4 b/acinclude.m4 index 428dfa77fe..592b0cb1a5 100644 --- a/acinclude.m4 +++ b/acinclude.m4 @@ -2019,7 +2019,7 @@ AC_DEFUN([PHP_PROG_LEX], [ flex_version_list="2.5.4" AC_PROG_LEX - if test -n "$LEX"; then + if test "$LEX" = "flex"; then AC_DECL_YYTEXT : fi @@ -2031,7 +2031,7 @@ AC_DEFUN([PHP_PROG_LEX], [ LEX_CFLAGS="-DYY_USE_CONST" fi - if test "$LEX"; then + if test "$LEX" = "flex"; then AC_CACHE_CHECK([for flex version], php_cv_flex_version, [ flex_version=`$LEX -V -v --version 2>/dev/null | $SED -e 's/^.* //'` php_cv_flex_version=invalid diff --git a/configure.in b/configure.in index 73f6371644..f6162e084e 100644 --- a/configure.in +++ b/configure.in @@ -1338,10 +1338,9 @@ case $host_alias in ;; esac -PHP_ADD_SOURCES(/Zend, zend_language_parser.c zend_language_scanner.c \ - zend_ini_parser.c zend_ini_scanner.c) - PHP_ADD_SOURCES(Zend, \ + zend_language_parser.c zend_language_scanner.c \ + zend_ini_parser.c zend_ini_scanner.c \ zend_alloc.c zend_compile.c zend_constants.c zend_dynamic_array.c \ zend_execute_API.c zend_highlight.c zend_llist.c \ zend_opcode.c zend_operators.c zend_ptr_stack.c zend_stack.c \ diff --git a/ext/standard/Makefile.frag b/ext/standard/Makefile.frag index 1d76617505..4e94962183 100644 --- a/ext/standard/Makefile.frag +++ b/ext/standard/Makefile.frag @@ -7,4 +7,4 @@ $(srcdir)/url_scanner_ex.c: $(srcdir)/url_scanner_ex.re $(builddir)/info.lo: $(builddir)/../../main/build-defs.h -$(builddir)/basic_functions.lo: Zend/zend_language_parser.h +$(builddir)/basic_functions.lo: $(top_srcdir)/Zend/zend_language_parser.h diff --git a/ext/tokenizer/Makefile.frag b/ext/tokenizer/Makefile.frag index eaca6e7f4f..6802d40e92 100644 --- a/ext/tokenizer/Makefile.frag +++ b/ext/tokenizer/Makefile.frag @@ -1,2 +1,2 @@ -Zend/zend_language_parser.h: -$(builddir)/tokenizer.lo: Zend/zend_language_parser.h +$(top_srcdir)/Zend/zend_language_parser.h: +$(builddir)/tokenizer.lo: $(top_srcdir)/Zend/zend_language_parser.h