find_package(fcgi REQUIRED)
endif(WITH_RADOSGW)
+option(WITH_RADOSGW_ASIO_FRONTEND "Rados Gateway's ASIO frontend is enabled" OFF)
+
#option for CephFS
option(WITH_CEPHFS "CephFS is enabled" ON)
/* define if radosgw enabled */
#cmakedefine WITH_RADOSGW
+/* define if radosgw's asio frontend enabled */
+#cmakedefine WITH_RADOSGW_ASIO_FRONTEND
+
/* define if HAVE_THREAD_SAFE_RES_QUERY */
#cmakedefine HAVE_THREAD_SAFE_RES_QUERY
${OPENLDAP_LIBRARIES} ${CRYPTO_LIBS})
set(radosgw_srcs
- rgw_asio_client.cc
- rgw_asio_frontend.cc
rgw_fcgi_process.cc
rgw_loadgen_process.cc
rgw_civetweb.cc
rgw_civetweb_frontend.cc
rgw_civetweb_log.cc
rgw_main.cc)
+
+if (WITH_RADOSGW_ASIO_FRONTEND)
+ list(APPEND radosgw_srcs
+ rgw_asio_client.cc
+ rgw_asio_frontend.cc)
+endif (WITH_RADOSGW_ASIO_FRONTEND)
+
add_executable(radosgw ${radosgw_srcs} $<TARGET_OBJECTS:civetweb_common_objs>)
target_link_libraries(radosgw rgw_a librados
cls_rgw_client cls_lock_client cls_refcount_client
#include "rgw_request.h"
#include "rgw_process.h"
#include "rgw_frontend.h"
+#if defined(WITH_RADOSGW_ASIO_FRONTEND)
#include "rgw_asio_frontend.h"
+#endif /* WITH_RADOSGW_ASIO_FRONTEND */
#include <map>
#include <string>
RGWFrontendConfig *config = fiter->second;
string framework = config->get_framework();
RGWFrontend *fe;
+#if defined(WITH_RADOSGW_ASIO_FRONTEND)
if ((framework == "asio") &&
cct->check_experimental_feature_enabled("rgw-asio-frontend")) {
int port;
RGWProcessEnv env{ store, &rest, olog, port, uri_prefix };
fe = new RGWAsioFrontend(env);
} else if (framework == "fastcgi" || framework == "fcgi") {
+#else
+ if (framework == "fastcgi" || framework == "fcgi") {
+#endif /* WITH_RADOSGW_ASIO_FRONTEND */
std::string uri_prefix;
config->get_val("prefix", "", &uri_prefix);
RGWProcessEnv fcgi_pe = { store, &rest, olog, 0, uri_prefix };