summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/makeinclude/wrapper_macros.GNU71
1 files changed, 38 insertions, 33 deletions
diff --git a/include/makeinclude/wrapper_macros.GNU b/include/makeinclude/wrapper_macros.GNU
index ea5c73acea2..3029e9ee2fb 100644
--- a/include/makeinclude/wrapper_macros.GNU
+++ b/include/makeinclude/wrapper_macros.GNU
@@ -54,19 +54,23 @@
# gtk_reactor Build the GtkReactor.
# ssl Build with OpenSSL support.
# rapi Build with RAPI
-# split Build the library by first splitting up the ACE source to several
-# files, with one object code entity for each source file. This allows
-# an application that is linked with ACE to extract _exactly_ what it
-# needs from the library, resulting in a smaller executable.
+# split Build the library by first splitting up the ACE source
+# to several files, with one object code entity for each
+# source file. This allows an application that is linked
+# with ACE to extract _exactly_ what it needs from the
+# library, resulting in a smaller executable.
# Setting this to 1 overrides debug to 0.
# sctp Build support for TAO SCIOP and for ACE SCTP
# wrapper-facades. The sctp macro should be set to a string
# value representing a particular SCTP implementation.
# Recognized values include: openss7
#
-# versioned_so Add versioning to libraries. Defaults to 1 (true), and
-# can be turned off by passing versioned_so=0 to make. Note
-# that setting it in platform_macros.GNU has no effect.
+# versioned_so Add versioning to libraries. Defaults to 1 (true). If 0,
+# no version number is appended to shared library names.
+# If versioned_so is 1 (enabled), the SOVERSION make
+# variable can also be set to specify the version info
+# to append to the name - it should have a leading '.' -
+# else it defaults to .ACE_MAJOR.ACE_MINOR.ACE_BETA.
#
# Usually, users do not need to be concerned with make targets.
# Just enter "make" on the command line to build. A few notable
@@ -164,39 +168,19 @@ ifeq ($(static_libs),)
static_libs = 0
endif # static_libs
-#### Defined versioned_so = 1 if your platform requires version number
-#### be appended after so library.
-ifeq ($(versioned_so),)
- versioned_so = 1
-endif
-
#### The system has X Windows and we want to include the XtReactor in
#### the library
xt_reactor = 0
+#### Set up the build ACE version in case the platform_macros.GNU wants it.
+ACE_MAJOR_VERSION := $(shell awk '/ACE_MAJOR_VERSION/ { print $$3}' ${ACE_ROOT}/ace/Version.h)
+ACE_MINOR_VERSION := $(shell awk '/ACE_MINOR_VERSION/ { print $$3}' ${ACE_ROOT}/ace/Version.h)
+ACE_BETA_VERSION := $(shell awk '/ACE_BETA_VERSION/ { print $$3}' ${ACE_ROOT}/ace/Version.h)
+
ifndef PACE_ROOT
PACE_ROOT = $(ACE_ROOT)/PACE
endif # PACE_ROOT
-ifeq ($(versioned_so),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.
- #
- ACE_MAJOR_VERSION := $(shell awk '/ACE_MAJOR_VERSION/ { print $$3}' ${ACE_ROOT}/ace/Version.h)
- ACE_MINOR_VERSION := $(shell awk '/ACE_MINOR_VERSION/ { print $$3}' ${ACE_ROOT}/ace/Version.h)
- ACE_BETA_VERSION := $(shell awk '/ACE_BETA_VERSION/ { print $$3}' ${ACE_ROOT}/ace/Version.h)
-
- # Version number of the libraries
- #
- SOVERSION = .$(ACE_MAJOR_VERSION).$(ACE_MINOR_VERSION).$(ACE_BETA_VERSION)
-
- # Name that will be written into the dynamic library
- #
- SONAME = $(SHLIB).$(ACE_MAJOR_VERSION).$(ACE_MINOR_VERSION).$(ACE_BETA_VERSION)
-endif
-
# Include this before the below variables to make it possible for
# platform_macros.GNU to set default values for them.
include $(ACE_ROOT)/include/makeinclude/platform_macros.GNU
@@ -208,7 +192,8 @@ ifeq ($(threads),0)
endif # threads
####
-#### Defaults are exceptions off (0), fast off (0), and rtti off (0)
+#### Defaults are exceptions off (0), fast off (0), rtti off (0), and
+#### versioned_so on (1).
####
ifndef exceptions
exceptions = 0
@@ -224,6 +209,26 @@ ifndef rtti
rtti = 0
endif
+ifeq (,$(versioned_so))
+ versioned_so = 1
+endif
+ifeq ($(versioned_so),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.
+ #
+ # Version number of the libraries
+ #
+ ifndef SOVERSION
+ SOVERSION = .$(ACE_MAJOR_VERSION).$(ACE_MINOR_VERSION).$(ACE_BETA_VERSION)
+ endif # SOVERSION
+
+ # Name that will be written into the dynamic library
+ #
+ SONAME = $(SHLIB)$(SOVERSION)
+endif # versioned_so
+
#----------------------------------------------------------------------------
# Platform-independent macro definitions
#----------------------------------------------------------------------------