diff options
author | kitty <kitty@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 2002-01-30 21:19:04 +0000 |
---|---|---|
committer | kitty <kitty@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 2002-01-30 21:19:04 +0000 |
commit | 1b8c14b013899f1142875beb49903232661e285c (patch) | |
tree | 1f4aafd671f7f575efb59a4e86072f8c7c5ae9fb | |
parent | 0f39bf2ca14bccede89be4dca008cf0bdd1e8d76 (diff) | |
download | ATCD-1b8c14b013899f1142875beb49903232661e285c.tar.gz |
ChangeLogTag: Wed Jan 30 15:11:49 2002 Krishnakumar B <kitty@cs.wustl.edu>
-rw-r--r-- | ChangeLog | 13 | ||||
-rw-r--r-- | ChangeLogs/ChangeLog-02a | 13 | ||||
-rw-r--r-- | ChangeLogs/ChangeLog-03a | 13 | ||||
-rw-r--r-- | ace/config-g++-common.h | 7 | ||||
-rw-r--r-- | include/makeinclude/platform_linux.GNU | 34 |
5 files changed, 70 insertions, 10 deletions
diff --git a/ChangeLog b/ChangeLog index 8d6c72360bd..99e2749a4a2 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,16 @@ +Wed Jan 30 15:11:49 2002 Krishnakumar B <kitty@cs.wustl.edu> + + * include/makeinclude/platform_linux.GNU (CXX_VERSION): + * ace/config-g++-common.h: + + Turned off explicit template instantiation with gcc under Linux. + The specific versions are 2.95.x, 2.96, 3.0.x (3.x). Added a + flag implicit_templates to tweak the behaviour from the + platform_macros.GNU file. + + The combination of the compiler and binutils seems to give a + nice reduction in the footprint. + Wed Jan 30 16:00:39 2002 Steve Huston <shuston@riverace.com> * ace/Process_Manager.cpp (register_handler): Replaced ECHILD with diff --git a/ChangeLogs/ChangeLog-02a b/ChangeLogs/ChangeLog-02a index 8d6c72360bd..99e2749a4a2 100644 --- a/ChangeLogs/ChangeLog-02a +++ b/ChangeLogs/ChangeLog-02a @@ -1,3 +1,16 @@ +Wed Jan 30 15:11:49 2002 Krishnakumar B <kitty@cs.wustl.edu> + + * include/makeinclude/platform_linux.GNU (CXX_VERSION): + * ace/config-g++-common.h: + + Turned off explicit template instantiation with gcc under Linux. + The specific versions are 2.95.x, 2.96, 3.0.x (3.x). Added a + flag implicit_templates to tweak the behaviour from the + platform_macros.GNU file. + + The combination of the compiler and binutils seems to give a + nice reduction in the footprint. + Wed Jan 30 16:00:39 2002 Steve Huston <shuston@riverace.com> * ace/Process_Manager.cpp (register_handler): Replaced ECHILD with diff --git a/ChangeLogs/ChangeLog-03a b/ChangeLogs/ChangeLog-03a index 8d6c72360bd..99e2749a4a2 100644 --- a/ChangeLogs/ChangeLog-03a +++ b/ChangeLogs/ChangeLog-03a @@ -1,3 +1,16 @@ +Wed Jan 30 15:11:49 2002 Krishnakumar B <kitty@cs.wustl.edu> + + * include/makeinclude/platform_linux.GNU (CXX_VERSION): + * ace/config-g++-common.h: + + Turned off explicit template instantiation with gcc under Linux. + The specific versions are 2.95.x, 2.96, 3.0.x (3.x). Added a + flag implicit_templates to tweak the behaviour from the + platform_macros.GNU file. + + The combination of the compiler and binutils seems to give a + nice reduction in the footprint. + Wed Jan 30 16:00:39 2002 Steve Huston <shuston@riverace.com> * ace/Process_Manager.cpp (register_handler): Replaced ECHILD with diff --git a/ace/config-g++-common.h b/ace/config-g++-common.h index 5ae9686885b..5348071443d 100644 --- a/ace/config-g++-common.h +++ b/ace/config-g++-common.h @@ -107,9 +107,12 @@ # if defined (ACE_HAS_STRING_CLASS) # undef ACE_HAS_STRING_CLASS # endif /* ACE_HAS_STRING_CLASS */ -#else /* ! ACE_HAS_GNU_REPO */ -# define ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION #endif /* ! ACE_HAS_GNU_REPO */ + +#if ( __GNUC__ == 2 && __GNUC_MINOR__ <= 91 ) +# define ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION +#endif + #define ACE_HAS_GNUC_BROKEN_TEMPLATE_INLINE_FUNCTIONS #define ACE_TEMPLATES_REQUIRE_SOURCE diff --git a/include/makeinclude/platform_linux.GNU b/include/makeinclude/platform_linux.GNU index 4ffb25ecab4..a08d9f529ff 100644 --- a/include/makeinclude/platform_linux.GNU +++ b/include/makeinclude/platform_linux.GNU @@ -15,15 +15,18 @@ endif ifeq (,$(optimize)) optimize = 1 endif + ifeq (,$(threads)) threads = 1 endif + ifeq ($(threads),0) CPPFLAGS += -DACE_MT_SAFE=0 endif # threads + PLATFORM_XT_CPPFLAGS= -PLATFORM_XT_LIBS=-lXt +PLATFORM_XT_LIBS=-lXt LATFORM_XT_LDFLAGS= PLATFORM_FL_CPPFLAGS= @@ -57,28 +60,43 @@ CC = gcc CXX = g++ endif +CXX_VERSION := $(shell $(CXX) -dumpversion) + +ifeq (2.95,$(findstring 2.95,$(CXX_VERSION))) + implicit_templates = 1 +else + ifeq (3.,$(findstring 3.,$(CXX_VERSION))) + implicit_templates = 1 + endif + ifeq (2.96,$(findstring 2.96,$(CXX_VERSION))) + implicit_templates = 1 + endif +endif + +ifeq ($(implicit_templates),) + ifeq ($(IMPLICIT_TEMPLATES_FLAG),) + IMPLICIT_TEMPLATES_FLAG=-fno-implicit-templates + endif +endif + CFLAGS += -W -Wall -Wpointer-arith -pipe ifeq ($(threads),1) CPPFLAGS += -D_POSIX_THREADS -D_POSIX_THREAD_SAFE_FUNCTIONS -D_REENTRANT \ $(PLATFORM_AIO_SUPPORT) endif # threads -ifeq ($(IMPLICIT_TEMPLATES_FLAG),) - IMPLICIT_TEMPLATES_FLAG=-fno-implicit-templates -endif - CCFLAGS += $(CFLAGS) $(IMPLICIT_TEMPLATES_FLAG) DCFLAGS += -g DLD = $(CXX) LD = $(CXX) LIBS += -ldl -ifeq ($(threads),1) +ifeq ($(threads),1) LIBS += -lpthread ifeq (-DACE_HAS_AIO_CALLS,$(PLATFORM_AIO_SUPPORT)) LIBS += -lrt endif -endif +endif PLATFORM_QT_CPPFLAGS=-I$(QTDIR)/include PLATFORM_QT_LIBS=-lqt @@ -97,7 +115,7 @@ PRELIB = @true # Added line below to support "Executable Shared Object" files (as # needed by the service configurator). # Marius Kjeldahl <mariusk@sn.no, marius@funcom.com> -ifeq ($(threads),1) +ifeq ($(threads),1) ESOBUILD = $(COMPILEESO.cc) $(PIC) -shared -o $(VSHDIR)$*.so $< ifndef PRELIB PRELIB = @true |