Skip to content
Snippets Groups Projects
  1. Aug 12, 2020
  2. Jul 25, 2020
  3. Jun 26, 2020
  4. Mar 18, 2020
  5. Feb 29, 2020
  6. Feb 21, 2020
  7. Feb 19, 2020
  8. Oct 24, 2019
  9. Oct 23, 2019
  10. Sep 25, 2019
  11. Sep 20, 2019
  12. Sep 16, 2019
  13. Sep 12, 2019
  14. May 29, 2019
  15. Feb 13, 2019
  16. Feb 07, 2019
    • gnzlbg's avatar
      Fix build on all platforms · a17a91cd
      gnzlbg authored
      This PR fixes the build on all platforms and all Rust version down to the
      minimum Rust version supported by libc: Rust 1.13.0.
      
      The `build.rs` is extended with logic to detect the newer Rust features used by
      `libc` since Rust 1.13.0:
      
      * Rust 1.19.0: `untagged_unions`. APIs using untagged unions are gated on
        `cfg(libc_unions)` and not available on older Rust versions.
      
      * Rust 1.25.0: `repr(align)`. Because `repr(align)` cannot be parsed by older
        Rust versions, all uses of `repr(align)` are split into `align.rs` and
        `no_align.rs` modules, which are gated on the `cfg(libc_align)` at the top
        level. These modules sometimes contain macros that are expanded at the top
        level to avoid privacy issues (`pub(crate)` is not available in older Rust
        versions). Closes #1242 .
      
      * Rust : `const` `mem::size_of`. These uses are worked around with hardcoded
        constants on older Rust versions.
      
      Also, `repr(packed)` structs cannot automatically `derive()` some traits like
      `Debug`. These have been moved into `s_no_extra_traits!` and the lint of missing
      `Debug` implementations on public items is silenced for these. We can manually
      implement the `extra_traits` for these in a follow up PR. This is tracked
      in #1243. Also, `extra_traits` does not enable `align` manually anymore.
      
      Since `f64::to_bits` is not available in older Rust versions, its usage
      has been replaced with a `transmute` to an `u64` which is what that method
      does under the hood.
      
      Closes #1232 .
      a17a91cd
  17. Feb 03, 2019
  18. Dec 23, 2018
  19. Dec 21, 2018
  20. Dec 20, 2018
  21. Dec 18, 2018
  22. Dec 17, 2018
  23. Nov 23, 2018
Loading