jelmer / jelmer/makefile-lossless

Support unexport and private directives

Open
#63 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Rust
Stars
13
Forks
5
PR merge metrics
No merged PRs in 30d

Description

## Description
The unexport and private directives control variable visibility but are not supported.

## Syntax
```makefile
export PATH
unexport INTERNAL_VAR

private SECRET_KEY = abc123

export FOO = bar
unexport FOO # Cancel export
```

## Current Behavior
Not recognized as special directives.

## Expected Behavior
- Parse unexport directive
- Parse private directive
- Provide API to query variable visibility
- Track export/unexport state

## Use Case
Controlling variable visibility is important for recursive make and security.

## References
- GNU Make Manual: https://www.gnu.org/software/make/manual/make.html#Variables_002fRecursion
EOF < /dev/null

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by locating the Rust parser entry points for variable directives and review the GNU Make Manual reference linked in the issue. Trace how export state is represented, then verify that unexport and private are parsed, visibility can be queried through the API, and export state changes are preserved.

Written by the indexing model from the issue text.

Assessment

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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.