<?xml version="1.0" encoding="UTF-8" ?>

<bugzilla version="5.2"
          urlbase="https://bugzilla.altlinux.org/"
          
          maintainer="jenya@basealt.ru"
>

    <bug>
          <bug_id>32209</bug_id>
          
          <creation_ts>2016-06-22 12:16:24 +0300</creation_ts>
          <short_desc>DOM support is not enabled</short_desc>
          <delta_ts>2016-06-22 13:41:27 +0300</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>3</classification_id>
          <classification>Distributions</classification>
          <product>Branch p7</product>
          <component>php5-libs</component>
          <version>не указана</version>
          <rep_platform>all</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>NEW</bug_status>
          <resolution></resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P3</priority>
          <bug_severity>normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>32210</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Yuriy Kashirin">uka</reporter>
          <assigned_to name="Andrey Cherepanov">cas</assigned_to>
          
          
          <qa_contact name="qa-p7@altlinux.org">qa-p7</qa_contact>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>157412</commentid>
    <comment_count>0</comment_count>
      <attachid>6756</attachid>
    <who name="Yuriy Kashirin">uka</who>
    <bug_when>2016-06-22 12:16:24 +0300</bug_when>
    <thetext>Created attachment 6756
патч для пересборки php с встроенным модулем dom

При вызове XMLReader::expand() в коде PHP выводится предупреждение &quot;DOM support is not enabled&quot;, функция возвращает null.

При этом пакет php5-dom установлен, phpinfo() показывает, что расширение DOM присутствует, разрешено:

$ rpm -q php5-libs
php5-libs-5.5.24-alt0.M70P.1

$ rpm -q php5-dom
php5-dom-5.5.24.20150415-alt1

$ php -r &apos;phpinfo();&apos; | grep -A6 DOM
DOM/XML =&gt; enabled
DOM/XML API Version =&gt; 20031129
libxml Version =&gt; 2.9.2
HTML Support =&gt; enabled
XPath Support =&gt; enabled
XPointer Support =&gt; enabled
Schema Support =&gt; enabled
RelaxNG Support =&gt; enabled


$ php -r &apos;$xml = new XMLReader(); $xml-&gt;XML(&quot;&lt;root/&gt;&quot;); $xml-&gt;read(); $obj = $xml-&gt;expand();&apos;
PHP Warning:  DOM support is not enabled in Command line code on line 1



Проявляется на p7, но судя по всему, это актуально для всех веток.

Проблема сидит в коде php - проверка доступности DOM в модуле xmlreader выполняется во время компиляции:
PHP_METHOD(xmlreader, expand)
{
#ifdef HAVE_DOM
....
#else
    php_error(E_WARNING, &quot;DOM support is not enabled&quot;);
    return;
#endif
}

При этом у нас модуль xmlreader собран вместе с php5-libs, а dom вынесен в отдельный модуль.

Проблему решает, например, пересборка php5 с --enable-dom (патч на спек в аттаче).
Другой вариант - сделать как центосе. Там xml модули, включая xmlreader и dom, собраны отдельными модулями, но собираются все вместе в один пакет php-xml</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>6756</attachid>
            <date>2016-06-22 12:16:24 +0300</date>
            <delta_ts>2016-06-22 12:16:24 +0300</delta_ts>
            <desc>патч для пересборки php с встроенным модулем dom</desc>
            <filename>php-builtin-dom.diff</filename>
            <type>text/plain</type>
            <size>1424</size>
            <attacher name="Yuriy Kashirin">uka</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhLy5nZWFyL3BocDUuc3BlYyBiLy5nZWFyL3BocDUuc3BlYwppbmRleCAxODgw
