)]}'
{
  "commit": "edc27e2d90a2af3afddd68e7a534afcc428719e5",
  "tree": "a73199add56dd75a88d30317f24f109b41c9b16a",
  "parents": [
    "d8e1bca7ebc357ebd9b7a338a53d2767cf0564b6"
  ],
  "author": {
    "name": "Nick Alcock",
    "email": "nick.alcock@oracle.com",
    "time": "Wed Apr 17 19:06:17 2024 +0100"
  },
  "committer": {
    "name": "Nick Alcock",
    "email": "nick.alcock@oracle.com",
    "time": "Fri Apr 19 16:14:48 2024 +0100"
  },
  "message": "libctf: do not include undefined functions in libctf.ver\n\nlibctf\u0027s version script is applied to two libraries: libctf.so,\nand libctf-nobfd.so.  The latter library is a subset of the former\nwhich does not link to libbfd and does not include a few public\nentry points that use it (found in libctf-open-bfd.c).  This means\nthat some of the symbols in this version script only exist in one\nof the libraries it\u0027s applied to.\n\nA number of linkers dislike this: before now, only Solaris\u0027s linker\ncaused serious problems, introducing NOTYPE-typed symbols when such\nthings were found, but now LLD has started to complain as well:\n\nld: error: version script assignment of \u0027LIBCTF_1.0\u0027 to symbol \u0027ctf_arc_open\u0027 failed: symbol not defined\nld: error: version script assignment of \u0027LIBCTF_1.0\u0027 to symbol \u0027ctf_fdopen\u0027 failed: symbol not defined\nld: error: version script assignment of \u0027LIBCTF_1.0\u0027 to symbol \u0027ctf_open\u0027 failed: symbol not defined\nld: error: version script assignment of \u0027LIBCTF_1.0\u0027 to symbol \u0027ctf_bfdopen\u0027 failed: symbol not defined\nld: error: version script assignment of \u0027LIBCTF_1.0\u0027 to symbol \u0027ctf_bfdopen_ctfsect\u0027 failed: symbol not defined\n\nRather than adding more and more whack-a-mole fixes for every\nlinker we encounter that does this, simply exclude such symbols\nunconditionally, using the same trick we used to use for Solaris.\n(Well, unconditionally if we can use version scripts with this\nlinker at all, which is not always the case.)\n\nThanks to Nicholas Vinson for the original report and a fix very\nsimilar to this one (but not quite identical).\n\nlibctf/\n\n\t* configure.ac: Always exclude libctf symbols from\n\tlibctf-nobfd\u0027s version script.\n\t* configure: Regenerated.\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "778c141571eb7edf395c4733cbb2035114356322",
      "old_mode": 33261,
      "old_path": "libctf/configure",
      "new_id": "1faadefa068af5d6cf7cb20141303771fae7a7a6",
      "new_mode": 33261,
      "new_path": "libctf/configure"
    },
    {
      "type": "modify",
      "old_id": "f327d48f249307924814d07737a6063236355183",
      "old_mode": 33188,
      "old_path": "libctf/configure.ac",
      "new_id": "ced1aeb7ccfddaa9d43e652f0a21cf2df44d940e",
      "new_mode": 33188,
      "new_path": "libctf/configure.ac"
    }
  ]
}
