🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: gnu.emacs.bug
Article #87707

Emacs 19.25 ported for arm-acorn-riscix1.2

#87707
From: uk1o
Date: Sat, 03 Sep 1994 00:09
1141 lines
35512 bytes
Hello!

Here are cdiffs for emacs 19.25 on Acorn R260 machines under RISC iX 1.2
(Acorn's proprietary BSD4.3 derivative).

Some caveats are described in the etc/MACHINES file (for which a diff file
is found below), and in PROBLEMS there is an entry for those who didn't
read the caveats in the etc/MACHINES file.

New files are contained as diffs between empty *.orig files and them.
These are src/m/arm.h and src/s/riscix1-2.h, as well as the new
directory acorn-cc with cc and GENERIC.R in it.

Even though the date of the .orig file is newer than the original date
in the distribution, they are the same, so the diffs should apply without
problems to the 19.25 distribution.

I explicitly donate my new files and the changes in existing files to
the Free Software Foundation, so they are allowed to change the
copyright notice to resemble a copyright by them. (Though I won't at
all deny you the 'permission' to put my name and E-Mail address somewhere
:-) All files are GPL'd (version 2 or later), even if such comments might
bring problems with them (acorn-cc/cc).

You may state my E-Mail-address for questions, problems or bug-reports
relating my port.

And finally, many thanks for all the fine software, which we all may
enjoy freely.

Regards, Felix Schroeter.

PS: Just after I have prepared this message, my nice emacs port
dumped core. Seems that it isn't completely bug free yet, but better
than nothing. :-)

