← Back to team overview

dolfin team mailing list archive

Re: [Branch ~dolfin-core/dolfin/main] Rev 4984: CMake fix for Armadillo on Mac.

 

On Mon, Aug 16, 2010 at 11:31 AM, Garth N. Wells <gnw20@xxxxxxxxx> wrote:
> On Mon, 2010-08-16 at 09:01 +0000, noreply@xxxxxxxxxxxxx wrote:
>> ------------------------------------------------------------
>> revno: 4984
>> committer: Johannes Ring <johannr@xxxxxxxxx>
>> branch nick: dolfin
>> timestamp: Mon 2010-08-16 10:59:55 +0200
>> message:
>>   CMake fix for Armadillo on Mac.
>
> Nice if you haver a Mac ;), but luck if you don't.
>
> This test was working for me, but it broken now.

Sorry, should be fixed now.

Johannes

>
> Garth
>
>> modified:
>>   cmake/FindArmadillo.dolfin.cmake
>>   dolfin/CMakeLists.txt
>>
>>
>> --
>> lp:dolfin
>> https://code.launchpad.net/~dolfin-core/dolfin/main
>>
>> Your team DOLFIN Core Team is subscribed to branch lp:dolfin.
>> To unsubscribe from this branch go to https://code.launchpad.net/~dolfin-core/dolfin/main/+edit-subscription
>> differences between files attachment (revision-diff.txt)
>> === modified file 'cmake/FindArmadillo.dolfin.cmake'
>> --- cmake/FindArmadillo.dolfin.cmake  2010-08-10 16:01:21 +0000
>> +++ cmake/FindArmadillo.dolfin.cmake  2010-08-16 08:59:55 +0000
>> @@ -4,6 +4,7 @@
>>  # ARMADILLO_FOUND - system has Armadillo
>>  # ARMADILLO_INCLUDE_DIR - the Armadillo include directory
>>  # ARMADILLO_LIBRARY - the library needed to use Armadillo
>> +# ARMADILLO_LINK_FLAGS - linking flags for Armadillo
>>  # ARMADILLO_VERSION - the Armadillo version string (MAJOR.MINOR.PATCH)
>>  #
>>  # Setting these changes the behavior of the search
>> @@ -30,12 +31,24 @@
>>      )
>>    mark_as_advanced(ARMADILLO_LIBRARY)
>>
>> +  # On mac systems, we likely have to link against the vecLib framework
>> +  if(APPLE)
>> +    include(CMakeFindFrameworks)
>> +    CMAKE_FIND_FRAMEWORKS(vecLib)
>> +    if(vecLib_FRAMEWORKS)
>> +      set(ARMADILLO_LINK_FLAGS "-framework vecLib")
>> +      mark_as_advanced(ARMADILLO_LINK_FLAGS)
>> +    else(vecLib_FRAMEWORKS)
>> +      message(STATUS "vecLib framework not found.")
>> +    endif(vecLib_FRAMEWORKS)
>> +  endif(APPLE)
>> +
>>    if(ARMADILLO_INCLUDE_DIR AND ARMADILLO_LIBRARY)
>>      include(CheckCXXSourceRuns)
>>
>>      # These are needed for the try_run and check_cxx_source_runs commands below
>>      set(CMAKE_REQUIRED_INCLUDES ${ARMADILLO_INCLUDE_DIR})
>> -    set(CMAKE_REQUIRED_LIBRARIES ${ARMADILLO_LIBRARY})
>> +    set(CMAKE_REQUIRED_LIBRARIES "${ARMADILLO_LINK_FLAGS} ${ARMADILLO_LIBRARY}")
>>
>>      set(ARMADILLO_CONFIG_TEST_VERSION_CPP ${CMAKE_CURRENT_BINARY_DIR}/CMakeFiles/check_armadillo/armadillo_config_test_version.cpp)
>>      file(WRITE ${ARMADILLO_CONFIG_TEST_VERSION_CPP} "
>>
>> === modified file 'dolfin/CMakeLists.txt'
>> --- dolfin/CMakeLists.txt     2010-08-15 10:54:05 +0000
>> +++ dolfin/CMakeLists.txt     2010-08-16 08:59:55 +0000
>> @@ -50,6 +50,7 @@
>>  # Armadillo
>>  list(APPEND DOLFIN_INCLUDE_DIRECTORIES ${ARMADILLO_INCLUDE_DIR})
>>  list(APPEND DOLFIN_TARGET_LINK_LIBRARIES ${ARMADILLO_LIBRARY})
>> +list(APPEND DOLFIN_LINK_FLAGS ${ARMADILLO_LINK_FLAGS})
>>
>>  # Boost
>>  list(APPEND DOLFIN_INCLUDE_DIRECTORIES ${Boost_INCLUDE_DIR})
>> @@ -177,6 +178,8 @@
>>  add_library(dolfin SHARED ${DOLFIN_H} ${HEADERS} ${SOURCES})
>>  set_target_properties(dolfin PROPERTIES ${DOLFIN_LIBRARY_PROPERTIES})
>>
>> +set_target_properties(dolfin PROPERTIES LINK_FLAGS ${DOLFIN_LINK_FLAGS})
>> +
>>  # Add DOFLIN target libraries
>>  target_link_libraries(dolfin ${DOLFIN_TARGET_LINK_LIBRARIES})
>>
>>
>
>
>
> _______________________________________________
> Mailing list: https://launchpad.net/~dolfin
> Post to     : dolfin@xxxxxxxxxxxxxxxxxxx
> Unsubscribe : https://launchpad.net/~dolfin
> More help   : https://help.launchpad.net/ListHelp
>



References