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

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

    <bug>
          <bug_id>24669</bug_id>
          
          <creation_ts>2010-11-30 17:45:11 +0300</creation_ts>
          <short_desc>проблемы с обработкой IMAGE_PACKAGES_REGEXP</short_desc>
          <delta_ts>2010-12-08 22:04:45 +0300</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>4</classification_id>
          <classification>Development</classification>
          <product>Sisyphus</product>
          <component>mkimage</component>
          <version>unstable</version>
          <rep_platform>all</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>CLOSED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P3</priority>
          <bug_severity>minor</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Michael Shigorin">mike</reporter>
          <assigned_to name="Alexey Gladkov">legion</assigned_to>
          <cc>glebfm</cc>
    
    <cc>legion</cc>
    
    <cc>mike</cc>
          
          <qa_contact>qa-sisyphus</qa_contact>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>115882</commentid>
    <comment_count>0</comment_count>
    <who name="Michael Shigorin">mike</who>
    <bug_when>2010-11-30 17:45:11 +0300</bug_when>
    <thetext>При использовании

  CHROOT_PACKAGES_REGEXP = ^kernel-image-(std-def|el-smp)$$ \
                           ^kernel-modules-(drm|drbd83)-(std-def|el-smp)$$

получаем ожидаемый результат -- включение только существующих из потенциально перечисленных двумя регулярными выражениеми пакетов; при использовании

  IMAGE_PACKAGES_REGEXP = ^kernel-image-(std-def|el-smp)$$ \
                          ^kernel-modules-(drm|drbd83)-(std-def|el-smp)$$

получаем взрыв в targets.mk (проверено echo boom&apos;ом перед) вида:

/bin/sh: command substitution: line 7: syntax error near unexpected token `(&apos;
/bin/sh: command substitution: line 7: `/usr/share/mkimage/tools/mki-expand-pkgs regexp ^kernel-image-(std-def|el-smp)$ ^kernel-modules-(drm|drbd83)-(std-def|el-smp)$&apos;
make[1]: *** [copy-packages] Error 1
make[1]: Leaving directory `/tmp/.private/mike/example3.1/base&apos;
make: *** [base] Error 2

Проверить можно на example3, добавив эти две строчки соответственно в Makefile и base/Makefile.

Насколько понимаю по `fgrep -rl PACKAGES_REGEXP [^d]*`, пути обработки этих переменных, в т.ч. по части &quot;пути следования&quot; make&lt;-&gt;sh, довольно сильно отличаются.  Обдумал возможности делать квотинг, но выглядит довольно плохо (неконсистентно и может &quot;вдруг&quot; ломаться, если изменяется количество expansion&apos;ов по дороге).

Хотелось бы, чтоб по возможности эти переменные обрабатывались консистентным образом.

PS: также довольно стрёмное место -- в tools/mki-prepare, где $CHROOT_PACKAGES и $CHROOT_PACKAGES_REGEXP не квотятся (ради сохранения множественности слов, как понимаю).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>115983</commentid>
    <comment_count>1</comment_count>
    <who name="Michael Shigorin">mike</who>
    <bug_when>2010-12-04 19:22:01 +0300</bug_when>
    <thetext>Пока объехал так (выражение делается в одно слово и для IMAGE_PACKAGES_REGEXP, но не CHROOT_PACKAGES_REGEXP, заключается в двойные кавычки):

http://git.altlinux.org/people/mike/public/?p=mkimage-profiles.git;a=blob;f=image.in/functions.mk;h=37e0edb9332b953f7ed7fb7e4fe1f3176527b607;hb=00e7bcbb48944342599e6987ee5c6f420a71153c#l12
http://git.altlinux.org/people/mike/public/?p=mkimage-profiles.git;a=blob;f=sub.in/main/Makefile;h=9160058c026567202af227fbdb5d91718501b38e;hb=00e7bcbb48944342599e6987ee5c6f420a71153c#l14
http://git.altlinux.org/people/mike/public/?p=mkimage-profiles.git;a=blob;f=sub.in/stage1/Makefile;h=19b66356960ebd2b7d7262c966ab4c6ab5fb5ee8;hb=00e7bcbb48944342599e6987ee5c6f420a71153c#l7</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>116176</commentid>
    <comment_count>2</comment_count>
    <who name="Michael Shigorin">mike</who>
    <bug_when>2010-12-08 22:04:45 +0300</bug_when>
    <thetext>mkimage g32a297d, example3 с упомянутыми изменениями =&gt; 85828 extents written :)

Спасибо!  Думал в ту же сторону, но застрял довольно далеко от прочитанного коммита.</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>