Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 11 Dec 2008 12:17:43 +0100
From:      =?utf-8?Q?Dag-Erling_Sm=C3=B8rgrav?= <des@des.no>
To:        Warner Losh <imp@FreeBSD.org>
Cc:        svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org
Subject:   Re: svn commit: r185925 - in head/contrib/binutils: bfd gas/config ld/emulparams
Message-ID:  <86oczjklk8.fsf@ds4.des.no>
In-Reply-To: <200812110822.mBB8MKLd059320@svn.freebsd.org> (Warner Losh's message of "Thu, 11 Dec 2008 08:22:20 %2B0000 (UTC)")
References:  <200812110822.mBB8MKLd059320@svn.freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
Warner Losh <imp@FreeBSD.org> writes:
> Author: imp
> Date: Thu Dec 11 08:22:20 2008
> New Revision: 185925
> URL: http://svn.freebsd.org/changeset/base/185925
>
> Log:
>   Push mips support into the tree.

Just to pick a random mips commit -

There is something wrong with the mips toolchain.  The build breaks in
libpam, while building the static version, which includes all modules:

../modules/pam_deny/libpam_deny.a(pam_deny.o)(.text+0x3c): In function `pam=
_sm_open_session':
/src/lib/libpam/modules/pam_deny/pam_deny.c:80: multiple definition of `pam=
_sm_open_session'
../modules/pam_chroot/libpam_chroot.a(pam_chroot.o)(.text+0x14):/src/lib/li=
bpam/modules/pam_chroot/pam_chroot.c:54: first defined here
[lather, rinse, repeat for every service function in every module]

The service functions should be static.  The logic PAM uses to determine
whether it is building static or shared modules is as follows:

#if defined(__GNUC__) && !defined(__PIC__) && !defined(NO_STATIC_MODULES)

The command line used to compile the pam_deny.o that goes into libpam_deny.=
a:

cc -O2 -pipe -EL -msoft-float -G0 -mno-dsp -mabicalls  -I/src/lib/libpam/mo=
dules/pam_deny/../../../../contrib/openpam/include -I/src/lib/libpam/module=
s/pam_deny/../../libpam -g -Wsystem-headers -Werror -Wall -Wno-format-y2k -=
W -Wno-unused-parameter -Wstrict-prototypes -Wmissing-prototypes -Wpointer-=
arith -Wreturn-type -Wcast-qual -Wwrite-strings -Wswitch -Wshadow -Wcast-al=
ign -Wunused-parameter -Wno-uninitialized -Wno-pointer-sign -c /src/lib/lib=
pam/modules/pam_deny/pam_deny.c

The corresponding command line for amd64:

cc -O2 -pipe -march=3Dnocona -I/src/lib/libpam/modules/pam_deny/../../../..=
/contrib/openpam/include -I/src/lib/libpam/modules/pam_deny/../../libpam -g=
 -fstack-protector -Wsystem-headers -Werror -Wall -Wno-format-y2k -W -Wno-u=
nused-parameter -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -W=
return-type -Wcast-qual -Wwrite-strings -Wswitch -Wshadow -Wcast-align -Wun=
used-parameter -Wno-uninitialized -Wno-pointer-sign -c /src/lib/libpam/modu=
les/pam_deny/pam_deny.c

DES
--=20
Dag-Erling Sm=C3=B8rgrav - des@des.no



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?86oczjklk8.fsf>