ALT Linux Team development discussions
 help / color / mirror / Atom feed
* [devel] Можно ли отфильтровать зависимости?
@ 2008-11-20 15:33 Pavel Wolneykien
  2008-11-20 15:42 ` Slava Dubrovskiy
                   ` (2 more replies)
  0 siblings, 3 replies; 15+ messages in thread
From: Pavel Wolneykien @ 2008-11-20 15:33 UTC (permalink / raw)
  To: devel


  Всем привет, :)

  Дана программа на shell, при сканировании которой во время сборки
пакета (shell.req) порождаются N зависимостей. Задача: исключить из
полученного набора некоторые зависимости (имеются в виду зависимости, не
влияющие на работоспособность программы, например, альтернативные).
  Вопрос: можно ли решить эту задачу не внося изменений в программу?
Например, запретить определённые зависимости, определив в spec-файле
специальную переменную и т.п.?

  Павел.

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [devel] Можно ли отфильтровать зависимости?
  2008-11-20 15:33 [devel] Можно ли отфильтровать зависимости? Pavel Wolneykien
@ 2008-11-20 15:42 ` Slava Dubrovskiy
  2008-11-20 15:43   ` Mikhail Gusarov
  2008-11-20 15:55 ` Damir Shayhutdinov
    2 siblings, 1 reply; 15+ messages in thread
From: Slava Dubrovskiy @ 2008-11-20 15:42 UTC (permalink / raw)
  To: ALT Linux Team development discussions

[-- Attachment #1: Type: text/plain, Size: 930 bytes --]

Pavel Wolneykien пишет:
>   Всем привет, :)
>
>   Дана программа на shell, при сканировании которой во время сборки
> пакета (shell.req) порождаются N зависимостей. Задача: исключить из
> полученного набора некоторые зависимости (имеются в виду зависимости, не
> влияющие на работоспособность программы, например, альтернативные).
>   Вопрос: можно ли решить эту задачу не внося изменений в программу?
> Например, запретить определённые зависимости, определив в spec-файле
> специальную переменную и т.п.?
>   
AutoReq: yes, noshell

-- 
WBR,
Dubrovskiy Vyacheslav


[-- Attachment #2: S/MIME Cryptographic Signature --]
[-- Type: application/x-pkcs7-signature, Size: 3262 bytes --]

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [devel] Можно ли отфильтровать зависимости?
  2008-11-20 15:42 ` Slava Dubrovskiy
@ 2008-11-20 15:43   ` Mikhail Gusarov
  2008-11-20 15:56     ` Pavel Wolneykien
  0 siblings, 1 reply; 15+ messages in thread
From: Mikhail Gusarov @ 2008-11-20 15:43 UTC (permalink / raw)
  To: ALT Linux Team development discussions

