bug-bash
[Top][All Lists]
Advanced

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

Re: Bash-4.4-beta available for FTP


From: aixtools
Subject: Re: Bash-4.4-beta available for FTP
Date: Fri, 23 Oct 2015 09:08:36 +0200
User-agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:12.0) Gecko/20120428 Thunderbird/12.0.1

On 2015-10-15 16:23, Chet Ramey wrote:
The first beta release of bash-4.4 is now available with the URL

ftp://ftp.cwru.edu/pub/bash/bash-4.4-beta.tar.gz

This tar file includes the formatted documentation (you should be able to
generate updated versions yourself).

The summary - there is a 'conflict' between how bash is redefining mbstr routines included in AIX libc.a since at least 2004 (when AIX 5.3 came out). These routines may be better - but there seems to be a "typedef naming scheme" collision that is more than just "unsigned versus signed" difference.

== Detailed report on build of BASH-4.4-BETA ==
Build environment: As "old" as I can make it - in order to have a single packaging that will install on any AIX that is newer (binary compatibility!) - details on build environment follow the bash report -

1) configure does not see that yacc is not installed, so make fails immediately

2) after installing yacc, make proceeds but warns at:
"execute_cmd.c", line 4655.16: 1506-068 (W) Operation between types "struct array*" and "volatile struct array*" is not allowed. "execute_cmd.c", line 4657.16: 1506-068 (W) Operation between types "struct array*" and "volatile struct array*" is not allowed.
3) and make stops at:
"/usr/include/mbstr.h", line 47.22: 1506-334 (S) Identifier mbchar_t has already been defined on line 175 of "./include/shmbchar.h".
make: *** [subst.o] Error 1
/opt/bin/make returned an error (/opt/bin/make is gnu make)

root@x064:[/data/prj/gnu/bash/bash-4.4]make V=1

          ***********************************************************
          *                                                         *
          * GNU bash, version 4.4.0(1)-beta (powerpc-ibm-aix5.3.0.0)
          *                                                         *
          ***********************************************************

rm -f subst.o
xlc -DPROGRAM='"bash"' -DCONF_HOSTTYPE='"powerpc"' -DCONF_OSTYPE='"aix5.3.0.0"' -DCONF_MACHTYPE='"powerpc-ibm-aix5.3.0.0"' -DCONF_VENDOR='"ibm"' -DLOCALEDIR='"/opt/share/locale"' -DPACKAGE='"bash"' -DSHELL -DHAVE_CONFIG_H -DDEBUG -DMALLOC_DEBUG -I. -I. -I./include -I./lib -I/opt/buildaix/include -I/opt/include -I/opt/include -I/opt/buildaix/include -O2 -c subst.c "/usr/include/mbstr.h", line 47.22: 1506-334 (S) Identifier mbchar_t has already been defined on line 175 of "./include/shmbchar.h".
Makefile:100: recipe for target 'subst.o' failed
make: *** [subst.o] Error 1

/usr/include/mbstr.h:
   +47  typedef unsigned int mbchar_t;

./include/shmbchar.h:
  +163  struct mbchar
  +164  {
  +165    const char *ptr;      /* pointer to current character */
+166 size_t bytes; /* number of bytes of current character, > 0 */
  +167    int wc_valid;        /* true if wc is a valid wide character */
  +168    wchar_t wc;           /* if wc_valid: the current character */
+169 char buf[MBCHAR_BUF_SIZE]; /* room for the bytes, used for file input only */
  +170  };
  +171
  +172  /* EOF (not a real character) is represented with bytes = 0 and
  +173     wc_valid = false.  */
  +174
  +175  typedef struct mbchar mbchar_t;

These do not look compatible, nor a simple "patch" with an ifdef

Here is a quick link to AIX documentation re: it's implementation of mbstr in libc.a: http://www-01.ibm.com/support/knowledgecenter/ssw_aix_53/com.ibm.aix.basetechref/doc/basetrf1/mbsrchr.htm%23a152940a

= BUILD ENVIRONMENT DETAILS =
root@x064:[/data/prj/gnu/bash/bash-4.4]oslevel -s
5300-07-00-0000
root@x064:[/data/prj/gnu/bash/bash-4.4]xlc -qversion
IBM XL C/C++ for AIX, V11.1 (5724-X13)
Version: 11.01.0000.0020
root@x064:[/data/prj/gnu/bash/bash-4.4]make -v
GNU Make 4.1
Built for powerpc-ibm-aix5.3.0.0
Copyright (C) 1988-2014 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

