Skip to content

Commit

Permalink
Newyorkcoin 0.19 patchset over bitcoin/0.19 branch
Browse files Browse the repository at this point in the history
  * Apply #6c853a66e from Litecoin for scrypt/pow validation
  * Apply #f658abaac from Litecoin to disable RBF for transactions
  * All of the important consensus details for NYC; and some quicksync'ing code.
  * File-name level rebrand pass.
  * Set retarget up in preparation for merge mining commit; completed remaining consensus items.
  * Make full use of the multiple peers available to us.
  * Speed synchronization up even further.
  * Merge mining auxpow adapted for bitcoin 0.19
  * Newyorkcoin-ize the merged mining code
  * Change branding from BTC to NYC.
  * Change icon/splash and also wallet fees.
  * Ensure auxpow data gets read from blockindex.
  * Make sure we pay attention to the timespan for consensus coinbasematurity.

  barrystyle 01032020
  • Loading branch information
barrystyle committed Feb 29, 2020
1 parent c9728de commit 61b54d4
Show file tree
Hide file tree
Showing 126 changed files with 2,807 additions and 1,444 deletions.
2 changes: 1 addition & 1 deletion Makefile.am
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ export PYTHONPATH

if BUILD_BITCOIN_LIBS
pkgconfigdir = $(libdir)/pkgconfig
pkgconfig_DATA = libbitcoinconsensus.pc
pkgconfig_DATA = libnewyorkcoinconsensus.pc
endif

BITCOIND_BIN=$(top_builddir)/src/$(BITCOIN_DAEMON_NAME)$(EXEEXT)
Expand Down
6 changes: 3 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
Bitcoin Core integration/staging tree
=====================================
Newyorkcoin integration/staging tree
====================================

https://bitcoincore.org
## Not for use in PROD

