]> mj.ucw.cz Git - libucw.git/commitdiff
Split install-lib* rules to runtime and dev parts.
authorPavel Charvat <pchar@ucw.cz>
Fri, 6 Dec 2013 14:26:52 +0000 (15:26 +0100)
committerPavel Charvat <pchar@ucw.cz>
Fri, 6 Dec 2013 14:26:52 +0000 (15:26 +0100)
charset/Makefile
charset/libucw-charset.pc
images/Makefile
images/libucw-images.pc
shxml/Makefile
shxml/libucw-xml.pc
ucw/Makefile
ucw/default.cfg
ucw/libucw.pc

index e54039e03147aa6006602546ae4b0c9588644626..9b37fe68449e55f72ee633859aa5a8a3d98666c7 100644 (file)
@@ -8,11 +8,15 @@ LIBCHARSET_INCLUDES=charconv.h unicat.h fb-charconv.h stk-charconv.h mp-charconv
 $(o)/charset/libucw-charset.a: $(addsuffix .o,$(addprefix $(o)/charset/,$(LIBCHARSET_MODS)))
 $(o)/charset/libucw-charset-pic.a: $(addsuffix .oo,$(addprefix $(o)/charset/,$(LIBCHARSET_MODS)))
 $(o)/charset/libucw-charset.so: $(addsuffix .oo,$(addprefix $(o)/charset/,$(LIBCHARSET_MODS)))
+$(o)/charset/libucw-charset.so: SONAME_SUFFIX=.$(UCW_ABI_VERSION)
 $(o)/charset/libucw-charset.pc: $(LIBUCW)
 
 ifdef CONFIG_STATIC_PIC
 $(o)/charset/libucw-charset.pc: $(o)/charset/libucw-charset-pic.a
 endif
+ifdef CONFIG_INSTALL_API
+$(o)/charset/libucw-charset.pc: $(o)/charset/libucw-charset.a $(o)/charset/libucw-charset-pic.a $(o)/charset/libucw-charset.so
+endif
 
 API_LIBS+=libucw-charset
 API_INCLUDES+=$(o)/charset/.include-stamp
@@ -32,14 +36,18 @@ build_charsets:
 clean::
        rm -f $(s)/charset/misc/u-*
 
-INSTALL_TARGETS+=install-libucw-charset
+INSTALL_TARGETS+=install-libucw-charset install-libucw-charset-api
+
 install-libucw-charset:
+       install -d -m 755 $(DESTDIR)$(INSTALL_LIB_DIR)
+       install -m 644 run/lib/libucw-charset.so.$(UCW_ABI_VERSION) $(DESTDIR)$(INSTALL_LIB_DIR)
+
+install-libucw-charset-api:
        install -d -m 755 $(DESTDIR)$(INSTALL_INCLUDE_DIR)/charset $(DESTDIR)$(INSTALL_LIB_DIR) $(DESTDIR)$(INSTALL_PKGCONFIG_DIR)
        install -m 644 $(addprefix run/include/charset/,$(LIBCHARSET_INCLUDES)) $(DESTDIR)$(INSTALL_INCLUDE_DIR)/charset
-       install -m 644 run/lib/libucw-charset.$(LS) $(DESTDIR)$(INSTALL_LIB_DIR)
        install -m 644 run/lib/pkgconfig/libucw-charset.pc $(DESTDIR)$(INSTALL_PKGCONFIG_DIR)
-ifdef CONFIG_STATIC_PIC
-       install -m 644 run/lib/libucw-charset-pic.$(LS) $(DESTDIR)$(INSTALL_LIB_DIR)
-endif
+       ln -sf libucw-charset.so.$(UCW_ABI_VERSION) $(DESTDIR)$(INSTALL_LIB_DIR)/libucw-charset.so
+       install -m 644 run/lib/libucw-charset.a $(DESTDIR)$(INSTALL_LIB_DIR)
+       install -m 644 run/lib/libucw-charset-pic.a $(DESTDIR)$(INSTALL_LIB_DIR)
 
-.PHONY: install-libucw-charset
+.PHONY: install-libucw-charset install-libucw-charset-api
index 9119bdbe6d5cb640d583be9e171537d518969412..b4a17ca3fd2e2734b9407c1315fdce0c2a977039 100644 (file)
@@ -8,7 +8,7 @@ picsuffix=
 
 Name: libucw-charset
 Description: Character set conversion library
-Version: @UCW_VERSION@
+Version: @UCW_ABI_VERSION@
 Cflags: -I${incdir}
 Libs: -L${libdir} -lucw-charset${picsuffix}
 Requires: @DEPS@
index 815c078164c33b72c21650f7689403ff8ddeea2e..bbf9be16c995d9608ad16d4cc90f4aaceb3dc5f1 100644 (file)
@@ -15,6 +15,9 @@ else
 LIBIMAGES_DEPS=$(LIBUCW)
 endif
 
