학습
모듈
Azure Pipelines에서 개발자 고유의 빌드 에이전트 호스트 - Training
Space Game 웹 팀의 지침에 따라 온-프레미스 또는 클라우드의 Azure 가상 머신에서 실행되는 빌드 에이전트를 설정합니다.
코드를 생성하거나 사용자 지정 빌드 시스템을 구현하기 위해 다른 포트에서 빌드 시 사용하는 도구는 vcpkg 내에 패키지할 수 있습니다.
포트를 도구로 사용하는 경우 종속성 "host"
필드를 true로 설정해야 합니다. 예시:
{
"name": "contoso-http-library",
"version-string": "1.0.0",
"description": "Contoso's http runtime library",
"dependencies": [
"contoso-core-library",
{
"name": "contoso-code-generator",
"host": true
},
{
"name": "contoso-build-system",
"host": true
}
]
}
이 경우 contoso-code-generator
contoso-build-system
빌드되기 전에 contoso-http-library
호스트 트리플렛에 대한 및(모든 전이적 종속성 포함) 빌드 및 설치됩니다.
참고
소비자는 메타데이터 형식 대신 CONTROL
사용해야 vcpkg.json
합니다. 를 사용하여 vcpkg format-manifest /path/to/CONTROL
기존 CONTROL
파일을 쉽게 변환할 수 있습니다.
그런 다음, 소비자의 포트파일 내에서(contoso-http-library
예제에서) CMake 변수 CURRENT_HOST_INSTALLED_DIR
가 정의 installed/<host-triplet>
되고 필요한 자산을 찾는 데 사용해야 합니다. 이 예제 contoso-code-generator
에서는 다음을 통해 소비자가 로컬 경로에 추가할 항목을 설치했을 tools/contoso-code-generator/ccg.exe
수 있습니다.
# ports/contoso-http-library/portfile.cmake
vcpkg_add_to_path(${CURRENT_HOST_INSTALLED_DIR}/tools/contoso-code-generator)
기본 호스트 삼중항은 호스트 아키텍처 및 운영 체제(예x64-windows
: 또는 x64-linux
x64-osx
.)에 따라 선택됩니다. 다음을 통해 재정의할 수 있습니다.
project()
지시문 앞에 호출 set(VCPKG_HOST_TRIPLET "<triplet>" CACHE STRING "")
VcpkgHostTriplet
--host-triplet=...
VCPKG_DEFAULT_HOST_TRIPLET
환경 변수도구를 생성하는 데는 특별한 요구 사항이 없습니다. 도구는 모든 일반적인 정책과 관행에 따라 표준 포트로 작성되어야 합니다. 특히 포트파일의 컨텍스트 내에 있지 않고 HOST_TRIPLET
빌드해야 합니다TARGET_TRIPLET
.
현재 컨텍스트가 교차 컴파일되는 경우(TARGET_TRIPLET
그렇지 않음 HOST_TRIPLET
) VCPKG_CROSSCOMPILING
진실 값으로 설정됩니다.
if(VCPKG_CROSSCOMPILING)
# This is a native build
else()
# This is a cross build
endif()
일부 포트는 호스트 종속성을 통해서만 종속되어야 합니다. 스크립트 포트 및 도구 포트가 일반적인 예입니다. 이 경우 지원 식을 사용하여 "native"
이를 설명할 수 있습니다. 이는 false일 때 VCPKG_CROSSCOMPILING
식이 true임을 지원합니다(이를 TARGET_TRIPLET == HOST_TRIPLET
의미함).
vcpkg CMAKE_PROGRAM_PATH
에서 빌드한 실행 파일을 에 추가하려면 이 CMake 옵션을 설정합니다.
빌드 프로세스 중에 사용할 수 있도록 합니다.
이 옵션을 적용하려면 파일에서 CMakeLists.txt
호출 project()
하기 전에 설정해야 합니다. VCPKG_HOST_TRIPLET
변수도 설정해야 합니다.
호스트 트리플렛의 폴더에 tools
설치된 도구만 에 추가CMAKE_PROGRAM_PATH
됩니다.
실제로 다음 위치가 추가됩니다.
${VCPKG_INSTALLED/DIR}/${VCPKG_HOST_TRIPLET}/tools
${VCPKG_INSTALLED/DIR}/${VCPKG_HOST_TRIPLET}/tools/*/bin
vcpkg 피드백
vcpkg은(는) 오픈 소스 프로젝트입니다. 다음 링크를 선택하여 피드백을 제공해 주세요.
학습
모듈
Azure Pipelines에서 개발자 고유의 빌드 에이전트 호스트 - Training
Space Game 웹 팀의 지침에 따라 온-프레미스 또는 클라우드의 Azure 가상 머신에서 실행되는 빌드 에이전트를 설정합니다.