I applied the patch and uploaded it to
https://launchpad.net/~juliank/+archive/ubuntu/lp1644363+1422795/+packages
to build. I'll upload bash there once that's done to see if it helps.

** Description changed:

  On arm64, the bash gettext configure test causes binutils to segv:
  
  configure:8453: gcc -o conftest -g -O2 -fstack-protector 
--param=ssp-buffer-size=4 -Wformat -Werror=
- format-security -Wall -D_FORTIFY_SOURCE=2 -Wl,-Bsymbolic-functions 
-Wl,-z,relro -static conftest.c  
+ format-security -Wall -D_FORTIFY_SOURCE=2 -Wl,-Bsymbolic-functions 
-Wl,-z,relro -static conftest.c
  >&5
  conftest.c: In function 'main':
  conftest.c:116:8: warning: cast from pointer to integer of different size 
[-Wpointer-to-int-cast]
-  return (int) gettext ("") + (int) ngettext ("", "", 0) + _nl_msg_cat_cntr + 
*_nl_domain_bindings
-         ^
+  return (int) gettext ("") + (int) ngettext ("", "", 0) + _nl_msg_cat_cntr + 
*_nl_domain_bindings
+         ^
  conftest.c:116:29: warning: cast from pointer to integer of different size 
[-Wpointer-to-int-cast]
-  return (int) gettext ("") + (int) ngettext ("", "", 0) + _nl_msg_cat_cntr + 
*_nl_domain_bindings
-                              ^
+  return (int) gettext ("") + (int) ngettext ("", "", 0) + _nl_msg_cat_cntr + 
*_nl_domain_bindings
+                              ^
  collect2: error: ld terminated with signal 11 [Segmentation fault], core 
