Commit graph

107 commits

Author SHA1 Message Date
Robert Yang
ef163aba20 glibc: remove unused CVE patches
They were CEVs and should be already in the source after upgraded.

(From OE-Core rev: e8a5332d467434ee65e0f29927abb9c51b025aff)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-04-06 22:57:26 +01:00
Clemens Lang
3ece01215a ldconfig-native: Fix ELF flags on 64-bit binaries
Yocto's ldconfig-native was exported from an old version of glibc and
generates an ld.so.cache that is partially ignored by current versions
of glibc when loading libraries. This occurs for 64-bit binaries, where
glibc expects FLAG_ELF_LIBC6, but ldconfig-native only generates the
standard ELF flag. Fix this with an additional patch on top of the patch
for now.

You can verify this by applying the patch below to your target copy of
glibc and running

  LD_DEBUG=libs /lib64/ld-linux-x86-64.so.2 --list $anybinary

 --- ./elf/dl-cache.c.orig       2016-01-07 11:05:36.823447171 +0100
 +++ ./elf/dl-cache.c    2016-01-07 11:19:53.925878628 +0100
 @@ -106,6 +106,8 @@
                 if (_dl_cache_check_flags (flags)                             \
                     && _dl_cache_verify_ptr (lib->value))                     \
                   {                                                           \
 +                   if (__glibc_unlikely (GLRO_dl_debug_mask & DL_DEBUG_LIBS))\
 +                       _dl_debug_printf ("  considering file %s\n", cache_data + lib->value); \
                     if (best == NULL || flags == GLRO(dl_correct_cache_id))   \
                       {                                                       \
                         HWCAP_CHECK;                                          \
 @@ -117,6 +119,9 @@
                              searching.  */                                   \
                           break;                                              \
                       }                                                       \
 +                 } else {                                                    \
 +                     if (__glibc_unlikely (GLRO_dl_debug_mask & DL_DEBUG_LIBS))              \
 +                       _dl_debug_printf ("  ignoring file %s due to flags %x, expected %x\n", cache_data + lib->value, lib->flags, GLRO(dl_correct_cache_id)); \
                   }                                                           \
               }                                                               \
             while (++middle <= right);                                        \
 @@ -265,14 +270,23 @@

        /* Only accept hwcap if it's for the right platform.  */
  #define HWCAP_CHECK \
 -      if (lib->hwcap & hwcap_exclude)                                        \
 +      if (lib->hwcap & hwcap_exclude) {                                              \
 +       if (__glibc_unlikely (GLRO_dl_debug_mask & DL_DEBUG_LIBS))            \
 +           _dl_debug_printf ("   hwcap mismatch %x vs. %x\n", lib->hwcap, hwcap_exclude); \
         continue;                                                             \
 -      if (GLRO(dl_osversion) && lib->osversion > GLRO(dl_osversion))         \
 +      }                                                                              \
 +      if (GLRO(dl_osversion) && lib->osversion > GLRO(dl_osversion)) {       \
 +       if (__glibc_unlikely (GLRO_dl_debug_mask & DL_DEBUG_LIBS))            \
 +           _dl_debug_printf ("   os version mismatch %x vs. %x\n", lib->osversion, GLRO(dl_osversion)); \
         continue;                                                             \
 +      }                                                                              \
        if (_DL_PLATFORMS_COUNT                                                \
           && (lib->hwcap & _DL_HWCAP_PLATFORM) != 0                           \
 -         && (lib->hwcap & _DL_HWCAP_PLATFORM) != platform)                   \
 -       continue
 +         && (lib->hwcap & _DL_HWCAP_PLATFORM) != platform) {                 \
 +       if (__glibc_unlikely (GLRO_dl_debug_mask & DL_DEBUG_LIBS))            \
 +           _dl_debug_printf ("   platform mismatch %x vs. %x\n", lib->hwcap & _DL_HWCAP_PLATFORM, platform); \
 +       continue;                                                             \
 +      }
        SEARCH_CACHE (cache_new);
      }
    else

This version of ldconfig-native should really be replaced with a version
matching the glibc source in use on the target platform.

(From OE-Core rev: bf9c1e6fa1c8eb86670383bad9b7c2e54bfe17f4)

