)]}'
{
  "commit": "adb2822177bcc606a01c0a4f54c3a2acce2f068d",
  "tree": "0188cf22edce000f2c4197e22cef7e5255f69ec1",
  "parents": [
    "ef86d92f52bd20995ccd8cdee860cf06555b8869"
  ],
  "author": {
    "name": "csmartdalton",
    "email": "hello@rive.app",
    "time": "Fri Jul 26 20:23:29 2024 +0000"
  },
  "committer": {
    "name": "csmartdalton",
    "email": "hello@rive.app",
    "time": "Fri Jul 26 20:23:29 2024 +0000"
  },
  "message": "Add a build_rive.sh script to unify the premake5 build process\n\nAttempts to unify the build process across all projects with a\n\"build_rive.sh\" script.\n\nRather than scattering custom build scripts all around the repo, the\nidea here is that our \"premake5.lua\" scripts will all conform to the\nsame protocol, which we can then build using one single, global script.\n\nTo use this build_rive.sh:\n\n  1) add packages/runtime/build to $PATH\n  2) cd to directory with a premake5.lua\n  3) run build_rive.sh with desired flags (in any order)\n\nBuild for the host machine:\n```\n  build_rive.sh                      # debug build\n  build_rive.sh release              # release build\n  build_rive.sh release clean        # clean, followed by a release build\n  build_rive.sh ninja                # use ninja (experimental) for a debug build\n  build_rive.sh ninja release        # use ninja (experimental) for a release build\n  build_rive.sh ninja --with_vulkan  # extra parameters get forwarded to premake\n```\nGenerate `compile_commands.json` for code completion engines:\n```\n  build_rive.sh compdb                        # code completion for a host build\n  build_rive.sh compdb android --with_vulkan  # code completion for android with vulkan enabled\n```\nSpecify build targets after \"--\":\n```\n  build_rive.sh -- gms goldens\n  build_rive.sh ninja release -- imagediff\n```\nBuild for android:\n```\n  build_rive.sh android            # debug build, defaults to arm64\n  build_rive.sh ninja android arm  # release arm32 build using ninja\n```\nBuild for ios:\n```\n  build_rive.sh ios          # debug build, arm64 only\n  build_rive.sh ios release  # release build, arm64 only\n  build_rive.sh iossim       # debug build, defaults to \"universal\" (x64 and arm64) architecture\n```\nBuild for wasm:\n```\n  build_rive.sh ninja release wasm                # release build\n  build_rive.sh ninja release wasm --with-webgpu  # release build, also enable webgpu\n```\nIncremental builds:\n```\n  build_rive.sh                            # initial build\n  build_rive.sh                            # any repeat command does an incremental build\n  build_rive.sh --with_vulkan \u003c- FAILS!!   # a repeat build with different arguments fails\n  build_rive.sh clean --with_vulkan        # a clean build with different arguments is OK\n  build_rive.sh rebuild out/debug  # use \"rebuild\" on a specific OUT directory to relaunch the\n                                   # build with whatever args it got configured with initially\n  build_rive.sh rebuild out/debug gms goldens  # args after OUT get forwarded to the buildsystem\n```\n\nDiffs\u003d\n0a11e599f Add a build_rive.sh script to unify the premake5 build process (#7691)\n\nCo-authored-by: Chris Dalton \u003c99840794+csmartdalton@users.noreply.github.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "fd8e867810ae212adf24d0d0dbef68033ccdac28",
      "old_mode": 33188,
      "old_path": ".rive_head",
      "new_id": "49e224cf57913474f10bc8ae2fbf5ec7b07cc0b9",
      "new_mode": 33188,
      "new_path": ".rive_head"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "9329927d242bce584d482ec35649cd086690e4bf",
      "new_mode": 33261,
      "new_path": "build/build_rive.sh"
    },
    {
      "type": "modify",
      "old_id": "fe609d25adccffe0c289563a654d55e03d6a17b1",
      "old_mode": 33188,
      "old_path": "build/dependency.lua",
      "new_id": "95f68269f2e61fa9897635add687f734ffccaacc",
      "new_mode": 33188,
      "new_path": "build/dependency.lua"
    },
    {
      "type": "modify",
      "old_id": "c08ca59fa1b482c47c6e6a6e9a8d2888c9754643",
      "old_mode": 33188,
      "old_path": "build/rive_build_config.lua",
      "new_id": "8396eeb2bfced6a76499e75983323a1086f2a3f5",
      "new_mode": 33188,
      "new_path": "build/rive_build_config.lua"
    }
  ]
}
