@@ -52,8 +52,16 @@ ELSE()
5252 SET (default_pcre_libraries ${CMAKE_INSTALL_PREFIX } /lib/pcre.lib)
5353ENDIF ()
5454
55+ IF (EXISTS "${CMAKE_INSTALL_PREFIX } /lib/nghttp2d.lib" )
56+ SET (default_nghttp2_libraries "${CMAKE_INSTALL_PREFIX } /lib/nghttp2d.lib" )
57+ ELSE ()
58+ SET (default_nghttp2_libraries "${CMAKE_INSTALL_PREFIX } /lib/nghttp2.lib" )
59+ ENDIF ()
60+
5561SET (APR_INCLUDE_DIR "${CMAKE_INSTALL_PREFIX } /include" CACHE STRING "Directory with APR[-Util] include files" )
5662SET (APR_LIBRARIES ${default_apr_libraries} CACHE STRING "APR libraries to link with" )
63+ SET (NGHTTP2_INCLUDE_DIR "${CMAKE_INSTALL_PREFIX } /include" CACHE STRING "Directory with NGHTTP2 include files within nghttp2 subdirectory" )
64+ SET (NGHTTP2_LIBRARIES ${default_nghttp2_libraries} CACHE STRING "NGHTTP2 libraries to link with" )
5765SET (PCRE_INCLUDE_DIR "${CMAKE_INSTALL_PREFIX } /include" CACHE STRING "Directory with PCRE include files" )
5866SET (PCRE_LIBRARIES ${default_pcre_libraries} CACHE STRING "PCRE libraries to link with" )
5967SET (LIBXML2_ICONV_INCLUDE_DIR "" CACHE STRING "Directory with iconv include files for libxml2" )
@@ -170,11 +178,24 @@ IF(OPENSSL_FOUND)
170178 ENDIF ()
171179ENDIF ()
172180
181+ # See if nghttp2 exists in a configured or defaulted location
182+ SET (NGHTTP2_FOUND TRUE )
183+ IF (EXISTS "${NGHTTP2_INCLUDE_DIR} /nghttp2/nghttp2.h" )
184+ FOREACH (onelib ${NGHTTP2_LIBRARIES} )
185+ IF (NOT EXISTS ${onelib} )
186+ SET (NGHTTP2_FOUND FALSE )
187+ ENDIF ()
188+ ENDFOREACH ()
189+ ELSE ()
190+ SET (NGHTTP2_FOUND FALSE )
191+ ENDIF ()
192+
173193MESSAGE (STATUS "" )
174194MESSAGE (STATUS "Summary of feature detection:" )
175195MESSAGE (STATUS "" )
176196MESSAGE (STATUS "LIBXML2_FOUND ............ : ${LIBXML2_FOUND} " )
177197MESSAGE (STATUS "LUA51_FOUND .............. : ${LUA51_FOUND} " )
198+ MESSAGE (STATUS "NGHTTP2_FOUND ............ : ${NGHTTP2_FOUND} " )
178199MESSAGE (STATUS "OPENSSL_FOUND ............ : ${OPENSSL_FOUND} " )
179200MESSAGE (STATUS "ZLIB_FOUND ............... : ${ZLIB_FOUND} " )
180201MESSAGE (STATUS "APR_HAS_LDAP ............. : ${APR_HAS_LDAP} " )
@@ -272,6 +293,7 @@ SET(MODULE_LIST
272293 "modules/generators/mod_info+I+server information"
273294 "modules/generators/mod_status+I+process/thread monitoring"
274295 "modules/http/mod_mime+A+mapping of file-extension to MIME. Disabling this module is normally not recommended."
296+ "modules/http2/mod_http2+a+HTTP/2 protocol support"
275297 "modules/ldap/mod_ldap+i+LDAP caching and connection pooling services"
276298 "modules/loggers/mod_log_config+A+logging configuration. You won't be able to log requests to the server without this module."
277299 "modules/loggers/mod_log_debug+I+configurable debug logging"
@@ -371,6 +393,23 @@ IF(ZLIB_FOUND)
371393ENDIF ()
372394SET (mod_firehose_requires SOMEONE_TO_MAKE_IT_COMPILE_ON_WINDOWS)
373395SET (mod_heartbeat_extra_libs mod_watchdog)
396+ SET (mod_http2_requires NGHTTP2_FOUND)
397+ SET (mod_http2_extra_defines ssize_t=long)
398+ SET (mod_http2_extra_libs ${NGHTTP2_LIBRARIES} )
399+ SET (mod_http2_extra_sources
400+ modules/http2/h2_alt_svc.c modules/http2/h2_config.c
401+ modules/http2/h2_conn.c modules/http2/h2_conn_io.c
402+ modules/http2/h2_ctx.c modules/http2/h2_from_h1.c
403+ modules/http2/h2_h2.c modules/http2/h2_io.c
404+ modules/http2/h2_io_set.c modules/http2/h2_mplx.c
405+ modules/http2/h2_request.c modules/http2/h2_response.c
406+ modules/http2/h2_session.c modules/http2/h2_stream.c
407+ modules/http2/h2_stream_set.c modules/http2/h2_switch.c
408+ modules/http2/h2_task.c modules/http2/h2_task_input.c
409+ modules/http2/h2_task_output.c modules/http2/h2_task_queue.c
410+ modules/http2/h2_to_h1.c modules/http2/h2_util.c
411+ modules/http2/h2_worker.c modules/http2/h2_workers.c
412+ )
374413SET (mod_ldap_extra_defines LDAP_DECLARE_EXPORT)
375414SET (mod_ldap_extra_libs wldap32)
376415SET (mod_ldap_extra_sources
0 commit comments