[devel] gtk-update-icon-cache filetrigger (+ libtcl deficiency)

Sergey Bolshakov =?iso-8859-1?q?sbolshakov_=CE=C1_altlinux=2Eru?=
Ср Сен 10 01:37:33 MSD 2008


>>>>> "Alexey" == Alexey Tourbin <at-u2l5PoMzF/Uox3rIn2DAYQ на public.gmane.org> writes:
[skipped]
 > * * *

 > Хотя принцип правильной группировки файлов не всегда можно толковать
 > однозначно, на практике он имеет большое значение.  Приведу пример
 > пакета, в котором принцип правильной группировки файлов между пакетами
 > явно нарушен -- это пакет libtcl.  Tcl может использоваться как embedded
 > language, т.е. приложения пишут обёртку для libtcl и дальше Tcl как язык
 > может использоваться внутри приложения.  Такие приложения получают
 > зависимость на libtcl soname.

 > Напишем простейшую программу, которая встраивает libtcl.

[skipped]

 > Библиотека libtcl имеет "непрозрачную" зависимость на init.tcl, этот
 > файл загружается при инициализации библиотеки.  Без init.tcl приложения,
 > слинованные c libtcl, обламываются; а файл init.tcl имеет смысл только
 > в связи с наличием конкретной библиотеки libtcl.  Это достаточное
 > основание для того, чтобы применить принцип правильной группировки
 > файлов между пакетами -- файлы libtcl*so* и init.tcl должны быть
 > запакованы в один и тот же пакет.  На практике возможны два решения:
 > либо перенести init.tcl (и, возможно, ещё некоторые файлы) из пакета tcl
 > в пакет libtcl, либо полностью внести libtcl в tcl (то есть исключить
 > отдельный пакет с библиотекой, если библиотека "сама по себе"
 > не работает).

библиотека "сама по себе" работает, если приложение, в которое
встроена libtcl, потрудится установить в своё окружение переменную
TCL_LIBRARY, указывающую на специфический init.tcl -- например.
Есть и другие способы, желающие да насладятся разбором исходников tcl,
в районе generic/tclInterp.c и unix/tclUnix.Init.c

Кроме того, я был бы признателен, если бы ты избирал для иллюстрации
своих, безусловно, интересных размышлений более подходящие примеры.

[rest skipped]

-- 



Подробная информация о списке рассылки Devel