Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
90 changes: 90 additions & 0 deletions .github/workflows/build-autotools.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,90 @@
name: Autotools build for bls-signatures

on: [push, pull_request]

jobs:
build:
name: ${{ matrix.config.name }}
runs-on: ${{ matrix.config.os }}
defaults:
run:
shell: bash
strategy:
fail-fast: false
matrix:
config:
- name: ARM 32-bit
os: ubuntu-18.04
host: arm-linux-gnueabihf
arch: armhf
apt_get: gcc-arm-linux-gnueabihf g++-arm-linux-gnueabihf
arch_packages: libgmp-dev:armhf libsodium-dev:armhf

- name: ARM 64-bit
os: ubuntu-18.04
host: aarch64-linux-gnu
arch: arm64
apt_get: gcc-aarch64-linux-gnu g++-aarch64-linux-gnu
arch_packages: libgmp-dev:arm64 libsodium-dev:arm64

#- name: i686 Linux
# os: ubuntu-18.04
# host: i686-pc-linux-gnu
# arch: armhf
# apt_get: gcc-multilib g++-multilib
# arch_packages: libgmp-dev:i386 libsodium-dev:i386

- name: x86_64 Linux
os: ubuntu-18.04
host: x86_64-unknown-linux-gnu
arch: armhf # dummy arch
apt_get: gcc-multilib g++-multilib
arch_packages: libgmp-dev libsodium-dev
unit_tests: true

- name: x86_64 MacOS
os: macos-10.15
host: x86_64-apple-darwin19.6.0
brew_install: autoconf automake libtool gmp libsodium
cc: clang
cxx: clang++
unit_tests: true

steps:
- name: Get Source
uses: actions/checkout@v2

- name: Setup Arches
if: matrix.config.arch
uses: ryankurte/action-apt@v0.3.0
with:
arch: ${{ matrix.config.arch }}
packages: ${{ matrix.config.arch_packages }}

- name: Setup Environment
run: |
if [[ ${{ matrix.config.os }} = ubuntu* ]]; then
sudo apt-get --yes update
sudo apt-get install --no-install-recommends --no-upgrade -qq ${{ matrix.config.apt_get }}
fi
if [[ ${{ matrix.config.os }} = macos* ]]; then
brew install ${{ matrix.config.brew_install }}
fi

- name: Build
run: |
if [[ ${{ matrix.config.os }} = macos* ]]; then
CC=${{ matrix.config.cc }}
CXX=${{ matrix.config.cxx }}
export CC
export CXX
fi

./autogen.sh
./configure --host=${{ matrix.config.host }} || ( cat config.log && false)
make -j2 || ( echo "Build failure. Verbose build follows." && make V=1 ; false )

if [ "${{ matrix.config.unit_tests }}" = "true" ]; then
make -j2 check
fi

34 changes: 34 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
CMakeCache.txt
CMakeFiles
cmake_install.cmake
cmake-build*/
Makefile
src/bench
src/test
Expand Down Expand Up @@ -37,6 +38,7 @@ blstest.*
blsbench
blsbench.*

.deps
.dirstamp
.libs
.*.swp
Expand All @@ -51,10 +53,42 @@ blsbench.*
*.a
*.pb.cc
*.pb.h
*.Po
*.lo
*.la

runbench
runtest

**/.DS_Store

*.whl
venv
yarn-error.log
/.project

# autoreconf
Makefile.in
aclocal.m4
autom4te.cache/
build-aux/config.guess
build-aux/config.sub
build-aux/depcomp
build-aux/install-sh
build-aux/ltmain.sh
build-aux/m4/libtool.m4
build-aux/m4/lt~obsolete.m4
build-aux/m4/ltoptions.m4
build-aux/m4/ltsugar.m4
build-aux/m4/ltversion.m4
build-aux/missing
build-aux/compile
build-aux/test-driver
config.log
config.status
configure
confdefs.h
conftest.cpp
conftest.err
libtool
contrib/relic/include/stamp-h1
2 changes: 1 addition & 1 deletion CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
CMAKE_MINIMUM_REQUIRED(VERSION 3.14.0 FATAL_ERROR)
set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD 14)
set(CMAKE_POSITION_INDEPENDENT_CODE ON)

IF(NOT CMAKE_BUILD_TYPE)
Expand Down
Loading