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]

Re: [PATCH] RDOS support for newlib


Leif Ekblad wrote:
Jeff:

1. Files from the top-level directory require special approval since
   these files are shared with other projects.  See the
   top-level MAINTAINERS file for details on which mailing
   lists to send various patches to.


I'll deal with those later.

2. You have patches to generated files (configure, aclocal.m4).
   You must only provide patches for the files that generate these and
   do not post the generated diffs.


Removed

4. You must submit the initial patch for your new files.  You may
   request to be the maintainer of said files once they are
   approved and to check-in patches without prior permission, but
   that right is never given to anyone sight-unseen and may
   require a few patches to build up a trust factor.


OK. I enclose rdos.tar.bz2, which contains the current versions
of these files.


Leif,


I have some issues/questions regarding your rdos directory files.

  1. You have licensed rdos.s under the GPL not the LGPL.  This is not
     allowed.  If you relicence the file and send it back to me, I will
     replace it.

  2. You have licensed syscall stubs with your copyright and the LGPL.
     The code for these stubs is trivial and already exists in numerous
     places, including newlib docs.  I recommend simply leaving the
     licensing out of these files.  For the files where you have
     rdos-specific code (e.g. close.c/read.c/write.c), the license you
     have is appropriate.

  3. You did not have a Makefile.am.  I added one in (attached) and
     generated Makefile.in from it.

  4. You have an acconfig.h file and a config.h.in, plus you have a
     custom configure.in.  You never use any of the AC_DEFINED variables
     in your code.  You should not have supplied a config.h as this
     file should be generated at configuration time in the build
     directory.  Running autoheader also gave me a different
     config.h.in file than you provided.  A simpler
     configure.in is used by most libc/sys directories.  Is there
     any particular reason you needed the configure.in
     you provided and config.h support?

I have tar'd up a version of the directory after a number of changes
including a simpler configure.in, a Makefile.am, no acconfig.h, and a stub config.h for future usage (e.g. sys/linux has a hard-coded config.h it uses).


Please confirm this still builds for you and inform me of any issues/questions you have with my changes. If you have no issues with the changes and it builds fine, supply me with a new rdos.s and I can check the initial version of the code in.

-- Jeff J.

New changelog:

2006-01-21 Leif Ekblad <leif@rdos.net>

* configure.host: RDOS support added
* libc/include/sys/config.h: Reentrancy should be a function in RDOS
* libc/sys/rdos: RDOS target directory added

Index newlib: configure.host
===============================================================================


diff -r -pu org/newlib-1.14/newlib/configure.host new/newlib-1.14/newlib/configure.host
--- org/newlib-1.14/newlib/configure.host 2005-12-12 12:25:07.000000000 +0100
+++ new/newlib-1.14/newlib/configure.host 2006-01-16 14:01:57.000000000 +0100
@@ -362,6 +362,10 @@ case "${host}" in
h8500-*-elf*)
sys_dir=h8500hms
;;
+ i[34567]86-*-rdos*)
+ sys_dir=rdos
+ newlib_cflags="${newlib_cflags} -DMISSING_SYSCALL_NAMES"
+ ;;
i[34567]86-*-sco*)
sys_dir=sysvi386
unix_dir=unix



Index newlib/libc/include/sys: config.h
===============================================================================


diff -r -pu org/newlib-1.14/newlib/libc/include/sys/config.h new/newlib-1.14/newlib/libc/include/sys/config.h
--- org/newlib-1.14/newlib/libc/include/sys/config.h 2005-08-10 22:35:13.000000000 +0200
+++ new/newlib-1.14/newlib/libc/include/sys/config.h 2006-01-16 11:21:46.000000000 +0100
@@ -59,7 +59,7 @@
/* in other words, go32 */
#define _FLOAT_RET double
#endif
-#ifdef __linux__
+#if defined(__linux__) || defined(__RDOS__)
/* we want the reentrancy structure to be returned by a function */
#define __DYNAMIC_REENT__
#define HAVE_GETDATE


Leif Ekblad
http://www.rdos.net/rdos

Attachment: rdos.new.tar.bz2
Description: BZip2 compressed data


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