summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRalf Corsepius <ralf.corsepius@rtems.org>2009-10-15 04:15:26 +0000
committerRalf Corsepius <ralf.corsepius@rtems.org>2009-10-15 04:15:26 +0000
commit583a4dccae666af264711fd1398f208a3d9ea4b5 (patch)
treee6f68c4fe59ee7db5337137ae6c7245ce005f039
parent2009-10-15 Ralf Corsépius <ralf.corsepius@rtems.org> (diff)
downloadrtems-583a4dccae666af264711fd1398f208a3d9ea4b5.tar.bz2
2009-10-15 Ralf Corsépius <ralf.corsepius@rtems.org>
* make/custom/pc386.cfg: New (relocated from /make/custom). * make/custom/pc386dx.cfg: New (relocated from /make/custom). * make/custom/pc486.cfg: New (relocated from /make/custom). * make/custom/pc586.cfg: New (relocated from /make/custom). * make/custom/pc686.cfg: New (relocated from /make/custom).
-rw-r--r--c/src/lib/libbsp/i386/pc386/ChangeLog8
-rw-r--r--c/src/lib/libbsp/i386/pc386/make/custom/pc386.cfg62
-rw-r--r--c/src/lib/libbsp/i386/pc386/make/custom/pc386dx.cfg14
-rw-r--r--c/src/lib/libbsp/i386/pc386/make/custom/pc486.cfg14
-rw-r--r--c/src/lib/libbsp/i386/pc386/make/custom/pc586.cfg14
-rw-r--r--c/src/lib/libbsp/i386/pc386/make/custom/pc686.cfg14
6 files changed, 126 insertions, 0 deletions
diff --git a/c/src/lib/libbsp/i386/pc386/ChangeLog b/c/src/lib/libbsp/i386/pc386/ChangeLog
index 3855622872..fa247da788 100644
--- a/c/src/lib/libbsp/i386/pc386/ChangeLog
+++ b/c/src/lib/libbsp/i386/pc386/ChangeLog
@@ -1,3 +1,11 @@
+2009-10-15 Ralf Corsépius <ralf.corsepius@rtems.org>
+
+ * make/custom/pc386.cfg: New (relocated from /make/custom).
+ * make/custom/pc386dx.cfg: New (relocated from /make/custom).
+ * make/custom/pc486.cfg: New (relocated from /make/custom).
+ * make/custom/pc586.cfg: New (relocated from /make/custom).
+ * make/custom/pc686.cfg: New (relocated from /make/custom).
+
2009-10-10 Sebastian Huber <sebastian.huber@embedded-brains.de>
* Makefile.am: Added interrupt server.
diff --git a/c/src/lib/libbsp/i386/pc386/make/custom/pc386.cfg b/c/src/lib/libbsp/i386/pc386/make/custom/pc386.cfg
new file mode 100644
index 0000000000..847f218fe2
--- /dev/null
+++ b/c/src/lib/libbsp/i386/pc386/make/custom/pc386.cfg
@@ -0,0 +1,62 @@
+#
+# Config file for the PC 386 BSP
+#
+# $Id$
+#
+
+include $(RTEMS_ROOT)/make/custom/default.cfg
+
+RTEMS_CPU=i386
+ifeq ($(RTEMS_CPU_MODEL),)
+RTEMS_CPU_MODEL=i386_fp
+endif
+
+# This is the actual bsp directory used during the build process.
+RTEMS_BSP_FAMILY=pc386
+
+# This contains the compiler options necessary to select the CPU model
+# and (hopefully) optimize for it.
+#
+# NOTE: CPU_CFLAGS is set by pc386 variants.
+ifeq ($(CPU_CFLAGS),)
+ CPU_CFLAGS = -mtune=i386
+endif
+
+# optimize flag: typically -O2
+CFLAGS_OPTIMIZE_V = -O2 -g
+
+# Here is the rule to actually build a $(ARCH)/foo.exe
+# It also builds $(ARCH)/foo.sr and $(ARCH)/foo.nm
+# Usage ref: src/tests/sptest/sp1/Makefile
+
+#+--------------------------------------------------------------------------+
+#| Set the value of RELOCADDR to the address where you want your image to
+#| load. If you'll be using GRUB to load the images it will have to be >=
+#| 0x100000 (1024K). If you are using NetBoot to load the images it can be
+#| >= 0x10000 (64K) AND <= 0x97C00 (607K) OR >= 0x100000 (1024K). The memory
+#| top is of course another limit. Make sure there is enough space before the
+#| upper memory limits for the image and the memory allocated by it to fit.
+#| Make sure the value you choose is aligned to 4 bytes.
+#+--------------------------------------------------------------------------+
+ RELOCADDR=0x00100000
+
+START16FILE=$(PROJECT_RELEASE)/lib/start16$(LIB_VARIANT).bin
+START16ADDR=0x00097C00
+HEADERADDR=0x00097E00
+
+LDFLAGS += -Wl,-Ttext,$(RELOCADDR)
+
+define bsp-post-link
+ $(default-bsp-post-link)
+ $(OBJCOPY) -O elf32-i386 \
+ --remove-section=.comment \
+ --remove-section=.note \
+ --strip-unneeded $(basename $@).exe $(basename $@).nxe
+ $(OBJCOPY) -O binary $(basename $@).nxe $(basename $@).bin
+ $(PROJECT_TOOLS)/bin2boot -v $(basename $@)$(DOWNEXT) $(HEADERADDR)\
+ $(START16FILE) $(START16ADDR) 0 $(basename $@).bin $(RELOCADDR) 0
+ rm -f $(basename $@).nxe
+endef
+
+# BSP-specific tools
+BIN2BOOT=$(PROJECT_TOOLS)/bin2boot
diff --git a/c/src/lib/libbsp/i386/pc386/make/custom/pc386dx.cfg b/c/src/lib/libbsp/i386/pc386/make/custom/pc386dx.cfg
new file mode 100644
index 0000000000..df0fc15d10
--- /dev/null
+++ b/c/src/lib/libbsp/i386/pc386/make/custom/pc386dx.cfg
@@ -0,0 +1,14 @@
+#
+# Configuration file for a PC using an i386 Class CPU w/o FPU
+#
+# $Id$
+#
+
+RTEMS_CPU_MODEL=i386dx
+
+# This contains the compiler options necessary to select the CPU model
+# and (hopefully) optimize for it.
+CPU_CFLAGS = -mtune=i386 -msoft-float -mno-fp-ret-in-387
+
+include $(RTEMS_ROOT)/make/custom/pc386.cfg
+
diff --git a/c/src/lib/libbsp/i386/pc386/make/custom/pc486.cfg b/c/src/lib/libbsp/i386/pc386/make/custom/pc486.cfg
new file mode 100644
index 0000000000..e62187b180
--- /dev/null
+++ b/c/src/lib/libbsp/i386/pc386/make/custom/pc486.cfg
@@ -0,0 +1,14 @@
+#
+# Configuration file for a PC using an i486DX Class CPU
+#
+# $Id$
+#
+
+RTEMS_CPU_MODEL=i486dx
+
+# This contains the compiler options necessary to select the CPU model
+# and (hopefully) optimize for it.
+CPU_CFLAGS = -mtune=i486
+
+include $(RTEMS_ROOT)/make/custom/pc386.cfg
+
diff --git a/c/src/lib/libbsp/i386/pc386/make/custom/pc586.cfg b/c/src/lib/libbsp/i386/pc386/make/custom/pc586.cfg
new file mode 100644
index 0000000000..0959a4c3c0
--- /dev/null
+++ b/c/src/lib/libbsp/i386/pc386/make/custom/pc586.cfg
@@ -0,0 +1,14 @@
+#
+# Configuration file for a PC using a Pentium Class CPU
+#
+# $Id$
+#
+
+RTEMS_CPU_MODEL=pentium
+
+# This contains the compiler options necessary to select the CPU model
+# and (hopefully) optimize for it.
+CPU_CFLAGS = -mtune=pentium
+
+include $(RTEMS_ROOT)/make/custom/pc386.cfg
+
diff --git a/c/src/lib/libbsp/i386/pc386/make/custom/pc686.cfg b/c/src/lib/libbsp/i386/pc386/make/custom/pc686.cfg
new file mode 100644
index 0000000000..7c0d85d22a
--- /dev/null
+++ b/c/src/lib/libbsp/i386/pc386/make/custom/pc686.cfg
@@ -0,0 +1,14 @@
+#
+# Configuration file for a PC using a PentiumPro Class CPU
+#
+# $Id$
+#
+
+RTEMS_CPU_MODEL=pentiumpro
+
+# This contains the compiler options necessary to select the CPU model
+# and (hopefully) optimize for it.
+CPU_CFLAGS = -mtune=pentiumpro
+
+include $(RTEMS_ROOT)/make/custom/pc386.cfg
+