)]}' { "commit": "74d2da4ba5eabeb8d101a227a727c38e01bb841d", "tree": "beba0a4ac8f7f44b2e7f1f7ca88eb56d8c7f1f8d", "parents": [ "c30e2d9f778ff9ff41a7bcc50c1afd8e9ca1bb90" ], "author": { "name": "Petr Hosek", "email": "phosek@chromium.org", "time": "Thu May 30 01:34:41 2019 +0000" }, "committer": { "name": "Petr Hosek", "email": "phosek@chromium.org", "time": "Thu May 30 01:34:41 2019 +0000" }, "message": "[runtimes] Support ELF dependent libraries feature\n\nAs of r360984, LLD supports dependent libraries feature for ELF.\nlibunwind, libc++abi and libc++ have library dependencies: libdl librt\nand libpthread, which means that when libunwind and libc++ are being\nstatically linked (using -static-libstdc++ flag), user has to manually\nspecify -ldl -lpthread which is onerous.\n\nThis change includes the lib pragma to specify the library dependencies\ndirectly in the source that uses those libraries. This doesn\u0027t make any\ndifference when using linkers that don\u0027t support dependent libraries.\nHowever, when using LLD that has dependent libraries feature, users no\nlonger have to manually specifying library dependencies when using\nstatic linking, linker will pick the library automatically.\n\nDifferential Revision: https://reviews.llvm.org/D62090\n\ngit-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@362048 91177308-0d34-0410-b5e6-96231b3b80d8\n", "tree_diff": [ { "type": "modify", "old_id": "28e452f52df1252b46fed633e7e3e4123883a452", "old_mode": 33188, "old_path": "src/algorithm.cpp", "new_id": "5ce2a23b464fa74f44fd1ab72b587788e8a34b09", "new_mode": 33188, "new_path": "src/algorithm.cpp" }, { "type": "modify", "old_id": "c1eb67b61d7275d2ff4d017f519a16253263b7d8", "old_mode": 33188, "old_path": "src/chrono.cpp", "new_id": "a2f88c94c0779d7e37a02eba50b446fc99d6b407", "new_mode": 33188, "new_path": "src/chrono.cpp" }, { "type": "modify", "old_id": "4022ff2e9ad0fe600dd2b556ab0f68edd4049e9b", "old_mode": 33188, "old_path": "src/condition_variable.cpp", "new_id": "69264c680d93e592b7af3672f71fde1049a9f353", "new_mode": 33188, "new_path": "src/condition_variable.cpp" }, { "type": "modify", "old_id": "7fdf90c37d97677138d0ee9caf44826b5b8666f2", "old_mode": 33188, "old_path": "src/debug.cpp", "new_id": "950241310112b42eefc2ba5d2bf8f7538e199f25", "new_mode": 33188, "new_path": "src/debug.cpp" }, { "type": "modify", "old_id": "22bc12c100506db6b283198a74188a8c1784419c", "old_mode": 33188, "old_path": "src/experimental/memory_resource.cpp", "new_id": "84c95080496fd2a45a34affd274e7c9c5ea184f6", "new_mode": 33188, "new_path": "src/experimental/memory_resource.cpp" }, { "type": "modify", "old_id": "5ba979ca905ac7cd9a75a0655bf232b813d0c098", "old_mode": 33188, "old_path": "src/filesystem/operations.cpp", "new_id": "319d9f65d7381ab5e8bb3c714396b4bdb2847914", "new_mode": 33188, "new_path": "src/filesystem/operations.cpp" }, { "type": "modify", "old_id": "8b05c3f1649c948242f8e57275d75ce0c115e5e8", "old_mode": 33188, "old_path": "src/memory.cpp", "new_id": "6df7226b3575671c929dcfb886d73282b170c389", "new_mode": 33188, "new_path": "src/memory.cpp" }, { "type": "modify", "old_id": "cecb89b3399fd3815d8136349460b651a0ea9068", "old_mode": 33188, "old_path": "src/mutex.cpp", "new_id": "d100f2df23389706c25de04972d729c04b2617e2", "new_mode": 33188, "new_path": "src/mutex.cpp" }, { "type": "modify", "old_id": "e918e1bdf604cea9d8eb7fb0227e641ae652c898", "old_mode": 33188, "old_path": "src/shared_mutex.cpp", "new_id": "3f1aecfdfe192718ff59df96040c1c271bea2a3d", "new_mode": 33188, "new_path": "src/shared_mutex.cpp" }, { "type": "modify", "old_id": "29b06fdf660a95696455b72938b03f0635c7eb11", "old_mode": 33188, "old_path": "src/thread.cpp", "new_id": "92690f66798296cdc29fbda045decdde0c3c6a42", "new_mode": 33188, "new_path": "src/thread.cpp" } ] }