Message ID | yddbp79de85.fsf@manam.CeBiTec.Uni-Bielefeld.DE |
---|---|
State | New |
Headers | show |
On 10/04/2010 08:06 PM, Rainer Orth wrote:
> Ok for mainline if testing passes?
If HJ can give the patch a try, it's fine with me.
Thanks,
Paolo.
On Mon, Oct 4, 2010 at 11:06 AM, Rainer Orth <ro@cebitec.uni-bielefeld.de> wrote: > Hi Paolo, > >>> The pvs change in scripts/extract_symvers breaks Linux. This patch >>> reverts it. A different patch should be used instead. I am not familiar >>> with Solaris to make a suggestion. OK for trunk? >> >> I would say let's give Rainer a few more hours to actually fix the issue for Solaris too: from Sat evening your local time you are cleared to commit this patch. > > sorry for the mess: I don't have internet access during the weekend, so > I saw the mails only today. > > The one Linux system we has doesn't have the LVM2 pvs, so I wouldn't > have noticed this even with testing there. > > The following patch (against the originally installed extract_symvers) > should fix both issues (wrong pvs and missing quoting). Tested by > manually running against libstdc++.so on Solaris 10/x86 and libc.so on > Linux/x86_64. Regtest on both platforms (without the LVM2 pvs) in > progress. It would be good if someone with access to a Linux > installation with the `wrong' pvs could test the patch, too. > > Ok for mainline if testing passes? > > Rainer > > > 2010-10-04 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> > > PR libstdc++/45863 > * scripts/extract_symvers: Restore revision 164879. > Guard against LVM2 pvs. > Quote ${pvs}. > > diff -r fdb979422f7b libstdc++-v3/scripts/extract_symvers > --- a/libstdc++-v3/scripts/extract_symvers Fri Oct 01 11:58:21 2010 +0000 > +++ b/libstdc++-v3/scripts/extract_symvers Mon Oct 04 19:59:51 2010 +0200 > @@ -31,7 +31,11 @@ > if type pvs 2>&1 | grep 'not found' > /dev/null; then > : > else > - pvs="pvs -dsvo" > + # Linux may have a completely different pvs from LVM2, so make sure > + # we've got the right one. > + if pvs -dsvo ${lib} > /dev/null 2>&1; then > + pvs="pvs -dsvo" > + fi > fi I think it is too fragile. Today, LVM2 pvs doesn't take -s. But it may change in the future. You should verify it is on Solaris before using Solaris pvs.
diff -r fdb979422f7b libstdc++-v3/scripts/extract_symvers --- a/libstdc++-v3/scripts/extract_symvers Fri Oct 01 11:58:21 2010 +0000 +++ b/libstdc++-v3/scripts/extract_symvers Mon Oct 04 19:59:51 2010 +0200 @@ -31,7 +31,11 @@ if type pvs 2>&1 | grep 'not found' > /dev/null; then : else - pvs="pvs -dsvo" + # Linux may have a completely different pvs from LVM2, so make sure + # we've got the right one. + if pvs -dsvo ${lib} > /dev/null 2>&1; then + pvs="pvs -dsvo" + fi fi # GNU binutils, somewhere after version 2.11.2, requires -W/--wide to avoid @@ -52,7 +56,7 @@ # Prefer pvs if found. Need to use nawk on Solaris 2 since Solaris 8/9 awk # (oawk) cannot handle sub. -if [ -n ${pvs} ]; then +if [ -n "${pvs}" ]; then ${pvs} ${lib} | \ nawk '# Remove colon separator from version field, trailing semicolon. {