On Fri, Sep 14, 2012 at 11:04 PM, Måns Rullgård <[email protected]> wrote:
> Hendrik Leppkes <[email protected]> writes: > > > This allows building with Microsofts version of ar > > by specifying --ar='c99wrap lib.exe' during configure. > > --- > > configure | 11 +++++++++++ > > library.mak | 2 +- > > 2 files changed, 12 insertions(+), 1 deletion(-) > > > > diff --git a/configure b/configure > > index 7c377aa..876659d 100755 > > --- a/configure > > +++ b/configure > > @@ -1807,6 +1807,7 @@ enable static > > enable swscale_alpha > > > > # build settings > > +ARFLAGS='rc' > > SHFLAGS='-shared -Wl,-soname,$$(@F)' > > AVSERVERLDFLAGS=-Wl,-E > > LIBPREF="lib" > > @@ -1826,6 +1827,7 @@ asflags_filter=echo > > cflags_filter=echo > > ldflags_filter=echo > > > > +AR_O='$@' > > AS_C='-c' > > AS_O='-o $@' > > CC_C='-c' > > @@ -2204,6 +2206,7 @@ probe_cc(){ > > unset _type _ident _cc_c _cc_e _cc_o _flags _cflags > > unset _ld_o _ldflags _ld_lib _ld_path > > unset _depflags _DEPCMD _DEPFLAGS > > + unset _arflags _ar_o > > _flags_filter=echo > > > > if $_cc -v 2>&1 | grep -q '^gcc.*LLVM'; then > > @@ -2334,6 +2337,8 @@ probe_cc(){ > > if [ $pfx = hostcc ]; then > > append _cflags -Dsnprintf=_snprintf > > fi > > + _ar_o='-out $@' > > + _arflags='-nologo' > > fi > > > > eval ${pfx}_type=\$_type > > @@ -2382,6 +2387,10 @@ asflags_filter=$_flags_filter > > add_asflags $_flags $_cflags > > set_ccvars AS > > > > +probe_cc ar "$ar" > > +ARFLAGS=${_arflags-$ARFLAGS} > > +AR_O=${_ar_o-$AR_O} > > This is a bit weird. The probe_cc function is meant to be used with > commands that invoke the compiler driver (gcc etc) in some manner. The > 'ar' command does not fit this category. > I put it there because the probing code does manage quite nicely to identify the tool, and set the vars accordingly. Alternative approach is welcome. > > What is the advantage of using lib.exe instead of ar anyway? > It allows to properly retain the objects debug information, ar doesn't manage that for some reason. I also think its a good idea to be able to build without grabbing any part of gcc or binutils.
_______________________________________________ libav-devel mailing list [email protected] https://lists.libav.org/mailman/listinfo/libav-devel
