Bug 25368 - Добавить в lua.pc INSTALL_CMOD и др.
Summary: Добавить в lua.pc INSTALL_CMOD и др.
Status: CLOSED FIXED
Alias: None
Product: Sisyphus
Classification: Development
Component: liblua5-devel (show other bugs)
Version: unstable
Hardware: all Linux
: P3 normal
Assignee: Vladimir D. Seleznev
QA Contact: qa-sisyphus
URL: http://git.altlinux.org/people/evg/pa...
Keywords:
Depends on:
Blocks:
 
Reported: 2011-04-03 08:55 MSK by Evgenii Terechkov
Modified: 2011-05-04 21:36 MSK (History)
3 users (show)

See Also:


Attachments
PC-файл из другого дистрибутива (614 bytes, application/octet-stream)
2011-04-03 08:55 MSK, Evgenii Terechkov
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Evgenii Terechkov 2011-04-03 08:55:59 MSK
Created attachment 4860 [details]
PC-файл из другого дистрибутива

Столкнулся с LUA-программами, при сборке спрашивающими у lua.pc , куда им ставить динамически подгружаемые .so-файлы (а именно, запрашивается переменная INSTALL_CMOD). Однако наш аскетичный lua.pc подобной информации не содержит.

Анализ актуальных lua*.pc на основных rpm-based дистрибутивах показал, что все (!) они предоставляют гораздо больше информации, чем наш. Хотелось бы иметь возможность собирать lua-пакеты, запрашивающие такую информацию, без кувалды. Для этого нужно (как я понял) на этапе сборки lua внести в pc-файл дополнительную build-time информацию. Не думаю, что это изменение способно что-то сломать.

Для примера прилагаю pc-файл из другого дистрибутива.
Comment 1 ildar 2011-04-04 08:12:52 MSK
Кроме этого, прошу явно провайдить соответствующие папки. На данный момент это %_libdir/lua5 и %_datadir/lua5
Обоснование: для того же, для чего это делают в других пакетах: чтобы пакеты, ставящие соотв. модули, были уверены, что ставятся в правильное место (т.е. неявная зависимость на владельца соотв. папок)
Comment 2 real@altlinux.org 2011-04-04 09:44:08 MSK
Я не понял. В pkgconfig-файле сказано:
INSTALL_CMOD= ${prefix}/lib/lua/${V}

А Ильдар говорит про %_libdir/lua5. Так куда именно ставить нужно? Или сейчас это (%_libdir/lua5) предполагается как симлинк оформить? Если так, то в чём смысл что-то исправлять в других пакетах?
Comment 3 ildar 2011-04-04 09:59:13 MSK
(В ответ на комментарий №2)
> Я не понял. В pkgconfig-файле сказано:
> INSTALL_CMOD= ${prefix}/lib/lua/${V}

Читайте внимательно: (комментарий №0)
> Для примера прилагаю pc-файл из другого дистрибутива.

Суть бага в том, чтобы положить в пакет обновлённый lua.pc, в котором указан правильный текущий INSTALL_CMOD=
Сейчас это ${prefix}/lib/lua5
Comment 4 real@altlinux.org 2011-04-04 10:25:07 MSK
"Читайте внимательно: (комментарий №0)"

Может быть, имелся в виду №1? ;)

В общем, ждём реакции ldv@ или at@...
Comment 5 Evgenii Terechkov 2011-05-02 19:18:22 MSK
ping?
Comment 6 ildar 2011-05-03 08:22:34 MSK
(В ответ на комментарий №5)
> ping?

1. у нас нет достаточно заинтересованного мэйнтейнера lua
2. ldv@ в рассылке намекнул, что готов посмотреть готовый патч в GIT-е вопрошающего

