Commit Graph

30 Commits

Author SHA1 Message Date
Alexander Neumann
42c437bb33
[vcpkg/scripts] add variable VCPKG_CROSSCOMPILING (#16900)
* add VCPKG_CROSSCOMPILING

* update docs

* Apply suggestions from code review

Co-authored-by: nicole mazzuca <mazzucan@outlook.com>

* update docs

Co-authored-by: nicole mazzuca <mazzucan@outlook.com>
2021-04-02 12:51:05 -07:00
nicole mazzuca
fe2a6bb789
[host dependencies] add support in the scripts (#16627)
This contains all the docs and scripts changes from #16479,
without any of the ports changes, for easier CR
2021-03-10 15:33:16 -08:00
nicole mazzuca
3426db05b9
[scripts-audit] Rollup PR 2021-02-26 (#16440)
* [scripts-audit rollup] PR #16419

* pull the cmake doc comment parsing out into its own function
* support cmake helper ports
* add real support for deprecation, as opposed to ad-hoc

* [scripts-audit rollup] PR #16192

* add a z_ in front of internal functions
* move internal functions out

set feature_vars again in parent scope

* [scripts-audit rollup] PR #16309

Audit vcpkg_copy_pdbs

* [scripts-audit rollup] PR #16304

* Fix usage, documentation

* [scripts-audit rollup] PR #16393

* [scripts-audit rollup] PR #16377

Deprecate `vcpkg_*_cmake` in favor of `vcpkg_cmake_*` from the
`vcpkg-cmake` port, as well as `vcpkg_fixup_cmake_targets`
in favor of `vcpkg_cmake_config_fixup` from the
`vcpkg-cmake-config` port.
2021-02-28 13:17:19 -08:00
Long Nguyen
02f6b89775
[many ports] mingw support (#14556)
* [vcpkg_configure_make] Only rename import libs on MSVC

* [x264] Only rename import libs on MSVC

* [x265] Add libc++ and libstdc++ as system libs

* [ffmpeg] mingw support

* [libvpx] Set AS environment variable

* [vcpkg_common_definition] Fix a mistake in the prefix and suffix variables

* [vcpkg_configure_make] Strip leading -l from lib list before joining

* [mp3lame] Use vcpkg_configure_make + mingw support

* [x265] Escape the pluses

* [ffmpeg] Add compiler flags for mingw

* [ffmpeg] Add WINVER define in mf_utils.c

* [ffmpeg] Remove unnecessary patch in 0003-fic-windowsinclude.patch

* [mp3lame] Add missing dollar sign

Co-authored-by: Matthias C. M. Troffaes <matthias.troffaes@gmail.com>

* [x265] Remove static lib when building shared with mingw

* [libogg] Change library name to libogg on mingw

* [libogg] Bump port version

* [x265] Remove -l(std)c++ flag in pkgconfig file

* [vcpkg_configure_make] Try to fix huge diff

* [mp3lame] Add comment on deprecated function lame_init_old

Co-authored-by: Jack·Boos·Yu <47264268+JackBoosY@users.noreply.github.com>

Co-authored-by: Matthias C. M. Troffaes <matthias.troffaes@gmail.com>
Co-authored-by: Jack·Boos·Yu <47264268+JackBoosY@users.noreply.github.com>
2020-12-01 14:13:58 -08:00
nicole mazzuca
6b117c9c7e
[vcpkg docs] Check for documentation generation in CI (#14614)
* [vcpkg docs] Change how documenting port functions works

Instead of using `##`, use comment blocks for documentation.

Also, add some minor docs and change RST -> MD
so we actually get docs generated.

* add CI stuff

* regenerate docs

* fix vcpkg_find_acquire_program to not use _execute_process
2020-12-01 13:37:26 -08:00
Joakim L. Gilje
d9633d939c
[vcpkg] initial openbsd (community) support (#14549)
* initial openbsd support in vcpkg

* after clang-format

* hardcoded in the preferred compiler for openbsd in bootstrap scipt (thanks @tormfinn)

* Fetch a patched pkg-config because openbsd pkg-config lacks {fcfiledir}

* fixes from review feedback

* corrected hash for pkg-config.openbsd

* re-added missing endif()

* regenerate docs

* Update scripts/cmake/vcpkg_configure_meson.cmake

Co-authored-by: Nicole Mazzuca <mazzucan@outlook.com>
2020-11-23 09:43:23 -08:00
Matioupi
878d7ea830
[curl] Fixes pkgconfig configuration file (#14350)
* Fix pkgconfig for windows debug build. Re-allow tool feature on non windows platforms

* Fix tool feature

* Modified debug/release prvate libs according to https://github.com/microsoft/vcpkg/pull/14350#discussion_r520444862
Added vcpkg_fixup_pkgconfig() according to https://github.com/microsoft/vcpkg/pull/14350#discussion_r520435718

* Delete portfile.cmake.orig

* Fix pkgconfig

* Revert "Fix pkgconfig"

This reverts commit cb4da8bcc5.

* Bump port version to 3

* add missing system libs for windows. made case type coherent for ws2_32

* Fix build on x64-linux triplet

* Reverted ws2_32 to Ws2_32 as discudssed in https://github.com/microsoft/vcpkg/pull/14350#discussion_r525893479

* More fixes for Linux build with features

* Fix for feature c-ares

* Formatting

Co-authored-by: Phoebe Ma <v-phma@microsoft.com>
2020-11-20 12:18:17 -08:00
Trider12
f8c2d42d06
[libvorbis] MinGW build fix (#14050) 2020-10-20 11:28:49 -07:00
Jack·Boos·Yu
b69056ba92
[vcpkg_common_definitions] Add macro VCPKG_HOST_IS_<target> (#13730)
* [vcpkg_common_definitions] Add macro VCPKG_HOST_IS_<target>

* Update scripts/cmake/vcpkg_common_definitions.cmake
2020-10-17 02:10:48 -07:00
Matthew Oliver
272269583c
[ffmpeg] Add feature support for zlib, iconv, fdk-aac, mp3lame, opus, soxr, theora. (#11277)
Co-authored-by: Phoebe <20694052+PhoebeHui@users.noreply.github.com>
2020-08-18 12:58:14 -07:00
Deadpikle
7b054d8d34
[vcpkg scripts] Add VCPKG_TARGET_IS_IOS (#12715) 2020-08-05 13:04:35 -07:00
Alexander Neumann
458c20e94b
[vcpkg/scripts/pkgconfig] rewrite pkg-config check for libraries (#11550)
* [vcpkg/scripts/pkgconfig] rewrite pkgconfig check for libraries.

* [vcpkg/scripts/pkgconfig] fix more details.

* [vcpkg/scripts/pkgconfig] smaller improvements

* ws change to check functionallity of script for testing.

* [vcpkg/scripts/pkgconfig] update to latest test version

* Revert "ws change to check functionallity of script for testing."

This reverts commit 26269e9e77.

* [nettle] bump control for vcpkg_fixup_pkgconfig test

* [gmp] rerun CI to create new *.pc files

* [gmp/nettle] enable port debug

* [vcpkg/script/pkgconfig] fix path conversion regex for CI

* [CI|OSX] install pkg-config on osx

* [gmp/nettle] disable port debug

* [vcpkg/scripts/pkgconfig] update to latest version of x windows pr

* [zlib] add pkgconfig file

* [zstd] add fixup pkgconfig

* [libpng] add pc file installation

* [bzip2] install pc file and leave a TODO for somebody else ;)

* [bzip2] bump control

* [vcpkg/scripts/pkgconfig] skip checks if pkgconfig cannot be found.
- small bugfix in ignore flags regex

* retry zstd and zlib

* [libpng] retry by adding dl and m to system libraries for osx

* [libpng] add missing vcpkg_fixup_pkgconfig()

* [vcpkg/scripts/pkgconfig] unset var if found. 

fixes checks for other configurations which will be always succesful otherwise

* [libpng] bump control

* [libpng] enable port debug to debug osx regression

* ws change to retrigger osx ci and hopeing that it works

* fix typo

* [libpng] remove -lm flag on apple platforms

* ws change to rerun some ports in ci for good measure after the merge with master

* Re-trigger CI test

* [zstd] add pkgconfig

* [zstd] correct debug link

* [vcpkg/script/pkgconfig] - add more search suffixes for static libs
- add additional debug messages for debuging
- fix unsetting of cache variables hiding issues with debug libraries
- fixed pkgconfig fix in the debug case

* [pcre] add pthread dependency to pcre

* [protobuf] fix pkgconfig

* include quotes around the prefix in the case the prefix path was quoted (fixes some regressions)
add option NOT_STATIC_PKGCONFIG to run pkg-config without the --static argument

* [ignition-msgs5] get rid of a dev warning

* [apr] fix apr regression

* [protobuf] fix protobuf regression

* [sdl1] fix regression due to variable expansion of pkg-config. Use similar regex to the library removal for ignored flags.

* [ignition] fix regression

* remove changes of zlib portfile.

* reset changes in osx ci pipeline

* add DISABLE_PARALLEL_CONFIGURE

Co-authored-by: Jack·Boos·Yu <47264268+JackBoosY@users.noreply.github.com>
Co-authored-by: JackBoosY <yuzaiyang@beyondsoft.com>
Co-authored-by: Billy Robert O'Neal <bion@microsoft.com>
2020-07-24 11:39:21 -07:00
Silvio Traversaro
70ab27fcad
[ignition-plugin1] Add new port 🤖 (#11275)
* [ignition-plugin1] Add new port

* vcpkg_fixup_cmake_targets: Add DO_NOT_DELETE_PARENT_CONFIG_PATH

By default the vcpkg_fixup_cmake_targets script remove the parent
path of CONFIG_PATH if it named "cmake", this behaviour is not convenient
for ports that install more than one CMake package config file, and
for which vcpkg_fixup_cmake_targets is invoked multiple times.
To optionally disable this behaviour, this commit adds the option
DO_NOT_DELETE_PARENT_CONFIG_PATH to vcpkg_fixup_cmake_targets.

* [ignition-modularscripts] Add support for ignition libraries that install multiple CMake package config files

Some ignition libraries install several CMake  package config files,
to represent the different components of the library. This  commit modifies
the ignition_modular_library function to fixup correctly all the cmake package config files.

* vcpkg_fixup_pkgconfig: Move definition of SYSTEM_LIBRARIES to vcpkg_common_definitions

To correctly validate installed pkg-config files, vcpkg_fixup_pkgconfig needs to know
for each platform which libraries are not managed by vcpkg. This commits improve this
definitions for all the triplet supported by vcpkg, and move this definition to vcpkg_common_definitions
in a way that permit custom triplets to overload its value.
2020-06-24 14:59:32 -07:00
Cristian Adam
8c77506c4f MinGW: Fix vcpkg common definitions (#9807)
Since MinGW has both VCPKG_TARGET_IS_MINGW and VCPKG_TARGET_IS_WINDOWS,
make sure to test the first before.
2020-01-23 12:17:40 -08:00
Cristian Adam
38b959022c Add support for building with MinGW (#9137)
* Add support for building with MinGW

Tested with MSYS2 MinGW 8.3.0, gcc-mcf.lhmouse MinGW 9.2.1,
and StephanTLavavej/mingw-distro!

* Add MinGW toolchain

From your MinGW configured shell you could just use vcpkg to
configure packages.

An x64-mingw triplet would look like:
```
set(VCPKG_TARGET_ARCHITECTURE x64)
set(VCPKG_CRT_LINKAGE dynamic)
set(VCPKG_LIBRARY_LINKAGE static)
set(VCPKG_ENV_PASSTHROUGH PATH)

set(VCPKG_CMAKE_SYSTEM_NAME MinGW)
```

* Add MinGW community tripplets

x64 tested with https://github.com/StephanTLavavej/mingw-distro
x86, arm64, arm tested with https://github.com/mstorsjo/llvm-mingw
2020-01-17 15:36:08 -08:00
Robert Schumacher
8831e8f25f
Merge pull request #7598 from Neumann-A/path_separator
[vcpkg] QoL: add host specific path separator to common definitions
2019-11-22 09:45:33 -08:00
Stefano Sinigardi
726c111481 [vcpkg] fatal_error when patch fails to apply (#8087)
vcpkg will now fail on failure to apply patches except when using `--head`.
2019-10-07 10:35:13 -07:00
Alexander Neumann
0c7bf66527 removed escaped version. added correct usage description 2019-09-20 12:52:14 +02:00
Alexander Neumann
5b1e426929 Merge remote-tracking branch 'upstream/master' into path_separator
# Conflicts:
#	scripts/cmake/vcpkg_common_definitions.cmake
2019-09-20 12:24:23 +02:00
Alexander Neumann
8a44d47f76 [vcpkg] add missing implib definitions, fix shared lib extension on mac (#8131)
* [vcpkg] add missing implib definitions, fix shared lib extension on mac

(cherry picked from commit 2cddef9541)

* Better find_library suffixes and prefixes.

* moved additional suffix into a comment and reverted back to what is expected on windows

* updated documentation for add variables.
2019-09-16 09:06:06 -07:00
Alexander Neumann
d93b940b18
Merge branch 'master' into path_separator 2019-08-23 08:54:20 +02:00
Alexander Neumann
78abf650e7 [vcpkg] QoL: add host/target dependent variables for executable suffixes (#7599)
* improve documentation

* add executable suffixes for host/target into common definitions
2019-08-22 15:57:24 -07:00
Alexander Neumann
18d61a3fb1
Merge branch 'master' into path_separator 2019-08-21 12:00:35 +02:00
Alexander Neumann
743bec775a make find_library useable without errors to console. (#7773) 2019-08-20 08:34:18 -07:00
Alexander Neumann
70f4aabbe8
Merge branch 'master' into path_separator 2019-08-19 21:40:43 +02:00
Alexander Neumann
9c879883f6 add variables for target specific library suffix and prefix. (#7600)
also set the according cmakevariables in script mode
enabling find_library calls in portfiles
2019-08-19 11:13:30 -07:00
Alexander Neumann
5899cd1d25 improve documentation 2019-08-08 14:40:47 +02:00
Alexander Neumann
b72fa4561f use it in vcpkg_add_to_path. 2019-08-08 14:22:53 +02:00
Alexander Neumann
6eaf7f0f97 add definition for host specific path separators 2019-08-08 14:18:47 +02:00
Alexander Neumann
fd87a081bb Introduce an easier way to identify target systems... (#6846)
* Introduce an easier way to identify target systems...

* fix missing ()

* move the include around.
also added vcpkg_common_functions to be automatically included

* remove warning message

* added remaining VCPKG_CMAKE_SYSTEM_NAMEs found only in vcpkg_configure_cmake to load a toolchain.

* remove warning again from messed up merge
2019-06-26 15:00:48 -07:00