From 2e3df6a3070ae5e2871a5ea024c09e6461cedfa6 Mon Sep 17 00:00:00 2001 From: midipix Date: Fri, 9 Apr 2021 11:50:40 +0000 Subject: build system: posix make support: refactored shared library versioning schemes. --- .../core/_version/_soname/version_soname_copy.mk | 8 +++++++ .../_version/_soname/version_soname_symlink.mk | 12 ++++++++++ sofort/core/_version/version_none.mk | 10 +++++++++ sofort/core/_version/version_used.mk | 26 ++++++++++++++++++++++ 4 files changed, 56 insertions(+) create mode 100644 sofort/core/_version/_soname/version_soname_copy.mk create mode 100644 sofort/core/_version/_soname/version_soname_symlink.mk create mode 100644 sofort/core/_version/version_none.mk create mode 100644 sofort/core/_version/version_used.mk (limited to 'sofort/core/_version') diff --git a/sofort/core/_version/_soname/version_soname_copy.mk b/sofort/core/_version/_soname/version_soname_copy.mk new file mode 100644 index 0000000..c176d5a --- /dev/null +++ b/sofort/core/_version/_soname/version_soname_copy.mk @@ -0,0 +1,8 @@ +# version_soname_copy.mk: handling of shared library versioning schemes. +# this file is covered by COPYING.SOFORT. + +install-soname: install-lib + cp $(SHARED_LIB) $(DESTDIR)$(LIBDIR)/$(DSO_SONAME) + +$(SHARED_SONAME): $(SHARED_LIB) + cp $(SHARED_LIB) $(SHARED_SONAME) diff --git a/sofort/core/_version/_soname/version_soname_symlink.mk b/sofort/core/_version/_soname/version_soname_symlink.mk new file mode 100644 index 0000000..963b891 --- /dev/null +++ b/sofort/core/_version/_soname/version_soname_symlink.mk @@ -0,0 +1,12 @@ +# version_soname_symlink.mk: handling of shared library versioning schemes. +# this file is covered by COPYING.SOFORT. + +$(SHARED_SONAME): $(SHARED_LIB) + rm -f $@.tmp + ln -s $(DSO_VER) $@.tmp + mv $@.tmp $@ + +install-soname: install-lib + rm -f $(SHARED_SONAME).tmp + ln -s $(DSO_VER) $(SHARED_SONAME).tmp + mv $(SHARED_SONAME).tmp $(DESTDIR)$(LIBDIR)/$(DSO_SONAME) diff --git a/sofort/core/_version/version_none.mk b/sofort/core/_version/version_none.mk new file mode 100644 index 0000000..d8fc570 --- /dev/null +++ b/sofort/core/_version/version_none.mk @@ -0,0 +1,10 @@ +# version_none.mk: handling of shared library versioning schemes. +# this file is covered by COPYING.SOFORT. + +VER_XYZ = +VER_SONAME = + +package-shared-soname: +package-shared-solink: +package-install-soname: +package-install-solink: diff --git a/sofort/core/_version/version_used.mk b/sofort/core/_version/version_used.mk new file mode 100644 index 0000000..4724cee --- /dev/null +++ b/sofort/core/_version/version_used.mk @@ -0,0 +1,26 @@ +# version_used.mk: handling of shared library versioning schemes. +# this file is covered by COPYING.SOFORT. + +VER_XYZ = .$(VER_MAJOR).$(VER_MINOR).$(VER_PATCH) +VER_SONAME = .$(VER_MAJOR) + +package-shared-soname: shared-soname +package-shared-solink: shared-solink +package-install-soname: install-soname +package-install-solink: install-solink + + + +# libfoo.so (common) +install-solink: install-lib + rm -f $(SHARED_SOLINK).tmp + ln -s $(DSO_VER) $(SHARED_SOLINK).tmp + mv $(SHARED_SOLINK).tmp $(DESTDIR)$(LIBDIR)/$(DSO_SOLINK) + +$(SHARED_SOLINK): $(SHARED_LIB) + rm -f $@.tmp + ln -s $(DSO_VER) $@.tmp + mv $@.tmp $@ + +# libfoo.so.x (symlink or copy) +include $(PROJECT_DIR)/sofort/core/_version/_soname/version_soname_$(OS_SONAME).mk -- cgit v1.2.3