If a call to `vcpkg_replace_string` makes no changes i.e doesn't
effectively replace a string, A warning is logged.
This should also help identify ports that no longer need these calls to
fix things in `.pc` files etc.
* Run through the macOS update instructions one more time. I think
they're in a pretty good state now since this is the first attempt to
rerun them since we dropped Vagrant.
* Removed Parallels references for arm64.
* Removed references to removing Vagrant because it's no longer on any
of the hosts.
* Update macOS to 14.5.
* Update XCode CLT to 14.3.
Cherry-picked from #38658: Fixes errors like
~~~
CMake Error at
/Users/vcpkg/Data/installed/x64-osx/share/ffmpeg/FindFFMPEG.cmake:70
(find_library):
Could not find
FFMPEG_DEPENDENCY_-F/Library/Developer/CommandLineTools/SDKs/MacOSX14.2.sdk/System/Library/Frameworks_RELEASE
using the following names:
-F/Library/Developer/CommandLineTools/SDKs/MacOSX14.2.sdk/System/Library/Frameworks
Call Stack (most recent call first):
/Users/vcpkg/Data/installed/x64-osx/share/ffmpeg/FindFFMPEG.cmake:144
(append_dependencies)
/Users/vcpkg/Data/installed/x64-osx/share/ffmpeg/vcpkg-cmake-wrapper.cmake:25
(_find_package)
/Users/vcpkg/Data/work/1/s/scripts/buildsystems/vcpkg.cmake:813
(include)
CMakeLists.txt:32 (find_package)
~~~
OpenSSL has moved to Apache 2 license, which is clearly compatible with
LGPL v3 (but not v2.1, which is ffmpeg's default). Note that FFmpeg devs
believe that the previous license is also compatible with LGPL (any
version), but not GPL.
See
37702e2066/LICENSE.md (incompatible-libraries)
for more details.
Note that the upstream also believes that Fraunhofer FDK AAC is also
compatible with LGPL, but IANAL and fdk-aac uses its own custom license.
- [x] Changes comply with the [maintainer
guide](https://github.com/microsoft/vcpkg-docs/blob/main/vcpkg/contributing/maintainer-guide.md).
- [x] ~~SHA512s are updated for each updated download.~~
- [x] ~~The "supports" clause reflects platforms that may be fixed by
this new version.~~
- [x] ~~Any fixed [CI
baseline](https://github.com/microsoft/vcpkg/blob/master/scripts/ci.baseline.txt)
entries are removed from that file.~~
- [x] ~~Any patches that are no longer applied are deleted from the
port's directory.~~
- [x] The version database is fixed by rerunning `./vcpkg x-add-version
--all` and committing the result.
- [x] Only one version is added to each modified port's versions file.
<!-- If your PR fixes issues, please note that here by adding "Fixes
#NNNNNN." for each fixed issue on separate lines. -->
<!-- If you are still working on the PR, open it as a Draft:
https://github.blog/2019-02-14-introducing-draft-pull-requests/. -->
If this PR updates an existing port, please uncomment and fill out this
checklist:
- [X] Changes comply with the [maintainer
guide](https://github.com/microsoft/vcpkg-docs/blob/main/vcpkg/contributing/maintainer-guide.md).
- [X] SHA512s are updated for each updated download.
- [X] The "supports" clause reflects platforms that may be fixed by this
new version.
- [X] Any fixed [CI
baseline](https://github.com/microsoft/vcpkg/blob/master/scripts/ci.baseline.txt)
entries are removed from that file.
- [X] Any patches that are no longer applied are deleted from the port's
directory.
- [X] The version database is fixed by rerunning `./vcpkg x-add-version
--all` and committing the result.
- [X] Only one version is added to each modified port's versions file.
<!-- If this PR adds a new port, please uncomment and fill out this
checklist:
- [ ] Changes comply with the [maintainer
guide](https://github.com/microsoft/vcpkg-docs/blob/main/vcpkg/contributing/maintainer-guide.md).
- [ ] The name of the port matches an existing name for this component
on https://repology.org/ if possible, and/or is strongly associated with
that component on search engines.
- [ ] Optional dependencies are resolved in exactly one way. For
example, if the component is built with CMake, all `find_package` calls
are REQUIRED, are satisfied by `vcpkg.json`'s declared dependencies, or
disabled with
[CMAKE_DISABLE_FIND_PACKAGE_Xxx](https://cmake.org/cmake/help/latest/variable/CMAKE_DISABLE_FIND_PACKAGE_PackageName.html).
- [ ] The versioning scheme in `vcpkg.json` matches what upstream says.
- [ ] The license declaration in `vcpkg.json` matches what upstream
says.
- [ ] The installed as the "copyright" file matches what upstream says.
- [ ] The source code of the component installed comes from an
authoritative source.
- [ ] The generated "usage text" is accurate. See
[adding-usage](https://github.com/microsoft/vcpkg-docs/blob/main/vcpkg/examples/adding-usage.md)
for context.
- [ ] The version database is fixed by rerunning `./vcpkg x-add-version
--all` and committing the result.
- [ ] Only one version is in the new port's versions file.
- [ ] Only one version is added to each modified port's versions file.
END OF NEW PORT CHECKLIST (delete this line) -->
* [amd-amf] Update to 1.4.29
* [ffnvcodec] Update to 11.1.5.2
* [mfx-dispatch] Fix pkgconfig
* [ffmpeg] Update to 6.0
* update versions
* [amd-amd] Fix merge
* Update ffmpeg.json
* ffmpeg: Remove libpng dependency.
Ffmpeg doesnt have a libpng dependency. All thats needed for png support is zlib which has its own option already
* Update ffmpeg.json
* [ignition-common3] patch for ffmpeg3
* [freerdp] Update to 2.11.1
* Revert "Merge pull request #1 from autoantwort/ffmpeg"
This reverts commit b52416c67dc8c0fd97365050513f2f4a47c631c4, reversing
changes made to 8fdd44e901184f051345220b22db89467c1c265a.
* Update ffmpeg.json
* Update ffmpeg.json
---------
Co-authored-by: Leander Schulten <Leander.Schulten@rwth-aachen.de>
* [ffmpeg] Fix off-by-one issue when looping over the OSX_ARCHS
This fixes crosscompiling e.g. arm64 on x64
* [ffmpeg] Remove redundant --enable-cross-compile flag
* [ffmpeg] Bump port version
* Update ffmpeg to 4.4.3
- Backport fix for h.264 hardware decoding on M1 macs
- ffmpeg links against built-in atomic, not a findable lib
* add missing extension for new patch
* version!
Co-authored-by: Martijn Otto <martijn@resolume.com>
Co-authored-by: Javier Matos Denizac <javier.matosd@gmail.com>
* [ffmpeg] Update the download address of gcc under windows arm
* Never gcc download under windows arm
* update ffmpeg.json
* Removed download requirement for "cpp.exe" preprocessor
* x-add-version
I tried to build FFmpeg for ARM64 but I got an error.
The problem happens because portfile.cmake uses gcc-9.3.0 but it has been removed from repository.
See:
https://repo.msys2.org/msys/x86_64/
So, it is just needed to update that file to the newer updated version and you will be able to build FFmpeg for ARM64 again.
* [ffmpeg] Set --disable-audiotoolbox when targeting iOS
* [ffmpeg] Bump port version to 19
* Update ffmpeg.json
Co-authored-by: Cheney Wang <38240633+Cheney-W@users.noreply.github.com>
* refine hpx port
* v db
* add tcmalloc on unix
* refine comment
* v db
* remove hardcoded mpi dep
* v db
* portfile cleanup
* v db
* add pkgconf as a dep
* v db
* [snappy] remove debug suffix and add pc file
* hpx pass through _HOST_TRIPLET for pkgconf
* v db
* fix snappy in ffmpeg
* v db
* fix name clash of output names
* v db
* remove tcmalloc
* v db
* remove bin dir; seems empty on !windows
* v db
* b v
* v db
* baseline stuff
* fix jemalloc missing msvc_compat headers
* v db
* install usage for hpx
* v db
* Update versions/f-/ffmpeg.json
* revert v db
* bump ffmpeg
* v db
* remove jemalloc since I can force it thorugh the triplet any way.
* v db
Co-authored-by: Jack·Boos·Yu <47264268+JackBoosY@users.noreply.github.com>
* Fix failure of cross-compiling for ffmpeg due to use inappropriate strip.
* Update port version of ffmpeg.
* Remove redundant adjust condition.
* Update version database
Co-authored-by: Jamlys Lee <jamlys_lee@163.com>
* move vcpkg-cmake-get-vars to its own helper port
* manifest format
* version stuff
* doc and version stuff
* add missing include
* version bump
* remove coypright copying.
* version stuff
Co-authored-by: Alexander Neumann <you@example.com>
* [ffmpeg] Block "tensorflow" for the "all" feature on non-x64.
In https://github.com/microsoft/vcpkg/pull/21980/ , we removed all the blocks for tensorflow which were merely replicating that upstream's "supports" expression. That is the correct behavior: if upstream adds support for a thing, it should start being tested downstream. However, the "all" and "all-nonfree" features of ffmpeg attempt to turn on what is really "all supported" rather than "all", so the feature-dependency needs to be guarded.
Note that the ffmpeg[tensorflow] feature remains unguarded! It is ffmpeg[all]'s *dependency* on ffmpeg[tensorflow] that is guarded.
* Also guard ass, tensorflow, and fontconfig for uwp
* Update HTTP to HTTPS links where it can be done safely.
This means that the HTTP-based link gave a 200 response with identical
content to the HTTPS version of the link. For links containing
variables, we checked the interpolated (real) link.
* Bump relevant vcpkg.json versions.
* Use version-date for cello.
* update version
Co-authored-by: Billy Robert O'Neal III <bion@microsoft.com>
Co-authored-by: Jonliu1993 <13720414433@163.com>
* [ffmpeg] Update dependency support for recent changes.
Updates for changes in commits:
7bb175e [aom/libavif] Add support for ARM and UWP
a8204d9 [fribidi] Support new platform
* update
* [ffmpeg] update x264 supports.
* Fix version database.
* update
* Update all platform checks and error messages
* Update vcpkg.json
* Update ffmpeg.json
* fixup osx.
* another osx fixup
Co-authored-by: Billy Robert O'Neal III <bion@microsoft.com>
* [ffmpeg/opencv4] Update opencv4 feature dependency and remove ffmpeg feature 'postproc' from default feature
* Update the baseline version
* [opencv3] Update the feature dependency
* Update the baseline
* [opencv2] Update the feature dependency
* Update the baseline version
* Fix uwp build failures
* Update the baseline version
* Fix opencv2 version
* update the baseline version
* update the baseline version
* Un-edit git-tree.
* Update cuda feature
* Update the baseline
Co-authored-by: Billy Robert O'Neal III <bion@microsoft.com>
* [fdk-aac] make patent-encumbered HE-AAC optional
By default, use a fork of fdk-aac (which was originally written
by Fraunhofer for the Android Open Source Project) which has
support for the patent-encumbered HE-AAC, HE-AACv2, and xHE-AAC
profiles removed. This fork is used by Fedora and Arch Linux to
provide support for most AAC use cases without patent licensing
fees and to permit combining it with GPL software. The upstream
fdk-aac with support for all AAC profiles can be built with the
new 'he-aac' option for this port.
Fedora Legal's opinion, from
https://bugzilla.redhat.com/show_bug.cgi?id=1501522#c112 :
The Fedora Project is aware that the Free Software Foundation
has stated that the Fraunhofer FDK AAC license is GPL
incompatible, specifically, because of Clause 3.
We believe that the fdk-aac software codec implementation that we
wish to include in Fedora is no longer encumbered by AAC patents.
This fact means that Clause 3 in the FDK AAC license is a "no op",
or to put it plainly, if no patents are in play, there are no
patent licenses to disclaim. For this (and only this) specific
implementation of fdk-aac, we believe that the FDK AAC license is
GPL compatible.
Also:
* remove restriction on dynamic linking. Upstream has a .def
file which is used by CMake.
* replace deprecated vcpkg functions
* [ffmpeg] use fdk-aac[he-aac] for fdk-aac feature
There is no point to this feature without HE-AAC because FFmpeg has
its own AAC codec that does not support HE-AAC.
* [ffmpeg] fix cross compilation on mac arm64 to x86_64
* Bump port-version
* Bump port-version again.
Co-authored-by: Billy Robert ONeal III <bion@microsoft.com>
* [ffmpeg] do not pull in postproc for LGPL build
* [ffmpeg] disable avisynthplus on static builds (as it is not functional)
* [ffmpeg] bump port version
* [ffmpeg] x-add-version
* Expand Architecture list with escape chars
This expands the architecture lists with escape characters. When
building FAT binaries for macos using multiple architectures in the
values they need to be escaped otherwise they are passed on to CMake
incorrectly #14932
* Adding the architecture fix to vcpkg-cmake port
updating port vcpkg-cmake version
* updated version in baseline
* Allow building ffmpeg for multiple architectures on macOS
Since ffmpeg does _not_ support multi-arch builds due to their use of
autotools and config.h which then includes the wrong platform-dependent
functions, we must perform two separate builds and join them using lipo
* fixup! Allow building ffmpeg for multiple architectures on macOS
* fixup! Allow building ffmpeg for multiple architectures on macOS
Co-authored-by: Sander Cox <sander@paralleldimension.nl>
Co-authored-by: Martijn Otto <martijn@resolume.com>
* [ffmpeg] fix release-only builds
* [ffmpeg] bump port version
* [ffmpeg] x-add-version
* [ffmpeg] strequal: use quotes when comparing against strings
* [ffmpeg] x-add-version
* [ffmpeg] use ffbuild/config.mak to get dependencies
* [ffmpeg] bump port version
* [ffmpeg] x-add-version
* [ffmpeg] fix dependency issue on x64-linux
* [ffmpeg] x-add-version
* [ffmpeg] link order fix on linux
* [ffmpeg] x-add-version
* [ffmpeg] bump port version
* [ffmpeg] x-add-version
* [ffmpeg] exclude -lgcc and -lgcc_s (causes issues on azure for unknown reasons)
* [ffmpeg] x-add-version
* [ffmpeg] handle -lgcc and -lgcc_s appropriately
* [ffmpeg] x-add-version
* [ffmpeg] use x_vcpkg_pkgconfig_get_modules to get info, added some more fixes to generated for pkgconfig files
* [ffmpeg] report dependencies (for now, helps debugging)
* [vcpkg-pkgconfig-get-modules] bump port version
* [ffmpeg] [vcpkg-pkgconfig-get-modules] x-add-version
* [ffmpeg] fix variant issue
* [ffmpeg] x-add-version
* [ffmpeg] reformat manifest
* [ffmpeg] x-add-version
* [ffmpeg] remove duplicate avfilter library from dependencies
* [ffmpeg] fix -pthread / -pthreads on linux
* [ffmpeg] x-add-version
* [ffmpeg] fix dynamic builds when no libraries need to be linked
* [ffmpeg] x-add-version
* [ffmpeg] disable openh264 on uwp when building all
* [ffmpeg] x-add-version
* [avcpp] fix uwp build failure due to deprecations treated as errors
* [avcpp] bump port version
* [avcpp] x-add-version
* [avcpp] smaller patch
* [avcpp] x-add-version
* [ffmpeg] x-add-version
* [FFmpeg] Add support for arm64 on macOS
* [ffmpeg] x-add-version
* [ffmpeg] Rename version-string to version
* [ffmpeg] x-add-version
* minor fixes
Co-authored-by: nicole mazzuca <mazzucan@outlook.com>
* [ffmpeg] update to version 4.4
* [ffmpeg] format-manifest
* [ffmpeg] remove avresample as default feature (it is deprecated, not upstream default, and will be removed in 4.5)
* [ffmpeg] x-add-version
* [ffmpeg] add avresample under the all feature
* [ffmpeg] x-add-version
* [ffmpeg] remove unused patch
* [ffmpeg] x-add-version
* [ffmpeg] remove wavpack from FindFFMPEG
* [ffmpeg] x-add-version
* [ffmpeg] fix compile cuda issue
* [ffmpeg] x-add-version
* [ffmpeg] only apply cuda compile patch on windows targets
* [ffmpeg] x-add-version
* [ffmpeg] fix dnn dependency
The source file "libavfilter/dnn/dnn_backend_native.h" includes
"libavformat/avio.h", so avformat needs to be declared as a dependency.
This fixes the build of ffmpeg[core,avfilter]:x64-windows.
Posted upstream here:
http://ffmpeg.org/pipermail/ffmpeg-devel/2021-May/279926.html
Whilst at it, I've also added a link to the other avfilter patch:
http://ffmpeg.org/pipermail/ffmpeg-devel/2021-May/279927.html
* [ffmpeg] version bump
* [ffmpeg] x-add-version
* [openimageio] revert accidentally committed change that is meant for other PR
* [ffmpeg] no longer hardcode version strings in FindFFMPEG script
* [ffmpeg] bump port version
* [ffmpeg] x-add-version
* [ffmpeg] use OUTPUT_VARIABLE for extract_version_from_component
* [ffmpeg] x-add-version
* Apply suggestions from code review
* [ffmpeg] fix minor typo
* [ffmpeg] fix another minor typo
* [ffmpeg] x-add-version
Co-authored-by: nicole mazzuca <mazzucan@outlook.com>