Skip to content

Commit 958ba81

Browse files
allnesaobolensk
andauthored
Remove boost (#342)
Co-authored-by: Arseniy Obolenskiy <[email protected]>
1 parent f9a8342 commit 958ba81

File tree

19 files changed

+137
-116
lines changed

19 files changed

+137
-116
lines changed

.github/workflows/main.yml

Lines changed: 15 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -217,6 +217,7 @@ jobs:
217217
- name: CMake configure
218218
run: >
219219
cmake -S . -B build
220+
-D CMAKE_C_COMPILER_LAUNCHER=ccache -D CMAKE_CXX_COMPILER_LAUNCHER=ccache
220221
-G Ninja -D USE_SEQ=ON -D USE_MPI=ON -D USE_OMP=ON -D USE_TBB=ON -D USE_STL=ON
221222
-D USE_FUNC_TESTS=ON -D USE_PERF_TESTS=ON
222223
-D CMAKE_BUILD_TYPE=RELEASE -DCMAKE_INSTALL_PREFIX=install
@@ -364,7 +365,8 @@ jobs:
364365
run: |
365366
sudo add-apt-repository ppa:ubuntu-toolchain-r/test
366367
sudo apt-get update
367-
sudo apt-get install --no-install-recommends -y ninja-build libmpich-dev mpi* openmpi-bin python3-pip
368+
sudo apt-get install --no-install-recommends -y ninja-build python3-pip \
369+
openmpi-bin openmpi-common libopenmpi-dev
368370
wget https://apt.llvm.org/llvm.sh
369371
chmod u+x llvm.sh
370372
sudo ./llvm.sh 19 all
@@ -381,7 +383,7 @@ jobs:
381383
-G Ninja -D USE_SEQ=ON -D USE_MPI=ON -D USE_OMP=ON -D USE_TBB=ON -D USE_STL=ON
382384
-D USE_FUNC_TESTS=ON -D USE_PERF_TESTS=ON
383385
-D CMAKE_BUILD_TYPE=RELEASE -D ENABLE_ADDRESS_SANITIZER=ON -D ENABLE_UB_SANITIZER=ON
384-
-DCMAKE_INSTALL_PREFIX=install
386+
-D CMAKE_INSTALL_PREFIX=install
385387
env:
386388
CC: clang-19
387389
CXX: clang++-19
@@ -863,14 +865,23 @@ jobs:
863865
uses: microsoft/setup-msbuild@v2
864866
with:
865867
vs-version: 'latest'
868+
- name: Setup MPI
869+
uses: mpi4py/setup-mpi@v1
870+
with:
871+
mpi: msmpi
872+
- name: Setup ccache
873+
uses: Chocobo1/setup-ccache-action@v1
874+
with:
875+
windows_compile_environment: msvc
866876
- name: Setup ninja
867877
uses: seanmiddleditch/gha-setup-ninja@v6
868878
- name: Setup MSVC for Ninja again
869879
uses: ilammy/msvc-dev-cmd@v1
870880
- name: CMake configure
871881
run: >
872-
cmake -S . -B build -D CMAKE_C_COMPILER=clang-cl -DCMAKE_CXX_COMPILER=clang-cl
873-
-D USE_SEQ=ON -D USE_MPI=OFF -D USE_OMP=OFF -D USE_TBB=ON -D USE_STL=ON
882+
cmake -S . -B build -G Ninja -D CMAKE_C_COMPILER=clang-cl -DCMAKE_CXX_COMPILER=clang-cl
883+
-D CMAKE_C_COMPILER_LAUNCHER=ccache -D CMAKE_CXX_COMPILER_LAUNCHER=ccache
884+
-D USE_SEQ=ON -D USE_MPI=ON -D USE_OMP=ON -D USE_TBB=ON -D USE_STL=ON
874885
-D USE_FUNC_TESTS=ON -D USE_PERF_TESTS=ON
875886
-D CMAKE_BUILD_TYPE=RELEASE -DCMAKE_INSTALL_PREFIX=install
876887
env:

.gitmodules

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,6 @@
11
[submodule "3rdparty/googletest"]
22
path = 3rdparty/googletest
33
url = https://github.com/google/googletest
4-
[submodule "3rdparty/boost"]
5-
path = 3rdparty/boost
6-
url = https://github.com/boostorg/boost
74
[submodule "3rdparty/onetbb"]
85
path = 3rdparty/onetbb
96
url = https://github.com/uxlfoundation/oneTBB

3rdparty/boost

Lines changed: 0 additions & 1 deletion
This file was deleted.

cmake/boost.cmake

Lines changed: 0 additions & 24 deletions
This file was deleted.

cmake/configure.cmake

Lines changed: 24 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,11 @@ set( CMAKE_ARCHIVE_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/arch" )
1818
set( CMAKE_LIBRARY_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/lib" )
1919
set( CMAKE_RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/bin" )
2020

21-
set( CMAKE_CXX_STANDARD 20 )
21+
if ( MSVC AND (CMAKE_C_COMPILER_ID STREQUAL "Clang") AND (CMAKE_CXX_COMPILER_ID STREQUAL "Clang"))
22+
set( CMAKE_CXX_STANDARD 17 )
23+
else ()
24+
set( CMAKE_CXX_STANDARD 20 )
25+
endif ()
2226

2327
if( UNIX )
2428
set(COMMON_COMPILER_FLAGS
@@ -45,6 +49,11 @@ if( UNIX )
4549
"${CMAKE_C_FLAGS} \
4650
-Wold-style-definition \
4751
-Wmissing-prototypes")
52+
53+
if (${ENABLE_ADDRESS_SANITIZER} OR ${ENABLE_UB_SANITIZER})
54+
set (COMMON_COMPILER_FLAGS "${COMMON_COMPILER_FLAGS} -Wno-cast-align")
55+
endif()
56+
4857
set (COMMON_COMPILER_FLAGS "${COMMON_COMPILER_FLAGS} -Werror")
4958

5059
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${COMMON_COMPILER_FLAGS}")
@@ -56,11 +65,19 @@ if( UNIX )
5665
endif()
5766

5867
if( MSVC )
68+
if ((CMAKE_C_COMPILER_ID STREQUAL "Clang") AND (CMAKE_CXX_COMPILER_ID STREQUAL "Clang"))
69+
set(COMMON_COMPILER_FLAGS
70+
"-Wno-tautological-pointer-compare \
71+
-Wno-ignored-attributes")
72+
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${COMMON_COMPILER_FLAGS}")
73+
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${COMMON_COMPILER_FLAGS}")
74+
endif()
5975
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS}")
60-
set(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} /W4 /wd4267 /wd4244 /wd4100 /WX" )
61-
set(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} /W4 /wd4267 /wd4244 /wd4100 /WX")
62-
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /W4 /wd4267 /wd4244 /wd4100 /WX" )
63-
set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} /W4 /wd4267 /wd4244 /wd4100 /WX" )
64-
set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} /W4 /wd4267 /wd4244 /wd4100 /WX")
65-
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /W4 /wd4267 /wd4244 /wd4100 /WX" )
76+
set(COMMON_FLAGS "/W4 /wd4267 /wd4244 /wd4100 /WX")
77+
set(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} ${COMMON_FLAGS}" )
78+
set(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} ${COMMON_FLAGS}")
79+
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${COMMON_FLAGS}" )
80+
set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} ${COMMON_FLAGS}" )
81+
set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} ${COMMON_FLAGS}")
82+
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${COMMON_FLAGS}" )
6683
endif( MSVC )

cmake/mpi.cmake

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,5 +6,4 @@ if( USE_MPI )
66
else( MPI_FOUND )
77
set( USE_MPI OFF )
88
endif( MPI_FOUND )
9-
include(cmake/boost.cmake)
109
endif( USE_MPI )

cmake/onetbb.cmake

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ if( USE_TBB )
1111
BINARY_DIR "${CMAKE_CURRENT_BINARY_DIR}/ppc_onetbb/build"
1212
INSTALL_DIR "${CMAKE_CURRENT_BINARY_DIR}/ppc_onetbb/install"
1313
CONFIGURE_COMMAND "${CMAKE_COMMAND}" -S "${CMAKE_SOURCE_DIR}/3rdparty/onetbb/" -B "${CMAKE_CURRENT_BINARY_DIR}/ppc_onetbb/build/" -DCMAKE_CXX_FLAGS="-w" -DCMAKE_C_FLAGS="-w"
14-
-DCMAKE_CXX_COMPILER=${CMAKE_CXX_COMPILER} -DCMAKE_C_COMPILER=${CMAKE_C_COMPILER} -D CMAKE_C_COMPILER_LAUNCHER=${CMAKE_C_COMPILER_LAUNCHER} -D CMAKE_CXX_COMPILER_LAUNCHER=${CMAKE_CXX_COMPILER_LAUNCHER}
14+
-DCMAKE_CXX_COMPILER=cl -DCMAKE_C_COMPILER=cl -D CMAKE_C_COMPILER_LAUNCHER=${CMAKE_C_COMPILER_LAUNCHER} -D CMAKE_CXX_COMPILER_LAUNCHER=${CMAKE_CXX_COMPILER_LAUNCHER}
1515
-G${CMAKE_GENERATOR} -DTBB_TEST=OFF -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE}
1616
BUILD_COMMAND "${CMAKE_COMMAND}" --build "${CMAKE_CURRENT_BINARY_DIR}/ppc_onetbb/build" --config ${CMAKE_BUILD_TYPE} --parallel
1717
INSTALL_COMMAND "${CMAKE_COMMAND}" --install "${CMAKE_CURRENT_BINARY_DIR}/ppc_onetbb/build" --prefix "${CMAKE_CURRENT_BINARY_DIR}/ppc_onetbb/install"

cmake/opencv.cmake

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ if(WIN32)
2121
BINARY_DIR "${CMAKE_CURRENT_BINARY_DIR}/ppc_opencv/build"
2222
INSTALL_DIR "${CMAKE_CURRENT_BINARY_DIR}/ppc_opencv/install"
2323
CONFIGURE_COMMAND "${CMAKE_COMMAND}" -S "${CMAKE_SOURCE_DIR}/3rdparty/opencv/" -B "${CMAKE_CURRENT_BINARY_DIR}/ppc_opencv/build/"
24-
-DCMAKE_CXX_COMPILER=${CMAKE_CXX_COMPILER} -DCMAKE_C_COMPILER=${CMAKE_C_COMPILER} -G${CMAKE_GENERATOR} -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE} -D CMAKE_C_COMPILER_LAUNCHER=${CMAKE_C_COMPILER_LAUNCHER}
24+
-DCMAKE_CXX_COMPILER=cl -DCMAKE_C_COMPILER=cl -G${CMAKE_GENERATOR} -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE} -D CMAKE_C_COMPILER_LAUNCHER=${CMAKE_C_COMPILER_LAUNCHER}
2525
-D CMAKE_CXX_COMPILER_LAUNCHER=${CMAKE_CXX_COMPILER_LAUNCHER} -DCMAKE_CXX_FLAGS="-w" -DCMAKE_C_FLAGS="-w" -DENABLE_CCACHE=ON -DBUILD_TESTS=OFF -DBUILD_PERF_TESTS=OFF
2626
-DBUILD_EXAMPLES=OFF -DBUILD_DOCS=OFF -DWITH_CUDA=OFF -DWITH_OPENCL=OFF -DBUILD_LIST="core,highgui,imgcodecs,imgproc,videoio,"
2727
BUILD_COMMAND "${CMAKE_COMMAND}" --build "${CMAKE_CURRENT_BINARY_DIR}/ppc_opencv/build" --config ${CMAKE_BUILD_TYPE} --parallel

