makefile: fix compilation and installation This was originally taken from: https://sources.debian.org/data/main/liba/libavl/0.3.5-4/debian/patches/fix-makefile Unfortunately, the URL does not end in ".patch", therefore we cannot use it in the FOO_PATCH variable directly. Signed-off-by: Michael Walle --- a/GNUmakefile +++ b/GNUmakefile @@ -6,7 +6,8 @@ LDCONFIG ?= /sbin/ldconfig # Some suggestions: (-mcpu= generates i386 compatible code) -CFLAGS ?= -O2 -fomit-frame-pointer -pipe -mcpu=i686 -w +CFLAGS ?= -O2 -pipe -Wall -Werror +CFLAGS += -fPIC #CFLAGS = -O2 -fomit-frame-pointer -pipe -march=i586 -Wall -g #CFLAGS = -O6 -fomit-frame-pointer -pipe -march=i586 -Wall -ansi -pedantic #CFLAGS = -O6 -fomit-frame-pointer -pipe -march=i686 -Wall -ansi -pedantic @@ -34,20 +35,21 @@ $(CC) $(LDFLAGS) $^ -o $@ $(LIBS) $(LIBRARY): avl.o - $(CC) -nostdlib -shared -Wl,-soname,libavl.so.1 $^ -o $@ -lc + $(CC) $(LDFLAGS) -shared -Wl,-soname,libavl.so.1 $^ -o $@ -lc clean: $(RM) *.o $(PROGRAMS) libavl.* install: all $(INSTALL) -d $(DESTDIR)$(libdir) - $(INSTALL) avl.h $(DESTDIR)$(includedir) - $(INSTALL) $(LIBRARIES) $(DESTDIR)$(libdir) - for i in $(LIBRARIES); do\ + $(INSTALL) -d $(DESTDIR)$(includedir) + $(INSTALL) -m 644 avl.h $(DESTDIR)$(includedir) + $(INSTALL) -m 644 $(LIBRARY) $(DESTDIR)$(libdir) + for i in $(LIBRARY); do\ $(LN) -sf $$i $(DESTDIR)$(libdir)/$${i%.*};\ $(LN) -sf $${i%.*} $(DESTDIR)$(libdir)/$${i%.*.*};\ done - -$(LDCONFIG) + #-$(LDCONFIG) .PHONY: clean install all .PRECIOUS: %.h %.c