This is the mail archive of the newlib@sourceware.org mailing list for the newlib project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[RFC] X86_64-elf port (part 1)


Here is part 1 of a newlib port for a x86_64-elf target. As I am
totally new to automake, autoconf and other relevant tools I just
'hacked' the files that are normally generated by these tools. I am
sure someone can either tell me how to invoke the appropriate tools or
do it himself.

Since I don't have write access to the repository, perhaps someone can
commit this for me. After general approval that is.

Part 2 with the libc/machine/x86_64 directory will follow.

Regards,

Hans Kester


Index: src/newlib/ChangeLog
===================================================================
RCS file: /cvs/src/src/newlib/ChangeLog,v
retrieving revision 1.1071
diff -u -r1.1071 ChangeLog
--- src/newlib/ChangeLog        3 Aug 2007 21:03:40 -0000       1.1071
+++ src/newlib/ChangeLog        10 Aug 2007 13:24:27 -0000
@@ -1,3 +1,17 @@
+2007-08-10  Hans Kester  <hans.kester@ellips.nl>
+
+       * configure.host: Add support for x86_64.
+       * libc/include/machine/ieeefp.h: Define __IEEE_LITTLE_ENDIAN for x86_64.

+       * libc/include/machine/setjmp.h: Define _JBTYPE and _JBLEN for x86_64.
+       * libc/machine/x86_64/aclocal.m4: Generate.
+       * libc/machine/x86_64/configure.in: New.
+       * libc/machine/x86_64/configure: Generate.
+       * libc/machine/x86_64/Makefile.am: New.
+       * libc/machine/x86_64/Makefile.in: Generate.
+       * libc/machine/x86_64/setjmp.S: New.
+       * libc/machine/configure.in: Add x86_64 support.
+       * libc/machine/configure: Generate.
+
 2007-08-03  Ralf Corsepius  <ralf.corsepius@rtems.org>

        * libc/include/tar.h: New.


Index: src/newlib/configure.host
===================================================================
RCS file: /cvs/src/src/newlib/configure.host,v
retrieving revision 1.94
diff -u -r1.94 configure.host
--- src/newlib/configure.host   11 May 2007 20:09:00 -0000      1.94
+++ src/newlib/configure.host   10 Aug 2007 13:13:03 -0000
@@ -156,6 +156,9 @@
                ;;
        esac
        ;;
+  x86_64)
+       machine_dir=x86_64
+       ;;
   ia64*)
        ;;
   iq2000)


Index: src/newlib/libc/include/machine/ieeefp.h
===================================================================
RCS file: /cvs/src/src/newlib/libc/include/machine/ieeefp.h,v
retrieving revision 1.31
diff -u -r1.31 ieeefp.h
--- src/newlib/libc/include/machine/ieeefp.h    26 Apr 2007 19:23:37 -00001.31
+++ src/newlib/libc/include/machine/ieeefp.h    10 Aug 2007 13:13:04 -0000
@@ -306,6 +306,10 @@
 #define __IEEE_LITTLE_ENDIAN
 #endif

+#ifdef __x86_64__
+#define __IEEE_LITTLE_ENDIAN
+#endif
+
 #ifndef __IEEE_BIG_ENDIAN
 #ifndef __IEEE_LITTLE_ENDIAN
 #error Endianess not declared!!


Index: src/newlib/libc/include/machine/setjmp.h
===================================================================
RCS file: /cvs/src/src/newlib/libc/include/machine/setjmp.h,v
retrieving revision 1.32
diff -u -r1.32 setjmp.h
--- src/newlib/libc/include/machine/setjmp.h    18 Dec 2006 16:48:03 -00001.32
+++ src/newlib/libc/include/machine/setjmp.h    10 Aug 2007 13:13:04 -0000
@@ -67,6 +67,11 @@
 #endif
 #endif

+#ifdef __x86_64_
+#define _JBTYPE long long
+#define _JBLEN  9
+#endif
+
 #ifdef __i960__
 #define _JBLEN 35
 #endif



Index: src/newlib/libc/machine/configure.in
===================================================================
RCS file: /cvs/src/src/newlib/libc/machine/configure.in,v
retrieving revision 1.7
diff -u -r1.7 configure.in
--- src/newlib/libc/machine/configure.in        24 May 2007 17:33:31 -00001.7
+++ src/newlib/libc/machine/configure.in        10 Aug 2007 13:13:08 -0000
@@ -35,6 +35,7 @@
        h8500) AC_CONFIG_SUBDIRS(h8500) ;;
        hppa) AC_CONFIG_SUBDIRS(hppa) ;;
        i386) AC_CONFIG_SUBDIRS(i386) ;;
+       x86_64) AC_CONFIG_SUBDIRS(x86_64) ;;
        i960) AC_CONFIG_SUBDIRS(i960) ;;
        iq2000) AC_CONFIG_SUBDIRS(iq2000) ;;
        m32c) AC_CONFIG_SUBDIRS(m32c) ;;


Index: src/newlib/libc/machine/configure
===================================================================
RCS file: /cvs/src/src/newlib/libc/machine/configure,v
retrieving revision 1.28
diff -u -r1.28 configure
--- src/newlib/libc/machine/configure   24 May 2007 17:33:31 -0000      1.28
+++ src/newlib/libc/machine/configure   10 Aug 2007 13:13:08 -0000
@@ -471,6 +471,7 @@
 ac_subdirs_all="$ac_subdirs_all h8500"
 ac_subdirs_all="$ac_subdirs_all hppa"
 ac_subdirs_all="$ac_subdirs_all i386"
+ac_subdirs_all="$ac_subdirs_all x86_64"
 ac_subdirs_all="$ac_subdirs_all i960"
 ac_subdirs_all="$ac_subdirs_all iq2000"
 ac_subdirs_all="$ac_subdirs_all m32c"
@@ -10737,6 +10738,10 @@

 subdirs="$subdirs i386"
  ;;
+       x86_64)
+
+subdirs="$subdirs x86_64"
+ ;;
        i960)

 subdirs="$subdirs i960"


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]