*** emacs-19.25/src/m/arm.h.orig	Mon Aug 29 10:43:49 1994
--- emacs-19.25/src/m/arm.h	Mon Aug 29 10:43:43 1994
***************
*** 0 ****
--- 1,137 ----
+ /* machine description file for Acorn's ARM-machines
+    Copyright (C) 1994 by Felix Schroeter <uk1o@rz.uni-karlsruhe.de>
+ 
+ This file is (not yet) part of GNU Emacs.
+ 
+ GNU Emacs is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2, or (at your option)
+ any later version.
+ 
+ GNU Emacs is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ GNU General Public License for more details.
+ 
+ You should have received a copy of the GNU General Public License
+ along with GNU Emacs; see the file COPYING.  If not, write to
+ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.  */
+ 
+ 
+ /* The following line tells the configuration script what sort of 
+    operating system this machine is likely to run.
+    USUAL-OPSYS="<name of system .h file here, without the s- or .h>"  */
+ 
+ #define USUAL_OPSYS "riscix1-2"
+ 
+ /* The following three symbols give information on
+  the size of various data types.  */
+ 
+ #define SHORTBITS 16		/* Number of bits in a short */
+ 
+ #define INTBITS 32		/* Number of bits in an int */
+ 
+ #define LONGBITS 32		/* Number of bits in a long */
+ 
+ /* Define BIG_ENDIAN iff lowest-numbered byte in a word
+    is the most significant byte.  */
+ 
+ #undef BIG_ENDIAN
+ 
+ /* Define NO_ARG_ARRAY if you cannot take the address of the first of a
+  * group of arguments and treat it as an array of the arguments.  */
+ 
+ #define NO_ARG_ARRAY
+ 
+ /* Define WORD_MACHINE if addresses and such have
+  * to be corrected before they can be used as byte counts.  */
+ 
+ /*#define WORD_MACHINE*/
+ 
+ /* Now define a symbol for the cpu type, if your compiler
+    does not define it automatically:
+    Ones defined so far include vax, m68000, ns16000, pyramid,
+    orion, tahoe, APOLLO and many others */
+ 
+ #define ARM3
+ 
+ /* Use type int rather than a union, to represent Lisp_Object */
+ /* This is desirable for most machines.  */
+ 
+ #define NO_UNION_TYPE
+ 
+ /* Define EXPLICIT_SIGN_EXTEND if XINT must explicitly sign-extend
+    the 24-bit bit field into an int.  In other words, if bit fields
+    are always unsigned.
+ 
+    If you use NO_UNION_TYPE, this flag does not matter.  */
+ 
+ #define EXPLICIT_SIGN_EXTEND
+ 
+ /* Data type of load average, as read out of kmem.  */
+ 
+ #define LOAD_AVE_TYPE long
+ 
+ /* Convert that into an integer that is 100 for a load average of 1.0  */
+ 
+ #ifndef FSCALE
+ #define FSCALE 256
+ #endif
+ 
+ #define LDAV_CVT(x) ((double) (x) / FSCALE)
+ 
+ /* Define CANNOT_DUMP on machines where unexec does not work.
+    Then the function dump-emacs will not be defined
+    and temacs will do (load "loadup") automatically unless told otherwise.  */
+ 
+ #undef CANNOT_DUMP
+ 
+ /* Define VIRT_ADDR_VARIES if the virtual addresses of
+    pure and impure space as loaded can vary, and even their
+    relative order cannot be relied on.
+ 
+    Otherwise Emacs assumes that text space precedes data space,
+    numerically.  */
+ 
+ #undef VIRT_ADDR_VARIES
+ 
+ /* Define C_ALLOCA if this machine does not support a true alloca
+    and the one written in C should be used instead.
+    Define HAVE_ALLOCA to say that the system provides a properly
+    working alloca function and it should be used.
+    Define neither one if an assembler-language alloca
+    in the file alloca.s should be used.  */
+ 
+ #define C_ALLOCA
+ #undef HAVE_ALLOCA
+ 
+ /* Define NO_REMAP if memory segmentation makes it not work well
+    to change the boundary between the text section and data section
+    when Emacs is dumped.  If you define this, the preloaded Lisp
+    code will not be sharable; but that's better than failing completely.  */
+ 
+ #undef NO_REMAP
+ 
+ /* Some really obscure 4.2-based systems (like Sequent DYNIX)
+  * do not support asynchronous I/O (using SIGIO) on sockets,
+  * even though it works fine on tty's.  If you have one of
+  * these systems, define the following, and then use it in
+  * config.h (or elsewhere) to decide when (not) to use SIGIO.
+  *
+  * You'd think this would go in an operating-system description file,
+  * but since it only occurs on some, but not all, BSD systems, the
+  * reasonable place to select for it is in the machine description
+  * file.
+  */
+ 
+ #undef NO_SOCK_SIGIO
+ 
+ 
+ /* After adding support for a new system, modify the large case
+    statement in the `configure' script to recognize reasonable
+    configuration names, and add a description of the system to
+    `etc/MACHINES'.
+ 
+    If you've just fixed a problem in an existing configuration file,
+    you should also check `etc/MACHINES' to make sure its descriptions
+    of known problems in that configuration should be updated.  */
*** emacs-19.25/src/s/riscix1-2.h.orig	Mon Aug 29 10:47:16 1994
--- emacs-19.25/src/s/riscix1-2.h	Mon Aug 29 10:47:03 1994
***************
*** 0 ****
--- 1,158 ----
+ /* Definitions file for GNU Emacs running on Acorn's RISC iX
+    (a 4.3 BSD derivative)
+    Copyright (C) 1994 Felix Schroeter <uk1o@rz.uni-karlsruhe.de>
+ 
+ This file is (not yet) part of GNU Emacs.
+ 
+ GNU Emacs is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2, or (at your option)
+ any later version.
+ 
+ GNU Emacs is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ GNU General Public License for more details.
+ 
+ You should have received a copy of the GNU General Public License
+ along with GNU Emacs; see the file COPYING.  If not, write to
+ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.  */
+ 
+ 
+ /*
+  *	Define symbols to identify the version of Unix this is.
+  *	Define all the symbols that apply correctly.
+  */
+ 
+ /* We give these symbols the numeric values found in <sys/param.h> to
+    avoid warnings about redefined macros.  */
+ #ifndef BSD4_3
+ #define BSD4_3 1
+ #endif /* BSD4_3 */
+ 
+ #ifndef BSD
+ #define BSD 43
+ #endif /* BSD */
+ 
+ #define RISCiX
+ 
+ /* SYSTEM_TYPE should indicate the kind of system you are using.
+  It sets the Lisp variable system-type.  */
+ 
+ #define SYSTEM_TYPE "berkeley-unix"
+ 
+ /* nomultiplejobs should be defined if your system's shell
+  does not have "job control" (the ability to stop a program,
+  run some other program, then continue the first one).  */
+ 
+ #undef NOMULTIPLEJOBS
+ 
+ /* Do not use interrupt_input = 1 by default, because in 4.3
+    we can make noninterrupt input work properly.  */
+ 
+ #undef INTERRUPT_INPUT
+ 
+ /* First pty name is /dev/ptyp0.  */
+ 
+ #define FIRST_PTY_LETTER 'p'
+ 
+ /*
+  *	Define HAVE_TIMEVAL if the system supports the BSD style clock values.
+  *	Look in <sys/time.h> for a timeval structure.
+  */
+ 
+ #define HAVE_TIMEVAL
+  
+ /*
+  *	Define HAVE_SELECT if the system supports the `select' system call.
+  */
+ 
+ #define HAVE_SELECT
+ 
+ /*
+  *	Define HAVE_PTYS if the system supports pty devices.
+  */
+ 
+ #define HAVE_PTYS
+ 
+ /* Define this macro if system defines a type `union wait'.  */
+ 
+ #define HAVE_UNION_WAIT
+ 
+ /* Define HAVE_SOCKETS if system supports 4.2-compatible sockets.  */
+ 
+ #define HAVE_SOCKETS
+ 
+ /*
+  *	Define NONSYSTEM_DIR_LIBRARY to make Emacs emulate
+  *      The 4.2 opendir, etc., library functions.
+  */
+ 
+ /* Risc iX has POSIXized directory access routines */
+ 
+ #define SYSV_SYSTEM_DIR
+ 
+ /* Define this symbol if your system has the functions bcopy, etc. */
+ 
+ #define BSTRING
+ 
+ /* subprocesses should be defined if you want to
+    have code for asynchronous subprocesses
+    (as used in M-x compile and M-x shell).
+    This is generally OS dependent, and not supported
+    under most USG systems. */
+ 
+ #define subprocesses
+ 
+ /* If your system uses COFF (Common Object File Format) then define the
+    preprocessor symbol "COFF". */
+ 
+ #undef COFF
+ 
+ /* define MAIL_USE_FLOCK if the mailer uses flock
+    to interlock access to /usr/spool/mail/$USER.
+    The alternative is that a lock file named
+    /usr/spool/mail/$USER.lock.  */
+ 
+ #define MAIL_USE_FLOCK
+ 
+ /* Define CLASH_DETECTION if you want lock files to be written
+    so that Emacs can tell instantly when you try to modify
+    a file that someone else has modified in his Emacs.  */
+ 
+ #define CLASH_DETECTION
+ 
+ /* We use the Berkeley (and usg5.2.2) interface to nlist.  */
+ 
+ #define NLIST_STRUCT
+ 
+ /* The file containing the kernel's symbol table is called /vmunix.  */
+ 
+ #define KERNEL_FILE "/vmunix"
+ 
+ /* The symbol in the kernel where the load average is found
+    is named _avenrun.  */
+ 
+ #define LDAV_SYMBOL "_iavenrun"
+ 
+ /* Send signals to subprocesses by "typing" special chars at them.  */
+ 
+ #define SIGNALS_VIA_CHARACTERS
+ 
+ /* We do have vfork.  */
+ 
+ #define HAVE_VFORK
+ 
+ /* We have getwd() */
+ 
+ #define HAVE_GETWD
+ 
+ /* link nonshared libraries */
+ 
+ #define LIB_STANDARD -lc_n
+ 
+ #define START_FILES crt0.o
+ 
+ #define LIB_X11_LIB -lX11_n
+ 
+ #define LIB_ATHENA -lXaw_n
*** emacs-19.25/src/crt0.c.orig	Mon Aug 22 21:07:57 1994
--- emacs-19.25/src/crt0.c	Mon Aug 29 10:39:54 1994
***************
*** 583,585 ****
--- 583,624 ----
  asm ("	nop");
  
  #endif /* sparc */
