-
-
Notifications
You must be signed in to change notification settings - Fork 763
Open
Labels
state: needs triageWaiting to be triaged by a maintainer.Waiting to be triaged by a maintainer.
Description
Hello,
firstly thanks for making such a great tool!
I believe I found a bug where sources are checked before deps complete:
compile_sources:
deps: [preprocess_sources]
sources:
- "./build/**/*.cc"
generates:
- "./build/**/*.o"
cmds:
- for: sources
cmd: '{{.CXX}} {{.CPPFLAGS}} -c -o $(basename {{.ITEM}} .cc).o {{.ITEM}}'
preprocess_sources:
sources:
- "./src/**/*.cc"
generates:
- "./build/**/*.cc"
cmds:
# Preprocess src/**/*.cc into build/**/*.cc
- cp src/main.cc build/main.cc # dummy command
The preprocess_sources task generates sources for compile_sources. But this is the output that I get:
❯ ls build # empty dir
❯ task compile_sources
task: [preprocess_sources] cp src/main.cc build/main.cc # compile_sources does not run at all
❯ ls build
main.cc # no main.o
❯ task -f compile_sources # force run
task: [preprocess_sources] cp src/main.cc build/main.cc
task: [compile_sources] clang++ ..... # compile_sources is run
❯ ls build
main.cc main.o # main.o exists
What I believe is happening is:
compile_sourcesis calledcompile_sourceschecks it'ssources, generates checksum- Call dependencies
3.1preprocess_sourcesgenerates.ccfiles inbuild/ compile_sourcesdoes not generate.ofiles inbuild/, becausebuild/was empty whensourceswere checked
Expected behavior:
compile_sourcesis called- Call dependencies
2.1preprocess_sourcesgenerates.ccfiles inbuild/ compile_sourceschecks it'ssources, generates checksumcompile_sourcesgenerates.ofiles fromsourcesinbuild/
- Task version: 3.34.1
- Operating system: Ubuntu
- Experiments enabled: No
BlueGreenMagick and MalteMagnussen
Metadata
Metadata
Assignees
Labels
state: needs triageWaiting to be triaged by a maintainer.Waiting to be triaged by a maintainer.