# 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\ with\ space-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\ with\ space-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\\ with\\ space-1\" > output-1.d && cat input-1 header\\ with\\ space-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

