llnl / llnl/dapper

Extract find_package calls from CMake build scripts

Open
#220 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Python
Stars
20
Forks
4
PR merge metrics
No merged PRs in 30d

Description

Add a query that pulls out the find_package calls from CMake build scripts. This will give a package name (or a variable whose value would need to be determined...) that we could then search for a corresponding package in a Linux dataset for something that provides a Find.cmake, Config.cmake, or <lowercase_package_name>-config.cmake file.

If a project follows good practices like allowing users to point the build at an external copy of any vendored libraries, for our symbols data set this could give a way to avoid claiming that functions in a vendored piece of code are part of the project doing the vendoring.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by locating the query or analysis entry point that processes CMake build scripts, then trace how dependency names are represented. Define the expected handling for literal and variable-based find_package calls, and check the Linux dataset matching for Find.cmake, Config.cmake, and lowercase package-config files. Done means the query can identify external packages without incorrectly treating vendored code as project code.

Written by the indexing model from the issue text.

Assessment

Tech stack
cmake, python
Domain
build-system, tooling
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
42/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.