)]}'
{
  "commit": "124277ff18fbb896665e4187c580ca5db9e05db2",
  "tree": "287b867518ba4f9194e2a7611a07960b8eec25f4",
  "parents": [
    "40fdd0a37c9e55ff6d8497d7a58e49c59cb5414d"
  ],
  "author": {
    "name": "David M. Warme",
    "email": "a136dmw@warme.net",
    "time": "Sun May 25 19:25:28 2025 -0500"
  },
  "committer": {
    "name": "Eric Blake",
    "email": "eblake@redhat.com",
    "time": "Mon May 26 07:40:49 2025 -0500"
  },
  "message": "feature: Add Makefile dependency command-line options\n\nSimilar to what gcc can do, make it possible for m4 to output Makefile\nfragments that track the files that were included during processing,\nin order to automatically rebuild files in the correct dependency\nchains later on.\n\n* NEWS: Document the feature.\n* THANKS: Update.\n* checks/get-them: Add support for declaring a test\u0027s auxfile.\n* checks/check-them: Add code for handling auxilliary files, to make\ntesting the feature possible.\n* doc/m4.texi (auxresult): New macro.\n(Make dependency generation): New chapter.\n* src/m4.h (makedep_gen_missing, REF_CMD_LINE, REF_INCLUDE)\n(REF_SINCLUDE, REF_ALL, REF_NONE): Prepare for new options.\n(record_dependency, generate_make_dependencies): New prototypes.\n* src/m4.c (makedep_path, makedep_target, makedep_gen_missing)\n(makedep_phony): Track new options.\n(usage): Document new options.\n(process_file): Track dependencies.\n(main): Parse new options.\n* src/builtin.c (include, m4_include, m4_sinclude): Track include\nsource.\n* src/path.c (struct dependency): New struct.\n(dependency_list, dependency_list_end): New variables.\n(record_dependency, generate_make_dependencies): Output dependencies.\nCo-developed-by: Lorenzo Di Gregorio \u003clorenzo.digregorio@gmail.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "f25dac3d06488f724f1b833494040e7e9f7f307d",
      "old_mode": 33188,
      "old_path": "NEWS",
      "new_id": "6bbb347e9788536983fd5dd26d871d13a848e0e6",
      "new_mode": 33188,
      "new_path": "NEWS"
    },
    {
      "type": "modify",
      "old_id": "d441f56a92f6ccf287cd24dc33bda15a6b5a7183",
      "old_mode": 33188,
      "old_path": "THANKS",
      "new_id": "2e4de505e45b7f8559c21e26b9c70183a768b2cf",
      "new_mode": 33188,
      "new_path": "THANKS"
    },
    {
      "type": "modify",
      "old_id": "24e68029fc64617c62858b667f8bed10c457d4e4",
      "old_mode": 33261,
      "old_path": "checks/check-them",
      "new_id": "0b283134a0b07418717c66e198bb047fb43a66be",
      "new_mode": 33261,
      "new_path": "checks/check-them"
    },
    {
      "type": "modify",
      "old_id": "5848db5e5f409d7853d641cf7423f72e8aa2eeb3",
      "old_mode": 33261,
      "old_path": "checks/get-them",
      "new_id": "0d62065b1559afcbdfc5f759a0a35f3c9ea0676f",
      "new_mode": 33261,
      "new_path": "checks/get-them"
    },
    {
      "type": "modify",
      "old_id": "fdd2f26bd6be31173965cbf9fc28d20828554945",
      "old_mode": 33188,
      "old_path": "doc/m4.texi",
      "new_id": "72281ef38cb15b8e1486019c8389ca5917d6c10b",
      "new_mode": 33188,
      "new_path": "doc/m4.texi"
    },
    {
      "type": "modify",
      "old_id": "bf0d179828e13e70e769692473e509c417b933b5",
      "old_mode": 33188,
      "old_path": "src/builtin.c",
      "new_id": "36b9ed00b651961bbbe96cac6427cc881bfb5d71",
      "new_mode": 33188,
      "new_path": "src/builtin.c"
    },
    {
      "type": "modify",
      "old_id": "236b34cae5b9207093cb9ac771a38d6605d6e30e",
      "old_mode": 33188,
      "old_path": "src/eval.c",
      "new_id": "0bd8a5ea7728aaff9e1bf7893c9c947143b5b37f",
      "new_mode": 33188,
      "new_path": "src/eval.c"
    },
    {
      "type": "modify",
      "old_id": "89a2ec2f873af94e8f9e5797346cdb6b3ce2bbe8",
      "old_mode": 33188,
      "old_path": "src/m4.c",
      "new_id": "9f6c5f3b843574d31b48a186e4d6b26ca57e604c",
      "new_mode": 33188,
      "new_path": "src/m4.c"
    },
    {
      "type": "modify",
      "old_id": "79dca438c5f4c294f36945a539a2615934442db7",
      "old_mode": 33188,
      "old_path": "src/m4.h",
      "new_id": "5eb0296256e280040dd790d2942773421a37b139",
      "new_mode": 33188,
      "new_path": "src/m4.h"
    },
    {
      "type": "modify",
      "old_id": "1c9993d6b9aeeec118be4722cafb235b2617c975",
      "old_mode": 33188,
      "old_path": "src/path.c",
      "new_id": "4dab4bd1c96d3533ecaf8ed1b28156f31e61562a",
      "new_mode": 33188,
      "new_path": "src/path.c"
    }
  ]
}
