Commit graph

5173 commits

Author SHA1 Message Date
Yuki Okushi 38c0eaf87f
Properly declare a struct 2021-11-17 14:27:11 +09:00
Yuki Okushi 65b16d9424
Detect FreeBSD 14 2021-11-17 14:00:45 +09:00
Yuki Okushi 1f3e2ab7f6
Add FreeBSD 14 CI 2021-11-17 13:16:50 +09:00
bors a8d7606a02 Auto merge of #2539 - JohnTitor:suggest-mach2-instead, r=JohnTitor
Suggest the `mach2` crate instead

cc #2286
r? `@ghost`
2021-11-16 03:26:53 +00:00
Yuki Okushi efc0a9eb9c
Suggest the mach2 crate instead 2021-11-16 09:46:34 +09:00
bors 69b86ab012 Auto merge of #2529 - devnexen:fbsd_vmtotal, r=JohnTitor
freebsd add vmtotal sysctl query
2021-11-16 00:08:46 +00:00
bors 3e36a07c8b Auto merge of #2534 - devnexen:haiku_dl_phdr, r=JohnTitor
haiku dl_phdr_iterate addition (supports since beta3).
2021-11-15 22:52:35 +00:00
bors f789339655 Auto merge of #2536 - GuillaumeGomez:freebsd-consts, r=Amanieu
Add more FreeBSD consts
2021-11-15 21:02:45 +00:00
David CARLIER 5bd59f790f haiku dl_phdr_iterate addition (supports since beta3). 2021-11-15 20:09:04 +00:00
bors 9742c75787 Auto merge of #2533 - devnexen:win32_stdio_more, r=JohnTitor
windows add printf/fprintf

close #2241
2021-11-15 17:59:26 +00:00
David Carlier 8bcbec216d freebsd add vmtotal sysctl query 2021-11-15 17:49:39 +00:00
bors 4f74e6eb8f Auto merge of #2530 - de-vri-es:tty-cleanup, r=JohnTitor
Move more ioctl constants and flags to linux::arch::* modules.

This PR moves a few things to `linux::arch::*` modules and out of libc specific modules. Specifically, it:
* Moves the `TIOCM*` ioclt constants and associated flags.
* Moves the `BOTHER` flag.
* Adds the `IBSHIFT` flag.

Without this PR, there are some arch+libc combinations that are missing some of these constants. Since these are all ioctl numbers or arguments to ioctls, they are not specific to any libc flavour. `BOTHER` and `IBSHIFT` don't even appear in glibc or musl headers.
2021-11-15 15:54:45 +00:00
Guillaume Gomez e01c512482 Add more FreeBSD consts 2021-11-15 16:54:32 +01:00
Maarten de Vries 3fa2809e43 Add IBSHIFT constant for Linux and Android. 2021-11-14 00:20:58 +01:00
Maarten de Vries 3643f01db4 Move BOTHER flag to linux::arch::* 2021-11-14 00:19:18 +01:00
bors b5a6e4b919 Auto merge of #2532 - devnexen:linux_ctermid, r=Amanieu
linux/android ctermid addition.

close #1928
2021-11-13 15:02:23 +00:00
David Carlier afc6eb54dd linux ctermid addition.
close #1928
2021-11-13 15:01:35 +00:00
David Carlier 8c531bf6d4 windows add printf/fprintf
close #2241
2021-11-13 11:19:06 +00:00
Maarten de Vries c5ecd84b35 Move TIOCM* ioclts and associated flags to linux::arch::* 2021-11-11 18:32:58 +01:00
bors 8c6b63463f Auto merge of #2528 - workingjubilee:scope-wasi, r=joshtriplett
Scope in Send, Sync for wasi

Without this, libc fails during the build of rustc. See https://github.com/rust-lang/rust/pull/90681
This dependency was introduced in rust-lang/libc#2499.
Alternative solution: It's not clear this is necessary for core to finish building,
so maybe we should `#[cfg]` it out in that case, instead?
2021-11-11 02:46:38 +00:00
bors 67bf22c2dd Auto merge of #2526 - devnexen:sem_fbsd, r=Amanieu
freebsd sem api addition
2021-11-11 01:46:10 +00:00
Jubilee Young 41a8647390 Scope in Send, Sync for wasi 2021-11-10 16:59:21 -08:00
bors d4ac6fd5b2 Auto merge of #2527 - devnexen:obsd_execinfo, r=JohnTitor
openbsd backtrace api addition
2021-11-10 22:51:13 +00:00
David Carlier 2676fd3ea8 openbsd backtrace api addition 2021-11-10 17:54:01 +00:00
David Carlier 96fa9a67d6 freebsd sem api addition 2021-11-09 22:03:30 +00:00
bors c781f0b25b Auto merge of #2523 - devnexen:netbsd_uucred, r=JohnTitor
netbsd add uucred struct
2021-11-09 00:58:53 +00:00
bors 84b3a7b3ab Auto merge of #2477 - Fanael:linux-openat2, r=JohnTitor
linux: Add open_how and related flags

This makes `openat2` usable.
2021-11-08 23:56:56 +00:00
bors e43066f298 Auto merge of #2521 - de-vri-es:tiocm-solarish, r=JohnTitor
Add TIOCM_* constants for Illumos and Solaris.

Values taken from 252adeb303/usr/src/uts/common/sys/termios.h (L466-L476)

