Skip to content

Commit fdfe770

Browse files
JackBoosYBillyONealstrega-nil
authored
[gdal] Update to 3.1.3 (#13449)
* [vcpkg_*_nmake] Add option INSTALL_COMMAND * [gdal] Update to 3.1.3 and switch to vcpkg_*_nmake on Windows * [vcpkg_build_make] Add option MAKEFILE * fix install on windows, fix linux build * fix options position * [gdal] Fix linux build * [gdal] Fix expat library name * [gdal] Fix geos library name * [gdal] Fix cmake wrapper * [pdal] Fix dependency geos * [pdal] Fix PDALConfig.cmake * [gdal] Fix dependency cfitsio on *inx * disable cfitsio temporary * [gdal] Correct cmake wrapper and usage * [gdal] Fix tools on windows-static * Revert a9ac823 * Apply suggestions * [vcpkg_build_nmake] Fix install command * [vcpkg_build_nmake] Fix install command * regenerate docs * [gdal] Update dependency iconv and charset library names * [gdal] add json-c as a dependency on non-windows Co-authored-by: Billy Robert O'Neal III <[email protected]> Co-authored-by: Nicole Mazzuca <[email protected]>
1 parent 46068e8 commit fdfe770

36 files changed

+549
-423
lines changed

docs/maintainers/portfile-functions.md

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
1-
<!-- Run regenerate.ps1 to extract documentation from scripts\cmake\*.cmake -->
2-
1+
<!-- Run regenerate.ps1 to extract documentation from scripts\cmake\*.cmake -->
2+
33
# Portfile helper functions
44
- [execute\_process](execute_process.md)
55
- [vcpkg\_acquire\_msys](vcpkg_acquire_msys.md)
@@ -21,15 +21,17 @@
2121
- [vcpkg\_configure\_make](vcpkg_configure_make.md)
2222
- [vcpkg\_configure\_meson](vcpkg_configure_meson.md)
2323
- [vcpkg\_copy\_pdbs](vcpkg_copy_pdbs.md)
24-
- [vcpkg\_copy\_tools](vcpkg_copy_tools.md)
2524
- [vcpkg\_copy\_tool\_dependencies](vcpkg_copy_tool_dependencies.md)
25+
- [vcpkg\_copy\_tools](vcpkg_copy_tools.md)
2626
- [vcpkg\_download\_distfile](vcpkg_download_distfile.md)
2727
- [vcpkg\_execute\_build\_process](vcpkg_execute_build_process.md)
28+
- [vcpkg\_execute\_in\_download\_mode](vcpkg_execute_in_download_mode.md)
2829
- [vcpkg\_execute\_required\_process](vcpkg_execute_required_process.md)
2930
- [vcpkg\_extract\_source\_archive](vcpkg_extract_source_archive.md)
3031
- [vcpkg\_extract\_source\_archive\_ex](vcpkg_extract_source_archive_ex.md)
3132
- [vcpkg\_fail\_port\_install](vcpkg_fail_port_install.md)
3233
- [vcpkg\_find\_acquire\_program](vcpkg_find_acquire_program.md)
34+
- [vcpkg\_find\_fortran](vcpkg_find_fortran.md)
3335
- [vcpkg\_fixup\_cmake\_targets](vcpkg_fixup_cmake_targets.md)
3436
- [vcpkg\_fixup\_pkgconfig](vcpkg_fixup_pkgconfig.md)
3537
- [vcpkg\_from\_bitbucket](vcpkg_from_bitbucket.md)
@@ -44,4 +46,5 @@
4446
- [vcpkg\_install\_msbuild](vcpkg_install_msbuild.md)
4547
- [vcpkg\_install\_nmake](vcpkg_install_nmake.md)
4648
- [vcpkg\_install\_qmake](vcpkg_install_qmake.md)
49+
- [vcpkg\_internal\_get\_cmake\_vars](vcpkg_internal_get_cmake_vars.md)
4750
- [vcpkg\_prettify\_command](vcpkg_prettify_command.md)

docs/maintainers/vcpkg_acquire_msys.md

Lines changed: 21 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,11 @@ Download and prepare an MSYS2 instance.
44

55
## Usage
66
```cmake
7-
vcpkg_acquire_msys(<MSYS_ROOT_VAR> [PACKAGES <package>...])
7+
vcpkg_acquire_msys(<MSYS_ROOT_VAR>
8+
PACKAGES <package>...
9+
[NO_DEFAULT_PACKAGES]
10+
[DIRECT_PACKAGES <URL> <SHA512> <URL> <SHA512> ...]
11+
)
812
```
913

1014
## Parameters
@@ -14,7 +18,22 @@ An out-variable that will be set to the path to MSYS2.
1418
### PACKAGES
1519
A list of packages to acquire in msys.
1620

17-
To ensure a package is available: `vcpkg_acquire_msys(MSYS_ROOT PACKAGES make automake1.15)`
21+
To ensure a package is available: `vcpkg_acquire_msys(MSYS_ROOT PACKAGES make automake1.16)`
22+
23+
### NO_DEFAULT_PACKAGES
24+
Exclude the normal base packages.
25+
26+
The list of base packages includes: bash, coreutils, sed, grep, gawk, diffutils, make, and pkg-config
27+
28+
### DIRECT_PACKAGES
29+
A list of URL/SHA512 pairs to acquire in msys.
30+
31+
This parameter can be used by a port to privately extend the list of msys packages to be acquired.
32+
The URLs can be found on the msys2 website[1] and should be a direct archive link:
33+
34+
https://repo.msys2.org/mingw/i686/mingw-w64-i686-gettext-0.19.8.1-9-any.pkg.tar.zst
35+
36+
[1] https://packages.msys2.org/search
1837

1938
## Notes
2039
A call to `vcpkg_acquire_msys` will usually be followed by a call to `bash.exe`:

docs/maintainers/vcpkg_build_make.md

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ Build a linux makefile project.
77
vcpkg_build_make([BUILD_TARGET <target>]
88
[ADD_BIN_TO_PATH]
99
[ENABLE_INSTALL])
10+
[MAKEFILE <makefileName>]
1011
[LOGFILE_ROOT <logfileroot>])
1112
```
1213

@@ -20,10 +21,19 @@ Adds the appropriate Release and Debug `bin\` directories to the path during the
2021
### ENABLE_INSTALL
2122
IF the port supports the install target use vcpkg_install_make() instead of vcpkg_build_make()
2223

24+
### MAKEFILE
25+
Specifies the Makefile as a relative path from the root of the sources passed to `vcpkg_configure_make()`
26+
2327
### BUILD_TARGET
2428
The target passed to the make build command (`./make <target>`). If not specified, the 'all' target will
2529
be passed.
2630

31+
### DISABLE_PARALLEL
32+
The underlying buildsystem will be instructed to not parallelize
33+
34+
### SUBPATH
35+
Additional subdir to invoke make in. Useful if only parts of a port should be built.
36+
2737
## Notes:
2838
This command should be preceeded by a call to [`vcpkg_configure_make()`](vcpkg_configure_make.md).
2939
You can use the alias [`vcpkg_install_make()`](vcpkg_configure_make.md) function if your CMake script supports the

docs/maintainers/vcpkg_build_nmake.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ Build a msvc makefile project.
77
vcpkg_build_nmake(
88
SOURCE_PATH <${SOURCE_PATH}>
99
[NO_DEBUG]
10+
[TARGET <all>]
1011
[PROJECT_SUBPATH <${SUBPATH}>]
1112
[PROJECT_NAME <${MAKEFILE_NAME}>]
1213
[PRERUN_SHELL <${SHELL_PATH}>]

docs/maintainers/vcpkg_check_linkage.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ This command will either alter the settings for `VCPKG_LIBRARY_LINKAGE` or fail,
2828

2929
## Examples
3030

31-
* [abseil](https://github.com/Microsoft/vcpkg/blob/master/ports/abseil/portfile.cmake)
31+
* [libimobiledevice](https://github.com/Microsoft/vcpkg/blob/master/ports/libimobiledevice/portfile.cmake)
3232

3333
## Source
34-
[scripts/cmake/vcpkg_check_linkage.cmake](https://github.com/Microsoft/vcpkg/blob/master/scripts/cmake/vcpkg_check_linkage.cmake)
34+
[scripts/cmake/vcpkg_check_linkage.cmake](https://github.com/Microsoft/vcpkg/blob/master/scripts/cmake/vcpkg_check_linkage.cmake)

docs/maintainers/vcpkg_common_definitions.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ File contains helpful variabls for portfiles which are commonly needed or used.
55
## The following variables are available:
66
```cmake
77
VCPKG_TARGET_IS_<target> with <target> being one of the following: WINDOWS, UWP, LINUX, OSX, ANDROID, FREEBSD. only defined if <target>
8+
VCPKG_HOST_IS_<target> with <host> being one of the following: WINDOWS, LINUX, OSX, FREEBSD. only defined if <host>
89
VCPKG_HOST_PATH_SEPARATOR Host specific path separator (USAGE: "<something>${VCPKG_HOST_PATH_SEPARATOR}<something>"; only use and pass variables with VCPKG_HOST_PATH_SEPARATOR within "")
910
VCPKG_HOST_EXECUTABLE_SUFFIX executable suffix of the host
1011
VCPKG_TARGET_EXECUTABLE_SUFFIX executable suffix of the target

docs/maintainers/vcpkg_configure_cmake.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,9 @@ Additional options passed to CMake during the Release configuration. These are i
5151
### OPTIONS_DEBUG
5252
Additional options passed to CMake during the Debug configuration. These are in addition to `OPTIONS`.
5353

54+
### LOGNAME
55+
Name of the log to write the output of the configure call to.
56+
5457
## Notes
5558
This command supplies many common arguments to CMake. To see the full list, examine the source.
5659

docs/maintainers/vcpkg_configure_make.md

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,13 @@ Configure configure for Debug and Release builds of a project.
77
vcpkg_configure_make(
88
SOURCE_PATH <${SOURCE_PATH}>
99
[AUTOCONFIG]
10+
[USE_WRAPPERS]
11+
[DETERMINE_BUILD_TRIPLET]
12+
[BUILD_TRIPLET "--host=x64 --build=i686-unknown-pc"]
13+
[NO_ADDITIONAL_PATHS]
14+
[CONFIG_DEPENDENT_ENVIRONMENT <SOME_VAR>...]
15+
[CONFIGURE_ENVIRONMENT_VARIABLES <SOME_ENVVAR>...]
16+
[ADD_BIN_TO_PATH]
1017
[NO_DEBUG]
1118
[SKIP_CONFIGURE]
1219
[PROJECT_SUBPATH <${PROJ_SUBPATH}>]
@@ -29,12 +36,30 @@ By convention, this is usually set in the portfile as the variable `SOURCE_PATH`
2936
### SKIP_CONFIGURE
3037
Skip configure process
3138

39+
### USE_WRAPPERS
40+
Use autotools ar-lib and compile wrappers (only applies to windows cl and lib)
41+
42+
### BUILD_TRIPLET
43+
Used to pass custom --build/--target/--host to configure. Can be globally overwritten by VCPKG_MAKE_BUILD_TRIPLET
44+
45+
### DETERMINE_BUILD_TRIPLET
46+
For ports having a configure script following the autotools rules for selecting the triplet
47+
48+
### NO_ADDITIONAL_PATHS
49+
Don't pass any additional paths except for --prefix to the configure call
50+
3251
### AUTOCONFIG
3352
Need to use autoconfig to generate configure file.
3453

3554
### PRERUN_SHELL
3655
Script that needs to be called before configuration (do not use for batch files which simply call autoconf or configure)
3756

57+
### ADD_BIN_TO_PATH
58+
Adds the appropriate Release and Debug `bin\` directories to the path during configure such that executables can run against the in-tree DLLs.
59+
60+
## DISABLE_VERBOSE_FLAGS
61+
do not pass '--disable-silent-rules --verbose' to configure
62+
3863
### OPTIONS
3964
Additional options passed to configure during the configuration.
4065

@@ -44,6 +69,14 @@ Additional options passed to configure during the Release configuration. These a
4469
### OPTIONS_DEBUG
4570
Additional options passed to configure during the Debug configuration. These are in addition to `OPTIONS`.
4671

72+
### CONFIG_DEPENDENT_ENVIRONMENT
73+
List of additional configuration dependent environment variables to set.
74+
Pass SOMEVAR to set the environment and have SOMEVAR_(DEBUG|RELEASE) set in the portfile to the appropriate values
75+
General environment variables can be set from within the portfile itself.
76+
77+
### CONFIGURE_ENVIRONMENT_VARIABLES
78+
List of additional environment variables to pass via the configure call.
79+
4780
## Notes
4881
This command supplies many common arguments to configure. To see the full list, examine the source.
4982

docs/maintainers/vcpkg_download_distfile.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,9 @@ The expected hash for the file.
2828

2929
If this doesn't match the downloaded version, the build will be terminated with a message describing the mismatch.
3030

31+
### QUIET
32+
Suppress output on cache hit
33+
3134
### SKIP_SHA512
3235
Skip SHA512 hash check for file.
3336

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
# vcpkg_execute_in_download_mode
2+
3+
Execute a process even in download mode.
4+
5+
## Usage
6+
```cmake
7+
vcpkg_execute_in_download_mode(
8+
COMMAND <cmd> [<arguments>...]
9+
OUTPUT_QUIET ERROR_QUIET OUTPUT_STRIP_TRAILING_WHITESPACE ERROR_STRIP_TRAILING_WHITESPACE
10+
WORKING_DIRECTORY <dir>
11+
TIMEOUT <seconds>
12+
RESULT_VARIABLE <seconds>
13+
OUTPUT_VARIABLE <var_out>
14+
ERROR_VARIABLE <var_err>
15+
INPUT_FILE <f_in>
16+
OUTPUT_FILE <f_out>
17+
ERROR_FILE <f_err>
18+
ENCODING <enc>
19+
)
20+
```
21+
22+
The signature of this function is identical with `execute_process()` except that
23+
it only accepts one COMMAND argument, i.e., does not support chaining multiple
24+
commands with pipes.
25+
26+
See `execute_process()` for a detailed description of the parameters.
27+
28+
## Source
29+
[scripts/cmake/vcpkg_execute_in_download_mode.cmake](https://github.com/Microsoft/vcpkg/blob/master/scripts/cmake/vcpkg_execute_in_download_mode.cmake)

0 commit comments

Comments
 (0)