Skip to content
Snippets Groups Projects
  1. Feb 21, 2019
  2. Feb 20, 2019
  3. Feb 13, 2019
  4. Feb 09, 2019
  5. Feb 07, 2019
    • gnzlbg's avatar
      Build all platforms in CI · 8f1acf46
      gnzlbg authored
      This commit adds a `ci/build.sh` script that checks that libc builds correctly
      for some common configurations (`--no-default-features`, `default`,
      `extra_traits`) on most targets supported by Rust since Rust 1.13.0 (the oldest
      Rust version that libc supports).
      
      The build matrix is refactored into two stages.
      
      The first stage is called `tools-and-build-and-tier1` and it aims to discover
      issues quickly by running the documentation and linter builds, as well as
      checking that the library builds correctly on all targets in all supported
      channels and "problematic" Rust versions; Rust versions adding major new
      features like `repr(align)`, `union`, etc. This first stage also runs
      libc-test for the tier-1 targets on linux and osx. These builds finish
      quickly because no emulation is necessary.
      
      The second stage is called `tier2` and it runs libc-test for all other targets
      for which we are currently able to do so.
      
      Closes #1229 .
      8f1acf46
  6. Feb 05, 2019
    • Alan Somers's avatar
      Add an integration test for the cmsg(3) functions. · 38cf5b15
      Alan Somers authored
      Since these are defined in C as macros, they must be reimplemented in
      libc as Rust functions.  They're hard to get exactly right, and they
      vary from platform to platform.  The test builds custom C code that uses
      the real macros, and compares its output to the Rust versions' output
      for various inputs.
      
      Skip the CMSG_NXTHDR test on sparc64 linux because it hits a Bus Error.
      
      Issue #1239
      
      Skip the entire cmsg test program on s390x because it dumps core
      seemingly before the kernel finishes booting.
      
      Issue #1240
      38cf5b15
  7. Feb 02, 2019
  8. Jan 30, 2019
  9. Jan 21, 2019
  10. Dec 10, 2018
  11. Dec 07, 2018
  12. Nov 26, 2018
  13. Nov 24, 2018
  14. Nov 20, 2018
  15. Oct 30, 2018
  16. Aug 01, 2018
  17. Jul 29, 2018
  18. Jul 18, 2018
  19. Jul 17, 2018
  20. Jul 12, 2018
  21. Jun 01, 2018
  22. Apr 10, 2018
    • Mike Hommey's avatar
      Add PTHREAD_*_MUTEX_INITIALIZER_NP for glibc · d9013273
      Mike Hommey authored
      `pthread_mutex_t` varies across architectures, in several ways:
      - endianness alters the ordering of bytes, since the contents of the
        struct are larger than 8-bit.
      - its length varies.
      - the location of the mutex kind (`PTHREAD_MUTEX_RECURSIVE`,
        `PTHREAD_MUTEX_ERRORCHECK` or `PTHREAD_MUTEX_ADAPTIVE_NP`) varies
        between 32-bit and 64-bit: On 32-bit architectures, it is preceded by
        three int/unsigned int, while on 64-bit architectures, it is preceded
        by four of them.
      
      These initializers are only available from <pthread.h> when _GNU_SOURCE
      is defined.
      
      Relax the cfg_if check in ci/style.rs to allow #[cfg(target_endian)]
      tests.
      d9013273
Loading