Summary: | Значения макросов %_x11* с новым xorg | ||
---|---|---|---|
Product: | Sisyphus | Reporter: | Sergey V Turchin <zerg> |
Component: | rpm-build | Assignee: | placeholder <placeholder> |
Status: | CLOSED FIXED | QA Contact: | qa-sisyphus |
Severity: | normal | ||
Priority: | P2 | CC: | arseny, glebfm, imz, ldv, mike, placeholder, rider, shrek, vsu, vt |
Version: | unstable | ||
Hardware: | all | ||
OS: | Linux | ||
Bug Depends on: | |||
Bug Blocks: | 8824 |
Description
Sergey V Turchin
2006-01-11 18:17:04 MSK
А должны ли? по моему нет (In reply to comment #1) > А должны ли? У меня в пакете, не имеющем сборочной завистмости на x11 необходимо знать, где находятся библиотеки, драйвера и модули. Это я могу узнать только из макросов я думаю тебе нужен всего один макрос - %_x11modulesdir, который может быть /usr/X11R6/{lib,lib64}/modules для Xorg <= 6.9 и /usr/{lib,lib64}/X11/modules для Xorg >= 7.0 (In reply to comment #4) > я думаю тебе нужен всего один макрос - %_x11modulesdir, который может Еще мне нужен %_x11libdir, чтобы знать, где лежат библиотеки, например libGL.so.1 хм... ну его то точно пора устанавливать в /usr/lib (In reply to comment #6) > хм... ну его то точно пора устанавливать в /usr/lib Я не могу при сборке пакета спрашивать через bugzilla :-) (In reply to comment #1) > А должны ли? А зачем они тогда? (In reply to comment #7) > Я не могу при сборке пакета спрашивать через bugzilla :-) Это я не в тему :-) (In reply to comment #4) > я думаю тебе нужен всего один макрос - %_x11modulesdir, который может А еще мне нужен либо макрос, при помощи которого я определю положение каталога drv.d - %_x11x11dir а давай обойдемся без этого. пусть он будет /etc/X11/drv.d, том все равно лежат симлинки (In reply to comment #11) > а давай обойдемся без этого. пусть он будет /etc/X11/drv.d, том все равно > лежат симлинки У меня бинарь, его низя в /etc и не надо. симлинк на него можно Т.е. /usr/*/drv.d больше не существует? /usr/X11R6/lib/drv.d для 6.9, /usr/lib/X11/drv.d для 7.0. /etc/X11/drv.d я предлагаю для того что об этом не думать (In reply to comment #15) > /usr/X11R6/lib/drv.d для 6.9, /usr/lib/X11/drv.d для 7.0. /etc/X11/drv.d я > предлагаю для того что об этом не думать Я не хочу зависеть от вышеуказанных цифр. Мы уже договаривались, что будет /usr/X11R6/lib/drv.d, но если он вылетает, остается /etc/X11/drv.d так я о чем и говорю. что бы не зависеть давай использовать /etc/X11/drv.d есть ещё libexec, так что можно не заморачиваться.. Зерг, просто перенеси свой бинарь в %_libdir/x11drv.d (например) и не заморачивайся Макрос для этого почти наверняка не нужен (у нас всего три таких пакета странных). %_libdir/X11/drv.d или /usr/libexec/X11/drv.d второе даже предпочтительнее (In reply to comment #18) > Макрос для этого почти наверняка не нужен Тогда нужно выбрать такой каталог, который _никогда_ не будет меняться /usr/libexec/X11/drv.d (In reply to comment #19) > %_libdir/X11/drv.d А что будет, если пакет, имеющий 2 файла /usr/X11R6/drv.d/file и /usr/lib/X11/drv.d/file поставить на xorg < 7 > или /usr/libexec/X11/drv.d > второе даже предпочтительнее Да бинарь-то я положу уж куда-нибудь. (In reply to comment #21) > /usr/libexec/X11/drv.d Т.е. теперь setgl и x11setupdrv там искать будут? да хоть три файла будут разложены. x11setupdrv ищет в одном месте, то которое укажешь в configure при сборке (In reply to comment #24) > да хоть три файла будут разложены. > x11setupdrv ищет в одном месте, то которое > укажешь в configure при сборке Да мне все равно, как он собирается. В какой каталог положить, чтоб его нашли? И %_x11* я могу не пользовать, только буду удалять /usr/X11R6/lib/libGL.so.1 каждый раз на всякий (могу до кучи и создавать его потом, но до смены видеокарты). /usr/libexec/X11/drv.d (In reply to comment #26) > /usr/libexec/X11/drv.d Дубль 2: setgl и x11setupdrv там искать будут или в /etc/X11/drv.d? setgl не знаю. x11setupdrv уже ищет в /usr/libexec/X11/drv.d (In reply to comment #28) > setgl не знаю. x11setupdrv уже ищет в /usr/libexec/X11/drv.d ok, договорились А про /etc/X11/drv.d можно забыть, как я понял? i810 там отсутствует, значит setgl про этот каталог не знает Итак, до сих пор у нас было так: $ rpm --showrc |fgrep x11 -14: _x11bindir %{_x11dir}/bin -14: _x11datadir %{_x11dir}/share -14: _x11dir %{_prefix}/X11R6 -14: _x11fontsdir %{_x11x11dir}/fonts -14: _x11includedir %{_x11dir}/include -14: _x11libdir %{_x11dir}/%_lib -14: _x11mandir %{_x11dir}/man -14: _x11x11dir %{_x11dir}/lib/X11 Как это должно измениться? %_x11datadir %_datadir/X11 %_x11libdir %_libdir что делать с остальными не знаю (In reply to comment #25) > только буду удалять /usr/X11R6/lib/libGL.so.1 каждый раз на всякий Эта... только проверив, что он -- симлинк. Бывает ещё бинарь ручной работы, лучше лишнего не ломать. (In reply to comment #32) > (In reply to comment #25) > > только буду удалять /usr/X11R6/lib/libGL.so.1 каждый раз на всякий > Эта... только проверив, что он -- симлинк. Нет, файл мне там точно не нужен. > Бывает ещё бинарь ручной работы, лучше лишнего не ломать. Бинари ручной работы в любом случае идут лесом если установлен пакет nvidia_glx_common Альтернативный вариант - запаковать, скажем, в составе пакета xorg-x11-proto-devel новые версии макросов, которые будут перекрывать встроенные в rpm-build. Этот вариант лучше в случае, когда окончательного решения по макросам нет. Да и для обратной совместимости лучше. (In reply to comment #34) > xorg-x11-proto-devel новые версии макросов Вообще, неплохо. (правда я в своем проблемном пакете перестал пользоваться %_x11*, чтоб не зависеть от этих плясок) > Да и для обратной совместимости лучше. Сделать пакет, который будет собираться и на текущем сизифе и на Compact-3.0 вряд ли получиться без сильного изврата. (In reply to comment #35) > (In reply to comment #34) > > xorg-x11-proto-devel новые версии макросов > Вообще, неплохо. (правда я в своем проблемном пакете перестал пользоваться значит так и сделаю > %_x11*, чтоб не зависеть от этих плясок) > > > Да и для обратной совместимости лучше. > Сделать пакет, который будет собираться и на текущем сизифе и на > Compact-3.0 вряд ли получиться без сильного изврата. это верно если возражений нет то я добавлю следующее %_x11dir %{_prefix} %_x11bindir %{_bindir} %_x11libdir %{_libdir} %_x11x11dir %{_datadir}/X11 %_x11includedir %{_includedir} %_x11mandir %{_mandir} %_x11datadir %{_datadir} %_x11fontsdir %{_datadir}/X11/fonts %_x11modulesdir %{_libdir}/X11/modules %_x11drvddir %{_prefix}/libexec/X11/drv.d А /usr/lib/X11 ? %_x11x11dir %{_libdir}/X11 %_x11x11datadir %{_datadir}/X11 Может так? %_x11x11dir был noarch, поэтотму оно и переехать должно в %{_datadir}/X11 поэтому лучше так %_x11x11dir %{_datadir}/X11 %_x11x11libdir %{_libdir}/X11 Я не против. Окончательный список еще раз на всякий целиком напиши. %_x11dir %{_prefix} %_x11bindir %{_bindir} %_x11libdir %{_libdir} %_x11x11libdir %{_libdir}/X11 %_x11x11dir %{_datadir}/X11 %_x11includedir %{_includedir} %_x11mandir %{_mandir} %_x11datadir %{_datadir} %_x11fontsdir %{_datadir}/X11/fonts %_x11modulesdir %{_libdir}/X11/modules %_x11drvddir %{_prefix}/libexec/X11/drv.d да, еще %_x11sysconfdir %{_sysconfdir}/X11 %_x11appconfdir %{_sysconfdir}/X11/app-defaults Похоже, новые макросы неплохо работают? В rpm-build их скопировать или пока оставить как есть? скопируй (In reply to comment #44) > Похоже, новые макросы неплохо работают? Вообще, вылазят штуки типа автоизменившейся альтернативы /usr/X11R6/bin/xvt у меня и не изменившейся в некоторых других пакетах. Правда не знаю, от того, что не пересобирались или из-за использования разных макросов. > В rpm-build их скопировать или пока оставить как есть? #c0 В 4.0.4-alt60 обновил все %_x11*dir макросы на те, которые в xorg-x11-proto-devel-7.0.0-alt5. а то что новое появилось не добавлял? Я взял всё содержимое файла x11r7.rpmmacros и заменил им то, что было раньше. тогда я уберу макросы из xorg-x11-proto-devel Подожди недельку. ну это будет в любом случае не сейчас. я только сегодня закинул alt6 |