cogl-1.0.inc 3.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384
  1. SUMMARY = "Modern 3D graphics API with associated utility APIs"
  2. DESCRIPTION = "Cogl is a small open source library for using 3D graphics \
  3. hardware for rendering. The API departs from the flat state machine style of \
  4. OpenGL and is designed to make it easy to write orthogonal components that \
  5. can render without stepping on each others toes."
  6. HOMEPAGE = "http://wiki.clutter-project.org/wiki/Cogl"
  7. LICENSE = "MIT"
  8. inherit clutter features_check upstream-version-is-even gobject-introspection
  9. # cogl-1.0 needs opengl to build
  10. REQUIRED_DISTRO_FEATURES ?= "opengl"
  11. DEPENDS = "glib-2.0 gdk-pixbuf"
  12. PACKAGES =+ "${PN}-examples \
  13. libcogl libcogl-gles2 libcogl-pango libcogl-path \
  14. "
  15. AUTOTOOLS_AUXDIR = "${S}/build"
  16. # Extra DEPENDS for PACKAGECONFIG
  17. EDEPENDS_GL = "virtual/libgl libdrm"
  18. EDEPENDS_GLES2 = "virtual/libgles2"
  19. EDEPENDS_KMS = "libdrm virtual/egl"
  20. EDEPENDS_EGL = "virtual/egl"
  21. EDEPENDS_X11 = "virtual/libx11 libxcomposite libxfixes libxi libxrandr"
  22. EDEPENDS_WAYLAND = "virtual/egl virtual/libgles2 wayland"
  23. # Extra RDEPENDS for PACKAGECONFIG
  24. # This has to be explictly listed, because cogl dlopens the backends
  25. ERDEPENDS_GL = "libgl"
  26. ERDEPENDS_GLES2 = "libgles2"
  27. # GLESv1 is rarely tested, so disable it
  28. EXTRA_OECONF += "--enable-examples-install \
  29. --enable-debug \
  30. --disable-gles1 \
  31. --disable-cairo \
  32. "
  33. DEBUG_OPTIMIZATION_append = " -Wno-error=maybe-uninitialized"
  34. # OpenGL/GLX
  35. PACKAGECONFIG[glx] = "--enable-gl --enable-glx,--disable-gl --disable-glx,${EDEPENDS_GL} ${EDEPENDS_X11},${ERDEPENDS_GL}"
  36. # GLESv2
  37. PACKAGECONFIG[gles2] = "--enable-gles2,--disable-gles2,${EDEPENDS_GLES2}, ${ERDEPENDS_GLES2}"
  38. # EGL backends
  39. PACKAGECONFIG[egl-kms] = "--enable-kms-egl-platform,--disable-kms-egl-platform,${EDEPENDS_KMS}"
  40. PACKAGECONFIG[egl-null] = "--enable-null-egl-platform,--disable-null-egl-platform"
  41. PACKAGECONFIG[egl-x11] = "--enable-xlib-egl-platform,--disable-xlib-egl-platform,${EDEPENDS_X11} ${EDEPENDS_EGL}"
  42. PACKAGECONFIG[egl-wayland] = "--enable-wayland-egl-platform,--disable-wayland-egl-platform,${EDEPENDS_WAYLAND}"
  43. # Wayland (server-side)
  44. PACKAGECONFIG[wayland-server] = "--enable-wayland-egl-server,--disable-wayland-egl-server,${EDEPENDS_WAYLAND}"
  45. # Support rendering text directly with Pango
  46. PACKAGECONFIG[cogl-pango] = "--enable-cogl-pango,--disable-cogl-pango,pango"
  47. # Respect the DISTRO_FEATURES to pull in GLX or Wayland as appropriate by
  48. # default.
  49. PACKAGECONFIG ??= "cogl-pango gles2 \
  50. ${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'egl-wayland', '', d)} \
  51. ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'glx egl-x11', '', d)} \
  52. "
  53. do_compile_prepend() {
  54. export GIR_EXTRA_LIBS_PATH="${B}/cogl/.libs"
  55. }
  56. FILES_${PN} = ""
  57. FILES_${PN}-examples = "${bindir}/* ${datadir}/cogl/examples-data/*"
  58. FILES_libcogl = "${libdir}/libcogl${SOLIBS} ${libdir}/girepository-1.0/Cogl-*.typelib"
  59. FILES_libcogl-gles2 = "${libdir}/libcogl-gles2${SOLIBS}"
  60. FILES_libcogl-pango = "${libdir}/libcogl-pango${SOLIBS} ${libdir}/girepository-1.0/CoglPango*.typelib"
  61. FILES_libcogl-path = "${libdir}/libcogl-path${SOLIBS}"
  62. # For backwards compatibility after Debian-renaming
  63. RPROVIDES_libcogl = "cogl-1.0"
  64. RCONFLICTS_libcogl = "cogl-1.0"
  65. RREPLACES_libcogl = "cogl-1.0"
  66. RDEPENDS_${PN}-dev = "libcogl"
  67. COMPATIBLE_HOST_armv4 = 'null'