forked from such-gitea/wownero
All checks were successful
Build Wownero Core (Portable Mac Fix) / build-all (aarch64-apple-darwin11) (push) Successful in 12m36s
Build Wownero Core (Portable Mac Fix) / build-all (aarch64-linux-gnu) (push) Successful in 8m56s
Build Wownero Core (Portable Mac Fix) / build-all (riscv64-linux-gnu) (push) Successful in 11m38s
Build Wownero Core (Portable Mac Fix) / build-all (x86_64-apple-darwin11) (push) Successful in 13m8s
Build Wownero Core (Portable Mac Fix) / build-all (x86_64-linux-gnu) (push) Successful in 9m13s
Build Wownero Core (Portable Mac Fix) / build-all (x86_64-w64-mingw32) (push) Successful in 10m9s
Build Wownero Core (Portable Mac Fix) / release (push) Successful in 26s
- Upgrade dependencies: Boost 1.90.0, OpenSSL 3.0.13, Zlib 1.3.1, Zstd 1.5.5 - Fix macOS ARM/Intel builds by relaxing static runtime requirements in CMake - Add missing Boost libraries (context, coroutine) for LWS support - Sanitize depends system to prevent Makefile corruption - Enable full static linking for Linux and Windows targets
Usage
To build dependencies for the current arch+OS:
make
To build for another arch/OS:
make HOST=host-platform-triplet
For example:
make HOST=x86_64-w64-mingw32 -j4
A toolchain will be generated that's suitable for plugging into Monero's cmake. In the above example, a dir named x86_64-w64-mingw32 will be created. To use it for Monero:
cmake -DCMAKE_TOOLCHAIN=`pwd`/contrib/depends/x86_64-w64-mingw32
Common host-platform-triplets for cross compilation are:
i686-w64-mingw32for Win32x86_64-w64-mingw32for Win64x86_64-apple-darwin11for MacOSX x86_64arm-linux-gnueabihffor Linux ARM 32 bitaarch64-linux-gnufor Linux ARM 64 bitriscv64-linux-gnufor Linux RISCV 64 bit
No other options are needed, the paths are automatically configured.
Dependency Options: The following can be set when running make: make FOO=bar
SOURCES_PATH: downloaded sources will be placed here
BASE_CACHE: built packages will be placed here
FALLBACK_DOWNLOAD_PATH: If a source file can't be fetched, try here before giving up
DEBUG: disable some optimizations and enable more runtime checking
HOST_ID_SALT: Optional salt to use when generating host package ids
BUILD_ID_SALT: Optional salt to use when generating build package ids
Additional targets:
download: run 'make download' to fetch all sources without building them
download-osx: run 'make download-osx' to fetch all sources needed for osx builds
download-win: run 'make download-win' to fetch all sources needed for win builds
download-linux: run 'make download-linux' to fetch all sources needed for linux builds
#Mingw builds
Building for 32/64bit mingw requires switching alternatives to a posix mode
update-alternatives --set x86_64-w64-mingw32-g++ x86_64-w64-mingw32-g++-posix
update-alternatives --set x86_64-w64-mingw32-gcc x86_64-w64-mingw32-gcc-posix
Other documentation
- description.md: General description of the depends system
- packages.md: Steps for adding packages