Commit Graph

198 Commits

Author SHA1 Message Date
Alex Crichton
0e21beb761 libs: Move favicon URLs to HTTPS
Helps prevent mixed content warnings if accessing docs over HTTPS.

Closes #25459
2015-05-15 16:04:01 -07:00
Mike Sampson
a5cac55be4 Add wait and waitpid to libc. 2015-05-12 19:57:09 +10:00
Manish Goregaokar
dd37250674 Rollup merge of #25211 - huonw:libc, r=cmr
Many many many people ask in #rust about this libraries, having an
explanatory reason will probably help a lot.
2015-05-09 00:37:45 +05:30
Manish Goregaokar
4c0f7fd6fc Rollup merge of #25140 - kevinmehall:mips, r=steveklabnik
Building with `--target=mipsel-unknown-linux-gnu` currently results in the following errors, fixed by this PR:

```
rustc: x86_64-unknown-linux-gnu/stage2/lib/rustlib/mipsel-unknown-linux-gnu/lib/libstd
/vol/rust/src/libstd/os/linux/raw.rs:76:21: 76:28 error: use of undeclared type name `c_ulong`
/vol/rust/src/libstd/os/linux/raw.rs:76         pub st_dev: c_ulong,
                                                            ^~~~~~~
/vol/rust/src/libstd/os/linux/raw.rs:83:22: 83:29 error: use of undeclared type name `c_ulong`
/vol/rust/src/libstd/os/linux/raw.rs:83         pub st_rdev: c_ulong,
                                                             ^~~~~~~
/vol/rust/src/libstd/sys/common/net2.rs:210:52: 210:70 error: unresolved name `libc::TCP_KEEPIDLE`
/vol/rust/src/libstd/sys/common/net2.rs:210         setsockopt(&self.inner, libc::IPPROTO_TCP, libc::TCP_KEEPIDLE,
```
2015-05-09 00:37:42 +05:30
Huon Wilson
091ba42d77 Add a reason to the libc & rand instability.
Many many many people ask in #rust about this libraries, having an
explanatory reason will probably help a lot.
2015-05-08 23:20:53 +10:00
Ms2ger
ff89600813 Move the SC constants for macos to an accessible module (fixes #24374 for mac).
These constants were added in 6f54ce9aa5 and
e8fbd1ce04 to a consts module that is behind a
gate.

I have not confirmed that these constants do indeed work on either OSX or iOS.

It appears that some of the constants may actually belong in a POSIX module,
but I didn't make these changes here because I don't have access to the POSIX
standard.
2015-05-06 18:50:48 +02:00
Kevin Mehall
6c6b20031c Add TCP_* constants for mips/mipsel Linux
PR #24611 added these for other architectures, but missed
the `#[cfg(any(target_arch = "mips", target_arch = "mipsel"))]`
version of the module. The values are the same.
2015-05-05 23:54:45 +00:00
Alex Crichton
6c048723f8 std: Prepare for linking to musl
This commit modifies the standard library and its dependencies to link correctly
when built against MUSL. This primarily ensures that the right libraries are
linked against and when they're linked against they're linked against
statically.
2015-04-27 10:11:15 -07:00
Young Wu
7a0df61ab1 add TCP_* consts for linux 2015-04-21 22:42:34 +08:00
Chris Wong
1131bc0a0f Implement Debug for File
This patch adds a `Debug` impl for `std::fs::File`.

On all platforms (Unix and Windows) it shows the file descriptor.

On Linux, it displays the path and access mode as well.

Ideally we should show the path/mode for all platforms, not just Linux,
but this will do for now.

cc #24570
2015-04-21 17:13:36 +12:00
bors
ba1192835b Auto merge of #24464 - lambdaburrito:master, r=alexcrichton
resolves #24462
2015-04-18 09:12:53 +00:00
bors
798fa2276c Auto merge of #24306 - l0kod:libc-noctty, r=alexcrichton
cf. open(2): If the open file refers to a terminal device it will not become the process's controlling terminal even if the process does not have one.
2015-04-16 05:27:20 +00:00
pez
6afa331a95 fix tabs 2015-04-15 17:16:09 +01:00
James Perry
e8fbd1ce04 add all SC constants for macos 2015-04-15 15:29:51 +01:00
pez
883bb6568d remove duplicated linux sysconf mod 2015-04-13 15:17:45 +01:00
pez
6f54ce9aa5 added _SC_NPROCESSORS_ONLN constants for linux and macos for fix #24374 2015-04-13 14:24:47 +01:00
Mickaël Salaün
008b3de301 libc: Add O_NOCTTY 2015-04-11 00:04:15 +02:00
Sébastien Marie
26453bb60d unary negation of unsigned integers
unbreak build for:
 - linux (mips/mipsel)
 - freebsd
 - dragonfly
 - bitrig
 - openbsd

by converting unsigned integers `-1` to `!0`
2015-04-02 14:23:41 +02:00
Sébastien Marie
48b3def76c don't derive Clone, but impl it
affected struct:
 - sockaddr_storage
 - sockaddr_un

apply the same method used for linux for:
 - bitrig/openbsd
 - freebsd
 - dragonfly
2015-04-02 13:34:40 +02:00
Alex Crichton
e3b7e6caa2 Tweak relese notes + rebase fixes 2015-04-02 00:18:45 -07:00
Alex Crichton
57f5ac948a Test fixes and rebase conflicts, round 2 2015-04-01 18:38:24 -07:00
Alex Crichton
f92e7abefd rollup merge of #23860: nikomatsakis/copy-requires-clone
Conflicts:
	src/test/compile-fail/coherence-impls-copy.rs
2015-04-01 18:37:54 -07:00
Alex Crichton
f86318d63c Test fixes and rebase conflicts, round 2
Conflicts:
	src/libcore/num/mod.rs
2015-04-02 02:07:51 +02:00
Felix S. Klock II
3225b04c7d fallout from feature-gating unary negation on unsigned integers. 2015-04-01 22:34:27 +02:00
Niko Matsakis
449643301c Fix enum timezone across all platforms. 2015-04-01 15:57:02 -04:00
Niko Matsakis
c35c46821a Fallout in public-facing and semi-public-facing libs 2015-04-01 11:23:45 -04:00
Alex Crichton
bd66f57e46 libc: Don't use unstable apis
Right now the `std::isize::BYTES` typedef is `#[unstable]`, but liblibc is using
this, preventing it from compiling on stable Rust.
2015-03-28 10:49:45 -07:00
Alex Crichton
36ef29abf7 Register new snapshots 2015-03-26 09:57:05 -07:00
Alex Crichton
3021d4c564 Test fixes and rebase conflicts, round 2 2015-03-24 18:37:16 -07:00
Alex Crichton
5c74ed912b rollup merge of #23659: GBGamer/master
For other permissions beside USR permissions, we need these constants.

fixes #23658
2015-03-24 14:50:47 -07:00
Nicholas Mazzuca
a9b31969dc Add the other S_I(RWX)(GRP/OTH) for posix creat 2015-03-24 03:25:48 -07:00
Alex Crichton
c608084ff5 rollup merge of #23598: brson/gate
Conflicts:
	src/compiletest/compiletest.rs
	src/libcollections/lib.rs
	src/librustc_back/lib.rs
	src/libserialize/lib.rs
	src/libstd/lib.rs
	src/libtest/lib.rs
	src/test/run-make/rustdoc-default-impl/foo.rs
	src/test/run-pass/env-home-dir.rs
2015-03-23 15:13:15 -07:00
Brian Anderson
e9019101a8 Add #![feature] attributes to doctests 2015-03-23 14:40:26 -07:00
Valerii Hiora
6f09dfc23a Socket options constants for *BSD/Linux/Windows 2015-03-19 16:58:08 +02:00
Drew Crawford
a848ce4d38 Adding sys/socket.h constants for iOS/Mac, particularly for SO_SOCKET options.
This is probably more broadly applicable than these two platforms
(since it's part of the bsd4.4 standard) but that's outside my problem domain today.
If this goes well, I may submit Linux/64 support in a separate PR.

Reviewers should take a look at http://www.opensource.apple.com/source/xnu/xnu-792.17.14/bsd/sys/socket.h?txt
which defines constants for OSX.  iOS uses the same header.

I release this patch under the MIT license.
2015-03-19 16:04:01 +02:00
Manish Goregaokar
48df3fb678 Rollup merge of #23457 - nagisa:get-set-resources, r=alexcrichton
Hopefully didn’t miss or mess up anything.

~~EDIT: ah, as usual, just didn’t bother running build before pushing a submit request button. Build pending.~~
2015-03-19 08:24:35 +05:30
Simonas Kazlauskas
2d701e6b19 Add {get,set}rlimit and getrusage to libc 2015-03-18 13:10:29 +02:00
Alex Crichton
71982c2124 libc: Fix definition of sockaddr_storage on 32-bit linux
The alignment field is actually a "pointer sized" type instead of always i64,
requiring that the size of the padding field is also calculated slightly
differently.

Closes #23425
2015-03-17 10:33:13 -07:00
Nicholas
cbd37d8980 [BREAKING] Rename two instances of MAP_NONRESERVE
To the correct MAP_NORESERVE. Every other thing is known as MAP_NORESERVE, so this is just a basic typo.

I really doubt this will break anybody's but my own code.
2015-03-15 23:03:18 -07:00
Manish Goregaokar
2fcdd824ef Rollup merge of #23056 - awlnx:master, r=nrc 2015-03-06 22:22:33 +05:30
Manish Goregaokar
c39833ed2d Rollup merge of #23070 - krdln:fix-stat-arm, r=alexcrichton
This separates definitions of struct stat and other typedefs between Android and Linux on ARM (Android has a non-standard one). This makes functions such as `File::metadata()` work correctly and makes one able to check file's size. All tests from std (and also run-pass: stat.rs) now pass on ARM Linux. Fixes #20007.
2015-03-06 09:00:34 +05:30
Manish Goregaokar
e80fc10af1 Rollup merge of #22862 - vhbit:broken-open, r=alexcrichton
According to Apple's [arm64 calling convention](https://developer.apple.com/library/ios/documentation/Xcode/Conceptual/iPhoneOSABIReference/Articles/ARM64FunctionCallingConventions.html#//apple_ref/doc/uid/TP40013702-SW1) varargs always are passed
through stack. Since `open` is actually a vararg function on Darwin,
it means that older declaration caused permissions to be taken from
stack, while passed through register => it set file permissions
to garbage and it was simply impossible to read/delete files after they
were created.

They way this commit handles it is to preserve compatibility with
existing code - it simply creates a shim unsafe function so all existing
callers continue work as nothing happened.
2015-03-06 08:58:02 +05:30
awlnx
951ef9d1f1 fix for new attributes failing. issue #22964 2015-03-05 11:53:51 -05:00
Valerii Hiora
3f4181a6e5 iOS: open file on aarch64 breaks permissions
According to Apple arm64 calling convention varargs always are passed
through stack. Since `open` is actually a vararg function on Darwin's,
it means that older declaration caused permissions to be taken from
stack, while passed through register => it set file permissions
to garbage and it was simply impossible to read/delete files after they
were created.

They way this commit handles it is to preserve compatibility with
existing code - it simply creates a shim unsafe function so all existing
callers continue work as nothing happened.
2015-03-05 12:41:59 +02:00
Manish Goregaokar
145b83e633 Rollup merge of #22994 - eddyb:unsuffix-ints-good, r=alexcrichton
Automatic has-same-types testing methodology can be found in #22501.
Because most of them don't work with `--pretty=typed`, compile-fail tests were manually audited.

r? @aturon
2015-03-05 12:38:33 +05:30
Eduard Burtescu
e64670888a Remove integer suffixes where the types in compiled code are identical. 2015-03-05 12:38:33 +05:30
Michał Krasnoborski
29938fff38 Fix struct stat on arm linux 2015-03-04 22:24:38 +01:00
Alex Crichton
9893b44ad9 libc: Move features behind a cfg_attr gate
This same source is being built in the Cargo ecosystem and hence needs to build
on stable Rust as well. This commit places the `no_std` attribute along with the
`no_std` feature behind a `cfg_attr` flag so they are not processed when
compiled on crates.io
2015-03-03 13:05:55 -08:00
Sébastien Marie
a71da374df unbreak dragonfly build after nacl integration
this is the same problem as openbsd (#22792).

without the patch, liblibc don't build.
2015-03-01 16:08:24 +01:00
Sébastien Marie
91e00f3bfa unbreak openbsd after nacl intergration 2015-02-25 05:07:40 +01:00