Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20111104110410.GA29714@albatros>
Date: Fri, 4 Nov 2011 15:04:10 +0400
From: Vasiliy Kulikov <segoon@...nwall.com>
To: owl-dev@...ts.openwall.com
Subject: Re: gcc .a's and .so's

Solar,

On Fri, Nov 04, 2011 at 07:17 +0400, Solar Designer wrote:
> It turns out that your gcc.spec did not package the libgomp.so symlink,
> which resulted in my test OpenMP program builds getting (silently)
> statically-linked against libgomp.a.  This is not how other distros do it.
> 
> I've just added packaging of the .so to the same -devel subpackage that
> had the .a, but I think there are more discrepancies like this.  In some
> cases, they can be missing .so's.  In others, they may be .a's that
> shouldn't be packaged.  Can you please check your gcc.spec vs. Fedora's
> to spot unintentional differences like that?

I did a check via
"rpm -ql gcc" vs
http://rpm.pbone.net/index.php3/stat/6/idpl/17081362/dir/rawhide/com/gcc-4.6.1-10.fc16.x86_64.rpm

Fedora's spec file:
http://pkgs.fedoraproject.org/gitweb/?p=gcc.git;a=blob;f=gcc.spec;h=5801bce771c190642657c38e8703b207f42d7765;hb=de609bb65f661b7da284a4138b7d1a228c64c978

1) Fedora has 2 files in include/, which we don't have:
1457 mv $FULLPATH/include-fixed/syslimits.h $FULLPATH/include/syslimits.h
1458 mv $FULLPATH/include-fixed/limits.h $FULLPATH/include/limits.h
And Fedora doesn't use include-fixed directory - it is removed after the lines above.

But in Owl limits.h is provided by glibc:

    $ rpm -qf /usr/include/limits.h 
    glibc-devel-2.3.6-owl17

2) Fedora somehow has cc1 in cpp, not gcc (not a big deal):
1876 %files -n cpp -f cpplib.lang
...
1885 %{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_version}/cc1

3) Fedora has custom wrappers for c89 and c99, which we don't have.

4) Fedora has lto stuff in /usr/libexec/gcc/i686-openwall-linux/4.6.2 instead of /usr/lib/gcc/i686-openwall-linux/4.6.2/


I don't known whether (3) and (4) are important, (2) is not important
IMHO.  (1) needs an investigation after we upgrade glibc - maybe new glibc
doesn't provide these files?

-- 
Vasiliy

Powered by blists - more mailing lists

Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.