Welcome to mirror list, hosted at ThFree Co, Russian Federation.

cygwin.com/git/newlib-cygwin.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRanjith Kumaran <ranjith@cygnus.com>2000-03-18 01:48:54 +0300
committerRanjith Kumaran <ranjith@cygnus.com>2000-03-18 01:48:54 +0300
commit03261851a10dd2d6900a0a00a7515a0a46fb5d76 (patch)
tree7c22ac6cbbc99fd5cd1b5426853be8d4fd7bfcf1 /libgloss/config
parentfae4c299f14fc23e2829c8656992eba21f79242a (diff)
20000317 sourceware import
Diffstat (limited to 'libgloss/config')
-rw-r--r--libgloss/config/default.mh31
-rw-r--r--libgloss/config/default.mt33
-rw-r--r--libgloss/config/dos.mh57
-rw-r--r--libgloss/config/mips.mt31
-rw-r--r--libgloss/config/mn10200.mt3
-rw-r--r--libgloss/config/mn10300.mt3
-rw-r--r--libgloss/config/ppc.mh35
7 files changed, 193 insertions, 0 deletions
diff --git a/libgloss/config/default.mh b/libgloss/config/default.mh
new file mode 100644
index 000000000..915c4f6f9
--- /dev/null
+++ b/libgloss/config/default.mh
@@ -0,0 +1,31 @@
+NEWLIB_CFLAGS = `if [ -d ${objroot}/newlib ]; then echo -I${objroot}/newlib/targ-include -I${srcroot}/newlib/libc/include; fi`
+NEWLIB_LDFLAGS = `if [ -d ${objroot}/newlib ]; then echo -B${objroot}/newlib/ -L${objroot}/newlib/; fi`
+
+INCLUDES = -I. -I$(srcdir)/..
+# Note that when building the library, ${MULTILIB} is not the way multilib
+# options are passed; they're passed in $(CFLAGS).
+CFLAGS_FOR_TARGET = -O2 -g ${MULTILIB} ${INCLUDES} ${NEWLIB_CFLAGS}
+LDFLAGS_FOR_TARGET = ${MULTILIB} ${NEWLIB_LDFLAGS}
+AR_FLAGS = qc
+
+.c.o:
+ $(CC) $(CFLAGS_FOR_TARGET) -O2 $(INCLUDES) -c $(CFLAGS) $<
+
+.C.o:
+ $(CC) $(CFLAGS_FOR_TARGET) -O2 $(INCLUDES) -c $(CFLAGS) $<
+.s.o:
+ $(AS) $(ASFLAGS_FOR_TARGET) $(INCLUDES) $(ASFLAGS) -o $*.o $<
+
+#
+# GCC knows to run the preprocessor on .S files before it assembles them.
+#
+.S.o:
+ $(CC) $(CFLAGS_FOR_TARGET) $(INCLUDES) $(CFLAGS) -c $<
+
+#
+# this is a bogus target that'll produce an assembler from the
+# C source with the right compiler options. this is so we can
+# track down code generation or debug symbol bugs.
+#
+.c.s:
+ $(CC) $(CFLAGS_FOR_TARGET) -S $(INCLUDES) $(CFLAGS) $<
diff --git a/libgloss/config/default.mt b/libgloss/config/default.mt
new file mode 100644
index 000000000..d5872474e
--- /dev/null
+++ b/libgloss/config/default.mt
@@ -0,0 +1,33 @@
+#
+# these are the minimum required stubs to support newlib
+#
+close.o: ${srcdir}/../close.c
+ $(CC) $(CFLAGS_FOR_TARGET) -O2 $(INCLUDES) -c $(CFLAGS) $?
+fstat.o: ${srcdir}/../fstat.c
+ $(CC) $(CFLAGS_FOR_TARGET) -O2 $(INCLUDES) -c $(CFLAGS) $?
+getpid.o: ${srcdir}/../getpid.c
+ $(CC) $(CFLAGS_FOR_TARGET) -O2 $(INCLUDES) -c $(CFLAGS) $?
+isatty.o: ${srcdir}/../isatty.c
+ $(CC) $(CFLAGS_FOR_TARGET) -O2 $(INCLUDES) -c $(CFLAGS) $?
+kill.o: ${srcdir}/../kill.c
+ $(CC) $(CFLAGS_FOR_TARGET) -O2 $(INCLUDES) -c $(CFLAGS) $?
+lseek.o: ${srcdir}/../lseek.c
+ $(CC) $(CFLAGS_FOR_TARGET) -O2 $(INCLUDES) -c $(CFLAGS) $?
+open.o: ${srcdir}/../open.c
+ $(CC) $(CFLAGS_FOR_TARGET) -O2 $(INCLUDES) -c $(CFLAGS) $?
+print.o: ${srcdir}/../print.c
+ $(CC) $(CFLAGS_FOR_TARGET) -O2 $(INCLUDES) -c $(CFLAGS) $?
+putnum.o: ${srcdir}/../putnum.c
+ $(CC) $(CFLAGS_FOR_TARGET) -O2 $(INCLUDES) -c $(CFLAGS) $?
+read.o: ${srcdir}/../read.c
+ $(CC) $(CFLAGS_FOR_TARGET) -O2 $(INCLUDES) -c $(CFLAGS) $?
+sbrk.o: ${srcdir}/../sbrk.c
+ $(CC) $(CFLAGS_FOR_TARGET) -O2 $(INCLUDES) -c $(CFLAGS) $?
+stat.o: ${srcdir}/../stat.c
+ $(CC) $(CFLAGS_FOR_TARGET) -O2 $(INCLUDES) -c $(CFLAGS) $?
+unlink.o: ${srcdir}/../unlink.c
+ $(CC) $(CFLAGS_FOR_TARGET) -O2 $(INCLUDES) -c $(CFLAGS) $?
+write.o: ${srcdir}/../write.c
+ $(CC) $(CFLAGS_FOR_TARGET) -O2 $(INCLUDES) -c $(CFLAGS) $?
+debug.o: ${srcdir}/../debug.c ${srcdir}/../debug.h
+ $(CC) $(CFLAGS_FOR_TARGET) -O2 $(INCLUDES) -c $(CFLAGS) ${srcdir}/../debug.c
diff --git a/libgloss/config/dos.mh b/libgloss/config/dos.mh
new file mode 100644
index 000000000..c5874cb42
--- /dev/null
+++ b/libgloss/config/dos.mh
@@ -0,0 +1,57 @@
+NEWLIB_CFLAGS = `if [ -d ${objroot}/newlib ]; then echo -I${objroot}/newlib/targ-include -I${srcroot}/newlib/libc/include; fi`
+NEWLIB_LDFLAGS = `if [ -d ${objroot}/newlib ]; then echo -B${objroot}/newlib/; fi`
+
+INCLUDES = -I.
+# Note that when building the library, ${MULTILIB} is not the way multilib
+# options are passed; they're passed in $(CFLAGS).
+CFLAGS_FOR_TARGET = -O2 -g ${MULTILIB} ${INCLUDES} ${NEWLIB_CFLAGS}
+LDFLAGS_FOR_TARGET = ${MULTILIB} ${NEWLIB_LDFLAGS}
+ARFLAGS_FOR_TARGET = qc
+
+# find the tools used to build libgloss. As this is a DOS build in a
+# 3way cross, we have to specify the name as it lives prebuilt in Unix
+# land. The freshly built tools are for the wrong architecture.
+CC_FOR_TARGET = `t='$(program_transform_name)'; echo gcc | sed -e $$t`
+
+AS_FOR_TARGET = `t='$(program_transform_name)'; echo as | sed -e $$t`
+
+AR_FOR_TARGET = `t='$(program_transform_name)'; echo ar | sed -e $$t`
+
+LD_FOR_TARGET = `t='$(program_transform_name)'; echo ld | sed -e $$t`
+
+RANLIB_FOR_TARGET = `t='$(program_transform_name)'; echo ranlib | sed -e $$t`
+
+OBJDUMP_FOR_TARGET = `t='$(program_transform_name)'; echo objdump | sed -e $$t`
+
+OBJCOPY_FOR_TARGET = `t='$(program_transform_name)'; echo objcopy | sed -e $$t`
+
+
+# Using CFLAGS here may be confusing if the user has given a special
+# CFLAGS intended for use on the host, since we are passing it to the
+# cross-compiler; I'm not sure what to do about this. INCLUDES is
+# from the top level Makefile.
+# FIXME: But isn't CFLAGS what is used to pass multilib options when
+# building the library?
+
+.c.o:
+ rootme=`pwd` ; \
+ echo CC_FOR_TARGET is ${CC_FOR_TARGET} ; \
+ $(CC_FOR_TARGET) $(CFLAGS_FOR_TARGET) $(INCLUDES) -c $<
+
+.c.s:
+ rootme=`pwd` ; \
+ echo CC_FOR_TARGET is ${CC_FOR_TARGET} ; \
+ $(CC_FOR_TARGET) $(CFLAGS_FOR_TARGET) -S $(INCLUDES) $<
+
+.S.o:
+ rootme=`pwd` ; \
+ echo CC_FOR_TARGET is ${CC_FOR_TARGET} ; \
+ $(CC_FOR_TARGET) $(CFLAGS_FOR_TARGET) $(INCLUDES) -c $<
+
+.s.o:
+ rootme=`pwd` ; \
+ echo AS_FOR_TARGET is ${AS_FOR_TARGET} ; \
+ $(AS_FOR_TARGET) $(ASFLAGS_FOR_TARGET) $(INCLUDES) -o $*.o $<
+
+
+
diff --git a/libgloss/config/mips.mt b/libgloss/config/mips.mt
new file mode 100644
index 000000000..6ae84b44f
--- /dev/null
+++ b/libgloss/config/mips.mt
@@ -0,0 +1,31 @@
+#
+# These are the minimum required stubs to support newlib
+# for embedded MIPS targets. Note that although read.o and write.o
+# are mentioned here, they are not used for all targets.
+#
+close.o: ${srcdir}/../close.c
+ $(CC) $(CFLAGS_FOR_TARGET) -O2 $(INCLUDES) -c $(CFLAGS) $?
+fstat.o: ${srcdir}/../fstat.c
+ $(CC) $(CFLAGS_FOR_TARGET) -O2 $(INCLUDES) -c $(CFLAGS) $?
+getpid.o: ${srcdir}/../getpid.c
+ $(CC) $(CFLAGS_FOR_TARGET) -O2 $(INCLUDES) -c $(CFLAGS) $?
+isatty.o: ${srcdir}/../isatty.c
+ $(CC) $(CFLAGS_FOR_TARGET) -O2 $(INCLUDES) -c $(CFLAGS) $?
+kill.o: ${srcdir}/../kill.c
+ $(CC) $(CFLAGS_FOR_TARGET) -O2 $(INCLUDES) -c $(CFLAGS) $?
+lseek.o: ${srcdir}/../lseek.c
+ $(CC) $(CFLAGS_FOR_TARGET) -O2 $(INCLUDES) -c $(CFLAGS) $?
+open.o: ${srcdir}/../open.c
+ $(CC) $(CFLAGS_FOR_TARGET) -O2 $(INCLUDES) -c $(CFLAGS) $?
+print.o: ${srcdir}/../print.c
+ $(CC) $(CFLAGS_FOR_TARGET) -O2 $(INCLUDES) -c $(CFLAGS) $?
+putnum.o: ${srcdir}/../putnum.c
+ $(CC) $(CFLAGS_FOR_TARGET) -O2 $(INCLUDES) -c $(CFLAGS) $?
+read.o: ${srcdir}/../read.c
+ $(CC) $(CFLAGS_FOR_TARGET) -O2 $(INCLUDES) -c $(CFLAGS) $?
+stat.o: ${srcdir}/../stat.c
+ $(CC) $(CFLAGS_FOR_TARGET) -O2 $(INCLUDES) -c $(CFLAGS) $?
+unlink.o: ${srcdir}/../unlink.c
+ $(CC) $(CFLAGS_FOR_TARGET) -O2 $(INCLUDES) -c $(CFLAGS) $?
+write.o: ${srcdir}/../write.c
+ $(CC) $(CFLAGS_FOR_TARGET) -O2 $(INCLUDES) -c $(CFLAGS) $?
diff --git a/libgloss/config/mn10200.mt b/libgloss/config/mn10200.mt
new file mode 100644
index 000000000..cf565c1de
--- /dev/null
+++ b/libgloss/config/mn10200.mt
@@ -0,0 +1,3 @@
+# Dummy target-specific Makefile fragment for MN10200. We can't
+# use default.mt because it refers to generic source files whose
+# names conflict with the MN10200-specific sources.
diff --git a/libgloss/config/mn10300.mt b/libgloss/config/mn10300.mt
new file mode 100644
index 000000000..6b4c522c1
--- /dev/null
+++ b/libgloss/config/mn10300.mt
@@ -0,0 +1,3 @@
+# Dummy target-specific Makefile fragment for MN10300. We can't
+# use default.mt because it refers to generic source files whose
+# names conflict with the MN10300-specific sources.
diff --git a/libgloss/config/ppc.mh b/libgloss/config/ppc.mh
new file mode 100644
index 000000000..b5b8c30d2
--- /dev/null
+++ b/libgloss/config/ppc.mh
@@ -0,0 +1,35 @@
+NEWLIB_CFLAGS = `if [ -d ${objroot}/newlib ]; then echo -I${objroot}/newlib/targ-include -I${srcroot}/newlib/libc/include; fi`
+NEWLIB_LDFLAGS = `if [ -d ${objroot}/newlib ]; then echo -B${objroot}/newlib/ -L${objroot}/newlib/; fi`
+
+# For the PowerPC, always add -mrelocatable-lib -mno-eabi. These are set for the
+# multilibs, but are ignored when building the toplevel directory.
+CFLAGS_MRELOCATABLE = -mrelocatable-lib -mno-eabi
+
+INCLUDES = -I. -I$(srcdir)/..
+# Note that when building the library, ${MULTILIB} is not the way multilib
+# options are passed; they're passed in $(CFLAGS).
+CFLAGS_FOR_TARGET = -O2 -g ${MULTILIB} ${INCLUDES} ${NEWLIB_CFLAGS}
+LDFLAGS_FOR_TARGET = ${MULTILIB} ${NEWLIB_LDFLAGS}
+AR_FLAGS = qc
+
+.c.o:
+ $(CC) $(CFLAGS_FOR_TARGET) $(CFLAGS_MRELOCATABLE) -O2 $(INCLUDES) -c $(CFLAGS) $<
+
+.C.o:
+ $(CC) $(CFLAGS_FOR_TARGET) $(CFLAGS_MRELOCATABLE) -O2 $(INCLUDES) -c $(CFLAGS) $<
+.s.o:
+ $(AS) $(ASFLAGS_FOR_TARGET) $(INCLUDES) $(ASFLAGS) -o $*.o $<
+
+#
+# GCC knows to run the preprocessor on .S files before it assembles them.
+#
+.S.o:
+ $(CC) $(CFLAGS_FOR_TARGET) $(CFLAGS_MRELOCATABLE) $(INCLUDES) $(CFLAGS) -c $<
+
+#
+# this is a bogus target that'll produce an assembler from the
+# C source with the right compiler options. this is so we can
+# track down code generation or debug symbol bugs.
+#
+.c.s:
+ $(CC) $(CFLAGS_FOR_TARGET) $(CFLAGS_MRELOCATABLE) -S $(INCLUDES) $(CFLAGS) $<