Statistics
| Branch: | Revision:

root / libcacard / Makefile @ c2162a8b

History | View | Annotate | Download (2.3 kB)

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