@ -1,10 +0,0 @@
|
||||
# test cmake test
|
||||
|
||||
|
||||
cmake_minimum_required(VERSION 3.13)
|
||||
|
||||
project(Tutorial VERSION 1.0)
|
||||
|
||||
set(CMAKE_CXX_STANDARD 11)
|
||||
set(CMAKE_CXX_STANDARD_REQUIRED True)
|
||||
|
@ -1,372 +0,0 @@
|
||||
# This is the CMakeCache file.
|
||||
# For build in directory: /home/ed/github/Linux/cmake_test/build
|
||||
# It was generated by CMake: /usr/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-8
|
||||
|
||||
//A wrapper around 'ranlib' adding the appropriate '--plugin' option
|
||||
// for the GCC compiler
|
||||
CMAKE_CXX_COMPILER_RANLIB:FILEPATH=/usr/bin/gcc-ranlib-8
|
||||
|
||||
//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-8
|
||||
|
||||
//A wrapper around 'ranlib' adding the appropriate '--plugin' option
|
||||
// for the GCC compiler
|
||||
CMAKE_C_COMPILER_RANLIB:FILEPATH=/usr/bin/gcc-ranlib-8
|
||||
|
||||
//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=Tutorial
|
||||
|
||||
//Value Computed by CMake
|
||||
CMAKE_PROJECT_VERSION:STATIC=1.0
|
||||
|
||||
//Value Computed by CMake
|
||||
CMAKE_PROJECT_VERSION_MAJOR:STATIC=1
|
||||
|
||||
//Value Computed by CMake
|
||||
CMAKE_PROJECT_VERSION_MINOR:STATIC=0
|
||||
|
||||
//Value Computed by CMake
|
||||
CMAKE_PROJECT_VERSION_PATCH:STATIC=
|
||||
|
||||
//Value Computed by CMake
|
||||
CMAKE_PROJECT_VERSION_TWEAK:STATIC=
|
||||
|
||||
//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
|
||||
Project_BINARY_DIR:STATIC=/home/ed/github/Linux/cmake_test/build
|
||||
|
||||
//Value Computed by CMake
|
||||
Project_SOURCE_DIR:STATIC=/home/ed/github/Linux/cmake_test
|
||||
|
||||
//Value Computed by CMake
|
||||
Tutorial_BINARY_DIR:STATIC=/home/ed/github/Linux/cmake_test/build
|
||||
|
||||
//Value Computed by CMake
|
||||
Tutorial_SOURCE_DIR:STATIC=/home/ed/github/Linux/cmake_test
|
||||
|
||||
|
||||
########################
|
||||
# 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/ed/github/Linux/cmake_test/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=4
|
||||
//ADVANCED property for variable: CMAKE_COLOR_MAKEFILE
|
||||
CMAKE_COLOR_MAKEFILE-ADVANCED:INTERNAL=1
|
||||
//Path to CMake executable.
|
||||
CMAKE_COMMAND:INTERNAL=/usr/bin/cmake
|
||||
//Path to cpack program executable.
|
||||
CMAKE_CPACK_COMMAND:INTERNAL=/usr/bin/cpack
|
||||
//Path to ctest program executable.
|
||||
CMAKE_CTEST_COMMAND:INTERNAL=/usr/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/ed/github/Linux/cmake_test
|
||||
//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=1
|
||||
//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/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=/usr/bin/uname
|
||||
//ADVANCED property for variable: CMAKE_VERBOSE_MAKEFILE
|
||||
CMAKE_VERBOSE_MAKEFILE-ADVANCED:INTERNAL=1
|
||||
|
@ -1,73 +0,0 @@
|
||||
set(CMAKE_C_COMPILER "/usr/bin/cc")
|
||||
set(CMAKE_C_COMPILER_ARG1 "")
|
||||
set(CMAKE_C_COMPILER_ID "GNU")
|
||||
set(CMAKE_C_COMPILER_VERSION "8.3.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-8")
|
||||
set(CMAKE_RANLIB "/usr/bin/ranlib")
|
||||
set(CMAKE_C_COMPILER_RANLIB "/usr/bin/gcc-ranlib-8")
|
||||
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/8;/usr/lib/x86_64-linux-gnu;/usr/lib;/lib/x86_64-linux-gnu;/lib")
|
||||
set(CMAKE_C_IMPLICIT_LINK_FRAMEWORK_DIRECTORIES "")
|
@ -1,76 +0,0 @@
|
||||
set(CMAKE_CXX_COMPILER "/usr/bin/c++")
|
||||
set(CMAKE_CXX_COMPILER_ARG1 "")
|
||||
set(CMAKE_CXX_COMPILER_ID "GNU")
|
||||
set(CMAKE_CXX_COMPILER_VERSION "8.3.0")
|
||||
set(CMAKE_CXX_COMPILER_VERSION_INTERNAL "")
|
||||
set(CMAKE_CXX_COMPILER_WRAPPER "")
|
||||
set(CMAKE_CXX_STANDARD_COMPUTED_DEFAULT "14")
|
||||
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;cxx_std_20")
|
||||
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 "cxx_std_20")
|
||||
|
||||
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-8")
|
||||
set(CMAKE_RANLIB "/usr/bin/ranlib")
|
||||
set(CMAKE_CXX_COMPILER_RANLIB "/usr/bin/gcc-ranlib-8")
|
||||
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/8;/usr/lib/x86_64-linux-gnu;/usr/lib;/lib/x86_64-linux-gnu;/lib")
|
||||
set(CMAKE_CXX_IMPLICIT_LINK_FRAMEWORK_DIRECTORIES "")
|
@ -1,15 +0,0 @@
|
||||
set(CMAKE_HOST_SYSTEM "Linux-4.19.0-16-amd64")
|
||||
set(CMAKE_HOST_SYSTEM_NAME "Linux")
|
||||
set(CMAKE_HOST_SYSTEM_VERSION "4.19.0-16-amd64")
|
||||
set(CMAKE_HOST_SYSTEM_PROCESSOR "x86_64")
|
||||
|
||||
|
||||
|
||||
set(CMAKE_SYSTEM "Linux-4.19.0-16-amd64")
|
||||
set(CMAKE_SYSTEM_NAME "Linux")
|
||||
set(CMAKE_SYSTEM_VERSION "4.19.0-16-amd64")
|
||||
set(CMAKE_SYSTEM_PROCESSOR "x86_64")
|
||||
|
||||
set(CMAKE_CROSSCOMPILING "FALSE")
|
||||
|
||||
set(CMAKE_SYSTEM_LOADED 1)
|
@ -1,623 +0,0 @@
|
||||
#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
|
@ -1,602 +0,0 @@
|
||||
/* 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;
|
||||
}
|
@ -1,16 +0,0 @@
|
||||
# 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/ed/github/Linux/cmake_test")
|
||||
set(CMAKE_RELATIVE_PATH_TOP_BINARY "/home/ed/github/Linux/cmake_test/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})
|
@ -1,700 +0,0 @@
|
||||
The system is: Linux - 4.19.0-16-amd64 - 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/ed/github/Linux/cmake_test/build/CMakeFiles/3.13.4/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/ed/github/Linux/cmake_test/build/CMakeFiles/3.13.4/CompilerIdCXX/a.out"
|
||||
|
||||
Determining if the C compiler works passed with the following output:
|
||||
Change Dir: /home/ed/github/Linux/cmake_test/build/CMakeFiles/CMakeTmp
|
||||
|
||||
Run Build Command:"/usr/bin/make" "cmTC_22738/fast"
|
||||
/usr/bin/make -f CMakeFiles/cmTC_22738.dir/build.make CMakeFiles/cmTC_22738.dir/build
|
||||
make[1]: Entering directory '/home/ed/github/Linux/cmake_test/build/CMakeFiles/CMakeTmp'
|
||||
Building C object CMakeFiles/cmTC_22738.dir/testCCompiler.c.o
|
||||
/usr/bin/cc -o CMakeFiles/cmTC_22738.dir/testCCompiler.c.o -c /home/ed/github/Linux/cmake_test/build/CMakeFiles/CMakeTmp/testCCompiler.c
|
||||
Linking C executable cmTC_22738
|
||||
/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_22738.dir/link.txt --verbose=1
|
||||
/usr/bin/cc -rdynamic CMakeFiles/cmTC_22738.dir/testCCompiler.c.o -o cmTC_22738
|
||||
make[1]: Leaving directory '/home/ed/github/Linux/cmake_test/build/CMakeFiles/CMakeTmp'
|
||||
|
||||
|
||||
Detecting C compiler ABI info compiled with the following output:
|
||||
Change Dir: /home/ed/github/Linux/cmake_test/build/CMakeFiles/CMakeTmp
|
||||
|
||||
Run Build Command:"/usr/bin/make" "cmTC_6fd7b/fast"
|
||||
/usr/bin/make -f CMakeFiles/cmTC_6fd7b.dir/build.make CMakeFiles/cmTC_6fd7b.dir/build
|
||||
make[1]: Entering directory '/home/ed/github/Linux/cmake_test/build/CMakeFiles/CMakeTmp'
|
||||
Building C object CMakeFiles/cmTC_6fd7b.dir/CMakeCCompilerABI.c.o
|
||||
/usr/bin/cc -o CMakeFiles/cmTC_6fd7b.dir/CMakeCCompilerABI.c.o -c /usr/share/cmake-3.13/Modules/CMakeCCompilerABI.c
|
||||
Linking C executable cmTC_6fd7b
|
||||
/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_6fd7b.dir/link.txt --verbose=1
|
||||
/usr/bin/cc -v -rdynamic CMakeFiles/cmTC_6fd7b.dir/CMakeCCompilerABI.c.o -o cmTC_6fd7b
|
||||
Using built-in specs.
|
||||
COLLECT_GCC=/usr/bin/cc
|
||||
COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/8/lto-wrapper
|
||||
OFFLOAD_TARGET_NAMES=nvptx-none
|
||||
OFFLOAD_TARGET_DEFAULT=1
|
||||
Target: x86_64-linux-gnu
|
||||
Configured with: ../src/configure -v --with-pkgversion='Debian 8.3.0-6' --with-bugurl=file:///usr/share/doc/gcc-8/README.Bugs --enable-languages=c,ada,c++,go,brig,d,fortran,objc,obj-c++ --prefix=/usr --with-gcc-major-version-only --program-suffix=-8 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --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 --enable-default-pie --with-system-zlib --with-target-system-zlib --enable-objc-gc=auto --enable-multiarch --disable-werror --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu
|
||||
Thread model: posix
|
||||
gcc version 8.3.0 (Debian 8.3.0-6)
|
||||
COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/8/:/usr/lib/gcc/x86_64-linux-gnu/8/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/8/:/usr/lib/gcc/x86_64-linux-gnu/
|
||||
LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/8/:/usr/lib/gcc/x86_64-linux-gnu/8/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/8/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/8/../../../:/lib/:/usr/lib/
|
||||
COLLECT_GCC_OPTIONS='-v' '-rdynamic' '-o' 'cmTC_6fd7b' '-mtune=generic' '-march=x86-64'
|
||||
/usr/lib/gcc/x86_64-linux-gnu/8/collect2 -plugin /usr/lib/gcc/x86_64-linux-gnu/8/liblto_plugin.so -plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/8/lto-wrapper -plugin-opt=-fresolution=/tmp/ccnNlHCc.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 --build-id --eh-frame-hdr -m elf_x86_64 --hash-style=gnu -export-dynamic -dynamic-linker /lib64/ld-linux-x86-64.so.2 -pie -o cmTC_6fd7b /usr/lib/gcc/x86_64-linux-gnu/8/../../../x86_64-linux-gnu/Scrt1.o /usr/lib/gcc/x86_64-linux-gnu/8/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/8/crtbeginS.o -L/usr/lib/gcc/x86_64-linux-gnu/8 -L/usr/lib/gcc/x86_64-linux-gnu/8/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/8/../../../../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/8/../../.. CMakeFiles/cmTC_6fd7b.dir/CMakeCCompilerABI.c.o -lgcc --push-state --as-needed -lgcc_s --pop-state -lc -lgcc --push-state --as-needed -lgcc_s --pop-state /usr/lib/gcc/x86_64-linux-gnu/8/crtendS.o /usr/lib/gcc/x86_64-linux-gnu/8/../../../x86_64-linux-gnu/crtn.o
|
||||
COLLECT_GCC_OPTIONS='-v' '-rdynamic' '-o' 'cmTC_6fd7b' '-mtune=generic' '-march=x86-64'
|
||||
make[1]: Leaving directory '/home/ed/github/Linux/cmake_test/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/ed/github/Linux/cmake_test/build/CMakeFiles/CMakeTmp]
|
||||
ignore line: []
|
||||
ignore line: [Run Build Command:"/usr/bin/make" "cmTC_6fd7b/fast"]
|
||||
ignore line: [/usr/bin/make -f CMakeFiles/cmTC_6fd7b.dir/build.make CMakeFiles/cmTC_6fd7b.dir/build]
|
||||
ignore line: [make[1]: Entering directory '/home/ed/github/Linux/cmake_test/build/CMakeFiles/CMakeTmp']
|
||||
ignore line: [Building C object CMakeFiles/cmTC_6fd7b.dir/CMakeCCompilerABI.c.o]
|
||||
ignore line: [/usr/bin/cc -o CMakeFiles/cmTC_6fd7b.dir/CMakeCCompilerABI.c.o -c /usr/share/cmake-3.13/Modules/CMakeCCompilerABI.c]
|
||||
ignore line: [Linking C executable cmTC_6fd7b]
|
||||
ignore line: [/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_6fd7b.dir/link.txt --verbose=1]
|
||||
ignore line: [/usr/bin/cc -v -rdynamic CMakeFiles/cmTC_6fd7b.dir/CMakeCCompilerABI.c.o -o cmTC_6fd7b ]
|
||||
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/8/lto-wrapper]
|
||||
ignore line: [OFFLOAD_TARGET_NAMES=nvptx-none]
|
||||
ignore line: [OFFLOAD_TARGET_DEFAULT=1]
|
||||
ignore line: [Target: x86_64-linux-gnu]
|
||||
ignore line: [Configured with: ../src/configure -v --with-pkgversion='Debian 8.3.0-6' --with-bugurl=file:///usr/share/doc/gcc-8/README.Bugs --enable-languages=c,ada,c++,go,brig,d,fortran,objc,obj-c++ --prefix=/usr --with-gcc-major-version-only --program-suffix=-8 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --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 --enable-default-pie --with-system-zlib --with-target-system-zlib --enable-objc-gc=auto --enable-multiarch --disable-werror --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none --without-cuda-driver --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 8.3.0 (Debian 8.3.0-6) ]
|
||||
ignore line: [COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/8/:/usr/lib/gcc/x86_64-linux-gnu/8/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/8/:/usr/lib/gcc/x86_64-linux-gnu/]
|
||||
ignore line: [LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/8/:/usr/lib/gcc/x86_64-linux-gnu/8/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/8/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/8/../../../:/lib/:/usr/lib/]
|
||||
ignore line: [COLLECT_GCC_OPTIONS='-v' '-rdynamic' '-o' 'cmTC_6fd7b' '-mtune=generic' '-march=x86-64']
|
||||
link line: [ /usr/lib/gcc/x86_64-linux-gnu/8/collect2 -plugin /usr/lib/gcc/x86_64-linux-gnu/8/liblto_plugin.so -plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/8/lto-wrapper -plugin-opt=-fresolution=/tmp/ccnNlHCc.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 --build-id --eh-frame-hdr -m elf_x86_64 --hash-style=gnu -export-dynamic -dynamic-linker /lib64/ld-linux-x86-64.so.2 -pie -o cmTC_6fd7b /usr/lib/gcc/x86_64-linux-gnu/8/../../../x86_64-linux-gnu/Scrt1.o /usr/lib/gcc/x86_64-linux-gnu/8/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/8/crtbeginS.o -L/usr/lib/gcc/x86_64-linux-gnu/8 -L/usr/lib/gcc/x86_64-linux-gnu/8/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/8/../../../../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/8/../../.. CMakeFiles/cmTC_6fd7b.dir/CMakeCCompilerABI.c.o -lgcc --push-state --as-needed -lgcc_s --pop-state -lc -lgcc --push-state --as-needed -lgcc_s --pop-state /usr/lib/gcc/x86_64-linux-gnu/8/crtendS.o /usr/lib/gcc/x86_64-linux-gnu/8/../../../x86_64-linux-gnu/crtn.o]
|
||||
arg [/usr/lib/gcc/x86_64-linux-gnu/8/collect2] ==> ignore
|
||||
arg [-plugin] ==> ignore
|
||||
arg [/usr/lib/gcc/x86_64-linux-gnu/8/liblto_plugin.so] ==> ignore
|
||||
arg [-plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/8/lto-wrapper] ==> ignore
|
||||
arg [-plugin-opt=-fresolution=/tmp/ccnNlHCc.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 [--build-id] ==> ignore
|
||||
arg [--eh-frame-hdr] ==> ignore
|
||||
arg [-m] ==> ignore
|
||||
arg [elf_x86_64] ==> ignore
|
||||
arg [--hash-style=gnu] ==> ignore
|
||||
arg [-export-dynamic] ==> ignore
|
||||
arg [-dynamic-linker] ==> ignore
|
||||
arg [/lib64/ld-linux-x86-64.so.2] ==> ignore
|
||||
arg [-pie] ==> ignore
|
||||
arg [-o] ==> ignore
|
||||
arg [cmTC_6fd7b] ==> ignore
|
||||
arg [/usr/lib/gcc/x86_64-linux-gnu/8/../../../x86_64-linux-gnu/Scrt1.o] ==> ignore
|
||||
arg [/usr/lib/gcc/x86_64-linux-gnu/8/../../../x86_64-linux-gnu/crti.o] ==> ignore
|
||||
arg [/usr/lib/gcc/x86_64-linux-gnu/8/crtbeginS.o] ==> ignore
|
||||
arg [-L/usr/lib/gcc/x86_64-linux-gnu/8] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/8]
|
||||
arg [-L/usr/lib/gcc/x86_64-linux-gnu/8/../../../x86_64-linux-gnu] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/8/../../../x86_64-linux-gnu]
|
||||
arg [-L/usr/lib/gcc/x86_64-linux-gnu/8/../../../../lib] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/8/../../../../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/8/../../..] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/8/../../..]
|
||||
arg [CMakeFiles/cmTC_6fd7b.dir/CMakeCCompilerABI.c.o] ==> ignore
|
||||
arg [-lgcc] ==> lib [gcc]
|
||||
arg [--push-state] ==> ignore
|
||||
arg [--as-needed] ==> ignore
|
||||
arg [-lgcc_s] ==> lib [gcc_s]
|
||||
arg [--pop-state] ==> ignore
|
||||
arg [-lc] ==> lib [c]
|
||||
arg [-lgcc] ==> lib [gcc]
|
||||
arg [--push-state] ==> ignore
|
||||
arg [--as-needed] ==> ignore
|
||||
arg [-lgcc_s] ==> lib [gcc_s]
|
||||
arg [--pop-state] ==> ignore
|
||||
arg [/usr/lib/gcc/x86_64-linux-gnu/8/crtendS.o] ==> ignore
|
||||
arg [/usr/lib/gcc/x86_64-linux-gnu/8/../../../x86_64-linux-gnu/crtn.o] ==> ignore
|
||||
collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/8] ==> [/usr/lib/gcc/x86_64-linux-gnu/8]
|
||||
collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/8/../../../x86_64-linux-gnu] ==> [/usr/lib/x86_64-linux-gnu]
|
||||
collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/8/../../../../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/8/../../..] ==> [/usr/lib]
|
||||
implicit libs: [gcc;gcc_s;c;gcc;gcc_s]
|
||||
implicit dirs: [/usr/lib/gcc/x86_64-linux-gnu/8;/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/ed/github/Linux/cmake_test/build/CMakeFiles/CMakeTmp
|
||||
|
||||
Run Build Command:"/usr/bin/make" "cmTC_a0367/fast"
|
||||
/usr/bin/make -f CMakeFiles/cmTC_a0367.dir/build.make CMakeFiles/cmTC_a0367.dir/build
|
||||
make[1]: Entering directory '/home/ed/github/Linux/cmake_test/build/CMakeFiles/CMakeTmp'
|
||||
Building C object CMakeFiles/cmTC_a0367.dir/feature_tests.c.o
|
||||
/usr/bin/cc -std=c11 -o CMakeFiles/cmTC_a0367.dir/feature_tests.c.o -c /home/ed/github/Linux/cmake_test/build/CMakeFiles/feature_tests.c
|
||||
Linking C executable cmTC_a0367
|
||||
/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_a0367.dir/link.txt --verbose=1
|
||||
/usr/bin/cc -rdynamic CMakeFiles/cmTC_a0367.dir/feature_tests.c.o -o cmTC_a0367
|
||||
make[1]: Leaving directory '/home/ed/github/Linux/cmake_test/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/ed/github/Linux/cmake_test/build/CMakeFiles/CMakeTmp
|
||||
|
||||
Run Build Command:"/usr/bin/make" "cmTC_27a67/fast"
|
||||
/usr/bin/make -f CMakeFiles/cmTC_27a67.dir/build.make CMakeFiles/cmTC_27a67.dir/build
|
||||
make[1]: Entering directory '/home/ed/github/Linux/cmake_test/build/CMakeFiles/CMakeTmp'
|
||||
Building C object CMakeFiles/cmTC_27a67.dir/feature_tests.c.o
|
||||
/usr/bin/cc -std=c99 -o CMakeFiles/cmTC_27a67.dir/feature_tests.c.o -c /home/ed/github/Linux/cmake_test/build/CMakeFiles/feature_tests.c
|
||||
Linking C executable cmTC_27a67
|
||||
/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_27a67.dir/link.txt --verbose=1
|
||||
/usr/bin/cc -rdynamic CMakeFiles/cmTC_27a67.dir/feature_tests.c.o -o cmTC_27a67
|
||||
make[1]: Leaving directory '/home/ed/github/Linux/cmake_test/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/ed/github/Linux/cmake_test/build/CMakeFiles/CMakeTmp
|
||||
|
||||
Run Build Command:"/usr/bin/make" "cmTC_95ffa/fast"
|
||||
/usr/bin/make -f CMakeFiles/cmTC_95ffa.dir/build.make CMakeFiles/cmTC_95ffa.dir/build
|
||||
make[1]: Entering directory '/home/ed/github/Linux/cmake_test/build/CMakeFiles/CMakeTmp'
|
||||
Building C object CMakeFiles/cmTC_95ffa.dir/feature_tests.c.o
|
||||
/usr/bin/cc -std=c90 -o CMakeFiles/cmTC_95ffa.dir/feature_tests.c.o -c /home/ed/github/Linux/cmake_test/build/CMakeFiles/feature_tests.c
|
||||
Linking C executable cmTC_95ffa
|
||||
/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_95ffa.dir/link.txt --verbose=1
|
||||
/usr/bin/cc -rdynamic CMakeFiles/cmTC_95ffa.dir/feature_tests.c.o -o cmTC_95ffa
|
||||
make[1]: Leaving directory '/home/ed/github/Linux/cmake_test/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/ed/github/Linux/cmake_test/build/CMakeFiles/CMakeTmp
|
||||
|
||||
Run Build Command:"/usr/bin/make" "cmTC_6d0d7/fast"
|
||||
/usr/bin/make -f CMakeFiles/cmTC_6d0d7.dir/build.make CMakeFiles/cmTC_6d0d7.dir/build
|
||||
make[1]: Entering directory '/home/ed/github/Linux/cmake_test/build/CMakeFiles/CMakeTmp'
|
||||
Building CXX object CMakeFiles/cmTC_6d0d7.dir/testCXXCompiler.cxx.o
|
||||
/usr/bin/c++ -o CMakeFiles/cmTC_6d0d7.dir/testCXXCompiler.cxx.o -c /home/ed/github/Linux/cmake_test/build/CMakeFiles/CMakeTmp/testCXXCompiler.cxx
|
||||
Linking CXX executable cmTC_6d0d7
|
||||
/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_6d0d7.dir/link.txt --verbose=1
|
||||
/usr/bin/c++ -rdynamic CMakeFiles/cmTC_6d0d7.dir/testCXXCompiler.cxx.o -o cmTC_6d0d7
|
||||
make[1]: Leaving directory '/home/ed/github/Linux/cmake_test/build/CMakeFiles/CMakeTmp'
|
||||
|
||||
|
||||
Detecting CXX compiler ABI info compiled with the following output:
|
||||
Change Dir: /home/ed/github/Linux/cmake_test/build/CMakeFiles/CMakeTmp
|
||||
|
||||
Run Build Command:"/usr/bin/make" "cmTC_caa49/fast"
|
||||
/usr/bin/make -f CMakeFiles/cmTC_caa49.dir/build.make CMakeFiles/cmTC_caa49.dir/build
|
||||
make[1]: Entering directory '/home/ed/github/Linux/cmake_test/build/CMakeFiles/CMakeTmp'
|
||||
Building CXX object CMakeFiles/cmTC_caa49.dir/CMakeCXXCompilerABI.cpp.o
|
||||
/usr/bin/c++ -o CMakeFiles/cmTC_caa49.dir/CMakeCXXCompilerABI.cpp.o -c /usr/share/cmake-3.13/Modules/CMakeCXXCompilerABI.cpp
|
||||
Linking CXX executable cmTC_caa49
|
||||
/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_caa49.dir/link.txt --verbose=1
|
||||
/usr/bin/c++ -v -rdynamic CMakeFiles/cmTC_caa49.dir/CMakeCXXCompilerABI.cpp.o -o cmTC_caa49
|
||||
Using built-in specs.
|
||||
COLLECT_GCC=/usr/bin/c++
|
||||
COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/8/lto-wrapper
|
||||
OFFLOAD_TARGET_NAMES=nvptx-none
|
||||
OFFLOAD_TARGET_DEFAULT=1
|
||||
Target: x86_64-linux-gnu
|
||||
Configured with: ../src/configure -v --with-pkgversion='Debian 8.3.0-6' --with-bugurl=file:///usr/share/doc/gcc-8/README.Bugs --enable-languages=c,ada,c++,go,brig,d,fortran,objc,obj-c++ --prefix=/usr --with-gcc-major-version-only --program-suffix=-8 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --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 --enable-default-pie --with-system-zlib --with-target-system-zlib --enable-objc-gc=auto --enable-multiarch --disable-werror --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu
|
||||
Thread model: posix
|
||||
gcc version 8.3.0 (Debian 8.3.0-6)
|
||||
COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/8/:/usr/lib/gcc/x86_64-linux-gnu/8/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/8/:/usr/lib/gcc/x86_64-linux-gnu/
|
||||
LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/8/:/usr/lib/gcc/x86_64-linux-gnu/8/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/8/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/8/../../../:/lib/:/usr/lib/
|
||||
COLLECT_GCC_OPTIONS='-v' '-rdynamic' '-o' 'cmTC_caa49' '-shared-libgcc' '-mtune=generic' '-march=x86-64'
|
||||
/usr/lib/gcc/x86_64-linux-gnu/8/collect2 -plugin /usr/lib/gcc/x86_64-linux-gnu/8/liblto_plugin.so -plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/8/lto-wrapper -plugin-opt=-fresolution=/tmp/ccP3oVoM.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 --build-id --eh-frame-hdr -m elf_x86_64 --hash-style=gnu -export-dynamic -dynamic-linker /lib64/ld-linux-x86-64.so.2 -pie -o cmTC_caa49 /usr/lib/gcc/x86_64-linux-gnu/8/../../../x86_64-linux-gnu/Scrt1.o /usr/lib/gcc/x86_64-linux-gnu/8/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/8/crtbeginS.o -L/usr/lib/gcc/x86_64-linux-gnu/8 -L/usr/lib/gcc/x86_64-linux-gnu/8/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/8/../../../../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/8/../../.. CMakeFiles/cmTC_caa49.dir/CMakeCXXCompilerABI.cpp.o -lstdc++ -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc /usr/lib/gcc/x86_64-linux-gnu/8/crtendS.o /usr/lib/gcc/x86_64-linux-gnu/8/../../../x86_64-linux-gnu/crtn.o
|
||||
COLLECT_GCC_OPTIONS='-v' '-rdynamic' '-o' 'cmTC_caa49' '-shared-libgcc' '-mtune=generic' '-march=x86-64'
|
||||
make[1]: Leaving directory '/home/ed/github/Linux/cmake_test/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/ed/github/Linux/cmake_test/build/CMakeFiles/CMakeTmp]
|
||||
ignore line: []
|
||||
ignore line: [Run Build Command:"/usr/bin/make" "cmTC_caa49/fast"]
|
||||
ignore line: [/usr/bin/make -f CMakeFiles/cmTC_caa49.dir/build.make CMakeFiles/cmTC_caa49.dir/build]
|
||||
ignore line: [make[1]: Entering directory '/home/ed/github/Linux/cmake_test/build/CMakeFiles/CMakeTmp']
|
||||
ignore line: [Building CXX object CMakeFiles/cmTC_caa49.dir/CMakeCXXCompilerABI.cpp.o]
|
||||
ignore line: [/usr/bin/c++ -o CMakeFiles/cmTC_caa49.dir/CMakeCXXCompilerABI.cpp.o -c /usr/share/cmake-3.13/Modules/CMakeCXXCompilerABI.cpp]
|
||||
ignore line: [Linking CXX executable cmTC_caa49]
|
||||
ignore line: [/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_caa49.dir/link.txt --verbose=1]
|
||||
ignore line: [/usr/bin/c++ -v -rdynamic CMakeFiles/cmTC_caa49.dir/CMakeCXXCompilerABI.cpp.o -o cmTC_caa49 ]
|
||||
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/8/lto-wrapper]
|
||||
ignore line: [OFFLOAD_TARGET_NAMES=nvptx-none]
|
||||
ignore line: [OFFLOAD_TARGET_DEFAULT=1]
|
||||
ignore line: [Target: x86_64-linux-gnu]
|
||||
ignore line: [Configured with: ../src/configure -v --with-pkgversion='Debian 8.3.0-6' --with-bugurl=file:///usr/share/doc/gcc-8/README.Bugs --enable-languages=c,ada,c++,go,brig,d,fortran,objc,obj-c++ --prefix=/usr --with-gcc-major-version-only --program-suffix=-8 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --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 --enable-default-pie --with-system-zlib --with-target-system-zlib --enable-objc-gc=auto --enable-multiarch --disable-werror --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none --without-cuda-driver --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 8.3.0 (Debian 8.3.0-6) ]
|
||||
ignore line: [COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/8/:/usr/lib/gcc/x86_64-linux-gnu/8/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/8/:/usr/lib/gcc/x86_64-linux-gnu/]
|
||||
ignore line: [LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/8/:/usr/lib/gcc/x86_64-linux-gnu/8/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/8/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/8/../../../:/lib/:/usr/lib/]
|
||||
ignore line: [COLLECT_GCC_OPTIONS='-v' '-rdynamic' '-o' 'cmTC_caa49' '-shared-libgcc' '-mtune=generic' '-march=x86-64']
|
||||
link line: [ /usr/lib/gcc/x86_64-linux-gnu/8/collect2 -plugin /usr/lib/gcc/x86_64-linux-gnu/8/liblto_plugin.so -plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/8/lto-wrapper -plugin-opt=-fresolution=/tmp/ccP3oVoM.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 --build-id --eh-frame-hdr -m elf_x86_64 --hash-style=gnu -export-dynamic -dynamic-linker /lib64/ld-linux-x86-64.so.2 -pie -o cmTC_caa49 /usr/lib/gcc/x86_64-linux-gnu/8/../../../x86_64-linux-gnu/Scrt1.o /usr/lib/gcc/x86_64-linux-gnu/8/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/8/crtbeginS.o -L/usr/lib/gcc/x86_64-linux-gnu/8 -L/usr/lib/gcc/x86_64-linux-gnu/8/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/8/../../../../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/8/../../.. CMakeFiles/cmTC_caa49.dir/CMakeCXXCompilerABI.cpp.o -lstdc++ -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc /usr/lib/gcc/x86_64-linux-gnu/8/crtendS.o /usr/lib/gcc/x86_64-linux-gnu/8/../../../x86_64-linux-gnu/crtn.o]
|
||||
arg [/usr/lib/gcc/x86_64-linux-gnu/8/collect2] ==> ignore
|
||||
arg [-plugin] ==> ignore
|
||||
arg [/usr/lib/gcc/x86_64-linux-gnu/8/liblto_plugin.so] ==> ignore
|
||||
arg [-plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/8/lto-wrapper] ==> ignore
|
||||
arg [-plugin-opt=-fresolution=/tmp/ccP3oVoM.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 [--build-id] ==> ignore
|
||||
arg [--eh-frame-hdr] ==> ignore
|
||||
arg [-m] ==> ignore
|
||||
arg [elf_x86_64] ==> ignore
|
||||
arg [--hash-style=gnu] ==> ignore
|
||||
arg [-export-dynamic] ==> ignore
|
||||
arg [-dynamic-linker] ==> ignore
|
||||
arg [/lib64/ld-linux-x86-64.so.2] ==> ignore
|
||||
arg [-pie] ==> ignore
|
||||
arg [-o] ==> ignore
|
||||
arg [cmTC_caa49] ==> ignore
|
||||
arg [/usr/lib/gcc/x86_64-linux-gnu/8/../../../x86_64-linux-gnu/Scrt1.o] ==> ignore
|
||||
arg [/usr/lib/gcc/x86_64-linux-gnu/8/../../../x86_64-linux-gnu/crti.o] ==> ignore
|
||||
arg [/usr/lib/gcc/x86_64-linux-gnu/8/crtbeginS.o] ==> ignore
|
||||
arg [-L/usr/lib/gcc/x86_64-linux-gnu/8] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/8]
|
||||
arg [-L/usr/lib/gcc/x86_64-linux-gnu/8/../../../x86_64-linux-gnu] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/8/../../../x86_64-linux-gnu]
|
||||
arg [-L/usr/lib/gcc/x86_64-linux-gnu/8/../../../../lib] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/8/../../../../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/8/../../..] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/8/../../..]
|
||||
arg [CMakeFiles/cmTC_caa49.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/8/crtendS.o] ==> ignore
|
||||
arg [/usr/lib/gcc/x86_64-linux-gnu/8/../../../x86_64-linux-gnu/crtn.o] ==> ignore
|
||||
collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/8] ==> [/usr/lib/gcc/x86_64-linux-gnu/8]
|
||||
collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/8/../../../x86_64-linux-gnu] ==> [/usr/lib/x86_64-linux-gnu]
|
||||
collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/8/../../../../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/8/../../..] ==> [/usr/lib]
|
||||
implicit libs: [stdc++;m;gcc_s;gcc;c;gcc_s;gcc]
|
||||
implicit dirs: [/usr/lib/gcc/x86_64-linux-gnu/8;/usr/lib/x86_64-linux-gnu;/usr/lib;/lib/x86_64-linux-gnu;/lib]
|
||||
implicit fwks: []
|
||||
|
||||
|
||||
|
||||
|
||||
Detecting CXX [-std=c++2a] compiler features compiled with the following output:
|
||||
Change Dir: /home/ed/github/Linux/cmake_test/build/CMakeFiles/CMakeTmp
|
||||
|
||||
Run Build Command:"/usr/bin/make" "cmTC_c69ff/fast"
|
||||
/usr/bin/make -f CMakeFiles/cmTC_c69ff.dir/build.make CMakeFiles/cmTC_c69ff.dir/build
|
||||
make[1]: Entering directory '/home/ed/github/Linux/cmake_test/build/CMakeFiles/CMakeTmp'
|
||||
Building CXX object CMakeFiles/cmTC_c69ff.dir/feature_tests.cxx.o
|
||||
/usr/bin/c++ -std=c++2a -o CMakeFiles/cmTC_c69ff.dir/feature_tests.cxx.o -c /home/ed/github/Linux/cmake_test/build/CMakeFiles/feature_tests.cxx
|
||||
Linking CXX executable cmTC_c69ff
|
||||
/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_c69ff.dir/link.txt --verbose=1
|
||||
/usr/bin/c++ -rdynamic CMakeFiles/cmTC_c69ff.dir/feature_tests.cxx.o -o cmTC_c69ff
|
||||
make[1]: Leaving directory '/home/ed/github/Linux/cmake_test/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++17] compiler features compiled with the following output:
|
||||
Change Dir: /home/ed/github/Linux/cmake_test/build/CMakeFiles/CMakeTmp
|
||||
|
||||
Run Build Command:"/usr/bin/make" "cmTC_472b0/fast"
|
||||
/usr/bin/make -f CMakeFiles/cmTC_472b0.dir/build.make CMakeFiles/cmTC_472b0.dir/build
|
||||
make[1]: Entering directory '/home/ed/github/Linux/cmake_test/build/CMakeFiles/CMakeTmp'
|
||||
Building CXX object CMakeFiles/cmTC_472b0.dir/feature_tests.cxx.o
|
||||
/usr/bin/c++ -std=c++17 -o CMakeFiles/cmTC_472b0.dir/feature_tests.cxx.o -c /home/ed/github/Linux/cmake_test/build/CMakeFiles/feature_tests.cxx
|
||||
Linking CXX executable cmTC_472b0
|
||||
/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_472b0.dir/link.txt --verbose=1
|
||||
/usr/bin/c++ -rdynamic CMakeFiles/cmTC_472b0.dir/feature_tests.cxx.o -o cmTC_472b0
|
||||
make[1]: Leaving directory '/home/ed/github/Linux/cmake_test/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/ed/github/Linux/cmake_test/build/CMakeFiles/CMakeTmp
|
||||
|
||||
Run Build Command:"/usr/bin/make" "cmTC_1a40f/fast"
|
||||
/usr/bin/make -f CMakeFiles/cmTC_1a40f.dir/build.make CMakeFiles/cmTC_1a40f.dir/build
|
||||
make[1]: Entering directory '/home/ed/github/Linux/cmake_test/build/CMakeFiles/CMakeTmp'
|
||||
Building CXX object CMakeFiles/cmTC_1a40f.dir/feature_tests.cxx.o
|
||||
/usr/bin/c++ -std=c++14 -o CMakeFiles/cmTC_1a40f.dir/feature_tests.cxx.o -c /home/ed/github/Linux/cmake_test/build/CMakeFiles/feature_tests.cxx
|
||||
Linking CXX executable cmTC_1a40f
|
||||
/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_1a40f.dir/link.txt --verbose=1
|
||||
/usr/bin/c++ -rdynamic CMakeFiles/cmTC_1a40f.dir/feature_tests.cxx.o -o cmTC_1a40f
|
||||
make[1]: Leaving directory '/home/ed/github/Linux/cmake_test/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/ed/github/Linux/cmake_test/build/CMakeFiles/CMakeTmp
|
||||
|
||||
Run Build Command:"/usr/bin/make" "cmTC_a8474/fast"
|
||||
/usr/bin/make -f CMakeFiles/cmTC_a8474.dir/build.make CMakeFiles/cmTC_a8474.dir/build
|
||||
make[1]: Entering directory '/home/ed/github/Linux/cmake_test/build/CMakeFiles/CMakeTmp'
|
||||
Building CXX object CMakeFiles/cmTC_a8474.dir/feature_tests.cxx.o
|
||||
/usr/bin/c++ -std=c++11 -o CMakeFiles/cmTC_a8474.dir/feature_tests.cxx.o -c /home/ed/github/Linux/cmake_test/build/CMakeFiles/feature_tests.cxx
|
||||
Linking CXX executable cmTC_a8474
|
||||
/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_a8474.dir/link.txt --verbose=1
|
||||
/usr/bin/c++ -rdynamic CMakeFiles/cmTC_a8474.dir/feature_tests.cxx.o -o cmTC_a8474
|
||||
make[1]: Leaving directory '/home/ed/github/Linux/cmake_test/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/ed/github/Linux/cmake_test/build/CMakeFiles/CMakeTmp
|
||||
|
||||
Run Build Command:"/usr/bin/make" "cmTC_4bd4f/fast"
|
||||
/usr/bin/make -f CMakeFiles/cmTC_4bd4f.dir/build.make CMakeFiles/cmTC_4bd4f.dir/build
|
||||
make[1]: Entering directory '/home/ed/github/Linux/cmake_test/build/CMakeFiles/CMakeTmp'
|
||||
Building CXX object CMakeFiles/cmTC_4bd4f.dir/feature_tests.cxx.o
|
||||
/usr/bin/c++ -std=c++98 -o CMakeFiles/cmTC_4bd4f.dir/feature_tests.cxx.o -c /home/ed/github/Linux/cmake_test/build/CMakeFiles/feature_tests.cxx
|
||||
Linking CXX executable cmTC_4bd4f
|
||||
/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_4bd4f.dir/link.txt --verbose=1
|
||||
/usr/bin/c++ -rdynamic CMakeFiles/cmTC_4bd4f.dir/feature_tests.cxx.o -o cmTC_4bd4f
|
||||
make[1]: Leaving directory '/home/ed/github/Linux/cmake_test/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
|
@ -1,46 +0,0 @@
|
||||
# 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.4/CMakeCCompiler.cmake"
|
||||
"CMakeFiles/3.13.4/CMakeCXXCompiler.cmake"
|
||||
"CMakeFiles/3.13.4/CMakeSystem.cmake"
|
||||
"/usr/share/cmake-3.13/Modules/CMakeCInformation.cmake"
|
||||
"/usr/share/cmake-3.13/Modules/CMakeCXXInformation.cmake"
|
||||
"/usr/share/cmake-3.13/Modules/CMakeCommonLanguageInclude.cmake"
|
||||
"/usr/share/cmake-3.13/Modules/CMakeGenericSystem.cmake"
|
||||
"/usr/share/cmake-3.13/Modules/CMakeInitializeConfigs.cmake"
|
||||
"/usr/share/cmake-3.13/Modules/CMakeLanguageInformation.cmake"
|
||||
"/usr/share/cmake-3.13/Modules/CMakeSystemSpecificInformation.cmake"
|
||||
"/usr/share/cmake-3.13/Modules/CMakeSystemSpecificInitialize.cmake"
|
||||
"/usr/share/cmake-3.13/Modules/Compiler/CMakeCommonCompilerMacros.cmake"
|
||||
"/usr/share/cmake-3.13/Modules/Compiler/GNU-C.cmake"
|
||||
"/usr/share/cmake-3.13/Modules/Compiler/GNU-CXX.cmake"
|
||||
"/usr/share/cmake-3.13/Modules/Compiler/GNU.cmake"
|
||||
"/usr/share/cmake-3.13/Modules/Platform/Linux-GNU-C.cmake"
|
||||
"/usr/share/cmake-3.13/Modules/Platform/Linux-GNU-CXX.cmake"
|
||||
"/usr/share/cmake-3.13/Modules/Platform/Linux-GNU.cmake"
|
||||
"/usr/share/cmake-3.13/Modules/Platform/Linux.cmake"
|
||||
"/usr/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"
|
||||
)
|
||||
|
||||
# Dependency information for all targets:
|
||||
set(CMAKE_DEPEND_INFO_FILES
|
||||
)
|
@ -1,76 +0,0 @@
|
||||
# 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/bin/cmake
|
||||
|
||||
# The command to remove a file.
|
||||
RM = /usr/bin/cmake -E remove -f
|
||||
|
||||
# Escaping for special characters.
|
||||
EQUALS = =
|
||||
|
||||
# The top-level source directory on which CMake was run.
|
||||
CMAKE_SOURCE_DIR = /home/ed/github/Linux/cmake_test
|
||||
|
||||
# The top-level build directory on which CMake was run.
|
||||
CMAKE_BINARY_DIR = /home/ed/github/Linux/cmake_test/build
|
||||
|
||||
#=============================================================================
|
||||
# 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
|
||||
|
@ -1,2 +0,0 @@
|
||||
/home/ed/github/Linux/cmake_test/build/CMakeFiles/rebuild_cache.dir
|
||||
/home/ed/github/Linux/cmake_test/build/CMakeFiles/edit_cache.dir
|
@ -1 +0,0 @@
|
||||
# This file is generated by cmake for dependency checking of the CMakeCache.txt file
|
@ -1,34 +0,0 @@
|
||||
|
||||
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]; }
|
@ -1,405 +0,0 @@
|
||||
|
||||
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]; }
|
@ -1 +0,0 @@
|
||||
0
|
@ -1,134 +0,0 @@
|
||||
# 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/bin/cmake
|
||||
|
||||
# The command to remove a file.
|
||||
RM = /usr/bin/cmake -E remove -f
|
||||
|
||||
# Escaping for special characters.
|
||||
EQUALS = =
|
||||
|
||||
# The top-level source directory on which CMake was run.
|
||||
CMAKE_SOURCE_DIR = /home/ed/github/Linux/cmake_test
|
||||
|
||||
# The top-level build directory on which CMake was run.
|
||||
CMAKE_BINARY_DIR = /home/ed/github/Linux/cmake_test/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/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/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/ed/github/Linux/cmake_test/build/CMakeFiles /home/ed/github/Linux/cmake_test/build/CMakeFiles/progress.marks
|
||||
$(MAKE) -f CMakeFiles/Makefile2 all
|
||||
$(CMAKE_COMMAND) -E cmake_progress_start /home/ed/github/Linux/cmake_test/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
|
||||
|
||||
# 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"
|
||||
.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
|
||||
|
@ -1,49 +0,0 @@
|
||||
# Install script for directory: /home/ed/github/Linux/cmake_test
|
||||
|
||||
# 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(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/ed/github/Linux/cmake_test/build/${CMAKE_INSTALL_MANIFEST}"
|
||||
"${CMAKE_INSTALL_MANIFEST_CONTENT}")
|
@ -1,4 +0,0 @@
|
||||
int main()
|
||||
{
|
||||
return 0;
|
||||
}
|
@ -1,66 +0,0 @@
|
||||
#include "errorHandling.h"
|
||||
|
||||
ErrorHandler::ErrorHandler(): emptyIndex(0)
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
void ErrorHandler::handleError(int errNo, std::string source)
|
||||
{
|
||||
int index = 0;
|
||||
|
||||
index = getLookUpIndex(errNo, source);
|
||||
|
||||
if(index < 0)
|
||||
{
|
||||
std::cout << "The given error number does not exist\n" << "Tipp: use \"addNewError(Integer, String)\""<< std::endl;
|
||||
exit(1);
|
||||
}
|
||||
|
||||
std::cout << ">> Error << | " << errorLookup[index].errSource << " | " << errNo << " | \"" << errorLookup[index].errMessage << "\""<<std::endl;
|
||||
|
||||
if(errorLookup[index].errExit)
|
||||
{
|
||||
exit(1);
|
||||
}
|
||||
}
|
||||
|
||||
void ErrorHandler::addNewError(const int& no, const std::string& source, const std::string& message, const unsigned char kill)
|
||||
{
|
||||
if(emptyIndex >= MAX_NUMBER_OF_ERRORS) // Check if list is full
|
||||
{
|
||||
std::cout << "Error | Ultimate | List is full" << std::endl;
|
||||
exit(1);
|
||||
}
|
||||
|
||||
if(getLookUpIndex(no, source) >= 0) // Check if Error No already exists
|
||||
{
|
||||
std::cout << "Error | Intern | Error No: "<< no << " From Source: "<< source <<" Exists ! PLease choose a different number !" << std::endl;
|
||||
exit(1);
|
||||
}
|
||||
|
||||
errorLookup[emptyIndex].errNo = no;
|
||||
errorLookup[emptyIndex].errSource = source;
|
||||
errorLookup[emptyIndex].errMessage = message;
|
||||
errorLookup[emptyIndex].errExit = kill;
|
||||
emptyIndex++;
|
||||
}
|
||||
|
||||
//
|
||||
// Privat memeber functions
|
||||
|
||||
int ErrorHandler::getLookUpIndex(int errNo, std::string source)
|
||||
{
|
||||
int i = 0;
|
||||
for(i = 0; i < emptyIndex; i++)
|
||||
{
|
||||
if(errNo == errorLookup[i].errNo)
|
||||
{
|
||||
if(source == errorLookup[i].errSource)
|
||||
{
|
||||
return i;
|
||||
}
|
||||
}
|
||||
}
|
||||
return -1;
|
||||
}
|
@ -1,44 +0,0 @@
|
||||
/*
|
||||
* Authors : Kerem Yollu & Edwin Koch
|
||||
* Date : 07.03.2021
|
||||
*
|
||||
* Description :
|
||||
* TODO : Inplement singleton pattern
|
||||
* TODO : Write description
|
||||
* TODO : Comment the code wiht odxygen
|
||||
*
|
||||
*/
|
||||
|
||||
|
||||
#ifndef _ERRORHANDLIG_H_
|
||||
#define _ERRORHANDLIG_H_
|
||||
|
||||
#include <iostream>
|
||||
#include <array>
|
||||
#include <string>
|
||||
|
||||
#define MAX_NUMBER_OF_ERRORS 255
|
||||
#define KILL 1
|
||||
#define SPARE 0
|
||||
|
||||
class ErrorHandler
|
||||
{
|
||||
public:
|
||||
ErrorHandler();
|
||||
void addNewError(const int& no, const std::string& source, const std::string& message, const unsigned char kill);
|
||||
void handleError(int no, std::string source);
|
||||
private:
|
||||
|
||||
struct error_t { //Struture of error entry for the errorLookup table
|
||||
int errNo;
|
||||
std::string errMessage;
|
||||
std::string errSource;
|
||||
unsigned char errExit;
|
||||
};
|
||||
|
||||
unsigned int emptyIndex; // Indicates the next empty slot in the errorLookup table.
|
||||
std::array <error_t,MAX_NUMBER_OF_ERRORS> errorLookup; // Where the errors go.
|
||||
int getLookUpIndex(int errNo, std::string source); // If error number exists returns the index otherwise -1
|
||||
};
|
||||
|
||||
#endif // _ERRORHANDLIG_H_
|
@ -1,40 +0,0 @@
|
||||
#ifndef _I2C_H_
|
||||
#define _I2C_H_
|
||||
|
||||
#include <unistd.h>
|
||||
#include <stdint.h>
|
||||
#include <memory>
|
||||
#include <ostream>
|
||||
#include <iostream>
|
||||
#include "../../config.h"
|
||||
|
||||
class I2C
|
||||
{
|
||||
public:
|
||||
enum errors
|
||||
{
|
||||
noError,
|
||||
writeFailed,
|
||||
readFailed,
|
||||
bufferFull,
|
||||
fasleAddrs,
|
||||
initFailed
|
||||
};
|
||||
|
||||
I2C();
|
||||
~I2C();
|
||||
uint8_t readByte(const uint8_t& address, const uint8_t& reg);
|
||||
uint16_t readWord(const uint8_t& address, const uint8_t& reg);
|
||||
uint8_t writeByte(const uint8_t& address, const uint8_t& data);
|
||||
uint8_t writeWord(const uint8_t& address, const uint8_t& reg, const uint8_t& data);
|
||||
uint8_t writeBuffer(const uint8_t& address, const uint8_t& buffer, uint8_t len);
|
||||
uint8_t readBuffer(const uint8_t& address, const uint8_t& buffer, uint8_t len);
|
||||
int8_t getError();
|
||||
|
||||
private:
|
||||
struct i2cImpl;
|
||||
std::unique_ptr<i2cImpl> i2cPimpl;
|
||||
|
||||
};
|
||||
#endif // _I2C_H_
|
||||
#define _I2C_H_
|
@ -1,52 +0,0 @@
|
||||
#include "i2c.hpp"
|
||||
|
||||
/*
|
||||
#if PLATFORM == LINUX
|
||||
#include "i2c_linux.hpp"
|
||||
#endif
|
||||
|
||||
#if PLATFORM == LINUX
|
||||
#include "i2c_stm.hpp"
|
||||
#endif
|
||||
*/
|
||||
|
||||
#include "i2c_linux.hpp"
|
||||
|
||||
I2C::I2C():i2cPimpl(new i2cImpl()){}
|
||||
|
||||
I2C::~I2C(){}
|
||||
|
||||
uint8_t I2C::readByte(const uint8_t& address, const uint8_t& reg)
|
||||
{
|
||||
return i2cPimpl->readByte(address,reg);
|
||||
}
|
||||
|
||||
uint16_t I2C::readWord(const uint8_t& address, const uint8_t& reg)
|
||||
{
|
||||
return i2cPimpl->readWord(address,reg);
|
||||
}
|
||||
|
||||
uint8_t I2C::writeByte(const uint8_t& address, const uint8_t& data)
|
||||
{
|
||||
return i2cPimpl->writeByte(address,data);
|
||||
}
|
||||
|
||||
uint8_t I2C::writeWord(const uint8_t& address, const uint8_t& reg, const uint8_t& data)
|
||||
{
|
||||
return i2cPimpl->writeWord(address,reg,data);
|
||||
}
|
||||
|
||||
void I2C::writeBuffer(const uint8_t& address, const uint8_t* buffer, uint8_t len)
|
||||
{
|
||||
return i2cPimpl->writeBuffer(address,buffer,len);
|
||||
}
|
||||
|
||||
void I2C::readBuffer(const uint8_t& address, const uint8_t* buffer, uint8_t len)
|
||||
{
|
||||
return i2cPimpl->readBuffer(address,buffer,len);
|
||||
}
|
||||
|
||||
void I2C::throwError(I2C::errors errNo)
|
||||
{
|
||||
i2cPimpl->throwError(errNo);
|
||||
}
|
@ -1,39 +0,0 @@
|
||||
#ifndef _I2C_H_
|
||||
#define _I2C_H_
|
||||
|
||||
#include <unistd.h>
|
||||
#include <stdint.h>
|
||||
#include <memory>
|
||||
#include <ostream>
|
||||
#include <iostream>
|
||||
#include "../../config.h"
|
||||
|
||||
class I2C
|
||||
{
|
||||
public:
|
||||
enum errors
|
||||
{
|
||||
noError,
|
||||
writeFailed,
|
||||
readFailed,
|
||||
bufferFull,
|
||||
falseAddrs,
|
||||
initFailed
|
||||
};
|
||||
|
||||
I2C();
|
||||
~I2C();
|
||||
uint8_t readByte(const uint8_t& address, const uint8_t& reg);
|
||||
uint16_t readWord(const uint8_t& address, const uint8_t& reg);
|
||||
uint8_t writeByte(const uint8_t& address, const uint8_t& data);
|
||||
uint8_t writeWord(const uint8_t& address, const uint8_t& reg, const uint8_t& data);
|
||||
void writeBuffer(const uint8_t& address, const uint8_t* buffer, uint8_t len);
|
||||
void readBuffer(const uint8_t& address, const uint8_t* buffer, uint8_t len);
|
||||
|
||||
private:
|
||||
void throwError(errors errNo);
|
||||
struct i2cImpl;
|
||||
std::unique_ptr<i2cImpl> i2cPimpl;
|
||||
};
|
||||
#endif // _I2C_H_
|
||||
#define _I2C_H_
|
@ -1,136 +0,0 @@
|
||||
#ifndef _I2C_LINUX_H_
|
||||
#define _I2C_LINUX_H_
|
||||
#include "i2c.hpp"
|
||||
|
||||
#include <linux/i2c-dev.h>
|
||||
#include <fcntl.h>
|
||||
#include <sys/ioctl.h>
|
||||
#include <sys/types.h>
|
||||
#include <sys/stat.h>
|
||||
|
||||
struct I2C::i2cImpl
|
||||
{
|
||||
int16_t deviceDescriptor;
|
||||
uint8_t device_address;
|
||||
uint8_t send_buffer[32];
|
||||
uint8_t recieve_buffer[32];
|
||||
uint8_t blocks;
|
||||
uint8_t channel;
|
||||
uint8_t mode;
|
||||
uint8_t status;
|
||||
i2cImpl()
|
||||
{
|
||||
char filename[20];
|
||||
|
||||
snprintf(filename, 19, "/dev/i2c-%d", 1);
|
||||
|
||||
deviceDescriptor = open(filename, O_RDWR);
|
||||
if (deviceDescriptor < 0) {
|
||||
throwError(initFailed);
|
||||
}
|
||||
}
|
||||
uint8_t readByte(const uint8_t& address, const uint8_t& reg)
|
||||
{
|
||||
if (ioctl(deviceDescriptor, I2C_SLAVE, address) < 0)
|
||||
{
|
||||
throwError(falseAddrs);
|
||||
}
|
||||
|
||||
writeByte(address,reg); //Initiate a write to indicate the desired register to read
|
||||
|
||||
if (read(deviceDescriptor, recieve_buffer, 1) != 1) // An then initare a read request of 1 byte
|
||||
{
|
||||
throwError(writeFailed);
|
||||
}
|
||||
return recieve_buffer[0] ;
|
||||
}
|
||||
|
||||
uint16_t readWord(const uint8_t& address, const uint8_t& reg)
|
||||
{
|
||||
uint16_t result = 0 ;
|
||||
if (ioctl(deviceDescriptor, I2C_SLAVE, address) < 0)
|
||||
{
|
||||
throwError(falseAddrs);
|
||||
}
|
||||
|
||||
writeByte(address,reg); //Initiate a write to indicate the desired register to read
|
||||
|
||||
if (read(deviceDescriptor, recieve_buffer, 2) != 2) // An then initare a read request of 2 bytes
|
||||
{
|
||||
throwError(writeFailed);
|
||||
}
|
||||
result = (recieve_buffer[0] << 8) + recieve_buffer[1] ;
|
||||
return result ;
|
||||
}
|
||||
|
||||
uint8_t writeByte(const uint8_t& address, const uint8_t& data)
|
||||
{
|
||||
if (ioctl(deviceDescriptor, I2C_SLAVE, address) < 0)
|
||||
{
|
||||
throwError(falseAddrs);
|
||||
}
|
||||
|
||||
send_buffer[0] = data;
|
||||
|
||||
if ((write(deviceDescriptor, send_buffer, 1)) != 1)
|
||||
{
|
||||
throwError(writeFailed);
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
uint8_t writeWord(const uint8_t& address, const uint8_t& reg, const uint8_t& data)
|
||||
{
|
||||
if (ioctl(deviceDescriptor, I2C_SLAVE, address) < 0)
|
||||
{
|
||||
throwError(falseAddrs);
|
||||
}
|
||||
|
||||
send_buffer[0] = reg;
|
||||
send_buffer[1] = data;
|
||||
|
||||
if ((write(deviceDescriptor, send_buffer, 2)) != 2)
|
||||
{
|
||||
throwError(writeFailed);
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
void writeBuffer(const uint8_t& address, const uint8_t* buffer, uint8_t len)
|
||||
{
|
||||
if (ioctl(deviceDescriptor, I2C_SLAVE, address) < 0)
|
||||
{
|
||||
throwError(falseAddrs);
|
||||
}
|
||||
|
||||
if ((write(deviceDescriptor,buffer, len)) != len)
|
||||
{
|
||||
throwError(writeFailed);
|
||||
}
|
||||
}
|
||||
|
||||
void readBuffer(const uint8_t& address, const uint8_t* buffer, uint8_t len)
|
||||
{
|
||||
uint16_t result = 0 ;
|
||||
if (ioctl(deviceDescriptor, I2C_SLAVE, address) < 0)
|
||||
{
|
||||
throwError(falseAddrs);
|
||||
}
|
||||
|
||||
writeByte(address,buffer[0]); //Initiate a write to indicate the desired register to read
|
||||
|
||||
if (read(deviceDescriptor, recieve_buffer, len) != len) // An then initare a read request of 2 bytes
|
||||
{
|
||||
throwError(writeFailed);
|
||||
}
|
||||
}
|
||||
|
||||
void throwError(I2C::errors errNo)
|
||||
{
|
||||
#ifdef LINUX
|
||||
std::cout << "Linux i2c Error" << std::endl;
|
||||
exit(1);
|
||||
#endif
|
||||
}
|
||||
};
|
||||
#endif // _I2C_LINUX_H_
|
@ -1,20 +0,0 @@
|
||||
#ifndef _IMPLEMENTATION_H_
|
||||
#define _IMPLEMENTATION_H_
|
||||
|
||||
#include "interface.hpp"
|
||||
#include <iostream>
|
||||
#include <unistd.h>
|
||||
|
||||
struct Device::deviceImpl
|
||||
{
|
||||
deviceImpl()
|
||||
{
|
||||
std::cout << "Device implementation Constarctor For Liunx "<< std::endl;
|
||||
}
|
||||
void printNumber(const uint8_t& no)
|
||||
{
|
||||
std::cout << "selected no: "<< unsigned(no*2) << std::endl;
|
||||
}
|
||||
};
|
||||
|
||||
#endif // _IMPLEMENTATION_H_
|
@ -1,20 +0,0 @@
|
||||
#ifndef _IMPLEMENTATION2_H_
|
||||
#define _IMPLEMENTATION2_H_
|
||||
|
||||
#include "interface.hpp"
|
||||
#include <iostream>
|
||||
#include <unistd.h>
|
||||
|
||||
struct Device::deviceImpl
|
||||
{
|
||||
deviceImpl()
|
||||
{
|
||||
std::cout << "Device implementation Constarctor For STM "<< std::endl;
|
||||
}
|
||||
void printNumber(const uint8_t& no)
|
||||
{
|
||||
std::cout << "selected no: "<< unsigned(no) << std::endl;
|
||||
}
|
||||
};
|
||||
|
||||
#endif // _IMPLEMENTATION2_H_
|
@ -1,24 +0,0 @@
|
||||
#include "interface.hpp"
|
||||
|
||||
#if PLATFORM == STM
|
||||
#include "implementations2.hpp"
|
||||
#endif
|
||||
|
||||
#if PLATFORM == LINUX
|
||||
#include "implementations.hpp"
|
||||
#endif
|
||||
|
||||
Device::Device()
|
||||
:pImpl(new deviceImpl())
|
||||
{
|
||||
}
|
||||
|
||||
void Device::printNumber(const uint8_t& no)
|
||||
{
|
||||
pImpl->printNumber(no);
|
||||
}
|
||||
|
||||
Device::~Device()
|
||||
{
|
||||
|
||||
}
|
@ -1,22 +0,0 @@
|
||||
#ifndef _INTERFACE_H_
|
||||
#define _INTERFACE_H_
|
||||
|
||||
#include "../config.h"
|
||||
#include <stdint.h>
|
||||
#include <memory>
|
||||
|
||||
class Device
|
||||
{
|
||||
public:
|
||||
Device();
|
||||
~Device();
|
||||
void printNumber(const uint8_t& no);
|
||||
|
||||
private:
|
||||
struct deviceImpl;
|
||||
std::unique_ptr<deviceImpl> pImpl;
|
||||
};
|
||||
|
||||
|
||||
|
||||
#endif // _INTERFACE_H_
|
@ -1,20 +0,0 @@
|
||||
cpp_src = $(wildcard *.cpp)
|
||||
|
||||
cpp_obj = $(cpp_src:.cpp=.o)
|
||||
c_obj = $(c_src:.c=.o)
|
||||
CC = g++
|
||||
CFLAGS = -Wall -pedantic -li2c
|
||||
LDFLAGS =
|
||||
EXEC = runtest
|
||||
|
||||
|
||||
all : $(EXEC)
|
||||
|
||||
$(EXEC): $(cpp_obj) $(c_obj)
|
||||
$(CC) -o $@ $^ $(LDFLAGS)
|
||||
|
||||
clean:
|
||||
rm -rf $(c_obj) $(cpp_obj) $(EXEC)
|
||||
|
||||
cleanall:
|
||||
rm -rf $(c_obj) $(cpp_obj) $(EXEC)
|
@ -1,66 +0,0 @@
|
||||
#include <stdint.h>
|
||||
#include <unistd.h>
|
||||
#include <iostream>
|
||||
#include <functional>
|
||||
|
||||
class Device
|
||||
{
|
||||
public:
|
||||
// cllback type
|
||||
typedef std::function<unsigned int(unsigned int)> cb_t;
|
||||
|
||||
Device(cb_t cb) : cb(cb)//Device(cp_t cb) : cb(cb)
|
||||
{
|
||||
|
||||
};
|
||||
|
||||
void do_something(void)
|
||||
{
|
||||
unsigned int return_value;
|
||||
return_value = cb(1);
|
||||
|
||||
std::cout << return_value << std::endl;
|
||||
};
|
||||
|
||||
private:
|
||||
cb_t cb;
|
||||
};
|
||||
|
||||
|
||||
class Interface
|
||||
{
|
||||
public:
|
||||
|
||||
Interface()
|
||||
{
|
||||
std::cout << "created interface object" << std::endl;
|
||||
};
|
||||
|
||||
unsigned int read_write(unsigned int input)
|
||||
{
|
||||
std:: cout << "calling read_write"<< std::endl;
|
||||
std::cout << input << std::endl;
|
||||
return 5;
|
||||
};
|
||||
|
||||
private:
|
||||
};
|
||||
|
||||
int main(void)
|
||||
{
|
||||
//using namespace std::placeholders; // for _1, _2, ...
|
||||
std::cout << "callback_example" << std::endl;
|
||||
|
||||
Interface iface;
|
||||
|
||||
//unsigned int ret = iface.read_write(1);
|
||||
|
||||
//std::cout << ret << std::endl;
|
||||
//auto cb = std::bind(&Interface::read_write, &iface,_1);
|
||||
auto cb = std::bind(&Interface::read_write, &iface, std::placeholders::_1);
|
||||
|
||||
Device device(cb);
|
||||
|
||||
device.do_something();
|
||||
return 0;
|
||||
}
|
@ -1,20 +0,0 @@
|
||||
cpp_src = $(wildcard *.cpp)
|
||||
|
||||
cpp_obj = $(cpp_src:.cpp=.o)
|
||||
c_obj = $(c_src:.c=.o)
|
||||
CC = g++
|
||||
CFLAGS = -Wall -pedantic -li2c
|
||||
LDFLAGS =
|
||||
EXEC = runtest
|
||||
|
||||
|
||||
all : $(EXEC)
|
||||
|
||||
$(EXEC): $(cpp_obj) $(c_obj)
|
||||
$(CC) -o $@ $^ $(LDFLAGS)
|
||||
|
||||
clean:
|
||||
rm -rf $(c_obj) $(cpp_obj) $(EXEC)
|
||||
|
||||
cleanall:
|
||||
rm -rf $(c_obj) $(cpp_obj) $(EXEC)
|
@ -1,21 +0,0 @@
|
||||
#include "comstack.hpp"
|
||||
|
||||
|
||||
Comstack::Comstack() :
|
||||
counter(0)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
|
||||
void Comstack::input(uint8_t value)
|
||||
{
|
||||
for(;counter < nBytes; counter ++) {
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -1,22 +0,0 @@
|
||||
#ifndef _COMSTACK_HPP_
|
||||
#define _COMSTACK_HPP_
|
||||
|
||||
#include <stdint.h>
|
||||
|
||||
|
||||
class Comstack
|
||||
{
|
||||
public:
|
||||
Comstack();
|
||||
|
||||
void input(uint8_t value);
|
||||
|
||||
|
||||
private:
|
||||
|
||||
uint8_t counter;
|
||||
const uint8_t nBytes = 5;
|
||||
|
||||
};
|
||||
|
||||
#endif // _COMSTACK_HPP_
|
@ -1,12 +0,0 @@
|
||||
#include <iostream>
|
||||
|
||||
|
||||
int main(void)
|
||||
{
|
||||
std::cout << "comstack test" << std::endl;
|
||||
|
||||
|
||||
|
||||
|
||||
return 0;
|
||||
}
|
@ -1,22 +0,0 @@
|
||||
cpp_src = $(wildcard *.cpp) $(wildcard ./drivers/bh1750/*.cpp) $(wildcard ./management/*.cpp) $(wildcard ./systems/*.cpp) $(wildcard ./periferals/i2c/*.cpp)
|
||||
|
||||
c_src = $(wildcard ./drivers/pf8574/*.c)
|
||||
|
||||
cpp_obj = $(cpp_src:.cpp=.o)
|
||||
c_obj = $(c_src:.c=.o)
|
||||
CC = g++
|
||||
CFLAGS = -Wall -pedantic -li2c
|
||||
LDFLAGS =
|
||||
EXEC = runtest
|
||||
|
||||
|
||||
all : $(EXEC)
|
||||
|
||||
$(EXEC): $(cpp_obj) $(c_obj)
|
||||
$(CC) -o $@ $^ $(LDFLAGS)
|
||||
|
||||
clean:
|
||||
rm -rf $(c_obj) $(cpp_obj) $(EXEC)
|
||||
|
||||
cleanall:
|
||||
rm -rf $(c_obj) $(cpp_obj) $(EXEC)
|
@ -1,61 +0,0 @@
|
||||
#include "bh1750.h"
|
||||
|
||||
|
||||
|
||||
Bh1750::Bh1750(i2c_ch1_pImpL *i2c)
|
||||
{
|
||||
i2c_bh1750 = i2c;
|
||||
currentMode = 0; // no mode selected
|
||||
}
|
||||
|
||||
uint8_t Bh1750::sleep()
|
||||
{
|
||||
i2c_bh1750->writeByte(BH1750_ADDR,BH1750_POWER_DOWN);
|
||||
return 0;
|
||||
}
|
||||
|
||||
uint8_t Bh1750::wake()
|
||||
{
|
||||
i2c_bh1750->writeByte(BH1750_ADDR,BH1750_POWER_ON);
|
||||
return 0;
|
||||
}
|
||||
|
||||
uint8_t Bh1750::reset()
|
||||
{
|
||||
i2c_bh1750->writeByte(BH1750_ADDR,BH1750_RESET);
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
float Bh1750::oneShot(uint8_t mode)
|
||||
{
|
||||
if(mode > 0)
|
||||
{
|
||||
if( mode == BH1750_ONE_TIME_HIGH_RES_MODE_1 ||
|
||||
mode == BH1750_ONE_TIME_HIGH_RES_MODE_2 ||
|
||||
mode == BH1750_ONE_TIME_LOW_RES_MODE)
|
||||
{
|
||||
return i2c_bh1750->readWord(BH1750_ADDR,mode) / 1.2 ;
|
||||
|
||||
}
|
||||
}
|
||||
std::cout<< "please seelct a one shot mode "<< std::endl;
|
||||
exit(1);
|
||||
return 0;
|
||||
}
|
||||
|
||||
float Bh1750::continious(uint8_t mode, uint8_t delayMs)
|
||||
{
|
||||
if(mode > 0)
|
||||
{
|
||||
if( mode == BH1750_CONTINUOUS_HIGH_RES_MODE_1 ||
|
||||
mode == BH1750_CONTINUOUS_HIGH_RES_MODE_2 ||
|
||||
mode == BH1750_CONTINUOUS_LOW_RES_MODE)
|
||||
{
|
||||
return i2c_bh1750->readWord(BH1750_ADDR,mode) / 1.2;
|
||||
}
|
||||
}
|
||||
std::cout<< "please seelct a continious mode "<< std::endl;
|
||||
exit(1);
|
||||
return 0;
|
||||
}
|
@ -1,50 +0,0 @@
|
||||
|
||||
#ifndef _BH1750_H_
|
||||
#define _BH1750_H_
|
||||
|
||||
#include <iostream>
|
||||
#include <array>
|
||||
#include <string>
|
||||
#include "../../periferals/i2c/i2c_ch1_pImpL.hpp"
|
||||
|
||||
|
||||
//Start measurement at 4lx resolution. Time typically 16ms.
|
||||
#define BH1750_CONTINUOUS_LOW_RES_MODE 0x13
|
||||
//Start measurement at 1lx resolution. Time typically 120ms
|
||||
#define BH1750_CONTINUOUS_HIGH_RES_MODE_1 0x10
|
||||
//Start measurement at 0.5lx resolution. Time typically 120ms
|
||||
#define BH1750_CONTINUOUS_HIGH_RES_MODE_2 0x11
|
||||
//Start measurement at 1lx resolution. Time typically 120ms
|
||||
//Device is automatically set to Power Down after measurement.
|
||||
#define BH1750_ONE_TIME_HIGH_RES_MODE_1 0x20
|
||||
//Start measurement at 0.5lx resolution. Time typically 120ms
|
||||
//Device is automatically set to Power Down after measurement.
|
||||
#define BH1750_ONE_TIME_HIGH_RES_MODE_2 0x21
|
||||
//Start measurement at 1lx resolution. Time typically 120ms
|
||||
//Device is automatically set to Power Down after measurement.
|
||||
#define BH1750_ONE_TIME_LOW_RES_MODE 0x23
|
||||
|
||||
#define BH1750_POWER_DOWN 0x00 // No active state
|
||||
#define BH1750_POWER_ON 0x01 // Power on
|
||||
#define BH1750_RESET 0x07 // Reset data register value
|
||||
|
||||
#define BH1750_ADDR 0x23 // Device Adress
|
||||
|
||||
class Bh1750
|
||||
{
|
||||
public:
|
||||
Bh1750(i2c_ch1_pImpL *i2c);
|
||||
uint8_t sleep(); // To be testes
|
||||
uint8_t wake(); // To be tested
|
||||
uint8_t reset(); // To be tested
|
||||
float oneShot(uint8_t mode); // ok
|
||||
float continious(uint8_t mode, uint8_t delayMs); // IMplment delay or make a delay class ???
|
||||
private:
|
||||
i2c_ch1_pImpL* i2c_bh1750;
|
||||
uint8_t high;
|
||||
uint8_t low;
|
||||
uint8_t currentMode;
|
||||
uint8_t currentState;
|
||||
};
|
||||
|
||||
#endif // _BH1750_H_
|
@ -1,69 +0,0 @@
|
||||
#!/usr/bin/python
|
||||
#---------------------------------------------------------------------
|
||||
# ___ ___ _ ____
|
||||
# / _ \/ _ \(_) __/__ __ __
|
||||
# / , _/ ___/ /\ \/ _ \/ // /
|
||||
# /_/|_/_/ /_/___/ .__/\_, /
|
||||
# /_/ /___/
|
||||
#
|
||||
# bh1750.py
|
||||
# Read data from a BH1750 digital light sensor.
|
||||
#
|
||||
# Author : Matt Hawkins
|
||||
# Date : 26/06/2018
|
||||
#
|
||||
# For more information please visit :
|
||||
# https://www.raspberrypi-spy.co.uk/?s=bh1750
|
||||
#
|
||||
#---------------------------------------------------------------------
|
||||
import smbus
|
||||
import time
|
||||
|
||||
# Define some constants from the datasheet
|
||||
|
||||
DEVICE = 0x23 # Default device I2C address
|
||||
|
||||
POWER_DOWN = 0x00 # No active state
|
||||
POWER_ON = 0x01 # Power on
|
||||
RESET = 0x07 # Reset data register value
|
||||
|
||||
# Start measurement at 4lx resolution. Time typically 16ms.
|
||||
CONTINUOUS_LOW_RES_MODE = 0x13
|
||||
# Start measurement at 1lx resolution. Time typically 120ms
|
||||
CONTINUOUS_HIGH_RES_MODE_1 = 0x10
|
||||
# Start measurement at 0.5lx resolution. Time typically 120ms
|
||||
CONTINUOUS_HIGH_RES_MODE_2 = 0x11
|
||||
# Start measurement at 1lx resolution. Time typically 120ms
|
||||
# Device is automatically set to Power Down after measurement.
|
||||
ONE_TIME_HIGH_RES_MODE_1 = 0x20
|
||||
# Start measurement at 0.5lx resolution. Time typically 120ms
|
||||
# Device is automatically set to Power Down after measurement.
|
||||
ONE_TIME_HIGH_RES_MODE_2 = 0x21
|
||||
# Start measurement at 1lx resolution. Time typically 120ms
|
||||
# Device is automatically set to Power Down after measurement.
|
||||
ONE_TIME_LOW_RES_MODE = 0x23
|
||||
|
||||
#bus = smbus.SMBus(0) # Rev 1 Pi uses 0
|
||||
bus = smbus.SMBus(1) # Rev 2 Pi uses 1
|
||||
|
||||
def convertToNumber(data):
|
||||
# Simple function to convert 2 bytes of data
|
||||
# into a decimal number. Optional parameter 'decimals'
|
||||
# will round to specified number of decimal places.
|
||||
result=(data[1] + (256 * data[0])) / 1.2
|
||||
return (result)
|
||||
|
||||
def readLight(addr=DEVICE):
|
||||
# Read data from I2C interface
|
||||
data = bus.read_i2c_block_data(addr,ONE_TIME_HIGH_RES_MODE_1)
|
||||
return convertToNumber(data)
|
||||
|
||||
def main():
|
||||
|
||||
while True:
|
||||
lightLevel=readLight()
|
||||
print("Light Level : " + format(lightLevel,'.2f') + " lx")
|
||||
time.sleep(0.5)
|
||||
|
||||
if __name__=="__main__":
|
||||
main()
|
@ -1,135 +0,0 @@
|
||||
//////////////////////////////////////////////////////////
|
||||
// Created by : Kerem Yollu
|
||||
// Project : Multiprise conectée
|
||||
// Nom : lcd.c
|
||||
// Header : lcd.h
|
||||
//_________________________Info_________________________
|
||||
//
|
||||
// Libraire pour le control d'un ecran lcd stadard (HD44780)
|
||||
// controlée par un expandeur de port PCF8574 en I2C.
|
||||
//
|
||||
//////////////////////////////////////////////////////////
|
||||
|
||||
#include "pf8574lcd.h"
|
||||
|
||||
i2c_ch1_pImpL *i2c_pf8574;
|
||||
|
||||
// Fonction pour initialiser l'écran vide en mode 4 bits
|
||||
int lcd_init(i2c_ch1_pImpL* i2c)
|
||||
{
|
||||
i2c_pf8574 = i2c;
|
||||
lcd_write(0x03,CMD_MODE); // Mise en mode 4 bit avec 4 essai conssecutif
|
||||
lcd_write(0x03,CMD_MODE);
|
||||
lcd_write(0x03,CMD_MODE);
|
||||
lcd_write(0x02,CMD_MODE);
|
||||
lcd_write(LCD_FUNCTIONSET | LCD_2LINE | LCD_5x8DOTS | LCD_4BITMODE ,CMD_MODE);
|
||||
lcd_write(LCD_DISPLAYCONTROL| LCD_DISPLAYON ,CMD_MODE);
|
||||
lcd_write(LCD_CLEARDISPLAY ,CMD_MODE);
|
||||
lcd_write(LCD_ENTRYMODESET | LCD_ENTRYLEFT ,CMD_MODE);
|
||||
return 1;
|
||||
}
|
||||
|
||||
|
||||
// Fonction qui vas afficher une pharse sur la ligne et colone qui lui est indiquée
|
||||
// Attention la fonction est capable de calculer la liongeure d0ubn phrase mais il ne
|
||||
// faut pas dépasser la limite d'une ligne totale qui est de 20 charactères max
|
||||
//
|
||||
// LCD 20x4
|
||||
// -------------------------------------------
|
||||
// ||# # # # # # # # # # # # # # # # # # # #||
|
||||
// ||# # # # # # # # # # # # # # # # # # # #||
|
||||
// ||# # # # # # # # # # # # # # # # # # # #||
|
||||
// ||# # # # # # # # # # # # # # # # # # # #||
|
||||
// -------------------------------------------
|
||||
void lcd_display_string(char line, char pos, char* charvalue)
|
||||
{
|
||||
char setPosition = 0;
|
||||
int i, S_length = 0;
|
||||
char buf[TOTAL_CHAR_CAP]; // buffer contenant la quantité de char dissponible sur une ligne
|
||||
|
||||
|
||||
S_length = strlen(charvalue);
|
||||
if (S_length > TOTAL_CHAR_CAP)
|
||||
{
|
||||
printf("LCD.C :\t La phrase est trop longue => %d MAX: %d \n", S_length, TOTAL_CHAR_CAP);
|
||||
exit(1);
|
||||
}
|
||||
else
|
||||
{
|
||||
strcpy(buf, charvalue);
|
||||
S_length = strlen(buf);
|
||||
|
||||
#ifdef LCD_DEBUG
|
||||
printf("LCD.C :\t Longeure de la prhase => %d \n", S_length);
|
||||
printf("LCD.C :\t Ligne selectionee => %d \n", line);
|
||||
#endif
|
||||
|
||||
if(line == 1) // Selection de la ligne d'écriture
|
||||
{
|
||||
setPosition = pos;
|
||||
}
|
||||
else if(line ==2)
|
||||
{
|
||||
setPosition = 0x40 + pos;
|
||||
}
|
||||
else if(line ==3)
|
||||
{
|
||||
setPosition = 0x14 + pos;
|
||||
}
|
||||
else if(line ==4)
|
||||
{
|
||||
setPosition = 0x54 + pos;
|
||||
}
|
||||
else
|
||||
{
|
||||
setPosition = -1;
|
||||
}
|
||||
|
||||
if(setPosition >= 0)
|
||||
{
|
||||
lcd_write(LCD_SETDDRAMADDR + setPosition, CMD_MODE);
|
||||
|
||||
for(i = 0; i < S_length; i++ )
|
||||
{
|
||||
lcd_write(buf[i],RS);
|
||||
}
|
||||
|
||||
#ifdef LCD_DEBUG
|
||||
printf("LCD.C :\t Ectiture reussit => %s \n", buf);
|
||||
#endif
|
||||
}
|
||||
else
|
||||
{
|
||||
printf("LCD.C :\t Mauvais numéro de ligne => %d MAX:4 Min:1 \n", line);
|
||||
exit(1);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Cette focntion nous pernet de faire pulser la ppin EN du lcd afin qu'il puisse
|
||||
// enregistrer les donées qui lui sont envoyées
|
||||
void ldc_pulse_En(char data)
|
||||
{
|
||||
|
||||
i2c_pf8574->writeByte(LCD_ADDRS,data | EN | LCD_BACKLIGHT);
|
||||
usleep(100);
|
||||
i2c_pf8574->writeByte(LCD_ADDRS,((data & ~EN) | LCD_BACKLIGHT));
|
||||
usleep(500);
|
||||
}
|
||||
|
||||
// Cette fonction nous permet d'envoyer un information de 8 bits sous format
|
||||
// de 2x4 bites. Celà est necessaire du au fonctionnement de l'expendeur de port PCF8574
|
||||
// qui est branché sur l'écran de facon a ce qu'il communiquer en 4 bits.
|
||||
void lcd_write(char cmd, char mode)
|
||||
{
|
||||
lcd_write_4bits(mode | (cmd & 0xF0));
|
||||
lcd_write_4bits(mode | ((cmd << 4) & 0xF0));
|
||||
}
|
||||
|
||||
// Fonction nous permettant d'nevoyer 4 bits dinformation sur le PC8574 ainsi que
|
||||
// le rétroéclairage.
|
||||
void lcd_write_4bits(char data)
|
||||
{
|
||||
i2c_pf8574->writeByte(LCD_ADDRS,data | LCD_BACKLIGHT);
|
||||
ldc_pulse_En(data);
|
||||
}
|
@ -1,80 +0,0 @@
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <stdint.h>
|
||||
#include <string.h>
|
||||
#include <unistd.h>
|
||||
#include <sys/time.h>
|
||||
#include <errno.h>
|
||||
#include <sys/types.h>
|
||||
#include <limits.h>
|
||||
#include "../../periferals/i2c/i2c_ch1_pImpL.hpp"
|
||||
|
||||
//#include "i2c_ch1_pImpL.cpp"
|
||||
|
||||
// commandes
|
||||
#define LCD_CLEARDISPLAY 0x01
|
||||
#define LCD_RETURNHOME 0x02
|
||||
#define LCD_ENTRYMODESET 0x04
|
||||
#define LCD_DISPLAYCONTROL 0x08
|
||||
#define LCD_CURSORSHIFT 0x10
|
||||
#define LCD_FUNCTIONSET 0x20
|
||||
#define LCD_SETCGRAMADDR 0x40
|
||||
#define LCD_SETDDRAMADDR 0x80
|
||||
|
||||
// flags pour mode d'ecriture
|
||||
#define LCD_ENTRYRIGHT 0x00
|
||||
#define LCD_ENTRYLEFT 0x02
|
||||
#define LCD_ENTRYSHIFTINCREMENT 0x01
|
||||
#define LCD_ENTRYSHIFTDECREMENT 0x00
|
||||
|
||||
// flags pour ecran on/off control
|
||||
#define LCD_DISPLAYON 0x04
|
||||
#define LCD_DISPLAYOFF 0x00
|
||||
#define LCD_CURSORON 0x02
|
||||
#define LCD_CURSOROFF 0x00
|
||||
#define LCD_BLINKON 0x01
|
||||
#define LCD_BLINKOFF 0x00
|
||||
|
||||
// flags pour display/decalage curseurr
|
||||
#define LCD_DISPLAYMOVE 0x08
|
||||
#define LCD_CURSORMOVE 0x00
|
||||
#define LCD_MOVERIGHT 0x04
|
||||
#define LCD_MOVELEFT 0x00
|
||||
|
||||
// flags pour function set
|
||||
#define LCD_8BITMODE 0x10
|
||||
#define LCD_4BITMODE 0x00
|
||||
#define LCD_2LINE 0x08
|
||||
#define LCD_1LINE 0x00
|
||||
#define LCD_5x1DOTS 0x04
|
||||
#define LCD_5x8DOTS 0x00
|
||||
|
||||
//flags pour le rétroeclairage
|
||||
#define LCD_BACKLIGHT 0x08
|
||||
#define LCD_NOBACKLIGHT 0x00
|
||||
|
||||
//Pins de gestion de donées.
|
||||
#define EN 0x04 // Enable bit
|
||||
#define RW 0x02 // Read/Write bit
|
||||
#define RS 0x01 // Register select bit
|
||||
|
||||
|
||||
//DIfferents mode enre commande est ecriture
|
||||
#define CMD_MODE 0x00
|
||||
#define CHAR_MODE 0x01
|
||||
|
||||
//adresse I2C du controlleur pour LCD
|
||||
#define LCD_ADDRS 0x27
|
||||
|
||||
//Nombre max de char sur une ligne
|
||||
#define TOTAL_CHAR_CAP 20
|
||||
|
||||
|
||||
int lcd_init(i2c_ch1_pImpL* i2c);
|
||||
void lcd_write_char( char charvalue);
|
||||
void lcd_display_string(char line, char pos, char* charvalue);
|
||||
void ldc_pulse_En(char data);
|
||||
void lcd_write(char cmd, char mode);
|
||||
void lcd_write_4bits(char data);
|
||||
|
||||
|
@ -1,62 +0,0 @@
|
||||
/*
|
||||
* Authors : Kerem Yollu & Edwin Koch
|
||||
* Date : 07.03.2021
|
||||
*
|
||||
* Description :
|
||||
* TODO : Write description or doxygene
|
||||
*
|
||||
*/
|
||||
|
||||
#include <iostream>
|
||||
#include <stdint.h>
|
||||
#include <unistd.h>
|
||||
#include "./management/errorHandling.h"
|
||||
#include "./management/commandManager.h"
|
||||
#include "./drivers/bh1750/bh1750.h"
|
||||
#include "./drivers/pf8574/pf8574lcd.h"
|
||||
|
||||
unsigned int miliSecond = 1000;
|
||||
|
||||
|
||||
ErrorHandler errorHandle;
|
||||
CommandManager commander;
|
||||
i2c_ch1_pImpL i2c(1);
|
||||
|
||||
Bh1750 lightSens(&i2c);
|
||||
|
||||
|
||||
|
||||
int initPlatform()
|
||||
{
|
||||
char* Msg = "hello";
|
||||
lcd_init(&i2c);
|
||||
lcd_display_string(1,1,Msg);
|
||||
// Dev. Module initialisation "Ex i2c_init() ...."
|
||||
return 0;
|
||||
}
|
||||
|
||||
void dummy()
|
||||
{
|
||||
while(1)
|
||||
{
|
||||
std::cout << "value "<< lightSens.continious(BH1750_CONTINUOUS_HIGH_RES_MODE_1,1) << " Lux" <<std::endl;
|
||||
usleep(150*miliSecond);
|
||||
}
|
||||
}
|
||||
|
||||
int main(int argc, char *argv[])
|
||||
{
|
||||
// Init
|
||||
initPlatform();
|
||||
std::cout << "Main" << std::endl;
|
||||
//errorHandle.addNewError(-34,"Test eroor 1");
|
||||
//errorHandle.handleError(-34);
|
||||
//commander.addNewCommand("test", "The test command for testing the test", dummy);
|
||||
//commander(argv[1]);
|
||||
|
||||
commander.addNewCommand("i2c", "The test command for testing the test", dummy);
|
||||
commander(argv[1]);
|
||||
|
||||
|
||||
return 1;
|
||||
}
|
@ -1,97 +0,0 @@
|
||||
/*
|
||||
* Authors : Kerem Yollu & Edwin Koch
|
||||
* Date : 07.03.2021
|
||||
*
|
||||
* Description :
|
||||
* TODO : Inplement singleton pattern
|
||||
* TODO : Write description
|
||||
* TODO : Comment the code wiht odxygen
|
||||
*
|
||||
*/
|
||||
|
||||
#include "commandManager.h"
|
||||
|
||||
|
||||
CommandManager::CommandManager():emptyIndex(0)
|
||||
{
|
||||
}
|
||||
|
||||
void CommandManager::addNewCommand( const std::string& commmand,
|
||||
const std::string& description,
|
||||
commanCallback_t callBack)
|
||||
{
|
||||
if(emptyIndex >= MAX_MUNBER_OF_COMMANDS) // Check if the command list is full
|
||||
{
|
||||
std::cout << "Error | Intern | Command list is full!" << std::endl;
|
||||
exit(1);
|
||||
}
|
||||
if(getLookUpIndex(commmand) >= 0) // Chek for command duplicats
|
||||
{
|
||||
std::cout << "Error | Intern | Command already exitst!" << std::endl;
|
||||
exit(1);
|
||||
}
|
||||
|
||||
|
||||
commandLookup[emptyIndex].commmand = commmand;
|
||||
commandLookup[emptyIndex].description = description;
|
||||
commandLookup[emptyIndex].callBack = callBack;
|
||||
emptyIndex++;
|
||||
}
|
||||
|
||||
void CommandManager::operator()(const std::string cmdName)
|
||||
{
|
||||
int index = 0;
|
||||
|
||||
if(cmdName == "help" || cmdName == "Help")
|
||||
{
|
||||
printHelp();
|
||||
exit(1);
|
||||
}
|
||||
|
||||
if(cmdName == "-h" || cmdName == "-H")
|
||||
{
|
||||
printCommads();
|
||||
exit(1);
|
||||
}
|
||||
|
||||
index = getLookUpIndex(cmdName);
|
||||
|
||||
if(index < 0)
|
||||
{
|
||||
std::cout << "Error | Intern | Invalid Command!" << std::endl;
|
||||
exit(1);
|
||||
}
|
||||
|
||||
commandLookup[index].callBack();
|
||||
exit(1);
|
||||
}
|
||||
|
||||
|
||||
//
|
||||
// Privat memeber functions
|
||||
//
|
||||
|
||||
|
||||
int CommandManager::getLookUpIndex(const std::string& cmd)
|
||||
{
|
||||
int index = 0;
|
||||
for (index = 0; index < emptyIndex; index++)
|
||||
{
|
||||
if(commandLookup[index].commmand == cmd)
|
||||
{
|
||||
return index;
|
||||
}
|
||||
}
|
||||
return -1;
|
||||
}
|
||||
|
||||
void CommandManager::printHelp()
|
||||
{
|
||||
std::cout << "Function : printHelp is under construction" << std::endl;
|
||||
}
|
||||
|
||||
void CommandManager::printCommads()
|
||||
{
|
||||
std::cout << "Function : printCommads is under construction" << std::endl;
|
||||
}
|
||||
|
@ -1,53 +0,0 @@
|
||||
/*
|
||||
* Authors : Kerem Yollu & Edwin Koch
|
||||
* Date : 07.03.2021
|
||||
*
|
||||
* Description :
|
||||
* TODO : Inplement singleton pattern
|
||||
* TODO : Write description
|
||||
* TODO : Comment the code wiht odxygen
|
||||
*
|
||||
*/
|
||||
|
||||
|
||||
#ifndef _COMMMANDMANAGER_H_
|
||||
#define _COMMMANDMANAGER_H_
|
||||
|
||||
#include <iostream>
|
||||
#include <array>
|
||||
#include <string>
|
||||
#include <functional>
|
||||
|
||||
#define MAX_MUNBER_OF_COMMANDS 4
|
||||
|
||||
class CommandManager
|
||||
{
|
||||
public:
|
||||
typedef std::function<void(void)> commanCallback_t;
|
||||
CommandManager();
|
||||
void addNewCommand( const std::string& commmand,
|
||||
const std::string& description,
|
||||
commanCallback_t callBack);
|
||||
|
||||
void operator()(const std::string cmdName);
|
||||
|
||||
|
||||
private:
|
||||
unsigned int emptyIndex;
|
||||
|
||||
struct commant_t{
|
||||
std::string commmand;
|
||||
std::string description;
|
||||
commanCallback_t callBack; // The Callback function could only be a void returning a void.
|
||||
};
|
||||
|
||||
std::array <commant_t, MAX_MUNBER_OF_COMMANDS> commandLookup;
|
||||
int getLookUpIndex(const std::string& cmd); // If command exists retunrs the index otherwise -1
|
||||
void printHelp(); // Prints all awailbale commands and their description.
|
||||
void printCommads(); // Prints all awailable commnads without description.
|
||||
};
|
||||
|
||||
|
||||
|
||||
|
||||
#endif // _COMMMANDMANAGER_H_
|
@ -1,58 +0,0 @@
|
||||
#include "errorHandling.h"
|
||||
|
||||
ErrorHandler::ErrorHandler(): emptyIndex(0)
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
void ErrorHandler::handleError(int errNo)
|
||||
{
|
||||
int index = 0;
|
||||
|
||||
index = getLookUpIndex(errNo);
|
||||
|
||||
if(index < 0)
|
||||
{
|
||||
std::cout << "The given error number does not exist\n" << "Tipp: use \"addNewError(Integer, String)\""<< std::endl;
|
||||
exit(1);
|
||||
}
|
||||
|
||||
std::cout << "Error | " << errNo << " | \"" << errorLookup[index].errMessage << "\""<<std::endl;
|
||||
exit(1);
|
||||
}
|
||||
|
||||
void ErrorHandler::addNewError(const int& no, const std::string& message)
|
||||
{
|
||||
if(emptyIndex >= MAX_NUMBER_OF_ERRORS) // Check if list is full
|
||||
{
|
||||
std::cout << "Error | Ultimate | List is full" << std::endl;
|
||||
exit(1);
|
||||
}
|
||||
|
||||
if(getLookUpIndex(no) >= 0) // Check if Error No already exists
|
||||
{
|
||||
std::cout << "Error | Intern | Error No: "<< no << " Exists ! PLease choose a different number !" << std::endl;
|
||||
exit(1);
|
||||
}
|
||||
|
||||
errorLookup[emptyIndex].errNo = no;
|
||||
errorLookup[emptyIndex].errMessage = message;
|
||||
emptyIndex++;
|
||||
}
|
||||
|
||||
//
|
||||
// Privat memeber functions
|
||||
//
|
||||
|
||||
int ErrorHandler::getLookUpIndex(int errNo)
|
||||
{
|
||||
int i = 0;
|
||||
for(i = 0; i < emptyIndex; i++)
|
||||
{
|
||||
if(errNo == errorLookup[i].errNo)
|
||||
{
|
||||
return i;
|
||||
}
|
||||
}
|
||||
return -1;
|
||||
}
|
@ -1,41 +0,0 @@
|
||||
/*
|
||||
* Authors : Kerem Yollu & Edwin Koch
|
||||
* Date : 07.03.2021
|
||||
*
|
||||
* Description :
|
||||
* TODO : Inplement singleton pattern
|
||||
* TODO : Write description
|
||||
* TODO : Comment the code wiht odxygen
|
||||
*
|
||||
*/
|
||||
|
||||
|
||||
#ifndef _ERRORHANDLIG_H_
|
||||
#define _ERRORHANDLIG_H_
|
||||
|
||||
#include <iostream>
|
||||
#include <array>
|
||||
#include <string>
|
||||
|
||||
#define MAX_NUMBER_OF_ERRORS 255
|
||||
|
||||
|
||||
class ErrorHandler
|
||||
{
|
||||
public:
|
||||
ErrorHandler();
|
||||
void addNewError(const int& no, const std::string& message);
|
||||
void handleError(int no);
|
||||
private:
|
||||
|
||||
struct error_t { //Struture of error entry for the errorLookup table
|
||||
int errNo;
|
||||
std::string errMessage;
|
||||
};
|
||||
|
||||
unsigned int emptyIndex; // Indicates the next empty slot in the errorLookup table.
|
||||
std::array <error_t,MAX_NUMBER_OF_ERRORS> errorLookup; // Where the errors go.
|
||||
int getLookUpIndex(int errNo); // If error number exists returns the index otherwise -1
|
||||
};
|
||||
|
||||
#endif // _ERRORHANDLIG_H_
|
@ -1,96 +0,0 @@
|
||||
#ifndef _I2C_H_
|
||||
#define _I2C_H_
|
||||
|
||||
namespace serial
|
||||
{
|
||||
enum i2c_id
|
||||
{
|
||||
i2c_ch0,
|
||||
i2c_ch1
|
||||
};
|
||||
|
||||
//
|
||||
// Base template class
|
||||
//
|
||||
|
||||
template<i2c_id id>
|
||||
class I2C
|
||||
{
|
||||
public:
|
||||
I2C(const uint8_t& mode); // Mode : Master or Slave
|
||||
uint8_t readByte(const uint8_t& address, const uint8_t& reg);
|
||||
uint16_t readWord(const uint8_t& address, const uint8_t& reg);
|
||||
uint8_t writeByte(const uint8_t& address, const uint8_t& data);
|
||||
uint8_t writeWord(const uint8_t& address, const uint8_t& reg, const uint16_t& data);
|
||||
|
||||
private:
|
||||
};
|
||||
|
||||
//
|
||||
// Template for channel 0
|
||||
//
|
||||
template<>
|
||||
class I2C <i2c_ch0>
|
||||
{
|
||||
public:
|
||||
I2C(const uint8_t& mode):pImpL(mode)
|
||||
{
|
||||
}
|
||||
uint8_t readByte(const uint8_t& address, const uint8_t& reg)
|
||||
{
|
||||
return pImpL -> readByte(address, reg);
|
||||
}
|
||||
uint16_t readWord(const uint8_t& address, const uint8_t& reg)
|
||||
{
|
||||
return pImpL -> readWord(address,reg);
|
||||
}
|
||||
uint8_t writeByte(const uint8_t& address, const uint8_t& data)
|
||||
{
|
||||
return pImpL -> writeByte(address, data);
|
||||
}
|
||||
uint8_t writeWord(const uint8_t& address, const uint8_t& reg, const uint16_t& data)
|
||||
{
|
||||
return pImpL -> writeWord(address, reg, data);
|
||||
}
|
||||
|
||||
private:
|
||||
class i2c_ch0_pImpL;
|
||||
std::unique_ptr<i2c_ch0_pImpL> pImpL;
|
||||
};
|
||||
|
||||
//
|
||||
// Template for channel 1
|
||||
//
|
||||
template<>
|
||||
class I2C <i2c_ch1>
|
||||
{
|
||||
public:
|
||||
I2C(const uint8_t& mode):pImpL(mode)
|
||||
{
|
||||
}
|
||||
uint8_t readByte(const uint8_t& address, const uint8_t& reg)
|
||||
{
|
||||
return pImpL -> readByte(address, reg);
|
||||
}
|
||||
uint16_t readWord(const uint8_t& address, const uint8_t& reg)
|
||||
{
|
||||
return pImpL -> readWord(address,reg);
|
||||
}
|
||||
uint8_t writeByte(const uint8_t& address, const uint8_t& data)
|
||||
{
|
||||
return pImpL -> writeByte(address, data);
|
||||
}
|
||||
uint8_t writeWord(const uint8_t& address, const uint8_t& reg, const uint16_t& data)
|
||||
{
|
||||
return pImpL -> writeWord(address, reg, data);
|
||||
}
|
||||
|
||||
private:
|
||||
class i2c_ch1_pImpL;
|
||||
std::unique_ptr<i2c_ch1_pImpL> pImpL;
|
||||
};
|
||||
|
||||
}// Namespace serial
|
||||
|
||||
|
||||
#endif // _I2C_H_
|
@ -1,106 +0,0 @@
|
||||
#include "i2c_ch0_pImpL.h"
|
||||
|
||||
#include <cstdio>
|
||||
#include <ostream>
|
||||
#include <iostream>
|
||||
#include <linux/i2c-dev.h>
|
||||
#include <fcntl.h>
|
||||
#include <unistd.h>
|
||||
#include <sys/ioctl.h>
|
||||
#include <sys/types.h>
|
||||
#include <sys/stat.h>
|
||||
|
||||
|
||||
#define PORT_I2C "/dev/i2c-1"
|
||||
|
||||
// some curious things https://www.john.geek.nz/2012/12/update-reading-data-from-a-bosch-bmp085-with-a-raspberry-pi/
|
||||
|
||||
|
||||
i2c_ch0_pImpL::i2c_ch0_pImpL(const uint8_t& mode)
|
||||
{
|
||||
char filename[20];
|
||||
snprintf(filename, 19, "/dev/i2c-%d", 0);
|
||||
|
||||
deviceDescriptor = open(filename, O_RDWR);
|
||||
if (deviceDescriptor < 0) {
|
||||
std::cout << "unable to open : "<< deviceDescriptor << " ! quiting" << std::endl;
|
||||
exit(1);
|
||||
}
|
||||
}
|
||||
|
||||
uint8_t i2c_ch0_pImpL::writeByte(const uint8_t& address, const uint8_t& data) // retuns 0 when a sucsessful transation ocures
|
||||
{
|
||||
if (ioctl(deviceDescriptor, I2C_SLAVE, address) < 0)
|
||||
{
|
||||
std::cout << "Unable to reach device : "<< address << " ! quiting" << std::endl;
|
||||
exit(1);
|
||||
}
|
||||
|
||||
send_buffer[0] = data;
|
||||
|
||||
if ((write(deviceDescriptor, send_buffer, 1)) != 1)
|
||||
{
|
||||
std::cout << "Unable to write quiting" << std::endl;
|
||||
exit(0);
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
uint8_t i2c_ch0_pImpL::readByte(const uint8_t& address, const uint8_t& reg)
|
||||
{
|
||||
if (ioctl(deviceDescriptor, I2C_SLAVE, address) < 0)
|
||||
{
|
||||
std::cout << "Unable to reach device : "<< address << " ! quiting" << std::endl;
|
||||
exit(1);
|
||||
}
|
||||
|
||||
writeByte(address,reg); //Initiate a write to indicate the desired register to read
|
||||
|
||||
if (read(deviceDescriptor, recieve_buffer, 1) != 1) // An then initare a read request of 1 byte
|
||||
{
|
||||
std::cout << "Unable to read quiting" << std::endl;
|
||||
exit(1);
|
||||
}
|
||||
return recieve_buffer[0] ;
|
||||
}
|
||||
|
||||
|
||||
uint8_t i2c_ch0_pImpL::writeWord(const uint8_t& address, const uint8_t& reg, const uint16_t& data) // retuns 0 when a sucsessful transation ocures
|
||||
{
|
||||
|
||||
if (ioctl(deviceDescriptor, I2C_SLAVE, address) < 0)
|
||||
{
|
||||
std::cout << "Unable to reach device : "<< address << " ! quiting" << std::endl;
|
||||
exit(1);
|
||||
}
|
||||
|
||||
send_buffer[0] = reg;
|
||||
send_buffer[1] = data;
|
||||
|
||||
if ((write(deviceDescriptor, send_buffer, 2)) != 2)
|
||||
{
|
||||
std::cout << "Unable to write quiting" << std::endl;
|
||||
exit(0);
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
uint16_t i2c_ch0_pImpL::readWord(const uint8_t& address, const uint8_t& reg)
|
||||
{
|
||||
uint16_t result = 0 ;
|
||||
if (ioctl(deviceDescriptor, I2C_SLAVE, address) < 0)
|
||||
{
|
||||
std::cout << "Unable to reach device : "<< address << " ! quiting" << std::endl;
|
||||
exit(1);
|
||||
}
|
||||
|
||||
writeByte(address,reg); //Initiate a write to indicate the desired register to read
|
||||
|
||||
if (read(deviceDescriptor, recieve_buffer, 2) != 2) // An then initare a read request of 2 bytes
|
||||
{
|
||||
std::cout << "Unable to read quiting" << std::endl;
|
||||
exit(1);
|
||||
}
|
||||
result = (recieve_buffer[0] << 8) + recieve_buffer[1] ;
|
||||
return result ;
|
||||
}
|
@ -1,32 +0,0 @@
|
||||
#ifndef _I2C_CH0_PIMPL_H_
|
||||
#define _I2C_CH0_PIMPL_H_
|
||||
|
||||
#include <stdint.h>
|
||||
#include <iostream>
|
||||
#include <string>
|
||||
#include "../../management/errorHandling.h"
|
||||
#include "../../systems/systemCall.h"
|
||||
|
||||
class i2c_ch0_pImpL
|
||||
{
|
||||
public:
|
||||
i2c_ch0_pImpL(const uint8_t& mode); // Mode : Master or Slave
|
||||
uint8_t readByte(const uint8_t& address, const uint8_t& reg);
|
||||
uint16_t readWord(const uint8_t& address, const uint8_t& reg);
|
||||
uint8_t writeByte(const uint8_t& address, const uint8_t& data);
|
||||
uint8_t writeWord(const uint8_t& address, const uint8_t& reg, const uint16_t& data);
|
||||
|
||||
|
||||
private:
|
||||
int16_t deviceDescriptor;
|
||||
uint8_t device_address;
|
||||
uint8_t device_reg;
|
||||
uint8_t send_buffer[32];
|
||||
uint8_t recieve_buffer[32];
|
||||
uint8_t blocks;
|
||||
uint8_t channel;
|
||||
uint8_t mode;
|
||||
};
|
||||
|
||||
|
||||
#endif // _I2C_CH0_PIMPL_H_
|
@ -1,106 +0,0 @@
|
||||
#include "i2c_ch1_pImpL.hpp"
|
||||
|
||||
#include <cstdio>
|
||||
#include <ostream>
|
||||
#include <iostream>
|
||||
#include <linux/i2c-dev.h>
|
||||
#include <fcntl.h>
|
||||
#include <unistd.h>
|
||||
#include <sys/ioctl.h>
|
||||
#include <sys/types.h>
|
||||
#include <sys/stat.h>
|
||||
|
||||
|
||||
#define PORT_I2C "/dev/i2c-1"
|
||||
|
||||
// some curious things https://www.john.geek.nz/2012/12/update-reading-data-from-a-bosch-bmp085-with-a-raspberry-pi/
|
||||
|
||||
|
||||
i2c_ch1_pImpL::i2c_ch1_pImpL(const uint8_t& mode)
|
||||
{
|
||||
char filename[20];
|
||||
snprintf(filename, 19, "/dev/i2c-%d", 1);
|
||||
|
||||
deviceDescriptor = open(filename, O_RDWR);
|
||||
if (deviceDescriptor < 0) {
|
||||
std::cout << "unable to open : "<< deviceDescriptor << " ! quiting" << std::endl;
|
||||
exit(1);
|
||||
}
|
||||
}
|
||||
|
||||
uint8_t i2c_ch1_pImpL::writeByte(const uint8_t& address, const uint8_t& data) // retuns 0 when a sucsessful transation ocures
|
||||
{
|
||||
if (ioctl(deviceDescriptor, I2C_SLAVE, address) < 0)
|
||||
{
|
||||
std::cout << "Unable to reach device : "<< address << " ! quiting" << std::endl;
|
||||
exit(1);
|
||||
}
|
||||
|
||||
send_buffer[0] = data;
|
||||
|
||||
if ((write(deviceDescriptor, send_buffer, 1)) != 1)
|
||||
{
|
||||
std::cout << "Unable to write quiting" << std::endl;
|
||||
exit(0);
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
uint8_t i2c_ch1_pImpL::readByte(const uint8_t& address, const uint8_t& reg)
|
||||
{
|
||||
if (ioctl(deviceDescriptor, I2C_SLAVE, address) < 0)
|
||||
{
|
||||
std::cout << "Unable to reach device : "<< address << " ! quiting" << std::endl;
|
||||
exit(1);
|
||||
}
|
||||
|
||||
writeByte(address,reg); //Initiate a write to indicate the desired register to read
|
||||
|
||||
if (read(deviceDescriptor, recieve_buffer, 1) != 1) // An then initare a read request of 1 byte
|
||||
{
|
||||
std::cout << "Unable to read quiting" << std::endl;
|
||||
exit(1);
|
||||
}
|
||||
return recieve_buffer[0] ;
|
||||
}
|
||||
|
||||
|
||||
uint8_t i2c_ch1_pImpL::writeWord(const uint8_t& address, const uint8_t& reg, const uint16_t& data) // retuns 0 when a sucsessful transation ocures
|
||||
{
|
||||
|
||||
if (ioctl(deviceDescriptor, I2C_SLAVE, address) < 0)
|
||||
{
|
||||
std::cout << "Unable to reach device : "<< address << " ! quiting" << std::endl;
|
||||
exit(1);
|
||||
}
|
||||
|
||||
send_buffer[0] = reg;
|
||||
send_buffer[1] = data;
|
||||
|
||||
if ((write(deviceDescriptor, send_buffer, 2)) != 2)
|
||||
{
|
||||
std::cout << "Unable to write quiting" << std::endl;
|
||||
exit(0);
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
uint16_t i2c_ch1_pImpL::readWord(const uint8_t& address, const uint8_t& reg)
|
||||
{
|
||||
uint16_t result = 0 ;
|
||||
if (ioctl(deviceDescriptor, I2C_SLAVE, address) < 0)
|
||||
{
|
||||
std::cout << "Unable to reach device : "<< address << " ! quiting" << std::endl;
|
||||
exit(1);
|
||||
}
|
||||
|
||||
writeByte(address,reg); //Initiate a write to indicate the desired register to read
|
||||
|
||||
if (read(deviceDescriptor, recieve_buffer, 2) != 2) // An then initare a read request of 2 bytes
|
||||
{
|
||||
std::cout << "Unable to read quiting" << std::endl;
|
||||
exit(1);
|
||||
}
|
||||
result = (recieve_buffer[0] << 8) + recieve_buffer[1] ;
|
||||
return result ;
|
||||
}
|
@ -1,32 +0,0 @@
|
||||
#ifndef _I2C_CH1_PIMPL_H_
|
||||
#define _I2C_CH1_PIMPL_H_
|
||||
|
||||
#include <stdint.h>
|
||||
#include <iostream>
|
||||
#include <string>
|
||||
#include "../../systems/systemCall.h"
|
||||
#include "../../management/errorHandling.h"
|
||||
|
||||
class i2c_ch1_pImpL
|
||||
{
|
||||
public:
|
||||
i2c_ch1_pImpL(const uint8_t& mode); // Mode : Master or Slave
|
||||
uint8_t readByte(const uint8_t& address, const uint8_t& reg);
|
||||
uint16_t readWord(const uint8_t& address, const uint8_t& reg);
|
||||
uint8_t writeByte(const uint8_t& address, const uint8_t& data);
|
||||
uint8_t writeWord(const uint8_t& address, const uint8_t& reg, const uint16_t& data);
|
||||
|
||||
|
||||
private:
|
||||
int16_t deviceDescriptor;
|
||||
uint8_t device_address;
|
||||
uint8_t device_reg;
|
||||
uint8_t send_buffer[32];
|
||||
uint8_t recieve_buffer[32];
|
||||
uint8_t blocks;
|
||||
uint8_t channel;
|
||||
uint8_t mode;
|
||||
};
|
||||
|
||||
|
||||
#endif // _I2C_CH1_PIMPL_H_
|
@ -1,106 +0,0 @@
|
||||
#include "i2c_driver.h"
|
||||
|
||||
#include <cstdio>
|
||||
#include <ostream>
|
||||
#include <iostream>
|
||||
#include <linux/i2c-dev.h>
|
||||
#include <fcntl.h>
|
||||
#include <unistd.h>
|
||||
#include <sys/ioctl.h>
|
||||
#include <sys/types.h>
|
||||
#include <sys/stat.h>
|
||||
|
||||
|
||||
#define PORT_I2C "/dev/i2c-1"
|
||||
|
||||
// some curious things https://www.john.geek.nz/2012/12/update-reading-data-from-a-bosch-bmp085-with-a-raspberry-pi/
|
||||
|
||||
|
||||
I2C_Driver::I2C_Driver(const uint8_t& channel, const uint8_t& mode)
|
||||
{
|
||||
char filename[20];
|
||||
snprintf(filename, 19, "/dev/i2c-%d", channel);
|
||||
|
||||
deviceDescriptor = open(filename, O_RDWR);
|
||||
if (deviceDescriptor < 0) {
|
||||
std::cout << "unable to open : "<< deviceDescriptor << " ! quiting" << std::endl;
|
||||
exit(1);
|
||||
}
|
||||
}
|
||||
|
||||
uint8_t I2C_Driver::writeByte(const uint8_t& address, const uint8_t& data) // retuns 0 when a sucsessful transation ocures
|
||||
{
|
||||
if (ioctl(deviceDescriptor, I2C_SLAVE, address) < 0)
|
||||
{
|
||||
std::cout << "Unable to reach device : "<< address << " ! quiting" << std::endl;
|
||||
exit(1);
|
||||
}
|
||||
|
||||
send_buffer[0] = data;
|
||||
|
||||
if ((write(deviceDescriptor, send_buffer, 1)) != 1)
|
||||
{
|
||||
std::cout << "Unable to write quiting" << std::endl;
|
||||
exit(0);
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
uint8_t I2C_Driver::readByte(const uint8_t& address, const uint8_t& reg)
|
||||
{
|
||||
if (ioctl(deviceDescriptor, I2C_SLAVE, address) < 0)
|
||||
{
|
||||
std::cout << "Unable to reach device : "<< address << " ! quiting" << std::endl;
|
||||
exit(1);
|
||||
}
|
||||
|
||||
writeByte(address,reg); //Initiate a write to indicate the desired register to read
|
||||
|
||||
if (read(deviceDescriptor, recieve_buffer, 1) != 1) // An then initare a read request of 1 byte
|
||||
{
|
||||
std::cout << "Unable to read quiting" << std::endl;
|
||||
exit(1);
|
||||
}
|
||||
return recieve_buffer[0] ;
|
||||
}
|
||||
|
||||
|
||||
uint8_t I2C_Driver::writeWord(const uint8_t& address, const uint8_t& reg, const uint16_t& data) // retuns 0 when a sucsessful transation ocures
|
||||
{
|
||||
|
||||
if (ioctl(deviceDescriptor, I2C_SLAVE, address) < 0)
|
||||
{
|
||||
std::cout << "Unable to reach device : "<< address << " ! quiting" << std::endl;
|
||||
exit(1);
|
||||
}
|
||||
|
||||
send_buffer[0] = reg;
|
||||
send_buffer[1] = data;
|
||||
|
||||
if ((write(deviceDescriptor, send_buffer, 2)) != 2)
|
||||
{
|
||||
std::cout << "Unable to write quiting" << std::endl;
|
||||
exit(0);
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
uint16_t I2C_Driver::readWord(const uint8_t& address, const uint8_t& reg)
|
||||
{
|
||||
uint16_t result = 0 ;
|
||||
if (ioctl(deviceDescriptor, I2C_SLAVE, address) < 0)
|
||||
{
|
||||
std::cout << "Unable to reach device : "<< address << " ! quiting" << std::endl;
|
||||
exit(1);
|
||||
}
|
||||
|
||||
writeByte(address,reg); //Initiate a write to indicate the desired register to read
|
||||
|
||||
if (read(deviceDescriptor, recieve_buffer, 2) != 2) // An then initare a read request of 2 bytes
|
||||
{
|
||||
std::cout << "Unable to read quiting" << std::endl;
|
||||
exit(1);
|
||||
}
|
||||
result = (recieve_buffer[0] << 8) + recieve_buffer[1] ;
|
||||
return result ;
|
||||
}
|
@ -1,28 +0,0 @@
|
||||
#include <stdint.h>
|
||||
#include <iostream>
|
||||
#include <string>
|
||||
#include "../../management/errorHandling.h"
|
||||
#include "../../systems/systemCall.h"
|
||||
|
||||
class I2C_Driver
|
||||
{
|
||||
public:
|
||||
I2C_Driver(const uint8_t& channel, const uint8_t& mode);
|
||||
uint8_t readByte(const uint8_t& address, const uint8_t& reg);
|
||||
uint16_t readWord(const uint8_t& address, const uint8_t& reg);
|
||||
uint8_t writeByte(const uint8_t& address, const uint8_t& data);
|
||||
uint8_t writeWord(const uint8_t& address, const uint8_t& reg, const uint16_t& data);
|
||||
|
||||
|
||||
private:
|
||||
int16_t deviceDescriptor;
|
||||
uint8_t device_address;
|
||||
uint8_t device_reg;
|
||||
uint8_t send_buffer[32];
|
||||
uint8_t recieve_buffer[32];
|
||||
uint8_t blocks;
|
||||
uint8_t channel;
|
||||
uint8_t mode;
|
||||
};
|
||||
|
||||
|
@ -1,15 +0,0 @@
|
||||
#include "systemCall.h"
|
||||
|
||||
|
||||
std::string execBash(const char* cmd) {
|
||||
std::array<char, 128> buffer;
|
||||
std::string result;
|
||||
std::unique_ptr<FILE, decltype(&pclose)> pipe(popen(cmd, "r"), pclose);
|
||||
if (!pipe) {
|
||||
throw std::runtime_error("popen() failed!");
|
||||
}
|
||||
while (fgets(buffer.data(), buffer.size(), pipe.get()) != nullptr) {
|
||||
result += buffer.data();
|
||||
}
|
||||
return result;
|
||||
}
|
@ -1,14 +0,0 @@
|
||||
#ifndef _SYSTEMCALL_H_
|
||||
#define _SYSTEMCALL_H_
|
||||
|
||||
#include <cstdio>
|
||||
#include <iostream>
|
||||
#include <memory>
|
||||
#include <stdexcept>
|
||||
#include <string>
|
||||
#include <array>
|
||||
|
||||
// Ide from : https://stackoverflow.com/questions/478898/how-do-i-execute-a-command-and-get-the-output-of-the-command-within-c-using-po
|
||||
std::string execBash(const char* cmd);
|
||||
|
||||
#endif // _SYSTEMCALL_H_
|
@ -1,68 +0,0 @@
|
||||
/**
|
||||
* \class Device
|
||||
*
|
||||
* \ingroup Devices
|
||||
*
|
||||
* \brief Device driver
|
||||
*
|
||||
* This class is meant as an example. It is not useful by itself
|
||||
* rather its usefulness is only a function of how much it helps
|
||||
* the reader. It is in a sense defined by the person who reads it
|
||||
* and otherwise does not exist in any real form.
|
||||
*
|
||||
* \note We are triying somthing
|
||||
*
|
||||
* \author (last to touch it) $Kerem : bv $
|
||||
*
|
||||
* \version $Revision: 1.5 $
|
||||
*
|
||||
* \date $Date: 2021/04/09 $
|
||||
*
|
||||
* Contact: yokyok
|
||||
*
|
||||
* Created on: Wed Apr 13 18:39:37 2005
|
||||
*
|
||||
* $Id: doxygen-howto.html,v 1.5 2005/04/14 14:16:20 bv Exp $
|
||||
*
|
||||
*/
|
||||
|
||||
|
||||
|
||||
#ifndef _DEVICE_H_
|
||||
#define _DEVICE_H_
|
||||
|
||||
#include <iostream>
|
||||
#include <stdint.h>
|
||||
#include <unistd.h>
|
||||
|
||||
/**
|
||||
* @brief Device Class
|
||||
* this calss defines a device.
|
||||
* @author Edwin
|
||||
* @date 2021 / 04 / 09
|
||||
* @version 1.0158
|
||||
*/
|
||||
|
||||
class Device{
|
||||
|
||||
public:
|
||||
Device();
|
||||
~Device();
|
||||
|
||||
|
||||
/**
|
||||
* @brief It \f$ \sum_{k=1}^n \f$ dose something \n it adds two thing together
|
||||
* @author Kerem
|
||||
* @date 2021 / 04 / 09
|
||||
* @version 1.0
|
||||
* @param uint8_t thing
|
||||
* @return uint8_t retunrs thing + foo
|
||||
*/
|
||||
uint8_t doSomething(uint8_t thing);
|
||||
|
||||
private:
|
||||
uint8_t foo;
|
||||
};
|
||||
|
||||
|
||||
#endif // _DEVICE_H_
|
@ -1,20 +0,0 @@
|
||||
cpp_src = $(wildcard *.cpp)
|
||||
|
||||
cpp_obj = $(cpp_src:.cpp=.o)
|
||||
c_obj = $(c_src:.c=.o)
|
||||
CC = g++
|
||||
CFLAGS = -Wall -pedantic -li2c
|
||||
LDFLAGS =
|
||||
EXEC = runtest
|
||||
|
||||
|
||||
all : $(EXEC)
|
||||
|
||||
$(EXEC): $(cpp_obj) $(c_obj)
|
||||
$(CC) -o $@ $^ $(LDFLAGS)
|
||||
|
||||
clean:
|
||||
rm -rf $(c_obj) $(cpp_obj) $(EXEC)
|
||||
|
||||
cleanall:
|
||||
rm -rf $(c_obj) $(cpp_obj) $(EXEC)
|
@ -1,13 +0,0 @@
|
||||
#include "device.hpp"
|
||||
|
||||
Device::Device():
|
||||
foo(1)
|
||||
{
|
||||
std::cout << "Init ok" << std::endl;
|
||||
}
|
||||
|
||||
uint8_t Device::doSomething(uint8_t thing)
|
||||
{
|
||||
std::cout << "Addition complete" << std::endl;
|
||||
return foo + thing;
|
||||
}
|
@ -1,68 +0,0 @@
|
||||
/**
|
||||
* \class Device
|
||||
*
|
||||
* \ingroup Devices
|
||||
*
|
||||
* \brief Device driver
|
||||
*
|
||||
* This class is meant as an example. It is not useful by itself
|
||||
* rather its usefulness is only a function of how much it helps
|
||||
* the reader. It is in a sense defined by the person who reads it
|
||||
* and otherwise does not exist in any real form.
|
||||
*
|
||||
* \note We are triying somthing
|
||||
*
|
||||
* \author (last to touch it) $Kerem : bv $
|
||||
*
|
||||
* \version $Revision: 1.5 $
|
||||
*
|
||||
* \date $Date: 2021/04/09 $
|
||||
*
|
||||
* Contact: yokyok
|
||||
*
|
||||
* Created on: Wed Apr 13 18:39:37 2005
|
||||
*
|
||||
* $Id: doxygen-howto.html,v 1.5 2005/04/14 14:16:20 bv Exp $
|
||||
*
|
||||
*/
|
||||
|
||||
|
||||
|
||||
#ifndef _DEVICE_H_
|
||||
#define _DEVICE_H_
|
||||
|
||||
#include <iostream>
|
||||
#include <stdint.h>
|
||||
#include <unistd.h>
|
||||
|
||||
/**
|
||||
* @brief Device Class
|
||||
* this calss defines a device.
|
||||
* @author Edwin
|
||||
* @date 2021 / 04 / 09
|
||||
* @version 1.0158
|
||||
*/
|
||||
|
||||
class Device{
|
||||
|
||||
public:
|
||||
Device();
|
||||
~Device();
|
||||
|
||||
|
||||
/**
|
||||
* @brief It \f[ \sum_{k=1}^n \f] dose something \n it adds two thing together
|
||||
* @author Kerem
|
||||
* @date 2021 / 04 / 09
|
||||
* @version 1.0
|
||||
* @param uint8_t thing
|
||||
* @return uint8_t retunrs thing + foo
|
||||
*/
|
||||
uint8_t doSomething(uint8_t thing);
|
||||
|
||||
private:
|
||||
uint8_t foo;
|
||||
};
|
||||
|
||||
|
||||
#endif // _DEVICE_H_
|
@ -1,8 +0,0 @@
|
||||
\documentclass{article}
|
||||
\usepackage{epsfig}
|
||||
\pagestyle{empty}
|
||||
\begin{document}
|
||||
\[ \sum_{k=1}^n \]
|
||||
\pagebreak
|
||||
|
||||
\end{document}
|
@ -1,78 +0,0 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
|
||||
<meta name="generator" content="Doxygen 1.8.13"/>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1"/>
|
||||
<title>HEllo: Class List</title>
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css"/>
|
||||
<script type="text/javascript" src="jquery.js"></script>
|
||||
<script type="text/javascript" src="dynsections.js"></script>
|
||||
<link href="search/search.css" rel="stylesheet" type="text/css"/>
|
||||
<script type="text/javascript" src="search/searchdata.js"></script>
|
||||
<script type="text/javascript" src="search/search.js"></script>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css" />
|
||||
</head>
|
||||
<body>
|
||||
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
||||
<div id="titlearea">
|
||||
<table cellspacing="0" cellpadding="0">
|
||||
<tbody>
|
||||
<tr style="height: 56px;">
|
||||
<td id="projectalign" style="padding-left: 0.5em;">
|
||||
<div id="projectname">HEllo
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<!-- end header part -->
|
||||
<!-- Generated by Doxygen 1.8.13 -->
|
||||
<script type="text/javascript">
|
||||
var searchBox = new SearchBox("searchBox", "search",false,'Search');
|
||||
</script>
|
||||
<script type="text/javascript" src="menudata.js"></script>
|
||||
<script type="text/javascript" src="menu.js"></script>
|
||||
<script type="text/javascript">
|
||||
$(function() {
|
||||
initMenu('',true,false,'search.php','Search');
|
||||
$(document).ready(function() { init_search(); });
|
||||
});
|
||||
</script>
|
||||
<div id="main-nav"></div>
|
||||
</div><!-- top -->
|
||||
<!-- window showing the filter options -->
|
||||
<div id="MSearchSelectWindow"
|
||||
onmouseover="return searchBox.OnSearchSelectShow()"
|
||||
onmouseout="return searchBox.OnSearchSelectHide()"
|
||||
onkeydown="return searchBox.OnSearchSelectKey(event)">
|
||||
</div>
|
||||
|
||||
<!-- iframe showing the search results (closed by default) -->
|
||||
<div id="MSearchResultsWindow">
|
||||
<iframe src="javascript:void(0)" frameborder="0"
|
||||
name="MSearchResults" id="MSearchResults">
|
||||
</iframe>
|
||||
</div>
|
||||
|
||||
<div class="header">
|
||||
<div class="headertitle">
|
||||
<div class="title">Class List</div> </div>
|
||||
</div><!--header-->
|
||||
<div class="contents">
|
||||
<div class="textblock">Here are the classes, structs, unions and interfaces with brief descriptions:</div><div class="directory">
|
||||
<table class="directory">
|
||||
<tr id="row_0_" class="even"><td class="entry"><span style="width:16px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="classDevice.html" target="_self">Device</a></td><td class="desc"><a class="el" href="classDevice.html" title="Device Class this calss defines a device. ">Device</a> Class this calss defines a device </td></tr>
|
||||
</table>
|
||||
</div><!-- directory -->
|
||||
</div><!-- contents -->
|
||||
<!-- start footer part -->
|
||||
<hr class="footer"/><address class="footer"><small>
|
||||
Generated by  <a href="http://www.doxygen.org/index.html">
|
||||
<img class="footer" src="doxygen.png" alt="doxygen"/>
|
||||
</a> 1.8.13
|
||||
</small></address>
|
||||
</body>
|
||||
</html>
|
Before Width: | Height: | Size: 676 B |
Before Width: | Height: | Size: 147 B |
@ -1,79 +0,0 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
|
||||
<meta name="generator" content="Doxygen 1.8.13"/>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1"/>
|
||||
<title>HEllo: Member List</title>
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css"/>
|
||||
<script type="text/javascript" src="jquery.js"></script>
|
||||
<script type="text/javascript" src="dynsections.js"></script>
|
||||
<link href="search/search.css" rel="stylesheet" type="text/css"/>
|
||||
<script type="text/javascript" src="search/searchdata.js"></script>
|
||||
<script type="text/javascript" src="search/search.js"></script>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css" />
|
||||
</head>
|
||||
<body>
|
||||
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
||||
<div id="titlearea">
|
||||
<table cellspacing="0" cellpadding="0">
|
||||
<tbody>
|
||||
<tr style="height: 56px;">
|
||||
<td id="projectalign" style="padding-left: 0.5em;">
|
||||
<div id="projectname">HEllo
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<!-- end header part -->
|
||||
<!-- Generated by Doxygen 1.8.13 -->
|
||||
<script type="text/javascript">
|
||||
var searchBox = new SearchBox("searchBox", "search",false,'Search');
|
||||
</script>
|
||||
<script type="text/javascript" src="menudata.js"></script>
|
||||
<script type="text/javascript" src="menu.js"></script>
|
||||
<script type="text/javascript">
|
||||
$(function() {
|
||||
initMenu('',true,false,'search.php','Search');
|
||||
$(document).ready(function() { init_search(); });
|
||||
});
|
||||
</script>
|
||||
<div id="main-nav"></div>
|
||||
<!-- window showing the filter options -->
|
||||
<div id="MSearchSelectWindow"
|
||||
onmouseover="return searchBox.OnSearchSelectShow()"
|
||||
onmouseout="return searchBox.OnSearchSelectHide()"
|
||||
onkeydown="return searchBox.OnSearchSelectKey(event)">
|
||||
</div>
|
||||
|
||||
<!-- iframe showing the search results (closed by default) -->
|
||||
<div id="MSearchResultsWindow">
|
||||
<iframe src="javascript:void(0)" frameborder="0"
|
||||
name="MSearchResults" id="MSearchResults">
|
||||
</iframe>
|
||||
</div>
|
||||
|
||||
</div><!-- top -->
|
||||
<div class="header">
|
||||
<div class="headertitle">
|
||||
<div class="title">Device Member List</div> </div>
|
||||
</div><!--header-->
|
||||
<div class="contents">
|
||||
|
||||
<p>This is the complete list of members for <a class="el" href="classDevice.html">Device</a>, including all inherited members.</p>
|
||||
<table class="directory">
|
||||
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Device</b>() (defined in <a class="el" href="classDevice.html">Device</a>)</td><td class="entry"><a class="el" href="classDevice.html">Device</a></td><td class="entry"></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="classDevice.html#aa83f583c01faf8da986b08d7ba65d537">doSomething</a>(uint8_t thing)</td><td class="entry"><a class="el" href="classDevice.html">Device</a></td><td class="entry"></td></tr>
|
||||
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>~Device</b>() (defined in <a class="el" href="classDevice.html">Device</a>)</td><td class="entry"><a class="el" href="classDevice.html">Device</a></td><td class="entry"></td></tr>
|
||||
</table></div><!-- contents -->
|
||||
<!-- start footer part -->
|
||||
<hr class="footer"/><address class="footer"><small>
|
||||
Generated by  <a href="http://www.doxygen.org/index.html">
|
||||
<img class="footer" src="doxygen.png" alt="doxygen"/>
|
||||
</a> 1.8.13
|
||||
</small></address>
|
||||
</body>
|
||||
</html>
|
@ -1,147 +0,0 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
|
||||
<meta name="generator" content="Doxygen 1.8.13"/>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1"/>
|
||||
<title>HEllo: Device Class Reference</title>
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css"/>
|
||||
<script type="text/javascript" src="jquery.js"></script>
|
||||
<script type="text/javascript" src="dynsections.js"></script>
|
||||
<link href="search/search.css" rel="stylesheet" type="text/css"/>
|
||||
<script type="text/javascript" src="search/searchdata.js"></script>
|
||||
<script type="text/javascript" src="search/search.js"></script>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css" />
|
||||
</head>
|
||||
<body>
|
||||
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
||||
<div id="titlearea">
|
||||
<table cellspacing="0" cellpadding="0">
|
||||
<tbody>
|
||||
<tr style="height: 56px;">
|
||||
<td id="projectalign" style="padding-left: 0.5em;">
|
||||
<div id="projectname">HEllo
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<!-- end header part -->
|
||||
<!-- Generated by Doxygen 1.8.13 -->
|
||||
<script type="text/javascript">
|
||||
var searchBox = new SearchBox("searchBox", "search",false,'Search');
|
||||
</script>
|
||||
<script type="text/javascript" src="menudata.js"></script>
|
||||
<script type="text/javascript" src="menu.js"></script>
|
||||
<script type="text/javascript">
|
||||
$(function() {
|
||||
initMenu('',true,false,'search.php','Search');
|
||||
$(document).ready(function() { init_search(); });
|
||||
});
|
||||
</script>
|
||||
<div id="main-nav"></div>
|
||||
<!-- window showing the filter options -->
|
||||
<div id="MSearchSelectWindow"
|
||||
onmouseover="return searchBox.OnSearchSelectShow()"
|
||||
onmouseout="return searchBox.OnSearchSelectHide()"
|
||||
onkeydown="return searchBox.OnSearchSelectKey(event)">
|
||||
</div>
|
||||
|
||||
<!-- iframe showing the search results (closed by default) -->
|
||||
<div id="MSearchResultsWindow">
|
||||
<iframe src="javascript:void(0)" frameborder="0"
|
||||
name="MSearchResults" id="MSearchResults">
|
||||
</iframe>
|
||||
</div>
|
||||
|
||||
</div><!-- top -->
|
||||
<div class="header">
|
||||
<div class="summary">
|
||||
<a href="#pub-methods">Public Member Functions</a> |
|
||||
<a href="classDevice-members.html">List of all members</a> </div>
|
||||
<div class="headertitle">
|
||||
<div class="title">Device Class Reference</div> </div>
|
||||
</div><!--header-->
|
||||
<div class="contents">
|
||||
|
||||
<p><a class="el" href="classDevice.html" title="Device Class this calss defines a device. ">Device</a> Class this calss defines a device.
|
||||
<a href="classDevice.html#details">More...</a></p>
|
||||
|
||||
<p><code>#include <<a class="el" href="device_8hpp_source.html">device.hpp</a>></code></p>
|
||||
<table class="memberdecls">
|
||||
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
|
||||
Public Member Functions</h2></td></tr>
|
||||
<tr class="memitem:aa83f583c01faf8da986b08d7ba65d537"><td class="memItemLeft" align="right" valign="top">uint8_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classDevice.html#aa83f583c01faf8da986b08d7ba65d537">doSomething</a> (uint8_t thing)</td></tr>
|
||||
<tr class="memdesc:aa83f583c01faf8da986b08d7ba65d537"><td class="mdescLeft"> </td><td class="mdescRight">It </p><p class="formulaDsp">
|
||||
<img class="formulaDsp" alt="\[ \sum_{k=1}^n \]" src="form_0.png"/>
|
||||
</p>
|
||||
<p> dose something <br />
|
||||
it adds two thing together. <a href="#aa83f583c01faf8da986b08d7ba65d537">More...</a><br /></td></tr>
|
||||
<tr class="separator:aa83f583c01faf8da986b08d7ba65d537"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
</table>
|
||||
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
|
||||
<div class="textblock"><p><a class="el" href="classDevice.html" title="Device Class this calss defines a device. ">Device</a> Class this calss defines a device. </p>
|
||||
<p><a class="el" href="classDevice.html" title="Device Class this calss defines a device. ">Device</a> driver.</p>
|
||||
<dl class="section author"><dt>Author</dt><dd>Edwin </dd></dl>
|
||||
<dl class="section date"><dt>Date</dt><dd>2021 / 04 / 09 </dd></dl>
|
||||
<dl class="section version"><dt>Version</dt><dd>1.0158</dd></dl>
|
||||
<p>This class is meant as an example. It is not useful by itself rather its usefulness is only a function of how much it helps the reader. It is in a sense defined by the person who reads it and otherwise does not exist in any real form.</p>
|
||||
<dl class="section note"><dt>Note</dt><dd>We are triying somthing</dd></dl>
|
||||
<dl class="section author"><dt>Author</dt><dd>(last to touch it) $Kerem : bv $</dd></dl>
|
||||
<dl class="section version"><dt>Version</dt><dd></dd></dl>
|
||||
<dl class="section rcs"><dt>Revision</dt><dd>1.5 </dd></dl>
|
||||
<dl class="section date"><dt>Date</dt><dd></dd></dl>
|
||||
<dl class="section rcs"><dt>Date</dt><dd>2021/04/09 </dd></dl>
|
||||
<p>Contact: yokyok</p>
|
||||
<p>Created on: Wed Apr 13 18:39:37 2005</p>
|
||||
<dl class="section rcs"><dt>Id</dt><dd>doxygen-howto.html,v 1.5 2005/04/14 14:16:20 bv Exp </dd></dl>
|
||||
</div><h2 class="groupheader">Member Function Documentation</h2>
|
||||
<a id="aa83f583c01faf8da986b08d7ba65d537"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#aa83f583c01faf8da986b08d7ba65d537">◆ </a></span>doSomething()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname">uint8_t Device::doSomething </td>
|
||||
<td>(</td>
|
||||
<td class="paramtype">uint8_t </td>
|
||||
<td class="paramname"><em>thing</em></td><td>)</td>
|
||||
<td></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
|
||||
<p>It </p><p class="formulaDsp">
|
||||
<img class="formulaDsp" alt="\[ \sum_{k=1}^n \]" src="form_0.png"/>
|
||||
</p>
|
||||
<p> dose something <br />
|
||||
it adds two thing together. </p>
|
||||
<dl class="section author"><dt>Author</dt><dd>Kerem </dd></dl>
|
||||
<dl class="section date"><dt>Date</dt><dd>2021 / 04 / 09 </dd></dl>
|
||||
<dl class="section version"><dt>Version</dt><dd>1.0 </dd></dl>
|
||||
<dl class="params"><dt>Parameters</dt><dd>
|
||||
<table class="params">
|
||||
<tr><td class="paramname">uint8_t</td><td>thing </td></tr>
|
||||
</table>
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="section return"><dt>Returns</dt><dd>uint8_t retunrs thing + foo </dd></dl>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<hr/>The documentation for this class was generated from the following files:<ul>
|
||||
<li><a class="el" href="device_8hpp_source.html">device.hpp</a></li>
|
||||
<li>device.cpp</li>
|
||||
</ul>
|
||||
</div><!-- contents -->
|
||||
<!-- start footer part -->
|
||||
<hr class="footer"/><address class="footer"><small>
|
||||
Generated by  <a href="http://www.doxygen.org/index.html">
|
||||
<img class="footer" src="doxygen.png" alt="doxygen"/>
|
||||
</a> 1.8.13
|
||||
</small></address>
|
||||
</body>
|
||||
</html>
|
@ -1,82 +0,0 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
|
||||
<meta name="generator" content="Doxygen 1.8.13"/>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1"/>
|
||||
<title>HEllo: Class Index</title>
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css"/>
|
||||
<script type="text/javascript" src="jquery.js"></script>
|
||||
<script type="text/javascript" src="dynsections.js"></script>
|
||||
<link href="search/search.css" rel="stylesheet" type="text/css"/>
|
||||
<script type="text/javascript" src="search/searchdata.js"></script>
|
||||
<script type="text/javascript" src="search/search.js"></script>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css" />
|
||||
</head>
|
||||
<body>
|
||||
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
||||
<div id="titlearea">
|
||||
<table cellspacing="0" cellpadding="0">
|
||||
<tbody>
|
||||
<tr style="height: 56px;">
|
||||
<td id="projectalign" style="padding-left: 0.5em;">
|
||||
<div id="projectname">HEllo
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<!-- end header part -->
|
||||
<!-- Generated by Doxygen 1.8.13 -->
|
||||
<script type="text/javascript">
|
||||
var searchBox = new SearchBox("searchBox", "search",false,'Search');
|
||||
</script>
|
||||
<script type="text/javascript" src="menudata.js"></script>
|
||||
<script type="text/javascript" src="menu.js"></script>
|
||||
<script type="text/javascript">
|
||||
$(function() {
|
||||
initMenu('',true,false,'search.php','Search');
|
||||
$(document).ready(function() { init_search(); });
|
||||
});
|
||||
</script>
|
||||
<div id="main-nav"></div>
|
||||
</div><!-- top -->
|
||||
<!-- window showing the filter options -->
|
||||
<div id="MSearchSelectWindow"
|
||||
onmouseover="return searchBox.OnSearchSelectShow()"
|
||||
onmouseout="return searchBox.OnSearchSelectHide()"
|
||||
onkeydown="return searchBox.OnSearchSelectKey(event)">
|
||||
</div>
|
||||
|
||||
<!-- iframe showing the search results (closed by default) -->
|
||||
<div id="MSearchResultsWindow">
|
||||
<iframe src="javascript:void(0)" frameborder="0"
|
||||
name="MSearchResults" id="MSearchResults">
|
||||
</iframe>
|
||||
</div>
|
||||
|
||||
<div class="header">
|
||||
<div class="headertitle">
|
||||
<div class="title">Class Index</div> </div>
|
||||
</div><!--header-->
|
||||
<div class="contents">
|
||||
<div class="qindex"><a class="qindex" href="#letter_d">d</a></div>
|
||||
<table class="classindex">
|
||||
<tr><td rowspan="2" valign="bottom"><a name="letter_d"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">  d  </div></td></tr></table>
|
||||
</td><td></td></tr>
|
||||
<tr><td></td></tr>
|
||||
<tr><td valign="top"><a class="el" href="classDevice.html">Device</a>   </td><td></td></tr>
|
||||
<tr><td></td><td></td></tr>
|
||||
</table>
|
||||
<div class="qindex"><a class="qindex" href="#letter_d">d</a></div>
|
||||
</div><!-- contents -->
|
||||
<!-- start footer part -->
|
||||
<hr class="footer"/><address class="footer"><small>
|
||||
Generated by  <a href="http://www.doxygen.org/index.html">
|
||||
<img class="footer" src="doxygen.png" alt="doxygen"/>
|
||||
</a> 1.8.13
|
||||
</small></address>
|
||||
</body>
|
||||
</html>
|
Before Width: | Height: | Size: 132 B |
@ -1,75 +0,0 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
|
||||
<meta name="generator" content="Doxygen 1.8.13"/>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1"/>
|
||||
<title>HEllo: device.hpp Source File</title>
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css"/>
|
||||
<script type="text/javascript" src="jquery.js"></script>
|
||||
<script type="text/javascript" src="dynsections.js"></script>
|
||||
<link href="search/search.css" rel="stylesheet" type="text/css"/>
|
||||
<script type="text/javascript" src="search/searchdata.js"></script>
|
||||
<script type="text/javascript" src="search/search.js"></script>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css" />
|
||||
</head>
|
||||
<body>
|
||||
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
||||
<div id="titlearea">
|
||||
<table cellspacing="0" cellpadding="0">
|
||||
<tbody>
|
||||
<tr style="height: 56px;">
|
||||
<td id="projectalign" style="padding-left: 0.5em;">
|
||||
<div id="projectname">HEllo
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<!-- end header part -->
|
||||
<!-- Generated by Doxygen 1.8.13 -->
|
||||
<script type="text/javascript">
|
||||
var searchBox = new SearchBox("searchBox", "search",false,'Search');
|
||||
</script>
|
||||
<script type="text/javascript" src="menudata.js"></script>
|
||||
<script type="text/javascript" src="menu.js"></script>
|
||||
<script type="text/javascript">
|
||||
$(function() {
|
||||
initMenu('',true,false,'search.php','Search');
|
||||
$(document).ready(function() { init_search(); });
|
||||
});
|
||||
</script>
|
||||
<div id="main-nav"></div>
|
||||
</div><!-- top -->
|
||||
<!-- window showing the filter options -->
|
||||
<div id="MSearchSelectWindow"
|
||||
onmouseover="return searchBox.OnSearchSelectShow()"
|
||||
onmouseout="return searchBox.OnSearchSelectHide()"
|
||||
onkeydown="return searchBox.OnSearchSelectKey(event)">
|
||||
</div>
|
||||
|
||||
<!-- iframe showing the search results (closed by default) -->
|
||||
<div id="MSearchResultsWindow">
|
||||
<iframe src="javascript:void(0)" frameborder="0"
|
||||
name="MSearchResults" id="MSearchResults">
|
||||
</iframe>
|
||||
</div>
|
||||
|
||||
<div class="header">
|
||||
<div class="headertitle">
|
||||
<div class="title">device.hpp</div> </div>
|
||||
</div><!--header-->
|
||||
<div class="contents">
|
||||
<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> </div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span> <span class="preprocessor">#ifndef _DEVICE_H_</span></div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span> <span class="preprocessor">#define _DEVICE_H_</span></div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span> </div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span> <span class="preprocessor">#include <iostream></span></div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span> <span class="preprocessor">#include <stdint.h></span></div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span> <span class="preprocessor">#include <unistd.h></span></div><div class="line"><a name="l00037"></a><span class="lineno"> 37</span> </div><div class="line"><a name="l00046"></a><span class="lineno"><a class="line" href="classDevice.html"> 46</a></span> <span class="keyword">class </span><a class="code" href="classDevice.html">Device</a>{</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span> </div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>  <span class="keyword">public</span>: </div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>  <a class="code" href="classDevice.html">Device</a>(); </div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>  ~<a class="code" href="classDevice.html">Device</a>(); </div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>  </div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>  </div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>  uint8_t <a class="code" href="classDevice.html#aa83f583c01faf8da986b08d7ba65d537">doSomething</a>(uint8_t thing); </div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span> </div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>  <span class="keyword">private</span>: </div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>  uint8_t foo; </div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span> };</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span> </div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span> </div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span> <span class="preprocessor">#endif // _DEVICE_H_</span></div><div class="ttc" id="classDevice_html"><div class="ttname"><a href="classDevice.html">Device</a></div><div class="ttdoc">Device Class this calss defines a device. </div><div class="ttdef"><b>Definition:</b> device.hpp:46</div></div>
|
||||
<div class="ttc" id="classDevice_html_aa83f583c01faf8da986b08d7ba65d537"><div class="ttname"><a href="classDevice.html#aa83f583c01faf8da986b08d7ba65d537">Device::doSomething</a></div><div class="ttdeci">uint8_t doSomething(uint8_t thing)</div><div class="ttdoc">It dose something it adds two thing together. </div><div class="ttdef"><b>Definition:</b> device.cpp:9</div></div>
|
||||
</div><!-- fragment --></div><!-- contents -->
|
||||
<!-- start footer part -->
|
||||
<hr class="footer"/><address class="footer"><small>
|
||||
Generated by  <a href="http://www.doxygen.org/index.html">
|
||||
<img class="footer" src="doxygen.png" alt="doxygen"/>
|
||||
</a> 1.8.13
|
||||
</small></address>
|
||||
</body>
|
||||
</html>
|
Before Width: | Height: | Size: 746 B |
Before Width: | Height: | Size: 3.7 KiB |
@ -1,97 +0,0 @@
|
||||
function toggleVisibility(linkObj)
|
||||
{
|
||||
var base = $(linkObj).attr('id');
|
||||
var summary = $('#'+base+'-summary');
|
||||
var content = $('#'+base+'-content');
|
||||
var trigger = $('#'+base+'-trigger');
|
||||
var src=$(trigger).attr('src');
|
||||
if (content.is(':visible')===true) {
|
||||
content.hide();
|
||||
summary.show();
|
||||
$(linkObj).addClass('closed').removeClass('opened');
|
||||
$(trigger).attr('src',src.substring(0,src.length-8)+'closed.png');
|
||||
} else {
|
||||
content.show();
|
||||
summary.hide();
|
||||
$(linkObj).removeClass('closed').addClass('opened');
|
||||
$(trigger).attr('src',src.substring(0,src.length-10)+'open.png');
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
function updateStripes()
|
||||
{
|
||||
$('table.directory tr').
|
||||
removeClass('even').filter(':visible:even').addClass('even');
|
||||
}
|
||||
|
||||
function toggleLevel(level)
|
||||
{
|
||||
$('table.directory tr').each(function() {
|
||||
var l = this.id.split('_').length-1;
|
||||
var i = $('#img'+this.id.substring(3));
|
||||
var a = $('#arr'+this.id.substring(3));
|
||||
if (l<level+1) {
|
||||
i.removeClass('iconfopen iconfclosed').addClass('iconfopen');
|
||||
a.html('▼');
|
||||
$(this).show();
|
||||
} else if (l==level+1) {
|
||||
i.removeClass('iconfclosed iconfopen').addClass('iconfclosed');
|
||||
a.html('►');
|
||||
$(this).show();
|
||||
} else {
|
||||
$(this).hide();
|
||||
}
|
||||
});
|
||||
updateStripes();
|
||||
}
|
||||
|
||||
function toggleFolder(id)
|
||||
{
|
||||
// the clicked row
|
||||
var currentRow = $('#row_'+id);
|
||||
|
||||
// all rows after the clicked row
|
||||
var rows = currentRow.nextAll("tr");
|
||||
|
||||
var re = new RegExp('^row_'+id+'\\d+_$', "i"); //only one sub
|
||||
|
||||
// only match elements AFTER this one (can't hide elements before)
|
||||
var childRows = rows.filter(function() { return this.id.match(re); });
|
||||
|
||||
// first row is visible we are HIDING
|
||||
if (childRows.filter(':first').is(':visible')===true) {
|
||||
// replace down arrow by right arrow for current row
|
||||
var currentRowSpans = currentRow.find("span");
|
||||
currentRowSpans.filter(".iconfopen").removeClass("iconfopen").addClass("iconfclosed");
|
||||
currentRowSpans.filter(".arrow").html('►');
|
||||
rows.filter("[id^=row_"+id+"]").hide(); // hide all children
|
||||
} else { // we are SHOWING
|
||||
// replace right arrow by down arrow for current row
|
||||
var currentRowSpans = currentRow.find("span");
|
||||
currentRowSpans.filter(".iconfclosed").removeClass("iconfclosed").addClass("iconfopen");
|
||||
currentRowSpans.filter(".arrow").html('▼');
|
||||
// replace down arrows by right arrows for child rows
|
||||
var childRowsSpans = childRows.find("span");
|
||||
childRowsSpans.filter(".iconfopen").removeClass("iconfopen").addClass("iconfclosed");
|
||||
childRowsSpans.filter(".arrow").html('►');
|
||||
childRows.show(); //show all children
|
||||
}
|
||||
updateStripes();
|
||||
}
|
||||
|
||||
|
||||
function toggleInherit(id)
|
||||
{
|
||||
var rows = $('tr.inherit.'+id);
|
||||
var img = $('tr.inherit_header.'+id+' img');
|
||||
var src = $(img).attr('src');
|
||||
if (rows.filter(':first').is(':visible')===true) {
|
||||
rows.css('display','none');
|
||||
$(img).attr('src',src.substring(0,src.length-8)+'closed.png');
|
||||
} else {
|
||||
rows.css('display','table-row'); // using show() causes jump in firefox
|
||||
$(img).attr('src',src.substring(0,src.length-10)+'open.png');
|
||||
}
|
||||
}
|
||||
|
@ -1,78 +0,0 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
|
||||
<meta name="generator" content="Doxygen 1.8.13"/>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1"/>
|
||||
<title>HEllo: File List</title>
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css"/>
|
||||
<script type="text/javascript" src="jquery.js"></script>
|
||||
<script type="text/javascript" src="dynsections.js"></script>
|
||||
<link href="search/search.css" rel="stylesheet" type="text/css"/>
|
||||
<script type="text/javascript" src="search/searchdata.js"></script>
|
||||
<script type="text/javascript" src="search/search.js"></script>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css" />
|
||||
</head>
|
||||
<body>
|
||||
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
||||
<div id="titlearea">
|
||||
<table cellspacing="0" cellpadding="0">
|
||||
<tbody>
|
||||
<tr style="height: 56px;">
|
||||
<td id="projectalign" style="padding-left: 0.5em;">
|
||||
<div id="projectname">HEllo
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<!-- end header part -->
|
||||
<!-- Generated by Doxygen 1.8.13 -->
|
||||
<script type="text/javascript">
|
||||
var searchBox = new SearchBox("searchBox", "search",false,'Search');
|
||||
</script>
|
||||
<script type="text/javascript" src="menudata.js"></script>
|
||||
<script type="text/javascript" src="menu.js"></script>
|
||||
<script type="text/javascript">
|
||||
$(function() {
|
||||
initMenu('',true,false,'search.php','Search');
|
||||
$(document).ready(function() { init_search(); });
|
||||
});
|
||||
</script>
|
||||
<div id="main-nav"></div>
|
||||
</div><!-- top -->
|
||||
<!-- window showing the filter options -->
|
||||
<div id="MSearchSelectWindow"
|
||||
onmouseover="return searchBox.OnSearchSelectShow()"
|
||||
onmouseout="return searchBox.OnSearchSelectHide()"
|
||||
onkeydown="return searchBox.OnSearchSelectKey(event)">
|
||||
</div>
|
||||
|
||||
<!-- iframe showing the search results (closed by default) -->
|
||||
<div id="MSearchResultsWindow">
|
||||
<iframe src="javascript:void(0)" frameborder="0"
|
||||
name="MSearchResults" id="MSearchResults">
|
||||
</iframe>
|
||||
</div>
|
||||
|
||||
<div class="header">
|
||||
<div class="headertitle">
|
||||
<div class="title">File List</div> </div>
|
||||
</div><!--header-->
|
||||
<div class="contents">
|
||||
<div class="textblock">Here is a list of all documented files with brief descriptions:</div><div class="directory">
|
||||
<table class="directory">
|
||||
<tr id="row_0_" class="even"><td class="entry"><span style="width:16px;display:inline-block;"> </span><a href="device_8hpp_source.html"><span class="icondoc"></span></a><b>device.hpp</b></td><td class="desc"></td></tr>
|
||||
</table>
|
||||
</div><!-- directory -->
|
||||
</div><!-- contents -->
|
||||
<!-- start footer part -->
|
||||
<hr class="footer"/><address class="footer"><small>
|
||||
Generated by  <a href="http://www.doxygen.org/index.html">
|
||||
<img class="footer" src="doxygen.png" alt="doxygen"/>
|
||||
</a> 1.8.13
|
||||
</small></address>
|
||||
</body>
|
||||
</html>
|
Before Width: | Height: | Size: 616 B |
Before Width: | Height: | Size: 597 B |
@ -1,74 +0,0 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
|
||||
<meta name="generator" content="Doxygen 1.8.13"/>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1"/>
|
||||
<title>HEllo: Class Members</title>
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css"/>
|
||||
<script type="text/javascript" src="jquery.js"></script>
|
||||
<script type="text/javascript" src="dynsections.js"></script>
|
||||
<link href="search/search.css" rel="stylesheet" type="text/css"/>
|
||||
<script type="text/javascript" src="search/searchdata.js"></script>
|
||||
<script type="text/javascript" src="search/search.js"></script>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css" />
|
||||
</head>
|
||||
<body>
|
||||
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
||||
<div id="titlearea">
|
||||
<table cellspacing="0" cellpadding="0">
|
||||
<tbody>
|
||||
<tr style="height: 56px;">
|
||||
<td id="projectalign" style="padding-left: 0.5em;">
|
||||
<div id="projectname">HEllo
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<!-- end header part -->
|
||||
<!-- Generated by Doxygen 1.8.13 -->
|
||||
<script type="text/javascript">
|
||||
var searchBox = new SearchBox("searchBox", "search",false,'Search');
|
||||
</script>
|
||||
<script type="text/javascript" src="menudata.js"></script>
|
||||
<script type="text/javascript" src="menu.js"></script>
|
||||
<script type="text/javascript">
|
||||
$(function() {
|
||||
initMenu('',true,false,'search.php','Search');
|
||||
$(document).ready(function() { init_search(); });
|
||||
});
|
||||
</script>
|
||||
<div id="main-nav"></div>
|
||||
</div><!-- top -->
|
||||
<!-- window showing the filter options -->
|
||||
<div id="MSearchSelectWindow"
|
||||
onmouseover="return searchBox.OnSearchSelectShow()"
|
||||
onmouseout="return searchBox.OnSearchSelectHide()"
|
||||
onkeydown="return searchBox.OnSearchSelectKey(event)">
|
||||
</div>
|
||||
|
||||
<!-- iframe showing the search results (closed by default) -->
|
||||
<div id="MSearchResultsWindow">
|
||||
<iframe src="javascript:void(0)" frameborder="0"
|
||||
name="MSearchResults" id="MSearchResults">
|
||||
</iframe>
|
||||
</div>
|
||||
|
||||
<div class="contents">
|
||||
<div class="textblock">Here is a list of all documented class members with links to the class documentation for each member:</div><ul>
|
||||
<li>doSomething()
|
||||
: <a class="el" href="classDevice.html#aa83f583c01faf8da986b08d7ba65d537">Device</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div><!-- contents -->
|
||||
<!-- start footer part -->
|
||||
<hr class="footer"/><address class="footer"><small>
|
||||
Generated by  <a href="http://www.doxygen.org/index.html">
|
||||
<img class="footer" src="doxygen.png" alt="doxygen"/>
|
||||
</a> 1.8.13
|
||||
</small></address>
|
||||
</body>
|
||||
</html>
|
@ -1,74 +0,0 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
|
||||
<meta name="generator" content="Doxygen 1.8.13"/>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1"/>
|
||||
<title>HEllo: Class Members - Functions</title>
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css"/>
|
||||
<script type="text/javascript" src="jquery.js"></script>
|
||||
<script type="text/javascript" src="dynsections.js"></script>
|
||||
<link href="search/search.css" rel="stylesheet" type="text/css"/>
|
||||
<script type="text/javascript" src="search/searchdata.js"></script>
|
||||
<script type="text/javascript" src="search/search.js"></script>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css" />
|
||||
</head>
|
||||
<body>
|
||||
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
||||
<div id="titlearea">
|
||||
<table cellspacing="0" cellpadding="0">
|
||||
<tbody>
|
||||
<tr style="height: 56px;">
|
||||
<td id="projectalign" style="padding-left: 0.5em;">
|
||||
<div id="projectname">HEllo
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<!-- end header part -->
|
||||
<!-- Generated by Doxygen 1.8.13 -->
|
||||
<script type="text/javascript">
|
||||
var searchBox = new SearchBox("searchBox", "search",false,'Search');
|
||||
</script>
|
||||
<script type="text/javascript" src="menudata.js"></script>
|
||||
<script type="text/javascript" src="menu.js"></script>
|
||||
<script type="text/javascript">
|
||||
$(function() {
|
||||
initMenu('',true,false,'search.php','Search');
|
||||
$(document).ready(function() { init_search(); });
|
||||
});
|
||||
</script>
|
||||
<div id="main-nav"></div>
|
||||
</div><!-- top -->
|
||||
<!-- window showing the filter options -->
|
||||
<div id="MSearchSelectWindow"
|
||||
onmouseover="return searchBox.OnSearchSelectShow()"
|
||||
onmouseout="return searchBox.OnSearchSelectHide()"
|
||||
onkeydown="return searchBox.OnSearchSelectKey(event)">
|
||||
</div>
|
||||
|
||||
<!-- iframe showing the search results (closed by default) -->
|
||||
<div id="MSearchResultsWindow">
|
||||
<iframe src="javascript:void(0)" frameborder="0"
|
||||
name="MSearchResults" id="MSearchResults">
|
||||
</iframe>
|
||||
</div>
|
||||
|
||||
<div class="contents">
|
||||
 <ul>
|
||||
<li>doSomething()
|
||||
: <a class="el" href="classDevice.html#aa83f583c01faf8da986b08d7ba65d537">Device</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div><!-- contents -->
|
||||
<!-- start footer part -->
|
||||
<hr class="footer"/><address class="footer"><small>
|
||||
Generated by  <a href="http://www.doxygen.org/index.html">
|
||||
<img class="footer" src="doxygen.png" alt="doxygen"/>
|
||||
</a> 1.8.13
|
||||
</small></address>
|
||||
</body>
|
||||
</html>
|
@ -1,22 +0,0 @@
|
||||
digraph "Graph Legend"
|
||||
{
|
||||
edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"];
|
||||
node [fontname="Helvetica",fontsize="10",shape=record];
|
||||
Node9 [shape="box",label="Inherited",fontsize="10",height=0.2,width=0.4,fontname="Helvetica",fillcolor="grey75",style="filled" fontcolor="black"];
|
||||
Node10 -> Node9 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
|
||||
Node10 [shape="box",label="PublicBase",fontsize="10",height=0.2,width=0.4,fontname="Helvetica",color="black",URL="$classPublicBase.html"];
|
||||
Node11 -> Node10 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
|
||||
Node11 [shape="box",label="Truncated",fontsize="10",height=0.2,width=0.4,fontname="Helvetica",color="red",URL="$classTruncated.html"];
|
||||
Node13 -> Node9 [dir="back",color="darkgreen",fontsize="10",style="solid",fontname="Helvetica"];
|
||||
Node13 [shape="box",label="ProtectedBase",fontsize="10",height=0.2,width=0.4,fontname="Helvetica",color="black",URL="$classProtectedBase.html"];
|
||||
Node14 -> Node9 [dir="back",color="firebrick4",fontsize="10",style="solid",fontname="Helvetica"];
|
||||
Node14 [shape="box",label="PrivateBase",fontsize="10",height=0.2,width=0.4,fontname="Helvetica",color="black",URL="$classPrivateBase.html"];
|
||||
Node15 -> Node9 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
|
||||
Node15 [shape="box",label="Undocumented",fontsize="10",height=0.2,width=0.4,fontname="Helvetica",color="grey75"];
|
||||
Node16 -> Node9 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
|
||||
Node16 [shape="box",label="Templ< int >",fontsize="10",height=0.2,width=0.4,fontname="Helvetica",color="black",URL="$classTempl.html"];
|
||||
Node17 -> Node16 [dir="back",color="orange",fontsize="10",style="dashed",label="< int >",fontname="Helvetica"];
|
||||
Node17 [shape="box",label="Templ< T >",fontsize="10",height=0.2,width=0.4,fontname="Helvetica",color="black",URL="$classTempl.html"];
|
||||
Node18 -> Node9 [dir="back",color="darkorchid3",fontsize="10",style="dashed",label="m_usedClass",fontname="Helvetica"];
|
||||
Node18 [shape="box",label="Used",fontsize="10",height=0.2,width=0.4,fontname="Helvetica",color="black",URL="$classUsed.html"];
|
||||
}
|
@ -1,102 +0,0 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
|
||||
<meta name="generator" content="Doxygen 1.8.13"/>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1"/>
|
||||
<title>HEllo: Graph Legend</title>
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css"/>
|
||||
<script type="text/javascript" src="jquery.js"></script>
|
||||
<script type="text/javascript" src="dynsections.js"></script>
|
||||
<link href="search/search.css" rel="stylesheet" type="text/css"/>
|
||||
<script type="text/javascript" src="search/searchdata.js"></script>
|
||||
<script type="text/javascript" src="search/search.js"></script>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css" />
|
||||
</head>
|
||||
<body>
|
||||
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
||||
<div id="titlearea">
|
||||
<table cellspacing="0" cellpadding="0">
|
||||
<tbody>
|
||||
<tr style="height: 56px;">
|
||||
<td id="projectalign" style="padding-left: 0.5em;">
|
||||
<div id="projectname">HEllo
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<!-- end header part -->
|
||||
<!-- Generated by Doxygen 1.8.13 -->
|
||||
<script type="text/javascript">
|
||||
var searchBox = new SearchBox("searchBox", "search",false,'Search');
|
||||
</script>
|
||||
<script type="text/javascript" src="menudata.js"></script>
|
||||
<script type="text/javascript" src="menu.js"></script>
|
||||
<script type="text/javascript">
|
||||
$(function() {
|
||||
initMenu('',true,false,'search.php','Search');
|
||||
$(document).ready(function() { init_search(); });
|
||||
});
|
||||
</script>
|
||||
<div id="main-nav"></div>
|
||||
</div><!-- top -->
|
||||
<!-- window showing the filter options -->
|
||||
<div id="MSearchSelectWindow"
|
||||
onmouseover="return searchBox.OnSearchSelectShow()"
|
||||
onmouseout="return searchBox.OnSearchSelectHide()"
|
||||
onkeydown="return searchBox.OnSearchSelectKey(event)">
|
||||
</div>
|
||||
|
||||
<!-- iframe showing the search results (closed by default) -->
|
||||
<div id="MSearchResultsWindow">
|
||||
<iframe src="javascript:void(0)" frameborder="0"
|
||||
name="MSearchResults" id="MSearchResults">
|
||||
</iframe>
|
||||
</div>
|
||||
|
||||
<div class="header">
|
||||
<div class="headertitle">
|
||||
<div class="title">Graph Legend</div> </div>
|
||||
</div><!--header-->
|
||||
<div class="contents">
|
||||
<p>This page explains how to interpret the graphs that are generated by doxygen.</p>
|
||||
<p>Consider the following example: </p><div class="fragment"><div class="line">/*! Invisible class because of truncation */</div><div class="line">class Invisible { };</div><div class="line"></div><div class="line">/*! Truncated class, inheritance relation is hidden */</div><div class="line">class Truncated : public Invisible { };</div><div class="line"></div><div class="line">/* Class not documented with doxygen comments */</div><div class="line">class Undocumented { };</div><div class="line"></div><div class="line">/*! Class that is inherited using public inheritance */</div><div class="line">class PublicBase : public Truncated { };</div><div class="line"></div><div class="line">/*! A template class */</div><div class="line">template<class T> class Templ { };</div><div class="line"></div><div class="line">/*! Class that is inherited using protected inheritance */</div><div class="line">class ProtectedBase { };</div><div class="line"></div><div class="line">/*! Class that is inherited using private inheritance */</div><div class="line">class PrivateBase { };</div><div class="line"></div><div class="line">/*! Class that is used by the Inherited class */</div><div class="line">class Used { };</div><div class="line"></div><div class="line">/*! Super class that inherits a number of other classes */</div><div class="line">class Inherited : public PublicBase,</div><div class="line"> protected ProtectedBase,</div><div class="line"> private PrivateBase,</div><div class="line"> public Undocumented,</div><div class="line"> public Templ<int></div><div class="line">{</div><div class="line"> private:</div><div class="line"> Used *m_usedClass;</div><div class="line">};</div></div><!-- fragment --><p> This will result in the following graph:</p>
|
||||
<center><div class="image">
|
||||
<img src="graph_legend.png"/>
|
||||
</div>
|
||||
</center><p>The boxes in the above graph have the following meaning: </p>
|
||||
<ul>
|
||||
<li>
|
||||
A filled gray box represents the struct or class for which the graph is generated. </li>
|
||||
<li>
|
||||
A box with a black border denotes a documented struct or class. </li>
|
||||
<li>
|
||||
A box with a gray border denotes an undocumented struct or class. </li>
|
||||
<li>
|
||||
A box with a red border denotes a documented struct or class forwhich not all inheritance/containment relations are shown. A graph is truncated if it does not fit within the specified boundaries. </li>
|
||||
</ul>
|
||||
<p>The arrows have the following meaning: </p>
|
||||
<ul>
|
||||
<li>
|
||||
A dark blue arrow is used to visualize a public inheritance relation between two classes. </li>
|
||||
<li>
|
||||
A dark green arrow is used for protected inheritance. </li>
|
||||
<li>
|
||||
A dark red arrow is used for private inheritance. </li>
|
||||
<li>
|
||||
A purple dashed arrow is used if a class is contained or used by another class. The arrow is labelled with the variable(s) through which the pointed class or struct is accessible. </li>
|
||||
<li>
|
||||
A yellow dashed arrow denotes a relation between a template instance and the template class it was instantiated from. The arrow is labelled with the template parameters of the instance. </li>
|
||||
</ul>
|
||||
</div><!-- contents -->
|
||||
<!-- start footer part -->
|
||||
<hr class="footer"/><address class="footer"><small>
|
||||
Generated by  <a href="http://www.doxygen.org/index.html">
|
||||
<img class="footer" src="doxygen.png" alt="doxygen"/>
|
||||
</a> 1.8.13
|
||||
</small></address>
|
||||
</body>
|
||||
</html>
|
@ -1 +0,0 @@
|
||||
387ff8eb65306fa251338d3c9bd7bfff
|
@ -1,73 +0,0 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
|
||||
<meta name="generator" content="Doxygen 1.8.13"/>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1"/>
|
||||
<title>HEllo: Main Page</title>
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css"/>
|
||||
<script type="text/javascript" src="jquery.js"></script>
|
||||
<script type="text/javascript" src="dynsections.js"></script>
|
||||
<link href="search/search.css" rel="stylesheet" type="text/css"/>
|
||||
<script type="text/javascript" src="search/searchdata.js"></script>
|
||||
<script type="text/javascript" src="search/search.js"></script>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css" />
|
||||
</head>
|
||||
<body>
|
||||
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
||||
<div id="titlearea">
|
||||
<table cellspacing="0" cellpadding="0">
|
||||
<tbody>
|
||||
<tr style="height: 56px;">
|
||||
<td id="projectalign" style="padding-left: 0.5em;">
|
||||
<div id="projectname">HEllo
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<!-- end header part -->
|
||||
<!-- Generated by Doxygen 1.8.13 -->
|
||||
<script type="text/javascript">
|
||||
var searchBox = new SearchBox("searchBox", "search",false,'Search');
|
||||
</script>
|
||||
<script type="text/javascript" src="menudata.js"></script>
|
||||
<script type="text/javascript" src="menu.js"></script>
|
||||
<script type="text/javascript">
|
||||
$(function() {
|
||||
initMenu('',true,false,'search.php','Search');
|
||||
$(document).ready(function() { init_search(); });
|
||||
});
|
||||
</script>
|
||||
<div id="main-nav"></div>
|
||||
</div><!-- top -->
|
||||
<!-- window showing the filter options -->
|
||||
<div id="MSearchSelectWindow"
|
||||
onmouseover="return searchBox.OnSearchSelectShow()"
|
||||
onmouseout="return searchBox.OnSearchSelectHide()"
|
||||
onkeydown="return searchBox.OnSearchSelectKey(event)">
|
||||
</div>
|
||||
|
||||
<!-- iframe showing the search results (closed by default) -->
|
||||
<div id="MSearchResultsWindow">
|
||||
<iframe src="javascript:void(0)" frameborder="0"
|
||||
name="MSearchResults" id="MSearchResults">
|
||||
</iframe>
|
||||
</div>
|
||||
|
||||
<div class="header">
|
||||
<div class="headertitle">
|
||||
<div class="title">HEllo Documentation</div> </div>
|
||||
</div><!--header-->
|
||||
<div class="contents">
|
||||
</div><!-- contents -->
|
||||
<!-- start footer part -->
|
||||
<hr class="footer"/><address class="footer"><small>
|
||||
Generated by  <a href="http://www.doxygen.org/index.html">
|
||||
<img class="footer" src="doxygen.png" alt="doxygen"/>
|
||||
</a> 1.8.13
|
||||
</small></address>
|
||||
</body>
|
||||
</html>
|
@ -1,26 +0,0 @@
|
||||
function initMenu(relPath,searchEnabled,serverSide,searchPage,search) {
|
||||
function makeTree(data,relPath) {
|
||||
var result='';
|
||||
if ('children' in data) {
|
||||
result+='<ul>';
|
||||
for (var i in data.children) {
|
||||
result+='<li><a href="'+relPath+data.children[i].url+'">'+
|
||||
data.children[i].text+'</a>'+
|
||||
makeTree(data.children[i],relPath)+'</li>';
|
||||
}
|
||||
result+='</ul>';
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
$('#main-nav').append(makeTree(menudata,relPath));
|
||||
$('#main-nav').children(':first').addClass('sm sm-dox').attr('id','main-menu');
|
||||
if (searchEnabled) {
|
||||
if (serverSide) {
|
||||
$('#main-menu').append('<li style="float:right"><div id="MSearchBox" class="MSearchBoxInactive"><div class="left"><form id="FSearchBox" action="'+searchPage+'" method="get"><img id="MSearchSelect" src="'+relPath+'search/mag.png" alt=""/><input type="text" id="MSearchField" name="query" value="'+search+'" size="20" accesskey="S" onfocus="searchBox.OnSearchFieldFocus(true)" onblur="searchBox.OnSearchFieldFocus(false)"></form></div><div class="right"></div></div></li>');
|
||||
} else {
|
||||
$('#main-menu').append('<li style="float:right"><div id="MSearchBox" class="MSearchBoxInactive"><span class="left"><img id="MSearchSelect" src="'+relPath+'search/mag_sel.png" onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" alt=""/><input type="text" id="MSearchField" value="'+search+'" accesskey="S" onfocus="searchBox.OnSearchFieldFocus(true)" onblur="searchBox.OnSearchFieldFocus(false)" onkeyup="searchBox.OnSearchFieldChange(event)"/></span><span class="right"><a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="'+relPath+'search/close.png" alt=""/></a></span></div></li>');
|
||||
}
|
||||
}
|
||||
$('#main-menu').smartmenus();
|
||||
}
|
@ -1,10 +0,0 @@
|
||||
var menudata={children:[
|
||||
{text:"Main Page",url:"index.html"},
|
||||
{text:"Classes",url:"annotated.html",children:[
|
||||
{text:"Class List",url:"annotated.html"},
|
||||
{text:"Class Index",url:"classes.html"},
|
||||
{text:"Class Members",url:"functions.html",children:[
|
||||
{text:"All",url:"functions.html"},
|
||||
{text:"Functions",url:"functions_func.html"}]}]},
|
||||
{text:"Files",url:"files.html",children:[
|
||||
{text:"File List",url:"files.html"}]}]}
|
Before Width: | Height: | Size: 153 B |
Before Width: | Height: | Size: 95 B |
Before Width: | Height: | Size: 98 B |
Before Width: | Height: | Size: 123 B |
@ -1,26 +0,0 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html><head><title></title>
|
||||
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||
<meta name="generator" content="Doxygen 1.8.13"/>
|
||||
<link rel="stylesheet" type="text/css" href="search.css"/>
|
||||
<script type="text/javascript" src="all_0.js"></script>
|
||||
<script type="text/javascript" src="search.js"></script>
|
||||
</head>
|
||||
<body class="SRPage">
|
||||
<div id="SRIndex">
|
||||
<div class="SRStatus" id="Loading">Loading...</div>
|
||||
<div id="SRResults"></div>
|
||||
<script type="text/javascript"><!--
|
||||
createResults();
|
||||
--></script>
|
||||
<div class="SRStatus" id="Searching">Searching...</div>
|
||||
<div class="SRStatus" id="NoMatches">No Matches</div>
|
||||
<script type="text/javascript"><!--
|
||||
document.getElementById("Loading").style.display="none";
|
||||
document.getElementById("NoMatches").style.display="none";
|
||||
var searchResults = new SearchResults("searchResults");
|
||||
searchResults.Search();
|
||||
--></script>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
@ -1,5 +0,0 @@
|
||||
var searchData=
|
||||
[
|
||||
['device',['Device',['../classDevice.html',1,'']]],
|
||||
['dosomething',['doSomething',['../classDevice.html#aa83f583c01faf8da986b08d7ba65d537',1,'Device']]]
|
||||
];
|
@ -1,26 +0,0 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html><head><title></title>
|
||||
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||
<meta name="generator" content="Doxygen 1.8.13"/>
|
||||
<link rel="stylesheet" type="text/css" href="search.css"/>
|
||||
<script type="text/javascript" src="classes_0.js"></script>
|
||||
<script type="text/javascript" src="search.js"></script>
|
||||
</head>
|
||||
<body class="SRPage">
|
||||
<div id="SRIndex">
|
||||
<div class="SRStatus" id="Loading">Loading...</div>
|
||||
<div id="SRResults"></div>
|
||||
<script type="text/javascript"><!--
|
||||
createResults();
|
||||
--></script>
|
||||
<div class="SRStatus" id="Searching">Searching...</div>
|
||||
<div class="SRStatus" id="NoMatches">No Matches</div>
|
||||
<script type="text/javascript"><!--
|
||||
document.getElementById("Loading").style.display="none";
|
||||
document.getElementById("NoMatches").style.display="none";
|
||||
var searchResults = new SearchResults("searchResults");
|
||||
searchResults.Search();
|
||||
--></script>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|