+ 
+ #ifdef RISCiX
+ /* Acorn's RISC iX for the R260-like workstations */
+ 
+ int errno;
+ int * _ptextbase; int * _pestext;
+ int * _petext; int * _pedata;
+ int * _pend; int * _minbrk;
+ int * _curbrk; char * _execname;
+ int * _pargc; char **environ;
+ int * _pesdata; int * _putop;
+ #define _pdataend _putop
+ 
+ extern int _textbase, _estext, _etext, _edata, _end, _esdata;
+ #define UTOP 0x017f8000
+ 
+ extern int initialized;
+ 
+ _start (int ac, ...)
+ {
+   register char **r8; register char **ip; register char **r9;
+   /* names could speak a little more -- just the register names
+    * from the original crt0-code
+    */
+   r8 = (char **) &ac;
+   r8 += 4; /* There are 16 bytes pushed onto the stack */
+   r9 = ip = r8 + * ((int*) r8) + 2;
+   do { } while (*ip++);
+   _ptextbase = (int*) _start; _pestext = &_estext;
+   _petext = &_etext; _pedata = &_edata;
+   if (!initialized) {
+     _pend = _minbrk = _curbrk = &_end;
+   }
+   brk (_curbrk);
+   _execname = *ip; _pargc = (int *) r8; environ = r9;
+   _pesdata = &_esdata; _putop = (int *) UTOP;
+   _exit (exit (main (* ((int*)r8), r8+1, r9, _execname)));
+ }
+ #endif
*** emacs-19.25/src/Makefile.in.in.orig	Mon Aug 22 23:11:38 1994
--- emacs-19.25/src/Makefile.in.in	Mon Aug 22 23:12:40 1994
***************
*** 302,308 ****
--- 302,312 ----
  #ifdef USE_X_TOOLKIT
  #define @X_TOOLKIT_TYPE@
  #if defined (LUCID) || defined (ATHENA)
+ #ifdef LIB_ATHENA
+ LIBW= LIB_ATHENA
+ #else
  LIBW= -lXaw
+ #endif
  #endif
  #ifdef MOTIF
  #ifdef LIB_MOTIF
