bug-bash
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bash 4.3 series does not compile on IRIX 6.5.22


From: Klaus Ziegler - owner of sunfreeware.de
Subject: bash 4.3 series does not compile on IRIX 6.5.22
Date: Fri, 26 Jun 2015 23:42:00 +0200
User-agent: Mozilla/5.0 (X11; SunOS i86pc; rv:31.0) Gecko/20100101 Thunderbird/31.0


Hi *,

Configuration Information [Automatically generated, do not change]:
Machine: mips
OS: irix6.5
Compiler: gcc
Compilation CFLAGS: -DPROGRAM='bash' -DCONF_HOSTTYPE='mips' -DCONF_OSTYPE='irix6.5' -DCONF_MACHTYPE='mips-sgi-irix6.5' -DCONF_VENDOR='sgi' -DLOCALEDIR='/usr/share/locale' -DPACKAGE='bash' -DSHELL -DHAVE_CONFIG_H -I. -I. -I./include -I./lib -mabi=64 -Ofast -mips4 -mtune=r8000
uname output: IRIX64 indigo2 6.5 10070055 IP26
Machine Type: mips-sgi-irix6.5

Bash Version: 4.3
Patch Level: 39
Release Status: release

Description:
        Bash 4.3.39 does not compile due to wrong signal.h handling i sig.h

Repeat-By:
        normal configure, make, make install with the following options:
--enable-help-builtin --enable-history --enable-job-control --enable-multibyte --enable-process-substitution --enable-progcomp --enable-prompt-string-decoding --enable-readline --enable-select --enable-strict-posix-default --enable-xpg-echo-default --enable-alias --enable-arith-for-command --enable-array-variables --enable-bang-history --enable-brace-expansion --enable-casemod-attributes --enable-casemod-expansions --enable-command-timing --enable-cond-command --enable-cond-regexp --enable-coprocesses --enable-direxpand-default --enable-directory-stack --enable-dparen-arithmetic --enable-extended-glob --enable-extended-glob-default --enable-glob-asciiranges-default --prefix=/usr

error which occurs:
gcc -DPROGRAM='"bash"' -DCONF_HOSTTYPE='"mips"' -DCONF_OSTYPE='"irix6.5"' -DCONF_MACHTYPE='"mips-sgi-irix6.5"' -DCONF_VENDOR='"sgi"' -DLOCALEDIR='"/usr/share/locale"' -DPACKAGE='"bash"' -DSHELL -DHAVE_CONFIG_H -I. -I. -I./include -I./lib -mabi=64 -Ofast -mips4 -mtune=r8000 -c general.c
In file included from quit.h:24:0,
                 from shell.h:33,
                 from general.c:41:
sig.h:111:1: error: unknown type name 'sig_atomic_t'
sig.h:112:1: error: unknown type name 'sig_atomic_t'
In file included from shell.h:33:0,
                 from general.c:41:
quit.h:27:1: error: unknown type name 'sig_atomic_t'
quit.h:28:1: error: unknown type name 'sig_atomic_t'
Makefile:97: recipe for target 'general.o' failed
gmake: *** [general.o] Error 1

there are also some more warnings during the build, which are fixed by the attached patch: gcc -DPROGRAM='"bash"' -DCONF_HOSTTYPE='"mips"' -DCONF_OSTYPE='"irix6.5"' -DCONF_MACHTYPE='"mips-sgi-irix6.5"' -DCONF_VENDOR='"sgi"' -DLOCALEDIR='"/usr/share/locale"' -DPACKAGE='"bash"' -DSHELL -DHAVE_CONFIG_H -I. -I. -I./include -I./lib -mabi=64 -Ofast -mips4 -mtune=r8000 -c pcomplete.c
pcomplete.c: In function 'pcomp_filename_completion_function':
pcomplete.c:781:9: warning: passing argument 1 of 'sh_contains_quotes' discards 'const' qualifier from pointer target type [enabled by default]
In file included from shell.h:42:0,
                 from pcomplete.c:46:
externs.h:327:12: note: expected 'char *' but argument is of type 'const char *'

gcc -c -DHAVE_CONFIG_H -DSHELL -I. -I.. -I.. -I../include -I../lib -I. -mabi=64 -Ofast -mips4 -mtune=r8000 evalstring.c
evalstring.c: In function 'parse_and_execute':
evalstring.c:208:3: warning: passing argument 1 of 'sigemptyset' discards 'volatile' qualifier from pointer target type [enabled by default]
In file included from /usr/include/signal.h:4:0,
                 from evalstring.c:31:
