Index: CMakeLists.txt
--- CMakeLists.txt.orig
+++ CMakeLists.txt
@@ -93,6 +93,11 @@ if(APPLE)
     set_target_properties(SDL PROPERTIES
         OUTPUT_NAME "SDL-1.2.0"
     )
+elseif(CMAKE_SYSTEM_NAME STREQUAL "OpenBSD")
+    set_target_properties(SDL PROPERTIES
+        VERSION "${PROJECT_VERSION}"
+        OUTPUT_NAME "SDL"
+    )
 elseif(UNIX AND NOT ANDROID)
     set_target_properties(SDL PROPERTIES
         VERSION "${PROJECT_VERSION}"
@@ -194,9 +199,17 @@ if(SDL12DEVEL)
       set(SDL_STATIC_LIBS "")
       set(SDL_RLD_FLAGS "")  # !!! FIXME: this forces rpath, which we might want?
     else() # unix
-      set(SDL_CFLAGS "-D_GNU_SOURCE=1 -D_REENTRANT")
+      if(CMAKE_SYSTEM_NAME STREQUAL "OpenBSD")
+        set(SDL_CFLAGS "-D_GNU_SOURCE=1 -D_REENTRANT -I${LOCALBASE}/include -I${X11BASE}/include -DXTHREADS")
+      else()
+        set(SDL_CFLAGS "-D_GNU_SOURCE=1 -D_REENTRANT")
+      endif()
       set(SDL_RLD_FLAGS "")  # !!! FIXME: this forces rpath, which we might want?
-      set(SDL_LIBS "-lSDL")
+      if(CMAKE_SYSTEM_NAME STREQUAL "OpenBSD")
+        set(SDL_LIBS "-lSDL -pthread -L${X11BASE}/lib")
+      else()
+        set(SDL_LIBS "-lSDL")
+      endif()
       set(SDL_STATIC_LIBS "")
       foreach(lib ${CMAKE_DL_LIBS})
           set(SDL_STATIC_LIBS "-l${lib}")
@@ -235,7 +248,7 @@ if(SDL12DEVEL)
 
   set(SOEXT ${CMAKE_SHARED_LIBRARY_SUFFIX})
   get_target_property(SONAME SDL OUTPUT_NAME)
-  if(UNIX AND NOT ANDROID)
+  if(UNIX AND NOT ANDROID AND NOT (CMAKE_SYSTEM_NAME STREQUAL "OpenBSD"))
     install(CODE "
       execute_process(COMMAND ${CMAKE_COMMAND} -E create_symlink
         \"lib${SONAME}${SOPOSTFIX}${SOEXT}\" \"libSDL${SOPOSTFIX}${SOEXT}\"
