{"action":"created","issue":{"url":"https://api.github.com/repos/libressl-portable/portable/issues/58","labels_url":"https://api.github.com/repos/libressl-portable/portable/issues/58/labels{/name}","comments_url":"https://api.github.com/repos/libressl-portable/portable/issues/58/comments","events_url":"https://api.github.com/repos/libressl-portable/portable/issues/58/events","html_url":"https://github.com/libressl-portable/portable/pull/58","id":53939408,"number":58,"title":"Add code coverage flags to configure (./configure --enable-code-coverage)","user":{"login":"jbarlow83","id":1825843,"avatar_url":"https://avatars.githubusercontent.com/u/1825843?v=3","gravatar_id":"","url":"https://api.github.com/users/jbarlow83","html_url":"https://github.com/jbarlow83","followers_url":"https://api.github.com/users/jbarlow83/followers","following_url":"https://api.github.com/users/jbarlow83/following{/other_user}","gists_url":"https://api.github.com/users/jbarlow83/gists{/gist_id}","starred_url":"https://api.github.com/users/jbarlow83/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jbarlow83/subscriptions","organizations_url":"https://api.github.com/users/jbarlow83/orgs","repos_url":"https://api.github.com/users/jbarlow83/repos","events_url":"https://api.github.com/users/jbarlow83/events{/privacy}","received_events_url":"https://api.github.com/users/jbarlow83/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":2,"created_at":"2015-01-10T01:53:55Z","updated_at":"2015-01-15T23:06:48Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/libressl-portable/portable/pulls/58","html_url":"https://github.com/libressl-portable/portable/pull/58","diff_url":"https://github.com/libressl-portable/portable/pull/58.diff","patch_url":"https://github.com/libressl-portable/portable/pull/58.patch"},"body":"To activate the feature, run\r\n```\r\n    ./configure --enable-code-coverage\r\n```\r\nand then `make` or possibly `make check`.\r\n\r\nWhen enabled, optimization is switched off and the code is instrumented to generate data at both compile and runtime to measure coverage. A variety of open source programs are available for generating reports on coverage, using the data produced by `make check`. Obviously, the instrumented code runs slower and is not suitable for production.\r\n\r\nIf `make check-code-coverage` is run, this code will run `lcov` and `geninfo` to create HTML reports of code coverage. I have this feature working on OS X with Clang, but not Ubuntu 14.04 with GCC, the latter failing with an out of memory error (possibly a VM issue or older version of `lcov`).  \r\n\r\nThe `gcov` program is alternative to `lcov`; it generates plain text instead of HTML.\r\n"},"comment":{"url":"https://api.github.com/repos/libressl-portable/portable/issues/comments/70180084","html_url":"https://github.com/libressl-portable/portable/pull/58#issuecomment-70180084","issue_url":"https://api.github.com/repos/libressl-portable/portable/issues/58","id":70180084,"user":{"login":"busterb","id":4108654,"avatar_url":"https://avatars.githubusercontent.com/u/4108654?v=3","gravatar_id":"","url":"https://api.github.com/users/busterb","html_url":"https://github.com/busterb","followers_url":"https://api.github.com/users/busterb/followers","following_url":"https://api.github.com/users/busterb/following{/other_user}","gists_url":"https://api.github.com/users/busterb/gists{/gist_id}","starred_url":"https://api.github.com/users/busterb/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/busterb/subscriptions","organizations_url":"https://api.github.com/users/busterb/orgs","repos_url":"https://api.github.com/users/busterb/repos","events_url":"https://api.github.com/users/busterb/events{/privacy}","received_events_url":"https://api.github.com/users/busterb/received_events","type":"User","site_admin":false},"created_at":"2015-01-15T23:06:48Z","updated_at":"2015-01-15T23:06:48Z","body":"I guess I need to try this to see how it works. It's supposed to show how much code is exercised in unit tests?"}}