rpm tools are not installed, only the rpm fileset.
root@x064:[/data/prj/gnu/bash/bash-4.4]rpm -qa
AIX-rpm-5.3.7.0-1
root@x064:[/data/prj/gnu/bash/bash-4.4]lslpp -L | grep rpm
  rpm.rte                   3.0.5.41    C     F    RPM Package Manager
AIX-rpm 5.3.7.0-1 C R Virtual Package for libraries
                                                   (/bin/rpm)
root@x064:[/data/prj/gnu/bash/bash-4.4]lslpp -f rpm.rte
  Fileset               File
----------------------------------------------------------------------------
Path: /usr/lib/objrepos
  rpm.rte 3.0.5.41      /usr/opt/freeware/lib/rpm/magic.prov
                        /usr/opt/freeware/src/packages/SRPMS
                        /usr/opt/freeware/share/locale/sl/LC_MESSAGES
                        /usr/opt/freeware/lib/rpm/brp-compress
                        /usr/opt/freeware/lib/rpm/perl.req
                        /usr/opt/freeware/lib/rpm/config.guess
/usr/opt/freeware/share/locale/tr/LC_MESSAGES/rpm.mo
                        /usr/opt/freeware/lib/rpm/find-req.pl
                        /usr/opt/freeware/src/packages/RPMS/noarch
                        /usr/opt/freeware/lib/rpm/brp-strip
                        /usr/opt/freeware/src/packages
/usr/opt/freeware/bin/gunzip -> /usr/opt/freeware/bin/gzip /usr/opt/freeware/bin/zcat -> /usr/opt/freeware/bin/gzip
                        /usr/opt/freeware/bin/gzip
                        /usr/opt/freeware/bin/zcmp
                        /usr/opt/freeware/lib/rpm/rpmgettext
                        /usr/opt/freeware/bin/znew
                        /usr/opt/freeware/lib/rpm/find-requires
                        /usr/opt/freeware/info
                        /usr/opt/freeware/lib/libz.a
                        /usr/opt/freeware/lib/rpm
                        /usr/opt/freeware/bin/bunzip2
                        /usr/opt/freeware/man/man8/rpm.8
                        /usr/opt/freeware/lib/rpm/get_magic.pl
                        /usr/opt/freeware/bin
                        /usr/opt/freeware/lib/rpm/brp-redhat
                        /usr/opt/freeware/bin/zmore
                        /usr/opt/freeware/lib/rpm/find-provides.perl
                        /usr/opt/freeware/man
                        /usr/opt/freeware/lib/rpm/find-provides
                        /usr/opt/freeware/bin/rpm
                        /usr/opt/freeware/bin/install-info
                        /usr/opt/freeware/share/locale/sv/LC_MESSAGES
                        /usr/opt/freeware/lib/rpm/rpmdiff
                        /usr/opt/freeware/src/packages/RPMS
                        /usr/opt/freeware/share/locale/sk/LC_MESSAGES
                        /usr/opt/freeware/src
                        /usr/opt/freeware/share/locale
                        /usr/opt/freeware/lib/rpm/find-lang.sh
                        /usr/opt/freeware/bin/gzexe
                        /usr/opt/freeware/share/locale/cs
                        /usr/opt/freeware/share/locale/pl/LC_MESSAGES
                        /usr/opt/freeware/lib/rpm/mkinstalldirs
                        /usr/opt/freeware/share/locale/de
                        /usr/opt/freeware/packages
                        /usr/opt/freeware/bin/zgrep
                        /usr/opt/freeware/share/locale/fi
                        /usr/opt/freeware/share/locale/sr/LC_MESSAGES
                        /usr/opt/freeware/share/locale/fr
                        /usr/opt/freeware/lib/rpm/rpmpopt
                        /usr/opt/freeware/src/packages/RPMS/ppc
                        /usr/sbin/rpm_share
/usr/opt/freeware/share/locale/de/LC_MESSAGES/rpm.mo
                        /usr/opt/freeware/share/locale/ja
/usr/opt/freeware/share/locale/fi/LC_MESSAGES/rpm.mo /usr/opt/freeware/share/locale/sl/LC_MESSAGES/rpm.mo
                        /usr/opt/freeware/share/locale/ja/LC_MESSAGES
/usr/opt/freeware/lib/librpmbuild.so.0 -> librpmbuild.so.0.0.0
                        /usr/opt/freeware/lib/rpm/config.sub
/usr/opt/freeware/share/locale/sk/LC_MESSAGES/rpm.mo /usr/opt/freeware/share/locale/pt_BR/LC_MESSAGES/rpm.mo /usr/opt/freeware/lib/libpopt.so -> libpopt.so.0.0.0
                        /usr/opt/freeware/share/locale/pt_BR/LC_MESSAGES
