qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] [PATCH 12/27] libcacard: rewrite Makefile in non-recursive


From: Paolo Bonzini
Subject: [Qemu-devel] [PATCH 12/27] libcacard: rewrite Makefile in non-recursive style
Date: Fri, 21 Dec 2012 17:05:33 +0100

Signed-off-by: Paolo Bonzini <address@hidden>
---
 Makefile           |   35 +++++++++--------------------------
 configure          |    9 +--------
 libcacard/Makefile |   33 +++++++++------------------------
 3 files changed, 19 insertions(+), 58 deletions(-)

diff --git a/Makefile b/Makefile
index 68e3a83..92f62e3 100644
--- a/Makefile
+++ b/Makefile
@@ -101,6 +101,14 @@ defconfig:
 -include config-all-devices.mak
 -include config-all-disas.mak
 
+ifneq ($(wildcard config-host.mak),)
+include $(SRC_PATH)/Makefile.objs
+include $(SRC_PATH)/tests/Makefile
+endif
+ifeq ($(CONFIG_SMARTCARD_NSS),y)
+include $(SRC_PATH)/libcacard/Makefile
+endif
+
 all: $(DOCS) $(TOOLS) $(HELPERS-y) recurse-all
 
 config-host.h: config-host.h-timestamp
@@ -113,12 +121,6 @@ SUBDIR_RULES=$(patsubst %,subdir-%, $(TARGET_DIRS))
 subdir-%:
        $(call quiet-command,$(MAKE) $(SUBDIR_MAKEFLAGS) -C $* V="$(V)" 
TARGET_DIR="$*/" all,)
 
-ifneq ($(wildcard config-host.mak),)
-include $(SRC_PATH)/Makefile.objs
-endif
-
-subdir-libcacard: $(oslib-obj-y) $(trace-obj-y) qemu-timer-common.o
-
 subdir-pixman: pixman/Makefile
        $(call quiet-command,$(MAKE) $(SUBDIR_MAKEFLAGS) -C pixman V="$(V)" 
all,)
 
@@ -155,18 +157,6 @@ version-obj-$(CONFIG_WIN32) += version.o
 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
-
-######################################################################
 
 qemu-img.o: qemu-img-cmds.h
 
@@ -180,10 +170,6 @@ qemu-io$(EXESUF): qemu-io.o cmd.o $(tools-obj-y) 
$(block-obj-y) libqemustub.a
 
 qemu-bridge-helper$(EXESUF): qemu-bridge-helper.o
 
-vscclient$(EXESUF): LIBS += $(libcacard_libs)
-vscclient$(EXESUF): $(libcacard-y) $(oslib-obj-y) $(trace-obj-y) 
libcacard/vscclient.o libqemustub.a
-       $(call LINK, $^)
-
 fsdev/virtfs-proxy-helper$(EXESUF): fsdev/virtfs-proxy-helper.o 
fsdev/virtio-9p-marshal.o oslib-posix.o $(trace-obj-y)
 fsdev/virtfs-proxy-helper$(EXESUF): LIBS += -lcap
 
@@ -195,10 +181,6 @@ qemu-ga$(EXESUF): QEMU_CFLAGS += -I qga/qapi-generated
 
 gen-out-type = $(subst .,-,$(suffix $@))
 
-ifneq ($(wildcard config-host.mak),)
-include $(SRC_PATH)/tests/Makefile
-endif
-
 qapi-py = $(SRC_PATH)/scripts/qapi.py $(SRC_PATH)/scripts/ordereddict.py
 
 qga/qapi-generated/qga-qapi-types.c qga/qapi-generated/qga-qapi-types.h :\
