summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaolo Bonzini <pbonzini@redhat.com>2012-12-20 20:40:35 +0100
committerPaolo Bonzini <pbonzini@redhat.com>2013-01-12 17:19:38 +0100
commitb6fc675b25d32f018870e202eb4b2a6eb509f88b (patch)
tree53702e8cae473a9448bc8115ac2aa1f7550e9ce3
parente832341bde5448a6a1392ea903a553497a13763b (diff)
downloadqemu-b6fc675b25d32f018870e202eb4b2a6eb509f88b.tar.gz
qemu-b6fc675b25d32f018870e202eb4b2a6eb509f88b.tar.bz2
qemu-b6fc675b25d32f018870e202eb4b2a6eb509f88b.zip
libcacard: require libtool to build it
Do not fail at build time, instead just disable the library if libtool is not present. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
-rw-r--r--Makefile2
-rwxr-xr-xconfigure3
-rw-r--r--libcacard/Makefile8
-rw-r--r--rules.mak6
4 files changed, 5 insertions, 14 deletions
diff --git a/Makefile b/Makefile
index 3c960a166f..f035a61ce3 100644
--- a/Makefile
+++ b/Makefile
@@ -160,12 +160,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 35762f5b5d..39358add77 100755
--- a/configure
+++ b/configure
@@ -2824,7 +2824,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 08a47e0207..a526eaeabd 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 5865e9ba93..4297345474 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)$@")