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

Add back in a reconfigure / rebuild optimization for allow-newer: true #2049

Open
mgsloan opened this issue Apr 20, 2016 · 1 comment
Open

Comments

@mgsloan
Copy link
Contributor

mgsloan commented Apr 20, 2016

The fix for #1579 requires us to pass all dependencies in to the configure step. We currently have a clever optimization that passes in --enable-tests or --enable-benchmarks if their dependencies are present. This reduces rebuilds due to changing cabal_macros.h files.

I spent some time trying to figure out how to move this decision to earlier in the build process. However, it got a bit head-scratching. I'll keep it in mind as I make more changes atop this.

For now, --exact-configuration is only enabled when allow-newer is set to true. The optimization is only disabled when allow-newer is set. Once this is fixed, I think --exact-configuration should always get passed.

@mgsloan
Copy link
Contributor Author

mgsloan commented Apr 20, 2016

Some comments I was going to commit, might as well put here instead:

                    -- 'Stack.Package.packageDependencies' needs to know
                    -- that we are going to enable tests / benchmarks.
                    -- This way, we can have the dependencies when
                    -- figuring out configuration options in
                    -- Stack.Types.Build.configureOpts, used by
                    -- "Stack.ConstructPlan". We should probably also
                    -- move the --enable-* arg generation to there too.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant