Skip to content

Commit

Permalink
Merge pull request #744 from pmienk/version3
Browse files Browse the repository at this point in the history
Regenerate artifacts.
  • Loading branch information
pmienk authored Feb 10, 2024
2 parents 8461904 + 86d3a45 commit 7b744a4
Show file tree
Hide file tree
Showing 3 changed files with 101 additions and 67 deletions.
20 changes: 10 additions & 10 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -119,7 +119,7 @@ jobs:

steps:
- name: Checkout repository
uses: actions/checkout@v3
uses: actions/checkout@v4

- name: Prepare toolchain [generic]
run: |
Expand All @@ -140,7 +140,7 @@ jobs:
shell: bash
run: |
WORKSPACE_SUBPATH="${GITHUB_WORKSPACE%libbitcoin-explorer}"
echo "LIBBITCOIN_SRC_PATH=$WORKSPACE_SUBPATH" >> $GITHUB_ENV
echo "LIBBITCOIN_SRC_PATH=${WORKSPACE_SUBPATH}" >> $GITHUB_ENV
if [[ ${{ matrix.assert }} == 'ndebug' ]]; then
echo "ASSERT_NDEBUG=--enable-ndebug" >> $GITHUB_ENV
else
Expand All @@ -152,7 +152,7 @@ jobs:
echo "LINKAGE=--disable-shared" >> $GITHUB_ENV
fi
if [[ ${{ matrix.link }} == 'dynamic' ]]; then
echo "LDFLAGS=-Wl,-rpath,$WORKSPACE_SUBPATH/prefix/lib" >> $GITHUB_ENV
echo "LDFLAGS=-Wl,-rpath,${WORKSPACE_SUBPATH}prefix/lib" >> $GITHUB_ENV
fi
- name: Display Compiler details
Expand Down Expand Up @@ -349,7 +349,7 @@ jobs:

steps:
- name: Checkout repository
uses: actions/checkout@v3
uses: actions/checkout@v4

- name: Prepare toolchain [generic]
run: |
Expand All @@ -370,7 +370,7 @@ jobs:
shell: bash
run: |
WORKSPACE_SUBPATH="${GITHUB_WORKSPACE%libbitcoin-explorer}"
echo "LIBBITCOIN_SRC_PATH=$WORKSPACE_SUBPATH" >> $GITHUB_ENV
echo "LIBBITCOIN_SRC_PATH=${WORKSPACE_SUBPATH}" >> $GITHUB_ENV
if [[ ${{ matrix.packager }} == 'brew' ]]; then
echo "CMAKE_LIBRARY_PATH=/usr/local/lib" >> $GITHUB_ENV
fi
Expand All @@ -385,7 +385,7 @@ jobs:
echo "LINKAGE=--disable-shared" >> $GITHUB_ENV
fi
if [[ ${{ matrix.link }} == 'dynamic' ]]; then
echo "LDFLAGS=-Wl,-rpath,$WORKSPACE_SUBPATH/prefix/lib" >> $GITHUB_ENV
echo "LDFLAGS=-Wl,-rpath,${WORKSPACE_SUBPATH}prefix/lib" >> $GITHUB_ENV
fi
- name: Display Compiler details
Expand Down Expand Up @@ -550,7 +550,7 @@ jobs:

steps:
- name: Checkout repository
uses: actions/checkout@v3
uses: actions/checkout@v4

- name: Prepare toolchain [generic]
run: |
Expand All @@ -571,7 +571,7 @@ jobs:
shell: bash
run: |
WORKSPACE_SUBPATH="${GITHUB_WORKSPACE%libbitcoin-explorer}"
echo "LIBBITCOIN_SRC_PATH=$WORKSPACE_SUBPATH" >> $GITHUB_ENV
echo "LIBBITCOIN_SRC_PATH=${WORKSPACE_SUBPATH}" >> $GITHUB_ENV
if [[ ${{ matrix.packager }} == 'brew' ]]; then
echo "CMAKE_LIBRARY_PATH=/usr/local/lib" >> $GITHUB_ENV
fi
Expand All @@ -586,7 +586,7 @@ jobs:
echo "LINKAGE=--disable-shared" >> $GITHUB_ENV
fi
if [[ ${{ matrix.link }} == 'dynamic' ]]; then
echo "LDFLAGS=-Wl,-rpath,$WORKSPACE_SUBPATH/prefix/${{ matrix.preset }}/lib" >> $GITHUB_ENV
echo "LDFLAGS=-Wl,-rpath,${WORKSPACE_SUBPATH}prefix/${{ matrix.preset }}/lib" >> $GITHUB_ENV
fi
- name: Display Compiler details
Expand Down Expand Up @@ -724,7 +724,7 @@ jobs:
msbuild-architecture: x64