What is Bitcoin?
----------------
Expand Down
37 changes: 28 additions & 9 deletions configure.ac
Original file line number Diff line number Diff line change
Expand Up @@ -9,17 +9,17 @@ define(_CLIENT_VERSION_IS_RELEASE, true)
define(_COPYRIGHT_YEAR, 2019)
define(_COPYRIGHT_HOLDERS,[The %s developers])
define(_COPYRIGHT_HOLDERS_SUBSTITUTION,[[Bitcoin Core]])
AC_INIT([Bitcoin Core],m4_join([.], _CLIENT_VERSION_MAJOR, _CLIENT_VERSION_MINOR, _CLIENT_VERSION_REVISION, m4_if(_CLIENT_VERSION_BUILD, [0], [], _CLIENT_VERSION_BUILD))m4_if(_CLIENT_VERSION_RC, [0], [], [rc]_CLIENT_VERSION_RC),[https://github.com/bitcoin/bitcoin/issues],[bitcoin],[https://bitcoincore.org/])
AC_INIT([Newyorkcoin],m4_join([.], _CLIENT_VERSION_MAJOR, _CLIENT_VERSION_MINOR, _CLIENT_VERSION_REVISION, m4_if(_CLIENT_VERSION_BUILD, [0], [], _CLIENT_VERSION_BUILD))m4_if(_CLIENT_VERSION_RC, [0], [], [rc]_CLIENT_VERSION_RC),[],[newyorkcoin],[http://nycoin.community/])
AC_CONFIG_SRCDIR([src/validation.cpp])
AC_CONFIG_HEADERS([src/config/bitcoin-config.h])
AC_CONFIG_HEADERS([src/config/newyorkcoin-config.h])
AC_CONFIG_AUX_DIR([build-aux])
AC_CONFIG_MACRO_DIR([build-aux/m4])

BITCOIN_DAEMON_NAME=bitcoind
BITCOIN_GUI_NAME=bitcoin-qt
BITCOIN_CLI_NAME=bitcoin-cli
BITCOIN_TX_NAME=bitcoin-tx
BITCOIN_WALLET_TOOL_NAME=bitcoin-wallet
BITCOIN_DAEMON_NAME=newyorkcoind
BITCOIN_GUI_NAME=newyorkcoin-qt
BITCOIN_CLI_NAME=newyorkcoin-cli
BITCOIN_TX_NAME=newyorkcoin-tx
BITCOIN_WALLET_TOOL_NAME=newyorkcoin-wallet

dnl Unless the user specified ARFLAGS, force it to be cr
AC_ARG_VAR(ARFLAGS, [Flags for the archiver, defaults to <cr> if not set])
Expand Down Expand Up @@ -228,6 +228,12 @@ AC_ARG_ENABLE([bip70],
[enable_bip70=$enableval],
[enable_bip70=no])

AC_ARG_ENABLE([sse2],
[AS_HELP_STRING([--enable-sse2],
[enable SSE2 instructions in the scrypt library. (default is disabled)])],
[use_sse2=$enableval],
[use_sse2=no])

AC_ARG_WITH([protoc-bindir],[AS_HELP_STRING([--with-protoc-bindir=BIN_DIR],[specify protoc bin path])], [protoc_bin_path=$withval], [])

AC_ARG_ENABLE(man,
Expand Down Expand Up @@ -1060,7 +1066,7 @@ define(MINIMUM_REQUIRED_BOOST, 1.47.0)
dnl Check for boost libs
AX_BOOST_BASE([MINIMUM_REQUIRED_BOOST])
if test x$want_boost = xno; then
AC_MSG_ERROR([[only libbitcoinconsensus can be built without boost]])
AC_MSG_ERROR([[only libnewyorkcoinconsensus can be built without boost]])
fi
AX_BOOST_SYSTEM
AX_BOOST_FILESYSTEM
Expand Down Expand Up @@ -1398,7 +1404,7 @@ AC_MSG_CHECKING([whether to build libraries])
AM_CONDITIONAL([BUILD_BITCOIN_LIBS], [test x$build_bitcoin_libs = xyes])
if test x$build_bitcoin_libs = xyes; then
AC_DEFINE(HAVE_CONSENSUS_LIB, 1, [Define this symbol if the consensus lib has been built])
AC_CONFIG_FILES([libbitcoinconsensus.pc:libbitcoinconsensus.pc.in])
AC_CONFIG_FILES([libnewyorkcoinconsensus.pc:libnewyorkcoinconsensus.pc.in])
fi
AC_MSG_RESULT($build_bitcoin_libs)

Expand Down Expand Up @@ -1529,6 +1535,16 @@ else
BUILD_TEST=""
fi

AC_MSG_CHECKING([whether to enable sse2 instructions])
if test x$use_sse2 != xno; then
AC_MSG_RESULT(yes)
AC_DEFINE([USE_SSE2],[1],[Define if SSE2 support should be compiled in])
use_sse2=yes
CPPFLAGS="$CPPFLAGS -DUSE_SSE2=1"
else
AC_MSG_RESULT(no)
fi

AC_MSG_CHECKING([whether to reduce exports])
if test x$use_reduce_exports = xyes; then
AC_MSG_RESULT([yes])
Expand All @@ -1551,6 +1567,7 @@ AM_CONDITIONAL([ENABLE_QT_TESTS],[test x$BUILD_TEST_QT = xyes])
AM_CONDITIONAL([ENABLE_BIP70],[test x$enable_bip70 = xyes])
AM_CONDITIONAL([ENABLE_BENCH],[test x$use_bench = xyes])
AM_CONDITIONAL([USE_QRCODE], [test x$use_qr = xyes])
AM_CONDITIONAL([USE_SSE2], [test x$use_sse2 = xyes])
AM_CONDITIONAL([USE_LCOV],[test x$use_lcov = xyes])
AM_CONDITIONAL([GLIBC_BACK_COMPAT],[test x$use_glibc_compat = xyes])
AM_CONDITIONAL([HARDEN],[test x$use_hardening = xyes])
Expand Down Expand Up @@ -1608,6 +1625,7 @@ AC_SUBST(SHANI_CXXFLAGS)
AC_SUBST(LIBTOOL_APP_LDFLAGS)
AC_SUBST(USE_UPNP)
AC_SUBST(USE_QRCODE)
AC_SUBST(USE_SSE2)
AC_SUBST(BOOST_LIBS)
AC_SUBST(TESTDEFS)
AC_SUBST(LEVELDB_TARGET_FLAGS)
Expand Down Expand Up @@ -1697,6 +1715,7 @@ echo " with bench = $use_bench"
echo " with upnp = $use_upnp"
echo " use asm = $use_asm"
echo " sanitizers = $use_sanitizers"
echo " scrypt sse2 = $use_sse2"
echo " debug enabled = $enable_debug"
echo " gprof enabled = $enable_gprof"
echo " werror = $enable_werror"
Expand Down
File renamed without changes.
Loading

2 comments on commit 61b54d4

@ltanyc
Copy link
Member

@ltanyc ltanyc commented on 61b54d4 Mar 8, 2020

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the work. It looks like you've spent a lot of time on it. I took a quick look and had some comments/questions that you should consider.

The one thing I didn't find that we had in NYC is the peer filtering since we get some non NYC clients connecting. The check I'm refering to is to make sure peers are connected have newyorkcoin string in the version

@barrystyle
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the work. It looks like you've spent a lot of time on it. I took a quick look and had some comments/questions that you should consider.

The one thing I didn't find that we had in NYC is the peer filtering since we get some non NYC clients connecting. The check I'm refering to is to make sure peers are connected have newyorkcoin string in the version

These clients will be filtered out early on by the checkpoints.

Please sign in to comment.