1. 08 Jul, 2019 2 commits
  2. 26 Jun, 2019 1 commit
  3. 16 Aug, 2018 1 commit
  4. 05 Aug, 2018 3 commits
  5. 13 Jun, 2018 1 commit
    • Ingvar Stepanyan's avatar
      Add kj-gzip to CMakeLists.txt · 04862a2e
      Ingvar Stepanyan authored
      Contents of kj-gzip are guarded by KJ_HAS_ZLIB, but the library itself should be still added unconditionally to non-CAPNP_LITE build for tests to link properly.
      04862a2e
  6. 11 Dec, 2017 3 commits
  7. 20 Jul, 2017 1 commit
  8. 09 Jun, 2017 1 commit
    • Neal Gompa's avatar
      Add versioning to the libraries in the CMake build · 7d7847b5
      Neal Gompa authored
      The Autotools and CMake builds are almost the same, except for
      the libraries not being generated as versioned libraries in CMake.
      
      Fixing this lets Linux CMake builds be on the same level as Autotools ones.
      7d7847b5
  9. 01 Jun, 2017 1 commit
  10. 22 May, 2017 1 commit
  11. 29 Apr, 2017 1 commit
    • Harris Hancock's avatar
      Use target_compile_features to request C++11 · 1d0d1c3b
      Harris Hancock authored
      Projects which use Cap'n Proto require C++11, because they must be able to
      compile our headers. Old gcc defaults to C++98, forcing users to manually
      specify the -std=gnu++11 flag in their CMake projects. CMake 3.1
      introduced the target_compile_features command which removes this
      necessity by automatically communicating the C++ standard level
      requirement to client projects.
      
      Specifically, if target `kj` requires a C++11 feature publicly, then all
      targets which link to `kj` will also require that C++11 feature, and get
      the -std=gnu++11 flag for free. If that target is a library, such as
      `kj-async`, and `kj-async` links publicly to `kj`, the requirement is also
      transitive to all targets which link to `kj-async`.
      
      Note that CMake's default behavior is to request compiler-specific
      extensions, such as those provided by the -std=gnu++11 flag. You must
      specifically opt out of these extensions. I'm not aware of any way to
      propagate this nuance in CMake, but added a check to at least prevent
      users from compiling Cap'n Proto without extensions.
      
      With this change, the c++/samples/CMakeLists.txt will build with MinGW
      with no change beyond requiring a later version of CMake.
      1d0d1c3b
  12. 28 Apr, 2017 1 commit
  13. 21 Apr, 2017 1 commit
  14. 10 Apr, 2017 1 commit
    • Kenton Varda's avatar
      Move a couple things from libkj-test into libkj proper. · ca7304b5
      Kenton Varda authored
      This allows functions which use KJ_EXPECT and other test macros to be built without linking libkj-test, which pulls in a possibly-unwanted main() function.
      
      In particular, afl-testcase.c++ could not link in -fno-exceptions mode without this change.
      ca7304b5
  15. 24 Jan, 2017 2 commits
  16. 23 Jan, 2017 1 commit
  17. 22 Jan, 2017 1 commit
  18. 29 Jul, 2016 1 commit
    • Vitali Lovich's avatar
      Fix build compatability with Android · cbacb180
      Vitali Lovich authored
      Add missing include when building on Linux
      
      Discovered trying to build on Android using CMake.  UIO_MAXIOV is only
      exported by the linux/uio.h header which was never included.  Not sure
      how normal Linux builds work.
      
      Add missing reinterpret cast from const void* to const byte*.
      
      Remove -pthread compile flag when building under Android.  ANDROID cmake
      variable exported by android-cmake project.
      cbacb180
  19. 20 May, 2016 1 commit
  20. 19 Apr, 2016 3 commits
  21. 11 Apr, 2016 2 commits
    • Alex Richardson's avatar
      7ca97fc0
    • Alex Richardson's avatar
      Add a cmake package config module · f7d685be
      Alex Richardson authored
      This makes it a lot easier for CMake based projects to use Cap'n Proto.
      
      Example usage:
      
      find_package(CapnProto)
      capnp_generate_cpp(FOO_SRCS FOO_HDRS foo.capnp)
      add_executable(foo main.cpp ${FOO_SRCS})
      target_link_libraries(foo CapnProto::capnp CapnProto::capnp-rpc)
      
      This is a lot better than the previous variable based solution since
      linking to nonexistent targets is an error whereas an empty variable
      expansion (e.g. due to typos) will be silently ignored. It also makes
      sure that the right compiler flags, include directories, defines and
      link libraries are passed to the compiler for that target without
      needing any other include_directories(), etc.
      f7d685be
  22. 01 Jan, 2015 1 commit
  23. 30 Dec, 2014 1 commit
  24. 30 Nov, 2014 1 commit
  25. 23 Nov, 2014 2 commits
  26. 14 Nov, 2014 1 commit
  27. 29 Oct, 2014 2 commits