[arrayfire] 42/248: Changes to examples and test CMakeLists to build *_unified binaries

Ghislain Vaillant ghisvail-guest at moszumanska.debian.org
Tue Nov 17 15:53:52 UTC 2015


This is an automated email from the git hooks/post-receive script.

ghisvail-guest pushed a commit to branch dfsg-clean
in repository arrayfire.

commit e35b5ecd0b7975b609fa2195e7cb6a90f6f597f8
Author: Pavan Yalamanchili <pavan at arrayfire.com>
Date:   Fri Sep 4 19:33:42 2015 -0400

    Changes to examples and test CMakeLists to build *_unified binaries
---
 examples/CMakeLists.txt            | 28 +++++++++++-----------------
 src/api/unified/symbol_manager.cpp |  3 ++-
 test/CMakeLists.txt                | 17 +++++++++++------
 3 files changed, 24 insertions(+), 24 deletions(-)

diff --git a/examples/CMakeLists.txt b/examples/CMakeLists.txt
index 254afe3..c813398 100644
--- a/examples/CMakeLists.txt
+++ b/examples/CMakeLists.txt
@@ -68,25 +68,8 @@ ENDMACRO()
 
 # Collect the source
 FILE(GLOB FILES "*/*.cpp")
-FILE(GLOB UNIFIED_FILES "unified/*.cpp")
 ADD_DEFINITIONS("-DASSETS_DIR=\"${ASSETS_DIR}\"")
 
-IF(${ArrayFire_UNIFIED_FOUND})
-    MESSAGE(STATUS "UNIFIED examples")
-    IF(WIN32)
-        BUILD_ALL("${UNIFIED_FILES}" unified ${ArrayFire_UNIFIED_LIBRARIES} "")
-    ELSE()
-        BUILD_ALL("${UNIFIED_FILES}" unified ${ArrayFire_UNIFIED_LIBRARIES} dl)
-    ENDIF()
-ELSEIF(TARGET af)
-    MESSAGE(STATUS "UNIFIED examples")
-    IF(WIN32)
-        BUILD_ALL("${UNIFIED_FILES}" unified af "")
-    ELSE()
-        BUILD_ALL("${UNIFIED_FILES}" unified af dl)
-    ENDIF()
-ENDIF()
-
 # Next we build each example using every backend.
 if(${ArrayFire_CPU_FOUND})  # variable defined by FIND(ArrayFire ...)
   MESSAGE(STATUS "EXAMPLES: CPU backend is ON.")
@@ -98,6 +81,17 @@ else()
   MESSAGE(STATUS "EXAMPLES: CPU backend is OFF. afcpu was not found.")
 endif()
 
