[openfirmware] [commit] r2343 - clients/emacs/arm clients/emacs/x86 clients/lib cpu/arm/olpc/1.75
repository service
svn at openfirmware.info
Tue Jul 12 11:05:22 CEST 2011
Author: wmb
Date: Tue Jul 12 11:05:21 2011
New Revision: 2343
URL: http://tracker.coreboot.org/trac/openfirmware/changeset/2343
Log:
OLPC XO-1.75 trac #10997 - added emacs to XO-1.75 build.
Added:
clients/emacs/arm/
clients/emacs/arm/Makefile
clients/emacs/arm/config.h
clients/emacs/arm/emacs.lds
Modified:
clients/emacs/x86/emacs.rc
clients/lib/mem.c
cpu/arm/olpc/1.75/olpc.bth
Added: clients/emacs/arm/Makefile
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ clients/emacs/arm/Makefile Tue Jul 12 11:05:21 2011 (r2343)
@@ -0,0 +1,55 @@
+# Makefile for MicroEMACS 3.7 for use with Open Firmware.
+#
+# To make emacs, type: make emacs
+# or just: make
+#
+
+TOOLPREFIX=/usr/local/arm/bin/arm-linux-
+CC=$(TOOLPREFIX)gcc
+LD=$(TOOLPREFIX)ld
+STRIP=$(TOOLPREFIX)strip
+
+BP=../../..
+SRCDIR=..
+HLIBDIR=$(BP)/clients/lib
+LIBDIR=$(HLIBDIR)/arm
+GLIBDIR=$(dir $(shell $(CC) -print-libgcc-file-name))
+
+INCS=-I. -I$(SRCDIR) -I$(HLIBDIR)
+MODES=-g -O2 -fno-inline
+CFLAGS= $(INCS) $(MODES)
+
+LFLAGS= -T emacs.lds -N -e _start
+
+HFILES= ../estruct.h edef.h efunc.h epath.h ebind.h
+
+OFILES= ansi.o basic.o bind.o buffer.o display.o \
+ exec.o file.o fileio.o \
+ input.o isearch.o line.o lock.o main.o \
+ random.o region.o search.o spawn.o termio.o \
+ window.o word.o
+
+LIBS= $(LIBDIR)/libobp.a
+
+emacs: emacs.elf
+ @$(STRIP) $< -o $@
+
+emacs.elf: $(LIBDIR)/start.o $(OFILES) $(LIBS) Makefile emacs.lds
+ $(LD) $(LFLAGS) -o $@ $(LIBDIR)/start.o $(OFILES) $(LIBS) -L$(GLIBDIR) -lgcc
+
+ @# size $@
+ @# nm -n $@ >emacs.nm
+
+$(LIBDIR)/start.o: $(LIBDIR)/start.s
+ (cd $(LIBDIR); make start.o)
+
+$(LIBDIR)/libobp.a: $(HLIBDIR)/lib.c
+ (cd $(LIBDIR); make libobp.a)
+
+%.o:$(SRCDIR)/%.c
+ $(CC) $(CFLAGS) -c $<
+
+main.o: $(SRCDIR)/ebind.h
+
+clean:
+ -rm -f *.o *.a emacs
Added: clients/emacs/arm/config.h
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ clients/emacs/arm/config.h Tue Jul 12 11:05:21 2011 (r2343)
@@ -0,0 +1,55 @@
+/* Machine/OS definitions */
+
+#define OFW 1 /* Open Boot Prom */
+#define AMIGA 0 /* AmigaDOS */
+#define ST520 0 /* ST520, TOS */
+#define MSDOS 0 /* MS-DOS */
+#define V7 0 /* V7 UN*X or Coherent or BSD4.2*/
+#define BSD 0 /* UNIX BSD 4.2 and ULTRIX */
+#define USG 0 /* UNIX system V */
+#define VMS 0 /* VAX/VMS */
+#define CPM 0 /* CP/M-86 */
+
+/* Compiler definitions */
+#define GCC 1 /* Gnu C Compiler */
+#define MWC86 0 /* marc williams compiler */
+#define LATTICE 0 /* either lattice compiler */
+#define LAT2 0 /* Lattice 2.15 */
+#define LAT3 0 /* Lattice 3.0 */
+#define AZTEC 0 /* Aztec C 3.20e */
+#define MSC 0 /* MicroSoft C compile version 3 */
+
+/* Profiling options */
+#define APROF 0 /* turn Aztec C profiling on? */
+#define NBUCK 100 /* number of buckets to profile */
+
+/* Special keyboard definitions */
+
+#define WANGPC 0 /* WangPC - mostly escape sequences */
+
+/* Terminal Output definitions */
+
+#define ANSI 1 /* ansi escape sequences */
+#define HP150 0 /* HP150 screen driver */
+#define VMSVT 0 /* various VMS terminal entries */
+#define VT52 0 /* VT52 terminal (Zenith). */
+#define VT100 0 /* Handle VT100 style keypad. */
+#define LK201 0 /* Handle LK201 style keypad. */
+#define RAINBOW 0 /* Use Rainbow fast video. */
+#define TERMCAP 0 /* Use TERMCAP */
+#define IBMPC 0 /* IBM-PC specific driver */
+#define DG10 0 /* Data General system/10 */
+
+/* Configuration options */
+
+#define CVMVAS 1 /* arguments to page forward/back in pages */
+#define NFWORD 0 /* forward word jumps to begining of word */
+#define CLRMSG 0 /* space clears the message line with no insert */
+#define TYPEAH 1 /* type ahead causes update to be skipped */
+#define FILOCK 0 /* file locking under unix BSD 4.2 */
+#define REVSTA 0 /* Status line appears in reverse video */
+#define COLOR 1 /* color commands and windows */
+#define ACMODE 1 /* auto CMODE on .C and .H files */
+#define CFENCE 1 /* fench matching in CMODE */
+#define ISRCH 1 /* Incremental searches like ITS EMACS */
+#define WORDPRO 1 /* Advanced word processing features */
Added: clients/emacs/arm/emacs.lds
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ clients/emacs/arm/emacs.lds Tue Jul 12 11:05:21 2011 (r2343)
@@ -0,0 +1,16 @@
+OUTPUT_FORMAT("elf32-littlearm");
+OUTPUT_ARCH(ARM);
+
+ENTRY(_start);
+SECTIONS {
+ . = 0x100000;
+ .text : {
+ *(.text)
+ }
+ .rodata : {
+ *(.rodata*)
+ }
+ .data : {
+ *(.data)
+ }
+}
Modified: clients/emacs/x86/emacs.rc
==============================================================================
--- clients/emacs/x86/emacs.rc Tue Jul 12 00:02:40 2011 (r2342)
+++ clients/emacs/x86/emacs.rc Tue Jul 12 11:05:21 2011 (r2343)
@@ -37,7 +37,7 @@
add-mode "red"
begining-of-file
2 resize-window
- insert-string " F1 Help on/off F5 Open File F6 Save File F7 Exit"
+ insert-string " F1 Help on/off F6 Open File F7 Save File F8 Exit"
newline
insert-string " Move with arrow keys, PageUp, PageDown, Home, and End"
begining-of-file
Modified: clients/lib/mem.c
==============================================================================
--- clients/lib/mem.c Tue Jul 12 00:02:40 2011 (r2342)
+++ clients/lib/mem.c Tue Jul 12 11:05:21 2011 (r2343)
@@ -15,3 +15,12 @@
while (len--)
*(cp + len) = c;
}
+
+int
+memcmp(void *s1, void *s2, int len)
+{
+ for (; len--; ++s1, ++s2)
+ if (*(unsigned char *)s1 != *(unsigned char *)s2)
+ return *(unsigned char *)s1 - *(unsigned char *)s2;
+ return 0;
+}
Modified: cpu/arm/olpc/1.75/olpc.bth
==============================================================================
--- cpu/arm/olpc/1.75/olpc.bth Tue Jul 12 00:02:40 2011 (r2342)
+++ cpu/arm/olpc/1.75/olpc.bth Tue Jul 12 11:05:21 2011 (r2343)
@@ -14,6 +14,7 @@
in: ${BP}/dev/usb2/device/serial/build/usbserial.fc
in: ${BP}/dev/usb2/device/storage/build/usbstorage.fc
in: testicons.bin
+in: ${BP}/clients/emacs/arm/emacs
build-now
fload ${BP}/cpu/arm/olpc/1.75/fw-version.fth
@@ -56,6 +57,9 @@
end-reserved
end-tim
+h# e.0000 to reserved-start
+h# f.0000 to reserved-end
+
.( --- Saving as )
" ${FW_VERSION}.rom" expand$ 2dup lower ( adr len )
2dup type cr ( adr len )
@@ -152,6 +156,9 @@
" ${BP}/cpu/x86/pc/olpc/images/settings.565" " settings.565" $add-deflated-dropin
[then]
" ec.img" " ecimage.bin" $add-deflated-dropin
+ " ${BP}/clients/emacs/x86/emacs.rc" " emacs.rc" $add-deflated-dropin
+ " ${BP}/clients/emacs/emacs.hlp" " emacs.hlp" $add-deflated-dropin
+ " ${BP}/clients/emacs/arm/emacs" " emacs" $add-deflated-dropin
.( Dropin top is ) ofd @ fsize .x cr
More information about the openfirmware
mailing list