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

ecl: Use boehmgc #39391

Merged
merged 1 commit into from Apr 24, 2018
Merged

ecl: Use boehmgc #39391

merged 1 commit into from Apr 24, 2018

Conversation

timokau
Copy link
Member

@timokau timokau commented Apr 23, 2018

Motivation for this change

ecl has its own gc and can use either that or boehmgc. sage needs boehmgc. I'm not entirely sure if its better in all cases, the best I could find on the topic is https://common-lisp.net/project/ecl/static/manual/pr01s06.html which mentions that it is needed on OpenBSD (so apperently more portable).

I'd guess that a dedicated gc is probably better than one maintained by the ecl developers.

I should've included that in my last ecl PR, but I just now realized that I need it.

@7c6f434c (why doesn't github allow the PR creator to request a review? :/)

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.

@7c6f434c
Copy link
Member

7c6f434c commented Apr 23, 2018 via email

@timokau
Copy link
Member Author

timokau commented Apr 23, 2018

Good point. I made it an option which is enabled by default for ecl_16_1_2 and disabled by default for the current version.

@7c6f434c
Copy link
Member

@GrahamcOfBorg build maxima-ecl

@GrahamcOfBorg
Copy link

No attempt on x86_64-darwin (full log)

The following builds were skipped because they don't evaluate on x86_64-darwin: maxima-ecl

Partial log (click to expand)


a) For `nixos-rebuild` you can set
  { nixpkgs.config.allowUnsupportedSystem = true; }
in configuration.nix to override this.

b) For `nix-env`, `nix-build`, `nix-shell` or any other Nix command you can add
  { allowUnsupportedSystem = true; }
to ~/.config/nixpkgs/config.nix.


@GrahamcOfBorg
Copy link

Failure on x86_64-linux (full log)

Attempted: maxima-ecl

Partial log (click to expand)

============================================================================
make[3]: *** [Makefile:558: test-suite.log] Error 1
make[3]: Leaving directory '/build/maxima-5.41.0/tests'
make[2]: *** [Makefile:666: check-TESTS] Error 2
make[2]: Leaving directory '/build/maxima-5.41.0/tests'
make[1]: *** [Makefile:792: check-am] Error 2
make[1]: Leaving directory '/build/maxima-5.41.0/tests'
make: *** [Makefile:457: check-recursive] Error 1
builder for '/nix/store/6d0rkj9myrdd2q4fh21v41rg6l9nvwjc-maxima-5.41.0.drv' failed with exit code 2
error: build of '/nix/store/6d0rkj9myrdd2q4fh21v41rg6l9nvwjc-maxima-5.41.0.drv' failed

@7c6f434c
Copy link
Member

@timokau any ideas if maxima-ecl worked before the change?

@timokau
Copy link
Member Author

timokau commented Apr 23, 2018

Yes, and this PR passed nox-review, too.

If I recall correctly there was a single test-failure when I submitted maxima-ecl, but when I wanted to disable that test I couldn't reproduce it anymore. Seems to be a transient failure.

@7c6f434c
Copy link
Member

For reproducibility!

@GrahamcOfBorg build maxima-ecl

@GrahamcOfBorg
Copy link

No attempt on x86_64-darwin (full log)

The following builds were skipped because they don't evaluate on x86_64-darwin: maxima-ecl

Partial log (click to expand)


a) For `nixos-rebuild` you can set
  { nixpkgs.config.allowUnsupportedSystem = true; }
in configuration.nix to override this.

b) For `nix-env`, `nix-build`, `nix-shell` or any other Nix command you can add
  { allowUnsupportedSystem = true; }
to ~/.config/nixpkgs/config.nix.


@GrahamcOfBorg
Copy link

Success on x86_64-linux (full log)

Attempted: maxima-ecl

Partial log (click to expand)

shrinking /nix/store/yh3fx7wqj7l3jc5kal5wcf3la4nxzk3l-maxima-5.41.0/lib/maxima/5.41.0/binary-ecl/maxima.fas
gzipping man pages under /nix/store/yh3fx7wqj7l3jc5kal5wcf3la4nxzk3l-maxima-5.41.0/share/man/
strip is /nix/store/j75dgadrff2d1fyc4fczmcgqkid2imdx-binutils-2.30/bin/strip
stripping (with command strip and flags -S) in /nix/store/yh3fx7wqj7l3jc5kal5wcf3la4nxzk3l-maxima-5.41.0/lib  /nix/store/yh3fx7wqj7l3jc5kal5wcf3la4nxzk3l-maxima-5.41.0/libexec  /nix/store/yh3fx7wqj7l3jc5kal5wcf3la4nxzk3l-maxima-5.41.0/bin
patching script interpreter paths in /nix/store/yh3fx7wqj7l3jc5kal5wcf3la4nxzk3l-maxima-5.41.0
/nix/store/yh3fx7wqj7l3jc5kal5wcf3la4nxzk3l-maxima-5.41.0/bin/.maxima-wrapped: interpreter directive changed from "/bin/sh" to "/nix/store/xn5gv3lpfy91yvfy9b0i7klfcxh9xskz-bash-4.4-p19/bin/sh"
/nix/store/yh3fx7wqj7l3jc5kal5wcf3la4nxzk3l-maxima-5.41.0/bin/.rmaxima-wrapped: interpreter directive changed from "/bin/sh" to "/nix/store/xn5gv3lpfy91yvfy9b0i7klfcxh9xskz-bash-4.4-p19/bin/sh"
/nix/store/yh3fx7wqj7l3jc5kal5wcf3la4nxzk3l-maxima-5.41.0/bin/.xmaxima-wrapped: interpreter directive changed from "/bin/sh" to "/nix/store/xn5gv3lpfy91yvfy9b0i7klfcxh9xskz-bash-4.4-p19/bin/sh"
/nix/store/yh3fx7wqj7l3jc5kal5wcf3la4nxzk3l-maxima-5.41.0/libexec/maxima/5.41.0/mgnuplot: interpreter directive changed from "/bin/sh" to "/nix/store/xn5gv3lpfy91yvfy9b0i7klfcxh9xskz-bash-4.4-p19/bin/sh"
checking for references to /build in /nix/store/yh3fx7wqj7l3jc5kal5wcf3la4nxzk3l-maxima-5.41.0...

