FindGTK.cmake 4.5 KB

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