From fc6f51e96bdc351fd9d662a3434f8da429b36702 Mon Sep 17 00:00:00 2001
From: midipix <writeonce@midipix.org>
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