Package: plymouth Severity: normal jcristau just showed me some patches he had used to try to get this to work. i don't think he finished the project, but maybe it's a useful start.
diff --git a/configure.ac b/configure.ac index 5bcf38a..a3a6e50 100644 --- a/configure.ac +++ b/configure.ac @@ -56,48 +56,12 @@ PKG_CHECK_MODULES(GTK, [gtk+-2.0 >= 2.12.0 ]) AC_SUBST(GTK_CFLAGS) AC_SUBST(GTK_LIBS) -PKG_CHECK_MODULES(DRM, [libdrm libdrm_intel libdrm_radeon libdrm_nouveau]) - -OLD_CFLAGS="$CFLAGS" -CFLAGS="$CFLAGS $DRM_CFLAGS" -AC_MSG_CHECKING([if i915_drm.h, radeon_drm.h and nouveau_drm.h are in include path]) -AC_COMPILE_IFELSE(AC_LANG_PROGRAM( -[[ - #include <stdint.h> - #include <stdlib.h> - #include "i915_drm.h" - #include "radeon_drm.h" - #include "nouveau_drm.h" -]],[[]]),[found_drm_kernel_headers=yes],[found_drm_kernel_headers=no]) - -if test "$found_drm_kernel_headers" = "yes"; then - AC_MSG_RESULT([yes]) -else - AC_MSG_RESULT([no]) - AC_MSG_CHECKING([if we can find them anyway]) - - MORE_DRM_CFLAGS="-I`$PKG_CONFIG --variable includedir libdrm`/drm" - CFLAGS="$CFLAGS $MORE_DRM_CFLAGS" - AC_COMPILE_IFELSE(AC_LANG_PROGRAM( - [[ - #include <stdint.h> - #include <stdlib.h> - #include "i915_drm.h" - #include "radeon_drm.h" - #include "nouveau_drm.h" - ]],[[]]),[found_drm_kernel_headers=yes],[found_drm_kernel_headers=no]) - - if test "$found_drm_kernel_headers" = "yes"; then - AC_MSG_RESULT([yes]) - DRM_CFLAGS="$DRM_CFLAGS $MORE_DRM_CFLAGS" - else - AC_MSG_RESULT([no]) - AC_MSG_ERROR([Could not find i915_drm.h, radeon_drm.h and/or nouveau_drm.h]) - fi -fi -CFLAGS="$OLD_CFLAGS" -AC_SUBST(DRM_CFLAGS) -AC_SUBST(DRM_LIBS) +PKG_CHECK_MODULES(DRM, [libdrm]) +PKG_CHECK_MODULES(DRM_INTEL, [libdrm_intel], DRM_INTEL=yes, DRM_INTEL=no) +PKG_CHECK_MODULES(DRM_RADEON, [libdrm_radeon], DRM_RADEON=yes, DRM_RADEON=no) +PKG_CHECK_MODULES(DRM_NOUVEAU, [libdrm_nouveau], DRM_NOUVEAU=yes, DRM_NOUVEAU=no) +AM_CONDITIONAL(DRM_INTEL, test x$DRM_INTEL != xno) +AC_DEFINE(DRM_INTEL, 1, [Enable the i915 drm plugin]) AC_ARG_ENABLE(libkms, AS_HELP_STRING([--enable-libkms],[enable building with libkms support]),enable_libkms=$enableval,enable_libkms=yes) AM_CONDITIONAL(ENABLE_LIBKMS, [test "$enable_libkms" = yes]) diff --git a/src/plugins/renderers/drm/Makefile.am b/src/plugins/renderers/drm/Makefile.am index 7d2ef60..fce93cf 100644 --- a/src/plugins/renderers/drm/Makefile.am +++ b/src/plugins/renderers/drm/Makefile.am @@ -17,13 +17,19 @@ drm_la_LIBADD = $(PLYMOUTH_LIBS) $(DRM_LIBS) \ ../../../libply-splash-core/libply-splash-core.la drm_la_SOURCES = $(srcdir)/plugin.c \ $(srcdir)/ply-renderer-driver.h \ - $(srcdir)/ply-renderer-i915-driver.h \ - $(srcdir)/ply-renderer-i915-driver.c \ $(srcdir)/ply-renderer-radeon-driver.h \ $(srcdir)/ply-renderer-radeon-driver.c \ $(srcdir)/ply-renderer-nouveau-driver.h \ $(srcdir)/ply-renderer-nouveau-driver.c +if DRM_INTEL +drm_la_SOURCES += \ + $(srcdir)/ply-renderer-i915-driver.h \ + $(srcdir)/ply-renderer-i915-driver.c +drm_la_CFLAGS += $(DRM_INTEL_CFLAGS) +drm_la_LIBADD += $(DRM_INTEL_LIBS) +endif + if ENABLE_LIBKMS drm_la_LIBADD += $(LIBKMS_LIBS) drm_la_CFLAGS += $(LIBKMS_CFLAGS) diff --git a/src/plugins/renderers/drm/plugin.c b/src/plugins/renderers/drm/plugin.c index 29b1952..abf4fc8 100644 --- a/src/plugins/renderers/drm/plugin.c +++ b/src/plugins/renderers/drm/plugin.c @@ -59,7 +59,9 @@ #include "ply-renderer.h" #include "ply-renderer-plugin.h" #include "ply-renderer-driver.h" +#if DRM_INTEL #include "ply-renderer-i915-driver.h" +#endif #include "ply-renderer-radeon-driver.h" #include "ply-renderer-nouveau-driver.h" @@ -502,12 +504,15 @@ load_driver (ply_renderer_backend_t *backend) return false; } +#if DRM_INTEL if (strcmp (driver_name, "i915") == 0) { backend->driver_interface = ply_renderer_i915_driver_get_interface (); backend->driver_supports_mapping_console = true; } - else if (strcmp (driver_name, "radeon") == 0) + else +#endif + if (strcmp (driver_name, "radeon") == 0) { backend->driver_interface = ply_renderer_radeon_driver_get_interface (); backend->driver_supports_mapping_console = false; -- System Information: Debian Release: 6.0 APT prefers testing APT policy: (500, 'testing'), (200, 'unstable'), (1, 'experimental') Architecture: i386 (i686) Kernel: Linux 2.6.37-trunk-686 (SMP w/1 CPU core) Locale: LANG=en_US.utf8, LC_CTYPE=en_US.utf8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/bash -- To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org