-
Notifications
You must be signed in to change notification settings - Fork 28
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
Specify tool dependencies using build-tool-depends
. Refs #149.
#228
Merged
ivanperez-keera
merged 10 commits into
nasa:develop
from
ivanperez-keera:develop-build-tool-depends
Feb 2, 2025
Merged
Specify tool dependencies using build-tool-depends
. Refs #149.
#228
ivanperez-keera
merged 10 commits into
nasa:develop
from
ivanperez-keera:develop-build-tool-depends
Feb 2, 2025
+29
−12
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
…asa#149. The Cabal packages in Ogma were written for an older version of Cabal. Currently, they only state a dependency on `BNFC` as part of a custom-setup section. However, this is sub-ideal because `alex` and `happy` are also needed, and Cabal fails to detect that requirement, and also fails to install `BNFC` and make it available before it tries to compile Ogma. This makes the installation instructions overly complicated (all three of those packages need to be installed by hand first), and makes Hackage report that Ogma as a whole cannot be built. This commit updates the Cabal package to specify the tools it needs using `build-tool-depends`. The notation is used by versions of Cabal from 3.0 to modern versions when using the standard `install` command, which ensures that the programs needed are installed before. When using `v1-install`, which is accepted by versions of Cabal as far as 2.4, the programs `alex`, `happy` and `bnfc` need to be installed prior to installing Ogma (like before).
…. Refs nasa#149. The Cabal packages in Ogma were written for an older version of Cabal. Currently, they only state a dependency on `BNFC` as part of a custom-setup section. However, this is sub-ideal because `alex` and `happy` are also needed, and Cabal fails to detect that requirement, and also fails to install `BNFC` and make it available before it tries to compile Ogma. This makes the installation instructions overly complicated (all three of those packages need to be installed by hand first), and makes Hackage report that Ogma as a whole cannot be built. This commit updates the Cabal package to specify the tools it needs using `build-tool-depends`. The notation is used by versions of Cabal from 3.0 to modern versions when using the standard `install` command, which ensures that the programs needed are installed before. When using `v1-install`, which is accepted by versions of Cabal as far as 2.4, the programs `alex`, `happy` and `bnfc` need to be installed prior to installing Ogma (like before).
…nasa#149. The Cabal packages in Ogma were written for an older version of Cabal. Currently, they only state a dependency on `BNFC` as part of a custom-setup section. However, this is sub-ideal because `alex` and `happy` are also needed, and Cabal fails to detect that requirement, and also fails to install `BNFC` and make it available before it tries to compile Ogma. This makes the installation instructions overly complicated (all three of those packages need to be installed by hand first), and makes Hackage report that Ogma as a whole cannot be built. This commit updates the Cabal package to specify the tools it needs using `build-tool-depends`. The notation is used by versions of Cabal from 3.0 to modern versions when using the standard `install` command, which ensures that the programs needed are installed before. When using `v1-install`, which is accepted by versions of Cabal as far as 2.4, the programs `alex`, `happy` and `bnfc` need to be installed prior to installing Ogma (like before).
The Cabal packages in Ogma were written for an older version of Cabal. Currently, they only state a dependency on BNFC as part of a custom-setup section. However, this is sub-ideal because alex and happy are also needed, and Cabal fails to detect that requirement, and also fails to install BNFC and make it available before it tries to compile Ogma. This makes the installation instructions overly complicated (all three of those packages need to be installed by hand first), and makes Hackage report that Ogma as a whole cannot be built. Prior commits have updated the Cabal files to use build-tool-depends to indicate which tools need to be available before compiling some packages. This commit adds a cabal.project file at the top-level so that newer versions of Cabal find all Ogma packages in the current directory, which is needed to be able to exploit that functionality.
The Cabal packages in Ogma were written for an older version of Cabal. Currently, they only state a dependency on BNFC as part of a custom-setup section. However, this is sub-ideal because alex and happy are also needed, and Cabal fails to detect that requirement, and also fails to install BNFC and make it available before it tries to compile Ogma. This makes the installation instructions overly complicated (all three of those packages need to be installed by hand first), and makes Hackage report that Ogma as a whole cannot be built. Prior commits have updated the Cabal files to use build-tool-depends to indicate which tools need to be available before compiling some packages. With this change, in older versions of Cabal, it is now necessary to manually install bnfc before installing Ogma.
The Cabal packages in Ogma were written for an older version of Cabal. Currently, they only state a dependency on BNFC as part of a custom-setup section. However, this is sub-ideal because alex and happy are also needed, and Cabal fails to detect that requirement, and also fails to install BNFC and make it available before it tries to compile Ogma. This makes the installation instructions overly complicated (all three of those packages need to be installed by hand first), and makes Hackage report that Ogma as a whole cannot be built. Prior commits have updated the Cabal files to use build-tool-depends to indicate which tools need to be available before compiling some packages. This commit updates the README with the new installation instructions.
ivanperez-keera
force-pushed
the
develop-build-tool-depends
branch
from
February 2, 2025 04:55
888a9b8
to
ede7dda
Compare
Change Manager: Verified that:
|
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Specify dependencies on tools like
alex
,happy
andBNFC
usingbuild-tool-depends
, and update installation instructions accordingly, as prescribed in the solution proposed for #149.