You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@mesos.apache.org by "Benjamin Bannier (JIRA)" <ji...@apache.org> on 2018/07/26 21:39:00 UTC

[jira] [Created] (MESOS-9114) cmake build is broken on macos

Benjamin Bannier created MESOS-9114:
---------------------------------------

             Summary: cmake build is broken on macos
                 Key: MESOS-9114
                 URL: https://issues.apache.org/jira/browse/MESOS-9114
             Project: Mesos
          Issue Type: Bug
    Affects Versions: 1.7.0
         Environment: macos-10.13.6
            Reporter: Benjamin Bannier


Since the changes for MESOS-9092 have landed it seems impossible to perform a cmake-based build on macos. This seems independent of the used generator and both {{make}} and {{ninja}}-based builds appear broken, e.g.,

{noformat}
# cmake ~/src/mesos
# make stout-tests
...
 87%] Building CXX object 3rdparty/stout/tests/CMakeFiles/stout-tests.dir/uuid_tests.cpp.o
In file included from /Users/bbannier/src/mesos/3rdparty/stout/tests/json_tests.cpp:24:
In file included from /Users/bbannier/src/mesos/3rdparty/stout/include/stout/json.hpp:41:
/Users/bbannier/src/mesos/3rdparty/stout/include/stout/jsonify.hpp:36:10: fatal error: 'rapidjson/stringbuffer.h' file not found
#include <rapidjson/stringbuffer.h>
         ^~~~~~~~~~~~~~~~~~~~~~~~~~
...
{noformat}

As a workaround I can apply the following patch,

{code}
diff --git a/3rdparty/CMakeLists.txt b/3rdparty/CMakeLists.txt
index 9b0dfe0ab..b244267e8 100644
--- a/3rdparty/CMakeLists.txt
+++ b/3rdparty/CMakeLists.txt
@@ -440,9 +440,7 @@ EXTERNAL(rapidjson ${RAPIDJSON_VERSION} ${CMAKE_CURRENT_BINARY_DIR})
 add_library(rapidjson INTERFACE)
 add_dependencies(rapidjson ${RAPIDJSON_TARGET})

-target_include_directories(
-    rapidjson INTERFACE
-    ${RAPIDJSON_ROOT}/rapidjson-${RAPIDJSON_VERSION}/include)
+target_include_directories(rapidjson INTERFACE ${RAPIDJSON_ROOT}/include)

 ExternalProject_Add(
   ${RAPIDJSON_TARGET}
{code}
This however seems to break cmake-based builds on Linux.

I suspect this might be related to diverging behavior of {{tar}} on GNU or BSD platforms.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)