Fix CentOS compilation
Reviewers: buda Reviewed By: buda Subscribers: pullbot Differential Revision: https://phabricator.memgraph.io/D2755
This commit is contained in:
parent
9d3f75a34d
commit
e9ea8693fa
@ -215,6 +215,8 @@ import_external_library(libbcrypt STATIC
|
||||
import_external_library(mgclient STATIC
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/mgclient/lib/libmgclient.a
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/mgclient/include
|
||||
CMAKE_ARGS -DBUILD_TESTING=OFF)
|
||||
CMAKE_ARGS -DCMAKE_C_COMPILER=${CMAKE_C_COMPILER}
|
||||
-DCMAKE_CXX_COMPILER=${CMAKE_CXX_COMPILER}
|
||||
-DBUILD_TESTING=OFF)
|
||||
find_package(OpenSSL REQUIRED)
|
||||
target_link_libraries(mgclient INTERFACE ${OPENSSL_LIBRARIES})
|
||||
|
@ -135,3 +135,4 @@ sed -i 's/TARGETS ${ROCKSDB_SHARED_LIB}/TARGETS ${ROCKSDB_SHARED_LIB} OPTIONAL/'
|
||||
mgclient_tag="fe94b3631385ef5dbe40a3d8458860dbcc33e6ea" # May 27, 2019
|
||||
# git clone https://github.com/memgraph/mgclient.git
|
||||
clone git://deps.memgraph.io/mgclient.git mgclient $mgclient_tag
|
||||
sed -i 's/\${CMAKE_INSTALL_LIBDIR}/lib/' mgclient/src/CMakeLists.txt
|
||||
|
@ -16,6 +16,7 @@
|
||||
#include <sched.h>
|
||||
#include <seccomp.h>
|
||||
#include <sys/resource.h>
|
||||
#include <sys/syscall.h>
|
||||
#include <sys/time.h>
|
||||
#include <sys/types.h>
|
||||
#include <sys/wait.h>
|
||||
@ -133,7 +134,9 @@ const std::vector<int> kSeccompSyscallsBlacklist = {
|
||||
SCMP_SYS(kexec_load),
|
||||
SCMP_SYS(mknodat),
|
||||
SCMP_SYS(unshare),
|
||||
#ifdef SYS_seccomp
|
||||
SCMP_SYS(seccomp),
|
||||
#endif
|
||||
};
|
||||
|
||||
bool SetupSeccomp() {
|
||||
|
@ -15,12 +15,6 @@
|
||||
#include <gflags/gflags.h>
|
||||
#include <glog/logging.h>
|
||||
|
||||
#include "communication/bolt/v1/exceptions.hpp"
|
||||
#include "communication/bolt/v1/session.hpp"
|
||||
#include "communication/init.hpp"
|
||||
#include "communication/server.hpp"
|
||||
#include "communication/session.hpp"
|
||||
#include "glue/communication.hpp"
|
||||
#include "helpers.hpp"
|
||||
#include "py/py.hpp"
|
||||
#include "query/exceptions.hpp"
|
||||
@ -39,6 +33,24 @@
|
||||
#include "utils/terminate_handler.hpp"
|
||||
#include "version.hpp"
|
||||
|
||||
// Communication libraries must be included after query libraries are included.
|
||||
// This is to enable compilation of the binary when linking with old OpenSSL
|
||||
// libraries (as on CentOS 7).
|
||||
//
|
||||
// The OpenSSL library available on CentOS 7 is v1.0.0, that version includes
|
||||
// `libkrb5` in its public API headers (that we include in our communication
|
||||
// stack). The `libkrb5` library has `#define`s for `TRUE` and `FALSE`. Those
|
||||
// defines clash with Antlr's usage of `TRUE` and `FALSE` as enumeration keys.
|
||||
// Because of that the definitions of `TRUE` and `FALSE` that are inherited
|
||||
// from `libkrb5` must be included after the Antlr includes. Hence,
|
||||
// communication headers must be included after query headers.
|
||||
#include "communication/bolt/v1/exceptions.hpp"
|
||||
#include "communication/bolt/v1/session.hpp"
|
||||
#include "communication/init.hpp"
|
||||
#include "communication/server.hpp"
|
||||
#include "communication/session.hpp"
|
||||
#include "glue/communication.hpp"
|
||||
|
||||
#ifdef MG_ENTERPRISE
|
||||
#include "audit/log.hpp"
|
||||
#include "auth/auth.hpp"
|
||||
|
Loading…
Reference in New Issue
Block a user