aboutsummaryrefslogtreecommitdiffstats
path: root/tools/blktap2
diff options
context:
space:
mode:
authorIan Campbell <ian.campbell@citrix.com>2012-02-13 17:29:50 +0000
committerIan Campbell <ian.campbell@citrix.com>2012-02-13 17:29:50 +0000
commit2bb41caf16d1cf47fc37647be6aa5ac4f91a9600 (patch)
tree1a497caf0abc369348c0172f256ddb9a705200cd /tools/blktap2
parent5e54ca2a55e6cff6912fde6d3a7af50096099e46 (diff)
downloadxen-2bb41caf16d1cf47fc37647be6aa5ac4f91a9600.tar.gz
xen-2bb41caf16d1cf47fc37647be6aa5ac4f91a9600.tar.bz2
xen-2bb41caf16d1cf47fc37647be6aa5ac4f91a9600.zip
blktap2/libvhd: Build shared objects using -fPIC.
Signed-off-by: Ian Campbell <ian.campbell@citrix.com> Acked-by: Ian Jackson <ian.jackson@eu.citrix.com> Committed-by: Ian Jackson <ian.jackson@eu.citrix.com>
Diffstat (limited to 'tools/blktap2')
-rw-r--r--tools/blktap2/vhd/lib/Makefile13
1 files changed, 9 insertions, 4 deletions
diff --git a/tools/blktap2/vhd/lib/Makefile b/tools/blktap2/vhd/lib/Makefile
index b72e4d9565..1acee707bd 100644
--- a/tools/blktap2/vhd/lib/Makefile
+++ b/tools/blktap2/vhd/lib/Makefile
@@ -49,27 +49,32 @@ LIB-SRCS += atomicio.c
LIB-OBJS = $(patsubst %.c,%.o,$(LIB-SRCS))
LIB-OBJS += $(LVM-UTIL-OBJ)
+LIB-PICOBJS = $(patsubst %.o,%.opic,$(LIB-OBJS))
+
LIBVHD = libvhd.a libvhd.so.$(LIBVHD-MAJOR).$(LIBVHD-MINOR)
all: build
-build: $(LIBVHD-BUILD)
+build: libvhd.a libvhd.so.$(LIBVHD-MAJOR).$(LIBVHD-MINOR)
libvhd.a: $(LIB-OBJS)
+ $(AR) rc $@ $^
+
+libvhd.so.$(LIBVHD-MAJOR).$(LIBVHD-MINOR): $(LIB-PICOBJS)
$(CC) -Wl,$(SONAME_LDFLAG),$(LIBVHD-SONAME) $(SHLIB_LDFLAGS) \
$(LDFLAGS) -o libvhd.so.$(LIBVHD-MAJOR).$(LIBVHD-MINOR) $^ $(LIBS)
ln -sf libvhd.so.$(LIBVHD-MAJOR).$(LIBVHD-MINOR) libvhd.so.$(LIBVHD-MAJOR)
ln -sf libvhd.so.$(LIBVHD-MAJOR) libvhd.so
- $(AR) rc $@ $^
install: all
$(INSTALL_DIR) -p $(DESTDIR)$(INST-DIR)
- $(INSTALL_PROG) $(LIBVHD) $(DESTDIR)$(INST-DIR)
+ $(INSTALL_PROG) libvhd.a $(DESTDIR)$(INST-DIR)
+ $(INSTALL_PROG) libvhd.so.$(LIBVHD-MAJOR).$(LIBVHD-MINOR) $(DESTDIR)$(INST-DIR)
ln -sf libvhd.so.$(LIBVHD-MAJOR).$(LIBVHD-MINOR) $(DESTDIR)$(INST-DIR)/libvhd.so.$(LIBVHD-MAJOR)
ln -sf libvhd.so.$(LIBVHD-MAJOR) $(DESTDIR)$(INST-DIR)/libvhd.so
clean:
- rm -rf *.a *.so* *.o *~ $(DEPS) $(LIBVHD)
+ rm -rf *.a *.so* *.o *.opic *~ $(DEPS) $(LIBVHD)
.PHONY: all build clean install libvhd