[-- Attachment #1: Type: text/plain, Size: 948 bytes --]

Twas brillig at 17:42:07 20.11.2008 UTC+02 when slava@tangramltd.com did gyre and gimble:

 >>   Дана программа на shell, при сканировании которой во время сборки
 >> пакета (shell.req) порождаются N зависимостей. Задача: исключить из
 >> полученного набора некоторые зависимости (имеются в виду зависимости, не
 >> влияющие на работоспособность программы, например, альтернативные).

 SD> AutoReq: yes, noshell

Задача стояла "исключить из полученного набора некоторые зависимости", а
не "исключить из полученного набора все shell-зависимости".

Так что решение слишком coarse-grained.

-- 

[-- Attachment #2: Type: application/pgp-signature, Size: 196 bytes --]

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [devel] Можно ли отфильтровать зависимости?
  2008-11-20 15:33 [devel] Можно ли отфильтровать зависимости? Pavel Wolneykien
  2008-11-20 15:42 ` Slava Dubrovskiy
@ 2008-11-20 15:55 ` Damir Shayhutdinov
  2008-11-20 15:56   ` Mikhail Gusarov
  2008-11-20 18:39   ` Vitaly Ostanin
    2 siblings, 2 replies; 15+ messages in thread
From: Damir Shayhutdinov @ 2008-11-20 15:55 UTC (permalink / raw)
  To: ALT Linux Team development discussions

>  Всем привет, :)
>
>  Дана программа на shell, при сканировании которой во время сборки
> пакета (shell.req) порождаются N зависимостей. Задача: исключить из
> полученного набора некоторые зависимости (имеются в виду зависимости, не
> влияющие на работоспособность программы, например, альтернативные).
>  Вопрос: можно ли решить эту задачу не внося изменений в программу?
> Например, запретить определённые зависимости, определив в spec-файле
> специальную переменную и т.п.?
Насколько мне известно, можно обмануть генератор зависимостей, заменив код

if [ -x /path/to/program ]; then
    /path/to/program args
fi

На

MYPROGRAM=/path/to/program
if [ -x "$MYPROGRAM" ]; then
  "$MYPROGRAM" args
fi

Таким образом исключив /path/to/program из зависимостей.

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [devel] Можно ли отфильтровать зависимости?
  2008-11-20 15:43   ` Mikhail Gusarov
@ 2008-11-20 15:56     ` Pavel Wolneykien
  2008-11-20 16:07       ` Slava Dubrovskiy
  0 siblings, 1 reply; 15+ messages in thread
From: Pavel Wolneykien @ 2008-11-20 15:56 UTC (permalink / raw)
  To: ALT Linux Team development discussions


Mikhail Gusarov <dottedmag@altlinux.org> wrote:
>  SD> AutoReq: yes, noshell
> 
> Так что решение слишком coarse-grained.

  Я знаю middle-grained:

  %add_findreq_skiplist /путь/к/программе/порождающей/зависимости.

Но это тоже слишком грубо: 6 из 7 зависимостей которые она порождает
нужны...

  Павел.

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [devel] Можно ли отфильтровать зависимости?
  2008-11-20 15:55 ` Damir Shayhutdinov
@ 2008-11-20 15:56   ` Mikhail Gusarov
  2008-11-20 18:39   ` Vitaly Ostanin
  1 sibling, 0 replies; 15+ messages in thread
From: Mikhail Gusarov @ 2008-11-20 15:56 UTC (permalink / raw)
  To: ALT Linux Team development discussions

[-- Attachment #1: Type: text/plain, Size: 479 bytes --]

Twas brillig at 18:55:32 20.11.2008 UTC+03 when damir@altlinux.org did gyre and gimble:

 >>  Вопрос: можно ли решить эту задачу не внося изменений в программу?
 DS> Насколько мне известно, можно обмануть генератор зависимостей, заменив код

Это противоречит условию "не внося изменений в программу"

-- 

[-- Attachment #2: Type: application/pgp-signature, Size: 196 bytes --]

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [devel] Можно ли отфильтровать зависимости?
  2008-11-20 15:56     ` Pavel Wolneykien
@ 2008-11-20 16:07       ` Slava Dubrovskiy
  2008-11-20 16:24         ` Pavel Wolneykien
  0 siblings, 1 reply; 15+ messages in thread
From: Slava Dubrovskiy @ 2008-11-20 16:07 UTC (permalink / raw)
  To: ALT Linux Team development discussions

[-- Attachment #1: Type: text/plain, Size: 523 bytes --]

Pavel Wolneykien пишет:
>>  SD> AutoReq: yes, noshell
>>
>> Так что решение слишком coarse-grained.
>>     
>   Я знаю middle-grained:
>
>   %add_findreq_skiplist /путь/к/программе/порождающей/зависимости.
>
> Но это тоже слишком грубо: 6 из 7 зависимостей которые она порождает
> нужны...
>   
А потом те что нужны добавить руками :\

-- 
WBR,
Dubrovskiy Vyacheslav


[-- Attachment #2: S/MIME Cryptographic Signature --]
[-- Type: application/x-pkcs7-signature, Size: 3262 bytes --]

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [devel] Можно ли отфильтровать зависимости?
  @ 2008-11-20 16:23   ` Pavel Wolneykien
  2008-11-20 16:37     ` Alexey I. Froloff
    0 siblings, 2 replies; 15+ messages in thread
From: Pavel Wolneykien @ 2008-11-20 16:23 UTC (permalink / raw)
  To: ALT Linux Team development discussions


Victor Forsyuk <force@altlinux.org> wrote:
> # grep find_requires /usr/lib/rpm/*
> /usr/lib/rpm/macros:%__find_requires /usr/lib/rpm/find-requires
> Переопределяете в спеке эту переменную на свой шелловский скриптик, который добавите как еще один SOURCE.
> Скриптик вызывает настоящий find-requires и отфильтровывает из его вывода нежелательные зависимости.

  Спасибо. Похоже, то, что нужно! Только вот я теперь думаю, а нужно ли
оно мне на самом деле? :) Может быть проще, всё-же, пропатчить скрипт..?

  Тогда ещё вопрос, на случай, если я воспользуюсь этим рецептом.
Если я сделаю обёртку для find-requires из пакета
rpm-build-4.0.4-alt96.12, ведь не факт что она будет корректно работать
для других версий rpm-build? Можно, конечно, указать ограничение на
версию rpm-build в BuildPreReq. Но насколько строгое?

  Павел.

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [devel] Можно ли отфильтровать зависимости?
  2008-11-20 16:07       ` Slava Dubrovskiy
@ 2008-11-20 16:24         ` Pavel Wolneykien
  2008-11-20 16:30           ` Slava Dubrovskiy
  0 siblings, 1 reply; 15+ messages in thread
From: Pavel Wolneykien @ 2008-11-20 16:24 UTC (permalink / raw)
  To: ALT Linux Team development discussions


Slava Dubrovskiy <slava@tangramltd.com> wrote:
> >   Я знаю middle-grained:
> >
> >   %add_findreq_skiplist /путь/к/программе/порождающей/зависимости.
> >
> > Но это тоже слишком грубо: 6 из 7 зависимостей которые она порождает
> > нужны...
> >   
> А потом те что нужны добавить руками :\

  Даёшь автоматизацию! :)))

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [devel] Можно ли отфильтровать зависимости?
  2008-11-20 16:24         ` Pavel Wolneykien
@ 2008-11-20 16:30           ` Slava Dubrovskiy
  0 siblings, 0 replies; 15+ messages in thread