+# Next we build each example using every backend.
+if(${ArrayFire_Unified_FOUND})  # variable defined by FIND(ArrayFire ...)
+  MESSAGE(STATUS "EXAMPLES: UNIFIED backend is ON.")
+  BUILD_ALL("${FILES}" unified ${ArrayFire_Unified_LIBRARIES} "")
+elseif(TARGET af)        # variable defined by the ArrayFire build tree
+  MESSAGE(STATUS "EXAMPLES: UNIFIED backend is ON.")
+  BUILD_ALL("${FILES}" unified af "dl")
+else()
+  MESSAGE(STATUS "EXAMPLES: UNIFIED backend is OFF. af was not found.")
+endif()
+
 if (${CUDA_FOUND})
   if(${ArrayFire_CUDA_FOUND})  # variable defined by FIND(ArrayFire ...)
     FIND_LIBRARY( CUDA_NVVM_LIBRARY
diff --git a/src/api/unified/symbol_manager.cpp b/src/api/unified/symbol_manager.cpp
index 38f3399..ef4c638 100644
--- a/src/api/unified/symbol_manager.cpp
+++ b/src/api/unified/symbol_manager.cpp
@@ -65,8 +65,9 @@ AFSymbolManager::AFSymbolManager()
 AFSymbolManager::~AFSymbolManager()
 {
     for(int i=0; i<NUM_BACKENDS; ++i) {
-        if (bkndHandles[i])
+        if (bkndHandles[i]) {
             closeDynLibrary(bkndHandles[i]);
+        }
     }
 }
 
diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt
index 662a74d..dc28bf1 100644
--- a/test/CMakeLists.txt
+++ b/test/CMakeLists.txt
@@ -5,7 +5,7 @@ FIND_PACKAGE(CUDA QUIET)
 FIND_PACKAGE(OpenCL QUIET)
 
 
-MACRO(CREATE_TESTS BACKEND GTEST_LIBS OTHER_LIBS)
+MACRO(CREATE_TESTS BACKEND LIBNAME GTEST_LIBS OTHER_LIBS)
     STRING(TOUPPER ${BACKEND} DEF_NAME)
 
     FOREACH(FILE ${FILES})
@@ -20,7 +20,7 @@ MACRO(CREATE_TESTS BACKEND GTEST_LIBS OTHER_LIBS)
 
         FILE(GLOB TEST_FILE "${FNAME}.cpp" "${FNAME}.c")
         ADD_EXECUTABLE(${TEST_NAME} ${TEST_FILE})
-        TARGET_LINK_LIBRARIES(${TEST_NAME}  PRIVATE  af${BACKEND}
+        TARGET_LINK_LIBRARIES(${TEST_NAME}  PRIVATE  af${LIBNAME}
                                             PRIVATE ${THREAD_LIB_FLAG}
                                             PRIVATE ${GTEST_LIBS}
                                             PRIVATE ${OTHER_LIBS})
@@ -86,7 +86,7 @@ FILE(GLOB FILES "*.cpp" "*.c")
 
 IF(${BUILD_CPU})
     MESSAGE(STATUS "TESTS: CPU backend is ON")
-    CREATE_TESTS(cpu "${GTEST_LIBRARIES}" "")
+    CREATE_TESTS(cpu cpu "${GTEST_LIBRARIES}" "")
 ELSE()
     MESSAGE(STATUS "TESTS: CPU backend is OFF")
 ENDIF()
@@ -94,7 +94,7 @@ ENDIF()
 IF(${BUILD_CUDA} AND ${CUDA_FOUND})
     MESSAGE(STATUS "TESTS: CUDA backend is ON")
     IF("${APPLE}" AND ${CMAKE_CXX_COMPILER_ID} STREQUAL "Clang" AND ${CUDA_VERSION_MAJOR} VERSION_LESS 7)
-        CREATE_TESTS(cuda "${GTEST_LIBRARIES_STDLIB}" "")
+        CREATE_TESTS(cuda cuda "${GTEST_LIBRARIES_STDLIB}" "")
         FOREACH(FILE ${FILES})
             GET_FILENAME_COMPONENT(FNAME ${FILE} NAME_WE)
             SET(TEST_NAME ${FNAME}_cuda)
@@ -102,7 +102,7 @@ IF(${BUILD_CUDA} AND ${CUDA_FOUND})
             SET_TARGET_PROPERTIES(${TEST_NAME} PROPERTIES LINK_FLAGS -stdlib=libstdc++)
         ENDFOREACH()
     ELSE("${APPLE}" AND ${CMAKE_CXX_COMPILER_ID} STREQUAL "Clang" AND ${CUDA_VERSION_MAJOR} VERSION_LESS 7)
-        CREATE_TESTS(cuda "${GTEST_LIBRARIES}" "")
+        CREATE_TESTS(cuda cuda "${GTEST_LIBRARIES}" "")
     ENDIF("${APPLE}" AND ${CMAKE_CXX_COMPILER_ID} STREQUAL "Clang" AND ${CUDA_VERSION_MAJOR} VERSION_LESS 7)
 ELSE()
     MESSAGE(STATUS "TESTS: CUDA backend is OFF")
@@ -110,7 +110,12 @@ ENDIF()
 
 IF(${BUILD_OPENCL} AND ${OpenCL_FOUND})
     MESSAGE(STATUS "TESTS: OPENCL backend is ON")
-    CREATE_TESTS(opencl "${GTEST_LIBRARIES}" "${OpenCL_LIBRARIES}")
+    CREATE_TESTS(opencl opencl "${GTEST_LIBRARIES}" "${OpenCL_LIBRARIES}")
 ELSE()
     MESSAGE(STATUS "TESTS: OPENCL backend is OFF")
 ENDIF()
+
+IF(${BUILD_UNIFIED})
+    MESSAGE(STATUS "TESTS: Unified backends is ON")
+    CREATE_TESTS(unified "" "${GTEST_LIBRARIES}" dl)
+ENDIF()

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/debian-science/packages/arrayfire.git



More information about the debian-science-commits mailing list