[llvm-commits] [llvm] r59699 - in /llvm/trunk/cmake: config-ix.cmake modules/AddPartiallyLinkedObject.cmake

Oscar Fuentes ofv at wanadoo.es
Wed Nov 19 19:10:17 PST 2008


Author: ofv
Date: Wed Nov 19 21:10:17 2008
New Revision: 59699

URL: http://llvm.org/viewvc/llvm-project?rev=59699&view=rev
Log:
CMake: when building shared libraries, use -fPIC for compiling
partially linked objects.

Modified:
    llvm/trunk/cmake/config-ix.cmake
    llvm/trunk/cmake/modules/AddPartiallyLinkedObject.cmake

Modified: llvm/trunk/cmake/config-ix.cmake
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/cmake/config-ix.cmake?rev=59699&r1=59698&r2=59699&view=diff

==============================================================================
--- llvm/trunk/cmake/config-ix.cmake (original)
+++ llvm/trunk/cmake/config-ix.cmake Wed Nov 19 21:10:17 2008
@@ -52,6 +52,9 @@
 check_symbol_exists(pthread_mutex_lock pthread.h HAVE_PTHREAD_MUTEX_LOCK)
 check_symbol_exists(strtoll stdlib.h HAVE_STRTOLL)
 
+include(CheckCXXCompilerFlag)
+check_cxx_compiler_flag("-fPIC" SUPPORTS_FPIC_FLAG)
+
 include(GetTargetTriple)
 get_target_triple(LLVM_HOSTTRIPLE)
 message(STATUS "LLVM_HOSTTRIPLE: ${LLVM_HOSTTRIPLE}")

Modified: llvm/trunk/cmake/modules/AddPartiallyLinkedObject.cmake
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/cmake/modules/AddPartiallyLinkedObject.cmake?rev=59699&r1=59698&r2=59699&view=diff

==============================================================================
--- llvm/trunk/cmake/modules/AddPartiallyLinkedObject.cmake (original)
+++ llvm/trunk/cmake/modules/AddPartiallyLinkedObject.cmake Wed Nov 19 21:10:17 2008
@@ -17,6 +17,9 @@
     set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/temp_lib)
     set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/temp_lib)
     llvm_process_sources( ALL_FILES ${ARGN} )
+    if( BUILD_SHARED_LIBS AND SUPPORTS_FPIC_FLAG )
+      add_definitions(-fPIC)
+    endif()
     add_library( ${lib} STATIC ${ALL_FILES})
     if( LLVM_COMMON_DEPENDS )
       add_dependencies( ${lib} ${LLVM_COMMON_DEPENDS} )





More information about the llvm-commits mailing list