diff --git a/buildtools/FindIPP.cmake b/buildtools/FindIPP.cmake index b192932e3..249c51486 100644 --- a/buildtools/FindIPP.cmake +++ b/buildtools/FindIPP.cmake @@ -1,23 +1,30 @@ # Copyright (C) 2004-2009, Robotics Equipment Corporation GmbH # http://svn.openrobotino.org/trunk/tools/cmake/FindIPP.cmake +# Modified by Richard Roberts +# Call with COMPONENTS (core, cv, and i are used by default) + IF( NOT IPP_FOUND ) FILE(GLOB IPP_INCLUDE_PATHS_0 "$ENV{ProgramFiles}/Intel/IPP/*.*/ia32/include") FILE(GLOB IPP_INCLUDE_PATHS_1 "/opt/intel/ipp/*.*/ia32/include") FILE(GLOB IPP_INCLUDE_PATHS_2 "/usr/local/intel/ipp/*.*/ia32/include") +set(IPP_INCLUDE_PATHS_3 "/Library/Frameworks/Intel_IPP.Framework/Headers") + FILE(GLOB IPP_LIBRARY_PATHS_0 "$ENV{ProgramFiles}/Intel/IPP/*.*/ia32/lib") FILE(GLOB IPP_LIBRARY_PATHS_1 "$ENV{ProgramFiles}/Intel/IPP/*.*/ia32/stublib") FILE(GLOB IPP_LIBRARY_PATHS_2 "/opt/intel/ipp/*.*/ia32/lib") FILE(GLOB IPP_LIBRARY_PATHS_3 "/opt/intel/ipp/*.*/ia32/sharedlib") FILE(GLOB IPP_LIBRARY_PATHS_4 "/usr/local/intel/ipp/*.*/ia32/lib") FILE(GLOB IPP_LIBRARY_PATHS_5 "/usr/local/intel/ipp/*.*/ia32/sharedlib") +set(IPP_LIBRARY_PATHS_6 "/Library/Frameworks/Intel_IPP.Framework/Libraries") SET( IPP_INCLUDE_PATHS ${IPP_INCLUDE_PATHS_0} ${IPP_INCLUDE_PATHS_1} ${IPP_INCLUDE_PATHS_2} + ${IPP_INCLUDE_PATHS_3} ) SET( @@ -28,6 +35,7 @@ SET( ${IPP_LIBRARY_PATHS_3} ${IPP_LIBRARY_PATHS_4} ${IPP_LIBRARY_PATHS_5} + ${IPP_LIBRARY_PATHS_6} ) FIND_PATH( @@ -36,110 +44,120 @@ FIND_PATH( ${IPP_INCLUDE_PATHS} ) -FIND_LIBRARY( IPP_IPPCORELMERGED NAMES ippcorel ippcore PATHS ${IPP_LIBRARY_PATHS} ) -FIND_LIBRARY( IPP_IPPACEMERGED NAMES ippacemerged PATHS ${IPP_LIBRARY_PATHS} ) -FIND_LIBRARY( IPP_IPPACMERGED NAMES ippacmerged PATHS ${IPP_LIBRARY_PATHS} ) -FIND_LIBRARY( IPP_IPPCCEMERGED NAMES ippccemerged PATHS ${IPP_LIBRARY_PATHS} ) -FIND_LIBRARY( IPP_IPPCCMERGED NAMES ippccmerged PATHS ${IPP_LIBRARY_PATHS} ) -FIND_LIBRARY( IPP_IPPCHEMERGED NAMES ippchemerged PATHS ${IPP_LIBRARY_PATHS} ) -FIND_LIBRARY( IPP_IPPCHMERGED NAMES ippchmerged PATHS ${IPP_LIBRARY_PATHS} ) -FIND_LIBRARY( IPP_IPPCVEMERGED NAMES ippcvemerged PATHS ${IPP_LIBRARY_PATHS} ) -FIND_LIBRARY( IPP_IPPCVMERGED NAMES ippcvmerged PATHS ${IPP_LIBRARY_PATHS} ) -FIND_LIBRARY( IPP_IPPDCEMERGED NAMES ippdcemerged PATHS ${IPP_LIBRARY_PATHS} ) -FIND_LIBRARY( IPP_IPPDCMERGED NAMES ippdcmerged PATHS ${IPP_LIBRARY_PATHS} ) -FIND_LIBRARY( IPP_IPPIEMERGED NAMES ippiemerged PATHS ${IPP_LIBRARY_PATHS} ) -FIND_LIBRARY( IPP_IPPIMERGED NAMES ippimerged PATHS ${IPP_LIBRARY_PATHS} ) -FIND_LIBRARY( IPP_IPPJEMERGED NAMES ippjemerged PATHS ${IPP_LIBRARY_PATHS} ) -FIND_LIBRARY( IPP_IPPJMERGED NAMES ippjmerged PATHS ${IPP_LIBRARY_PATHS} ) -FIND_LIBRARY( IPP_IPPMEMERGED NAMES ippmemerged PATHS ${IPP_LIBRARY_PATHS} ) -FIND_LIBRARY( IPP_IPPMMERGED NAMES ippmmerged PATHS ${IPP_LIBRARY_PATHS} ) -FIND_LIBRARY( IPP_IPPSCEMERGED NAMES ippscemerged PATHS ${IPP_LIBRARY_PATHS} ) -FIND_LIBRARY( IPP_IPPSCMERGED NAMES ippscmerged PATHS ${IPP_LIBRARY_PATHS} ) -FIND_LIBRARY( IPP_IPPSEMERGED NAMES ippsemerged PATHS ${IPP_LIBRARY_PATHS} ) -FIND_LIBRARY( IPP_IPPSMERGED NAMES ippsmerged PATHS ${IPP_LIBRARY_PATHS} ) -FIND_LIBRARY( IPP_IPPSREMERGED NAMES ippsremerged PATHS ${IPP_LIBRARY_PATHS} ) -FIND_LIBRARY( IPP_IPPSRMERGED NAMES ippsrmerged PATHS ${IPP_LIBRARY_PATHS} ) -FIND_LIBRARY( IPP_IPPVCEMERGED NAMES ippvcemerged PATHS ${IPP_LIBRARY_PATHS} ) -FIND_LIBRARY( IPP_IPPVCMERGED NAMES ippvcmerged PATHS ${IPP_LIBRARY_PATHS} ) -FIND_LIBRARY( IPP_IPPVMEMERGED NAMES ippvmemerged PATHS ${IPP_LIBRARY_PATHS} ) -FIND_LIBRARY( IPP_IPPVMMERGED NAMES ippvmmerged PATHS ${IPP_LIBRARY_PATHS} ) +#FIND_LIBRARY( IPP_IPPCORELMERGED NAMES ippcorel ippcore PATHS ${IPP_LIBRARY_PATHS} ) +#FIND_LIBRARY( IPP_IPPACEMERGED NAMES ippacemerged PATHS ${IPP_LIBRARY_PATHS} ) +#FIND_LIBRARY( IPP_IPPACMERGED NAMES ippacmerged PATHS ${IPP_LIBRARY_PATHS} ) +#FIND_LIBRARY( IPP_IPPCCEMERGED NAMES ippccemerged PATHS ${IPP_LIBRARY_PATHS} ) +#FIND_LIBRARY( IPP_IPPCCMERGED NAMES ippccmerged PATHS ${IPP_LIBRARY_PATHS} ) +#FIND_LIBRARY( IPP_IPPCHEMERGED NAMES ippchemerged PATHS ${IPP_LIBRARY_PATHS} ) +#FIND_LIBRARY( IPP_IPPCHMERGED NAMES ippchmerged PATHS ${IPP_LIBRARY_PATHS} ) +#FIND_LIBRARY( IPP_IPPCVEMERGED NAMES ippcvemerged PATHS ${IPP_LIBRARY_PATHS} ) +#FIND_LIBRARY( IPP_IPPCVMERGED NAMES ippcvmerged PATHS ${IPP_LIBRARY_PATHS} ) +#FIND_LIBRARY( IPP_IPPDCEMERGED NAMES ippdcemerged PATHS ${IPP_LIBRARY_PATHS} ) +#FIND_LIBRARY( IPP_IPPDCMERGED NAMES ippdcmerged PATHS ${IPP_LIBRARY_PATHS} ) +#FIND_LIBRARY( IPP_IPPIEMERGED NAMES ippiemerged PATHS ${IPP_LIBRARY_PATHS} ) +#FIND_LIBRARY( IPP_IPPIMERGED NAMES ippimerged PATHS ${IPP_LIBRARY_PATHS} ) +#FIND_LIBRARY( IPP_IPPJEMERGED NAMES ippjemerged PATHS ${IPP_LIBRARY_PATHS} ) +#FIND_LIBRARY( IPP_IPPJMERGED NAMES ippjmerged PATHS ${IPP_LIBRARY_PATHS} ) +#FIND_LIBRARY( IPP_IPPMEMERGED NAMES ippmemerged PATHS ${IPP_LIBRARY_PATHS} ) +#FIND_LIBRARY( IPP_IPPMMERGED NAMES ippmmerged PATHS ${IPP_LIBRARY_PATHS} ) +#FIND_LIBRARY( IPP_IPPSCEMERGED NAMES ippscemerged PATHS ${IPP_LIBRARY_PATHS} ) +#FIND_LIBRARY( IPP_IPPSCMERGED NAMES ippscmerged PATHS ${IPP_LIBRARY_PATHS} ) +#FIND_LIBRARY( IPP_IPPSEMERGED NAMES ippsemerged PATHS ${IPP_LIBRARY_PATHS} ) +#FIND_LIBRARY( IPP_IPPSMERGED NAMES ippsmerged PATHS ${IPP_LIBRARY_PATHS} ) +#FIND_LIBRARY( IPP_IPPSREMERGED NAMES ippsremerged PATHS ${IPP_LIBRARY_PATHS} ) +#FIND_LIBRARY( IPP_IPPSRMERGED NAMES ippsrmerged PATHS ${IPP_LIBRARY_PATHS} ) +#FIND_LIBRARY( IPP_IPPVCEMERGED NAMES ippvcemerged PATHS ${IPP_LIBRARY_PATHS} ) +#FIND_LIBRARY( IPP_IPPVCMERGED NAMES ippvcmerged PATHS ${IPP_LIBRARY_PATHS} ) +#FIND_LIBRARY( IPP_IPPVMEMERGED NAMES ippvmemerged PATHS ${IPP_LIBRARY_PATHS} ) +#FIND_LIBRARY( IPP_IPPVMMERGED NAMES ippvmmerged PATHS ${IPP_LIBRARY_PATHS} ) -SET( - IPP_MERGED_LIBRARIES - ${IPP_IPPACEMERGED} - ${IPP_IPPACMERGED} - - ${IPP_IPPCVEMERGED} - ${IPP_IPPCVMERGED} - - ${IPP_IPPMEMERGED} - ${IPP_IPPMMERGED} - - ${IPP_IPPDCEMERGED} - ${IPP_IPPDCMERGED} - - ${IPP_IPPVCEMERGED} - ${IPP_IPPVCMERGED} - - ${IPP_IPPCCEMERGED} - ${IPP_IPPCCMERGED} - - ${IPP_IPPCHEMERGED} - ${IPP_IPPCHMERGED} - - ${IPP_IPPVMEMERGED} - ${IPP_IPPVMMERGED} - - ${IPP_IPPJEMERGED} - ${IPP_IPPJMERGED} - - ${IPP_IPPSREMERGED} - ${IPP_IPPSRMERGED} - - ${IPP_IPPSCEMERGED} - ${IPP_IPPSCMERGED} - - ${IPP_IPPIEMERGED} - ${IPP_IPPIMERGED} - - ${IPP_IPPSEMERGED} - ${IPP_IPPSMERGED} - - ${IPP_IPPCORELMERGED} -) +#SET( +# IPP_MERGED_LIBRARIES +# ${IPP_IPPACEMERGED} +# ${IPP_IPPACMERGED} +# +# ${IPP_IPPCVEMERGED} +# ${IPP_IPPCVMERGED} +# +# ${IPP_IPPMEMERGED} +# ${IPP_IPPMMERGED} +# +# ${IPP_IPPDCEMERGED} +# ${IPP_IPPDCMERGED} +# +# ${IPP_IPPVCEMERGED} +# ${IPP_IPPVCMERGED} +# +# ${IPP_IPPCCEMERGED} +# ${IPP_IPPCCMERGED} +# +# ${IPP_IPPCHEMERGED} +# ${IPP_IPPCHMERGED} +# +# ${IPP_IPPVMEMERGED} +# ${IPP_IPPVMMERGED} +# +# ${IPP_IPPJEMERGED} +# ${IPP_IPPJMERGED} +# +# ${IPP_IPPSREMERGED} +# ${IPP_IPPSRMERGED} +# +# ${IPP_IPPSCEMERGED} +# ${IPP_IPPSCMERGED} +# +# ${IPP_IPPIEMERGED} +# ${IPP_IPPIMERGED} +# +# ${IPP_IPPSEMERGED} +# ${IPP_IPPSMERGED} +# +# ${IPP_IPPCORELMERGED} +#) -FIND_LIBRARY( IPP_IPPACSHARED NAMES ippac PATHS ${IPP_LIBRARY_PATHS} ) -FIND_LIBRARY( IPP_IPPCCSHARED NAMES ippcc PATHS ${IPP_LIBRARY_PATHS} ) -FIND_LIBRARY( IPP_IPPCHSHARED NAMES ippch PATHS ${IPP_LIBRARY_PATHS} ) -FIND_LIBRARY( IPP_IPPCORELSHARED NAMES ippcore PATHS ${IPP_LIBRARY_PATHS} ) -FIND_LIBRARY( IPP_IPPCVSHARED NAMES ippcv PATHS ${IPP_LIBRARY_PATHS} ) -FIND_LIBRARY( IPP_IPPDCSHARED NAMES ippdc PATHS ${IPP_LIBRARY_PATHS} ) -FIND_LIBRARY( IPP_IPPISHARED NAMES ippi PATHS ${IPP_LIBRARY_PATHS} ) -FIND_LIBRARY( IPP_IPPJSHARED NAMES ippj PATHS ${IPP_LIBRARY_PATHS} ) -FIND_LIBRARY( IPP_IPPMSHARED NAMES ippm PATHS ${IPP_LIBRARY_PATHS} ) -FIND_LIBRARY( IPP_IPPSSHARED NAMES ipps PATHS ${IPP_LIBRARY_PATHS} ) -FIND_LIBRARY( IPP_IPPSCSHARED NAMES ippsc PATHS ${IPP_LIBRARY_PATHS} ) -FIND_LIBRARY( IPP_IPPSRSHARED NAMES ippsr PATHS ${IPP_LIBRARY_PATHS} ) -FIND_LIBRARY( IPP_IPPVCSHARED NAMES ippvc PATHS ${IPP_LIBRARY_PATHS} ) -FIND_LIBRARY( IPP_IPPVMSHARED NAMES ippvm PATHS ${IPP_LIBRARY_PATHS} ) +#FIND_LIBRARY( IPP_IPPACSHARED NAMES ippac PATHS ${IPP_LIBRARY_PATHS} ) +#FIND_LIBRARY( IPP_IPPCCSHARED NAMES ippcc PATHS ${IPP_LIBRARY_PATHS} ) +#FIND_LIBRARY( IPP_IPPCHSHARED NAMES ippch PATHS ${IPP_LIBRARY_PATHS} ) +#FIND_LIBRARY( IPP_IPPCORELSHARED NAMES ippcore PATHS ${IPP_LIBRARY_PATHS} ) +#FIND_LIBRARY( IPP_IPPCVSHARED NAMES ippcv PATHS ${IPP_LIBRARY_PATHS} ) +#FIND_LIBRARY( IPP_IPPDCSHARED NAMES ippdc PATHS ${IPP_LIBRARY_PATHS} ) +#FIND_LIBRARY( IPP_IPPISHARED NAMES ippi PATHS ${IPP_LIBRARY_PATHS} ) +#FIND_LIBRARY( IPP_IPPJSHARED NAMES ippj PATHS ${IPP_LIBRARY_PATHS} ) +#FIND_LIBRARY( IPP_IPPMSHARED NAMES ippm PATHS ${IPP_LIBRARY_PATHS} ) +#FIND_LIBRARY( IPP_IPPSSHARED NAMES ipps PATHS ${IPP_LIBRARY_PATHS} ) +#FIND_LIBRARY( IPP_IPPSCSHARED NAMES ippsc PATHS ${IPP_LIBRARY_PATHS} ) +#FIND_LIBRARY( IPP_IPPSRSHARED NAMES ippsr PATHS ${IPP_LIBRARY_PATHS} ) +#FIND_LIBRARY( IPP_IPPVCSHARED NAMES ippvc PATHS ${IPP_LIBRARY_PATHS} ) +#FIND_LIBRARY( IPP_IPPVMSHARED NAMES ippvm PATHS ${IPP_LIBRARY_PATHS} ) -SET( - IPP_SHARED_LIBRARIES - ${IPP_IPPACSHARED} - ${IPP_IPPCCSHARED} - ${IPP_IPPCHSHARED} - ${IPP_IPPCORELSHARED} - ${IPP_IPPCVSHARED} - ${IPP_IPPDCSHARED} - ${IPP_IPPISHARED} - ${IPP_IPPJSHARED} - ${IPP_IPPMSHARED} - ${IPP_IPPSSHARED} - ${IPP_IPPSCSHARED} - ${IPP_IPPSRSHARED} - ${IPP_IPPVCSHARED} - ${IPP_IPPVMSHARED} -) +list(APPEND IPP_FIND_COMPONENTS core cv i) +set(IPP_SHARED_LIBRARIES "") +foreach(comp ${IPP_FIND_COMPONENTS}) + find_library(IPP_IPP${comp}SHARED NAMES ipp${comp} PATHS ${IPP_LIBRARY_PATHS}) + list(APPEND IPP_SHARED_LIBRARIES ${IPP_IPP${comp}SHARED}) +endforeach() + +message(STATUS "Found IPP components: ${IPP_SHARED_LIBRARIES}") +message(STATUS "IPP Include path: ${IPP_INCLUDE_DIR}") + +#SET( +# IPP_SHARED_LIBRARIES +# ${IPP_IPPACSHARED} +# ${IPP_IPPCCSHARED} +# ${IPP_IPPCHSHARED} +# ${IPP_IPPCORELSHARED} +# ${IPP_IPPCVSHARED} +# ${IPP_IPPDCSHARED} +# ${IPP_IPPISHARED} +# ${IPP_IPPJSHARED} +# ${IPP_IPPMSHARED} +# ${IPP_IPPSSHARED} +# ${IPP_IPPSCSHARED} +# ${IPP_IPPSRSHARED} +# ${IPP_IPPVCSHARED} +# ${IPP_IPPVMSHARED} +#) SET( IPP_FOUND 0 ) IF( EXISTS "${IPP_INCLUDE_DIR}" ) diff --git a/buildtools/gt.cmake b/buildtools/gt.cmake index dbdcb0e7f..02fc2762e 100644 --- a/buildtools/gt.cmake +++ b/buildtools/gt.cmake @@ -70,7 +70,11 @@ function(GT_USE_OPENCV) link_libraries(${OpenCV_LIBRARIES) endfunction(GT_USE_OPENCV) function(GT_USE_IPP) - find_package(IPP REQUIRED) + if(ARGN) + find_package(IPP REQUIRED COMPONENTS ${ARGN}) + else() + find_package(IPP REQUIRED) + endif() link_directories(${IPP_LIBRARY_PATHS}) include_directories(${IPP_INCLUDE_PATHS}) link_libraries(${IPP_SHARED_LIBRARIES})