Если я что-то неправильно написал, прошу меня поправить.
Comment 7 Evgenii Terechkov 2011-05-03 21:00:33 MSK
Патч по сути бага. Следующим коммитом - сборка с запрошенными явными Provides:. Прошу посмотреть/покритиковать/смержить/дать ACL/etc
Comment 8 Evgenii Terechkov 2011-05-03 21:08:17 MSK
(У меня работает, что хотелось собирается с данным .pc без вопросов).
Comment 9 Dmitry V. Levin 2011-05-04 02:38:51 MSK
(In reply to comment #0)
> Created an attachment (id=4860) [details]
> PC-файл из другого дистрибутива

Из какого?

> Столкнулся с LUA-программами, при сборке спрашивающими у lua.pc , куда им
> ставить динамически подгружаемые .so-файлы (а именно, запрашивается переменная
> INSTALL_CMOD). Однако наш аскетичный lua.pc подобной информации не содержит.
> 
> Анализ актуальных lua*.pc на основных rpm-based дистрибутивах показал, что все
> (!) они предоставляют гораздо больше информации, чем наш.

Я сейчас посмотрел федорный пакет.  Выходит, что они удаляют эту информацию пачем http://pkgs.fedoraproject.org/gitweb/?p=lua.git;a=blob;f=lua-5.1.4-autotoolize.patch

Они что, враги себе, или эта информация на самом деле не нужна?

> Хотелось бы иметь
> возможность собирать lua-пакеты, запрашивающие такую информацию, без кувалды.
> Для этого нужно (как я понял) на этапе сборки lua внести в pc-файл
> дополнительную build-time информацию. Не думаю, что это изменение способно
> что-то сломать.
> 
> Для примера прилагаю pc-файл из другого дистрибутива.

> +INSTALL_BIN=${prefix}/bin
> +INSTALL_INC=${prefix}/include
> +INSTALL_LIB=${prefix}/lib
> +INSTALL_MAN=${prefix}/share/man/man1

Я полагаю, что все вышеперечисленное не нужно, а INSTALL_LIB к тому же еще и неправильно.

В debian определяют только INSTALL_LMOD и INSTALL_CMOD, предлагаю и нам ограничиться этими переменными.
Comment 10 Evgenii Terechkov 2011-05-04 04:05:11 MSK
(В ответ на комментарий №9)
> (In reply to comment #0)
> > Created an attachment (id=4860) [details] [details]
> > PC-файл из другого дистрибутива
> Из какого?
 Такие lua.pc я вижу в свежих сборках lua-5.1.4 в PCLinuxOS, Mandriba, OpenSuSe.

> > Столкнулся с LUA-программами, при сборке спрашивающими у lua.pc , куда им
> > ставить динамически подгружаемые .so-файлы (а именно, запрашивается переменная
> > INSTALL_CMOD). Однако наш аскетичный lua.pc подобной информации не содержит.
> > 
> > Анализ актуальных lua*.pc на основных rpm-based дистрибутивах показал, что все
> > (!) они предоставляют гораздо больше информации, чем наш.
> Я сейчас посмотрел федорный пакет.  Выходит, что они удаляют эту информацию
> пачем
> http://pkgs.fedoraproject.org/gitweb/?p=lua.git;a=blob;f=lua-5.1.4-autotoolize.patch
> Они что, враги себе, или эта информация на самом деле не нужна?

Подобные спеки я вижу в FC и PLD. Думаю, сборку каждого пакета, хотящего больше от lua.pc, им пришлось запатчить. Стоит ли и нам так делать?
 
> > Хотелось бы иметь
> > возможность собирать lua-пакеты, запрашивающие такую информацию, без кувалды.
> > Для этого нужно (как я понял) на этапе сборки lua внести в pc-файл
> > дополнительную build-time информацию. Не думаю, что это изменение способно
> > что-то сломать.
> > Для примера прилагаю pc-файл из другого дистрибутива.
> > +INSTALL_BIN=${prefix}/bin
> > +INSTALL_INC=${prefix}/include
> > +INSTALL_LIB=${prefix}/lib
> > +INSTALL_MAN=${prefix}/share/man/man1
> Я полагаю, что все вышеперечисленное не нужно, а INSTALL_LIB к тому же еще и
> неправильно.

Кому? Почему?

> В debian определяют только INSTALL_LMOD и INSTALL_CMOD, предлагаю и нам
> ограничиться этими переменными.

Я добавил больше информации, чем нужно было сейчас мне, ориентируясь на сборки в других дистрибутивах (не FC/PLD), чтобы потом лишний раз маинтайнеру не вставать. Но если он хочет - мне пока этих двух переменных хватит.
Comment 11 Dmitry V. Levin 2011-05-04 05:09:35 MSK
(In reply to comment #10)
> (В ответ на комментарий №9)
> > > +INSTALL_BIN=${prefix}/bin
> > > +INSTALL_INC=${prefix}/include
> > > +INSTALL_LIB=${prefix}/lib
> > > +INSTALL_MAN=${prefix}/share/man/man1
> > Я полагаю, что все вышеперечисленное не нужно, а INSTALL_LIB к тому же еще и
> > неправильно.
> 
> Кому? Почему?

Все вышеперечисленное -- это стандартные каталоги ОС, и не lua.pc определять, где они находятся.  INSTALL_LIB неправильный потому, что %_libdir не всегда совпадает с %_prefix/lib.

> > В debian определяют только INSTALL_LMOD и INSTALL_CMOD, предлагаю и нам
> > ограничиться этими переменными.
> 
> Я добавил больше информации, чем нужно было сейчас мне, ориентируясь на сборки
> в других дистрибутивах (не FC/PLD), чтобы потом лишний раз маинтайнеру не
> вставать. Но если он хочет - мне пока этих двух переменных хватит.

Я думаю, что добавлять lua-специфичные переменные для не-lua-специфичных каталогов не стоит.
Comment 12 Evgenii Terechkov 2011-05-04 05:58:41 MSK
Понятно. Делаю другой патч.
Comment 13 Evgenii Terechkov 2011-05-04 17:42:19 MSK
Новый патч. Ляп с libdir починен в спеке (следующий коммит).
Comment 14 Dmitry V. Levin 2011-05-04 18:27:40 MSK
(In reply to comment #13)
> Новый патч. Ляп с libdir починен в спеке (следующий коммит).

Fine with me.
Comment 15 Evgenii Terechkov 2011-05-04 19:35:44 MSK
merge/acl/что-то ещё?
Comment 16 Repository Robot 2011-05-04 21:17:44 MSK
lua5-5.1.4-alt5 -> sisyphus:

* Tue May 03 2011 Terechkov Evgenii <evg@altlinux> 5.1.4-alt5
- Add more info in lua.pc (ALT#25368)
Comment 17 Evgenii Terechkov 2011-05-04 21:36:39 MSK
Ok