+ifdef CONFIG_INSTALL_API
+$(o)/images/libucw-images.pc: $(o)/images/libucw-images.a $(o)/images/libucw-images-pic.a $(o)/images/libucw-images.so
+endif
 ifdef CONFIG_STATIC_PIC
 LIBIMAGES_DEPS+=$(o)/images/libucw-images-pic.a
 endif
@@ -67,6 +70,7 @@ CONFIGS+=$(LIBIMAGES_CONFIGS)
 $(o)/images/libucw-images.a: $(addsuffix .o,$(addprefix $(o)/images/,$(LIBIMAGES_MODS)))
 $(o)/images/libucw-images-pic.a: $(addsuffix .oo,$(addprefix $(o)/images/,$(LIBIMAGES_MODS)))
 $(o)/images/libucw-images.so: $(addsuffix .oo,$(addprefix $(o)/images/,$(LIBIMAGES_MODS)))
+$(o)/images/libucw-images.so: SONAME_SUFFIX=.$(UCW_ABI_VERSION)
 $(o)/images/libucw-images.pc: $(LIBIMAGES_DEPS)
 
 $(o)/images/image-tool: $(o)/images/image-tool.o $(LIBIMAGES)
@@ -88,16 +92,20 @@ $(o)/images/.include-stamp: $(addprefix $(s)/images/,$(LIBIMAGES_INCLUDES))
 $(o)/images/.include-stamp: IDST=images
 run/lib/pkgconfig/libucw-images.pc: $(o)/images/libucw-images.pc
 
-INSTALL_TARGETS+=install-libucw-images
+INSTALL_TARGETS+=install-libucw-images install-libucw-images-api
+
 install-libucw-images:
-       install -d -m 755 $(addprefix $(DESTDIR),$(INSTALL_BIN_DIR) $(INSTALL_INCLUDE_DIR)/images $(INSTALL_LIB_DIR) $(INSTALL_PKGCONFIG_DIR) $(INSTALL_CONFIG_DIR))
+       install -d -m 755 $(addprefix $(DESTDIR),$(INSTALL_BIN_DIR) $(INSTALL_LIB_DIR) $(INSTALL_CONFIG_DIR))
        install -m 755 $(LIBIMAGES_PROGS) $(DESTDIR)$(INSTALL_BIN_DIR)
+       install -m 644 $(addprefix run/$(CONFIG_DIR)/,$(LIBIMAGES_CONFIGS)) $(DESTDIR)$(INSTALL_CONFIG_DIR)
+       install -m 644 run/lib/libucw-images.so.$(UCW_ABI_VERSION) $(DESTDIR)$(INSTALL_LIB_DIR)
+
+install-libucw-images-api:
+       install -d -m 755 $(addprefix $(DESTDIR),$(INSTALL_BIN_DIR) $(INSTALL_INCLUDE_DIR)/images $(INSTALL_LIB_DIR) $(INSTALL_PKGCONFIG_DIR))
        install -m 644 $(addprefix run/include/images/,$(LIBIMAGES_INCLUDES)) $(DESTDIR)$(INSTALL_INCLUDE_DIR)/images
-       install -m 644 run/lib/libucw-images.$(LS) $(DESTDIR)$(INSTALL_LIB_DIR)
        install -m 644 run/lib/pkgconfig/libucw-images.pc $(DESTDIR)$(INSTALL_PKGCONFIG_DIR)
-       install -m 644 $(addprefix run/$(CONFIG_DIR)/,$(LIBIMAGES_CONFIGS)) $(DESTDIR)$(INSTALL_CONFIG_DIR)
-ifdef CONFIG_STATIC_PIC
-       install -m 644 run/lib/libucw-images-pic.$(LS) $(DESTDIR)$(INSTALL_LIB_DIR)
-endif
+       ln -sf libucw-images.so.$(UCW_ABI_VERSION) $(DESTDIR)$(INSTALL_LIB_DIR)/libucw-images.so
+       install -m 644 run/lib/libucw-images.a $(DESTDIR)$(INSTALL_LIB_DIR)
+       install -m 644 run/lib/libucw-images-pic.a $(DESTDIR)$(INSTALL_LIB_DIR)
 
-.PHONY: install-libucw-images
+.PHONY: install-libucw-images install-libucw-images-api
index 3a129ceb4d3547ee9113b47485c2be08a2d36467..2b407e9091a8cf58caa5296f17fcf1496ad91c37 100644 (file)
@@ -8,7 +8,7 @@ picsuffix=
 
 Name: libucw-images
 Description: UCW image library