From: Slava Dubrovskiy @ 2008-11-20 16:30 UTC (permalink / raw)
  To: ALT Linux Team development discussions

[-- Attachment #1: Type: text/plain, Size: 539 bytes --]

Pavel Wolneykien пишет:
>>>   Я знаю middle-grained:
>>>
>>>   %add_findreq_skiplist /путь/к/программе/порождающей/зависимости.
>>>
>>> Но это тоже слишком грубо: 6 из 7 зависимостей которые она порождает
>>> нужны...  
>>>       
>> А потом те что нужны добавить руками :\
>>     
> Даёшь автоматизацию! :)))
>   
Автоматизацию рук? :)

-- 
WBR,
Dubrovskiy Vyacheslav


[-- Attachment #2: S/MIME Cryptographic Signature --]
[-- Type: application/x-pkcs7-signature, Size: 3262 bytes --]

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [devel] Можно ли отфильтровать зависимости?
  2008-11-20 16:23   ` Pavel Wolneykien
@ 2008-11-20 16:37     ` Alexey I. Froloff
    1 sibling, 0 replies; 15+ messages in thread
From: Alexey I. Froloff @ 2008-11-20 16:37 UTC (permalink / raw)
  To: ALT Devel discussion list

[-- Attachment #1: Type: text/plain, Size: 272 bytes --]

* Pavel Wolneykien <manowar@> [081120 19:28]:
>   Спасибо. Похоже, то, что нужно! Только вот я теперь думаю, а нужно ли
> оно мне на самом деле? :) Может быть проще, всё-же, пропатчить скрипт..?
А вот это действительно правильное решение.

-- 
Regards,
Sir Raorn.

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 189 bytes --]

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [devel] Можно ли отфильтровать зависимости?
  @ 2008-11-20 17:08       ` Pavel Wolneykien
  2008-11-20 17:15         ` Michael Shigorin
  0 siblings, 1 reply; 15+ messages in thread
From: Pavel Wolneykien @ 2008-11-20 17:08 UTC (permalink / raw)
  To: ALT Linux Team development discussions


Victor Forsyuk <force@altlinux.org> wrote:
> Простите, каким образом фильтрация зависимостей на выходе find-requires может не работать для других версий??

  1. %__find_requires станет использоваться как-то иначе;
  2. поменяется формат вывода find-requires.

  Я понимаю, конечно, что на 100% универсальных решений не
существует. Просто интересует степень универсальности/надёжности
данного.

  Выраженное, к примеру, в виде rpm-build >= A rpm-build <= B. :)
  (Кстати, а можно указывать такие двойные зависимости в спеке?)

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [devel] Можно ли отфильтровать зависимости?
  2008-11-20 17:08       ` Pavel Wolneykien
@ 2008-11-20 17:15         ` Michael Shigorin
  0 siblings, 0 replies; 15+ messages in thread