@@ -233,6 +215,7 @@ clean:
        rm -f qemu-options.def
        find . -name '*.[od]' -exec rm -f {} +
        rm -f *.a *.lo $(TOOLS) $(HELPERS-y) qemu-ga TAGS cscope.* *.pod *~ */*~
+       rm -f *.la
        rm -Rf .libs
        rm -f qemu-img-cmds.h
        rm -f trace-dtrace.dtrace trace-dtrace.dtrace-timestamp
diff --git a/configure b/configure
index e3533e2..f521920 100755
--- a/configure
+++ b/configure
@@ -3130,9 +3130,6 @@ if test "$softmmu" = yes ; then
       tools="qemu-ga\$(EXESUF) $tools"
     fi
   fi
-  if test "$smartcard_nss" = "yes" ; then
-    tools="vscclient\$(EXESUF) $tools"
-  fi
 fi
 
 # Mac OS X ships with a broken assembler
@@ -3963,9 +3960,6 @@ fi
 if test "$target_softmmu" = "yes" ; then
   echo "CONFIG_SOFTMMU=y" >> $config_target_mak
   echo "LIBS+=$libs_softmmu $target_libs_softmmu" >> $config_target_mak
-  if test "$smartcard_nss" = "yes" ; then
-    echo "subdir-$target: subdir-libcacard" >> $config_host_mak
-  fi
   case "$target_arch2" in
     i386|x86_64)
       echo "CONFIG_HAVE_CORE_DUMP=y" >> $config_target_mak
@@ -4166,10 +4160,9 @@ DIRS="tests tests/tcg tests/tcg/cris tests/tcg/lm32"
 DIRS="$DIRS pc-bios/optionrom pc-bios/spapr-rtas"
 DIRS="$DIRS roms/seabios roms/vgabios"
 DIRS="$DIRS qapi-generated"
-DIRS="$DIRS libcacard libcacard/libcacard libcacard/trace"
 FILES="Makefile tests/tcg/Makefile qdict-test-data.txt"
 FILES="$FILES tests/tcg/cris/Makefile tests/tcg/cris/.gdbinit"
-FILES="$FILES tests/tcg/lm32/Makefile libcacard/Makefile"
+FILES="$FILES tests/tcg/lm32/Makefile"
 FILES="$FILES pc-bios/optionrom/Makefile pc-bios/keymaps"
 FILES="$FILES pc-bios/spapr-rtas/Makefile"
 FILES="$FILES roms/seabios/Makefile roms/vgabios/Makefile"
diff --git a/libcacard/Makefile b/libcacard/Makefile
index 73fc817..34ef3b4 100644
--- a/libcacard/Makefile
+++ b/libcacard/Makefile
@@ -1,10 +1,6 @@
--include ../config-host.mak
--include $(SRC_PATH)/rules.mak
--include $(SRC_PATH)/Makefile.objs
-
 libcacard_includedir=$(includedir)/cacard
 
-$(call set-vpath, $(SRC_PATH))
+TOOLS += vscclient$(EXESUF)
 
 # objects linked into a shared library, built with libtool with -fPIC if 
required
 libcacard-obj-y=$(oslib-obj-y) error.o $(trace-obj-y) $(stub-obj-y) 
$(libcacard-y)
@@ -13,20 +9,12 @@ libcacard-lobj-y=$(patsubst %.o,%.lo,$(libcacard-obj-y))
 # libtool will build the .o files, too
 $(libcacard-obj-y): | $(libcacard-lobj-y)
 
-QEMU_CFLAGS+=-I../
+all: libcacard.la libcacard.pc
 
-vscclient: LIBS += $(libcacard_libs)
-vscclient: vscclient.o $(libcacard-obj-y)
+vscclient$(EXESUF): LIBS += $(libcacard_libs)
+vscclient$(EXESUF): libcacard/vscclient.o $(libcacard-obj-y)
        $(call LINK,$^)
 
-clean:
-       rm -f *.o */*.o *.d */*.d *.a */*.a *~ */*~ vscclient *.lo */*.lo 
.libs/* */.libs/* *.la */*.la *.pc
-       rm -Rf .libs */.libs
-
-all: libcacard.la libcacard.pc
-# Dummy command so that make thinks it has done something
-       @true
-
 #########################################################################
 # Rules for building libcacard standalone library
 
@@ -36,25 +24,22 @@ libcacard.la: LIBS += $(libcacard_libs)
 libcacard.la: $(libcacard-lobj-y)
        $(call LINK,$^)
 
-libcacard_srcpath=$(SRC_PATH)/libcacard
-libcacard.pc: $(libcacard_srcpath)/libcacard.pc.in
+libcacard.pc: $(SRC_PATH)/libcacard/libcacard.pc.in
        $(call quiet-command,sed -e 's|@LIBDIR@|$(libdir)|' \
                -e 's|@INCLUDEDIR@|$(libcacard_includedir)|' \
            -e 's|@VERSION@|$(shell cat $(SRC_PATH)/VERSION)|' \
-               -e 's|@PREFIX@|$(prefix)|' \
-               < $(libcacard_srcpath)/libcacard.pc.in > libcacard.pc,\
+               -e 's|@PREFIX@|$(prefix)|' $< > libcacard.pc,\
        "  GEN   $@")
 
 .PHONY: install-libcacard
 
-install-libcacard: libcacard.pc libcacard.la vscclient
+install: install-libcacard
+install-libcacard: libcacard.pc libcacard.la
        $(INSTALL_DIR) "$(DESTDIR)$(libdir)"
        $(INSTALL_DIR) "$(DESTDIR)$(libdir)/pkgconfig"
        $(INSTALL_DIR) "$(DESTDIR)$(libcacard_includedir)"
-       $(INSTALL_DIR) "$(DESTDIR)$(bindir)"
-       $(INSTALL_PROG) vscclient "$(DESTDIR)$(bindir)"
        $(INSTALL_LIB) libcacard.la "$(DESTDIR)$(libdir)"
        $(INSTALL_DATA) libcacard.pc "$(DESTDIR)$(libdir)/pkgconfig"
        for inc in *.h; do \
-               $(INSTALL_DATA) $(libcacard_srcpath)/$$inc 
"$(DESTDIR)$(libcacard_includedir)"; \
+               $(INSTALL_DATA) $(SRC_PATH)/libcacard/$$inc 
"$(DESTDIR)$(libcacard_includedir)"; \
        done
-- 
1.7.1





reply via email to

[Prev in Thread] Current Thread [Next in Thread]