summaryrefslogtreecommitdiff
path: root/TAO/rules.tao.GNU
diff options
context:
space:
mode:
authorkitty <kitty@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2002-06-12 23:34:18 +0000
committerkitty <kitty@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2002-06-12 23:34:18 +0000
commit376de6fb8cc3ee705b307ff01f99c93010b940b0 (patch)
treed824ecefe2ea9db711c24afcef79854e541bec2d /TAO/rules.tao.GNU
parent4952f17288ca415f4b18fdf9990698197d74fbb2 (diff)
downloadATCD-376de6fb8cc3ee705b307ff01f99c93010b940b0.tar.gz
ChangeLogTag: Wed Jun 12 18:29:11 2002 Krishnakumar B <kitty@cs.wustl.edu>
Diffstat (limited to 'TAO/rules.tao.GNU')
-rw-r--r--TAO/rules.tao.GNU21
1 files changed, 21 insertions, 0 deletions
diff --git a/TAO/rules.tao.GNU b/TAO/rules.tao.GNU
index 5f3716eede8..ed98c21c9ec 100644
--- a/TAO/rules.tao.GNU
+++ b/TAO/rules.tao.GNU
@@ -242,3 +242,24 @@ $(foreach ext, $(IDL_EXT) $(IDL_EXT2), %$(ext)): %.idl
endif # tao_dont_use_idl_make_rule
endif # use_flick = 1
+
+# Turn on symbol versioning. The scheme that we follow is to allow
+# applications dependent on libraries, with same version numbers (major,
+# minor and beta) to run, but applications with dependencies on libraries
+# with different minor or major or beta versions to fail.
+#
+TAO_MAJOR_VERSION := $(shell echo `perl -ne 'if (/TAO version/) { s/[^0-9]+(\d+)+\.(\d+)+\.(\d+)+.+/\1/ ; print }' ${TAO_ROOT}/VERSION`)
+TAO_MINOR_VERSION := $(shell echo `perl -ne 'if (/TAO version/) { s/[^0-9]+(\d+)+\.(\d+)+\.(\d+)+.+/\2/ ; print }' ${TAO_ROOT}/VERSION`)
+TAO_BETA_VERSION := $(shell echo `perl -ne 'if (/TAO version/) { s/[^0-9]+(\d+)+\.(\d+)+\.(\d+)+.+/\3/ ; print }' ${TAO_ROOT}/VERSION`)
+
+# Version number of the libraries
+#
+ifneq ($(SOVERSION),)
+ SOVERSION = .$(TAO_MAJOR_VERSION).$(TAO_MINOR_VERSION).$(TAO_BETA_VERSION)
+endif
+
+# Name that will be written into the dynamic library
+#
+ifneq ($(SONAME),)
+SONAME = $(SHLIB).$(TAO_MAJOR_VERSION).$(TAO_MINOR_VERSION).$(TAO_BETA_VERSION)
+endif