Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

v8: Fix darwin build #120936

Merged
merged 1 commit into from May 17, 2021
Merged

v8: Fix darwin build #120936

merged 1 commit into from May 17, 2021

Conversation

talyz
Copy link
Contributor

@talyz talyz commented Apr 27, 2021

Motivation for this change

Unbreak v8 on darwin. Fixes #120709.

Thanks to @jdelStrother for reporting and initial fixes!

Things done
  • Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
  • Built on platform(s)
    • NixOS
    • macOS
    • other Linux distributions
  • Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
  • Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
  • Tested execution of all binary files (usually in ./result/bin/)
  • Determined the impact on package closure size (by running nix path-info -S before and after)
  • Ensured that relevant documentation is up to date
  • Fits CONTRIBUTING.md.

@ofborg ofborg bot added the 6.topic: darwin Running or building packages on Darwin label Apr 27, 2021
@ofborg ofborg bot requested review from matthewbauer and cstrahan April 27, 2021 21:31
@talyz talyz force-pushed the v8-darwin branch 2 times, most recently from 0edafde to 741ebcb Compare April 29, 2021 09:18
@talyz talyz requested a review from picnoir May 5, 2021 07:36
@picnoir
Copy link
Member

picnoir commented May 5, 2021

LGTM, but I don't have any darwin hardware/deep knowledge to review this. Sorry talyz.

@picnoir picnoir removed their request for review May 5, 2021 08:53
@picnoir
Copy link
Member

picnoir commented May 5, 2021

cc @NixOS/darwin-maintainers

@siraben siraben self-requested a review May 6, 2021 03:02
@siraben
Copy link
Member

siraben commented May 6, 2021

Result of nixpkgs-review pr 120936 run on x86_64-darwin 1

3 packages failed to build:
  • gollum
  • rq
  • v8

@talyz
Copy link
Contributor Author

talyz commented May 7, 2021

@siraben Interesting - only rq fails to build on my machine when I run nixpkgs-review. Can you check the error log for v8? Maybe it's related to macOS version or something temporarily broken in master?

@siraben
Copy link
Member

siraben commented May 7, 2021

@talyz it might be because I have sandbox = relaxed, I'll disable sandboxing and try again

Edit: since v8 takes a while to build I will run this before I go to bed, in approx 8 hours.

@talyz
Copy link
Contributor Author

talyz commented May 7, 2021

@siraben Hm, I turned on sandboxing (sandbox = relaxed) and tried to build again, and it still builds for me.

@siraben
Copy link
Member

siraben commented May 7, 2021

@talyz What version of Nix and macOS are you running? Mine is nix (Nix) 2.4pre20210415_76980a1 and macOS 10.15.7.

@talyz
Copy link
Contributor Author

talyz commented May 7, 2021

@siraben I'm on nix (Nix) 2.3.7 and macOS 10.15.7.

@siraben
Copy link
Member

siraben commented May 7, 2021

Result of nixpkgs-review pr 120936 run on x86_64-darwin 1

1 package failed to build:
  • rq
2 packages built:
  • gollum
  • v8

@siraben
Copy link
Member

siraben commented May 8, 2021

This is the build log for the derivation that failed

