Shorter version: -m elf32ppc_fbsd (and elf_i386_fbsd ?) vs. -Wl, -m, elf32ppc_fbsd problems (11.0-CURRENT and 10.1-STABLE)
Warner Losh
imp at bsdimp.com
Fri Apr 10 02:35:49 UTC 2015
> On Apr 9, 2015, at 7:56 PM, Mark Millard <markmi at dsl-only.net> wrote:
>
> From share/mk/bsd.README :
>
> LDFLAGS Additional loader flags. Passed to the loader via CC,
> since that's used to link programs as well, so loader
> specific flags need to be prefixed with -Wl, to work.
>
> But the following 3 powerpc (non-64) examples do not use the -Wl, notation:
>
>> LDFLAGS+= -m elf32ppc_fbsd
>> /usr/src/sys/boot/ofw/Makefile.inc
>
>
>> LDFLAGS+= -m elf32ppc_fbsd
>> /usr/src/sys/boot/uboot/Makefile.inc
>
>
>> LDFLAGS+= -m elf32ppc_fbsd
>> /usr/src/sys/boot/powerpc/Makefile.inc
>
> In fact I get errors such as (for that last one when using powerpc64-gcc via powerpc64-xtoolchain-gcc, executed on a powerpc64):
>
>> powerpc64-portbld-freebsd11.0-gcc: error: elf32ppc_fbsd: No such file or directory
>> powerpc64-portbld-freebsd11.0-gcc: error: elf32ppc_fbsd: No such file or directory
>> powerpc64-portbld-freebsd11.0-gcc: error: unrecognized command line option '-m'
>> powerpc64-portbld-freebsd11.0-gcc: error: unrecognized command line option '-m'
>>
>> *** [boot1.elf] Error code 1
>>
>> make[6]: stopped in /usr/srcC/sys/boot/powerpc/boot1.chrp
>> 1 error
>
> I do not know if the space between -m and elf... creates a problem for -Wl, use or not. I would guess that
>
> -Wl,-m,elf32pcc_fbsd
>
> is the proper notation for putting the space through to the ld variant used. But I’m not to the point of testing the behavior of that yet.
>
>
>
> i386 seems to have a similar example, although I’m not using such a FreeBSD environment.
>
>> LD_FLAGS+= -m elf_i386_fbsd
>> /usr/src/sys/boot/i386/Makefile.inc
>
>
>
> (This note is shorter in part because figured out more context than I had last time.)
I think much of this is historical accident where the boot Makefiles used to call ld directly, then were converted to call gcc, and gcc allowed the -m notation like this as a historical compatibility.
Do thinks still work if you use -Wl, notation?
Warner
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 842 bytes
Desc: Message signed with OpenPGP using GPGMail
URL: <http://lists.freebsd.org/pipermail/freebsd-toolchain/attachments/20150409/7a38c938/attachment.sig>
More information about the freebsd-toolchain
mailing list