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

chuck: fix darwin build #37246

Merged
merged 2 commits into from Mar 22, 2018
Merged

chuck: fix darwin build #37246

merged 2 commits into from Mar 22, 2018

Conversation

LnL7
Copy link
Member

@LnL7 LnL7 commented Mar 17, 2018

Motivation for this change

/cc ZHF #36454

Things done
  • Tested using sandboxing (nix.useSandbox on NixOS, or option build-use-sandbox in nix.conf on non-NixOS)
  • 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 nox --run "nox-review wip"
  • Tested execution of all binary files (usually in ./result/bin/)
  • Fits CONTRIBUTING.md.

Some parts of CoreMIDI depend on private frameworks, this enables eg.
adding -framework MultitouchSupport to a build.
@GrahamcOfBorg
Copy link

Success on x86_64-darwin (full log)

Attempted: chuck

Partial log (click to expand)

clang -I. -Ilo -O3 -D__MACOSX_CORE__  -isysroot /Developer/SDKs/MacOSX10.4u.sdk -DHAVE_CONFIG_H -I.  -c lo/server_thread.c -o lo/server_thread.o
clang -I. -Ilo -O3 -D__MACOSX_CORE__  -isysroot /Developer/SDKs/MacOSX10.4u.sdk -DHAVE_CONFIG_H -I.  -c lo/timetag.c -o lo/timetag.o
clang++ -o chuck util_sndfile.o chuck.tab.o chuck.yy.o util_math.o util_network.o util_raw.o util_xforms.o chuck_absyn.o chuck_parse.o chuck_errmsg.o chuck_frame.o chuck_symbol.o chuck_table.o chuck_utils.o chuck_vm.o chuck_instr.o chuck_scan.o chuck_type.o chuck_emit.o chuck_compile.o chuck_dl.o chuck_oo.o chuck_lang.o chuck_ugen.o chuck_main.o chuck_otf.o chuck_stats.o chuck_bbq.o chuck_shell.o chuck_console.o chuck_globals.o chuck_io.o digiio_rtaudio.o hidio_sdl.o midiio_rtmidi.o RtAudio/RtAudio.o rtmidi.o ugen_osc.o ugen_filter.o ugen_stk.o ugen_xxx.o ulib_machine.o ulib_math.o ulib_std.o ulib_opsc.o ulib_regex.o util_buffers.o util_console.o util_string.o util_thread.o util_opsc.o util_serial.o util_hid.o uana_xform.o uana_extract.o lo/address.o lo/blob.o lo/bundle.o lo/message.o lo/method.o lo/pattern_match.o lo/send.o lo/server.o lo/server_thread.o lo/timetag.o  -isysroot /Developer/SDKs/MacOSX10.4u.sdk -framework CoreAudio -framework CoreMIDI -framework CoreFoundation -framework IOKit -framework Carbon -framework AppKit -framework Foundation  -lstdc++ -lm
make: Leaving directory '/private/tmp/nix-build-chuck-1.3.5.2.drv-0/chuck-1.3.5.2/src'
installing
post-installation fixup
strip is /nix/store/vb6mgjqgd9h11nbv60fvrp1ls9nxck2y-cctools-binutils-darwin/bin/strip
stripping (with command strip and flags -S) in /nix/store/3jallllks7dp1d6mjbligd900lj0126w-chuck-1.3.5.2/bin
patching script interpreter paths in /nix/store/3jallllks7dp1d6mjbligd900lj0126w-chuck-1.3.5.2
/nix/store/3jallllks7dp1d6mjbligd900lj0126w-chuck-1.3.5.2

@GrahamcOfBorg
Copy link

Success on aarch64-linux (full log)

Attempted: chuck

Partial log (click to expand)

make: Leaving directory '/build/chuck-1.3.5.2/src'
installing
post-installation fixup
shrinking RPATHs of ELF executables and libraries in /nix/store/p2nqqpzaqz7sbnjsa1x4dcgkpl7z2cdi-chuck-1.3.5.2
shrinking /nix/store/p2nqqpzaqz7sbnjsa1x4dcgkpl7z2cdi-chuck-1.3.5.2/bin/chuck
strip is /nix/store/3zq400fri5dv7d30lpxlqm2v9y1iis6j-binutils-2.28.1/bin/strip
stripping (with command strip and flags -S) in /nix/store/p2nqqpzaqz7sbnjsa1x4dcgkpl7z2cdi-chuck-1.3.5.2/bin
patching script interpreter paths in /nix/store/p2nqqpzaqz7sbnjsa1x4dcgkpl7z2cdi-chuck-1.3.5.2
checking for references to /build in /nix/store/p2nqqpzaqz7sbnjsa1x4dcgkpl7z2cdi-chuck-1.3.5.2...
/nix/store/p2nqqpzaqz7sbnjsa1x4dcgkpl7z2cdi-chuck-1.3.5.2

@matthewbauer
Copy link
Member

Awesome!

One thing I've started doing on projects that don't work with LLVM is setting stdenv = gccStenv;. That could avoid having this extra patch. Not that there's anything wrong with extra patches but we need to start getting better at upstreaming them.

@LnL7
Copy link
Member Author

LnL7 commented Mar 17, 2018

I prefer to stick with clang if it's just some straightforward warnings like this, but I definitively agree for more annoying cases like cdo 0c8e8ce.

@GrahamcOfBorg
Copy link

Success on x86_64-linux (full log)

Attempted: chuck

Partial log (click to expand)