@nix { "action": "setPhase", "phase": "unpackPhase" }
unpacking sources
unpacking source archive /nix/store/78scvb9sbr97lgvhxr1gplz42axjh6r6-source
source root is source
Executing cargoSetupPostUnpackHook
unpacking source archive /nix/store/p2hp06kigik5z15zmayj61acy6yq88by-rq-1.0.2-vendor.tar.gz
Finished cargoSetupPostUnpackHook
@nix { "action": "setPhase", "phase": "patchPhase" }
patching sources
Executing cargoSetupPostPatchHook
Validating consistency between //private/tmp/nix-build-rq-1.0.2.drv-0/source//Cargo.lock and //private/tmp/nix-build-rq-1.0.2.drv-0/rq-1.0.2-vendor.tar.gz/Cargo.lock
Finished cargoSetupPostPatchHook
@nix { "action": "setPhase", "phase": "configurePhase" }
configuring
@nix { "action": "setPhase", "phase": "buildPhase" }
building
Executing cargoBuildHook
++ env CC_x86_64-apple-darwin=/nix/store/47vpv5i10dwfg1cf5wca1k40f982g5fm-clang-wrapper-7.1.0/bin/cc CXX_x86_64-apple-darwin=/nix/store/47vpv5i10dwfg1cf5wca1k40f982g5fm-clang-wrapper-7.1.0/bin/c++ CC_x86_64-apple-darwin=/nix/store/47vpv5i10dwfg1cf5wca1k40f982g5fm-clang-wrapper-7.1.0/bin/cc CXX_x86_64-apple-darwin=/nix/store/47vpv5i10dwfg1cf5wca1k40f982g5fm-clang-wrapper-7.1.0/bin/c++ cargo build -j 4 --target x86_64-apple-darwin --frozen --release
   Compiling libc v0.2.65
   Compiling log v0.4.8
   Compiling cfg-if v0.1.10
   Compiling autocfg v0.1.7
   Compiling proc-macro2 v1.0.6
   Compiling memchr v2.2.1
   Compiling serde v1.0.102
   Compiling unicode-xid v0.2.0
   Compiling syn v1.0.8
   Compiling bitflags v1.2.1
   Compiling pkg-config v0.3.17
   Compiling maybe-uninit v2.0.0
   Compiling byteorder v1.3.2
   Compiling failure_derive v0.1.6
   Compiling lazy_static v1.4.0
   Compiling matches v0.1.8
   Compiling rustc-demangle v0.1.16
   Compiling percent-encoding v2.1.0
   Compiling ryu v1.0.2
   Compiling typenum v1.11.2
   Compiling quick-error v1.2.2
   Compiling semver-parser v0.7.0
   Compiling regex-syntax v0.6.12
   Compiling crc32fast v1.2.0
   Compiling build_const v0.2.1
   Compiling protobuf v2.8.1
   Compiling unicode-segmentation v1.6.0
   Compiling linked-hash-map v0.5.2
   Compiling unicode-width v0.1.6
   Compiling termcolor v1.0.5
   Compiling itoa v0.4.4
   Compiling serde v0.8.23
   Compiling rle-decode-fast v1.0.1
   Compiling adler32 v1.0.4
   Compiling nix v0.15.0
   Compiling vec_map v0.8.1
   Compiling strsim v0.8.0
   Compiling ansi_term v0.11.0
   Compiling take_mut v0.2.2
   Compiling void v1.0.2
   Compiling ucd-trie v0.1.2
   Compiling half v1.4.0
   Compiling dtoa v0.4.4
   Compiling glob v0.3.0
   Compiling ansi_term v0.12.1
   Compiling num-traits v0.2.9
   Compiling num-integer v0.1.41
   Compiling unicode-bidi v0.3.4
   Compiling thread_local v0.3.6
   Compiling humantime v1.3.0
   Compiling semver v0.9.0
   Compiling crc v1.8.1
   Compiling yaml-rust v0.4.3
   Compiling heck v0.3.1
   Compiling textwrap v0.11.0
   Compiling pest v2.1.2
   Compiling serde_test v0.8.23
   Compiling linked-hash-map v0.3.0
   Compiling atty v0.2.13
   Compiling rand v0.4.6
   Compiling dirs-sys v0.3.4
   Compiling jobserver v0.1.17
   Compiling num_cpus v1.11.1
   Compiling time v0.1.42
   Compiling quote v1.0.2
   Compiling smallvec v0.6.13
   Compiling regex-automata v0.1.8
   Compiling snap v0.2.5
   Compiling libflate v0.1.27
   Compiling generic-array v0.12.3
   Compiling aho-corasick v0.7.6
   Compiling csv-core v0.1.6
   Compiling clap v2.33.0
   Compiling rand v0.3.23
   Compiling directories v2.0.2
   Compiling toml v0.5.5
   Compiling serde_json v1.0.41
   Compiling serde_yaml v0.8.11
   Compiling serde_cbor v0.10.2
   Compiling cc v1.0.47
   Compiling unicode-normalization v0.1.9
   Compiling num-traits v0.1.43
   Compiling rmp v0.8.8
   Compiling ordered-float v1.0.2
   Compiling bstr v0.2.8
   Compiling digest v0.8.1
   Compiling regex v1.3.1
   Compiling backtrace-sys v0.1.32
   Compiling libz-sys v1.0.25
   Compiling libgit2-sys v0.9.1
   Compiling chrono v0.4.9
   Compiling idna v0.2.0
   Compiling rmpv v0.4.2
   Compiling csv v1.1.1
   Compiling synstructure v0.12.3
   Compiling proc-macro-error v0.2.6
   Compiling serde-hjson v0.9.1
   Compiling env_logger v0.7.1
The following warnings were emitted during compilation:

warning: src/libbacktrace/alloc.c:33:10: fatal error: 'config.h' file not found
warning: #include "config.h"
warning:          ^~~~~~~~~~
warning: 1 error generated.
warning: src/libbacktrace/dwarf.c:33:10: fatal error: 'config.h' file not found
warning: #include "config.h"
warning:          ^~~~~~~~~~
warning: 1 error generated.

error: failed to run custom build command for `backtrace-sys v0.1.32`

Caused by:
  process didn't exit successfully: `/private/tmp/nix-build-rq-1.0.2.drv-0/source/target/release/build/backtrace-sys-75656450c24122b5/build-script-build` (exit code: 1)
  --- stdout
  cargo:rustc-cfg=rbt
  TARGET = Some("x86_64-apple-darwin")
  OPT_LEVEL = Some("0")
  HOST = Some("x86_64-apple-darwin")
  CC_x86_64-apple-darwin = Some("/nix/store/47vpv5i10dwfg1cf5wca1k40f982g5fm-clang-wrapper-7.1.0/bin/cc")
  CFLAGS_x86_64-apple-darwin = None
  CFLAGS_x86_64_apple_darwin = None
  HOST_CFLAGS = None
  CFLAGS = None
  CRATE_CC_NO_DEFAULTS = None
  CARGO_CFG_TARGET_FEATURE = Some("fxsr,sse,sse2,sse3,ssse3")
  running: "/nix/store/47vpv5i10dwfg1cf5wca1k40f982g5fm-clang-wrapper-7.1.0/bin/cc" "-O0" "-ffunction-sections" "-fdata-sections" "-fPIC" "-m64" "-I" "src/libbacktrace" "-I" "/private/tmp/nix-build-rq-1.0.2.drv-0/source/target/release/build/backtrace-sys-a9a55276055e1754/out" "-fvisibility=hidden" "-DBACKTRACE_SUPPORTED=1" "-DBACKTRACE_USES_MALLOC=1" "-DBACKTRACE_SUPPORTS_THREADS=0" "-DBACKTRACE_SUPPORTS_DATA=0" "-DHAVE_DL_ITERATE_PHDR=1" "-D_GNU_SOURCE=1" "-D_LARGE_FILES=1" "-Dbacktrace_full=__rbt_backtrace_full" "-Dbacktrace_dwarf_add=__rbt_backtrace_dwarf_add" "-Dbacktrace_initialize=__rbt_backtrace_initialize" "-Dbacktrace_pcinfo=__rbt_backtrace_pcinfo" "-Dbacktrace_syminfo=__rbt_backtrace_syminfo" "-Dbacktrace_get_view=__rbt_backtrace_get_view" "-Dbacktrace_release_view=__rbt_backtrace_release_view" "-Dbacktrace_alloc=__rbt_backtrace_alloc" "-Dbacktrace_free=__rbt_backtrace_free" "-Dbacktrace_vector_finish=__rbt_backtrace_vector_finish" "-Dbacktrace_vector_grow=__rbt_backtrace_vector_grow" "-Dbacktrace_vector_release=__rbt_backtrace_vector_release" "-Dbacktrace_close=__rbt_backtrace_close" "-Dbacktrace_open=__rbt_backtrace_open" "-Dbacktrace_print=__rbt_backtrace_print" "-Dbacktrace_simple=__rbt_backtrace_simple" "-Dbacktrace_qsort=__rbt_backtrace_qsort" "-Dbacktrace_create_state=__rbt_backtrace_create_state" "-Dbacktrace_uncompress_zdebug=__rbt_backtrace_uncompress_zdebug" "-Dmacho_get_view=__rbt_macho_get_view" "-Dmacho_symbol_type_relevant=__rbt_macho_symbol_type_relevant" "-Dmacho_get_commands=__rbt_macho_get_commands" "-Dmacho_try_dsym=__rbt_macho_try_dsym" "-Dmacho_try_dwarf=__rbt_macho_try_dwarf" "-Dmacho_get_addr_range=__rbt_macho_get_addr_range" "-Dmacho_get_uuid=__rbt_macho_get_uuid" "-Dmacho_add=__rbt_macho_add" "-Dmacho_add_symtab=__rbt_macho_add_symtab" "-Dmacho_file_to_host_u64=__rbt_macho_file_to_host_u64" "-Dmacho_file_to_host_u32=__rbt_macho_file_to_host_u32" "-Dmacho_file_to_host_u16=__rbt_macho_file_to_host_u16" "-o" "/private/tmp/nix-build-rq-1.0.2.drv-0/source/target/release/build/backtrace-sys-a9a55276055e1754/out/src/libbacktrace/alloc.o" "-c" "src/libbacktrace/alloc.c"
  cargo:warning=src/libbacktrace/alloc.c:33:10: fatal error: 'config.h' file not found
  cargo:warning=#include "config.h"
  cargo:warning=         ^~~~~~~~~~
  cargo:warning=1 error generated.
  exit code: 1
  running: "/nix/store/47vpv5i10dwfg1cf5wca1k40f982g5fm-clang-wrapper-7.1.0/bin/cc" "-O0" "-ffunction-sections" "-fdata-sections" "-fPIC" "-m64" "-I" "src/libbacktrace" "-I" "/private/tmp/nix-build-rq-1.0.2.drv-0/source/target/release/build/backtrace-sys-a9a55276055e1754/out" "-fvisibility=hidden" "-DBACKTRACE_SUPPORTED=1" "-DBACKTRACE_USES_MALLOC=1" "-DBACKTRACE_SUPPORTS_THREADS=0" "-DBACKTRACE_SUPPORTS_DATA=0" "-DHAVE_DL_ITERATE_PHDR=1" "-D_GNU_SOURCE=1" "-D_LARGE_FILES=1" "-Dbacktrace_full=__rbt_backtrace_full" "-Dbacktrace_dwarf_add=__rbt_backtrace_dwarf_add" "-Dbacktrace_initialize=__rbt_backtrace_initialize" "-Dbacktrace_pcinfo=__rbt_backtrace_pcinfo" "-Dbacktrace_syminfo=__rbt_backtrace_syminfo" "-Dbacktrace_get_view=__rbt_backtrace_get_view" "-Dbacktrace_release_view=__rbt_backtrace_release_view" "-Dbacktrace_alloc=__rbt_backtrace_alloc" "-Dbacktrace_free=__rbt_backtrace_free" "-Dbacktrace_vector_finish=__rbt_backtrace_vector_finish" "-Dbacktrace_vector_grow=__rbt_backtrace_vector_grow" "-Dbacktrace_vector_release=__rbt_backtrace_vector_release" "-Dbacktrace_close=__rbt_backtrace_close" "-Dbacktrace_open=__rbt_backtrace_open" "-Dbacktrace_print=__rbt_backtrace_print" "-Dbacktrace_simple=__rbt_backtrace_simple" "-Dbacktrace_qsort=__rbt_backtrace_qsort" "-Dbacktrace_create_state=__rbt_backtrace_create_state" "-Dbacktrace_uncompress_zdebug=__rbt_backtrace_uncompress_zdebug" "-Dmacho_get_view=__rbt_macho_get_view" "-Dmacho_symbol_type_relevant=__rbt_macho_symbol_type_relevant" "-Dmacho_get_commands=__rbt_macho_get_commands" "-Dmacho_try_dsym=__rbt_macho_try_dsym" "-Dmacho_try_dwarf=__rbt_macho_try_dwarf" "-Dmacho_get_addr_range=__rbt_macho_get_addr_range" "-Dmacho_get_uuid=__rbt_macho_get_uuid" "-Dmacho_add=__rbt_macho_add" "-Dmacho_add_symtab=__rbt_macho_add_symtab" "-Dmacho_file_to_host_u64=__rbt_macho_file_to_host_u64" "-Dmacho_file_to_host_u32=__rbt_macho_file_to_host_u32" "-Dmacho_file_to_host_u16=__rbt_macho_file_to_host_u16" "-o" "/private/tmp/nix-build-rq-1.0.2.drv-0/source/target/release/build/backtrace-sys-a9a55276055e1754/out/src/libbacktrace/dwarf.o" "-c" "src/libbacktrace/dwarf.c"
  cargo:warning=src/libbacktrace/dwarf.c:33:10: fatal error: 'config.h' file not found
  cargo:warning=#include "config.h"
  cargo:warning=         ^~~~~~~~~~
  cargo:warning=1 error generated.
  exit code: 1

  --- stderr


  error occurred: Command "/nix/store/47vpv5i10dwfg1cf5wca1k40f982g5fm-clang-wrapper-7.1.0/bin/cc" "-O0" "-ffunction-sections" "-fdata-sections" "-fPIC" "-m64" "-I" "src/libbacktrace" "-I" "/private/tmp/nix-build-rq-1.0.2.drv-0/source/target/release/build/backtrace-sys-a9a55276055e1754/out" "-fvisibility=hidden" "-DBACKTRACE_SUPPORTED=1" "-DBACKTRACE_USES_MALLOC=1" "-DBACKTRACE_SUPPORTS_THREADS=0" "-DBACKTRACE_SUPPORTS_DATA=0" "-DHAVE_DL_ITERATE_PHDR=1" "-D_GNU_SOURCE=1" "-D_LARGE_FILES=1" "-Dbacktrace_full=__rbt_backtrace_full" "-Dbacktrace_dwarf_add=__rbt_backtrace_dwarf_add" "-Dbacktrace_initialize=__rbt_backtrace_initialize" "-Dbacktrace_pcinfo=__rbt_backtrace_pcinfo" "-Dbacktrace_syminfo=__rbt_backtrace_syminfo" "-Dbacktrace_get_view=__rbt_backtrace_get_view" "-Dbacktrace_release_view=__rbt_backtrace_release_view" "-Dbacktrace_alloc=__rbt_backtrace_alloc" "-Dbacktrace_free=__rbt_backtrace_free" "-Dbacktrace_vector_finish=__rbt_backtrace_vector_finish" "-Dbacktrace_vector_grow=__rbt_backtrace_vector_grow" "-Dbacktrace_vector_release=__rbt_backtrace_vector_release" "-Dbacktrace_close=__rbt_backtrace_close" "-Dbacktrace_open=__rbt_backtrace_open" "-Dbacktrace_print=__rbt_backtrace_print" "-Dbacktrace_simple=__rbt_backtrace_simple" "-Dbacktrace_qsort=__rbt_backtrace_qsort" "-Dbacktrace_create_state=__rbt_backtrace_create_state" "-Dbacktrace_uncompress_zdebug=__rbt_backtrace_uncompress_zdebug" "-Dmacho_get_view=__rbt_macho_get_view" "-Dmacho_symbol_type_relevant=__rbt_macho_symbol_type_relevant" "-Dmacho_get_commands=__rbt_macho_get_commands" "-Dmacho_try_dsym=__rbt_macho_try_dsym" "-Dmacho_try_dwarf=__rbt_macho_try_dwarf" "-Dmacho_get_addr_range=__rbt_macho_get_addr_range" "-Dmacho_get_uuid=__rbt_macho_get_uuid" "-Dmacho_add=__rbt_macho_add" "-Dmacho_add_symtab=__rbt_macho_add_symtab" "-Dmacho_file_to_host_u64=__rbt_macho_file_to_host_u64" "-Dmacho_file_to_host_u32=__rbt_macho_file_to_host_u32" "-Dmacho_file_to_host_u16=__rbt_macho_file_to_host_u16" "-o" "/private/tmp/nix-build-rq-1.0.2.drv-0/source/target/release/build/backtrace-sys-a9a55276055e1754/out/src/libbacktrace/alloc.o" "-c" "src/libbacktrace/alloc.c" with args "cc" did not execute successfully (status code exit code: 1).