modules/core/task/src/task.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -60,10 +60,10 @@ void ppc::core::Task::InternalOrderTest(const std::string& str) {
6060
auto end = std::chrono::high_resolution_clock::now();
6161
auto duration = std::chrono::duration_cast<std::chrono::nanoseconds>(end - tmp_time_point_).count();
6262
auto current_time = static_cast<double>(duration) * 1e-9;
63+
std::stringstream err_msg;
6364
if (current_time < max_test_time_) {
64-
std::cout << "Test time:" << std::fixed << std::setprecision(10) << current_time;
65+
err_msg << "Test time:" << std::fixed << std::setprecision(10) << current_time;
6566
} else {
66-
std::stringstream err_msg;
6767
err_msg << "\nTask execute time need to be: ";
6868
err_msg << "time < " << max_test_time_ << " secs.\n";
6969
err_msg << "Original time in secs: " << current_time << '\n';

modules/core/util/src/util.cpp

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,9 +24,10 @@ int ppc::util::GetPPCNumThreads() {
2424
if (err != 0 || len == 0) {
2525
omp_env[0] = '\0';
2626
}
27+
int num_threads = std::atoi(omp_env);
2728
#else
2829
const char *omp_env = std::getenv("OMP_NUM_THREADS");
29-
#endif
3030
int num_threads = (omp_env != nullptr) ? std::atoi(omp_env) : 1;
31+
#endif
3132
return num_threads;
3233
}

0 commit comments

Comments
 (0)