summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorschmidt <douglascraigschmidt@users.noreply.github.com>1998-08-31 21:41:20 +0000
committerschmidt <douglascraigschmidt@users.noreply.github.com>1998-08-31 21:41:20 +0000
commite050feb447359fd460519c4c3df0e1f52d5da369 (patch)
tree4d79428f1415afd8f3aaa5db7392e9ef6966355e /include
parent44deecaf3cc49ab1a3ea1b532f81f4bebb4eb403 (diff)
downloadATCD-e050feb447359fd460519c4c3df0e1f52d5da369.tar.gz
*** empty log message ***
Diffstat (limited to 'include')
-rw-r--r--include/makeinclude/platform_chorus.GNU34
-rw-r--r--include/makeinclude/rules.bin.GNU11
2 files changed, 39 insertions, 6 deletions
diff --git a/include/makeinclude/platform_chorus.GNU b/include/makeinclude/platform_chorus.GNU
index 587da8bb457..440b590366b 100644
--- a/include/makeinclude/platform_chorus.GNU
+++ b/include/makeinclude/platform_chorus.GNU
@@ -14,6 +14,7 @@ static_libs = 1
# The following file includes definitions such as $(CC), $(XDIR), etc.
#
include $(MERGEDIR)/dtool/htgt-cf.rf
+CLASSIXDIR=$(MERGEDIR)
#
# Tool PATH
#
@@ -27,22 +28,43 @@ CXX = $(CC)
CFLAGS += -w
CCFLAGS += $(CFLAGS) -fno-implicit-templates \
-fno-strict-prototypes \
+ -Usun \
+ -fno-builtin \
+ -fconserve-space \
+ -fcheck-new \
-nostdinc \
+ -pipe \
+ -fno-rtti \
+ -fno-exceptions \
-D_POSIX_THREADS \
-D_POSIX_THREAD_SAFE_FUNCTIONS
-DCFLAGS += -gstabs+
+#DCFLAGS += -gstabs+
INCLDIRS += -I$(INC_DIR)/posix \
-I$(INC_DIR)/stdc \
-I$(INC_DIR)/chorus/ \
-I$(INC_DIR)/chorus/iom \
-I$(INC_DIR)/CC
DLD =
-LD = $(CXX)
-LDFLAGS += -r -Ur -nostdlib \
- -L$(LIB_DIR)/CC \
- -L$(LIB_DIR)/classix
+LD = $(XDIR)/bin/ld
+LDFLAGS += -r $(CLASSIXDIR)/lib/CC/libC.a $(CLASSIXDIR)/lib/classix/libcx.u.a
+MATHLIB = -L$(CLASSIXDIR)/lib/libm -lm
-OCFLAGS += -O2
+LINK.cc.override = $(LD) -u _main -u _premain
+LINK.cc=override
+
+CHORUSLINK=true
+
+# $(CLASSIXDIR)/dtool/mkctors helloCxx_u.xp.o > helloCxx_u.ct.s
+# $(CXX) -c helloCxx_u.ct.s
+# $(RM) helloCxx_u.ct.s
+# $(LD) $(LDOPTIONS) -e _start -o helloCxx_u \
+# $(CLASSIXDIR)/lib/crt/crth.u.o $(CLASSIXDIR)/lib/crt/crt0.o $(CLASSIXDIR)/lib/crt/crti.o helloCxx_u.xp.o helloCxx_u.ct.o $(CLASSIXDIR)/lib/crt/crtn.o \
+# -dn -T $(CLASSIXDIR)/src/act/slots/act_u.ld
+# $(RM) helloCxx_u.xp.o
+# $(RM) helloCxx_u.ct.o
+
+
+OCFLAGS += -O
PIC = -fPIC
AR = $(TOOLDIR)ar
diff --git a/include/makeinclude/rules.bin.GNU b/include/makeinclude/rules.bin.GNU
index c91dad7a3e6..250b4106fc2 100644
--- a/include/makeinclude/rules.bin.GNU
+++ b/include/makeinclude/rules.bin.GNU
@@ -14,5 +14,16 @@ endif
VOBJS = $(subst .cpp,.$(OBJEXT),$(foreach file,$(SRC),$(VDIR)$(notdir $(file))))
+ifeq ($(CHORUSLINK),true)
+$(BIN): %: $(VDIR)%.o $(VOBJS)
+ $(LINK.cc) -o $@.xp.o $^ -u _main -u _premain $(VLDLIBS) $(LDFLAGS)$(POSTLINK)
+ $(MERGEDIR)/dtool/mkctors $@.xp.o > $@.ct.s
+ $(CXX) -c $@.ct.s
+ $(RM) $@.ct.s
+ $(LD) $(LDOPTIONS) -e _start -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 -dn -T $(MERGEDIR)/src/act/slots/act_u.ld
+ $(RM) $@.xp.o
+ $(RM) $@.ct.o
+else
$(BIN): %: $(VDIR)%.o $(VOBJS)
$(LINK.cc) -o $@ $^ $(LDFLAGS) $(VLDLIBS) $(POSTLINK)
+endif