Skip to content

Commit

Permalink
Merge branch 'development' into testnet
Browse files Browse the repository at this point in the history
  • Loading branch information
jamescowens committed Sep 18, 2023
2 parents 64e81b6 + 7548e6c commit 84651c9
Show file tree
Hide file tree
Showing 79 changed files with 3,274 additions and 481 deletions.
2 changes: 1 addition & 1 deletion .github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ labels: bug

<!-- For general questions about Gridcoin or wallet recovery please use one of the various communities:
* Gridcoin on reddit https://www.reddit.com/r/gridcoin/
* Discord https://discord.gg/jf9XX4a -->
* Discord https://discord.gg/UMWUnMjN4x -->

<!-- ISSUES MISSING IMPORTANT INFORMATION MAY BE CLOSED WITHOUT INVESTIGATION. -->

Expand Down
2 changes: 1 addition & 1 deletion .github/ISSUE_TEMPLATE/config.yml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
blank_issues_enabled: false
contact_links:
- name: Gridcoin Discord
url: https://discord.gg/jf9XX4a
url: https://discord.gg/UMWUnMjN4x
about: Please go here if you have any general issues that are not bug reports. We can assist you much faster there.
- name: Gridcoin Subreddit
url: https://reddit.com/r/gridcoin
Expand Down
2 changes: 1 addition & 1 deletion .github/ISSUE_TEMPLATE/feature_request.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ labels: enhancement

<!-- For general questions about Gridcoin or wallet recovery please use one of the various communities:
* Gridcoin on reddit https://www.reddit.com/r/gridcoin/
* Discord https://discord.gg/jf9XX4a -->
* Discord https://discord.gg/UMWUnMjN4x -->

# Feature Request

Expand Down
194 changes: 194 additions & 0 deletions .github/workflows/cmake-ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,194 @@
name: CMake CI
on:
- push
- pull_request
- workflow_dispatch

jobs:
test-linux:
runs-on: ubuntu-latest
env:
CCACHE_DIR: ${{github.workspace}}/ccache
CCACHE_MAXSIZE: 400M
CCACHE_COMPILERCHECK: content
strategy:
matrix:
tag:
- minimal
- no-asm
- gui-full
- system-libs
include:
- tag: no-asm
deps: null
options: -DENABLE_PIE=ON -DUSE_ASM=OFF
- tag: gui-full
deps: >-
libminiupnpc-dev
libqrencode-dev
qtbase5-dev
qttools5-dev
options: >-
-DENABLE_GUI=ON
-DENABLE_QRENCODE=ON
-DENABLE_UPNP=ON
-DUSE_DBUS=ON
- tag: system-libs
deps: >-
libdb5.3++-dev
libleveldb-dev
libsnappy-dev
libsecp256k1-dev
libunivalue-dev
xxd
options: >-
-DSYSTEM_BDB=ON
-DSYSTEM_LEVELDB=ON
-DSYSTEM_UNIVALUE=ON
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Install dependencies
uses: awalsh128/cache-apt-pkgs-action@latest
with:
packages: |
${{matrix.deps}}
ccache
libcurl4-openssl-dev
libzip-dev
ninja-build
zipcmp
zipmerge
ziptool
version: ${{matrix.tag}}
- name: Install Boost dependencies
run: |
sudo apt-get install -y --no-install-recommends \
libboost-dev \
libboost-date-time-dev \
libboost-exception-dev \
libboost-filesystem-dev \
libboost-iostreams-dev \
libboost-serialization-dev \
libboost-test-dev \
libboost-thread-dev
- name: Configure
run: |
cmake -B ${{github.workspace}}/build -G Ninja \
-DCMAKE_C_COMPILER_LAUNCHER=ccache \
-DCMAKE_CXX_COMPILER_LAUNCHER=ccache \
${{matrix.options}} \
-DENABLE_TESTS=ON
- name: Restore cache
uses: actions/cache/restore@v3
if: always()
with:
path: ${{env.CCACHE_DIR}}
key: ccache-linux-${{matrix.tag}}-${{github.run_id}}
restore-keys: |
ccache-linux-${{matrix.tag}}-
- name: Build
run: |
cmake --build ${{github.workspace}}/build -v -j $(nproc)
- name: Save cache
uses: actions/cache/save@v3
if: always()
with:
path: ${{env.CCACHE_DIR}}
key: ccache-linux-${{matrix.tag}}-${{github.run_id}}
- name: Run tests
run: |
ctest --test-dir ${{github.workspace}}/build -j $(nproc)
- name: Upload test logs
uses: actions/upload-artifact@v3
if: always()
with:
name: testlog-linux-${{matrix.tag}}
path: ${{github.workspace}}/build/Testing/Temporary/LastTest.log
retention-days: 7

