Skip to content
Snippets Groups Projects
Commit cbba18c7 authored by Oksana Shadura's avatar Oksana Shadura Committed by Oksana Shadura
Browse files

Update CMakeLists.txt for math/mathcore

parent 0cc84190
No related merge requests found
############################################################################
# CMakeLists.txt file for building ROOT io/io package
# CMakeLists.txt file for building ROOT math/mathcore package
############################################################################
set(MATHCORE_HEADERS TRandom.h
TRandom1.h TRandom2.h TRandom3.h TKDTree.h TKDTreeBinning.h TStatistic.h
Math/Error.h Math/IParamFunction.h Math/IFunction.h Math/ParamFunctor.h Math/Functor.h
Math/Minimizer.h Math/MinimizerOptions.h Math/IntegratorOptions.h Math/IOptions.h Math/GenAlgoOptions.h
Math/BasicMinimizer.h Math/MinimTransformFunction.h Math/MinimTransformVariable.h Math/IFunctionfwd.h
Math/Integrator.h Math/VirtualIntegrator.h Math/AllIntegrationTypes.h Math/AdaptiveIntegratorMultiDim.h
Math/IntegratorMultiDim.h Math/Factory.h Math/FitMethodFunction.h Math/GaussIntegrator.h
Math/GaussLegendreIntegrator.h Math/RootFinder.h Math/IRootFinderMethod.h Math/RichardsonDerivator.h
Math/BrentMethods.h Math/BrentMinimizer1D.h Math/BrentRootFinder.h Math/DistSampler.h
Math/DistSamplerOptions.h Math/GoFTest.h Math/SpecFuncMathCore.h Math/DistFuncMathCore.h
Math/ChebyshevPol.h Math/KDTree.h Math/TDataPoint.h Math/TDataPointN.h Math/Delaunay2D.h
Math/Random.h Math/TRandomEngine.h Math/RandomFunctions.h Math/StdEngine.h Math/Math.h
Math/MersenneTwisterEngine.h Math/MixMaxEngine.h TRandomGen.h Math/LCGEngine.h
Math/Types.h Math/Util.h Math/WrappedFunction.h Math/IMinimizer1D.h Math/IParamFunctionfwd.h
Math/MinimizerVariableTransformation.h Math/MultiDimParamFunctionAdapter.h Math/OneDimFunctionAdapter.h
Math/PdfFunc.h Math/PdfFuncMathCore.h Math/ProbFunc.h Math/ProbFuncMathCore.h Math/QuantFunc.h
Math/QuantFuncMathCore.h Math/WrappedParamFunction.h
)
set(HEADERS
Fit/BasicFCN.h
Fit/BinData.h
Fit/Chi2FCN.h
Fit/DataOptions.h
Fit/DataRange.h
Fit/FcnAdapter.h
Fit/FitConfig.h
Fit/FitData.h
Fit/FitExecutionPolicy.h
Fit/FitResult.h
Fit/FitUtil.h
Fit/Fitter.h
Fit/LogLikelihoodFCN.h
Fit/ParameterSettings.h
Fit/PoissonLikelihoodFCN.h
Fit/SparseData.h
Fit/UnBinData.h
Math/AdaptiveIntegratorMultiDim.h
Math/AllIntegrationTypes.h
Math/BasicMinimizer.h
Math/BrentMethods.h
Math/BrentMinimizer1D.h
Math/BrentRootFinder.h
Math/ChebyshevPol.h
Math/Delaunay2D.h
Math/DistFuncMathCore.h
Math/DistSampler.h
Math/DistSamplerOptions.h
Math/Error.h
Math/Factory.h
Math/FitMethodFunction.h
Math/Functor.h
Math/GaussIntegrator.h
Math/GaussLegendreIntegrator.h
Math/GenAlgoOptions.h
Math/GoFTest.h
Math/IFunction.h
Math/IFunctionfwd.h
Math/IMinimizer1D.h
Math/IOptions.h
Math/IParamFunction.h
Math/IParamFunctionfwd.h
Math/IRootFinderMethod.h
Math/Integrator.h
Math/IntegratorMultiDim.h
Math/IntegratorOptions.h
Math/KDTree.h
Math/LCGEngine.h
Math/Math.h
Math/MersenneTwisterEngine.h
Math/MinimTransformFunction.h
Math/MinimTransformVariable.h
Math/Minimizer.h
Math/MinimizerOptions.h
Math/MinimizerVariableTransformation.h
Math/MixMaxEngine.h
Math/MultiDimParamFunctionAdapter.h
Math/OneDimFunctionAdapter.h
Math/ParamFunctor.h
Math/PdfFunc.h
Math/PdfFuncMathCore.h
Math/ProbFunc.h
Math/ProbFuncMathCore.h
Math/QuantFunc.h
Math/QuantFuncMathCore.h
Math/Random.h
Math/RandomFunctions.h
Math/RichardsonDerivator.h
Math/RootFinder.h
Math/SpecFuncMathCore.h
Math/StdEngine.h
Math/TDataPoint.h
Math/TDataPointN.h
Math/TRandomEngine.h
Math/Types.h
Math/Util.h
Math/VirtualIntegrator.h
Math/WrappedFunction.h
Math/WrappedParamFunction.h
TComplex.h
TKDTree.h
TKDTreeBinning.h
TMath.h
TRandom.h
TRandom1.h
TRandom2.h
TRandom3.h
TRandomGen.h
TStatistic.h
)
if(runtime_cxxmodules)
# Adding Math/Math.h to the MathCore module makes the generation of GenVector
# dictionary hand due to a bug in rootcling/clang. The redeclaration chain of
# 'abs' shadow declaration (from stl math.h) is broken.
# FIXME: Revise after a llvm upgrade or reproduce it outside rootcling.
list(REMOVE_ITEM MATHCORE_HEADERS "Math/Math.h")
endif()
if(veccore)
set(MATHCORE_LIBRARIES ${VecCore_LIBRARIES})
set(MATHCORE_BUILTINS VECCORE)
list(REMOVE_ITEM HEADERS "Math/Math.h")
endif()
ROOT_ADD_C_FLAG(_flags -Wno-strict-overflow) # Avoid what it seems a compiler false positive warning
......@@ -44,15 +112,82 @@ if(imt)
set(MATHCORE_DEPENDENCIES Imt)
endif()
ROOT_STANDARD_LIBRARY_PACKAGE(MathCore HEADERS TComplex.h TMath.h ${MATHCORE_HEADERS} Fit/*.h
SOURCES *.cxx *.c
DICTIONARY_OPTIONS "-writeEmptyRootPCM"
LIBRARIES ${CMAKE_THREAD_LIBS_INIT} ${MATHCORE_LIBRARIES}
DEPENDENCIES Core ${MATHCORE_DEPENDENCIES}
BUILTINS ${MATHCORE_BUILTINS})
if(veccore)
target_compile_definitions(MathCore INTERFACE ${VecCore_DEFINITIONS})
set(MATHCORE_BUILTINS VECCORE)
set(MATHCORE_LIBRARIES ${VecCore_LIBRARIES})
endif()
ROOT_STANDARD_LIBRARY_PACKAGE(MathCore
HEADERS
${HEADERS}
SOURCES
src/AdaptiveIntegratorMultiDim.cxx
src/BasicMinimizer.cxx
src/BinData.cxx
src/BrentMethods.cxx
src/BrentMinimizer1D.cxx
src/BrentRootFinder.cxx
src/ChebyshevPol.cxx
src/DataRange.cxx
src/Delaunay2D.cxx
src/DistSampler.cxx
src/DistSamplerOptions.cxx
src/Factory.cxx
src/FitConfig.cxx
src/FitData.cxx
src/FitResult.cxx
src/FitUtil.cxx
src/Fitter.cxx
src/GaussIntegrator.cxx
src/GaussLegendreIntegrator.cxx
src/GenAlgoOptions.cxx
src/GoFTest.cxx
src/Integrator.cxx
src/IntegratorOptions.cxx
src/MersenneTwisterEngine.cxx
src/MinimTransformFunction.cxx
src/MinimizerOptions.cxx
src/MinimizerVariableTransformation.cxx
src/MixMaxEngineImpl17.cxx
src/MixMaxEngineImpl240.cxx
src/MixMaxEngineImpl256.cxx
src/ParameterSettings.cxx
src/PdfFuncMathCore.cxx
src/ProbFuncMathCore.cxx
src/QuantFuncMathCore.cxx
src/RandomFunctions.cxx
src/RichardsonDerivator.cxx
src/RootFinder.cxx
src/SparseData.cxx
src/SpecFuncCephes.cxx
src/SpecFuncCephes.h
src/SpecFuncCephesInv.cxx
src/SpecFuncMathCore.cxx
src/StdEngine.cxx
src/TComplex.cxx
src/TKDTree.cxx
src/TKDTreeBinning.cxx
src/TMath.cxx
src/TRandom.cxx
src/TRandom1.cxx
src/TRandom2.cxx
src/TRandom3.cxx
src/TRandomGen.cxx
src/TStatistic.cxx
src/UnBinData.cxx
src/triangle.c
LIBRARIES
${MATHCORE_LIBRARIES}
DICTIONARY_OPTIONS
-writeEmptyRootPCM
DEPENDENCIES
Core
${MATHCORE_DEPENDENCIES}
BUILTINS
${MATHCORE_BUILTINS}
)
target_compile_definitions(MathCore INTERFACE ${VecCore_DEFINITIONS})
target_link_libraries(MathCore PUBLIC ${CMAKE_THREAD_LIBS_INIT})
ROOT_ADD_TEST_SUBDIRECTORY(test)
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment