{"id":32630291,"url":"https://github.com/mai-lapyst/xcov","last_synced_at":"2025-10-30T22:50:00.737Z","repository":{"id":143368956,"uuid":"493033837","full_name":"Mai-Lapyst/xcov","owner":"Mai-Lapyst","description":"eXtended coverage generator vor gcov | Mirror of https://codearq.net/bithero-cpp/xcov","archived":false,"fork":false,"pushed_at":"2024-08-20T03:53:29.000Z","size":100,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2024-08-20T06:41:47.883Z","etag":null,"topics":["coverage","coverage-report","gcov","xcov"],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"agpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Mai-Lapyst.png","metadata":{"files":{"readme":"readme.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-05-16T23:50:34.000Z","updated_at":"2024-08-20T03:53:33.000Z","dependencies_parsed_at":null,"dependency_job_id":"43a509c2-f608-4ccf-8ed9-da3ce57ab483","html_url":"https://github.com/Mai-Lapyst/xcov","commit_stats":null,"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"purl":"pkg:github/Mai-Lapyst/xcov","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Mai-Lapyst%2Fxcov","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Mai-Lapyst%2Fxcov/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Mai-Lapyst%2Fxcov/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Mai-Lapyst%2Fxcov/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Mai-Lapyst","download_url":"https://codeload.github.com/Mai-Lapyst/xcov/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Mai-Lapyst%2Fxcov/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":281896625,"owners_count":26580138,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-30T02:00:06.501Z","response_time":61,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["coverage","coverage-report","gcov","xcov"],"created_at":"2025-10-30T22:49:14.056Z","updated_at":"2025-10-30T22:50:00.729Z","avatar_url":"https://github.com/Mai-Lapyst.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Xcov\nxcov is an coverage generator c/c++ projects\n\n## License\nxcov is licensed under the AGPLv3 license. For the complete license, please see the `LICENSE` file.\n\n## Dependencys\n- [nlohmann json](https://github.com/nlohmann/json)\n- [inja](https://github.com/pantor/inja)\n- [GNU source-highlight](https://www.gnu.org/software/src-highlite/source-highlight.html)\n- `boost::process` (`boost::filesystem`), `boost::asio`, `boost/algorithm/string.hpp`\n- gcc's `gcov` binary\n- `gzip` (to decompress `.gz` files)\n\n## How to use\nxcov can generate html coverage reports.\n\nTo do this you need a bit of perperation; you need to compile your code to generate coverage files.\nFor gcc this is easy done by adding the `--coverage` flag when invoking `gcc`.\nYou then need to actually run your binary once to generate the relevant runtime data.\n\nOnce this is done, you can invoke xcov: `xcov -o reports`; this will generate html reports for all your sourcefiles\ninside the folder `reports`.\n\nIf you know where your `.gcda` and `.gcno` files lay, you also can restrict xcov's search by using `--root`.\nFor example let's say we have an `build` dir where all `.o`, `.gcda` and `.gcno` files are.\nYou now can run `xcov -r build -o reports` instead, and xcov will only search in `build`.\n\n## Configuration files\nNearly all commandline switches can also be configured via a config file.\n\nxcov searches following paths for an config file (and also applies them in this order):\n- The systems configuration dir (`/usr/local/etc/xcov/default.cfg` when installed through `make install-local`)\n- The user's configuration dir (`$HOME/.config/xcov/user.cfg`)\n- xcov searches all parent directories from it's invokation directory for `xcov.cfg`.\n    These files are included top-to-bottom, top being here the system root and bottom the current directory. This makes it possible to invoke xcov in subfolders of your project and still getting the correct config.\n- The `--config` argument\n- All other cli flags\n\nThe format is an simple `.ini` style syntax:\n```ini\n# Lines with an hashtag in front of it are line-comments; they are ignored\n\n# These are sections; currently there are two supported: 'main' and 'source_highlight'\n[main]\n\n# Inside an section there are key=value pairs. The value MUST be quoted, but the spaces around the equal sign\n# are optional. Note that the only thing allowed after the value are spaces or comments.\ntitle = \"Code Coverage Report\"\n```\n\nFor documentation what keys are available, please have a look into `src/config.cpp`.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmai-lapyst%2Fxcov","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmai-lapyst%2Fxcov","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmai-lapyst%2Fxcov/lists"}