[llvm-commits] [polly] r166394 - in /polly/trunk: CMakeLists.txt cmake/polly_macros.cmake
Tobias Grosser
grosser at fim.uni-passau.de
Sun Oct 21 08:51:50 PDT 2012
Author: grosser
Date: Sun Oct 21 10:51:49 2012
New Revision: 166394
URL: http://llvm.org/viewvc/llvm-project?rev=166394&view=rev
Log:
Introduce a separate file for CMake macros
Contributed by: Sameer Sahasrabuddhe <sameer.sahasrabuddhe at amd.com>
Added:
polly/trunk/cmake/polly_macros.cmake
Modified:
polly/trunk/CMakeLists.txt
Modified: polly/trunk/CMakeLists.txt
URL: http://llvm.org/viewvc/llvm-project/polly/trunk/CMakeLists.txt?rev=166394&r1=166393&r2=166394&view=diff
==============================================================================
--- polly/trunk/CMakeLists.txt (original)
+++ polly/trunk/CMakeLists.txt Sun Oct 21 10:51:49 2012
@@ -59,6 +59,14 @@
set(POLLY_SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR})
set(POLLY_BINARY_DIR ${CMAKE_CURRENT_BINARY_DIR})
+# Add path for custom modules
+set(CMAKE_MODULE_PATH
+ ${CMAKE_MODULE_PATH}
+ "${CMAKE_CURRENT_SOURCE_DIR}/cmake"
+ )
+
+include("polly_macros")
+
# Add appropriate flags for GCC
if (CMAKE_COMPILER_IS_GNUCXX)
# FIXME: Turn off exceptions, RTTI:
@@ -116,76 +124,6 @@
INCLUDE_DIRECTORIES( ${SCOPLIB_INCLUDE_DIR} )
endif(SCOPLIB_FOUND)
-macro(add_polly_library name)
- set(srcs ${ARGN})
- if(MSVC_IDE OR XCODE)
- file( GLOB_RECURSE headers *.h *.td *.def)
- set(srcs ${srcs} ${headers})
- string( REGEX MATCHALL "/[^/]+" split_path ${CMAKE_CURRENT_SOURCE_DIR})
- list( GET split_path -1 dir)
- file( GLOB_RECURSE headers
- ../../include/polly${dir}/*.h)
- set(srcs ${srcs} ${headers})
- endif(MSVC_IDE OR XCODE)
- if (MODULE)
- set(libkind MODULE)
- elseif (SHARED_LIBRARY)
- set(libkind SHARED)
- else()
- set(libkind)
- endif()
- add_library( ${name} ${libkind} ${srcs} )
- if( LLVM_COMMON_DEPENDS )
- add_dependencies( ${name} ${LLVM_COMMON_DEPENDS} )
- endif( LLVM_COMMON_DEPENDS )
- if( LLVM_USED_LIBS )
- foreach(lib ${LLVM_USED_LIBS})
- target_link_libraries( ${name} ${lib} )
- endforeach(lib)
- endif( LLVM_USED_LIBS )
-
- target_link_libraries( ${name} ${ISL_LIBRARY} ${GMP_LIBRARY})
-
- if (CLOOG_FOUND)
- target_link_libraries( ${name} ${CLOOG_LIBRARY})
- endif(CLOOG_FOUND)
- if (OPENSCOP_FOUND)
- target_link_libraries( ${name} ${OPENSCOP_LIBRARY})
- endif(OPENSCOP_FOUND)
- if (SCOPLIB_FOUND)
- target_link_libraries( ${name} ${SCOPLIB_LIBRARY})
- endif(SCOPLIB_FOUND)
-
- if( LLVM_LINK_COMPONENTS )
- llvm_config(${name} ${LLVM_LINK_COMPONENTS})
- endif( LLVM_LINK_COMPONENTS )
- get_system_libs(llvm_system_libs)
- if( llvm_system_libs )
- target_link_libraries(${name} ${llvm_system_libs})
- endif( llvm_system_libs )
-
- if(MSVC)
- get_target_property(cflag ${name} COMPILE_FLAGS)
- if(NOT cflag)
- set(cflag "")
- endif(NOT cflag)
- set(cflag "${cflag} /Za")
- set_target_properties(${name} PROPERTIES COMPILE_FLAGS ${cflag})
- endif(MSVC)
- install(TARGETS ${name}
- LIBRARY DESTINATION lib
- ARCHIVE DESTINATION lib${LLVM_LIBDIR_SUFFIX})
-endmacro(add_polly_library)
-
-macro(add_polly_loadable_module name)
- set(srcs ${ARGN})
- add_polly_library(${name} ${srcs})
- if (APPLE)
- # Darwin-specific linker flags for loadable modules.
- set_target_properties(${name} PROPERTIES
- LINK_FLAGS "-Wl,-flat_namespace -Wl,-undefined -Wl,suppress")
- endif()
-endmacro(add_polly_loadable_module)
include_directories(
${CMAKE_CURRENT_SOURCE_DIR}/include
Added: polly/trunk/cmake/polly_macros.cmake
URL: http://llvm.org/viewvc/llvm-project/polly/trunk/cmake/polly_macros.cmake?rev=166394&view=auto
==============================================================================
--- polly/trunk/cmake/polly_macros.cmake (added)
+++ polly/trunk/cmake/polly_macros.cmake Sun Oct 21 10:51:49 2012
@@ -0,0 +1,72 @@
+
+macro(add_polly_library name)
+ set(srcs ${ARGN})
+ if(MSVC_IDE OR XCODE)
+ file( GLOB_RECURSE headers *.h *.td *.def)
+ set(srcs ${srcs} ${headers})
+ string( REGEX MATCHALL "/[^/]+" split_path ${CMAKE_CURRENT_SOURCE_DIR})
+ list( GET split_path -1 dir)
+ file( GLOB_RECURSE headers
+ ../../include/polly${dir}/*.h)
+ set(srcs ${srcs} ${headers})
+ endif(MSVC_IDE OR XCODE)
+ if (MODULE)
+ set(libkind MODULE)
+ elseif (SHARED_LIBRARY)
+ set(libkind SHARED)
+ else()
+ set(libkind)
+ endif()
+ add_library( ${name} ${libkind} ${srcs} )
+ if( LLVM_COMMON_DEPENDS )
+ add_dependencies( ${name} ${LLVM_COMMON_DEPENDS} )
+ endif( LLVM_COMMON_DEPENDS )
+ if( LLVM_USED_LIBS )
+ foreach(lib ${LLVM_USED_LIBS})
+ target_link_libraries( ${name} ${lib} )
+ endforeach(lib)
+ endif( LLVM_USED_LIBS )
+
+ target_link_libraries( ${name} ${ISL_LIBRARY} ${GMP_LIBRARY})
+
+ if (CLOOG_FOUND)
+ target_link_libraries( ${name} ${CLOOG_LIBRARY})
+ endif(CLOOG_FOUND)
+
+ if (OPENSCOP_FOUND)
+ target_link_libraries( ${name} ${OPENSCOP_LIBRARY})
+ endif(OPENSCOP_FOUND)
+ if (SCOPLIB_FOUND)
+ target_link_libraries( ${name} ${SCOPLIB_LIBRARY})
+ endif(SCOPLIB_FOUND)
+
+ if( LLVM_LINK_COMPONENTS )
+ llvm_config(${name} ${LLVM_LINK_COMPONENTS})
+ endif( LLVM_LINK_COMPONENTS )
+ get_system_libs(llvm_system_libs)
+ if( llvm_system_libs )
+ target_link_libraries(${name} ${llvm_system_libs})
+ endif( llvm_system_libs )
+
+ if(MSVC)
+ get_target_property(cflag ${name} COMPILE_FLAGS)
+ if(NOT cflag)
+ set(cflag "")
+ endif(NOT cflag)
+ set(cflag "${cflag} /Za")
+ set_target_properties(${name} PROPERTIES COMPILE_FLAGS ${cflag})
+ endif(MSVC)
+ install(TARGETS ${name}
+ LIBRARY DESTINATION lib
+ ARCHIVE DESTINATION lib${LLVM_LIBDIR_SUFFIX})
+endmacro(add_polly_library)
+
+macro(add_polly_loadable_module name)
+ set(srcs ${ARGN})
+ add_polly_library(${name} ${srcs})
+ if (APPLE)
+ # Darwin-specific linker flags for loadable modules.
+ set_target_properties(${name} PROPERTIES
+ LINK_FLAGS "-Wl,-flat_namespace -Wl,-undefined -Wl,suppress")
+ endif()
+endmacro(add_polly_loadable_module)
More information about the llvm-commits
mailing list