diff --git a/CMakeLists.txt b/CMakeLists.txt
index 156fa4ea9..3fba032f2 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -414,11 +414,14 @@ add_subdirectory( libraries/lzma )
 add_subdirectory( tools )
 add_subdirectory( libraries/gdtoa )
 add_subdirectory( wadsrc )
-add_subdirectory( wadsrc_bm )
 add_subdirectory( wadsrc_lights )
-add_subdirectory( wadsrc_extra )
 add_subdirectory( wadsrc_widepix )
 add_subdirectory( src )
+option (BUILD_NONFREE "Build nonfree components" ON)
+if ( BUILD_NONFREE )
+    add_subdirectory( wadsrc_bm )
+    add_subdirectory( wadsrc_extra )
+endif()
 
 if( NOT CMAKE_CROSSCOMPILING )
 	export(TARGETS ${CROSS_EXPORTS} FILE "${CMAKE_BINARY_DIR}/ImportExecutables.cmake" )
