diff options
author | oci <oci@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 2000-08-28 15:30:31 +0000 |
---|---|---|
committer | oci <oci@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 2000-08-28 15:30:31 +0000 |
commit | 0c890b94a962981e95f0730426e4a53c557cce63 (patch) | |
tree | 8929619dcd511145520f80b8ff993d125b8c5b73 | |
parent | 58bd39483bbfd25b383a1db283c7c07497f141fd (diff) | |
download | ATCD-0c890b94a962981e95f0730426e4a53c557cce63.tar.gz |
ChangeLogTag: Mon Aug 28 10:27:45 2000 Chad Elliott <elliott_c@ociweb.com>
-rw-r--r-- | ChangeLog | 7 | ||||
-rw-r--r-- | ChangeLogs/ChangeLog-02a | 7 | ||||
-rw-r--r-- | ChangeLogs/ChangeLog-03a | 7 | ||||
-rw-r--r-- | include/makeinclude/platform_chorus4.x_g++.GNU | 164 |
4 files changed, 157 insertions, 28 deletions
diff --git a/ChangeLog b/ChangeLog index 3e3977fd4e5..c807408ef1e 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +Mon Aug 28 10:27:45 2000 Chad Elliott <elliott_c@ociweb.com> + + * include/makeinclude/platform_chorus4.x_g++.GNU + Modified the platform macros file to use the new variable + definitions provide by the "Paths" make include file. Also, + removed the use of the old (3.x) chorus macros file. + Sat Aug 26 17:39:53 2000 Douglas C. Schmidt <schmidt@ace.cs.wustl.edu> * ace/config-all.h: Added new ACE_CONST_WHEN_MUTABLE macro. diff --git a/ChangeLogs/ChangeLog-02a b/ChangeLogs/ChangeLog-02a index 3e3977fd4e5..c807408ef1e 100644 --- a/ChangeLogs/ChangeLog-02a +++ b/ChangeLogs/ChangeLog-02a @@ -1,3 +1,10 @@ +Mon Aug 28 10:27:45 2000 Chad Elliott <elliott_c@ociweb.com> + + * include/makeinclude/platform_chorus4.x_g++.GNU + Modified the platform macros file to use the new variable + definitions provide by the "Paths" make include file. Also, + removed the use of the old (3.x) chorus macros file. + Sat Aug 26 17:39:53 2000 Douglas C. Schmidt <schmidt@ace.cs.wustl.edu> * ace/config-all.h: Added new ACE_CONST_WHEN_MUTABLE macro. diff --git a/ChangeLogs/ChangeLog-03a b/ChangeLogs/ChangeLog-03a index 3e3977fd4e5..c807408ef1e 100644 --- a/ChangeLogs/ChangeLog-03a +++ b/ChangeLogs/ChangeLog-03a @@ -1,3 +1,10 @@ +Mon Aug 28 10:27:45 2000 Chad Elliott <elliott_c@ociweb.com> + + * include/makeinclude/platform_chorus4.x_g++.GNU + Modified the platform macros file to use the new variable + definitions provide by the "Paths" make include file. Also, + removed the use of the old (3.x) chorus macros file. + Sat Aug 26 17:39:53 2000 Douglas C. Schmidt <schmidt@ace.cs.wustl.edu> * ace/config-all.h: Added new ACE_CONST_WHEN_MUTABLE macro. diff --git a/include/makeinclude/platform_chorus4.x_g++.GNU b/include/makeinclude/platform_chorus4.x_g++.GNU index 265eafbbbfc..10a5102180e 100644 --- a/include/makeinclude/platform_chorus4.x_g++.GNU +++ b/include/makeinclude/platform_chorus4.x_g++.GNU @@ -9,49 +9,157 @@ # You will probably need to set the following environment variables # or macros: # -# CPU powerpc or sparc or ... -# CLX_CDSPATH <chorus install path>/4.0/chorus-$CPU/tools -# CLX_CDSVERSION 5.00 -# MERGEDIR <chorus install path>/4.0/chorus-$CPU/kernel +# CPU powerpc (default), sparc or ... +# CHTOOLS_DIR <chorus install path>/4.0/chorus-$CPU/tools +# NUCLEUS_DIR <chorus install path>/4.0/chorus-$CPU/kernel # +# +# Example: +# The Paths file that is set up when a kernel is configured and built +# contains definitions for the CHTOOLS_DIR and NUCLEUS_DIR. +# +# -- platform_macros.GNU -- +# include $(MERGEDIR)/Paths +# include $(ACE_ROOT)/include/makeinclude/platform_chorus4.x_g++.GNU +# + +CHORUS = 1 +CROSS-COMPILE = 1 + +debug = 1 +exceptions = +optimize = 1 +shared_libs = +static_libs = 1 + +# +# Directory where the Chorus Development System is installed +# +ifndef CHTOOLS_DIR + CONFIGURATION_ERROR_CHTOOLS: CHTOOLS_DIR_must_be_set! +endif +ifndef NUCLEUS_DIR + CONFIGURATION_ERROR_NUCLEUS: NUCLEUS_DIR_must_be_set! +endif +ifndef CPU + CPU=powerpc +endif +ifndef CLX_CDSVERSION + CLX_CDSVERSION = 5.00 +endif +ifndef CLX_CDSHOST + CLX_CDSHOST = solaris +endif +ifndef OS_DIR + OS_DIR = $(NUCLEUS_DIR)/../os +endif -include $(ACE_ROOT)/include/makeinclude/platform_chorus.GNU +XROOT = $(CHTOOLS_DIR)/$(CPU)/$(CLX_CDSHOST)/$(CLX_CDSVERSION) +XDIR = $(XROOT)/$(CPU)-elf +TOOLDIR = $(XDIR)/bin -OS_DIR = $(CLASSIXDIR)/../os -OS_INCLDIR = $(OS_DIR)/include # -# Put the new include paths in the front to avoid including -# the wrong version of some of the system header files. +# Include Dirs # -INCLDIRS := -I$(INC_DIR) \ - -I$(OS_INCLDIR) \ - -I$(OS_INCLDIR)/chorus \ - -I$(OS_INCLDIR)/CC \ - $(INCLDIRS) +NUCLEUS_INCLDIR = $(NUCLEUS_DIR)/include +OS_INCLDIR = $(OS_DIR)/include + +INCLDIRS += -I$(OS_INCLDIR) \ + -I$(NUCLEUS_INCLDIR) \ + -I$(OS_INCLDIR)/chorus \ + -I$(NUCLEUS_INCLDIR)/chorus \ + -I$(OS_INCLDIR)/CC \ + -I$(NUCLEUS_INCLDIR)/posix \ + -I$(NUCLEUS_INCLDIR)/stdc \ + -I$(NUCLEUS_INCLDIR)/chorus/iom \ + -I$(NUCLEUS_INCLDIR)/CC + + + +# +# Tools +# +CC = $(TOOLDIR)/gcc -B$(XROOT)/lib/gcc-lib/ +CXX = $(CC) +DLD = +LD = $(XDIR)/bin/ld +MATHLIB = -L$(NUCLEUS_DIR)/lib/libm -lm +AR = $(TOOLDIR)/ar +RANLIB = $(TOOLDIR)/ranlib + + +# +# Flag Settings +# +CFLAGS += -w +CCFLAGS += $(CFLAGS) -fno-implicit-templates \ + -fno-strict-prototypes \ + -Usun \ + -fno-builtin \ + -fconserve-space \ + -fcheck-new \ + -nostdinc \ + -pipe \ + -fno-rtti \ + -fwritable-strings \ + -fsigned-char \ + "-msoft-float" \ + -DSOFT_FLOAT \ + -D_POSIX_THREADS \ + -D_POSIX_THREAD_SAFE_FUNCTIONS \ + "-DNO_FPU_SUPPORT" + +ifeq ($(CPU),powerpc) +CCFLAGS += -mstrict-align \ + -mno-sdata +endif + +CCFLAGS += -D__CHORUS__=400 \ + -DCHORUS_VERSION_MAJOR=4 \ + -DCHORUS_VERSION_MINOR=0 \ + -DCHORUS_PATCH_LEVEL=0 \ + -DCHORUS_4 \ + -D_POSIX_THREAD_PROCESS_SHARED + +ifeq ($(exceptions),1) +else # ! exceptions + CCFLAGS += -fno-exceptions +endif # ! exceptions + +OCFLAGS += -O +PIC = -fPIC +ARFLAGS = srv # # Adding debug symbols makes the binaries too # large to load into memory. #DCFLAGS += -g -# -CCFLAGS += -DCHORUS_4 -D_POSIX_THREAD_PROCESS_SHARED + + + +LINK.cc.override = $(CXX) -u _main -u _premain +LINK.cc = override + +CHORUSLINK = true +PRELIB = @true # # Special link process to get the right libraries and # build up the static constructors and destructors. # -POSTLINK= -r $(OS_DIR)/lib/CC/libC.a $(OS_DIR)/lib/libbsd/libbsd.a \ - $(OS_DIR)/lib/classix/libcx.a \ - $(CLASSIXDIR)/lib/classix/libsys.u.a; \ - mv $@ $@.xp.o; \ - $(CLX_CDSPATH)/host/bin/mkctors $@.xp.o > $@.ct.s; \ - $(CXX) -c $@.ct.s; \ - $(RM) $@.ct.s; \ - $(LD) $(LDOPTIONS) -e _start -r -dn -o $@ \ - $(MERGEDIR)/lib/crt/crth.u.o $(MERGEDIR)/lib/crt/crt0.o \ - $(MERGEDIR)/lib/crt/crti.o $@.xp.o $@.ct.o \ - $(MERGEDIR)/lib/crt/crtn.o; \ - $(RM) $@.xp.o; \ +POSTLINK= -r $(OS_DIR)/lib/CC/libC.a $(OS_DIR)/lib/libbsd/libbsd.a \ + $(OS_DIR)/lib/classix/libcx.a \ + $(NUCLEUS_DIR)/lib/classix/libsys.u.a \ + -nostdlib -lgcc-chorus; \ + mv $@ $@.xp.o; \ + $(CHTOOLS_DIR)/host/bin/mkctors $@.xp.o > $@.ct.s; \ + $(CXX) -c $@.ct.s; \ + $(RM) $@.ct.s; \ + $(LD) $(LDOPTIONS) -e _start -r -dn -o $@ \ + $(NUCLEUS_DIR)/lib/crt/crth.u.o $(NUCLEUS_DIR)/lib/crt/crt0.o \ + $(NUCLEUS_DIR)/lib/crt/crti.o $@.xp.o $@.ct.o \ + $(NUCLEUS_DIR)/lib/crt/crtn.o; \ + $(RM) $@.xp.o; \ $(RM) $@.ct.o |