Signed-off-by: Clemens Lang <clemens.lang@bmw-carit.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-03-31 13:18:06 +01:00
Richard Purdie
034618dbee glibc: Add relocation of GCONV_PATH
We're seeing various failures where nativesdk glibc can't find the gconv
modules. We've tried various workaround but this needs fixing 'properly'.
One significant problem is knowing when a binary would use this glibc
and hence when to set the path and when not to.

Add the default path to its own special section which the sdk
relocation script already knows how to handle and remap.

This significantly improves the usability of uninative.

(From OE-Core rev: d40cb4a359dbc5d762fabd996c29e468f5398dd9)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-03-07 11:55:38 +00:00
Andre McCurdy
77cfa2bcd7 glibc.inc: improve optimisation level sanity checking
- Avoid code duplication to handle -O, -O1 and -Os cases

- Consider the effective optimisation level only (avoids spurious
  warnings if multiple optimisation flags are present).

- Prefix warnings with PN instead of hardcoding "glibc" (avoids
  confusing warnings since the test is also applied to glibc-initial,
  nativesdk-glibc, nativesdk-glibc-initial, etc, and each could
  potentually have different optimisation flags).

(From OE-Core rev: 9d72015e3458c78a9f0d20ad3dc27c8a9bb1069c)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-02-28 11:33:02 +00:00
Khem Raj
91a1baaf57 glibc: Upgrade to 2.23
Drop kconfig and options-group support
Forward port cross-localedef support
Assume ssp support in libc when building gcc-initial

(From OE-Core rev: 9c3d461c4d54d684b38ec4c038a1c3c2fb9923f0)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-02-21 09:32:43 +00:00
Armin Kuster
ef30119185 glibc: Security fix CVE-2015-7547
CVE-2015-7547: getaddrinfo() stack-based buffer overflow

(From OE-Core rev: 3f454361fc323119c2850aeb239171e40d085161)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-02-18 07:37:49 +00:00
Armin Kuster
c834ebc2ac glibc: CVE-2015-8776
it was found that out-of-range time values passed to the strftime function may
cause it to crash, leading to a denial of service, or potentially disclosure
information.

(From OE-Core rev: cf747f0bbcd53af41a7f3981ac65c2b6b6e668f8)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-02-18 07:37:49 +00:00
Armin Kuster
842177a113 glibc: CVE-2015-9761
A stack overflow vulnerability was found in nan* functions that could cause
applications which process long strings with the nan function to crash or,
potentially, execute arbitrary code.

(From OE-Core rev: 2859c809ac59789d0e631b5386bdf78a5d5c4f4c)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-02-18 07:37:49 +00:00
Armin Kuster
efa1ae5e45 glibc: CVE-2015-8779
A stack overflow vulnerability in the catopen function was found, causing
applications which pass long strings to the catopen function to crash or,
potentially execute arbitrary code.

(From OE-Core rev: e0f71f123147bf4f48cc90c7f26a50164ed4115e)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-02-18 07:37:49 +00:00
Armin Kuster
aefe1fadfa glibc: CVE-2015-8777.patch
The process_envvars function in elf/rtld.c in the GNU C Library (aka glibc or
libc6) before 2.23 allows local users to bypass a pointer-guarding protection
mechanism via a zero value of the LD_POINTER_GUARD environment variable.

(From OE-Core rev: bc51411d2edda908cbef733066d78a986dfec0c0)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-02-18 07:37:49 +00:00
Armin Kuster
7226ce2830 glibc-locale: fix QA warning
WARNING: QA Issue: glibc-locale: /glibc-binary-localedata-sd-in/usr/lib/locale/sd_IN/LC_CTYPE is owned by uid 1000, which is the same as the user running bitbake. This may be due to host contamination [host-user-contaminated]