warning: build failed, waiting for other jobs to finish...
The following warnings were emitted during compilation:

warning: src/libbacktrace/alloc.c:33:10: fatal error: 'config.h' file not found
warning: #include "config.h"
warning:          ^~~~~~~~~~
warning: src/libbacktrace/fileline.c:33:10: fatal error: 'config.h' file not found
warning: #include "config.h"
warning:          ^~~~~~~~~~
warning: 1 error generated.
warning: src/libbacktrace/dwarf.c:33:10: fatal error: 'config.h' file not found
warning: #include "config.h"
warning:          ^~~~~~~~~~
warning: 1 error generated.
warning: 1 error generated.
warning: src/libbacktrace/posix.c:33:10: fatal error: 'config.h' file not found
warning: #include "config.h"
warning:          ^~~~~~~~~~
warning: 1 error generated.

error: build failed

@talyz
Copy link
Contributor Author

talyz commented May 8, 2021

@siraben That's closer to what I got - rq failed, but with a different error. Both failures seem unrelated tov8, though.

@talyz
Copy link
Contributor Author

talyz commented May 17, 2021

Anything more to address here or can we merge?

@domenkozar domenkozar merged commit 4e82cf9 into NixOS:master May 17, 2021
@talyz talyz deleted the v8-darwin branch June 16, 2021 08:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

v8: No longer builds on darwin
5 participants