| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061 | 
							- ###########################################################################
 
- #
 
- #  Library:   CTK
 
- #
 
- #  Copyright (c) Kitware Inc.
 
- #
 
- #  Licensed under the Apache License, Version 2.0 (the "License");
 
- #  you may not use this file except in compliance with the License.
 
- #  You may obtain a copy of the License at
 
- #
 
- #      http://www.apache.org/licenses/LICENSE-2.0.txt
 
- #
 
- #  Unless required by applicable law or agreed to in writing, software
 
- #  distributed under the License is distributed on an "AS IS" BASIS,
 
- #  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 
- #  See the License for the specific language governing permissions and
 
- #  limitations under the License.
 
- #
 
- ###########################################################################
 
- #
 
- # Linker --as-needed flag check
 
- #
 
- # Check if the linker will resolve symbols of underlinked libraries
 
- #
 
- # This script set the variable CTK_LINKER_NO_AS_NEEDED_FLAG_REQUIRED
 
- # to either TRUE or FALSE.
 
- #
 
- if(NOT DEFINED CTK_LINKER_NO_AS_NEEDED_FLAG_REQUIRED)
 
-   message(STATUS "Checking if --no-as-needed linker flag is required")
 
-   set(LINK_TEST_SOURCE_DIR ${CTK_CMAKE_DIR}/ctkLinkerAsNeededFlagCheck)
 
-   set(LINK_TEST_BINARY_DIR ${CMAKE_CURRENT_BINARY_DIR}/CMakeFiles/ctkLinkerAsNeededFlagCheck)
 
-   execute_process(COMMAND ${CMAKE_COMMAND} -E remove_directory ${LINK_TEST_BINARY_DIR})
 
-   try_compile(CTK_LINKER_LINKS_UNDERLINKED_LIBS
 
-     ${LINK_TEST_BINARY_DIR}
 
-     ${LINK_TEST_SOURCE_DIR}
 
-     LINK_TEST
 
-     )
 
-   if(CTK_LINKER_LINKS_UNDERLINKED_LIBS)
 
-     set(CTK_LINKER_NO_AS_NEEDED_FLAG_REQUIRED FALSE CACHE INTERNAL "Test CTK_LINKER_NO_AS_NEEDED_FLAG_REQUIRED")
 
-     message(STATUS "Checking if --no-as-needed linker flag is required - no")
 
-   else()
 
-     try_compile(CTK_LINKER_NO_AS_NEEDED_LINKS_UNDERLINKED_LIBS
 
-       ${LINK_TEST_BINARY_DIR}
 
-       ${LINK_TEST_SOURCE_DIR}
 
-       LINK_TEST_FLAGS
 
-       CMAKE_FLAGS -DCMAKE_EXE_LINKER_FLAGS=-Wl,--no-as-needed
 
-       )
 
-     if(CTK_LINKER_NO_AS_NEEDED_LINKS_UNDERLINKED_LIBS)
 
-       set(CTK_LINKER_NO_AS_NEEDED_FLAG_REQUIRED TRUE CACHE INTERNAL "Test CTK_LINKER_NO_AS_NEEDED_FLAG_REQUIRED")
 
-       message(STATUS "Checking if --no-as-needed linker flag is required - yes")
 
-     else()
 
-       message(STATUS "Checking if --no-as-needed linker flag is required - failed.")
 
-       message(WARNING "Could not compile test code."
 
-         "Linker could fail trying to resolve symbols for underlinked libraries."
 
-         "See issue 2321 (http://na-mic.org/Mantis/view.php?id=2321) for more details.")
 
-     endif()
 
-   endif()
 
- endif()
 
 
  |