From: Michael Shigorin @ 2008-11-20 17:15 UTC (permalink / raw)
  To: devel

On Thu, Nov 20, 2008 at 08:08:12PM +0300, Pavel Wolneykien wrote:
>   Выраженное, к примеру, в виде rpm-build >= A rpm-build <= B. :)

Да не переживайте Вы раньше времени, во всём помогает меру знать :)

>   (Кстати, а можно указывать такие двойные зависимости в спеке?)

Requires: rpm-build >= A
Requires: rpm-build <= B

или

Requires: rpm-build >= A
Conflicts: rpm-build > B

-- 
 ---- WBR, Michael Shigorin <mike@altlinux.ru>
  ------ Linux.Kiev http://www.linux.kiev.ua/


^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [devel] Можно ли отфильтровать зависимости?
  2008-11-20 15:55 ` Damir Shayhutdinov
  2008-11-20 15:56   ` Mikhail Gusarov
@ 2008-11-20 18:39   ` Vitaly Ostanin
  2008-11-20 19:00     ` Alexey I. Froloff
  1 sibling, 1 reply; 15+ messages in thread
From: Vitaly Ostanin @ 2008-11-20 18:39 UTC (permalink / raw)
  To: ALT Linux Team development discussions

[-- Attachment #1: Type: text/plain, Size: 1024 bytes --]

Damir Shayhutdinov пишет:
>>  Всем привет, :)
>>
>>  Дана программа на shell, при сканировании которой во время сборки
>> пакета (shell.req) порождаются N зависимостей. Задача: исключить из
>> полученного набора некоторые зависимости (имеются в виду зависимости, не
>> влияющие на работоспособность программы, например, альтернативные).
>>  Вопрос: можно ли решить эту задачу не внося изменений в программу?
>> Например, запретить определённые зависимости, определив в spec-файле
>> специальную переменную и т.п.?
> Насколько мне известно, можно обмануть генератор зависимостей, заменив код
> 
> if [ -x /path/to/program ]; then
>     /path/to/program args
> fi
> 
> На
> 
> MYPROGRAM=/path/to/program
> if [ -x "$MYPROGRAM" ]; then
>   "$MYPROGRAM" args
> fi
> 
> Таким образом исключив /path/to/program из зависимостей.

Я ещё помню вариант
[ ! -x /path/to/program ] || /path/to/program args
Он ещё работает?

-- 
Regards, Vyt
mailto:  vyt@altlinux.org
JID:     vitaly.ostanin@gmail.com


[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 252 bytes --]

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [devel] Можно ли отфильтровать зависимости?
  2008-11-20 18:39   ` Vitaly Ostanin
@ 2008-11-20 19:00     ` Alexey I. Froloff
  0 siblings, 0 replies; 15+ messages in thread
From: Alexey I. Froloff @ 2008-11-20 19:00 UTC (permalink / raw)
  To: ALT Devel discussion list

[-- Attachment #1: Type: text/plain, Size: 213 bytes --]

* Vitaly Ostanin <vyt@> [081120 21:55]:
> Я ещё помню вариант
> [ ! -x /path/to/program ] || /path/to/program args
> Он ещё работает?
Нет.  Работает

FOO= /path/to/program args

-- 
Regards,
Sir Raorn.

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 189 bytes --]

^ permalink raw reply	[flat|nested] 15+ messages in thread

end of thread, other threads:[~2008-11-20 19:00 UTC | newest]

Thread overview: 15+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2008-11-20 15:33 [devel] Можно ли отфильтровать зависимости? Pavel Wolneykien
2008-11-20 15:42 ` Slava Dubrovskiy
2008-11-20 15:43   ` Mikhail Gusarov
2008-11-20 15:56     ` Pavel Wolneykien
2008-11-20 16:07       ` Slava Dubrovskiy
2008-11-20 16:24         ` Pavel Wolneykien
2008-11-20 16:30           ` Slava Dubrovskiy
2008-11-20 15:55 ` Damir Shayhutdinov
2008-11-20 15:56   ` Mikhail Gusarov
2008-11-20 18:39   ` Vitaly Ostanin
2008-11-20 19:00     ` Alexey I. Froloff
2008-11-20 16:23   ` Pavel Wolneykien
2008-11-20 16:37     ` Alexey I. Froloff
2008-11-20 17:08       ` Pavel Wolneykien
2008-11-20 17:15         ` Michael Shigorin

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