ID: 46959 Updated by: [email protected] Reported By: ravitanra at gmail dot com -Status: Wont fix +Status: Verified Bug Type: PCRE related Operating System: Linux PHP Version: 5.2.8 New Comment:
It looks like it was forced enable by accident. Ilia merged some 5.3 changes into 5.2 and accidentally got the force enabled option too. http://cvs.php.net/viewvc.cgi/php-src/ext/pcre/config0.m4?r1=1.38.2.3.2.10&r2=1.38.2.3.2.11&pathrev=PHP_5_2 Confirming this now. With 5.3.0+ we have SPL, Reflection and PCRE all forced as enabled. Previous Comments: ------------------------------------------------------------------------ [2008-12-29 05:31:26] ravitanra at gmail dot com What are such extensions are? a list will be useful. Are there any side effects of removing pcre? I removed pcre by removing from the makefile & disabling HAVE_BUNDLED_PCRE macro. It compiled and running fine but would be intereing to know side effects Unless there are strong reasons, IMO, there should be an option to remove it and by default those extensions can be bundled. ------------------------------------------------------------------------ [2008-12-29 01:52:29] [email protected] Should we not remove the option then? ------------------------------------------------------------------------ [2008-12-29 00:10:07] [email protected] this is by design. Some time ago it was decided to disallow the disabling of some core extensions, pcre included. ------------------------------------------------------------------------ [2008-12-28 08:21:46] ravitanra at gmail dot com Description: ------------ I am trying to build a minimal PHP by removing heavy stuff like PCRE. Problem is that PCRE always compiles even if configured not to compile it. Below is the configure line ./configure --prefix=/rt --exec-prefix=/rt --with-config-file-path=/rt/etc --disable-all --disable-ipv6 --with-pcre-regex=no --disable-posix --disable-session --disable-reflection --disable-simplexml --disable-xml --disable-xmlreader --disable-xmlwriter --without-pear --disable-inline-optimization --enable-maintainer-zts --enable-embed=static --disable-pcre I also tried "--without-pcre-regex" without any luck. All PCRE function are present in the final build. Please refer to output of the build below /bin/sh /root/php-5.2.8/libtool --silent --preserve-dup-deps --mode=link /root/php-5.2.8/meta_ccld -export-dynamic -g -O2 -pthread -DZTS ext/pcre/pcrelib/pcre_chartables.lo ext/pcre/pcrelib/pcre_ucd.lo ext/pcre/pcrelib/pcre_compile.lo ext/pcre/pcrelib/pcre_config.lo ext/pcre/pcrelib/pcre_exec.lo ext/pcre/pcrelib/pcre_fullinfo.lo ext/pcre/pcrelib/pcre_get.lo ext/pcre/pcrelib/pcre_globals.lo ext/pcre/pcrelib/pcre_info.lo ext/pcre/pcrelib/pcre_maketables.lo ext/pcre/pcrelib/pcre_newline.lo ext/pcre/pcrelib/pcre_ord2utf8.lo ext/pcre/pcrelib/pcre_refcount.lo ext/pcre/pcrelib/pcre_study.lo ext/pcre/pcrelib/pcre_tables.lo ext/pcre/pcrelib/pcre_try_flipped.lo ext/pcre/pcrelib/pcre_valid_utf8.lo ext/pcre/pcrelib/pcre_version.lo ext/pcre/pcrelib/pcre_xclass.lo ext/pcre/php_pcre.lo ext/date/php_date.lo ext/date/lib/astro.lo ext/date/lib/dow.lo ext/date/lib/parse_date.lo ext/date/lib/parse_tz.lo ext/date/lib/timelib.lo ext/date/lib/tm2unixtime.lo ext/date/lib/unixtime2tm.lo regex/regcomp.lo regex/regexec.lo regex/regerror.lo regex/regfree.lo ext/standard/array.lo ext/standard/base64.lo ext/standard/basic_functions.lo ext/standard/browscap.lo ext/standard/crc32.lo ext/standard/crypt.lo ext/standard/cyr_convert.lo ext/standard/datetime.lo ext/standard/dir.lo ext/standard/dl.lo ext/standard/dns.lo ext/standard/exec.lo ext/standard/file.lo ext/standard/filestat.lo ext/standard/flock_compat.lo ext/standard/formatted_print.lo ext/standard/fsock.lo ext/standard/head.lo ext/standard/html.lo ext/standard/image.lo ext/standard/info.lo ext/standard/iptc.lo ext/standard/lcg.lo ext/standard/link.lo ext/standard/mail.lo ext/standard/math.lo ext/standard/md5.lo ext/standard/metaphone.lo ext/standard/microtime.lo ext/standard/pack.lo ext/standard/pageinfo.lo ext/standard/quot_print.lo ext/standard/rand.lo ext/standard/reg.lo ext/standard/soundex.lo ext/standard/string.lo ext/standard/scanf.lo ext/standard/syslog.lo ext/standard/type.lo ext/standard/uniqid.lo ext/standard/url.lo ext/standard/url_scanner.lo ext/standard/var.lo ext/standard/versioning.lo ext/standard/assert.lo ext/standard/strnatcmp.lo ext/standard/levenshtein.lo ext/standard/incomplete_class.lo ext/standard/url_scanner_ex.lo ext/standard/ftp_fopen_wrapper.lo ext/standard/http_fopen_wrapper.lo ext/standard/php_fopen_wrapper.lo ext/standard/credits.lo ext/standard/css.lo ext/standard/var_unserializer.lo ext/standard/ftok.lo ext/standard/sha1.lo ext/standard/user_filters.lo ext/standard/uuencode.lo ext/standard/filters.lo ext/standard/proc_open.lo ext/standard/streamsfuncs.lo ext/standard/http.lo TSRM/TSRM.lo TSRM/tsrm_strtok_r.lo TSRM/tsrm_virtual_cwd.lo main/main.lo main/snprintf.lo main/spprintf.lo main/php_sprintf.lo main/safe_mode.lo main/fopen_wrappers.lo main/alloca.lo main/php_scandir.lo main/php_ini.lo main/SAPI.lo main/rfc1868.lo main/php_content_types.lo main/strlcpy.lo main/strlcat.lo main/mergesort.lo main/reentrancy.lo main/php_variables.lo main/php_ticks.lo main/network.lo main/php_open_temporary_file.lo main/php_logos.lo main/output.lo main/streams/streams.lo main/streams/cast.lo main/streams/memory.lo main/streams/filter.lo main/streams/plain_wrapper.lo main/streams/userspace.lo main/streams/transports.lo main/streams/xp_socket.lo main/streams/mmap.lo Zend/zend_language_parser.lo Zend/zend_language_scanner.lo Zend/zend_ini_parser.lo Zend/zend_ini_scanner.lo Zend/zend_alloc.lo Zend/zend_compile.lo Zend/zend_constants.lo Zend/zend_dynamic_array.lo Zend/zend_execute_API.lo Zend/zend_highlight.lo Zend/zend_llist.lo Zend/zend_opcode.lo Zend/zend_operators.lo Zend/zend_ptr_stack.lo Zend/zend_stack.lo Zend/zend_variables.lo Zend/zend.lo Zend/zend_API.lo Zend/zend_extensions.lo Zend/zend_hash.lo Zend/zend_list.lo Zend/zend_indent.lo Zend/zend_builtin_functions.lo Zend/zend_sprintf.lo Zend/zend_ini.lo Zend/zend_qsort.lo Zend/zend_multibyte.lo Zend/zend_ts_hash.lo Zend/zend_stream.lo Zend/zend_iterators.lo Zend/zend_interfaces.lo Zend/zend_exceptions.lo Zend/zend_strtod.lo Zend/zend_objects.lo Zend/zend_object_handlers.lo Zend/zend_objects_API.lo Zend/zend_default_classes.lo Zend/zend_execute.lo sapi/cli/php_cli.lo sapi/cli/php_cli_readline.lo sapi/cli/getopt.lo main/internal_functions_cli.lo -lcrypt -lcrypt -lresolv -lm -ldl -lnsl -lcrypt -lcrypt -o sapi/cli/php Reproduce code: --------------- <?php // return all array elements // containing floating point numbers $fl_array = preg_grep("/^(\d+)?\.\d+$/", $array); ?> Expected result: ---------------- Code should nork and should give error about 'preg_grep' as missing function since it was not compiled Actual result: -------------- Code works fine (which should not) ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=46959&edit=1