ZTg4Li40Yzk5NzliIDEwMDY0NAotLS0gYS8uZ2Vhci9waHA1LnNwZWMKKysrIGIvLmdlYXIvcGhw
NS5zcGVjCkBAIC00LDcgKzQsNyBAQAogU3VtbWFyeTogVGhlIFBIUDUgc2NyaXB0aW5nIGxhbmd1
YWdlCiBOYW1lOgkgcGhwNQogVmVyc2lvbjogNS41LjI0Ci1SZWxlYXNlOiBhbHQwLk03MFAuMQor
UmVsZWFzZTogYWx0MC5NNzBQLjEuMQogCiAlZGVmaW5lIHBocDVfbmFtZSAgICAgICVuYW1lCiAl
ZGVmaW5lIF9waHA1X3ZlcnNpb24gICV2ZXJzaW9uCkBAIC0xNDIsMTEgKzE0MiwxMyBAQCBQcm92
aWRlczogcGhwNS13ZGR4ID0gJXBocDVfdmVyc2lvbi0lcGhwNV9yZWxlYXNlCiBQcm92aWRlczog
cGhwNS14bWwgPSAlcGhwNV92ZXJzaW9uLSVwaHA1X3JlbGVhc2UKIFByb3ZpZGVzOiBwaHA1LXht
bHJlYWRlciA9ICVwaHA1X3ZlcnNpb24tJXBocDVfcmVsZWFzZQogUHJvdmlkZXM6IHBocDUteG1s
d3JpdGVyID0gJXBocDVfdmVyc2lvbi0lcGhwNV9yZWxlYXNlCitQcm92aWRlczogcGhwNS1kb20g
PSAlcGhwNV92ZXJzaW9uLSVwaHA1X3JlbGVhc2UKIFByb3ZpZGVzOiBwaHA1LXpsaWIgPSAlcGhw
NV92ZXJzaW9uLSVwaHA1X3JlbGVhc2UKIFByb3ZpZGVzOiBwaHA1LWxpYnMgPSAlcGhwNV92ZXJz
aW9uLSVyZWxlYXNlCiAKIAogT2Jzb2xldGVzOiBwaHA1LXNpbXBsZXhtbCBwaHA1LW1oYXNoCitP
YnNvbGV0ZXM6IHBocDUtZG9tCiAKICVkZXNjcmlwdGlvbiBsaWJzCiBUaGUgcGhwNS1saWJzIHBh
Y2thZ2UgY29udGFpbnMgcGFydHMgb2YgUEhQNSBkaXN0cmlidXRpb24gd2hpY2ggYXJlCkBAIC0y
MjMsNyArMjI1LDcgQEAgc3Vic3QgInMsLi9zdGFtcD0kLCwiIGJ1aWxkL2J1aWxkY2hlY2suc2gK
IAktLWVuYWJsZS1zeXN2c2htIFwKIAktLWVuYWJsZS1zeXN2bXNnIFwKIAktLWVuYWJsZS1saWJ4
bWwgXAotCS0tZGlzYWJsZS1kb20gXAorCS0tZW5hYmxlLWRvbSBcCiAJLS1kaXNhYmxlLW9wY2Fj
aGUgXAogCS0tZW5hYmxlLXNpbXBsZXhtbCBcCiAJLS1kaXNhYmxlLXBkbyBcCkBAIC00MDUsNiAr
NDA3LDkgQEAgc3Vic3QgJ3MsQHBocDVfcmVsZWFzZUAsJXBocDVfcmVsZWFzZSwnICAgICAlYnVp
bGRyb290LyVfc3lzY29uZmRpci9ycG0vbWFjcm9zLmQKICVkb2MgdGVzdHMgcnVuLXRlc3RzLnBo
cCAKIAogJWNoYW5nZWxvZworKiBUdWUgSnVuIDIxIDIwMTYgWXVyaXkgS2FzaGlyaW4gPHVrYUBh
bHRsaW51eC5ydT4gNS41LjI0LWFsdDAuTTcwUC4xLjEKKy0gYnVpbGQgcGhwNS1kb20gaW4gcGhw
NSBwYWNrYWdlCisKICogRnJpIE1heSAwOCAyMDE1IEFudG9uIFYuIEJveWFyc2hpbm92IDxib3lh
cnNoQGFsdGxpbnV4LnJ1PiA1LjUuMjQtYWx0MC5NNzBQLjEKIC0gYmFja3BvcnQgdG8gcDcKIAo=
</data>

          </attachment>
      

    </bug>

</bugzilla>