10000 Merge branch 'release/1.8.0' · dehancer/dehancer-gpulib-cpp@b9b793b · GitHub
[go: up one dir, main page]

Skip to content

Commit b9b793b

Browse files
committed
Merge branch 'release/1.8.0'
2 parents 884513a + 585548d commit b9b793b

File tree

22 files changed

+961
-599
lines changed

22 files changed

+961
-599
lines changed

.idea/cmake.xml

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

CMakeLists.txt

Lines changed: 53 additions & 98 deletions
Original file line numberDiff line numberDiff line change
@@ -6,21 +6,28 @@ cmake_minimum_required(VERSION 3.22)
66
# dehancer-common-cpp:0.14.0
77
# base64cpp:1.2.0
88
# ed25519cpp:1.4.0
9-
# dehancer-xmp-cpp:0.10.0
10-
# dehancer-maths-cpp:0.8.0
9+
# dehancer-xmp-cpp:0.11.0
10+
# dehancer-maths-cpp:0.9.0
1111
# dehancer-opencl-helper:0.5.0
1212
#
1313

1414
set(GIT_TAG_dehancer_xmp_cpp "develop")
1515
set(GIT_TAG_dehancer_maths_cpp "develop")
1616
set(GIT_TAG_dehancer_opencl_helper "develop")
1717

18-
if(NOT CMAKE_BUILD_TYPE STREQUAL "Debug")
19-
set(GIT_TAG_dehancer_xmp_cpp "0.10.0")
20-
set(GIT_TAG_dehancer_maths_cpp "0.8.0")
18+
if(NOT DEHANCER_DEBUG)
19+
set(GIT_TAG_dehancer_xmp_cpp "0.11.0")
20+
set(GIT_TAG_dehancer_maths_cpp "0.9.0")
2121
set(GIT_TAG_dehancer_opencl_helper "0.5.0")
2222
endif ()
2323

24+
file(TO_CMAKE_PATH "${CMAKE_INSTALL_PREFIX}" CMAKE_INSTALL_PREFIX)
25+
file(TO_CMAKE_PATH "$ENV{PKG_CONFIG_PATH}" PKG_CONFIG_PATH)
26+
set(ENV{PKG_CONFIG_PATH} ${PKG_CONFIG_PATH})
27+
28+
message(STATUS "CMAKE_INSTALL_PREFIX: ${CMAKE_INSTALL_PREFIX}")
29+
message(STATUS "PKG_CONFIG_PATH: $ENV{PKG_CONFIG_PATH}")
30+
2431
#
2532
# Project
2633
#
@@ -105,6 +112,12 @@ if(DEHANCER_CONTROLLED_SINGLETON)
105112
add_definitions(-DDEHANCER_CONTROLLED_SINGLETON=1)
106113
endif()
107114

115+
#
116+
# External projects
117+
#
118+
include(ExternalProject)
119+
include(FetchContent)
120+
108121
# googletest, etc
109122
set (EXTERNAL_LOCATION ${CMAKE_CURRENT_SOURCE_DIR}/external)
110123
set (EXTERNAL_INSTALL_LOCATION ${CMAKE_BINARY_DIR}/external)
@@ -190,7 +203,7 @@ set(BUILD_SHARED_LIBS OFF)
190203
if (WIN32)
191204
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -EHsc -Wno-deprecated-declarations -Wno-unused-function")
192205
set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} /MTd")
193-
add_definitions(/MT /DWIN32=1 /D_ITERATOR_DEBUG_LEVEL=0 /D_USE_MATH_DEFINES)
206+
add_definitions(/MT /DWIN32=1 /D_ITERATOR_DEBUG_LEVEL=0 /D_USE_MATH_DEFINES /GR /Ob0)
194207

195208
string(TOLOWER ${CMAKE_BUILD_TYPE} BUILD_TYPE)
196209

@@ -231,20 +244,6 @@ else()
231244
endif ()
232245
endif ()
233246

