16 Commits

Author SHA1 Message Date
Billy O'Neal
4945d50e90
[capnproto] Remove vcpkg_fail_port_install. (#22730)
* [capnproto] Remove vcpkg_fail_port_install.

The portfile and vcpkg.json disagreed.

```
vcpkg.json: !uwp & !((arm | arm64) & windows)
portfile:   !uwp & (!windows | !(arm | arm64))
```

If we demorgan the supports expression once they agree:

```
!uwp & (!(arm | arm64) | !windows)
```

Also, arm64 implies arm:

```
!uwp & (!arm | !windows)
```

In support of https://github.com/microsoft/vcpkg/pull/21502

* Put the supports expression into DNF as suggested by @strega-nil.
2022-01-24 13:51:42 -08:00
autoantwort
e7e328cf9d
[many ports] call vcpkg_fixup_pkgconfig() (#20953)
* [many ports] call vcpkg_fixup_pkgconfig()

The ports generate pc files, but don't call vcpkg_fixup_pkgconfig() so that there are absolute paths in the pc files

* Update port-version for armadillo and polyclipping.

* Update version database.

Co-authored-by: Billy Robert O'Neal III <bion@microsoft.com>
2021-10-27 15:19:28 -07:00
chausner
4f06d9d0b9
[capnproto] Update to 0.9.1 (#20436)
* Update capnproto to 0.9.1

* Update CI baseline

* Fix indentation

* Update git-tree hash

Co-authored-by: chausner <chausner@users.noreply.github.com>
2021-10-26 22:25:12 -07:00
Billy O'Neal
b295670e4b
Bulk convert control files. (#19986)
```
function Convert-Control {
    Param($full)
    .\vcpkg.exe format-manifest $full
    $root = $full.Substring(0, $full.Length - 7) # CONTROL
    $new = $root + 'vcpkg.json'
    $content = Get-Content -Raw $new
    $asJson = ConvertFrom-Json $content -AsHashtable -Depth 100
    $oldVersion = $asJson['port-version']
    if ($null -eq $oldVersion) {
        $oldVersionFull = $asJson['version-string']
        Write-Host "Got version $oldVersionFull"
        $match = [System.Text.RegularExpressions.Regex]::Match($oldVersionFull, '^(.+)-(\d+)$')
        if ($match.Success -and -not [System.Text.RegularExpressions.Regex]::IsMatch($oldVersionFull, '^\d\d\d\d-\d\d-\d\d$')) {
            $newFullVersion = [string]$match.Groups[1].Value
            $oldVersion = [int]$match.Groups[2].Value
            Write-Host "newFullVersion $newFullVersion oldVersion $oldVersion"
            $newVersion = $oldVersion + 1
            $asJson['version-string'] = $newFullVersion
            Write-Host "Previous version for $full extracted from version field -- setting version-string $newFullVersion and port-version $newVersion"
        } else {
            Write-Host "No previous version for $full -- setting 1"
            $newVersion = 1
        }
    } else {
        $newVersion = [int]$oldVersion + 1
        Write-Host "New version for $full : $newVersion"
    }

    $asJson['port-version'] = $newVersion

    $content = ConvertTo-Json $asJson -Depth 100
    Set-Content -Path $new -Value $content
    .\vcpkg.exe format-manifest $new
}

Get-ChildItem ports\CONTROL -Recurse | Foreach-Object {
    Convert-Control $_.FullName
}

git commit -am "this message"
.\vcpkg.exe x-add-version -all
git commit -a --amend
```
2021-09-09 01:24:04 -07:00
Billy O'Neal
580da706ed
Build results from 2020-12-27 (#15353)
* [capnproto] Remove from baseline.

PASSING, REMOVE FROM FAIL LIST: capnproto:x64-windows (.\scripts\ci.baseline.txt)
PASSING, REMOVE FROM FAIL LIST: capnproto:x64-windows-static (.\scripts\ci.baseline.txt)
PASSING, REMOVE FROM FAIL LIST: capnproto:x86-windows (.\scripts\ci.baseline.txt)

These were fixed by the update to VS2019 version 16.8. Other capnproto skips moved into "supports" because:
capnp.lib(serialize-packed.c++.obj) : error LNK2019: unresolved external symbol __popcnt referenced in function "int __cdecl kj::popCount(unsigned int)" (?popCount@kj@@YAHI@Z)
i.e. the port wants popcnt to exist and it doesn't, so this isn't an artifact of our CI.

* Remove "passing: remove from fail list" entries.

* [atk, atkmm, gdk-pixbuf, glibmm, gtkmm, libsigcpp, libxmlpp, pangomm] Acquire using HTTPS.

* [chardir] Update osx download.

* [leaf] Remove leaf in favor of boost-leaf.

```
Starting package 759/1414: leaf:x86-windows
Building package leaf[core]:x86-windows...
-- Downloading https://github.com/zajo/leaf/archive/0.2.2.tar.gz...
-- Extracting source D:/downloads/zajo-leaf-0.2.2.tar.gz
-- Using source at D:/buildtrees/leaf/src/0.2.2-26417cde9d.clean
-- Configuring x86-windows
-- Building x86-windows-dbg
-- Building x86-windows-rel
-- Installing: D:/packages/leaf_x86-windows/share/leaf/copyright
-- Performing post-build validation
-- Performing post-build validation done
Uploaded binaries to 1 HTTP remotes.
Building package leaf[core]:x86-windows... done
Installing package leaf[core]:x86-windows...
The following files are already installed in D:/installed/x86-windows and are in conflict with leaf:x86-windows

Installed by boost-leaf:x86-windows
    include/boost/leaf/capture.hpp
    include/boost/leaf/common.hpp
    include/boost/leaf/context.hpp
    include/boost/leaf/detail/all.hpp
    include/boost/leaf/detail/demangle.hpp
    include/boost/leaf/detail/function_traits.hpp
    include/boost/leaf/detail/mp11.hpp
    include/boost/leaf/detail/optional.hpp
    include/boost/leaf/detail/print.hpp
    include/boost/leaf/error.hpp
    include/boost/leaf/exception.hpp
    include/boost/leaf/result.hpp

Elapsed time for package leaf:x86-windows: 2.931 s
```

Caused by the update to Boost 1.75.0. Because this port is touching include/boost, I'm interpreting that as "the author intends users to use it as a Boost library", and have deleted this port in favor of the Boost version.

* [magic-get] Remove magic-get in favor of boost-pfr.

* Update ports/chartdir/portfile.cmake

Co-authored-by: ras0219 <533828+ras0219@users.noreply.github.com>

* Restore versions.

* format-manifest

Co-authored-by: ras0219 <533828+ras0219@users.noreply.github.com>
2020-12-28 21:20:30 -08:00
Billy O'Neal
09a647a526
Delete use of vcpkg_test_cmake and vcpkg_common_functions. (#13065) 2020-10-28 14:18:07 -07:00
Jack·Boos·Yu
b9be644f8b
[capnproto/check/cppgraphqlgen] Update version (#13677)
* [manyports] Update version 3

* move changes to other PRs

* Remove unuse patch

* Remove useless patch
2020-09-27 17:54:12 -07:00
Phil Christensen
e62d136128
[vcpkg] Add Supports: field. Use contents of triplets instead of names for dependency resolution. (#8601)
* remove unfinished "supports" tag

* extract "supports" from control files
But do nothing with the value

* Start `Supports` documentation

* Use Supports in a bunch of control files

I only tried matching the already existing logic in the portfile.cmake.

* Cmake var provider (#8)

* Cmake var provider (#9)

* fix windows build (#10)

* Add missing files to build

* Fix test (#11)

* adding hooks for cmake variables in expressions

* Adding hooks for 'supports' in CI test

* Fix test (#12)

* Add overrides to evaluation environment

* use "supported" tag in CI testing

* cleanup comment

* Fix issues with PR

* [var_provider] Get library linkage variables from triplet

* Fix compilation errors in tests

* Add unimplemented functions

* Fix unit tests part 1

* Fix issue when buildtrees dir does not exist

* Change binary output hash

* Fix handling of * feature

* Add core feature when using *

* Do not add Default-Features when installing 'core'

* [vcpkg] WIP. 6 failing tests.

* [vcpkg] WIP. 1 failing tests.

* [vcpkg] WIP. 0 failing tests.

* [vcpkg] Removed 'remove_graph'. 0 failing tests.

* [vcpkg] Removed 'install_graph'. 0 failing tests.

* [vcpkg] Remove AnyAction; replace with ActionPlan

* [vcpkg] Minor cleanup.

* [vcpkg][z3][qt5-connectivity][qt5-purchasing] Improve error messages while parsing. Fix a few trivial port issues.

* [vcpkg] Work around ICE with MSVC v140

* [vcpkg] Add purge on fail to decompress for CI

* [vcpkg] Fix parsing of nested parentheses in qualifiers

* [vcpkg] Fix Linux builds (explicit qualification in declaration)

* [vcpkg] Fix Build-Depends implying default features. Fix qualified dependencies regression.

* [mmx] Add to skip list and full rebuild -- mmx causes problems by installing 'sched.h'

* [libpqxx][mqtt-cpp] Prevent installing include/CMakeLists.txt

* [cppitertools] Fix installed include namespace (should be include/cppitertools)

* [libsoundio] Move headers into soundio/ subdirectory as per original cmake

* [ci.baseline] Temporarily skip charls due to conflict with dcmtk

* [vcpkg] Add restricted include files post build check -- bump global abi version

* [libsoundio] Hotfix stray line in portfile

* [vcpkg] Fix regression: CMake information was not being displayed for build-and-install actions

* [jsonnet] Fix installation of internal headers; use system nlohmann-json

* [grpc][upb] Teach grpc to use packaged upb. Add find_package(upb). Remove inappropriate upb features.

* [zfp] Move problematic 'include/bitstream.h' to 'include/zfp/bitstream.h'

* [x265] Bump control version to trigger rebuild after zfp conflict

* [akali] Disable parallel configure

* [dirent][dlfcn-win32][getopt-win32][pthreads] Grandfather into VCPKG_POLICY_ALLOW_RESTRICTED_HEADERS

* [ci.baseline] Update baseline for improved upb support

* [tgui] Disable parallel configure

* [libiconv] Enable VCPKG_POLICY_ALLOW_RESTRICTED_HEADERS

* [aws-sdk-cpp] Disable parallel configure

* [vcpkg] Implement policy VCPKG_POLICY_ALLOW_RESTRICTED_HEADERS

* [aws-sdk-cpp] Fix amount of escaping semicolons -- Note: I do not know the root cause requiring this change

* [libodb-sqlite] Fix configuring into source directory

* [gettext] Grandfather into VCPKG_POLICY_ALLOW_RESTRICTED_HEADERS

* [libodb] DISABLE_PARALLEL_CONFIGURE

* [vcpkg] Add 'config.h' and 'local.h' to restricted header list

* [mcpp] Remove unused and problematic include 'config.h' from installed files

* [teemo] Move installed headers into subdirectory to prevent conflicts with x265

* [ci.baseline] Update current OSX. Skip libmesh on all platforms due to heavy conflicts.

* [vcpkg] Add 'slice.h' as a restricted header

* [osg] Improve accuracy of dependencies (disable some, add some to Depends)

* [vcpkg] Skip invoking a subprocess for 0 specs in load_tag_vars

* [ci.baseline] Skip mongo-c-driver on osx due to flakiness

* [teemo] Fix incorrect include file read

* [osg] Fix dependency typo: glut -> freeglut

* [vcpkg] Recover some lost performance with the addition of vcpkg_get_tags.

A huge performance cost was loading the triplet files over and over; instead, we splice the sources into a macro and load it once, then just call that macro for each port.
Remove use of hashing because we aren't cross-process-safe anyway (global static will do instead).

* [vcpkg] Change Supports atom 'windows' to include UWP. Improve Supports field documentation.

* [vcpkg] Add docs for VCPKG_ENV_PASSTHROUGH and VCPKG_DEP_INFO_OVERRIDE_VARS

* Fix typo

Co-authored-by: Curtis J Bezault <curtbezault@gmail.com>
Co-authored-by: Victor Romero <romerosanchezv@gmail.com>
Co-authored-by: Robert Schumacher <roschuma@microsoft.com>
2020-02-03 14:22:52 -08:00
Phoebe
bcff929875 Add PREFER_NINJA to many ports (#7468)
* Add PREFER_NINJA to many ports
2019-07-31 13:01:02 -07:00
tarcila
14d1575e0b [capnproto] Enable Linux and OSX support (#7024)
Now that #5630 is fix, this package is fully supported on both Linux
and Mac OS X.
2019-06-25 10:59:51 -07:00
Stefano Sinigardi
47d206e149 [many ports] improvements for linux/wsl (#6730)
* [many ports] improve compatibility with WSL and mixed case filesystems

* [treehopper] express dependency on libusb, which was not working on non-win32 platforms and is still broken there

* [libharu] add compatibility with non-win32 platforms

* [geogram] fix openblas on linux
[clapack] better integration with linux environment
[visit-struct] put cmake config file in the expected folder
[geogram] remove trailing underscore to enable compatibility with OpenBLAS

* [openblas] playing with underscore, without success

* [openblas/lapack] fix library integration

* [clapack] improve target handling in cmake module

* [openblas] promote self-generated config to default cmake module, otherwise internal ones thinks wrongly that openblas can also solve lapack libs

* [clapack,openblas] improve libraries integration

* [many ports] fix cmake unnecessary target paths, wrong config paths, empty default dependencies, unnecessary [core] tags

* [suitesparse] improve integration with new lapack/openblas mechanism

* [suitesparse] add no underscore postfix also for linux

* [ceres] fix integration with newer openblas/lapack configs

* [aws-c-event-stream] fix regression

* [systemc] fix regression

* [libwebp,geogram] trigger rebuild

* [libwebp,pthread4w] fix regressions

* [glbinding] fix cmake module installation

* [globjects] disentangle unnecessary dependency from qt5

* [jasper] remove broken and unnecessary patches

* [libwebp] fix regression

* [many ports] avoid using BUILD_SHARED_LIBS which is uninitialized in port files

* [clapack] correctly find dlls

* [clapack] use a generic blas as dependency

* [fizz,g2o] restore expected version

* fix mistake

* [many ports] remove WIN32, APPLE and UNIX (again, they keep creeping in) from ports since they are broken and usually break non-win32 ports

* [libressl,openssl] do not try to build one if the other is already installed

* [itk] update ref and patch to avoid regression

* [libressl,openssl] implement full strategy to fix CI

* [libwebp] disable components that are broken on macOS

* [ogre] enable macOS build

* [freeimage,jxrlib,ogre,openexr,protobuf] port patches from #5169

* [ogre] add missing install command

* [ffmpeg] enable wrapper for cmake module

* [ffmpeg] add avresample module finder

* [ffmpeg] improve module detection and exported symbols

* [ffmpeg] add variables to cache

* [thrift] remove unnecessary build option

* [allegro5] fix shared/static inversion

* [protobuf] cleanup

* [libressl] cleanup

* [moos-core] cleanup

* commented features must not be separated from other features, otherwise vcpkg complains

* [itk] fix regression

* [shogun,itk] fix regressions

* [ogre] fix regression

* [opusfile] add compatibility with non-win32

* [itk] fix regression

* [sndfile,libsndfile] remove duplicate, redirect sndfile to libsndfile

* add missing dependencies

* [ismrmrd] fix regression

* [ffmpeg] trigger rebuild

* [clapack,openblas,libogg] fix regressions on macOS

* [libtins] fix regression

* force rebuild windows regressions, unable to reproduce locally

* [mosquitto] enable non-win32 builds

* [json-dto] force rebuild, unable to reproduce regression locally

* [many ports] uniform naming and path length requests

* fix regression

* fix regression

* [ffmpeg] fixes for downstream projects

* clean up - thanks to reviewers

* trigger rebuild of regressions on macOS

* trigger rebuild of regressions on macOS - part2

* Add core back

* Use VCPKG_CONCURRENCY

* Add core back to suitesparse

* Add core back to curl

* Add core back to magnum

* Add core back to magnum

* Add core back to magnum

* Add core back to cgal
2019-06-20 19:11:54 -07:00
Phil Christensen
d962dc7d65 [vcpkg] Add optional 'Homepage' field to CONTROL (#6844)
* [control file] Add optional 'Homepage' tag

This allows a 'Homepage' tag to be added to a port in order to support
changes such as PR #2933.  It currently does not do anything with it.

* [docs]

Add Homepage to the control file documentation

* move urls from descriptions to homepage field.
2019-06-10 16:35:22 -07:00
Victor Romero
050e71d01d
Remove references to CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS (#5937)
* [various ports] remove references to CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS

* [alac,benchmark,capnproto] Fix  check_linkage call

* [fastlz] Fix SHA512

* [coroutine] Fix dynamic build

* [folly] Find double-conversion

* [gamma] Use vcpkg_from_github

* [librsync] Enable static builds

* [netcdf-cxx4] Fix SHA512

* [octomap] Fix static build

* [tidy-html5] Fix static build

* [various ports] remove custom messages for shared/static builds, modernize some scripts in the meantime

* [folly] Use ras0219's fix for link paths

* [octomap] Fix exported targets

* [uvatlas] Set tool download SHA512

* [duktape+python2] fix portfile to call configure with correct python version, manage python2 also outside win32

* [suitesparse] osx fix

* [gtkmm] Call vcpkg_check_linkage after including vcpkg functions

* [duktape] Resolve conflicts

* [duktape] FIxed typo in Python paths

* [wangle] Find zlib

* [openssl-uwp] Fix SHA512

* [glib] Allow static builds on non-Windows

* [suitesparse] Fix build on Windows

* [multiple ports] Bump CONTROL version

* [multiple ports] Fix description indent

* [directxtk] Fix CONTROL file

* [bde,duktape,qpid-proton] Build packages with python2 installed

* [binn] remove CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS

* [gdal,live555,uriparser] Fix regressions

* [live555] Update to 2019.04.24
2019-05-02 22:57:43 -07:00
Thomas Arcila
50f1c1705e Disable cmake integration test for now
Integration test is failing for now because of #5630 and #5635
This at least makes the package function on Windows x86 and x64.
2019-03-22 18:14:39 -04:00
Thomas Arcila
4c2bc1f074 Fix tools/ and add support vcpkg_test_cmake() 2019-03-11 04:32:25 -04:00
Thomas Arcila
37d5cfb31e Add Capnproto package 2019-03-10 07:50:12 -04:00