nD5Xjz has quit [Ping timeout: 248 seconds]
nD5Xjz has joined #nix-darwin
nD5Xjz has quit [Ping timeout: 248 seconds]
nD5Xjz has joined #nix-darwin
nD5Xjz has quit [Ping timeout: 248 seconds]
nD5Xjz has joined #nix-darwin
nD5Xjz_ has joined #nix-darwin
nD5Xjz has quit [Ping timeout: 272 seconds]
nD5Xjz has joined #nix-darwin
nD5Xjz_ has quit [Ping timeout: 248 seconds]
nD5Xjz has quit [Ping timeout: 245 seconds]
nD5Xjz has joined #nix-darwin
nD5Xjz has quit [Ping timeout: 268 seconds]
nD5Xjz_ has joined #nix-darwin
abathur has quit [Ping timeout: 258 seconds]
nD5Xjz_ has quit [Ping timeout: 246 seconds]
nD5Xjz has joined #nix-darwin
nD5Xjz has quit [Ping timeout: 272 seconds]
nD5Xjz has joined #nix-darwin
philr has joined #nix-darwin
ris has joined #nix-darwin
<ris> anyone ever had any luck building a gccStdenv-based boost on darwin?
<ris> `boost.override { stdenv = gccStdEnv; }` is error-central
nD5Xjz has quit [Ping timeout: 258 seconds]
nD5Xjz has joined #nix-darwin
philr has quit [Ping timeout: 244 seconds]
nD5Xjz_ has joined #nix-darwin
nD5Xjz has quit [Ping timeout: 272 seconds]
nD5Xjz_ has quit [Ping timeout: 268 seconds]
nD5Xjz has joined #nix-darwin
nD5Xjz has quit [Ping timeout: 268 seconds]
nD5Xjz has joined #nix-darwin
nD5Xjz_ has joined #nix-darwin
nD5Xjz has quit [Ping timeout: 272 seconds]
<ris> it seems (i don't know a lot about darwin) to be continuing to try and use libc++ with gcc
<clever> ris: what if any of its deps already depend on the clang libc++?
<ris> feels like that would be more likely to produce link errors rather than header parse errors
<ris> and i don't *think* boost has any c++ dependencies
<ris> which is where that would cause a problem...
<ris> ooh! adding NIX_CFLAGS_COMPILE="-nostdinc++" definitely helps
nD5Xjz_ has quit [Ping timeout: 258 seconds]
nD5Xjz has joined #nix-darwin
nD5Xjz has quit [Ping timeout: 258 seconds]
nD5Xjz has joined #nix-darwin
nD5Xjz has quit [Ping timeout: 272 seconds]
nD5Xjz has joined #nix-darwin
nD5Xjz has quit [Ping timeout: 248 seconds]
nD5Xjz_ has joined #nix-darwin
<ris> hmm so i think this is the central issue: the libc++ setup hooks don't take into account that their target compiler might be gcc
<ris> they do `export NIX_${role_pre}CXXSTDLIB_LINK=" -stdlib=libc++${linkCxxAbi:+" -lc++abi"}"`
<ris> where of course `-stdlib=...` isn't a valid gcc flag
<ris> but given this ... i don't really understand how _anything_ works with gccStdenv on darwin
infinisil has left #nix-darwin ["WeeChat 2.4"]
<LnL> what are you trying to do exactly?
<ris> get a gcc-built boost
nD5Xjz has joined #nix-darwin
nD5Xjz_ has quit [Ping timeout: 258 seconds]
<ris> because, yknow, c++ abi
<LnL> sure but why
<ris> trying to get clickhouse building on darwin and it appears to want to be gcc-compiled
<LnL> gccStdenv is the equivalent of libcxxStdenv on linux, libstdc++ isn't a thing on darwin AFAIK
<ris> how are you _supposed_ to get a gcc-based stdenv on darwin
<ris> ?
<ris> fwiw i'm not trying to use libstdc++ on darwin, i'm merely trying to send gcc the right flags to use libc++
<LnL> gccStdenv already does that
<ris> at compile time it needs to be given -nostdinc++ and at link time, -nodefaultlibs
<ris> well, for some reason this is not working for boost
<ris> it's simple to try: `boost.override { stdenv = gccStdenv; }`
<LnL> right but since that links against libc++ the result should be equivalent to a normal build so why use gcc in the first place?
<ris> from the latter "Please note, that a C++ library compiled with GCC is not compatible with Clang and vice-versa"
<LnL> I'm not saying it's impossible, just that avoiding gcc all together is most likely a lot easier
nD5Xjz_ has joined #nix-darwin
nD5Xjz has quit [Ping timeout: 272 seconds]
<LnL> ris: this is the problem, default clang + clang-7 https://search.nix.gsc.io/?q=clickhouse&i=nope&files=all-packages.nix&repos=
<LnL> nothing related to gcc
nD5Xjz_ has quit [Ping timeout: 272 seconds]
nD5Xjz has joined #nix-darwin
<ris> right ok, ignore the whole clickhouse thing - _its_ build process actually works quite well with gccStdenv right up to the point it tries to link with a boost library
<ris> if you directly alter boost's invocation in all-packages.nix to provide it with stdenv = gccStdenv you get exactly the same problem
<ris> needing a gcc-built boost is such an unremarkable thing that even homebrew provide a gcc-built boost
nD5Xjz has quit [Ping timeout: 248 seconds]
nD5Xjz has joined #nix-darwin
nD5Xjz_ has joined #nix-darwin
nD5Xjz has quit [Ping timeout: 244 seconds]
nD5Xjz_ has quit [Ping timeout: 248 seconds]
nD5Xjz has joined #nix-darwin
abathur has joined #nix-darwin
nD5Xjz_ has joined #nix-darwin
nD5Xjz has quit [Ping timeout: 272 seconds]
nD5Xjz_ has quit [Ping timeout: 258 seconds]
{^_^} has quit [Ping timeout: 252 seconds]
nD5Xjz has joined #nix-darwin
{^_^} has joined #nix-darwin
nD5Xjz has quit [Ping timeout: 246 seconds]
nD5Xjz has joined #nix-darwin
nD5Xjz has quit [Ping timeout: 258 seconds]
nD5Xjz_ has joined #nix-darwin
nD5Xjz_ has quit [Ping timeout: 248 seconds]
nD5Xjz has joined #nix-darwin
nD5Xjz has quit [Ping timeout: 258 seconds]
nD5Xjz has joined #nix-darwin