summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorlevine <levine@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>1997-06-07 18:44:50 +0000
committerlevine <levine@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>1997-06-07 18:44:50 +0000
commit2c9140bc8bde8e8b3a36b04b8e6c7eac50764636 (patch)
tree544792aa4d64c02ae003a647f4fb971734601867
parentc4303cadb6348da1f5a0b0f91515f4b80edf69fd (diff)
downloadATCD-ACE-4_2.tar.gz
merge in mainline changesACE-4_2
-rw-r--r--include/makeinclude/platform_sunos5_sunc++.GNU44
-rw-r--r--include/makeinclude/platform_sunos5_sunc++_orbix.GNU22
2 files changed, 40 insertions, 26 deletions
diff --git a/include/makeinclude/platform_sunos5_sunc++.GNU b/include/makeinclude/platform_sunos5_sunc++.GNU
index c82d1313513..324f16e43d8 100644
--- a/include/makeinclude/platform_sunos5_sunc++.GNU
+++ b/include/makeinclude/platform_sunos5_sunc++.GNU
@@ -1,29 +1,39 @@
-# SunOS 5.x (Solaris 2.x) with SunC++ 4.0.1 or earlier
+# SunOS 5.x (Solaris 2.x) with SunC++ 4.2 or earlier
# *not* using Orbix
#
-# Note: with the +w option, some ACE files might generate warnings of
-# one of these types:
+# Note: some ACE files might generate these kinds of warnings:
# 1) "template manager : Warning: No valid template database available.
# Creating default repository "Templates.DB"":
# self explanatory, and apparently harmless.
# 2) "Warning: Could not find source for " one of the following:
# default constructor, copy constructor, destructor, or assignment
-# operator. It appears that with +w, Sun C++ 4.x issues this warning
+# operator. It appears that with +w, Sun C++ 4.x issues this warning
# whenever it has to generate one of these functions (because it wasn't
# defined by the user). This isn't really a problem.
# 3) "Warning: <foo> hides the function " or "hides the same name in an
# outer scope". A useful warning, perhaps, but not really a problem.
# There should be no other warnings from Sun C++ when building ACE.
#
-CC = cc
-CXX = CC
-CFLAGS += $(DCFLAGS) +w -mt
-CCFLAGS += $(CFLAGS) -noex -pta
+CC = cc
+CXX = CC
+CFLAGS += $(DCFLAGS) -mt
+#### Exception handling breaks on MP machines, see config*h files.
+#### -pta instantiates all template members, which makes libraries bigger.
+#### But, it's supposed to put each member into it's own .o, so executable
+#### size should not be penalized.
+CCFLAGS += $(CFLAGS) -noex -pta
DCFLAGS += -g
DLD = $(CXX)
LD = $(CXX)
+
+ifdef orbix
+LDFLAGS += $(PIC) -L$(ORBIX_ROOT)/lib -R $(WRAPPER_ROOT)/ace -R $(ORBIX_ROOT)/lib
+LIBS += -lorbixmt -lsocket -ldl -lnsl -lthread -lgen
+else
LDFLAGS += -R $(WRAPPER_ROOT)/ace
-LIBS += -lsocket -ldl -lnsl -lgen # -lposix4
+LIBS += -lsocket -ldl -lnsl -lgen
+endif # orbix
+
PIC = -PIC
AR = CC
ARFLAGS = -xar -o
@@ -31,3 +41,19 @@ RANLIB = echo
SOFLAGS = -G $(CPPFLAGS)
SOBUILD = $(COMPILE.cc) $(PIC) -o $(VSHDIR)$*.o $<; \
$(SOLINK.cc) -o $@ -h $@ $(LDFLAGS) $(VSHDIR)$*.o
+
+#### The following macro overrides enable creation of fast executables.
+#### They _don't_ support fast compilation :-)
+#### To use, add fast=1 to your "make" invocation.
+####
+#### -g is incompatible with -fast. If you need -g, you can
+#### use "-fast -O3".
+####
+#### Dynamic casting and RTTI can coexist with ACE, but it doesn't
+#### use them. To disable, add: -features=no%castop,no%rtti
+#### Sun C++ 4.2 (and later?) only support this option.
+ifdef fast
+CFLAGS += -fast
+CCFLAGS += -features=no%castop,no%rtti
+DCFLAGS =
+endif # fast
diff --git a/include/makeinclude/platform_sunos5_sunc++_orbix.GNU b/include/makeinclude/platform_sunos5_sunc++_orbix.GNU
index 6647d397485..b32dc1cd510 100644
--- a/include/makeinclude/platform_sunos5_sunc++_orbix.GNU
+++ b/include/makeinclude/platform_sunos5_sunc++_orbix.GNU
@@ -1,19 +1,7 @@
-# SunOS 5.x (Solaris 2.x) with SunC++ 4.0.1 or earlier
+# SunOS 5.x (Solaris 2.x) with SunC++ 4.x
# *using* MT Orbix
-CC = cc
-CXX = CC
-CFLAGS += $(DCFLAGS) +w -mt
-CCFLAGS += $(CFLAGS) -noex -pta
-DCFLAGS += -g
-DLD = $(CXX)
-LD = $(CXX)
INCLDIRS = -I$(ORBIX_ROOT)/include
-PIC = -PIC
-LDFLAGS += $(PIC) -L$(ORBIX_ROOT)/lib -R $(WRAPPER_ROOT)/ace -R $(ORBIX_ROOT)/lib
-LIBS += -lorbixmt -lsocket -ldl -lnsl -lthread -lgen
-AR = CC
-ARFLAGS = -xar -o
-RANLIB = echo
-SOFLAGS = -G $(CPPFLAGS)
-SOBUILD = $(COMPILE.cc) $(PIC) -o $(VSHDIR)$*.o $<; \
- $(SOLINK.cc) -o $@ -h $@ $(LDFLAGS) $(VSHDIR)$*.o
+
+orbix=1
+
+include $(WRAPPER_ROOT)/include/makeinclude/platform_sunos5_sunc++.GNU