diff --git a/.gitignore b/.gitignore index e5751db76..ca3d15c12 100644 --- a/.gitignore +++ b/.gitignore @@ -47,6 +47,7 @@ src/univalue/gen .deps .dirstamp +.idea .libs .*.swp *.*~* diff --git a/.travis.yml b/.travis.yml index a02b24b35..c45e82a94 100644 --- a/.travis.yml +++ b/.travis.yml @@ -23,19 +23,19 @@ matrix: fast_finish: true include: - compiler: ": Linux" - env: HOST=x86_64-unknown-linux-gnu TARGET_PLATFORM=Linux64 BUILD_SCRIPT=build.sh + env: HOST=x86_64-unknown-linux-gnu TARGET_PLATFORM=linux64 BUILD_SCRIPT=build.sh TRAVIS_OS_NAME=linux PACKAGES="build-essential pkg-config libc6-dev m4 g++-multilib autoconf libtool ncurses-dev unzip python zlib1g-dev wget bsdmainutils automake libssl-dev libprotobuf-dev protobuf-compiler libqrencode-dev libdb++-dev software-properties-common libcurl4-openssl-dev curl" PPA="ppa:chris-lea/zeromq" KOMODO_EXEC_SET="komodod - komodo-cli" COMPRESSED_BUILD=Komodo-build.tar.gz + komodo-cli" - compiler: ": Windows" - env: HOST=x86_64-w64-mingw32 TARGET_PLATFORM=Win64 RUST_TARGET=x86_64-pc-windows-gnu + env: HOST=x86_64-w64-mingw32 TARGET_PLATFORM=win64 RUST_TARGET=x86_64-pc-windows-gnu BUILD_SCRIPT=build-win.sh PACKAGES="build-essential pkg-config libcurl3-gnutls-dev libc6-dev libevent-dev m4 g++-multilib autoconf libtool ncurses-dev unzip git python zlib1g-dev wget bsdmainutils automake libssl-dev libprotobuf-dev protobuf-compiler - libdb++-dev ntp ntpdate mingw-w64 wine bc" KOMODO_EXEC_SET="komodod.exe komodo-cli.exe komodo-tx.exe" COMPRESSED_BUILD=Komodo-build.tar.gz - + libdb++-dev ntp ntpdate mingw-w64 wine bc" KOMODO_EXEC_SET="komodod.exe komodo-cli.exe + komodo-tx.exe" exclude: - compiler: gcc install: @@ -44,10 +44,10 @@ install: - source /home/travis/google-cloud-sdk/path.bash.inc - sudo rm -f /etc/apt/sources.list.d/travis_ci_zeromq3-source.list - travis_retry sudo apt-get -y update && sudo apt-get -y install -qq $PACKAGES -- if [ $TARGET_PLATFORM = Win64 ]; then curl -sSf https://build.travis-ci.org/files/rustup-init.sh +- if [ $TARGET_PLATFORM = win64 ]; then curl -sSf https://build.travis-ci.org/files/rustup-init.sh | sh -s -- --default-toolchain stable -y && export PATH=$PATH:$HOME/.cargo/bin:$PATH; fi -- if [ $TARGET_PLATFORM = Win64 ]; then rustup target add $RUST_TARGET; fi +- if [ $TARGET_PLATFORM = win64 ]; then rustup target add $RUST_TARGET; fi before_script: - unset CC; unset CXX - mkdir -p depends/SDKs depends/sdk-sources @@ -57,13 +57,14 @@ script: after_script: - if [ "$TRAVIS_PULL_REQUEST" = "false" ]; then gcloud auth activate-service-account --key-file AUTH_KEY.json; fi -- if [ "$TRAVIS_PULL_REQUEST" = "false" ]; then cd src && gsutil cp gs://$BUCKET/$PROJECT/$TRAVIS_BRANCH/$TARGET_PLATFORM.tar.gz . && tar -xzvf $TARGET_PLATFORM.tar.gz && ls && rm $TARGET_PLATFORM.tar.gz; fi -- if [ "$TRAVIS_PULL_REQUEST" = "false" ]; then ls && cp -rv $KOMODO_EXEC_SET $TARGET_PLATFORM && tar -czvf $TARGET_PLATFORM.tar.gz $TARGET_PLATFORM; fi -- if [ "$TRAVIS_PULL_REQUEST" = "false" ]; then gsutil cp -rv $TARGET_PLATFORM.tar.gz gs://$BUCKET/$PROJECT/$TRAVIS_BRANCH/; +- if [ "$TRAVIS_PULL_REQUEST" = "false" ]; then cd src && mkdir $TARGET_PLATFORM && + cp -r $KOMODO_EXEC_SET $TARGET_PLATFORM && tar -czvf $TARGET_PLATFORM.tar.gz $TARGET_PLATFORM; fi +- if [ "$TRAVIS_PULL_REQUEST" = "false" ]; then gsutil cp $TARGET_PLATFORM.tar.gz + gs://$BUCKET/$PROJECT/$TRAVIS_BRANCH/; fi notifications: slack: - secure: A7JtO9RXl0Tgx09IWwUKbCuZ0oTC4wM4jthsV2CW3AS7r5Iz1qMFBnb7sb8744f40vi/QYjbr1KHkdOEbSJqWzOJS7oelSM9kyck808un7zZ8OwweXdGqdirNmIR3x+IQAYZw2lvYZcUBX/5h8eXK2LU67Rsve5I1WRGPtz0rmctFeRG6Xe0yGpMDYYxt4Ce/L7N5h3cC2eak8pQU6mSyQog0yvbiM73CFzz//bWughamOHKLx6o8BDgklwuCuh4rHQe/0kwVq1AoPQMqxuKQTsGAmub4mrDcsde39h3uo4GjAqAgfmL2e4hyp8fumdd7BtrQaFF4UBqyR8Xo/Ao97Ca7Dbeii5Eq7sl5/sTxZRdjy+MFD7z+jFpLkXfivBradyu0jABT5YYYMzZOCkpOGl5l3YymT86HKO5RBHyZLNL06jxHLti3NYBvFC6C+0yZrJOo7KN9DMqHHLZ5Y3ASZqbARWlVDE4oQmauyn4X2d6EOoE7ohwHwpY/LbVNFmrGvD+jAf4dOttwCMoWnT2pLWzs8Tl4FrvDGR3tbmZSCR/0NfbbeGrv9YNJtUghjubp1OikaZ3/Hs0+yJVsKo3kVd+dZvT/5u9MD6bu/cSdBRnoG0orca9QB8obaTEQ+71XC63D0hwDoZ9IgX6qVv+3KFErHZdZGiQBZI2yXSckvI= + secure: FiVlFhSw5xnDu1Cx2yAo3J7miFCSRyuzR/2+8LKFjdWl5+fyIGvQ9x5vgUg6dWbv3UP9iIMqQuWfotsg8H+NE8pYRZQ0zDVxZ5h9+PA028qGb3OF4TMFNcltP5DGtAZ6AqrMNRZ4ltatPUm5H9ig1bhzjsx+3pqlqQuVXTXPjaUryB5s/fk2CjrsV6zTLfPHiI30jeMjmQrJJLik1vSWF70sB6HkQhvaT6jymkO4Vuh+cja418W1xIgkkoRsOXiZ/JK4hIypFo/sBkmIOprGqoFUahFqJlsBoSrp9iAzkwbDItIqqvNCHTEeN7lj6kK43ZK72E4etjjNc0CXWeleXBJBCj5Prq2lEkQ4NwuDTos3KLyyr2vI7f54xhb5+wjzY9dByHXGuG5UaNz0+uukuJinAdazGaNmmfesv1wg9p3jGa/TLsfHLMcUti875DzkUHnenivP5cXrc6/uuZyyQNq5+Gn/3DA8k0y7d1e23nm3nDjCNfATAn3yu1jieYY2yYI6CYGEXcD+UbP61uG6no+mm/lkQbQosyDfE0sADqGryqXswRste+R0sSVMBQtTipAZOUoYNbEmhN4+L78SSp3zpmgkrIxAw7le8oj6Evp2ofvE2Kvh+Z0MVoEJx6mtZI6hheIFSS38NeUZr/HBfRSpaElOYTN/ZNf8QwThCWo= before_install: - openssl aes-256-cbc -K $encrypted_11153c0bb86c_key -iv $encrypted_11153c0bb86c_iv -in AUTH_KEY.json.enc -out AUTH_KEY.json -d diff --git a/AUTH_KEY.json.enc b/AUTH_KEY.json.enc index ff2e4ce96..f76321d6b 100644 Binary files a/AUTH_KEY.json.enc and b/AUTH_KEY.json.enc differ diff --git a/README.md b/README.md index d01e90e7c..656e4525c 100644 --- a/README.md +++ b/README.md @@ -69,6 +69,26 @@ Building for Windows: ./zcutil/build-win.sh ``` +Building +-------- + +First time you'll need to get assorted startup values downloaded. This takes a moderate amount of time once but then does niot need to be repeated unless you bring a new system up. The command is: +``` +./zcutil/fetch-params.sh +``` +Building for Ubunutu/Mint: +``` +./zcutil/build.sh +``` +Building for Mac OS/X: +``` +./zcutil/build-mac.sh +``` +Building for Windows: +``` +./zcutil/build-win.sh +``` + Komodo ------ We have a release process that goes through several stages before it reaches master. This allows the most conservative users just use the master branch, which is only updated after the other branches have signed off on a release. diff --git a/kmd/assemble b/kmd/assemble new file mode 100755 index 000000000..30ce5d327 --- /dev/null +++ b/kmd/assemble @@ -0,0 +1,4 @@ +cp ../src/komodod . +cp ../src/komodo-cli . +tar -czf kmd.tar.gz komodod komodo-cli verus verusd + diff --git a/kmd/verus b/kmd/verus new file mode 100755 index 000000000..956ac71c4 --- /dev/null +++ b/kmd/verus @@ -0,0 +1,7 @@ +#!/bin/bash + +#set working directory to the location of this script +DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" +cd $DIR + +../komodo-cli -ac_name=VRSC "$@" diff --git a/kmd/verusd b/kmd/verusd new file mode 100755 index 000000000..7ec4f6246 --- /dev/null +++ b/kmd/verusd @@ -0,0 +1,2 @@ +./komodod -ac_name=VRSC -ac_algo=verushash -ac_cc=1 -ac_veruspos=50 -ac_supply=0 -ac_eras=3 -ac_reward=0,38400000000,2400000000 -ac_halving=1,43200,1051920 -ac_decay=100000000,0,0 -ac_end=10080,226080,0 -ac_timelockgte=19200000000 -ac_timeunlockfrom=129600 -ac_timeunlockto=1180800 -addnode=185.25.48.72 -addnode=185.25.48.236 -addnode=185.64.105.111 "$@" + diff --git a/src/pow/tromp/equi_miner.h b/src/pow/tromp/equi_miner.h index ae527827a..d53d0d8aa 100644 --- a/src/pow/tromp/equi_miner.h +++ b/src/pow/tromp/equi_miner.h @@ -25,7 +25,13 @@ #include typedef uint16_t u16; +#ifdef _WIN32 +typedef unsigned long long u64; +#elif __linux__ typedef uint64_t u64; +#else +typedef unsigned long u64; +#endif #ifdef EQUIHASH_TROMP_ATOMIC #include diff --git a/zcutil/build-win.sh b/zcutil/build-win.sh index 07a8ce89e..a3288e879 100755 --- a/zcutil/build-win.sh +++ b/zcutil/build-win.sh @@ -9,7 +9,8 @@ set -eu -o pipefail set -x cd "$(dirname "$(readlink -f "$0")")/.." -cd depends/ && make HOST=$HOST V=1 NO_QT=1 && cd ../ +cd depends/ && make HOST=$HOST V=1 NO_QT=1 +cd .. ./autogen.sh CONFIG_SITE=$PWD/depends/x86_64-w64-mingw32/share/config.site CXXFLAGS="-DPTW32_STATIC_LIB -DCURL_STATICLIB -DCURVE_ALT_BN128 -fopenmp -pthread" ./configure --prefix="${PREFIX}" --host=x86_64-w64-mingw32 --enable-static --disable-shared sed -i 's/-lboost_system-mt /-lboost_system-mt-s /' configure