diff --git a/hw/xfree86/drivers/modesetting/Makefile.am b/hw/xfree86/drivers/modesetting/Makefile.am index 961c57408..eb5c57276 100644 --- a/hw/xfree86/drivers/modesetting/Makefile.am +++ b/hw/xfree86/drivers/modesetting/Makefile.am @@ -44,6 +44,10 @@ modesetting_drv_la_LDFLAGS = -module -avoid-version modesetting_drv_la_LIBADD = $(UDEV_LIBS) $(DRM_LIBS) modesetting_drv_ladir = @moduledir@/drivers +if PRESENT +present_c=present.c +endif + modesetting_drv_la_SOURCES = \ dri2.c \ driver.c \ @@ -52,7 +56,7 @@ modesetting_drv_la_SOURCES = \ drmmode_display.h \ dumb_bo.c \ dumb_bo.h \ - present.c \ + $(present_c) \ vblank.c \ pageflip.c \ $(NULL) diff --git a/hw/xfree86/drivers/modesetting/drmmode_display.c b/hw/xfree86/drivers/modesetting/drmmode_display.c index 21c9222e1..b9e8bb97e 100644 --- a/hw/xfree86/drivers/modesetting/drmmode_display.c +++ b/hw/xfree86/drivers/modesetting/drmmode_display.c @@ -49,7 +49,9 @@ #include #include "xf86Crtc.h" #include "drmmode_display.h" +#ifdef PRESENT #include "present.h" +#endif #include @@ -233,8 +235,11 @@ get_drawable_modifiers(DrawablePtr draw, uint32_t format, ScrnInfoPtr scrn = xf86ScreenToScrn(draw->pScreen); modesettingPtr ms = modesettingPTR(scrn); - if (!present_can_window_flip((WindowPtr) draw) || - !ms->drmmode.pageflip || ms->drmmode.dri2_flipping || !scrn->vtSema) { + if (!ms->drmmode.pageflip || ms->drmmode.dri2_flipping || !scrn->vtSema +#ifdef PRESENT + || !present_can_window_flip((WindowPtr) draw) +#endif + ) { *num_modifiers = 0; *modifiers = NULL; return TRUE; diff --git a/os/utils.c b/os/utils.c index 008ed0463..d8fab7ed0 100644 --- a/os/utils.c +++ b/os/utils.c @@ -112,7 +112,9 @@ __stdcall unsigned long GetTickCount(void); #include "miinitext.h" +#ifdef PRESENT #include "present.h" +#endif Bool noTestExtensions; @@ -540,7 +542,9 @@ UseMsg(void) ErrorF ("-deferglyphs [none|all|16] defer loading of [no|all|16-bit] glyphs\n"); ErrorF("-f # bell base (0-100)\n"); +#ifdef PRESENT ErrorF("-fakescreenfps # fake screen default fps (1-600)\n"); +#endif ErrorF("-fp string default font path\n"); ErrorF("-help prints message with these options\n"); ErrorF("+iglx Allow creating indirect GLX contexts\n"); @@ -793,6 +797,7 @@ ProcessCommandLine(int argc, char *argv[]) else UseMsg(); } +#ifdef PRESENT else if (strcmp(argv[i], "-fakescreenfps") == 0) { if (++i < argc) { FakeScreenFps = (uint32_t) atoi(argv[i]); @@ -802,6 +807,7 @@ ProcessCommandLine(int argc, char *argv[]) else UseMsg(); } +#endif else if (strcmp(argv[i], "-fp") == 0) { if (++i < argc) { defaultFontPath = argv[i];