From: Alexey Tourbin <at@altlinux.ru>
To: ALT Devel discussion list <devel@lists.altlinux.org>
Subject: Re: [devel] I: nant-0.86-alt2.cvs.20071228
Date: Mon, 14 Jan 2008 21:17:55 +0300
Message-ID: <20080114181755.GA7389@solemn.turbinal> (raw)
In-Reply-To: <20080114112749.GA31363@solemn.turbinal>
[-- Attachment #1: Type: text/plain, Size: 2387 bytes --]
On Mon, Jan 14, 2008 at 02:27:50PM +0300, Alexey Tourbin wrote:
> On Sat, Jan 12, 2008 at 05:46:41AM +0300, Dmitry V. Levin wrote:
> > On Sat, Jan 12, 2008 at 05:43:07AM +0300, QA Team Robot wrote:
> > > 2 NEW unmet dependencies detected:
> > > nant#0.86-alt2.cvs.20071228 libc.so.6
> >
> > mono-пакеты не должны быть noarch?
>
> mono-пакеты не должны быть noarch, если в них используется dllimport
> (рантайм-требование на сонеймы). Это скорее искусственное ограничение,
> но не существует способа выразить зависимость на сонейм переносимым
> между архитектурами способом.
Добавил проверку в monolib.req, теперь nant не собирается с такой
диагностикой:
find-requires: running scripts (files,lib,mono,monolib,pam,perl,pkgconfig,pkgconfiglib,python,shebang,shell,static,symlinks)
monolib.req: /usr/src/tmp/nant-buildroot/usr/lib/NAnt/NAnt.Core.dll: cannot resolve module reference kernel32.dll
monolib.req: /usr/src/tmp/nant-buildroot/usr/lib/NAnt/NAnt.Core.dll: noarch package has soname dependency libc.so.6
error: /bin/sh failed
commit af58696ad8ff7f2976fe4a990749c07469cf5120
Author: Alexey Tourbin <at@altlinux>
Date: Mon Jan 14 20:32:18 2008 +0300
monolib.req: added check to prevent soname dependencies in noarch packages
diff --git a/mono.req b/mono.req
index 94d39c6..c89dad4 100755
--- a/mono.req
+++ b/mono.req
@@ -79,14 +79,19 @@ MonoLibReq()
local ref
for ref in $refs; do
- local target="$(fgrep "dll=\"$ref\"" "$f".config "$(MonoConfigFile)" 2>/dev/null |
+ local soname="$(fgrep "dll=\"$ref\"" "$f".config "$(MonoConfigFile)" 2>/dev/null |
sed -n 's/.*target="\(lib[^"]*[.]so[.][^"]*\|lib[^"]*[0-9][.]so\)".*/\1/p' |head -1)"
- if [ -n "$target" ]; then
- Verbose "$f: $ref -> $target"
- echo "$target$suffix"
+ if [ -n "$soname" ]; then
+ Verbose "$f: $ref -> $soname"
+ [ "${RPM_TARGET_ARCH-}" != noarch ] &&
+ echo "$soname$suffix" ||
+ Fatal "$f: noarch package has soname dependency $soname"
elif [ -z "${ref##lib*.so.*}" -o -z "${ref##lib*[0-9].so}" ]; then
- Verbose "$f: $ref = $ref"
- echo "$ref$suffix"
+ soname=$ref
+ Verbose "$f: $ref = $soname"
+ [ "${RPM_TARGET_ARCH-}" != noarch ] &&
+ echo "$soname$suffix" ||
+ Fatal "$f: noarch package has soname dependency $soname"
else
Info "$f: cannot resolve module reference $ref"
fi
[-- Attachment #2: Type: application/pgp-signature, Size: 197 bytes --]
next prev parent reply other threads:[~2008-01-14 18:17 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-01-12 2:46 ` Dmitry V. Levin
2008-01-12 12:11 ` Stanislav Ievlev
2008-01-12 13:38 ` Alexey Shabalin
2008-01-12 16:05 ` Dmitry V. Levin
2008-01-14 6:05 ` Ildar Mulyukov
2008-01-14 9:28 ` Dmitry V. Levin
2008-01-14 11:27 ` Alexey Tourbin
2008-01-14 11:50 ` Ildar Mulyukov
2008-01-14 13:01 ` Alexey Tourbin
2008-01-15 4:04 ` Ildar Mulyukov
2008-01-14 18:17 ` Alexey Tourbin [this message]
2008-01-15 7:48 ` Vladimir V. Kamarzin
2008-01-15 8:05 ` Alexey Shabalin
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20080114181755.GA7389@solemn.turbinal \
--to=at@altlinux.ru \
--cc=devel@lists.altlinux.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
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