build: experimental ci build with AVX2
This commit is contained in:
parent
d1075955b2
commit
7dae118b0a
13
.github/workflows/ci.yml
vendored
13
.github/workflows/ci.yml
vendored
|
@ -35,6 +35,7 @@ jobs:
|
||||||
- x86_64-linux-nowallet
|
- x86_64-linux-nowallet
|
||||||
- x86_64-macos
|
- x86_64-macos
|
||||||
- x86_64-win
|
- x86_64-win
|
||||||
|
- x86_64-linux-experimental
|
||||||
include:
|
include:
|
||||||
- name: i686-linux
|
- name: i686-linux
|
||||||
host: i686-pc-linux-gnu
|
host: i686-pc-linux-gnu
|
||||||
|
@ -92,7 +93,7 @@ jobs:
|
||||||
sudo update-binfmts --import /usr/share/binfmts/wine
|
sudo update-binfmts --import /usr/share/binfmts/wine
|
||||||
run-tests: true
|
run-tests: true
|
||||||
dep-opts: ""
|
dep-opts: ""
|
||||||
config-opts: "CC=x86_64-w64-mingw32-gcc LIBS=-lIPSec_MB --enable-reduce-exports --enable-gui=qt5"
|
config-opts: "--enable-reduce-exports --enable-gui=qt5"
|
||||||
goal: install
|
goal: install
|
||||||
- name: x86_64-macos
|
- name: x86_64-macos
|
||||||
host: x86_64-apple-darwin11
|
host: x86_64-apple-darwin11
|
||||||
|
@ -103,6 +104,14 @@ jobs:
|
||||||
config-opts: "--enable-gui=qt5 --enable-reduce-exports"
|
config-opts: "--enable-gui=qt5 --enable-reduce-exports"
|
||||||
goal: deploy
|
goal: deploy
|
||||||
sdk: 10.11
|
sdk: 10.11
|
||||||
|
- name: x86_64-linux-experimental
|
||||||
|
host: x86_64-unknown-linux-gnu
|
||||||
|
os: ubuntu-20.04
|
||||||
|
packages: bc python3-zmq
|
||||||
|
run-tests: true
|
||||||
|
dep-opts: "AVX2=1"
|
||||||
|
config-opts: "--with-intel-avx2 --enable-gui=qt5 --enable-zmq --enable-glibc-back-compat --enable-reduce-exports"
|
||||||
|
goal: install
|
||||||
|
|
||||||
runs-on: ${{ matrix.os }}
|
runs-on: ${{ matrix.os }}
|
||||||
|
|
||||||
|
@ -115,7 +124,7 @@ jobs:
|
||||||
- name: Install packages
|
- name: Install packages
|
||||||
run: |
|
run: |
|
||||||
sudo apt-get update
|
sudo apt-get update
|
||||||
sudo apt-get install build-essential libtool autotools-dev automake pkg-config bsdmainutils curl ca-certificates ccache python3 rsync git procps bison nasm
|
sudo apt-get install build-essential libtool autotools-dev automake pkg-config bsdmainutils curl ca-certificates ccache python3 rsync git procps bison
|
||||||
sudo apt-get install ${{ matrix.packages }}
|
sudo apt-get install ${{ matrix.packages }}
|
||||||
|
|
||||||
- name: Post install
|
- name: Post install
|
||||||
|
|
|
@ -177,6 +177,12 @@ AC_ARG_ENABLE([zmq],
|
||||||
[use_zmq=$enableval],
|
[use_zmq=$enableval],
|
||||||
[use_zmq=yes])
|
[use_zmq=yes])
|
||||||
|
|
||||||
|
AC_ARG_WITH([intel-avx2],
|
||||||
|
[AS_HELP_STRING([--with-intel-avx2],
|
||||||
|
[Build with intel avx2 (default is no)])],
|
||||||
|
[intel_avx2=$withval],
|
||||||
|
[intel_avx2=no])
|
||||||
|
|
||||||
AC_ARG_WITH([protoc-bindir],[AS_HELP_STRING([--with-protoc-bindir=BIN_DIR],[specify protoc bin path])], [protoc_bin_path=$withval], [])
|
AC_ARG_WITH([protoc-bindir],[AS_HELP_STRING([--with-protoc-bindir=BIN_DIR],[specify protoc bin path])], [protoc_bin_path=$withval], [])
|
||||||
|
|
||||||
AC_ARG_ENABLE(man,
|
AC_ARG_ENABLE(man,
|
||||||
|
@ -785,12 +791,15 @@ fi
|
||||||
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
if test x$intel_avx2 = xyes; then
|
||||||
case $host in
|
case $host in
|
||||||
x86_64-*-linux*)
|
x86_64-*-linux*)
|
||||||
AC_CHECK_LIB([IPSec_MB],[sha1_one_block_avx2],LIBS=-lIPSec_MB, AC_MSG_ERROR(IPSec_MB missing))
|
AC_CHECK_LIB([IPSec_MB],[sha1_one_block_avx2],LIBS=-lIPSec_MB, AC_MSG_ERROR(IPSec_MB missing))
|
||||||
AC_CHECK_LIB([IPSec_MB],[sha256_one_block_avx2],LIBS=-lIPSec_MB, AC_MSG_ERROR(IPSec_MB missing))
|
AC_CHECK_LIB([IPSec_MB],[sha256_one_block_avx2],LIBS=-lIPSec_MB, AC_MSG_ERROR(IPSec_MB missing))
|
||||||
AC_CHECK_LIB([IPSec_MB],[sha512_one_block_avx2],LIBS=-lIPSec_MB, AC_MSG_ERROR(IPSec_MB missing))
|
AC_CHECK_LIB([IPSec_MB],[sha512_one_block_avx2],LIBS=-lIPSec_MB, AC_MSG_ERROR(IPSec_MB missing))
|
||||||
|
AC_DEFINE(USE_AVX2, 1, [Define this symbol if intel axv2 works])
|
||||||
esac
|
esac
|
||||||
|
fi
|
||||||
|
|
||||||
if test x$use_pkgconfig = xyes; then
|
if test x$use_pkgconfig = xyes; then
|
||||||
: dnl
|
: dnl
|
||||||
|
|
|
@ -8,8 +8,9 @@
|
||||||
|
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
|
|
||||||
#if defined(__x86_64__)
|
#if (defined(__ia64__) || defined(__x86_64__)) && \
|
||||||
#define USE_AVX2
|
(defined(__linux__) && !defined(__APPLE__)) && \
|
||||||
|
(defined(USE_AVX2))
|
||||||
#include <intel-ipsec-mb.h>
|
#include <intel-ipsec-mb.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
|
@ -8,8 +8,9 @@
|
||||||
|
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
|
|
||||||
#if defined(__x86_64__)
|
#if (defined(__ia64__) || defined(__x86_64__)) && \
|
||||||
#define USE_AVX2
|
(defined(__linux__) && !defined(__APPLE__)) && \
|
||||||
|
(defined(USE_AVX2))
|
||||||
#include <intel-ipsec-mb.h>
|
#include <intel-ipsec-mb.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
|
@ -8,8 +8,9 @@
|
||||||
|
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
|
|
||||||
#if defined(__x86_64__)
|
#if (defined(__ia64__) || defined(__x86_64__)) && \
|
||||||
#define USE_AVX2
|
(defined(__linux__) && !defined(__APPLE__)) && \
|
||||||
|
(defined(USE_AVX2))
|
||||||
#include <intel-ipsec-mb.h>
|
#include <intel-ipsec-mb.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue