Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update toolchains, deps and further cleanup #1857

Merged
merged 36 commits into from
Apr 4, 2023
Merged
Changes from 1 commit
Commits
Show all changes
36 commits
Select commit Hold shift + click to select a range
3817309
Suppress depends related superfluous warnings
prasannavl Mar 29, 2023
4d01ec8
Fix passthrough string quote
prasannavl Mar 29, 2023
074b619
Fix windres, bcrypt failures
prasannavl Apr 2, 2023
8419b02
Cleanup build, workflows, dockerfiles
prasannavl Apr 3, 2023
3002caf
Cleanup comments
prasannavl Apr 3, 2023
a8e8585
Refactor default var setup
prasannavl Apr 3, 2023
779bac9
Cleanup comments
prasannavl Apr 3, 2023
d02392b
Add safe_rm_rf and simplify left file list
prasannavl Apr 3, 2023
71788b4
Fix shellcheck
prasannavl Apr 3, 2023
7255c60
Fix arm core images
prasannavl Apr 3, 2023
7855ba6
More cleanup, unify packaging, safer rm
prasannavl Apr 3, 2023
f7fa1d9
Apply default conf across all arch, conf args append
prasannavl Apr 3, 2023
d70597b
Apply glibc compat only on linux builds
prasannavl Apr 3, 2023
e3e4b23
Clean up obsolete comments
prasannavl Apr 3, 2023
0fa27ad
Cleanup unmaintained files
prasannavl Apr 3, 2023
89fe9a9
Remove install.md
prasannavl Apr 3, 2023
41b58a2
Remove libdeficonsensus dyn lib, defi-wallet
prasannavl Apr 4, 2023
c798744
Enable static linking
prasannavl Apr 4, 2023
570d1b6
Revert boost changes
prasannavl Apr 4, 2023
98fb360
Merge branch 'master' into pvl/cleanup-unmaintained-files
prasannavl Apr 4, 2023
33cb49d
Remove outdated man pages
prasannavl Apr 4, 2023
8f1ffaa
Remove debian packaging related file
prasannavl Apr 4, 2023
34eb5fb
Bump boost min to 1.77, remove obsolete checks
prasannavl Apr 4, 2023
5d5fbf3
Revert boost config cleanup
prasannavl Apr 4, 2023
cda2d7d
More cleanups, nsis, gitian
prasannavl Apr 4, 2023
14184b7
Remove boost reduce exports change
prasannavl Apr 4, 2023
e2830f9
Cleanup boost obsolete check
prasannavl Apr 4, 2023
435c625
Reorganize scripts, merge share and contrib
prasannavl Apr 4, 2023
b9249a7
Fix docker script
prasannavl Apr 4, 2023
ed35ac6
Remove wallet tool test
prasannavl Apr 4, 2023
a4ed14d
static libgcc, disable tests and benches on CI builds
prasannavl Apr 4, 2023
2fc1d78
Fix CI builds to use consistent compilers
prasannavl Apr 4, 2023
6eb1b87
Better consistency in toolchains
prasannavl Apr 4, 2023
c1ebadd
Remove cdrkit, libdmg and switch to docker multiplatform base
prasannavl Apr 4, 2023
9bc463f
Update cppcheck version
prasannavl Apr 4, 2023
15d1a4f
Merge branch 'master' into pvl/post-cleanup
prasannavl Apr 4, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Revert boost config cleanup
prasannavl committed Apr 4, 2023

Verified

This commit was signed with the committer’s verified signature. The key has expired.
prasannavl Prasanna Loganathar
commit 5d5fbf322119590b352a0bb066182c5bb5e560d6
63 changes: 63 additions & 0 deletions configure.ac
Original file line number Diff line number Diff line change
@@ -1049,9 +1049,30 @@ fi
AX_BOOST_SYSTEM
AX_BOOST_FILESYSTEM

dnl Boost 1.56 through 1.62 allow using std::atomic instead of its own atomic
dnl counter implementations. In 1.63 and later the std::atomic approach is default.
m4_pattern_allow(DBOOST_AC_USE_STD_ATOMIC) dnl otherwise it's treated like a macro
BOOST_CPPFLAGS="-DBOOST_MPL_CFG_NO_PREPROCESSED_HEADERS -DBOOST_MPL_LIMIT_LIST_SIZE=50 -DBOOST_SP_USE_STD_ATOMIC -DBOOST_AC_USE_STD_ATOMIC $BOOST_CPPFLAGS"

if test x$use_reduce_exports = xyes; then
AC_MSG_CHECKING([for working boost reduced exports])
TEMP_CPPFLAGS="$CPPFLAGS"
CPPFLAGS="$BOOST_CPPFLAGS $CPPFLAGS"
AC_PREPROC_IFELSE([AC_LANG_PROGRAM([[
@%:@include <boost/version.hpp>
]], [[
#if BOOST_VERSION >= 104900
// Everything is okay
#else
# error Boost version is too old
#endif
]])],[
AC_MSG_RESULT(yes)
],[
AC_MSG_ERROR([boost versions < 1.49 are known to be broken with reduced exports. Use --disable-reduce-exports.])
])
CPPFLAGS="$TEMP_CPPFLAGS"
fi
fi

if test x$use_reduce_exports = xyes; then
@@ -1091,6 +1112,48 @@ if test x$use_tests = xyes; then
fi
fi

if test x$use_boost = xyes; then

BOOST_LIBS="$BOOST_LDFLAGS $BOOST_SYSTEM_LIB $BOOST_FILESYSTEM_LIB"


dnl If boost (prior to 1.57) was built without c++11, it emulated scoped enums
dnl using c++98 constructs. Unfortunately, this implementation detail leaked into
dnl the abi. This was fixed in 1.57.

dnl When building against that installed version using c++11, the headers pick up
dnl on the native c++11 scoped enum support and enable it, however it will fail to
dnl link. This can be worked around by disabling c++11 scoped enums if linking will
dnl fail.
dnl BOOST_NO_SCOPED_ENUMS was changed to BOOST_NO_CXX11_SCOPED_ENUMS in 1.51.

TEMP_LIBS="$LIBS"
LIBS="$BOOST_LIBS $LIBS"
TEMP_CPPFLAGS="$CPPFLAGS"
CPPFLAGS="$CPPFLAGS $BOOST_CPPFLAGS"
AC_MSG_CHECKING([for mismatched boost c++11 scoped enums])
AC_LINK_IFELSE([AC_LANG_PROGRAM([[
#include <boost/config.hpp>
#include <boost/version.hpp>
#if !defined(BOOST_NO_SCOPED_ENUMS) && !defined(BOOST_NO_CXX11_SCOPED_ENUMS) && BOOST_VERSION < 105700
#define BOOST_NO_SCOPED_ENUMS
#define BOOST_NO_CXX11_SCOPED_ENUMS
#define CHECK
#endif
#include <boost/filesystem.hpp>
]],[[
#if defined(CHECK)
boost::filesystem::copy_file("foo", "bar");
#else
choke;
#endif
]])],
[AC_MSG_RESULT(mismatched); BOOST_CPPFLAGS="$BOOST_CPPFLAGS -DBOOST_NO_SCOPED_ENUMS -DBOOST_NO_CXX11_SCOPED_ENUMS"], [AC_MSG_RESULT(ok)])
LIBS="$TEMP_LIBS"
CPPFLAGS="$TEMP_CPPFLAGS"

fi

if test x$use_pkgconfig = xyes; then
: dnl
m4_ifdef(