diff --git a/CMakeLists.txt b/CMakeLists.txt index c960077..b3f5272 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -21,3 +21,4 @@ add_subdirectory(test) add_subdirectory(demo/chat) add_subdirectory(demo/msg_que) add_subdirectory(demo/kvs) +add_subdirectory(demo/PyCpp) diff --git a/bin/setup.py b/bin/setup.py new file mode 100644 index 0000000..520923e --- /dev/null +++ b/bin/setup.py @@ -0,0 +1,3 @@ +import libPyCpp + +s = libPyCpp.kvs_client(1,1,"50") diff --git a/demo/PyCpp/CMakeFiles/CMakeDirectoryInformation.cmake b/demo/PyCpp/CMakeFiles/CMakeDirectoryInformation.cmake new file mode 100644 index 0000000..5cb0e90 --- /dev/null +++ b/demo/PyCpp/CMakeFiles/CMakeDirectoryInformation.cmake @@ -0,0 +1,16 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.18 + +# Relative path conversion top directories. +set(CMAKE_RELATIVE_PATH_TOP_SOURCE "/home/ubuntu/ipc/cpp-ipc") +set(CMAKE_RELATIVE_PATH_TOP_BINARY "/home/ubuntu/ipc/cpp-ipc") + +# Force unix paths in dependencies. +set(CMAKE_FORCE_UNIX_PATHS 1) + + +# The C and CXX include file regular expressions for this directory. +set(CMAKE_C_INCLUDE_REGEX_SCAN "^.*$") +set(CMAKE_C_INCLUDE_REGEX_COMPLAIN "^$") +set(CMAKE_CXX_INCLUDE_REGEX_SCAN ${CMAKE_C_INCLUDE_REGEX_SCAN}) +set(CMAKE_CXX_INCLUDE_REGEX_COMPLAIN ${CMAKE_C_INCLUDE_REGEX_COMPLAIN}) diff --git a/demo/PyCpp/CMakeFiles/PyCpp.dir/CXX.includecache b/demo/PyCpp/CMakeFiles/PyCpp.dir/CXX.includecache new file mode 100644 index 0000000..e4fecfe --- /dev/null +++ b/demo/PyCpp/CMakeFiles/PyCpp.dir/CXX.includecache @@ -0,0 +1,86 @@ +#IncludeRegexLine: ^[ ]*[#%][ ]*(include|import)[ ]*[<"]([^">]+)([">]) + +#IncludeRegexScan: ^.*$ + +#IncludeRegexComplain: ^$ + +#IncludeRegexTransform: + +/home/ubuntu/ipc/cpp-ipc/demo/PyCpp/Client.cpp +signal.h +- +iostream +- +string +- +cstring +- +chrono +- +cstddef +- +libipc/ipc.h +/home/ubuntu/ipc/cpp-ipc/demo/PyCpp/libipc/ipc.h +libipc/shm.h +/home/ubuntu/ipc/cpp-ipc/demo/PyCpp/libipc/shm.h +capo/random.hpp +/home/ubuntu/ipc/cpp-ipc/demo/PyCpp/capo/random.hpp +util.h +/home/ubuntu/ipc/cpp-ipc/demo/PyCpp/util.h + +/home/ubuntu/ipc/cpp-ipc/demo/PyCpp/util.h +python3.6/Python.h +- + +3rdparty/capo/random.hpp +random +- +utility +- + +include/libipc/buffer.h +cstddef +- +tuple +- +vector +- +type_traits +- +libipc/export.h +include/libipc/libipc/export.h +libipc/def.h +include/libipc/libipc/def.h + +include/libipc/def.h +cstddef +- +cstdint +- +limits +- +new +- +utility +- + +include/libipc/export.h + +include/libipc/ipc.h +string +- +libipc/export.h +include/libipc/libipc/export.h +libipc/def.h +include/libipc/libipc/def.h +libipc/buffer.h +include/libipc/libipc/buffer.h +libipc/shm.h +include/libipc/libipc/shm.h + +include/libipc/shm.h +cstddef +- +libipc/export.h +include/libipc/libipc/export.h + diff --git a/demo/PyCpp/CMakeFiles/PyCpp.dir/DependInfo.cmake b/demo/PyCpp/CMakeFiles/PyCpp.dir/DependInfo.cmake new file mode 100644 index 0000000..90f2454 --- /dev/null +++ b/demo/PyCpp/CMakeFiles/PyCpp.dir/DependInfo.cmake @@ -0,0 +1,36 @@ +# The set of languages for which implicit dependencies are needed: +set(CMAKE_DEPENDS_LANGUAGES + "CXX" + ) +# The set of files for implicit dependencies of each language: +set(CMAKE_DEPENDS_CHECK_CXX + "/home/ubuntu/ipc/cpp-ipc/demo/PyCpp/Client.cpp" "/home/ubuntu/ipc/cpp-ipc/demo/PyCpp/CMakeFiles/PyCpp.dir/Client.cpp.o" + "/home/ubuntu/ipc/cpp-ipc/src/buffer.cpp" "/home/ubuntu/ipc/cpp-ipc/demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/buffer.cpp.o" + "/home/ubuntu/ipc/cpp-ipc/src/ipc.cpp" "/home/ubuntu/ipc/cpp-ipc/demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/ipc.cpp.o" + "/home/ubuntu/ipc/cpp-ipc/src/libipc/platform/shm_linux.cpp" "/home/ubuntu/ipc/cpp-ipc/demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/libipc/platform/shm_linux.cpp.o" + "/home/ubuntu/ipc/cpp-ipc/src/pool_alloc.cpp" "/home/ubuntu/ipc/cpp-ipc/demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/pool_alloc.cpp.o" + "/home/ubuntu/ipc/cpp-ipc/src/shm.cpp" "/home/ubuntu/ipc/cpp-ipc/demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/shm.cpp.o" + "/home/ubuntu/ipc/cpp-ipc/src/tls_pointer.cpp" "/home/ubuntu/ipc/cpp-ipc/demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/tls_pointer.cpp.o" + "/home/ubuntu/ipc/cpp-ipc/src/waiter.cpp" "/home/ubuntu/ipc/cpp-ipc/demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/waiter.cpp.o" + "/home/ubuntu/ipc/cpp-ipc/demo/PyCpp/util.cpp" "/home/ubuntu/ipc/cpp-ipc/demo/PyCpp/CMakeFiles/PyCpp.dir/util.cpp.o" + ) +set(CMAKE_CXX_COMPILER_ID "GNU") + +# Preprocessor definitions for this target. +set(CMAKE_TARGET_DEFINITIONS_CXX + "PyCpp_EXPORTS" + ) + +# The include file search paths: +set(CMAKE_CXX_TARGET_INCLUDE_PATH + "include" + "3rdparty" + "src" + ) + +# Targets to which this target links. +set(CMAKE_TARGET_LINKED_INFO_FILES + ) + +# Fortran module output directory. +set(CMAKE_Fortran_TARGET_MODULE_DIR "") diff --git a/demo/PyCpp/CMakeFiles/PyCpp.dir/build.make b/demo/PyCpp/CMakeFiles/PyCpp.dir/build.make new file mode 100644 index 0000000..50b0f18 --- /dev/null +++ b/demo/PyCpp/CMakeFiles/PyCpp.dir/build.make @@ -0,0 +1,237 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.18 + +# Delete rule output on recipe failure. +.DELETE_ON_ERROR: + + +#============================================================================= +# Special targets provided by cmake. + +# Disable implicit rules so canonical targets will work. +.SUFFIXES: + + +# Disable VCS-based implicit rules. +% : %,v + + +# Disable VCS-based implicit rules. +% : RCS/% + + +# Disable VCS-based implicit rules. +% : RCS/%,v + + +# Disable VCS-based implicit rules. +% : SCCS/s.% + + +# Disable VCS-based implicit rules. +% : s.% + + +.SUFFIXES: .hpux_make_needs_suffix_list + + +# Command-line flag to silence nested $(MAKE). +$(VERBOSE)MAKESILENT = -s + +#Suppress display of executed commands. +$(VERBOSE).SILENT: + +# A target that is always out of date. +cmake_force: + +.PHONY : cmake_force + +#============================================================================= +# Set environment variables for the build. + +# The shell in which to execute make rules. +SHELL = /bin/sh + +# The CMake executable. +CMAKE_COMMAND = /usr/local/lib/python3.6/dist-packages/cmake/data/bin/cmake + +# The command to remove a file. +RM = /usr/local/lib/python3.6/dist-packages/cmake/data/bin/cmake -E rm -f + +# Escaping for special characters. +EQUALS = = + +# The top-level source directory on which CMake was run. +CMAKE_SOURCE_DIR = /home/ubuntu/ipc/cpp-ipc + +# The top-level build directory on which CMake was run. +CMAKE_BINARY_DIR = /home/ubuntu/ipc/cpp-ipc + +# Include any dependencies generated for this target. +include demo/PyCpp/CMakeFiles/PyCpp.dir/depend.make + +# Include the progress variables for this target. +include demo/PyCpp/CMakeFiles/PyCpp.dir/progress.make + +# Include the compile flags for this target's objects. +include demo/PyCpp/CMakeFiles/PyCpp.dir/flags.make + +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/libipc/platform/shm_linux.cpp.o: demo/PyCpp/CMakeFiles/PyCpp.dir/flags.make +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/libipc/platform/shm_linux.cpp.o: src/libipc/platform/shm_linux.cpp + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/ubuntu/ipc/cpp-ipc/CMakeFiles --progress-num=$(CMAKE_PROGRESS_1) "Building CXX object demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/libipc/platform/shm_linux.cpp.o" + cd /home/ubuntu/ipc/cpp-ipc/demo/PyCpp && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -o CMakeFiles/PyCpp.dir/__/__/src/libipc/platform/shm_linux.cpp.o -c /home/ubuntu/ipc/cpp-ipc/src/libipc/platform/shm_linux.cpp + +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/libipc/platform/shm_linux.cpp.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/PyCpp.dir/__/__/src/libipc/platform/shm_linux.cpp.i" + cd /home/ubuntu/ipc/cpp-ipc/demo/PyCpp && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/ubuntu/ipc/cpp-ipc/src/libipc/platform/shm_linux.cpp > CMakeFiles/PyCpp.dir/__/__/src/libipc/platform/shm_linux.cpp.i + +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/libipc/platform/shm_linux.cpp.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/PyCpp.dir/__/__/src/libipc/platform/shm_linux.cpp.s" + cd /home/ubuntu/ipc/cpp-ipc/demo/PyCpp && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/ubuntu/ipc/cpp-ipc/src/libipc/platform/shm_linux.cpp -o CMakeFiles/PyCpp.dir/__/__/src/libipc/platform/shm_linux.cpp.s + +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/buffer.cpp.o: demo/PyCpp/CMakeFiles/PyCpp.dir/flags.make +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/buffer.cpp.o: src/buffer.cpp + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/ubuntu/ipc/cpp-ipc/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Building CXX object demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/buffer.cpp.o" + cd /home/ubuntu/ipc/cpp-ipc/demo/PyCpp && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -o CMakeFiles/PyCpp.dir/__/__/src/buffer.cpp.o -c /home/ubuntu/ipc/cpp-ipc/src/buffer.cpp + +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/buffer.cpp.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/PyCpp.dir/__/__/src/buffer.cpp.i" + cd /home/ubuntu/ipc/cpp-ipc/demo/PyCpp && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/ubuntu/ipc/cpp-ipc/src/buffer.cpp > CMakeFiles/PyCpp.dir/__/__/src/buffer.cpp.i + +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/buffer.cpp.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/PyCpp.dir/__/__/src/buffer.cpp.s" + cd /home/ubuntu/ipc/cpp-ipc/demo/PyCpp && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/ubuntu/ipc/cpp-ipc/src/buffer.cpp -o CMakeFiles/PyCpp.dir/__/__/src/buffer.cpp.s + +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/ipc.cpp.o: demo/PyCpp/CMakeFiles/PyCpp.dir/flags.make +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/ipc.cpp.o: src/ipc.cpp + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/ubuntu/ipc/cpp-ipc/CMakeFiles --progress-num=$(CMAKE_PROGRESS_3) "Building CXX object demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/ipc.cpp.o" + cd /home/ubuntu/ipc/cpp-ipc/demo/PyCpp && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -o CMakeFiles/PyCpp.dir/__/__/src/ipc.cpp.o -c /home/ubuntu/ipc/cpp-ipc/src/ipc.cpp + +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/ipc.cpp.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/PyCpp.dir/__/__/src/ipc.cpp.i" + cd /home/ubuntu/ipc/cpp-ipc/demo/PyCpp && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/ubuntu/ipc/cpp-ipc/src/ipc.cpp > CMakeFiles/PyCpp.dir/__/__/src/ipc.cpp.i + +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/ipc.cpp.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/PyCpp.dir/__/__/src/ipc.cpp.s" + cd /home/ubuntu/ipc/cpp-ipc/demo/PyCpp && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/ubuntu/ipc/cpp-ipc/src/ipc.cpp -o CMakeFiles/PyCpp.dir/__/__/src/ipc.cpp.s + +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/pool_alloc.cpp.o: demo/PyCpp/CMakeFiles/PyCpp.dir/flags.make +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/pool_alloc.cpp.o: src/pool_alloc.cpp + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/ubuntu/ipc/cpp-ipc/CMakeFiles --progress-num=$(CMAKE_PROGRESS_4) "Building CXX object demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/pool_alloc.cpp.o" + cd /home/ubuntu/ipc/cpp-ipc/demo/PyCpp && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -o CMakeFiles/PyCpp.dir/__/__/src/pool_alloc.cpp.o -c /home/ubuntu/ipc/cpp-ipc/src/pool_alloc.cpp + +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/pool_alloc.cpp.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/PyCpp.dir/__/__/src/pool_alloc.cpp.i" + cd /home/ubuntu/ipc/cpp-ipc/demo/PyCpp && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/ubuntu/ipc/cpp-ipc/src/pool_alloc.cpp > CMakeFiles/PyCpp.dir/__/__/src/pool_alloc.cpp.i + +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/pool_alloc.cpp.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/PyCpp.dir/__/__/src/pool_alloc.cpp.s" + cd /home/ubuntu/ipc/cpp-ipc/demo/PyCpp && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/ubuntu/ipc/cpp-ipc/src/pool_alloc.cpp -o CMakeFiles/PyCpp.dir/__/__/src/pool_alloc.cpp.s + +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/shm.cpp.o: demo/PyCpp/CMakeFiles/PyCpp.dir/flags.make +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/shm.cpp.o: src/shm.cpp + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/ubuntu/ipc/cpp-ipc/CMakeFiles --progress-num=$(CMAKE_PROGRESS_5) "Building CXX object demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/shm.cpp.o" + cd /home/ubuntu/ipc/cpp-ipc/demo/PyCpp && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -o CMakeFiles/PyCpp.dir/__/__/src/shm.cpp.o -c /home/ubuntu/ipc/cpp-ipc/src/shm.cpp + +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/shm.cpp.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/PyCpp.dir/__/__/src/shm.cpp.i" + cd /home/ubuntu/ipc/cpp-ipc/demo/PyCpp && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/ubuntu/ipc/cpp-ipc/src/shm.cpp > CMakeFiles/PyCpp.dir/__/__/src/shm.cpp.i + +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/shm.cpp.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/PyCpp.dir/__/__/src/shm.cpp.s" + cd /home/ubuntu/ipc/cpp-ipc/demo/PyCpp && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/ubuntu/ipc/cpp-ipc/src/shm.cpp -o CMakeFiles/PyCpp.dir/__/__/src/shm.cpp.s + +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/tls_pointer.cpp.o: demo/PyCpp/CMakeFiles/PyCpp.dir/flags.make +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/tls_pointer.cpp.o: src/tls_pointer.cpp + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/ubuntu/ipc/cpp-ipc/CMakeFiles --progress-num=$(CMAKE_PROGRESS_6) "Building CXX object demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/tls_pointer.cpp.o" + cd /home/ubuntu/ipc/cpp-ipc/demo/PyCpp && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -o CMakeFiles/PyCpp.dir/__/__/src/tls_pointer.cpp.o -c /home/ubuntu/ipc/cpp-ipc/src/tls_pointer.cpp + +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/tls_pointer.cpp.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/PyCpp.dir/__/__/src/tls_pointer.cpp.i" + cd /home/ubuntu/ipc/cpp-ipc/demo/PyCpp && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/ubuntu/ipc/cpp-ipc/src/tls_pointer.cpp > CMakeFiles/PyCpp.dir/__/__/src/tls_pointer.cpp.i + +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/tls_pointer.cpp.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/PyCpp.dir/__/__/src/tls_pointer.cpp.s" + cd /home/ubuntu/ipc/cpp-ipc/demo/PyCpp && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/ubuntu/ipc/cpp-ipc/src/tls_pointer.cpp -o CMakeFiles/PyCpp.dir/__/__/src/tls_pointer.cpp.s + +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/waiter.cpp.o: demo/PyCpp/CMakeFiles/PyCpp.dir/flags.make +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/waiter.cpp.o: src/waiter.cpp + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/ubuntu/ipc/cpp-ipc/CMakeFiles --progress-num=$(CMAKE_PROGRESS_7) "Building CXX object demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/waiter.cpp.o" + cd /home/ubuntu/ipc/cpp-ipc/demo/PyCpp && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -o CMakeFiles/PyCpp.dir/__/__/src/waiter.cpp.o -c /home/ubuntu/ipc/cpp-ipc/src/waiter.cpp + +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/waiter.cpp.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/PyCpp.dir/__/__/src/waiter.cpp.i" + cd /home/ubuntu/ipc/cpp-ipc/demo/PyCpp && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/ubuntu/ipc/cpp-ipc/src/waiter.cpp > CMakeFiles/PyCpp.dir/__/__/src/waiter.cpp.i + +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/waiter.cpp.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/PyCpp.dir/__/__/src/waiter.cpp.s" + cd /home/ubuntu/ipc/cpp-ipc/demo/PyCpp && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/ubuntu/ipc/cpp-ipc/src/waiter.cpp -o CMakeFiles/PyCpp.dir/__/__/src/waiter.cpp.s + +demo/PyCpp/CMakeFiles/PyCpp.dir/Client.cpp.o: demo/PyCpp/CMakeFiles/PyCpp.dir/flags.make +demo/PyCpp/CMakeFiles/PyCpp.dir/Client.cpp.o: demo/PyCpp/Client.cpp + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/ubuntu/ipc/cpp-ipc/CMakeFiles --progress-num=$(CMAKE_PROGRESS_8) "Building CXX object demo/PyCpp/CMakeFiles/PyCpp.dir/Client.cpp.o" + cd /home/ubuntu/ipc/cpp-ipc/demo/PyCpp && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -o CMakeFiles/PyCpp.dir/Client.cpp.o -c /home/ubuntu/ipc/cpp-ipc/demo/PyCpp/Client.cpp + +demo/PyCpp/CMakeFiles/PyCpp.dir/Client.cpp.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/PyCpp.dir/Client.cpp.i" + cd /home/ubuntu/ipc/cpp-ipc/demo/PyCpp && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/ubuntu/ipc/cpp-ipc/demo/PyCpp/Client.cpp > CMakeFiles/PyCpp.dir/Client.cpp.i + +demo/PyCpp/CMakeFiles/PyCpp.dir/Client.cpp.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/PyCpp.dir/Client.cpp.s" + cd /home/ubuntu/ipc/cpp-ipc/demo/PyCpp && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/ubuntu/ipc/cpp-ipc/demo/PyCpp/Client.cpp -o CMakeFiles/PyCpp.dir/Client.cpp.s + +demo/PyCpp/CMakeFiles/PyCpp.dir/util.cpp.o: demo/PyCpp/CMakeFiles/PyCpp.dir/flags.make +demo/PyCpp/CMakeFiles/PyCpp.dir/util.cpp.o: demo/PyCpp/util.cpp + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/ubuntu/ipc/cpp-ipc/CMakeFiles --progress-num=$(CMAKE_PROGRESS_9) "Building CXX object demo/PyCpp/CMakeFiles/PyCpp.dir/util.cpp.o" + cd /home/ubuntu/ipc/cpp-ipc/demo/PyCpp && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -o CMakeFiles/PyCpp.dir/util.cpp.o -c /home/ubuntu/ipc/cpp-ipc/demo/PyCpp/util.cpp + +demo/PyCpp/CMakeFiles/PyCpp.dir/util.cpp.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/PyCpp.dir/util.cpp.i" + cd /home/ubuntu/ipc/cpp-ipc/demo/PyCpp && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/ubuntu/ipc/cpp-ipc/demo/PyCpp/util.cpp > CMakeFiles/PyCpp.dir/util.cpp.i + +demo/PyCpp/CMakeFiles/PyCpp.dir/util.cpp.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/PyCpp.dir/util.cpp.s" + cd /home/ubuntu/ipc/cpp-ipc/demo/PyCpp && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/ubuntu/ipc/cpp-ipc/demo/PyCpp/util.cpp -o CMakeFiles/PyCpp.dir/util.cpp.s + +# Object files for target PyCpp +PyCpp_OBJECTS = \ +"CMakeFiles/PyCpp.dir/__/__/src/libipc/platform/shm_linux.cpp.o" \ +"CMakeFiles/PyCpp.dir/__/__/src/buffer.cpp.o" \ +"CMakeFiles/PyCpp.dir/__/__/src/ipc.cpp.o" \ +"CMakeFiles/PyCpp.dir/__/__/src/pool_alloc.cpp.o" \ +"CMakeFiles/PyCpp.dir/__/__/src/shm.cpp.o" \ +"CMakeFiles/PyCpp.dir/__/__/src/tls_pointer.cpp.o" \ +"CMakeFiles/PyCpp.dir/__/__/src/waiter.cpp.o" \ +"CMakeFiles/PyCpp.dir/Client.cpp.o" \ +"CMakeFiles/PyCpp.dir/util.cpp.o" + +# External object files for target PyCpp +PyCpp_EXTERNAL_OBJECTS = + +bin/libPyCpp.so: demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/libipc/platform/shm_linux.cpp.o +bin/libPyCpp.so: demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/buffer.cpp.o +bin/libPyCpp.so: demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/ipc.cpp.o +bin/libPyCpp.so: demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/pool_alloc.cpp.o +bin/libPyCpp.so: demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/shm.cpp.o +bin/libPyCpp.so: demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/tls_pointer.cpp.o +bin/libPyCpp.so: demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/waiter.cpp.o +bin/libPyCpp.so: demo/PyCpp/CMakeFiles/PyCpp.dir/Client.cpp.o +bin/libPyCpp.so: demo/PyCpp/CMakeFiles/PyCpp.dir/util.cpp.o +bin/libPyCpp.so: demo/PyCpp/CMakeFiles/PyCpp.dir/build.make +bin/libPyCpp.so: demo/PyCpp/CMakeFiles/PyCpp.dir/link.txt + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --bold --progress-dir=/home/ubuntu/ipc/cpp-ipc/CMakeFiles --progress-num=$(CMAKE_PROGRESS_10) "Linking CXX shared library ../../bin/libPyCpp.so" + cd /home/ubuntu/ipc/cpp-ipc/demo/PyCpp && $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/PyCpp.dir/link.txt --verbose=$(VERBOSE) + +# Rule to build all files generated by this target. +demo/PyCpp/CMakeFiles/PyCpp.dir/build: bin/libPyCpp.so + +.PHONY : demo/PyCpp/CMakeFiles/PyCpp.dir/build + +demo/PyCpp/CMakeFiles/PyCpp.dir/clean: + cd /home/ubuntu/ipc/cpp-ipc/demo/PyCpp && $(CMAKE_COMMAND) -P CMakeFiles/PyCpp.dir/cmake_clean.cmake +.PHONY : demo/PyCpp/CMakeFiles/PyCpp.dir/clean + +demo/PyCpp/CMakeFiles/PyCpp.dir/depend: + cd /home/ubuntu/ipc/cpp-ipc && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /home/ubuntu/ipc/cpp-ipc /home/ubuntu/ipc/cpp-ipc/demo/PyCpp /home/ubuntu/ipc/cpp-ipc /home/ubuntu/ipc/cpp-ipc/demo/PyCpp /home/ubuntu/ipc/cpp-ipc/demo/PyCpp/CMakeFiles/PyCpp.dir/DependInfo.cmake --color=$(COLOR) +.PHONY : demo/PyCpp/CMakeFiles/PyCpp.dir/depend + diff --git a/demo/PyCpp/CMakeFiles/PyCpp.dir/cmake_clean.cmake b/demo/PyCpp/CMakeFiles/PyCpp.dir/cmake_clean.cmake new file mode 100644 index 0000000..ef1882a --- /dev/null +++ b/demo/PyCpp/CMakeFiles/PyCpp.dir/cmake_clean.cmake @@ -0,0 +1,18 @@ +file(REMOVE_RECURSE + "../../bin/libPyCpp.pdb" + "../../bin/libPyCpp.so" + "CMakeFiles/PyCpp.dir/Client.cpp.o" + "CMakeFiles/PyCpp.dir/__/__/src/buffer.cpp.o" + "CMakeFiles/PyCpp.dir/__/__/src/ipc.cpp.o" + "CMakeFiles/PyCpp.dir/__/__/src/libipc/platform/shm_linux.cpp.o" + "CMakeFiles/PyCpp.dir/__/__/src/pool_alloc.cpp.o" + "CMakeFiles/PyCpp.dir/__/__/src/shm.cpp.o" + "CMakeFiles/PyCpp.dir/__/__/src/tls_pointer.cpp.o" + "CMakeFiles/PyCpp.dir/__/__/src/waiter.cpp.o" + "CMakeFiles/PyCpp.dir/util.cpp.o" +) + +# Per-language clean rules from dependency scanning. +foreach(lang CXX) + include(CMakeFiles/PyCpp.dir/cmake_clean_${lang}.cmake OPTIONAL) +endforeach() diff --git a/demo/PyCpp/CMakeFiles/PyCpp.dir/depend.internal b/demo/PyCpp/CMakeFiles/PyCpp.dir/depend.internal new file mode 100644 index 0000000..af50c9c --- /dev/null +++ b/demo/PyCpp/CMakeFiles/PyCpp.dir/depend.internal @@ -0,0 +1,132 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.18 + +demo/PyCpp/CMakeFiles/PyCpp.dir/Client.cpp.o + /home/ubuntu/ipc/cpp-ipc/demo/PyCpp/Client.cpp + /home/ubuntu/ipc/cpp-ipc/demo/PyCpp/util.h + 3rdparty/capo/random.hpp + include/libipc/buffer.h + include/libipc/def.h + include/libipc/export.h + include/libipc/ipc.h + include/libipc/shm.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/buffer.cpp.o + /home/ubuntu/ipc/cpp-ipc/src/buffer.cpp + /home/ubuntu/ipc/cpp-ipc/src/libipc/utility/pimpl.h + include/libipc/buffer.h + include/libipc/def.h + include/libipc/export.h + include/libipc/pool_alloc.h + src/libipc/utility/concept.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/ipc.cpp.o + /home/ubuntu/ipc/cpp-ipc/src/ipc.cpp + /home/ubuntu/ipc/cpp-ipc/src/libipc/circ/elem_array.h + /home/ubuntu/ipc/cpp-ipc/src/libipc/memory/resource.h + /home/ubuntu/ipc/cpp-ipc/src/libipc/platform/detail.h + /home/ubuntu/ipc/cpp-ipc/src/libipc/platform/waiter_wrapper.h + /home/ubuntu/ipc/cpp-ipc/src/libipc/policy.h + /home/ubuntu/ipc/cpp-ipc/src/libipc/queue.h + /home/ubuntu/ipc/cpp-ipc/src/libipc/utility/id_pool.h + /home/ubuntu/ipc/cpp-ipc/src/libipc/utility/log.h + include/libipc/buffer.h + include/libipc/def.h + include/libipc/export.h + include/libipc/ipc.h + include/libipc/pool_alloc.h + include/libipc/rw_lock.h + include/libipc/shm.h + include/libipc/tls_pointer.h + src/libipc/circ/elem_def.h + src/libipc/memory/alloc.h + src/libipc/memory/allocator_wrapper.h + src/libipc/memory/wrapper.h + src/libipc/platform/get_sa.h + src/libipc/platform/to_tchar.h + src/libipc/platform/waiter_linux.h + src/libipc/platform/waiter_win.h + src/libipc/prod_cons.h + src/libipc/utility/concept.h + src/libipc/utility/scope_guard.h + src/libipc/utility/utility.h + src/libipc/waiter_helper.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/libipc/platform/shm_linux.cpp.o + /home/ubuntu/ipc/cpp-ipc/src/libipc/platform/shm_linux.cpp + include/libipc/def.h + include/libipc/export.h + include/libipc/pool_alloc.h + include/libipc/rw_lock.h + include/libipc/shm.h + include/libipc/tls_pointer.h + src/libipc/memory/alloc.h + src/libipc/memory/allocator_wrapper.h + src/libipc/memory/resource.h + src/libipc/memory/wrapper.h + src/libipc/platform/detail.h + src/libipc/utility/concept.h + src/libipc/utility/log.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/pool_alloc.cpp.o + /home/ubuntu/ipc/cpp-ipc/src/libipc/memory/resource.h + /home/ubuntu/ipc/cpp-ipc/src/pool_alloc.cpp + include/libipc/def.h + include/libipc/export.h + include/libipc/pool_alloc.h + include/libipc/rw_lock.h + include/libipc/tls_pointer.h + src/libipc/memory/alloc.h + src/libipc/memory/allocator_wrapper.h + src/libipc/memory/wrapper.h + src/libipc/platform/detail.h + src/libipc/utility/concept.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/shm.cpp.o + /home/ubuntu/ipc/cpp-ipc/src/libipc/memory/resource.h + /home/ubuntu/ipc/cpp-ipc/src/libipc/utility/pimpl.h + /home/ubuntu/ipc/cpp-ipc/src/shm.cpp + include/libipc/def.h + include/libipc/export.h + include/libipc/pool_alloc.h + include/libipc/rw_lock.h + include/libipc/shm.h + include/libipc/tls_pointer.h + src/libipc/memory/alloc.h + src/libipc/memory/allocator_wrapper.h + src/libipc/memory/wrapper.h + src/libipc/platform/detail.h + src/libipc/utility/concept.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/tls_pointer.cpp.o + /home/ubuntu/ipc/cpp-ipc/src/libipc/platform/tls_pointer_linux.h + /home/ubuntu/ipc/cpp-ipc/src/libipc/platform/tls_pointer_win.h + /home/ubuntu/ipc/cpp-ipc/src/tls_pointer.cpp + include/libipc/export.h + include/libipc/tls_pointer.h + src/libipc/platform/detail.h + src/libipc/platform/tls_detail_win.h + src/libipc/utility/log.h + src/libipc/utility/utility.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/waiter.cpp.o + /home/ubuntu/ipc/cpp-ipc/src/libipc/platform/waiter_wrapper.h + /home/ubuntu/ipc/cpp-ipc/src/libipc/utility/pimpl.h + /home/ubuntu/ipc/cpp-ipc/src/libipc/waiter_template.inc + /home/ubuntu/ipc/cpp-ipc/src/waiter.cpp + include/libipc/def.h + include/libipc/export.h + include/libipc/pool_alloc.h + include/libipc/rw_lock.h + include/libipc/shm.h + include/libipc/tls_pointer.h + include/libipc/waiter.h + src/libipc/memory/alloc.h + src/libipc/memory/allocator_wrapper.h + src/libipc/memory/resource.h + src/libipc/memory/wrapper.h + src/libipc/platform/detail.h + src/libipc/platform/get_sa.h + src/libipc/platform/to_tchar.h + src/libipc/platform/waiter_linux.h + src/libipc/platform/waiter_win.h + src/libipc/utility/concept.h + src/libipc/utility/log.h + src/libipc/utility/scope_guard.h + src/libipc/waiter_helper.h +demo/PyCpp/CMakeFiles/PyCpp.dir/util.cpp.o + /home/ubuntu/ipc/cpp-ipc/demo/PyCpp/util.cpp + /home/ubuntu/ipc/cpp-ipc/demo/PyCpp/util.h diff --git a/demo/PyCpp/CMakeFiles/PyCpp.dir/depend.make b/demo/PyCpp/CMakeFiles/PyCpp.dir/depend.make new file mode 100644 index 0000000..18ce666 --- /dev/null +++ b/demo/PyCpp/CMakeFiles/PyCpp.dir/depend.make @@ -0,0 +1,132 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.18 + +demo/PyCpp/CMakeFiles/PyCpp.dir/Client.cpp.o: demo/PyCpp/Client.cpp +demo/PyCpp/CMakeFiles/PyCpp.dir/Client.cpp.o: demo/PyCpp/util.h +demo/PyCpp/CMakeFiles/PyCpp.dir/Client.cpp.o: 3rdparty/capo/random.hpp +demo/PyCpp/CMakeFiles/PyCpp.dir/Client.cpp.o: include/libipc/buffer.h +demo/PyCpp/CMakeFiles/PyCpp.dir/Client.cpp.o: include/libipc/def.h +demo/PyCpp/CMakeFiles/PyCpp.dir/Client.cpp.o: include/libipc/export.h +demo/PyCpp/CMakeFiles/PyCpp.dir/Client.cpp.o: include/libipc/ipc.h +demo/PyCpp/CMakeFiles/PyCpp.dir/Client.cpp.o: include/libipc/shm.h + +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/buffer.cpp.o: src/buffer.cpp +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/buffer.cpp.o: src/libipc/utility/pimpl.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/buffer.cpp.o: include/libipc/buffer.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/buffer.cpp.o: include/libipc/def.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/buffer.cpp.o: include/libipc/export.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/buffer.cpp.o: include/libipc/pool_alloc.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/buffer.cpp.o: src/libipc/utility/concept.h + +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/ipc.cpp.o: src/ipc.cpp +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/ipc.cpp.o: src/libipc/circ/elem_array.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/ipc.cpp.o: src/libipc/memory/resource.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/ipc.cpp.o: src/libipc/platform/detail.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/ipc.cpp.o: src/libipc/platform/waiter_wrapper.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/ipc.cpp.o: src/libipc/policy.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/ipc.cpp.o: src/libipc/queue.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/ipc.cpp.o: src/libipc/utility/id_pool.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/ipc.cpp.o: src/libipc/utility/log.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/ipc.cpp.o: include/libipc/buffer.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/ipc.cpp.o: include/libipc/def.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/ipc.cpp.o: include/libipc/export.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/ipc.cpp.o: include/libipc/ipc.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/ipc.cpp.o: include/libipc/pool_alloc.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/ipc.cpp.o: include/libipc/rw_lock.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/ipc.cpp.o: include/libipc/shm.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/ipc.cpp.o: include/libipc/tls_pointer.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/ipc.cpp.o: src/libipc/circ/elem_def.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/ipc.cpp.o: src/libipc/memory/alloc.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/ipc.cpp.o: src/libipc/memory/allocator_wrapper.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/ipc.cpp.o: src/libipc/memory/wrapper.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/ipc.cpp.o: src/libipc/platform/get_sa.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/ipc.cpp.o: src/libipc/platform/to_tchar.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/ipc.cpp.o: src/libipc/platform/waiter_linux.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/ipc.cpp.o: src/libipc/platform/waiter_win.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/ipc.cpp.o: src/libipc/prod_cons.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/ipc.cpp.o: src/libipc/utility/concept.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/ipc.cpp.o: src/libipc/utility/scope_guard.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/ipc.cpp.o: src/libipc/utility/utility.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/ipc.cpp.o: src/libipc/waiter_helper.h + +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/libipc/platform/shm_linux.cpp.o: src/libipc/platform/shm_linux.cpp +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/libipc/platform/shm_linux.cpp.o: include/libipc/def.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/libipc/platform/shm_linux.cpp.o: include/libipc/export.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/libipc/platform/shm_linux.cpp.o: include/libipc/pool_alloc.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/libipc/platform/shm_linux.cpp.o: include/libipc/rw_lock.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/libipc/platform/shm_linux.cpp.o: include/libipc/shm.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/libipc/platform/shm_linux.cpp.o: include/libipc/tls_pointer.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/libipc/platform/shm_linux.cpp.o: src/libipc/memory/alloc.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/libipc/platform/shm_linux.cpp.o: src/libipc/memory/allocator_wrapper.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/libipc/platform/shm_linux.cpp.o: src/libipc/memory/resource.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/libipc/platform/shm_linux.cpp.o: src/libipc/memory/wrapper.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/libipc/platform/shm_linux.cpp.o: src/libipc/platform/detail.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/libipc/platform/shm_linux.cpp.o: src/libipc/utility/concept.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/libipc/platform/shm_linux.cpp.o: src/libipc/utility/log.h + +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/pool_alloc.cpp.o: src/libipc/memory/resource.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/pool_alloc.cpp.o: src/pool_alloc.cpp +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/pool_alloc.cpp.o: include/libipc/def.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/pool_alloc.cpp.o: include/libipc/export.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/pool_alloc.cpp.o: include/libipc/pool_alloc.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/pool_alloc.cpp.o: include/libipc/rw_lock.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/pool_alloc.cpp.o: include/libipc/tls_pointer.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/pool_alloc.cpp.o: src/libipc/memory/alloc.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/pool_alloc.cpp.o: src/libipc/memory/allocator_wrapper.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/pool_alloc.cpp.o: src/libipc/memory/wrapper.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/pool_alloc.cpp.o: src/libipc/platform/detail.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/pool_alloc.cpp.o: src/libipc/utility/concept.h + +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/shm.cpp.o: src/libipc/memory/resource.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/shm.cpp.o: src/libipc/utility/pimpl.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/shm.cpp.o: src/shm.cpp +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/shm.cpp.o: include/libipc/def.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/shm.cpp.o: include/libipc/export.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/shm.cpp.o: include/libipc/pool_alloc.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/shm.cpp.o: include/libipc/rw_lock.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/shm.cpp.o: include/libipc/shm.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/shm.cpp.o: include/libipc/tls_pointer.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/shm.cpp.o: src/libipc/memory/alloc.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/shm.cpp.o: src/libipc/memory/allocator_wrapper.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/shm.cpp.o: src/libipc/memory/wrapper.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/shm.cpp.o: src/libipc/platform/detail.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/shm.cpp.o: src/libipc/utility/concept.h + +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/tls_pointer.cpp.o: src/libipc/platform/tls_pointer_linux.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/tls_pointer.cpp.o: src/libipc/platform/tls_pointer_win.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/tls_pointer.cpp.o: src/tls_pointer.cpp +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/tls_pointer.cpp.o: include/libipc/export.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/tls_pointer.cpp.o: include/libipc/tls_pointer.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/tls_pointer.cpp.o: src/libipc/platform/detail.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/tls_pointer.cpp.o: src/libipc/platform/tls_detail_win.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/tls_pointer.cpp.o: src/libipc/utility/log.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/tls_pointer.cpp.o: src/libipc/utility/utility.h + +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/waiter.cpp.o: src/libipc/platform/waiter_wrapper.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/waiter.cpp.o: src/libipc/utility/pimpl.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/waiter.cpp.o: src/libipc/waiter_template.inc +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/waiter.cpp.o: src/waiter.cpp +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/waiter.cpp.o: include/libipc/def.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/waiter.cpp.o: include/libipc/export.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/waiter.cpp.o: include/libipc/pool_alloc.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/waiter.cpp.o: include/libipc/rw_lock.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/waiter.cpp.o: include/libipc/shm.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/waiter.cpp.o: include/libipc/tls_pointer.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/waiter.cpp.o: include/libipc/waiter.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/waiter.cpp.o: src/libipc/memory/alloc.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/waiter.cpp.o: src/libipc/memory/allocator_wrapper.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/waiter.cpp.o: src/libipc/memory/resource.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/waiter.cpp.o: src/libipc/memory/wrapper.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/waiter.cpp.o: src/libipc/platform/detail.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/waiter.cpp.o: src/libipc/platform/get_sa.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/waiter.cpp.o: src/libipc/platform/to_tchar.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/waiter.cpp.o: src/libipc/platform/waiter_linux.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/waiter.cpp.o: src/libipc/platform/waiter_win.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/waiter.cpp.o: src/libipc/utility/concept.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/waiter.cpp.o: src/libipc/utility/log.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/waiter.cpp.o: src/libipc/utility/scope_guard.h +demo/PyCpp/CMakeFiles/PyCpp.dir/__/__/src/waiter.cpp.o: src/libipc/waiter_helper.h + +demo/PyCpp/CMakeFiles/PyCpp.dir/util.cpp.o: demo/PyCpp/util.cpp +demo/PyCpp/CMakeFiles/PyCpp.dir/util.cpp.o: demo/PyCpp/util.h + diff --git a/demo/PyCpp/CMakeFiles/PyCpp.dir/flags.make b/demo/PyCpp/CMakeFiles/PyCpp.dir/flags.make new file mode 100644 index 0000000..e5fb53e --- /dev/null +++ b/demo/PyCpp/CMakeFiles/PyCpp.dir/flags.make @@ -0,0 +1,10 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.18 + +# compile CXX with /usr/bin/c++ +CXX_DEFINES = -DPyCpp_EXPORTS + +CXX_INCLUDES = -I/home/ubuntu/ipc/cpp-ipc/include -I/home/ubuntu/ipc/cpp-ipc/3rdparty -I/home/ubuntu/ipc/cpp-ipc/src + +CXX_FLAGS = -fPIC -D__IPC_LIBRARY__ -fPIC -std=gnu++1z + diff --git a/demo/PyCpp/CMakeFiles/PyCpp.dir/link.txt b/demo/PyCpp/CMakeFiles/PyCpp.dir/link.txt new file mode 100644 index 0000000..a8a0787 --- /dev/null +++ b/demo/PyCpp/CMakeFiles/PyCpp.dir/link.txt @@ -0,0 +1 @@ +/usr/bin/c++ -fPIC -shared -Wl,-soname,libPyCpp.so -o ../../bin/libPyCpp.so CMakeFiles/PyCpp.dir/__/__/src/libipc/platform/shm_linux.cpp.o CMakeFiles/PyCpp.dir/__/__/src/buffer.cpp.o CMakeFiles/PyCpp.dir/__/__/src/ipc.cpp.o CMakeFiles/PyCpp.dir/__/__/src/pool_alloc.cpp.o CMakeFiles/PyCpp.dir/__/__/src/shm.cpp.o CMakeFiles/PyCpp.dir/__/__/src/tls_pointer.cpp.o CMakeFiles/PyCpp.dir/__/__/src/waiter.cpp.o CMakeFiles/PyCpp.dir/Client.cpp.o CMakeFiles/PyCpp.dir/util.cpp.o -lpthread -lrt diff --git a/demo/PyCpp/CMakeFiles/PyCpp.dir/progress.make b/demo/PyCpp/CMakeFiles/PyCpp.dir/progress.make new file mode 100644 index 0000000..3cb65cf --- /dev/null +++ b/demo/PyCpp/CMakeFiles/PyCpp.dir/progress.make @@ -0,0 +1,11 @@ +CMAKE_PROGRESS_1 = 3 +CMAKE_PROGRESS_2 = 4 +CMAKE_PROGRESS_3 = 5 +CMAKE_PROGRESS_4 = 6 +CMAKE_PROGRESS_5 = 7 +CMAKE_PROGRESS_6 = 8 +CMAKE_PROGRESS_7 = 9 +CMAKE_PROGRESS_8 = 10 +CMAKE_PROGRESS_9 = 11 +CMAKE_PROGRESS_10 = 12 + diff --git a/demo/PyCpp/CMakeFiles/progress.marks b/demo/PyCpp/CMakeFiles/progress.marks new file mode 100644 index 0000000..f599e28 --- /dev/null +++ b/demo/PyCpp/CMakeFiles/progress.marks @@ -0,0 +1 @@ +10 diff --git a/demo/PyCpp/CMakeLists.txt b/demo/PyCpp/CMakeLists.txt new file mode 100644 index 0000000..f0a977b --- /dev/null +++ b/demo/PyCpp/CMakeLists.txt @@ -0,0 +1,37 @@ +project(PyCpp) + +add_compile_options(-D__IPC_LIBRARY__) + +if(NOT MSVC) + add_compile_options(-fPIC) +endif() + +include_directories( + ${CMAKE_SOURCE_DIR}/include + ${CMAKE_SOURCE_DIR}/3rdparty + ${CMAKE_SOURCE_DIR}/src) + +if(UNIX) + file(GLOB SRC_FILES ${CMAKE_SOURCE_DIR}/src/libipc/platform/*_linux.cpp) +else() + file(GLOB SRC_FILES ${CMAKE_SOURCE_DIR}/src/libipc/platform/*_win.cpp) +endif() +aux_source_directory(${CMAKE_SOURCE_DIR}/src SRC_FILES) +aux_source_directory(${CMAKE_SOURCE_DIR}/demo/PyCpp SRC_FILES) +file(GLOB HEAD_FILES + ${CMAKE_SOURCE_DIR}/include/libipc/*.h + ${CMAKE_SOURCE_DIR}/src/libipc/*.h + ${CMAKE_SOURCE_DIR}/src/libipc/*.inc + ${CMAKE_SOURCE_DIR}/src/libipc/circ/*.h + ${CMAKE_SOURCE_DIR}/src/libipc/memory/*.h + ${CMAKE_SOURCE_DIR}/src/libipc/platform/*.h + ${CMAKE_SOURCE_DIR}/src/libipc/utility/*.h + ${CMAKE_SOURCE_DIR}/src/demo/PyCpp/*.h) + +add_library(${PROJECT_NAME} SHARED ${SRC_FILES} ${HEAD_FILES}) +if(NOT MSVC) + target_link_libraries(${PROJECT_NAME} PUBLIC + pthread + $<$>:rt>) +endif() + diff --git a/demo/PyCpp/Client.cpp b/demo/PyCpp/Client.cpp new file mode 100644 index 0000000..2d13365 --- /dev/null +++ b/demo/PyCpp/Client.cpp @@ -0,0 +1,161 @@ + +#include +#include +#include +#include +#include +#include + +#include "libipc/ipc.h" +#include "libipc/shm.h" +#include "capo/random.hpp" +#include "util.h" + +using string = std::string; + + +using namespace ipc::shm; + +namespace ipc { + +constexpr char const name__ [] = "ipc-kvs"; + +capo::random<> rand__{ + static_cast(1), + static_cast(127) +}; + +ipc::channel shared_chan { name__, ipc::sender | ipc::receiver }; + +char * kvs_client(char id, bool is_read, string info) { + + auto client_id = 2 + id; + std::cout << "Launching client " << client_id << " ...\n"; + + auto start_stamp = std::chrono::system_clock::now(); + string req; + auto req_id = rand__(); + string key_name = "a" + info; + + // request addres (1 byte) | resp address (1 byte) | get/put (1 byte) | request id (1 byte) | metadata len (1 byte)| metadata | optional value + req.push_back(1); + req.push_back(client_id); + if (is_read){ + req.push_back(1); + req.push_back(req_id); + req.push_back((char) key_name.size()); + req += key_name; + } + else { + req.push_back(2); + req.push_back(req_id); + req.push_back((char) key_name.size()); + req += key_name; + auto shm_size = stoi(info) + 1; + req += std::to_string(shm_size); + int data_len = stoi(info); + auto shm_id = acquire(key_name.c_str(), shm_size); + auto shm_ptr = (char *) get_mem(shm_id, nullptr); + memset(shm_ptr, '1', data_len); + shm_ptr[data_len] = '\0'; + } + + auto ready_stamp = std::chrono::system_clock::now(); + + while (!shared_chan.send(req)) { + // waiting for connection + shared_chan.wait_for_recv(2); + } + + // recv ack + auto dd = shared_chan.recv(); + auto str = static_cast(dd.data()); + + // response address (1 byte) | request id (1 byte) | is_success (1 byte) | optional value + if (str == nullptr) { + char * err = "Ack error"; + return err; + } + if (client_id != (int) str[0]){ + char * err = "Not my ack"; + return err; + } + if (str[1] != req_id) { + char * err = "request id doesn't match"; + return err; + } + auto ack_stamp = std::chrono::system_clock::now(); + + + if (is_read){ + auto size_len = stoi(string(str + 3)); + auto shm_id = acquire(key_name.c_str(), size_len); + auto shm_ptr = (char *) get_mem(shm_id, nullptr); + + auto ptr_stamp = std::chrono::system_clock::now(); + + auto val_size = strlen(shm_ptr); + auto val_stamp = std::chrono::system_clock::now(); + + auto ready_time = std::chrono::duration_cast(ready_stamp - start_stamp).count(); + auto ack_time = std::chrono::duration_cast(ack_stamp - ready_stamp).count(); + auto ptr_time = std::chrono::duration_cast(ptr_stamp - ack_stamp).count(); + auto val_time = std::chrono::duration_cast(val_stamp - ptr_stamp).count(); + + std::cout << "Receive Get " << key_name << ", val_size: " << val_size + << ", shm_size: " << size_len + << ", ready_time: " << ready_time + << ", ack_time: " << ack_time + << ", ptr_time: " << ptr_time + << ", val_time: " << val_time + <<"\n"; + + return shm_ptr; + } else { + auto ready_time = std::chrono::duration_cast(ready_stamp - start_stamp).count(); + auto ack_time = std::chrono::duration_cast(ack_stamp - ready_stamp).count(); + + std::cout << "Receive Put " << key_name << ", ready_time "<< ready_time + << ", ack_time: " << ack_time + <<"\n"; + char * put_Msg = "Receive Put"; + return put_Msg; + } +} + + + + +PyObject* WrappClient(PyObject* self, PyObject *args) +{ + int id; + int is_read; + const char * info; + if(!PyArg_ParseTuple(args, "iiz", &id, &is_read, &info)){ + return NULL; + } + char * resp = kvs_client(id, is_read, info); + return PyByteArray_FromString_WithoutCopy(resp, strlen(resp)); + +} + +static PyMethodDef client_methods[] = { + {"kvs_client", WrappClient, METH_VARARGS, "something"}, + {NULL, NULL} +}; + +static struct PyModuleDef client_module = { + PyModuleDef_HEAD_INIT, + "test", + NULL, + -1, + client_methods +}; + +PyMODINIT_FUNC PyInit_libPyCpp() +{ + return PyModule_Create(&client_module); +} + +} + diff --git a/demo/PyCpp/cmake_install.cmake b/demo/PyCpp/cmake_install.cmake new file mode 100644 index 0000000..a811c24 --- /dev/null +++ b/demo/PyCpp/cmake_install.cmake @@ -0,0 +1,44 @@ +# Install script for directory: /home/ubuntu/ipc/cpp-ipc/demo/PyCpp + +# Set the install prefix +if(NOT DEFINED CMAKE_INSTALL_PREFIX) + set(CMAKE_INSTALL_PREFIX "/usr/local") +endif() +string(REGEX REPLACE "/$" "" CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}") + +# Set the install configuration name. +if(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME) + if(BUILD_TYPE) + string(REGEX REPLACE "^[^A-Za-z0-9_]+" "" + CMAKE_INSTALL_CONFIG_NAME "${BUILD_TYPE}") + else() + set(CMAKE_INSTALL_CONFIG_NAME "") + endif() + message(STATUS "Install configuration: \"${CMAKE_INSTALL_CONFIG_NAME}\"") +endif() + +# Set the component getting installed. +if(NOT CMAKE_INSTALL_COMPONENT) + if(COMPONENT) + message(STATUS "Install component: \"${COMPONENT}\"") + set(CMAKE_INSTALL_COMPONENT "${COMPONENT}") + else() + set(CMAKE_INSTALL_COMPONENT) + endif() +endif() + +# Install shared libraries without execute permission? +if(NOT DEFINED CMAKE_INSTALL_SO_NO_EXE) + set(CMAKE_INSTALL_SO_NO_EXE "1") +endif() + +# Is this installation the result of a crosscompile? +if(NOT DEFINED CMAKE_CROSSCOMPILING) + set(CMAKE_CROSSCOMPILING "FALSE") +endif() + +# Set default install directory permissions. +if(NOT DEFINED CMAKE_OBJDUMP) + set(CMAKE_OBJDUMP "/usr/bin/objdump") +endif() + diff --git a/demo/PyCpp/util.cpp b/demo/PyCpp/util.cpp new file mode 100644 index 0000000..fa27369 --- /dev/null +++ b/demo/PyCpp/util.cpp @@ -0,0 +1,46 @@ +#include "util.h" +namespace ipc { + + PyObject * + PyByteArray_FromString_WithoutCopy(char *bytes, Py_ssize_t size) + { + PyByteArrayObject *arrayObject; + Py_ssize_t alloc; + + if (size < 0) { + PyErr_SetString(PyExc_SystemError, + "Negative size passed to PyByteArray_FromStringAndSize"); + return NULL; + } + + /* Prevent buffer overflow when setting alloc to size+1. */ + if (size == PY_SSIZE_T_MAX) { + return PyErr_NoMemory(); + } + + arrayObject = PyObject_New(PyByteArrayObject, &PyByteArray_Type); + if (arrayObject == NULL) + return NULL; + + if (size == 0) { + arrayObject->ob_bytes = NULL; + alloc = 0; + } + else { + alloc = size + 1; + // arrayObject->ob_bytes = PyObject_Malloc(alloc); + if (arrayObject->ob_bytes == NULL) { + Py_DECREF(arrayObject); + return PyErr_NoMemory(); + } + arrayObject->ob_bytes = bytes; + } + Py_SIZE(arrayObject) = size; + arrayObject->ob_alloc = alloc; + arrayObject->ob_start = arrayObject->ob_bytes; + arrayObject->ob_exports = 0; + + return (PyObject *)arrayObject; + } + +} diff --git a/demo/PyCpp/util.h b/demo/PyCpp/util.h new file mode 100644 index 0000000..81a6f62 --- /dev/null +++ b/demo/PyCpp/util.h @@ -0,0 +1,5 @@ +#include + +namespace ipc { + PyObject * PyByteArray_FromString_WithoutCopy(char *bytes, Py_ssize_t size); +} diff --git a/demo/kvs/CMakeLists.txt b/demo/kvs/CMakeLists.txt index ddfac36..2a46f70 100644 --- a/demo/kvs/CMakeLists.txt +++ b/demo/kvs/CMakeLists.txt @@ -9,3 +9,4 @@ file(GLOB HEAD_FILES ./*.h) add_executable(${PROJECT_NAME} ${SRC_FILES} ${HEAD_FILES}) target_link_libraries(${PROJECT_NAME} ipc) + diff --git a/test/test.h b/test/test.h index 19bd22b..e0271c5 100755 --- a/test/test.h +++ b/test/test.h @@ -83,4 +83,4 @@ inline static thread_pool & reader() { return pool; } -} // namespace ipc_ut \ No newline at end of file +} // namespace ipc_ut