test-macos:
runs-on: macos-latest
env:
CCACHE_DIR: ${{github.workspace}}/ccache
CCACHE_MAXSIZE: 400M
CCACHE_COMPILERCHECK: content
strategy:
matrix:
tag:
- minimal
- no-asm
- gui-full
- system-libs
include:
- tag: no-asm
deps: null
options: -DENABLE_PIE=ON -DUSE_ASM=OFF
- tag: gui-full
deps: >-
miniupnpc
qrencode
qt@5
options: >-
-DENABLE_GUI=ON
-DQt5_DIR=/usr/local/opt/qt5/lib/cmake/Qt5
-DENABLE_QRENCODE=ON
-DENABLE_UPNP=ON
- tag: system-libs
deps: >-
berkeley-db@5
secp256k1
vim
options: >-
-DSYSTEM_BDB=ON
-DBerkeleyDB_INCLUDE_DIR=/usr/local/opt/berkeley-db@5/include
-DBerkeleyDB_CXX_LIBRARY=/usr/local/opt/berkeley-db@5/lib/libdb_cxx.dylib
-DSYSTEM_SECP256K1=ON
-DSYSTEM_XXD=ON
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Install dependencies
run: |
brew install boost ccache ninja ${{matrix.deps}}
- name: Configure
run: |
PKG_CONFIG_PATH="/usr/local/opt/openssl@3/lib/pkgconfig:${PKG_CONFIG_PATH}"
export PKG_CONFIG_PATH
pushd src
../contrib/nomacro.pl
popd
cmake -B ${{github.workspace}}/build -G Ninja \
-DCMAKE_C_COMPILER_LAUNCHER=ccache \
-DCMAKE_CXX_COMPILER_LAUNCHER=ccache \
${{matrix.options}} \
-DENABLE_TESTS=ON
- name: Restore cache
uses: actions/cache/restore@v3
if: always()
with:
path: ${{env.CCACHE_DIR}}
key: ccache-macos-${{matrix.tag}}-${{github.run_id}}
restore-keys: |
ccache-macos-${{matrix.tag}}-
- name: Build
run: |
cmake --build ${{github.workspace}}/build -v -j $(sysctl -n hw.logicalcpu)
- name: Save cache
uses: actions/cache/save@v3
if: always()
with:
path: ${{env.CCACHE_DIR}}
key: ccache-macos-${{matrix.tag}}-${{github.run_id}}
- name: Run tests
run: |
ctest --test-dir ${{github.workspace}}/build -j $(sysctl -n hw.logicalcpu)
- name: Upload test logs
uses: actions/upload-artifact@v3
if: always()
with:
name: testlog-macos-${{matrix.tag}}
path: ${{github.workspace}}/build/Testing/Temporary/LastTest.log
retention-days: 7
3 changes: 1 addition & 2 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ src/test/test_gridcoin.log
src/test/test_gridcoin.trs

src/build.h
src/obj
src/obj/build.h
src/qt/forms/*.h
src/qt/forms/voting/*.h
src/qt/moc_*.cpp
Expand Down Expand Up @@ -99,7 +99,6 @@ config.status
configure
libtool
src/config/gridcoin-config.h
src/config/gridcoin-config.h.in
src/config/stamp-h1
share/setup.nsi
share/qt/Info.plist
Expand Down
Loading

0 comments on commit 84651c9

Please sign in to comment.