So teilen Sie Variablen zwischen verschiedenen cmake-Dateien

8

Meine Frage ist, wie man Variablen zwischen verschiedenen cmake-Dateien teilt, und ich zeige die folgenden Beispiele, um meine Frage zu illustrieren:

Haupt

%Vor%

exe

%Vor%

dll

%Vor%

In diesem Beispiel ist Var3 in den cmake-Dateien von exe und dll zu sehen, wie es in Main definiert ist. Var1, das in exe definiert ist, wird jedoch nicht in dll angezeigt. Ich war nur neugierig: Gibt es eine Möglichkeit, Var1 in exe beobachtbar in dll zu definieren?

    
feelfree 08.11.2013, 11:34
quelle

2 Antworten

8

Neben dem, was Tadeusz richtig gesagt hat, können Sie eine Variable auf jeder Ebene (nicht nur eine!) mit

erstellen %Vor%

Die Variable steht für alle CMake-Befehle zur Verfügung, die auf diesen Befehl folgen. So steht sie beispielsweise für ein Schwesterverzeichnis nicht zur Verfügung, das vor dem Verzeichnis hinzugefügt wird, in dem diese Variable definiert ist.

    
Antonio 08.11.2013, 13:09
quelle
7

Die Bereiche variabler Sichtbarkeit bilden einen Baum. Die CMakeFiles.txt-Dateien, die mit add_subdirectory hinzugefügt wurden, haben Zugriff auf die Variablen, die in ihnen selbst definiert sind, und im übergeordneten Bereich (der globale Toplevel-Bereich in Ihrem Beispiel).

Sie können eine Variable eine Ebene höher exportieren mit:

%Vor%     
Tadeusz A. Kadłubowski 08.11.2013 11:37
quelle

Tags und Links