summaryrefslogtreecommitdiff
path: root/sofort/core/_version
diff options
context:
space:
mode:
authormidipix <writeonce@midipix.org>2021-04-09 11:50:40 +0000
committermidipix <writeonce@midipix.org>2021-04-10 20:54:33 +0000
commit9e66d439da9e7a7a2c4b9a93e7f4c87a5b229952 (patch)
tree817a87b183563c409fd1787f65f3db98452126e9 /sofort/core/_version
parenta324a48b740434a403801f8e8f342fbb05f13bc0 (diff)
downloadapimagic-9e66d439da9e7a7a2c4b9a93e7f4c87a5b229952.tar.bz2
apimagic-9e66d439da9e7a7a2c4b9a93e7f4c87a5b229952.tar.xz
build system: posix make support: refactored shared library versioning schemes.
Diffstat (limited to 'sofort/core/_version')
-rw-r--r--sofort/core/_version/_soname/version_soname_copy.mk8
-rw-r--r--sofort/core/_version/_soname/version_soname_symlink.mk12
-rw-r--r--sofort/core/_version/version_none.mk10
-rw-r--r--sofort/core/_version/version_used.mk26
4 files changed, 56 insertions, 0 deletions
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