Udostępnij za pośrednictwem


vcpkg_cmake_configure

Konfigurowanie projektu opartego na CMake.

Sposób użycia

vcpkg_cmake_configure(
    SOURCE_PATH <source-path>
    [DISABLE_PARALLEL_CONFIGURE]
    [NO_CHARSET_FLAG]
    [WINDOWS_USE_MSBUILD]
    [GENERATOR <generator>]
    [LOGFILE_BASE <logname-base>]
    [OPTIONS
        <configure-setting>...]
    [OPTIONS_RELEASE
        <configure-setting>...]
    [OPTIONS_DEBUG
        <configure-setting>...]
    [MAYBE_UNUSED_VARIABLES
        <option-name>...]
)

Aby użyć tej funkcji, musisz zależeć od portu vcpkg-cmakepomocnika :

"dependencies": [
  {
    "name": "vcpkg-cmake",
    "host": true
  }
]

Parametry

SOURCE_PATH

Określa katalog zawierający CMakeLists.txt.

Ta wartość jest zwykle uzyskiwana w wyniku wywołania polecenia pozyskiwania źródła, takiego jak vcpkg_from_github().

DISABLE_PARALLEL_CONFIGURE

Wyłącza równoległe uruchamianie kroku konfiguracji narzędzia CMake.

Domyślnie program vcpkg wyłącza zapisywanie z powrotem do katalogu źródłowego (za pośrednictwem nieudokumentowanej flagi CMAKE_DISABLE_SOURCE_CHANGESnarzędzia CMake ) i (w systemie Windows) konfiguruje równolegle wersję i debugowanie. Ta flaga instruuje program vcpkg, aby zezwolić na zapisy katalogu źródłowego i wykonać kroki konfiguracji sekwencyjnie.

NO_CHARSET_FLAG

Wyłącza przekazywanie /utf-8 podczas korzystania z wbudowanego łańcucha narzędzi systemu Windows.

Jest to wymagane w przypadku bibliotek, które ustawiają zestaw znaków własnego kodu źródłowego podczas określania wartości docelowej MSVC. Aby uzyskać /utf-8 więcej informacji, zobacz dokumentację MSVC.

WINDOWS_USE_MSBUILD

Użyj programu MSBuild zamiast innego generatora podczas określania wartości docelowej dla platformy Windows.

Domyślnie narzędzie vcpkg woli używać narzędzia Ninja jako generatora CMake dla wszystkich platform. Istnieją jednak przypadki brzegowe, w których program MSBuild ma inne zachowanie niż Ninja. Ta flaga powinna być przekazywana tylko wtedy, gdy projekt wymaga poprawnej kompilacji programu MSBuild. Ta flaga nie ma wpływu na cele MinGW.

GENERATOR

Określa generator do użycia.

Domyślnie vcpkg woli używać Ninja jako generatorA CMake dla wszystkich platform lub "Unix Makefiles" dla platform innych niż Windows, gdy Ninja nie jest dostępny. Ten parametr może być używany w przypadku przypadków brzegowych, w których systemy kompilacji specyficzne dla projektu zależą od określonego generatora.

LOGFILE_BASE

Alternatywna nazwa katalogu głównego dla dzienników konfiguracji.

Wartość domyślna to config-${TARGET_TRIPLET}. Nie powinien zawierać żadnych separatorów ścieżek. Dzienniki będą generowane zgodnie ze wzorcem ${CURRENT_BUILDTREES_DIR}/${LOGFILE_BASE}-<suffix>.log

OPTIONS

Dodatkowe opcje przekazywania do narzędzia CMake podczas konfiguracji.

Zobacz też Opcje niejawne.

OPTIONS_RELEASE

Dodatkowe opcje przekazywania do narzędzia CMake podczas konfiguracji wydania.

Są one dodatkiem do programu OPTIONS.

OPTIONS_DEBUG

Dodatkowe opcje przekazywania do narzędzia CMake podczas konfiguracji debugowania.

Są one dodatkiem do programu OPTIONS.

MAYBE_UNUSED_VARIABLES

Lista opcji narzędzia CMake, które mogą nie być odczytywane podczas kroku konfigurowania.

Narzędzie vcpkg wyświetli ostrzeżenie o wszelkich opcjach spoza tej listy, które nie zostały odczytane podczas kroku konfigurowania narzędzia CMake. Ta lista powinna zawierać opcje, które są odczytywane tylko podczas niektórych konfiguracji (na przykład w przypadku VCPKG_LIBRARY_LINKAGE włączenia "static" lub gdy niektóre funkcje są włączone).

Opcje niejawne

To polecenie automatycznie udostępnia kilka opcji narzędzia CMake.

To polecenie przekazuje również wszystkie opcje w programie VCPKG_CMAKE_CONFIGURE_OPTIONS i opcje specyficzne dla konfiguracji z programu VCPKG_CMAKE_CONFIGURE_OPTIONS_RELEASE lub VCPKG_CMAKE_CONFIGURE_OPTIONS_DEBUG.

Na koniec istnieją dodatkowe opcje wewnętrzne przekazywane (z prefiksem VCPKG_ ), które nie powinny być zależne.

Przykłady

vcpkg_from_github(OUT_SOURCE_PATH source_path ...)
vcpkg_cmake_configure(
    SOURCE_PATH "${source_path}"
    OPTIONS
        -DBUILD_EXAMPLES=OFF
        -DBUILD_TESTS=OFF
)
vcpkg_cmake_install()

Wyszukaj ciąg microsoft/vcpkg, aby uzyskać przykłady

Uwagi

To polecenie zastępuje vcpkg_configure_cmake()element .

Źródło

ports/vcpkg-cmake/vcpkg_cmake_configure.cmake