IRIX64.cmake 3.2 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("$ENV{CFLAGS} $ENV{CXXFLAGS} $ENV{LDFLAGS}" MATCHES "-([no]32|64)")
  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(CMAKE_FILE_SELF MATCHES "^CMAKE_FILE_SELF$")
  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(CMAKE_FILE_SELF MATCHES " 64-bit ")
  32. ENDIF("$ENV{CFLAGS} $ENV{CXXFLAGS} $ENV{LDFLAGS}" MATCHES "-([no]32|64)")
  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(NOT CMAKE_COMPILER_IS_GNUCC)
  41. INCLUDE(Platform/UnixPaths)
  42. IF(NOT CMAKE_COMPILER_IS_GNUCC)
  43. SET (CMAKE_C_CREATE_PREPROCESSED_SOURCE "<CMAKE_C_COMPILER> <DEFINES> <FLAGS> -E <SOURCE> > <PREPROCESSED_SOURCE>")
  44. SET (CMAKE_C_CREATE_ASSEMBLY_SOURCE
  45. "<CMAKE_C_COMPILER> <DEFINES> <FLAGS> -S <SOURCE>"
  46. "mv `basename \"<SOURCE>\" | sed 's/\\.[^./]*$$//'`.s <ASSEMBLY_SOURCE>"
  47. )
  48. ENDIF(NOT CMAKE_COMPILER_IS_GNUCC)
  49. IF(NOT CMAKE_COMPILER_IS_GNUCXX)
  50. SET (CMAKE_CXX_CREATE_PREPROCESSED_SOURCE "<CMAKE_CXX_COMPILER> <DEFINES> <FLAGS> -E <SOURCE> > <PREPROCESSED_SOURCE>")
  51. SET (CMAKE_CXX_CREATE_ASSEMBLY_SOURCE
  52. "<CMAKE_CXX_COMPILER> <DEFINES> <FLAGS> -S <SOURCE>"
  53. "mv `basename \"<SOURCE>\" | sed 's/\\.[^./]*$$//'`.s <ASSEMBLY_SOURCE>"
  54. )
  55. ENDIF(NOT CMAKE_COMPILER_IS_GNUCXX)
  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(type)
  64. # The IRIX linker needs to find transitive shared library dependencies
  65. # in the -L path.
  66. SET(CMAKE_LINK_DEPENDENT_LIBRARY_DIRS 1)