-Version: @UCW_VERSION@
+Version: @UCW_ABI_VERSION@
 Cflags: -I${incdir}
 Libs: -L${libdir} -lucw-images${picsuffix} -lm -lpthread @LIBIMAGES_LIBS@
 Requires: @DEPS@
index ccd03ceae59006048d805b1165d6c2ee4786691e..598a1c668c5465fadb48f9cf806abcb996e4182c 100644 (file)
@@ -12,11 +12,15 @@ LIBSHXML_MOD_PATHS=$(addprefix $(o)/shxml/,$(LIBSHXML_MODS))
 $(o)/shxml/libucw-xml.a: $(addsuffix .o,$(LIBSHXML_MOD_PATHS))
 $(o)/shxml/libucw-xml-pic.a: $(addsuffix .oo,$(LIBSHXML_MOD_PATHS))
 $(o)/shxml/libucw-xml.so: $(addsuffix .oo,$(LIBSHXML_MOD_PATHS))
+$(o)/shxml/libucw-xml.so: SONAME_SUFFIX=.$(UCW_ABI_VERSION)
 $(o)/shxml/libucw-xml.pc: $(LIBCHARSET)
 
 ifdef CONFIG_STATIC_PIC
 $(o)/shxml/libucw-xml.pc: $(o)/shxml/libucw-xml-pic.a
 endif
+ifdef CONFIG_INSTALL_API
+$(o)/shxml/libucw-xml.pc: $(o)/shxml/libucw-xml.a $(o)/shxml/libucw-xml-pic.a $(o)/shxml/libucw-xml.so
+endif
 
 $(o)/shxml/common.o: $(o)/shxml/unicat.h
 $(o)/shxml/common.oo: $(o)/shxml/unicat.h
@@ -41,14 +45,18 @@ $(o)/shxml/.include-stamp: $(addprefix $(s)/shxml/,$(LIBSHXML_INCLUDES))
 $(o)/shxml/.include-stamp: IDST=shxml
 run/lib/pkgconfig/libucw-xml.pc: $(o)/shxml/libucw-xml.pc
 
-INSTALL_TARGETS+=install-libucw-xml
-install-sh-xml:
+INSTALL_TARGETS+=install-libucw-xml install-libucw-xml-api
+
+install-libucw-xml:
+       install -d -m 755 $(DESTDIR)$(INSTALL_LIB_DIR)
+       install -m 644 run/lib/libucw-xml.so.$(UCW_ABI_VERSION) $(DESTDIR)$(INSTALL_LIB_DIR)
+
+install-libucw-xml-api:
        install -d -m 755 $(DESTDIR)$(INSTALL_INCLUDE_DIR)/shxml $(DESTDIR)$(INSTALL_LIB_DIR) $(DESTDIR)$(INSTALL_PKGCONFIG_DIR)
-       install -m 644 $(addprefix run/include/shxml/,$(LIBSHXML_INCLUDES)) $(DESTDIR)$(INSTALL_INCLUDE_DIR)/shxml
        install -m 644 run/lib/pkgconfig/libucw-xml.pc $(DESTDIR)$(INSTALL_PKGCONFIG_DIR)
-       install -m 644 run/lib/libucw-xml.$(LS) $(DESTDIR)$(INSTALL_LIB_DIR)
-ifdef CONFIG_STATIC_PIC
-       install -m 644 run/lib/libucw-xml-pic.$(LS) $(DESTDIR)$(INSTALL_LIB_DIR)
-endif
+       install -m 644 $(addprefix run/include/shxml/,$(LIBSHXML_INCLUDES)) $(DESTDIR)$(INSTALL_INCLUDE_DIR)/shxml
+       ln -sf libucw-xml.so.$(UCW_ABI_VERSION) $(DESTDIR)$(INSTALL_LIB_DIR)/libucw-xml.so
+       install -m 644 run/lib/libucw-xml.a $(DESTDIR)$(INSTALL_LIB_DIR)
+       install -m 644 run/lib/libucw-xml-pic.a $(DESTDIR)$(INSTALL_LIB_DIR)
 
-.PHONY: install-libucw-xml
+.PHONY: install-libucw-xml install-libucw-xml-api
index 7082a54325e9302713525a04a44234bdab6a8ff8..2115af955c880a28000b2907b6b73c43e73450b7 100644 (file)
@@ -8,7 +8,7 @@ picsuffix=
 
 Name: libucw-xml
 Description: XML parser for LibUCW project
-Version: @UCW_VERSION@
+Version: @UCW_ABI_VERSION@
 Cflags: -I${incdir}
 Libs: -L${libdir} -lucw-xml${picsuffix}
 Requires: @DEPS@