234-
#
235-
# Packages
236-
#
237-
if(WIN32)
238-
set(ENV{PKG_CONFIG_PATH} "$ENV{PKG_CONFIG_PATH};/usr/local/lib/pkgconfig")
239-
set(ENV{PKG_CONFIG_PATH} "$ENV{PKG_CONFIG_PATH};/usr/local/lib64/pkgconfig")
240-
set(ENV{PKG_CONFIG_PATH} "$ENV{PKG_CONFIG_PATH};$ENV{SYSROOT};/usr/local/dehancer/lib/pkgconfig")
241-
else()
242-
set(ENV{PKG_CONFIG_PATH} $ENV{PKG_CONFIG_PATH}:/usr/local/lib/pkgconfig)
243-
set(ENV{PKG_CONFIG_PATH} $ENV{PKG_CONFIG_PATH}:/usr/local/lib64/pkgconfig)
244-
set(ENV{PKG_CONFIG_PATH} $ENV{PKG_CONFIG_PATH}:$ENV{SYSROOT}:/usr/local/dehancer/lib/pkgconfig)
245-
endif ()
246-
247-
248247
if(USE_OPENCOLORIO)
249248
message(STATUS "USE OPENCOLORIO")
250249
#pkg_check_modules(OpenColorIO OpenColorIO)
@@ -290,58 +289,48 @@ else()
290289

291290
endif()
292291

293-
if (LINUX)
294-
set(CMAKE_INSTALL_LIBDIR "lib")
295-
set(DEHANCER_EXT_MATH_LIB)
296292

297-
add_definitions(-D_GLIBCXX_USE_CXX11_ABI=1)
298-
set(FORTRAN_LIB_PATHS ${CMAKE_SYSTEM_LIBRARY_PATH};/usr/lib/gcc/x86_64-linux-gnu/9;/usr/lib/gcc/x86_64-linux-gnu/8;/usr/lib/gcc/x86_64-linux-gnu;/lib64;/lib;/usr/lib64;/usr/lib;/usr/local/lib64;/usr/local/lib;/opt/local/lib64;/opt/local/lib)
293+
#
294+
##
295+
## Maths
296+
##
297+
FetchContent_Declare(
298+
dehancer_maths_cpp
299+
GIT_REPOSITORY https://github.com/dehancer/dehancer-maths-cpp
300+
GIT_TAG ${GIT_TAG_dehancer_maths_cpp}
301+
SOURCE_DIR "${CMAKE_BINARY_DIR}/dehancer_maths_cpp-src"
302+
BINARY_DIR "${CMAKE_BINARY_DIR}/dehancer_maths_cpp-build"
303+
)
299304

300-
find_library(GFORTRAN_LIBRARY
301-
NAMES gfortran
302-
PATHS ${FORTRAN_LIB_PATHS}
303-
)
305+
FetchContent_GetProperties(dehancer_maths_cpp)
306+
FetchContent_MakeAvailable(dehancer_maths_cpp)
307+
if(NOT dehancer_maths_cpp_POPULATED)
308+
FetchContent_Populate(dehancer_maths_cpp)
309+
add_subdirectory(${dehancer_maths_cpp_SOURCE_DIR} ${dehancer_maths_cpp_BINARY_DIR})
310+
endif()
304311

305-
find_library(GQUADMATH_LIBRARY
306-
NAMES quadmath
307-
PATHS ${FORTRAN_LIB_PATHS}
308-
)
312+
include_directories(
313+
${dehancer_maths_cpp_SOURCE_DIR}/include
314+
${armadillo_SOURCE_DIR}/include
315+
)
309316

310-
message("GFORTRAN_LIBRARY: ${GFORTRAN_LIBRARY}")
317+
set(COMMON_LIBRARIES dehancer_maths_cpp;${COMMON_LIBRARIES})
311318

312-
# foreach(v ${BLAS_LIBRARIES})
313-
# string(REPLACE ".so" ".a" vv ${v})
314-
# set(DEHANCER_EXT_MATH_LIB ${DEHANCER_EXT_MATH_LIB};${vv})
315-
# endforeach()
316-
#
317-
# foreach(v ${LAPACK_LIBRARIES})
318-
# string(REPLACE ".so" ".a" vv ${v})
319-
# set(DEHANCER_EXT_MATH_LIB ${DEHANCER_EXT_MATH_LIB};${vv})
320-
# endforeach()
321-
322-
# foreach(v ${GFORTRAN_LIBRARY})
323-
# string(REPLACE ".so" ".a" vv ${v})
324-
# set(DEHANCER_EXT_MATH_LIB ${DEHANCER_EXT_MATH_LIB};${vv})
325-
# endforeach()
326-
#
327-
# foreach(v ${GQUADMATH_LIBRARY})
328-
# string(REPLACE ".so" ".a" vv ${v})
329-
# set(DEHANCER_EXT_MATH_LIB ${DEHANCER_EXT_MATH_LIB};${vv})
330-
# endforeach()
319+
320+
if (LINUX)
321+
set(CMAKE_INSTALL_LIBDIR "lib")
322+
set(DEHANCER_EXT_MATH_LIB)
323+
324+
add_definitions(-D_GLIBCXX_USE_CXX11_ABI=1)
331325