*** emacs-19.25/etc/MACHINES.orig	Mon Aug 29 11:00:11 1994
--- emacs-19.25/etc/MACHINES	Mon Aug 29 11:06:16 1994
***************
*** 25,30 ****
--- 25,43 ----
  hppa1.1).  If you leave out the version number, the `configure' script
  will configure Emacs for the latest version it knows about.
  
+ Acorn R260 and similar machines (arm-acorn-riscix1.2):
+ 
+   19.25 compiled sucessfully. But there are some caveats:
+   - ld won't set a file executable if there are multiply defined
+     symbols (this bothers with etags, ctags [getopt] and temacs [malloc...])
+     Just chmod +x them by hand and re-type your make command.
+   - symbol translation in Acorn's cc
+     use an own cc script with own symbol name translation table, as provided
+     in directory acorn-cc.
+     Copy GENERIC.R into /usr/lib and use the provided cc script (e.g.
+     by installing it in /usr/local/bin and having /usr/local/bin before
+     /usr/bin and /usr/ucb in your path).
+ 
  Alliant (fx80-alliant-bsd):
  
    18.52 worked on system version 4.  Previous Emacs versions were
*** emacs-19.25/acorn-cc/cc.orig	Mon Aug 29 11:04:14 1994
--- emacs-19.25/acorn-cc/cc	Mon Aug 29 11:04:25 1994
***************
*** 0 ****
--- 1,3 ----
+ #/* /usr/lib/cc -ZiGENERIC
+ */
+ #define _BSD_C 1
*** emacs-19.25/acorn-cc/GENERIC.R.orig	Mon Aug 29 11:04:34 1994
--- emacs-19.25/acorn-cc/GENERIC.R	Mon Aug 29 11:04:30 1994
***************
*** 0 ****
--- 1,617 ----
+ #
+ # Symbol rename file for BSD
+ #
+ #___assert		_XOPEN$__assert
+ #_abort			_XOPEN$abort
+ _accept			_$accept
+ _access			_$access
+ _acct			_$acct
+ _addexportent		_$addexportent
+ _addmntent		_$addmntent
+ _adjtime		_$adjtime
+ _alarm			_$alarm
+ _alloca			_$alloca
+ _alphasort		_$alphasort
+ _async_daemon		_$async_daemon
+ _authdes_create		_$authdes_create
+ _authdes_getucred	_$authdes_getucred
+ _authnone_create	_$authnone_create
+ _authunix_create	_$authunix_create
+ _authunix_create_default	_$authunix_create_default
+ _bcmp			_memcmp
+ _bcopy			_$bcopy
+ _bind			_$bind
+ _bindresvport		_$bindresvport
+ _brk			_$brk
+ _bswap			_$bswap
+ _bzero			_$bzero
+ _callrpc		_$callrpc
+ _calltrace		_$calltrace
+ _catclose		_$catclose
+ _catgets                _$catgets
+ _catopen                _$catopen
+ _cbc_crypt		_$cbc_crypt
+ _cfgetispeed		_$cfgetispeed
+ _cfgetospeed		_$cfgetospeed
+ _cfree			_free
+ _cfsetispeed		_$cfsetispeed
+ _cfsetospeed		_$cfsetospeed
+ _chdir			_$chdir
+ _chmod			_$chmod
+ _chown			_$chown
+ _chroot			_$chroot
+ _clnt_broadcast		_$clnt_broadcast
+ _clnt_create		_$clnt_create
+ _clnt_pcreateerror	_$clnt_pcreateerror
+ _clnt_perrno		_$clnt_perrno
+ _clnt_perror		_$clnt_perror
+ _clnt_spcreateerror	_$clnt_spcreateerror
+ _clnt_sperrno		_$clnt_sperrno
+ _clnt_sperror		_$clnt_sperror
+ _clntraw_create		_$clntraw_create
+ _clnttcp_create		_$clnttcp_create
+ _clntudp_bufcreate	_$clntudp_bufcreate
+ _clntudp_create		_$clntudp_create
+ #_clock                  _XOPEN$clock
+ _close			_$close
+ _closedir		_$closedir
+ _closelog		_$closelog
+ _connect		_$connect
+ _creat			_$creat
+ _crypt			_$crypt
+ _ctermid		_$ctermid
+ _cuserid		_$cuserid
+ #_daylight               _XOPEN$daylight
+ _dbm_close		_$dbm_close
+ _dbm_delete		_$dbm_delete
+ _dbm_fetch		_$dbm_fetch
+ _dbm_findkey		_$dbm_findkey
+ _dbm_firstkey		_$dbm_firstkey
+ _dbm_forder		_$dbm_forder
+ _dbm_nextkey		_$dbm_nextkey
+ _dbm_open		_$dbm_open
+ _dbm_store		_$dbm_store
+ _des_setparity		_$des_setparity
+ _drand48                _$drand48
+ #__dstzone               _XOPEN$_dstzone
+ _dup			_$dup
+ _dup2			_$dup2
+ _dysize			_$dysize
+ _ecb_crypt		_$ecb_crypt
+ _ecvt			_$ecvt
+ _encrypt		_$encrypt
+ _endexportent		_$endexportent
+ _endfsent		_$endfsent
+ _endgrent		_$endgrent
+ _endhostent		_$endhostent
+ _endmntent		_$endmntent
+ _endnetent		_$endnetent
+ _endnetgrent		_$endnetgrent
+ _endprotoent		_$endprotoent
+ _endpwent		_$endpwent
+ _endrpcent		_$endrpcent
+ _endservent		_$endservent
+ _endttyent		_$endttyent
+ _endusershell		_$endusershell
+ _environ		_$environ
+ _erand48                _$erand48
+ _ether_aton		_$ether_aton
+ _ether_hostton		_$ether_hostton
+ _ether_line		_$ether_line
+ _ether_ntoa		_$ether_ntoa
+ _ether_ntohost		_$ether_ntohost
+ _execdone		_$execdone
+ _execl			_$execl
+ _execle			_$execle
+ _execlp			_$execlp
+ _execv			_$execv
+ _execve			_$execve
+ _execvp			_$execvp
+ _exect			_$exect
+ _exportfs		_$exportfs
+ _fchmod			_$fchmod
+ _fchown			_$fchown
+ _fcntl			_$fcntl
+ _fcvt			_$fcvt
+ _fdopen			_$fdopen
+ _ffs			_$ffs
+ _fgetgrent		_$fgetgrent
+ _fileno			_$fileno
+ _flock			_$flock
+ _fork			_$fork
+ _fpathconf              _$fpathconf
+ _fstat			_$fstat
+ _fstatfs		_$fstatfs
+ _fsync			_$fsync
+ _ftime			_$ftime
+ _ftruncate		_$ftruncate
+ _ftw                    _$ftw
+ _gcvt			_$gcvt
+ _get_myaddress		_$get_myaddress
+ _getcwd                 _$getcwd
+ _getdents		_$getdents
+ _getdirentries		_$getdirentries
+ _getdiskbyname		_$getdiskbyname
+ _getdomainname		_$getdomainname
+ _getdtablesize		_$getdtablesize
+ _getegid		_$getegid
+ _geteuid		_$geteuid
+ _getexportent		_$getexportent
+ _getexportopt		_$getexportopt
+ _getfh			_$getfh
+ _getfsent		_$getfsent
+ _getfsfile		_$getfsfile
+ _getfsspec		_$getfsspec
+ _getfstype		_$getfstype
+ _getgid			_$getgid
+ _getgrent		_$getgrent
+ _getgrgid		_$getgrgid
+ _getgrnam		_$getgrnam
+ _getgroups		_BSD$getgroups
+ _gethostbyaddr		_$gethostbyaddr
+ _gethostbyname		_$gethostbyname
+ _gethostent		_$gethostent
+ _gethostid		_$gethostid
+ _gethostname		_$gethostname
+ _getitimer		_$getitimer
+ _getlogin		_$getlogin
+ _getmntent		_$getmntent
+ _getnetbyaddr		_$getnetbyaddr
+ _getnetbyname		_$getnetbyname
+ _getnetent		_$getnetent
+ _getnetgrent		_$getnetgrent
+ _getnetname		_$getnetname
+ _getopt			_$getopt
+ _getpagesize		_$getpagesize
+ _getpass		_$getpass
+ _getpeername		_$getpeername
+ _getpgrp		_$getpgrp
+ _getpid			_$getpid
+ _getppid		_$getppid
+ _getpriority		_$getpriority
+ _getprotobyname		_$getprotobyname
+ _getprotobynumber	_$getprotobynumber
+ _getprotoent		_$getprotoent
+ _getpw			_$getpw
+ _getpwent		_$getpwent
+ _getpwnam		_$getpwnam
+ _getpwuid		_$getpwuid
+ _getrlimit		_$getrlimit
+ _getrootname		_$getrootname
+ _getrpcbyname		_$getrpcbyname
+ _getrpcbynumber		_$getrpcbynumber
+ _getrpcent		_$getrpcent
+ _getrusage		_$getrusage
+ _getservbyname		_$getservbyname
+ _getservbyport		_$getservbyport
+ _getservent		_$getservent
+ _getsockname		_$getsockname
+ _getsockopt		_$getsockopt
+ _getsysinfo		_$getsysinfo
+ _gettimeofday		_$gettimeofday
+ _getttyent		_$getttyent
+ _getttynam		_$getttynam
+ _getuid			_$getuid
+ _getusershell		_$getusershell
+ _getversion		_$getversion
+ _getw			_$getw
+ _getwd			_$getwd
+ _gtty			_$gtty
+ _h_errno		_$h_errno
+ _hasmntopt		_$hasmntopt
+ _hcreate                _$hcreate
+ _hdestroy               _$hdestroy
+ _host2netname		_$host2netname
+ _hsearch                _$hsearch
+ _htonl			_$htonl
+ __htonlb		_$htonlb
+ _htonlb			_$htonlb
+ _htons			_$htons
+ _index			_strchr
+ _inet_addr		_$inet_addr
+ _inet_lnaof		_$inet_lnaof
+ _inet_makeaddr		_$inet_makeaddr
+ _inet_netof		_$inet_netof
+ _inet_network		_$inet_network
+ _inet_ntoa		_$inet_ntoa
+ _initgroups		_$initgroups
+ _initstate		_$initstate
+ _innetgr		_$innetgr
+ _insque			_$insque
+ _ioctl			_$ioctl
+ _isascii		_$isascii
+ _isatty			_$isatty
+ #__isdst                 _XOPEN$_isdst
+ _jrand48                _$jrand48
+ _key_decryptsession	_$key_decryptsession
+ _key_encryptsession	_$key_encryptsession
+ _key_gendes		_$key_gendes
+ _key_setsecret		_$key_setsecret
+ _kill			_$kill
+ _killpg			_$killpg
+ _lcong48                _$lcong48
+ _lfind                  _$lfind
+ _link			_$link
+ _listen			_$listen
+ _lockf			_$lockf
+ _lrand48                _$lrand48
+ _lsearch                _$lsearch
+ _lseek			_$lseek
+ _lstat			_$lstat
+ _memccpy                _$memccpy
+ _mkdir			_$mkdir
+ _mkfifo			_$mkfifo
+ _mknod			_$mknod
+ _mkpwclear		_$mkpwclear
+ _mkpwunclear		_$mkpwunclear
+ _mkstemp		_$mkstemp
+ _mktemp			_$mktemp
+ _moncontrol		_$moncontrol
+ _monitor		_$monitor
+ _monstartup		_$monstartup
+ _mount			_$mount
+ _mrand48                _$mrand48
+ _msgctl			_$msgctl
+ _msgget			_$msgget
+ _msgrcv			_$msgrcv
+ _msgsnd			_$msgsnd
+ _netname2host		_$netname2host
+ _netname2user		_$netname2user
+ _nfssvc			_$nfssvc
+ _nice			_$nice
+ _nl_langinfo		_$nl_langinfo
+ _nlist			_$nlist
+ _nrand48                _$nrand48
+ _ns_addr		_$ns_addr
+ _ns_ntoa		_$ns_ntoa
+ _ntohl			_$ntohl
+ _ntohlb			_$ntohlb
+ _ntohs			_$htons
+ _on_exit		_atexit
+ _open			_$open
+ __openchild		_$_openchild
+ _opendir		_$opendir
+ _openlog		_$openlog
+ _optarg			_$optarg
+ _opterr			_$opterr
+ _optind			_$optind
+ _pathconf               _$pathconf
+ _pause			_$pause
+ _pclose			_$pclose
+ _pipe			_$pipe
+ _pl			_$pl
+ _pmap_getmaps		_$pmap_getmaps
+ _pmap_getport		_$pmap_getport
+ _pmap_rmtcall		_$pmap_rmtcall
+ _pmap_set		_$pmap_set
+ _pmap_unset		_$pmap_unset
+ _popen			_$popen
+ _profil			_$profil
+ _psignal		_$psignal
+ _ptrace			_$ptrace
+ _putenv			_$putenv
+ _putw			_$putw
+ _quotactl		_$quotactl
+ _random			_$random
+ _rcmd			_$rcmd
+ _re_comp		_$re_comp
+ _re_exec		_$re_exec
+ _read			_$read
+ _readdir		_$readdir
+ _readlink		_$readlink
+ _readv			_$readv
+ _realpath		_$realpath
+ _reboot			_$reboot
+ _recv			_$recv
+ _recvfrom		_$recvfrom
+ _recvmsg		_$recvmsg
+ _registerrpc		_$registerrpc
+ _remexportent		_$remexportent
+ _remque			_$remque
+ #
+ # rename is an ANSI-specified interface - don't rename(!) it.
+ #_rename			_$rename
+ #
+ _rewinddir		_$rewinddir
+ _rexec			_$rexec
+ _rindex			_strrchr
+ _rmdir			_$rmdir
+ _rpc_createerr		_$rpc_createerr
+ _rpcdata		_$rpcdata
+ _rresvport		_$rresvport
+ _rtime			_$rtime
+ _ruserok		_$ruserok
+ _ruserpass		_$ruserpass
+ _sbreak			_$sbreak
+ _sbrk			_$sbrk
+ _scalb			_ldexp
+ _scandir		_$scandir
+ _seed48                 _$seed48
+ _seekdir		_$seekdir
+ _select			_$select
+ _semctl			_$semctl
+ _semget			_$semget
+ _semop			_$semop
+ _send			_$send
+ _sendmsg		_$sendmsg
+ _sendto			_$sendto
+ _setbuffer		_$setbuffer
+ _setdomainname		_$setdomainname
+ _setegid		_$setegid
+ _seteuid		_$seteuid
+ _setexportent		_$setexportent
+ _setfsent		_$setfsent
+ _setgid			_$setgid
+ _setgrent		_$setgrent
+ _setgroups		_BSD$setgroups
+ _sethostent		_$sethostent
+ _sethostfile		_$sethostfile
+ _sethostname		_$sethostname
+ _setitimer		_$setitimer
+ _setkey			_$setkey
+ _setlinebuf		_$setlinebuf
+ _setlogmask		_$setlogmask
+ _setmntent		_$setmntent
+ _setnetent		_$setnetent
+ _setnetgrent		_$setnetgrent
+ _setpgid		_$setpgid
+ _setpgrp		_$setpgrp
+ _setpriority		_$setpriority
+ _setprotoent		_$setprotoent
+ _setpwent		_$setpwent
+ _setregid		_$setregid
+ _setreuid		_$setreuid
+ _setrlimit		_$setrlimit
+ _setruid		_$setruid
+ _setservent		_$setservent
+ _setsockopt		_$setsockopt
+ _settimeofday		_$settimeofday
+ _setttyent		_$setttyent
+ _setsid			_$setsid
+ _setuid			_$setuid
+ _setusershell		_$setusershell
+ _shmat			_$shmat
+ _shmctl			_$shmctl
+ _shmdt			_$shmdt
+ _shmget			_$shmget
+ _shutdown		_$shutdown
+ _sigaction              _$sigaction
+ _sigaddset              _$sigaddset
+ _sigblock		_$sigblock
+ _sigdelset              _$sigdelset
+ _sigemptyset            _$sigemptyset
+ _sigfillset             _$sigfillset
+ _sigismember            _$sigismember
+ _siglongjmp             _longjmp
+ _sigpause		_$sigpause
+ _sigpend		_$sigpend
+ _sigpending             _$sigpending
+ _sigprocmask            _$sigprocmask
+ _sigreturn		_$sigreturn
+ _sigsetmask		_$sigsetmask
+ _sigstack		_$sigstack
+ _sigsuspend             _$sigsuspend
+ _sigvec			_$sigvec
+ _sleep			_$sleep
+ _socket			_$socket
+ _socketpair		_$socketpair
+ _srand48                _$srand48
+ _srandom		_$srandom
+ _stat			_$stat
+ _statfs			_$statfs
+ _strcatn		_strncat
+ _strcmpn		_strncmp
+ _strcpyn		_strncpy
+ _stty			_$stty
+ __svc_fdset		_$svc_fdset
+ _svc_fdset		_$svc_fdset
+ _svc_getreq		_$svc_getreq
+ _svc_getreqset		_$svc_getreqset
+ _svc_register		_$svc_register
+ _svc_run		_$svc_run
+ _svc_sendreply		_$svc_sendreply
+ _svc_unregister		_$svc_unregister
+ _svcauthdes_stats	_$svcauthdes_stats
+ _svcerr_auth		_$svcerr_auth
+ _svcerr_decode		_$svcerr_decode
+ _svcerr_noproc		_$svcerr_noproc
+ _svcerr_noprog		_$svcerr_noprog
+ _svcerr_progvers	_$svcerr_progvers
+ _svcerr_systemerr	_$svcerr_systemerr
+ _svcerr_weakauth	_$svcerr_weakauth
+ _svcfd_create		_$svcfd_create
+ _svcraw_create		_$svcraw_create
+ _svctcp_create		_$svctcp_create
+ _svcudp_bufcreate	_$svcudp_bufcreate
+ _svcudp_create		_$svcudp_create
+ _svcudp_enablecache	_$svcudp_enablecache
+ _swab			_$swab
+ _swapoff		_$swapoff
+ _swapon			_$swapon
+ _symlink		_$symlink
+ _sync			_$sync
+ _sys_siglist		_$sys_siglist
+ _sys_errlist		_$sys_errlist
+ _sys_nerr		_$sys_nerr
+ _syscall		_$syscall
+ _sysconf                _$sysconf
+ _syslog			_$syslog
+ _tcdrain		_$tcdrain
+ _tcflow			_$tcflow
+ _tcflush		_$tcflush
+ _tcgetattr		_$tcgetattr
+ _tcgetpgrp		_$tcgetpgrp
+ _tcsendbreak		_$tcsendbreak
+ _tcsetattr		_$tcsetattr
+ _tcsetpgrp		_$tcsetpgrp
+ _tdelete                _$tdelete
+ _tell			_$tell
+ _telldir		_$telldir
+ _tempnam		_$tempnam
+ _times			_$times
+ _toascii		_$toascii
+ _truncate		_$truncate
+ _tsearch                _$tsearch
+ _ttyname		_$ttyname
+ _ttyslot		_$ttyslot
+ _twalk                  _$twalk
+ _tzset			_XOPEN$tzset
+ _tzname			_XOPEN$tzname
+ _ualarm			_$ualarm
+ _ulimit			_$ulimit
+ _umask			_$umask
+ _umount			_$umount
+ _uname			_$uname
+ _unlink			_$unlink
+ _unmount		_$unmount
+ _update			_$update
+ _updatesvc		_$updatesvc
+ _user2netname		_$user2netname
+ _userfault		_$userfault
+ _usingypmap		_$usingypmap
+ _usleep			_$usleep
+ _ustat			_$ustat
+ _utimes			_$utimes
+ __validuser		_$validuser
+ _valloc			_$valloc
+ _vfork			_$vfork
+ _vhangup		_$vhangup
+ _vlimit			_$vlimit
+ _vtimes			_$vtimes
+ _vtrace			_$vtrace
+ _wait			_$wait
+ _wait3			_$wait3
+ _wait4			_$wait4
+ _waitpid		_$waitpid
+ _write			_$write
+ _writev			_$writev
+ _xdr_accepted_reply	_$xdr_accepted_reply
+ _xdr_array		_$xdr_array
+ _xdr_authdes_cred	_$xdr_authdes_cred
+ _xdr_authdes_verf	_$xdr_authdes_verf
+ _xdr_authunix_parms	_$xdr_authunix_parms
+ _xdr_bool		_$xdr_bool
+ _xdr_bytes		_$xdr_bytes
+ _xdr_callhdr		_$xdr_callhdr
+ _xdr_callmsg		_$xdr_callmsg
+ _xdr_char		_$xdr_char
+ _xdr_cryptkeyarg	_$xdr_cryptkeyarg
+ _xdr_cryptkeyres	_$xdr_cryptkeyres
+ _xdr_datum		_$xdr_datum
+ _xdr_des_block		_$xdr_des_block
+ _xdr_double		_$xdr_double
+ _xdr_enum		_$xdr_enum
+ _xdr_float		_$xdr_float
+ _xdr_free		_$xdr_free
+ _xdr_getcredres		_$xdr_getcredres
+ _xdr_int		_$xdr_int
+ _xdr_keybuf		_$xdr_keybuf
+ _xdr_keystatus		_$xdr_keystatus
+ _xdr_long		_$xdr_long
+ _xdr_netnamestr		_$xdr_netnamestr
+ _xdr_netobj		_$xdr_netobj
+ _xdr_opaque		_$xdr_opaque
+ _xdr_opaque_auth	_$xdr_opaque_auth
+ _xdr_pmap		_$xdr_pmap
+ _xdr_pmaplist		_$xdr_pmaplist
+ _xdr_pointer		_$xdr_pointer
+ _xdr_reference		_$xdr_reference
+ _xdr_rejected_reply	_$xdr_rejected_reply
+ _xdr_replymsg		_$xdr_replymsg
+ _xdr_rmtcall_args	_$xdr_rmtcall_args
+ _xdr_rmtcallres		_$xdr_rmtcallres
+ _xdr_short		_$xdr_short
+ _xdr_string		_$xdr_string
+ _xdr_u_char		_$xdr_u_char
+ _xdr_u_int		_$xdr_u_int
+ _xdr_u_long		_$xdr_u_long
+ _xdr_u_short		_$xdr_u_short
+ _xdr_union		_$xdr_union
+ _xdr_unixcred		_$xdr_unixcred
+ _xdr_vector		_$xdr_vector
+ _xdr_void		_$xdr_void
+ _xdr_wrapstring		_$xdr_wrapstring
+ _xdr_yp_binding		_$xdr_yp_binding
+ _xdr_yp_buf		_$xdr_yp_buf
+ _xdr_yp_inaddr		_$xdr_yp_inaddr
+ _xdr_ypall		_$xdr_ypall
+ _xdr_ypbind_resp	_$xdr_ypbind_resp
+ __xdr_ypbind_oldsetdom	_$xdr_ypbind_oldsetdom
+ _xdr_ypbind_setdom	_$xdr_ypbind_setdom
+ _xdr_ypdelete_args	_$xdr_ypdelete_args
+ _xdr_ypdomain_wrap_string	_$xdr_ypdomain_wrap_string
+ _xdr_ypmap_parms	_$xdr_ypmap_parms
+ _xdr_ypmap_wrap_string	_$xdr_ypmap_wrap_string
+ _xdr_ypmaplist		_$xdr_ypmaplist
+ _xdr_ypmaplist_wrap_string	_$xdr_ypmaplist_wrap_string
+ _xdr_ypowner_wrap_string	_$xdr_ypowner_wrap_string
+ _xdr_yppushresp_xfr	_$xdr_yppushresp_xfr
+ _xdr_ypreq_key		_$xdr_ypreq_key
+ _xdr_ypreq_nokey	_$xdr_ypreq_nokey
+ _xdr_ypreq_xfr		_$xdr_ypreq_xfr
+ _xdr_yprequest		_$xdr_yprequest
+ _xdr_ypresp_key_val	_$xdr_ypresp_key_val
+ _xdr_ypresp_maplist	_$xdr_ypresp_maplist
+ _xdr_ypresp_master	_$xdr_ypresp_master
+ _xdr_ypresp_order	_$xdr_ypresp_order
+ _xdr_ypresponse		_$xdr_ypresponse
+ _xdr_ypresp_val		_$xdr_ypresp_val
+ _xdr_ypupdate_args	_$xdr_ypupdate_args
+ _xdrmem_create		_$xdrmem_create
+ _xdrrec_create		_$xdrrec_create
+ _xdrrec_endofrecord	_$xdrrec_endofrecord
+ _xdrrec_eof		_$xdrrec_eof
+ _xdrrec_skiprecord	_$xdrrec_skiprecord
+ _xdrstdio_create	_$xdrstdio_create
+ _xprt_register		_$xprt_register
+ _xprt_unregister	_$xprt_unregister
+ _yp_all			_$yp_all
+ _yp_bind		_$yp_bind
+ __yp_dobind		_$yp_dobind
+ _yp_first		_$yp_first
+ _yp_get_default_domain	_$yp_get_default_domain
+ _yp_master		_$yp_master
+ _yp_match		_$yp_match
+ _yp_next		_$yp_next
+ _yp_order		_$yp_order
+ _yp_unbind		_$yp_unbind
+ _yp_update		_$yp_update
+ _yperr_string		_$yperr_string
+ _ypprot_err		_$ypprot_err
+ 
+ _timezone		_BSD$timezone
+ _utime			_BSD$utime
+ 
+ _end			__end
+ _etext			__etext
+ _edata			__edata
+ _estext			__estext
+ _esdata			__esdata
+ 
+ _acosh			_$acosh
+ _asinh			_$asinh
+ _atanh			_$atanh
+ _cabs			_$cabs
+ _cbrt			_$cbrt
+ _copysign		_$copysign
+ _drem			_$drem
+ _erf			_$erf
+ _erfc			_$erfc
+ _expm1			_$expm1
+ _exp__E			_$exp__E
+ _finite			_$finite
+ _gamma                  _$lgamma
+ _hypot			_$hypot
+ _isnan			_$isnan
+ _j0			_$j0
+ _j1			_$j1
+ _jn			_$jn
+ _lgamma			_$lgamma
+ _log1p			_$log1p
+ _logb			_$logb
+ __omodf			_BSD$_omodf
+ _rint			_$rint
+ _signgam		_$signgam
+ _y0			_$y0
+ _y1			_$y1
+ _yn			_$yn
*** emacs-19.25/config.sub.orig	Mon Aug 22 20:43:35 1994
--- emacs-19.25/config.sub	Mon Aug 22 20:47:33 1994
***************
*** 480,485 ****
--- 480,488 ----
  	mips)
  		basic_machine=mips-mips
  		;;
+ 	r260)
+ 		basic_machine=arm-acorn
+ 		;;
  	romp)
  		basic_machine=romp-ibm
  		;;
***************
*** 545,551 ****
  	      | -nindy* | -vxworks* | -ebmon* | -hms* | -mvs* | -clix* \
  	      | -riscos* | -linux* | -uniplus* | -iris* | -rtu* | -xenix* \
  	      | -hiux* | -386bsd* | -netbsd* | -freebsd* | -riscix* \
! 	      | -lynxos* | -bosx* | -ns* | -cxux*)
  		;;
  	-sunos5*)
  		os=`echo $os | sed -e 's|sunos5|solaris2|'`
--- 548,554 ----
  	      | -nindy* | -vxworks* | -ebmon* | -hms* | -mvs* | -clix* \
  	      | -riscos* | -linux* | -uniplus* | -iris* | -rtu* | -xenix* \
  	      | -hiux* | -386bsd* | -netbsd* | -freebsd* | -riscix* \
! 	      | -lynxos* | -bosx* | -ns* | -cxux* | -riscix1.2)
  		;;
  	-sunos5*)
  		os=`echo $os | sed -e 's|sunos5|solaris2|'`
*** emacs-19.25/configure.orig	Mon Aug 22 20:49:13 1994
--- emacs-19.25/configure	Mon Aug 22 21:02:36 1994
***************
*** 476,481 ****
--- 476,493 ----
  machine='' opsys='' unported='false'
  case "${canonical}" in
  
+   ## Acorn machines
+   ## The only supported one is the R260 under Risc iX 1.2
+   ## Since there are some incompatibilities between the older
+   ## versions of Risc iX and the 1.2* versions, this entry
+   ## is made version specific.
+   ## As I know, Acorn doesn't further develop Risc iX either,
+   ## so I think this port will be stable, when it once completely
+   ## works.
+   arm-acorn-riscix1.2)
+     machine=arm opsys=riscix1-2
+   ;;
+ 
    ## Alliant machines
    ## Strictly speaking, we need the version of the alliant operating
    ## system to choose the right machine file, but currently the
*** emacs-19.25/PROBLEMS.orig	Mon Aug 29 10:47:44 1994
--- emacs-19.25/PROBLEMS	Mon Aug 29 11:00:03 1994
***************
*** 1004,1006 ****
--- 1004,1020 ----
  This problem will not happen if the m-...h file for your type
  of machine defines NO_UNION_TYPE.
  
+ * On configuration arm-acorn-riscix1.2, Emacs won't build
+ 
+ There may be 2 kinds of problems:
+  - Multiply defined symbols
+    These can't be avoided (getopt and malloc related things)
+    Just chmod +x on the executable to be built and restart make.
+  - Undefined symbols
+    (see also the entry in the etc/MACHINES file)
+    The Acorn cc does some kind of 'symbol remapping' (i.e. translation
+    of symbol names) to achieve a nearly clean BSD or a nearly clean
+    POSIX environment. They fail to provide an environment that is a
+    combination of them (and they map symbols out of the BSD environment
+    that IMO shouldn't be...). The procedure described in the etc/MACHINES
+    file should help, at least it worked here.

--
This posting is 'software for wetware' placed under version 2 of the GNU public
license. Intent being: IF YOU DISTRIBUTE IT YOU CANNOT RESTRICT REDISTRIBUTION!
(This is a GNU-ware .signature: please re-use and re-cycle!)

Felix Schroeter -- uk1o@rz.uni-karlsruhe.de -- dl6sdc@db0sao.ampr.org
Technical Details
Message-ID: <"nz11.rz.un.013:29.08.94.10.37.17"@rz.uni-karlsruhe.de>
Path: arc1-ca.pugleaf.net!bga.com!news.sprintlink.net!redstone.interpath.net!ddsw1!godot.cc.duq.edu!news.duke.edu!news-feed-1.peachnet.edu!gatech!howland.reston.ans.net!math.ohio-state.edu!pacific.mps.ohio-state.edu!cis.ohio-state.edu!rz.uni-karlsruhe.DE!uk1o

Show Full Headers
Complete Article Headers
X-Google-Language: ENGLISH,ASCII-7-bit
X-Google-Thread: fb2f1,f7eee9da8f9d3e33,start
X-Google-Attributes: gidfb2f1,public
X-Google-ArrivalTime: 1994-09-02 18:22:27 PST
Path: arc1-ca.pugleaf.net!bga.com!news.sprintlink.net!redstone.interpath.net!ddsw1!godot.cc.duq.edu!news.duke.edu!news-feed-1.peachnet.edu!gatech!howland.reston.ans.net!math.ohio-state.edu!pacific.mps.ohio-state.edu!cis.ohio-state.edu!rz.uni-karlsruhe.DE!uk1o
From: uk1o@rz.uni-karlsruhe.DE
Newsgroups: gnu.emacs.bug
Subject: Emacs 19.25 ported for arm-acorn-riscix1.2
Date: 2 Sep 1994 20:09:38 -0400
Organization: GNUs Not Usenet
Lines: 1141
Sender: daemon@cis.ohio-state.edu
Approved: bug-gnu-emacs@prep.ai.mit.edu
Distribution: gnu
Message-ID: <"nz11.rz.un.013:29.08.94.10.37.17"@rz.uni-karlsruhe.de>