Bug 8825

Summary: Значения макросов %_x11* с новым xorg
Product: Sisyphus Reporter: Sergey V Turchin <zerg>
Component: rpm-buildAssignee: 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
Значения макросов %_x11* должны измениться в соответствии с новым xorg
Comment 1 Dmitry V. Levin 2006-01-11 18:38:59 MSK
А должны ли?
Comment 2 Valery Inozemtsev 2006-01-11 18:41:59 MSK
по моему нет  
Comment 3 Sergey V Turchin 2006-01-11 18:58:04 MSK
(In reply to comment #1) 
> А должны ли? 
У меня в пакете, не имеющем сборочной завистмости на x11 необходимо знать, где 
находятся библиотеки, драйвера и модули. Это я могу узнать только из макросов 
Comment 4 Valery Inozemtsev 2006-01-11 20:11:31 MSK
я думаю тебе нужен всего один макрос - %_x11modulesdir, который может 
быть /usr/X11R6/{lib,lib64}/modules для Xorg <= 6.9 
и /usr/{lib,lib64}/X11/modules для Xorg >= 7.0 
Comment 5 Sergey V Turchin 2006-01-11 20:43:18 MSK
(In reply to comment #4) 
> я думаю тебе нужен всего один макрос - %_x11modulesdir, который может  
Еще мне нужен %_x11libdir, чтобы знать, где лежат библиотеки, например 
libGL.so.1 
 
Comment 6 Valery Inozemtsev 2006-01-11 20:47:04 MSK
хм... ну его то точно пора устанавливать в /usr/lib 
Comment 7 Zerg 2006-01-11 22:30:24 MSK
(In reply to comment #6)   
> хм... ну его то точно пора устанавливать в /usr/lib    
Я не могу при сборке пакета спрашивать через bugzilla :-) 
 
 
Comment 8 Zerg 2006-01-11 22:30:59 MSK
(In reply to comment #1) 
> А должны ли? 
А зачем они тогда? 
 
Comment 9 Zerg 2006-01-11 22:40:20 MSK
(In reply to comment #7) 
> Я не могу при сборке пакета спрашивать через bugzilla :-)  
Это я не в тему :-) 
 
Comment 10 Zerg 2006-01-12 11:42:25 MSK
(In reply to comment #4) 
> я думаю тебе нужен всего один макрос - %_x11modulesdir, который может  
А еще мне нужен либо макрос, при помощи которого я определю положение каталога 
drv.d - %_x11x11dir 
 
Comment 11 Valery Inozemtsev 2006-01-12 11:50:00 MSK
а давай обойдемся без этого. пусть он будет /etc/X11/drv.d, том все равно 
лежат симлинки 
Comment 12 Sergey V Turchin 2006-01-12 14:15:46 MSK
(In reply to comment #11) 
> а давай обойдемся без этого. пусть он будет /etc/X11/drv.d, том все равно  
> лежат симлинки  
У меня бинарь, его низя в /etc 
 
Comment 13 Valery Inozemtsev 2006-01-12 14:43:26 MSK
и не надо. симлинк на него можно  
Comment 14 Sergey V Turchin 2006-01-12 15:27:19 MSK
Т.е. 
/usr/*/drv.d больше не существует? 
 
Comment 15 Valery Inozemtsev 2006-01-12 15:32:14 MSK
/usr/X11R6/lib/drv.d для 6.9, /usr/lib/X11/drv.d для 7.0. /etc/X11/drv.d я 
предлагаю для того что об этом не думать 
Comment 16 Sergey V Turchin 2006-01-12 15:42:47 MSK
(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 
Comment 17 Valery Inozemtsev 2006-01-12 15:48:23 MSK
так я о чем и говорю. что бы не зависеть давай использовать /etc/X11/drv.d 
Comment 18 Anton Farygin 2006-01-12 16:25:09 MSK
есть ещё libexec, так что можно не заморачиваться.. Зерг, просто перенеси свой
бинарь в %_libdir/x11drv.d (например) и не заморачивайся

Макрос для этого почти наверняка не нужен (у нас всего три таких пакета странных).
Comment 19 Valery Inozemtsev 2006-01-12 16:35:46 MSK
%_libdir/X11/drv.d или /usr/libexec/X11/drv.d 
второе даже предпочтительнее 
Comment 20 Sergey V Turchin 2006-01-12 17:23:23 MSK
(In reply to comment #18) 
> Макрос для этого почти наверняка не нужен 
Тогда нужно выбрать такой каталог, который _никогда_ не будет меняться 
Comment 21 Valery Inozemtsev 2006-01-12 17:25:46 MSK
/usr/libexec/X11/drv.d 
Comment 22 Sergey V Turchin 2006-01-12 17:28:40 MSK
(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   
> второе даже предпочтительнее   
Да бинарь-то я положу уж куда-нибудь.  
Comment 23 Sergey V Turchin 2006-01-12 17:31:44 MSK
(In reply to comment #21) 
> /usr/libexec/X11/drv.d  
Т.е. теперь setgl и x11setupdrv там искать будут? 
Comment 24 Valery Inozemtsev 2006-01-12 17:34:22 MSK
да хоть три файла будут разложены. x11setupdrv ищет в одном месте, то которое 
укажешь в configure при сборке 
Comment 25 Sergey V Turchin 2006-01-12 17:42:22 MSK
(In reply to comment #24) 
> да хоть три файла будут разложены. 
> x11setupdrv ищет в одном месте, то которое  
> укажешь в configure при сборке  
Да мне все равно, как он собирается. 
В какой каталог положить, чтоб его нашли? 
 
И %_x11* я могу не пользовать, только буду удалять /usr/X11R6/lib/libGL.so.1 
каждый раз на всякий (могу до кучи и создавать его потом, но до смены 
видеокарты). 
 
Comment 26 Valery Inozemtsev 2006-01-12 17:46:40 MSK
/usr/libexec/X11/drv.d 
Comment 27 Sergey V Turchin 2006-01-12 19:54:40 MSK
(In reply to comment #26)  
> /usr/libexec/X11/drv.d   
Дубль 2: setgl и x11setupdrv там искать будут или в /etc/X11/drv.d? 
 
Comment 28 Valery Inozemtsev 2006-01-12 20:01:25 MSK
setgl не знаю. x11setupdrv уже ищет в /usr/libexec/X11/drv.d 
Comment 29 Sergey V Turchin 2006-01-12 20:28:08 MSK
(In reply to comment #28) 
> setgl не знаю. x11setupdrv уже ищет в /usr/libexec/X11/drv.d  
ok, договорились 
А про /etc/X11/drv.d можно забыть, как я понял? i810 там отсутствует, значит 
setgl про этот каталог не знает 
 
Comment 30 Dmitry V. Levin 2006-01-16 17:45:57 MSK
Итак, до сих пор у нас было так:
$ 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

Как это должно измениться?
Comment 31 Valery Inozemtsev 2006-01-16 17:55:38 MSK
%_x11datadir %_datadir/X11 
%_x11libdir  %_libdir 
 
что делать с остальными не знаю 
Comment 32 Michael Shigorin 2006-01-19 22:24:57 MSK
(In reply to comment #25)
> только буду удалять /usr/X11R6/lib/libGL.so.1 каждый раз на всякий
Эта... только проверив, что он -- симлинк.

Бывает ещё бинарь ручной работы, лучше лишнего не ломать.
Comment 33 Sergey V Turchin 2006-01-20 19:13:12 MSK
(In reply to comment #32) 
> (In reply to comment #25) 
> > только буду удалять /usr/X11R6/lib/libGL.so.1 каждый раз на всякий 
> Эта... только проверив, что он -- симлинк. 
Нет, файл мне там точно не нужен. 
 
> Бывает ещё бинарь ручной работы, лучше лишнего не ломать. 
Бинари ручной работы в любом случае идут лесом если установлен пакет 
nvidia_glx_common 
 
Comment 34 Dmitry V. Levin 2006-01-25 02:15:51 MSK
Альтернативный вариант - запаковать, скажем, в составе пакета
xorg-x11-proto-devel новые версии макросов, которые будут перекрывать встроенные
в rpm-build.

Этот вариант лучше в случае, когда окончательного решения по макросам нет.
Да и для обратной совместимости лучше.
Comment 35 Sergey V Turchin 2006-01-25 15:02:16 MSK
(In reply to comment #34)   
> xorg-x11-proto-devel новые версии макросов  
Вообще, неплохо. (правда я в своем проблемном пакете перестал пользоваться 
%_x11*, чтоб не зависеть от этих плясок) 
 
> Да и для обратной совместимости лучше.   
Сделать пакет, который будет собираться и на текущем сизифе и на   
Compact-3.0 вряд ли получиться без сильного изврата.   
 
Comment 36 Valery Inozemtsev 2006-01-26 11:03:07 MSK
(In reply to comment #35) 
> (In reply to comment #34)    
> > xorg-x11-proto-devel новые версии макросов   
> Вообще, неплохо. (правда я в своем проблемном пакете перестал пользоваться  
 
значит так и сделаю 
 
> %_x11*, чтоб не зависеть от этих плясок)  
>   
> > Да и для обратной совместимости лучше.    
> Сделать пакет, который будет собираться и на текущем сизифе и на    
> Compact-3.0 вряд ли получиться без сильного изврата.    
это верно 
 
 
Comment 37 Valery Inozemtsev 2006-01-26 12:11:15 MSK
если возражений нет то я добавлю следующее 
%_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 
 
Comment 38 Sergey V Turchin 2006-01-26 15:04:39 MSK
А /usr/lib/X11 ? 
Comment 39 Sergey V Turchin 2006-01-26 15:06:51 MSK
%_x11x11dir     %{_libdir}/X11 
%_x11x11datadir     %{_datadir}/X11 
Может так? 
Comment 40 Valery Inozemtsev 2006-01-26 15:13:01 MSK
%_x11x11dir был noarch, поэтотму оно и переехать должно в %{_datadir}/X11  
поэтому лучше так 
%_x11x11dir     %{_datadir}/X11  
%_x11x11libdir     %{_libdir}/X11  
Comment 41 Sergey V Turchin 2006-01-26 15:54:23 MSK
Я не против. Окончательный список еще раз на всякий целиком напиши. 
Comment 42 Valery Inozemtsev 2006-01-26 16:01:55 MSK
%_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 
Comment 43 Valery Inozemtsev 2006-01-26 16:18:43 MSK
да, еще  
%_x11sysconfdir %{_sysconfdir}/X11 
%_x11appconfdir %{_sysconfdir}/X11/app-defaults 
Comment 44 Dmitry V. Levin 2006-02-17 02:30:40 MSK
Похоже, новые макросы неплохо работают?
В rpm-build их скопировать или пока оставить как есть?
Comment 45 Valery Inozemtsev 2006-02-17 10:39:47 MSK
скопируй 
Comment 46 Sergey V Turchin 2006-02-17 17:33:19 MSK
(In reply to comment #44)  
> Похоже, новые макросы неплохо работают?  
Вообще, вылазят штуки типа автоизменившейся альтернативы /usr/X11R6/bin/xvt у  
меня и не изменившейся в некоторых других пакетах. Правда не знаю, от того, 
что не пересобирались или из-за использования разных макросов. 
 
> В rpm-build их скопировать или пока оставить как есть?  
#c0 
  
Comment 47 Dmitry V. Levin 2006-02-21 18:55:37 MSK
В 4.0.4-alt60 обновил все %_x11*dir макросы на те, которые в
xorg-x11-proto-devel-7.0.0-alt5.
Comment 48 Valery Inozemtsev 2006-02-21 19:16:16 MSK
а то что новое появилось не добавлял? 
Comment 49 Dmitry V. Levin 2006-02-21 19:50:00 MSK
Я взял всё содержимое файла x11r7.rpmmacros и заменил им то, что было раньше.
Comment 50 Valery Inozemtsev 2006-02-21 19:51:38 MSK
тогда я уберу макросы из xorg-x11-proto-devel 
Comment 51 Dmitry V. Levin 2006-02-21 19:52:38 MSK
Подожди недельку.
Comment 52 Valery Inozemtsev 2006-02-21 20:00:32 MSK
ну это будет в любом случае не сейчас. я только сегодня закинул alt6