332326
set(DEHANCER_EXT_MATH_LIB ${LAPACK_LIBRARIES} ${BLAS_LIBRARIES})
333-
find_library(GFORTRAN_LIB NAMES gfortran)
334-
if (gfortran_FOUND)
335-
set(DEHANCER_EXT_MATH_LIB ${DEHANCER_EXT_MATH_LIB};${GFORTRAN_LIB};m)
336-
else()
337-
set(DEHANCER_EXT_MATH_LIB ${DEHANCER_EXT_MATH_LIB};m)
338-
endif()
339327

340328
find_library(DEHANCER_EXT_MATH_LIB REQUIRED ${DEHANCER_EXT_MATH})
341329

342330
else()
343331
set(DEHANCER_EXT_MATH_LIB ${BLAS_LIBRARIES};${LAPACK_LIBRARIES})
344332
endif ()
333+
345334
include_directories(${BLAS_INCLUDE_DIRS} ${LAPACK_INCLUDE_DIRS})
346335
message("BLASS/LAPACK: ${DEHANCER_EXT_MATH_LIB}")
347336

@@ -391,11 +380,6 @@ if (DEHANCER_GPU_CUDA)
391380
endif ()
392381
set(CMAKE_CUDA_COMPILER_FLAGS "-DWIN32 -DWIN64 -D_CONSOLE -D_MBCS /EHsc")
393382

394-
#
395-
# TODO: OpenCL on WIN!
396-
#
397-
# set(DEHANCER_GPU_OPENCL OFF)
398-
399383
else()
400384

401385
set(CMAKE_CUDA_COMPILER_FLAGS "-D_CONSOLE")
@@ -458,9 +442,10 @@ if (DEHANCER_GPU_OPENCL)
458442
set(DEHANCER_GPU_OPENCL ON)
459443
else()
460444
set(DEHANCER_GPU_OPENCL OFF)
461-
message("OpenCL is not found on this platform")
445+
message(FATAL_ERROR "OpenCL is not found on this platform")
462446
endif ()
463447
add_definitions(-DDEHANCER_GPU_OPENCL=1)
448+
message(STATUS "OpenCL: ${OpenCL_INCLUDE_DIRS}")
464449
endif ()
465450

466451

@@ -510,13 +495,7 @@ if (DEHANCER_GPU_CUDA)
510495
endif ()
511496

512497
#
513-
# External projects
514-
#
515-
include(ExternalProject)
516-
include(FetchContent)
517-
518-
#
519-
# Global setttings
498+
# Global settings
520499
#
521500
set(VERSION_FILE "version.txt")
522501

@@ -696,31 +675,6 @@ else ()
696675

697676
endif ()
698677

699-
#
700-
##
701-
## Maths
702-
##
703-
FetchContent_Declare(
704-
dehancer_maths_cpp
705-
GIT_REPOSITORY https://github.com/dehancer/dehancer-maths-cpp
706-
GIT_TAG ${GIT_TAG_dehancer_maths_cpp}
707-
SOURCE_DIR "${CMAKE_BINARY_DIR}/dehancer_maths_cpp-src"
708-
BINARY_DIR "${CMAKE_BINARY_DIR}/dehancer_maths_cpp-build"
709-
)
710-
711-
FetchContent_GetProperties(dehancer_maths_cpp)
712-
if(NOT dehancer_maths_cpp_POPULATED)
713-
FetchContent_Populate(dehancer_maths_cpp)
714-
add_subdirectory(${dehancer_maths_cpp_SOURCE_DIR} ${dehancer_maths_cpp_BINARY_DIR})
715-
endif()
716-
717-
include_directories(
718-
${dehancer_maths_cpp_SOURCE_DIR}/include
719-
${armadillo_SOURCE_DIR}/include
720-
)
721-
722-
set(COMMON_LIBRARIES dehancer_maths_cpp;${COMMON_LIBRARIES})
723-
724678
if(USE_OPENCOLORIO)
725679
#
726680
# AcademySoftwareFoundation OpenColorIO. ACES and etc...
@@ -802,7 +756,8 @@ set(COMMON_LIBRARIES
802756
${CMAKE_DL_LIBS};
803757
)
804758

805-
message("COMMON_LIBRARIES: ${COMMON_LIBRARIES}")
759+
message(STATUS "COMMON_LIBRARIES: ${COMMON_LIBRARIES}")
760+
message(STATUS "CMAKE_INSTALL_PREFIX: ${CMAKE_INSTALL_PREFIX}")
806761

807762
if (BUILD_UTILS)
808763
if (NOT IOS)

0 commit comments

Comments
 (0)
0