SunOS.cmake 1.2 KB

1234567891011121314151617181920212223242526272829303132
  1. if(CMAKE_SYSTEM MATCHES "SunOS-4.*")
  2. set(CMAKE_C_COMPILE_OPTIONS_PIC "-PIC")
  3. set(CMAKE_C_COMPILE_OPTIONS_PIE "-PIE")
  4. set(CMAKE_SHARED_LIBRARY_C_FLAGS "-PIC")
  5. set(CMAKE_SHARED_LIBRARY_CREATE_C_FLAGS "-shared -Wl,-r")
  6. set(CMAKE_SHARED_LIBRARY_RUNTIME_C_FLAG "-Wl,-R")
  7. set(CMAKE_SHARED_LIBRARY_RUNTIME_C_FLAG_SEP ":")
  8. endif()
  9. if(CMAKE_COMPILER_IS_GNUCXX)
  10. if(CMAKE_COMPILER_IS_GNUCC)
  11. set(CMAKE_CXX_CREATE_SHARED_LIBRARY
  12. "<CMAKE_C_COMPILER> <CMAKE_SHARED_LIBRARY_CXX_FLAGS> <LINK_FLAGS> <CMAKE_SHARED_LIBRARY_CREATE_CXX_FLAGS> <SONAME_FLAG><TARGET_SONAME> -o <TARGET> <OBJECTS> <LINK_LIBRARIES>")
  13. else()
  14. # Take default rule from CMakeDefaultMakeRuleVariables.cmake.
  15. endif()
  16. endif()
  17. include(Platform/UnixPaths)
  18. # Add the compiler's implicit link directories.
  19. if("${CMAKE_C_COMPILER_ID} ${CMAKE_CXX_COMPILER_ID}" MATCHES SunPro)
  20. list(APPEND CMAKE_PLATFORM_IMPLICIT_LINK_DIRECTORIES
  21. /opt/SUNWspro/lib /opt/SUNWspro/prod/lib /usr/ccs/lib)
  22. endif()
  23. # The Sun linker needs to find transitive shared library dependencies
  24. # in the -L path.
  25. set(CMAKE_LINK_DEPENDENT_LIBRARY_DIRS 1)
  26. # Shared libraries with no builtin soname may not be linked safely by
  27. # specifying the file path.
  28. set(CMAKE_PLATFORM_USES_PATH_WHEN_NO_SONAME 1)