if the OS does not provide sig_atomic_t and/or ssize_t, you can now define
MKSH_TYPEDEF_SIG_ATOMIC_T and MKSH_TYPEDEF_SSIZE_T via CPPFLAGS to the *correct* definitions (it’s absolutely critical they be correct!)
This commit is contained in:
parent
d388de51f9
commit
29e4269f33
8
Build.sh
8
Build.sh
@ -1,5 +1,5 @@
|
|||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
srcversion='$MirOS: src/bin/mksh/Build.sh,v 1.544 2012/04/08 20:02:33 tg Exp $'
|
srcversion='$MirOS: src/bin/mksh/Build.sh,v 1.545 2012/04/14 14:02:39 tg Exp $'
|
||||||
#-
|
#-
|
||||||
# Copyright (c) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010,
|
# Copyright (c) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010,
|
||||||
# 2011, 2012
|
# 2011, 2012
|
||||||
@ -649,7 +649,7 @@ syllable)
|
|||||||
;;
|
;;
|
||||||
ULTRIX)
|
ULTRIX)
|
||||||
: ${CC=cc -YPOSIX}
|
: ${CC=cc -YPOSIX}
|
||||||
add_cppflags -Dssize_t=int
|
add_cppflags -DMKSH_TYPEDEF_SSIZE_T=int
|
||||||
: ${HAVE_SETLOCALE_CTYPE=0}
|
: ${HAVE_SETLOCALE_CTYPE=0}
|
||||||
;;
|
;;
|
||||||
UnixWare|UNIX_SV)
|
UnixWare|UNIX_SV)
|
||||||
@ -1392,7 +1392,7 @@ else
|
|||||||
#define EXTERN
|
#define EXTERN
|
||||||
#define MKSH_INCLUDES_ONLY
|
#define MKSH_INCLUDES_ONLY
|
||||||
#include "sh.h"
|
#include "sh.h"
|
||||||
__RCSID("$MirOS: src/bin/mksh/Build.sh,v 1.544 2012/04/08 20:02:33 tg Exp $");
|
__RCSID("$MirOS: src/bin/mksh/Build.sh,v 1.545 2012/04/14 14:02:39 tg Exp $");
|
||||||
int main(void) { printf("Hello, World!\n"); return (0); }
|
int main(void) { printf("Hello, World!\n"); return (0); }
|
||||||
EOF
|
EOF
|
||||||
case $cm in
|
case $cm in
|
||||||
@ -2092,6 +2092,8 @@ MKSH_NO_EXTERNAL_CAT omit hack to skip cat builtin when flags passed
|
|||||||
MKSH_NO_LIMITS omit ulimit code
|
MKSH_NO_LIMITS omit ulimit code
|
||||||
MKSH_SMALL omit some code, optimise hard for size (slower)
|
MKSH_SMALL omit some code, optimise hard for size (slower)
|
||||||
MKSH_S_NOVI disable Vi editing mode (default if MKSH_SMALL)
|
MKSH_S_NOVI disable Vi editing mode (default if MKSH_SMALL)
|
||||||
|
MKSH_TYPEDEF_SIG_ATOMIC_T define to e.g. 'int' if sig_atomic_t is missing
|
||||||
|
MKSH_TYPEDEF_SSIZE_T define to e.g. 'long' if your OS has no ssize_t
|
||||||
MKSH_UNEMPLOYED disable job control (but not jobs/co-processes)
|
MKSH_UNEMPLOYED disable job control (but not jobs/co-processes)
|
||||||
|
|
||||||
=== generic installation instructions ===
|
=== generic installation instructions ===
|
||||||
|
10
sh.h
10
sh.h
@ -152,7 +152,7 @@
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef EXTERN
|
#ifdef EXTERN
|
||||||
__RCSID("$MirOS: src/bin/mksh/sh.h,v 1.545 2012/04/07 11:19:51 tg Exp $");
|
__RCSID("$MirOS: src/bin/mksh/sh.h,v 1.546 2012/04/14 14:02:40 tg Exp $");
|
||||||
#endif
|
#endif
|
||||||
#define MKSH_VERSION "R40 2012/04/07"
|
#define MKSH_VERSION "R40 2012/04/07"
|
||||||
|
|
||||||
@ -212,6 +212,14 @@ typedef unsigned long rlim_t;
|
|||||||
typedef void (*sig_t)(int);
|
typedef void (*sig_t)(int);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifdef MKSH_TYPEDEF_SIG_ATOMIC_T
|
||||||
|
typedef MKSH_TYPEDEF_SIG_ATOMIC_T sig_atomic_t;
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef MKSH_TYPEDEF_SSIZE_T
|
||||||
|
typedef MKSH_TYPEDEF_SSIZE_T ssize_t;
|
||||||
|
#endif
|
||||||
|
|
||||||
/* un-do vendor damage */
|
/* un-do vendor damage */
|
||||||
|
|
||||||
#undef BAD /* AIX defines that somewhere */
|
#undef BAD /* AIX defines that somewhere */
|
||||||
|
Loading…
x
Reference in New Issue
Block a user