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
ls4: init at 1.0 #65619
ls4: init at 1.0 #65619
Conversation
@GrahamcOfBorg build ls4 |
Please investigate the build failure on |
@mmahut I was overly ambitious packaging this for |
@mmahut Just wanted to ping again on this; I can't send instructions to the build bot unfortunately. |
@GrahamcOfBorg build ls4 |
@mmahut Argh sorry it looks like on Mac |
@GrahamcOfBorg build ls4 |
1 similar comment
@GrahamcOfBorg build ls4 |
@mmahut It looks like everything finally built! |
@mmahut Just wanted to ping on this to see if this could be merged. |
# These object files were committed into the git repo, perhaps accidentally | ||
rm -f aiger.o | ||
rm -f aiger.o_32 | ||
gcc -g -O3 -c aiger.c |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why not use make as per documentation?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is an error in the upstream source repo. The Makefile it includes doesn't actually re-build these object files and just expects them to exist, but the pre-existing object files aren't built correctly for all architectures.
I'm guessing it's because of convenience; the rest of the Makefile just has to call the g++ compiler instead of the gcc compiler here.
Fixed up indentation. |
@mmahut Let me know if there's anything else you want me to fix up. |
On Mac it ends up being clang, which doesn't work. We need g++
2335d5c
to
1d8cb37
Compare
This uses a standard library function instead of a custom override
1d8cb37
to
7a92e77
Compare
@mmahut Will let you review if you can, as you already looked at the code, but overall it LGTM, with the exception that I wasn't able to easily confirm |
Yeah it was a bit tricky to ascertain whether this is the "real" ls4. I see the following as evidence for its authenticity:
|
Thank you for your contributions.
|
Hey @SuperSandro2000, I'd be happy to make those changes if those are what's blocking this PR. Do you think that's all it takes for this PR to get merged? |
Yeah, basically. |
This is a semi-automatic executed nixpkgs-review which is checked by a human on a best effort basis and does not build all packages (e.g. lumo, tensorflow or pytorch). Result of 1 package failed to build and are new build failure:
|
This is a semi-automatic executed nixpkgs-review which is checked by a human on a best effort basis and does not build all packages (e.g. lumo, tensorflow or pytorch). Result of 1 package failed to build and are new build failure:
|
Co-authored-by: Sandro <sandro.jaeckel@gmail.com>
homepage = "https://github.com/quickbeam123/ls4"; | ||
license = licenses.mit; | ||
platforms = platforms.x86; | ||
maintainers = with maintainers; [changlinli]; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
maintainers = with maintainers; [changlinli]; | |
maintainers = with maintainers; [ changlinli ]; |
}; | ||
|
||
meta = with lib; { | ||
description = "A solver for temporal logic, in particular a PLTL-prover based on labelled superposition with partial model guidance. Based off of minisat"; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
description = "A solver for temporal logic, in particular a PLTL-prover based on labelled superposition with partial model guidance. Based off of minisat"; | |
description = "A solver for temporal logic, in particular a PLTL-prover based on labelled superposition"; | |
longDescription = '' | |
A solver for temporal logic, in particular a PLTL-prover based on labelled superposition with partial model guidance. Based off of minisat. | |
''; |
@@ -0,0 +1,40 @@ | |||
{ zlib, gcc, fetchFromGitHub, gccStdenv }: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
{ zlib, gcc, fetchFromGitHub, gccStdenv }: | |
{ lib, zlib, gcc, fetchFromGitHub, gccStdenv }: |
Fails to build with:
|
I marked this as stale due to inactivity. → More info |
Motivation for this change
Adds the ls4 solver.
Things done
sandbox
innix.conf
on non-NixOS)nix-shell -p nix-review --run "nix-review wip"
./result/bin/
)nix path-info -S
before and after)Notify maintainers