IRIX64.cmake 2.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. set(CMAKE_DL_LIBS "")
  2. set(CMAKE_SHARED_LIBRARY_CREATE_C_FLAGS "-shared -rdata_shared")
  3. set(CMAKE_SHARED_LIBRARY_RUNTIME_C_FLAG "-Wl,-rpath,") # -rpath
  4. set(CMAKE_SHARED_LIBRARY_RUNTIME_C_FLAG_SEP "") # : or empty
  5. set(CMAKE_SHARED_LIBRARY_SONAME_C_FLAG "-Wl,-soname,")
  6. if(NOT CMAKE_COMPILER_IS_GNUCC)
  7. # Set default flags init.
  8. set(CMAKE_C_FLAGS_INIT "")
  9. set(CMAKE_CXX_FLAGS_INIT "")
  10. set(CMAKE_Fortran_FLAGS_INIT "")
  11. set(CMAKE_EXE_LINKER_FLAGS_INIT "")
  12. set(CMAKE_SHARED_LINKER_FLAGS_INIT "")
  13. set(CMAKE_MODULE_LINKER_FLAGS_INIT "")
  14. # If no -o32, -n32, or -64 flag is given, set a reasonable default.
  15. if("$ENV{CFLAGS} $ENV{CXXFLAGS} $ENV{LDFLAGS}" MATCHES "-([no]32|64)")
  16. else()
  17. # Check if this is a 64-bit CMake.
  18. if(CMAKE_FILE_SELF MATCHES "^CMAKE_FILE_SELF$")
  19. exec_program(file ARGS ${CMAKE_COMMAND} OUTPUT_VARIABLE CMAKE_FILE_SELF)
  20. set(CMAKE_FILE_SELF "${CMAKE_FILE_SELF}" CACHE INTERNAL
  21. "Output of file command on ${CMAKE_COMMAND}.")
  22. endif()
  23. # Set initial flags to match cmake executable.
  24. if(CMAKE_FILE_SELF MATCHES " 64-bit ")
  25. set(CMAKE_C_FLAGS_INIT "-64")
  26. set(CMAKE_CXX_FLAGS_INIT "-64")
  27. set(CMAKE_Fortran_FLAGS_INIT "-64")
  28. set(CMAKE_EXE_LINKER_FLAGS_INIT "-64")
  29. set(CMAKE_SHARED_LINKER_FLAGS_INIT "-64")
  30. set(CMAKE_MODULE_LINKER_FLAGS_INIT "-64")
  31. endif()
  32. endif()
  33. # Set remaining defaults.
  34. set(CMAKE_CXX_CREATE_STATIC_LIBRARY
  35. "<CMAKE_CXX_COMPILER> -ar -o <TARGET> <OBJECTS>")
  36. set (CMAKE_CXX_FLAGS_DEBUG_INIT "-g")
  37. set (CMAKE_CXX_FLAGS_MINSIZEREL_INIT "-O3 -DNDEBUG")
  38. set (CMAKE_CXX_FLAGS_RELEASE_INIT "-O2 -DNDEBUG")
  39. set (CMAKE_CXX_FLAGS_RELWITHDEBINFO_INIT "-O2")
  40. endif()
  41. include(Platform/UnixPaths)
  42. if(NOT CMAKE_COMPILER_IS_GNUCC)
  43. set (CMAKE_C_CREATE_PREPROCESSED_SOURCE "<CMAKE_C_COMPILER> <DEFINES> <INCLUDES> <FLAGS> -E <SOURCE> > <PREPROCESSED_SOURCE>")
  44. set (CMAKE_C_CREATE_ASSEMBLY_SOURCE
  45. "<CMAKE_C_COMPILER> <DEFINES> <INCLUDES> <FLAGS> -S <SOURCE>"
  46. "mv `basename \"<SOURCE>\" | sed 's/\\.[^./]*$$//'`.s <ASSEMBLY_SOURCE>"
  47. )
  48. endif()
  49. if(NOT CMAKE_COMPILER_IS_GNUCXX)
  50. set (CMAKE_CXX_CREATE_PREPROCESSED_SOURCE "<CMAKE_CXX_COMPILER> <DEFINES> <INCLUDES> <FLAGS> -E <SOURCE> > <PREPROCESSED_SOURCE>")
  51. set (CMAKE_CXX_CREATE_ASSEMBLY_SOURCE
  52. "<CMAKE_CXX_COMPILER> <DEFINES> <INCLUDES> <FLAGS> -S <SOURCE>"
  53. "mv `basename \"<SOURCE>\" | sed 's/\\.[^./]*$$//'`.s <ASSEMBLY_SOURCE>"
  54. )
  55. endif()
  56. # Initialize C link type selection flags. These flags are used when
  57. # building a shared library, shared module, or executable that links
  58. # to other libraries to select whether to use the static or shared
  59. # versions of the libraries.
  60. foreach(type SHARED_LIBRARY SHARED_MODULE EXE)
  61. set(CMAKE_${type}_LINK_STATIC_C_FLAGS "-Wl,-Bstatic")
  62. set(CMAKE_${type}_LINK_DYNAMIC_C_FLAGS "-Wl,-Bdynamic")
  63. endforeach()
  64. # The IRIX linker needs to find transitive shared library dependencies
  65. # in the -L path.
  66. set(CMAKE_LINK_DEPENDENT_LIBRARY_DIRS 1)