| Summary: | rpm игнорирует знак комментария # в spec | ||
|---|---|---|---|
| Product: | Sisyphus | Reporter: | Aleksandr Blokhin <sass> |
| Component: | rpm-build | Assignee: | placeholder <placeholder> |
| Status: | CLOSED NOTABUG | QA Contact: | |
| Severity: | major | ||
| Priority: | P4 | CC: | arseny, glebfm, imz, ldv, placeholder, vt |
| Version: | unstable | ||
| Hardware: | all | ||
| OS: | Linux | ||
У меня сложилось впечатление, что # не игнорируется, а применяется после раскрытия макроса. Что в случае многострочных макросов приводит к комментированию только первой строки... У меня сложилось впечатление, что # не игнорируется, а применяется после раскрытия макроса. Что в случае многострочных макросов приводит к комментированию только первой строки... &#1054;&#1087;&#1080;&#1089;&#1072;&#1085;&#1085;&#1086;&#1077; &#1087;&#1086;&#1074;&#1077;&#1076;&#1077;&#1085;&#1080;&#1077; &#1076;&#1086;&#1082;&#1091;&#1084;&#1077;&#1085;&#1090;&#1080;&#1088;&#1086;&#1074;&#1072;&#1085;&#1086; &#1080; &#1085;&#1077; &#1103;&#1074;&#1083;&#1103;&#1077;&#1090;&#1089;&#1103; &#1086;&#1096;&#1080;&#1073;&#1082;&#1086;&#1081;. &#1054;&#1087;&#1080;&#1089;&#1072;&#1085;&#1085;&#1086;&#1077; &#1087;&#1086;&#1074;&#1077;&#1076;&#1077;&#1085;&#1080;&#1077; &#1076;&#1086;&#1082;&#1091;&#1084;&#1077;&#1085;&#1090;&#1080;&#1088;&#1086;&#1074;&#1072;&#1085;&#1086; &#1080; &#1085;&#1077; &#1103;&#1074;&#1083;&#1103;&#1077;&#1090;&#1089;&#1103; &#1086;&#1096;&#1080;&#1073;&#1082;&#1086;&#1081;. |
rpm обрабатывает строки в spec не смотря на знак комментария. Например, если в spec указано: %install mkdir -p $RPM_BUILD_ROOT%_bindir #%makeinstall INSTALL_PREFIX=$RPM_BUILD_ROOT install -C src install -p src/{%name,rvnamed} $RPM_BUILD_ROOT%_bindir то получаем: + mkdir -p /home/sass/src/RPM/tmp/iptraf-buildroot/usr/bin + /usr/bin/make \'INSTALL=/bin/install -p\' prefix=/home/sass/src/RPM/tmp/iptraf-buildroot/usr exec_prefix=/home/sass/src/RPM/tmp/iptraf-buildroot/usr bindir=/home/sass/src/RPM/tmp/iptraf-buildroot/usr/bin sbindir=/home/sass/src/RPM/tmp/iptraf-buildroot/usr/sbin sysconfdir=/home/sass/src/RPM/tmp/iptraf-buildroot/etc datadir=/home/sass/src/RPM/tmp/iptraf-buildroot/usr/share includedir=/home/sass/src/RPM/tmp/iptraf-buildroot/usr/include libdir=/home/sass/src/RPM/tmp/iptraf-buildroot/usr/lib libexecdir=/home/sass/src/RPM/tmp/iptraf-buildroot/usr/lib localstatedir=/home/sass/src/RPM/tmp/iptraf-buildroot/var/lib sharedstatedir=/home/sass/src/RPM/tmp/iptraf-buildroot/usr/com mandir=/home/sass/src/RPM/tmp/iptraf-buildroot/usr/share/man infodir=/home/sass/src/RPM/tmp/iptraf-buildroot/usr/share/info install INSTALL_PREFIX=/home/sass/src/RPM/tmp/iptraf-buildroot install -C src make: Entering directory `/home/sass/src/RPM/BUILD/iptraf-2.7.0/src\' cat install.sh >install chmod a+x install make: `install\' is up to date. make: Leaving directory `/home/sass/src/RPM/BUILD/iptraf-2.7.0/src\' + install -p src/iptraf src/rvnamed /home/sass/src/RPM/tmp/iptraf-buildroot/usr/bin Если убрать эту строку, то всё лишнее, что после mkdir до последнего make, отсутствует. --- ---