Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20120717174528.GQ544@brightrain.aerifal.cx>
Date: Tue, 17 Jul 2012 13:45:28 -0400
From: Rich Felker <dalias@...ifal.cx>
To: musl@...ts.openwall.com
Subject: Re: customizable -lgcc in makefile

On Tue, Jul 17, 2012 at 06:37:28PM +0200, Szabolcs Nagy wrote:
> the following modification allows config.mak
> to override the -lgcc linker flag
> 
> this is needed when compiling musl with pcc
> (then LIBCC=-Lpath/to/libpcc -lpcc)
> 
> i wonder what clang needs there and if there is
> any libgcc specific code in musl

musl itself does not contain any references to libgcc/libpcc/etc. The
references are generated by the compiler when it's too lazy to
actually generate the code it needs for things like 64-bit division
and instead just generates a function call to library code.

> diff --git a/Makefile b/Makefile
> index 0c13417..ad701c9 100644
> --- a/Makefile
> +++ b/Makefile
> @@ -23,6 +23,7 @@ GENH = include/bits/alltypes.h
>  IMPH = src/internal/stdio_impl.h src/internal/pthread_impl.h src/internal/libc.h
> 
>  LDFLAGS =
> +LIBCC = -lgcc
>  CPPFLAGS =
>  CFLAGS = -Os -pipe
>  CFLAGS_C99FSE = -std=c99 -ffreestanding -nostdinc
> @@ -91,7 +92,7 @@ include/bits/alltypes.h: include/bits/alltypes.h.sh
>  lib/libc.so: $(LOBJS)
>         $(CC) $(CFLAGS_ALL_SHARED) $(LDFLAGS) -nostdlib -shared \
>         -Wl,-e,_start -Wl,-Bsymbolic-functions \
> -       -Wl,-soname=libc.so -o $@ $(LOBJS) -lgcc
> +       -Wl,-soname=libc.so -o $@ $(LOBJS) $(LIBCC)

Looks clean. I'll probably apply this soon unless any improvements are
suggested.

Rich

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.