fix type
(From OE-Core rev: d53a0d410ae2390528f1090a131cd3e16d7ebcc5)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-02-07 22:53:32 +00:00
Jens Rehsack
c57ba52b70 cross-localedef-native: add ABI breaking glibc patch
Add patch from commit 96b1b5c127e9e0e637aaf7948cf3330a94a5cd57 to cross-localedef-native
to avoid broken images built with ENABLE_BINARY_LOCALE_GENERATION set to 1:

    $ sh -c "export LANG=de_DE; ls -la"
    sh: loadlocale.c:130: _nl_intern_locale_data: Assertion `cnt < (sizeof (_nl_value_type_LC_COLLATE) / sizeof (_nl_value_type_LC_COLLATE[0]))' failed.
    Aborted

(From OE-Core rev: be456fb6160bf4ef0e90ebe2014a349318d58310)

Signed-off-by: Jens Rehsack <sno@netbsd.org>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-02-06 23:10:45 +00:00
Hongxu Jia
e631be2bce glibc.inc: do not immediate expand SELECTED_OPTIMIZATION
We need to expand SELECTED_OPTIMIZATION later, so
do not immediate expansion, and do the work in
anonymous python function.

It is reasonable to give an error for -O0.

[YOCTO #7058]

(From OE-Core rev: 6fef0d528158e6317793b1ebfa26a7b5413c3e80)

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-01-31 13:29:48 +00:00
Andre McCurdy
aff2f58b67 glibc-testing.inc: drop pruning of PATCH_GET from the testglibc script
PATCH_GET is no longer exported by bitbake.conf, so no longer needs
to be pruned from the glibc do_compile() environment.

(From OE-Core rev: 5865fdc103fb92007f00a238b925be43af1378f5)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-01-30 11:37:03 +00:00
Ross Burton
44e9c3b779 meta: fix capitalisation in Upstream-Status
(From OE-Core rev: 4084bd02796358abd432104607d9c6569a7e0238)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-01-26 22:31:59 +00:00
Robert Yang
b2f1de35b4 glibc-initial.inc: use relative path to run configure
Avoid potential build path in output files.

[YOCTO #8894]

(From OE-Core rev: 54931e7d7e4c4bd547398542bb20b70506242561)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-01-18 11:47:03 +00:00
Richard Purdie
e0890b662e meta: Drop now pointless manual -dbg packaging
With the autodebug package generation logic, specifically setting FILES_${PN}-dbg
isn't needed in most cases, we can remove them.

(From OE-Core rev: 3ab59d49dd7c18e194b58d1248b4b87709b5a738)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-12-16 11:56:30 +00:00
Richard Purdie
0da1d71809 nopackages: Add class for recipes which don't generate packages
It turns out writing the same list of packaging tasks multiple
times in multiple places is error prone. Move this to a new class
'nopackages", migrate existing users and add glibc-initial and
libgcc-initial since we don't want packages for those recipes.

This means the sstate for those recipes won't be installed, saving
small amounts of build time and bandwidth.

A reference to the old package_write task is also dropped.

(From OE-Core rev: cece583d58f82a50c3a4eac876eb326ac3b8f5e5)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-12-14 22:30:57 +00:00
Alexander Kanavin
12ba5cc325 package_regex.inc: split GITTAGREGEX entries into recipe files
(From OE-Core rev: 589f5442372a7ab0f8bc40403e1739ce1cdd1cc0)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-12-08 10:20:51 +00:00
Ross Burton
cbfccc6394 glibc: fix libdir/libexecdir path confusion
$libdir/glibc is deleted if it doesn't exist but this is incorrectly assuming
what variables are used to create this directory.  In fact libexecdir is being
used in the Makefile so use that in the recipe too.

This fixes builds where libexecdir is changed.

(From OE-Core rev: 0c73dcb7c1c369a66e4c5804fcdd19f657426a5d)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-12-08 10:20:50 +00:00
Peter Seebach
09b4da6763 glibc/0029-fix-getmnt-empty-lines.patch: fix getmntent()
When confronted with an empty line, getmntent() can underrun
a buffer, possibly doing very strange things if it finds
additional space/tab characters. Backport the upstream fix.

(From OE-Core rev: 983a19a65a31b54a6f505181012bd311c28a0ae1)

Signed-off-by: Peter Seebach <peter.seebach@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-12-01 21:32:14 +00:00
Li Xin
533fc01da4 glibc: Backported a patch to fix glibc's bug(18589)
Also Fix LSB NG cases:
 * /tset/ANSI.os/locale/setlocale/T.setlocale 1 2 4 5 15
 * /tset/ANSI.os/string/strcoll_X/T.strcoll_X 1
 * /tset/LI18NUX2K.L1/base/wcscoll/T.wcscoll 1
 * /tset/LI18NUX2K.L1/utils/localedef/T.localedef 7
 * /tset/LI18NUX2K.L1/utils/sort/T.sort 1 3 17 19 33 35
 * /tset/LI18NUX2K.L1/utils/comm/T.comm 1 2
 * /tset/LI18NUX2K.L1/utils/ls-fh/T.ls-fh 2

This patch is backported from
https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=6c84109cfa26f35c3dfed3acb97d347361bd5849

(From OE-Core rev: e88fe8f4c0ea70fb271d3a11e1a3bfcac4c92626)

Signed-off-by: Li Xin <lixin.fnst@cn.fujitsu.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-12-01 21:32:12 +00:00
Ross Burton
521fac6cef glibc: fix Upstream-Status tag
(From OE-Core rev: 27debfb85c74ee7a4a13657e3aa4f3d1a326f776)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-11-25 07:50:31 +00:00
Mark Hatle
7b1763a248 glibc: Fix ld.so / prelink interface for ELF_RTYPE_CLASS_EXTERN_PROTECTED_DATA
A bug in glibc 2.22's ld.so interface for the prelink support causes
the displayed values to be incorrect.  The included path fixes this
issue.

   Clear ELF_RTYPE_CLASS_EXTERN_PROTECTED_DATA for prelink

   prelink runs ld.so with the environment variable LD_TRACE_PRELINKING
   set to dump the relocation type class from _dl_debug_bindings.  prelink
   has the following relocation type classes:

   where ELF_RTYPE_CLASS_EXTERN_PROTECTED_DATA has a conflict with
   RTYPE_CLASS_TLS.

   Since prelink doesn't use ELF_RTYPE_CLASS_EXTERN_PROTECTED_DATA, we
   should clear the ELF_RTYPE_CLASS_EXTERN_PROTECTED_DATA bit when the
   DL_DEBUG_PRELINK bit is set.

(From OE-Core rev: 12c86bdcc60c54e587a896b0dceb8bb6cc9ff7e3)

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-11-16 11:39:34 +00:00
Juro Bystricky
c86957aeb8 glibc: Allow 64 bit atomics for x86
The fix consist of allowing 64bit atomic ops for x86.
This should be safe for i586 and newer CPUs.
It also makes the synchronization more efficient.

[YOCTO #8140]

(From OE-Core rev: 2b8c7aa51f6ac7f79c4834e04b697c04afc8beaf)

Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-10-29 22:09:53 +00:00
Otavio Salvador
6d68ba98f3 glibc/mmc-utils: Rename 'BRANCH' variable to 'SRCBRANCH' for clearness
The 'BRANCH' variable name has no explicit relation with the
SRC_URI. Using 'SRCBRANCH' makes it more obvious and easier to
identify.

This patch makes the use consistent across the metadata.

(From OE-Core rev: ed86bf9c327ceda3976e799ca453028382f277a7)

Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-28 12:00:20 +01:00
Richard Purdie
56b2c53ef0 glibc: Ensure OVERRIDES doesn't influence sstate checksum
Switching MACHINE was causing nativesdk-glibc to rebuild. This was
from the use of OVERRIDES in one of the functions. Exclude OVERRIDES
from the checksum to avoid this.

[patch to oe-selftest to ensure this doesn't regress follows]

(From OE-Core rev: 5e8993632e48e83aa4bab90363506b9d5f7a468f)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-18 09:05:29 +01:00
Ross Burton
32472dcb4e glibc: don't require bash for nscd init script
The nscd init script uses #! /bin/bash but only really uses one bashism
(translated strings), so remove them and switch the shell to #! /bin/sh.

(From OE-Core rev: 487d4b4d5521ca490e22668ca66921504a1b898f)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-18 09:05:22 +01:00
Ross Burton
1c914a844b meta: Fix Upstream-Status statements
Fix a variety of problems such as typos, bad punctuations, or incorrect
Upstream-Status values.

(From OE-Core rev: bd220fe6ce8c3a0805f13a14706d3130ea872604)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-12 23:01:53 +01:00
Roy Li
d0abea0133 packagegroup-core-nfs: provide the nfs-client IMAGE_FEATURES
provide the nfs-client IMAGE_FEATURES, to ease a user to only
install nfs client related files to image

(From OE-Core rev: bbdc808a8ea76369a36473c906991e25ca49c323)

Signed-off-by: Roy Li <rongqing.li@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-12 22:48:32 +01:00
Roy Li
170b89d986 glibc: package nscd related files
install nscd related configuration file, startup files, and package them,
make nscd easy to startup

(From OE-Core rev: 6d8351ac26295d2e5a693169bd2df95b89cb32fe)

Signed-off-by: Roy Li <rongqing.li@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-03 12:43:16 +01:00
Robert Yang
f62afbf633 glibc: use cross-rpcgen to replace host's rpcgen
There might be unexpected errors when use host's rpcgen.

[YOCTO #8181]

(From OE-Core rev: 7daac5798ac9e64efe00d8fca3adc463858a185d)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-24 23:46:54 +01:00
Martin Jansa
c1e7995c34 glibc-package: use ${PN} in INSANE_SKIP
* INSANE_SKIP_${PN}_append_aarch64 is causing following warning in some
  setups:
  WARNING: Variable key INSANE_SKIP_${PN} () replaces original key INSANE_SKIP_glibc ().
* in worst case this will be applied also for glibc-initial package
  which is using the same glibc-package.inc, but glibc-initial doesn't
  create any packages so we should be fine
* someone building for aarch64 should confirm verify that this
  INSANE_SKIP is still needed and cannot be fixed properly it was
  introduced in:
    commit aeb6f53dd607ceb0d2265a05c27f751109c73752
    Author: Mark Hatle <mark.hatle@windriver.com>
    Date:   Thu Dec 18 16:51:13 2014 +0800

    glibc-package: aarch64 enable symlink for ABI compliance

    aarch64 requires the ld.so to be present in /lib, even if the rest
    of the libraries are installed into an alternative directory.

    See: https://sourceware.org/glibc/wiki/ABIList

    Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
    Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>

(From OE-Core rev: 34ffa04a5030d23070aa4d389d1cc51438525670)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-19 18:05:42 +01:00
Khem Raj
625e0ec8b5 glibc: Consider adding -Wno-error in cases when not using -O2
glibc has recently turned on Werror globally which is good but then not
all option combos are well tested so there still remains cleanup needed
when not using -O2, so lets just disable Werror in such cases, until
fixed upstream

Change-Id: I2d491c360a15b0752c97ff77ee0faaeede6e8d2a
(From OE-Core rev: 52a90e8e592ddd228939e15d7fd0d69f3c1e816f)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-19 18:05:34 +01:00
Khem Raj
b3ec91dd4c glibc: Package libmvec when built
libmvec is new library in glibc 2.22 and currently turned on by default
on x86_64. this helps in packaging it properly when its generated

Fixes warning like
WARNING: QA Issue: nativesdk-glibc: Files/directories were installed but
not shipped in any package:
  /usr/local/oecore-x86_64/sysroots/x86_64-angstromsdk-linux/lib/libmvec-2.21.90.so
  Please set FILES such that these items are packaged. Alternatively if
  they are unneeded, avoid installing them or delete them within
  do_install. [installed-vs-shipped]

(From OE-Core rev: f009e592fd5ef65c2417ec8cc131056a575a003f)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-16 22:40:53 +01:00
Khem Raj
cb7368c110 glibc: Upgrade 2.21 -> 2.22
- git'ify the OE patches
- add_resource_h_to_wait_h.patch - dropped, we do not support that old
  perf anymore
- mips-rld-map-check.patch - Dropped because binutils is fixed for it
  see https://sourceware.org/ml/binutils/2011-12/msg00112.html
- initgroups_keys.patch - Folded into
  0026-eglibc-Forward-port-eglibc-options-groups-support.patch

Change-Id: Ib8e731b212f52b8ff12e2180babbc19970fb1ef1
(From OE-Core rev: 6ea08396dbb628140fd3289fc9fb19df97914326)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-16 22:40:53 +01:00
Dmitry Eremin-Solenikov
7b56b2cf61 glibc: don't override TUNE_CCARGS for MIPS
Overriding TUNE_CCARGS this way breaks MULTILIB setup for MIPS. This
override disables multilib handling of tunes for TUNE_CCARGS, thus
enforcing glibc's TUNE_CCARGS to the TUNE_CCARGS of main DEFAULTTUNE.

Glibc perfectly build without this override for both simple and multilib
cases.

(From OE-Core rev: da5d21c3a1ae5d4767b803ba05dcce2f1b3d3808)

Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-01 07:34:05 +01:00
Robert Yang
d890d81aa5 glibc: print PN when bbwarn
The current warning is:
WARNING: glibc: unable to generate header for spray.x

Which is easier to debug than:
WARNING: unable to generate header for spray.x

And remove the file before generate it again to fix the warning when
recompile:
file `bootparam_prot.h' already exists and may be overwritten
WARNING: unable to generate header for bootparam_prot.x
file `nlm_prot.h' already exists and may be overwritten
WARNING: unable to generate header for nlm_prot.x
[snip]

(From OE-Core rev: 5ae6d368a89d5f7f3c860f80aa8afb689053afd4)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-07-16 15:09:20 +01:00
Robert Yang
db18fed6f8 glibc: remove invalid ac_cv_path_KSH
There is no ac_cv_path_KSH in configure, can't find it
in config.log after remove, either.

(From OE-Core rev: 6b58670d8b8f2d1c1a7d5043652f48a364a0df5d)

(From OE-Core rev: f193559f5050ab11ec1ebe4ddf7744c502b4983a)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-07-16 15:09:16 +01:00
Robert Yang
4e9c3db01e glibc-initial: remove invalid sed command
There is no "{ (exit 1); exit 1; }; }" in configure any more, and also
remove chmod since sed command is removed.

(From OE-Core rev: e516e11d5998cdad45c670e22b980089e463a574)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-07-12 22:55:44 +01:00
Yuanjie Huang
09febe09dc ldconfig-native: Add 64-bit flag for ELF64 entries
ldconfig-native was grepped from an old version of glibc, and its output
lacks neccessary 64bit flag in entries.
Due to this defect, ctypes.util.find_library() python function fails to
detect any library due to the old file format that ldconfig-native
creates. This fix sets architecture-dependent 64bit flags for 64-bit ELF.

Since the host's elf.h may not have definition for new AArch64 machine
type, a work-around is added to correctly flag 64-bit ARM libraries.

(From OE-Core rev: 0b0e4d7aa64feded0a7bf89264d2367489808a38)

Signed-off-by: Yuanjie Huang <yuanjie.huang@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-07-08 00:01:22 +01:00
Andre McCurdy
a44f203eab glibc: fix typo in add_resource_h_to_wait_h.patch
(From OE-Core rev: 6cb3078a9da332ae4c61347c8be1403d6fb1f9d0)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-07-07 13:33:26 +01:00
Richard Purdie
fed80c3d40 staging: Strip files in sysroot
Add functionality to strip binaries/libraries going into the sysroot. Whilst
this does fractionally slow down the build, it also significantly reduces the
size of the sstate cache files.

(From OE-Core rev: 30f3774f4cd5bbb8c1e6884aeff5af91ab053fc1)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-23 16:07:23 +01:00
Khem Raj
8a5df28e67 glibc: ignore for musl/uclibc but only for target recipes
we still need nativesdk  or native recipes for libc to come
from glibc, but only be ignored for target recipes types

Change-Id: Ibaf8114f2aef63f1eadf493b264e78cd928535a0
(From OE-Core rev: 66e4a0d10a382618fe925b33a9d6df3ee49297e2)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-03 16:38:47 +01:00
Andre McCurdy
9dbb2d2bc8 glibc: remove duplicate --disable-nscd from EXTRA_OECONF
An appropriate --enable-nscd or --disable-nscd option is added to
EXTRA_OECONF based on the 'libc-inet-anl' DISTRO_FEATURES check.

(From OE-Core rev: 05360e6e5e82395ef3a5035b62b805d22592d571)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-03 16:38:47 +01:00
Andre McCurdy
1fd152fef3 glibc: Fix __memcpy_chk on non-SSE2 CPUs
Backport from upstream glibc:

  https://sourceware.org/git/?p=glibc.git;a=commitdiff;h=132a1328eccd20621b77f7810eebbeec0a1af187

Note that the fix is only required when glibc is built for i686/multiarch,
so is not applicable in the default oe-core x86 configuration (which builds
glibc for i586 and therefore does not include SSE2 optimised memcpy etc).

(From OE-Core rev: e643b9bc4c459ea8b59573cf67f2494388e7a377)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-03 16:38:46 +01:00
Juro Bystricky
55fe5a06d9 eglibc-use-option-groups: Conditionally exclude c++ tests
Some test programs written in c++ are still included in spite of
"libc-cxx-tests" being omitted from DISTRO_FEATURES_LIBC.
All .cc programs are compiled with g++.
g++ automatically specifies linking against the C++ library.
This patch conditionally excludes the following tests as well:

  bug-atexit3-lib.cc
  tst-cancel24.cc
  tst-cancel24-static.cc
  tst-unique3lib.cc
  tst-unique3lib2.cc
  tst-unique4lib.cc
  tst-unique3.cc
  tst-unique4.cc

Tested with DISTRO_FEATURES_LIBC_remove = " libc-cxx-tests"

[YOCTO #7003]

(From OE-Core rev: cef29abf0c699b8bd5c5b52ba15ee63bce5fc258)

Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-24 07:19:21 +01:00
Haris Okanovic
37fe48d801 glibc: CVE-2015-1781: resolv/nss_dns/dns-host.c buffer overflow
Backport Arjun Shankar's patch for CVE-2015-1781:

A buffer overflow flaw was found in the way glibc's gethostbyname_r() and
other related functions computed the size of a buffer when passed a
misaligned buffer as input. An attacker able to make an application call
any of these functions with a misaligned buffer could use this flaw to
crash the application or, potentially, execute arbitrary code with the
permissions of the user running the application.

https://sourceware.org/bugzilla/show_bug.cgi?id=18287

(From OE-Core rev: c0f0b6e6ef1edc0a9f9e1ceffb1cdbbef2e409c6)

Signed-off-by: Haris Okanovic <haris.okanovic@ni.com>
Reviewed-by: Ben Shelton <ben.shelton@ni.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-18 09:23:03 +01:00
Richard Purdie
cf8c2e3c2e glibc: Fix x32 make race
On x32 builds, sysd-syscalls appears malformed since the make-target-directory
appears on the wrong line. This causes races during the build process where you can
see failures like:

Assembler messages:
Fatal error: can't create [...]glibc/2.21-r0/build-x86_64-poky-linux-gnux32/time/gettimeofday.os: No such file or directory
Assembler messages:
Fatal error: can't create [...]glibc/2.21-r0/build-x86_64-poky-linux-gnux32/time/time.os: No such file or directory

The issue is that the carriage return is being escaped when it should
not be. The change to sysd-syscalls with this change:

before:

"""
$(foreach p,$(sysd-rules-targets),$(objpfx)$(patsubst %,$p,time).os): \
                $(..)sysdeps/unix/make-syscalls.sh      $(make-target-directory)
        (echo '#include <dl-vdso.h>';
"""

after:

"""
$(foreach p,$(sysd-rules-targets),$(objpfx)$(patsubst %,$p,time).os): \
                $(..)sysdeps/unix/make-syscalls.sh
        $(make-target-directory)
        (echo '#include <dl-vdso.h>';
"""

which ensures the target directory is correctly created. Only x32 uses the vdso
code which contains the bug which is why the error only really appears on x32.

(From OE-Core rev: ae4729ed6c5e5443c42f8825dd85873f06a3570e)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-14 11:44:00 +01:00
Khem Raj
2bdbadd053 glibc, packagegroup-self-hosted, packagegroup-core-lsb: Consider non-glibc libcs
Make skipping expression simpler to check for given libc
Make sure glibc specific items are covered with right override

Change-Id: I8b4a0b7cbfe38ffdc9320f798038c79c7220552b
(From OE-Core rev: 6f4be55ca66b4470aa46c0ae356070ed166f44ce)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-27 14:59:47 +01:00