Skip to content

Commit

Permalink
Merge #407: ci: Fix broken jobs
Browse files Browse the repository at this point in the history
d04cfc9 ci: Set `IN_GETOPT_BIN` environment variable for native macOS job (Hennadii Stepanov)
568dbbe ci: Disable fuzz tests for "macOS 13 native" job (Hennadii Stepanov)
6a4f027 ci: Disable benchmarks for "Win64 native" job (Hennadii Stepanov)
91a2b37 build: disable external-signer for Windows (fanquake)
5cbb35b build, msvc: Update vcpkg baseline (Hennadii Stepanov)
c0e608a ci: Delete no longer needed workaround in native Windows job (Hennadii Stepanov)

Pull request description:

  See commit messages for details.

ACKs for top commit:
  pablomartin4btc:
    ACK d04cfc9

Tree-SHA512: eaab8bbdb5638df192dafd7b06fd01a04d2f3cbb795edf8d1f1961836d80df8f8d75cef82f07af2f79447db26b62d45dab1eeaa1acad9306c575b75be59cb0eb
  • Loading branch information
hebasto committed Jun 9, 2024
2 parents 364e41d + d04cfc9 commit c065a17
Show file tree
Hide file tree
Showing 6 changed files with 20 additions and 47 deletions.
40 changes: 4 additions & 36 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -62,8 +62,10 @@ jobs:
- name: Install Homebrew packages
run: brew install boost libevent qt@5 miniupnpc libnatpmp ccache zeromq qrencode libtool automake gnu-getopt

- name: Set Ccache directory
run: echo "CCACHE_DIR=${RUNNER_TEMP}/ccache_dir" >> "$GITHUB_ENV"
- name: Set environment variables
run: |
echo "CCACHE_DIR=${RUNNER_TEMP}/ccache_dir" >> "$GITHUB_ENV"
echo "IN_GETOPT_BIN=$(brew --prefix gnu-getopt)/bin/getopt" >> "$GITHUB_ENV"
- name: Restore Ccache cache
uses: actions/cache/restore@v4
Expand Down Expand Up @@ -105,37 +107,6 @@ jobs:
- name: Checkout
uses: actions/checkout@v3

- name: Fix Visual Studio installation
# See: https://github.com/actions/runner-images/issues/7832#issuecomment-1617585694.
run: |
Set-Location "C:\Program Files (x86)\Microsoft Visual Studio\Installer\"
$InstallPath = "C:\Program Files\Microsoft Visual Studio\2022\Enterprise"
$componentsToRemove= @(
"Microsoft.VisualStudio.Component.VC.14.35.17.5.ARM"
"Microsoft.VisualStudio.Component.VC.14.35.17.5.ARM.Spectre"
"Microsoft.VisualStudio.Component.VC.14.35.17.5.ARM64"
"Microsoft.VisualStudio.Component.VC.14.35.17.5.ARM64.Spectre"
"Microsoft.VisualStudio.Component.VC.14.35.17.5.x86.x64"
"Microsoft.VisualStudio.Component.VC.14.35.17.5.x86.x64.Spectre"
"Microsoft.VisualStudio.Component.VC.14.35.17.5.ATL"
"Microsoft.VisualStudio.Component.VC.14.35.17.5.ATL.Spectre"
"Microsoft.VisualStudio.Component.VC.14.35.17.5.ATL.ARM"
"Microsoft.VisualStudio.Component.VC.14.35.17.5.ATL.ARM.Spectre"
"Microsoft.VisualStudio.Component.VC.14.35.17.5.ATL.ARM64"
"Microsoft.VisualStudio.Component.VC.14.35.17.5.ATL.ARM64.Spectre"
"Microsoft.VisualStudio.Component.VC.14.35.17.5.MFC"
"Microsoft.VisualStudio.Component.VC.14.35.17.5.MFC.Spectre"
"Microsoft.VisualStudio.Component.VC.14.35.17.5.MFC.ARM"
"Microsoft.VisualStudio.Component.VC.14.35.17.5.MFC.ARM.Spectre"
"Microsoft.VisualStudio.Component.VC.14.35.17.5.MFC.ARM64"
"Microsoft.VisualStudio.Component.VC.14.35.17.5.MFC.ARM64.Spectre"
)
[string]$workloadArgs = $componentsToRemove | ForEach-Object {" --remove " + $_}
$Arguments = ('/c', "vs_installer.exe", 'modify', '--installPath', "`"$InstallPath`"",$workloadArgs, '--quiet', '--norestart', '--nocache')
# should be run twice
$process = Start-Process -FilePath cmd.exe -ArgumentList $Arguments -Wait -PassThru -WindowStyle Hidden
$process = Start-Process -FilePath cmd.exe -ArgumentList $Arguments -Wait -PassThru -WindowStyle Hidden
- name: Configure Developer Command Prompt for Microsoft Visual C++
# Using microsoft/setup-msbuild is not enough.
uses: ilammy/msvc-dev-cmd@v1
Expand Down Expand Up @@ -266,9 +237,6 @@ jobs:
- name: Run unit tests
run: src\test_bitcoin.exe -l test_suite

- name: Run benchmarks
run: src\bench_bitcoin.exe -sanity-check

- name: Run util tests
run: py -3 test\util\test_runner.py

Expand Down
3 changes: 0 additions & 3 deletions build_msvc/bitcoin_config.h.in
Original file line number Diff line number Diff line change
Expand Up @@ -41,9 +41,6 @@
/* Define this symbol to enable ZMQ functions */
#define ENABLE_ZMQ 1

/* define if external signer support is enabled (requires Boost::Process) */
#define ENABLE_EXTERNAL_SIGNER /**/

/* Define to 1 if you have the declaration of `be16toh', and to 0 if you
don't. */
#define HAVE_DECL_BE16TOH 0
Expand Down
2 changes: 1 addition & 1 deletion build_msvc/bitcoind/bitcoind.vcxproj
Original file line number Diff line number Diff line change
Expand Up @@ -82,7 +82,7 @@
<ReplaceInFile FilePath="$(ConfigIniOut)"
Replace="@ENABLE_ZMQ_TRUE@" By=""></ReplaceInFile>
<ReplaceInFile FilePath="$(ConfigIniOut)"
Replace="@ENABLE_EXTERNAL_SIGNER_TRUE@" By=""></ReplaceInFile>
Replace="@ENABLE_EXTERNAL_SIGNER_TRUE@" By="#"></ReplaceInFile>
</Target>
<Import Project="..\common.vcxproj" />
</Project>
4 changes: 2 additions & 2 deletions build_msvc/vcpkg.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,8 @@
"version-string": "1",
"dependencies": [
"berkeleydb",
"boost-date-time",
"boost-multi-index",
"boost-process",
"boost-signals2",
"boost-test",
"sqlite3",
Expand All @@ -14,7 +14,7 @@
},
"zeromq"
],
"builtin-baseline": "f14984af3738e69f197bf0e647a8dca12de92996",
"builtin-baseline": "9edb1b8e590cc086563301d735cae4b6e732d2d2",
"overrides": [
{
"name": "libevent",
Expand Down
2 changes: 0 additions & 2 deletions ci/test/00_setup_env_mac_native.sh
Original file line number Diff line number Diff line change
Expand Up @@ -14,5 +14,3 @@ export CI_OS_NAME="macos"
export NO_DEPENDS=1
export OSX_SDK=""
export CCACHE_MAXSIZE=400M
export RUN_FUZZ_TESTS=true
export FUZZ_TESTS_CONFIG="--exclude banman" # https://github.com/bitcoin/bitcoin/issues/27924
16 changes: 13 additions & 3 deletions configure.ac
Original file line number Diff line number Diff line change
Expand Up @@ -1520,9 +1520,19 @@ if test "$use_external_signer" != "no"; then
CXXFLAGS="$TEMP_CXXFLAGS"
AC_MSG_RESULT([$have_boost_process])
if test "$have_boost_process" = "yes"; then
use_external_signer="yes"
AC_DEFINE([ENABLE_EXTERNAL_SIGNER], [1], [Define if external signer support is enabled])
AC_DEFINE([BOOST_PROCESS_USE_STD_FS], [1], [Defined to avoid Boost::Process trying to use Boost Filesystem])
case $host in
dnl Boost Process for Windows uses Boost ASIO. Boost ASIO performs
dnl pre-main init of Windows networking libraries, which we do not
dnl want.
*mingw*)
use_external_signer="no"
;;
*)
use_external_signer="yes"
AC_DEFINE([ENABLE_EXTERNAL_SIGNER], [1], [Define if external signer support is enabled])
AC_DEFINE([BOOST_PROCESS_USE_STD_FS], [1], [Defined to avoid Boost::Process trying to use Boost Filesystem])
;;
esac
else
if test "$use_external_signer" = "yes"; then
AC_MSG_ERROR([External signing is not supported for this Boost version])
Expand Down

0 comments on commit c065a17

Please sign in to comment.