diff --git a/CMakeLists.txt b/CMakeLists.txt
index 312105a37cdf2755a425fd178682d24f1fc6b994..55bb7c114d4c645ab39e474f8699706e3c22d0cf 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -224,12 +224,15 @@ feature_summary(WHAT ALL)
 
 set(Opus_PUBLIC_HEADER
     ${CMAKE_CURRENT_SOURCE_DIR}/include/opus.h
-    ${CMAKE_CURRENT_SOURCE_DIR}/include/opus_custom.h
     ${CMAKE_CURRENT_SOURCE_DIR}/include/opus_defines.h
     ${CMAKE_CURRENT_SOURCE_DIR}/include/opus_multistream.h
     ${CMAKE_CURRENT_SOURCE_DIR}/include/opus_projection.h
     ${CMAKE_CURRENT_SOURCE_DIR}/include/opus_types.h)
 
+if(OPUS_CUSTOM_MODES)
+  list(APPEND Opus_PUBLIC_HEADER ${CMAKE_CURRENT_SOURCE_DIR}/include/opus_custom.h)
+endif()
+
 add_library(opus ${opus_headers} ${opus_sources} ${opus_sources_float} ${Opus_PUBLIC_HEADER})
 add_library(Opus::opus ALIAS opus)