As of https://github.com/bazelbuild/bazel/pull/14369, shared libraries
produced with cc_binary on macOS with the auto-configured toolchain use
the correct file extension for dynamic libraries
(.dylib rather than .so). This requires adapting a test.
* Adds toolchain for freebsd.
* Address buildifier lint warnings.
* Use /usr/bin/env bash
* Leave the Linux-specific shebang alone.
* Adds note about Bazel CI issue requesting for FreeBSD support and experimental status.
* Fix typo.
* Clean up trailing whitespace.
* Updates bazel-skylib version for tests to pass on FreeBSD.
* Update foreign_cc/repositories.bzl
Co-authored-by: UebelAndre <github@uebelandre.com>
* Pass toolchain and user env variables to make invocation
* Rename configure --> make
* Add integration test coverage for make flag passing
This requires making the make_simple Makefile more realistic by
* using CXX and forwarding it to the wrapper;
* using CXXFLAGS instead of CXX_FLAGS and not overwriting its contents.
* build OpenSSL using MSVC toolchain on Windows
* Display lib name in progress message
Before this commit, when building OpenSSL using MSVC, the progress
message would display "Building openssl_msvc_".
After this commit, the progess message would display
"Building openssl".
* Add test to verify linkage with OpenSSL libs
* Add test to verify linkage with Curl libs
Note that linker errors occur in applications that link with libssl
and libcrypto if libcrypto comes before libssl on the linker
command-line. Swapping the order of libcrypto and libssl in
BUILD.openssl.bazel resolved the issue.
This change is required when using the MSVC toolchain on Windows,
as paths for tools such as the compiler contain whitespaces (e.g.
C:\Program Files\...)
Co-authored-by: UebelAndre <github@uebelandre.com>
* Enable examples tests on windows
* Fixed windows absolute paths being treated as relative.
* Escape windows backslashes for sed replacement
* Improve `//cmake_hello_world_lib/static:libhello` example
* Refactor _env_prelude method to be public (589)
In an upcoming commit, the method will be used to set the PATH,
INCLUDE and LIB environment variables in Windows when building GNU
Make from source
* Build make from source on Windows (#589)
The built_tools_framework.bzl file was modified so that the PATH,
INCLUDE and LIB environment variables are set from the C++ toolchain,
e.g. MSVC.
The PATH environment variable is prepended with the path to the
toolchain's linker, otherwise the MSYS2 linker would be used instead
of MSVC (as they are both named link.exe).
* Add config for building with spawn_strategy=standalone
* Always build RELEASE configuration to avoid having to select for the output due to change in artifact names for debug builds
* Fix for copy_contents_to_dir and symlink_contents_to_dir on macOS as per #512
* Update name of test files
* Fix string escaping for cmake and configure/make
Use raw strings where possible to make readability slightly less maddening.
* Example usage of __TIME__
* Allow expansion of environment variables in HEREDOC for cmake crosstool
* Add compile check that __TIME__ is correctly redacted
* Ran buildifier
* Remove comment that is now invalid
Co-authored-by: James Sharpe <james.sharpe@zenotech.com>
* Enable more tests for RBE
* Turn off gn build for RBE
* Fix to make_simple example
* Turn off configure_with_bazel_transitive due to an issue with toolchain configuration
* Add CMAKE_MAKE_PROGRAM to generate_args
* Set CMP0074 policy for cmake to use the ZLIB_ROOT entry
* Disable libpng build on rbe
* Disable bison build on RBE
* Disable cmake_android example on RBE
* Fix typo in ZLIB_ROOT
* Reenable libpng build
* Address review comments
* Added `targets` API to all existing build rules
* Updated examples
* Restore making the make toolchain always available.
* Add support for generator cmake parsing and setting CMAKE_MAKE_PROGRAM
* Cleaned up duplicate generator arguments
* Fixed cmake tests
* Updated docs
* Addressed PR feedback
* Fixed missing and incorrect generators
* Fixed `generate_args` name