From 2c9140bc8bde8e8b3a36b04b8e6c7eac50764636 Mon Sep 17 00:00:00 2001 From: levine Date: Sat, 7 Jun 1997 18:44:50 +0000 Subject: merge in mainline changes --- include/makeinclude/platform_sunos5_sunc++.GNU | 44 +++++++++++++++++----- .../makeinclude/platform_sunos5_sunc++_orbix.GNU | 22 +++-------- 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: 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 -- cgit v1.2.1