{
  "version":"0.1",
  "root_folder":"%filefolder%",
  "run_context":"sub",
  "name":"Bootanim build",
  "actions":[
    {
      "action":"compile_one_cpp",
      "args":{
        "source_variables":false,
        "source":"bootanim.cpp",
        "compiler_variables":true,
        "compiler":"$CPP_COMPILER$",
        "pre_arguments_variables":true,
        "pre_arguments":[
        ],
        "post_arguments_variables":true,
        "post_arguments":[
          "-o",
          "$BOOTANIM_BINARY_NAME$",
          "-Ofast",
          "-march=native"
        ],
        "output_file_variables":true,
        "output_file":"$BOOTANIM_BINARY_NAME$",
        "success_status":[
          0
        ],
        "ignore_success_status":true,
        "cache_authorized":true,
        "headers_command_variables":true,
        "headers_command":"gcc -MMD -MF %dfile% -E %sourcefile% -o /dev/null"
      }
    },
    {
      "action":"run_actions_if",
      "args":{
        "condition":{
          "condition_variables":false,
          "condition":"cache_contains",
          "condition_args_variables":false,
          "condition_args":[
            "bootanim.bin"
          ]
        },
        "actions":[
          {
            "action":"extract_from_cache",
            "args":{
              "target_variables":false,
              "target":"bootanim.bin",
              "output_file_variables":true,
              "output_file":"%rootcallerfolder%/$EDK2_BLASTPROOF_DIR$/bootanim/bootanim.bin"
            }
          },
          {
            "action":"exit_current_module",
            "args":{
              "is_fail":false
            }
          }
        ]
      }
    },
    {
      "action":"run_command_wait",
      "args":{
        "command_variables":true,
        "command":[
          "./bootanim",
          "logo.png",
          "file",
          "$BOOTANIM_WIDTH$",
          "$BOOTANIM_HEIGH$"
        ],
        "show_output":"on_failure",
        "success_status":[
          0
        ],
        "ignore_success_status":false
      }
    },
    {
      "action":"store_in_cache",
      "args":{
        "key_variables":false,
        "key":"bootanim.bin",
        "file_variables":true,
        "file":"%rootcallerfolder%/$EDK2_BLASTPROOF_DIR$/bootanim/bootanim.bin",
        "overwrite_allowed":false
      }
    }
  ]
}