@timokau
Copy link
Member Author

timokau commented Apr 23, 2018

Magic

I'll see if I can disable those specific tests without any lisp knowledge.

@7c6f434c
Copy link
Member

I wonder if right now my buildbox is the only one online… (and I switch the buildbox off from time to time…)

@timokau
Copy link
Member Author

timokau commented Apr 23, 2018

Okay I did manage to disable individual tests (I think). There's no guarantee that I've disabled all potential transient failures, but I guess we'll know when more come up.

Should I just add that to this PR or create a new one? It doesn't really have that much to do with this one when I think about it.

I wonder if right now my buildbox is the only one online

I thought ofBorg had dedicated servers?

@GrahamcOfBorg
Copy link

Success on aarch64-linux (full log)

Attempted: maxima-ecl

Partial log (click to expand)

gzipping man pages under /nix/store/50hld596lbvaixdp2s7ikfn3yrp17xjz-maxima-5.41.0/share/man/
strip is /nix/store/j7d4mr0ikv974ig7yzhknpsq288js4bs-binutils-2.30/bin/strip
stripping (with command strip and flags -S) in /nix/store/50hld596lbvaixdp2s7ikfn3yrp17xjz-maxima-5.41.0/lib  /nix/store/50hld596lbvaixdp2s7ikfn3yrp17xjz-maxima-5.41.0/libexec  /nix/store/50hld596lbvaixdp2s7ikfn3yrp17xjz-maxima-5.41.0/bin
patching script interpreter paths in /nix/store/50hld596lbvaixdp2s7ikfn3yrp17xjz-maxima-5.41.0
/nix/store/50hld596lbvaixdp2s7ikfn3yrp17xjz-maxima-5.41.0/libexec/maxima/5.41.0/mgnuplot: interpreter directive changed from "/bin/sh" to "/nix/store/adw9jx59wnrh5659wz43nbjya3m4b3gl-bash-4.4-p19/bin/sh"
/nix/store/50hld596lbvaixdp2s7ikfn3yrp17xjz-maxima-5.41.0/bin/.xmaxima-wrapped: interpreter directive changed from "/bin/sh" to "/nix/store/adw9jx59wnrh5659wz43nbjya3m4b3gl-bash-4.4-p19/bin/sh"
/nix/store/50hld596lbvaixdp2s7ikfn3yrp17xjz-maxima-5.41.0/bin/.rmaxima-wrapped: interpreter directive changed from "/bin/sh" to "/nix/store/adw9jx59wnrh5659wz43nbjya3m4b3gl-bash-4.4-p19/bin/sh"
/nix/store/50hld596lbvaixdp2s7ikfn3yrp17xjz-maxima-5.41.0/bin/.maxima-wrapped: interpreter directive changed from "/bin/sh" to "/nix/store/adw9jx59wnrh5659wz43nbjya3m4b3gl-bash-4.4-p19/bin/sh"
checking for references to /build in /nix/store/50hld596lbvaixdp2s7ikfn3yrp17xjz-maxima-5.41.0...
/nix/store/50hld596lbvaixdp2s7ikfn3yrp17xjz-maxima-5.41.0

@GrahamcOfBorg
Copy link

Success on aarch64-linux (full log)

Attempted: maxima-ecl

Partial log (click to expand)

these derivations will be built:
  /nix/store/y5ijhb7jl4pc2rgf72h0x6pgh4kxnljz-ecl-16.1.2.drv
  /nix/store/ykcz82pvkvgcgpij6kym4d1vs98c5i5k-maxima-5.41.0.drv
waiting for locks or build slots...
/nix/store/50hld596lbvaixdp2s7ikfn3yrp17xjz-maxima-5.41.0

@7c6f434c
Copy link
Member

ofborg also has some dedicated cloud instances, I think. But all my ofborg invocations went to my box yesterday…

@7c6f434c 7c6f434c merged commit 473fe34 into NixOS:master Apr 24, 2018
@timokau timokau deleted the ecl-boehmgc branch April 24, 2018 09:13
@timokau timokau mentioned this pull request Apr 24, 2018
8 tasks
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.

None yet

3 participants