From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Date: Fri, 25 Mar 2011 13:25:13 +0300 From: Alexey Tourbin To: ALT Devel discussion list Message-ID: <20110325102513.GK18194@altlinux.org> References: <20110324205224.GF18194@altlinux.org> <20110325095111.GA1604@altlinux.org> Mime-Version: 1.0 Content-Type: text/plain; charset=koi8-r Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <20110325095111.GA1604@altlinux.org> Subject: Re: [devel] lost soname dependencies prevention X-BeenThere: devel@lists.altlinux.org X-Mailman-Version: 2.1.12 Precedence: list Reply-To: ALT Linux Team development discussions List-Id: ALT Linux Team development discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 25 Mar 2011 10:25:13 -0000 Archived-At: List-Archive: List-Post: On Fri, Mar 25, 2011 at 12:51:11PM +0300, Dmitry V. Levin wrote: > On Thu, Mar 24, 2011 at 11:52:24PM +0300, Alexey Tourbin wrote: > > После исправления зависимостей у *-devel пакетов некоторые пакеты стали > > собираться в урезнной конфигурации. Большая часть таких пакетов может > > быть идентифицирована по результатам тестовой пересборки, после которой > > выполняется сравнение свежепересобранных пакетов с пакетами в репозитории. > > К письму приложен скрипт, который по логу сборки показывает "убывшие" > > имена библиотек - т.е. зависимости, которые присутствуют в репозитории, > > но отсутствуют после тестовой пересборки. Это не очень совершенный метод > > идентификации потерянных зависимостей, и это лучшее, что у нас сейчас есть. > > Тем не менее, большую часть урезанных пакетов таким образом определить удаётся. > > Поскольку не все devel-пакеты (пере)собраны, процесс оптимизации > зависимостей devel-пакетов ещё далек от завершения. По мере этой > оптимизации неизбежно будут обнаруживаться пакеты, тестовая пересборка > которых будет выявлять урезание поддерживаемой конфигурации. Большая часть системно-значимых библиотек уже проверена/исправлена. Массового урезания зависимостей больше не будет (правда, ситуация с Qt ещё не до конца понятна). Вот мой внутренний статус проверки библиотек. Минусом в первой колонке отмечены библиотеки, которые я проверил и которые годятся для того, чтобы с ними "начисто" что-то собирать. (Плюсом во второй колонке отмечен статус поддержки debuginfo по состоянию на 2011-03-15.) Несколько замечаний по проверке: - возможно, от glib2-devel стоит отпилит gtester, чтобы glib2-devel не вытягивал "толстый" питон - в питоне через py_curses.h появлятся зависимость на libncurses-devel; возможно, её стоит отключить - в fontconfig-devel, возможно, нужна зависимость на libfreetype-devel, т.к. fontconfig/fcfreetype.h включает ft2build.h; но ft2build.h лежит в нестандартном месте, и cpp.req обламывается; так что зависимость стоит вводить на уровне pkgconfig Вчера я начал исправлять пакеты, которые лишились зависимости на libz.so.1, но исправил только w3m, а ещё несколько просмотренных пакетов по разным причинам не захотел пересобирать - решил, что возвращение зависимости на zlib не может быть самостоятельной целью, т.к. в пакетах ещё много проблем, часть которых находится в компетенции мейнтейнера (очень старая версия по сравнению с текущей апстримовской и т.п.). Не знаю, стот ли афишировать и драматизировать увиденные мною ужасы.-) Я думаю, что модификация girar-builder ради нескольких десятков бесхозных пакетов - это бесполезный ход. Конечно, более важные среди этих пакетов надо в ближайшее время проверить и исправить вручную, чтобы не лишиться чего-то более важного. Далее вечером. --- libcheck/deps- 2011-03-15 04:16:31 +++ libcheck/deps 2011-03-25 01:15:21 @@ -1,149 +1,41 @@ + 33 libQtScript.so.4 + 33 libavutil.so.50 - 33 libfuse.so.2 - 33 libspeex.so.1 + 34 liblcms.so.1 34 libruby.so.1.9 + 35 libgdkmm-2.4.so.1 + 35 libnspr4.so + 35 libwrap.so.0 -+ 36 libltdl.so.7 - 36 libmad.so.0 + 36 libphonon.so.4 + 37 libusb-0.1.so.4 -+ 38 libXi.so.6 -+ 38 libXss.so.1 + 38 libbonobo-2.so.0 + 38 libglib-1.2.so.0 + 39 libQt3Support.so.4 + 39 libQtOpenGL.so.4 -+ 39 libgnutls.so.26 - 39 libpulse.so.0 -+ 40 libXfixes.so.3 40 libatkmm-1.6.so.1 -+ 40 libpangoft2-1.0.so.0 + 41 libQtSql.so.4 + 41 libavformat.so.52 + 41 libgtkmm-2.4.so.1 + 41 libkparts.so.4 -+ 41 libncursesw.so.5 + 41 libwx_gtk2u_core-2.8.so.0 -+ 42 libXxf86vm.so.1 -+ 42 libvorbisenc.so.2 + 42 libwx_baseu-2.8.so.0 -+ 43 libFLAC.so.8 + 43 liblapack.so.3 -+ 43 liblber-2.4.so.2 - 44 libjack.so.0 + 45 libQtSvg.so.4 -+ 45 libgtk-1.2.so.0 -+ 45 libsoup-2.4.so.1 -+ 45 libuuid.so.1 -+ 46 libSDL_ttf-2.0.so.0 + 46 libavcodec.so.52 -+ 46 librsvg-2.so.2 + 47 libblas.so.3 -+ 48 libdb-4.7.so -+ 48 libxslt.so.1 -+ 49 libXinerama.so.1 + 50 libQtWebKit.so.4 -+ 50 libpopt.so.0 -+ 51 libgcrypt.so.11 -+ 51 libtcl8.5.so + 52 libDCOP.so.4 -+ 53 libxfce4util.so.4 + 54 liblua-5.1.so.0 -+ 54 libphp-5.3.5.so.0 -+ 54 libsndfile.so.1 -+ 55 libXaw.so.7 -+ 55 libXft.so.2 -+ 55 libXrandr.so.2 -+ 55 libglibmm-2.4.so.1 + 55 libgnomeui-2.so.0 + 56 libgnome-2.so.0 -+ 57 libgmp.so.3 -+ 58 ld-linux-x86-64.so.2 -+ 60 libXtst.so.6 -+ 61 libsigc-2.0.so.0 -+ 62 libldap-2.4.so.2 -+ 62 libpcap.so.0.8 -+ 62 libresolv.so.2 -+ 63 libnotify.so.1 -+ 65 libgfortran.so.3 -+ 67 libpq.so.5 -+ 69 libmysqlclient.so.16 -+ 69 libvorbis.so.0 -+ 70 libICE.so.6 -+ 70 libgstreamer-0.10.so.0 -+ 71 libSM.so.6 -+ 71 libpcre.so.3 -+ 72 libXrender.so.1 -+ 73 libogg.so.0 -+ 75 libXmu.so.6 + 75 libkio.so.4 + 76 libkio.so.5 -+ 81 libutil.so.1 -+ 81 libvorbisfile.so.3 + 85 libkdeui.so.5 + 88 libkdecore.so.5 -+ 89 libglade-2.0.so.0 + 89 libkdecore.so.4 + 91 libkdeui.so.4 -+ 92 libexpat.so.1 -+ 93 libbz2.so.1 + 94 libQtDBus.so.4 -+ 97 libfontconfig.so.1 -+ 98 libpam.so.0 -+ 101 libXpm.so.4 -+ 101 libsqlite3.so.0 -+ 102 libSDL_image-1.2.so.0 -+ 102 libtiff.so.4 -+ 108 libcurl.so.4 -+ 111 libcrypt.so.1 -+ 112 libncurses.so.5 -+ 125 libpangocairo-1.0.so.0 + 127 libQtXml.so.4 -+ 127 libXt.so.6 -+ 131 libSDL_mixer-1.2.so.0 + 134 libQtNetwork.so.4 -+ 137 libatk-1.0.so.0 -+ 139 libfreetype.so.6 + 146 libqt-mt.so.3 -+ 148 libdbus-1.so.3 -+ 153 libreadline.so.5 -+ 157 libgconf-2.so.4 -+ 159 libdbus-glib-1.so.2 -+ 160 libGLU.so.1 -+ 164 libasound.so.2 -+ 165 libssl.so.10 -+ 169 libgmodule-2.0.so.0 -+ 182 librt.so.1 -+ 194 libgio-2.0.so.0 -+ 208 libtinfo.so.5 -+ 215 libjpeg.so.62 -+ 235 libXext.so.6 -+ 236 libcrypto.so.10 -+ 246 libpng12.so.0 -+ 259 libGL.so.1 -+ 270 libSDL-1.2.so.0 -+ 270 libgthread-2.0.so.0 -+ 289 libcairo.so.2 -+ 290 libperl-5.12.so + 299 libQtGui.so.4 + 321 libQtCore.so.4 -+ 324 libxml2.so.2 -+ 328 libpython2.6.so.1.0 -+ 372 libpango-1.0.so.0 -+ 526 libgdk_pixbuf-2.0.so.0 -+ 547 libz.so.1 -+ 552 libdl.so.2 -+ 642 libgdk-x11-2.0.so.0 -+ 768 libgtk-x11-2.0.so.0 -+ 879 libX11.so.6 -+ 992 libgobject-2.0.so.0 -+ 1099 libglib-2.0.so.0 -+ 1283 libgcc_s.so.1 -+ 1415 libstdc++.so.6 -+ 1858 libm.so.6 -+ 1958 libpthread.so.0 -+ 5222 libc.so.6 > Я думаю, что теперь нам нужно в первоочередном порядке внедрять в > girar-builder инструмент для предотвращения непреднамеренных потерь > soname-зависимостей.