Skip to content

Setup.hs configure with autoconf build type runs configure script in the wrong working directory #7677

@TerrorJack

Description

@TerrorJack

Describe the bug
When building a package with build-type: Configure, the configure script is run with the build directory as the working directory, rather than the source directory. If the configure script attempts to include a header file relative to the source directory, it doesn't work.

To Reproduce
Minimal repro: https://github.com/TerrorJack/cabal-configure-pwd-issue-repro. The repro above is minimized from the base package. Run autoreconf -i to generate configure script.

Running cabal act-as-setup --build-type=Configure configure will fail to execute the configure script:

Configuring cabal-configure-pwd-issue-repro-0.1.0.0...
configure: WARNING: unrecognized options: --with-compiler
checking for gcc... /usr/bin/gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables... 
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether /usr/bin/gcc accepts -g... yes
checking for /usr/bin/gcc option to accept ISO C89... none needed
checking for struct MD5Context... no
configure: error: internal error

While running ./configure manually will succeed.

System information

  • Operating system: Linux 5.5.9, Debian bullseye
  • cabal-3.4.0.0
  • ghc-9.0.1

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions