1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44
|
Author: Andreas Beckmann <debian@abeckmann.de>
Description: build a shared library for libXNVCtrl
Bug-Debian: https://bugs.debian.org/666909
--- a/src/libXNVCtrl/Makefile
+++ b/src/libXNVCtrl/Makefile
@@ -50,8 +50,11 @@ LDFLAGS += $(XNVCTRL_LDFLAGS)
.PHONY: all
all: $(LIBXNVCTRL)
+all: $(LIBXNVCTRL_a)
+all: $(LIBXNVCTRL_so)
.PHONY: clean
clean:
rm -rf $(LIBXNVCTRL) *~ \
$(OUTPUTDIR)/*.o $(OUTPUTDIR)/*.d
+ rm -f $(LIBXNVCTRL_a) $(LIBXNVCTRL_so) $(LIBXNVCTRL_so).*
--- a/src/libXNVCtrl/xnvctrl.mk
+++ b/src/libXNVCtrl/xnvctrl.mk
@@ -37,7 +37,9 @@ endif
XNVCTRL_CFLAGS ?=
-LIBXNVCTRL = $(OUTPUTDIR)/libXNVCtrl.a
+LIBXNVCTRL_a = $(OUTPUTDIR)/libXNVCtrl.a
+LIBXNVCTRL_so = $(OUTPUTDIR)/libXNVCtrl.so
+LIBXNVCTRL = $(LIBXNVCTRL_so)
LIBXNVCTRL_SRC = $(XNVCTRL_DIR)/NVCtrl.c
@@ -45,5 +47,11 @@ LIBXNVCTRL_OBJ = $(call BUILD_OBJECT_LIS
$(eval $(call DEFINE_OBJECT_RULE,TARGET,$(LIBXNVCTRL_SRC)))
-$(LIBXNVCTRL) : $(LIBXNVCTRL_OBJ)
+$(LIBXNVCTRL_a) : $(LIBXNVCTRL_OBJ)
$(call quiet_cmd,AR) ru $@ $(LIBXNVCTRL_OBJ)
+
+$(LIBXNVCTRL_so) : $(LIBXNVCTRL_OBJ)
+ $(RM) $@ $@.*
+ $(CC) -shared -Wl,-soname=$(@F).0 -o $@.0.0.0 $(LDFLAGS) $^ -lXext -lX11
+ ln -s $(@F).0.0.0 $@.0
+ ln -s $(@F).0 $@
|