/usr/include/internal/signal_core.h:142:12: note: expected 'struct sigset_t *' but argument is of type 'volatile struct sigset_t *' evalstring.c:209:3: warning: passing argument 3 of 'sigprocmask' discards 'volatile' qualifier from pointer target type [enabled by default]
In file included from /usr/include/signal.h:4:0,
                 from evalstring.c:31:
/usr/include/internal/signal_core.h:138:12: note: expected 'struct sigset_t *' but argument is of type 'volatile struct sigset_t *' evalstring.c:288:5: warning: passing argument 2 of 'sigprocmask' discards 'volatile' qualifier from pointer target type [enabled by default]
In file included from /usr/include/signal.h:4:0,
                 from evalstring.c:31:
/usr/include/internal/signal_core.h:138:12: note: expected 'const struct sigset_t *' but argument is of type 'volatile struct sigset_t *'
evalstring.c: In function 'parse_string':
evalstring.c:460:3: warning: passing argument 1 of 'sigemptyset' discards 'volatile' qualifier from pointer target type [enabled by default]
In file included from /usr/include/signal.h:4:0,
                 from evalstring.c:31:
/usr/include/internal/signal_core.h:142:12: note: expected 'struct sigset_t *' but argument is of type 'volatile struct sigset_t *' evalstring.c:461:3: warning: passing argument 3 of 'sigprocmask' discards 'volatile' qualifier from pointer target type [enabled by default]
In file included from /usr/include/signal.h:4:0,
                 from evalstring.c:31:
/usr/include/internal/signal_core.h:138:12: note: expected 'struct sigset_t *' but argument is of type 'volatile struct sigset_t *' evalstring.c:513:8: warning: passing argument 2 of 'sigprocmask' discards 'volatile' qualifier from pointer target type [enabled by default]
In file included from /usr/include/signal.h:4:0,
                 from evalstring.c:31:
/usr/include/internal/signal_core.h:138:12: note: expected 'const struct sigset_t *' but argument is of type 'volatile struct sigset_t *'

Fix:
--- sig.h.orig  2013-02-27 16:17:20.000000000 +0100
+++ sig.h       2015-06-24 22:41:55.961577207 +0200
@@ -25,7 +25,7 @@

 #include "stdc.h"

-#if !defined (SIG_DFL)
+#if !defined (SIG_DFL) || defined __sgi
 #  include <signal.h>          /* for sig_atomic_t */
 #endif

--- externs.h.orig      2014-10-01 18:57:22.000000000 +0200
+++ externs.h   2015-06-26 20:19:56.702752134 +0200
@@ -324,7 +324,7 @@
 extern char *sh_backslash_quote __P((char *, const char *, int));
 extern char *sh_backslash_quote_for_double_quotes __P((char *));
 extern int sh_contains_shell_metas __P((char *));
-extern int sh_contains_quotes __P((char *));
+extern int sh_contains_quotes __P((const char *));

 /* declarations for functions defined in lib/sh/spell.c */
 extern int spname __P((char *, char *));
--- builtins/evalstring.c.orig  2014-10-05 19:52:50.000000000 +0200
+++ builtins/evalstring.c       2015-06-26 20:52:47.734424454 +0200
@@ -195,7 +195,11 @@
   int code, lreset;
   volatile int should_jump_to_top_level, last_result;
   COMMAND *volatile command;
+#ifdef __sgi
+  sigset_t pe_sigmask;
+#else
   volatile sigset_t pe_sigmask;
+#endif

   parse_prologue (string, flags, PE_TAG);

@@ -451,7 +455,11 @@
   volatile int should_jump_to_top_level;
   COMMAND *volatile command, *oglobal;
   char *ostring;
+#ifdef __sgi
+  sigset_t ps_sigmask;
+#else
   volatile sigset_t ps_sigmask;
+#endif

   parse_prologue (string, flags, PS_TAG);


Thanks much in advance
Klaus Ziegler

Tel: (++49 6105) 968846
Klaus Ziegler                                  Mobil: (++49 172) 3064445
Zeppelinstrasse 3                          mailto: klausz@haus-gisela.de
D-64546 Walldorf-Moerfelden      http://www.haus-gisela.de/~klausz



Attachment: bash43-040
Description: Text document


reply via email to

[Prev in Thread] Current Thread [Next in Thread]