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