summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Update mipsel-unknown-linux-musl too.Dan Gohman2022-01-241-7/+7
|
* Update the sysinfo_guard.patch patch for the new toolchain.Dan Gohman2022-01-241-2/+2
|
* Update more paths for the new toolchain.Dan Gohman2022-01-241-3/+3
|
* Update the mips-unknown-linux-musl CI toolchain.Dan Gohman2022-01-241-4/+4
| | | | | | | | | Update the mips-unknown-linux-musl CI toolchain to openwrt-sdk-21.02.1, as suggested [here]. This also switches from ar71xx to ath79, since [ar71xx is now deprecated] and ath79 is the replacement. [here]: https://github.com/rust-lang/libc/pull/2633#issuecomment-1016003790 [ar71xx is now deprecated]: https://openwrt.org/docs/techref/targets/ar71xx
* Define the `MFD_HUGE_*` macros for Linux and Android.Dan Gohman2022-01-242-0/+28
| | | | | | | This defines the `MFD_HUGE_*` flags which can accompany the `MEMFD_HUGETLB` flag in Linux's [`memfd_create`] call. [`memfd_create`]: https://man7.org/linux/man-pages/man2/memfd_create.2.html
* Auto merge of #2640 - skrap:master, r=Amanieubors2022-01-215-10/+41
|\ | | | | | | | | | | | | | | add CI for armv7-unknown-linux-uclibceabihf As discussed in https://github.com/rust-lang/libc/pull/2636, this is a framework for CI on targets with no prebuilt std. They will build via `nightly` and `-Zbuild-std`, and run the unit tests via qemu-user (or whatever else the dockerfile specifies). It seems like I could write some more documentation about how to add more targets of this type, but perhaps I can get a round of feedback on the mechanism here before I go and write that.
| * add CI for armv7-unknown-linux-uclibceabihfJonah Petri2022-01-215-10/+41
| |
* | Auto merge of #2543 - asomers:fspacectl, r=Amanieubors2022-01-212-1/+26
|\ \ | |/ |/| | | Add fspacectl, new in FreeBSD 14
| * Add fspacectl, new in FreeBSD 14Alan Somers2022-01-202-1/+26
| |
* | Auto merge of #2638 - devnexen:shm_create_largepage_fbsd, r=Amanieubors2022-01-212-1/+16
|\ \ | |/ |/| | | freebsd 13 non thp userspace fn.
| * freebsd 13 non thp userspace fn.David CARLIER2022-01-202-1/+16
| |
* | Auto merge of #2637 - asomers:no-kern-stacktop, r=Amanieubors2022-01-203-77/+4
|\ \ | |/ |/| | | | | | | | | | | | | Fix the build on the latest FreeBSD 14 snapshot * KERN_STACKTOP was recently removed upstream, and has never been included in a stable FreeBSD release * The MNTK_ flags are for kernel use only and aren't visible to userland cc `@GuillaumeGomez`
| * Update the FreeBSD 14 CI imageAlan Somers2022-01-191-1/+1
| |
| * Delete FreeBSD's MNTK_ constantsAlan Somers2022-01-192-73/+3
| | | | | | | | | | | | | | These are only for the kernel's internal use and aren't exposed to userland. They also aren't stable across versions, and may be changed or deleted at any time. For example, by https://github.com/freebsd/freebsd-src/commit/4dcdf3987c1cc95d0d344468e8aa15452254691c
| * Remove KERN_STACKTOPAlan Somers2022-01-192-3/+0
| | | | | | | | | | | | | | | | It got removed by upstream. This should not be considered a breaking change, because KERN_STACKTOP has never been included in a released version of FreeBSD. https://github.com/freebsd/freebsd-src/commit/1544f5add8c72c28e939a1557e3e319c6cfe5008
* | Auto merge of #2636 - skrap:master, r=Amanieu0.2.113bors2022-01-204-31/+21
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | uclibc: fix O_TMPFILE value, hide some unused fields to fix libc-test This was a bit of a yak-shave. First, O_TMPFILE was wrong because 020000000 is decimal, not octal. :facepalm: This was, of course, causing all sorts of things to be horrible. That led me to switch to a newer toolchain which actually defined O_TMPFILE, so that the libc tests pass on `armv7-unknown-linux-uclibceabihf`. That revealed that certain field names had changed since the last time I ran the libc tests on this architecture, which revealed that some struct fields (e.g. `__unused`) were being marked as `pub` where all other architectures left them as private. So, this patch might seem somewhat sprawling, but without all of these changes it's not possible to run libc-test! To test: * get https://toolchains.bootlin.com/downloads/releases/toolchains/armv7-eabihf/tarballs/armv7-eabihf--uclibc--bleeding-edge-2021.11-1.tar.bz2 * unpack somewhere, and call that `$TOOLCHAIN` ``` cd libc-test PATH=$TOOLCHAIN/bin:$PATH \ CC_armv7_unknown_linux_uclibc=armv7-buildroot-linux-uclibc-gcc \ CARGO_TARGET_ARMV7_UNKNOWN_LINUX_UCLIBCEABIHF_LINKER=armv7-buildroot-linux-uclibc-gcc \ CARGO_TARGET_ARMV7_UNKNOWN_LINUX_UCLIBCEABIHF_RUNNER="qemu-arm -L $TOOLCHAIN/arm-buildroot-linux-uclibcgnueabihf/sysroot/" \ cargo +nightly test --target armv7-unknown-linux-uclibceabihf -Zbuild-std=core,std ```
| * | uclibc: fix O_TMPFILE value, un-pub some unused fields to fix libc-testJonah Petri2022-01-194-31/+21
| |/
* | Auto merge of #2635 - Thomasdezeeuw:v0.2.113, r=Amanieubors2022-01-202-3/+3
|\ \ | |/ |/| | | | | | | | | | | Release v0.2.113 To include https://github.com/rust-lang/libc/pull/2625. Unblocks https://github.com/rust-lang/socket2/pull/284
| * Release v0.2.113Thomas de Zeeuw2022-01-192-3/+3
| |
* | Auto merge of #2634 - skrap:master, r=Amanieubors2022-01-192-7/+1
|\ \ | |/ |/| | | | | | | | | | | uclibc: Don't specialize PTRACE_O_MASK for uclibc This constant comes from the kernel headers, so its value should not depend on the libc type. To test: see instructions in https://github.com/rust-lang/libc/pull/2566
| * uclibc: PTRACE_O_MASK comes from the kernel, not from libc, so don't ↵Jonah Petri2022-01-192-7/+1
|/ | | | specialize it for uclibc
* Auto merge of #2615 - lancethepants:TIOCGWINSZ, r=Amanieubors2022-01-1836-935/+329
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | define TIOCGWINSZ as c_ulong under arm-uclibc. I'm trying to bring up a new target for rust, `armv7-unknown-linux-uclibceabi (softfloat)`. https://github.com/rust-lang/rust/pull/92383 Looks like a lot of work has already been hashed out from the recent addition of `armv7-unknown-linux-uclibceabihf`. The only issue I'm currently seeing is when I encounter `TIOCGWINSZ` in a couple places. This is the error I see. ``` Compiling termize v0.1.1 (/mmc/.cargo/registry/src/github.com-1285ae84e5963aae/termize-0.1.1) error[E0277]: the trait bound `u32: From<i32>` is not satisfied --> src/platform/unix.rs:12:43 | 12 | let mut result = ioctl(STDOUT_FILENO, TIOCGWINSZ.into(), &mut window); | ----- ^^^^^^^^^^^^^^^^^ the trait `From<i32>` is not implemented for `u32` | | | required by a bound introduced by this call | = help: the following implementations were found: <u32 as From<Ipv4Addr>> <u32 as From<NonZeroU32>> <u32 as From<bool>> <u32 as From<char>> and 2 others = note: required because of the requirements on the impl of `Into<u32>` for `i32` error[E0277]: the trait bound `u32: From<i32>` is not satisfied ``` I see the error in the `termize` crate, and also `shell.rs` in the cargo source. My current fix is to define TIOCGWINSZ as c_ulong under arm-uclibc. I don't want to break anything with the established `armv7-unknown-linux-uclibceabihf` target so perhaps `@skrap` could chime in and take a look. Maybe a better solutions exists.
| * Undefine FIOASYNC for sparc64.lancethepants2022-01-181-1/+1
| |
| * Consolidate all Ioctl constants and functions by architecture.lancethepants2022-01-1736-935/+329
| |
* | Auto merge of #2625 - tamird:ip_mreqn, r=Amanieubors2022-01-176-0/+21
|\ \ | |/ |/| | | | | | | Add `ip_mreqn` on more platforms See individual commits; please do not squash on merge. `@Thomasdezeeuw`
| * Add `ip_mreqn` on AndroidTamir Duberstein2022-01-172-0/+7
| | | | | | | | | | This was added to Android's libc (bionic) in 2013. See https://cs.android.com/android/_/android/platform/bionic/+/655a7c081f83b8351ed5f11a6c6accd9458293a8.
| * Add `ip_mreqn` on FreeBSDTamir Duberstein2022-01-172-0/+7
| | | | | | | | | | This was added in FreeBSD 13.0.0. See https://github.com/freebsd/freebsd-src/commit/0dfc145a.
| * Add `ip_mreqn` on Apple platformsTamir Duberstein2022-01-172-0/+7
|/ | | | | Available since macOS 10.7. See https://developer.apple.com/documentation/kernel/ip_mreqn.
* Auto merge of #2631 - devnexen:fbsd13_upd_shm, r=Amanieubors2022-01-172-0/+26
|\ | | | | | | shm api update from FreeBSD 13
| * shm api update from FreeBSD 13David CARLIER2022-01-162-0/+26
| |
* | Auto merge of #2630 - kaniini:chore/s390x-musl-fixes, r=Amanieubors2022-01-171-4/+4
|\ \ | | | | | | | | | | | | | | | Fix definitions for the s390x-musl target. When I was creating the original s390x musl definitions, I copied a little too closely from glibc for the ioctl(2) constants. This was then exacerbated in c7c238d812 with the creation of an erroneous definition.
| * | Fix definitions of FIONBIO/FIONCLEX/FIOCLEX constants on s390x-musl.Ariadne Conill2022-01-161-3/+3
| | | | | | | | | | | | | | | | | | On musl, these constants must be ints, not ulongs. On glibc, they are ulong, and as such, were erroneously included as ulongs in the initial s390x-musl definitions.
| * | Fix ioctl definition on s390x-musl targets.Ariadne Conill2022-01-161-1/+1
| |/ | | | | | | | | | | ioctl(2) always takes an int as the request, not a ulong, on musl. I copied a little too closely from the glibc definitions when creating the original s390x-musl ones.
* | Auto merge of #2629 - devnexen:apple_execinfo_upd, r=Amanieubors2022-01-173-0/+30
|\ \ | | | | | | | | | macOs update backtrace api.
| * | macOs update backtrace api.David CARLIER2022-01-153-0/+30
| |/
* | Auto merge of #2628 - devnexen:netbsd_prot_mprotect, r=Amanieubors2022-01-162-0/+9
|\ \ | | | | | | | | | netbsd add PROT_MPROTECT macros.
| * | netbsd add PROT_MPROTECT macros.David Carlier2022-01-152-0/+9
| |/
* | Auto merge of #2626 - Mek101:master, r=Amanieubors2022-01-162-0/+5
|\ \ | |/ |/| | | | | | | Add android ioctl constansts: BLKSSZGET and BLKPBSZGET Adds the linux ioctl constants to android
| * Add android ioctl constansts: BLKSSZGET and BLKPBSZGETMek1012022-01-132-0/+5
|/
* Auto merge of #2624 - rtzoeller:umount_nofollow, r=Amanieubors2022-01-131-2/+2
|\ | | | | | | | | | | Define UMOUNT_NOFOLLOW on Linux-like platforms Requested-by: https://github.com/nix-rust/nix/issues/1631
| * Define UMOUNT_NOFOLLOW on Linux-like platformsRyan Zoeller2022-01-121-2/+2
|/
* Auto merge of #2622 - devnexen:fuse_super_magic, r=Amanieubors2022-01-122-0/+5
|\ | | | | | | | | | | linux GLIBC add FUSE_SUPER_MAGIC close #2621
| * linux GLIBC add FUSE_SUPER_MAGICDavid Carlier2022-01-122-0/+5
| | | | | | | | close #2621
* | Auto merge of #2620 - rtzoeller:android_posix_vdisable, r=Amanieubors2022-01-122-0/+3
|\ \ | |/ |/| | | | | | | Android defines _POSIX_VDISABLE https://github.com/aosp-mirror/platform_bionic/blob/c44b1d0676ded732df4b3b21c5f798eacae93228/libc/include/bits/posix_limits.h#L95
| * Android defines _POSIX_VDISABLERyan Zoeller2022-01-102-0/+3
|/
* Auto merge of #2617 - devnexen:fbsd14_cpuset_upd, r=Amanieubors2022-01-092-0/+16
|\ | | | | | | freebsd add CPU_COUNT macro
| * freebsd add CPU_COUNT macroDavid CARLIER2022-01-062-0/+16
| |
* | Auto merge of #2618 - devnexen:linux_gnu_malloc_trim, r=Amanieubors2022-01-082-0/+2
|\ \ | |/ |/| | | linux GLIBC add malloc_trim fn.
| * linux GLIBC add malloc_trim fn.David Carlier2022-01-082-0/+2
|/
* Auto merge of #2616 - nanpuyue:fix-freebsd-ttycom, r=Amanieubors2022-01-053-27/+27
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | fix(freebsd): incorrect constant type from ttycom.h ref: https://github.com/rust-lang/libc/pull/493 the value and type of the constant are obtained by executing the following script ttycom.sh: ``` #/bin/sh cat <<EOF #include <stdio.h> #include <sys/ttycom.h> #include <sys/time.h> #include <termios.h> void main() { EOF grep -o TIOC[A-Z_]* /usr/include/sys/ttycom.h | sort -u |\ xargs -I{} echo ' printf("pub const {}: u%lu = 0x%lx;\n", sizeof({})*8, {});' echo '}' ``` ``` ./ttycom.sh > main.c clang main.c ./a.out ```