microsoft / microsoft/vscode-cmake-tools

Support for manually configured variants

Open
#1,290 3 comments 0 reactions 0 assignees View on GitHub
enhancement Feature: configure Feature: variants
Dominant language
TypeScript
Stars
1.7k
Forks
546
Avg merge
2d 16h
Merged PRs (30d)
32

Description

The CMake Tools design for variants is overall very nice. However, for the project I'm working on (Apache Arrow), it's kind of impractical. Arrow has a _lot_ of [optional components](https://arrow.apache.org/docs/developers/cpp/building.html#optional-components) that can be configured at build time. Since the project doesn't use VS Code as a standard, I really don't want to go through the work of setting up variants for all that, and so that hampers my ability to use CMake Tools with that project.

If there was a way to associate a variant name (e.g. "debug") either with a specific CMake invocation, or an existing CMake output directory, that would allow me to define a couple variants ("debug", "release") that have all the right flags for my work, and then use only those. That would be a lot less work to use CMake Tools with a project with many options.

Contributor guide

Open the contributing guide

Research direction

Start by reading the CMake Tools variant design and the existing handling of CMake invocations and output directories. Define how a manually configured variant name maps to either a specific invocation or an existing output directory, then verify that debug and release variants can be selected without configuring every project option.

Written by the indexing model from the issue text.

Assessment

Tech stack
cmake, typescript
Domain
build-system, tooling
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.