[gnome-cyr] Re: [gnome-cyr] Re: [gnome-cyr] Патч к esound на подключение к arts аудиосерверу



On Mon, 13 May 2002, Timur I. Bakeyev wrote:

> On Mon, May 13, 2002 at 05:25:59PM +0300, Andrew W. Nosenko wrote:
> > Vlad Harchev wrote:
> > : On 13 May 2002, Sergey V. Udaltsov wrote:
> > : 
> > : > > dlopen ("libartsc.so.0", RTLD_LAZY);
> > : > >  лучше
> > : > > dlopen ("libartsc.so", RTLD_LAZY); 
> > : > >  - так не будет завязки на конкретную версию 'libartsc'. 
> > : > Может, это и хорошо? Кто сказал, что в будущих версиях будут жить те же
> > : 
> > :  Вера в здравый смысл разработчиков arts. Обычно С-апи, тем более такой
> > : достаточно простенький, is backward compatible..
> > 
> > А как насчет веры в здравый смысл админа, который делает 
> >     rm some-library.so
> > чтобы configure не находил эту самую some-library, но оставляет
> > some-library.so.* для обратной совместимости, чтобы вриложения с ней
> > слинкованные все-таки могли работать (нет времени перекомпилировать все
> > подряд)?
> > 
> > Одним словом `dlopen ("libartsc.so.0", RTLD_LAZY);' дает больше
> > возможности для маневра, и посему, по крайней мере для меня приемлимее.
> 
> Не стоит забывать, что помимо Linux существуют и другие OS, и система
> нумерации версий библиотек в них может отличаться. Тот же BSD, например.
> 
> Если хочется эстетства, то стоит проверять оба файла на существование и
> наличие соответствующего API.

 Да, это хорошая идея. Правда одно из имен может иметь формат, специфичный от
ОС, так получается?

> А вообще, мы с Игорем это уже обсуждали - мне кажется, что правильнее было
> бы выделить поддержку aRts в отдельный модуль, а не пихать во все драйвера -
> кстати, их отнюдь не 3, а штук 8 где-то...

 Модуль (.c файл) или драйвер? Тип драйвера esd выбирается через configure,
соотвественно в системе как правило используется только одна дин. библиотека
libesound включающая только один драйвер. Вынос поддержки arts в отдельный
*драйвер* приведет к тому, что он практически никем не будет собираться
вообще.

 Вынос поддержки  arts в отдельный модуль - несколько стремновато, ибо
поддержка arts в каждом драйвере занимает в среднем около 4 строк на каждую
ф-ию.

 Best regards,
  -Vlad




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]