)]}'
{
  "commit": "aa77b425f16394e237a4ae7c9bfb15d9752d8b24",
  "tree": "7e7056df121cd1a1f936e1dd0a389417b63ce9d6",
  "parents": [
    "b785d1303c2742edc0271a896967da3b2564fa9f"
  ],
  "author": {
    "name": "Derek Schuff",
    "email": "dschuff@chromium.org",
    "time": "Fri Jan 16 17:53:10 2026"
  },
  "committer": {
    "name": "GitHub",
    "email": "noreply@github.com",
    "time": "Fri Jan 16 17:53:10 2026"
  },
  "message": "Link mimalloc with --as-needed on Linux (#8211)\n\nThe mimalloc CMake code unconditionally adds libatomic to its link\ndependencies, but it\u0027s not actually needed on the modern systems\nthat we\u0027re building for. Adding the --as-needed flag causes the\nlinker to only link against the following libraries if they\nprovide symbols that are actually needed.\n\nFor static linking, we wrap mimalloc\u0027s injected dependencies in\n-Wl,--as-needed since they surface all the way up to the final\nlink line for each tool (I don\u0027t think it would hurt to just\nlink all the tools with --as-needed but this seemed cleaner).\nFor dynamic linking, it\u0027s sufficient to just make the libmimalloc.so\nlink with --as-needed.\n\nAs a drive-by cleanup, also make mimalloc a private dependency of\nlibbinaryen.\n\nFixes https://github.com/emscripten-core/emsdk/issues/928",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "6b4cf08524d8c35951b2fe8f1919027d58b369fa",
      "old_mode": 33188,
      "old_path": "CMakeLists.txt",
      "new_id": "1f1d97ae046bda8f280d63073dbbc8ed3a0e451f",
      "new_mode": 33188,
      "new_path": "CMakeLists.txt"
    }
  ]
}
