Do not fail at build time, instead just disable the library if libtool is not present.
Signed-off-by: Paolo Bonzini <pbonz...@redhat.com> --- Makefile | 2 ++ configure | 3 ++- libcacard/Makefile | 8 -------- rules.mak | 6 +----- 4 files changed, 5 insertions(+), 14 deletions(-) diff --git a/Makefile b/Makefile index 52759c1..68e3a83 100644 --- a/Makefile +++ b/Makefile @@ -157,12 +157,14 @@ libqemustub.a: $(stub-obj-y) ###################################################################### # Support building shared library libcacard +ifeq ($(CONFIG_SMARTCARD_NSS),y) .PHONY: libcacard.la install-libcacard libcacard.la: $(oslib-obj-y) qemu-timer-common.o $(trace-obj-y) $(call quiet-command,$(MAKE) $(SUBDIR_MAKEFLAGS) -C libcacard V="$(V)" TARGET_DIR="$*/" libcacard.la,) install-libcacard: libcacard.la $(call quiet-command,$(MAKE) $(SUBDIR_MAKEFLAGS) -C libcacard V="$(V)" TARGET_DIR="$*/" install-libcacard,) +endif ###################################################################### diff --git a/configure b/configure index 2cdcfce..e3533e2 100755 --- a/configure +++ b/configure @@ -2782,7 +2782,8 @@ EOF if test "$werror" = "yes"; then test_cflags="-Werror $test_cflags" fi - if $pkg_config --atleast-version=3.12.8 nss >/dev/null 2>&1 && \ + if test -n "$libtool" && + $pkg_config --atleast-version=3.12.8 nss >/dev/null 2>&1 && \ compile_prog "$test_cflags" "$libcacard_libs"; then smartcard_nss="yes" QEMU_CFLAGS="$QEMU_CFLAGS $libcacard_cflags" diff --git a/libcacard/Makefile b/libcacard/Makefile index 08a47e0..a526eae 100644 --- a/libcacard/Makefile +++ b/libcacard/Makefile @@ -31,13 +31,6 @@ all: libcacard.la libcacard.pc ######################################################################### # Rules for building libcacard standalone library -ifeq ($(LIBTOOL),) -libcacard.la: - @echo "libtool is missing, please install and rerun configure"; exit 1 - -install-libcacard: - @echo "libtool is missing, please install and rerun configure"; exit 1 -else libcacard.la: $(libcacard.lib-y) $(QEMU_OBJS_LIB) $(call quiet-command,$(LIBTOOL) --mode=link --tag=CC $(CC) -rpath $(libdir) -o $@ $^ $(libcacard_libs)," lt LINK $@") @@ -63,4 +56,3 @@ install-libcacard: libcacard.pc libcacard.la vscclient for inc in *.h; do \ $(INSTALL_DATA) $(libcacard_srcpath)/$$inc "$(DESTDIR)$(libcacard_includedir)"; \ done -endif diff --git a/rules.mak b/rules.mak index 494fff8..c6a455d 100644 --- a/rules.mak +++ b/rules.mak @@ -21,11 +21,7 @@ QEMU_CFLAGS += -I$(<D) -I$(@D) $(call quiet-command,$(CC) $(QEMU_INCLUDES) $(QEMU_CFLAGS) $(QEMU_DGFLAGS) $(CFLAGS) -c -o $@ $<," CC $(TARGET_DIR)$@") ifeq ($(LIBTOOL),) -%.lo: %.c - @echo "missing libtool. please install and rerun configure"; exit 1 -%.lo: %.dtrace - @echo "missing libtool. please install and rerun configure."; exit 1 - +LIBTOOL = /bin/false LINK = $(call quiet-command,$(CC) $(QEMU_CFLAGS) $(CFLAGS) $(LDFLAGS) -o $@ \ $(sort $(filter %.o, $1)) $(filter-out %.o, $1) \ $(LIBS)," LINK $(TARGET_DIR)$@") -- 1.7.1