2015-06-27 13 views

risposta

24

Come accennato nella risposta collegato, si tratta di un'opzione non documentata, ma guardando il codice sorgente rivela il suo effetto:

In cmake::SetArgs():

if(arg.find("-H",0) == 0) 
    {  
    directoriesSet = true; 
    std::string path = arg.substr(2); 
    path = cmSystemTools::CollapseFullPath(path); 
    cmSystemTools::ConvertToUnixSlashes(path); 
    this->SetHomeDirectory(path); 

L'ultima chiamata, SetHomeDirectory imposta in realtà la fonte directory per il progetto. L'opzione -B (anche non documentata) a sua volta imposta la directory binaria.

Se queste opzioni non sono impostate, la directory binaria sarà la cartella corrente in cui viene eseguito cmake e la directory di origine può essere fornita come argomento posizionale).

+9

Perché quelli non sono documentati? : O – grisevg

+5

@grisevg È stata inviata una patch a [risolvere il problema di documentazione] (https://cmake.org/pipermail/cmake-developers/2016-June/028843.html). Ma è stato respinto. Non c'è ancora una risposta soddisfacente sul motivo per cui questo non può essere documentato o rimosso (se c'è davvero un rischio). Sembra che il team di sviluppo non stia supportando queste opzioni per l'uso pubblico. – wally