-
Notifications
You must be signed in to change notification settings - Fork 4
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
The build process is painful and broken #126
Comments
To elaborate on the |
Furthermore, running e.g. |
This repository is very much in flux right now, as we migrate code from here to various other places where it makes more sense. I believe the correct way to build saw-remote-api right now is from the saw-script repository, but I'm not entirely sure what state that is in. |
That's fair, and I'm sure that my lack of Cabal/Haskell know-how is tainting my experience a bit. However, this issue comes from trying to get started with Argo based on the README, so it's a bit confusing that I can't even get any of the example scripts running, even after fixing a few commands. |
Two possible suggestions:
|
With this repo, a recursive submodule clone is a bit like a zip bomb. Even without that consideration, some part of one of the 40 cloned
Even after a recursive submodule update.
The paren syntax is better. However, the real issues here are A) all of this could be done with just one cabal command if the repo used subtrees instead of submodules, B) the current cabal specification is broken relative to what's actually needed by Bear in mind, since the |
My bad on the recursive submodule suggestion: I wasn't paying enough attention to what the submodule target was, sorry about that! I wish there was a way to target/constrain the recursion, and/or specify a depth. |
This is not actually the right repository to be building things in. I've just submitted a PR that should at least remove the blatant inaccuracies from the README. (see also GaloisInc/cryptol#988 for a related update) |
Basically, this boils down to an argument against git submodules. Currently, the user must issue multiple
git submodule update --init
calls, and cd to several obscure (to the user) directories. It seems thatgit subtree
would be a far, far better solution, and would allow all of the complicated cabal/git-related bits in the README to disappear. That is, a user would only need to install argo with thepip install -e
line, and then the system/cabal would take care of the rest with subtrees whenargo
first tries to launchexe:saw-remote-api
.With the current setup, the line in the README with
pushd
andpopd
is particularly nefarious, because it's easy to skim over the secondcd
command, and then the user gets very unintuitive errors relating to abcBridge when they go to build saw-remote-api.Also: the root
cabal.project
for argo should havedeps/saw-script
added to it, anddeps/saw-script
needs to be added to this repository. It currently is not linked at all, despite what's indicated in the master branch's README.The text was updated successfully, but these errors were encountered: