diff --git a/CMakeLists.txt b/CMakeLists.txt
index efd10887b..8b41cc1ba 100644
--- a/CMakeLists.txt	
+++ b/CMakeLists.txt
@@ -470,7 +470,7 @@ if(WEBP_BUILD_VWEBP)
     target_link_libraries(vwebp
                           ${OPENGL_LIBRARIES}
                           exampleutil
-                          ${GLUT_glut_LIBRARY}
+                          GLUT::GLUT
                           imageioutil
                           webp
                           webpdemux)
@@ -481,6 +481,9 @@ if(WEBP_BUILD_VWEBP)
     if(UNIX AND NOT(ANDROID OR BLACKBERRY OR APPLE))
       find_package(X11 REQUIRED)
       target_link_libraries(vwebp ${X11_LIBRARIES} ${X11_Xxf86vm_LIB})
+      if(X11_Xrandr_FOUND) # due to glut linking xrandr if found
+        target_link_libraries(vwebp ${X11_Xrandr_LIB})
+      endif()
     endif()
     install(TARGETS vwebp RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
     if(${CMAKE_SYSTEM_NAME} STREQUAL "Darwin")
