summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCzarek Nakamoto <cyjan@mrcyjanek.net>2024-02-15 00:31:19 +0100
committerCzarek Nakamoto <cyjan@mrcyjanek.net>2024-02-15 09:15:37 +0100
commitc7c553a7f32f754c77897db2e53c1e8771d4f2cf (patch)
treebb51d8ea79c6d70456a2933939568dbb0efb9f6e
parent81ccfac99e87c1c032f632f4caf14d0ca44eaf23 (diff)
added intial woodpecker config
-rw-r--r--.env40
-rw-r--r--.woodpecker/linux.yaml81
2 files changed, 121 insertions, 0 deletions
diff --git a/.env b/.env
new file mode 100644
index 0000000..28629a6
--- /dev/null
+++ b/.env
@@ -0,0 +1,40 @@
+ PREFIX=/opt/linux/prefix
+ NPROC=4
+ PATH=/usr/cmake-3.14.6-Linux-x86_64/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
+
+ # CMake
+ CMAKE_VERSION='3.14.6'
+ CMAKE_HASH='82e08e50ba921035efa82b859c74c5fbe27d3e49a4003020e3c77618a4e912cd'
+ # Boost
+ BOOST_VERSION='1_70_0'
+ BOOST_VERSION_DOT='1.70.0'
+ BOOST_HASH='430ae8354789de4fd19ee52f3b1f739e1fba576f0aded0897c3c2bc00fb38778'
+ # iconv
+ ICONV_VERSION='1.16'
+ ICONV_HASH='e6a1b1b589654277ee790cce3734f07876ac4ccfaecbee8afa0b649cf529cc04'
+ # zlib
+ ZLIB_VERSION='1.3.1'
+ ZLIB_HASH='9a93b2b7dfdac77ceba5a558a580e74667dd6fede4585b91eefb60f03b72df23'
+ # OpenSSL
+ OPENSSL_VERSION='3.2.0'
+ OPENSSL_HASH='14c826f07c7e433706fb5c69fa9e25dab95684844b4c962a2cf1bf183eb4690e'
+ # ZMQ
+ ZMQ_VERSION='v4.3.2'
+ ZMQ_HASH='a84ffa12b2eb3569ced199660bac5ad128bff1f0'
+ # libsodium
+ SODIUM_VERSION='1.0.18'
+ SODIUM_HASH='4f5e89fa84ce1d178a6765b8b46f2b6f91216677'
+ # libexpat
+ LIBEXPAT_VERSION='R_2_4_8'
+ LIBEXPAT_HASH='3bab6c09bbe8bf42d84b81563ddbcf4cca4be838'
+ # libunbound
+ LIBUNBOUND_VERSION='branch-1.16.1'
+ LIBUNBOUND_HASH='903538c76e1d8eb30d0814bb55c3ef1ea28164e8'
+ # polyseed
+ POLYSEED_HASH='b7c35bb3c6b91e481ecb04fc235eaff69c507fa1'
+ # utf8proc
+ UTF8PROC_HASH='1cb28a66ca79a0845e99433fd1056257456cef8b'
+ # (finally) monero
+ MONERO_GIT_SOURCE_SIMPLE='git.mrcyjanek.net_mrcyjanek_monero'
+ MONERO_GIT_SOURCE=https://git.mrcyjanek.net/mrcyjanek/monero.git
+ MONERO_TAG='release-v0.18.3.1-anonero' \ No newline at end of file
diff --git a/.woodpecker/linux.yaml b/.woodpecker/linux.yaml
new file mode 100644
index 0000000..e06874f
--- /dev/null
+++ b/.woodpecker/linux.yaml
@@ -0,0 +1,81 @@
+matrix:
+ include:
+ - HOST_TRIPLET: x86_64-linux-gnu
+ BUILD_TRIPLET: x86_64-linux-gnu
+ short_arch: x86_64
+ full_arch: x86_64
+ monero_arch: x86-64
+ monero_buildtag: linux-x86_64
+ monero_build64: 'ON'
+ monero_cmake_arm_mode: 'OFF'
+ platform:
+ - linux/amd64
+
+steps:
+ - name: clone repositories
+ image: git.mrcyjanek.net/mrcyjanek/debian:bookworm
+ commands:
+ - . ./.env
+ # Monero
+ - (git clone $${MONERO_GIT_SOURCE} --depth=1 --branch $${MONERO_TAG} monero && cd monero && git submodule init && git submodule update)
+ # Boost
+ - curl -L -o boost_$${BOOST_VERSION}.tar.bz2 https://archives.boost.io/release/$${BOOST_VERSION_DOT}/source/boost_$${BOOST_VERSION}.tar.bz2
+ - echo "$${BOOST_HASH} boost_$${BOOST_VERSION}.tar.bz2" | sha256sum -c
+ - tar -xf boost_$${BOOST_VERSION}.tar.bz2
+ - rm -f boost_$${BOOST_VERSION}.tar.bz2
+ # libiconv
+ - curl -O http://ftp.gnu.org/pub/gnu/libiconv/libiconv-$${ICONV_VERSION}.tar.gz
+ - echo "$${ICONV_HASH} libiconv-$${ICONV_VERSION}.tar.gz" | sha256sum -c
+ - tar -xzf libiconv-$${ICONV_VERSION}.tar.gz
+ - rm -f libiconv-$${ICONV_VERSION}.tar.gz
+ # zlib
+ - curl -O https://zlib.net/zlib-$${ZLIB_VERSION}.tar.gz
+ - echo "$${ZLIB_HASH} zlib-$${ZLIB_VERSION}.tar.gz" | sha256sum -c
+ - tar -xzf zlib-$${ZLIB_VERSION}.tar.gz
+ - rm zlib-$${ZLIB_VERSION}.tar.gz
+ - mv zlib-$${ZLIB_VERSION} zlib
+ # openssl
+ - curl -O https://www.openssl.org/source/openssl-$${OPENSSL_VERSION}.tar.gz
+ - echo "$${OPENSSL_HASH} openssl-$${OPENSSL_VERSION}.tar.gz" | sha256sum -c
+ - tar -xzf openssl-$${OPENSSL_VERSION}.tar.gz
+ - rm openssl-$${OPENSSL_VERSION}.tar.gz
+ # libzmq
+ - git clone https://github.com/zeromq/libzmq.git -b $${ZMQ_VERSION} --depth=1
+ - (cd libzmq && test `git rev-parse HEAD` = $${ZMQ_HASH}) || exit 1
+ # libsodium
+ - git clone https://github.com/jedisct1/libsodium.git -b $${SODIUM_VERSION} --depth=1
+ - (cd libsodium && test `git rev-parse HEAD` = $${SODIUM_HASH}) || exit 1
+ # libexpat
+ - git clone https://github.com/libexpat/libexpat.git -b $${LIBEXPAT_VERSION} --depth=1
+ - (cd libexpat && test `git rev-parse HEAD` = $${LIBEXPAT_HASH}) || exit 1
+ # unbound
+ - git clone https://github.com/NLnetLabs/unbound.git -b $${LIBUNBOUND_VERSION} --depth=1
+ - cd unbound
+ - test `git rev-parse HEAD` = $${LIBUNBOUND_HASH} || exit 1
+ # polyseed
+ - git clone https://github.com/tevador/polyseed.git
+ - (cd polyseed && git reset --hard $${POLYSEED_HASH}) || exit 1
+ # utf8proc
+ - git clone https://github.com/JuliaStrings/utf8proc -b v2.8.0 --depth=1
+ - (cd utf8proc && git reset --hard $${UTF8PROC_HASH})
+ - name: Build boost (1/2)
+ image: git.mrcyjanek.net/mrcyjanek/debian:bookworm
+ commands:
+ - . ./.env && export PREFIX="$${PWD}/pfx"
+ - cd boost_$${BOOST_VERSION}
+ - ./bootstrap.sh --prefix="$${PREFIX}"
+ - name: Build iconv (for boost)
+ image: git.mrcyjanek.net/mrcyjanek/debian:bookworm
+ commands:
+ - . ./.env && export PREFIX="$${PWD}/pfx"
+ - cd libiconv-${ICONV_VERSION}
+ - ./configure --build=${BUILD_TRIPLET} --host=${HOST_TRIPLET} --prefix=$${PREFIX} --disable-rpath
+ - make -j${NPROC}
+ - make install
+ - name: Build boost (2/2)
+ image: git.mrcyjanek.net/mrcyjanek/debian:bookworm
+ commands:
+ - . ./.env && export PREFIX="$${PWD}/pfx"
+ - cd boost_${BOOST_VERSION}
+ - echo -n -e '\n#undef PTHREAD_STACK_MIN\n#define PTHREAD_STACK_MIN 16384\n' | cat - ./boost/thread/pthread/thread_data.hpp > temp && mv temp ./boost/thread/pthread/thread_data.hpp
+ - ./b2 cxxflags=-fPIC cflags=-fPIC --build-type=minimal link=static runtime-link=static --with-chrono --with-date_time --with-filesystem --with-program_options --with-regex --with-serialization --with-system --with-thread --with-locale --build-dir=linux --stagedir=linux toolset=gcc threading=multi threadapi=pthread -sICONV_PATH=${PREFIX} install -j${NPROC} &>/tmp/boost_log.txt || cat /tmp/boost_log.txt \ No newline at end of file