make: Leaving directory '/build/chuck-1.3.5.2/src'
installing
post-installation fixup
shrinking RPATHs of ELF executables and libraries in /nix/store/bzqp2h45iwxvq4gi3kr0nigd0ndgd0i1-chuck-1.3.5.2
shrinking /nix/store/bzqp2h45iwxvq4gi3kr0nigd0ndgd0i1-chuck-1.3.5.2/bin/chuck
strip is /nix/store/fzcs0fn6bb04m82frhlb78nc03ny3w55-binutils-2.28.1/bin/strip
stripping (with command strip and flags -S) in /nix/store/bzqp2h45iwxvq4gi3kr0nigd0ndgd0i1-chuck-1.3.5.2/bin
patching script interpreter paths in /nix/store/bzqp2h45iwxvq4gi3kr0nigd0ndgd0i1-chuck-1.3.5.2
checking for references to /build in /nix/store/bzqp2h45iwxvq4gi3kr0nigd0ndgd0i1-chuck-1.3.5.2...
/nix/store/bzqp2h45iwxvq4gi3kr0nigd0ndgd0i1-chuck-1.3.5.2

@globin
Copy link
Member

globin commented Mar 22, 2018

This should go to staging

@matthewbauer matthewbauer changed the base branch from master to staging March 22, 2018 15:58
@GrahamcOfBorg
Copy link

Success on x86_64-linux (full log)

Attempted: chuck

Partial log (click to expand)

make: Leaving directory '/build/chuck-1.3.5.2/src'
installing
post-installation fixup
shrinking RPATHs of ELF executables and libraries in /nix/store/ilrcyzbnlzhd8xhsjyapx5gj93ykc7p9-chuck-1.3.5.2
shrinking /nix/store/ilrcyzbnlzhd8xhsjyapx5gj93ykc7p9-chuck-1.3.5.2/bin/chuck
strip is /nix/store/v4mdyzyvl3adg3wsr7v0z5l3sp192kin-binutils-2.30/bin/strip
stripping (with command strip and flags -S) in /nix/store/ilrcyzbnlzhd8xhsjyapx5gj93ykc7p9-chuck-1.3.5.2/bin
patching script interpreter paths in /nix/store/ilrcyzbnlzhd8xhsjyapx5gj93ykc7p9-chuck-1.3.5.2
checking for references to /build in /nix/store/ilrcyzbnlzhd8xhsjyapx5gj93ykc7p9-chuck-1.3.5.2...
/nix/store/ilrcyzbnlzhd8xhsjyapx5gj93ykc7p9-chuck-1.3.5.2

@GrahamcOfBorg
Copy link

Failure on x86_64-darwin (full log)

Attempted: chuck

Partial log (click to expand)

cannot build derivation '/nix/store/4cxhqybi68s020893qf9i83005wdrr05-apple-framework-CoreVideo.drv': 7 dependencies couldn't be built
cannot build derivation '/nix/store/l0ym2m2z5svhp1yaf4dw3r256f42ljld-apple-framework-Foundation.drv': 8 dependencies couldn't be built
cannot build derivation '/nix/store/x450qf5d6z8000l775s6ry0r7l92bkpv-apple-framework-QuartzCore.drv': 6 dependencies couldn't be built
cannot build derivation '/nix/store/vhzfh7yd8k9as588d5ix37qy0srr62fz-apple-framework-Carbon.drv': 9 dependencies couldn't be built
cannot build derivation '/nix/store/px5faprq5r8lkhpiaxsw44y3cf85r1h5-apple-framework-AudioUnit.drv': 5 dependencies couldn't be built
cannot build derivation '/nix/store/qfld396xsa5j2ss7miwkxpipgyzwxfmz-apple-framework-AudioToolbox.drv': 6 dependencies couldn't be built
cannot build derivation '/nix/store/afk5g0cdhya8v4z49dbchpw059hdzddy-apple-framework-AppKit.drv': 5 dependencies couldn't be built
cannot build derivation '/nix/store/bzw81248wnp1mgp7kf8g1rpdl9l9515y-libsndfile-1.0.28.drv': 7 dependencies couldn't be built
cannot build derivation '/nix/store/c0295s606qcprp7wxvz0fq043blz0pgy-chuck-1.3.5.2.drv': 11 dependencies couldn't be built
�[31;1merror:�[0m build of '/nix/store/c0295s606qcprp7wxvz0fq043blz0pgy-chuck-1.3.5.2.drv' failed

@GrahamcOfBorg
Copy link

Success on aarch64-linux (full log)

Attempted: chuck

Partial log (click to expand)

make: Leaving directory '/build/chuck-1.3.5.2/src'
installing
post-installation fixup
shrinking RPATHs of ELF executables and libraries in /nix/store/g9y1hwazzhvbhaywcjj429baqlhi5qqg-chuck-1.3.5.2
shrinking /nix/store/g9y1hwazzhvbhaywcjj429baqlhi5qqg-chuck-1.3.5.2/bin/chuck
strip is /nix/store/fzawmqln44kzgaf4x36h1wycfsamgnnl-binutils-2.30/bin/strip
stripping (with command strip and flags -S) in /nix/store/g9y1hwazzhvbhaywcjj429baqlhi5qqg-chuck-1.3.5.2/bin
patching script interpreter paths in /nix/store/g9y1hwazzhvbhaywcjj429baqlhi5qqg-chuck-1.3.5.2
checking for references to /build in /nix/store/g9y1hwazzhvbhaywcjj429baqlhi5qqg-chuck-1.3.5.2...
/nix/store/g9y1hwazzhvbhaywcjj429baqlhi5qqg-chuck-1.3.5.2

@LnL7 LnL7 merged commit 6075df7 into NixOS:staging Mar 22, 2018
@LnL7 LnL7 deleted the darwin-chuck branch March 22, 2018 20:32
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants