Commit Graph

37 Commits

Author SHA1 Message Date
Joachim Gehweiler
11b4a16bca
[tensorflow-cc] More or less completely rewritten port, update to 2.3.1 (#13028)
* fix build issues occurring from default bazel config being used because customized bazel config is stored in wrong directory

* [tensorflow-cc] Update CONTROL and ci.baseline.txt

* fix also applies to windows static build

* fix debug and static builds as well as library naming for non-linux
- add patch to fix debug builds
- add patch to fix exports for static linking
- really build debug (instead of cloning release)
- override bazel build options for debug (work around bazel bug)
- bazel doesn't support static libraries: work around by building dynamic library and constructing static linkage commands from build log
- Windows .pdb file can't be >4GB even on x64: work around using reduced debug information
- Windows doesn't support .lib files >4GB even on x64, so split into multiple libs
- vcpkg requires equal amount of libs for debug and release: work around using handcrafted empty dummy libs
- fix naming of libs (.dll on Windows and .dylib on macOS)

* upgrade tensorflow from v1.14 to v2.3
- adapt patch files to tensorflow code changes
- update bazel from v0.25.2 to v3.1
- on Windows use python installed on the host instead of embedded python obtained via vcpkg because embedded python lacks pip, which we need to obtain numpy
- on Windows add MSYS2 to the PATH so that bazel tools can access MSYS2 GIT
- add support for custom CA certificates when using HTTPS_PROXY

* fix execute process macro
The existing implementation totally screwed up commands if the command's arguments contained semicolons (this is the case, e.g., in the FindPython modules of the cmake distribution).

* extend overriden execute_process to more than one COMMAND as there actually are use cases for this

* added another patch required for tensorflow v2.3, fixed path and working directory

* Revert "incorporate changes from microsoft:master"

* Revert "Revert "incorporate changes from microsoft:master""

* final fixes for static build + improving out messages

* enabling linux and osx in CI to see if it works now

* simplified code, fixed version numbers, fixed generated include cmake file

* fix failing postbuild check on handcrafted empty dummy library by spreading the last real libraries contents over the required number of libraries

* remove dead code commit by mistake again

* improvements from code review

* cleaner fix for debug code

* find pip3 in PATH (PYTHON3_DIR apparently not valid for pip3)

* fix error in python helper script

* fix wrong libname in postbuild script

* fix python detection + switch to python on msys2 (instead of embedded python) for Windows as we need numpy

* fix order of arguments

* fix command (it may contain spaces such as C:\Program Files\...)

* revert last commit (root cause for CI failures is something different: there are line breaks in path)

* fix regex comparision
(value needs to be escaped as it may contains regex special characters such as brackets, eg C:/Program Files (x86)/...)

* fix linebreaks in generated file

* fix CRT linkage
(macOS doesn't support static CRT linkage; it's set to dynamic even static target triplets for macOS and linux)

* refactor implemenation to avoid as much code duplication as possible -- algorithmically identical

* fix version numbers in helper scripts

* enable work-around for Windows until bazel fix is available

* install missing python3-pip on linux

* fix linux build by patching

* apply timeout feature now available via merged master branch

* correct linux build patch

* improve debug build patches
(no functional difference because LOG(FATAL, ...) macro internally anyway calls abort(), which the compiler doesn't detect in debug mode...

* improve linux patch

* temporarily add debug to inspect what's going on on macOS CI

* remove temporary debug code and fix static linking scripts for linux and macOS

* fix regex escaping

* fix ambiguous match while grepping for the framework link command

* extend fix of ambiguous match while grepping for the framework link command

* fix what merge of master broke

* fix more what got broken by merging master
(all packages and their dependencies are now maintained manually instead of using pacman...)

* remove "unofficial" from filename

* added switch do distinct classic and manifest mode when generating config.cmake file

* create symlinks for libraries without version number

* fix linux postbuild script

* temporarily disable code making problems

* add note for linking on Linux and macOS

* forget to add README file in previous commit

* add file forgotton in macro fixing patch

* fix python library path

* fix macOS static link command

* update linkage instructions in README

* Update ports/tensorflow-cc/CONTROL

* Update ports/tensorflow-cc/portfile.cmake

* Update scripts/ci.baseline.txt

* use vcpkg_execute_required_process

* pass C_FLAGS and CXX_FLAGS to bazel

* fix INTERFACE_INCLUDE_DIRECTORIES

* fix optional c/cxx arguments

* also add linker opts

* update README

* merge static libs into one
to support force_load (cannot force_load both due to duplicate symbols)

* update README

* quote python path (it might contain spaces that don't get escaped inside outer quotes of bash command)

* fix python path also for static build

* add arm(64) as currently unsupported arch

* bazel 3.7 is available -> remove workaround

* update README, remove necessary c-ares from deps

* update msys package

* add uwp specific options, and minor general improvements

* fix string replace

* fix control file and windows path separator

* revert backslashes-fix -- the root cause was missing .exe extension

* upgrade to tf 2.3.1

* fix hard-coded version

* remove uwp work-in-progress code so that PR can be merged

* update README and print out usage info in portfile

* Update ports/tensorflow-cc/README-linux

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

* Update ports/tensorflow-cc/README-linux

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

* Update ports/tensorflow-cc/README-linux

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

* Update ports/tensorflow-cc/README-linux

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

* Update ports/tensorflow-cc/README-linux

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

* Update ports/tensorflow-cc/README-windows

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

* Update ports/tensorflow-cc/portfile.cmake

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

* Update ports/tensorflow-cc/portfile.cmake

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

* Update ports/tensorflow-cc/portfile.cmake

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

* Update ports/tensorflow-cc/portfile.cmake

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

* Update ports/tensorflow-cc/portfile.cmake

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

* improve usage hints as discussed in review

* add comment

* apply changes from review

* make additional compiler / linker args space-proof

* Update ports/tensorflow-cc/README-macos

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

* Update ports/tensorflow-cc/tensorflow-cc-config-shared.cmake.in

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

* Update ports/tensorflow-cc/tensorflow-cc-config-shared.cmake.in

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

* Update ports/tensorflow-cc/README-linux

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

* Update ports/tensorflow-cc/README-macos

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

* apply changes from code review

* maybe fix the config files

* rob.maynard CRs

* fix windows static lib naming for first part

* Update ports/tensorflow-cc/generate_static_link_cmd_windows.py

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

* apply rob maynards 1st suggestion

* nicole CRs

* format/fix-compile

* fix missing string termination

* prefer IMPORTED_LOCATION over IMPORTED_LOCATION_RELEASE to have default fall-back

* hopefully fix the issue where no libraries are generated

* final stuff

Co-authored-by: Gehweiler <Joachim_Gehweiler@McAfee.com>
Co-authored-by: wangli28 <wangli28@beyondsoft.com>
Co-authored-by: Jack·Boos·Yu <47264268+JackBoosY@users.noreply.github.com>
Co-authored-by: Joachim Gehweiler <joachim@Joachims-iMac.local>
Co-authored-by: nicole mazzuca <mazzucan@outlook.com>
2020-11-12 10:15:48 -08:00
Joachim Gehweiler
0ff75ac80b
[vcpkg] Fix more cases of semicolon mishandling in "scripts" - follow-up to PR #12926 (#13968) 2020-10-26 19:30:27 -07:00
Ludwig Chieng
ba7fd714f2
[vcpkg] update msys-libiconv version (#14220)
link to previous version 1.16-1 does not exist anymore
2020-10-25 22:07:45 -07:00
Robert Schumacher
76a7e9248f
[vcpkg_acquire_msys] Use Mirrors (#13889) 2020-10-05 17:39:47 -07:00
General Jack O'Neill
a3142da3ac
[vcpkg_acquire_msys.cmake] Add gettext tool (#13297)
1. Added dependencies to gettext-0.19.8.1-1-x86_64.pkg.tar.xz
    of libintl libgettextpo libasprintf
 2. Added dependency download for libgettextpo-0.19.8.1-1-x86_64.pkg.tar.xz
 3. Added dependency download for libasprintf-0.19.8.1-1-x86_64.pkg.tar.xz
 4. Put downloads in reverse dependcy order - seems it is called
    topological order now
2020-09-04 07:11:45 -07:00
ras0219
46e25a10d7
[vcpkg] Replace uses of msys pacman.exe with direct package downloads (#13019)
* wip

Apply suggestions from code review

Co-authored-by: Alexander Neumann <30894796+Neumann-A@users.noreply.github.com>

* [vcpkg_acquire_msys] Trim list of packages. Introduce defaults.

* [behaviortree-cpp] Fix dynamic dependency on ZMQ

Co-authored-by: Robert Schumacher <roschuma@microsoft.com>
Co-authored-by: Alexander Neumann <30894796+Neumann-A@users.noreply.github.com>
Co-authored-by: Billy Robert O'Neal III <bion@microsoft.com>
2020-08-31 22:36:25 -07:00
jgehw
c278ca585e
[vcpkg] Disable timeout (default 10s) in vcpkg_acquire_msys (#13086) 2020-08-27 19:28:20 -07:00
Daniel
42a90d3c14
Fix MSYS2 keyring not verifying on path with spaces (#13104) 2020-08-24 21:03:24 -07:00
Michał Janiszewski
723a5c2199
[vcpkg] Use https sources for common tools (#12738) 2020-08-24 10:50:30 -07:00
Phoebe
ae898b2c94
[msys] Improve vcpkg_acquire_msys (#12866) 2020-08-14 09:57:00 -07:00
emptyVoid
25412e1f46
[vcpkg-acquire-msys] Install new keyring (#12467) 2020-07-28 12:04:53 -07:00
Vicki Pfau
eede79eb27
Fix bootstrapping MSYS2 pacman (#11499) (#12080) 2020-06-24 11:29:28 -07:00
emptyVoid
a5e28c4b35
[vcpkg-acquire-msys] Improvement (#11810)
* [vcpkg-acquire-msys] Remove obsolete workaround.

* [vcpkg-acquire-msys] Don't refresh package database on package install.

* [vcpkg-acquire-msys] Drop no longer needed taskkill.

* Trigger CI rebuild to test vcpkg_acquire_msys.
2020-06-11 02:09:19 -07:00
emptyVoid
e792d1c171
[vcpkg-acquire-msys] Update pacman before any other package. (#11443)
* [vcpkg-acquire-msys] Update pacman manually to work around update issues.
2020-05-22 00:58:05 -07:00
Alexander Neumann
d054476e04
[vcpkg_acquire_msys] Fix undefined working dir. (#11102) 2020-04-30 09:50:29 -07:00
MaverickTse
51974b9a5d
[vcpkg-tools] Multiple mirror URLs to download MSYS2, update (#10346)
Resolves #10322

* Update MSYS2 download source. Resolve #10322

Proposal to resolve https://github.com/microsoft/vcpkg/issues/10322
* Use Sourceforge as MSYS2 download source (up to SF to choose mirror, fair to everyone and more reliable)
* Updated msys2 version to 2019-05-24 (Otherwise need to spend extra time on ```pacman -Syu```)
* Updated SHA512 accordingly
* Tested with building icu:x64-windows

* add official repo as backup
2020-03-10 13:08:43 -07:00
Victor Romero
f5c732b40d
Download Mode (#7950)
* [portfile functions] Override execute_process() to accept ALLOW_IN_DOWNLOAD_MODE option

* [vcpkg install] Set VCPKG_DOWNLOAD_MODE when using --only-downloads option

* [vcpkg_find_acquire_program] Allow in Download Mode

* Don't stop when build fails for a package

* Download sources for all packages in dependency graph

* Improve output messages

* Enable acquiring MSYS packages in download mode

* Documentation

* Update documentation

* execute_process() always fails on Download Mode

* Regenerate docs and fix formatting

* Run clang-format

* Use _execute_process on vcpkg_from_<source> helpers

* Fix calls to _execute_process() when not in Download Mode
2019-08-28 13:49:29 -07:00
Victor Romero
4b404e8cfb
Revert "[vcpkg install] Enable Download Mode (#7797)" (#7949)
This reverts commit 65d4bc146b.
2019-08-28 11:59:30 -07:00
Victor Romero
65d4bc146b
[vcpkg install] Enable Download Mode (#7797)
* [portfile functions] Override execute_process() to accept ALLOW_IN_DOWNLOAD_MODE option

* [vcpkg install] Set VCPKG_DOWNLOAD_MODE when using --only-downloads option

* [vcpkg_find_acquire_program] Allow in Download Mode

* Don't stop when build fails for a package

* Download sources for all packages in dependency graph

* Improve output messages

* Enable acquiring MSYS packages in download mode

* Documentation

* Update documentation

* execute_process() always fails on Download Mode

* Regenerate docs and fix formatting

* Run clang-format

* Use _execute_process on vcpkg_from_<source> helpers
2019-08-28 11:47:17 -07:00
emptyVoid
c76cc635dc Move gpg-agent termination to vcpkg_acquire_msys. 2019-06-02 22:26:04 +07:00
Stefano Sinigardi
0d1229d34b update msys2 to latest release 2018-12-17 09:34:45 +01:00
Robert Schumacher
d614e3e887 [openssl-unix] Fix for issue #4001
[vcpkg_configure_cmake] Use the correct path separators for the current platform instead of assuming ;
2018-08-10 03:00:18 -07:00
Robert Schumacher
a084120ab4 [vcpkg-acquire-msys] Restore sourceforge as a fallback mirror 2018-03-03 10:46:07 -08:00
ucker
41db37fc3d update the address of msys2 (#2941) 2018-03-03 05:40:32 -08:00
Jacob Zhong
63901137f6 Add doxygen and add packages option to vcpkg_require_msys (#2869)
* Add doxygen to acquired programs

* Add packages option to msys function

* Add documentation for PACKAGES in vcpkg_require_msys

* [ffmpeg][x264] Update to use `PACKAGES` parameter. Tweak docs.
2018-02-24 00:00:51 -08:00
Alexander Karatarakis
76d4666f12 [vcpkg_acquire_msys] Use vcpkg_download_distfile() 2017-11-03 15:02:53 -07:00
Alexander Karatarakis
e4eee15ef9 Fix vcpkg_acquire_msys 2017-08-22 13:41:32 -07:00
Robert Schumacher
9a87ee9c9d [openssl] Fix error in msys call to perform the perl installation. 2017-08-01 16:03:40 -07:00
Robert Schumacher
c22ab980bc [openssl] Switch to msys2 as a perl provider due to strawberryperl being down. 2017-07-31 11:27:22 -07:00
Gilles Khouzam
8085cd34f2 Adding support for FFmpeg in UWP.
Adding support to download gas-preprocessor as an acquire_program.
Update all packages for msys2
Download perl and gcc for ARM assembly in ffmpeg.
2017-06-19 12:49:20 -07:00
Robert Schumacher
49cd399586 [vcpkg-docs] Rework documentation for compatibility with readthedocs.io and MkDocs. 2017-05-28 14:15:13 -07:00
Martin Müller
eb3d052a52 Fix processor architecture detection 2017-05-03 19:11:29 +02:00
Robert Schumacher
9775cfff1d [vcpkg-acquire-msys] PROCESSOR_ARCHITEW6432=AMD64, not x64 2017-04-25 13:47:28 -07:00
Robert Schumacher
522a2bd350 [vcpkg-acquire-msys] Enable side-by-side of x86 and x64 msys. 2017-04-24 22:47:50 -07:00
İsmail Dönmez
8bf9d2a72b
Fix missing parenthesis 2017-04-24 19:29:34 +02:00
İsmail Dönmez
656ba237d7
Use msys64 on 64bit systems 2017-04-24 14:19:26 +02:00
Robert Schumacher
2f8d8d8b18 [ffmpeg] Initial commit of version 3.2.4 2017-03-02 07:29:19 -08:00