/usr/opt/freeware/share/locale/cs/LC_MESSAGES/rpm.mo
                        /usr/opt/freeware/lib/rpm/vpkg-provides.sh
                        /usr/opt/freeware/lib/rpm/vpkg-provides2.sh
                        /usr/opt/freeware/share/locale/pl
                        /usr/opt/freeware/lib/libintl.a
                        /usr/opt/freeware/src/packages/RPMS/ia64
                        /usr/opt/freeware/lib/libpopt.so.0.0.0
                        /usr/opt/freeware/lib/librpm.so.0.0.0
                        /usr/opt/freeware/share/locale/ro
/usr/opt/freeware/lib/libpopt.so.0 -> libpopt.so.0.0.0 /usr/opt/freeware/share/locale/sv/LC_MESSAGES/rpm.mo
                        /usr/opt/freeware/lib/rpm/u_pkg.sh
                        /usr/opt/freeware/lib/libbz2.a
                        /usr/opt/freeware/share/locale/sk
                        /usr/opt/freeware/share/locale/sl
                        /usr/opt/freeware/share/locale/sr
                        /usr/opt/freeware/share/locale/sv
                        /usr/opt/freeware/share/locale/tr
                        /usr/opt/freeware/lib/rpm/macros
                        /usr/opt/freeware/share/locale/pt_BR
                        /usr/opt/freeware/lib/rpm/check-prereqs
/usr/opt/freeware/share/locale/fr/LC_MESSAGES/rpm.mo
                        /usr/src
                        /usr/opt/freeware/share/locale/fr/LC_MESSAGES
/usr/opt/freeware/lib/librpm.so.0 -> librpm.so.0.0.0
                        /usr/opt/freeware/share/locale/fi/LC_MESSAGES
                        /usr/opt/freeware/share/locale/cs/LC_MESSAGES
/usr/opt/freeware/share/locale/ja/LC_MESSAGES/rpm.mo
                        /usr/opt/freeware/bin/rpm2cpio
                        /usr/opt/freeware/man/man8/rpm2cpio.8
                        /usr/opt/freeware/lib/rpm/rpmdiff.cgi
                        /usr/opt/freeware/src/packages/SPECS
                        /usr/opt/freeware/lib/rpm/rpmputtext
                        /usr/opt/freeware/src/packages/RPMS/powerpc
/usr/opt/freeware/share/locale/sr/LC_MESSAGES/rpm.mo
                        /usr/opt/freeware/lib/rpm/magic.req
                        /usr/opt/freeware/lib/rpm/brp-strip-comment-note
                        /usr/opt/freeware/lib/rpm/rpmrc
                        /usr/linux
                        /usr/opt/freeware/lib/rpm/getpo.sh
                        /usr/opt/freeware/share/locale/tr/LC_MESSAGES
                        /usr/opt/freeware/lib/rpm/http.req
                        /usr/opt/freeware/share/locale/ro/LC_MESSAGES
                        /usr/opt/freeware/lib/rpm/convertrpmrc.sh
                        /usr/opt/freeware/bin/patch
                        /usr/opt/freeware/lib/rpm/cpanflute
                        /usr/opt/freeware/lib/rpm/find-prov.pl
                        /usr/opt/freeware/bin/bzcat
                        /usr/opt/freeware/bin/bzip2
/usr/opt/freeware/share/locale/pl/LC_MESSAGES/rpm.mo
                        /usr/opt/freeware/bin/gendiff
                        /usr/sbin/updtvpkg
                        /usr/bin/rpm
                        /usr/opt/freeware/lib/librpmbuild.so.0.0.0
                        /usr/opt/freeware/lib/rpm/perl.prov
/usr/opt/freeware/share/locale/ro/LC_MESSAGES/popt.mo /usr/opt/freeware/lib/librpmbuild.so -> librpmbuild.so.0.0.0
                        /usr/opt/freeware/share/locale/de/LC_MESSAGES
                        /usr/opt/freeware/lib
                        /usr/opt/freeware/bin/bzip2recover
/usr/opt/freeware/share/locale/sk/LC_MESSAGES/popt.mo
                        /usr/opt/freeware/lib/rpm/find-requires.perl
                        /usr/opt/freeware/src/packages/SOURCES
                        /usr/opt/freeware/man/man1/gendiff.1
                        /usr/linux/bin
                        /usr/opt/freeware/lib/librpm.so -> librpm.so.0.0.0
                        /usr/opt/freeware/src/packages/BUILD
                        /usr/opt/freeware/man/man1
                        /usr/opt/freeware/man/man8

Path: /etc/objrepos
  rpm.rte 3.0.5.41      /var/opt/freeware/lib
                        /etc/rpm
                        /var/lib
                        /etc/info-dir
                        /var/opt/freeware
/var/opt/freeware/lib/rpm -> /usr/opt/freeware/packages
root@x064:[/data/prj/gnu/bash/bash-4.4]

At the moment I have many additional "aixtools" installed as I have been working on a different project.
I will test with less later.

root@x064:[/data/prj/gnu/bash/bash-4.4]lslpp -L aixtools.\*
Fileset Level State Type Description (Uninstaller) ---------------------------------------------------------------------------- aixtools.Python.man 2.7.8.0 C F man pages 2014.Oct.14 07.21
                                                   CUT
aixtools.Python.rte 2.7.8.0 C F Python 2014.Oct.14 07.21 CUT
  aixtools.buildaix.man.en_US
                             2.0.3.1    C     F    man pages
  aixtools.buildaix.rte      2.0.3.1    C     F    1540 1007 2004
  aixtools.expat.man         2.0.1.0    C     F    built 1507 0215 1556
  aixtools.expat.rte         2.0.1.0    C     F    expat 1507 0215 1556
  aixtools.freetype.man.en_US
                             2.5.5.0    C     F    man pages
  aixtools.freetype.rte      2.5.5.0    C     F    1540 1010 1840
  aixtools.freetype.share    2.5.5.0    C     F    universal pages
  aixtools.gnu.autoconf.man.en_US
                            2.69.0.0    C     F    man pages
  aixtools.gnu.autoconf.rte
                            2.69.0.0    C     F    1530 0730 0702
  aixtools.gnu.autoconf.share
                            2.69.0.0    C     F    universal pages
  aixtools.gnu.automake.man.en_US
                            1.15.0.0    C     F    man pages
  aixtools.gnu.automake.rte
                            1.15.0.0    C     F    1530 0730 0754
  aixtools.gnu.automake.share
                            1.15.0.0    C     F    universal pages
  aixtools.gnu.coreutils.man.en_US
                            8.24.0.0    C     F    man pages
  aixtools.gnu.coreutils.rte
                            8.24.0.0    C     F    1540 1007 1926
  aixtools.gnu.coreutils.share
                            8.24.0.0    C     F    universal pages
  aixtools.gnu.diffutils.rte
                             3.3.0.0    C     F    1523 0612 2130
  aixtools.gnu.gettext.rte  0.19.5.0    C     F    1531 0807 0000
  aixtools.gnu.gettext.share
                            0.19.5.0    C     F    universal pages
  aixtools.gnu.m4.rte       1.4.17.0    C     F    1523 0613 1221
  aixtools.gnu.make.man.en_US
                             4.1.0.0    C     F    man pages
  aixtools.gnu.make.rte      4.1.0.0    C     F    1523 0613 1158
  aixtools.gnu.make.share    4.1.0.0    C     F    universal pages
  aixtools.gnu.patch.rte     2.7.5.0    C     F    1533 0818 1605
  aixtools.gperf.man         3.0.4.0    C     F    built 1508 0227 0914
  aixtools.gperf.rte         3.0.4.0    C     F    gperf 1508 0227 0914
  aixtools.gperf.share       3.0.4.0    C     F    built 1508 0227 0914
  aixtools.libffi.man.en_US
                            3.0.11.0    C     F    libffi 3.0.11 man pages
                                                   AIXTools
aixtools.libffi.rte 3.0.11.0 C F libffi version 3.0.11 for
                                                   powerpc AIXTools
  aixtools.libpng.man       1.5.12.0    C     F    libpng man pages
aixtools.libpng.rte 1.5.12.0 C F libpng version 1.5.12 for
                                                   powerpc AIXTools
  aixtools.libtool.man       2.4.6.0    C     F    built 1507 0218 0736
  aixtools.libtool.man.en_US
                             2.4.2.0    C     F    libtool 2.4.2 man pages
                                                   AIXTools
  aixtools.libtool.rte       2.4.6.0    C     F    libtool 1507 0218 0736
  aixtools.libtool.share     2.4.6.0    C     F    built 1507 0218 0736
  aixtools.libxml2.rte       2.9.2.0    C     F    libxml2 1504 0127 2106
  aixtools.openbsd.openssh.rte
                          6.9.0.1601    C     F    1537 0917 0928
aixtools.pkgconfig.rte 0.25.0.0 C F pkgconfig 0.25.0.0 2013.Oct.28
                                                   12.39 CUT




reply via email to

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