FindGTK.cmake 4.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178
  1. #
  2. # try to find GTK (and glib) and GTKGLArea
  3. #
  4. # GTK_INCLUDE_DIR - Directories to include to use GTK
  5. # GTK_LIBRARIES - Files to link against to use GTK
  6. # GTK_FOUND - If false, don't try to use GTK
  7. # GTK_GL_FOUND - If false, don't try to use GTK's GL features
  8. # don't even bother under WIN32
  9. IF(UNIX)
  10. FIND_PATH( GTK_gtk_INCLUDE_PATH gtk/gtk.h
  11. /usr/include
  12. /usr/local/include
  13. /usr/openwin/share/include
  14. /usr/openwin/include
  15. /usr/X11R6/include
  16. /usr/include/X11
  17. /usr/X11R6/include/gtk12
  18. /usr/include/gtk-1.2
  19. /usr/local/include/gtk-1.2
  20. /opt/gnome/include
  21. )
  22. # Some Linux distributions (e.g. Red Hat) have glibconfig.h
  23. # and glib.h in different directories, so we need to look
  24. # for both.
  25. # - Atanas Georgiev <[email protected]>
  26. FIND_PATH( GTK_glibconfig_INCLUDE_PATH glibconfig.h
  27. /usr/include
  28. /usr/local/include
  29. /usr/openwin/share/include
  30. /usr/local/include/glib12
  31. /usr/lib/glib/include
  32. /usr/local/lib/glib/include
  33. /opt/gnome/include
  34. /opt/gnome/lib/glib/include
  35. )
  36. FIND_PATH( GTK_glib_INCLUDE_PATH glib.h
  37. /usr/include
  38. /usr/local/include
  39. /usr/openwin/share/include
  40. /usr/include/gtk-1.2
  41. /usr/local/include/glib12
  42. /usr/lib/glib/include
  43. /usr/include/glib-1.2
  44. /usr/local/include/glib-1.2
  45. /opt/gnome/include
  46. /opt/gnome/include/glib-1.2
  47. )
  48. FIND_PATH( GTK_gtkgl_INCLUDE_PATH gtkgl/gtkglarea.h
  49. /usr/include
  50. /usr/local/include
  51. /usr/openwin/share/include
  52. /opt/gnome/include
  53. )
  54. FIND_LIBRARY( GTK_gtkgl_LIBRARY gtkgl
  55. /usr/lib
  56. /usr/local/lib
  57. /usr/openwin/lib
  58. /usr/X11R6/lib
  59. /opt/gnome/lib
  60. )
  61. #
  62. # The 12 suffix is thanks to the FreeBSD ports collection
  63. #
  64. FIND_LIBRARY( GTK_gtk_LIBRARY
  65. NAMES gtk gtk12
  66. PATHS /usr/lib
  67. /usr/local/lib
  68. /usr/openwin/lib
  69. /usr/X11R6/lib
  70. /opt/gnome/lib
  71. )
  72. FIND_LIBRARY( GTK_gdk_LIBRARY
  73. NAMES gdk gdk12
  74. PATHS /usr/lib
  75. /usr/local/lib
  76. /usr/openwin/lib
  77. /usr/X11R6/lib
  78. /opt/gnome/lib
  79. )
  80. FIND_LIBRARY( GTK_gmodule_LIBRARY
  81. NAMES gmodule gmodule12
  82. PATHS /usr/lib
  83. /usr/local/lib
  84. /usr/openwin/lib
  85. /usr/X11R6/lib
  86. /opt/gnome/lib
  87. )
  88. FIND_LIBRARY( GTK_glib_LIBRARY
  89. NAMES glib glib12
  90. PATHS /usr/lib
  91. /usr/local/lib
  92. /usr/openwin/lib
  93. /usr/X11R6/lib
  94. /opt/gnome/lib
  95. )
  96. FIND_LIBRARY( GTK_gthread_LIBRARY
  97. NAMES gthread gthread12
  98. PATHS /usr/lib
  99. /usr/local/lib
  100. /usr/openwin/lib
  101. /usr/X11R6/lib
  102. /opt/gnome/lib
  103. )
  104. IF(GTK_gtk_INCLUDE_PATH)
  105. IF(GTK_glibconfig_INCLUDE_PATH)
  106. IF(GTK_glib_INCLUDE_PATH)
  107. IF(GTK_gtk_LIBRARY)
  108. IF(GTK_glib_LIBRARY)
  109. # Assume that if gtk and glib were found, the other
  110. # supporting libraries have also been found.
  111. SET( GTK_FOUND "YES" )
  112. SET( GTK_INCLUDE_DIR ${GTK_gtk_INCLUDE_PATH}
  113. ${GTK_glibconfig_INCLUDE_PATH}
  114. ${GTK_glib_INCLUDE_PATH} )
  115. SET( GTK_LIBRARIES ${GTK_gtk_LIBRARY}
  116. ${GTK_gdk_LIBRARY}
  117. ${GTK_glib_LIBRARY} )
  118. IF(GTK_gmodule_LIBRARY)
  119. SET(GTK_LIBRARIES ${GTK_LIBRARIES} ${GTK_gmodule_LIBRARY})
  120. ENDIF(GTK_gmodule_LIBRARY)
  121. IF(GTK_gthread_LIBRARY)
  122. SET(GTK_LIBRARIES ${GTK_LIBRARIES} ${GTK_gthread_LIBRARY})
  123. ENDIF(GTK_gthread_LIBRARY)
  124. IF(GTK_gtkgl_INCLUDE_PATH)
  125. IF(GTK_gtkgl_LIBRARY)
  126. SET( GTK_GL_FOUND "YES" )
  127. SET( GTK_INCLUDE_DIR ${GTK_INCLUDE_DIR}
  128. ${GTK_gtkgl_INCLUDE_PATH} )
  129. SET( GTK_LIBRARIES ${GTK_LIBRARIES}
  130. ${GTK_glib_LIBRARY} )
  131. MARK_AS_ADVANCED(
  132. GTK_gtkgl_LIBRARY
  133. GTK_gtkgl_INCLUDE_PATH
  134. )
  135. ENDIF(GTK_gtkgl_LIBRARY)
  136. ENDIF(GTK_gtkgl_INCLUDE_PATH)
  137. ENDIF(GTK_glib_LIBRARY)
  138. ENDIF(GTK_gtk_LIBRARY)
  139. ENDIF(GTK_glib_INCLUDE_PATH)
  140. ENDIF(GTK_glibconfig_INCLUDE_PATH)
  141. ENDIF(GTK_gtk_INCLUDE_PATH)
  142. MARK_AS_ADVANCED(
  143. GTK_gdk_LIBRARY
  144. GTK_glib_INCLUDE_PATH
  145. GTK_glib_LIBRARY
  146. GTK_glibconfig_INCLUDE_PATH
  147. GTK_gmodule_LIBRARY
  148. GTK_gthread_LIBRARY
  149. GTK_gtk_INCLUDE_PATH
  150. GTK_gtk_LIBRARY
  151. GTK_gtkgl_INCLUDE_PATH
  152. GTK_gtkgl_LIBRARY
  153. )
  154. ENDIF(UNIX)