dumped
  configure:8453: $? = 1
  configure: failed program was:
  | /* confdefs.h */
  | #define PACKAGE_NAME "bash"
  | #define PACKAGE_TARNAME "bash"
  | #define PACKAGE_VERSION "4.3-release"
  | #define PACKAGE_STRING "bash 4.3-release"
  | #define PACKAGE_BUGREPORT "[email protected]"
  | #define PACKAGE_URL ""
  | #define ALIAS 1
  | #define PUSHD_AND_POPD 1
  | #define RESTRICTED_SHELL 1
  | #define PROCESS_SUBSTITUTION 1
  | #define PROMPT_STRING_DECODE 1
  | #define SELECT_COMMAND 1
  | #define HELP_BUILTIN 1
  | #define ARRAY_VARS 1
  | #define DPAREN_ARITHMETIC 1
  | #define BRACE_EXPANSION 1
  | #define COMMAND_TIMING 1
  | #define EXTENDED_GLOB 1
  | #define EXTGLOB_DEFAULT 0
  | #define COND_COMMAND 1
  | #define COND_REGEXP 1
  | #define COPROCESS_SUPPORT 1
  | #define ARITH_FOR_COMMAND 1
  | #define NETWORK_REDIRECTIONS 1
  | #define PROGRAMMABLE_COMPLETION 1
  | #define DEBUGGER 1
  | #define CASEMOD_ATTRS 1
  | #define CASEMOD_EXPANSIONS 1
  | #define GLOBASCII_DEFAULT 0
  | #define MEMSCRAMBLE 1
  | #define STDC_HEADERS 1
  | #define HAVE_SYS_TYPES_H 1
  | #define HAVE_SYS_STAT_H 1
  | #define HAVE_STDLIB_H 1
  | #define HAVE_STRING_H 1
  | #define HAVE_MEMORY_H 1
  | #define HAVE_STRINGS_H 1
  | #define HAVE_INTTYPES_H 1
  | #define HAVE_STDINT_H 1
  | #define HAVE_UNISTD_H 1
  | #define __EXTENSIONS__ 1
  | #define _ALL_SOURCE 1
  | #define _GNU_SOURCE 1
  | #define _POSIX_PTHREAD_SEMANTICS 1
  | #define _TANDEM_SOURCE 1
  | #define READLINE 1
  | #define HISTORY 1
  | #define BANG_HISTORY 1
  | #define _GNU_SOURCE 1
  | #define HAVE_STRINGIZE 1
  | #define HAVE_LONG_DOUBLE_WIDER 1
  | #define HAVE_LONG_DOUBLE 1
  | #define PROTOTYPES 1
  | #define __PROTOTYPES 1
  | #define restrict __restrict
  | #define HAVE_ALLOCA_H 1
  | #define HAVE_ALLOCA 1
  | #define HAVE_STDLIB_H 1
  | #define HAVE_UNISTD_H 1
  | #define HAVE_SYS_PARAM_H 1
  | #define HAVE_SYS_TIME_H 1
  | #define HAVE_GETPAGESIZE 1
  | #define HAVE_MMAP 1
  | #define INTDIV0_RAISES_SIGFPE 0
  | #define HAVE_INTTYPES_H_WITH_UINTMAX 1
  | #define HAVE_STDINT_H_WITH_UINTMAX 1
  | #define HAVE_UNSIGNED_LONG_LONG 1
  | #define HAVE_UINTMAX_T 1
  | #define HAVE_INTTYPES_H 1
  | #define HAVE_ARGZ_H 1
  | #define HAVE_LIMITS_H 1
  | #define HAVE_LOCALE_H 1
  | #define HAVE_NL_TYPES_H 1
  | #define HAVE_MALLOC_H 1
  | #define HAVE_STDDEF_H 1
  | #define HAVE_STDLIB_H 1
  | #define HAVE_STRING_H 1
  | #define HAVE_UNISTD_H 1
  | #define HAVE_SYS_PARAM_H 1
  | #define HAVE_FEOF_UNLOCKED 1
  | #define HAVE_FGETS_UNLOCKED 1
  | #define HAVE_GETC_UNLOCKED 1
  | #define HAVE_GETCWD 1
  | #define HAVE_GETEGID 1
  | #define HAVE_GETEUID 1
  | #define HAVE_GETGID 1
  | #define HAVE_GETUID 1
  | #define HAVE_MEMPCPY 1
  | #define HAVE_MUNMAP 1
  | #define HAVE_PUTENV 1
  | #define HAVE_SETENV 1
  | #define HAVE_SETLOCALE 1
  | #define HAVE_LOCALECONV 1
  | #define HAVE_STPCPY 1
  | #define HAVE_STRCASECMP 1
  | #define HAVE_STRDUP 1
  | #define HAVE_STRTOUL 1
  | #define HAVE_TSEARCH 1
  | #define HAVE___ARGZ_COUNT 1
  | #define HAVE___ARGZ_STRINGIFY 1
  | #define HAVE___ARGZ_NEXT 1
  | #define HAVE___FSETLOCKING 1
  | #define HAVE_ICONV 1
- | #define ICONV_CONST 
+ | #define ICONV_CONST
  | #define HAVE_LANGINFO_CODESET 1
  | #define HAVE_LC_MESSAGES 1
  | /* end confdefs.h.  */
  | #include <libintl.h>
  | extern int _nl_msg_cat_cntr;
  | extern int *_nl_domain_bindings;
  | int
  | main ()
  | {
  | bindtextdomain ("", "");
  | return (int) gettext ("") + (int) ngettext ("", "", 0) + _nl_msg_cat_cntr + 
*_nl_domain_bindings
  |   ;
  |   return 0;
  | }
  configure:8461: result: no
+ 
+ [Test case]
+ Build bash SRU, it should find system gettext, and compile properly.
+ 
+ [Regression Potential]
+ ld will stop crashing in some cases, which could potentially change some 
dependencies for SRUs (if their configure test failed due to an ld crash).

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1644363

Title:
  [trusty/arm64] binutils segfaults on bash gettext configure test

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/binutils/+bug/1644363/+subscriptions

-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to