# Check the handling of discovered dependencies in shell commands.

# We test with a simple command that just writes a fake .d file which lists an
# input dependency on "header-1".

# RUN: rm -rf %t.build
# RUN: mkdir -p %t.build
# RUN: touch %t.build/header-1 %t.build/input-1
# RUN: cp %s %t.build/build.llbuild


# Check the first build.
#
# RUN: %{llbuild} buildsystem build --serial --chdir %t.build > %t1.out
# RUN: %{FileCheck} --check-prefix=CHECK-INITIAL --input-file=%t1.out %s
#
# CHECK-INITIAL: CC output-1
# CHECK-INITIAL: cat output-1 > output


# Check a build that modifies the header.
#
# RUN: echo "mod" >> %t.build/header-1
# RUN: %{llbuild} buildsystem build --serial --chdir %t.build &> %t2.out
# RUN: %{FileCheck} --check-prefix=CHECK-AFTER-MOD --input-file=%t2.out %s
#
# CHECK-AFTER-MOD: CC output-1
# CHECK-AFTER-MOD: cat output-1 > output

client:
  name: basic

targets:
  "": ["output"]

commands:
  output-1:
    tool: shell
    inputs: ["input-1"]
    outputs: ["output-1"]
    args: "echo \"output-1: input-1 header-1\" > output-1.d && cat input-1 header-1 > output-1"
    description: CC output-1
    deps: output-1.d
    deps-style: makefile
    
  output:
    tool: shell
    inputs: ["output-1"]
    outputs: ["output"]
    args: cat output-1 > output

