Merge branch 'for-upstream' of git://repo.or.cz/qemu/agraf
[qemu.git] / libcacard / Makefile
1 -include ../config-host.mak
2 -include $(SRC_PATH)/Makefile.objs
3 -include $(SRC_PATH)/rules.mak
4
5 libcacard_srcpath=$(SRC_PATH)/libcacard
6 libcacard_includedir=$(includedir)/cacard
7
8 $(call set-vpath, $(SRC_PATH):$(libcacard_srcpath))
9
10 # objects linked against normal qemu binaries, not compiled with libtool
11 QEMU_OBJS=$(addprefix ../,$(oslib-obj-y) qemu-timer-common.o $(trace-obj-y))
12
13 # objects linked into a shared library, built with libtool with -fPIC if required
14 QEMU_OBJS_LIB=$(addsuffix .lo,$(basename $(QEMU_OBJS)))
15
16 QEMU_CFLAGS+=-I../
17
18 QEMU_CFLAGS+=$(GLIB_CFLAGS)
19
20 libcacard.lib-y=$(addsuffix .lo,$(basename $(libcacard-y)))
21
22 vscclient: $(libcacard-y) $(QEMU_OBJS) vscclient.o
23 $(call quiet-command,$(CC) -o $@ $^ $(libcacard_libs) $(LIBS)," LINK $@")
24
25 clean:
26 rm -f *.o */*.o *.d */*.d *.a */*.a *~ */*~ vscclient *.lo .libs/* *.la *.pc
27 rm -Rf .libs
28
29 all: vscclient
30 # Dummy command so that make thinks it has done something
31 @true
32
33 #########################################################################
34 # Rules for building libcacard standalone library
35
36 ifeq ($(LIBTOOL),)
37 libcacard.la:
38 @echo "libtool is missing, please install and rerun configure"; exit 1
39
40 install-libcacard:
41 @echo "libtool is missing, please install and rerun configure"; exit 1
42 else
43 libcacard.la: $(libcacard.lib-y) $(QEMU_OBJS_LIB)
44 $(call quiet-command,$(LIBTOOL) --mode=link --quiet --tag=CC $(CC) -rpath $(libdir) -o $@ $^ $(libcacard_libs)," lt LINK $@")
45
46 libcacard.pc: $(libcacard_srcpath)/libcacard.pc.in
47 sed -e 's|@LIBDIR@|$(libdir)|' \
48 -e 's|@INCLUDEDIR@|$(libcacard_includedir)|' \
49 -e 's|@VERSION@|$(shell cat $(SRC_PATH)/VERSION)|' \
50 -e 's|@PREFIX@|$(prefix)|' \
51 < $(libcacard_srcpath)/libcacard.pc.in > libcacard.pc
52
53 .PHONY: install-libcacard
54
55 install-libcacard: libcacard.pc libcacard.la vscclient
56 $(INSTALL_DIR) "$(DESTDIR)$(libdir)"
57 $(INSTALL_DIR) "$(DESTDIR)$(libdir)/pkgconfig"
58 $(INSTALL_DIR) "$(DESTDIR)$(libcacard_includedir)"
59 $(INSTALL_DIR) "$(DESTDIR)$(bindir)"
60 $(LIBTOOL) --mode=install $(INSTALL_PROG) vscclient "$(DESTDIR)$(bindir)"
61 $(LIBTOOL) --mode=install $(INSTALL_DATA) libcacard.la "$(DESTDIR)$(libdir)"
62 $(LIBTOOL) --mode=install $(INSTALL_DATA) libcacard.pc "$(DESTDIR)$(libdir)/pkgconfig"
63 for inc in *.h; do \
64 $(LIBTOOL) --mode=install $(INSTALL_DATA) $(libcacard_srcpath)/$$inc "$(DESTDIR)$(libcacard_includedir)"; \
65 done
66 endif