mirror of
https://git.wownero.com/wownero/wownero.git
synced 2025-01-18 16:08:35 +00:00
44c0470e1e
5c27fd8 depends: Package cleanup (Howard Chu) c1d47eb Update randomx: fix Mac linking error (Howard Chu) 02e6af2 Update CI for aarch64 mac build (selsta) 7ea1e21 Make Mac SDK into a regular depends package (Howard Chu) e81ab9b Silence some protobuf link warnings (Howard Chu) fe5c2ae Fix arm64 darwin package defs (Howard Chu) fb68465 Boost 1.64 doesn't recognize arm64 darwin (Howard Chu) 617f908 more... update to clang 9.0.0 (Howard Chu) 83ae3ad Split native_clang out of native_cctools (Howard Chu) 1008318 Update native_cctools for newer SDK support (Howard Chu) a86c4cb Update to MacOSX SDK 11.1, add Mac M1 (Howard Chu)
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-mingw32
for Win32x86_64-w64-mingw32
for Win64x86_64-apple-darwin11
for MacOSX x86_64arm-linux-gnueabihf
for Linux ARM 32 bitaarch64-linux-gnu
for Linux ARM 64 bitriscv64-linux-gnu
for 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