bug-make
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[bug #61463] private does not suppress inheritance on exported target sp


From: anonymous
Subject: [bug #61463] private does not suppress inheritance on exported target specific variables
Date: Wed, 10 Nov 2021 14:28:13 -0500 (EST)
User-agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4464.5 Safari/537.36

URL:
  <https://savannah.gnu.org/bugs/?61463>

                 Summary: private does not suppress inheritance on exported
target specific variables
                 Project: make
            Submitted by: None
            Submitted on: Wed 10 Nov 2021 07:28:11 PM UTC
                Severity: 3 - Normal
              Item Group: Bug
                  Status: None
                 Privacy: Public
             Assigned to: None
             Open/Closed: Open
         Discussion Lock: Any
       Component Version: 4.3
        Operating System: POSIX-Based
           Fixed Release: None
           Triage Status: None

    _______________________________________________________

Details:

When a target specific variable has both the export and private qualifiers,
inheritance is not suppressed.

The following Makefile illustrates the problem:

a: private export FOO := x
a: b
        env | sort > $@

b: private export BAR := y
b:
        env | sort > $@

Executing the Makefile (env -i used to simplify the output):

$ env -i make
env | sort > b
env | sort > a

Target a has the expected environment:

$ < a
FOO=x
MAKEFLAGS=
MAKELEVEL=1
MAKE_TERMERR=/dev/pts/5
MAKE_TERMOUT=/dev/pts/5
MFLAGS=

Target b's environment contains FOO, which is defined as a private variable on
a, and as such should not be present:

$ < b
BAR=y
FOO=x
MAKEFLAGS=
MAKELEVEL=1
MAKE_TERMERR=/dev/pts/5
MAKE_TERMOUT=/dev/pts/5
MFLAGS=





    _______________________________________________________

Reply to this item at:

  <https://savannah.gnu.org/bugs/?61463>

_______________________________________________
  Message sent via Savannah
  https://savannah.gnu.org/




reply via email to

[Prev in Thread] Current Thread [Next in Thread]