73db416ae7
As described in https://bugzilla.redhat.com/show_bug.cgi?id=987441 , libcacard currently links to all the libraries QEMU is linking to, including glusterfs libraries, libiscsi, ... libcacard does not need all of these. This patch ensures it's only linked with the libraries it needs. Signed-off-by: Christophe Fergeau <cfergeau@redhat.com> Signed-off-by: Alon Levy <alevy@redhat.com>
51 lines
1.8 KiB
Makefile
51 lines
1.8 KiB
Makefile
libcacard_includedir=$(includedir)/cacard
|
|
|
|
TOOLS += vscclient$(EXESUF)
|
|
|
|
# objects linked into a shared library, built with libtool with -fPIC if required
|
|
libcacard-obj-y = $(stub-obj-y) $(libcacard-y)
|
|
libcacard-obj-y += util/osdep.o util/cutils.o util/qemu-timer-common.o
|
|
libcacard-obj-y += util/error.o util/qemu-error.o
|
|
libcacard-obj-$(CONFIG_WIN32) += util/oslib-win32.o util/qemu-thread-win32.o
|
|
libcacard-obj-$(CONFIG_POSIX) += util/oslib-posix.o util/qemu-thread-posix.o
|
|
libcacard-obj-y += $(filter trace/%, $(util-obj-y))
|
|
|
|
libcacard-lobj-y=$(patsubst %.o,%.lo,$(libcacard-obj-y))
|
|
|
|
# libtool will build the .o files, too
|
|
$(libcacard-obj-y): | $(libcacard-lobj-y)
|
|
|
|
all: libcacard.la libcacard.pc
|
|
|
|
vscclient$(EXESUF): libcacard/vscclient.o libcacard.la
|
|
$(call LINK,$^)
|
|
|
|
#########################################################################
|
|
# Rules for building libcacard standalone library
|
|
|
|
libcacard.la: LDFLAGS += -rpath $(libdir) -no-undefined \
|
|
-export-syms $(SRC_PATH)/libcacard/libcacard.syms
|
|
libcacard.la: LIBS = $(libcacard_libs)
|
|
libcacard.la: $(libcacard-lobj-y)
|
|
$(call LINK,$^)
|
|
|
|
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.pc,\
|
|
" GEN $@")
|
|
|
|
.PHONY: install-libcacard
|
|
|
|
install: install-libcacard
|
|
install-libcacard: libcacard.pc libcacard.la
|
|
$(INSTALL_DIR) "$(DESTDIR)$(libdir)"
|
|
$(INSTALL_DIR) "$(DESTDIR)$(libdir)/pkgconfig"
|
|
$(INSTALL_DIR) "$(DESTDIR)$(libcacard_includedir)"
|
|
$(INSTALL_LIB) libcacard.la "$(DESTDIR)$(libdir)"
|
|
$(INSTALL_DATA) libcacard.pc "$(DESTDIR)$(libdir)/pkgconfig"
|
|
for inc in $(SRC_PATH)/libcacard/*.h; do \
|
|
$(INSTALL_DATA) $$inc "$(DESTDIR)$(libcacard_includedir)"; \
|
|
done
|