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

(autotools) Generating dry-run is very slow (due to run configure for a hundred times) #676

Open
myocytebd opened this issue Dec 10, 2024 · 1 comment
Labels
more info needed More info is needed from the community for us to properly triage and investigate

Comments

@myocytebd
Copy link

myocytebd commented Dec 10, 2024

extension version: 0.12 (preview) & 0.11 (stable)

Generating dry-run takes 8 minutes.

Load configuration from cache elapsed time: 0.013
Generating in the background a new configuration cache with command: 'make -f /home/ulp/source/game/civctp2/civctp2/GNUmakefile --dry-run --always-make --keep-going --print-directory'
Writing the dry-run output: /home/ulp/.config/Code/User/workspaceStorage/f0df8ce77dab6f127b0edf39a17a7c1f/ms-vscode.makefile-tools/dryrun.log
Dropping various extension output files at /home/ulp/.config/Code/User/workspaceStorage/f0df8ce77dab6f127b0edf39a17a7c1f/ms-vscode.makefile-tools
Configure on open: true
Deduced command 'make -f /home/ulp/source/game/civctp2/civctp2/GNUmakefile' for configuration "Default"
Generating dry-run elapsed time: 487.904

Looking at dryrun.log, make ran am--refresh (and thus root configure) for about 80 times; configure ran 117 times (root + subdir).
A normal re-configure should run configure 3 times (root + subdir).

Manual run make -f /home/ulp/source/game/civctp2/civctp2/GNUmakefile --dry-run --always-make --keep-going --print-directory can confirm this behavior. I don't know why it was able to end after 117 times (instead of stuck forever).

dryrun.log

It should be reproducible with: https://github.com/civctp2/civctp2
My fork is sort of different, but the autotools mess should be similar.

# assume debian/ubuntu
sudo apt install libsdl2-dev libsdl2-mixer-dev libsdl2-image-dev libtiff-dev libavcodec-dev libavformat-dev libswscale-dev byacc flex
./autogen.sh
./configure
# run makefile-tools configure

If 1st run does not reproduce, try re-configure & make.

@Yingzi1234
Copy link
Collaborator

@myocytebd We can't reproduce your issue on Linux platform, and we'd like to reconfirm with you the steps for reproduction.

  1. Install Docker container
  2. Run code : sudo apt install libsdl2-dev libsdl2-mixer-dev libsdl2-image-dev libtiff-dev libavcodec-dev libavformat-dev libswscale-dev byacc flex
  3. clone git repo: https://github.com/civctp2/civctp2.git
  4. Run the below code:
cd civctp2
./autogen.sh
./configure

  1. Check the dry run log

@Yingzi1234 Yingzi1234 added more info needed More info is needed from the community for us to properly triage and investigate and removed triage labels Dec 13, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
more info needed More info is needed from the community for us to properly triage and investigate
Projects
None yet
Development

No branches or pull requests

2 participants