BSD/OS 4.1 and ksh93i problems

BSD/OS 4.1 and ksh93i problems

Post by Cyrille Lefevr » Tue, 15 Aug 2000 04:00:00



migie...@vsnl.com (Michael Giegerich) writes:
> Did anybody succeed to build a statically linked
> binary of ksh93i? If so, how? From which sources?

yes, as of april 2000.

try the following patch relative to ast-open.2000-02-14.0000 from
http://www.research.att.com/sw/download/
as I remember me, ps is broken but the rest should work fine.

diff -rcb att.old/src/cmd/ksh93/edit/vi.c att/src/cmd/ksh93/edit/vi.c
*** att.old/src/cmd/ksh93/edit/vi.c     Sat May  6 03:58:48 2000
--- att/src/cmd/ksh93/edit/vi.c Fri Apr  7 05:57:26 2000
***************
*** 185,191 ****
  static const char paren_chars[] = "([{)]}";   /* for % command */

  #ifdef FIORDCHK
!     extern int ioctl(int, int, ...);
  #endif        /* FIORDCHK */

  static void   del_line(Vi_t*,int);
--- 185,191 ----
  static const char paren_chars[] = "([{)]}";   /* for % command */

  #ifdef FIORDCHK
!     /* extern int ioctl(int, int, ...); */
  #endif        /* FIORDCHK */

  static void   del_line(Vi_t*,int);
diff -rcb att.old/src/cmd/std/features/procfs att/src/cmd/std/features/procfs
*** att.old/src/cmd/std/features/procfs Sat May  6 03:59:23 2000
--- att/src/cmd/std/features/procfs     Tue Apr 11 02:14:44 2000
***************
*** 1,4 ****
! mem   prpsinfo.pr_clname,prpsinfo.pr_lttydev,prpsinfo.pr_ntpid,prpsinfo.pr_psargs,prpsinfo.pr_refcount,prpsinfo.pr_tgrp,prpsinfo.pr_zomb sys/types.h sys/procfs.h
  tst   run{
        if      test -d /proc
        then    if      test -r /proc/self/stat
--- 1,4 ----
! mem   prpsinfo.pr_clname,prpsinfo.pr_lttydev,prpsinfo.pr_ntpid,prpsinfo.pr_refcount,prpsinfo.pr_tgrp,prpsinfo.pr_zomb,prpsinfo.pr_psargs sys/types.h sys/procfs.h
  tst   run{
        if      test -d /proc
        then    if      test -r /proc/self/stat
***************
*** 128,133 ****
--- 128,134 ----
        /*
         * bsd style /proc
         */
+       #undef _mem_pr_psargs_prpsinfo /* has struct prpsinfo in procfs.h */

        #ifndef PRNODEV
        #define PRNODEV         (0)
diff -rcb att.old/src/cmd/std/mount.c att/src/cmd/std/mount.c
*** att.old/src/cmd/std/mount.c Sat May  6 03:59:23 2000
--- att/src/cmd/std/mount.c     Fri Apr  7 13:49:41 2000
***************
*** 126,132 ****
  #define umount                ______umount
  #define unmount               ______unmount
  #endif
! #if __bsdi__ || __bsdi || bsdi
  #include <sys/param.h>
  #endif
  #include <sys/mount.h>
--- 126,132 ----
  #define umount                ______umount
  #define unmount               ______unmount
  #endif
! #if __bsdi__ || __bsdi || bsdi || __FreeBSD__
  #include <sys/param.h>
  #endif
  #include <sys/mount.h>
diff -rcb att.old/src/lib/libast/features/hdr att/src/lib/libast/features/hdr
*** att.old/src/lib/libast/features/hdr Sat May  6 03:58:37 2000
--- att/src/lib/libast/features/hdr     Fri Apr  7 02:25:35 2000
***************
*** 3,10 ****
        #include <stddef.h>
        ptrdiff_t i;
        size_t j;
-       wchar_t k;
  }end
  tst std_stdlib note{ <stdlib.h> looks ok }end compile{
        #include <sys/types.h>
        #include <stddef.h>
--- 3,10 ----
        #include <stddef.h>
        ptrdiff_t i;
        size_t j;
  }end
+ # wchar_t k;
  tst std_stdlib note{ <stdlib.h> looks ok }end compile{
        #include <sys/types.h>
        #include <stddef.h>
diff -rcb att.old/src/lib/libast/features/lib att/src/lib/libast/features/lib
*** att.old/src/lib/libast/features/lib Sat May  6 03:58:37 2000
--- att/src/lib/libast/features/lib     Fri Apr  7 02:27:41 2000
***************
*** 1,21 ****
  cmd   universe
  hdr   dirent,direntry,filio,fmtmsg,fnmatch,jioctl,libgen
! hdr   locale,mman,ndir,syslog,utime,vfork,wctype
! hdr   wchar note{ <wchar.h> and isw*() really work }end execute{
!       #include <wchar.h>
!       main()
!       {
!               wchar_t w = 'a';
!               return iswalnum(w) == 0;
!       }
! }end
  dat   _tzname,tzname
  lib   BSDsetpgrp NutForkExecve
  lib   _cleanup
  lib   atexit,bcopy,bzero,confstr,dirread,dup2,execlp,execve,execvp,execvpe
  lib   fchmod,fcntl,fmtmsg,fnmatch,fork,fsync,getconf,getdents,getdirentries
  lib   getdtablesize,getgroups,getlogin,getpagesize,getrlimit,getuniverse
! lib   glob,index,iswblank,iswctype,killpg,link,localeconv,madvise,mbtowc
  lib   memalign,memccpy,memchr,memcmp,memcpy,memdup,memmove,memset
  lib   mkdir,mkfifo,mktemp,mktime
  lib   mount,on_exit,onexit,opendir,pathconf,pcreateve
--- 1,23 ----
  cmd   universe
  hdr   dirent,direntry,filio,fmtmsg,fnmatch,jioctl,libgen
! hdr   locale,mman,ndir,syslog,utime,vfork
! # ,wctype
! # hdr wchar note{ <wchar.h> and isw*() really work }end execute{
! #     #include <wchar.h>
! #     main()
! #     {
! #             wchar_t w = 'a';
! #             return iswalnum(w) == 0;
! #     }
! # }end
  dat   _tzname,tzname
  lib   BSDsetpgrp NutForkExecve
  lib   _cleanup
  lib   atexit,bcopy,bzero,confstr,dirread,dup2,execlp,execve,execvp,execvpe
  lib   fchmod,fcntl,fmtmsg,fnmatch,fork,fsync,getconf,getdents,getdirentries
  lib   getdtablesize,getgroups,getlogin,getpagesize,getrlimit,getuniverse
! lib   glob,index,killpg,link,localeconv,madvise
! # iswblank,iswctype,mbtowc
  lib   memalign,memccpy,memchr,memcmp,memcpy,memdup,memmove,memset
  lib   mkdir,mkfifo,mktemp,mktime
  lib   mount,on_exit,onexit,opendir,pathconf,pcreateve
***************
*** 25,31 ****
  lib   spawnve,spawnveg,spawnvp,spawnvpe,strchr,strcoll,strdup,strerror
  lib   strcasecmp,strncasecmp,strrchr,strtod,strtol,strtoll,strtoul,strtoull
  lib   strxfrm,strftime,swab,symlink,sysconf,syslog
! lib   telldir,tmpnam,tzset,universe,unlink,utime,vfork,wctype
  lib   creat64,fstat64,fstatvfs64,ftruncate64 -D_LARGEFILE64_SOURCE
  lib   lseek64,lstat64 -D_LARGEFILE64_SOURCE
  lib   mmap64,open64,stat64,statvfs64,truncate64 -D_LARGEFILE64_SOURCE
--- 27,34 ----
  lib   spawnve,spawnveg,spawnvp,spawnvpe,strchr,strcoll,strdup,strerror
  lib   strcasecmp,strncasecmp,strrchr,strtod,strtol,strtoll,strtoul,strtoull
  lib   strxfrm,strftime,swab,symlink,sysconf,syslog
! lib   telldir,tmpnam,tzset,universe,unlink,utime,vfork
! # ,wctype
  lib   creat64,fstat64,fstatvfs64,ftruncate64 -D_LARGEFILE64_SOURCE
  lib   lseek64,lstat64 -D_LARGEFILE64_SOURCE
  lib   mmap64,open64,stat64,statvfs64,truncate64 -D_LARGEFILE64_SOURCE
diff -rcb att.old/src/lib/libast/features/limits.c att/src/lib/libast/features/limits.c
*** att.old/src/lib/libast/features/limits.c    Sat May  6 03:58:37 2000
--- att/src/lib/libast/features/limits.c        Fri Apr  7 02:48:40 2000
***************
*** 122,127 ****
--- 122,128 ----
        while (uc >>= 1) val++;
  #endif
        printf("#define CHAR_BIT   %lu\n", val);
+ #undef MB_LEN_MAX
  #ifdef MB_LEN_MAX
        val = MB_LEN_MAX;
        printf("#undef     MB_LEN_MAX\n");
***************
*** 392,397 ****
--- 393,401 ----
  #endif
  #ifdef        _LIMITS_H_
        printf("#define _LIMITS_H_\n");
+ #endif
+ #ifdef        _MACHINE_LIMITS_H_
+       printf("#define _MACHINE_LIMITS_H_\n");
  #endif
  #ifdef        __LIMITS_H
        printf("#define __LIMITS_H\n");
diff -rcb att.old/src/lib/libast/features/types att/src/lib/libast/features/types
*** att.old/src/lib/libast/features/types       Sat May  6 03:58:37 2000
--- att/src/lib/libast/features/types   Fri Apr  7 02:28:50 2000
***************
*** 4,15 ****
        echo "typedef short $v;"
        echo "#endif"
  }end
! typ gid_t,mode_t,uid_t,wchar_t fail{
        echo "#ifndef $m"
        echo "#define $m   1"
        echo "typedef unsigned short $v;"
        echo "#endif"
  }end
  typ pid_t,ssize_t fail{
        echo "#ifndef $m"
        echo "#define $m   1"
--- 4,16 ----
        echo "typedef short $v;"
        echo "#endif"
  }end
! typ gid_t,mode_t,uid_t fail{
        echo "#ifndef $m"
        echo "#define $m   1"
        echo "typedef unsigned short $v;"
        echo "#endif"
  }end
+ # ,wchar_t
  typ pid_t,ssize_t fail{
        echo "#ifndef $m"
        echo "#define $m   1"

Cyrille.
--
home: mailto:clefevre%no-s...@citeweb.net.invalid
work: mailto:Cyrille.Lefevre%no-s...@edf.fr.invalid
Supprimer "%no-spam" et ".invalid" pour me repondre.
Remove "%no-spam" and ".invalid" to answer me back.

 
 
 

1. FreeBSD 4.1 and BSD/OS 4.1 Compatibility?

Is it possible to compile a binary on an intel/386 FreeBSD 4.1 system and
have that binary run on BSD/OS 4.1?

I do this and the shell refuses to recognize my binary as an executable
file, even though I have 'x' attributes on the file.

Are these two OS's binary compatible? How many layers of knowledge behind
the game am I by even proposing this?

Thanks in advance!
Nick

2. pkg_add and ftp problems

3. Help Compiling NCSA1.4.1 on BSD/OS

4. Xfree Xconfig

5. Problem about SUN Sparc running OS 4.1

6. how can I convert my text documentation to man pages? Any real easy way?

7. 4.1 4.1 4.1 HELP!

8. anvansys scsi.. help!!!

9. Installing BSD iso code into Sun 4.1.x

10. Novell on Sun OS 4.1?

11. message queue structure in SUN OS 4.1

12. Redhat 4.1 on OS/2 Drive

13. Zip drives and Sun OS 4.1.x - vold equivalent?