From 157b3411dd123694ca29dd80fe9ecc683958ccab Mon Sep 17 00:00:00 2001
From: zhangmeng <775834166@qq.com>
Date: 星期四, 27 七月 2023 11:54:24 +0800
Subject: [PATCH] add epoll/poll/select sendmsg/recvmsg transmit fd
---
build/sample2/CMakeFiles/srv_rcv.dir/cmake_clean.cmake | 10
build/sample2/CMakeFiles/client.dir/depend.internal | 9
build/sample2/CMakeFiles/client.dir/link.txt | 1
build/sample2/CMakeFiles/progress.marks | 1
CMakeLists.txt | 7
build/CMakeFiles/cmake.check_cache | 1
sample2/server.cpp | 52
build/CMakeFiles/feature_tests.cxx | 405 +++
build/sample2/CMakeFiles/srv_rcv.dir/depend.internal | 9
build/sample2/CMakeFiles/srv_rcv.dir/depend.make | 9
build/sample2/CMakeFiles/srv_rcv.dir/build.make | 99
build/sample2/CMakeFiles/cli_snd.dir/depend.internal | 9
build/src2/CMakeFiles/memfd_shm.dir/link.txt | 1
build/CMakeFiles/3.13.3/CMakeSystem.cmake | 15
build/sample2/CMakeFiles/server.dir/CXX.includecache | 36
build/sample2/CMakeFiles/client.dir/cmake_clean.cmake | 10
build/sample2/CMakeFiles/cli_snd.dir/progress.make | 3
build/sample2/CMakeFiles/srv_rcv.dir/CXX.includecache | 36
build/sample2/CMakeFiles/client.dir/build.make | 99
build/sample2/CMakeFiles/client.dir/depend.make | 9
build/Makefile | 204 +
build/sample2/CMakeFiles/client.dir/CXX.includecache | 38
build/CMakeFiles/3.13.3/CMakeDetermineCompilerABI_C.bin | 0
build/sample2/Makefile | 318 ++
build/src2/CMakeFiles/memfd_shm.dir/depend.make | 13
build/CMakeFiles/Makefile2 | 303 ++
build/sample2/CMakeFiles/srv_rcv.dir/DependInfo.cmake | 22
build/sample2/CMakeFiles/client.dir/DependInfo.cmake | 22
build/src2/CMakeFiles/progress.marks | 1
build/sample2/CMakeFiles/srv_rcv.dir/progress.make | 3
sample2/client.cpp | 66
build/CMakeFiles/3.13.3/CompilerIdCXX/CMakeCXXCompilerId.cpp | 602 +++++
build/src2/CMakeFiles/memfd_shm.dir/C.includecache | 84
build/CMakeFiles/TargetDirectories.txt | 11
build/sample2/CMakeFiles/server.dir/C.includecache | 28
build/sample2/cmake_install.cmake | 39
sample2/cli_snd.cpp | 81
build/CMakeFiles/feature_tests.bin | 0
build/sample2/CMakeFiles/CMakeDirectoryInformation.cmake | 16
build/sample2/CMakeFiles/cli_snd.dir/build.make | 99
build/CMakeCache.txt | 351 +++
build/sample2/cli_snd | 0
build/CMakeFiles/Makefile.cmake | 55
build/sample2/CMakeFiles/cli_snd.dir/link.txt | 1
build/cmake_install.cmake | 56
build/sample2/CMakeFiles/server.dir/depend.internal | 9
build/sample2/CMakeFiles/client.dir/progress.make | 3
build/CMakeFiles/3.13.3/CMakeCXXCompiler.cmake | 76
build/CMakeFiles/CMakeDirectoryInformation.cmake | 16
build/sample2/CMakeFiles/cli_snd.dir/depend.make | 9
src2/epollfd_shm.h | 46
build/CMakeFiles/3.13.3/CompilerIdC/CMakeCCompilerId.c | 623 +++++
build/CMakeFiles/3.13.3/CMakeDetermineCompilerABI_CXX.bin | 0
build/sample2/CMakeFiles/srv_rcv.dir/link.txt | 1
build/sample2/srv_rcv | 0
build/CMakeFiles/3.13.3/CMakeCCompiler.cmake | 73
src2/epollfd_shm.c | 604 +++++
build/CMakeFiles/feature_tests.c | 34
build/sample2/CMakeFiles/server.dir/flags.make | 10
build/sample2/CMakeFiles/server.dir/cmake_clean.cmake | 10
build/sample2/CMakeFiles/server.dir/progress.make | 3
build/CMakeFiles/CMakeOutput.log | 617 +++++
build/sample2/CMakeFiles/server.dir/DependInfo.cmake | 22
src2/shmh.h | 8
build/sample2/server | 0
build/sample2/CMakeFiles/server.dir/link.txt | 1
build/src2/CMakeFiles/CMakeDirectoryInformation.cmake | 16
build/src2/CMakeFiles/memfd_shm.dir/progress.make | 5
build/src2/CMakeFiles/memfd_shm.dir/build.make | 128 +
build/sample2/CMakeFiles/cli_snd.dir/flags.make | 10
build/sample2/CMakeFiles/server.dir/depend.make | 9
sample2/srv_recv.cpp | 53
src2/CMakeLists.txt | 12
build/sample2/CMakeFiles/client.dir/flags.make | 10
build/src2/Makefile | 240 ++
build/sample2/CMakeFiles/srv_rcv.dir/flags.make | 10
build/sample2/client | 0
build/src2/CMakeFiles/memfd_shm.dir/flags.make | 10
build/sample2/CMakeFiles/cli_snd.dir/DependInfo.cmake | 22
build/src2/cmake_install.cmake | 39
src2/transfd_shm.c | 90
build/src2/CMakeFiles/memfd_shm.dir/depend.internal | 13
build/src2/CMakeFiles/memfd_shm.dir/cmake_clean.cmake | 12
build/src2/CMakeFiles/memfd_shm.dir/DependInfo.cmake | 22
sample2/CMakeLists.txt | 19
build/sample2/CMakeFiles/cli_snd.dir/CXX.includecache | 36
src2/transfd_shm.h | 21
src2/memfd_shm.c | 103
build/sample2/CMakeFiles/cli_snd.dir/cmake_clean.cmake | 10
build/CMakeFiles/progress.marks | 1
src2/memfd_shm.h | 19
build/sample2/CMakeFiles/server.dir/build.make | 99
92 files changed, 6,406 insertions(+), 2 deletions(-)
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 25e6547..c0bc258 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -1,6 +1,9 @@
cmake_minimum_required(VERSION 3.9)
project(memfd)
set(CMAKE_CFLAGS "${CMAKE_C_FLAGS} -fPIC")
-add_subdirectory(src)
-add_subdirectory(sample)
+# add_subdirectory(src)
+# add_subdirectory(sample)
+# add src2
+add_subdirectory(src2)
+add_subdirectory(sample2)
\ No newline at end of file
diff --git a/build/CMakeCache.txt b/build/CMakeCache.txt
new file mode 100644
index 0000000..800960f
--- /dev/null
+++ b/build/CMakeCache.txt
@@ -0,0 +1,351 @@
+# This is the CMakeCache file.
+# For build in directory: /home/basic/workspace/code/go/vaproc/repository/memfd/build
+# It was generated by CMake: /usr/local/lib/python2.7/dist-packages/cmake/data/bin/cmake
+# You can edit this file to change values found and used by cmake.
+# If you do not want to change any of the values, simply exit the editor.
+# If you do want to change a value, simply edit, save, and exit the editor.
+# The syntax for the file is as follows:
+# KEY:TYPE=VALUE
+# KEY is the name of a variable in the cache.
+# TYPE is a hint to GUIs for the type of VALUE, DO NOT EDIT TYPE!.
+# VALUE is the current value for the KEY.
+
+########################
+# EXTERNAL cache entries
+########################
+
+//Path to a program.
+CMAKE_AR:FILEPATH=/usr/bin/ar
+
+//Choose the type of build, options are: None Debug Release RelWithDebInfo
+// MinSizeRel ...
+CMAKE_BUILD_TYPE:STRING=
+
+//Enable/Disable color output during build.
+CMAKE_COLOR_MAKEFILE:BOOL=ON
+
+//CXX compiler
+CMAKE_CXX_COMPILER:FILEPATH=/usr/bin/c++
+
+//A wrapper around 'ar' adding the appropriate '--plugin' option
+// for the GCC compiler
+CMAKE_CXX_COMPILER_AR:FILEPATH=/usr/bin/gcc-ar-5
+
+//A wrapper around 'ranlib' adding the appropriate '--plugin' option
+// for the GCC compiler
+CMAKE_CXX_COMPILER_RANLIB:FILEPATH=/usr/bin/gcc-ranlib-5
+
+//Flags used by the CXX compiler during all build types.
+CMAKE_CXX_FLAGS:STRING=
+
+//Flags used by the CXX compiler during DEBUG builds.
+CMAKE_CXX_FLAGS_DEBUG:STRING=-g
+
+//Flags used by the CXX compiler during MINSIZEREL builds.
+CMAKE_CXX_FLAGS_MINSIZEREL:STRING=-Os -DNDEBUG
+
+//Flags used by the CXX compiler during RELEASE builds.
+CMAKE_CXX_FLAGS_RELEASE:STRING=-O3 -DNDEBUG
+
+//Flags used by the CXX compiler during RELWITHDEBINFO builds.
+CMAKE_CXX_FLAGS_RELWITHDEBINFO:STRING=-O2 -g -DNDEBUG
+
+//C compiler
+CMAKE_C_COMPILER:FILEPATH=/usr/bin/cc
+
+//A wrapper around 'ar' adding the appropriate '--plugin' option
+// for the GCC compiler
+CMAKE_C_COMPILER_AR:FILEPATH=/usr/bin/gcc-ar-5
+
+//A wrapper around 'ranlib' adding the appropriate '--plugin' option
+// for the GCC compiler
+CMAKE_C_COMPILER_RANLIB:FILEPATH=/usr/bin/gcc-ranlib-5
+
+//Flags used by the C compiler during all build types.
+CMAKE_C_FLAGS:STRING=
+
+//Flags used by the C compiler during DEBUG builds.
+CMAKE_C_FLAGS_DEBUG:STRING=-g
+
+//Flags used by the C compiler during MINSIZEREL builds.
+CMAKE_C_FLAGS_MINSIZEREL:STRING=-Os -DNDEBUG
+
+//Flags used by the C compiler during RELEASE builds.
+CMAKE_C_FLAGS_RELEASE:STRING=-O3 -DNDEBUG
+
+//Flags used by the C compiler during RELWITHDEBINFO builds.
+CMAKE_C_FLAGS_RELWITHDEBINFO:STRING=-O2 -g -DNDEBUG
+
+//Flags used by the linker during all build types.
+CMAKE_EXE_LINKER_FLAGS:STRING=
+
+//Flags used by the linker during DEBUG builds.
+CMAKE_EXE_LINKER_FLAGS_DEBUG:STRING=
+
+//Flags used by the linker during MINSIZEREL builds.
+CMAKE_EXE_LINKER_FLAGS_MINSIZEREL:STRING=
+
+//Flags used by the linker during RELEASE builds.
+CMAKE_EXE_LINKER_FLAGS_RELEASE:STRING=
+
+//Flags used by the linker during RELWITHDEBINFO builds.
+CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO:STRING=
+
+//Enable/Disable output of compile commands during generation.
+CMAKE_EXPORT_COMPILE_COMMANDS:BOOL=OFF
+
+//Install path prefix, prepended onto install directories.
+CMAKE_INSTALL_PREFIX:PATH=/usr/local
+
+//Path to a program.
+CMAKE_LINKER:FILEPATH=/usr/bin/ld
+
+//Path to a program.
+CMAKE_MAKE_PROGRAM:FILEPATH=/usr/bin/make
+
+//Flags used by the linker during the creation of modules during
+// all build types.
+CMAKE_MODULE_LINKER_FLAGS:STRING=
+
+//Flags used by the linker during the creation of modules during
+// DEBUG builds.
+CMAKE_MODULE_LINKER_FLAGS_DEBUG:STRING=
+
+//Flags used by the linker during the creation of modules during
+// MINSIZEREL builds.
+CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL:STRING=
+
+//Flags used by the linker during the creation of modules during
+// RELEASE builds.
+CMAKE_MODULE_LINKER_FLAGS_RELEASE:STRING=
+
+//Flags used by the linker during the creation of modules during
+// RELWITHDEBINFO builds.
+CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO:STRING=
+
+//Path to a program.
+CMAKE_NM:FILEPATH=/usr/bin/nm
+
+//Path to a program.
+CMAKE_OBJCOPY:FILEPATH=/usr/bin/objcopy
+
+//Path to a program.
+CMAKE_OBJDUMP:FILEPATH=/usr/bin/objdump
+
+//Value Computed by CMake
+CMAKE_PROJECT_DESCRIPTION:STATIC=
+
+//Value Computed by CMake
+CMAKE_PROJECT_HOMEPAGE_URL:STATIC=
+
+//Value Computed by CMake
+CMAKE_PROJECT_NAME:STATIC=memfd
+
+//Path to a program.
+CMAKE_RANLIB:FILEPATH=/usr/bin/ranlib
+
+//Flags used by the linker during the creation of shared libraries
+// during all build types.
+CMAKE_SHARED_LINKER_FLAGS:STRING=
+
+//Flags used by the linker during the creation of shared libraries
+// during DEBUG builds.
+CMAKE_SHARED_LINKER_FLAGS_DEBUG:STRING=
+
+//Flags used by the linker during the creation of shared libraries
+// during MINSIZEREL builds.
+CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL:STRING=
+
+//Flags used by the linker during the creation of shared libraries
+// during RELEASE builds.
+CMAKE_SHARED_LINKER_FLAGS_RELEASE:STRING=
+
+//Flags used by the linker during the creation of shared libraries
+// during RELWITHDEBINFO builds.
+CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO:STRING=
+
+//If set, runtime paths are not added when installing shared libraries,
+// but are added when building.
+CMAKE_SKIP_INSTALL_RPATH:BOOL=NO
+
+//If set, runtime paths are not added when using shared libraries.
+CMAKE_SKIP_RPATH:BOOL=NO
+
+//Flags used by the linker during the creation of static libraries
+// during all build types.
+CMAKE_STATIC_LINKER_FLAGS:STRING=
+
+//Flags used by the linker during the creation of static libraries
+// during DEBUG builds.
+CMAKE_STATIC_LINKER_FLAGS_DEBUG:STRING=
+
+//Flags used by the linker during the creation of static libraries
+// during MINSIZEREL builds.
+CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL:STRING=
+
+//Flags used by the linker during the creation of static libraries
+// during RELEASE builds.
+CMAKE_STATIC_LINKER_FLAGS_RELEASE:STRING=
+
+//Flags used by the linker during the creation of static libraries
+// during RELWITHDEBINFO builds.
+CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO:STRING=
+
+//Path to a program.
+CMAKE_STRIP:FILEPATH=/usr/bin/strip
+
+//If this value is on, makefiles will be generated without the
+// .SILENT directive, and all commands will be echoed to the console
+// during the make. This is useful for debugging only. With Visual
+// Studio IDE projects all commands are done without /nologo.
+CMAKE_VERBOSE_MAKEFILE:BOOL=FALSE
+
+//Value Computed by CMake
+memfd_BINARY_DIR:STATIC=/home/basic/workspace/code/go/vaproc/repository/memfd/build
+
+//Value Computed by CMake
+memfd_SOURCE_DIR:STATIC=/home/basic/workspace/code/go/vaproc/repository/memfd
+
+
+########################
+# INTERNAL cache entries
+########################
+
+//ADVANCED property for variable: CMAKE_AR
+CMAKE_AR-ADVANCED:INTERNAL=1
+//This is the directory where this CMakeCache.txt was created
+CMAKE_CACHEFILE_DIR:INTERNAL=/home/basic/workspace/code/go/vaproc/repository/memfd/build
+//Major version of cmake used to create the current loaded cache
+CMAKE_CACHE_MAJOR_VERSION:INTERNAL=3
+//Minor version of cmake used to create the current loaded cache
+CMAKE_CACHE_MINOR_VERSION:INTERNAL=13
+//Patch version of cmake used to create the current loaded cache
+CMAKE_CACHE_PATCH_VERSION:INTERNAL=3
+//ADVANCED property for variable: CMAKE_COLOR_MAKEFILE
+CMAKE_COLOR_MAKEFILE-ADVANCED:INTERNAL=1
+//Path to CMake executable.
+CMAKE_COMMAND:INTERNAL=/usr/local/lib/python2.7/dist-packages/cmake/data/bin/cmake
+//Path to cpack program executable.
+CMAKE_CPACK_COMMAND:INTERNAL=/usr/local/lib/python2.7/dist-packages/cmake/data/bin/cpack
+//Path to ctest program executable.
+CMAKE_CTEST_COMMAND:INTERNAL=/usr/local/lib/python2.7/dist-packages/cmake/data/bin/ctest
+//ADVANCED property for variable: CMAKE_CXX_COMPILER
+CMAKE_CXX_COMPILER-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_CXX_COMPILER_AR
+CMAKE_CXX_COMPILER_AR-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_CXX_COMPILER_RANLIB
+CMAKE_CXX_COMPILER_RANLIB-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_CXX_FLAGS
+CMAKE_CXX_FLAGS-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_CXX_FLAGS_DEBUG
+CMAKE_CXX_FLAGS_DEBUG-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_CXX_FLAGS_MINSIZEREL
+CMAKE_CXX_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_CXX_FLAGS_RELEASE
+CMAKE_CXX_FLAGS_RELEASE-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_CXX_FLAGS_RELWITHDEBINFO
+CMAKE_CXX_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_C_COMPILER
+CMAKE_C_COMPILER-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_C_COMPILER_AR
+CMAKE_C_COMPILER_AR-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_C_COMPILER_RANLIB
+CMAKE_C_COMPILER_RANLIB-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_C_FLAGS
+CMAKE_C_FLAGS-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_C_FLAGS_DEBUG
+CMAKE_C_FLAGS_DEBUG-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_C_FLAGS_MINSIZEREL
+CMAKE_C_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_C_FLAGS_RELEASE
+CMAKE_C_FLAGS_RELEASE-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_C_FLAGS_RELWITHDEBINFO
+CMAKE_C_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1
+//Executable file format
+CMAKE_EXECUTABLE_FORMAT:INTERNAL=ELF
+//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS
+CMAKE_EXE_LINKER_FLAGS-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_DEBUG
+CMAKE_EXE_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_MINSIZEREL
+CMAKE_EXE_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_RELEASE
+CMAKE_EXE_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO
+CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_EXPORT_COMPILE_COMMANDS
+CMAKE_EXPORT_COMPILE_COMMANDS-ADVANCED:INTERNAL=1
+//Name of external makefile project generator.
+CMAKE_EXTRA_GENERATOR:INTERNAL=
+//Name of generator.
+CMAKE_GENERATOR:INTERNAL=Unix Makefiles
+//Generator instance identifier.
+CMAKE_GENERATOR_INSTANCE:INTERNAL=
+//Name of generator platform.
+CMAKE_GENERATOR_PLATFORM:INTERNAL=
+//Name of generator toolset.
+CMAKE_GENERATOR_TOOLSET:INTERNAL=
+//Source directory with the top level CMakeLists.txt file for this
+// project
+CMAKE_HOME_DIRECTORY:INTERNAL=/home/basic/workspace/code/go/vaproc/repository/memfd
+//Install .so files without execute permission.
+CMAKE_INSTALL_SO_NO_EXE:INTERNAL=1
+//ADVANCED property for variable: CMAKE_LINKER
+CMAKE_LINKER-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_MAKE_PROGRAM
+CMAKE_MAKE_PROGRAM-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS
+CMAKE_MODULE_LINKER_FLAGS-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_DEBUG
+CMAKE_MODULE_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL
+CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_RELEASE
+CMAKE_MODULE_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO
+CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_NM
+CMAKE_NM-ADVANCED:INTERNAL=1
+//number of local generators
+CMAKE_NUMBER_OF_MAKEFILES:INTERNAL=3
+//ADVANCED property for variable: CMAKE_OBJCOPY
+CMAKE_OBJCOPY-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_OBJDUMP
+CMAKE_OBJDUMP-ADVANCED:INTERNAL=1
+//Platform information initialized
+CMAKE_PLATFORM_INFO_INITIALIZED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_RANLIB
+CMAKE_RANLIB-ADVANCED:INTERNAL=1
+//Path to CMake installation.
+CMAKE_ROOT:INTERNAL=/usr/local/lib/python2.7/dist-packages/cmake/data/share/cmake-3.13
+//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS
+CMAKE_SHARED_LINKER_FLAGS-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_DEBUG
+CMAKE_SHARED_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL
+CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_RELEASE
+CMAKE_SHARED_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO
+CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_SKIP_INSTALL_RPATH
+CMAKE_SKIP_INSTALL_RPATH-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_SKIP_RPATH
+CMAKE_SKIP_RPATH-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS
+CMAKE_STATIC_LINKER_FLAGS-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_DEBUG
+CMAKE_STATIC_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL
+CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_RELEASE
+CMAKE_STATIC_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO
+CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_STRIP
+CMAKE_STRIP-ADVANCED:INTERNAL=1
+//uname command
+CMAKE_UNAME:INTERNAL=/bin/uname
+//ADVANCED property for variable: CMAKE_VERBOSE_MAKEFILE
+CMAKE_VERBOSE_MAKEFILE-ADVANCED:INTERNAL=1
+
diff --git a/build/CMakeFiles/3.13.3/CMakeCCompiler.cmake b/build/CMakeFiles/3.13.3/CMakeCCompiler.cmake
new file mode 100644
index 0000000..e033238
--- /dev/null
+++ b/build/CMakeFiles/3.13.3/CMakeCCompiler.cmake
@@ -0,0 +1,73 @@
+set(CMAKE_C_COMPILER "/usr/bin/cc")
+set(CMAKE_C_COMPILER_ARG1 "")
+set(CMAKE_C_COMPILER_ID "GNU")
+set(CMAKE_C_COMPILER_VERSION "5.4.0")
+set(CMAKE_C_COMPILER_VERSION_INTERNAL "")
+set(CMAKE_C_COMPILER_WRAPPER "")
+set(CMAKE_C_STANDARD_COMPUTED_DEFAULT "11")
+set(CMAKE_C_COMPILE_FEATURES "c_std_90;c_function_prototypes;c_std_99;c_restrict;c_variadic_macros;c_std_11;c_static_assert")
+set(CMAKE_C90_COMPILE_FEATURES "c_std_90;c_function_prototypes")
+set(CMAKE_C99_COMPILE_FEATURES "c_std_99;c_restrict;c_variadic_macros")
+set(CMAKE_C11_COMPILE_FEATURES "c_std_11;c_static_assert")
+
+set(CMAKE_C_PLATFORM_ID "Linux")
+set(CMAKE_C_SIMULATE_ID "")
+set(CMAKE_C_SIMULATE_VERSION "")
+
+
+
+set(CMAKE_AR "/usr/bin/ar")
+set(CMAKE_C_COMPILER_AR "/usr/bin/gcc-ar-5")
+set(CMAKE_RANLIB "/usr/bin/ranlib")
+set(CMAKE_C_COMPILER_RANLIB "/usr/bin/gcc-ranlib-5")
+set(CMAKE_LINKER "/usr/bin/ld")
+set(CMAKE_COMPILER_IS_GNUCC 1)
+set(CMAKE_C_COMPILER_LOADED 1)
+set(CMAKE_C_COMPILER_WORKS TRUE)
+set(CMAKE_C_ABI_COMPILED TRUE)
+set(CMAKE_COMPILER_IS_MINGW )
+set(CMAKE_COMPILER_IS_CYGWIN )
+if(CMAKE_COMPILER_IS_CYGWIN)
+ set(CYGWIN 1)
+ set(UNIX 1)
+endif()
+
+set(CMAKE_C_COMPILER_ENV_VAR "CC")
+
+if(CMAKE_COMPILER_IS_MINGW)
+ set(MINGW 1)
+endif()
+set(CMAKE_C_COMPILER_ID_RUN 1)
+set(CMAKE_C_SOURCE_FILE_EXTENSIONS c;m)
+set(CMAKE_C_IGNORE_EXTENSIONS h;H;o;O;obj;OBJ;def;DEF;rc;RC)
+set(CMAKE_C_LINKER_PREFERENCE 10)
+
+# Save compiler ABI information.
+set(CMAKE_C_SIZEOF_DATA_PTR "8")
+set(CMAKE_C_COMPILER_ABI "ELF")
+set(CMAKE_C_LIBRARY_ARCHITECTURE "x86_64-linux-gnu")
+
+if(CMAKE_C_SIZEOF_DATA_PTR)
+ set(CMAKE_SIZEOF_VOID_P "${CMAKE_C_SIZEOF_DATA_PTR}")
+endif()
+
+if(CMAKE_C_COMPILER_ABI)
+ set(CMAKE_INTERNAL_PLATFORM_ABI "${CMAKE_C_COMPILER_ABI}")
+endif()
+
+if(CMAKE_C_LIBRARY_ARCHITECTURE)
+ set(CMAKE_LIBRARY_ARCHITECTURE "x86_64-linux-gnu")
+endif()
+
+set(CMAKE_C_CL_SHOWINCLUDES_PREFIX "")
+if(CMAKE_C_CL_SHOWINCLUDES_PREFIX)
+ set(CMAKE_CL_SHOWINCLUDES_PREFIX "${CMAKE_C_CL_SHOWINCLUDES_PREFIX}")
+endif()
+
+
+
+
+
+set(CMAKE_C_IMPLICIT_LINK_LIBRARIES "gcc;gcc_s;c;gcc;gcc_s")
+set(CMAKE_C_IMPLICIT_LINK_DIRECTORIES "/usr/lib/gcc/x86_64-linux-gnu/5;/usr/lib/x86_64-linux-gnu;/usr/lib;/lib/x86_64-linux-gnu;/lib")
+set(CMAKE_C_IMPLICIT_LINK_FRAMEWORK_DIRECTORIES "")
diff --git a/build/CMakeFiles/3.13.3/CMakeCXXCompiler.cmake b/build/CMakeFiles/3.13.3/CMakeCXXCompiler.cmake
new file mode 100644
index 0000000..53b865d
--- /dev/null
+++ b/build/CMakeFiles/3.13.3/CMakeCXXCompiler.cmake
@@ -0,0 +1,76 @@
+set(CMAKE_CXX_COMPILER "/usr/bin/c++")
+set(CMAKE_CXX_COMPILER_ARG1 "")
+set(CMAKE_CXX_COMPILER_ID "GNU")
+set(CMAKE_CXX_COMPILER_VERSION "5.4.0")
+set(CMAKE_CXX_COMPILER_VERSION_INTERNAL "")
+set(CMAKE_CXX_COMPILER_WRAPPER "")
+set(CMAKE_CXX_STANDARD_COMPUTED_DEFAULT "98")
+set(CMAKE_CXX_COMPILE_FEATURES "cxx_std_98;cxx_template_template_parameters;cxx_std_11;cxx_alias_templates;cxx_alignas;cxx_alignof;cxx_attributes;cxx_auto_type;cxx_constexpr;cxx_decltype;cxx_decltype_incomplete_return_types;cxx_default_function_template_args;cxx_defaulted_functions;cxx_defaulted_move_initializers;cxx_delegating_constructors;cxx_deleted_functions;cxx_enum_forward_declarations;cxx_explicit_conversions;cxx_extended_friend_declarations;cxx_extern_templates;cxx_final;cxx_func_identifier;cxx_generalized_initializers;cxx_inheriting_constructors;cxx_inline_namespaces;cxx_lambdas;cxx_local_type_template_args;cxx_long_long_type;cxx_noexcept;cxx_nonstatic_member_init;cxx_nullptr;cxx_override;cxx_range_for;cxx_raw_string_literals;cxx_reference_qualified_functions;cxx_right_angle_brackets;cxx_rvalue_references;cxx_sizeof_member;cxx_static_assert;cxx_strong_enums;cxx_thread_local;cxx_trailing_return_types;cxx_unicode_literals;cxx_uniform_initialization;cxx_unrestricted_unions;cxx_user_literals;cxx_variadic_macros;cxx_variadic_templates;cxx_std_14;cxx_aggregate_default_initializers;cxx_attribute_deprecated;cxx_binary_literals;cxx_contextual_conversions;cxx_decltype_auto;cxx_digit_separators;cxx_generic_lambdas;cxx_lambda_init_captures;cxx_relaxed_constexpr;cxx_return_type_deduction;cxx_variable_templates;cxx_std_17")
+set(CMAKE_CXX98_COMPILE_FEATURES "cxx_std_98;cxx_template_template_parameters")
+set(CMAKE_CXX11_COMPILE_FEATURES "cxx_std_11;cxx_alias_templates;cxx_alignas;cxx_alignof;cxx_attributes;cxx_auto_type;cxx_constexpr;cxx_decltype;cxx_decltype_incomplete_return_types;cxx_default_function_template_args;cxx_defaulted_functions;cxx_defaulted_move_initializers;cxx_delegating_constructors;cxx_deleted_functions;cxx_enum_forward_declarations;cxx_explicit_conversions;cxx_extended_friend_declarations;cxx_extern_templates;cxx_final;cxx_func_identifier;cxx_generalized_initializers;cxx_inheriting_constructors;cxx_inline_namespaces;cxx_lambdas;cxx_local_type_template_args;cxx_long_long_type;cxx_noexcept;cxx_nonstatic_member_init;cxx_nullptr;cxx_override;cxx_range_for;cxx_raw_string_literals;cxx_reference_qualified_functions;cxx_right_angle_brackets;cxx_rvalue_references;cxx_sizeof_member;cxx_static_assert;cxx_strong_enums;cxx_thread_local;cxx_trailing_return_types;cxx_unicode_literals;cxx_uniform_initialization;cxx_unrestricted_unions;cxx_user_literals;cxx_variadic_macros;cxx_variadic_templates")
+set(CMAKE_CXX14_COMPILE_FEATURES "cxx_std_14;cxx_aggregate_default_initializers;cxx_attribute_deprecated;cxx_binary_literals;cxx_contextual_conversions;cxx_decltype_auto;cxx_digit_separators;cxx_generic_lambdas;cxx_lambda_init_captures;cxx_relaxed_constexpr;cxx_return_type_deduction;cxx_variable_templates")
+set(CMAKE_CXX17_COMPILE_FEATURES "cxx_std_17")
+set(CMAKE_CXX20_COMPILE_FEATURES "")
+
+set(CMAKE_CXX_PLATFORM_ID "Linux")
+set(CMAKE_CXX_SIMULATE_ID "")
+set(CMAKE_CXX_SIMULATE_VERSION "")
+
+
+
+set(CMAKE_AR "/usr/bin/ar")
+set(CMAKE_CXX_COMPILER_AR "/usr/bin/gcc-ar-5")
+set(CMAKE_RANLIB "/usr/bin/ranlib")
+set(CMAKE_CXX_COMPILER_RANLIB "/usr/bin/gcc-ranlib-5")
+set(CMAKE_LINKER "/usr/bin/ld")
+set(CMAKE_COMPILER_IS_GNUCXX 1)
+set(CMAKE_CXX_COMPILER_LOADED 1)
+set(CMAKE_CXX_COMPILER_WORKS TRUE)
+set(CMAKE_CXX_ABI_COMPILED TRUE)
+set(CMAKE_COMPILER_IS_MINGW )
+set(CMAKE_COMPILER_IS_CYGWIN )
+if(CMAKE_COMPILER_IS_CYGWIN)
+ set(CYGWIN 1)
+ set(UNIX 1)
+endif()
+
+set(CMAKE_CXX_COMPILER_ENV_VAR "CXX")
+
+if(CMAKE_COMPILER_IS_MINGW)
+ set(MINGW 1)
+endif()
+set(CMAKE_CXX_COMPILER_ID_RUN 1)
+set(CMAKE_CXX_IGNORE_EXTENSIONS inl;h;hpp;HPP;H;o;O;obj;OBJ;def;DEF;rc;RC)
+set(CMAKE_CXX_SOURCE_FILE_EXTENSIONS C;M;c++;cc;cpp;cxx;mm;CPP)
+set(CMAKE_CXX_LINKER_PREFERENCE 30)
+set(CMAKE_CXX_LINKER_PREFERENCE_PROPAGATES 1)
+
+# Save compiler ABI information.
+set(CMAKE_CXX_SIZEOF_DATA_PTR "8")
+set(CMAKE_CXX_COMPILER_ABI "ELF")
+set(CMAKE_CXX_LIBRARY_ARCHITECTURE "x86_64-linux-gnu")
+
+if(CMAKE_CXX_SIZEOF_DATA_PTR)
+ set(CMAKE_SIZEOF_VOID_P "${CMAKE_CXX_SIZEOF_DATA_PTR}")
+endif()
+
+if(CMAKE_CXX_COMPILER_ABI)
+ set(CMAKE_INTERNAL_PLATFORM_ABI "${CMAKE_CXX_COMPILER_ABI}")
+endif()
+
+if(CMAKE_CXX_LIBRARY_ARCHITECTURE)
+ set(CMAKE_LIBRARY_ARCHITECTURE "x86_64-linux-gnu")
+endif()
+
+set(CMAKE_CXX_CL_SHOWINCLUDES_PREFIX "")
+if(CMAKE_CXX_CL_SHOWINCLUDES_PREFIX)
+ set(CMAKE_CL_SHOWINCLUDES_PREFIX "${CMAKE_CXX_CL_SHOWINCLUDES_PREFIX}")
+endif()
+
+
+
+
+
+set(CMAKE_CXX_IMPLICIT_LINK_LIBRARIES "stdc++;m;gcc_s;gcc;c;gcc_s;gcc")
+set(CMAKE_CXX_IMPLICIT_LINK_DIRECTORIES "/usr/lib/gcc/x86_64-linux-gnu/5;/usr/lib/x86_64-linux-gnu;/usr/lib;/lib/x86_64-linux-gnu;/lib")
+set(CMAKE_CXX_IMPLICIT_LINK_FRAMEWORK_DIRECTORIES "")
diff --git a/build/CMakeFiles/3.13.3/CMakeDetermineCompilerABI_C.bin b/build/CMakeFiles/3.13.3/CMakeDetermineCompilerABI_C.bin
new file mode 100755
index 0000000..dafdfa7
--- /dev/null
+++ b/build/CMakeFiles/3.13.3/CMakeDetermineCompilerABI_C.bin
Binary files differ
diff --git a/build/CMakeFiles/3.13.3/CMakeDetermineCompilerABI_CXX.bin b/build/CMakeFiles/3.13.3/CMakeDetermineCompilerABI_CXX.bin
new file mode 100755
index 0000000..f9e1b87
--- /dev/null
+++ b/build/CMakeFiles/3.13.3/CMakeDetermineCompilerABI_CXX.bin
Binary files differ
diff --git a/build/CMakeFiles/3.13.3/CMakeSystem.cmake b/build/CMakeFiles/3.13.3/CMakeSystem.cmake
new file mode 100644
index 0000000..c12c28b
--- /dev/null
+++ b/build/CMakeFiles/3.13.3/CMakeSystem.cmake
@@ -0,0 +1,15 @@
+set(CMAKE_HOST_SYSTEM "Linux-4.15.0-142-generic")
+set(CMAKE_HOST_SYSTEM_NAME "Linux")
+set(CMAKE_HOST_SYSTEM_VERSION "4.15.0-142-generic")
+set(CMAKE_HOST_SYSTEM_PROCESSOR "x86_64")
+
+
+
+set(CMAKE_SYSTEM "Linux-4.15.0-142-generic")
+set(CMAKE_SYSTEM_NAME "Linux")
+set(CMAKE_SYSTEM_VERSION "4.15.0-142-generic")
+set(CMAKE_SYSTEM_PROCESSOR "x86_64")
+
+set(CMAKE_CROSSCOMPILING "FALSE")
+
+set(CMAKE_SYSTEM_LOADED 1)
diff --git a/build/CMakeFiles/3.13.3/CompilerIdC/CMakeCCompilerId.c b/build/CMakeFiles/3.13.3/CompilerIdC/CMakeCCompilerId.c
new file mode 100644
index 0000000..bfc6ebb
--- /dev/null
+++ b/build/CMakeFiles/3.13.3/CompilerIdC/CMakeCCompilerId.c
@@ -0,0 +1,623 @@
+#ifdef __cplusplus
+# error "A C++ compiler has been selected for C."
+#endif
+
+#if defined(__18CXX)
+# define ID_VOID_MAIN
+#endif
+#if defined(__CLASSIC_C__)
+/* cv-qualifiers did not exist in K&R C */
+# define const
+# define volatile
+#endif
+
+
+/* Version number components: V=Version, R=Revision, P=Patch
+ Version date components: YYYY=Year, MM=Month, DD=Day */
+
+#if defined(__INTEL_COMPILER) || defined(__ICC)
+# define COMPILER_ID "Intel"
+# if defined(_MSC_VER)
+# define SIMULATE_ID "MSVC"
+# endif
+ /* __INTEL_COMPILER = VRP */
+# define COMPILER_VERSION_MAJOR DEC(__INTEL_COMPILER/100)
+# define COMPILER_VERSION_MINOR DEC(__INTEL_COMPILER/10 % 10)
+# if defined(__INTEL_COMPILER_UPDATE)
+# define COMPILER_VERSION_PATCH DEC(__INTEL_COMPILER_UPDATE)
+# else
+# define COMPILER_VERSION_PATCH DEC(__INTEL_COMPILER % 10)
+# endif
+# if defined(__INTEL_COMPILER_BUILD_DATE)
+ /* __INTEL_COMPILER_BUILD_DATE = YYYYMMDD */
+# define COMPILER_VERSION_TWEAK DEC(__INTEL_COMPILER_BUILD_DATE)
+# endif
+# if defined(_MSC_VER)
+ /* _MSC_VER = VVRR */
+# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100)
+# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100)
+# endif
+
+#elif defined(__PATHCC__)
+# define COMPILER_ID "PathScale"
+# define COMPILER_VERSION_MAJOR DEC(__PATHCC__)
+# define COMPILER_VERSION_MINOR DEC(__PATHCC_MINOR__)
+# if defined(__PATHCC_PATCHLEVEL__)
+# define COMPILER_VERSION_PATCH DEC(__PATHCC_PATCHLEVEL__)
+# endif
+
+#elif defined(__BORLANDC__) && defined(__CODEGEARC_VERSION__)
+# define COMPILER_ID "Embarcadero"
+# define COMPILER_VERSION_MAJOR HEX(__CODEGEARC_VERSION__>>24 & 0x00FF)
+# define COMPILER_VERSION_MINOR HEX(__CODEGEARC_VERSION__>>16 & 0x00FF)
+# define COMPILER_VERSION_PATCH DEC(__CODEGEARC_VERSION__ & 0xFFFF)
+
+#elif defined(__BORLANDC__)
+# define COMPILER_ID "Borland"
+ /* __BORLANDC__ = 0xVRR */
+# define COMPILER_VERSION_MAJOR HEX(__BORLANDC__>>8)
+# define COMPILER_VERSION_MINOR HEX(__BORLANDC__ & 0xFF)
+
+#elif defined(__WATCOMC__) && __WATCOMC__ < 1200
+# define COMPILER_ID "Watcom"
+ /* __WATCOMC__ = VVRR */
+# define COMPILER_VERSION_MAJOR DEC(__WATCOMC__ / 100)
+# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10)
+# if (__WATCOMC__ % 10) > 0
+# define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10)
+# endif
+
+#elif defined(__WATCOMC__)
+# define COMPILER_ID "OpenWatcom"
+ /* __WATCOMC__ = VVRP + 1100 */
+# define COMPILER_VERSION_MAJOR DEC((__WATCOMC__ - 1100) / 100)
+# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10)
+# if (__WATCOMC__ % 10) > 0
+# define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10)
+# endif
+
+#elif defined(__SUNPRO_C)
+# define COMPILER_ID "SunPro"
+# if __SUNPRO_C >= 0x5100
+ /* __SUNPRO_C = 0xVRRP */
+# define COMPILER_VERSION_MAJOR HEX(__SUNPRO_C>>12)
+# define COMPILER_VERSION_MINOR HEX(__SUNPRO_C>>4 & 0xFF)
+# define COMPILER_VERSION_PATCH HEX(__SUNPRO_C & 0xF)
+# else
+ /* __SUNPRO_CC = 0xVRP */
+# define COMPILER_VERSION_MAJOR HEX(__SUNPRO_C>>8)
+# define COMPILER_VERSION_MINOR HEX(__SUNPRO_C>>4 & 0xF)
+# define COMPILER_VERSION_PATCH HEX(__SUNPRO_C & 0xF)
+# endif
+
+#elif defined(__HP_cc)
+# define COMPILER_ID "HP"
+ /* __HP_cc = VVRRPP */
+# define COMPILER_VERSION_MAJOR DEC(__HP_cc/10000)
+# define COMPILER_VERSION_MINOR DEC(__HP_cc/100 % 100)
+# define COMPILER_VERSION_PATCH DEC(__HP_cc % 100)
+
+#elif defined(__DECC)
+# define COMPILER_ID "Compaq"
+ /* __DECC_VER = VVRRTPPPP */
+# define COMPILER_VERSION_MAJOR DEC(__DECC_VER/10000000)
+# define COMPILER_VERSION_MINOR DEC(__DECC_VER/100000 % 100)
+# define COMPILER_VERSION_PATCH DEC(__DECC_VER % 10000)
+
+#elif defined(__IBMC__) && defined(__COMPILER_VER__)
+# define COMPILER_ID "zOS"
+# if defined(__ibmxl__)
+# define COMPILER_VERSION_MAJOR DEC(__ibmxl_version__)
+# define COMPILER_VERSION_MINOR DEC(__ibmxl_release__)
+# define COMPILER_VERSION_PATCH DEC(__ibmxl_modification__)
+# define COMPILER_VERSION_TWEAK DEC(__ibmxl_ptf_fix_level__)
+# else
+ /* __IBMC__ = VRP */
+# define COMPILER_VERSION_MAJOR DEC(__IBMC__/100)
+# define COMPILER_VERSION_MINOR DEC(__IBMC__/10 % 10)
+# define COMPILER_VERSION_PATCH DEC(__IBMC__ % 10)
+# endif
+
+
+#elif defined(__ibmxl__) || (defined(__IBMC__) && !defined(__COMPILER_VER__) && __IBMC__ >= 800)
+# define COMPILER_ID "XL"
+# if defined(__ibmxl__)
+# define COMPILER_VERSION_MAJOR DEC(__ibmxl_version__)
+# define COMPILER_VERSION_MINOR DEC(__ibmxl_release__)
+# define COMPILER_VERSION_PATCH DEC(__ibmxl_modification__)
+# define COMPILER_VERSION_TWEAK DEC(__ibmxl_ptf_fix_level__)
+# else
+ /* __IBMC__ = VRP */
+# define COMPILER_VERSION_MAJOR DEC(__IBMC__/100)
+# define COMPILER_VERSION_MINOR DEC(__IBMC__/10 % 10)
+# define COMPILER_VERSION_PATCH DEC(__IBMC__ % 10)
+# endif
+
+
+#elif defined(__IBMC__) && !defined(__COMPILER_VER__) && __IBMC__ < 800
+# define COMPILER_ID "VisualAge"
+# if defined(__ibmxl__)
+# define COMPILER_VERSION_MAJOR DEC(__ibmxl_version__)
+# define COMPILER_VERSION_MINOR DEC(__ibmxl_release__)
+# define COMPILER_VERSION_PATCH DEC(__ibmxl_modification__)
+# define COMPILER_VERSION_TWEAK DEC(__ibmxl_ptf_fix_level__)
+# else
+ /* __IBMC__ = VRP */
+# define COMPILER_VERSION_MAJOR DEC(__IBMC__/100)
+# define COMPILER_VERSION_MINOR DEC(__IBMC__/10 % 10)
+# define COMPILER_VERSION_PATCH DEC(__IBMC__ % 10)
+# endif
+
+
+#elif defined(__PGI)
+# define COMPILER_ID "PGI"
+# define COMPILER_VERSION_MAJOR DEC(__PGIC__)
+# define COMPILER_VERSION_MINOR DEC(__PGIC_MINOR__)
+# if defined(__PGIC_PATCHLEVEL__)
+# define COMPILER_VERSION_PATCH DEC(__PGIC_PATCHLEVEL__)
+# endif
+
+#elif defined(_CRAYC)
+# define COMPILER_ID "Cray"
+# define COMPILER_VERSION_MAJOR DEC(_RELEASE_MAJOR)
+# define COMPILER_VERSION_MINOR DEC(_RELEASE_MINOR)
+
+#elif defined(__TI_COMPILER_VERSION__)
+# define COMPILER_ID "TI"
+ /* __TI_COMPILER_VERSION__ = VVVRRRPPP */
+# define COMPILER_VERSION_MAJOR DEC(__TI_COMPILER_VERSION__/1000000)
+# define COMPILER_VERSION_MINOR DEC(__TI_COMPILER_VERSION__/1000 % 1000)
+# define COMPILER_VERSION_PATCH DEC(__TI_COMPILER_VERSION__ % 1000)
+
+#elif defined(__FUJITSU) || defined(__FCC_VERSION) || defined(__fcc_version)
+# define COMPILER_ID "Fujitsu"
+
+#elif defined(__TINYC__)
+# define COMPILER_ID "TinyCC"
+
+#elif defined(__BCC__)
+# define COMPILER_ID "Bruce"
+
+#elif defined(__SCO_VERSION__)
+# define COMPILER_ID "SCO"
+
+#elif defined(__clang__) && defined(__apple_build_version__)
+# define COMPILER_ID "AppleClang"
+# if defined(_MSC_VER)
+# define SIMULATE_ID "MSVC"
+# endif
+# define COMPILER_VERSION_MAJOR DEC(__clang_major__)
+# define COMPILER_VERSION_MINOR DEC(__clang_minor__)
+# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__)
+# if defined(_MSC_VER)
+ /* _MSC_VER = VVRR */
+# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100)
+# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100)
+# endif
+# define COMPILER_VERSION_TWEAK DEC(__apple_build_version__)
+
+#elif defined(__clang__)
+# define COMPILER_ID "Clang"
+# if defined(_MSC_VER)
+# define SIMULATE_ID "MSVC"
+# endif
+# define COMPILER_VERSION_MAJOR DEC(__clang_major__)
+# define COMPILER_VERSION_MINOR DEC(__clang_minor__)
+# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__)
+# if defined(_MSC_VER)
+ /* _MSC_VER = VVRR */
+# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100)
+# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100)
+# endif
+
+#elif defined(__GNUC__)
+# define COMPILER_ID "GNU"
+# define COMPILER_VERSION_MAJOR DEC(__GNUC__)
+# if defined(__GNUC_MINOR__)
+# define COMPILER_VERSION_MINOR DEC(__GNUC_MINOR__)
+# endif
+# if defined(__GNUC_PATCHLEVEL__)
+# define COMPILER_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__)
+# endif
+
+#elif defined(_MSC_VER)
+# define COMPILER_ID "MSVC"
+ /* _MSC_VER = VVRR */
+# define COMPILER_VERSION_MAJOR DEC(_MSC_VER / 100)
+# define COMPILER_VERSION_MINOR DEC(_MSC_VER % 100)
+# if defined(_MSC_FULL_VER)
+# if _MSC_VER >= 1400
+ /* _MSC_FULL_VER = VVRRPPPPP */
+# define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 100000)
+# else
+ /* _MSC_FULL_VER = VVRRPPPP */
+# define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 10000)
+# endif
+# endif
+# if defined(_MSC_BUILD)
+# define COMPILER_VERSION_TWEAK DEC(_MSC_BUILD)
+# endif
+
+#elif defined(__VISUALDSPVERSION__) || defined(__ADSPBLACKFIN__) || defined(__ADSPTS__) || defined(__ADSP21000__)
+# define COMPILER_ID "ADSP"
+#if defined(__VISUALDSPVERSION__)
+ /* __VISUALDSPVERSION__ = 0xVVRRPP00 */
+# define COMPILER_VERSION_MAJOR HEX(__VISUALDSPVERSION__>>24)
+# define COMPILER_VERSION_MINOR HEX(__VISUALDSPVERSION__>>16 & 0xFF)
+# define COMPILER_VERSION_PATCH HEX(__VISUALDSPVERSION__>>8 & 0xFF)
+#endif
+
+#elif defined(__IAR_SYSTEMS_ICC__) || defined(__IAR_SYSTEMS_ICC)
+# define COMPILER_ID "IAR"
+# if defined(__VER__)
+# define COMPILER_VERSION_MAJOR DEC((__VER__) / 1000000)
+# define COMPILER_VERSION_MINOR DEC(((__VER__) / 1000) % 1000)
+# define COMPILER_VERSION_PATCH DEC((__VER__) % 1000)
+# define COMPILER_VERSION_INTERNAL DEC(__IAR_SYSTEMS_ICC__)
+# endif
+
+#elif defined(__ARMCC_VERSION)
+# define COMPILER_ID "ARMCC"
+#if __ARMCC_VERSION >= 1000000
+ /* __ARMCC_VERSION = VRRPPPP */
+ # define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/1000000)
+ # define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 100)
+ # define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION % 10000)
+#else
+ /* __ARMCC_VERSION = VRPPPP */
+ # define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/100000)
+ # define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 10)
+ # define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION % 10000)
+#endif
+
+
+#elif defined(__SDCC_VERSION_MAJOR) || defined(SDCC)
+# define COMPILER_ID "SDCC"
+# if defined(__SDCC_VERSION_MAJOR)
+# define COMPILER_VERSION_MAJOR DEC(__SDCC_VERSION_MAJOR)
+# define COMPILER_VERSION_MINOR DEC(__SDCC_VERSION_MINOR)
+# define COMPILER_VERSION_PATCH DEC(__SDCC_VERSION_PATCH)
+# else
+ /* SDCC = VRP */
+# define COMPILER_VERSION_MAJOR DEC(SDCC/100)
+# define COMPILER_VERSION_MINOR DEC(SDCC/10 % 10)
+# define COMPILER_VERSION_PATCH DEC(SDCC % 10)
+# endif
+
+#elif defined(_SGI_COMPILER_VERSION) || defined(_COMPILER_VERSION)
+# define COMPILER_ID "MIPSpro"
+# if defined(_SGI_COMPILER_VERSION)
+ /* _SGI_COMPILER_VERSION = VRP */
+# define COMPILER_VERSION_MAJOR DEC(_SGI_COMPILER_VERSION/100)
+# define COMPILER_VERSION_MINOR DEC(_SGI_COMPILER_VERSION/10 % 10)
+# define COMPILER_VERSION_PATCH DEC(_SGI_COMPILER_VERSION % 10)
+# else
+ /* _COMPILER_VERSION = VRP */
+# define COMPILER_VERSION_MAJOR DEC(_COMPILER_VERSION/100)
+# define COMPILER_VERSION_MINOR DEC(_COMPILER_VERSION/10 % 10)
+# define COMPILER_VERSION_PATCH DEC(_COMPILER_VERSION % 10)
+# endif
+
+
+/* These compilers are either not known or too old to define an
+ identification macro. Try to identify the platform and guess that
+ it is the native compiler. */
+#elif defined(__sgi)
+# define COMPILER_ID "MIPSpro"
+
+#elif defined(__hpux) || defined(__hpua)
+# define COMPILER_ID "HP"
+
+#else /* unknown compiler */
+# define COMPILER_ID ""
+#endif
+
+/* Construct the string literal in pieces to prevent the source from
+ getting matched. Store it in a pointer rather than an array
+ because some compilers will just produce instructions to fill the
+ array rather than assigning a pointer to a static array. */
+char const* info_compiler = "INFO" ":" "compiler[" COMPILER_ID "]";
+#ifdef SIMULATE_ID
+char const* info_simulate = "INFO" ":" "simulate[" SIMULATE_ID "]";
+#endif
+
+#ifdef __QNXNTO__
+char const* qnxnto = "INFO" ":" "qnxnto[]";
+#endif
+
+#if defined(__CRAYXE) || defined(__CRAYXC)
+char const *info_cray = "INFO" ":" "compiler_wrapper[CrayPrgEnv]";
+#endif
+
+#define STRINGIFY_HELPER(X) #X
+#define STRINGIFY(X) STRINGIFY_HELPER(X)
+
+/* Identify known platforms by name. */
+#if defined(__linux) || defined(__linux__) || defined(linux)
+# define PLATFORM_ID "Linux"
+
+#elif defined(__CYGWIN__)
+# define PLATFORM_ID "Cygwin"
+
+#elif defined(__MINGW32__)
+# define PLATFORM_ID "MinGW"
+
+#elif defined(__APPLE__)
+# define PLATFORM_ID "Darwin"
+
+#elif defined(_WIN32) || defined(__WIN32__) || defined(WIN32)
+# define PLATFORM_ID "Windows"
+
+#elif defined(__FreeBSD__) || defined(__FreeBSD)
+# define PLATFORM_ID "FreeBSD"
+
+#elif defined(__NetBSD__) || defined(__NetBSD)
+# define PLATFORM_ID "NetBSD"
+
+#elif defined(__OpenBSD__) || defined(__OPENBSD)
+# define PLATFORM_ID "OpenBSD"
+
+#elif defined(__sun) || defined(sun)
+# define PLATFORM_ID "SunOS"
+
+#elif defined(_AIX) || defined(__AIX) || defined(__AIX__) || defined(__aix) || defined(__aix__)
+# define PLATFORM_ID "AIX"
+
+#elif defined(__sgi) || defined(__sgi__) || defined(_SGI)
+# define PLATFORM_ID "IRIX"
+
+#elif defined(__hpux) || defined(__hpux__)
+# define PLATFORM_ID "HP-UX"
+
+#elif defined(__HAIKU__)
+# define PLATFORM_ID "Haiku"
+
+#elif defined(__BeOS) || defined(__BEOS__) || defined(_BEOS)
+# define PLATFORM_ID "BeOS"
+
+#elif defined(__QNX__) || defined(__QNXNTO__)
+# define PLATFORM_ID "QNX"
+
+#elif defined(__tru64) || defined(_tru64) || defined(__TRU64__)
+# define PLATFORM_ID "Tru64"
+
+#elif defined(__riscos) || defined(__riscos__)
+# define PLATFORM_ID "RISCos"
+
+#elif defined(__sinix) || defined(__sinix__) || defined(__SINIX__)
+# define PLATFORM_ID "SINIX"
+
+#elif defined(__UNIX_SV__)
+# define PLATFORM_ID "UNIX_SV"
+
+#elif defined(__bsdos__)
+# define PLATFORM_ID "BSDOS"
+
+#elif defined(_MPRAS) || defined(MPRAS)
+# define PLATFORM_ID "MP-RAS"
+
+#elif defined(__osf) || defined(__osf__)
+# define PLATFORM_ID "OSF1"
+
+#elif defined(_SCO_SV) || defined(SCO_SV) || defined(sco_sv)
+# define PLATFORM_ID "SCO_SV"
+
+#elif defined(__ultrix) || defined(__ultrix__) || defined(_ULTRIX)
+# define PLATFORM_ID "ULTRIX"
+
+#elif defined(__XENIX__) || defined(_XENIX) || defined(XENIX)
+# define PLATFORM_ID "Xenix"
+
+#elif defined(__WATCOMC__)
+# if defined(__LINUX__)
+# define PLATFORM_ID "Linux"
+
+# elif defined(__DOS__)
+# define PLATFORM_ID "DOS"
+
+# elif defined(__OS2__)
+# define PLATFORM_ID "OS2"
+
+# elif defined(__WINDOWS__)
+# define PLATFORM_ID "Windows3x"
+
+# else /* unknown platform */
+# define PLATFORM_ID
+# endif
+
+#else /* unknown platform */
+# define PLATFORM_ID
+
+#endif
+
+/* For windows compilers MSVC and Intel we can determine
+ the architecture of the compiler being used. This is because
+ the compilers do not have flags that can change the architecture,
+ but rather depend on which compiler is being used
+*/
+#if defined(_WIN32) && defined(_MSC_VER)
+# if defined(_M_IA64)
+# define ARCHITECTURE_ID "IA64"
+
+# elif defined(_M_X64) || defined(_M_AMD64)
+# define ARCHITECTURE_ID "x64"
+
+# elif defined(_M_IX86)
+# define ARCHITECTURE_ID "X86"
+
+# elif defined(_M_ARM64)
+# define ARCHITECTURE_ID "ARM64"
+
+# elif defined(_M_ARM)
+# if _M_ARM == 4
+# define ARCHITECTURE_ID "ARMV4I"
+# elif _M_ARM == 5
+# define ARCHITECTURE_ID "ARMV5I"
+# else
+# define ARCHITECTURE_ID "ARMV" STRINGIFY(_M_ARM)
+# endif
+
+# elif defined(_M_MIPS)
+# define ARCHITECTURE_ID "MIPS"
+
+# elif defined(_M_SH)
+# define ARCHITECTURE_ID "SHx"
+
+# else /* unknown architecture */
+# define ARCHITECTURE_ID ""
+# endif
+
+#elif defined(__WATCOMC__)
+# if defined(_M_I86)
+# define ARCHITECTURE_ID "I86"
+
+# elif defined(_M_IX86)
+# define ARCHITECTURE_ID "X86"
+
+# else /* unknown architecture */
+# define ARCHITECTURE_ID ""
+# endif
+
+#elif defined(__IAR_SYSTEMS_ICC__) || defined(__IAR_SYSTEMS_ICC)
+# if defined(__ICCARM__)
+# define ARCHITECTURE_ID "ARM"
+
+# elif defined(__ICCAVR__)
+# define ARCHITECTURE_ID "AVR"
+
+# else /* unknown architecture */
+# define ARCHITECTURE_ID ""
+# endif
+#else
+# define ARCHITECTURE_ID
+#endif
+
+/* Convert integer to decimal digit literals. */
+#define DEC(n) \
+ ('0' + (((n) / 10000000)%10)), \
+ ('0' + (((n) / 1000000)%10)), \
+ ('0' + (((n) / 100000)%10)), \
+ ('0' + (((n) / 10000)%10)), \
+ ('0' + (((n) / 1000)%10)), \
+ ('0' + (((n) / 100)%10)), \
+ ('0' + (((n) / 10)%10)), \
+ ('0' + ((n) % 10))
+
+/* Convert integer to hex digit literals. */
+#define HEX(n) \
+ ('0' + ((n)>>28 & 0xF)), \
+ ('0' + ((n)>>24 & 0xF)), \
+ ('0' + ((n)>>20 & 0xF)), \
+ ('0' + ((n)>>16 & 0xF)), \
+ ('0' + ((n)>>12 & 0xF)), \
+ ('0' + ((n)>>8 & 0xF)), \
+ ('0' + ((n)>>4 & 0xF)), \
+ ('0' + ((n) & 0xF))
+
+/* Construct a string literal encoding the version number components. */
+#ifdef COMPILER_VERSION_MAJOR
+char const info_version[] = {
+ 'I', 'N', 'F', 'O', ':',
+ 'c','o','m','p','i','l','e','r','_','v','e','r','s','i','o','n','[',
+ COMPILER_VERSION_MAJOR,
+# ifdef COMPILER_VERSION_MINOR
+ '.', COMPILER_VERSION_MINOR,
+# ifdef COMPILER_VERSION_PATCH
+ '.', COMPILER_VERSION_PATCH,
+# ifdef COMPILER_VERSION_TWEAK
+ '.', COMPILER_VERSION_TWEAK,
+# endif
+# endif
+# endif
+ ']','\0'};
+#endif
+
+/* Construct a string literal encoding the internal version number. */
+#ifdef COMPILER_VERSION_INTERNAL
+char const info_version_internal[] = {
+ 'I', 'N', 'F', 'O', ':',
+ 'c','o','m','p','i','l','e','r','_','v','e','r','s','i','o','n','_',
+ 'i','n','t','e','r','n','a','l','[',
+ COMPILER_VERSION_INTERNAL,']','\0'};
+#endif
+
+/* Construct a string literal encoding the version number components. */
+#ifdef SIMULATE_VERSION_MAJOR
+char const info_simulate_version[] = {
+ 'I', 'N', 'F', 'O', ':',
+ 's','i','m','u','l','a','t','e','_','v','e','r','s','i','o','n','[',
+ SIMULATE_VERSION_MAJOR,
+# ifdef SIMULATE_VERSION_MINOR
+ '.', SIMULATE_VERSION_MINOR,
+# ifdef SIMULATE_VERSION_PATCH
+ '.', SIMULATE_VERSION_PATCH,
+# ifdef SIMULATE_VERSION_TWEAK
+ '.', SIMULATE_VERSION_TWEAK,
+# endif
+# endif
+# endif
+ ']','\0'};
+#endif
+
+/* Construct the string literal in pieces to prevent the source from
+ getting matched. Store it in a pointer rather than an array
+ because some compilers will just produce instructions to fill the
+ array rather than assigning a pointer to a static array. */
+char const* info_platform = "INFO" ":" "platform[" PLATFORM_ID "]";
+char const* info_arch = "INFO" ":" "arch[" ARCHITECTURE_ID "]";
+
+
+
+
+#if !defined(__STDC__)
+# if (defined(_MSC_VER) && !defined(__clang__)) \
+ || (defined(__ibmxl__) || defined(__IBMC__))
+# define C_DIALECT "90"
+# else
+# define C_DIALECT
+# endif
+#elif __STDC_VERSION__ >= 201000L
+# define C_DIALECT "11"
+#elif __STDC_VERSION__ >= 199901L
+# define C_DIALECT "99"
+#else
+# define C_DIALECT "90"
+#endif
+const char* info_language_dialect_default =
+ "INFO" ":" "dialect_default[" C_DIALECT "]";
+
+/*--------------------------------------------------------------------------*/
+
+#ifdef ID_VOID_MAIN
+void main() {}
+#else
+# if defined(__CLASSIC_C__)
+int main(argc, argv) int argc; char *argv[];
+# else
+int main(int argc, char* argv[])
+# endif
+{
+ int require = 0;
+ require += info_compiler[argc];
+ require += info_platform[argc];
+ require += info_arch[argc];
+#ifdef COMPILER_VERSION_MAJOR
+ require += info_version[argc];
+#endif
+#ifdef COMPILER_VERSION_INTERNAL
+ require += info_version_internal[argc];
+#endif
+#ifdef SIMULATE_ID
+ require += info_simulate[argc];
+#endif
+#ifdef SIMULATE_VERSION_MAJOR
+ require += info_simulate_version[argc];
+#endif
+#if defined(__CRAYXE) || defined(__CRAYXC)
+ require += info_cray[argc];
+#endif
+ require += info_language_dialect_default[argc];
+ (void)argv;
+ return require;
+}
+#endif
diff --git a/build/CMakeFiles/3.13.3/CompilerIdCXX/CMakeCXXCompilerId.cpp b/build/CMakeFiles/3.13.3/CompilerIdCXX/CMakeCXXCompilerId.cpp
new file mode 100644
index 0000000..b728b63
--- /dev/null
+++ b/build/CMakeFiles/3.13.3/CompilerIdCXX/CMakeCXXCompilerId.cpp
@@ -0,0 +1,602 @@
+/* This source file must have a .cpp extension so that all C++ compilers
+ recognize the extension without flags. Borland does not know .cxx for
+ example. */
+#ifndef __cplusplus
+# error "A C compiler has been selected for C++."
+#endif
+
+
+/* Version number components: V=Version, R=Revision, P=Patch
+ Version date components: YYYY=Year, MM=Month, DD=Day */
+
+#if defined(__COMO__)
+# define COMPILER_ID "Comeau"
+ /* __COMO_VERSION__ = VRR */
+# define COMPILER_VERSION_MAJOR DEC(__COMO_VERSION__ / 100)
+# define COMPILER_VERSION_MINOR DEC(__COMO_VERSION__ % 100)
+
+#elif defined(__INTEL_COMPILER) || defined(__ICC)
+# define COMPILER_ID "Intel"
+# if defined(_MSC_VER)
+# define SIMULATE_ID "MSVC"
+# endif
+ /* __INTEL_COMPILER = VRP */
+# define COMPILER_VERSION_MAJOR DEC(__INTEL_COMPILER/100)
+# define COMPILER_VERSION_MINOR DEC(__INTEL_COMPILER/10 % 10)
+# if defined(__INTEL_COMPILER_UPDATE)
+# define COMPILER_VERSION_PATCH DEC(__INTEL_COMPILER_UPDATE)
+# else
+# define COMPILER_VERSION_PATCH DEC(__INTEL_COMPILER % 10)
+# endif
+# if defined(__INTEL_COMPILER_BUILD_DATE)
+ /* __INTEL_COMPILER_BUILD_DATE = YYYYMMDD */
+# define COMPILER_VERSION_TWEAK DEC(__INTEL_COMPILER_BUILD_DATE)
+# endif
+# if defined(_MSC_VER)
+ /* _MSC_VER = VVRR */
+# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100)
+# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100)
+# endif
+
+#elif defined(__PATHCC__)
+# define COMPILER_ID "PathScale"
+# define COMPILER_VERSION_MAJOR DEC(__PATHCC__)
+# define COMPILER_VERSION_MINOR DEC(__PATHCC_MINOR__)
+# if defined(__PATHCC_PATCHLEVEL__)
+# define COMPILER_VERSION_PATCH DEC(__PATHCC_PATCHLEVEL__)
+# endif
+
+#elif defined(__BORLANDC__) && defined(__CODEGEARC_VERSION__)
+# define COMPILER_ID "Embarcadero"
+# define COMPILER_VERSION_MAJOR HEX(__CODEGEARC_VERSION__>>24 & 0x00FF)
+# define COMPILER_VERSION_MINOR HEX(__CODEGEARC_VERSION__>>16 & 0x00FF)
+# define COMPILER_VERSION_PATCH DEC(__CODEGEARC_VERSION__ & 0xFFFF)
+
+#elif defined(__BORLANDC__)
+# define COMPILER_ID "Borland"
+ /* __BORLANDC__ = 0xVRR */
+# define COMPILER_VERSION_MAJOR HEX(__BORLANDC__>>8)
+# define COMPILER_VERSION_MINOR HEX(__BORLANDC__ & 0xFF)
+
+#elif defined(__WATCOMC__) && __WATCOMC__ < 1200
+# define COMPILER_ID "Watcom"
+ /* __WATCOMC__ = VVRR */
+# define COMPILER_VERSION_MAJOR DEC(__WATCOMC__ / 100)
+# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10)
+# if (__WATCOMC__ % 10) > 0
+# define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10)
+# endif
+
+#elif defined(__WATCOMC__)
+# define COMPILER_ID "OpenWatcom"
+ /* __WATCOMC__ = VVRP + 1100 */
+# define COMPILER_VERSION_MAJOR DEC((__WATCOMC__ - 1100) / 100)
+# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10)
+# if (__WATCOMC__ % 10) > 0
+# define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10)
+# endif
+
+#elif defined(__SUNPRO_CC)
+# define COMPILER_ID "SunPro"
+# if __SUNPRO_CC >= 0x5100
+ /* __SUNPRO_CC = 0xVRRP */
+# define COMPILER_VERSION_MAJOR HEX(__SUNPRO_CC>>12)
+# define COMPILER_VERSION_MINOR HEX(__SUNPRO_CC>>4 & 0xFF)
+# define COMPILER_VERSION_PATCH HEX(__SUNPRO_CC & 0xF)
+# else
+ /* __SUNPRO_CC = 0xVRP */
+# define COMPILER_VERSION_MAJOR HEX(__SUNPRO_CC>>8)
+# define COMPILER_VERSION_MINOR HEX(__SUNPRO_CC>>4 & 0xF)
+# define COMPILER_VERSION_PATCH HEX(__SUNPRO_CC & 0xF)
+# endif
+
+#elif defined(__HP_aCC)
+# define COMPILER_ID "HP"
+ /* __HP_aCC = VVRRPP */
+# define COMPILER_VERSION_MAJOR DEC(__HP_aCC/10000)
+# define COMPILER_VERSION_MINOR DEC(__HP_aCC/100 % 100)
+# define COMPILER_VERSION_PATCH DEC(__HP_aCC % 100)
+
+#elif defined(__DECCXX)
+# define COMPILER_ID "Compaq"
+ /* __DECCXX_VER = VVRRTPPPP */
+# define COMPILER_VERSION_MAJOR DEC(__DECCXX_VER/10000000)
+# define COMPILER_VERSION_MINOR DEC(__DECCXX_VER/100000 % 100)
+# define COMPILER_VERSION_PATCH DEC(__DECCXX_VER % 10000)
+
+#elif defined(__IBMCPP__) && defined(__COMPILER_VER__)
+# define COMPILER_ID "zOS"
+# if defined(__ibmxl__)
+# define COMPILER_VERSION_MAJOR DEC(__ibmxl_version__)
+# define COMPILER_VERSION_MINOR DEC(__ibmxl_release__)
+# define COMPILER_VERSION_PATCH DEC(__ibmxl_modification__)
+# define COMPILER_VERSION_TWEAK DEC(__ibmxl_ptf_fix_level__)
+# else
+ /* __IBMCPP__ = VRP */
+# define COMPILER_VERSION_MAJOR DEC(__IBMCPP__/100)
+# define COMPILER_VERSION_MINOR DEC(__IBMCPP__/10 % 10)
+# define COMPILER_VERSION_PATCH DEC(__IBMCPP__ % 10)
+# endif
+
+
+#elif defined(__ibmxl__) || (defined(__IBMCPP__) && !defined(__COMPILER_VER__) && __IBMCPP__ >= 800)
+# define COMPILER_ID "XL"
+# if defined(__ibmxl__)
+# define COMPILER_VERSION_MAJOR DEC(__ibmxl_version__)
+# define COMPILER_VERSION_MINOR DEC(__ibmxl_release__)
+# define COMPILER_VERSION_PATCH DEC(__ibmxl_modification__)
+# define COMPILER_VERSION_TWEAK DEC(__ibmxl_ptf_fix_level__)
+# else
+ /* __IBMCPP__ = VRP */
+# define COMPILER_VERSION_MAJOR DEC(__IBMCPP__/100)
+# define COMPILER_VERSION_MINOR DEC(__IBMCPP__/10 % 10)
+# define COMPILER_VERSION_PATCH DEC(__IBMCPP__ % 10)
+# endif
+
+
+#elif defined(__IBMCPP__) && !defined(__COMPILER_VER__) && __IBMCPP__ < 800
+# define COMPILER_ID "VisualAge"
+# if defined(__ibmxl__)
+# define COMPILER_VERSION_MAJOR DEC(__ibmxl_version__)
+# define COMPILER_VERSION_MINOR DEC(__ibmxl_release__)
+# define COMPILER_VERSION_PATCH DEC(__ibmxl_modification__)
+# define COMPILER_VERSION_TWEAK DEC(__ibmxl_ptf_fix_level__)
+# else
+ /* __IBMCPP__ = VRP */
+# define COMPILER_VERSION_MAJOR DEC(__IBMCPP__/100)
+# define COMPILER_VERSION_MINOR DEC(__IBMCPP__/10 % 10)
+# define COMPILER_VERSION_PATCH DEC(__IBMCPP__ % 10)
+# endif
+
+
+#elif defined(__PGI)
+# define COMPILER_ID "PGI"
+# define COMPILER_VERSION_MAJOR DEC(__PGIC__)
+# define COMPILER_VERSION_MINOR DEC(__PGIC_MINOR__)
+# if defined(__PGIC_PATCHLEVEL__)
+# define COMPILER_VERSION_PATCH DEC(__PGIC_PATCHLEVEL__)
+# endif
+
+#elif defined(_CRAYC)
+# define COMPILER_ID "Cray"
+# define COMPILER_VERSION_MAJOR DEC(_RELEASE_MAJOR)
+# define COMPILER_VERSION_MINOR DEC(_RELEASE_MINOR)
+
+#elif defined(__TI_COMPILER_VERSION__)
+# define COMPILER_ID "TI"
+ /* __TI_COMPILER_VERSION__ = VVVRRRPPP */
+# define COMPILER_VERSION_MAJOR DEC(__TI_COMPILER_VERSION__/1000000)
+# define COMPILER_VERSION_MINOR DEC(__TI_COMPILER_VERSION__/1000 % 1000)
+# define COMPILER_VERSION_PATCH DEC(__TI_COMPILER_VERSION__ % 1000)
+
+#elif defined(__FUJITSU) || defined(__FCC_VERSION) || defined(__fcc_version)
+# define COMPILER_ID "Fujitsu"
+
+#elif defined(__SCO_VERSION__)
+# define COMPILER_ID "SCO"
+
+#elif defined(__clang__) && defined(__apple_build_version__)
+# define COMPILER_ID "AppleClang"
+# if defined(_MSC_VER)
+# define SIMULATE_ID "MSVC"
+# endif
+# define COMPILER_VERSION_MAJOR DEC(__clang_major__)
+# define COMPILER_VERSION_MINOR DEC(__clang_minor__)
+# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__)
+# if defined(_MSC_VER)
+ /* _MSC_VER = VVRR */
+# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100)
+# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100)
+# endif
+# define COMPILER_VERSION_TWEAK DEC(__apple_build_version__)
+
+#elif defined(__clang__)
+# define COMPILER_ID "Clang"
+# if defined(_MSC_VER)
+# define SIMULATE_ID "MSVC"
+# endif
+# define COMPILER_VERSION_MAJOR DEC(__clang_major__)
+# define COMPILER_VERSION_MINOR DEC(__clang_minor__)
+# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__)
+# if defined(_MSC_VER)
+ /* _MSC_VER = VVRR */
+# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100)
+# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100)
+# endif
+
+#elif defined(__GNUC__) || defined(__GNUG__)
+# define COMPILER_ID "GNU"
+# if defined(__GNUC__)
+# define COMPILER_VERSION_MAJOR DEC(__GNUC__)
+# else
+# define COMPILER_VERSION_MAJOR DEC(__GNUG__)
+# endif
+# if defined(__GNUC_MINOR__)
+# define COMPILER_VERSION_MINOR DEC(__GNUC_MINOR__)
+# endif
+# if defined(__GNUC_PATCHLEVEL__)
+# define COMPILER_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__)
+# endif
+
+#elif defined(_MSC_VER)
+# define COMPILER_ID "MSVC"
+ /* _MSC_VER = VVRR */
+# define COMPILER_VERSION_MAJOR DEC(_MSC_VER / 100)
+# define COMPILER_VERSION_MINOR DEC(_MSC_VER % 100)
+# if defined(_MSC_FULL_VER)
+# if _MSC_VER >= 1400
+ /* _MSC_FULL_VER = VVRRPPPPP */
+# define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 100000)
+# else
+ /* _MSC_FULL_VER = VVRRPPPP */
+# define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 10000)
+# endif
+# endif
+# if defined(_MSC_BUILD)
+# define COMPILER_VERSION_TWEAK DEC(_MSC_BUILD)
+# endif
+
+#elif defined(__VISUALDSPVERSION__) || defined(__ADSPBLACKFIN__) || defined(__ADSPTS__) || defined(__ADSP21000__)
+# define COMPILER_ID "ADSP"
+#if defined(__VISUALDSPVERSION__)
+ /* __VISUALDSPVERSION__ = 0xVVRRPP00 */
+# define COMPILER_VERSION_MAJOR HEX(__VISUALDSPVERSION__>>24)
+# define COMPILER_VERSION_MINOR HEX(__VISUALDSPVERSION__>>16 & 0xFF)
+# define COMPILER_VERSION_PATCH HEX(__VISUALDSPVERSION__>>8 & 0xFF)
+#endif
+
+#elif defined(__IAR_SYSTEMS_ICC__) || defined(__IAR_SYSTEMS_ICC)
+# define COMPILER_ID "IAR"
+# if defined(__VER__)
+# define COMPILER_VERSION_MAJOR DEC((__VER__) / 1000000)
+# define COMPILER_VERSION_MINOR DEC(((__VER__) / 1000) % 1000)
+# define COMPILER_VERSION_PATCH DEC((__VER__) % 1000)
+# define COMPILER_VERSION_INTERNAL DEC(__IAR_SYSTEMS_ICC__)
+# endif
+
+#elif defined(__ARMCC_VERSION)
+# define COMPILER_ID "ARMCC"
+#if __ARMCC_VERSION >= 1000000
+ /* __ARMCC_VERSION = VRRPPPP */
+ # define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/1000000)
+ # define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 100)
+ # define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION % 10000)
+#else
+ /* __ARMCC_VERSION = VRPPPP */
+ # define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/100000)
+ # define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 10)
+ # define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION % 10000)
+#endif
+
+
+#elif defined(_SGI_COMPILER_VERSION) || defined(_COMPILER_VERSION)
+# define COMPILER_ID "MIPSpro"
+# if defined(_SGI_COMPILER_VERSION)
+ /* _SGI_COMPILER_VERSION = VRP */
+# define COMPILER_VERSION_MAJOR DEC(_SGI_COMPILER_VERSION/100)
+# define COMPILER_VERSION_MINOR DEC(_SGI_COMPILER_VERSION/10 % 10)
+# define COMPILER_VERSION_PATCH DEC(_SGI_COMPILER_VERSION % 10)
+# else
+ /* _COMPILER_VERSION = VRP */
+# define COMPILER_VERSION_MAJOR DEC(_COMPILER_VERSION/100)
+# define COMPILER_VERSION_MINOR DEC(_COMPILER_VERSION/10 % 10)
+# define COMPILER_VERSION_PATCH DEC(_COMPILER_VERSION % 10)
+# endif
+
+
+/* These compilers are either not known or too old to define an
+ identification macro. Try to identify the platform and guess that
+ it is the native compiler. */
+#elif defined(__sgi)
+# define COMPILER_ID "MIPSpro"
+
+#elif defined(__hpux) || defined(__hpua)
+# define COMPILER_ID "HP"
+
+#else /* unknown compiler */
+# define COMPILER_ID ""
+#endif
+
+/* Construct the string literal in pieces to prevent the source from
+ getting matched. Store it in a pointer rather than an array
+ because some compilers will just produce instructions to fill the
+ array rather than assigning a pointer to a static array. */
+char const* info_compiler = "INFO" ":" "compiler[" COMPILER_ID "]";
+#ifdef SIMULATE_ID
+char const* info_simulate = "INFO" ":" "simulate[" SIMULATE_ID "]";
+#endif
+
+#ifdef __QNXNTO__
+char const* qnxnto = "INFO" ":" "qnxnto[]";
+#endif
+
+#if defined(__CRAYXE) || defined(__CRAYXC)
+char const *info_cray = "INFO" ":" "compiler_wrapper[CrayPrgEnv]";
+#endif
+
+#define STRINGIFY_HELPER(X) #X
+#define STRINGIFY(X) STRINGIFY_HELPER(X)
+
+/* Identify known platforms by name. */
+#if defined(__linux) || defined(__linux__) || defined(linux)
+# define PLATFORM_ID "Linux"
+
+#elif defined(__CYGWIN__)
+# define PLATFORM_ID "Cygwin"
+
+#elif defined(__MINGW32__)
+# define PLATFORM_ID "MinGW"
+
+#elif defined(__APPLE__)
+# define PLATFORM_ID "Darwin"
+
+#elif defined(_WIN32) || defined(__WIN32__) || defined(WIN32)
+# define PLATFORM_ID "Windows"
+
+#elif defined(__FreeBSD__) || defined(__FreeBSD)
+# define PLATFORM_ID "FreeBSD"
+
+#elif defined(__NetBSD__) || defined(__NetBSD)
+# define PLATFORM_ID "NetBSD"
+
+#elif defined(__OpenBSD__) || defined(__OPENBSD)
+# define PLATFORM_ID "OpenBSD"
+
+#elif defined(__sun) || defined(sun)
+# define PLATFORM_ID "SunOS"
+
+#elif defined(_AIX) || defined(__AIX) || defined(__AIX__) || defined(__aix) || defined(__aix__)
+# define PLATFORM_ID "AIX"
+
+#elif defined(__sgi) || defined(__sgi__) || defined(_SGI)
+# define PLATFORM_ID "IRIX"
+
+#elif defined(__hpux) || defined(__hpux__)
+# define PLATFORM_ID "HP-UX"
+
+#elif defined(__HAIKU__)
+# define PLATFORM_ID "Haiku"
+
+#elif defined(__BeOS) || defined(__BEOS__) || defined(_BEOS)
+# define PLATFORM_ID "BeOS"
+
+#elif defined(__QNX__) || defined(__QNXNTO__)
+# define PLATFORM_ID "QNX"
+
+#elif defined(__tru64) || defined(_tru64) || defined(__TRU64__)
+# define PLATFORM_ID "Tru64"
+
+#elif defined(__riscos) || defined(__riscos__)
+# define PLATFORM_ID "RISCos"
+
+#elif defined(__sinix) || defined(__sinix__) || defined(__SINIX__)
+# define PLATFORM_ID "SINIX"
+
+#elif defined(__UNIX_SV__)
+# define PLATFORM_ID "UNIX_SV"
+
+#elif defined(__bsdos__)
+# define PLATFORM_ID "BSDOS"
+
+#elif defined(_MPRAS) || defined(MPRAS)
+# define PLATFORM_ID "MP-RAS"
+
+#elif defined(__osf) || defined(__osf__)
+# define PLATFORM_ID "OSF1"
+
+#elif defined(_SCO_SV) || defined(SCO_SV) || defined(sco_sv)
+# define PLATFORM_ID "SCO_SV"
+
+#elif defined(__ultrix) || defined(__ultrix__) || defined(_ULTRIX)
+# define PLATFORM_ID "ULTRIX"
+
+#elif defined(__XENIX__) || defined(_XENIX) || defined(XENIX)
+# define PLATFORM_ID "Xenix"
+
+#elif defined(__WATCOMC__)
+# if defined(__LINUX__)
+# define PLATFORM_ID "Linux"
+
+# elif defined(__DOS__)
+# define PLATFORM_ID "DOS"
+
+# elif defined(__OS2__)
+# define PLATFORM_ID "OS2"
+
+# elif defined(__WINDOWS__)
+# define PLATFORM_ID "Windows3x"
+
+# else /* unknown platform */
+# define PLATFORM_ID
+# endif
+
+#else /* unknown platform */
+# define PLATFORM_ID
+
+#endif
+
+/* For windows compilers MSVC and Intel we can determine
+ the architecture of the compiler being used. This is because
+ the compilers do not have flags that can change the architecture,
+ but rather depend on which compiler is being used
+*/
+#if defined(_WIN32) && defined(_MSC_VER)
+# if defined(_M_IA64)
+# define ARCHITECTURE_ID "IA64"
+
+# elif defined(_M_X64) || defined(_M_AMD64)
+# define ARCHITECTURE_ID "x64"
+
+# elif defined(_M_IX86)
+# define ARCHITECTURE_ID "X86"
+
+# elif defined(_M_ARM64)
+# define ARCHITECTURE_ID "ARM64"
+
+# elif defined(_M_ARM)
+# if _M_ARM == 4
+# define ARCHITECTURE_ID "ARMV4I"
+# elif _M_ARM == 5
+# define ARCHITECTURE_ID "ARMV5I"
+# else
+# define ARCHITECTURE_ID "ARMV" STRINGIFY(_M_ARM)
+# endif
+
+# elif defined(_M_MIPS)
+# define ARCHITECTURE_ID "MIPS"
+
+# elif defined(_M_SH)
+# define ARCHITECTURE_ID "SHx"
+
+# else /* unknown architecture */
+# define ARCHITECTURE_ID ""
+# endif
+
+#elif defined(__WATCOMC__)
+# if defined(_M_I86)
+# define ARCHITECTURE_ID "I86"
+
+# elif defined(_M_IX86)
+# define ARCHITECTURE_ID "X86"
+
+# else /* unknown architecture */
+# define ARCHITECTURE_ID ""
+# endif
+
+#elif defined(__IAR_SYSTEMS_ICC__) || defined(__IAR_SYSTEMS_ICC)
+# if defined(__ICCARM__)
+# define ARCHITECTURE_ID "ARM"
+
+# elif defined(__ICCAVR__)
+# define ARCHITECTURE_ID "AVR"
+
+# else /* unknown architecture */
+# define ARCHITECTURE_ID ""
+# endif
+#else
+# define ARCHITECTURE_ID
+#endif
+
+/* Convert integer to decimal digit literals. */
+#define DEC(n) \
+ ('0' + (((n) / 10000000)%10)), \
+ ('0' + (((n) / 1000000)%10)), \
+ ('0' + (((n) / 100000)%10)), \
+ ('0' + (((n) / 10000)%10)), \
+ ('0' + (((n) / 1000)%10)), \
+ ('0' + (((n) / 100)%10)), \
+ ('0' + (((n) / 10)%10)), \
+ ('0' + ((n) % 10))
+
+/* Convert integer to hex digit literals. */
+#define HEX(n) \
+ ('0' + ((n)>>28 & 0xF)), \
+ ('0' + ((n)>>24 & 0xF)), \
+ ('0' + ((n)>>20 & 0xF)), \
+ ('0' + ((n)>>16 & 0xF)), \
+ ('0' + ((n)>>12 & 0xF)), \
+ ('0' + ((n)>>8 & 0xF)), \
+ ('0' + ((n)>>4 & 0xF)), \
+ ('0' + ((n) & 0xF))
+
+/* Construct a string literal encoding the version number components. */
+#ifdef COMPILER_VERSION_MAJOR
+char const info_version[] = {
+ 'I', 'N', 'F', 'O', ':',
+ 'c','o','m','p','i','l','e','r','_','v','e','r','s','i','o','n','[',
+ COMPILER_VERSION_MAJOR,
+# ifdef COMPILER_VERSION_MINOR
+ '.', COMPILER_VERSION_MINOR,
+# ifdef COMPILER_VERSION_PATCH
+ '.', COMPILER_VERSION_PATCH,
+# ifdef COMPILER_VERSION_TWEAK
+ '.', COMPILER_VERSION_TWEAK,
+# endif
+# endif
+# endif
+ ']','\0'};
+#endif
+
+/* Construct a string literal encoding the internal version number. */
+#ifdef COMPILER_VERSION_INTERNAL
+char const info_version_internal[] = {
+ 'I', 'N', 'F', 'O', ':',
+ 'c','o','m','p','i','l','e','r','_','v','e','r','s','i','o','n','_',
+ 'i','n','t','e','r','n','a','l','[',
+ COMPILER_VERSION_INTERNAL,']','\0'};
+#endif
+
+/* Construct a string literal encoding the version number components. */
+#ifdef SIMULATE_VERSION_MAJOR
+char const info_simulate_version[] = {
+ 'I', 'N', 'F', 'O', ':',
+ 's','i','m','u','l','a','t','e','_','v','e','r','s','i','o','n','[',
+ SIMULATE_VERSION_MAJOR,
+# ifdef SIMULATE_VERSION_MINOR
+ '.', SIMULATE_VERSION_MINOR,
+# ifdef SIMULATE_VERSION_PATCH
+ '.', SIMULATE_VERSION_PATCH,
+# ifdef SIMULATE_VERSION_TWEAK
+ '.', SIMULATE_VERSION_TWEAK,
+# endif
+# endif
+# endif
+ ']','\0'};
+#endif
+
+/* Construct the string literal in pieces to prevent the source from
+ getting matched. Store it in a pointer rather than an array
+ because some compilers will just produce instructions to fill the
+ array rather than assigning a pointer to a static array. */
+char const* info_platform = "INFO" ":" "platform[" PLATFORM_ID "]";
+char const* info_arch = "INFO" ":" "arch[" ARCHITECTURE_ID "]";
+
+
+
+
+#if defined(_MSC_VER) && defined(_MSVC_LANG)
+#define CXX_STD _MSVC_LANG
+#else
+#define CXX_STD __cplusplus
+#endif
+
+const char* info_language_dialect_default = "INFO" ":" "dialect_default["
+#if CXX_STD > 201703L
+ "20"
+#elif CXX_STD >= 201703L
+ "17"
+#elif CXX_STD >= 201402L
+ "14"
+#elif CXX_STD >= 201103L
+ "11"
+#else
+ "98"
+#endif
+"]";
+
+/*--------------------------------------------------------------------------*/
+
+int main(int argc, char* argv[])
+{
+ int require = 0;
+ require += info_compiler[argc];
+ require += info_platform[argc];
+#ifdef COMPILER_VERSION_MAJOR
+ require += info_version[argc];
+#endif
+#ifdef COMPILER_VERSION_INTERNAL
+ require += info_version_internal[argc];
+#endif
+#ifdef SIMULATE_ID
+ require += info_simulate[argc];
+#endif
+#ifdef SIMULATE_VERSION_MAJOR
+ require += info_simulate_version[argc];
+#endif
+#if defined(__CRAYXE) || defined(__CRAYXC)
+ require += info_cray[argc];
+#endif
+ require += info_language_dialect_default[argc];
+ (void)argv;
+ return require;
+}
diff --git a/build/CMakeFiles/CMakeDirectoryInformation.cmake b/build/CMakeFiles/CMakeDirectoryInformation.cmake
new file mode 100644
index 0000000..00d2501
--- /dev/null
+++ b/build/CMakeFiles/CMakeDirectoryInformation.cmake
@@ -0,0 +1,16 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.13
+
+# Relative path conversion top directories.
+set(CMAKE_RELATIVE_PATH_TOP_SOURCE "/home/basic/workspace/code/go/vaproc/repository/memfd")
+set(CMAKE_RELATIVE_PATH_TOP_BINARY "/home/basic/workspace/code/go/vaproc/repository/memfd/build")
+
+# 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/build/CMakeFiles/CMakeOutput.log b/build/CMakeFiles/CMakeOutput.log
new file mode 100644
index 0000000..0450476
--- /dev/null
+++ b/build/CMakeFiles/CMakeOutput.log
@@ -0,0 +1,617 @@
+The system is: Linux - 4.15.0-142-generic - x86_64
+Compiling the C compiler identification source file "CMakeCCompilerId.c" succeeded.
+Compiler: /usr/bin/cc
+Build flags:
+Id flags:
+
+The output was:
+0
+
+
+Compilation of the C compiler identification source "CMakeCCompilerId.c" produced "a.out"
+
+The C compiler identification is GNU, found in "/home/basic/workspace/code/go/vaproc/repository/memfd/build/CMakeFiles/3.13.3/CompilerIdC/a.out"
+
+Compiling the CXX compiler identification source file "CMakeCXXCompilerId.cpp" succeeded.
+Compiler: /usr/bin/c++
+Build flags:
+Id flags:
+
+The output was:
+0
+
+
+Compilation of the CXX compiler identification source "CMakeCXXCompilerId.cpp" produced "a.out"
+
+The CXX compiler identification is GNU, found in "/home/basic/workspace/code/go/vaproc/repository/memfd/build/CMakeFiles/3.13.3/CompilerIdCXX/a.out"
+
+Determining if the C compiler works passed with the following output:
+Change Dir: /home/basic/workspace/code/go/vaproc/repository/memfd/build/CMakeFiles/CMakeTmp
+
+Run Build Command:"/usr/bin/make" "cmTC_8efd4/fast"
+/usr/bin/make -f CMakeFiles/cmTC_8efd4.dir/build.make CMakeFiles/cmTC_8efd4.dir/build
+make[1]: Entering directory '/home/basic/workspace/code/go/vaproc/repository/memfd/build/CMakeFiles/CMakeTmp'
+Building C object CMakeFiles/cmTC_8efd4.dir/testCCompiler.c.o
+/usr/bin/cc -o CMakeFiles/cmTC_8efd4.dir/testCCompiler.c.o -c /home/basic/workspace/code/go/vaproc/repository/memfd/build/CMakeFiles/CMakeTmp/testCCompiler.c
+Linking C executable cmTC_8efd4
+/usr/local/lib/python2.7/dist-packages/cmake/data/bin/cmake -E cmake_link_script CMakeFiles/cmTC_8efd4.dir/link.txt --verbose=1
+/usr/bin/cc CMakeFiles/cmTC_8efd4.dir/testCCompiler.c.o -o cmTC_8efd4
+make[1]: Leaving directory '/home/basic/workspace/code/go/vaproc/repository/memfd/build/CMakeFiles/CMakeTmp'
+
+
+Detecting C compiler ABI info compiled with the following output:
+Change Dir: /home/basic/workspace/code/go/vaproc/repository/memfd/build/CMakeFiles/CMakeTmp
+
+Run Build Command:"/usr/bin/make" "cmTC_fefc0/fast"
+/usr/bin/make -f CMakeFiles/cmTC_fefc0.dir/build.make CMakeFiles/cmTC_fefc0.dir/build
+make[1]: Entering directory '/home/basic/workspace/code/go/vaproc/repository/memfd/build/CMakeFiles/CMakeTmp'
+Building C object CMakeFiles/cmTC_fefc0.dir/CMakeCCompilerABI.c.o
+/usr/bin/cc -o CMakeFiles/cmTC_fefc0.dir/CMakeCCompilerABI.c.o -c /usr/local/lib/python2.7/dist-packages/cmake/data/share/cmake-3.13/Modules/CMakeCCompilerABI.c
+Linking C executable cmTC_fefc0
+/usr/local/lib/python2.7/dist-packages/cmake/data/bin/cmake -E cmake_link_script CMakeFiles/cmTC_fefc0.dir/link.txt --verbose=1
+/usr/bin/cc -v CMakeFiles/cmTC_fefc0.dir/CMakeCCompilerABI.c.o -o cmTC_fefc0
+Using built-in specs.
+COLLECT_GCC=/usr/bin/cc
+COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/5/lto-wrapper
+Target: x86_64-linux-gnu
+Configured with: ../src/configure -v --with-pkgversion='Ubuntu 5.4.0-6ubuntu1~16.04.12' --with-bugurl=file:///usr/share/doc/gcc-5/README.Bugs --enable-languages=c,ada,c++,java,go,d,fortran,objc,obj-c++ --prefix=/usr --program-suffix=-5 --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-libmpx --enable-plugin --with-system-zlib --disable-browser-plugin --enable-java-awt=gtk --enable-gtk-cairo --with-java-home=/usr/lib/jvm/java-1.5.0-gcj-5-amd64/jre --enable-java-home --with-jvm-root-dir=/usr/lib/jvm/java-1.5.0-gcj-5-amd64 --with-jvm-jar-dir=/usr/lib/jvm-exports/java-1.5.0-gcj-5-amd64 --with-arch-directory=amd64 --with-ecj-jar=/usr/share/java/eclipse-ecj.jar --enable-objc-gc --enable-multiarch --disable-werror --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu
+Thread model: posix
+gcc version 5.4.0 20160609 (Ubuntu 5.4.0-6ubuntu1~16.04.12)
+COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/5/:/usr/lib/gcc/x86_64-linux-gnu/5/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/5/:/usr/lib/gcc/x86_64-linux-gnu/
+LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/5/:/usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/5/../../../:/lib/:/usr/lib/
+COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_fefc0' '-mtune=generic' '-march=x86-64'
+ /usr/lib/gcc/x86_64-linux-gnu/5/collect2 -plugin /usr/lib/gcc/x86_64-linux-gnu/5/liblto_plugin.so -plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/5/lto-wrapper -plugin-opt=-fresolution=/tmp/ccy7znVL.res -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s --sysroot=/ --build-id --eh-frame-hdr -m elf_x86_64 --hash-style=gnu --as-needed -dynamic-linker /lib64/ld-linux-x86-64.so.2 -z relro -o cmTC_fefc0 /usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/crt1.o /usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/5/crtbegin.o -L/usr/lib/gcc/x86_64-linux-gnu/5 -L/usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/5/../../.. CMakeFiles/cmTC_fefc0.dir/CMakeCCompilerABI.c.o -lgcc --as-needed -lgcc_s --no-as-needed -lc -lgcc --as-needed -lgcc_s --no-as-needed /usr/lib/gcc/x86_64-linux-gnu/5/crtend.o /usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/crtn.o
+make[1]: Leaving directory '/home/basic/workspace/code/go/vaproc/repository/memfd/build/CMakeFiles/CMakeTmp'
+
+
+Parsed C implicit link information from above output:
+ link line regex: [^( *|.*[/\])(ld|CMAKE_LINK_STARTFILE-NOTFOUND|([^/\]+-)?ld|collect2)[^/\]*( |$)]
+ ignore line: [Change Dir: /home/basic/workspace/code/go/vaproc/repository/memfd/build/CMakeFiles/CMakeTmp]
+ ignore line: []
+ ignore line: [Run Build Command:"/usr/bin/make" "cmTC_fefc0/fast"]
+ ignore line: [/usr/bin/make -f CMakeFiles/cmTC_fefc0.dir/build.make CMakeFiles/cmTC_fefc0.dir/build]
+ ignore line: [make[1]: Entering directory '/home/basic/workspace/code/go/vaproc/repository/memfd/build/CMakeFiles/CMakeTmp']
+ ignore line: [Building C object CMakeFiles/cmTC_fefc0.dir/CMakeCCompilerABI.c.o]
+ ignore line: [/usr/bin/cc -o CMakeFiles/cmTC_fefc0.dir/CMakeCCompilerABI.c.o -c /usr/local/lib/python2.7/dist-packages/cmake/data/share/cmake-3.13/Modules/CMakeCCompilerABI.c]
+ ignore line: [Linking C executable cmTC_fefc0]
+ ignore line: [/usr/local/lib/python2.7/dist-packages/cmake/data/bin/cmake -E cmake_link_script CMakeFiles/cmTC_fefc0.dir/link.txt --verbose=1]
+ ignore line: [/usr/bin/cc -v CMakeFiles/cmTC_fefc0.dir/CMakeCCompilerABI.c.o -o cmTC_fefc0 ]
+ ignore line: [Using built-in specs.]
+ ignore line: [COLLECT_GCC=/usr/bin/cc]
+ ignore line: [COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/5/lto-wrapper]
+ ignore line: [Target: x86_64-linux-gnu]
+ ignore line: [Configured with: ../src/configure -v --with-pkgversion='Ubuntu 5.4.0-6ubuntu1~16.04.12' --with-bugurl=file:///usr/share/doc/gcc-5/README.Bugs --enable-languages=c,ada,c++,java,go,d,fortran,objc,obj-c++ --prefix=/usr --program-suffix=-5 --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-libmpx --enable-plugin --with-system-zlib --disable-browser-plugin --enable-java-awt=gtk --enable-gtk-cairo --with-java-home=/usr/lib/jvm/java-1.5.0-gcj-5-amd64/jre --enable-java-home --with-jvm-root-dir=/usr/lib/jvm/java-1.5.0-gcj-5-amd64 --with-jvm-jar-dir=/usr/lib/jvm-exports/java-1.5.0-gcj-5-amd64 --with-arch-directory=amd64 --with-ecj-jar=/usr/share/java/eclipse-ecj.jar --enable-objc-gc --enable-multiarch --disable-werror --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu]
+ ignore line: [Thread model: posix]
+ ignore line: [gcc version 5.4.0 20160609 (Ubuntu 5.4.0-6ubuntu1~16.04.12) ]
+ ignore line: [COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/5/:/usr/lib/gcc/x86_64-linux-gnu/5/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/5/:/usr/lib/gcc/x86_64-linux-gnu/]
+ ignore line: [LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/5/:/usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/5/../../../:/lib/:/usr/lib/]
+ ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_fefc0' '-mtune=generic' '-march=x86-64']
+ link line: [ /usr/lib/gcc/x86_64-linux-gnu/5/collect2 -plugin /usr/lib/gcc/x86_64-linux-gnu/5/liblto_plugin.so -plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/5/lto-wrapper -plugin-opt=-fresolution=/tmp/ccy7znVL.res -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s --sysroot=/ --build-id --eh-frame-hdr -m elf_x86_64 --hash-style=gnu --as-needed -dynamic-linker /lib64/ld-linux-x86-64.so.2 -z relro -o cmTC_fefc0 /usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/crt1.o /usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/5/crtbegin.o -L/usr/lib/gcc/x86_64-linux-gnu/5 -L/usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/5/../../.. CMakeFiles/cmTC_fefc0.dir/CMakeCCompilerABI.c.o -lgcc --as-needed -lgcc_s --no-as-needed -lc -lgcc --as-needed -lgcc_s --no-as-needed /usr/lib/gcc/x86_64-linux-gnu/5/crtend.o /usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/crtn.o]
+ arg [/usr/lib/gcc/x86_64-linux-gnu/5/collect2] ==> ignore
+ arg [-plugin] ==> ignore
+ arg [/usr/lib/gcc/x86_64-linux-gnu/5/liblto_plugin.so] ==> ignore
+ arg [-plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/5/lto-wrapper] ==> ignore
+ arg [-plugin-opt=-fresolution=/tmp/ccy7znVL.res] ==> ignore
+ arg [-plugin-opt=-pass-through=-lgcc] ==> ignore
+ arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore
+ arg [-plugin-opt=-pass-through=-lc] ==> ignore
+ arg [-plugin-opt=-pass-through=-lgcc] ==> ignore
+ arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore
+ arg [--sysroot=/] ==> ignore
+ arg [--build-id] ==> ignore
+ arg [--eh-frame-hdr] ==> ignore
+ arg [-m] ==> ignore
+ arg [elf_x86_64] ==> ignore
+ arg [--hash-style=gnu] ==> ignore
+ arg [--as-needed] ==> ignore
+ arg [-dynamic-linker] ==> ignore
+ arg [/lib64/ld-linux-x86-64.so.2] ==> ignore
+ arg [-zrelro] ==> ignore
+ arg [-o] ==> ignore
+ arg [cmTC_fefc0] ==> ignore
+ arg [/usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/crt1.o] ==> ignore
+ arg [/usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/crti.o] ==> ignore
+ arg [/usr/lib/gcc/x86_64-linux-gnu/5/crtbegin.o] ==> ignore
+ arg [-L/usr/lib/gcc/x86_64-linux-gnu/5] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/5]
+ arg [-L/usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu]
+ arg [-L/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib]
+ arg [-L/lib/x86_64-linux-gnu] ==> dir [/lib/x86_64-linux-gnu]
+ arg [-L/lib/../lib] ==> dir [/lib/../lib]
+ arg [-L/usr/lib/x86_64-linux-gnu] ==> dir [/usr/lib/x86_64-linux-gnu]
+ arg [-L/usr/lib/../lib] ==> dir [/usr/lib/../lib]
+ arg [-L/usr/lib/gcc/x86_64-linux-gnu/5/../../..] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/5/../../..]
+ arg [CMakeFiles/cmTC_fefc0.dir/CMakeCCompilerABI.c.o] ==> ignore
+ arg [-lgcc] ==> lib [gcc]
+ arg [--as-needed] ==> ignore
+ arg [-lgcc_s] ==> lib [gcc_s]
+ arg [--no-as-needed] ==> ignore
+ arg [-lc] ==> lib [c]
+ arg [-lgcc] ==> lib [gcc]
+ arg [--as-needed] ==> ignore
+ arg [-lgcc_s] ==> lib [gcc_s]
+ arg [--no-as-needed] ==> ignore
+ arg [/usr/lib/gcc/x86_64-linux-gnu/5/crtend.o] ==> ignore
+ arg [/usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/crtn.o] ==> ignore
+ collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/5] ==> [/usr/lib/gcc/x86_64-linux-gnu/5]
+ collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu] ==> [/usr/lib/x86_64-linux-gnu]
+ collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib] ==> [/usr/lib]
+ collapse library dir [/lib/x86_64-linux-gnu] ==> [/lib/x86_64-linux-gnu]
+ collapse library dir [/lib/../lib] ==> [/lib]
+ collapse library dir [/usr/lib/x86_64-linux-gnu] ==> [/usr/lib/x86_64-linux-gnu]
+ collapse library dir [/usr/lib/../lib] ==> [/usr/lib]
+ collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/5/../../..] ==> [/usr/lib]
+ implicit libs: [gcc;gcc_s;c;gcc;gcc_s]
+ implicit dirs: [/usr/lib/gcc/x86_64-linux-gnu/5;/usr/lib/x86_64-linux-gnu;/usr/lib;/lib/x86_64-linux-gnu;/lib]
+ implicit fwks: []
+
+
+
+
+Detecting C [-std=c11] compiler features compiled with the following output:
+Change Dir: /home/basic/workspace/code/go/vaproc/repository/memfd/build/CMakeFiles/CMakeTmp
+
+Run Build Command:"/usr/bin/make" "cmTC_1d590/fast"
+/usr/bin/make -f CMakeFiles/cmTC_1d590.dir/build.make CMakeFiles/cmTC_1d590.dir/build
+make[1]: Entering directory '/home/basic/workspace/code/go/vaproc/repository/memfd/build/CMakeFiles/CMakeTmp'
+Building C object CMakeFiles/cmTC_1d590.dir/feature_tests.c.o
+/usr/bin/cc -std=c11 -o CMakeFiles/cmTC_1d590.dir/feature_tests.c.o -c /home/basic/workspace/code/go/vaproc/repository/memfd/build/CMakeFiles/feature_tests.c
+Linking C executable cmTC_1d590
+/usr/local/lib/python2.7/dist-packages/cmake/data/bin/cmake -E cmake_link_script CMakeFiles/cmTC_1d590.dir/link.txt --verbose=1
+/usr/bin/cc CMakeFiles/cmTC_1d590.dir/feature_tests.c.o -o cmTC_1d590
+make[1]: Leaving directory '/home/basic/workspace/code/go/vaproc/repository/memfd/build/CMakeFiles/CMakeTmp'
+
+
+ Feature record: C_FEATURE:1c_function_prototypes
+ Feature record: C_FEATURE:1c_restrict
+ Feature record: C_FEATURE:1c_static_assert
+ Feature record: C_FEATURE:1c_variadic_macros
+
+
+Detecting C [-std=c99] compiler features compiled with the following output:
+Change Dir: /home/basic/workspace/code/go/vaproc/repository/memfd/build/CMakeFiles/CMakeTmp
+
+Run Build Command:"/usr/bin/make" "cmTC_9b8b2/fast"
+/usr/bin/make -f CMakeFiles/cmTC_9b8b2.dir/build.make CMakeFiles/cmTC_9b8b2.dir/build
+make[1]: Entering directory '/home/basic/workspace/code/go/vaproc/repository/memfd/build/CMakeFiles/CMakeTmp'
+Building C object CMakeFiles/cmTC_9b8b2.dir/feature_tests.c.o
+/usr/bin/cc -std=c99 -o CMakeFiles/cmTC_9b8b2.dir/feature_tests.c.o -c /home/basic/workspace/code/go/vaproc/repository/memfd/build/CMakeFiles/feature_tests.c
+Linking C executable cmTC_9b8b2
+/usr/local/lib/python2.7/dist-packages/cmake/data/bin/cmake -E cmake_link_script CMakeFiles/cmTC_9b8b2.dir/link.txt --verbose=1
+/usr/bin/cc CMakeFiles/cmTC_9b8b2.dir/feature_tests.c.o -o cmTC_9b8b2
+make[1]: Leaving directory '/home/basic/workspace/code/go/vaproc/repository/memfd/build/CMakeFiles/CMakeTmp'
+
+
+ Feature record: C_FEATURE:1c_function_prototypes
+ Feature record: C_FEATURE:1c_restrict
+ Feature record: C_FEATURE:0c_static_assert
+ Feature record: C_FEATURE:1c_variadic_macros
+
+
+Detecting C [-std=c90] compiler features compiled with the following output:
+Change Dir: /home/basic/workspace/code/go/vaproc/repository/memfd/build/CMakeFiles/CMakeTmp
+
+Run Build Command:"/usr/bin/make" "cmTC_23f02/fast"
+/usr/bin/make -f CMakeFiles/cmTC_23f02.dir/build.make CMakeFiles/cmTC_23f02.dir/build
+make[1]: Entering directory '/home/basic/workspace/code/go/vaproc/repository/memfd/build/CMakeFiles/CMakeTmp'
+Building C object CMakeFiles/cmTC_23f02.dir/feature_tests.c.o
+/usr/bin/cc -std=c90 -o CMakeFiles/cmTC_23f02.dir/feature_tests.c.o -c /home/basic/workspace/code/go/vaproc/repository/memfd/build/CMakeFiles/feature_tests.c
+Linking C executable cmTC_23f02
+/usr/local/lib/python2.7/dist-packages/cmake/data/bin/cmake -E cmake_link_script CMakeFiles/cmTC_23f02.dir/link.txt --verbose=1
+/usr/bin/cc CMakeFiles/cmTC_23f02.dir/feature_tests.c.o -o cmTC_23f02
+make[1]: Leaving directory '/home/basic/workspace/code/go/vaproc/repository/memfd/build/CMakeFiles/CMakeTmp'
+
+
+ Feature record: C_FEATURE:1c_function_prototypes
+ Feature record: C_FEATURE:0c_restrict
+ Feature record: C_FEATURE:0c_static_assert
+ Feature record: C_FEATURE:0c_variadic_macros
+Determining if the CXX compiler works passed with the following output:
+Change Dir: /home/basic/workspace/code/go/vaproc/repository/memfd/build/CMakeFiles/CMakeTmp
+
+Run Build Command:"/usr/bin/make" "cmTC_f3593/fast"
+/usr/bin/make -f CMakeFiles/cmTC_f3593.dir/build.make CMakeFiles/cmTC_f3593.dir/build
+make[1]: Entering directory '/home/basic/workspace/code/go/vaproc/repository/memfd/build/CMakeFiles/CMakeTmp'
+Building CXX object CMakeFiles/cmTC_f3593.dir/testCXXCompiler.cxx.o
+/usr/bin/c++ -o CMakeFiles/cmTC_f3593.dir/testCXXCompiler.cxx.o -c /home/basic/workspace/code/go/vaproc/repository/memfd/build/CMakeFiles/CMakeTmp/testCXXCompiler.cxx
+Linking CXX executable cmTC_f3593
+/usr/local/lib/python2.7/dist-packages/cmake/data/bin/cmake -E cmake_link_script CMakeFiles/cmTC_f3593.dir/link.txt --verbose=1
+/usr/bin/c++ CMakeFiles/cmTC_f3593.dir/testCXXCompiler.cxx.o -o cmTC_f3593
+make[1]: Leaving directory '/home/basic/workspace/code/go/vaproc/repository/memfd/build/CMakeFiles/CMakeTmp'
+
+
+Detecting CXX compiler ABI info compiled with the following output:
+Change Dir: /home/basic/workspace/code/go/vaproc/repository/memfd/build/CMakeFiles/CMakeTmp
+
+Run Build Command:"/usr/bin/make" "cmTC_bce17/fast"
+/usr/bin/make -f CMakeFiles/cmTC_bce17.dir/build.make CMakeFiles/cmTC_bce17.dir/build
+make[1]: Entering directory '/home/basic/workspace/code/go/vaproc/repository/memfd/build/CMakeFiles/CMakeTmp'
+Building CXX object CMakeFiles/cmTC_bce17.dir/CMakeCXXCompilerABI.cpp.o
+/usr/bin/c++ -o CMakeFiles/cmTC_bce17.dir/CMakeCXXCompilerABI.cpp.o -c /usr/local/lib/python2.7/dist-packages/cmake/data/share/cmake-3.13/Modules/CMakeCXXCompilerABI.cpp
+Linking CXX executable cmTC_bce17
+/usr/local/lib/python2.7/dist-packages/cmake/data/bin/cmake -E cmake_link_script CMakeFiles/cmTC_bce17.dir/link.txt --verbose=1
+/usr/bin/c++ -v CMakeFiles/cmTC_bce17.dir/CMakeCXXCompilerABI.cpp.o -o cmTC_bce17
+Using built-in specs.
+COLLECT_GCC=/usr/bin/c++
+COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/5/lto-wrapper
+Target: x86_64-linux-gnu
+Configured with: ../src/configure -v --with-pkgversion='Ubuntu 5.4.0-6ubuntu1~16.04.12' --with-bugurl=file:///usr/share/doc/gcc-5/README.Bugs --enable-languages=c,ada,c++,java,go,d,fortran,objc,obj-c++ --prefix=/usr --program-suffix=-5 --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-libmpx --enable-plugin --with-system-zlib --disable-browser-plugin --enable-java-awt=gtk --enable-gtk-cairo --with-java-home=/usr/lib/jvm/java-1.5.0-gcj-5-amd64/jre --enable-java-home --with-jvm-root-dir=/usr/lib/jvm/java-1.5.0-gcj-5-amd64 --with-jvm-jar-dir=/usr/lib/jvm-exports/java-1.5.0-gcj-5-amd64 --with-arch-directory=amd64 --with-ecj-jar=/usr/share/java/eclipse-ecj.jar --enable-objc-gc --enable-multiarch --disable-werror --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu
+Thread model: posix
+gcc version 5.4.0 20160609 (Ubuntu 5.4.0-6ubuntu1~16.04.12)
+COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/5/:/usr/lib/gcc/x86_64-linux-gnu/5/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/5/:/usr/lib/gcc/x86_64-linux-gnu/
+LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/5/:/usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/5/../../../:/lib/:/usr/lib/
+COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_bce17' '-shared-libgcc' '-mtune=generic' '-march=x86-64'
+ /usr/lib/gcc/x86_64-linux-gnu/5/collect2 -plugin /usr/lib/gcc/x86_64-linux-gnu/5/liblto_plugin.so -plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/5/lto-wrapper -plugin-opt=-fresolution=/tmp/ccOHsGbl.res -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc --sysroot=/ --build-id --eh-frame-hdr -m elf_x86_64 --hash-style=gnu --as-needed -dynamic-linker /lib64/ld-linux-x86-64.so.2 -z relro -o cmTC_bce17 /usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/crt1.o /usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/5/crtbegin.o -L/usr/lib/gcc/x86_64-linux-gnu/5 -L/usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/5/../../.. CMakeFiles/cmTC_bce17.dir/CMakeCXXCompilerABI.cpp.o -lstdc++ -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc /usr/lib/gcc/x86_64-linux-gnu/5/crtend.o /usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/crtn.o
+make[1]: Leaving directory '/home/basic/workspace/code/go/vaproc/repository/memfd/build/CMakeFiles/CMakeTmp'
+
+
+Parsed CXX implicit link information from above output:
+ link line regex: [^( *|.*[/\])(ld|CMAKE_LINK_STARTFILE-NOTFOUND|([^/\]+-)?ld|collect2)[^/\]*( |$)]
+ ignore line: [Change Dir: /home/basic/workspace/code/go/vaproc/repository/memfd/build/CMakeFiles/CMakeTmp]
+ ignore line: []
+ ignore line: [Run Build Command:"/usr/bin/make" "cmTC_bce17/fast"]
+ ignore line: [/usr/bin/make -f CMakeFiles/cmTC_bce17.dir/build.make CMakeFiles/cmTC_bce17.dir/build]
+ ignore line: [make[1]: Entering directory '/home/basic/workspace/code/go/vaproc/repository/memfd/build/CMakeFiles/CMakeTmp']
+ ignore line: [Building CXX object CMakeFiles/cmTC_bce17.dir/CMakeCXXCompilerABI.cpp.o]
+ ignore line: [/usr/bin/c++ -o CMakeFiles/cmTC_bce17.dir/CMakeCXXCompilerABI.cpp.o -c /usr/local/lib/python2.7/dist-packages/cmake/data/share/cmake-3.13/Modules/CMakeCXXCompilerABI.cpp]
+ ignore line: [Linking CXX executable cmTC_bce17]
+ ignore line: [/usr/local/lib/python2.7/dist-packages/cmake/data/bin/cmake -E cmake_link_script CMakeFiles/cmTC_bce17.dir/link.txt --verbose=1]
+ ignore line: [/usr/bin/c++ -v CMakeFiles/cmTC_bce17.dir/CMakeCXXCompilerABI.cpp.o -o cmTC_bce17 ]
+ ignore line: [Using built-in specs.]
+ ignore line: [COLLECT_GCC=/usr/bin/c++]
+ ignore line: [COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/5/lto-wrapper]
+ ignore line: [Target: x86_64-linux-gnu]
+ ignore line: [Configured with: ../src/configure -v --with-pkgversion='Ubuntu 5.4.0-6ubuntu1~16.04.12' --with-bugurl=file:///usr/share/doc/gcc-5/README.Bugs --enable-languages=c,ada,c++,java,go,d,fortran,objc,obj-c++ --prefix=/usr --program-suffix=-5 --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-libmpx --enable-plugin --with-system-zlib --disable-browser-plugin --enable-java-awt=gtk --enable-gtk-cairo --with-java-home=/usr/lib/jvm/java-1.5.0-gcj-5-amd64/jre --enable-java-home --with-jvm-root-dir=/usr/lib/jvm/java-1.5.0-gcj-5-amd64 --with-jvm-jar-dir=/usr/lib/jvm-exports/java-1.5.0-gcj-5-amd64 --with-arch-directory=amd64 --with-ecj-jar=/usr/share/java/eclipse-ecj.jar --enable-objc-gc --enable-multiarch --disable-werror --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu]
+ ignore line: [Thread model: posix]
+ ignore line: [gcc version 5.4.0 20160609 (Ubuntu 5.4.0-6ubuntu1~16.04.12) ]
+ ignore line: [COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/5/:/usr/lib/gcc/x86_64-linux-gnu/5/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/5/:/usr/lib/gcc/x86_64-linux-gnu/]
+ ignore line: [LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/5/:/usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/5/../../../:/lib/:/usr/lib/]
+ ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_bce17' '-shared-libgcc' '-mtune=generic' '-march=x86-64']
+ link line: [ /usr/lib/gcc/x86_64-linux-gnu/5/collect2 -plugin /usr/lib/gcc/x86_64-linux-gnu/5/liblto_plugin.so -plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/5/lto-wrapper -plugin-opt=-fresolution=/tmp/ccOHsGbl.res -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc --sysroot=/ --build-id --eh-frame-hdr -m elf_x86_64 --hash-style=gnu --as-needed -dynamic-linker /lib64/ld-linux-x86-64.so.2 -z relro -o cmTC_bce17 /usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/crt1.o /usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/5/crtbegin.o -L/usr/lib/gcc/x86_64-linux-gnu/5 -L/usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/5/../../.. CMakeFiles/cmTC_bce17.dir/CMakeCXXCompilerABI.cpp.o -lstdc++ -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc /usr/lib/gcc/x86_64-linux-gnu/5/crtend.o /usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/crtn.o]
+ arg [/usr/lib/gcc/x86_64-linux-gnu/5/collect2] ==> ignore
+ arg [-plugin] ==> ignore
+ arg [/usr/lib/gcc/x86_64-linux-gnu/5/liblto_plugin.so] ==> ignore
+ arg [-plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/5/lto-wrapper] ==> ignore
+ arg [-plugin-opt=-fresolution=/tmp/ccOHsGbl.res] ==> ignore
+ arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore
+ arg [-plugin-opt=-pass-through=-lgcc] ==> ignore
+ arg [-plugin-opt=-pass-through=-lc] ==> ignore
+ arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore
+ arg [-plugin-opt=-pass-through=-lgcc] ==> ignore
+ arg [--sysroot=/] ==> ignore
+ arg [--build-id] ==> ignore
+ arg [--eh-frame-hdr] ==> ignore
+ arg [-m] ==> ignore
+ arg [elf_x86_64] ==> ignore
+ arg [--hash-style=gnu] ==> ignore
+ arg [--as-needed] ==> ignore
+ arg [-dynamic-linker] ==> ignore
+ arg [/lib64/ld-linux-x86-64.so.2] ==> ignore
+ arg [-zrelro] ==> ignore
+ arg [-o] ==> ignore
+ arg [cmTC_bce17] ==> ignore
+ arg [/usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/crt1.o] ==> ignore
+ arg [/usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/crti.o] ==> ignore
+ arg [/usr/lib/gcc/x86_64-linux-gnu/5/crtbegin.o] ==> ignore
+ arg [-L/usr/lib/gcc/x86_64-linux-gnu/5] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/5]
+ arg [-L/usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu]
+ arg [-L/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib]
+ arg [-L/lib/x86_64-linux-gnu] ==> dir [/lib/x86_64-linux-gnu]
+ arg [-L/lib/../lib] ==> dir [/lib/../lib]
+ arg [-L/usr/lib/x86_64-linux-gnu] ==> dir [/usr/lib/x86_64-linux-gnu]
+ arg [-L/usr/lib/../lib] ==> dir [/usr/lib/../lib]
+ arg [-L/usr/lib/gcc/x86_64-linux-gnu/5/../../..] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/5/../../..]
+ arg [CMakeFiles/cmTC_bce17.dir/CMakeCXXCompilerABI.cpp.o] ==> ignore
+ arg [-lstdc++] ==> lib [stdc++]
+ arg [-lm] ==> lib [m]
+ arg [-lgcc_s] ==> lib [gcc_s]
+ arg [-lgcc] ==> lib [gcc]
+ arg [-lc] ==> lib [c]
+ arg [-lgcc_s] ==> lib [gcc_s]
+ arg [-lgcc] ==> lib [gcc]
+ arg [/usr/lib/gcc/x86_64-linux-gnu/5/crtend.o] ==> ignore
+ arg [/usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/crtn.o] ==> ignore
+ collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/5] ==> [/usr/lib/gcc/x86_64-linux-gnu/5]
+ collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu] ==> [/usr/lib/x86_64-linux-gnu]
+ collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib] ==> [/usr/lib]
+ collapse library dir [/lib/x86_64-linux-gnu] ==> [/lib/x86_64-linux-gnu]
+ collapse library dir [/lib/../lib] ==> [/lib]
+ collapse library dir [/usr/lib/x86_64-linux-gnu] ==> [/usr/lib/x86_64-linux-gnu]
+ collapse library dir [/usr/lib/../lib] ==> [/usr/lib]
+ collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/5/../../..] ==> [/usr/lib]
+ implicit libs: [stdc++;m;gcc_s;gcc;c;gcc_s;gcc]
+ implicit dirs: [/usr/lib/gcc/x86_64-linux-gnu/5;/usr/lib/x86_64-linux-gnu;/usr/lib;/lib/x86_64-linux-gnu;/lib]
+ implicit fwks: []
+
+
+
+
+Detecting CXX [-std=c++1z] compiler features compiled with the following output:
+Change Dir: /home/basic/workspace/code/go/vaproc/repository/memfd/build/CMakeFiles/CMakeTmp
+
+Run Build Command:"/usr/bin/make" "cmTC_fba2e/fast"
+/usr/bin/make -f CMakeFiles/cmTC_fba2e.dir/build.make CMakeFiles/cmTC_fba2e.dir/build
+make[1]: Entering directory '/home/basic/workspace/code/go/vaproc/repository/memfd/build/CMakeFiles/CMakeTmp'
+Building CXX object CMakeFiles/cmTC_fba2e.dir/feature_tests.cxx.o
+/usr/bin/c++ -std=c++1z -o CMakeFiles/cmTC_fba2e.dir/feature_tests.cxx.o -c /home/basic/workspace/code/go/vaproc/repository/memfd/build/CMakeFiles/feature_tests.cxx
+Linking CXX executable cmTC_fba2e
+/usr/local/lib/python2.7/dist-packages/cmake/data/bin/cmake -E cmake_link_script CMakeFiles/cmTC_fba2e.dir/link.txt --verbose=1
+/usr/bin/c++ CMakeFiles/cmTC_fba2e.dir/feature_tests.cxx.o -o cmTC_fba2e
+make[1]: Leaving directory '/home/basic/workspace/code/go/vaproc/repository/memfd/build/CMakeFiles/CMakeTmp'
+
+
+ Feature record: CXX_FEATURE:1cxx_aggregate_default_initializers
+ Feature record: CXX_FEATURE:1cxx_alias_templates
+ Feature record: CXX_FEATURE:1cxx_alignas
+ Feature record: CXX_FEATURE:1cxx_alignof
+ Feature record: CXX_FEATURE:1cxx_attributes
+ Feature record: CXX_FEATURE:1cxx_attribute_deprecated
+ Feature record: CXX_FEATURE:1cxx_auto_type
+ Feature record: CXX_FEATURE:1cxx_binary_literals
+ Feature record: CXX_FEATURE:1cxx_constexpr
+ Feature record: CXX_FEATURE:1cxx_contextual_conversions
+ Feature record: CXX_FEATURE:1cxx_decltype
+ Feature record: CXX_FEATURE:1cxx_decltype_auto
+ Feature record: CXX_FEATURE:1cxx_decltype_incomplete_return_types
+ Feature record: CXX_FEATURE:1cxx_default_function_template_args
+ Feature record: CXX_FEATURE:1cxx_defaulted_functions
+ Feature record: CXX_FEATURE:1cxx_defaulted_move_initializers
+ Feature record: CXX_FEATURE:1cxx_delegating_constructors
+ Feature record: CXX_FEATURE:1cxx_deleted_functions
+ Feature record: CXX_FEATURE:1cxx_digit_separators
+ Feature record: CXX_FEATURE:1cxx_enum_forward_declarations
+ Feature record: CXX_FEATURE:1cxx_explicit_conversions
+ Feature record: CXX_FEATURE:1cxx_extended_friend_declarations
+ Feature record: CXX_FEATURE:1cxx_extern_templates
+ Feature record: CXX_FEATURE:1cxx_final
+ Feature record: CXX_FEATURE:1cxx_func_identifier
+ Feature record: CXX_FEATURE:1cxx_generalized_initializers
+ Feature record: CXX_FEATURE:1cxx_generic_lambdas
+ Feature record: CXX_FEATURE:1cxx_inheriting_constructors
+ Feature record: CXX_FEATURE:1cxx_inline_namespaces
+ Feature record: CXX_FEATURE:1cxx_lambdas
+ Feature record: CXX_FEATURE:1cxx_lambda_init_captures
+ Feature record: CXX_FEATURE:1cxx_local_type_template_args
+ Feature record: CXX_FEATURE:1cxx_long_long_type
+ Feature record: CXX_FEATURE:1cxx_noexcept
+ Feature record: CXX_FEATURE:1cxx_nonstatic_member_init
+ Feature record: CXX_FEATURE:1cxx_nullptr
+ Feature record: CXX_FEATURE:1cxx_override
+ Feature record: CXX_FEATURE:1cxx_range_for
+ Feature record: CXX_FEATURE:1cxx_raw_string_literals
+ Feature record: CXX_FEATURE:1cxx_reference_qualified_functions
+ Feature record: CXX_FEATURE:1cxx_relaxed_constexpr
+ Feature record: CXX_FEATURE:1cxx_return_type_deduction
+ Feature record: CXX_FEATURE:1cxx_right_angle_brackets
+ Feature record: CXX_FEATURE:1cxx_rvalue_references
+ Feature record: CXX_FEATURE:1cxx_sizeof_member
+ Feature record: CXX_FEATURE:1cxx_static_assert
+ Feature record: CXX_FEATURE:1cxx_strong_enums
+ Feature record: CXX_FEATURE:1cxx_template_template_parameters
+ Feature record: CXX_FEATURE:1cxx_thread_local
+ Feature record: CXX_FEATURE:1cxx_trailing_return_types
+ Feature record: CXX_FEATURE:1cxx_unicode_literals
+ Feature record: CXX_FEATURE:1cxx_uniform_initialization
+ Feature record: CXX_FEATURE:1cxx_unrestricted_unions
+ Feature record: CXX_FEATURE:1cxx_user_literals
+ Feature record: CXX_FEATURE:1cxx_variable_templates
+ Feature record: CXX_FEATURE:1cxx_variadic_macros
+ Feature record: CXX_FEATURE:1cxx_variadic_templates
+
+
+Detecting CXX [-std=c++14] compiler features compiled with the following output:
+Change Dir: /home/basic/workspace/code/go/vaproc/repository/memfd/build/CMakeFiles/CMakeTmp
+
+Run Build Command:"/usr/bin/make" "cmTC_dd03b/fast"
+/usr/bin/make -f CMakeFiles/cmTC_dd03b.dir/build.make CMakeFiles/cmTC_dd03b.dir/build
+make[1]: Entering directory '/home/basic/workspace/code/go/vaproc/repository/memfd/build/CMakeFiles/CMakeTmp'
+Building CXX object CMakeFiles/cmTC_dd03b.dir/feature_tests.cxx.o
+/usr/bin/c++ -std=c++14 -o CMakeFiles/cmTC_dd03b.dir/feature_tests.cxx.o -c /home/basic/workspace/code/go/vaproc/repository/memfd/build/CMakeFiles/feature_tests.cxx
+Linking CXX executable cmTC_dd03b
+/usr/local/lib/python2.7/dist-packages/cmake/data/bin/cmake -E cmake_link_script CMakeFiles/cmTC_dd03b.dir/link.txt --verbose=1
+/usr/bin/c++ CMakeFiles/cmTC_dd03b.dir/feature_tests.cxx.o -o cmTC_dd03b
+make[1]: Leaving directory '/home/basic/workspace/code/go/vaproc/repository/memfd/build/CMakeFiles/CMakeTmp'
+
+
+ Feature record: CXX_FEATURE:1cxx_aggregate_default_initializers
+ Feature record: CXX_FEATURE:1cxx_alias_templates
+ Feature record: CXX_FEATURE:1cxx_alignas
+ Feature record: CXX_FEATURE:1cxx_alignof
+ Feature record: CXX_FEATURE:1cxx_attributes
+ Feature record: CXX_FEATURE:1cxx_attribute_deprecated
+ Feature record: CXX_FEATURE:1cxx_auto_type
+ Feature record: CXX_FEATURE:1cxx_binary_literals
+ Feature record: CXX_FEATURE:1cxx_constexpr
+ Feature record: CXX_FEATURE:1cxx_contextual_conversions
+ Feature record: CXX_FEATURE:1cxx_decltype
+ Feature record: CXX_FEATURE:1cxx_decltype_auto
+ Feature record: CXX_FEATURE:1cxx_decltype_incomplete_return_types
+ Feature record: CXX_FEATURE:1cxx_default_function_template_args
+ Feature record: CXX_FEATURE:1cxx_defaulted_functions
+ Feature record: CXX_FEATURE:1cxx_defaulted_move_initializers
+ Feature record: CXX_FEATURE:1cxx_delegating_constructors
+ Feature record: CXX_FEATURE:1cxx_deleted_functions
+ Feature record: CXX_FEATURE:1cxx_digit_separators
+ Feature record: CXX_FEATURE:1cxx_enum_forward_declarations
+ Feature record: CXX_FEATURE:1cxx_explicit_conversions
+ Feature record: CXX_FEATURE:1cxx_extended_friend_declarations
+ Feature record: CXX_FEATURE:1cxx_extern_templates
+ Feature record: CXX_FEATURE:1cxx_final
+ Feature record: CXX_FEATURE:1cxx_func_identifier
+ Feature record: CXX_FEATURE:1cxx_generalized_initializers
+ Feature record: CXX_FEATURE:1cxx_generic_lambdas
+ Feature record: CXX_FEATURE:1cxx_inheriting_constructors
+ Feature record: CXX_FEATURE:1cxx_inline_namespaces
+ Feature record: CXX_FEATURE:1cxx_lambdas
+ Feature record: CXX_FEATURE:1cxx_lambda_init_captures
+ Feature record: CXX_FEATURE:1cxx_local_type_template_args
+ Feature record: CXX_FEATURE:1cxx_long_long_type
+ Feature record: CXX_FEATURE:1cxx_noexcept
+ Feature record: CXX_FEATURE:1cxx_nonstatic_member_init
+ Feature record: CXX_FEATURE:1cxx_nullptr
+ Feature record: CXX_FEATURE:1cxx_override
+ Feature record: CXX_FEATURE:1cxx_range_for
+ Feature record: CXX_FEATURE:1cxx_raw_string_literals
+ Feature record: CXX_FEATURE:1cxx_reference_qualified_functions
+ Feature record: CXX_FEATURE:1cxx_relaxed_constexpr
+ Feature record: CXX_FEATURE:1cxx_return_type_deduction
+ Feature record: CXX_FEATURE:1cxx_right_angle_brackets
+ Feature record: CXX_FEATURE:1cxx_rvalue_references
+ Feature record: CXX_FEATURE:1cxx_sizeof_member
+ Feature record: CXX_FEATURE:1cxx_static_assert
+ Feature record: CXX_FEATURE:1cxx_strong_enums
+ Feature record: CXX_FEATURE:1cxx_template_template_parameters
+ Feature record: CXX_FEATURE:1cxx_thread_local
+ Feature record: CXX_FEATURE:1cxx_trailing_return_types
+ Feature record: CXX_FEATURE:1cxx_unicode_literals
+ Feature record: CXX_FEATURE:1cxx_uniform_initialization
+ Feature record: CXX_FEATURE:1cxx_unrestricted_unions
+ Feature record: CXX_FEATURE:1cxx_user_literals
+ Feature record: CXX_FEATURE:1cxx_variable_templates
+ Feature record: CXX_FEATURE:1cxx_variadic_macros
+ Feature record: CXX_FEATURE:1cxx_variadic_templates
+
+
+Detecting CXX [-std=c++11] compiler features compiled with the following output:
+Change Dir: /home/basic/workspace/code/go/vaproc/repository/memfd/build/CMakeFiles/CMakeTmp
+
+Run Build Command:"/usr/bin/make" "cmTC_828cc/fast"
+/usr/bin/make -f CMakeFiles/cmTC_828cc.dir/build.make CMakeFiles/cmTC_828cc.dir/build
+make[1]: Entering directory '/home/basic/workspace/code/go/vaproc/repository/memfd/build/CMakeFiles/CMakeTmp'
+Building CXX object CMakeFiles/cmTC_828cc.dir/feature_tests.cxx.o
+/usr/bin/c++ -std=c++11 -o CMakeFiles/cmTC_828cc.dir/feature_tests.cxx.o -c /home/basic/workspace/code/go/vaproc/repository/memfd/build/CMakeFiles/feature_tests.cxx
+Linking CXX executable cmTC_828cc
+/usr/local/lib/python2.7/dist-packages/cmake/data/bin/cmake -E cmake_link_script CMakeFiles/cmTC_828cc.dir/link.txt --verbose=1
+/usr/bin/c++ CMakeFiles/cmTC_828cc.dir/feature_tests.cxx.o -o cmTC_828cc
+make[1]: Leaving directory '/home/basic/workspace/code/go/vaproc/repository/memfd/build/CMakeFiles/CMakeTmp'
+
+
+ Feature record: CXX_FEATURE:0cxx_aggregate_default_initializers
+ Feature record: CXX_FEATURE:1cxx_alias_templates
+ Feature record: CXX_FEATURE:1cxx_alignas
+ Feature record: CXX_FEATURE:1cxx_alignof
+ Feature record: CXX_FEATURE:1cxx_attributes
+ Feature record: CXX_FEATURE:0cxx_attribute_deprecated
+ Feature record: CXX_FEATURE:1cxx_auto_type
+ Feature record: CXX_FEATURE:0cxx_binary_literals
+ Feature record: CXX_FEATURE:1cxx_constexpr
+ Feature record: CXX_FEATURE:0cxx_contextual_conversions
+ Feature record: CXX_FEATURE:1cxx_decltype
+ Feature record: CXX_FEATURE:0cxx_decltype_auto
+ Feature record: CXX_FEATURE:1cxx_decltype_incomplete_return_types
+ Feature record: CXX_FEATURE:1cxx_default_function_template_args
+ Feature record: CXX_FEATURE:1cxx_defaulted_functions
+ Feature record: CXX_FEATURE:1cxx_defaulted_move_initializers
+ Feature record: CXX_FEATURE:1cxx_delegating_constructors
+ Feature record: CXX_FEATURE:1cxx_deleted_functions
+ Feature record: CXX_FEATURE:0cxx_digit_separators
+ Feature record: CXX_FEATURE:1cxx_enum_forward_declarations
+ Feature record: CXX_FEATURE:1cxx_explicit_conversions
+ Feature record: CXX_FEATURE:1cxx_extended_friend_declarations
+ Feature record: CXX_FEATURE:1cxx_extern_templates
+ Feature record: CXX_FEATURE:1cxx_final
+ Feature record: CXX_FEATURE:1cxx_func_identifier
+ Feature record: CXX_FEATURE:1cxx_generalized_initializers
+ Feature record: CXX_FEATURE:0cxx_generic_lambdas
+ Feature record: CXX_FEATURE:1cxx_inheriting_constructors
+ Feature record: CXX_FEATURE:1cxx_inline_namespaces
+ Feature record: CXX_FEATURE:1cxx_lambdas
+ Feature record: CXX_FEATURE:0cxx_lambda_init_captures
+ Feature record: CXX_FEATURE:1cxx_local_type_template_args
+ Feature record: CXX_FEATURE:1cxx_long_long_type
+ Feature record: CXX_FEATURE:1cxx_noexcept
+ Feature record: CXX_FEATURE:1cxx_nonstatic_member_init
+ Feature record: CXX_FEATURE:1cxx_nullptr
+ Feature record: CXX_FEATURE:1cxx_override
+ Feature record: CXX_FEATURE:1cxx_range_for
+ Feature record: CXX_FEATURE:1cxx_raw_string_literals
+ Feature record: CXX_FEATURE:1cxx_reference_qualified_functions
+ Feature record: CXX_FEATURE:0cxx_relaxed_constexpr
+ Feature record: CXX_FEATURE:0cxx_return_type_deduction
+ Feature record: CXX_FEATURE:1cxx_right_angle_brackets
+ Feature record: CXX_FEATURE:1cxx_rvalue_references
+ Feature record: CXX_FEATURE:1cxx_sizeof_member
+ Feature record: CXX_FEATURE:1cxx_static_assert
+ Feature record: CXX_FEATURE:1cxx_strong_enums
+ Feature record: CXX_FEATURE:1cxx_template_template_parameters
+ Feature record: CXX_FEATURE:1cxx_thread_local
+ Feature record: CXX_FEATURE:1cxx_trailing_return_types
+ Feature record: CXX_FEATURE:1cxx_unicode_literals
+ Feature record: CXX_FEATURE:1cxx_uniform_initialization
+ Feature record: CXX_FEATURE:1cxx_unrestricted_unions
+ Feature record: CXX_FEATURE:1cxx_user_literals
+ Feature record: CXX_FEATURE:0cxx_variable_templates
+ Feature record: CXX_FEATURE:1cxx_variadic_macros
+ Feature record: CXX_FEATURE:1cxx_variadic_templates
+
+
+Detecting CXX [-std=c++98] compiler features compiled with the following output:
+Change Dir: /home/basic/workspace/code/go/vaproc/repository/memfd/build/CMakeFiles/CMakeTmp
+
+Run Build Command:"/usr/bin/make" "cmTC_26558/fast"
+/usr/bin/make -f CMakeFiles/cmTC_26558.dir/build.make CMakeFiles/cmTC_26558.dir/build
+make[1]: Entering directory '/home/basic/workspace/code/go/vaproc/repository/memfd/build/CMakeFiles/CMakeTmp'
+Building CXX object CMakeFiles/cmTC_26558.dir/feature_tests.cxx.o
+/usr/bin/c++ -std=c++98 -o CMakeFiles/cmTC_26558.dir/feature_tests.cxx.o -c /home/basic/workspace/code/go/vaproc/repository/memfd/build/CMakeFiles/feature_tests.cxx
+Linking CXX executable cmTC_26558
+/usr/local/lib/python2.7/dist-packages/cmake/data/bin/cmake -E cmake_link_script CMakeFiles/cmTC_26558.dir/link.txt --verbose=1
+/usr/bin/c++ CMakeFiles/cmTC_26558.dir/feature_tests.cxx.o -o cmTC_26558
+make[1]: Leaving directory '/home/basic/workspace/code/go/vaproc/repository/memfd/build/CMakeFiles/CMakeTmp'
+
+
+ Feature record: CXX_FEATURE:0cxx_aggregate_default_initializers
+ Feature record: CXX_FEATURE:0cxx_alias_templates
+ Feature record: CXX_FEATURE:0cxx_alignas
+ Feature record: CXX_FEATURE:0cxx_alignof
+ Feature record: CXX_FEATURE:0cxx_attributes
+ Feature record: CXX_FEATURE:0cxx_attribute_deprecated
+ Feature record: CXX_FEATURE:0cxx_auto_type
+ Feature record: CXX_FEATURE:0cxx_binary_literals
+ Feature record: CXX_FEATURE:0cxx_constexpr
+ Feature record: CXX_FEATURE:0cxx_contextual_conversions
+ Feature record: CXX_FEATURE:0cxx_decltype
+ Feature record: CXX_FEATURE:0cxx_decltype_auto
+ Feature record: CXX_FEATURE:0cxx_decltype_incomplete_return_types
+ Feature record: CXX_FEATURE:0cxx_default_function_template_args
+ Feature record: CXX_FEATURE:0cxx_defaulted_functions
+ Feature record: CXX_FEATURE:0cxx_defaulted_move_initializers
+ Feature record: CXX_FEATURE:0cxx_delegating_constructors
+ Feature record: CXX_FEATURE:0cxx_deleted_functions
+ Feature record: CXX_FEATURE:0cxx_digit_separators
+ Feature record: CXX_FEATURE:0cxx_enum_forward_declarations
+ Feature record: CXX_FEATURE:0cxx_explicit_conversions
+ Feature record: CXX_FEATURE:0cxx_extended_friend_declarations
+ Feature record: CXX_FEATURE:0cxx_extern_templates
+ Feature record: CXX_FEATURE:0cxx_final
+ Feature record: CXX_FEATURE:0cxx_func_identifier
+ Feature record: CXX_FEATURE:0cxx_generalized_initializers
+ Feature record: CXX_FEATURE:0cxx_generic_lambdas
+ Feature record: CXX_FEATURE:0cxx_inheriting_constructors
+ Feature record: CXX_FEATURE:0cxx_inline_namespaces
+ Feature record: CXX_FEATURE:0cxx_lambdas
+ Feature record: CXX_FEATURE:0cxx_lambda_init_captures
+ Feature record: CXX_FEATURE:0cxx_local_type_template_args
+ Feature record: CXX_FEATURE:0cxx_long_long_type
+ Feature record: CXX_FEATURE:0cxx_noexcept
+ Feature record: CXX_FEATURE:0cxx_nonstatic_member_init
+ Feature record: CXX_FEATURE:0cxx_nullptr
+ Feature record: CXX_FEATURE:0cxx_override
+ Feature record: CXX_FEATURE:0cxx_range_for
+ Feature record: CXX_FEATURE:0cxx_raw_string_literals
+ Feature record: CXX_FEATURE:0cxx_reference_qualified_functions
+ Feature record: CXX_FEATURE:0cxx_relaxed_constexpr
+ Feature record: CXX_FEATURE:0cxx_return_type_deduction
+ Feature record: CXX_FEATURE:0cxx_right_angle_brackets
+ Feature record: CXX_FEATURE:0cxx_rvalue_references
+ Feature record: CXX_FEATURE:0cxx_sizeof_member
+ Feature record: CXX_FEATURE:0cxx_static_assert
+ Feature record: CXX_FEATURE:0cxx_strong_enums
+ Feature record: CXX_FEATURE:1cxx_template_template_parameters
+ Feature record: CXX_FEATURE:0cxx_thread_local
+ Feature record: CXX_FEATURE:0cxx_trailing_return_types
+ Feature record: CXX_FEATURE:0cxx_unicode_literals
+ Feature record: CXX_FEATURE:0cxx_uniform_initialization
+ Feature record: CXX_FEATURE:0cxx_unrestricted_unions
+ Feature record: CXX_FEATURE:0cxx_user_literals
+ Feature record: CXX_FEATURE:0cxx_variable_templates
+ Feature record: CXX_FEATURE:0cxx_variadic_macros
+ Feature record: CXX_FEATURE:0cxx_variadic_templates
diff --git a/build/CMakeFiles/Makefile.cmake b/build/CMakeFiles/Makefile.cmake
new file mode 100644
index 0000000..2aa38d0
--- /dev/null
+++ b/build/CMakeFiles/Makefile.cmake
@@ -0,0 +1,55 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.13
+
+# The generator used is:
+set(CMAKE_DEPENDS_GENERATOR "Unix Makefiles")
+
+# The top level Makefile was generated from the following files:
+set(CMAKE_MAKEFILE_DEPENDS
+ "CMakeCache.txt"
+ "../CMakeLists.txt"
+ "CMakeFiles/3.13.3/CMakeCCompiler.cmake"
+ "CMakeFiles/3.13.3/CMakeCXXCompiler.cmake"
+ "CMakeFiles/3.13.3/CMakeSystem.cmake"
+ "../sample2/CMakeLists.txt"
+ "../src2/CMakeLists.txt"
+ "/usr/local/lib/python2.7/dist-packages/cmake/data/share/cmake-3.13/Modules/CMakeCInformation.cmake"
+ "/usr/local/lib/python2.7/dist-packages/cmake/data/share/cmake-3.13/Modules/CMakeCXXInformation.cmake"
+ "/usr/local/lib/python2.7/dist-packages/cmake/data/share/cmake-3.13/Modules/CMakeCommonLanguageInclude.cmake"
+ "/usr/local/lib/python2.7/dist-packages/cmake/data/share/cmake-3.13/Modules/CMakeGenericSystem.cmake"
+ "/usr/local/lib/python2.7/dist-packages/cmake/data/share/cmake-3.13/Modules/CMakeInitializeConfigs.cmake"
+ "/usr/local/lib/python2.7/dist-packages/cmake/data/share/cmake-3.13/Modules/CMakeLanguageInformation.cmake"
+ "/usr/local/lib/python2.7/dist-packages/cmake/data/share/cmake-3.13/Modules/CMakeSystemSpecificInformation.cmake"
+ "/usr/local/lib/python2.7/dist-packages/cmake/data/share/cmake-3.13/Modules/CMakeSystemSpecificInitialize.cmake"
+ "/usr/local/lib/python2.7/dist-packages/cmake/data/share/cmake-3.13/Modules/Compiler/CMakeCommonCompilerMacros.cmake"
+ "/usr/local/lib/python2.7/dist-packages/cmake/data/share/cmake-3.13/Modules/Compiler/GNU-C.cmake"
+ "/usr/local/lib/python2.7/dist-packages/cmake/data/share/cmake-3.13/Modules/Compiler/GNU-CXX.cmake"
+ "/usr/local/lib/python2.7/dist-packages/cmake/data/share/cmake-3.13/Modules/Compiler/GNU.cmake"
+ "/usr/local/lib/python2.7/dist-packages/cmake/data/share/cmake-3.13/Modules/Platform/Linux-GNU-C.cmake"
+ "/usr/local/lib/python2.7/dist-packages/cmake/data/share/cmake-3.13/Modules/Platform/Linux-GNU-CXX.cmake"
+ "/usr/local/lib/python2.7/dist-packages/cmake/data/share/cmake-3.13/Modules/Platform/Linux-GNU.cmake"
+ "/usr/local/lib/python2.7/dist-packages/cmake/data/share/cmake-3.13/Modules/Platform/Linux.cmake"
+ "/usr/local/lib/python2.7/dist-packages/cmake/data/share/cmake-3.13/Modules/Platform/UnixPaths.cmake"
+ )
+
+# The corresponding makefile is:
+set(CMAKE_MAKEFILE_OUTPUTS
+ "Makefile"
+ "CMakeFiles/cmake.check_cache"
+ )
+
+# Byproducts of CMake generate step:
+set(CMAKE_MAKEFILE_PRODUCTS
+ "CMakeFiles/CMakeDirectoryInformation.cmake"
+ "src2/CMakeFiles/CMakeDirectoryInformation.cmake"
+ "sample2/CMakeFiles/CMakeDirectoryInformation.cmake"
+ )
+
+# Dependency information for all targets:
+set(CMAKE_DEPEND_INFO_FILES
+ "src2/CMakeFiles/memfd_shm.dir/DependInfo.cmake"
+ "sample2/CMakeFiles/cli_snd.dir/DependInfo.cmake"
+ "sample2/CMakeFiles/srv_rcv.dir/DependInfo.cmake"
+ "sample2/CMakeFiles/client.dir/DependInfo.cmake"
+ "sample2/CMakeFiles/server.dir/DependInfo.cmake"
+ )
diff --git a/build/CMakeFiles/Makefile2 b/build/CMakeFiles/Makefile2
new file mode 100644
index 0000000..f04ac20
--- /dev/null
+++ b/build/CMakeFiles/Makefile2
@@ -0,0 +1,303 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.13
+
+# Default target executed when no arguments are given to make.
+default_target: all
+
+.PHONY : default_target
+
+# The main recursive all target
+all:
+
+.PHONY : all
+
+# The main recursive preinstall target
+preinstall:
+
+.PHONY : preinstall
+
+# The main recursive clean target
+clean:
+
+.PHONY : clean
+
+#=============================================================================
+# Special targets provided by cmake.
+
+# Disable implicit rules so canonical targets will work.
+.SUFFIXES:
+
+
+# Remove some rules from gmake that .SUFFIXES does not remove.
+SUFFIXES =
+
+.SUFFIXES: .hpux_make_needs_suffix_list
+
+
+# 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/python2.7/dist-packages/cmake/data/bin/cmake
+
+# The command to remove a file.
+RM = /usr/local/lib/python2.7/dist-packages/cmake/data/bin/cmake -E remove -f
+
+# Escaping for special characters.
+EQUALS = =
+
+# The top-level source directory on which CMake was run.
+CMAKE_SOURCE_DIR = /home/basic/workspace/code/go/vaproc/repository/memfd
+
+# The top-level build directory on which CMake was run.
+CMAKE_BINARY_DIR = /home/basic/workspace/code/go/vaproc/repository/memfd/build
+
+#=============================================================================
+# Directory level rules for directory src2
+
+# Convenience name for "all" pass in the directory.
+src2/all: src2/CMakeFiles/memfd_shm.dir/all
+
+.PHONY : src2/all
+
+# Convenience name for "clean" pass in the directory.
+src2/clean: src2/CMakeFiles/memfd_shm.dir/clean
+
+.PHONY : src2/clean
+
+# Convenience name for "preinstall" pass in the directory.
+src2/preinstall:
+
+.PHONY : src2/preinstall
+
+#=============================================================================
+# Target rules for target src2/CMakeFiles/memfd_shm.dir
+
+# All Build rule for target.
+src2/CMakeFiles/memfd_shm.dir/all:
+ $(MAKE) -f src2/CMakeFiles/memfd_shm.dir/build.make src2/CMakeFiles/memfd_shm.dir/depend
+ $(MAKE) -f src2/CMakeFiles/memfd_shm.dir/build.make src2/CMakeFiles/memfd_shm.dir/build
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/home/basic/workspace/code/go/vaproc/repository/memfd/build/CMakeFiles --progress-num=5,6,7,8 "Built target memfd_shm"
+.PHONY : src2/CMakeFiles/memfd_shm.dir/all
+
+# Include target in all.
+all: src2/CMakeFiles/memfd_shm.dir/all
+
+.PHONY : all
+
+# Build rule for subdir invocation for target.
+src2/CMakeFiles/memfd_shm.dir/rule: cmake_check_build_system
+ $(CMAKE_COMMAND) -E cmake_progress_start /home/basic/workspace/code/go/vaproc/repository/memfd/build/CMakeFiles 4
+ $(MAKE) -f CMakeFiles/Makefile2 src2/CMakeFiles/memfd_shm.dir/all
+ $(CMAKE_COMMAND) -E cmake_progress_start /home/basic/workspace/code/go/vaproc/repository/memfd/build/CMakeFiles 0
+.PHONY : src2/CMakeFiles/memfd_shm.dir/rule
+
+# Convenience name for target.
+memfd_shm: src2/CMakeFiles/memfd_shm.dir/rule
+
+.PHONY : memfd_shm
+
+# clean rule for target.
+src2/CMakeFiles/memfd_shm.dir/clean:
+ $(MAKE) -f src2/CMakeFiles/memfd_shm.dir/build.make src2/CMakeFiles/memfd_shm.dir/clean
+.PHONY : src2/CMakeFiles/memfd_shm.dir/clean
+
+# clean rule for target.
+clean: src2/CMakeFiles/memfd_shm.dir/clean
+
+.PHONY : clean
+
+#=============================================================================
+# Directory level rules for directory sample2
+
+# Convenience name for "all" pass in the directory.
+sample2/all: sample2/CMakeFiles/cli_snd.dir/all
+sample2/all: sample2/CMakeFiles/srv_rcv.dir/all
+sample2/all: sample2/CMakeFiles/client.dir/all
+sample2/all: sample2/CMakeFiles/server.dir/all
+
+.PHONY : sample2/all
+
+# Convenience name for "clean" pass in the directory.
+sample2/clean: sample2/CMakeFiles/cli_snd.dir/clean
+sample2/clean: sample2/CMakeFiles/srv_rcv.dir/clean
+sample2/clean: sample2/CMakeFiles/client.dir/clean
+sample2/clean: sample2/CMakeFiles/server.dir/clean
+
+.PHONY : sample2/clean
+
+# Convenience name for "preinstall" pass in the directory.
+sample2/preinstall:
+
+.PHONY : sample2/preinstall
+
+#=============================================================================
+# Target rules for target sample2/CMakeFiles/cli_snd.dir
+
+# All Build rule for target.
+sample2/CMakeFiles/cli_snd.dir/all: src2/CMakeFiles/memfd_shm.dir/all
+ $(MAKE) -f sample2/CMakeFiles/cli_snd.dir/build.make sample2/CMakeFiles/cli_snd.dir/depend
+ $(MAKE) -f sample2/CMakeFiles/cli_snd.dir/build.make sample2/CMakeFiles/cli_snd.dir/build
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/home/basic/workspace/code/go/vaproc/repository/memfd/build/CMakeFiles --progress-num=1,2 "Built target cli_snd"
+.PHONY : sample2/CMakeFiles/cli_snd.dir/all
+
+# Include target in all.
+all: sample2/CMakeFiles/cli_snd.dir/all
+
+.PHONY : all
+
+# Build rule for subdir invocation for target.
+sample2/CMakeFiles/cli_snd.dir/rule: cmake_check_build_system
+ $(CMAKE_COMMAND) -E cmake_progress_start /home/basic/workspace/code/go/vaproc/repository/memfd/build/CMakeFiles 6
+ $(MAKE) -f CMakeFiles/Makefile2 sample2/CMakeFiles/cli_snd.dir/all
+ $(CMAKE_COMMAND) -E cmake_progress_start /home/basic/workspace/code/go/vaproc/repository/memfd/build/CMakeFiles 0
+.PHONY : sample2/CMakeFiles/cli_snd.dir/rule
+
+# Convenience name for target.
+cli_snd: sample2/CMakeFiles/cli_snd.dir/rule
+
+.PHONY : cli_snd
+
+# clean rule for target.
+sample2/CMakeFiles/cli_snd.dir/clean:
+ $(MAKE) -f sample2/CMakeFiles/cli_snd.dir/build.make sample2/CMakeFiles/cli_snd.dir/clean
+.PHONY : sample2/CMakeFiles/cli_snd.dir/clean
+
+# clean rule for target.
+clean: sample2/CMakeFiles/cli_snd.dir/clean
+
+.PHONY : clean
+
+#=============================================================================
+# Target rules for target sample2/CMakeFiles/srv_rcv.dir
+
+# All Build rule for target.
+sample2/CMakeFiles/srv_rcv.dir/all: src2/CMakeFiles/memfd_shm.dir/all
+ $(MAKE) -f sample2/CMakeFiles/srv_rcv.dir/build.make sample2/CMakeFiles/srv_rcv.dir/depend
+ $(MAKE) -f sample2/CMakeFiles/srv_rcv.dir/build.make sample2/CMakeFiles/srv_rcv.dir/build
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/home/basic/workspace/code/go/vaproc/repository/memfd/build/CMakeFiles --progress-num=11,12 "Built target srv_rcv"
+.PHONY : sample2/CMakeFiles/srv_rcv.dir/all
+
+# Include target in all.
+all: sample2/CMakeFiles/srv_rcv.dir/all
+
+.PHONY : all
+
+# Build rule for subdir invocation for target.
+sample2/CMakeFiles/srv_rcv.dir/rule: cmake_check_build_system
+ $(CMAKE_COMMAND) -E cmake_progress_start /home/basic/workspace/code/go/vaproc/repository/memfd/build/CMakeFiles 6
+ $(MAKE) -f CMakeFiles/Makefile2 sample2/CMakeFiles/srv_rcv.dir/all
+ $(CMAKE_COMMAND) -E cmake_progress_start /home/basic/workspace/code/go/vaproc/repository/memfd/build/CMakeFiles 0
+.PHONY : sample2/CMakeFiles/srv_rcv.dir/rule
+
+# Convenience name for target.
+srv_rcv: sample2/CMakeFiles/srv_rcv.dir/rule
+
+.PHONY : srv_rcv
+
+# clean rule for target.
+sample2/CMakeFiles/srv_rcv.dir/clean:
+ $(MAKE) -f sample2/CMakeFiles/srv_rcv.dir/build.make sample2/CMakeFiles/srv_rcv.dir/clean
+.PHONY : sample2/CMakeFiles/srv_rcv.dir/clean
+
+# clean rule for target.
+clean: sample2/CMakeFiles/srv_rcv.dir/clean
+
+.PHONY : clean
+
+#=============================================================================
+# Target rules for target sample2/CMakeFiles/client.dir
+
+# All Build rule for target.
+sample2/CMakeFiles/client.dir/all: src2/CMakeFiles/memfd_shm.dir/all
+ $(MAKE) -f sample2/CMakeFiles/client.dir/build.make sample2/CMakeFiles/client.dir/depend
+ $(MAKE) -f sample2/CMakeFiles/client.dir/build.make sample2/CMakeFiles/client.dir/build
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/home/basic/workspace/code/go/vaproc/repository/memfd/build/CMakeFiles --progress-num=3,4 "Built target client"
+.PHONY : sample2/CMakeFiles/client.dir/all
+
+# Include target in all.
+all: sample2/CMakeFiles/client.dir/all
+
+.PHONY : all
+
+# Build rule for subdir invocation for target.
+sample2/CMakeFiles/client.dir/rule: cmake_check_build_system
+ $(CMAKE_COMMAND) -E cmake_progress_start /home/basic/workspace/code/go/vaproc/repository/memfd/build/CMakeFiles 6
+ $(MAKE) -f CMakeFiles/Makefile2 sample2/CMakeFiles/client.dir/all
+ $(CMAKE_COMMAND) -E cmake_progress_start /home/basic/workspace/code/go/vaproc/repository/memfd/build/CMakeFiles 0
+.PHONY : sample2/CMakeFiles/client.dir/rule
+
+# Convenience name for target.
+client: sample2/CMakeFiles/client.dir/rule
+
+.PHONY : client
+
+# clean rule for target.
+sample2/CMakeFiles/client.dir/clean:
+ $(MAKE) -f sample2/CMakeFiles/client.dir/build.make sample2/CMakeFiles/client.dir/clean
+.PHONY : sample2/CMakeFiles/client.dir/clean
+
+# clean rule for target.
+clean: sample2/CMakeFiles/client.dir/clean
+
+.PHONY : clean
+
+#=============================================================================
+# Target rules for target sample2/CMakeFiles/server.dir
+
+# All Build rule for target.
+sample2/CMakeFiles/server.dir/all: src2/CMakeFiles/memfd_shm.dir/all
+ $(MAKE) -f sample2/CMakeFiles/server.dir/build.make sample2/CMakeFiles/server.dir/depend
+ $(MAKE) -f sample2/CMakeFiles/server.dir/build.make sample2/CMakeFiles/server.dir/build
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/home/basic/workspace/code/go/vaproc/repository/memfd/build/CMakeFiles --progress-num=9,10 "Built target server"
+.PHONY : sample2/CMakeFiles/server.dir/all
+
+# Include target in all.
+all: sample2/CMakeFiles/server.dir/all
+
+.PHONY : all
+
+# Build rule for subdir invocation for target.
+sample2/CMakeFiles/server.dir/rule: cmake_check_build_system
+ $(CMAKE_COMMAND) -E cmake_progress_start /home/basic/workspace/code/go/vaproc/repository/memfd/build/CMakeFiles 6
+ $(MAKE) -f CMakeFiles/Makefile2 sample2/CMakeFiles/server.dir/all
+ $(CMAKE_COMMAND) -E cmake_progress_start /home/basic/workspace/code/go/vaproc/repository/memfd/build/CMakeFiles 0
+.PHONY : sample2/CMakeFiles/server.dir/rule
+
+# Convenience name for target.
+server: sample2/CMakeFiles/server.dir/rule
+
+.PHONY : server
+
+# clean rule for target.
+sample2/CMakeFiles/server.dir/clean:
+ $(MAKE) -f sample2/CMakeFiles/server.dir/build.make sample2/CMakeFiles/server.dir/clean
+.PHONY : sample2/CMakeFiles/server.dir/clean
+
+# clean rule for target.
+clean: sample2/CMakeFiles/server.dir/clean
+
+.PHONY : clean
+
+#=============================================================================
+# Special targets to cleanup operation of make.
+
+# Special rule to run CMake to check the build system integrity.
+# No rule that depends on this can have commands that come from listfiles
+# because they might be regenerated.
+cmake_check_build_system:
+ $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0
+.PHONY : cmake_check_build_system
+
diff --git a/build/CMakeFiles/TargetDirectories.txt b/build/CMakeFiles/TargetDirectories.txt
new file mode 100644
index 0000000..2671897
--- /dev/null
+++ b/build/CMakeFiles/TargetDirectories.txt
@@ -0,0 +1,11 @@
+/home/basic/workspace/code/go/vaproc/repository/memfd/build/CMakeFiles/rebuild_cache.dir
+/home/basic/workspace/code/go/vaproc/repository/memfd/build/CMakeFiles/edit_cache.dir
+/home/basic/workspace/code/go/vaproc/repository/memfd/build/src2/CMakeFiles/rebuild_cache.dir
+/home/basic/workspace/code/go/vaproc/repository/memfd/build/src2/CMakeFiles/edit_cache.dir
+/home/basic/workspace/code/go/vaproc/repository/memfd/build/src2/CMakeFiles/memfd_shm.dir
+/home/basic/workspace/code/go/vaproc/repository/memfd/build/sample2/CMakeFiles/rebuild_cache.dir
+/home/basic/workspace/code/go/vaproc/repository/memfd/build/sample2/CMakeFiles/edit_cache.dir
+/home/basic/workspace/code/go/vaproc/repository/memfd/build/sample2/CMakeFiles/cli_snd.dir
+/home/basic/workspace/code/go/vaproc/repository/memfd/build/sample2/CMakeFiles/srv_rcv.dir
+/home/basic/workspace/code/go/vaproc/repository/memfd/build/sample2/CMakeFiles/client.dir
+/home/basic/workspace/code/go/vaproc/repository/memfd/build/sample2/CMakeFiles/server.dir
diff --git a/build/CMakeFiles/cmake.check_cache b/build/CMakeFiles/cmake.check_cache
new file mode 100644
index 0000000..3dccd73
--- /dev/null
+++ b/build/CMakeFiles/cmake.check_cache
@@ -0,0 +1 @@
+# This file is generated by cmake for dependency checking of the CMakeCache.txt file
diff --git a/build/CMakeFiles/feature_tests.bin b/build/CMakeFiles/feature_tests.bin
new file mode 100755
index 0000000..59a0e71
--- /dev/null
+++ b/build/CMakeFiles/feature_tests.bin
Binary files differ
diff --git a/build/CMakeFiles/feature_tests.c b/build/CMakeFiles/feature_tests.c
new file mode 100644
index 0000000..83e86dd
--- /dev/null
+++ b/build/CMakeFiles/feature_tests.c
@@ -0,0 +1,34 @@
+
+ const char features[] = {"\n"
+"C_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 304
+"1"
+#else
+"0"
+#endif
+"c_function_prototypes\n"
+"C_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 304 && defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
+"1"
+#else
+"0"
+#endif
+"c_restrict\n"
+"C_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 406 && defined(__STDC_VERSION__) && __STDC_VERSION__ >= 201000L
+"1"
+#else
+"0"
+#endif
+"c_static_assert\n"
+"C_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 304 && defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
+"1"
+#else
+"0"
+#endif
+"c_variadic_macros\n"
+
+};
+
+int main(int argc, char** argv) { (void)argv; return features[argc]; }
diff --git a/build/CMakeFiles/feature_tests.cxx b/build/CMakeFiles/feature_tests.cxx
new file mode 100644
index 0000000..b93418c
--- /dev/null
+++ b/build/CMakeFiles/feature_tests.cxx
@@ -0,0 +1,405 @@
+
+ const char features[] = {"\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 500 && __cplusplus >= 201402L
+"1"
+#else
+"0"
+#endif
+"cxx_aggregate_default_initializers\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 407 && __cplusplus >= 201103L
+"1"
+#else
+"0"
+#endif
+"cxx_alias_templates\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 408 && __cplusplus >= 201103L
+"1"
+#else
+"0"
+#endif
+"cxx_alignas\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 408 && __cplusplus >= 201103L
+"1"
+#else
+"0"
+#endif
+"cxx_alignof\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 408 && __cplusplus >= 201103L
+"1"
+#else
+"0"
+#endif
+"cxx_attributes\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 409 && __cplusplus > 201103L
+"1"
+#else
+"0"
+#endif
+"cxx_attribute_deprecated\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_auto_type\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 409 && __cplusplus > 201103L
+"1"
+#else
+"0"
+#endif
+"cxx_binary_literals\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 406 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_constexpr\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 409 && __cplusplus > 201103L
+"1"
+#else
+"0"
+#endif
+"cxx_contextual_conversions\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_decltype\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 409 && __cplusplus > 201103L
+"1"
+#else
+"0"
+#endif
+"cxx_decltype_auto\n"
+"CXX_FEATURE:"
+#if ((__GNUC__ * 10000 + __GNUC_MINOR__ * 100 + __GNUC_PATCHLEVEL__) >= 40801) && __cplusplus >= 201103L
+"1"
+#else
+"0"
+#endif
+"cxx_decltype_incomplete_return_types\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_default_function_template_args\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_defaulted_functions\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 406 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_defaulted_move_initializers\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 407 && __cplusplus >= 201103L
+"1"
+#else
+"0"
+#endif
+"cxx_delegating_constructors\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_deleted_functions\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 409 && __cplusplus > 201103L
+"1"
+#else
+"0"
+#endif
+"cxx_digit_separators\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 406 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_enum_forward_declarations\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 405 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_explicit_conversions\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 407 && __cplusplus >= 201103L
+"1"
+#else
+"0"
+#endif
+"cxx_extended_friend_declarations\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_extern_templates\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 407 && __cplusplus >= 201103L
+"1"
+#else
+"0"
+#endif
+"cxx_final\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_func_identifier\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_generalized_initializers\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 409 && __cplusplus > 201103L
+"1"
+#else
+"0"
+#endif
+"cxx_generic_lambdas\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 408 && __cplusplus >= 201103L
+"1"
+#else
+"0"
+#endif
+"cxx_inheriting_constructors\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_inline_namespaces\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 405 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_lambdas\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 409 && __cplusplus > 201103L
+"1"
+#else
+"0"
+#endif
+"cxx_lambda_init_captures\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 405 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_local_type_template_args\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_long_long_type\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 406 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_noexcept\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 407 && __cplusplus >= 201103L
+"1"
+#else
+"0"
+#endif
+"cxx_nonstatic_member_init\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 406 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_nullptr\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 407 && __cplusplus >= 201103L
+"1"
+#else
+"0"
+#endif
+"cxx_override\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 406 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_range_for\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 405 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_raw_string_literals\n"
+"CXX_FEATURE:"
+#if ((__GNUC__ * 10000 + __GNUC_MINOR__ * 100 + __GNUC_PATCHLEVEL__) >= 40801) && __cplusplus >= 201103L
+"1"
+#else
+"0"
+#endif
+"cxx_reference_qualified_functions\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 500 && __cplusplus >= 201402L
+"1"
+#else
+"0"
+#endif
+"cxx_relaxed_constexpr\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 409 && __cplusplus > 201103L
+"1"
+#else
+"0"
+#endif
+"cxx_return_type_deduction\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_right_angle_brackets\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_rvalue_references\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_sizeof_member\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_static_assert\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_strong_enums\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && __cplusplus
+"1"
+#else
+"0"
+#endif
+"cxx_template_template_parameters\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 408 && __cplusplus >= 201103L
+"1"
+#else
+"0"
+#endif
+"cxx_thread_local\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_trailing_return_types\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_unicode_literals\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_uniform_initialization\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 406 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_unrestricted_unions\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 407 && __cplusplus >= 201103L
+"1"
+#else
+"0"
+#endif
+"cxx_user_literals\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 500 && __cplusplus >= 201402L
+"1"
+#else
+"0"
+#endif
+"cxx_variable_templates\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_variadic_macros\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_variadic_templates\n"
+
+};
+
+int main(int argc, char** argv) { (void)argv; return features[argc]; }
diff --git a/build/CMakeFiles/progress.marks b/build/CMakeFiles/progress.marks
new file mode 100644
index 0000000..48082f7
--- /dev/null
+++ b/build/CMakeFiles/progress.marks
@@ -0,0 +1 @@
+12
diff --git a/build/Makefile b/build/Makefile
new file mode 100644
index 0000000..7e6a416
--- /dev/null
+++ b/build/Makefile
@@ -0,0 +1,204 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.13
+
+# Default target executed when no arguments are given to make.
+default_target: all
+
+.PHONY : default_target
+
+# Allow only one "make -f Makefile2" at a time, but pass parallelism.
+.NOTPARALLEL:
+
+
+#=============================================================================
+# Special targets provided by cmake.
+
+# Disable implicit rules so canonical targets will work.
+.SUFFIXES:
+
+
+# Remove some rules from gmake that .SUFFIXES does not remove.
+SUFFIXES =
+
+.SUFFIXES: .hpux_make_needs_suffix_list
+
+
+# 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/python2.7/dist-packages/cmake/data/bin/cmake
+
+# The command to remove a file.
+RM = /usr/local/lib/python2.7/dist-packages/cmake/data/bin/cmake -E remove -f
+
+# Escaping for special characters.
+EQUALS = =
+
+# The top-level source directory on which CMake was run.
+CMAKE_SOURCE_DIR = /home/basic/workspace/code/go/vaproc/repository/memfd
+
+# The top-level build directory on which CMake was run.
+CMAKE_BINARY_DIR = /home/basic/workspace/code/go/vaproc/repository/memfd/build
+
+#=============================================================================
+# Targets provided globally by CMake.
+
+# Special rule for the target rebuild_cache
+rebuild_cache:
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running CMake to regenerate build system..."
+ /usr/local/lib/python2.7/dist-packages/cmake/data/bin/cmake -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR)
+.PHONY : rebuild_cache
+
+# Special rule for the target rebuild_cache
+rebuild_cache/fast: rebuild_cache
+
+.PHONY : rebuild_cache/fast
+
+# Special rule for the target edit_cache
+edit_cache:
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "No interactive CMake dialog available..."
+ /usr/local/lib/python2.7/dist-packages/cmake/data/bin/cmake -E echo No\ interactive\ CMake\ dialog\ available.
+.PHONY : edit_cache
+
+# Special rule for the target edit_cache
+edit_cache/fast: edit_cache
+
+.PHONY : edit_cache/fast
+
+# The main all target
+all: cmake_check_build_system
+ $(CMAKE_COMMAND) -E cmake_progress_start /home/basic/workspace/code/go/vaproc/repository/memfd/build/CMakeFiles /home/basic/workspace/code/go/vaproc/repository/memfd/build/CMakeFiles/progress.marks
+ $(MAKE) -f CMakeFiles/Makefile2 all
+ $(CMAKE_COMMAND) -E cmake_progress_start /home/basic/workspace/code/go/vaproc/repository/memfd/build/CMakeFiles 0
+.PHONY : all
+
+# The main clean target
+clean:
+ $(MAKE) -f CMakeFiles/Makefile2 clean
+.PHONY : clean
+
+# The main clean target
+clean/fast: clean
+
+.PHONY : clean/fast
+
+# Prepare targets for installation.
+preinstall: all
+ $(MAKE) -f CMakeFiles/Makefile2 preinstall
+.PHONY : preinstall
+
+# Prepare targets for installation.
+preinstall/fast:
+ $(MAKE) -f CMakeFiles/Makefile2 preinstall
+.PHONY : preinstall/fast
+
+# clear depends
+depend:
+ $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 1
+.PHONY : depend
+
+#=============================================================================
+# Target rules for targets named memfd_shm
+
+# Build rule for target.
+memfd_shm: cmake_check_build_system
+ $(MAKE) -f CMakeFiles/Makefile2 memfd_shm
+.PHONY : memfd_shm
+
+# fast build rule for target.
+memfd_shm/fast:
+ $(MAKE) -f src2/CMakeFiles/memfd_shm.dir/build.make src2/CMakeFiles/memfd_shm.dir/build
+.PHONY : memfd_shm/fast
+
+#=============================================================================
+# Target rules for targets named cli_snd
+
+# Build rule for target.
+cli_snd: cmake_check_build_system
+ $(MAKE) -f CMakeFiles/Makefile2 cli_snd
+.PHONY : cli_snd
+
+# fast build rule for target.
+cli_snd/fast:
+ $(MAKE) -f sample2/CMakeFiles/cli_snd.dir/build.make sample2/CMakeFiles/cli_snd.dir/build
+.PHONY : cli_snd/fast
+
+#=============================================================================
+# Target rules for targets named srv_rcv
+
+# Build rule for target.
+srv_rcv: cmake_check_build_system
+ $(MAKE) -f CMakeFiles/Makefile2 srv_rcv
+.PHONY : srv_rcv
+
+# fast build rule for target.
+srv_rcv/fast:
+ $(MAKE) -f sample2/CMakeFiles/srv_rcv.dir/build.make sample2/CMakeFiles/srv_rcv.dir/build
+.PHONY : srv_rcv/fast
+
+#=============================================================================
+# Target rules for targets named client
+
+# Build rule for target.
+client: cmake_check_build_system
+ $(MAKE) -f CMakeFiles/Makefile2 client
+.PHONY : client
+
+# fast build rule for target.
+client/fast:
+ $(MAKE) -f sample2/CMakeFiles/client.dir/build.make sample2/CMakeFiles/client.dir/build
+.PHONY : client/fast
+
+#=============================================================================
+# Target rules for targets named server
+
+# Build rule for target.
+server: cmake_check_build_system
+ $(MAKE) -f CMakeFiles/Makefile2 server
+.PHONY : server
+
+# fast build rule for target.
+server/fast:
+ $(MAKE) -f sample2/CMakeFiles/server.dir/build.make sample2/CMakeFiles/server.dir/build
+.PHONY : server/fast
+
+# Help Target
+help:
+ @echo "The following are some of the valid targets for this Makefile:"
+ @echo "... all (the default if no target is provided)"
+ @echo "... clean"
+ @echo "... depend"
+ @echo "... rebuild_cache"
+ @echo "... edit_cache"
+ @echo "... memfd_shm"
+ @echo "... cli_snd"
+ @echo "... srv_rcv"
+ @echo "... client"
+ @echo "... server"
+.PHONY : help
+
+
+
+#=============================================================================
+# Special targets to cleanup operation of make.
+
+# Special rule to run CMake to check the build system integrity.
+# No rule that depends on this can have commands that come from listfiles
+# because they might be regenerated.
+cmake_check_build_system:
+ $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0
+.PHONY : cmake_check_build_system
+
diff --git a/build/cmake_install.cmake b/build/cmake_install.cmake
new file mode 100644
index 0000000..253ab83
--- /dev/null
+++ b/build/cmake_install.cmake
@@ -0,0 +1,56 @@
+# Install script for directory: /home/basic/workspace/code/go/vaproc/repository/memfd
+
+# 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()
+
+if(NOT CMAKE_INSTALL_LOCAL_ONLY)
+ # Include the install script for each subdirectory.
+ include("/home/basic/workspace/code/go/vaproc/repository/memfd/build/src2/cmake_install.cmake")
+ include("/home/basic/workspace/code/go/vaproc/repository/memfd/build/sample2/cmake_install.cmake")
+
+endif()
+
+if(CMAKE_INSTALL_COMPONENT)
+ set(CMAKE_INSTALL_MANIFEST "install_manifest_${CMAKE_INSTALL_COMPONENT}.txt")
+else()
+ set(CMAKE_INSTALL_MANIFEST "install_manifest.txt")
+endif()
+
+string(REPLACE ";" "\n" CMAKE_INSTALL_MANIFEST_CONTENT
+ "${CMAKE_INSTALL_MANIFEST_FILES}")
+file(WRITE "/home/basic/workspace/code/go/vaproc/repository/memfd/build/${CMAKE_INSTALL_MANIFEST}"
+ "${CMAKE_INSTALL_MANIFEST_CONTENT}")
diff --git a/build/sample2/CMakeFiles/CMakeDirectoryInformation.cmake b/build/sample2/CMakeFiles/CMakeDirectoryInformation.cmake
new file mode 100644
index 0000000..00d2501
--- /dev/null
+++ b/build/sample2/CMakeFiles/CMakeDirectoryInformation.cmake
@@ -0,0 +1,16 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.13
+
+# Relative path conversion top directories.
+set(CMAKE_RELATIVE_PATH_TOP_SOURCE "/home/basic/workspace/code/go/vaproc/repository/memfd")
+set(CMAKE_RELATIVE_PATH_TOP_BINARY "/home/basic/workspace/code/go/vaproc/repository/memfd/build")
+
+# 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/build/sample2/CMakeFiles/cli_snd.dir/CXX.includecache b/build/sample2/CMakeFiles/cli_snd.dir/CXX.includecache
new file mode 100644
index 0000000..7670339
--- /dev/null
+++ b/build/sample2/CMakeFiles/cli_snd.dir/CXX.includecache
@@ -0,0 +1,36 @@
+#IncludeRegexLine: ^[ ]*[#%][ ]*(include|import)[ ]*[<"]([^">]+)([">])
+
+#IncludeRegexScan: ^.*$
+
+#IncludeRegexComplain: ^$
+
+#IncludeRegexTransform:
+
+..//src2/shmh.h
+memfd_shm.h
+../src2/memfd_shm.h
+transfd_shm.h
+../src2/transfd_shm.h
+epollfd_shm.h
+../src2/epollfd_shm.h
+
+../src2/epollfd_shm.h
+
+../src2/memfd_shm.h
+
+../src2/transfd_shm.h
+
+/home/basic/workspace/code/go/vaproc/repository/memfd/sample2/cli_snd.cpp
+stdio.h
+-
+unistd.h
+-
+sys/types.h
+-
+sys/stat.h
+-
+src2/shmh.h
+/home/basic/workspace/code/go/vaproc/repository/memfd/sample2/src2/shmh.h
+chrono
+-
+
diff --git a/build/sample2/CMakeFiles/cli_snd.dir/DependInfo.cmake b/build/sample2/CMakeFiles/cli_snd.dir/DependInfo.cmake
new file mode 100644
index 0000000..1c271cf
--- /dev/null
+++ b/build/sample2/CMakeFiles/cli_snd.dir/DependInfo.cmake
@@ -0,0 +1,22 @@
+# 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/basic/workspace/code/go/vaproc/repository/memfd/sample2/cli_snd.cpp" "/home/basic/workspace/code/go/vaproc/repository/memfd/build/sample2/CMakeFiles/cli_snd.dir/cli_snd.cpp.o"
+ )
+set(CMAKE_CXX_COMPILER_ID "GNU")
+
+# The include file search paths:
+set(CMAKE_CXX_TARGET_INCLUDE_PATH
+ "../"
+ )
+
+# Targets to which this target links.
+set(CMAKE_TARGET_LINKED_INFO_FILES
+ "/home/basic/workspace/code/go/vaproc/repository/memfd/build/src2/CMakeFiles/memfd_shm.dir/DependInfo.cmake"
+ )
+
+# Fortran module output directory.
+set(CMAKE_Fortran_TARGET_MODULE_DIR "")
diff --git a/build/sample2/CMakeFiles/cli_snd.dir/build.make b/build/sample2/CMakeFiles/cli_snd.dir/build.make
new file mode 100644
index 0000000..43c8ea3
--- /dev/null
+++ b/build/sample2/CMakeFiles/cli_snd.dir/build.make
@@ -0,0 +1,99 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.13
+
+# Delete rule output on recipe failure.
+.DELETE_ON_ERROR:
+
+
+#=============================================================================
+# Special targets provided by cmake.
+
+# Disable implicit rules so canonical targets will work.
+.SUFFIXES:
+
+
+# Remove some rules from gmake that .SUFFIXES does not remove.
+SUFFIXES =
+
+.SUFFIXES: .hpux_make_needs_suffix_list
+
+
+# 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/python2.7/dist-packages/cmake/data/bin/cmake
+
+# The command to remove a file.
+RM = /usr/local/lib/python2.7/dist-packages/cmake/data/bin/cmake -E remove -f
+
+# Escaping for special characters.
+EQUALS = =
+
+# The top-level source directory on which CMake was run.
+CMAKE_SOURCE_DIR = /home/basic/workspace/code/go/vaproc/repository/memfd
+
+# The top-level build directory on which CMake was run.
+CMAKE_BINARY_DIR = /home/basic/workspace/code/go/vaproc/repository/memfd/build
+
+# Include any dependencies generated for this target.
+include sample2/CMakeFiles/cli_snd.dir/depend.make
+
+# Include the progress variables for this target.
+include sample2/CMakeFiles/cli_snd.dir/progress.make
+
+# Include the compile flags for this target's objects.
+include sample2/CMakeFiles/cli_snd.dir/flags.make
+
+sample2/CMakeFiles/cli_snd.dir/cli_snd.cpp.o: sample2/CMakeFiles/cli_snd.dir/flags.make
+sample2/CMakeFiles/cli_snd.dir/cli_snd.cpp.o: ../sample2/cli_snd.cpp
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/basic/workspace/code/go/vaproc/repository/memfd/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_1) "Building CXX object sample2/CMakeFiles/cli_snd.dir/cli_snd.cpp.o"
+ cd /home/basic/workspace/code/go/vaproc/repository/memfd/build/sample2 && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -o CMakeFiles/cli_snd.dir/cli_snd.cpp.o -c /home/basic/workspace/code/go/vaproc/repository/memfd/sample2/cli_snd.cpp
+
+sample2/CMakeFiles/cli_snd.dir/cli_snd.cpp.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/cli_snd.dir/cli_snd.cpp.i"
+ cd /home/basic/workspace/code/go/vaproc/repository/memfd/build/sample2 && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/basic/workspace/code/go/vaproc/repository/memfd/sample2/cli_snd.cpp > CMakeFiles/cli_snd.dir/cli_snd.cpp.i
+
+sample2/CMakeFiles/cli_snd.dir/cli_snd.cpp.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/cli_snd.dir/cli_snd.cpp.s"
+ cd /home/basic/workspace/code/go/vaproc/repository/memfd/build/sample2 && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/basic/workspace/code/go/vaproc/repository/memfd/sample2/cli_snd.cpp -o CMakeFiles/cli_snd.dir/cli_snd.cpp.s
+
+# Object files for target cli_snd
+cli_snd_OBJECTS = \
+"CMakeFiles/cli_snd.dir/cli_snd.cpp.o"
+
+# External object files for target cli_snd
+cli_snd_EXTERNAL_OBJECTS =
+
+sample2/cli_snd: sample2/CMakeFiles/cli_snd.dir/cli_snd.cpp.o
+sample2/cli_snd: sample2/CMakeFiles/cli_snd.dir/build.make
+sample2/cli_snd: src2/libmemfd_shm.so
+sample2/cli_snd: sample2/CMakeFiles/cli_snd.dir/link.txt
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --bold --progress-dir=/home/basic/workspace/code/go/vaproc/repository/memfd/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Linking CXX executable cli_snd"
+ cd /home/basic/workspace/code/go/vaproc/repository/memfd/build/sample2 && $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/cli_snd.dir/link.txt --verbose=$(VERBOSE)
+
+# Rule to build all files generated by this target.
+sample2/CMakeFiles/cli_snd.dir/build: sample2/cli_snd
+
+.PHONY : sample2/CMakeFiles/cli_snd.dir/build
+
+sample2/CMakeFiles/cli_snd.dir/clean:
+ cd /home/basic/workspace/code/go/vaproc/repository/memfd/build/sample2 && $(CMAKE_COMMAND) -P CMakeFiles/cli_snd.dir/cmake_clean.cmake
+.PHONY : sample2/CMakeFiles/cli_snd.dir/clean
+
+sample2/CMakeFiles/cli_snd.dir/depend:
+ cd /home/basic/workspace/code/go/vaproc/repository/memfd/build && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /home/basic/workspace/code/go/vaproc/repository/memfd /home/basic/workspace/code/go/vaproc/repository/memfd/sample2 /home/basic/workspace/code/go/vaproc/repository/memfd/build /home/basic/workspace/code/go/vaproc/repository/memfd/build/sample2 /home/basic/workspace/code/go/vaproc/repository/memfd/build/sample2/CMakeFiles/cli_snd.dir/DependInfo.cmake --color=$(COLOR)
+.PHONY : sample2/CMakeFiles/cli_snd.dir/depend
+
diff --git a/build/sample2/CMakeFiles/cli_snd.dir/cmake_clean.cmake b/build/sample2/CMakeFiles/cli_snd.dir/cmake_clean.cmake
new file mode 100644
index 0000000..7831180
--- /dev/null
+++ b/build/sample2/CMakeFiles/cli_snd.dir/cmake_clean.cmake
@@ -0,0 +1,10 @@
+file(REMOVE_RECURSE
+ "CMakeFiles/cli_snd.dir/cli_snd.cpp.o"
+ "cli_snd.pdb"
+ "cli_snd"
+)
+
+# Per-language clean rules from dependency scanning.
+foreach(lang CXX)
+ include(CMakeFiles/cli_snd.dir/cmake_clean_${lang}.cmake OPTIONAL)
+endforeach()
diff --git a/build/sample2/CMakeFiles/cli_snd.dir/depend.internal b/build/sample2/CMakeFiles/cli_snd.dir/depend.internal
new file mode 100644
index 0000000..1d77aa6
--- /dev/null
+++ b/build/sample2/CMakeFiles/cli_snd.dir/depend.internal
@@ -0,0 +1,9 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.13
+
+sample2/CMakeFiles/cli_snd.dir/cli_snd.cpp.o
+ ..//src2/shmh.h
+ ../src2/epollfd_shm.h
+ ../src2/memfd_shm.h
+ ../src2/transfd_shm.h
+ /home/basic/workspace/code/go/vaproc/repository/memfd/sample2/cli_snd.cpp
diff --git a/build/sample2/CMakeFiles/cli_snd.dir/depend.make b/build/sample2/CMakeFiles/cli_snd.dir/depend.make
new file mode 100644
index 0000000..9a72fcb
--- /dev/null
+++ b/build/sample2/CMakeFiles/cli_snd.dir/depend.make
@@ -0,0 +1,9 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.13
+
+sample2/CMakeFiles/cli_snd.dir/cli_snd.cpp.o: ../src2/shmh.h
+sample2/CMakeFiles/cli_snd.dir/cli_snd.cpp.o: ../src2/epollfd_shm.h
+sample2/CMakeFiles/cli_snd.dir/cli_snd.cpp.o: ../src2/memfd_shm.h
+sample2/CMakeFiles/cli_snd.dir/cli_snd.cpp.o: ../src2/transfd_shm.h
+sample2/CMakeFiles/cli_snd.dir/cli_snd.cpp.o: ../sample2/cli_snd.cpp
+
diff --git a/build/sample2/CMakeFiles/cli_snd.dir/flags.make b/build/sample2/CMakeFiles/cli_snd.dir/flags.make
new file mode 100644
index 0000000..8652c45
--- /dev/null
+++ b/build/sample2/CMakeFiles/cli_snd.dir/flags.make
@@ -0,0 +1,10 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.13
+
+# compile CXX with /usr/bin/c++
+CXX_FLAGS = -g -O0 -std=c++11
+
+CXX_DEFINES =
+
+CXX_INCLUDES = -I/home/basic/workspace/code/go/vaproc/repository/memfd
+
diff --git a/build/sample2/CMakeFiles/cli_snd.dir/link.txt b/build/sample2/CMakeFiles/cli_snd.dir/link.txt
new file mode 100644
index 0000000..b5020ae
--- /dev/null
+++ b/build/sample2/CMakeFiles/cli_snd.dir/link.txt
@@ -0,0 +1 @@
+/usr/bin/c++ CMakeFiles/cli_snd.dir/cli_snd.cpp.o -o cli_snd -Wl,-rpath,/home/basic/workspace/code/go/vaproc/repository/memfd/build/src2 ../src2/libmemfd_shm.so -lpthread
diff --git a/build/sample2/CMakeFiles/cli_snd.dir/progress.make b/build/sample2/CMakeFiles/cli_snd.dir/progress.make
new file mode 100644
index 0000000..abadeb0
--- /dev/null
+++ b/build/sample2/CMakeFiles/cli_snd.dir/progress.make
@@ -0,0 +1,3 @@
+CMAKE_PROGRESS_1 = 1
+CMAKE_PROGRESS_2 = 2
+
diff --git a/build/sample2/CMakeFiles/client.dir/CXX.includecache b/build/sample2/CMakeFiles/client.dir/CXX.includecache
new file mode 100644
index 0000000..67c4fd9
--- /dev/null
+++ b/build/sample2/CMakeFiles/client.dir/CXX.includecache
@@ -0,0 +1,38 @@
+#IncludeRegexLine: ^[ ]*[#%][ ]*(include|import)[ ]*[<"]([^">]+)([">])
+
+#IncludeRegexScan: ^.*$
+
+#IncludeRegexComplain: ^$
+
+#IncludeRegexTransform:
+
+..//src2/shmh.h
+memfd_shm.h
+../src2/memfd_shm.h
+transfd_shm.h
+../src2/transfd_shm.h
+epollfd_shm.h
+../src2/epollfd_shm.h
+
+../src2/epollfd_shm.h
+
+../src2/memfd_shm.h
+
+../src2/transfd_shm.h
+
+/home/basic/workspace/code/go/vaproc/repository/memfd/sample2/client.cpp
+cstring
+-
+stdio.h
+-
+unistd.h
+-
+sys/types.h
+-
+sys/stat.h
+-
+src2/shmh.h
+/home/basic/workspace/code/go/vaproc/repository/memfd/sample2/src2/shmh.h
+chrono
+-
+
diff --git a/build/sample2/CMakeFiles/client.dir/DependInfo.cmake b/build/sample2/CMakeFiles/client.dir/DependInfo.cmake
new file mode 100644
index 0000000..e13f23f
--- /dev/null
+++ b/build/sample2/CMakeFiles/client.dir/DependInfo.cmake
@@ -0,0 +1,22 @@
+# 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/basic/workspace/code/go/vaproc/repository/memfd/sample2/client.cpp" "/home/basic/workspace/code/go/vaproc/repository/memfd/build/sample2/CMakeFiles/client.dir/client.cpp.o"
+ )
+set(CMAKE_CXX_COMPILER_ID "GNU")
+
+# The include file search paths:
+set(CMAKE_CXX_TARGET_INCLUDE_PATH
+ "../"
+ )
+
+# Targets to which this target links.
+set(CMAKE_TARGET_LINKED_INFO_FILES
+ "/home/basic/workspace/code/go/vaproc/repository/memfd/build/src2/CMakeFiles/memfd_shm.dir/DependInfo.cmake"
+ )
+
+# Fortran module output directory.
+set(CMAKE_Fortran_TARGET_MODULE_DIR "")
diff --git a/build/sample2/CMakeFiles/client.dir/build.make b/build/sample2/CMakeFiles/client.dir/build.make
new file mode 100644
index 0000000..0dac56f
--- /dev/null
+++ b/build/sample2/CMakeFiles/client.dir/build.make
@@ -0,0 +1,99 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.13
+
+# Delete rule output on recipe failure.
+.DELETE_ON_ERROR:
+
+
+#=============================================================================
+# Special targets provided by cmake.
+
+# Disable implicit rules so canonical targets will work.
+.SUFFIXES:
+
+
+# Remove some rules from gmake that .SUFFIXES does not remove.
+SUFFIXES =
+
+.SUFFIXES: .hpux_make_needs_suffix_list
+
+
+# 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/python2.7/dist-packages/cmake/data/bin/cmake
+
+# The command to remove a file.
+RM = /usr/local/lib/python2.7/dist-packages/cmake/data/bin/cmake -E remove -f
+
+# Escaping for special characters.
+EQUALS = =
+
+# The top-level source directory on which CMake was run.
+CMAKE_SOURCE_DIR = /home/basic/workspace/code/go/vaproc/repository/memfd
+
+# The top-level build directory on which CMake was run.
+CMAKE_BINARY_DIR = /home/basic/workspace/code/go/vaproc/repository/memfd/build
+
+# Include any dependencies generated for this target.
+include sample2/CMakeFiles/client.dir/depend.make
+
+# Include the progress variables for this target.
+include sample2/CMakeFiles/client.dir/progress.make
+
+# Include the compile flags for this target's objects.
+include sample2/CMakeFiles/client.dir/flags.make
+
+sample2/CMakeFiles/client.dir/client.cpp.o: sample2/CMakeFiles/client.dir/flags.make
+sample2/CMakeFiles/client.dir/client.cpp.o: ../sample2/client.cpp
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/basic/workspace/code/go/vaproc/repository/memfd/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_1) "Building CXX object sample2/CMakeFiles/client.dir/client.cpp.o"
+ cd /home/basic/workspace/code/go/vaproc/repository/memfd/build/sample2 && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -o CMakeFiles/client.dir/client.cpp.o -c /home/basic/workspace/code/go/vaproc/repository/memfd/sample2/client.cpp
+
+sample2/CMakeFiles/client.dir/client.cpp.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/client.dir/client.cpp.i"
+ cd /home/basic/workspace/code/go/vaproc/repository/memfd/build/sample2 && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/basic/workspace/code/go/vaproc/repository/memfd/sample2/client.cpp > CMakeFiles/client.dir/client.cpp.i
+
+sample2/CMakeFiles/client.dir/client.cpp.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/client.dir/client.cpp.s"
+ cd /home/basic/workspace/code/go/vaproc/repository/memfd/build/sample2 && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/basic/workspace/code/go/vaproc/repository/memfd/sample2/client.cpp -o CMakeFiles/client.dir/client.cpp.s
+
+# Object files for target client
+client_OBJECTS = \
+"CMakeFiles/client.dir/client.cpp.o"
+
+# External object files for target client
+client_EXTERNAL_OBJECTS =
+
+sample2/client: sample2/CMakeFiles/client.dir/client.cpp.o
+sample2/client: sample2/CMakeFiles/client.dir/build.make
+sample2/client: src2/libmemfd_shm.so
+sample2/client: sample2/CMakeFiles/client.dir/link.txt
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --bold --progress-dir=/home/basic/workspace/code/go/vaproc/repository/memfd/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Linking CXX executable client"
+ cd /home/basic/workspace/code/go/vaproc/repository/memfd/build/sample2 && $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/client.dir/link.txt --verbose=$(VERBOSE)
+
+# Rule to build all files generated by this target.
+sample2/CMakeFiles/client.dir/build: sample2/client
+
+.PHONY : sample2/CMakeFiles/client.dir/build
+
+sample2/CMakeFiles/client.dir/clean:
+ cd /home/basic/workspace/code/go/vaproc/repository/memfd/build/sample2 && $(CMAKE_COMMAND) -P CMakeFiles/client.dir/cmake_clean.cmake
+.PHONY : sample2/CMakeFiles/client.dir/clean
+
+sample2/CMakeFiles/client.dir/depend:
+ cd /home/basic/workspace/code/go/vaproc/repository/memfd/build && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /home/basic/workspace/code/go/vaproc/repository/memfd /home/basic/workspace/code/go/vaproc/repository/memfd/sample2 /home/basic/workspace/code/go/vaproc/repository/memfd/build /home/basic/workspace/code/go/vaproc/repository/memfd/build/sample2 /home/basic/workspace/code/go/vaproc/repository/memfd/build/sample2/CMakeFiles/client.dir/DependInfo.cmake --color=$(COLOR)
+.PHONY : sample2/CMakeFiles/client.dir/depend
+
diff --git a/build/sample2/CMakeFiles/client.dir/cmake_clean.cmake b/build/sample2/CMakeFiles/client.dir/cmake_clean.cmake
new file mode 100644
index 0000000..bc3a3f2
--- /dev/null
+++ b/build/sample2/CMakeFiles/client.dir/cmake_clean.cmake
@@ -0,0 +1,10 @@
+file(REMOVE_RECURSE
+ "CMakeFiles/client.dir/client.cpp.o"
+ "client.pdb"
+ "client"
+)
+
+# Per-language clean rules from dependency scanning.
+foreach(lang CXX)
+ include(CMakeFiles/client.dir/cmake_clean_${lang}.cmake OPTIONAL)
+endforeach()
diff --git a/build/sample2/CMakeFiles/client.dir/depend.internal b/build/sample2/CMakeFiles/client.dir/depend.internal
new file mode 100644
index 0000000..388db98
--- /dev/null
+++ b/build/sample2/CMakeFiles/client.dir/depend.internal
@@ -0,0 +1,9 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.13
+
+sample2/CMakeFiles/client.dir/client.cpp.o
+ ..//src2/shmh.h
+ ../src2/epollfd_shm.h
+ ../src2/memfd_shm.h
+ ../src2/transfd_shm.h
+ /home/basic/workspace/code/go/vaproc/repository/memfd/sample2/client.cpp
diff --git a/build/sample2/CMakeFiles/client.dir/depend.make b/build/sample2/CMakeFiles/client.dir/depend.make
new file mode 100644
index 0000000..48f64ee
--- /dev/null
+++ b/build/sample2/CMakeFiles/client.dir/depend.make
@@ -0,0 +1,9 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.13
+
+sample2/CMakeFiles/client.dir/client.cpp.o: ../src2/shmh.h
+sample2/CMakeFiles/client.dir/client.cpp.o: ../src2/epollfd_shm.h
+sample2/CMakeFiles/client.dir/client.cpp.o: ../src2/memfd_shm.h
+sample2/CMakeFiles/client.dir/client.cpp.o: ../src2/transfd_shm.h
+sample2/CMakeFiles/client.dir/client.cpp.o: ../sample2/client.cpp
+
diff --git a/build/sample2/CMakeFiles/client.dir/flags.make b/build/sample2/CMakeFiles/client.dir/flags.make
new file mode 100644
index 0000000..8652c45
--- /dev/null
+++ b/build/sample2/CMakeFiles/client.dir/flags.make
@@ -0,0 +1,10 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.13
+
+# compile CXX with /usr/bin/c++
+CXX_FLAGS = -g -O0 -std=c++11
+
+CXX_DEFINES =
+
+CXX_INCLUDES = -I/home/basic/workspace/code/go/vaproc/repository/memfd
+
diff --git a/build/sample2/CMakeFiles/client.dir/link.txt b/build/sample2/CMakeFiles/client.dir/link.txt
new file mode 100644
index 0000000..d640c2d
--- /dev/null
+++ b/build/sample2/CMakeFiles/client.dir/link.txt
@@ -0,0 +1 @@
+/usr/bin/c++ CMakeFiles/client.dir/client.cpp.o -o client -Wl,-rpath,/home/basic/workspace/code/go/vaproc/repository/memfd/build/src2 ../src2/libmemfd_shm.so -lpthread
diff --git a/build/sample2/CMakeFiles/client.dir/progress.make b/build/sample2/CMakeFiles/client.dir/progress.make
new file mode 100644
index 0000000..8c8fb6f
--- /dev/null
+++ b/build/sample2/CMakeFiles/client.dir/progress.make
@@ -0,0 +1,3 @@
+CMAKE_PROGRESS_1 = 3
+CMAKE_PROGRESS_2 = 4
+
diff --git a/build/sample2/CMakeFiles/progress.marks b/build/sample2/CMakeFiles/progress.marks
new file mode 100644
index 0000000..48082f7
--- /dev/null
+++ b/build/sample2/CMakeFiles/progress.marks
@@ -0,0 +1 @@
+12
diff --git a/build/sample2/CMakeFiles/server.dir/C.includecache b/build/sample2/CMakeFiles/server.dir/C.includecache
new file mode 100644
index 0000000..706d7c1
--- /dev/null
+++ b/build/sample2/CMakeFiles/server.dir/C.includecache
@@ -0,0 +1,28 @@
+#IncludeRegexLine: ^[ ]*[#%][ ]*(include|import)[ ]*[<"]([^">]+)([">])
+
+#IncludeRegexScan: ^.*$
+
+#IncludeRegexComplain: ^$
+
+#IncludeRegexTransform:
+
+..//src2/shmh.h
+memfd_shm.h
+../src2/memfd_shm.h
+transfd_shm.h
+../src2/transfd_shm.h
+epollfd_shm.h
+../src2/epollfd_shm.h
+
+../src2/epollfd_shm.h
+
+../src2/memfd_shm.h
+
+../src2/transfd_shm.h
+
+/home/basic/workspace/code/go/vaproc/repository/memfd/sample2/server.c
+stdio.h
+-
+src2/shmh.h
+/home/basic/workspace/code/go/vaproc/repository/memfd/sample2/src2/shmh.h
+
diff --git a/build/sample2/CMakeFiles/server.dir/CXX.includecache b/build/sample2/CMakeFiles/server.dir/CXX.includecache
new file mode 100644
index 0000000..0e23c67
--- /dev/null
+++ b/build/sample2/CMakeFiles/server.dir/CXX.includecache
@@ -0,0 +1,36 @@
+#IncludeRegexLine: ^[ ]*[#%][ ]*(include|import)[ ]*[<"]([^">]+)([">])
+
+#IncludeRegexScan: ^.*$
+
+#IncludeRegexComplain: ^$
+
+#IncludeRegexTransform:
+
+..//src2/shmh.h
+memfd_shm.h
+../src2/memfd_shm.h
+transfd_shm.h
+../src2/transfd_shm.h
+epollfd_shm.h
+../src2/epollfd_shm.h
+
+../src2/epollfd_shm.h
+
+../src2/memfd_shm.h
+
+../src2/transfd_shm.h
+
+/home/basic/workspace/code/go/vaproc/repository/memfd/sample2/server.cpp
+stdio.h
+-
+src2/shmh.h
+/home/basic/workspace/code/go/vaproc/repository/memfd/sample2/src2/shmh.h
+sys/types.h
+-
+sys/stat.h
+-
+thread
+-
+unistd.h
+-
+
diff --git a/build/sample2/CMakeFiles/server.dir/DependInfo.cmake b/build/sample2/CMakeFiles/server.dir/DependInfo.cmake
new file mode 100644
index 0000000..c4298a3
--- /dev/null
+++ b/build/sample2/CMakeFiles/server.dir/DependInfo.cmake
@@ -0,0 +1,22 @@
+# 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/basic/workspace/code/go/vaproc/repository/memfd/sample2/server.cpp" "/home/basic/workspace/code/go/vaproc/repository/memfd/build/sample2/CMakeFiles/server.dir/server.cpp.o"
+ )
+set(CMAKE_CXX_COMPILER_ID "GNU")
+
+# The include file search paths:
+set(CMAKE_CXX_TARGET_INCLUDE_PATH
+ "../"
+ )
+
+# Targets to which this target links.
+set(CMAKE_TARGET_LINKED_INFO_FILES
+ "/home/basic/workspace/code/go/vaproc/repository/memfd/build/src2/CMakeFiles/memfd_shm.dir/DependInfo.cmake"
+ )
+
+# Fortran module output directory.
+set(CMAKE_Fortran_TARGET_MODULE_DIR "")
diff --git a/build/sample2/CMakeFiles/server.dir/build.make b/build/sample2/CMakeFiles/server.dir/build.make
new file mode 100644
index 0000000..99e3dc2
--- /dev/null
+++ b/build/sample2/CMakeFiles/server.dir/build.make
@@ -0,0 +1,99 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.13
+
+# Delete rule output on recipe failure.
+.DELETE_ON_ERROR:
+
+
+#=============================================================================
+# Special targets provided by cmake.
+
+# Disable implicit rules so canonical targets will work.
+.SUFFIXES:
+
+
+# Remove some rules from gmake that .SUFFIXES does not remove.
+SUFFIXES =
+
+.SUFFIXES: .hpux_make_needs_suffix_list
+
+
+# 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/python2.7/dist-packages/cmake/data/bin/cmake
+
+# The command to remove a file.
+RM = /usr/local/lib/python2.7/dist-packages/cmake/data/bin/cmake -E remove -f
+
+# Escaping for special characters.
+EQUALS = =
+
+# The top-level source directory on which CMake was run.
+CMAKE_SOURCE_DIR = /home/basic/workspace/code/go/vaproc/repository/memfd
+
+# The top-level build directory on which CMake was run.
+CMAKE_BINARY_DIR = /home/basic/workspace/code/go/vaproc/repository/memfd/build
+
+# Include any dependencies generated for this target.
+include sample2/CMakeFiles/server.dir/depend.make
+
+# Include the progress variables for this target.
+include sample2/CMakeFiles/server.dir/progress.make
+
+# Include the compile flags for this target's objects.
+include sample2/CMakeFiles/server.dir/flags.make
+
+sample2/CMakeFiles/server.dir/server.cpp.o: sample2/CMakeFiles/server.dir/flags.make
+sample2/CMakeFiles/server.dir/server.cpp.o: ../sample2/server.cpp
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/basic/workspace/code/go/vaproc/repository/memfd/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_1) "Building CXX object sample2/CMakeFiles/server.dir/server.cpp.o"
+ cd /home/basic/workspace/code/go/vaproc/repository/memfd/build/sample2 && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -o CMakeFiles/server.dir/server.cpp.o -c /home/basic/workspace/code/go/vaproc/repository/memfd/sample2/server.cpp
+
+sample2/CMakeFiles/server.dir/server.cpp.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/server.dir/server.cpp.i"
+ cd /home/basic/workspace/code/go/vaproc/repository/memfd/build/sample2 && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/basic/workspace/code/go/vaproc/repository/memfd/sample2/server.cpp > CMakeFiles/server.dir/server.cpp.i
+
+sample2/CMakeFiles/server.dir/server.cpp.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/server.dir/server.cpp.s"
+ cd /home/basic/workspace/code/go/vaproc/repository/memfd/build/sample2 && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/basic/workspace/code/go/vaproc/repository/memfd/sample2/server.cpp -o CMakeFiles/server.dir/server.cpp.s
+
+# Object files for target server
+server_OBJECTS = \
+"CMakeFiles/server.dir/server.cpp.o"
+
+# External object files for target server
+server_EXTERNAL_OBJECTS =
+
+sample2/server: sample2/CMakeFiles/server.dir/server.cpp.o
+sample2/server: sample2/CMakeFiles/server.dir/build.make
+sample2/server: src2/libmemfd_shm.so
+sample2/server: sample2/CMakeFiles/server.dir/link.txt
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --bold --progress-dir=/home/basic/workspace/code/go/vaproc/repository/memfd/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Linking CXX executable server"
+ cd /home/basic/workspace/code/go/vaproc/repository/memfd/build/sample2 && $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/server.dir/link.txt --verbose=$(VERBOSE)
+
+# Rule to build all files generated by this target.
+sample2/CMakeFiles/server.dir/build: sample2/server
+
+.PHONY : sample2/CMakeFiles/server.dir/build
+
+sample2/CMakeFiles/server.dir/clean:
+ cd /home/basic/workspace/code/go/vaproc/repository/memfd/build/sample2 && $(CMAKE_COMMAND) -P CMakeFiles/server.dir/cmake_clean.cmake
+.PHONY : sample2/CMakeFiles/server.dir/clean
+
+sample2/CMakeFiles/server.dir/depend:
+ cd /home/basic/workspace/code/go/vaproc/repository/memfd/build && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /home/basic/workspace/code/go/vaproc/repository/memfd /home/basic/workspace/code/go/vaproc/repository/memfd/sample2 /home/basic/workspace/code/go/vaproc/repository/memfd/build /home/basic/workspace/code/go/vaproc/repository/memfd/build/sample2 /home/basic/workspace/code/go/vaproc/repository/memfd/build/sample2/CMakeFiles/server.dir/DependInfo.cmake --color=$(COLOR)
+.PHONY : sample2/CMakeFiles/server.dir/depend
+
diff --git a/build/sample2/CMakeFiles/server.dir/cmake_clean.cmake b/build/sample2/CMakeFiles/server.dir/cmake_clean.cmake
new file mode 100644
index 0000000..cee8557
--- /dev/null
+++ b/build/sample2/CMakeFiles/server.dir/cmake_clean.cmake
@@ -0,0 +1,10 @@
+file(REMOVE_RECURSE
+ "CMakeFiles/server.dir/server.cpp.o"
+ "server.pdb"
+ "server"
+)
+
+# Per-language clean rules from dependency scanning.
+foreach(lang CXX)
+ include(CMakeFiles/server.dir/cmake_clean_${lang}.cmake OPTIONAL)
+endforeach()
diff --git a/build/sample2/CMakeFiles/server.dir/depend.internal b/build/sample2/CMakeFiles/server.dir/depend.internal
new file mode 100644
index 0000000..a9fff7f
--- /dev/null
+++ b/build/sample2/CMakeFiles/server.dir/depend.internal
@@ -0,0 +1,9 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.13
+
+sample2/CMakeFiles/server.dir/server.cpp.o
+ ..//src2/shmh.h
+ ../src2/epollfd_shm.h
+ ../src2/memfd_shm.h
+ ../src2/transfd_shm.h
+ /home/basic/workspace/code/go/vaproc/repository/memfd/sample2/server.cpp
diff --git a/build/sample2/CMakeFiles/server.dir/depend.make b/build/sample2/CMakeFiles/server.dir/depend.make
new file mode 100644
index 0000000..6959a7f
--- /dev/null
+++ b/build/sample2/CMakeFiles/server.dir/depend.make
@@ -0,0 +1,9 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.13
+
+sample2/CMakeFiles/server.dir/server.cpp.o: ../src2/shmh.h
+sample2/CMakeFiles/server.dir/server.cpp.o: ../src2/epollfd_shm.h
+sample2/CMakeFiles/server.dir/server.cpp.o: ../src2/memfd_shm.h
+sample2/CMakeFiles/server.dir/server.cpp.o: ../src2/transfd_shm.h
+sample2/CMakeFiles/server.dir/server.cpp.o: ../sample2/server.cpp
+
diff --git a/build/sample2/CMakeFiles/server.dir/flags.make b/build/sample2/CMakeFiles/server.dir/flags.make
new file mode 100644
index 0000000..8652c45
--- /dev/null
+++ b/build/sample2/CMakeFiles/server.dir/flags.make
@@ -0,0 +1,10 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.13
+
+# compile CXX with /usr/bin/c++
+CXX_FLAGS = -g -O0 -std=c++11
+
+CXX_DEFINES =
+
+CXX_INCLUDES = -I/home/basic/workspace/code/go/vaproc/repository/memfd
+
diff --git a/build/sample2/CMakeFiles/server.dir/link.txt b/build/sample2/CMakeFiles/server.dir/link.txt
new file mode 100644
index 0000000..93c1b55
--- /dev/null
+++ b/build/sample2/CMakeFiles/server.dir/link.txt
@@ -0,0 +1 @@
+/usr/bin/c++ CMakeFiles/server.dir/server.cpp.o -o server -Wl,-rpath,/home/basic/workspace/code/go/vaproc/repository/memfd/build/src2 ../src2/libmemfd_shm.so -lpthread
diff --git a/build/sample2/CMakeFiles/server.dir/progress.make b/build/sample2/CMakeFiles/server.dir/progress.make
new file mode 100644
index 0000000..b700c2c
--- /dev/null
+++ b/build/sample2/CMakeFiles/server.dir/progress.make
@@ -0,0 +1,3 @@
+CMAKE_PROGRESS_1 = 9
+CMAKE_PROGRESS_2 = 10
+
diff --git a/build/sample2/CMakeFiles/srv_rcv.dir/CXX.includecache b/build/sample2/CMakeFiles/srv_rcv.dir/CXX.includecache
new file mode 100644
index 0000000..81564c8
--- /dev/null
+++ b/build/sample2/CMakeFiles/srv_rcv.dir/CXX.includecache
@@ -0,0 +1,36 @@
+#IncludeRegexLine: ^[ ]*[#%][ ]*(include|import)[ ]*[<"]([^">]+)([">])
+
+#IncludeRegexScan: ^.*$
+
+#IncludeRegexComplain: ^$
+
+#IncludeRegexTransform:
+
+..//src2/shmh.h
+memfd_shm.h
+../src2/memfd_shm.h
+transfd_shm.h
+../src2/transfd_shm.h
+epollfd_shm.h
+../src2/epollfd_shm.h
+
+../src2/epollfd_shm.h
+
+../src2/memfd_shm.h
+
+../src2/transfd_shm.h
+
+/home/basic/workspace/code/go/vaproc/repository/memfd/sample2/srv_recv.cpp
+stdio.h
+-
+src2/shmh.h
+/home/basic/workspace/code/go/vaproc/repository/memfd/sample2/src2/shmh.h
+sys/types.h
+-
+sys/stat.h
+-
+thread
+-
+unistd.h
+-
+
diff --git a/build/sample2/CMakeFiles/srv_rcv.dir/DependInfo.cmake b/build/sample2/CMakeFiles/srv_rcv.dir/DependInfo.cmake
new file mode 100644
index 0000000..b0a9798
--- /dev/null
+++ b/build/sample2/CMakeFiles/srv_rcv.dir/DependInfo.cmake
@@ -0,0 +1,22 @@
+# 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/basic/workspace/code/go/vaproc/repository/memfd/sample2/srv_recv.cpp" "/home/basic/workspace/code/go/vaproc/repository/memfd/build/sample2/CMakeFiles/srv_rcv.dir/srv_recv.cpp.o"
+ )
+set(CMAKE_CXX_COMPILER_ID "GNU")
+
+# The include file search paths:
+set(CMAKE_CXX_TARGET_INCLUDE_PATH
+ "../"
+ )
+
+# Targets to which this target links.
+set(CMAKE_TARGET_LINKED_INFO_FILES
+ "/home/basic/workspace/code/go/vaproc/repository/memfd/build/src2/CMakeFiles/memfd_shm.dir/DependInfo.cmake"
+ )
+
+# Fortran module output directory.
+set(CMAKE_Fortran_TARGET_MODULE_DIR "")
diff --git a/build/sample2/CMakeFiles/srv_rcv.dir/build.make b/build/sample2/CMakeFiles/srv_rcv.dir/build.make
new file mode 100644
index 0000000..221b819
--- /dev/null
+++ b/build/sample2/CMakeFiles/srv_rcv.dir/build.make
@@ -0,0 +1,99 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.13
+
+# Delete rule output on recipe failure.
+.DELETE_ON_ERROR:
+
+
+#=============================================================================
+# Special targets provided by cmake.
+
+# Disable implicit rules so canonical targets will work.
+.SUFFIXES:
+
+
+# Remove some rules from gmake that .SUFFIXES does not remove.
+SUFFIXES =
+
+.SUFFIXES: .hpux_make_needs_suffix_list
+
+
+# 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/python2.7/dist-packages/cmake/data/bin/cmake
+
+# The command to remove a file.
+RM = /usr/local/lib/python2.7/dist-packages/cmake/data/bin/cmake -E remove -f
+
+# Escaping for special characters.
+EQUALS = =
+
+# The top-level source directory on which CMake was run.
+CMAKE_SOURCE_DIR = /home/basic/workspace/code/go/vaproc/repository/memfd
+
+# The top-level build directory on which CMake was run.
+CMAKE_BINARY_DIR = /home/basic/workspace/code/go/vaproc/repository/memfd/build
+
+# Include any dependencies generated for this target.
+include sample2/CMakeFiles/srv_rcv.dir/depend.make
+
+# Include the progress variables for this target.
+include sample2/CMakeFiles/srv_rcv.dir/progress.make
+
+# Include the compile flags for this target's objects.
+include sample2/CMakeFiles/srv_rcv.dir/flags.make
+
+sample2/CMakeFiles/srv_rcv.dir/srv_recv.cpp.o: sample2/CMakeFiles/srv_rcv.dir/flags.make
+sample2/CMakeFiles/srv_rcv.dir/srv_recv.cpp.o: ../sample2/srv_recv.cpp
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/basic/workspace/code/go/vaproc/repository/memfd/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_1) "Building CXX object sample2/CMakeFiles/srv_rcv.dir/srv_recv.cpp.o"
+ cd /home/basic/workspace/code/go/vaproc/repository/memfd/build/sample2 && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -o CMakeFiles/srv_rcv.dir/srv_recv.cpp.o -c /home/basic/workspace/code/go/vaproc/repository/memfd/sample2/srv_recv.cpp
+
+sample2/CMakeFiles/srv_rcv.dir/srv_recv.cpp.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/srv_rcv.dir/srv_recv.cpp.i"
+ cd /home/basic/workspace/code/go/vaproc/repository/memfd/build/sample2 && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/basic/workspace/code/go/vaproc/repository/memfd/sample2/srv_recv.cpp > CMakeFiles/srv_rcv.dir/srv_recv.cpp.i
+
+sample2/CMakeFiles/srv_rcv.dir/srv_recv.cpp.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/srv_rcv.dir/srv_recv.cpp.s"
+ cd /home/basic/workspace/code/go/vaproc/repository/memfd/build/sample2 && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/basic/workspace/code/go/vaproc/repository/memfd/sample2/srv_recv.cpp -o CMakeFiles/srv_rcv.dir/srv_recv.cpp.s
+
+# Object files for target srv_rcv
+srv_rcv_OBJECTS = \
+"CMakeFiles/srv_rcv.dir/srv_recv.cpp.o"
+
+# External object files for target srv_rcv
+srv_rcv_EXTERNAL_OBJECTS =
+
+sample2/srv_rcv: sample2/CMakeFiles/srv_rcv.dir/srv_recv.cpp.o
+sample2/srv_rcv: sample2/CMakeFiles/srv_rcv.dir/build.make
+sample2/srv_rcv: src2/libmemfd_shm.so
+sample2/srv_rcv: sample2/CMakeFiles/srv_rcv.dir/link.txt
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --bold --progress-dir=/home/basic/workspace/code/go/vaproc/repository/memfd/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Linking CXX executable srv_rcv"
+ cd /home/basic/workspace/code/go/vaproc/repository/memfd/build/sample2 && $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/srv_rcv.dir/link.txt --verbose=$(VERBOSE)
+
+# Rule to build all files generated by this target.
+sample2/CMakeFiles/srv_rcv.dir/build: sample2/srv_rcv
+
+.PHONY : sample2/CMakeFiles/srv_rcv.dir/build
+
+sample2/CMakeFiles/srv_rcv.dir/clean:
+ cd /home/basic/workspace/code/go/vaproc/repository/memfd/build/sample2 && $(CMAKE_COMMAND) -P CMakeFiles/srv_rcv.dir/cmake_clean.cmake
+.PHONY : sample2/CMakeFiles/srv_rcv.dir/clean
+
+sample2/CMakeFiles/srv_rcv.dir/depend:
+ cd /home/basic/workspace/code/go/vaproc/repository/memfd/build && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /home/basic/workspace/code/go/vaproc/repository/memfd /home/basic/workspace/code/go/vaproc/repository/memfd/sample2 /home/basic/workspace/code/go/vaproc/repository/memfd/build /home/basic/workspace/code/go/vaproc/repository/memfd/build/sample2 /home/basic/workspace/code/go/vaproc/repository/memfd/build/sample2/CMakeFiles/srv_rcv.dir/DependInfo.cmake --color=$(COLOR)
+.PHONY : sample2/CMakeFiles/srv_rcv.dir/depend
+
diff --git a/build/sample2/CMakeFiles/srv_rcv.dir/cmake_clean.cmake b/build/sample2/CMakeFiles/srv_rcv.dir/cmake_clean.cmake
new file mode 100644
index 0000000..26f10f5
--- /dev/null
+++ b/build/sample2/CMakeFiles/srv_rcv.dir/cmake_clean.cmake
@@ -0,0 +1,10 @@
+file(REMOVE_RECURSE
+ "CMakeFiles/srv_rcv.dir/srv_recv.cpp.o"
+ "srv_rcv.pdb"
+ "srv_rcv"
+)
+
+# Per-language clean rules from dependency scanning.
+foreach(lang CXX)
+ include(CMakeFiles/srv_rcv.dir/cmake_clean_${lang}.cmake OPTIONAL)
+endforeach()
diff --git a/build/sample2/CMakeFiles/srv_rcv.dir/depend.internal b/build/sample2/CMakeFiles/srv_rcv.dir/depend.internal
new file mode 100644
index 0000000..73392d1
--- /dev/null
+++ b/build/sample2/CMakeFiles/srv_rcv.dir/depend.internal
@@ -0,0 +1,9 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.13
+
+sample2/CMakeFiles/srv_rcv.dir/srv_recv.cpp.o
+ ..//src2/shmh.h
+ ../src2/epollfd_shm.h
+ ../src2/memfd_shm.h
+ ../src2/transfd_shm.h
+ /home/basic/workspace/code/go/vaproc/repository/memfd/sample2/srv_recv.cpp
diff --git a/build/sample2/CMakeFiles/srv_rcv.dir/depend.make b/build/sample2/CMakeFiles/srv_rcv.dir/depend.make
new file mode 100644
index 0000000..e68a582
--- /dev/null
+++ b/build/sample2/CMakeFiles/srv_rcv.dir/depend.make
@@ -0,0 +1,9 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.13
+
+sample2/CMakeFiles/srv_rcv.dir/srv_recv.cpp.o: ../src2/shmh.h
+sample2/CMakeFiles/srv_rcv.dir/srv_recv.cpp.o: ../src2/epollfd_shm.h
+sample2/CMakeFiles/srv_rcv.dir/srv_recv.cpp.o: ../src2/memfd_shm.h
+sample2/CMakeFiles/srv_rcv.dir/srv_recv.cpp.o: ../src2/transfd_shm.h
+sample2/CMakeFiles/srv_rcv.dir/srv_recv.cpp.o: ../sample2/srv_recv.cpp
+
diff --git a/build/sample2/CMakeFiles/srv_rcv.dir/flags.make b/build/sample2/CMakeFiles/srv_rcv.dir/flags.make
new file mode 100644
index 0000000..8652c45
--- /dev/null
+++ b/build/sample2/CMakeFiles/srv_rcv.dir/flags.make
@@ -0,0 +1,10 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.13
+
+# compile CXX with /usr/bin/c++
+CXX_FLAGS = -g -O0 -std=c++11
+
+CXX_DEFINES =
+
+CXX_INCLUDES = -I/home/basic/workspace/code/go/vaproc/repository/memfd
+
diff --git a/build/sample2/CMakeFiles/srv_rcv.dir/link.txt b/build/sample2/CMakeFiles/srv_rcv.dir/link.txt
new file mode 100644
index 0000000..b128f0c
--- /dev/null
+++ b/build/sample2/CMakeFiles/srv_rcv.dir/link.txt
@@ -0,0 +1 @@
+/usr/bin/c++ CMakeFiles/srv_rcv.dir/srv_recv.cpp.o -o srv_rcv -Wl,-rpath,/home/basic/workspace/code/go/vaproc/repository/memfd/build/src2 ../src2/libmemfd_shm.so -lpthread
diff --git a/build/sample2/CMakeFiles/srv_rcv.dir/progress.make b/build/sample2/CMakeFiles/srv_rcv.dir/progress.make
new file mode 100644
index 0000000..596289c
--- /dev/null
+++ b/build/sample2/CMakeFiles/srv_rcv.dir/progress.make
@@ -0,0 +1,3 @@
+CMAKE_PROGRESS_1 = 11
+CMAKE_PROGRESS_2 = 12
+
diff --git a/build/sample2/Makefile b/build/sample2/Makefile
new file mode 100644
index 0000000..4f9b5e5
--- /dev/null
+++ b/build/sample2/Makefile
@@ -0,0 +1,318 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.13
+
+# Default target executed when no arguments are given to make.
+default_target: all
+
+.PHONY : default_target
+
+# Allow only one "make -f Makefile2" at a time, but pass parallelism.
+.NOTPARALLEL:
+
+
+#=============================================================================
+# Special targets provided by cmake.
+
+# Disable implicit rules so canonical targets will work.
+.SUFFIXES:
+
+
+# Remove some rules from gmake that .SUFFIXES does not remove.
+SUFFIXES =
+
+.SUFFIXES: .hpux_make_needs_suffix_list
+
+
+# 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/python2.7/dist-packages/cmake/data/bin/cmake
+
+# The command to remove a file.
+RM = /usr/local/lib/python2.7/dist-packages/cmake/data/bin/cmake -E remove -f
+
+# Escaping for special characters.
+EQUALS = =
+
+# The top-level source directory on which CMake was run.
+CMAKE_SOURCE_DIR = /home/basic/workspace/code/go/vaproc/repository/memfd
+
+# The top-level build directory on which CMake was run.
+CMAKE_BINARY_DIR = /home/basic/workspace/code/go/vaproc/repository/memfd/build
+
+#=============================================================================
+# Targets provided globally by CMake.
+
+# Special rule for the target rebuild_cache
+rebuild_cache:
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running CMake to regenerate build system..."
+ /usr/local/lib/python2.7/dist-packages/cmake/data/bin/cmake -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR)
+.PHONY : rebuild_cache
+
+# Special rule for the target rebuild_cache
+rebuild_cache/fast: rebuild_cache
+
+.PHONY : rebuild_cache/fast
+
+# Special rule for the target edit_cache
+edit_cache:
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "No interactive CMake dialog available..."
+ /usr/local/lib/python2.7/dist-packages/cmake/data/bin/cmake -E echo No\ interactive\ CMake\ dialog\ available.
+.PHONY : edit_cache
+
+# Special rule for the target edit_cache
+edit_cache/fast: edit_cache
+
+.PHONY : edit_cache/fast
+
+# The main all target
+all: cmake_check_build_system
+ cd /home/basic/workspace/code/go/vaproc/repository/memfd/build && $(CMAKE_COMMAND) -E cmake_progress_start /home/basic/workspace/code/go/vaproc/repository/memfd/build/CMakeFiles /home/basic/workspace/code/go/vaproc/repository/memfd/build/sample2/CMakeFiles/progress.marks
+ cd /home/basic/workspace/code/go/vaproc/repository/memfd/build && $(MAKE) -f CMakeFiles/Makefile2 sample2/all
+ $(CMAKE_COMMAND) -E cmake_progress_start /home/basic/workspace/code/go/vaproc/repository/memfd/build/CMakeFiles 0
+.PHONY : all
+
+# The main clean target
+clean:
+ cd /home/basic/workspace/code/go/vaproc/repository/memfd/build && $(MAKE) -f CMakeFiles/Makefile2 sample2/clean
+.PHONY : clean
+
+# The main clean target
+clean/fast: clean
+
+.PHONY : clean/fast
+
+# Prepare targets for installation.
+preinstall: all
+ cd /home/basic/workspace/code/go/vaproc/repository/memfd/build && $(MAKE) -f CMakeFiles/Makefile2 sample2/preinstall
+.PHONY : preinstall
+
+# Prepare targets for installation.
+preinstall/fast:
+ cd /home/basic/workspace/code/go/vaproc/repository/memfd/build && $(MAKE) -f CMakeFiles/Makefile2 sample2/preinstall
+.PHONY : preinstall/fast
+
+# clear depends
+depend:
+ cd /home/basic/workspace/code/go/vaproc/repository/memfd/build && $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 1
+.PHONY : depend
+
+# Convenience name for target.
+sample2/CMakeFiles/cli_snd.dir/rule:
+ cd /home/basic/workspace/code/go/vaproc/repository/memfd/build && $(MAKE) -f CMakeFiles/Makefile2 sample2/CMakeFiles/cli_snd.dir/rule
+.PHONY : sample2/CMakeFiles/cli_snd.dir/rule
+
+# Convenience name for target.
+cli_snd: sample2/CMakeFiles/cli_snd.dir/rule
+
+.PHONY : cli_snd
+
+# fast build rule for target.
+cli_snd/fast:
+ cd /home/basic/workspace/code/go/vaproc/repository/memfd/build && $(MAKE) -f sample2/CMakeFiles/cli_snd.dir/build.make sample2/CMakeFiles/cli_snd.dir/build
+.PHONY : cli_snd/fast
+
+# Convenience name for target.
+sample2/CMakeFiles/srv_rcv.dir/rule:
+ cd /home/basic/workspace/code/go/vaproc/repository/memfd/build && $(MAKE) -f CMakeFiles/Makefile2 sample2/CMakeFiles/srv_rcv.dir/rule
+.PHONY : sample2/CMakeFiles/srv_rcv.dir/rule
+
+# Convenience name for target.
+srv_rcv: sample2/CMakeFiles/srv_rcv.dir/rule
+
+.PHONY : srv_rcv
+
+# fast build rule for target.
+srv_rcv/fast:
+ cd /home/basic/workspace/code/go/vaproc/repository/memfd/build && $(MAKE) -f sample2/CMakeFiles/srv_rcv.dir/build.make sample2/CMakeFiles/srv_rcv.dir/build
+.PHONY : srv_rcv/fast
+
+# Convenience name for target.
+sample2/CMakeFiles/client.dir/rule:
+ cd /home/basic/workspace/code/go/vaproc/repository/memfd/build && $(MAKE) -f CMakeFiles/Makefile2 sample2/CMakeFiles/client.dir/rule
+.PHONY : sample2/CMakeFiles/client.dir/rule
+
+# Convenience name for target.
+client: sample2/CMakeFiles/client.dir/rule
+
+.PHONY : client
+
+# fast build rule for target.
+client/fast:
+ cd /home/basic/workspace/code/go/vaproc/repository/memfd/build && $(MAKE) -f sample2/CMakeFiles/client.dir/build.make sample2/CMakeFiles/client.dir/build
+.PHONY : client/fast
+
+# Convenience name for target.
+sample2/CMakeFiles/server.dir/rule:
+ cd /home/basic/workspace/code/go/vaproc/repository/memfd/build && $(MAKE) -f CMakeFiles/Makefile2 sample2/CMakeFiles/server.dir/rule
+.PHONY : sample2/CMakeFiles/server.dir/rule
+
+# Convenience name for target.
+server: sample2/CMakeFiles/server.dir/rule
+
+.PHONY : server
+
+# fast build rule for target.
+server/fast:
+ cd /home/basic/workspace/code/go/vaproc/repository/memfd/build && $(MAKE) -f sample2/CMakeFiles/server.dir/build.make sample2/CMakeFiles/server.dir/build
+.PHONY : server/fast
+
+cli_snd.o: cli_snd.cpp.o
+
+.PHONY : cli_snd.o
+
+# target to build an object file
+cli_snd.cpp.o:
+ cd /home/basic/workspace/code/go/vaproc/repository/memfd/build && $(MAKE) -f sample2/CMakeFiles/cli_snd.dir/build.make sample2/CMakeFiles/cli_snd.dir/cli_snd.cpp.o
+.PHONY : cli_snd.cpp.o
+
+cli_snd.i: cli_snd.cpp.i
+
+.PHONY : cli_snd.i
+
+# target to preprocess a source file
+cli_snd.cpp.i:
+ cd /home/basic/workspace/code/go/vaproc/repository/memfd/build && $(MAKE) -f sample2/CMakeFiles/cli_snd.dir/build.make sample2/CMakeFiles/cli_snd.dir/cli_snd.cpp.i
+.PHONY : cli_snd.cpp.i
+
+cli_snd.s: cli_snd.cpp.s
+
+.PHONY : cli_snd.s
+
+# target to generate assembly for a file
+cli_snd.cpp.s:
+ cd /home/basic/workspace/code/go/vaproc/repository/memfd/build && $(MAKE) -f sample2/CMakeFiles/cli_snd.dir/build.make sample2/CMakeFiles/cli_snd.dir/cli_snd.cpp.s
+.PHONY : cli_snd.cpp.s
+
+client.o: client.cpp.o
+
+.PHONY : client.o
+
+# target to build an object file
+client.cpp.o:
+ cd /home/basic/workspace/code/go/vaproc/repository/memfd/build && $(MAKE) -f sample2/CMakeFiles/client.dir/build.make sample2/CMakeFiles/client.dir/client.cpp.o
+.PHONY : client.cpp.o
+
+client.i: client.cpp.i
+
+.PHONY : client.i
+
+# target to preprocess a source file
+client.cpp.i:
+ cd /home/basic/workspace/code/go/vaproc/repository/memfd/build && $(MAKE) -f sample2/CMakeFiles/client.dir/build.make sample2/CMakeFiles/client.dir/client.cpp.i
+.PHONY : client.cpp.i
+
+client.s: client.cpp.s
+
+.PHONY : client.s
+
+# target to generate assembly for a file
+client.cpp.s:
+ cd /home/basic/workspace/code/go/vaproc/repository/memfd/build && $(MAKE) -f sample2/CMakeFiles/client.dir/build.make sample2/CMakeFiles/client.dir/client.cpp.s
+.PHONY : client.cpp.s
+
+server.o: server.cpp.o
+
+.PHONY : server.o
+
+# target to build an object file
+server.cpp.o:
+ cd /home/basic/workspace/code/go/vaproc/repository/memfd/build && $(MAKE) -f sample2/CMakeFiles/server.dir/build.make sample2/CMakeFiles/server.dir/server.cpp.o
+.PHONY : server.cpp.o
+
+server.i: server.cpp.i
+
+.PHONY : server.i
+
+# target to preprocess a source file
+server.cpp.i:
+ cd /home/basic/workspace/code/go/vaproc/repository/memfd/build && $(MAKE) -f sample2/CMakeFiles/server.dir/build.make sample2/CMakeFiles/server.dir/server.cpp.i
+.PHONY : server.cpp.i
+
+server.s: server.cpp.s
+
+.PHONY : server.s
+
+# target to generate assembly for a file
+server.cpp.s:
+ cd /home/basic/workspace/code/go/vaproc/repository/memfd/build && $(MAKE) -f sample2/CMakeFiles/server.dir/build.make sample2/CMakeFiles/server.dir/server.cpp.s
+.PHONY : server.cpp.s
+
+srv_recv.o: srv_recv.cpp.o
+
+.PHONY : srv_recv.o
+
+# target to build an object file
+srv_recv.cpp.o:
+ cd /home/basic/workspace/code/go/vaproc/repository/memfd/build && $(MAKE) -f sample2/CMakeFiles/srv_rcv.dir/build.make sample2/CMakeFiles/srv_rcv.dir/srv_recv.cpp.o
+.PHONY : srv_recv.cpp.o
+
+srv_recv.i: srv_recv.cpp.i
+
+.PHONY : srv_recv.i
+
+# target to preprocess a source file
+srv_recv.cpp.i:
+ cd /home/basic/workspace/code/go/vaproc/repository/memfd/build && $(MAKE) -f sample2/CMakeFiles/srv_rcv.dir/build.make sample2/CMakeFiles/srv_rcv.dir/srv_recv.cpp.i
+.PHONY : srv_recv.cpp.i
+
+srv_recv.s: srv_recv.cpp.s
+
+.PHONY : srv_recv.s
+
+# target to generate assembly for a file
+srv_recv.cpp.s:
+ cd /home/basic/workspace/code/go/vaproc/repository/memfd/build && $(MAKE) -f sample2/CMakeFiles/srv_rcv.dir/build.make sample2/CMakeFiles/srv_rcv.dir/srv_recv.cpp.s
+.PHONY : srv_recv.cpp.s
+
+# Help Target
+help:
+ @echo "The following are some of the valid targets for this Makefile:"
+ @echo "... all (the default if no target is provided)"
+ @echo "... clean"
+ @echo "... depend"
+ @echo "... rebuild_cache"
+ @echo "... edit_cache"
+ @echo "... cli_snd"
+ @echo "... srv_rcv"
+ @echo "... client"
+ @echo "... server"
+ @echo "... cli_snd.o"
+ @echo "... cli_snd.i"
+ @echo "... cli_snd.s"
+ @echo "... client.o"
+ @echo "... client.i"
+ @echo "... client.s"
+ @echo "... server.o"
+ @echo "... server.i"
+ @echo "... server.s"
+ @echo "... srv_recv.o"
+ @echo "... srv_recv.i"
+ @echo "... srv_recv.s"
+.PHONY : help
+
+
+
+#=============================================================================
+# Special targets to cleanup operation of make.
+
+# Special rule to run CMake to check the build system integrity.
+# No rule that depends on this can have commands that come from listfiles
+# because they might be regenerated.
+cmake_check_build_system:
+ cd /home/basic/workspace/code/go/vaproc/repository/memfd/build && $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0
+.PHONY : cmake_check_build_system
+
diff --git a/build/sample2/cli_snd b/build/sample2/cli_snd
new file mode 100755
index 0000000..5fab923
--- /dev/null
+++ b/build/sample2/cli_snd
Binary files differ
diff --git a/build/sample2/client b/build/sample2/client
new file mode 100755
index 0000000..165955e
--- /dev/null
+++ b/build/sample2/client
Binary files differ
diff --git a/build/sample2/cmake_install.cmake b/build/sample2/cmake_install.cmake
new file mode 100644
index 0000000..6b0bdef
--- /dev/null
+++ b/build/sample2/cmake_install.cmake
@@ -0,0 +1,39 @@
+# Install script for directory: /home/basic/workspace/code/go/vaproc/repository/memfd/sample2
+
+# 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()
+
diff --git a/build/sample2/server b/build/sample2/server
new file mode 100755
index 0000000..b5f90ac
--- /dev/null
+++ b/build/sample2/server
Binary files differ
diff --git a/build/sample2/srv_rcv b/build/sample2/srv_rcv
new file mode 100755
index 0000000..30e79f2
--- /dev/null
+++ b/build/sample2/srv_rcv
Binary files differ
diff --git a/build/src2/CMakeFiles/CMakeDirectoryInformation.cmake b/build/src2/CMakeFiles/CMakeDirectoryInformation.cmake
new file mode 100644
index 0000000..00d2501
--- /dev/null
+++ b/build/src2/CMakeFiles/CMakeDirectoryInformation.cmake
@@ -0,0 +1,16 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.13
+
+# Relative path conversion top directories.
+set(CMAKE_RELATIVE_PATH_TOP_SOURCE "/home/basic/workspace/code/go/vaproc/repository/memfd")
+set(CMAKE_RELATIVE_PATH_TOP_BINARY "/home/basic/workspace/code/go/vaproc/repository/memfd/build")
+
+# 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/build/src2/CMakeFiles/memfd_shm.dir/C.includecache b/build/src2/CMakeFiles/memfd_shm.dir/C.includecache
new file mode 100644
index 0000000..48c9e29
--- /dev/null
+++ b/build/src2/CMakeFiles/memfd_shm.dir/C.includecache
@@ -0,0 +1,84 @@
+#IncludeRegexLine: ^[ ]*[#%][ ]*(include|import)[ ]*[<"]([^">]+)([">])
+
+#IncludeRegexScan: ^.*$
+
+#IncludeRegexComplain: ^$
+
+#IncludeRegexTransform:
+
+/home/basic/workspace/code/go/vaproc/repository/memfd/src2/epollfd_shm.c
+epollfd_shm.h
+/home/basic/workspace/code/go/vaproc/repository/memfd/src2/epollfd_shm.h
+sys/types.h
+-
+sys/socket.h
+-
+sys/epoll.h
+-
+sys/un.h
+-
+poll.h
+-
+unistd.h
+-
+errno.h
+-
+stdio.h
+-
+stdlib.h
+-
+string.h
+-
+fcntl.h
+-
+transfd_shm.h
+/home/basic/workspace/code/go/vaproc/repository/memfd/src2/transfd_shm.h
+
+/home/basic/workspace/code/go/vaproc/repository/memfd/src2/epollfd_shm.h
+
+/home/basic/workspace/code/go/vaproc/repository/memfd/src2/memfd_shm.c
+memfd_shm.h
+/home/basic/workspace/code/go/vaproc/repository/memfd/src2/memfd_shm.h
+stdio.h
+-
+sys/types.h
+-
+sys/stat.h
+-
+unistd.h
+-
+sys/mman.h
+-
+sys/syscall.h
+-
+errno.h
+-
+fcntl.h
+-
+linux/memfd.h
+-
+stdlib.h
+-
+
+/home/basic/workspace/code/go/vaproc/repository/memfd/src2/memfd_shm.h
+
+/home/basic/workspace/code/go/vaproc/repository/memfd/src2/transfd_shm.c
+transfd_shm.h
+/home/basic/workspace/code/go/vaproc/repository/memfd/src2/transfd_shm.h
+stdio.h
+-
+stdlib.h
+-
+stddef.h
+-
+string.h
+-
+sys/types.h
+-
+sys/socket.h
+-
+errno.h
+-
+
+/home/basic/workspace/code/go/vaproc/repository/memfd/src2/transfd_shm.h
+
diff --git a/build/src2/CMakeFiles/memfd_shm.dir/DependInfo.cmake b/build/src2/CMakeFiles/memfd_shm.dir/DependInfo.cmake
new file mode 100644
index 0000000..2bb51a7
--- /dev/null
+++ b/build/src2/CMakeFiles/memfd_shm.dir/DependInfo.cmake
@@ -0,0 +1,22 @@
+# The set of languages for which implicit dependencies are needed:
+set(CMAKE_DEPENDS_LANGUAGES
+ "C"
+ )
+# The set of files for implicit dependencies of each language:
+set(CMAKE_DEPENDS_CHECK_C
+ "/home/basic/workspace/code/go/vaproc/repository/memfd/src2/epollfd_shm.c" "/home/basic/workspace/code/go/vaproc/repository/memfd/build/src2/CMakeFiles/memfd_shm.dir/epollfd_shm.c.o"
+ "/home/basic/workspace/code/go/vaproc/repository/memfd/src2/memfd_shm.c" "/home/basic/workspace/code/go/vaproc/repository/memfd/build/src2/CMakeFiles/memfd_shm.dir/memfd_shm.c.o"
+ "/home/basic/workspace/code/go/vaproc/repository/memfd/src2/transfd_shm.c" "/home/basic/workspace/code/go/vaproc/repository/memfd/build/src2/CMakeFiles/memfd_shm.dir/transfd_shm.c.o"
+ )
+set(CMAKE_C_COMPILER_ID "GNU")
+
+# The include file search paths:
+set(CMAKE_C_TARGET_INCLUDE_PATH
+ )
+
+# 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/build/src2/CMakeFiles/memfd_shm.dir/build.make b/build/src2/CMakeFiles/memfd_shm.dir/build.make
new file mode 100644
index 0000000..c0e80e0
--- /dev/null
+++ b/build/src2/CMakeFiles/memfd_shm.dir/build.make
@@ -0,0 +1,128 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.13
+
+# Delete rule output on recipe failure.
+.DELETE_ON_ERROR:
+
+
+#=============================================================================
+# Special targets provided by cmake.
+
+# Disable implicit rules so canonical targets will work.
+.SUFFIXES:
+
+
+# Remove some rules from gmake that .SUFFIXES does not remove.
+SUFFIXES =
+
+.SUFFIXES: .hpux_make_needs_suffix_list
+
+
+# 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/python2.7/dist-packages/cmake/data/bin/cmake
+
+# The command to remove a file.
+RM = /usr/local/lib/python2.7/dist-packages/cmake/data/bin/cmake -E remove -f
+
+# Escaping for special characters.
+EQUALS = =
+
+# The top-level source directory on which CMake was run.
+CMAKE_SOURCE_DIR = /home/basic/workspace/code/go/vaproc/repository/memfd
+
+# The top-level build directory on which CMake was run.
+CMAKE_BINARY_DIR = /home/basic/workspace/code/go/vaproc/repository/memfd/build
+
+# Include any dependencies generated for this target.
+include src2/CMakeFiles/memfd_shm.dir/depend.make
+
+# Include the progress variables for this target.
+include src2/CMakeFiles/memfd_shm.dir/progress.make
+
+# Include the compile flags for this target's objects.
+include src2/CMakeFiles/memfd_shm.dir/flags.make
+
+src2/CMakeFiles/memfd_shm.dir/epollfd_shm.c.o: src2/CMakeFiles/memfd_shm.dir/flags.make
+src2/CMakeFiles/memfd_shm.dir/epollfd_shm.c.o: ../src2/epollfd_shm.c
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/basic/workspace/code/go/vaproc/repository/memfd/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_1) "Building C object src2/CMakeFiles/memfd_shm.dir/epollfd_shm.c.o"
+ cd /home/basic/workspace/code/go/vaproc/repository/memfd/build/src2 && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -o CMakeFiles/memfd_shm.dir/epollfd_shm.c.o -c /home/basic/workspace/code/go/vaproc/repository/memfd/src2/epollfd_shm.c
+
+src2/CMakeFiles/memfd_shm.dir/epollfd_shm.c.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/memfd_shm.dir/epollfd_shm.c.i"
+ cd /home/basic/workspace/code/go/vaproc/repository/memfd/build/src2 && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/basic/workspace/code/go/vaproc/repository/memfd/src2/epollfd_shm.c > CMakeFiles/memfd_shm.dir/epollfd_shm.c.i
+
+src2/CMakeFiles/memfd_shm.dir/epollfd_shm.c.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/memfd_shm.dir/epollfd_shm.c.s"
+ cd /home/basic/workspace/code/go/vaproc/repository/memfd/build/src2 && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/basic/workspace/code/go/vaproc/repository/memfd/src2/epollfd_shm.c -o CMakeFiles/memfd_shm.dir/epollfd_shm.c.s
+
+src2/CMakeFiles/memfd_shm.dir/memfd_shm.c.o: src2/CMakeFiles/memfd_shm.dir/flags.make
+src2/CMakeFiles/memfd_shm.dir/memfd_shm.c.o: ../src2/memfd_shm.c
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/basic/workspace/code/go/vaproc/repository/memfd/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Building C object src2/CMakeFiles/memfd_shm.dir/memfd_shm.c.o"
+ cd /home/basic/workspace/code/go/vaproc/repository/memfd/build/src2 && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -o CMakeFiles/memfd_shm.dir/memfd_shm.c.o -c /home/basic/workspace/code/go/vaproc/repository/memfd/src2/memfd_shm.c
+
+src2/CMakeFiles/memfd_shm.dir/memfd_shm.c.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/memfd_shm.dir/memfd_shm.c.i"
+ cd /home/basic/workspace/code/go/vaproc/repository/memfd/build/src2 && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/basic/workspace/code/go/vaproc/repository/memfd/src2/memfd_shm.c > CMakeFiles/memfd_shm.dir/memfd_shm.c.i
+
+src2/CMakeFiles/memfd_shm.dir/memfd_shm.c.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/memfd_shm.dir/memfd_shm.c.s"
+ cd /home/basic/workspace/code/go/vaproc/repository/memfd/build/src2 && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/basic/workspace/code/go/vaproc/repository/memfd/src2/memfd_shm.c -o CMakeFiles/memfd_shm.dir/memfd_shm.c.s
+
+src2/CMakeFiles/memfd_shm.dir/transfd_shm.c.o: src2/CMakeFiles/memfd_shm.dir/flags.make
+src2/CMakeFiles/memfd_shm.dir/transfd_shm.c.o: ../src2/transfd_shm.c
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/basic/workspace/code/go/vaproc/repository/memfd/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_3) "Building C object src2/CMakeFiles/memfd_shm.dir/transfd_shm.c.o"
+ cd /home/basic/workspace/code/go/vaproc/repository/memfd/build/src2 && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -o CMakeFiles/memfd_shm.dir/transfd_shm.c.o -c /home/basic/workspace/code/go/vaproc/repository/memfd/src2/transfd_shm.c
+
+src2/CMakeFiles/memfd_shm.dir/transfd_shm.c.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/memfd_shm.dir/transfd_shm.c.i"
+ cd /home/basic/workspace/code/go/vaproc/repository/memfd/build/src2 && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/basic/workspace/code/go/vaproc/repository/memfd/src2/transfd_shm.c > CMakeFiles/memfd_shm.dir/transfd_shm.c.i
+
+src2/CMakeFiles/memfd_shm.dir/transfd_shm.c.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/memfd_shm.dir/transfd_shm.c.s"
+ cd /home/basic/workspace/code/go/vaproc/repository/memfd/build/src2 && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/basic/workspace/code/go/vaproc/repository/memfd/src2/transfd_shm.c -o CMakeFiles/memfd_shm.dir/transfd_shm.c.s
+
+# Object files for target memfd_shm
+memfd_shm_OBJECTS = \
+"CMakeFiles/memfd_shm.dir/epollfd_shm.c.o" \
+"CMakeFiles/memfd_shm.dir/memfd_shm.c.o" \
+"CMakeFiles/memfd_shm.dir/transfd_shm.c.o"
+
+# External object files for target memfd_shm
+memfd_shm_EXTERNAL_OBJECTS =
+
+src2/libmemfd_shm.so: src2/CMakeFiles/memfd_shm.dir/epollfd_shm.c.o
+src2/libmemfd_shm.so: src2/CMakeFiles/memfd_shm.dir/memfd_shm.c.o
+src2/libmemfd_shm.so: src2/CMakeFiles/memfd_shm.dir/transfd_shm.c.o
+src2/libmemfd_shm.so: src2/CMakeFiles/memfd_shm.dir/build.make
+src2/libmemfd_shm.so: src2/CMakeFiles/memfd_shm.dir/link.txt
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --bold --progress-dir=/home/basic/workspace/code/go/vaproc/repository/memfd/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_4) "Linking C shared library libmemfd_shm.so"
+ cd /home/basic/workspace/code/go/vaproc/repository/memfd/build/src2 && $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/memfd_shm.dir/link.txt --verbose=$(VERBOSE)
+
+# Rule to build all files generated by this target.
+src2/CMakeFiles/memfd_shm.dir/build: src2/libmemfd_shm.so
+
+.PHONY : src2/CMakeFiles/memfd_shm.dir/build
+
+src2/CMakeFiles/memfd_shm.dir/clean:
+ cd /home/basic/workspace/code/go/vaproc/repository/memfd/build/src2 && $(CMAKE_COMMAND) -P CMakeFiles/memfd_shm.dir/cmake_clean.cmake
+.PHONY : src2/CMakeFiles/memfd_shm.dir/clean
+
+src2/CMakeFiles/memfd_shm.dir/depend:
+ cd /home/basic/workspace/code/go/vaproc/repository/memfd/build && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /home/basic/workspace/code/go/vaproc/repository/memfd /home/basic/workspace/code/go/vaproc/repository/memfd/src2 /home/basic/workspace/code/go/vaproc/repository/memfd/build /home/basic/workspace/code/go/vaproc/repository/memfd/build/src2 /home/basic/workspace/code/go/vaproc/repository/memfd/build/src2/CMakeFiles/memfd_shm.dir/DependInfo.cmake --color=$(COLOR)
+.PHONY : src2/CMakeFiles/memfd_shm.dir/depend
+
diff --git a/build/src2/CMakeFiles/memfd_shm.dir/cmake_clean.cmake b/build/src2/CMakeFiles/memfd_shm.dir/cmake_clean.cmake
new file mode 100644
index 0000000..deacba3
--- /dev/null
+++ b/build/src2/CMakeFiles/memfd_shm.dir/cmake_clean.cmake
@@ -0,0 +1,12 @@
+file(REMOVE_RECURSE
+ "CMakeFiles/memfd_shm.dir/epollfd_shm.c.o"
+ "CMakeFiles/memfd_shm.dir/memfd_shm.c.o"
+ "CMakeFiles/memfd_shm.dir/transfd_shm.c.o"
+ "libmemfd_shm.pdb"
+ "libmemfd_shm.so"
+)
+
+# Per-language clean rules from dependency scanning.
+foreach(lang C)
+ include(CMakeFiles/memfd_shm.dir/cmake_clean_${lang}.cmake OPTIONAL)
+endforeach()
diff --git a/build/src2/CMakeFiles/memfd_shm.dir/depend.internal b/build/src2/CMakeFiles/memfd_shm.dir/depend.internal
new file mode 100644
index 0000000..e737bd8
--- /dev/null
+++ b/build/src2/CMakeFiles/memfd_shm.dir/depend.internal
@@ -0,0 +1,13 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.13
+
+src2/CMakeFiles/memfd_shm.dir/epollfd_shm.c.o
+ /home/basic/workspace/code/go/vaproc/repository/memfd/src2/epollfd_shm.c
+ /home/basic/workspace/code/go/vaproc/repository/memfd/src2/epollfd_shm.h
+ /home/basic/workspace/code/go/vaproc/repository/memfd/src2/transfd_shm.h
+src2/CMakeFiles/memfd_shm.dir/memfd_shm.c.o
+ /home/basic/workspace/code/go/vaproc/repository/memfd/src2/memfd_shm.c
+ /home/basic/workspace/code/go/vaproc/repository/memfd/src2/memfd_shm.h
+src2/CMakeFiles/memfd_shm.dir/transfd_shm.c.o
+ /home/basic/workspace/code/go/vaproc/repository/memfd/src2/transfd_shm.c
+ /home/basic/workspace/code/go/vaproc/repository/memfd/src2/transfd_shm.h
diff --git a/build/src2/CMakeFiles/memfd_shm.dir/depend.make b/build/src2/CMakeFiles/memfd_shm.dir/depend.make
new file mode 100644
index 0000000..d2d6f35
--- /dev/null
+++ b/build/src2/CMakeFiles/memfd_shm.dir/depend.make
@@ -0,0 +1,13 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.13
+
+src2/CMakeFiles/memfd_shm.dir/epollfd_shm.c.o: ../src2/epollfd_shm.c
+src2/CMakeFiles/memfd_shm.dir/epollfd_shm.c.o: ../src2/epollfd_shm.h
+src2/CMakeFiles/memfd_shm.dir/epollfd_shm.c.o: ../src2/transfd_shm.h
+
+src2/CMakeFiles/memfd_shm.dir/memfd_shm.c.o: ../src2/memfd_shm.c
+src2/CMakeFiles/memfd_shm.dir/memfd_shm.c.o: ../src2/memfd_shm.h
+
+src2/CMakeFiles/memfd_shm.dir/transfd_shm.c.o: ../src2/transfd_shm.c
+src2/CMakeFiles/memfd_shm.dir/transfd_shm.c.o: ../src2/transfd_shm.h
+
diff --git a/build/src2/CMakeFiles/memfd_shm.dir/flags.make b/build/src2/CMakeFiles/memfd_shm.dir/flags.make
new file mode 100644
index 0000000..efe5504
--- /dev/null
+++ b/build/src2/CMakeFiles/memfd_shm.dir/flags.make
@@ -0,0 +1,10 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.13
+
+# compile C with /usr/bin/cc
+C_FLAGS = -fPIC -g -O0
+
+C_DEFINES = -Dmemfd_shm_EXPORTS
+
+C_INCLUDES =
+
diff --git a/build/src2/CMakeFiles/memfd_shm.dir/link.txt b/build/src2/CMakeFiles/memfd_shm.dir/link.txt
new file mode 100644
index 0000000..14c2c30
--- /dev/null
+++ b/build/src2/CMakeFiles/memfd_shm.dir/link.txt
@@ -0,0 +1 @@
+/usr/bin/cc -fPIC -shared -Wl,-soname,libmemfd_shm.so -o libmemfd_shm.so CMakeFiles/memfd_shm.dir/epollfd_shm.c.o CMakeFiles/memfd_shm.dir/memfd_shm.c.o CMakeFiles/memfd_shm.dir/transfd_shm.c.o
diff --git a/build/src2/CMakeFiles/memfd_shm.dir/progress.make b/build/src2/CMakeFiles/memfd_shm.dir/progress.make
new file mode 100644
index 0000000..245cd69
--- /dev/null
+++ b/build/src2/CMakeFiles/memfd_shm.dir/progress.make
@@ -0,0 +1,5 @@
+CMAKE_PROGRESS_1 = 5
+CMAKE_PROGRESS_2 = 6
+CMAKE_PROGRESS_3 = 7
+CMAKE_PROGRESS_4 = 8
+
diff --git a/build/src2/CMakeFiles/progress.marks b/build/src2/CMakeFiles/progress.marks
new file mode 100644
index 0000000..b8626c4
--- /dev/null
+++ b/build/src2/CMakeFiles/progress.marks
@@ -0,0 +1 @@
+4
diff --git a/build/src2/Makefile b/build/src2/Makefile
new file mode 100644
index 0000000..a1334d9
--- /dev/null
+++ b/build/src2/Makefile
@@ -0,0 +1,240 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.13
+
+# Default target executed when no arguments are given to make.
+default_target: all
+
+.PHONY : default_target
+
+# Allow only one "make -f Makefile2" at a time, but pass parallelism.
+.NOTPARALLEL:
+
+
+#=============================================================================
+# Special targets provided by cmake.
+
+# Disable implicit rules so canonical targets will work.
+.SUFFIXES:
+
+
+# Remove some rules from gmake that .SUFFIXES does not remove.
+SUFFIXES =
+
+.SUFFIXES: .hpux_make_needs_suffix_list
+
+
+# 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/python2.7/dist-packages/cmake/data/bin/cmake
+
+# The command to remove a file.
+RM = /usr/local/lib/python2.7/dist-packages/cmake/data/bin/cmake -E remove -f
+
+# Escaping for special characters.
+EQUALS = =
+
+# The top-level source directory on which CMake was run.
+CMAKE_SOURCE_DIR = /home/basic/workspace/code/go/vaproc/repository/memfd
+
+# The top-level build directory on which CMake was run.
+CMAKE_BINARY_DIR = /home/basic/workspace/code/go/vaproc/repository/memfd/build
+
+#=============================================================================
+# Targets provided globally by CMake.
+
+# Special rule for the target rebuild_cache
+rebuild_cache:
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running CMake to regenerate build system..."
+ /usr/local/lib/python2.7/dist-packages/cmake/data/bin/cmake -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR)
+.PHONY : rebuild_cache
+
+# Special rule for the target rebuild_cache
+rebuild_cache/fast: rebuild_cache
+
+.PHONY : rebuild_cache/fast
+
+# Special rule for the target edit_cache
+edit_cache:
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "No interactive CMake dialog available..."
+ /usr/local/lib/python2.7/dist-packages/cmake/data/bin/cmake -E echo No\ interactive\ CMake\ dialog\ available.
+.PHONY : edit_cache
+
+# Special rule for the target edit_cache
+edit_cache/fast: edit_cache
+
+.PHONY : edit_cache/fast
+
+# The main all target
+all: cmake_check_build_system
+ cd /home/basic/workspace/code/go/vaproc/repository/memfd/build && $(CMAKE_COMMAND) -E cmake_progress_start /home/basic/workspace/code/go/vaproc/repository/memfd/build/CMakeFiles /home/basic/workspace/code/go/vaproc/repository/memfd/build/src2/CMakeFiles/progress.marks
+ cd /home/basic/workspace/code/go/vaproc/repository/memfd/build && $(MAKE) -f CMakeFiles/Makefile2 src2/all
+ $(CMAKE_COMMAND) -E cmake_progress_start /home/basic/workspace/code/go/vaproc/repository/memfd/build/CMakeFiles 0
+.PHONY : all
+
+# The main clean target
+clean:
+ cd /home/basic/workspace/code/go/vaproc/repository/memfd/build && $(MAKE) -f CMakeFiles/Makefile2 src2/clean
+.PHONY : clean
+
+# The main clean target
+clean/fast: clean
+
+.PHONY : clean/fast
+
+# Prepare targets for installation.
+preinstall: all
+ cd /home/basic/workspace/code/go/vaproc/repository/memfd/build && $(MAKE) -f CMakeFiles/Makefile2 src2/preinstall
+.PHONY : preinstall
+
+# Prepare targets for installation.
+preinstall/fast:
+ cd /home/basic/workspace/code/go/vaproc/repository/memfd/build && $(MAKE) -f CMakeFiles/Makefile2 src2/preinstall
+.PHONY : preinstall/fast
+
+# clear depends
+depend:
+ cd /home/basic/workspace/code/go/vaproc/repository/memfd/build && $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 1
+.PHONY : depend
+
+# Convenience name for target.
+src2/CMakeFiles/memfd_shm.dir/rule:
+ cd /home/basic/workspace/code/go/vaproc/repository/memfd/build && $(MAKE) -f CMakeFiles/Makefile2 src2/CMakeFiles/memfd_shm.dir/rule
+.PHONY : src2/CMakeFiles/memfd_shm.dir/rule
+
+# Convenience name for target.
+memfd_shm: src2/CMakeFiles/memfd_shm.dir/rule
+
+.PHONY : memfd_shm
+
+# fast build rule for target.
+memfd_shm/fast:
+ cd /home/basic/workspace/code/go/vaproc/repository/memfd/build && $(MAKE) -f src2/CMakeFiles/memfd_shm.dir/build.make src2/CMakeFiles/memfd_shm.dir/build
+.PHONY : memfd_shm/fast
+
+epollfd_shm.o: epollfd_shm.c.o
+
+.PHONY : epollfd_shm.o
+
+# target to build an object file
+epollfd_shm.c.o:
+ cd /home/basic/workspace/code/go/vaproc/repository/memfd/build && $(MAKE) -f src2/CMakeFiles/memfd_shm.dir/build.make src2/CMakeFiles/memfd_shm.dir/epollfd_shm.c.o
+.PHONY : epollfd_shm.c.o
+
+epollfd_shm.i: epollfd_shm.c.i
+
+.PHONY : epollfd_shm.i
+
+# target to preprocess a source file
+epollfd_shm.c.i:
+ cd /home/basic/workspace/code/go/vaproc/repository/memfd/build && $(MAKE) -f src2/CMakeFiles/memfd_shm.dir/build.make src2/CMakeFiles/memfd_shm.dir/epollfd_shm.c.i
+.PHONY : epollfd_shm.c.i
+
+epollfd_shm.s: epollfd_shm.c.s
+
+.PHONY : epollfd_shm.s
+
+# target to generate assembly for a file
+epollfd_shm.c.s:
+ cd /home/basic/workspace/code/go/vaproc/repository/memfd/build && $(MAKE) -f src2/CMakeFiles/memfd_shm.dir/build.make src2/CMakeFiles/memfd_shm.dir/epollfd_shm.c.s
+.PHONY : epollfd_shm.c.s
+
+memfd_shm.o: memfd_shm.c.o
+
+.PHONY : memfd_shm.o
+
+# target to build an object file
+memfd_shm.c.o:
+ cd /home/basic/workspace/code/go/vaproc/repository/memfd/build && $(MAKE) -f src2/CMakeFiles/memfd_shm.dir/build.make src2/CMakeFiles/memfd_shm.dir/memfd_shm.c.o
+.PHONY : memfd_shm.c.o
+
+memfd_shm.i: memfd_shm.c.i
+
+.PHONY : memfd_shm.i
+
+# target to preprocess a source file
+memfd_shm.c.i:
+ cd /home/basic/workspace/code/go/vaproc/repository/memfd/build && $(MAKE) -f src2/CMakeFiles/memfd_shm.dir/build.make src2/CMakeFiles/memfd_shm.dir/memfd_shm.c.i
+.PHONY : memfd_shm.c.i
+
+memfd_shm.s: memfd_shm.c.s
+
+.PHONY : memfd_shm.s
+
+# target to generate assembly for a file
+memfd_shm.c.s:
+ cd /home/basic/workspace/code/go/vaproc/repository/memfd/build && $(MAKE) -f src2/CMakeFiles/memfd_shm.dir/build.make src2/CMakeFiles/memfd_shm.dir/memfd_shm.c.s
+.PHONY : memfd_shm.c.s
+
+transfd_shm.o: transfd_shm.c.o
+
+.PHONY : transfd_shm.o
+
+# target to build an object file
+transfd_shm.c.o:
+ cd /home/basic/workspace/code/go/vaproc/repository/memfd/build && $(MAKE) -f src2/CMakeFiles/memfd_shm.dir/build.make src2/CMakeFiles/memfd_shm.dir/transfd_shm.c.o
+.PHONY : transfd_shm.c.o
+
+transfd_shm.i: transfd_shm.c.i
+
+.PHONY : transfd_shm.i
+
+# target to preprocess a source file
+transfd_shm.c.i:
+ cd /home/basic/workspace/code/go/vaproc/repository/memfd/build && $(MAKE) -f src2/CMakeFiles/memfd_shm.dir/build.make src2/CMakeFiles/memfd_shm.dir/transfd_shm.c.i
+.PHONY : transfd_shm.c.i
+
+transfd_shm.s: transfd_shm.c.s
+
+.PHONY : transfd_shm.s
+
+# target to generate assembly for a file
+transfd_shm.c.s:
+ cd /home/basic/workspace/code/go/vaproc/repository/memfd/build && $(MAKE) -f src2/CMakeFiles/memfd_shm.dir/build.make src2/CMakeFiles/memfd_shm.dir/transfd_shm.c.s
+.PHONY : transfd_shm.c.s
+
+# Help Target
+help:
+ @echo "The following are some of the valid targets for this Makefile:"
+ @echo "... all (the default if no target is provided)"
+ @echo "... clean"
+ @echo "... depend"
+ @echo "... rebuild_cache"
+ @echo "... edit_cache"
+ @echo "... memfd_shm"
+ @echo "... epollfd_shm.o"
+ @echo "... epollfd_shm.i"
+ @echo "... epollfd_shm.s"
+ @echo "... memfd_shm.o"
+ @echo "... memfd_shm.i"
+ @echo "... memfd_shm.s"
+ @echo "... transfd_shm.o"
+ @echo "... transfd_shm.i"
+ @echo "... transfd_shm.s"
+.PHONY : help
+
+
+
+#=============================================================================
+# Special targets to cleanup operation of make.
+
+# Special rule to run CMake to check the build system integrity.
+# No rule that depends on this can have commands that come from listfiles
+# because they might be regenerated.
+cmake_check_build_system:
+ cd /home/basic/workspace/code/go/vaproc/repository/memfd/build && $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0
+.PHONY : cmake_check_build_system
+
diff --git a/build/src2/cmake_install.cmake b/build/src2/cmake_install.cmake
new file mode 100644
index 0000000..22a4764
--- /dev/null
+++ b/build/src2/cmake_install.cmake
@@ -0,0 +1,39 @@
+# Install script for directory: /home/basic/workspace/code/go/vaproc/repository/memfd/src2
+
+# 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()
+
diff --git a/sample2/CMakeLists.txt b/sample2/CMakeLists.txt
new file mode 100644
index 0000000..12bc1c4
--- /dev/null
+++ b/sample2/CMakeLists.txt
@@ -0,0 +1,19 @@
+cmake_minimum_required(VERSION 3.9)
+file(GLOB SOURCES *.c)
+
+add_compile_options(-g -O0 -std=c++11)
+
+include_directories(${CMAKE_SOURCE_DIR})
+
+# add binary
+add_executable(server server.cpp)
+add_executable(client client.cpp)
+
+add_executable(srv_rcv srv_recv.cpp)
+add_executable(cli_snd cli_snd.cpp)
+
+target_link_libraries(server PRIVATE memfd_shm pthread)
+target_link_libraries(client PRIVATE memfd_shm pthread)
+
+target_link_libraries(srv_rcv PRIVATE memfd_shm pthread)
+target_link_libraries(cli_snd PRIVATE memfd_shm pthread)
diff --git a/sample2/cli_snd.cpp b/sample2/cli_snd.cpp
new file mode 100644
index 0000000..16c1a5d
--- /dev/null
+++ b/sample2/cli_snd.cpp
@@ -0,0 +1,81 @@
+#include <stdio.h>
+#include <unistd.h>
+
+#include <sys/types.h>
+#include <sys/stat.h>
+
+#include "src2/shmh.h"
+
+#include <chrono>
+
+static int idx = 0;
+static int get_memfd(void* args, struct fd_msg* msg){
+ int fd = basic_shm_create("shm", 128*1024*1024);
+ if (fd > 0){
+ // struct stat st;
+ // if (fstat (fd, &st))
+ // {
+ // return -1;
+ // }
+ // printf("st size %ld\n", st.st_size);
+ if (msg) msg->fd = fd;
+
+ unsigned char* addr;
+ if (basic_shm_mmap(fd, &addr) > 0){
+ sprintf((char*)addr, "get_memfd set msg %d", idx++);
+ basic_shm_unmmap(fd, &addr);
+ }
+ return fd;
+ }
+ return -1;
+}
+
+int main(int argc, char const *argv[])
+{
+ int sock = unix_domain_client_fd("/tmp/memfd_shm.sock", 0);
+ if (sock <= 0){
+ printf("unix_domain_client_fd failed\n");
+ return -1;
+ }
+
+ int count = 0;
+
+ using namespace std::chrono;
+ auto s = steady_clock::now();
+ auto e = s;
+
+ while (true) {
+
+ int fd = get_memfd(NULL, NULL);
+ if (fd < 0){
+ printf("memfd %d no exist\n", fd);
+ continue;
+ }
+ // struct stat st;
+ // if (fstat (fd, &st))
+ // {
+ // return -1;
+ // }
+ // printf("st size %ld\n", st.st_size);
+
+ count++;
+
+ int ret = sendfd(sock, &fd, 1);
+
+ close(fd);
+
+ usleep(2);
+
+ // e = steady_clock::now();
+ // if (duration_cast<milliseconds>(e-s).count() > 1000){
+ // s = e;
+ // printf("======>> around 1 s recv count %d\n", count);
+ // _exit(0);
+ // count = 0;
+ // }
+ }
+
+ close(sock);
+
+ return 0;
+}
\ No newline at end of file
diff --git a/sample2/client.cpp b/sample2/client.cpp
new file mode 100644
index 0000000..8f44fcf
--- /dev/null
+++ b/sample2/client.cpp
@@ -0,0 +1,66 @@
+#include <cstring>
+#include <stdio.h>
+#include <unistd.h>
+
+#include <sys/types.h>
+#include <sys/stat.h>
+
+#include "src2/shmh.h"
+
+#include <chrono>
+
+int main(int argc, char const *argv[])
+{
+ int sock = unix_domain_client_fd("/tmp/memfd_shm.sock", 0);
+ if (sock <= 0){
+ printf("unix_domain_client_fd failed\n");
+ return -1;
+ }
+
+ int count = 0;
+
+ using namespace std::chrono;
+ auto s = steady_clock::now();
+ auto e = s;
+
+ while (true) {
+
+ int recvfds[16];
+ memset(recvfds, 0, sizeof(int)*16);
+ int fd = recvfd(sock, recvfds, 16);
+ if (fd < 0){
+ printf("memfd %d no exist\n", fd);
+ continue;
+ }
+ // struct stat st;
+ // if (fstat (fd, &st))
+ // {
+ // return -1;
+ // }
+ // printf("st size %ld\n", st.st_size);
+
+ count++;
+
+ unsigned char* addr;
+ int len = basic_shm_mmap(recvfds[0], &addr);
+ if (len <= 0) break;
+ printf("======>> mmap len %d msg %s\n", len, addr);
+ basic_shm_unmmap(fd, &addr);
+ for (int i = 0; i < 16; i++) {
+ close(recvfds[i]);
+ }
+ usleep(20000);
+
+ // e = steady_clock::now();
+ // if (duration_cast<milliseconds>(e-s).count() > 1000){
+ // s = e;
+ // printf("======>> around 1 s recv count %d\n", count);
+ // _exit(0);
+ // count = 0;
+ // }
+ }
+
+ close(sock);
+
+ return 0;
+}
\ No newline at end of file
diff --git a/sample2/server.cpp b/sample2/server.cpp
new file mode 100644
index 0000000..0fdc343
--- /dev/null
+++ b/sample2/server.cpp
@@ -0,0 +1,52 @@
+#include <stdio.h>
+
+#include "src2/shmh.h"
+#include <sys/types.h>
+#include <sys/stat.h>
+
+#include <thread>
+#include <unistd.h>
+using namespace std;
+
+static int idx = 0;
+static int get_memfd(void* args, struct fd_msg* msg){
+ int fd = basic_shm_create("shm", 128*1024*1024);
+ if (fd > 0){
+ // struct stat st;
+ // if (fstat (fd, &st))
+ // {
+ // return -1;
+ // }
+ // printf("st size %ld\n", st.st_size);
+
+ msg->fd = fd;
+ unsigned char* addr;
+ if (basic_shm_mmap(fd, &addr) > 0){
+ sprintf((char*)addr, "get_memfd set msg %d", idx++);
+ basic_shm_unmmap(fd, &addr);
+ }
+ return fd;
+ }
+ return 0;
+}
+
+int main(int argc, char const *argv[])
+{
+ int sock = unix_domain_server_fd("/tmp/memfd_shm.sock", 1);
+ if (sock < 0){
+ printf("unix_domain_server_fd failed\n");
+ return 0;
+ }
+
+ thread t([&sock]{
+ // epoll_loop(sock, get_memfd, NULL, NULL);
+ // poll_loop(sock, get_memfd, NULL, NULL);
+ // select_loop(sock, get_memfd, NULL, NULL);
+ simple_loop(sock, get_memfd, NULL, NULL);
+ });
+
+ t.join();
+ close(sock);
+
+ return 0;
+}
\ No newline at end of file
diff --git a/sample2/srv_recv.cpp b/sample2/srv_recv.cpp
new file mode 100644
index 0000000..c6951a2
--- /dev/null
+++ b/sample2/srv_recv.cpp
@@ -0,0 +1,53 @@
+#include <stdio.h>
+
+#include "src2/shmh.h"
+#include <sys/types.h>
+#include <sys/stat.h>
+
+#include <thread>
+#include <unistd.h>
+using namespace std;
+
+static int handle_memfd(void* args, struct fd_msg* msg){
+ int fd = msg->fd;
+ if (fd > 0){
+ // struct stat st;
+ // if (fstat (fd, &st))
+ // {
+ // return -1;
+ // }
+ // printf("st size %ld\n", st.st_size);
+
+ unsigned char* addr;
+ int len = basic_shm_mmap(fd, &addr);
+ if (len <= 0) {
+ printf("======>> basic_shm_mmap failed\n");
+ return -1;
+ }
+ printf("======>> mmap len %d msg %s\n", len, addr);
+ basic_shm_unmmap(fd, &addr);
+ basic_shm_close(fd);
+ return fd;
+ }
+ return 0;
+}
+
+int main(int argc, char const *argv[])
+{
+ int sock = unix_domain_server_fd("/tmp/memfd_shm.sock", 1);
+ if (sock < 0){
+ printf("unix_domain_server_fd failed\n");
+ return 0;
+ }
+
+ thread t([&sock]{
+ epoll_loop(sock, NULL, handle_memfd, NULL, NULL);
+ // poll_loop(sock, NULL, handle_memfd, NULL, NULL);
+ // select_loop(sock, NULL, handle_memfd, NULL, NULL);
+ });
+
+ t.join();
+ close(sock);
+
+ return 0;
+}
\ No newline at end of file
diff --git a/src2/CMakeLists.txt b/src2/CMakeLists.txt
new file mode 100644
index 0000000..7e0ffbb
--- /dev/null
+++ b/src2/CMakeLists.txt
@@ -0,0 +1,12 @@
+cmake_minimum_required(VERSION 3.9)
+
+file(GLOB SOURCES *.c)
+
+add_compile_options(-g -O0)
+# add library
+add_library(memfd_shm SHARED ${SOURCES})
+# target_link_libraries(memfd PRIVATE pthread)
+# add_library(libipc_server SHARED ipc_msg.c ipc_server_lib.c)
+# add_library(libipc_client SHARED ipc_msg.c ipc_client_lib.c)
+
+
diff --git a/src2/epollfd_shm.c b/src2/epollfd_shm.c
new file mode 100644
index 0000000..e545d13
--- /dev/null
+++ b/src2/epollfd_shm.c
@@ -0,0 +1,604 @@
+#include "epollfd_shm.h"
+
+#include <sys/types.h>
+#include <sys/socket.h>
+#include <sys/epoll.h>
+#include <sys/un.h>
+#include <poll.h>
+#include <unistd.h>
+#include <errno.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <fcntl.h>
+
+#include "transfd_shm.h"
+
+static void setfdnonblock(int fd, int nonblock){
+ int flags = fcntl(fd, F_GETFL);
+ if (flags < 0) return;
+
+ if (nonblock) {
+ flags |= O_NONBLOCK;
+ } else {
+ flags &= ~O_NONBLOCK;
+ }
+ if (fcntl(fd, F_SETFL, flags) < 0){
+ printf("setfdnonblock %s failed %d -> %s\n", nonblock ? "nonblock" : "block", errno, strerror(errno));
+ }
+}
+
+static inline int fdnonblock(int fd){
+ int flags = fcntl(fd, F_GETFL);
+ if (flags < 0) return 0;
+ return flags & O_NONBLOCK;
+}
+
+int unix_domain_server_fd(const char* path, int nonblock){
+ struct sockaddr_un addr;
+ if (strlen(path) > sizeof(addr.sun_path) -1){
+ printf("unix_domain_server_fd path too long, must less than %lu\n", sizeof(addr.sun_path));
+ return -1;
+ }
+
+ memset(&addr, 0, sizeof(addr));
+ addr.sun_family = AF_UNIX;
+ memcpy(addr.sun_path, path, strlen(path));
+
+ int fd = socket(AF_UNIX, SOCK_SEQPACKET|SOCK_CLOEXEC, 0);
+ if (fd < 0) {
+ printf("unix_domain_server_fd failed %d -> %s\n", errno, strerror(errno));
+ return fd;
+ }
+
+ unlink(path);
+
+ int ret = bind(fd, (const struct sockaddr *)&addr, sizeof(addr));
+ if (ret != 0){
+ close(fd);
+ printf("unix_domain_server_fd bind failed %d -> %s\n", errno, strerror(errno));
+ return ret;
+ }
+
+ ret = listen(fd, 128);
+ if (ret != 0){
+ printf("unix_domain_server_fd listen failed %d -> %s\n", errno, strerror(errno));
+ close(fd);
+ return ret;
+ }
+
+ if (nonblock) setfdnonblock(fd, 1);
+
+ return fd;
+}
+
+int unix_domain_client_fd(const char *path, int nonblock){
+ struct sockaddr_un addr;
+ memset(&addr, 0, sizeof(addr));
+ addr.sun_family = AF_UNIX;
+ memcpy(addr.sun_path, path, strlen(path));
+
+ int fd = socket(PF_UNIX, SOCK_SEQPACKET|SOCK_CLOEXEC, 0);
+ if (fd < 0){
+ printf("unix_domain_client_fd socket failed %d -> %s\n", errno, strerror(errno));
+ return fd;
+ }
+
+ int ret = connect(fd, (const struct sockaddr *)&addr, sizeof(addr));
+ if (ret != 0){
+ printf("unix_domain_client_fd connect failed %d -> %s\n", errno, strerror(errno));
+ close(fd);
+ return ret;
+ }
+
+ if (nonblock) setfdnonblock(fd, 1);
+
+ return fd;
+}
+
+static int epoll_init(int fd, int flags){
+ int epollfd = epoll_create1(EPOLL_CLOEXEC);
+ if (epollfd < 0){
+ printf("epoll_loop_server create epollfd failed %d -> %s", errno, strerror(errno));
+ return -1;
+ }
+
+ struct epoll_event event;
+ event.events = flags;
+ event.data.fd = fd;
+
+ if (epoll_ctl(epollfd, EPOLL_CTL_ADD, fd, &event) < 0){
+ printf("epoll_loop_server add failed %d -> %s\n", errno, strerror(errno));
+ return -1;
+ }
+ return epollfd;
+}
+
+static void update_client(int clients[], int max, int newFd, int oldFd){
+ for(int i = 0; i < max; i++){
+ if (clients[i] == oldFd){
+ clients[i] = newFd;
+ break;
+ }
+ }
+}
+
+static int no_quit(void* args){
+ return 0;
+}
+
+// 璁や负鏈�澶氫笉浼氳秴杩�256涓鎴风杩炴帴
+static const int maxConns = 256;
+// 璁や负鏈�澶氫竴娆′紶杈撶殑fd涓嶈秴杩�16涓�
+static const int maxMemFds = 16;
+
+static int copyFds(void* args, cbGetData fget, int memFds[]) {
+ struct fd_msg msg;
+ memset(&msg, 0, sizeof(msg));
+ int memFds_len = 0;
+ if (fget(args, &msg)){
+ if (msg.data) {
+ memcpy(memFds, msg.data, sizeof(int) * msg.len);
+ memFds_len = msg.len;
+ } else {
+ memFds[0] = msg.fd;
+ memFds_len = 1;
+ }
+ }
+ return memFds_len;
+}
+
+static void handleFds(void* args, cbHandleData fhandle, int memFds[], int fds) {
+ struct fd_msg msg = {};
+ int fd_len = fds > maxMemFds ? maxMemFds : fds;
+ if (fd_len > 1) {
+ msg.data = memFds;
+ msg.len = fd_len;
+ } else {
+ msg.fd = memFds[0];
+ }
+ fhandle(args, &msg);
+}
+
+int epoll_loop(int listenfd, cbGetData fget, cbHandleData fhandle, cbQuit fquit, void* args){
+ if (!fget && !fhandle) {
+ printf("epoll At Leaset MUST be a sender or receiver\n");
+ return -1;
+ }
+ int is_sender = fget ? 1 : 0;
+ int is_recver = fhandle ? 1 : 0;
+
+ struct sockaddr_un connaddr;
+ socklen_t len = sizeof(connaddr);
+
+ cbQuit fq = no_quit;
+ if (fquit) fq = fquit;
+
+ int clients[maxConns];
+ memset(clients, -1, maxConns * sizeof(int));
+
+ int ET = 0;
+
+ int epollfd = epoll_init(listenfd, EPOLLIN|ET);
+ if (epollfd == -1){
+ return epollfd;
+ }
+
+ int listenfd_nonblock = fdnonblock(listenfd);
+
+ while (!fq(args)) {
+ struct epoll_event events[maxConns];
+ memset(events, 0, maxConns * sizeof(struct epoll_event));
+ int nready = epoll_wait(epollfd, events, maxConns, 3000);
+ if (nready == -1){
+ printf("epoll_loop wait failed %d -> %s\n", errno, strerror(errno));
+ break;
+ }
+ if (nready == 0){
+ // timeout
+ continue;
+ }
+
+ // 鍙戦�佺粰鎵�鏈夊綋鍓嶅凡杩炴帴鐩稿悓鐨刦d
+ int memFds[maxMemFds];
+ memset(memFds, -1, sizeof(int) * maxMemFds);
+ int memFds_len = 0;
+ if (is_sender){
+ memFds_len = copyFds(args, fget, memFds);
+ }
+
+ for(int i = 0; i < nready; i++){
+ if (events[i].data.fd == listenfd){
+ int conn;
+ if (listenfd_nonblock){
+ while((conn = accept(listenfd, (struct sockaddr *)&connaddr, &len)) > 0){
+ setfdnonblock(conn, 1);
+ struct epoll_event ev;
+ ev.data.fd = conn;
+ ev.events = EPOLLRDHUP|ET;
+ if (is_sender) ev.events |= EPOLLOUT;
+ if (is_recver) ev.events |= EPOLLIN;
+ epoll_ctl(epollfd, EPOLL_CTL_ADD, conn, &ev);
+ update_client(clients, maxConns, conn, -1);
+ }
+ } else{
+ conn = accept(listenfd, (struct sockaddr *)&connaddr, &len);
+ if (conn < 0){
+ printf("epoll_loop accept failed %d -> %s\n", errno, strerror(errno));
+ continue;
+ }
+ setfdnonblock(conn, 1);
+ struct epoll_event ev;
+ ev.data.fd = conn;
+ ev.events = EPOLLRDHUP|ET;
+ if (is_sender) ev.events |= EPOLLOUT;
+ if (is_recver) ev.events |= EPOLLIN;
+ epoll_ctl(epollfd, EPOLL_CTL_ADD, conn, &ev);
+ update_client(clients, maxConns, conn, -1);
+ }
+ } else if (events[i].events & EPOLLIN){
+ // 姝ゅ搴旇娌℃湁鐢�
+ int conn = events[i].data.fd;
+ if (events[i].events & EPOLLRDHUP){
+ close(conn);
+ struct epoll_event ev = events[i];
+ epoll_ctl(epollfd, EPOLL_CTL_DEL, conn, &ev);
+ update_client(clients, maxConns, -1, conn);
+ continue;
+ }
+
+ if (conn < 0) continue;
+ int recvFds[maxMemFds];
+ memset(recvFds, -1, sizeof(int) * maxMemFds);
+ int fds = recvfd(conn, recvFds, maxMemFds);
+ if (fds < 0){
+ printf("epoll_loop recvfd failed\n");
+ continue;
+ }else if (fds == 0){
+ close(conn);
+ struct epoll_event ev = events[i];
+ epoll_ctl(epollfd, EPOLL_CTL_DEL, conn, &ev);
+ update_client(clients, maxConns, -1, conn);
+ continue;
+ } else if (fds > maxMemFds){
+ printf("epoll_loop recvfd too much! max recv fds %d\n", maxMemFds);
+ }
+
+ handleFds(args, fhandle, recvFds, fds);
+
+ } else if (events[i].events & EPOLLOUT){
+ int conn = events[i].data.fd;
+ if (events[i].events & EPOLLRDHUP){
+ close(conn);
+ struct epoll_event ev = events[i];
+ epoll_ctl(epollfd, EPOLL_CTL_DEL, conn, &ev);
+ update_client(clients, maxConns, -1, conn);
+ continue;
+ }
+
+ if (conn < 0) continue;
+ if (memFds_len > 0){
+ // 浠呭彂閫佷竴涓� sizeof(memFd)
+ int ret = sendfd(conn, memFds, memFds_len);
+ if (ret == -1){
+ printf("epoll_loop sendfd %d client in %d failed\n", i, nready);
+ } else if (ret == 0){
+ close(conn);
+ struct epoll_event ev = events[i];
+ epoll_ctl(epollfd, EPOLL_CTL_DEL, conn, &ev);
+ update_client(clients, maxConns, -1, conn);
+ continue;
+ }
+ }
+ }
+ }
+ for (int i = 0; i < memFds_len; i++) {
+ close(memFds[i]);
+ }
+ }
+ for(int i = 0; i < maxConns; i++){
+ if (clients[i] != -1)
+ close(clients[i]);
+ }
+ close(epollfd);
+ return 0;
+}
+
+int poll_loop(int listenfd, cbGetData fget, cbHandleData fhandle, cbQuit fquit, void* args){
+ if (!fget && !fhandle) {
+ printf("poll At Leaset MUST be a sender or receiver\n");
+ return -1;
+ }
+ int is_sender = fget ? 1 : 0;
+ int is_recver = fhandle ? 1 : 0;
+
+ struct sockaddr_un connaddr;
+ socklen_t len = sizeof(connaddr);
+
+ cbQuit fq = no_quit;
+ if (fquit) fq = fquit;
+
+ struct pollfd clientfds[maxConns];
+ memset(clientfds, -1, maxConns * sizeof(struct pollfd));
+ clientfds[0].fd = listenfd;
+ clientfds[0].events = POLLIN;
+
+ int maxi = 1;
+
+ int listenfd_nonblock = fdnonblock(listenfd);
+
+ while (!fq(args)) {
+ int nready = poll(clientfds, maxConns, 1000);
+ if (nready == -1){
+ printf("poll_loop wait failed %d -> %s\n", errno, strerror(errno));
+ break;
+ }
+ if (nready == 0){
+ // timeout
+ continue;
+ }
+
+ if (clientfds[0].fd == listenfd && (clientfds[0].revents & POLLIN)) {
+ int conn;
+ if (listenfd_nonblock){
+ while((conn = accept(listenfd, (struct sockaddr *)&connaddr, &len)) > 0){
+ setfdnonblock(conn, 1);
+ clientfds[maxi].fd = conn;
+ if (is_sender) clientfds[maxi].events = POLLOUT;
+ if (is_recver) clientfds[maxi].events = POLLIN;
+ maxi++;
+ }
+ } else{
+ conn = accept(listenfd, (struct sockaddr *)&connaddr, &len);
+ if (conn < 0){
+ printf("poll_loop accept failed %d -> %s\n", errno, strerror(errno));
+ break;
+ }
+ setfdnonblock(conn, 1);
+ clientfds[maxi].fd = conn;
+ clientfds[maxi].events = POLLOUT;
+ maxi++;
+ }
+ }
+
+ // 鍙戦�佺粰鎵�鏈夊綋鍓嶅凡杩炴帴鐩稿悓鐨刦d
+ int memFds[maxMemFds];
+ memset(memFds, -1, sizeof(int) * maxMemFds);
+ int memFds_len = 0;
+ if (is_sender){
+ memFds_len = copyFds(args, fget, memFds);
+ }
+
+ for(int i = 1; i < maxConns; i++){
+ if (clientfds[i].revents & POLLOUT){
+ int conn = clientfds[i].fd;
+ if (conn < 0) continue;
+ if (memFds_len > 0){
+ // 浠呭彂閫佷竴涓� sizeof(memFd)
+ int ret = sendfd(conn, memFds, memFds_len);
+ if (ret == -1){
+ printf("poll_loop sendfd %d client in %d failed\n", i, nready);
+ } else if (ret == 0){
+ close(conn);
+ clientfds[i].fd = -1;
+ continue;
+ }
+ }
+ }
+ if (clientfds[i].revents & POLLIN){
+ int conn = clientfds[i].fd;
+
+ int recvFds[maxMemFds];
+ memset(recvFds, -1, sizeof(int) * maxMemFds);
+ int fds = recvfd(conn, recvFds, maxMemFds);
+ if (fds < 0){
+ printf("poll_loop recvfd failed\n");
+ continue;
+ }else if (fds == 0){
+ close(conn);
+ clientfds[i].fd = -1;
+ continue;
+ } else if (fds > maxMemFds){
+ printf("poll_loop recvfd too much! max recv fds %d\n", maxMemFds);
+ }
+
+ handleFds(args, fhandle, recvFds, fds);
+ }
+ }
+ for (int i = 0; i < memFds_len; i++) {
+ close(memFds[i]);
+ }
+ }
+ for(int i = 0; i < maxConns; i++){
+ if (clientfds[i].fd != -1)
+ close(clientfds[i].fd);
+ }
+ return 0;
+}
+
+int select_loop(int listenfd, cbGetData fget, cbHandleData fhandle, cbQuit fquit, void* args){
+ if (!fget && !fhandle) {
+ printf("select At Leaset MUST be a sender or receiver\n");
+ return -1;
+ }
+ int is_sender = fget ? 1 : 0;
+ int is_recver = fhandle ? 1 : 0;
+
+ struct sockaddr_un connaddr;
+ socklen_t len = sizeof(connaddr);
+
+ cbQuit fq = no_quit;
+ if (fquit) fq = fquit;
+
+ int clients[maxConns];
+ memset(clients, -1, maxConns * sizeof(int));
+
+ while (!fq(args)) {
+ fd_set rset, wset;
+ FD_ZERO(&rset);
+ FD_ZERO(&wset);
+ FD_SET(listenfd, &rset);
+
+ int maxfd = listenfd;
+ for (int i = 0; i < maxConns; i++){
+ int conn = clients[i];
+ if (conn != -1){
+ if (is_sender)
+ FD_SET(conn, &wset);
+ if (is_recver)
+ FD_SET(conn, &rset);
+ }
+ if (maxfd < conn) {
+ maxfd = conn;
+ }
+ }
+
+ struct timeval tm = {.tv_sec = 1, .tv_usec = 0};
+ int ret = select(maxfd + 1, &rset, &wset, NULL, &tm);
+ if (ret == -1){
+ if (errno == EINTR)
+ break;
+ } else if (ret == 0) {
+ // timeout
+ continue;
+ }
+
+ if (FD_ISSET(listenfd, &rset)){
+ int conn = accept(listenfd, (struct sockaddr *)&connaddr, &len);
+ if (conn < 0){
+ printf("select accept failed %d -> %s\n", errno, strerror(errno));
+ break;
+ }
+ update_client(clients, maxConns, conn, -1);
+ }
+
+ int memFds[maxMemFds];
+ memset(memFds, -1, sizeof(int) * maxMemFds);
+ int memFds_len = 0;
+ if (is_sender){
+ memFds_len = copyFds(args, fget, memFds);
+ }
+ for (int i = 0; i < maxConns; i++){
+ int conn = clients[i];
+ if (conn > 0 && FD_ISSET(conn, &rset)){
+
+ int recvFds[maxMemFds];
+ memset(recvFds, -1, sizeof(int) * maxMemFds);
+ int fds = recvfd(conn, recvFds, maxMemFds);
+ if (fds < 0){
+ printf("select_loop recvfd failed\n");
+ continue;
+ }else if (fds == 0){
+ close(conn);
+ update_client(clients, maxConns, -1, conn);
+ FD_CLR(conn, &wset);
+ continue;
+ } else if (fds > maxMemFds){
+ printf("select_loop recvfd too much! max recv fds %d\n", maxMemFds);
+ }
+
+ handleFds(args, fhandle, recvFds, fds);
+ }
+ if (conn > 0 && FD_ISSET(conn, &wset)){
+ if (memFds_len > 0){
+ // 浠呭彂閫佷竴涓� sizeof(memFd)
+ int ret = sendfd(conn, memFds, memFds_len);
+ if (ret == -1){
+ printf("select_loop sendfd %d client in %d failed\n", i, maxConns);
+ } else if (ret == 0){
+ close(conn);
+ update_client(clients, maxConns, -1, conn);
+ FD_CLR(conn, &wset);
+ continue;
+ }
+ }
+ }
+ }
+ for (int i = 0; i < memFds_len; i++) {
+ close(memFds[i]);
+ }
+ }
+
+ for(int i = 0; i < maxConns; i++){
+ if (clients[i] != -1)
+ close(clients[i]);
+ }
+ return 0;
+}
+
+int simple_loop(int listenfd, cbGetData fget, cbQuit fquit, void* args){
+ if (!fget) {
+ printf("simple_loop MUST be a sender\n");
+ return -1;
+ }
+
+ struct sockaddr_un connaddr;
+ socklen_t len = sizeof(connaddr);
+
+ cbQuit fq = no_quit;
+ if (fquit) fq = fquit;
+
+ int clients[maxConns];
+ memset(clients, -1, maxConns * sizeof(int));
+
+ // 璁剧疆 listenfd 涓洪潪闃诲, accpet 涓嶄細闃诲
+ setfdnonblock(listenfd, 1);
+
+ int cur_cli = 0;
+
+ while (!fq(args)) {
+
+ int conn = accept(listenfd, (struct sockaddr *)&connaddr, &len);
+ // if (conn < 0){
+ // printf("simple_loop accept failed %d -> %s\n", errno, strerror(errno));
+ // usleep(10000);
+ // continue;
+ // }
+
+ // 濡傛灉 accept 鎴愬姛娣诲姞杩炴帴
+ if (conn > 0){
+ cur_cli++;
+ // 璁剧疆涓洪潪闃诲锛屼互鍏嶉樆濉炲叾浠杝ocket鍙戦��
+ // setfdnonblock(conn, 1);
+ // 搴旇璁剧疆涓洪樆濉瀒o淇濊瘉鎵�鏈夌殑瀹㈡埛绔帴鏀剁殑鏁版嵁搴旇鏄竴鏍风殑
+ // 椋庨櫓鍦ㄤ簬濡傛灉鏌愪竴涓帴鏀惰緝鎱紝涔嬪悗鐨勮繛鎺ラ兘闇�绛夊緟
+ update_client(clients, maxConns, conn, -1);
+ }
+
+ if (cur_cli <= 0) {
+ usleep(10000);
+ continue;
+ }
+
+ int memFds[maxMemFds];
+ memset(memFds, -1, sizeof(int) * maxMemFds);
+ int memFds_len = copyFds(args, fget, memFds);
+
+ for (int i = 0; i < maxConns; ++i) {
+ int conn = clients[i];
+ if (conn <= 0) continue;
+
+ if (memFds_len > 0){
+ // 浠呭彂閫佷竴涓� sizeof(memFd)
+ int ret = sendfd(conn, memFds, memFds_len);
+ if (ret == -1){
+ printf("simple_loop sendfd %d client in %d failed\n", i, maxConns);
+ } else if (ret == 0){
+ close(conn);
+ update_client(clients, maxConns, -1, conn);
+ cur_cli--;
+ continue;
+ }
+ }
+ }
+ for (int i = 0; i < memFds_len; i++) {
+ close(memFds[i]);
+ }
+ }
+
+ for(int i = 0; i < maxConns; i++){
+ if (clients[i] != -1)
+ close(clients[i]);
+ }
+ return 0;
+}
diff --git a/src2/epollfd_shm.h b/src2/epollfd_shm.h
new file mode 100644
index 0000000..bc0c706
--- /dev/null
+++ b/src2/epollfd_shm.h
@@ -0,0 +1,46 @@
+#ifndef _epoll_fd_shm_h_
+#define _epoll_fd_shm_h_
+
+#ifndef HIDDENAPI
+#define HIDDENAPI __attribute__((visibility("hidden")))
+#endif
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+int unix_domain_server_fd(const char* path, int nonblock);
+int unix_domain_client_fd(const char* path, int nonblock);
+
+struct fd_msg{
+ void* data;
+ union{
+ int len;
+ int fd;
+ };
+};
+
+typedef int(*cbGetData)(void* args, struct fd_msg* msg);
+typedef cbGetData cbHandleData;
+
+typedef int(*cbQuit)(void* args);
+
+// 鏁堢巼寰堥珮锛屼絾鏄棤娉曚繚璇佺粰鎵�鏈夌殑瀹㈡埛绔彂閫佸悓涓�涓秷鎭�, 2w+/s
+int epoll_loop(int listenfd, cbGetData fget, cbHandleData fhandle, cbQuit fquit, void* args);
+int poll_loop(int listenfd, cbGetData fget, cbHandleData fhandle, cbQuit fquit, void* args);
+int select_loop(int listenfd, cbGetData fget, cbHandleData fhandle, cbQuit fquit, void* args);
+// 璁や负澶ч儴鍒嗘椂闂撮兘鍙啓锛屼繚璇佺粰瀹㈡埛绔彂閫佸悓涓�涓秷鎭�, block IO, only send, 1w+/s
+int simple_loop(int listenfd, cbGetData fget, cbQuit fquit, void* args);
+
+
+// 瀹㈡埛绔病鏈夊苟鍙戦渶姹傦紝鍙渶瑕佸湪 loop 涓笉鍋� recvfd 鍗冲彲
+
+
+// 搴旇娌′粈涔堢敤
+HIDDENAPI void free_fd_msg(struct fd_msg* msg);
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif
\ No newline at end of file
diff --git a/src2/memfd_shm.c b/src2/memfd_shm.c
new file mode 100644
index 0000000..2156c18
--- /dev/null
+++ b/src2/memfd_shm.c
@@ -0,0 +1,103 @@
+#include "memfd_shm.h"
+
+#include <stdio.h>
+#include <sys/types.h>
+#include <sys/stat.h>
+#include <unistd.h>
+#include <sys/mman.h>
+#include <sys/syscall.h>
+#include <errno.h>
+#include <fcntl.h>
+#include <linux/memfd.h>
+#include <stdlib.h>
+
+static inline int sys_memfd_create(const char *name,
+ unsigned int flags)
+{
+ return syscall(__NR_memfd_create, name, flags);
+}
+
+int basic_shm_create(const char *name, int len){
+ int fd;
+ struct stat st;
+
+ /* Create an anonymous file in tmpfs; */
+ if(0 >= len)
+ {
+ return -1;
+ }
+
+ fd = sys_memfd_create(name, MFD_CLOEXEC);
+
+ if (fd == -1)
+ {
+ return -1;
+ }
+
+ /* Size the file as specified on the command line */
+
+ if (ftruncate(fd, len) == -1)
+ {
+ close(fd);
+ return -1;
+ }
+
+ if (fstat (fd, &st))
+ {
+ close(fd);
+ return -1;
+ }
+
+ // printf("PID: %ld; fd: %d; /proc/%ld/fd/%d, atime: %lu.%lu\n",
+ // (long) getpid(), fd, (long) getpid(), fd, st.st_atim.tv_sec, st.st_atim.tv_nsec);
+
+ return fd;
+}
+
+int basic_shm_mmap(int fd, unsigned char** ppaddr){
+ struct stat st;
+ ssize_t len;
+ if (fstat (fd, &st))
+ {
+ return -1;
+ }
+ len = st.st_size;
+
+ *ppaddr = (unsigned char*) mmap (NULL, len, PROT_READ | PROT_WRITE, MAP_SHARED, fd, 0);
+ if (*ppaddr == MAP_FAILED)
+ {
+ return -1;
+ }
+
+ // printf("length: %zu, atime: %lu.%lu\n", len, st.st_atim.tv_sec, st.st_atim.tv_nsec);
+ return len;
+}
+
+int basic_shm_unmmap(int fd, unsigned char** ppaddr){
+ struct stat st;
+ ssize_t len;
+ int ret = 0;
+ if (fstat (fd, &st))
+ {
+ return -1;
+ }
+ len = st.st_size;
+
+ ret = munmap((void *)*ppaddr, len);
+ if (ret == -1)
+ {
+ return -1;
+ }
+ *ppaddr = NULL;
+ // printf("length: %zu, atime: %lu.%lu\n", len, st.st_atim.tv_sec, st.st_atim.tv_nsec);
+ return len;
+}
+
+int basic_shm_close(int fd){
+ int ret = -1;
+ if (fd >= 0)
+ {
+ ret = close(fd);
+ }
+ return ret;
+}
diff --git a/src2/memfd_shm.h b/src2/memfd_shm.h
new file mode 100644
index 0000000..6830cce
--- /dev/null
+++ b/src2/memfd_shm.h
@@ -0,0 +1,19 @@
+#ifndef _memfd_shm_h_
+#define _memfd_shm_h_
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+int basic_shm_create(const char *name, int len);
+
+int basic_shm_mmap(int fd, unsigned char** ppaddr);
+int basic_shm_unmmap(int fd, unsigned char** ppaddr);
+int basic_shm_close(int fd);
+
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif
\ No newline at end of file
diff --git a/src2/shmh.h b/src2/shmh.h
new file mode 100644
index 0000000..9b08073
--- /dev/null
+++ b/src2/shmh.h
@@ -0,0 +1,8 @@
+#ifndef _shm_whole_head_h_
+#define _shm_whole_head_h_
+
+#include "memfd_shm.h"
+#include "transfd_shm.h"
+#include "epollfd_shm.h"
+
+#endif
\ No newline at end of file
diff --git a/src2/transfd_shm.c b/src2/transfd_shm.c
new file mode 100644
index 0000000..5c0746a
--- /dev/null
+++ b/src2/transfd_shm.c
@@ -0,0 +1,90 @@
+#include "transfd_shm.h"
+
+#include <stdio.h>
+#include <stdlib.h>
+#include <stddef.h>
+#include <string.h>
+#include <sys/types.h>
+#include <sys/socket.h>
+#include <errno.h>
+
+int sendfd(int conn, int fd[], int fds){
+ if (fds <= 0) return -1;
+
+ struct msghdr msg = {};
+ static char dummy = 'x';
+ struct iovec iov = {&dummy, sizeof(dummy)};
+ msg.msg_iov = &iov;
+ msg.msg_iovlen = 1;
+
+ struct cmsghdr* cmsg;
+
+ const unsigned control_len = CMSG_SPACE(sizeof(int) * fds);
+ char* control_buffer = (char*)malloc(control_len);
+
+ msg.msg_control = control_buffer;
+ msg.msg_controllen = control_len;
+
+ cmsg = CMSG_FIRSTHDR(&msg);
+ cmsg->cmsg_level = SOL_SOCKET;
+ cmsg->cmsg_type = SCM_RIGHTS;
+ cmsg->cmsg_len = CMSG_LEN(sizeof(int) * fds);
+ memcpy(CMSG_DATA(cmsg), fd, sizeof(int) * fds);
+
+ int ret = sendmsg(conn, &msg, MSG_NOSIGNAL);
+ free(control_buffer);
+
+ if (ret == -1){
+ printf("sendmsg error %d -> %s\n", errno, strerror(errno));
+ if (errno == EPIPE || errno == ECONNRESET || errno == ENOTCONN)
+ return 0;
+ return -1;
+ }
+ return ret;
+}
+
+int recvfd(int conn, int fd[], int fds){
+ char data;
+ struct msghdr msg = {};
+ struct iovec iov = {&data, 1};
+ msg.msg_iov = &iov;
+ msg.msg_iovlen = 1;
+
+ struct cmsghdr *cmsgp;
+
+ const size_t control_len = CMSG_SPACE(sizeof(int) * 16);
+ char control_buffer[control_len];
+
+ msg.msg_control = control_buffer;
+ msg.msg_controllen = sizeof(control_buffer);
+
+ int ret = recvmsg(conn, &msg, MSG_CMSG_CLOEXEC);
+ if (ret == -1){
+ printf("recvmsg failed %d -> %s\n", errno, strerror(errno));
+ if (errno == ECONNRESET)
+ return 0;
+ return -1;
+ } else if (ret == 0){
+ return 0;
+ }
+
+ int* wire_fds = NULL;
+ unsigned wire_fds_len = 0;
+ if (msg.msg_controllen > 0){
+ struct cmsghdr* cmsg;
+ for (cmsg = CMSG_FIRSTHDR(&msg); cmsg; cmsg = CMSG_NXTHDR(&msg, cmsg)) {
+ const unsigned payload_len = cmsg->cmsg_len - CMSG_LEN(0);
+ if (cmsg->cmsg_level == SOL_SOCKET && cmsg->cmsg_type == SCM_RIGHTS) {
+ wire_fds = (int*)CMSG_DATA(cmsg);
+ wire_fds_len = payload_len / sizeof(int);
+ }
+ }
+ }
+
+ const unsigned count = wire_fds_len > fds ? fds : wire_fds_len;
+ for (unsigned i = 0; i < count; i++){
+ fd[i] = wire_fds[i];
+ }
+
+ return wire_fds_len;
+}
diff --git a/src2/transfd_shm.h b/src2/transfd_shm.h
new file mode 100644
index 0000000..e23653e
--- /dev/null
+++ b/src2/transfd_shm.h
@@ -0,0 +1,21 @@
+#ifndef _trans_fd_shm_h_
+#define _trans_fd_shm_h_
+
+#ifndef HIDDENAPI
+#define HIDDENAPI __attribute__((visibility("hidden")))
+#endif
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+// send fds
+int sendfd(int conn, int fd[], int fds);
+// recv fds, fd pre-allocated buffer, fds buffer size
+int recvfd(int conn, int fd[], int fds);
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif
\ No newline at end of file
--
Gitblit v1.8.0