mirror of
https://github.com/ceres-solver/ceres-solver.git
synced 2026-08-29 08:34:37 +08:00
Fixes the configuration check in port.h.
Fixes a bug introduced in 12280 that incorrectly used xor for multiple values. Tested it manually by verifying it would fail for 2, 3, or 4 of them defined. Change-Id: I90c2662f4744aceaf0119dbbe072beced3f67c9a
This commit is contained in:
@@ -36,8 +36,24 @@
|
||||
#include <cstddef>
|
||||
#include "ceres/internal/config.h"
|
||||
|
||||
#if !(defined(CERES_USE_OPENMP) ^ defined(CERES_USE_TBB) ^ defined(CERES_USE_CXX11_THREADS) ^ defined(CERES_NO_THREADS))
|
||||
#error CERES_USE_OPENMP, CERES_USE_TBB, CERES_USE_CXX11_THREADS, and CERES_NO_THREADS are mutually exclusive, but multiple are defined.
|
||||
#if defined(CERES_USE_OPENMP)
|
||||
# if defined(CERES_USE_TBB) || defined(CERES_USE_CXX11_THREADS) || defined(CERES_NO_THREADS)
|
||||
# error CERES_USE_OPENMP is mutually exclusive to CERES_USE_TBB, CERES_USE_CXX11_THREADS, and CERES_NO_THREADS
|
||||
# endif
|
||||
#elif defined(CERES_USE_TBB)
|
||||
# if defined(CERES_USE_OPENMP) || defined(CERES_USE_CXX11_THREADS) || defined(CERES_NO_THREADS)
|
||||
# error CERES_USE_TBB is mutually exclusive to CERES_USE_OPENMP, CERES_USE_CXX11_THREADS and CERES_NO_THREADS
|
||||
# endif
|
||||
#elif defined(CERES_USE_CXX11_THREADS)
|
||||
# if defined(CERES_USE_OPENMP) || defined(CERES_USE_TBB) || defined(CERES_NO_THREADS)
|
||||
# error CERES_USE_CXX11_THREADS is mutually exclusive to CERES_USE_OPENMP, CERES_USE_CXX11_THREADS and CERES_NO_THREADS
|
||||
# endif
|
||||
#elif defined(CERES_NO_THREADS)
|
||||
# if defined(CERES_USE_OPENMP) || defined(CERES_USE_TBB) || defined(CERES_USE_CXX11_THREADS)
|
||||
# error CERES_NO_THREADS is mutually exclusive to CERES_USE_OPENMP, CERES_USE_TBB and CERES_USE_CXX11_THREADS
|
||||
# endif
|
||||
#else
|
||||
# error One of CERES_USE_OPENMP, CERES_USE_TBB,CERES_USE_CXX11_THREADS or CERES_NO_THREADS must be defined.
|
||||
#endif
|
||||
|
||||
#if defined(CERES_TR1_MEMORY_HEADER)
|
||||
|
||||
Reference in New Issue
Block a user