- name: Checkout repository
uses: actions/checkout@v3
uses: actions/checkout@v4

- name: Initialize SDK
shell: powershell
Expand Down
142 changes: 85 additions & 57 deletions builds/cmake/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@

# libbitcoin-explorer project configuration.
#------------------------------------------------------------------------------
cmake_minimum_required(VERSION 3.5 FATAL_ERROR)
cmake_minimum_required(VERSION 3.18 FATAL_ERROR)

project(libbitcoin-explorer LANGUAGES C CXX)

Expand All @@ -18,6 +18,7 @@ include(CheckIncludeFiles)
include(CheckSymbolExists)
include(CheckCXXCompilerFlag)
include(CheckCXXSourceCompiles)
include(CheckLinkerFlag)

set_property(GLOBAL PROPERTY USE_FOLDERS ON)

Expand Down Expand Up @@ -166,11 +167,7 @@ find_package( Boost 1.73.0 REQUIRED COMPONENTS

set( boost_unit_test_framework_LIBS "-lboost_unit_test_framework" )

if (enable-ndebug)
set( Boost_LIBRARY_DIR "${Boost_LIBRARY_DIR_DEBUG}" )
else ()
set( Boost_LIBRARY_DIR "${Boost_LIBRARY_DIR_RELEASE}" )
endif()
set( Boost_LIBRARY_DIR $<IF:$<BOOL:${enable-ndebug}>,"${Boost_LIBRARY_DIR_RELEASE}","${Boost_LIBRARY_DIR_DEBUG}">)

set( boost_CPPFLAGS "-I${Boost_INCLUDE_DIR}" )
set( boost_LDFLAGS "-L${Boost_LIBRARY_DIR}" )
Expand All @@ -195,52 +192,78 @@ if ((${CMAKE_SYSTEM_NAME} MATCHES "Linux"))
find_package( Dl REQUIRED )
endif()

# Define project common includes directories
# Define project common includes for build.
#------------------------------------------------------------------------------
if (BUILD_SHARED_LIBS)
include_directories( SYSTEM
${bitcoin_client_INCLUDE_DIRS}
${bitcoin_network_INCLUDE_DIRS}
${dl_INCLUDE_DIRS} )
set( bitcoin_client_FOR_BUILD_INCLUDE_DIRS ${bitcoin_client_INCLUDE_DIRS} CACHE STRING "Placeholder" )
set( bitcoin_network_FOR_BUILD_INCLUDE_DIRS ${bitcoin_network_INCLUDE_DIRS} CACHE STRING "Placeholder" )
else()
include_directories( SYSTEM
${bitcoin_client_STATIC_INCLUDE_DIRS}
${bitcoin_network_STATIC_INCLUDE_DIRS}
${dl_INCLUDE_DIRS} )
set( bitcoin_client_FOR_BUILD_INCLUDE_DIRS ${bitcoin_client_STATIC_INCLUDE_DIRS} CACHE STRING "Placeholder" )
set( bitcoin_network_FOR_BUILD_INCLUDE_DIRS ${bitcoin_network_STATIC_INCLUDE_DIRS} CACHE STRING "Placeholder" )
endif()

# Define project common library directories
# Define project common includes directories
#------------------------------------------------------------------------------
include_directories( SYSTEM
${bitcoin_client_FOR_BUILD_INCLUDE_DIRS}
${bitcoin_network_FOR_BUILD_INCLUDE_DIRS}
${dl_INCLUDE_DIRS} )

# Define project common library directories for build.
#------------------------------------------------------------------------------
if (BUILD_SHARED_LIBS)
link_directories(
${bitcoin_client_LIBRARY_DIRS}
${bitcoin_network_LIBRARY_DIRS}
${dl_LIBRARY_DIRS} )
set( bitcoin_client_FOR_BUILD_LIBRARY_DIRS ${bitcoin_client_LIBRARY_DIRS} CACHE STRING "Placeholder" )
set( bitcoin_network_FOR_BUILD_LIBRARY_DIRS ${bitcoin_network_LIBRARY_DIRS} CACHE STRING "Placeholder" )
else()
link_directories(
${bitcoin_client_STATIC_LIBRARY_DIRS}
${bitcoin_network_STATIC_LIBRARY_DIRS}
${dl_LIBRARY_DIRS} )
set( bitcoin_client_FOR_BUILD_LIBRARY_DIRS ${bitcoin_client_STATIC_LIBRARY_DIRS} CACHE STRING "Placeholder" )
set( bitcoin_network_FOR_BUILD_LIBRARY_DIRS ${bitcoin_network_STATIC_LIBRARY_DIRS} CACHE STRING "Placeholder" )
endif()

# Define project common library directories
#------------------------------------------------------------------------------
link_directories(
${bitcoin_client_FOR_BUILD_LIBRARY_DIRS}
${bitcoin_network_FOR_BUILD_LIBRARY_DIRS}
${dl_LIBRARY_DIRS} )

# Define project common linker flags.
#------------------------------------------------------------------------------
check_linker_flag(CXX "-no_fixup_chains" "no_fixup_chains_FOUND")

if (no_fixup_chains_FOUND)
add_link_options("-no_fixup_chains")
endif()

check_linker_flag(CXX "-fstack-protector" "fstack_protector_FOUND")

if (fstack_protector_FOUND)
add_link_options("-fstack-protector")
endif()

check_linker_flag(CXX "-fstack-protector-all" "fstack_protector_all_FOUND")

if (fstack_protector_all_FOUND)
add_link_options("-fstack-protector-all")
endif()

# Define project common libraries/linker flags.

# Define common library usage for build.
#------------------------------------------------------------------------------
if (BUILD_SHARED_LIBS)
link_libraries(
"-fstack-protector"
"-fstack-protector-all"
${bitcoin_client_LIBRARIES}
${bitcoin_network_LIBRARIES}
${dl_LIBRARIES} )
set( bitcoin_client_FOR_BUILD_LIBRARIES ${bitcoin_client_LIBRARIES} CACHE STRING "Placeholder" )
set( bitcoin_network_FOR_BUILD_LIBRARIES ${bitcoin_network_LIBRARIES} CACHE STRING "Placeholder" )
else()
link_libraries(
"-fstack-protector"
"-fstack-protector-all"
${bitcoin_client_STATIC_LIBRARIES}
${bitcoin_network_STATIC_LIBRARIES}
${dl_LIBRARIES} )
set( bitcoin_client_FOR_BUILD_LIBRARIES ${bitcoin_client_STATIC_LIBRARIES} CACHE STRING "Placeholder" )
set( bitcoin_network_FOR_BUILD_LIBRARIES ${bitcoin_network_STATIC_LIBRARIES} CACHE STRING "Placeholder" )
endif()

# Define project common libraries.
#------------------------------------------------------------------------------
link_libraries(
${bitcoin_client_FOR_BUILD_LIBRARIES}
${bitcoin_network_FOR_BUILD_LIBRARIES}
${dl_LIBRARIES} )

add_definitions(
-DSYSCONFDIR=\"${sysconfdir}\" )

Expand Down Expand Up @@ -370,39 +393,44 @@ add_library( ${CANONICAL_LIB_NAME}
"../../src/config/transaction.cpp"
"../../src/config/wrapper.cpp" )

# ${CANONICAL_LIB_NAME} project specific include directories.
# ${CANONICAL_LIB_NAME} project specific include directory normalization for build.
#------------------------------------------------------------------------------
if (BUILD_SHARED_LIBS)
target_include_directories( ${CANONICAL_LIB_NAME} PRIVATE
"../../include"
${bitcoin_client_INCLUDE_DIRS}
${bitcoin_network_INCLUDE_DIRS}
${dl_INCLUDE_DIRS} )
set( bitcoin_client_FOR_BUILD_INCLUDE_DIRS ${bitcoin_client_INCLUDE_DIRS} CACHE STRING "Placeholder" )
set( bitcoin_network_FOR_BUILD_INCLUDE_DIRS ${bitcoin_network_INCLUDE_DIRS} CACHE STRING "Placeholder" )
else()
target_include_directories( ${CANONICAL_LIB_NAME} PRIVATE
"../../include"
${bitcoin_client_STATIC_INCLUDE_DIRS}
${bitcoin_network_STATIC_INCLUDE_DIRS}
${dl_INCLUDE_DIRS} )
set( bitcoin_client_FOR_BUILD_INCLUDE_DIRS ${bitcoin_client_STATIC_INCLUDE_DIRS} CACHE STRING "Placeholder" )
set( bitcoin_network_FOR_BUILD_INCLUDE_DIRS ${bitcoin_network_STATIC_INCLUDE_DIRS} CACHE STRING "Placeholder" )
endif()

# ${CANONICAL_LIB_NAME} project specific include directories.
#------------------------------------------------------------------------------
target_include_directories( ${CANONICAL_LIB_NAME} PRIVATE
"../../include"
${bitcoin_client_FOR_BUILD_INCLUDE_DIRS}
${bitcoin_network_FOR_BUILD_INCLUDE_DIRS}
${dl_INCLUDE_DIRS} )

target_include_directories( ${CANONICAL_LIB_NAME} PUBLIC
"../../include" )

# ${CANONICAL_LIB_NAME} project specific libraries/linker flags.
# ${CANONICAL_LIB_NAME} project specific libraries noramalization for build.
#------------------------------------------------------------------------------
if (BUILD_SHARED_LIBS)
target_link_libraries( ${CANONICAL_LIB_NAME}
${bitcoin_client_LIBRARIES}
${bitcoin_network_LIBRARIES}
${dl_LIBRARIES} )
set( bitcoin_client_FOR_BUILD_LIBRARIES ${bitcoin_client_LIBRARIES} CACHE STRING "Placeholder" )
set( bitcoin_network_FOR_BUILD_LIBRARIES ${bitcoin_network_LIBRARIES} CACHE STRING "Placeholder" )
else()
target_link_libraries( ${CANONICAL_LIB_NAME}
${bitcoin_client_STATIC_LIBRARIES}
${bitcoin_network_STATIC_LIBRARIES}
${dl_LIBRARIES} )
set( bitcoin_client_FOR_BUILD_LIBRARIES ${bitcoin_client_STATIC_LIBRARIES} CACHE STRING "Placeholder" )
set( bitcoin_network_FOR_BUILD_LIBRARIES ${bitcoin_network_STATIC_LIBRARIES} CACHE STRING "Placeholder" )
endif()

# ${CANONICAL_LIB_NAME} project specific libraries/linker flags.
#------------------------------------------------------------------------------
target_link_libraries( ${CANONICAL_LIB_NAME}
${bitcoin_client_FOR_BUILD_LIBRARIES}
${bitcoin_network_FOR_BUILD_LIBRARIES}
${dl_LIBRARIES} )

# Define bx project.
#------------------------------------------------------------------------------
if (with-console)
Expand Down
6 changes: 6 additions & 0 deletions configure.ac
Original file line number Diff line number Diff line change
Expand Up @@ -231,6 +231,12 @@ AS_CASE([${CC}], [*clang*],
[AX_CHECK_COMPILE_FLAG([-Wno-mismatched-tags],
[CXXFLAGS="$CXXFLAGS -Wno-mismatched-tags"])])

# Address -undefined dynamic_lookup MacOS error.
#------------------------------------------------------------------------------
AS_CASE([${CC}], [*],
[AX_CHECK_LINK_FLAG([-no_fixup_chains],
[LDFLAGS="$LDFLAGS -no_fixup_chains"])])

# Protect stack.
#------------------------------------------------------------------------------
AS_CASE([${CC}], [*],
Expand Down

0 comments on commit 7b744a4

Please sign in to comment.