mirror of
https://github.com/microsoft/vcpkg.git
synced 2025-06-07 12:06:49 +08:00
[scripts-audit] vcpkg_add_to_path (#16189)
* [scripts-audit] vcpkg_add_to_path * regenerate docs
This commit is contained in:
parent
e2ecca095c
commit
c3ef5d181b
@ -1,20 +1,20 @@
|
|||||||
# vcpkg_add_to_path
|
# vcpkg_add_to_path
|
||||||
|
|
||||||
Add a directory to the PATH environment variable
|
Add a directory or directories to the PATH environment variable
|
||||||
|
|
||||||
## Usage
|
|
||||||
```cmake
|
```cmake
|
||||||
vcpkg_add_to_path([PREPEND] <${PYTHON3_DIR}>)
|
vcpkg_add_to_path([PREPEND] [<path>...])
|
||||||
```
|
```
|
||||||
|
|
||||||
## Parameters
|
`vcpkg_add_to_path` adds all of the paths passed to it to the PATH environment variable.
|
||||||
### <positional>
|
If PREPEND is passed, then those paths are prepended to the PATH environment variable,
|
||||||
The directory to add
|
so that they are searched first; otherwise, those paths are appended, so they are
|
||||||
|
searched after the paths which are already in the environment variable.
|
||||||
|
|
||||||
### PREPEND
|
The paths are added in the order received, so that the first path is always searched
|
||||||
Prepends the directory.
|
before a later path.
|
||||||
|
|
||||||
The default is to append.
|
If no paths are passed, then nothing will be done.
|
||||||
|
|
||||||
## Examples:
|
## Examples:
|
||||||
* [curl](https://github.com/Microsoft/vcpkg/blob/master/ports/curl/portfile.cmake#L75)
|
* [curl](https://github.com/Microsoft/vcpkg/blob/master/ports/curl/portfile.cmake#L75)
|
||||||
|
@ -1,21 +1,21 @@
|
|||||||
#[===[
|
#[===[
|
||||||
# vcpkg_add_to_path
|
# vcpkg_add_to_path
|
||||||
|
|
||||||
Add a directory to the PATH environment variable
|
Add a directory or directories to the PATH environment variable
|
||||||
|
|
||||||
## Usage
|
|
||||||
```cmake
|
```cmake
|
||||||
vcpkg_add_to_path([PREPEND] <${PYTHON3_DIR}>)
|
vcpkg_add_to_path([PREPEND] [<path>...])
|
||||||
```
|
```
|
||||||
|
|
||||||
## Parameters
|
`vcpkg_add_to_path` adds all of the paths passed to it to the PATH environment variable.
|
||||||
### <positional>
|
If PREPEND is passed, then those paths are prepended to the PATH environment variable,
|
||||||
The directory to add
|
so that they are searched first; otherwise, those paths are appended, so they are
|
||||||
|
searched after the paths which are already in the environment variable.
|
||||||
|
|
||||||
### PREPEND
|
The paths are added in the order received, so that the first path is always searched
|
||||||
Prepends the directory.
|
before a later path.
|
||||||
|
|
||||||
The default is to append.
|
If no paths are passed, then nothing will be done.
|
||||||
|
|
||||||
## Examples:
|
## Examples:
|
||||||
* [curl](https://github.com/Microsoft/vcpkg/blob/master/ports/curl/portfile.cmake#L75)
|
* [curl](https://github.com/Microsoft/vcpkg/blob/master/ports/curl/portfile.cmake#L75)
|
||||||
@ -23,18 +23,15 @@ The default is to append.
|
|||||||
* [z3](https://github.com/Microsoft/vcpkg/blob/master/ports/z3/portfile.cmake#L13)
|
* [z3](https://github.com/Microsoft/vcpkg/blob/master/ports/z3/portfile.cmake#L13)
|
||||||
#]===]
|
#]===]
|
||||||
function(vcpkg_add_to_path)
|
function(vcpkg_add_to_path)
|
||||||
if(NOT "${ARGC}" STREQUAL "1" AND NOT "${ARGC}" STREQUAL "2")
|
cmake_parse_arguments(PARSE_ARGV 0 "arg" "PREPEND" "" "")
|
||||||
message(FATAL_ERROR "vcpkg_add_to_path() only accepts 1 or 2 arguments.")
|
if(NOT DEFINED arg_UNPARSED_ARGUMENTS)
|
||||||
|
return()
|
||||||
endif()
|
endif()
|
||||||
if("${ARGV0}" STREQUAL "PREPEND")
|
|
||||||
if(NOT "${ARGC}" STREQUAL "2")
|
list(JOIN arg_UNPARSED_ARGUMENTS "${VCPKG_HOST_PATH_SEPARATOR}" add_to_path)
|
||||||
message(FATAL_ERROR "Expected second argument.")
|
if(arg_PREPEND)
|
||||||
endif()
|
set(ENV{PATH} "${add_to_path}${VCPKG_HOST_PATH_SEPARATOR}$ENV{PATH}")
|
||||||
set(ENV{PATH} "${ARGV1}${VCPKG_HOST_PATH_SEPARATOR}$ENV{PATH}")
|
|
||||||
else()
|
else()
|
||||||
if(NOT "${ARGC}" STREQUAL "1")
|
set(ENV{PATH} "$ENV{PATH}${VCPKG_HOST_PATH_SEPARATOR}${add_to_path}")
|
||||||
message(FATAL_ERROR "Unexpected second argument: ${ARGV1}")
|
|
||||||
endif()
|
|
||||||
set(ENV{PATH} "$ENV{PATH}${VCPKG_HOST_PATH_SEPARATOR}${ARGV0}")
|
|
||||||
endif()
|
endif()
|
||||||
endfunction()
|
endfunction()
|
||||||
|
Loading…
Reference in New Issue
Block a user