!OqhvaDMJdKYUicLDiE:nixos.org

Nixpkgs Stdenv

224 Members
72 Servers

Load older messages


SenderMessageTime
24 Oct 2024
@jopejoe1:matrix.orgjopejoe1 (4094@epvpn) set a profile picture.07:34:53
25 Oct 2024
@lholh:matrix.org@lholh:matrix.org joined the room.03:54:54
@lholh:matrix.org@lholh:matrix.org left the room.22:42:19
27 Oct 2024
@artturin:matrix.orgArtturin emily: Wrt impure path filtering 18:46:24
@artturin:matrix.orgArtturin
meson> Command line: `gcc '/build/source/b 1783ea7834/meson-private/tmpy4oyt501/testfile.c' -o '/build/source/b 1783ea7834/meson-private/tmpy4oyt501/output.exe' -D_FILE_OFFSET_BITS=64 -O0 -Wl,--fatal-warnings -Wl,-L/usr` -> 1
meson> stderr:
meson> skipping impure path /usr
meson> collect2: error: ld returned 1 exit status
meson> -----------
meson> Compiler for C supports link arguments -Wl,-L/usr: NO
18:46:27
@artturin:matrix.orgArtturinlol18:46:29
@artturin:matrix.orgArtturinmeson build fails18:46:33
@emilazy:matrix.orgemilyso18:46:50
@artturin:matrix.orgArtturinHad this open in a another workspace 18:46:51
@artturin:matrix.orgArtturin * Had this open in a another workspace so missed it18:46:54
@emilazy:matrix.orgemily Randy Eckenrode had a nice idea to have wrappers add an -isysroot to compiler commands that would contain an empty /usr/lib, /usr/local/lib, etc. etc., all the common impure global paths 18:47:17
@emilazy:matrix.orgemily at least on macOS toolchains that would apparently stack on top of any other -isysroot and mean -L/usr/lib etc. would be harmless nops 18:47:46
@emilazy:matrix.orgemilyI'm not sure if it behaves the same way on Linux, but if it does, we could get most of the same purity benefits without the gross CLI filtering.18:48:04
@emilazy:matrix.orgemily it would also let us drop the -nostdlibinc patch we use for Clang. 18:48:18
@emilazy:matrix.orgemilyin particular it seems kind of bad that in this case it's not even testing what it thinks it is…19:52:22
@artturin:matrix.orgArtturin
In reply to @emilazy:matrix.org
Randy Eckenrode had a nice idea to have wrappers add an -isysroot to compiler commands that would contain an empty /usr/lib, /usr/local/lib, etc. etc., all the common impure global paths
We need tests first
21:43:28
@emilazy:matrix.orgemilysure21:45:08
@emilazy:matrix.orgemilythough our current purity filters have a bunch of holes so they're not exactly exhaustively-tested either :)21:45:32
@emilazy:matrix.orgemilyand on Linux of course it only applies to dev shells since there's the sandbox, so it's not quite as critical.21:45:53
@emilazy:matrix.orgemily(and on Darwin the purity hacks are causing us more problems than they solve, so I'd personally be happy to gamble with a cleaner approach that seems like it ought to work.)21:46:11
@trofi:matrix.org@trofi:matrix.org At least on linux the attempt to use non-standard sysroot broke DT_RUNPATH lookups for libraries not explicitly mentioned in the linking process: https://github.com/NixOS/nixpkgs/pull/213185. Transitive libraries are searched in sysroot only and things break. 21:55:38
@trofi:matrix.org@trofi:matrix.org -isysroot might not be as devastating, but AFAIU it only affect include search prefix while you probably want library search change as well. 21:58:07
@artturin:matrix.orgArtturin
This option is like the --sysroot option, but applies only to header files (except for Darwin targets, where it applies to both header files and libraries). See the --sysroot option for more information.
21:58:55
@artturin:matrix.orgArtturin *

isysroot

This option is like the --sysroot option, but applies only to header files (except for Darwin targets, where it applies to both header files and libraries). See the --sysroot option for more information.
21:59:04
@trofi:matrix.org@trofi:matrix.orgTIL22:00:03
@trofi:matrix.org@trofi:matrix.orgI wonder how transitive library dependencies are handled there.22:00:29
@emilazy:matrix.orgemilyI didn't know Darwin handled it differently but that makes sense…22:00:54
@emilazy:matrix.orgemilyin a messed up kind of way22:00:59
@emilazy:matrix.orgemily
In reply to @trofi:matrix.org
At least on linux the attempt to use non-standard sysroot broke DT_RUNPATH lookups for libraries not explicitly mentioned in the linking process: https://github.com/NixOS/nixpkgs/pull/213185. Transitive libraries are searched in sysroot only and things break.
what kind of changes do you think we might need to make something like this work for us? we could patch in a semantics change, but that's kinda gross.
22:01:58
@trofi:matrix.org@trofi:matrix.orgI don't know :)22:03:18

Show newer messages


Back to Room ListRoom Version: 9