forked from OpenDDS/OpenDDS
-
Notifications
You must be signed in to change notification settings - Fork 0
/
rules.dds.GNU
86 lines (73 loc) · 3.11 KB
/
rules.dds.GNU
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
# -*- Makefile -*-
#----------------------------------------------------------------------------
#
#
# Common Makefile rules for all of DDS
#
#----------------------------------------------------------------------------
# This is a multiple-include guard for this file because older versions of
# ACE's gnuace template will do an automatic include of this file as well
# as the one that will be generated by the verbatim in dcps.mpb.
ifndef rules_dds_gnu_included
rules_dds_gnu_included=1
ifndef TAO_ROOT
TAO_ROOT = $(ACE_ROOT)/TAO
endif
ifndef DDS_ROOT
DDS_ROOT = $(TAO_ROOT)/DDS
endif
DDS_ROOT := $(subst \,/,$(DDS_ROOT))
ifeq (,$(findstring -L$(DDS_ROOT)/lib,$(LDFLAGS)))
LDFLAGS += -L$(DDS_ROOT)/lib
endif
ifeq (,$(findstring -I$(DDS_ROOT),$(INCLDIRS)))
INCLDIRS += -I$(DDS_ROOT)
endif
# Set defaults for gnumake macros corresponding to MPC features used by DDS
# This is needed for features used in requires/avoids statements in .mpc files
built_in_topics ?= 1
tao_orbsvcs ?= 1
query_condition ?= 1
content_filtered_topic ?= 1
multi_topic ?= 1
ownership_profile ?= 1
ownership_kind_exclusive ?= 1
object_model_profile ?= 1
persistence_profile ?= 1
exceptions ?= 1
no_opendds_safety_profile ?= 1
no_opendds_security ?= 1
OPENDDS_IDL = $(DDS_ROOT)/bin/opendds_idl
OPENDDS_IDL_DEP = $(OPENDDS_IDL)
IDL2JNI = $(DDS_ROOT)/bin/idl2jni
IDL2JNI_DEP = $(IDL2JNI)
# 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.
#
ifeq (cmd,$(findstring cmd,$(SHELL)))
DDS_MAJOR_VERSION := $(shell awk "/DDS_MAJOR_VERSION/ { print $$3}" ${DDS_ROOT}/dds/Version.h)
DDS_MINOR_VERSION := $(shell awk "/DDS_MINOR_VERSION/ { print $$3}" ${DDS_ROOT}/dds/Version.h)
DDS_MICRO_VERSION := $(shell awk "/DDS_MICRO_VERSION/ { print $$3}" ${DDS_ROOT}/dds/Version.h)
OPENDDS_VERSION_METADATA := \
$(shell awk "/OPENDDS_VERSION_METADATA/ { print substr($$3, 2, length($$3) - 2) }" ${DDS_ROOT}/dds/Version.h)
else
DDS_MAJOR_VERSION := $(shell awk '/DDS_MAJOR_VERSION/ { print $$3}' ${DDS_ROOT}/dds/Version.h)
DDS_MINOR_VERSION := $(shell awk '/DDS_MINOR_VERSION/ { print $$3}' ${DDS_ROOT}/dds/Version.h)
DDS_MICRO_VERSION := $(shell awk '/DDS_MICRO_VERSION/ { print $$3}' ${DDS_ROOT}/dds/Version.h)
OPENDDS_VERSION_METADATA := \
$(shell awk '/OPENDDS_VERSION_METADATA/ { print substr($$3, 2, length($$3) - 2)}' ${DDS_ROOT}/dds/Version.h)
endif
ifdef OPENDDS_VERSION_METADATA
GNUACE_PROJECT_VERSION ?= $(DDS_MAJOR_VERSION).$(DDS_MINOR_VERSION).$(DDS_MICRO_VERSION)-$(OPENDDS_VERSION_METADATA)
else
GNUACE_PROJECT_VERSION ?= $(DDS_MAJOR_VERSION).$(DDS_MINOR_VERSION).$(DDS_MICRO_VERSION)
endif
-include $(DDS_ROOT)/user_macros.GNU
# user_macros.GNU may not exist, but GNU make will try to "make" it using the
# overly general rule for creating symlinks in rules.local.GNU. To prevent
# this, create a more specific rule for user_macros.GNU that does nothing.
.DEFAULT_GOAL := all
$(DDS_ROOT)/user_macros.GNU: ;
endif # rules_dds_gnu_included