index 1f23621634c2151e812c53b435c04d794b426448..95731ba8062cb2a766cbd3c29175b16914311d8f 100644 (file)
@@ -89,10 +89,14 @@ LIBUCW_MOD_PATHS=$(addprefix $(o)/ucw/,$(LIBUCW_MODS))
 $(o)/ucw/libucw.a: $(addsuffix .o,$(LIBUCW_MOD_PATHS))
 $(o)/ucw/libucw-pic.a: $(addsuffix .oo,$(LIBUCW_MOD_PATHS))
 $(o)/ucw/libucw.so: $(addsuffix .oo,$(LIBUCW_MOD_PATHS))
+$(o)/ucw/libucw.so: SONAME_SUFFIX=.$(UCW_ABI_VERSION)
 
 ifdef CONFIG_STATIC_PIC
 $(o)/ucw/libucw.pc: $(o)/ucw/libucw-pic.a
 endif
+ifdef CONFIG_INSTALL_API
+$(o)/ucw/libucw.pc: $(o)/ucw/libucw.a $(o)/ucw/libucw-pic.a $(o)/ucw/libucw.so
+endif
 
 $(o)/ucw/hashfunc.o $(o)/ucw/hashfunc.oo: CFLAGS += -funroll-loops
 $(o)/ucw/lizard.o: CFLAGS += $(COPT2) -funroll-loops
@@ -180,15 +184,19 @@ endif
 
 CONFIGS+=libucw
 
-INSTALL_TARGETS+=install-libucw
+INSTALL_TARGETS+=install-libucw install-libucw-api
+
 install-libucw:
-       install -d -m 755 $(DESTDIR)$(INSTALL_LIB_DIR) $(DESTDIR)$(INSTALL_INCLUDE_DIR)/ucw/ $(DESTDIR)$(INSTALL_PKGCONFIG_DIR) $(DESTDIR)$(INSTALL_CONFIG_DIR)
+       install -d -m 755 $(DESTDIR)$(INSTALL_LIB_DIR) $(DESTDIR)$(INSTALL_CONFIG_DIR)
+       install -m 644 run/lib/libucw.so.$(UCW_ABI_VERSION) $(DESTDIR)$(INSTALL_LIB_DIR)/
+       install -m 644 run/$(CONFIG_DIR)/libucw $(DESTDIR)$(INSTALL_CONFIG_DIR)
+
+install-libucw-api:
+       install -d -m 755 $(DESTDIR)$(INSTALL_LIB_DIR) $(DESTDIR)$(INSTALL_INCLUDE_DIR)/ucw/ $(DESTDIR)$(INSTALL_PKGCONFIG_DIR)
        install -m 644 $(addprefix run/include/ucw/,$(LIBUCW_MAIN_INCLUDES) autoconf.h config.h) $(DESTDIR)$(INSTALL_INCLUDE_DIR)/ucw/
        install -m 644 run/lib/pkgconfig/libucw.pc $(DESTDIR)$(INSTALL_PKGCONFIG_DIR)
-       install -m 644 run/lib/libucw.$(LS) $(DESTDIR)$(INSTALL_LIB_DIR)
-ifdef CONFIG_STATIC_PIC
-       install -m 644 run/lib/libucw-pic.$(LS) $(DESTDIR)$(INSTALL_LIB_DIR)
-endif
-       install -m 644 run/$(CONFIG_DIR)/libucw $(DESTDIR)$(INSTALL_CONFIG_DIR)
+       ln -sf libucw.so.$(UCW_ABI_VERSION) $(DESTDIR)$(INSTALL_LIB_DIR)/libucw.so
+       install -m 644 run/lib/libucw.a $(DESTDIR)$(INSTALL_LIB_DIR)
+       install -m 644 run/lib/libucw-pic.a $(DESTDIR)$(INSTALL_LIB_DIR)
 
-.PHONY: install-libucw
+.PHONY: install-libucw install-libucw-api
index 60e1c046b8e698b717220a98dfe353b2a6fd4ef9..7a2236da5fa4510b37d3eb4ef29d724c6857f88b 100644 (file)
@@ -4,6 +4,7 @@
 # Version of the whole package
 Set("UCW_VERSION" => "5.0-dev");
 Set("UCW_VERSION_CODE" => 5000000);
+Set("UCW_ABI_VERSION" => "5.0");
 
 # Compile everything with debug information and ASSERT's
 UnSet("CONFIG_DEBUG");
index 7d1c1542ade4f7e713f154af9cdad52b16e4d360..3b4a092fb846ad882673379ff327d1d958dbec11 100644 (file)
@@ -30,6 +30,6 @@ build_system=@INSTALL_SHARE_DIR@/ucw/build
 
 Name: libucw
 Description: A library of utility functions and data structures
-Version: @UCW_VERSION@
+Version: @UCW_ABI_VERSION@
 Cflags: -I${incdir}
 Libs: -L${libdir} -lucw${picsuffix} ${threads} ${regex} ${rt}