Since Illumos forked from OpenSolaris 10, I'm assuming that Solaris is still using the same values for binary compatibility. But since Solaris is no longer open source, I couldn't find a way to verify it myself.
2021-11-08 22:54:12 +00:00
David Carlier 69405c59af netbsd add uucred struct 2021-11-08 21:48:49 +00:00
Maarten de Vries 5563982002 Add TIOCM_* constants for Illumos and Solaris. 2021-11-07 15:11:36 +01:00
bors cd5de2fb37 Auto merge of #2515 - workingjubilee:bump-ver, r=JohnTitor
Bump libc to 0.2.107

Primarily so as to fix building for aarch64-unknown-linux-musl,
as implemented in commit fd331f65f2

This may help resolve https://github.com/rust-lang/rust/pull/90044
I do not have release privileges for libc, so if anyone would be so kind as to tag it and publish to crates.io, that would be lovely.
2021-11-07 01:55:35 +00:00
bors 38c16a9131 Auto merge of #2468 - unrelentingtech:fbsd-efd, r=JohnTitor
FreeBSD: add eventfd (since 13)

This already exposes constants in the non-versioned code like #2465 so this should wait on #2465…
2021-11-07 00:49:57 +00:00
Greg V 57492ef993 FreeBSD: add eventfd (since 13) 2021-11-07 03:16:22 +03:00
bors 25ea72c5ce Auto merge of #2518 - de-vri-es:move-termios2-to-arch, r=Amanieu
Move termios2 struct and ioctl constants to linux::arch::*.

When trying to use the newly added ioctls from #2508 I noticed that the `termios2` struct was not defined for musl or uclibc, except interestingly for the hexagon+musl target

However, the `termios2` struct and ioctls are part of the Linux headers, not part of the libc headers. So the libc flavour doesn't matter for these definitions.

This PR moves the definitions to the `linux::arch::*` modules, to make them available for all libc flavours and reduce code duplication as a bonus.
2021-11-06 23:14:27 +00:00
bors 16c69c0734 Auto merge of #2517 - devnexen:fbsd_ptrace_requpdate, r=JohnTitor
freebsd ptrace request update
2021-11-06 22:08:53 +00:00
David Carlier c199251fbd freebsd ptrace request update 2021-11-06 21:39:13 +00:00
Maarten de Vries 3a529d0954 Move termios2 struct and ioctl constants to linux::arch.
The ioctls are interpreted directly by the kernel, so the system libc
has no influence on the termios2 struct or the ioctl numbers.
2021-11-06 20:30:29 +01:00
bors bcfd392c6b Auto merge of #2509 - devnexen:linux_posix_spawn_usevfork, r=Amanieu
linux/android add POSIX_SPAWN_USEVFORK (mostly no-op now) extension.

closes #2269
2021-11-06 17:40:49 +00:00
David Carlier 7877856a2c linux add POSIX_SPAWN_USEVFORK (mostly no-op now) extension.
closes #2269
2021-11-06 16:46:49 +00:00
bors 2af710a634 Auto merge of #2514 - devnexen:netbsd_xattr_api, r=Amanieu
netbsd ext attrs api addition
2021-11-06 16:35:56 +00:00
bors 312447584c Auto merge of #2508 - de-vri-es:tcgets2-and-friends, r=Amanieu
Add TCGETS2 and TCSETS2 (and variants) ioctl constants for Linux.

I noticed that the `termios2` struct is already exposed, but the ioctl constants to use it are not. This PR adds the `TCGETS2`, `TCSETS2`, `TCSETSW2` and `TCSETSF2` on Linux so that you can actually do something with the `termios2` struct.

The `powerpc` architecture is notably missing, because it does not seem to support the `TCGETS2`/`TCSETS2` ioctls.

I *think* the constants are correct for all platforms, but I'm also not 100% sure. Do the unit tests verify the values for all supported platforms, by any chance?
2021-11-06 15:19:43 +00:00
Maarten de Vries 58a015cd25 Add TCGETS2 and TCSETS2 (and variants) ioctl constants for Linux. 2021-11-06 16:18:47 +01:00
bors afd3951113 Auto merge of #2069 - jwellhofer:master, r=Amanieu
Add memfd_create to linux and android

Android only added the wrapper in API level 30, i.e. Android 11. Should this have libc::syscall implementation for android ?
2021-11-06 13:46:23 +00:00
bors a06f6bcf5d Auto merge of #2516 - devnexen:mmap_align_aliases, r=JohnTitor
netbsd add MAP_ALIGNED aliases
2021-11-06 10:22:20 +00:00
bors b916b48d68 Auto merge of #2487 - rtzoeller:dfly_stat_deprecation, r=JohnTitor
Document stat.st_blksize changes on DragonFly BSD

The tests are currently failing on DragonFly BSD, due to [changes to `stat.st_blksize`](34c6728ee2) among other reasons.

`st_blksize` is now an `i64`, and has moved to take up a previously reserved struct member. Deprecate the struct, to indicate it will be modified in a subsequent release.
2021-11-06 09:17:47 +00:00
Johannes Wellhöfer f1bd231c19 Add memfd_create to linux 2021-11-06 08:11:08 +01:00
David Carlier 31a3d160d4 netbsd add MAP_ALIGNED aliases 2021-11-06 06:40:57 +00:00
Ryan Zoeller 9d11d8de1a Document stat changes on DragonFly BSD 2021-11-05 22:29:45 -05:00
Jubilee Young d16ef891b9 Bump libc to 0.2.107
Primarily so as to fix building for aarch64-unknown-linux-musl,
as implemented in commit fd331f65f2
2021-11-05 17:00:45 -07:00
David Carlier 6e94888765 netbsd ext attrs api addition 2021-11-05 12:05:57 +00:00