Done with the help of https://github.com/Mindavi/nixpkgs-mark-broken
Tool is still WIP but this is one of the first results.
I manually audited the results and removed some results that were not valid.
Note that some of these packages maybe should have more constrained platforms set
instead of broken set, but I think not being perfectly correct is better than
just keep trying to build all these things and never succeeding.
Some observations:
- Some darwin builds require XCode tools
- aarch64-linux builds sometimes suffer from using gcc9
- gcc9 is getting older and misses some new libraries/features
- Sometimes tools try to do system detection or expect some explicit settings for
platforms that are not x86_64-linux
Semi-automatic update. These checks were performed:
- built on NixOS
- found 2.1 with grep in /nix/store/3al1x63bcpba04rn27rxqwsic4jggqhw-libffcall-2.1-dev
- found 2.1 in filename of file in /nix/store/3al1x63bcpba04rn27rxqwsic4jggqhw-libffcall-2.1-dev
Use the release tarball provided by the clisp maintainer.
Tested build by nix-build -A clisp -A clisp_2_44_1 -A gtk-server;
only clisp run-tested.
Of particular note is that the .so files no longer have executable
stacks. This also avoids executable stack in clisp lisp.run
Before:
$ readelf -lW $(nix-build -A clisp)/lib/clisp-2.49/base/lisp.run|grep GNU_STACK
GNU_STACK [...] RWE 0x10
After:
$ readelf -lW $(nix-build -A clisp)/lib/clisp-2.49/base/lisp.run|grep GNU_STACK
GNU_STACK [...] RW 0x10