[Flac-dev] 1.0 candidate checked in

Matt Zimmerman mdz at debian.org
Sat Jul 21 14:16:30 PDT 2001


On Sat, Jul 21, 2001 at 04:06:14PM -0400, Matt Zimmerman wrote:

> Argh.  Maybe libtool will have to get involved after all.  I'll work on it
> this afternoon.

I think I give up.  automake and libtool assume that the compiler will be able
to assemble stuff, and compilers don't generally understand NASM input.  I
don't like the strip_fPIC bit, since just about anything that could go in
CFLAGS might be passed by libtool, and nasm doesn't understand compiler flags.

However, I can't come up with anything better at the moment, and this seems to
work for SDL, so I guess we go back to src/libFLAC/ia32/Makefile.am version 1.5
(plus my automake patch).  The libtool command line needs to be modified to
use "-o $@", otherwise libtool gives the error:

/bin/sh ../../../libtool --mode=compile \
        sh ../../../strip_fPIC.sh nasm -f elf -d OBJ_FORMAT_elf cpu_asm.nasm
libtool: compile: cannot determine name of library object from `cpu_asm.nasm'
make: *** [cpu_asm.lo] Error 1

Changing the rule to:

	$(LIBTOOL) --mode=compile \
		$(STRIP_FPIC) $(NASM) -f $(OBJ_FORMAT) -d OBJ_FORMAT_$(OBJ_FORMAT) -o $@ $<

fixes that, but we still have the issue of --tag with libtool > 1.4.  The
way I see it, we have two options:

1. Ship with libtool 1.4b.  This is pre-release software, and I don't know what
   issues might be associated with it.

2. Ship with libtool 1.4.  Users who want to use a later version on i386 will
   have to make a small patch to the ia32 makefile.

The good news is, libtool 1.4b seems to support enable/disable of shared
library building at runtime, so we won't need that awful libtool-disable-static
bit anymore.  We can just use --tag=disable-shared once we ship that version.
Also, I think it should be possible to create a tagged configuration for NASM
so we don't have to worry about the -fPIC issue.

I like what I see in libtool 1.4b, but I don't know if its widespread use is
recommended yet.  Ideas?

-- 
 - mdz





More information about the Flac-dev mailing list