diff --git a/contrib/depends/packages/bc-ur.mk b/contrib/depends/packages/bc-ur.mk new file mode 100644 index 0000000..ff06c16 --- /dev/null +++ b/contrib/depends/packages/bc-ur.mk @@ -0,0 +1,22 @@ +package=bc-ur +$(package)_version=0.3.0 +$(package)_download_path=https://github.com/BlockchainCommons/bc-ur/archive/refs/tags/ +$(package)_file_name=$($(package)_version).tar.gz +$(package)_sha256_hash=2b9455766ce84ae9f7013c9a72d749034dddefb3f515145d585c732f17e7fa94 +$(package)_patches=build-fix.patch + +define $(package)_preprocess_cmds + patch -p1 < $($(package)_patch_dir)/build-fix.patch +endef + +define $(package)_config_cmds + $($(package)_cmake) -DCMAKE_INSTALL_PREFIX=$(host_prefix) -DCMAKE_C_COMPILER= . +endef + +define $(package)_build_cmds + $(MAKE) +endef + +define $(package)_stage_cmds + $(MAKE) DESTDIR=$($(package)_staging_dir) install +endef diff --git a/contrib/depends/packages/packages.mk b/contrib/depends/packages/packages.mk index 822e0de..7132593 100644 --- a/contrib/depends/packages/packages.mk +++ b/contrib/depends/packages/packages.mk @@ -1,4 +1,4 @@ -packages := boost openssl libiconv unbound qrencode zbar sodium polyseed hidapi protobuf libusb zlib libgpg-error libgcrypt expat libzip +packages := boost openssl libiconv unbound qrencode zbar sodium polyseed hidapi protobuf libusb zlib libgpg-error libgcrypt expat libzip bc-ur native_packages := native_libxcb native_xcb_proto native_libXau native_xproto native_libxkbcommon native_qt native_protobuf linux_packages := eudev libfuse libsquashfuse zstd appimage_runtime diff --git a/contrib/depends/patches/bc-ur/build-fix.patch b/contrib/depends/patches/bc-ur/build-fix.patch new file mode 100644 index 0000000..80ddbd5 --- /dev/null +++ b/contrib/depends/patches/bc-ur/build-fix.patch @@ -0,0 +1,92 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +new file mode 100644 +index 0000000..a67d57a +--- /dev/null ++++ b/CMakeLists.txt +@@ -0,0 +1,49 @@ ++cmake_minimum_required(VERSION 3.5) ++ ++project(bcur) ++ ++SET(CMAKE_CXX_STANDARD 17) ++ ++set(bcur_sources ++ src/bytewords.cpp ++ src/fountain-encoder.cpp ++ src/fountain-decoder.cpp ++ src/fountain-utils.cpp ++ src/xoshiro256.cpp ++ src/utils.cpp ++ src/random-sampler.cpp ++ src/ur-decoder.cpp ++ src/ur.cpp ++ src/ur-encoder.cpp ++ src/memzero.c ++ src/crc32.c ++ src/sha2.c) ++ ++install(FILES ++ src/ur-encoder.hpp ++ src/cbor-lite.hpp ++ src/fountain-utils.hpp ++ src/bc-ur.hpp ++ src/bytewords.hpp ++ src/ur.hpp ++ src/fountain-encoder.hpp ++ src/xoshiro256.hpp ++ src/utils.hpp ++ src/random-sampler.hpp ++ src/fountain-decoder.hpp ++ src/ur-decoder.hpp ++ DESTINATION include/bcur) ++ ++set(CMAKE_BUILD_TYPE Release) ++ ++add_library(bcur_static STATIC ${bcur_sources}) ++set_property(TARGET bcur_static PROPERTY POSITION_INDEPENDENT_CODE ON) ++set_target_properties(bcur_static PROPERTIES OUTPUT_NAME bcur ++ C_STANDARD 17 ++ C_STANDARD_REQUIRED ON) ++ ++include(GNUInstallDirs) ++install(TARGETS bcur_static ++ LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} ++ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} ++ PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}) +diff --git a/src/cbor-lite.hpp b/src/cbor-lite.hpp +index 945b6d5..267474a 100644 +--- a/src/cbor-lite.hpp ++++ b/src/cbor-lite.hpp +@@ -12,6 +12,7 @@ + #include + #include + #include ++#include + + #ifndef __BYTE_ORDER__ + #error __BYTE_ORDER__ not defined +diff --git a/src/memzero.c b/src/memzero.c +index 5edc797..b19923a 100644 +--- a/src/memzero.c ++++ b/src/memzero.c +@@ -6,7 +6,7 @@ + #include + + #ifdef _WIN32 +-#include ++#include + #endif + + #ifdef __unix__ +diff --git a/src/xoshiro256.cpp b/src/xoshiro256.cpp +index 7e87833..2f40b8b 100644 +--- a/src/xoshiro256.cpp ++++ b/src/xoshiro256.cpp +@@ -7,6 +7,7 @@ + + #include "xoshiro256.hpp" + #include ++#include + + /* Written in 2018 by David Blackman and Sebastiano Vigna (vigna@acm.org) +