* [devel] rpm макросы для пакета mk-configure
@ 2020-05-25 18:59 Aleksey Cheusov
2020-05-25 19:49 ` Andrey Savchenko
0 siblings, 1 reply; 8+ messages in thread
From: Aleksey Cheusov @ 2020-05-25 18:59 UTC (permalink / raw)
To: devel
Кажется, мои менторы сильно заняты. Продублирую запрос еще раз с нормальной Темой.
20.05.2020, 12:35, "Gleb Fotengauer-Malinovskiy" <glebfm на altlinux.org>:
> напришиваются какие-то макросы для использования mk-configure в спеках.
Сделал макросы для mk-configure. task #252091.
В него входят:
mk-configure-0.34.2-alt4 с макросами, и
libmaa-1.4.7-alt2 и 1.6.1-alt2, где макросы используются.
Нужен review и разрешение на публикацию в Сизифе.
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [devel] rpm макросы для пакета mk-configure 2020-05-25 18:59 [devel] rpm макросы для пакета mk-configure Aleksey Cheusov @ 2020-05-25 19:49 ` Andrey Savchenko 2020-05-25 19:53 ` Andrey Savchenko ` (2 more replies) 0 siblings, 3 replies; 8+ messages in thread From: Andrey Savchenko @ 2020-05-25 19:49 UTC (permalink / raw) To: ALT Linux Team development discussions [-- Attachment #1: Type: text/plain, Size: 4479 bytes --] Добрый вечер! On Mon, 25 May 2020 21:59:49 +0300 Aleksey Cheusov wrote: > Кажется, мои менторы сильно заняты. Продублирую запрос еще раз с нормальной Темой. > > 20.05.2020, 12:35, "Gleb Fotengauer-Malinovskiy" <glebfm на altlinux.org>: > > напришиваются какие-то макросы для использования mk-configure в спеках. > > Сделал макросы для mk-configure. task #252091. > В него входят: > mk-configure-0.34.2-alt4 с макросами, и > libmaa-1.4.7-alt2 и 1.6.1-alt2, где макросы используются. > > Нужен review и разрешение на публикацию в Сизифе. Вот замеченные проблемы. Большинство из них есть в логах сборки, так что полезно их грепать на предмет "(warning|error):". 1) mk-configure-0.34.2-alt4: 1.1) При сборке пакета игнорируются CFLAGS, например, так: cc -I/usr/src/RPM/BUILD/mk-configure-0.34.2/examples/tools2/libs/foo -Wall -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Wreturn-type -Wswitch -Wshadow -Wcast-qual -Wwrite-strings -Wno-unused-parameter -Werror -DNUM=1 -c -o prog1.o prog1.c 2) libmaa-1.4.7-alt2: 2.1) Нет зависимости на макрос. Зависимости на макросы нужно делать через BuildRequires(pre): BuildRequires(pre): rpm-macros-mk-configure Иначе возникает вот такая ругать в логе сборки: warning: Macro %mkc_env not found warning: Macro %mkcmake_configure not found warning: Macro %mkcmake_build not found warning: Macro %mkc_env not found warning: Macro %mkcmake not found warning: Macro %mkc_env not found warning: Macro %mkcmake_install not found Я вижу, что сейчас зависимость на rpm-macros-mk-configure добавлена через Requires в самом mk-configure, но, видимо, так не получится сделать и во всех пользователях mk-configure также нужно будет прописывать макрос. Это недостаток нашей сборочной системы, но я не знаю, можно ли его как-то лучше объехать. Вроде бы, с текущей зависимостью через Requires в mk-configure тоже всё работает, но я не знаю, на что могут повлиять эти предупреждения. 2.2) Есть установленные, но не упакованные файлы: warning: Installed (but unpackaged) file(s) found: /usr/lib64/libmaa.a /usr/share/doc/libmaa/LICENSE /usr/share/doc/libmaa/NEWS /usr/share/doc/libmaa/README /usr/share/doc/libmaa/TODO /usr/share/doc/libmaa/libmaa.600dpi.ps Если libmaa.a нужен, то нужно положить в отдельный подпакет devel-static. С /usr/share/doc/libmaa какой-то косяк вышел и там дублируются файлы документации, уже разложенные в другие места: ./libmaa: libmaa.600dpi.ps LICENSE NEWS README TODO ./libmaa-1.4.7: LICENSE NEWS README TODO ./libmaa-devel-doc-1.4.7: libmaa.600dpi.ps Можно просто грохнуть, но лучше поправить систему сборки. Со временем мы перейдём к ошибке, вместо предупреждения при наличии неупакованных файлов, поэтому лучше отслеживать такое заранее. Для своих пакетов это можно сделать, объявив в spec (обычно это в самом начале делается, но, думаю, место не принципиально): %global _unpackaged_files_terminate_build 1 3) runawk-1.6.1-alt2: 3.1) С макросами аналогично 2.1) 3.2) Безопаснее использовать mkstemp вместо tempnam: /usr/src/RPM/BUILD/runawk-1.6.1/runawk/runawk.c:168: warning: the use of `tempnam' is dangerous, better use `mkstemp' Best regards, Andrew Savchenko [-- Attachment #2: Type: application/pgp-signature, Size: 833 bytes --] ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [devel] rpm макросы для пакета mk-configure 2020-05-25 19:49 ` Andrey Savchenko @ 2020-05-25 19:53 ` Andrey Savchenko 2020-05-25 22:09 ` Dmitry V. Levin 2020-05-26 18:30 ` Aleksey Cheusov 2 siblings, 0 replies; 8+ messages in thread From: Andrey Savchenko @ 2020-05-25 19:53 UTC (permalink / raw) To: ALT Linux Team development discussions [-- Attachment #1: Type: text/plain, Size: 1627 bytes --] On Mon, 25 May 2020 22:49:40 +0300 Andrey Savchenko wrote: > Добрый вечер! > > On Mon, 25 May 2020 21:59:49 +0300 Aleksey Cheusov wrote: > > Кажется, мои менторы сильно заняты. Продублирую запрос еще раз с нормальной Темой. > > > > 20.05.2020, 12:35, "Gleb Fotengauer-Malinovskiy" <glebfm на altlinux.org>: > > > напришиваются какие-то макросы для использования mk-configure в спеках. > > > > Сделал макросы для mk-configure. task #252091. > > В него входят: > > mk-configure-0.34.2-alt4 с макросами, и > > libmaa-1.4.7-alt2 и 1.6.1-alt2, где макросы используются. > > > > Нужен review и разрешение на публикацию в Сизифе. > > Вот замеченные проблемы. Большинство из них есть в логах сборки, так > что полезно их грепать на предмет "(warning|error):". > > 1) mk-configure-0.34.2-alt4: > > 1.1) При сборке пакета игнорируются CFLAGS, например, так: > > cc -I/usr/src/RPM/BUILD/mk-configure-0.34.2/examples/tools2/libs/foo -Wall -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Wreturn-type -Wswitch -Wshadow -Wcast-qual -Wwrite-strings -Wno-unused-parameter -Werror -DNUM=1 -c -o prog1.o prog1.c А, вижу, что это только тесты, так что не критично. Best regards, Andrew Savchenko [-- Attachment #2: Type: application/pgp-signature, Size: 833 bytes --] ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [devel] rpm макросы для пакета mk-configure 2020-05-25 19:49 ` Andrey Savchenko 2020-05-25 19:53 ` Andrey Savchenko @ 2020-05-25 22:09 ` Dmitry V. Levin 2020-05-25 22:36 ` Andrey Savchenko 2020-05-26 18:30 ` Aleksey Cheusov 2 siblings, 1 reply; 8+ messages in thread From: Dmitry V. Levin @ 2020-05-25 22:09 UTC (permalink / raw) To: ALT Devel discussion list On Mon, May 25, 2020 at 10:49:40PM +0300, Andrey Savchenko wrote: [...] > 2.1) Нет зависимости на макрос. > Зависимости на макросы нужно делать через BuildRequires(pre): > BuildRequires(pre): rpm-macros-mk-configure > > Иначе возникает вот такая ругать в логе сборки: > warning: Macro %mkc_env not found > warning: Macro %mkcmake_configure not found > warning: Macro %mkcmake_build not found > warning: Macro %mkc_env not found > warning: Macro %mkcmake not found > warning: Macro %mkc_env not found > warning: Macro %mkcmake_install not found > > Я вижу, что сейчас зависимость на rpm-macros-mk-configure добавлена > через Requires в самом mk-configure, но, видимо, так не получится > сделать и во всех пользователях mk-configure также нужно будет > прописывать макрос. > > Это недостаток нашей сборочной системы, но я не знаю, можно ли его > как-то лучше объехать. > > Вроде бы, с текущей зависимостью через Requires в mk-configure тоже > всё работает, но я не знаю, на что могут повлиять эти предупреждения. Эти предупреждения ни на что не влияют. Если бы влияли, то они были бы ошибками и пришлось бы делать BuildRequires(pre): rpm-macros-mk-configure. -- ldv ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [devel] rpm макросы для пакета mk-configure 2020-05-25 22:09 ` Dmitry V. Levin @ 2020-05-25 22:36 ` Andrey Savchenko 0 siblings, 0 replies; 8+ messages in thread From: Andrey Savchenko @ 2020-05-25 22:36 UTC (permalink / raw) To: ALT Linux Team development discussions [-- Attachment #1: Type: text/plain, Size: 1955 bytes --] On Tue, 26 May 2020 01:09:54 +0300 Dmitry V. Levin wrote: > On Mon, May 25, 2020 at 10:49:40PM +0300, Andrey Savchenko wrote: > [...] > > 2.1) Нет зависимости на макрос. > > Зависимости на макросы нужно делать через BuildRequires(pre): > > BuildRequires(pre): rpm-macros-mk-configure > > > > Иначе возникает вот такая ругать в логе сборки: > > warning: Macro %mkc_env not found > > warning: Macro %mkcmake_configure not found > > warning: Macro %mkcmake_build not found > > warning: Macro %mkc_env not found > > warning: Macro %mkcmake not found > > warning: Macro %mkc_env not found > > warning: Macro %mkcmake_install not found > > > > Я вижу, что сейчас зависимость на rpm-macros-mk-configure добавлена > > через Requires в самом mk-configure, но, видимо, так не получится > > сделать и во всех пользователях mk-configure также нужно будет > > прописывать макрос. > > > > Это недостаток нашей сборочной системы, но я не знаю, можно ли его > > как-то лучше объехать. > > > > Вроде бы, с текущей зависимостью через Requires в mk-configure тоже > > всё работает, но я не знаю, на что могут повлиять эти предупреждения. > > Эти предупреждения ни на что не влияют. Если бы влияли, то они были бы > ошибками и пришлось бы делать BuildRequires(pre): rpm-macros-mk-configure. Тогда зачем они выдаются? Следует их отключить, чтоб не сбивать людей с толку. Best regards, Andrew Savchenko [-- Attachment #2: Type: application/pgp-signature, Size: 833 bytes --] ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [devel] rpm макросы для пакета mk-configure 2020-05-25 19:49 ` Andrey Savchenko 2020-05-25 19:53 ` Andrey Savchenko 2020-05-25 22:09 ` Dmitry V. Levin @ 2020-05-26 18:30 ` Aleksey Cheusov 2020-05-27 21:30 ` Andrey Savchenko 2 siblings, 1 reply; 8+ messages in thread From: Aleksey Cheusov @ 2020-05-26 18:30 UTC (permalink / raw) To: ALT Linux Team development discussions 25.05.2020, 22:49, "Andrey Savchenko" <bircoph@altlinux.org>: > On Mon, 25 May 2020 21:59:49 +0300 Aleksey Cheusov wrote: >>> Нужен review и разрешение на публикацию в Сизифе. > > Вот замеченные проблемы. Большинство из них есть в логах сборки, так Обновил. См. http://git.altlinux.org/tasks/252281/ > что полезно их грепать на предмет "(warning|error):". > > 1) mk-configure-0.34.2-alt4: > > 1.1) При сборке пакета игнорируются CFLAGS, например, так: Да, это только тесты. > 2) libmaa-1.4.7-alt2: > > 2.1) Нет зависимости на макрос. > Зависимости на макросы нужно делать через BuildRequires(pre): > BuildRequires(pre): rpm-macros-mk-configure Я сделал так, как сделано с cmake, где cmake Requires rpm-macro-cmake и этого вроде достаточно. "BuildRequires: rpm-macro-mk-configure" действительно исправляет ворнинги, но мне непонятно, зачем они. Зависимость добавил -- бессмысленные ворнинги пропали :-) > 2.2) Есть установленные, но не упакованные файлы: Fixed > С /usr/share/doc/libmaa какой-то косяк вышел и там дублируются > файлы документации, уже разложенные в другие места: Fixed > 3) runawk-1.6.1-alt2: > > 3.1) С макросами аналогично 2.1) Fixed > 3.2) Безопаснее использовать mkstemp вместо tempnam: > /usr/src/RPM/BUILD/runawk-1.6.1/runawk/runawk.c:168: warning: the use of `tempnam' is dangerous, better use `mkstemp' С точки зрения security здесь все в порядке. Так что это предупреждение я сознательно игнорирую. ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [devel] rpm макросы для пакета mk-configure 2020-05-26 18:30 ` Aleksey Cheusov @ 2020-05-27 21:30 ` Andrey Savchenko 2020-06-01 16:15 ` Aleksey Cheusov 0 siblings, 1 reply; 8+ messages in thread From: Andrey Savchenko @ 2020-05-27 21:30 UTC (permalink / raw) To: ALT Linux Team development discussions [-- Attachment #1: Type: text/plain, Size: 3479 bytes --] On Tue, 26 May 2020 21:30:20 +0300 Aleksey Cheusov wrote: > 25.05.2020, 22:49, "Andrey Savchenko" <bircoph@altlinux.org>: > > On Mon, 25 May 2020 21:59:49 +0300 Aleksey Cheusov wrote: > >>> Нужен review и разрешение на публикацию в Сизифе. > > > > Вот замеченные проблемы. Большинство из них есть в логах сборки, так > > Обновил. > См. http://git.altlinux.org/tasks/252281/ Там добавился ещё paexec. По нему есть gcc warning: In file included from /usr/include/string.h:507, from paexec.c:32: In function 'strncpy', inlined from 'init__read_graph_tasks' at paexec.c:276:3: /usr/include/bits/string_fortified.h:106:10: warning: '__builtin_strncpy' specified bound 2000 equals destination size [-Wstringop-truncation] 106 | return __builtin___strncpy_chk (__dest, __src, __len, __bos (__dest)); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Это вот эта строка: strncpy (buf_copy, buf, sizeof (buf_copy)); Размер buf может быть больше buf_copy, т.к. он определяется функцией getdelim(NULL,0,…) и данные читаются из stdin. В таком случае buf_copy будет без терминирующего нуля. Я предлагаю сделать так: strncpy (buf_copy, buf, sizeof (buf_copy) - 1); buf_copy[sizeof (buf_copy) - 1] = '\0'; Других проблем я не нашёл, так что даю аппрув на таск: проблема в коде не является проблемой опакечивания и не является основанием для блокирования коммита. Всё же, я рекомендую исправить эту проблему. > > 2) libmaa-1.4.7-alt2: > > > > 2.1) Нет зависимости на макрос. > > Зависимости на макросы нужно делать через BuildRequires(pre): > > BuildRequires(pre): rpm-macros-mk-configure > > Я сделал так, как сделано с cmake, где cmake Requires rpm-macro-cmake и этого вроде достаточно. > "BuildRequires: rpm-macro-mk-configure" действительно исправляет ворнинги, но мне непонятно, > зачем они. Зависимость добавил -- бессмысленные ворнинги пропали :-) Как следует из комментария ldv, это бесполезный warning. Поэтому мейнтенеру приходится выбирать между бесполезными предупреждениями и бесполезными зависимостями :/ > > 3.2) Безопаснее использовать mkstemp вместо tempnam: > > /usr/src/RPM/BUILD/runawk-1.6.1/runawk/runawk.c:168: warning: the use of `tempnam' is dangerous, better use `mkstemp' > > С точки зрения security здесь все в порядке. Так что это предупреждение я сознательно игнорирую. Да, действительно, там используется mkdir, что подразумевает O_EXCL, что делает tempnam безопасным. Best regards, Andrew Savchenko [-- Attachment #2: Type: application/pgp-signature, Size: 833 bytes --] ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [devel] rpm макросы для пакета mk-configure 2020-05-27 21:30 ` Andrey Savchenko @ 2020-06-01 16:15 ` Aleksey Cheusov 0 siblings, 0 replies; 8+ messages in thread From: Aleksey Cheusov @ 2020-06-01 16:15 UTC (permalink / raw) To: ALT Linux Team development discussions offlist 28.05.2020, 00:30, "Andrey Savchenko" <bircoph@altlinux.org>: > Там добавился ещё paexec. По нему есть gcc warning: > > In file included from /usr/include/string.h:507, > from paexec.c:32: > In function 'strncpy', > inlined from 'init__read_graph_tasks' at paexec.c:276:3: > /usr/include/bits/string_fortified.h:106:10: warning: '__builtin_strncpy' specified bound 2000 equals destination size [-Wstringop-truncation] > 106 | return __builtin___strncpy_chk (__dest, __src, __len, __bos (__dest)); > | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > > Это вот эта строка: > strncpy (buf_copy, buf, sizeof (buf_copy)); > > Размер buf может быть больше buf_copy, т.к. он определяется функцией > getdelim(NULL,0,…) и данные читаются из stdin. В таком случае buf_copy > будет без терминирующего нуля. Исправил в 1.1.4 См. таск №252663 Нужен эпрув ^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2020-06-01 16:15 UTC | newest] Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2020-05-25 18:59 [devel] rpm макросы для пакета mk-configure Aleksey Cheusov 2020-05-25 19:49 ` Andrey Savchenko 2020-05-25 19:53 ` Andrey Savchenko 2020-05-25 22:09 ` Dmitry V. Levin 2020-05-25 22:36 ` Andrey Savchenko 2020-05-26 18:30 ` Aleksey Cheusov 2020-05-27 21:30 ` Andrey Savchenko 2020-06-01 16:15 ` Aleksey Cheusov
ALT Linux Team development discussions This inbox may be cloned and mirrored by anyone: git clone --mirror http://lore.altlinux.org/devel/0 devel/git/0.git # If you have public-inbox 1.1+ installed, you may # initialize and index your mirror using the following commands: public-inbox-init -V2 devel devel/ http://lore.altlinux.org/devel \ devel@altlinux.org devel@altlinux.ru devel@lists.altlinux.org devel@lists.altlinux.ru devel@linux.iplabs.ru mandrake-russian@linuxteam.iplabs.ru sisyphus@linuxteam.iplabs.ru public-inbox-index devel Example config snippet for mirrors. Newsgroup available over NNTP: nntp://lore.altlinux.org/org.altlinux.lists.devel AGPL code for this site: git clone https://public-inbox.org/public-inbox.git