From b794a74dfd32db4e0ff6c4bcdf227b807aaeb5dc Mon Sep 17 00:00:00 2001 From: KimNayoung <skdud1201@ajou.ac.kr> Date: Mon, 24 Jan 2022 16:08:54 +0900 Subject: [PATCH] lec12 --- lec08/.string.c.swp | Bin 4096 -> 0 bytes lec08/token.c | 9 +- lec12/Makefile | 59 ++ lec12/Makefile.1 | 4 + lec12/Makefile.3 | 10 + lec12/Makefile.bak | 59 ++ lec12/cmaketest/CMakeCache.txt | 330 +++++++++ .../CMakeFiles/3.10.2/CMakeCCompiler.cmake | 73 ++ .../CMakeFiles/3.10.2/CMakeCXXCompiler.cmake | 75 +++ .../3.10.2/CMakeDetermineCompilerABI_C.bin | Bin 0 -> 8248 bytes .../3.10.2/CMakeDetermineCompilerABI_CXX.bin | Bin 0 -> 8264 bytes .../CMakeFiles/3.10.2/CMakeSystem.cmake | 15 + .../3.10.2/CompilerIdC/CMakeCCompilerId.c | 598 +++++++++++++++++ .../CompilerIdCXX/CMakeCXXCompilerId.cpp | 576 ++++++++++++++++ .../CMakeDirectoryInformation.cmake | 16 + lec12/cmaketest/CMakeFiles/CMakeOutput.log | 633 ++++++++++++++++++ lec12/cmaketest/CMakeFiles/Makefile.cmake | 118 ++++ lec12/cmaketest/CMakeFiles/Makefile2 | 108 +++ .../CMakeFiles/TargetDirectories.txt | 3 + lec12/cmaketest/CMakeFiles/cmake.check_cache | 1 + lec12/cmaketest/CMakeFiles/feature_tests.bin | Bin 0 -> 12312 bytes lec12/cmaketest/CMakeFiles/feature_tests.c | 34 + lec12/cmaketest/CMakeFiles/feature_tests.cxx | 405 +++++++++++ .../CMakeFiles/main.dir/C.includecache | 30 + .../CMakeFiles/main.dir/DependInfo.cmake | 21 + .../cmaketest/CMakeFiles/main.dir/build.make | 140 ++++ .../CMakeFiles/main.dir/cmake_clean.cmake | 11 + .../CMakeFiles/main.dir/depend.internal | 11 + .../cmaketest/CMakeFiles/main.dir/depend.make | 11 + .../cmaketest/CMakeFiles/main.dir/flags.make | 10 + lec12/cmaketest/CMakeFiles/main.dir/link.txt | 1 + .../CMakeFiles/main.dir/progress.make | 4 + lec12/cmaketest/CMakeFiles/progress.marks | 1 + lec12/cmaketest/CMakeLists.txt | 2 + lec12/cmaketest/Makefile | 208 ++++++ lec12/cmaketest/cmake_install.cmake | 49 ++ lec12/cmaketest/fx_head.h | 79 +++ lec12/cmaketest/fx_s15_16.c | 7 + lec12/cmaketest/fx_s15_16.h | 37 + lec12/cmaketest/main | Bin 0 -> 8376 bytes lec12/cmaketest/main.c | 12 + lec12/cmaketest/test2.c | 46 ++ lec12/file | 0 lec12/fx_head.h | 79 +++ lec12/fx_s15_16.c | 7 + lec12/fx_s15_16.h | 37 + lec12/main | Bin 0 -> 11840 bytes lec12/main.c | 12 + lec12/main_for_debug | Bin 0 -> 11840 bytes lec12/test2.c | 46 ++ 50 files changed, 3983 insertions(+), 4 deletions(-) delete mode 100644 lec08/.string.c.swp create mode 100644 lec12/Makefile create mode 100644 lec12/Makefile.1 create mode 100644 lec12/Makefile.3 create mode 100644 lec12/Makefile.bak create mode 100644 lec12/cmaketest/CMakeCache.txt create mode 100644 lec12/cmaketest/CMakeFiles/3.10.2/CMakeCCompiler.cmake create mode 100644 lec12/cmaketest/CMakeFiles/3.10.2/CMakeCXXCompiler.cmake create mode 100755 lec12/cmaketest/CMakeFiles/3.10.2/CMakeDetermineCompilerABI_C.bin create mode 100755 lec12/cmaketest/CMakeFiles/3.10.2/CMakeDetermineCompilerABI_CXX.bin create mode 100644 lec12/cmaketest/CMakeFiles/3.10.2/CMakeSystem.cmake create mode 100644 lec12/cmaketest/CMakeFiles/3.10.2/CompilerIdC/CMakeCCompilerId.c create mode 100644 lec12/cmaketest/CMakeFiles/3.10.2/CompilerIdCXX/CMakeCXXCompilerId.cpp create mode 100644 lec12/cmaketest/CMakeFiles/CMakeDirectoryInformation.cmake create mode 100644 lec12/cmaketest/CMakeFiles/CMakeOutput.log create mode 100644 lec12/cmaketest/CMakeFiles/Makefile.cmake create mode 100644 lec12/cmaketest/CMakeFiles/Makefile2 create mode 100644 lec12/cmaketest/CMakeFiles/TargetDirectories.txt create mode 100644 lec12/cmaketest/CMakeFiles/cmake.check_cache create mode 100755 lec12/cmaketest/CMakeFiles/feature_tests.bin create mode 100644 lec12/cmaketest/CMakeFiles/feature_tests.c create mode 100644 lec12/cmaketest/CMakeFiles/feature_tests.cxx create mode 100644 lec12/cmaketest/CMakeFiles/main.dir/C.includecache create mode 100644 lec12/cmaketest/CMakeFiles/main.dir/DependInfo.cmake create mode 100644 lec12/cmaketest/CMakeFiles/main.dir/build.make create mode 100644 lec12/cmaketest/CMakeFiles/main.dir/cmake_clean.cmake create mode 100644 lec12/cmaketest/CMakeFiles/main.dir/depend.internal create mode 100644 lec12/cmaketest/CMakeFiles/main.dir/depend.make create mode 100644 lec12/cmaketest/CMakeFiles/main.dir/flags.make create mode 100644 lec12/cmaketest/CMakeFiles/main.dir/link.txt create mode 100644 lec12/cmaketest/CMakeFiles/main.dir/progress.make create mode 100644 lec12/cmaketest/CMakeFiles/progress.marks create mode 100644 lec12/cmaketest/CMakeLists.txt create mode 100644 lec12/cmaketest/Makefile create mode 100644 lec12/cmaketest/cmake_install.cmake create mode 100644 lec12/cmaketest/fx_head.h create mode 100644 lec12/cmaketest/fx_s15_16.c create mode 100644 lec12/cmaketest/fx_s15_16.h create mode 100755 lec12/cmaketest/main create mode 100644 lec12/cmaketest/main.c create mode 100644 lec12/cmaketest/test2.c create mode 100644 lec12/file create mode 100644 lec12/fx_head.h create mode 100644 lec12/fx_s15_16.c create mode 100644 lec12/fx_s15_16.h create mode 100755 lec12/main create mode 100644 lec12/main.c create mode 100755 lec12/main_for_debug create mode 100644 lec12/test2.c diff --git a/lec08/.string.c.swp b/lec08/.string.c.swp deleted file mode 100644 index 31bd9a708cc8db242a937817b44045227d8c72b4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4096 zcmYc?2=nw+u+TGLU|?Vn01*&8E0BSqAUWB<zy!j_N2X_%=p|<5m+B=Z>tz?=R#^uz zP`@BKSwAN=*}y`-xTGjEFI_Jgx1Ld%(GVC70cwQ+FN3j>AvmimD=8`n3x!h4;8Al% gLtr!nMnhmU1V%$(Gz3ONU^E0qLtr!nhCm1a0Dqknx&QzG diff --git a/lec08/token.c b/lec08/token.c index a9670a4..ec6167e 100644 --- a/lec08/token.c +++ b/lec08/token.c @@ -1,16 +1,17 @@ #include <stdio.h> #define DECLARE_STRUCT_TYPE(name) typedef struct name##_s name##_t +#define str(s) #s +#define ST(a) #a int main(){ - #define str(s) #s printf("%s \n", str(1+2)); - #define ST(a) #a char name[] = ST(Nayoung); printf("%s \n", name); - - DECLARE_STRUCT_TYPE(g_object); + + char type[] = str(DECLARE_STRUCT_TYPE(g_object)); + printf("%s \n", type); return 0; } diff --git a/lec12/Makefile b/lec12/Makefile new file mode 100644 index 0000000..35d1541 --- /dev/null +++ b/lec12/Makefile @@ -0,0 +1,59 @@ +OBJS = main.o fx_s15_16.o +#CCFLAGS = -Wall -g -pg +CCFLAGS = -Wall -O3 +main: $(OBJS) + cc $(OBJS) $(CCFLAGS) -o $@ +.c.o: + cc -c $(CCFLAGS) $< +debug: main.c fx_s15_16.c fx_s15_16.h fx_head.h + cc -o main_for_debug -pg -g main.c fx_s15_16.c +clean: + rm main $(OBJS) +# DO NOT DELETE +main.o: main.c /usr/include/stdc-predef.h fx_head.h fx_s15_16.h \ + /usr/include/math.h \ + /usr/include/x86_64-linux-gnu/bits/libc-header-start.h \ + /usr/include/features.h /usr/include/x86_64-linux-gnu/sys/cdefs.h \ + /usr/include/x86_64-linux-gnu/bits/wordsize.h \ + /usr/include/x86_64-linux-gnu/bits/long-double.h \ + /usr/include/x86_64-linux-gnu/gnu/stubs.h \ + /usr/include/x86_64-linux-gnu/gnu/stubs-64.h \ + /usr/include/x86_64-linux-gnu/bits/types.h \ + /usr/include/x86_64-linux-gnu/bits/typesizes.h \ + /usr/include/x86_64-linux-gnu/bits/math-vector.h \ + /usr/include/x86_64-linux-gnu/bits/libm-simd-decl-stubs.h \ + /usr/include/x86_64-linux-gnu/bits/floatn.h \ + /usr/include/x86_64-linux-gnu/bits/floatn-common.h \ + /usr/include/x86_64-linux-gnu/bits/flt-eval-method.h \ + /usr/include/x86_64-linux-gnu/bits/fp-logb.h \ + /usr/include/x86_64-linux-gnu/bits/fp-fast.h \ + /usr/include/x86_64-linux-gnu/bits/mathcalls-helper-functions.h \ + /usr/include/x86_64-linux-gnu/bits/mathcalls.h /usr/include/stdio.h \ + /usr/lib/gcc/x86_64-linux-gnu/7/include/stddef.h \ + /usr/include/x86_64-linux-gnu/bits/types/__FILE.h \ + /usr/include/x86_64-linux-gnu/bits/types/FILE.h \ + /usr/include/x86_64-linux-gnu/bits/libio.h \ + /usr/include/x86_64-linux-gnu/bits/_G_config.h \ + /usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h \ + /usr/lib/gcc/x86_64-linux-gnu/7/include/stdarg.h \ + /usr/include/x86_64-linux-gnu/bits/stdio_lim.h \ + /usr/include/x86_64-linux-gnu/bits/sys_errlist.h +fx_s15_16.o: fx_s15_16.c /usr/include/stdc-predef.h fx_head.h fx_s15_16.h \ + /usr/include/math.h \ + /usr/include/x86_64-linux-gnu/bits/libc-header-start.h \ + /usr/include/features.h /usr/include/x86_64-linux-gnu/sys/cdefs.h \ + /usr/include/x86_64-linux-gnu/bits/wordsize.h \ + /usr/include/x86_64-linux-gnu/bits/long-double.h \ + /usr/include/x86_64-linux-gnu/gnu/stubs.h \ + /usr/include/x86_64-linux-gnu/gnu/stubs-64.h \ + /usr/include/x86_64-linux-gnu/bits/types.h \ + /usr/include/x86_64-linux-gnu/bits/typesizes.h \ + /usr/include/x86_64-linux-gnu/bits/math-vector.h \ + /usr/include/x86_64-linux-gnu/bits/libm-simd-decl-stubs.h \ + /usr/include/x86_64-linux-gnu/bits/floatn.h \ + /usr/include/x86_64-linux-gnu/bits/floatn-common.h \ + /usr/include/x86_64-linux-gnu/bits/flt-eval-method.h \ + /usr/include/x86_64-linux-gnu/bits/fp-logb.h \ + /usr/include/x86_64-linux-gnu/bits/fp-fast.h \ + /usr/include/x86_64-linux-gnu/bits/mathcalls-helper-functions.h \ + /usr/include/x86_64-linux-gnu/bits/mathcalls.h diff --git a/lec12/Makefile.1 b/lec12/Makefile.1 new file mode 100644 index 0000000..21ff06a --- /dev/null +++ b/lec12/Makefile.1 @@ -0,0 +1,4 @@ +main: main.c fx_s15_16.c fx_head.h fx_s15_16.h + cc main.c fx_s15_16.c -o main +clean: + rm main *.o *.out diff --git a/lec12/Makefile.3 b/lec12/Makefile.3 new file mode 100644 index 0000000..9cccdef --- /dev/null +++ b/lec12/Makefile.3 @@ -0,0 +1,10 @@ +OBJS = main.o fx_s15_16.o +CCFLAGS = -Wall -g -pg +main: $(OBJS) + cc $(OBJS) $(CCFLAGS) -o $@ +main.o: main.c fx_head.h fx_s15_16.h + cc -c $(CCFLAGS) $< +fx_s15_16.o: fx_s15_16.c fx_s15_16.h + cc -c $(CCFLAGS) $< +clean: + rm main $(OBJS) diff --git a/lec12/Makefile.bak b/lec12/Makefile.bak new file mode 100644 index 0000000..441c756 --- /dev/null +++ b/lec12/Makefile.bak @@ -0,0 +1,59 @@ +OBJS = main.o fx_s15_16.o +#CCFLAGS = -Wall -g -pg +CCFLAGS = -Wall -O3 +main: $(OBJS) + cc $(OBJS) $(CCFLAGS) -o $@ +.c.o: + cc -c $(CCFLAGS) $< +debug: main.c fx_s15_16.c fx_s15_16.h fx_head.h + cc -o main_for_debug -pg -g main.c fx_s15_16.c +clean: + rm main $(OBJS) +# DO NOT DELETE gccmakedep main.c fx_s15_16.c +main.o: main.c /usr/include/stdc-predef.h fx_head.h fx_s15_16.h \ + /usr/include/math.h \ + /usr/include/x86_64-linux-gnu/bits/libc-header-start.h \ + /usr/include/features.h /usr/include/x86_64-linux-gnu/sys/cdefs.h \ + /usr/include/x86_64-linux-gnu/bits/wordsize.h \ + /usr/include/x86_64-linux-gnu/bits/long-double.h \ + /usr/include/x86_64-linux-gnu/gnu/stubs.h \ + /usr/include/x86_64-linux-gnu/gnu/stubs-64.h \ + /usr/include/x86_64-linux-gnu/bits/types.h \ + /usr/include/x86_64-linux-gnu/bits/typesizes.h \ + /usr/include/x86_64-linux-gnu/bits/math-vector.h \ + /usr/include/x86_64-linux-gnu/bits/libm-simd-decl-stubs.h \ + /usr/include/x86_64-linux-gnu/bits/floatn.h \ + /usr/include/x86_64-linux-gnu/bits/floatn-common.h \ + /usr/include/x86_64-linux-gnu/bits/flt-eval-method.h \ + /usr/include/x86_64-linux-gnu/bits/fp-logb.h \ + /usr/include/x86_64-linux-gnu/bits/fp-fast.h \ + /usr/include/x86_64-linux-gnu/bits/mathcalls-helper-functions.h \ + /usr/include/x86_64-linux-gnu/bits/mathcalls.h /usr/include/stdio.h \ + /usr/lib/gcc/x86_64-linux-gnu/7/include/stddef.h \ + /usr/include/x86_64-linux-gnu/bits/types/__FILE.h \ + /usr/include/x86_64-linux-gnu/bits/types/FILE.h \ + /usr/include/x86_64-linux-gnu/bits/libio.h \ + /usr/include/x86_64-linux-gnu/bits/_G_config.h \ + /usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h \ + /usr/lib/gcc/x86_64-linux-gnu/7/include/stdarg.h \ + /usr/include/x86_64-linux-gnu/bits/stdio_lim.h \ + /usr/include/x86_64-linux-gnu/bits/sys_errlist.h +fx_s15_16.o: fx_s15_16.c /usr/include/stdc-predef.h fx_head.h fx_s15_16.h \ + /usr/include/math.h \ + /usr/include/x86_64-linux-gnu/bits/libc-header-start.h \ + /usr/include/features.h /usr/include/x86_64-linux-gnu/sys/cdefs.h \ + /usr/include/x86_64-linux-gnu/bits/wordsize.h \ + /usr/include/x86_64-linux-gnu/bits/long-double.h \ + /usr/include/x86_64-linux-gnu/gnu/stubs.h \ + /usr/include/x86_64-linux-gnu/gnu/stubs-64.h \ + /usr/include/x86_64-linux-gnu/bits/types.h \ + /usr/include/x86_64-linux-gnu/bits/typesizes.h \ + /usr/include/x86_64-linux-gnu/bits/math-vector.h \ + /usr/include/x86_64-linux-gnu/bits/libm-simd-decl-stubs.h \ + /usr/include/x86_64-linux-gnu/bits/floatn.h \ + /usr/include/x86_64-linux-gnu/bits/floatn-common.h \ + /usr/include/x86_64-linux-gnu/bits/flt-eval-method.h \ + /usr/include/x86_64-linux-gnu/bits/fp-logb.h \ + /usr/include/x86_64-linux-gnu/bits/fp-fast.h \ + /usr/include/x86_64-linux-gnu/bits/mathcalls-helper-functions.h \ + /usr/include/x86_64-linux-gnu/bits/mathcalls.h diff --git a/lec12/cmaketest/CMakeCache.txt b/lec12/cmaketest/CMakeCache.txt new file mode 100644 index 0000000..e07a071 --- /dev/null +++ b/lec12/cmaketest/CMakeCache.txt @@ -0,0 +1,330 @@ +# This is the CMakeCache file. +# For build in directory: /home/course/pcc004/pcc/lec12/cmaketest +# 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(CMAKE_CXX_FLAGS or +// CMAKE_C_FLAGS used) 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-7 + +//A wrapper around 'ranlib' adding the appropriate '--plugin' option +// for the GCC compiler +CMAKE_CXX_COMPILER_RANLIB:FILEPATH=/usr/bin/gcc-ranlib-7 + +//Flags used by the compiler during all build types. +CMAKE_CXX_FLAGS:STRING= + +//Flags used by the compiler during debug builds. +CMAKE_CXX_FLAGS_DEBUG:STRING=-g + +//Flags used by the compiler during release builds for minimum +// size. +CMAKE_CXX_FLAGS_MINSIZEREL:STRING=-Os -DNDEBUG + +//Flags used by the compiler during release builds. +CMAKE_CXX_FLAGS_RELEASE:STRING=-O3 -DNDEBUG + +//Flags used by the compiler during release builds with debug info. +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-7 + +//A wrapper around 'ranlib' adding the appropriate '--plugin' option +// for the GCC compiler +CMAKE_C_COMPILER_RANLIB:FILEPATH=/usr/bin/gcc-ranlib-7 + +//Flags used by the compiler during all build types. +CMAKE_C_FLAGS:STRING= + +//Flags used by the compiler during debug builds. +CMAKE_C_FLAGS_DEBUG:STRING=-g + +//Flags used by the compiler during release builds for minimum +// size. +CMAKE_C_FLAGS_MINSIZEREL:STRING=-Os -DNDEBUG + +//Flags used by the compiler during release builds. +CMAKE_C_FLAGS_RELEASE:STRING=-O3 -DNDEBUG + +//Flags used by the compiler during release builds with debug info. +CMAKE_C_FLAGS_RELWITHDEBINFO:STRING=-O2 -g -DNDEBUG + +//Flags used by the linker. +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 release minsize 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 Release with Debug Info 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. +CMAKE_MODULE_LINKER_FLAGS:STRING= + +//Flags used by the linker during debug builds. +CMAKE_MODULE_LINKER_FLAGS_DEBUG:STRING= + +//Flags used by the linker during release minsize builds. +CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL:STRING= + +//Flags used by the linker during release builds. +CMAKE_MODULE_LINKER_FLAGS_RELEASE:STRING= + +//Flags used by the linker during Release with Debug Info 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_NAME:STATIC=main + +//Path to a program. +CMAKE_RANLIB:FILEPATH=/usr/bin/ranlib + +//Flags used by the linker during the creation of dll's. +CMAKE_SHARED_LINKER_FLAGS:STRING= + +//Flags used by the linker during debug builds. +CMAKE_SHARED_LINKER_FLAGS_DEBUG:STRING= + +//Flags used by the linker during release minsize builds. +CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL:STRING= + +//Flags used by the linker during release builds. +CMAKE_SHARED_LINKER_FLAGS_RELEASE:STRING= + +//Flags used by the linker during Release with Debug Info 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. +CMAKE_STATIC_LINKER_FLAGS:STRING= + +//Flags used by the linker during debug builds. +CMAKE_STATIC_LINKER_FLAGS_DEBUG:STRING= + +//Flags used by the linker during release minsize builds. +CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL:STRING= + +//Flags used by the linker during release builds. +CMAKE_STATIC_LINKER_FLAGS_RELEASE:STRING= + +//Flags used by the linker during Release with Debug Info 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 +main_BINARY_DIR:STATIC=/home/course/pcc004/pcc/lec12/cmaketest + +//Value Computed by CMake +main_SOURCE_DIR:STATIC=/home/course/pcc004/pcc/lec12/cmaketest + + +######################## +# 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/course/pcc004/pcc/lec12/cmaketest +//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=10 +//Patch version of cmake used to create the current loaded cache +CMAKE_CACHE_PATCH_VERSION:INTERNAL=2 +//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 +//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/course/pcc004/pcc/lec12/cmaketest +//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.10 +//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS +CMAKE_SHARED_LINKER_FLAGS-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_DEBUG +CMAKE_SHARED_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL +CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_RELEASE +CMAKE_SHARED_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO +CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_SKIP_INSTALL_RPATH +CMAKE_SKIP_INSTALL_RPATH-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_SKIP_RPATH +CMAKE_SKIP_RPATH-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS +CMAKE_STATIC_LINKER_FLAGS-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_DEBUG +CMAKE_STATIC_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL +CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_RELEASE +CMAKE_STATIC_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO +CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_STRIP +CMAKE_STRIP-ADVANCED:INTERNAL=1 +//uname command +CMAKE_UNAME:INTERNAL=/bin/uname +//ADVANCED property for variable: CMAKE_VERBOSE_MAKEFILE +CMAKE_VERBOSE_MAKEFILE-ADVANCED:INTERNAL=1 + diff --git a/lec12/cmaketest/CMakeFiles/3.10.2/CMakeCCompiler.cmake b/lec12/cmaketest/CMakeFiles/3.10.2/CMakeCCompiler.cmake new file mode 100644 index 0000000..9e0e71d --- /dev/null +++ b/lec12/cmaketest/CMakeFiles/3.10.2/CMakeCCompiler.cmake @@ -0,0 +1,73 @@ +set(CMAKE_C_COMPILER "/usr/bin/cc") +set(CMAKE_C_COMPILER_ARG1 "") +set(CMAKE_C_COMPILER_ID "GNU") +set(CMAKE_C_COMPILER_VERSION "7.5.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-7") +set(CMAKE_RANLIB "/usr/bin/ranlib") +set(CMAKE_C_COMPILER_RANLIB "/usr/bin/gcc-ranlib-7") +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/7;/usr/lib/x86_64-linux-gnu;/usr/lib;/lib/x86_64-linux-gnu;/lib") +set(CMAKE_C_IMPLICIT_LINK_FRAMEWORK_DIRECTORIES "") diff --git a/lec12/cmaketest/CMakeFiles/3.10.2/CMakeCXXCompiler.cmake b/lec12/cmaketest/CMakeFiles/3.10.2/CMakeCXXCompiler.cmake new file mode 100644 index 0000000..85984d7 --- /dev/null +++ b/lec12/cmaketest/CMakeFiles/3.10.2/CMakeCXXCompiler.cmake @@ -0,0 +1,75 @@ +set(CMAKE_CXX_COMPILER "/usr/bin/c++") +set(CMAKE_CXX_COMPILER_ARG1 "") +set(CMAKE_CXX_COMPILER_ID "GNU") +set(CMAKE_CXX_COMPILER_VERSION "7.5.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") +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_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-7") +set(CMAKE_RANLIB "/usr/bin/ranlib") +set(CMAKE_CXX_COMPILER_RANLIB "/usr/bin/gcc-ranlib-7") +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/7;/usr/lib/x86_64-linux-gnu;/usr/lib;/lib/x86_64-linux-gnu;/lib") +set(CMAKE_CXX_IMPLICIT_LINK_FRAMEWORK_DIRECTORIES "") diff --git a/lec12/cmaketest/CMakeFiles/3.10.2/CMakeDetermineCompilerABI_C.bin b/lec12/cmaketest/CMakeFiles/3.10.2/CMakeDetermineCompilerABI_C.bin new file mode 100755 index 0000000000000000000000000000000000000000..b1860a3dd40b90b19fab68ce7a4bf1a8fee6135d GIT binary patch literal 8248 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 HG`fBO@}Y&r literal 0 HcmV?d00001 diff --git a/lec12/cmaketest/CMakeFiles/3.10.2/CMakeDetermineCompilerABI_CXX.bin b/lec12/cmaketest/CMakeFiles/3.10.2/CMakeDetermineCompilerABI_CXX.bin new file mode 100755 index 0000000000000000000000000000000000000000..19a9ccae8956d20ea78fcbaa929a195ae4089300 GIT binary patch literal 8264 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 literal 0 HcmV?d00001 diff --git a/lec12/cmaketest/CMakeFiles/3.10.2/CMakeSystem.cmake b/lec12/cmaketest/CMakeFiles/3.10.2/CMakeSystem.cmake new file mode 100644 index 0000000..f389e97 --- /dev/null +++ b/lec12/cmaketest/CMakeFiles/3.10.2/CMakeSystem.cmake @@ -0,0 +1,15 @@ +set(CMAKE_HOST_SYSTEM "Linux-4.15.0-166-generic") +set(CMAKE_HOST_SYSTEM_NAME "Linux") +set(CMAKE_HOST_SYSTEM_VERSION "4.15.0-166-generic") +set(CMAKE_HOST_SYSTEM_PROCESSOR "x86_64") + + + +set(CMAKE_SYSTEM "Linux-4.15.0-166-generic") +set(CMAKE_SYSTEM_NAME "Linux") +set(CMAKE_SYSTEM_VERSION "4.15.0-166-generic") +set(CMAKE_SYSTEM_PROCESSOR "x86_64") + +set(CMAKE_CROSSCOMPILING "FALSE") + +set(CMAKE_SYSTEM_LOADED 1) diff --git a/lec12/cmaketest/CMakeFiles/3.10.2/CompilerIdC/CMakeCCompilerId.c b/lec12/cmaketest/CMakeFiles/3.10.2/CompilerIdC/CMakeCCompilerId.c new file mode 100644 index 0000000..722faa8 --- /dev/null +++ b/lec12/cmaketest/CMakeFiles/3.10.2/CompilerIdC/CMakeCCompilerId.c @@ -0,0 +1,598 @@ +#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" + /* __IBMC__ = VRP */ +# define COMPILER_VERSION_MAJOR DEC(__IBMC__/100) +# define COMPILER_VERSION_MINOR DEC(__IBMC__/10 % 10) +# define COMPILER_VERSION_PATCH DEC(__IBMC__ % 10) + +#elif defined(__IBMC__) && !defined(__COMPILER_VER__) && __IBMC__ >= 800 +# define COMPILER_ID "XL" + /* __IBMC__ = VRP */ +# define COMPILER_VERSION_MAJOR DEC(__IBMC__/100) +# define COMPILER_VERSION_MINOR DEC(__IBMC__/10 % 10) +# define COMPILER_VERSION_PATCH DEC(__IBMC__ % 10) + +#elif defined(__IBMC__) && !defined(__COMPILER_VER__) && __IBMC__ < 800 +# define COMPILER_ID "VisualAge" + /* __IBMC__ = VRP */ +# define COMPILER_VERSION_MAJOR DEC(__IBMC__/100) +# define COMPILER_VERSION_MINOR DEC(__IBMC__/10 % 10) +# define COMPILER_VERSION_PATCH DEC(__IBMC__ % 10) + +#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__) +# define C_DIALECT "90" +# else +# define C_DIALECT +# endif +#elif __STDC_VERSION__ >= 201000L +# define C_DIALECT "11" +#elif __STDC_VERSION__ >= 199901L +# define C_DIALECT "99" +#else +# define C_DIALECT "90" +#endif +const char* info_language_dialect_default = + "INFO" ":" "dialect_default[" C_DIALECT "]"; + +/*--------------------------------------------------------------------------*/ + +#ifdef ID_VOID_MAIN +void main() {} +#else +# if defined(__CLASSIC_C__) +int main(argc, argv) int argc; char *argv[]; +# else +int main(int argc, char* argv[]) +# endif +{ + int require = 0; + require += info_compiler[argc]; + require += info_platform[argc]; + require += info_arch[argc]; +#ifdef COMPILER_VERSION_MAJOR + require += info_version[argc]; +#endif +#ifdef COMPILER_VERSION_INTERNAL + require += info_version_internal[argc]; +#endif +#ifdef SIMULATE_ID + require += info_simulate[argc]; +#endif +#ifdef SIMULATE_VERSION_MAJOR + require += info_simulate_version[argc]; +#endif +#if defined(__CRAYXE) || defined(__CRAYXC) + require += info_cray[argc]; +#endif + require += info_language_dialect_default[argc]; + (void)argv; + return require; +} +#endif diff --git a/lec12/cmaketest/CMakeFiles/3.10.2/CompilerIdCXX/CMakeCXXCompilerId.cpp b/lec12/cmaketest/CMakeFiles/3.10.2/CompilerIdCXX/CMakeCXXCompilerId.cpp new file mode 100644 index 0000000..2d66298 --- /dev/null +++ b/lec12/cmaketest/CMakeFiles/3.10.2/CompilerIdCXX/CMakeCXXCompilerId.cpp @@ -0,0 +1,576 @@ +/* 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" + /* __IBMCPP__ = VRP */ +# define COMPILER_VERSION_MAJOR DEC(__IBMCPP__/100) +# define COMPILER_VERSION_MINOR DEC(__IBMCPP__/10 % 10) +# define COMPILER_VERSION_PATCH DEC(__IBMCPP__ % 10) + +#elif defined(__IBMCPP__) && !defined(__COMPILER_VER__) && __IBMCPP__ >= 800 +# define COMPILER_ID "XL" + /* __IBMCPP__ = VRP */ +# define COMPILER_VERSION_MAJOR DEC(__IBMCPP__/100) +# define COMPILER_VERSION_MINOR DEC(__IBMCPP__/10 % 10) +# define COMPILER_VERSION_PATCH DEC(__IBMCPP__ % 10) + +#elif defined(__IBMCPP__) && !defined(__COMPILER_VER__) && __IBMCPP__ < 800 +# define COMPILER_ID "VisualAge" + /* __IBMCPP__ = VRP */ +# define COMPILER_VERSION_MAJOR DEC(__IBMCPP__/100) +# define COMPILER_VERSION_MINOR DEC(__IBMCPP__/10 % 10) +# define COMPILER_VERSION_PATCH DEC(__IBMCPP__ % 10) + +#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 > 201402L + "17" +#elif CXX_STD >= 201402L + "14" +#elif CXX_STD >= 201103L + "11" +#else + "98" +#endif +"]"; + +/*--------------------------------------------------------------------------*/ + +int main(int argc, char* argv[]) +{ + int require = 0; + require += info_compiler[argc]; + require += info_platform[argc]; +#ifdef COMPILER_VERSION_MAJOR + require += info_version[argc]; +#endif +#ifdef COMPILER_VERSION_INTERNAL + require += info_version_internal[argc]; +#endif +#ifdef SIMULATE_ID + require += info_simulate[argc]; +#endif +#ifdef SIMULATE_VERSION_MAJOR + require += info_simulate_version[argc]; +#endif +#if defined(__CRAYXE) || defined(__CRAYXC) + require += info_cray[argc]; +#endif + require += info_language_dialect_default[argc]; + (void)argv; + return require; +} diff --git a/lec12/cmaketest/CMakeFiles/CMakeDirectoryInformation.cmake b/lec12/cmaketest/CMakeFiles/CMakeDirectoryInformation.cmake new file mode 100644 index 0000000..1704460 --- /dev/null +++ b/lec12/cmaketest/CMakeFiles/CMakeDirectoryInformation.cmake @@ -0,0 +1,16 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.10 + +# Relative path conversion top directories. +set(CMAKE_RELATIVE_PATH_TOP_SOURCE "/home/course/pcc004/pcc/lec12/cmaketest") +set(CMAKE_RELATIVE_PATH_TOP_BINARY "/home/course/pcc004/pcc/lec12/cmaketest") + +# Force unix paths in dependencies. +set(CMAKE_FORCE_UNIX_PATHS 1) + + +# The C and CXX include file regular expressions for this directory. +set(CMAKE_C_INCLUDE_REGEX_SCAN "^.*$") +set(CMAKE_C_INCLUDE_REGEX_COMPLAIN "^$") +set(CMAKE_CXX_INCLUDE_REGEX_SCAN ${CMAKE_C_INCLUDE_REGEX_SCAN}) +set(CMAKE_CXX_INCLUDE_REGEX_COMPLAIN ${CMAKE_C_INCLUDE_REGEX_COMPLAIN}) diff --git a/lec12/cmaketest/CMakeFiles/CMakeOutput.log b/lec12/cmaketest/CMakeFiles/CMakeOutput.log new file mode 100644 index 0000000..722f958 --- /dev/null +++ b/lec12/cmaketest/CMakeFiles/CMakeOutput.log @@ -0,0 +1,633 @@ +The system is: Linux - 4.15.0-166-generic - x86_64 +Compiling the C compiler identification source file "CMakeCCompilerId.c" succeeded. +Compiler: /usr/bin/cc +Build flags: +Id flags: + +The output was: +0 + + +Compilation of the C compiler identification source "CMakeCCompilerId.c" produced "a.out" + +The C compiler identification is GNU, found in "/home/course/pcc004/pcc/lec12/cmaketest/CMakeFiles/3.10.2/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/course/pcc004/pcc/lec12/cmaketest/CMakeFiles/3.10.2/CompilerIdCXX/a.out" + +Determining if the C compiler works passed with the following output: +Change Dir: /home/course/pcc004/pcc/lec12/cmaketest/CMakeFiles/CMakeTmp + +Run Build Command:"/usr/bin/make" "cmTC_085fe/fast" +/usr/bin/make -f CMakeFiles/cmTC_085fe.dir/build.make CMakeFiles/cmTC_085fe.dir/build +make[1]: Entering directory '/home/course/pcc004/pcc/lec12/cmaketest/CMakeFiles/CMakeTmp' +Building C object CMakeFiles/cmTC_085fe.dir/testCCompiler.c.o +/usr/bin/cc -o CMakeFiles/cmTC_085fe.dir/testCCompiler.c.o -c /home/course/pcc004/pcc/lec12/cmaketest/CMakeFiles/CMakeTmp/testCCompiler.c +Linking C executable cmTC_085fe +/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_085fe.dir/link.txt --verbose=1 +/usr/bin/cc -rdynamic CMakeFiles/cmTC_085fe.dir/testCCompiler.c.o -o cmTC_085fe +make[1]: Leaving directory '/home/course/pcc004/pcc/lec12/cmaketest/CMakeFiles/CMakeTmp' + + +Detecting C compiler ABI info compiled with the following output: +Change Dir: /home/course/pcc004/pcc/lec12/cmaketest/CMakeFiles/CMakeTmp + +Run Build Command:"/usr/bin/make" "cmTC_40638/fast" +/usr/bin/make -f CMakeFiles/cmTC_40638.dir/build.make CMakeFiles/cmTC_40638.dir/build +make[1]: Entering directory '/home/course/pcc004/pcc/lec12/cmaketest/CMakeFiles/CMakeTmp' +Building C object CMakeFiles/cmTC_40638.dir/CMakeCCompilerABI.c.o +/usr/bin/cc -o CMakeFiles/cmTC_40638.dir/CMakeCCompilerABI.c.o -c /usr/share/cmake-3.10/Modules/CMakeCCompilerABI.c +Linking C executable cmTC_40638 +/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_40638.dir/link.txt --verbose=1 +/usr/bin/cc -v -rdynamic CMakeFiles/cmTC_40638.dir/CMakeCCompilerABI.c.o -o cmTC_40638 +Using built-in specs. +COLLECT_GCC=/usr/bin/cc +COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/7/lto-wrapper +OFFLOAD_TARGET_NAMES=nvptx-none +OFFLOAD_TARGET_DEFAULT=1 +Target: x86_64-linux-gnu +Configured with: ../src/configure -v --with-pkgversion='Ubuntu 7.5.0-3ubuntu1~18.04' --with-bugurl=file:///usr/share/doc/gcc-7/README.Bugs --enable-languages=c,ada,c++,go,brig,d,fortran,objc,obj-c++ --prefix=/usr --with-gcc-major-version-only --program-suffix=-7 --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 7.5.0 (Ubuntu 7.5.0-3ubuntu1~18.04) +COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/7/:/usr/lib/gcc/x86_64-linux-gnu/7/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/7/:/usr/lib/gcc/x86_64-linux-gnu/ +LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/7/:/usr/lib/gcc/x86_64-linux-gnu/7/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/7/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/7/../../../:/lib/:/usr/lib/ +COLLECT_GCC_OPTIONS='-v' '-rdynamic' '-o' 'cmTC_40638' '-mtune=generic' '-march=x86-64' + /usr/lib/gcc/x86_64-linux-gnu/7/collect2 -plugin /usr/lib/gcc/x86_64-linux-gnu/7/liblto_plugin.so -plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/7/lto-wrapper -plugin-opt=-fresolution=/tmp/cc3HRLeG.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 --as-needed -export-dynamic -dynamic-linker /lib64/ld-linux-x86-64.so.2 -pie -z now -z relro -o cmTC_40638 /usr/lib/gcc/x86_64-linux-gnu/7/../../../x86_64-linux-gnu/Scrt1.o /usr/lib/gcc/x86_64-linux-gnu/7/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/7/crtbeginS.o -L/usr/lib/gcc/x86_64-linux-gnu/7 -L/usr/lib/gcc/x86_64-linux-gnu/7/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/7/../../../../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/7/../../.. CMakeFiles/cmTC_40638.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/7/crtendS.o /usr/lib/gcc/x86_64-linux-gnu/7/../../../x86_64-linux-gnu/crtn.o +COLLECT_GCC_OPTIONS='-v' '-rdynamic' '-o' 'cmTC_40638' '-mtune=generic' '-march=x86-64' +make[1]: Leaving directory '/home/course/pcc004/pcc/lec12/cmaketest/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/course/pcc004/pcc/lec12/cmaketest/CMakeFiles/CMakeTmp] + ignore line: [] + ignore line: [Run Build Command:"/usr/bin/make" "cmTC_40638/fast"] + ignore line: [/usr/bin/make -f CMakeFiles/cmTC_40638.dir/build.make CMakeFiles/cmTC_40638.dir/build] + ignore line: [make[1]: Entering directory '/home/course/pcc004/pcc/lec12/cmaketest/CMakeFiles/CMakeTmp'] + ignore line: [Building C object CMakeFiles/cmTC_40638.dir/CMakeCCompilerABI.c.o] + ignore line: [/usr/bin/cc -o CMakeFiles/cmTC_40638.dir/CMakeCCompilerABI.c.o -c /usr/share/cmake-3.10/Modules/CMakeCCompilerABI.c] + ignore line: [Linking C executable cmTC_40638] + ignore line: [/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_40638.dir/link.txt --verbose=1] + ignore line: [/usr/bin/cc -v -rdynamic CMakeFiles/cmTC_40638.dir/CMakeCCompilerABI.c.o -o cmTC_40638 ] + 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/7/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='Ubuntu 7.5.0-3ubuntu1~18.04' --with-bugurl=file:///usr/share/doc/gcc-7/README.Bugs --enable-languages=c,ada,c++,go,brig,d,fortran,objc,obj-c++ --prefix=/usr --with-gcc-major-version-only --program-suffix=-7 --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 7.5.0 (Ubuntu 7.5.0-3ubuntu1~18.04) ] + ignore line: [COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/7/:/usr/lib/gcc/x86_64-linux-gnu/7/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/7/:/usr/lib/gcc/x86_64-linux-gnu/] + ignore line: [LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/7/:/usr/lib/gcc/x86_64-linux-gnu/7/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/7/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/7/../../../:/lib/:/usr/lib/] + ignore line: [COLLECT_GCC_OPTIONS='-v' '-rdynamic' '-o' 'cmTC_40638' '-mtune=generic' '-march=x86-64'] + link line: [ /usr/lib/gcc/x86_64-linux-gnu/7/collect2 -plugin /usr/lib/gcc/x86_64-linux-gnu/7/liblto_plugin.so -plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/7/lto-wrapper -plugin-opt=-fresolution=/tmp/cc3HRLeG.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 --as-needed -export-dynamic -dynamic-linker /lib64/ld-linux-x86-64.so.2 -pie -z now -z relro -o cmTC_40638 /usr/lib/gcc/x86_64-linux-gnu/7/../../../x86_64-linux-gnu/Scrt1.o /usr/lib/gcc/x86_64-linux-gnu/7/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/7/crtbeginS.o -L/usr/lib/gcc/x86_64-linux-gnu/7 -L/usr/lib/gcc/x86_64-linux-gnu/7/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/7/../../../../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/7/../../.. CMakeFiles/cmTC_40638.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/7/crtendS.o /usr/lib/gcc/x86_64-linux-gnu/7/../../../x86_64-linux-gnu/crtn.o] + arg [/usr/lib/gcc/x86_64-linux-gnu/7/collect2] ==> ignore + arg [-plugin] ==> ignore + arg [/usr/lib/gcc/x86_64-linux-gnu/7/liblto_plugin.so] ==> ignore + arg [-plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/7/lto-wrapper] ==> ignore + arg [-plugin-opt=-fresolution=/tmp/cc3HRLeG.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 [--as-needed] ==> ignore + arg [-export-dynamic] ==> ignore + arg [-dynamic-linker] ==> ignore + arg [/lib64/ld-linux-x86-64.so.2] ==> ignore + arg [-pie] ==> ignore + arg [-znow] ==> ignore + arg [-zrelro] ==> ignore + arg [-o] ==> ignore + arg [cmTC_40638] ==> ignore + arg [/usr/lib/gcc/x86_64-linux-gnu/7/../../../x86_64-linux-gnu/Scrt1.o] ==> ignore + arg [/usr/lib/gcc/x86_64-linux-gnu/7/../../../x86_64-linux-gnu/crti.o] ==> ignore + arg [/usr/lib/gcc/x86_64-linux-gnu/7/crtbeginS.o] ==> ignore + arg [-L/usr/lib/gcc/x86_64-linux-gnu/7] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/7] + arg [-L/usr/lib/gcc/x86_64-linux-gnu/7/../../../x86_64-linux-gnu] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/7/../../../x86_64-linux-gnu] + arg [-L/usr/lib/gcc/x86_64-linux-gnu/7/../../../../lib] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/7/../../../../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/7/../../..] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/7/../../..] + arg [CMakeFiles/cmTC_40638.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/7/crtendS.o] ==> ignore + arg [/usr/lib/gcc/x86_64-linux-gnu/7/../../../x86_64-linux-gnu/crtn.o] ==> ignore + collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/7] ==> [/usr/lib/gcc/x86_64-linux-gnu/7] + collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/7/../../../x86_64-linux-gnu] ==> [/usr/lib/x86_64-linux-gnu] + collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/7/../../../../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/7/../../..] ==> [/usr/lib] + implicit libs: [gcc;gcc_s;c;gcc;gcc_s] + implicit dirs: [/usr/lib/gcc/x86_64-linux-gnu/7;/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/course/pcc004/pcc/lec12/cmaketest/CMakeFiles/CMakeTmp + +Run Build Command:"/usr/bin/make" "cmTC_554ea/fast" +/usr/bin/make -f CMakeFiles/cmTC_554ea.dir/build.make CMakeFiles/cmTC_554ea.dir/build +make[1]: Entering directory '/home/course/pcc004/pcc/lec12/cmaketest/CMakeFiles/CMakeTmp' +Building C object CMakeFiles/cmTC_554ea.dir/feature_tests.c.o +/usr/bin/cc -std=c11 -o CMakeFiles/cmTC_554ea.dir/feature_tests.c.o -c /home/course/pcc004/pcc/lec12/cmaketest/CMakeFiles/feature_tests.c +Linking C executable cmTC_554ea +/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_554ea.dir/link.txt --verbose=1 +/usr/bin/cc -rdynamic CMakeFiles/cmTC_554ea.dir/feature_tests.c.o -o cmTC_554ea +make[1]: Leaving directory '/home/course/pcc004/pcc/lec12/cmaketest/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/course/pcc004/pcc/lec12/cmaketest/CMakeFiles/CMakeTmp + +Run Build Command:"/usr/bin/make" "cmTC_da556/fast" +/usr/bin/make -f CMakeFiles/cmTC_da556.dir/build.make CMakeFiles/cmTC_da556.dir/build +make[1]: Entering directory '/home/course/pcc004/pcc/lec12/cmaketest/CMakeFiles/CMakeTmp' +Building C object CMakeFiles/cmTC_da556.dir/feature_tests.c.o +/usr/bin/cc -std=c99 -o CMakeFiles/cmTC_da556.dir/feature_tests.c.o -c /home/course/pcc004/pcc/lec12/cmaketest/CMakeFiles/feature_tests.c +Linking C executable cmTC_da556 +/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_da556.dir/link.txt --verbose=1 +/usr/bin/cc -rdynamic CMakeFiles/cmTC_da556.dir/feature_tests.c.o -o cmTC_da556 +make[1]: Leaving directory '/home/course/pcc004/pcc/lec12/cmaketest/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/course/pcc004/pcc/lec12/cmaketest/CMakeFiles/CMakeTmp + +Run Build Command:"/usr/bin/make" "cmTC_fdb6f/fast" +/usr/bin/make -f CMakeFiles/cmTC_fdb6f.dir/build.make CMakeFiles/cmTC_fdb6f.dir/build +make[1]: Entering directory '/home/course/pcc004/pcc/lec12/cmaketest/CMakeFiles/CMakeTmp' +Building C object CMakeFiles/cmTC_fdb6f.dir/feature_tests.c.o +/usr/bin/cc -std=c90 -o CMakeFiles/cmTC_fdb6f.dir/feature_tests.c.o -c /home/course/pcc004/pcc/lec12/cmaketest/CMakeFiles/feature_tests.c +Linking C executable cmTC_fdb6f +/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_fdb6f.dir/link.txt --verbose=1 +/usr/bin/cc -rdynamic CMakeFiles/cmTC_fdb6f.dir/feature_tests.c.o -o cmTC_fdb6f +make[1]: Leaving directory '/home/course/pcc004/pcc/lec12/cmaketest/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/course/pcc004/pcc/lec12/cmaketest/CMakeFiles/CMakeTmp + +Run Build Command:"/usr/bin/make" "cmTC_aa256/fast" +/usr/bin/make -f CMakeFiles/cmTC_aa256.dir/build.make CMakeFiles/cmTC_aa256.dir/build +make[1]: Entering directory '/home/course/pcc004/pcc/lec12/cmaketest/CMakeFiles/CMakeTmp' +Building CXX object CMakeFiles/cmTC_aa256.dir/testCXXCompiler.cxx.o +/usr/bin/c++ -o CMakeFiles/cmTC_aa256.dir/testCXXCompiler.cxx.o -c /home/course/pcc004/pcc/lec12/cmaketest/CMakeFiles/CMakeTmp/testCXXCompiler.cxx +Linking CXX executable cmTC_aa256 +/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_aa256.dir/link.txt --verbose=1 +/usr/bin/c++ -rdynamic CMakeFiles/cmTC_aa256.dir/testCXXCompiler.cxx.o -o cmTC_aa256 +make[1]: Leaving directory '/home/course/pcc004/pcc/lec12/cmaketest/CMakeFiles/CMakeTmp' + + +Detecting CXX compiler ABI info compiled with the following output: +Change Dir: /home/course/pcc004/pcc/lec12/cmaketest/CMakeFiles/CMakeTmp + +Run Build Command:"/usr/bin/make" "cmTC_554fb/fast" +/usr/bin/make -f CMakeFiles/cmTC_554fb.dir/build.make CMakeFiles/cmTC_554fb.dir/build +make[1]: Entering directory '/home/course/pcc004/pcc/lec12/cmaketest/CMakeFiles/CMakeTmp' +Building CXX object CMakeFiles/cmTC_554fb.dir/CMakeCXXCompilerABI.cpp.o +/usr/bin/c++ -o CMakeFiles/cmTC_554fb.dir/CMakeCXXCompilerABI.cpp.o -c /usr/share/cmake-3.10/Modules/CMakeCXXCompilerABI.cpp +Linking CXX executable cmTC_554fb +/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_554fb.dir/link.txt --verbose=1 +/usr/bin/c++ -v -rdynamic CMakeFiles/cmTC_554fb.dir/CMakeCXXCompilerABI.cpp.o -o cmTC_554fb +Using built-in specs. +COLLECT_GCC=/usr/bin/c++ +COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/7/lto-wrapper +OFFLOAD_TARGET_NAMES=nvptx-none +OFFLOAD_TARGET_DEFAULT=1 +Target: x86_64-linux-gnu +Configured with: ../src/configure -v --with-pkgversion='Ubuntu 7.5.0-3ubuntu1~18.04' --with-bugurl=file:///usr/share/doc/gcc-7/README.Bugs --enable-languages=c,ada,c++,go,brig,d,fortran,objc,obj-c++ --prefix=/usr --with-gcc-major-version-only --program-suffix=-7 --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 7.5.0 (Ubuntu 7.5.0-3ubuntu1~18.04) +COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/7/:/usr/lib/gcc/x86_64-linux-gnu/7/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/7/:/usr/lib/gcc/x86_64-linux-gnu/ +LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/7/:/usr/lib/gcc/x86_64-linux-gnu/7/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/7/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/7/../../../:/lib/:/usr/lib/ +COLLECT_GCC_OPTIONS='-v' '-rdynamic' '-o' 'cmTC_554fb' '-shared-libgcc' '-mtune=generic' '-march=x86-64' + /usr/lib/gcc/x86_64-linux-gnu/7/collect2 -plugin /usr/lib/gcc/x86_64-linux-gnu/7/liblto_plugin.so -plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/7/lto-wrapper -plugin-opt=-fresolution=/tmp/cc4lG5Xm.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 --as-needed -export-dynamic -dynamic-linker /lib64/ld-linux-x86-64.so.2 -pie -z now -z relro -o cmTC_554fb /usr/lib/gcc/x86_64-linux-gnu/7/../../../x86_64-linux-gnu/Scrt1.o /usr/lib/gcc/x86_64-linux-gnu/7/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/7/crtbeginS.o -L/usr/lib/gcc/x86_64-linux-gnu/7 -L/usr/lib/gcc/x86_64-linux-gnu/7/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/7/../../../../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/7/../../.. CMakeFiles/cmTC_554fb.dir/CMakeCXXCompilerABI.cpp.o -lstdc++ -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc /usr/lib/gcc/x86_64-linux-gnu/7/crtendS.o /usr/lib/gcc/x86_64-linux-gnu/7/../../../x86_64-linux-gnu/crtn.o +COLLECT_GCC_OPTIONS='-v' '-rdynamic' '-o' 'cmTC_554fb' '-shared-libgcc' '-mtune=generic' '-march=x86-64' +make[1]: Leaving directory '/home/course/pcc004/pcc/lec12/cmaketest/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/course/pcc004/pcc/lec12/cmaketest/CMakeFiles/CMakeTmp] + ignore line: [] + ignore line: [Run Build Command:"/usr/bin/make" "cmTC_554fb/fast"] + ignore line: [/usr/bin/make -f CMakeFiles/cmTC_554fb.dir/build.make CMakeFiles/cmTC_554fb.dir/build] + ignore line: [make[1]: Entering directory '/home/course/pcc004/pcc/lec12/cmaketest/CMakeFiles/CMakeTmp'] + ignore line: [Building CXX object CMakeFiles/cmTC_554fb.dir/CMakeCXXCompilerABI.cpp.o] + ignore line: [/usr/bin/c++ -o CMakeFiles/cmTC_554fb.dir/CMakeCXXCompilerABI.cpp.o -c /usr/share/cmake-3.10/Modules/CMakeCXXCompilerABI.cpp] + ignore line: [Linking CXX executable cmTC_554fb] + ignore line: [/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_554fb.dir/link.txt --verbose=1] + ignore line: [/usr/bin/c++ -v -rdynamic CMakeFiles/cmTC_554fb.dir/CMakeCXXCompilerABI.cpp.o -o cmTC_554fb ] + 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/7/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='Ubuntu 7.5.0-3ubuntu1~18.04' --with-bugurl=file:///usr/share/doc/gcc-7/README.Bugs --enable-languages=c,ada,c++,go,brig,d,fortran,objc,obj-c++ --prefix=/usr --with-gcc-major-version-only --program-suffix=-7 --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 7.5.0 (Ubuntu 7.5.0-3ubuntu1~18.04) ] + ignore line: [COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/7/:/usr/lib/gcc/x86_64-linux-gnu/7/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/7/:/usr/lib/gcc/x86_64-linux-gnu/] + ignore line: [LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/7/:/usr/lib/gcc/x86_64-linux-gnu/7/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/7/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/7/../../../:/lib/:/usr/lib/] + ignore line: [COLLECT_GCC_OPTIONS='-v' '-rdynamic' '-o' 'cmTC_554fb' '-shared-libgcc' '-mtune=generic' '-march=x86-64'] + link line: [ /usr/lib/gcc/x86_64-linux-gnu/7/collect2 -plugin /usr/lib/gcc/x86_64-linux-gnu/7/liblto_plugin.so -plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/7/lto-wrapper -plugin-opt=-fresolution=/tmp/cc4lG5Xm.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 --as-needed -export-dynamic -dynamic-linker /lib64/ld-linux-x86-64.so.2 -pie -z now -z relro -o cmTC_554fb /usr/lib/gcc/x86_64-linux-gnu/7/../../../x86_64-linux-gnu/Scrt1.o /usr/lib/gcc/x86_64-linux-gnu/7/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/7/crtbeginS.o -L/usr/lib/gcc/x86_64-linux-gnu/7 -L/usr/lib/gcc/x86_64-linux-gnu/7/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/7/../../../../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/7/../../.. CMakeFiles/cmTC_554fb.dir/CMakeCXXCompilerABI.cpp.o -lstdc++ -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc /usr/lib/gcc/x86_64-linux-gnu/7/crtendS.o /usr/lib/gcc/x86_64-linux-gnu/7/../../../x86_64-linux-gnu/crtn.o] + arg [/usr/lib/gcc/x86_64-linux-gnu/7/collect2] ==> ignore + arg [-plugin] ==> ignore + arg [/usr/lib/gcc/x86_64-linux-gnu/7/liblto_plugin.so] ==> ignore + arg [-plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/7/lto-wrapper] ==> ignore + arg [-plugin-opt=-fresolution=/tmp/cc4lG5Xm.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 [--as-needed] ==> ignore + arg [-export-dynamic] ==> ignore + arg [-dynamic-linker] ==> ignore + arg [/lib64/ld-linux-x86-64.so.2] ==> ignore + arg [-pie] ==> ignore + arg [-znow] ==> ignore + arg [-zrelro] ==> ignore + arg [-o] ==> ignore + arg [cmTC_554fb] ==> ignore + arg [/usr/lib/gcc/x86_64-linux-gnu/7/../../../x86_64-linux-gnu/Scrt1.o] ==> ignore + arg [/usr/lib/gcc/x86_64-linux-gnu/7/../../../x86_64-linux-gnu/crti.o] ==> ignore + arg [/usr/lib/gcc/x86_64-linux-gnu/7/crtbeginS.o] ==> ignore + arg [-L/usr/lib/gcc/x86_64-linux-gnu/7] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/7] + arg [-L/usr/lib/gcc/x86_64-linux-gnu/7/../../../x86_64-linux-gnu] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/7/../../../x86_64-linux-gnu] + arg [-L/usr/lib/gcc/x86_64-linux-gnu/7/../../../../lib] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/7/../../../../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/7/../../..] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/7/../../..] + arg [CMakeFiles/cmTC_554fb.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/7/crtendS.o] ==> ignore + arg [/usr/lib/gcc/x86_64-linux-gnu/7/../../../x86_64-linux-gnu/crtn.o] ==> ignore + collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/7] ==> [/usr/lib/gcc/x86_64-linux-gnu/7] + collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/7/../../../x86_64-linux-gnu] ==> [/usr/lib/x86_64-linux-gnu] + collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/7/../../../../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/7/../../..] ==> [/usr/lib] + implicit libs: [stdc++;m;gcc_s;gcc;c;gcc_s;gcc] + implicit dirs: [/usr/lib/gcc/x86_64-linux-gnu/7;/usr/lib/x86_64-linux-gnu;/usr/lib;/lib/x86_64-linux-gnu;/lib] + implicit fwks: [] + + + + +Detecting CXX [-std=c++1z] compiler features compiled with the following output: +Change Dir: /home/course/pcc004/pcc/lec12/cmaketest/CMakeFiles/CMakeTmp + +Run Build Command:"/usr/bin/make" "cmTC_1d71c/fast" +/usr/bin/make -f CMakeFiles/cmTC_1d71c.dir/build.make CMakeFiles/cmTC_1d71c.dir/build +make[1]: Entering directory '/home/course/pcc004/pcc/lec12/cmaketest/CMakeFiles/CMakeTmp' +Building CXX object CMakeFiles/cmTC_1d71c.dir/feature_tests.cxx.o +/usr/bin/c++ -std=c++1z -o CMakeFiles/cmTC_1d71c.dir/feature_tests.cxx.o -c /home/course/pcc004/pcc/lec12/cmaketest/CMakeFiles/feature_tests.cxx +Linking CXX executable cmTC_1d71c +/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_1d71c.dir/link.txt --verbose=1 +/usr/bin/c++ -rdynamic CMakeFiles/cmTC_1d71c.dir/feature_tests.cxx.o -o cmTC_1d71c +make[1]: Leaving directory '/home/course/pcc004/pcc/lec12/cmaketest/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/course/pcc004/pcc/lec12/cmaketest/CMakeFiles/CMakeTmp + +Run Build Command:"/usr/bin/make" "cmTC_d22af/fast" +/usr/bin/make -f CMakeFiles/cmTC_d22af.dir/build.make CMakeFiles/cmTC_d22af.dir/build +make[1]: Entering directory '/home/course/pcc004/pcc/lec12/cmaketest/CMakeFiles/CMakeTmp' +Building CXX object CMakeFiles/cmTC_d22af.dir/feature_tests.cxx.o +/usr/bin/c++ -std=c++14 -o CMakeFiles/cmTC_d22af.dir/feature_tests.cxx.o -c /home/course/pcc004/pcc/lec12/cmaketest/CMakeFiles/feature_tests.cxx +Linking CXX executable cmTC_d22af +/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_d22af.dir/link.txt --verbose=1 +/usr/bin/c++ -rdynamic CMakeFiles/cmTC_d22af.dir/feature_tests.cxx.o -o cmTC_d22af +make[1]: Leaving directory '/home/course/pcc004/pcc/lec12/cmaketest/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/course/pcc004/pcc/lec12/cmaketest/CMakeFiles/CMakeTmp + +Run Build Command:"/usr/bin/make" "cmTC_69c70/fast" +/usr/bin/make -f CMakeFiles/cmTC_69c70.dir/build.make CMakeFiles/cmTC_69c70.dir/build +make[1]: Entering directory '/home/course/pcc004/pcc/lec12/cmaketest/CMakeFiles/CMakeTmp' +Building CXX object CMakeFiles/cmTC_69c70.dir/feature_tests.cxx.o +/usr/bin/c++ -std=c++11 -o CMakeFiles/cmTC_69c70.dir/feature_tests.cxx.o -c /home/course/pcc004/pcc/lec12/cmaketest/CMakeFiles/feature_tests.cxx +Linking CXX executable cmTC_69c70 +/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_69c70.dir/link.txt --verbose=1 +/usr/bin/c++ -rdynamic CMakeFiles/cmTC_69c70.dir/feature_tests.cxx.o -o cmTC_69c70 +make[1]: Leaving directory '/home/course/pcc004/pcc/lec12/cmaketest/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/course/pcc004/pcc/lec12/cmaketest/CMakeFiles/CMakeTmp + +Run Build Command:"/usr/bin/make" "cmTC_8da8a/fast" +/usr/bin/make -f CMakeFiles/cmTC_8da8a.dir/build.make CMakeFiles/cmTC_8da8a.dir/build +make[1]: Entering directory '/home/course/pcc004/pcc/lec12/cmaketest/CMakeFiles/CMakeTmp' +Building CXX object CMakeFiles/cmTC_8da8a.dir/feature_tests.cxx.o +/usr/bin/c++ -std=c++98 -o CMakeFiles/cmTC_8da8a.dir/feature_tests.cxx.o -c /home/course/pcc004/pcc/lec12/cmaketest/CMakeFiles/feature_tests.cxx +Linking CXX executable cmTC_8da8a +/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_8da8a.dir/link.txt --verbose=1 +/usr/bin/c++ -rdynamic CMakeFiles/cmTC_8da8a.dir/feature_tests.cxx.o -o cmTC_8da8a +make[1]: Leaving directory '/home/course/pcc004/pcc/lec12/cmaketest/CMakeFiles/CMakeTmp' + + + Feature record: CXX_FEATURE:0cxx_aggregate_default_initializers + Feature record: CXX_FEATURE:0cxx_alias_templates + Feature record: CXX_FEATURE:0cxx_alignas + Feature record: CXX_FEATURE:0cxx_alignof + Feature record: CXX_FEATURE:0cxx_attributes + Feature record: CXX_FEATURE:0cxx_attribute_deprecated + Feature record: CXX_FEATURE:0cxx_auto_type + Feature record: CXX_FEATURE:0cxx_binary_literals + Feature record: CXX_FEATURE:0cxx_constexpr + Feature record: CXX_FEATURE:0cxx_contextual_conversions + Feature record: CXX_FEATURE:0cxx_decltype + Feature record: CXX_FEATURE:0cxx_decltype_auto + Feature record: CXX_FEATURE:0cxx_decltype_incomplete_return_types + Feature record: CXX_FEATURE:0cxx_default_function_template_args + Feature record: CXX_FEATURE:0cxx_defaulted_functions + Feature record: CXX_FEATURE:0cxx_defaulted_move_initializers + Feature record: CXX_FEATURE:0cxx_delegating_constructors + Feature record: CXX_FEATURE:0cxx_deleted_functions + Feature record: CXX_FEATURE:0cxx_digit_separators + Feature record: CXX_FEATURE:0cxx_enum_forward_declarations + Feature record: CXX_FEATURE:0cxx_explicit_conversions + Feature record: CXX_FEATURE:0cxx_extended_friend_declarations + Feature record: CXX_FEATURE:0cxx_extern_templates + Feature record: CXX_FEATURE:0cxx_final + Feature record: CXX_FEATURE:0cxx_func_identifier + Feature record: CXX_FEATURE:0cxx_generalized_initializers + Feature record: CXX_FEATURE:0cxx_generic_lambdas + Feature record: CXX_FEATURE:0cxx_inheriting_constructors + Feature record: CXX_FEATURE:0cxx_inline_namespaces + Feature record: CXX_FEATURE:0cxx_lambdas + Feature record: CXX_FEATURE:0cxx_lambda_init_captures + Feature record: CXX_FEATURE:0cxx_local_type_template_args + Feature record: CXX_FEATURE:0cxx_long_long_type + Feature record: CXX_FEATURE:0cxx_noexcept + Feature record: CXX_FEATURE:0cxx_nonstatic_member_init + Feature record: CXX_FEATURE:0cxx_nullptr + Feature record: CXX_FEATURE:0cxx_override + Feature record: CXX_FEATURE:0cxx_range_for + Feature record: CXX_FEATURE:0cxx_raw_string_literals + Feature record: CXX_FEATURE:0cxx_reference_qualified_functions + Feature record: CXX_FEATURE:0cxx_relaxed_constexpr + Feature record: CXX_FEATURE:0cxx_return_type_deduction + Feature record: CXX_FEATURE:0cxx_right_angle_brackets + Feature record: CXX_FEATURE:0cxx_rvalue_references + Feature record: CXX_FEATURE:0cxx_sizeof_member + Feature record: CXX_FEATURE:0cxx_static_assert + Feature record: CXX_FEATURE:0cxx_strong_enums + Feature record: CXX_FEATURE:1cxx_template_template_parameters + Feature record: CXX_FEATURE:0cxx_thread_local + Feature record: CXX_FEATURE:0cxx_trailing_return_types + Feature record: CXX_FEATURE:0cxx_unicode_literals + Feature record: CXX_FEATURE:0cxx_uniform_initialization + Feature record: CXX_FEATURE:0cxx_unrestricted_unions + Feature record: CXX_FEATURE:0cxx_user_literals + Feature record: CXX_FEATURE:0cxx_variable_templates + Feature record: CXX_FEATURE:0cxx_variadic_macros + Feature record: CXX_FEATURE:0cxx_variadic_templates diff --git a/lec12/cmaketest/CMakeFiles/Makefile.cmake b/lec12/cmaketest/CMakeFiles/Makefile.cmake new file mode 100644 index 0000000..ed36996 --- /dev/null +++ b/lec12/cmaketest/CMakeFiles/Makefile.cmake @@ -0,0 +1,118 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.10 + +# 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" + "CMakeFiles/3.10.2/CMakeCCompiler.cmake" + "CMakeFiles/3.10.2/CMakeCXXCompiler.cmake" + "CMakeFiles/3.10.2/CMakeSystem.cmake" + "CMakeFiles/feature_tests.c" + "CMakeFiles/feature_tests.cxx" + "CMakeLists.txt" + "/usr/share/cmake-3.10/Modules/CMakeCCompiler.cmake.in" + "/usr/share/cmake-3.10/Modules/CMakeCCompilerABI.c" + "/usr/share/cmake-3.10/Modules/CMakeCInformation.cmake" + "/usr/share/cmake-3.10/Modules/CMakeCXXCompiler.cmake.in" + "/usr/share/cmake-3.10/Modules/CMakeCXXCompilerABI.cpp" + "/usr/share/cmake-3.10/Modules/CMakeCXXInformation.cmake" + "/usr/share/cmake-3.10/Modules/CMakeCommonLanguageInclude.cmake" + "/usr/share/cmake-3.10/Modules/CMakeCompilerIdDetection.cmake" + "/usr/share/cmake-3.10/Modules/CMakeDetermineCCompiler.cmake" + "/usr/share/cmake-3.10/Modules/CMakeDetermineCXXCompiler.cmake" + "/usr/share/cmake-3.10/Modules/CMakeDetermineCompileFeatures.cmake" + "/usr/share/cmake-3.10/Modules/CMakeDetermineCompiler.cmake" + "/usr/share/cmake-3.10/Modules/CMakeDetermineCompilerABI.cmake" + "/usr/share/cmake-3.10/Modules/CMakeDetermineCompilerId.cmake" + "/usr/share/cmake-3.10/Modules/CMakeDetermineSystem.cmake" + "/usr/share/cmake-3.10/Modules/CMakeFindBinUtils.cmake" + "/usr/share/cmake-3.10/Modules/CMakeGenericSystem.cmake" + "/usr/share/cmake-3.10/Modules/CMakeLanguageInformation.cmake" + "/usr/share/cmake-3.10/Modules/CMakeParseImplicitLinkInfo.cmake" + "/usr/share/cmake-3.10/Modules/CMakeSystem.cmake.in" + "/usr/share/cmake-3.10/Modules/CMakeSystemSpecificInformation.cmake" + "/usr/share/cmake-3.10/Modules/CMakeSystemSpecificInitialize.cmake" + "/usr/share/cmake-3.10/Modules/CMakeTestCCompiler.cmake" + "/usr/share/cmake-3.10/Modules/CMakeTestCXXCompiler.cmake" + "/usr/share/cmake-3.10/Modules/CMakeTestCompilerCommon.cmake" + "/usr/share/cmake-3.10/Modules/CMakeUnixFindMake.cmake" + "/usr/share/cmake-3.10/Modules/Compiler/ADSP-DetermineCompiler.cmake" + "/usr/share/cmake-3.10/Modules/Compiler/ARMCC-DetermineCompiler.cmake" + "/usr/share/cmake-3.10/Modules/Compiler/AppleClang-DetermineCompiler.cmake" + "/usr/share/cmake-3.10/Modules/Compiler/Borland-DetermineCompiler.cmake" + "/usr/share/cmake-3.10/Modules/Compiler/Bruce-C-DetermineCompiler.cmake" + "/usr/share/cmake-3.10/Modules/Compiler/CMakeCommonCompilerMacros.cmake" + "/usr/share/cmake-3.10/Modules/Compiler/Clang-DetermineCompiler.cmake" + "/usr/share/cmake-3.10/Modules/Compiler/Clang-DetermineCompilerInternal.cmake" + "/usr/share/cmake-3.10/Modules/Compiler/Comeau-CXX-DetermineCompiler.cmake" + "/usr/share/cmake-3.10/Modules/Compiler/Compaq-C-DetermineCompiler.cmake" + "/usr/share/cmake-3.10/Modules/Compiler/Compaq-CXX-DetermineCompiler.cmake" + "/usr/share/cmake-3.10/Modules/Compiler/Cray-DetermineCompiler.cmake" + "/usr/share/cmake-3.10/Modules/Compiler/Embarcadero-DetermineCompiler.cmake" + "/usr/share/cmake-3.10/Modules/Compiler/Fujitsu-DetermineCompiler.cmake" + "/usr/share/cmake-3.10/Modules/Compiler/GHS-DetermineCompiler.cmake" + "/usr/share/cmake-3.10/Modules/Compiler/GNU-C-DetermineCompiler.cmake" + "/usr/share/cmake-3.10/Modules/Compiler/GNU-C-FeatureTests.cmake" + "/usr/share/cmake-3.10/Modules/Compiler/GNU-C.cmake" + "/usr/share/cmake-3.10/Modules/Compiler/GNU-CXX-DetermineCompiler.cmake" + "/usr/share/cmake-3.10/Modules/Compiler/GNU-CXX-FeatureTests.cmake" + "/usr/share/cmake-3.10/Modules/Compiler/GNU-CXX.cmake" + "/usr/share/cmake-3.10/Modules/Compiler/GNU-FindBinUtils.cmake" + "/usr/share/cmake-3.10/Modules/Compiler/GNU.cmake" + "/usr/share/cmake-3.10/Modules/Compiler/HP-C-DetermineCompiler.cmake" + "/usr/share/cmake-3.10/Modules/Compiler/HP-CXX-DetermineCompiler.cmake" + "/usr/share/cmake-3.10/Modules/Compiler/IAR-DetermineCompiler.cmake" + "/usr/share/cmake-3.10/Modules/Compiler/IBMCPP-C-DetermineVersionInternal.cmake" + "/usr/share/cmake-3.10/Modules/Compiler/IBMCPP-CXX-DetermineVersionInternal.cmake" + "/usr/share/cmake-3.10/Modules/Compiler/Intel-DetermineCompiler.cmake" + "/usr/share/cmake-3.10/Modules/Compiler/MIPSpro-DetermineCompiler.cmake" + "/usr/share/cmake-3.10/Modules/Compiler/MSVC-DetermineCompiler.cmake" + "/usr/share/cmake-3.10/Modules/Compiler/NVIDIA-DetermineCompiler.cmake" + "/usr/share/cmake-3.10/Modules/Compiler/OpenWatcom-DetermineCompiler.cmake" + "/usr/share/cmake-3.10/Modules/Compiler/PGI-DetermineCompiler.cmake" + "/usr/share/cmake-3.10/Modules/Compiler/PathScale-DetermineCompiler.cmake" + "/usr/share/cmake-3.10/Modules/Compiler/SCO-DetermineCompiler.cmake" + "/usr/share/cmake-3.10/Modules/Compiler/SDCC-C-DetermineCompiler.cmake" + "/usr/share/cmake-3.10/Modules/Compiler/SunPro-C-DetermineCompiler.cmake" + "/usr/share/cmake-3.10/Modules/Compiler/SunPro-CXX-DetermineCompiler.cmake" + "/usr/share/cmake-3.10/Modules/Compiler/TI-DetermineCompiler.cmake" + "/usr/share/cmake-3.10/Modules/Compiler/TinyCC-C-DetermineCompiler.cmake" + "/usr/share/cmake-3.10/Modules/Compiler/VisualAge-C-DetermineCompiler.cmake" + "/usr/share/cmake-3.10/Modules/Compiler/VisualAge-CXX-DetermineCompiler.cmake" + "/usr/share/cmake-3.10/Modules/Compiler/Watcom-DetermineCompiler.cmake" + "/usr/share/cmake-3.10/Modules/Compiler/XL-C-DetermineCompiler.cmake" + "/usr/share/cmake-3.10/Modules/Compiler/XL-CXX-DetermineCompiler.cmake" + "/usr/share/cmake-3.10/Modules/Compiler/zOS-C-DetermineCompiler.cmake" + "/usr/share/cmake-3.10/Modules/Compiler/zOS-CXX-DetermineCompiler.cmake" + "/usr/share/cmake-3.10/Modules/Internal/FeatureTesting.cmake" + "/usr/share/cmake-3.10/Modules/Platform/Linux-Determine-CXX.cmake" + "/usr/share/cmake-3.10/Modules/Platform/Linux-GNU-C.cmake" + "/usr/share/cmake-3.10/Modules/Platform/Linux-GNU-CXX.cmake" + "/usr/share/cmake-3.10/Modules/Platform/Linux-GNU.cmake" + "/usr/share/cmake-3.10/Modules/Platform/Linux.cmake" + "/usr/share/cmake-3.10/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/3.10.2/CMakeSystem.cmake" + "CMakeFiles/3.10.2/CMakeCCompiler.cmake" + "CMakeFiles/3.10.2/CMakeCXXCompiler.cmake" + "CMakeFiles/3.10.2/CMakeCCompiler.cmake" + "CMakeFiles/3.10.2/CMakeCXXCompiler.cmake" + "CMakeFiles/CMakeDirectoryInformation.cmake" + ) + +# Dependency information for all targets: +set(CMAKE_DEPEND_INFO_FILES + "CMakeFiles/main.dir/DependInfo.cmake" + ) diff --git a/lec12/cmaketest/CMakeFiles/Makefile2 b/lec12/cmaketest/CMakeFiles/Makefile2 new file mode 100644 index 0000000..4243970 --- /dev/null +++ b/lec12/cmaketest/CMakeFiles/Makefile2 @@ -0,0 +1,108 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.10 + +# 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 + +#============================================================================= +# 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/course/pcc004/pcc/lec12/cmaketest + +# The top-level build directory on which CMake was run. +CMAKE_BINARY_DIR = /home/course/pcc004/pcc/lec12/cmaketest + +#============================================================================= +# Target rules for target CMakeFiles/main.dir + +# All Build rule for target. +CMakeFiles/main.dir/all: + $(MAKE) -f CMakeFiles/main.dir/build.make CMakeFiles/main.dir/depend + $(MAKE) -f CMakeFiles/main.dir/build.make CMakeFiles/main.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/home/course/pcc004/pcc/lec12/cmaketest/CMakeFiles --progress-num=1,2,3 "Built target main" +.PHONY : CMakeFiles/main.dir/all + +# Include target in all. +all: CMakeFiles/main.dir/all + +.PHONY : all + +# Build rule for subdir invocation for target. +CMakeFiles/main.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /home/course/pcc004/pcc/lec12/cmaketest/CMakeFiles 3 + $(MAKE) -f CMakeFiles/Makefile2 CMakeFiles/main.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /home/course/pcc004/pcc/lec12/cmaketest/CMakeFiles 0 +.PHONY : CMakeFiles/main.dir/rule + +# Convenience name for target. +main: CMakeFiles/main.dir/rule + +.PHONY : main + +# clean rule for target. +CMakeFiles/main.dir/clean: + $(MAKE) -f CMakeFiles/main.dir/build.make CMakeFiles/main.dir/clean +.PHONY : CMakeFiles/main.dir/clean + +# clean rule for target. +clean: CMakeFiles/main.dir/clean + +.PHONY : clean + +#============================================================================= +# Special targets to cleanup operation of make. + +# Special rule to run CMake to check the build system integrity. +# No rule that depends on this can have commands that come from listfiles +# because they might be regenerated. +cmake_check_build_system: + $(CMAKE_COMMAND) -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0 +.PHONY : cmake_check_build_system + diff --git a/lec12/cmaketest/CMakeFiles/TargetDirectories.txt b/lec12/cmaketest/CMakeFiles/TargetDirectories.txt new file mode 100644 index 0000000..60554db --- /dev/null +++ b/lec12/cmaketest/CMakeFiles/TargetDirectories.txt @@ -0,0 +1,3 @@ +/home/course/pcc004/pcc/lec12/cmaketest/CMakeFiles/rebuild_cache.dir +/home/course/pcc004/pcc/lec12/cmaketest/CMakeFiles/main.dir +/home/course/pcc004/pcc/lec12/cmaketest/CMakeFiles/edit_cache.dir diff --git a/lec12/cmaketest/CMakeFiles/cmake.check_cache b/lec12/cmaketest/CMakeFiles/cmake.check_cache new file mode 100644 index 0000000..3dccd73 --- /dev/null +++ b/lec12/cmaketest/CMakeFiles/cmake.check_cache @@ -0,0 +1 @@ +# This file is generated by cmake for dependency checking of the CMakeCache.txt file diff --git a/lec12/cmaketest/CMakeFiles/feature_tests.bin b/lec12/cmaketest/CMakeFiles/feature_tests.bin new file mode 100755 index 0000000000000000000000000000000000000000..ae0f49908c89c0ae48d68d46e0157414893eb334 GIT binary patch literal 12312 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 literal 0 HcmV?d00001 diff --git a/lec12/cmaketest/CMakeFiles/feature_tests.c b/lec12/cmaketest/CMakeFiles/feature_tests.c new file mode 100644 index 0000000..83e86dd --- /dev/null +++ b/lec12/cmaketest/CMakeFiles/feature_tests.c @@ -0,0 +1,34 @@ + + const char features[] = {"\n" +"C_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 304 +"1" +#else +"0" +#endif +"c_function_prototypes\n" +"C_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 304 && defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L +"1" +#else +"0" +#endif +"c_restrict\n" +"C_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 406 && defined(__STDC_VERSION__) && __STDC_VERSION__ >= 201000L +"1" +#else +"0" +#endif +"c_static_assert\n" +"C_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 304 && defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L +"1" +#else +"0" +#endif +"c_variadic_macros\n" + +}; + +int main(int argc, char** argv) { (void)argv; return features[argc]; } diff --git a/lec12/cmaketest/CMakeFiles/feature_tests.cxx b/lec12/cmaketest/CMakeFiles/feature_tests.cxx new file mode 100644 index 0000000..b93418c --- /dev/null +++ b/lec12/cmaketest/CMakeFiles/feature_tests.cxx @@ -0,0 +1,405 @@ + + const char features[] = {"\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 500 && __cplusplus >= 201402L +"1" +#else +"0" +#endif +"cxx_aggregate_default_initializers\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 407 && __cplusplus >= 201103L +"1" +#else +"0" +#endif +"cxx_alias_templates\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 408 && __cplusplus >= 201103L +"1" +#else +"0" +#endif +"cxx_alignas\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 408 && __cplusplus >= 201103L +"1" +#else +"0" +#endif +"cxx_alignof\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 408 && __cplusplus >= 201103L +"1" +#else +"0" +#endif +"cxx_attributes\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 409 && __cplusplus > 201103L +"1" +#else +"0" +#endif +"cxx_attribute_deprecated\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__)) +"1" +#else +"0" +#endif +"cxx_auto_type\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 409 && __cplusplus > 201103L +"1" +#else +"0" +#endif +"cxx_binary_literals\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 406 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__)) +"1" +#else +"0" +#endif +"cxx_constexpr\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 409 && __cplusplus > 201103L +"1" +#else +"0" +#endif +"cxx_contextual_conversions\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__)) +"1" +#else +"0" +#endif +"cxx_decltype\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 409 && __cplusplus > 201103L +"1" +#else +"0" +#endif +"cxx_decltype_auto\n" +"CXX_FEATURE:" +#if ((__GNUC__ * 10000 + __GNUC_MINOR__ * 100 + __GNUC_PATCHLEVEL__) >= 40801) && __cplusplus >= 201103L +"1" +#else +"0" +#endif +"cxx_decltype_incomplete_return_types\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__)) +"1" +#else +"0" +#endif +"cxx_default_function_template_args\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__)) +"1" +#else +"0" +#endif +"cxx_defaulted_functions\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 406 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__)) +"1" +#else +"0" +#endif +"cxx_defaulted_move_initializers\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 407 && __cplusplus >= 201103L +"1" +#else +"0" +#endif +"cxx_delegating_constructors\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__)) +"1" +#else +"0" +#endif +"cxx_deleted_functions\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 409 && __cplusplus > 201103L +"1" +#else +"0" +#endif +"cxx_digit_separators\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 406 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__)) +"1" +#else +"0" +#endif +"cxx_enum_forward_declarations\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 405 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__)) +"1" +#else +"0" +#endif +"cxx_explicit_conversions\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 407 && __cplusplus >= 201103L +"1" +#else +"0" +#endif +"cxx_extended_friend_declarations\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__)) +"1" +#else +"0" +#endif +"cxx_extern_templates\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 407 && __cplusplus >= 201103L +"1" +#else +"0" +#endif +"cxx_final\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__)) +"1" +#else +"0" +#endif +"cxx_func_identifier\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__)) +"1" +#else +"0" +#endif +"cxx_generalized_initializers\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 409 && __cplusplus > 201103L +"1" +#else +"0" +#endif +"cxx_generic_lambdas\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 408 && __cplusplus >= 201103L +"1" +#else +"0" +#endif +"cxx_inheriting_constructors\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__)) +"1" +#else +"0" +#endif +"cxx_inline_namespaces\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 405 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__)) +"1" +#else +"0" +#endif +"cxx_lambdas\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 409 && __cplusplus > 201103L +"1" +#else +"0" +#endif +"cxx_lambda_init_captures\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 405 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__)) +"1" +#else +"0" +#endif +"cxx_local_type_template_args\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__)) +"1" +#else +"0" +#endif +"cxx_long_long_type\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 406 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__)) +"1" +#else +"0" +#endif +"cxx_noexcept\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 407 && __cplusplus >= 201103L +"1" +#else +"0" +#endif +"cxx_nonstatic_member_init\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 406 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__)) +"1" +#else +"0" +#endif +"cxx_nullptr\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 407 && __cplusplus >= 201103L +"1" +#else +"0" +#endif +"cxx_override\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 406 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__)) +"1" +#else +"0" +#endif +"cxx_range_for\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 405 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__)) +"1" +#else +"0" +#endif +"cxx_raw_string_literals\n" +"CXX_FEATURE:" +#if ((__GNUC__ * 10000 + __GNUC_MINOR__ * 100 + __GNUC_PATCHLEVEL__) >= 40801) && __cplusplus >= 201103L +"1" +#else +"0" +#endif +"cxx_reference_qualified_functions\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 500 && __cplusplus >= 201402L +"1" +#else +"0" +#endif +"cxx_relaxed_constexpr\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 409 && __cplusplus > 201103L +"1" +#else +"0" +#endif +"cxx_return_type_deduction\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__)) +"1" +#else +"0" +#endif +"cxx_right_angle_brackets\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__)) +"1" +#else +"0" +#endif +"cxx_rvalue_references\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__)) +"1" +#else +"0" +#endif +"cxx_sizeof_member\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__)) +"1" +#else +"0" +#endif +"cxx_static_assert\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__)) +"1" +#else +"0" +#endif +"cxx_strong_enums\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && __cplusplus +"1" +#else +"0" +#endif +"cxx_template_template_parameters\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 408 && __cplusplus >= 201103L +"1" +#else +"0" +#endif +"cxx_thread_local\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__)) +"1" +#else +"0" +#endif +"cxx_trailing_return_types\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__)) +"1" +#else +"0" +#endif +"cxx_unicode_literals\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__)) +"1" +#else +"0" +#endif +"cxx_uniform_initialization\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 406 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__)) +"1" +#else +"0" +#endif +"cxx_unrestricted_unions\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 407 && __cplusplus >= 201103L +"1" +#else +"0" +#endif +"cxx_user_literals\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 500 && __cplusplus >= 201402L +"1" +#else +"0" +#endif +"cxx_variable_templates\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__)) +"1" +#else +"0" +#endif +"cxx_variadic_macros\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__)) +"1" +#else +"0" +#endif +"cxx_variadic_templates\n" + +}; + +int main(int argc, char** argv) { (void)argv; return features[argc]; } diff --git a/lec12/cmaketest/CMakeFiles/main.dir/C.includecache b/lec12/cmaketest/CMakeFiles/main.dir/C.includecache new file mode 100644 index 0000000..5c960c2 --- /dev/null +++ b/lec12/cmaketest/CMakeFiles/main.dir/C.includecache @@ -0,0 +1,30 @@ +#IncludeRegexLine: ^[ ]*[#%][ ]*(include|import)[ ]*[<"]([^">]+)([">]) + +#IncludeRegexScan: ^.*$ + +#IncludeRegexComplain: ^$ + +#IncludeRegexTransform: + +/home/course/pcc004/pcc/lec12/cmaketest/fx_head.h + +/home/course/pcc004/pcc/lec12/cmaketest/fx_s15_16.c +fx_head.h +/home/course/pcc004/pcc/lec12/cmaketest/fx_head.h +fx_s15_16.h +/home/course/pcc004/pcc/lec12/cmaketest/fx_s15_16.h + +/home/course/pcc004/pcc/lec12/cmaketest/fx_s15_16.h +fx_head.h +/home/course/pcc004/pcc/lec12/cmaketest/fx_head.h +math.h +- + +/home/course/pcc004/pcc/lec12/cmaketest/main.c +fx_head.h +/home/course/pcc004/pcc/lec12/cmaketest/fx_head.h +fx_s15_16.h +/home/course/pcc004/pcc/lec12/cmaketest/fx_s15_16.h +stdio.h +- + diff --git a/lec12/cmaketest/CMakeFiles/main.dir/DependInfo.cmake b/lec12/cmaketest/CMakeFiles/main.dir/DependInfo.cmake new file mode 100644 index 0000000..954b9ba --- /dev/null +++ b/lec12/cmaketest/CMakeFiles/main.dir/DependInfo.cmake @@ -0,0 +1,21 @@ +# The set of languages for which implicit dependencies are needed: +set(CMAKE_DEPENDS_LANGUAGES + "C" + ) +# The set of files for implicit dependencies of each language: +set(CMAKE_DEPENDS_CHECK_C + "/home/course/pcc004/pcc/lec12/cmaketest/fx_s15_16.c" "/home/course/pcc004/pcc/lec12/cmaketest/CMakeFiles/main.dir/fx_s15_16.c.o" + "/home/course/pcc004/pcc/lec12/cmaketest/main.c" "/home/course/pcc004/pcc/lec12/cmaketest/CMakeFiles/main.dir/main.c.o" + ) +set(CMAKE_C_COMPILER_ID "GNU") + +# The include file search paths: +set(CMAKE_C_TARGET_INCLUDE_PATH + ) + +# Targets to which this target links. +set(CMAKE_TARGET_LINKED_INFO_FILES + ) + +# Fortran module output directory. +set(CMAKE_Fortran_TARGET_MODULE_DIR "") diff --git a/lec12/cmaketest/CMakeFiles/main.dir/build.make b/lec12/cmaketest/CMakeFiles/main.dir/build.make new file mode 100644 index 0000000..8009909 --- /dev/null +++ b/lec12/cmaketest/CMakeFiles/main.dir/build.make @@ -0,0 +1,140 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.10 + +# Delete rule output on recipe failure. +.DELETE_ON_ERROR: + + +#============================================================================= +# Special targets provided by cmake. + +# Disable implicit rules so canonical targets will work. +.SUFFIXES: + + +# Remove some rules from gmake that .SUFFIXES does not remove. +SUFFIXES = + +.SUFFIXES: .hpux_make_needs_suffix_list + + +# Suppress display of executed commands. +$(VERBOSE).SILENT: + + +# A target that is always out of date. +cmake_force: + +.PHONY : cmake_force + +#============================================================================= +# Set environment variables for the build. + +# The shell in which to execute make rules. +SHELL = /bin/sh + +# The CMake executable. +CMAKE_COMMAND = /usr/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/course/pcc004/pcc/lec12/cmaketest + +# The top-level build directory on which CMake was run. +CMAKE_BINARY_DIR = /home/course/pcc004/pcc/lec12/cmaketest + +# Include any dependencies generated for this target. +include CMakeFiles/main.dir/depend.make + +# Include the progress variables for this target. +include CMakeFiles/main.dir/progress.make + +# Include the compile flags for this target's objects. +include CMakeFiles/main.dir/flags.make + +CMakeFiles/main.dir/main.c.o: CMakeFiles/main.dir/flags.make +CMakeFiles/main.dir/main.c.o: main.c + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/course/pcc004/pcc/lec12/cmaketest/CMakeFiles --progress-num=$(CMAKE_PROGRESS_1) "Building C object CMakeFiles/main.dir/main.c.o" + /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -o CMakeFiles/main.dir/main.c.o -c /home/course/pcc004/pcc/lec12/cmaketest/main.c + +CMakeFiles/main.dir/main.c.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/main.dir/main.c.i" + /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/course/pcc004/pcc/lec12/cmaketest/main.c > CMakeFiles/main.dir/main.c.i + +CMakeFiles/main.dir/main.c.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/main.dir/main.c.s" + /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/course/pcc004/pcc/lec12/cmaketest/main.c -o CMakeFiles/main.dir/main.c.s + +CMakeFiles/main.dir/main.c.o.requires: + +.PHONY : CMakeFiles/main.dir/main.c.o.requires + +CMakeFiles/main.dir/main.c.o.provides: CMakeFiles/main.dir/main.c.o.requires + $(MAKE) -f CMakeFiles/main.dir/build.make CMakeFiles/main.dir/main.c.o.provides.build +.PHONY : CMakeFiles/main.dir/main.c.o.provides + +CMakeFiles/main.dir/main.c.o.provides.build: CMakeFiles/main.dir/main.c.o + + +CMakeFiles/main.dir/fx_s15_16.c.o: CMakeFiles/main.dir/flags.make +CMakeFiles/main.dir/fx_s15_16.c.o: fx_s15_16.c + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/course/pcc004/pcc/lec12/cmaketest/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Building C object CMakeFiles/main.dir/fx_s15_16.c.o" + /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -o CMakeFiles/main.dir/fx_s15_16.c.o -c /home/course/pcc004/pcc/lec12/cmaketest/fx_s15_16.c + +CMakeFiles/main.dir/fx_s15_16.c.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/main.dir/fx_s15_16.c.i" + /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/course/pcc004/pcc/lec12/cmaketest/fx_s15_16.c > CMakeFiles/main.dir/fx_s15_16.c.i + +CMakeFiles/main.dir/fx_s15_16.c.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/main.dir/fx_s15_16.c.s" + /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/course/pcc004/pcc/lec12/cmaketest/fx_s15_16.c -o CMakeFiles/main.dir/fx_s15_16.c.s + +CMakeFiles/main.dir/fx_s15_16.c.o.requires: + +.PHONY : CMakeFiles/main.dir/fx_s15_16.c.o.requires + +CMakeFiles/main.dir/fx_s15_16.c.o.provides: CMakeFiles/main.dir/fx_s15_16.c.o.requires + $(MAKE) -f CMakeFiles/main.dir/build.make CMakeFiles/main.dir/fx_s15_16.c.o.provides.build +.PHONY : CMakeFiles/main.dir/fx_s15_16.c.o.provides + +CMakeFiles/main.dir/fx_s15_16.c.o.provides.build: CMakeFiles/main.dir/fx_s15_16.c.o + + +# Object files for target main +main_OBJECTS = \ +"CMakeFiles/main.dir/main.c.o" \ +"CMakeFiles/main.dir/fx_s15_16.c.o" + +# External object files for target main +main_EXTERNAL_OBJECTS = + +main: CMakeFiles/main.dir/main.c.o +main: CMakeFiles/main.dir/fx_s15_16.c.o +main: CMakeFiles/main.dir/build.make +main: CMakeFiles/main.dir/link.txt + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --bold --progress-dir=/home/course/pcc004/pcc/lec12/cmaketest/CMakeFiles --progress-num=$(CMAKE_PROGRESS_3) "Linking C executable main" + $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/main.dir/link.txt --verbose=$(VERBOSE) + +# Rule to build all files generated by this target. +CMakeFiles/main.dir/build: main + +.PHONY : CMakeFiles/main.dir/build + +CMakeFiles/main.dir/requires: CMakeFiles/main.dir/main.c.o.requires +CMakeFiles/main.dir/requires: CMakeFiles/main.dir/fx_s15_16.c.o.requires + +.PHONY : CMakeFiles/main.dir/requires + +CMakeFiles/main.dir/clean: + $(CMAKE_COMMAND) -P CMakeFiles/main.dir/cmake_clean.cmake +.PHONY : CMakeFiles/main.dir/clean + +CMakeFiles/main.dir/depend: + cd /home/course/pcc004/pcc/lec12/cmaketest && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /home/course/pcc004/pcc/lec12/cmaketest /home/course/pcc004/pcc/lec12/cmaketest /home/course/pcc004/pcc/lec12/cmaketest /home/course/pcc004/pcc/lec12/cmaketest /home/course/pcc004/pcc/lec12/cmaketest/CMakeFiles/main.dir/DependInfo.cmake --color=$(COLOR) +.PHONY : CMakeFiles/main.dir/depend + diff --git a/lec12/cmaketest/CMakeFiles/main.dir/cmake_clean.cmake b/lec12/cmaketest/CMakeFiles/main.dir/cmake_clean.cmake new file mode 100644 index 0000000..6055ef6 --- /dev/null +++ b/lec12/cmaketest/CMakeFiles/main.dir/cmake_clean.cmake @@ -0,0 +1,11 @@ +file(REMOVE_RECURSE + "CMakeFiles/main.dir/main.c.o" + "CMakeFiles/main.dir/fx_s15_16.c.o" + "main.pdb" + "main" +) + +# Per-language clean rules from dependency scanning. +foreach(lang C) + include(CMakeFiles/main.dir/cmake_clean_${lang}.cmake OPTIONAL) +endforeach() diff --git a/lec12/cmaketest/CMakeFiles/main.dir/depend.internal b/lec12/cmaketest/CMakeFiles/main.dir/depend.internal new file mode 100644 index 0000000..f668018 --- /dev/null +++ b/lec12/cmaketest/CMakeFiles/main.dir/depend.internal @@ -0,0 +1,11 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.10 + +CMakeFiles/main.dir/fx_s15_16.c.o + /home/course/pcc004/pcc/lec12/cmaketest/fx_head.h + /home/course/pcc004/pcc/lec12/cmaketest/fx_s15_16.c + /home/course/pcc004/pcc/lec12/cmaketest/fx_s15_16.h +CMakeFiles/main.dir/main.c.o + /home/course/pcc004/pcc/lec12/cmaketest/fx_head.h + /home/course/pcc004/pcc/lec12/cmaketest/fx_s15_16.h + /home/course/pcc004/pcc/lec12/cmaketest/main.c diff --git a/lec12/cmaketest/CMakeFiles/main.dir/depend.make b/lec12/cmaketest/CMakeFiles/main.dir/depend.make new file mode 100644 index 0000000..f62e61c --- /dev/null +++ b/lec12/cmaketest/CMakeFiles/main.dir/depend.make @@ -0,0 +1,11 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.10 + +CMakeFiles/main.dir/fx_s15_16.c.o: fx_head.h +CMakeFiles/main.dir/fx_s15_16.c.o: fx_s15_16.c +CMakeFiles/main.dir/fx_s15_16.c.o: fx_s15_16.h + +CMakeFiles/main.dir/main.c.o: fx_head.h +CMakeFiles/main.dir/main.c.o: fx_s15_16.h +CMakeFiles/main.dir/main.c.o: main.c + diff --git a/lec12/cmaketest/CMakeFiles/main.dir/flags.make b/lec12/cmaketest/CMakeFiles/main.dir/flags.make new file mode 100644 index 0000000..929cc6e --- /dev/null +++ b/lec12/cmaketest/CMakeFiles/main.dir/flags.make @@ -0,0 +1,10 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.10 + +# compile C with /usr/bin/cc +C_FLAGS = + +C_DEFINES = + +C_INCLUDES = + diff --git a/lec12/cmaketest/CMakeFiles/main.dir/link.txt b/lec12/cmaketest/CMakeFiles/main.dir/link.txt new file mode 100644 index 0000000..7d2e527 --- /dev/null +++ b/lec12/cmaketest/CMakeFiles/main.dir/link.txt @@ -0,0 +1 @@ +/usr/bin/cc -rdynamic CMakeFiles/main.dir/main.c.o CMakeFiles/main.dir/fx_s15_16.c.o -o main diff --git a/lec12/cmaketest/CMakeFiles/main.dir/progress.make b/lec12/cmaketest/CMakeFiles/main.dir/progress.make new file mode 100644 index 0000000..6a9dc74 --- /dev/null +++ b/lec12/cmaketest/CMakeFiles/main.dir/progress.make @@ -0,0 +1,4 @@ +CMAKE_PROGRESS_1 = 1 +CMAKE_PROGRESS_2 = 2 +CMAKE_PROGRESS_3 = 3 + diff --git a/lec12/cmaketest/CMakeFiles/progress.marks b/lec12/cmaketest/CMakeFiles/progress.marks new file mode 100644 index 0000000..00750ed --- /dev/null +++ b/lec12/cmaketest/CMakeFiles/progress.marks @@ -0,0 +1 @@ +3 diff --git a/lec12/cmaketest/CMakeLists.txt b/lec12/cmaketest/CMakeLists.txt new file mode 100644 index 0000000..e2bb504 --- /dev/null +++ b/lec12/cmaketest/CMakeLists.txt @@ -0,0 +1,2 @@ +project(main) +ADD_EXECUTABLE(main main.c fx_s15_16.c) diff --git a/lec12/cmaketest/Makefile b/lec12/cmaketest/Makefile new file mode 100644 index 0000000..b356ae0 --- /dev/null +++ b/lec12/cmaketest/Makefile @@ -0,0 +1,208 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.10 + +# 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/course/pcc004/pcc/lec12/cmaketest + +# The top-level build directory on which CMake was run. +CMAKE_BINARY_DIR = /home/course/pcc004/pcc/lec12/cmaketest + +#============================================================================= +# 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 -H$(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/course/pcc004/pcc/lec12/cmaketest/CMakeFiles /home/course/pcc004/pcc/lec12/cmaketest/CMakeFiles/progress.marks + $(MAKE) -f CMakeFiles/Makefile2 all + $(CMAKE_COMMAND) -E cmake_progress_start /home/course/pcc004/pcc/lec12/cmaketest/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) -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 1 +.PHONY : depend + +#============================================================================= +# Target rules for targets named main + +# Build rule for target. +main: cmake_check_build_system + $(MAKE) -f CMakeFiles/Makefile2 main +.PHONY : main + +# fast build rule for target. +main/fast: + $(MAKE) -f CMakeFiles/main.dir/build.make CMakeFiles/main.dir/build +.PHONY : main/fast + +fx_s15_16.o: fx_s15_16.c.o + +.PHONY : fx_s15_16.o + +# target to build an object file +fx_s15_16.c.o: + $(MAKE) -f CMakeFiles/main.dir/build.make CMakeFiles/main.dir/fx_s15_16.c.o +.PHONY : fx_s15_16.c.o + +fx_s15_16.i: fx_s15_16.c.i + +.PHONY : fx_s15_16.i + +# target to preprocess a source file +fx_s15_16.c.i: + $(MAKE) -f CMakeFiles/main.dir/build.make CMakeFiles/main.dir/fx_s15_16.c.i +.PHONY : fx_s15_16.c.i + +fx_s15_16.s: fx_s15_16.c.s + +.PHONY : fx_s15_16.s + +# target to generate assembly for a file +fx_s15_16.c.s: + $(MAKE) -f CMakeFiles/main.dir/build.make CMakeFiles/main.dir/fx_s15_16.c.s +.PHONY : fx_s15_16.c.s + +main.o: main.c.o + +.PHONY : main.o + +# target to build an object file +main.c.o: + $(MAKE) -f CMakeFiles/main.dir/build.make CMakeFiles/main.dir/main.c.o +.PHONY : main.c.o + +main.i: main.c.i + +.PHONY : main.i + +# target to preprocess a source file +main.c.i: + $(MAKE) -f CMakeFiles/main.dir/build.make CMakeFiles/main.dir/main.c.i +.PHONY : main.c.i + +main.s: main.c.s + +.PHONY : main.s + +# target to generate assembly for a file +main.c.s: + $(MAKE) -f CMakeFiles/main.dir/build.make CMakeFiles/main.dir/main.c.s +.PHONY : main.c.s + +# Help Target +help: + @echo "The following are some of the valid targets for this Makefile:" + @echo "... all (the default if no target is provided)" + @echo "... clean" + @echo "... depend" + @echo "... rebuild_cache" + @echo "... main" + @echo "... edit_cache" + @echo "... fx_s15_16.o" + @echo "... fx_s15_16.i" + @echo "... fx_s15_16.s" + @echo "... main.o" + @echo "... main.i" + @echo "... main.s" +.PHONY : help + + + +#============================================================================= +# Special targets to cleanup operation of make. + +# Special rule to run CMake to check the build system integrity. +# No rule that depends on this can have commands that come from listfiles +# because they might be regenerated. +cmake_check_build_system: + $(CMAKE_COMMAND) -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0 +.PHONY : cmake_check_build_system + diff --git a/lec12/cmaketest/cmake_install.cmake b/lec12/cmaketest/cmake_install.cmake new file mode 100644 index 0000000..ba03126 --- /dev/null +++ b/lec12/cmaketest/cmake_install.cmake @@ -0,0 +1,49 @@ +# Install script for directory: /home/course/pcc004/pcc/lec12/cmaketest + +# 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/course/pcc004/pcc/lec12/cmaketest/${CMAKE_INSTALL_MANIFEST}" + "${CMAKE_INSTALL_MANIFEST_CONTENT}") diff --git a/lec12/cmaketest/fx_head.h b/lec12/cmaketest/fx_head.h new file mode 100644 index 0000000..6d9bd26 --- /dev/null +++ b/lec12/cmaketest/fx_head.h @@ -0,0 +1,79 @@ +#pragma once + +// Fixed with signed long long +#define FX_S28_35 ((1<<16) | (28<<8) | (35)) +#define FX_S29_34 ((1<<16) | (29<<8) | (34)) +#define FX_S30_33 ((1<<16) | (30<<8) | (33)) +#define FX_S31_32 ((1<<16) | (31<<8) | (32)) +#define FX_S32_31 ((1<<16) | (32<<8) | (31)) +#define FX_S33_30 ((1<<16) | (33<<8) | (30)) +#define FX_S34_29 ((1<<16) | (34<<8) | (29)) +#define FX_S35_28 ((1<<16) | (35<<8) | (28)) +// Fixed with unsigned long long +#define FX_U29_35 ((0<<16) | (29<<8) | (35)) +#define FX_U30_34 ((0<<16) | (30<<8) | (34)) +#define FX_U31_33 ((0<<16) | (31<<8) | (33)) +#define FX_U32_32 ((0<<16) | (32<<8) | (32)) +#define FX_U33_31 ((0<<16) | (33<<8) | (31)) +#define FX_U34_30 ((0<<16) | (34<<8) | (30)) +#define FX_U35_29 ((0<<16) | (35<<8) | (29)) +#define FX_U36_28 ((0<<16) | (36<<8) | (28)) +// Fixed with signed int +#define FX_S12_19 ((1<<16) | (12<<8) | (19)) +#define FX_S13_18 ((1<<16) | (13<<8) | (18)) +#define FX_S14_17 ((1<<16) | (14<<8) | (17)) +#define FX_S15_16 ((1<<16) | (15<<8) | (16)) +#define FX_S16_15 ((1<<16) | (16<<8) | (15)) +#define FX_S17_14 ((1<<16) | (17<<8) | (14)) +#define FX_S18_13 ((1<<16) | (18<<8) | (13)) +#define FX_S19_12 ((1<<16) | (19<<8) | (12)) +// Fixed with unsigned int +#define FX_S13_19 ((0<<16) | (13<<8) | (19)) +#define FX_S14_18 ((0<<16) | (14<<8) | (18)) +#define FX_S15_17 ((0<<16) | (15<<8) | (17)) +#define FX_S16_16 ((0<<16) | (16<<8) | (16)) +#define FX_S17_15 ((0<<16) | (17<<8) | (15)) +#define FX_S18_14 ((0<<16) | (18<<8) | (14)) +#define FX_S19_13 ((0<<16) | (19<<8) | (13)) +#define FX_S20_12 ((0<<16) | (20<<8) | (12)) +// Fixed with signed short +#define FX_S04_11 ((1<<16) | (4<<8) | (11)) +#define FX_S05_10 ((1<<16) | (5<<8) | (10)) +#define FX_S06_09 ((1<<16) | (6<<8) | (9)) +#define FX_S07_08 ((1<<16) | (7<<8) | (8)) +#define FX_S08_07 ((1<<16) | (8<<8) | (7)) +#define FX_S09_06 ((1<<16) | (9<<8) | (6)) +#define FX_S10_05 ((1<<16) | (10<<8) | (5)) +#define FX_S11_04 ((1<<16) | (11<<8) | (4)) +// Fixed with unsigned short +#define FX_S05_11 ((0<<16) | (5<<8) | (11)) +#define FX_S06_10 ((0<<16) | (6<<8) | (10)) +#define FX_S07_09 ((0<<16) | (7<<8) | (9)) +#define FX_S08_08 ((0<<16) | (8<<8) | (8)) +#define FX_S09_07 ((0<<16) | (9<<8) | (7)) +#define FX_S10_06 ((0<<16) | (10<<8) | (6)) +#define FX_S11_05 ((0<<16) | (11<<8) | (5)) +#define FX_S12_04 ((0<<16) | (12<<8) | (4)) +// Fixed with signed char +#define FX_S00_07 ((1<<16) | (0<<8) | (7)) +#define FX_S01_06 ((1<<16) | (1<<8) | (6)) +#define FX_S02_05 ((1<<16) | (2<<8) | (5)) +#define FX_S03_04 ((1<<16) | (3<<8) | (4)) +#define FX_S04_03 ((1<<16) | (4<<8) | (3)) +#define FX_S05_02 ((1<<16) | (5<<8) | (2)) +#define FX_S06_01 ((1<<16) | (6<<8) | (1)) +// #define FX_S07_00 ((1<<16) | (7<<8) | (0)) // It is same as unsigned char +// Fixed with unsigned char +#define FX_S00_08 ((0<<16) | (0<<8) | (8)) +#define FX_S01_07 ((0<<16) | (1<<8) | (7)) +#define FX_S02_06 ((0<<16) | (2<<8) | (6)) +#define FX_S03_05 ((0<<16) | (3<<8) | (5)) +#define FX_S04_04 ((0<<16) | (4<<8) | (4)) +#define FX_S05_03 ((0<<16) | (5<<8) | (3)) +#define FX_S06_02 ((0<<16) | (6<<8) | (2)) +#define FX_S07_01 ((0<<16) | (7<<8) | (1)) +// Operation Preference +#define FX_OP_FLOAT 1 +#define FX_OP_PRECISION 2 +#define FX_OP_FAIR 3 +#define FX_OP_PERFORMANCE 4 diff --git a/lec12/cmaketest/fx_s15_16.c b/lec12/cmaketest/fx_s15_16.c new file mode 100644 index 0000000..faafafc --- /dev/null +++ b/lec12/cmaketest/fx_s15_16.c @@ -0,0 +1,7 @@ +#include "fx_head.h" +#include "fx_s15_16.h" + +fixed fxMul_float(fixed a, fixed b) +{ + return fromFloat(toFloat(a) * toFloat(b)); +} diff --git a/lec12/cmaketest/fx_s15_16.h b/lec12/cmaketest/fx_s15_16.h new file mode 100644 index 0000000..8e2178f --- /dev/null +++ b/lec12/cmaketest/fx_s15_16.h @@ -0,0 +1,37 @@ +#include "fx_head.h" +#include <math.h> + +#define FX_POINT FX_S15_16 + +#define FX_Q_NUM (FX_POINT & 0xFF) // 16 + +// If you want calculate with high precision set 64 +#define FX_SYSTEM_INTEGER 32 // or 32 or 16 or 8 +#define FX_SYSTEM_FLOAT 32 // or 32 + +#define FX_DATA_TYPE signed int + + +typedef int fx_s15_16; +typedef fx_s15_16 fixed; + +#define fromDouble(d) ((fixed)((d)*DOUBLE_Q_VALUE)) +#define toDouble(d) ((double)(d)*DOUBLE_1_Q_VALUE) +#define fromFloat(d) ((fixed)((d)*FLOAT_Q_VALUE)) +#define toFloat(d) ((float)(d)*FLOAT_1_Q_VALUE) + +// CONSTANTS +#define FLOAT_Q_VALUE (float)(1<<FX_Q_NUM) +#define DOUBLE_Q_VALUE (double)(1<<FX_Q_NUM) +#define FLOAT_1_Q_VALUE (float)(1.0f/FLOAT_Q_VALUE) +#define DOUBLE_1_Q_VALUE (double)(1.0f/DOUBLE_Q_VALUE) +#define FX_PI fromDOUBLE(M_PI) + +// One of FX_OP_FLOAT, FX_OP_PRECISION, FX_OP_FAIR, FX_OP_PERFORMANCE +#define FX_OP_PREFERENCE FX_OP_FLOAT + +extern fixed fxAdd_float(), fxAdd_precision(), fxAdd_fair(), fxAdd_performance(); +extern fixed fxSub_float(), fxSub_precision(), fxSub_fair(), fxSub_performance(); +extern fixed fxMul_float(), fxMul_precision(), fxMul_fair(), fxMul_performance(); +extern fixed fxDiv_float(), fxDiv_precision(), fxDiv_fair(), fxDiv_performance(); + diff --git a/lec12/cmaketest/main b/lec12/cmaketest/main new file mode 100755 index 0000000000000000000000000000000000000000..bc022adeeae19a98614994fb6ee45dd1b6dd900a GIT binary patch literal 8376 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 Z%wCu}L8Q2ciGk=6s0IH(93+gc9{>mC!#Dr{ literal 0 HcmV?d00001 diff --git a/lec12/cmaketest/main.c b/lec12/cmaketest/main.c new file mode 100644 index 0000000..015b418 --- /dev/null +++ b/lec12/cmaketest/main.c @@ -0,0 +1,12 @@ +#include "fx_head.h" +#include "fx_s15_16.h" +#include <stdio.h> + + +int main() +{ + + printf("%f : %d\n",1.0, fromDouble(1.0)); + printf("%f : %f\n",1.3*0.3, toFloat(fxMul_float(fromDouble(1.3),fromDouble(0.3)))) ; + +} diff --git a/lec12/cmaketest/test2.c b/lec12/cmaketest/test2.c new file mode 100644 index 0000000..2c0cabd --- /dev/null +++ b/lec12/cmaketest/test2.c @@ -0,0 +1,46 @@ +#include <stdio.h> +// #### #### #### #### . #### #### #### #### +// S 15 . 16 +#define FX_Q_NUM 16 +#define FX_2_MINUS_16 1.52587890625e-05F +#define FX_2_PLUS_16 (1<<16) +#define FX_S_15_16 11516 +#define FX_SYSTEM FX_S_15_16 + +typedef int fixed32; + +fixed32 fromFloat(float fa) +{ + return (fixed32) (fa * FX_2_PLUS_16) ; +} + +float toFloat(fixed32 xa) +{ + return ((float) (xa)) * FX_2_MINUS_16 ; +} + +fixed32 fxAdd(fixed32 a, fixed32 b) +{ + return fromFloat((toFloat(a) + toFloat(b))); +} + +fixed32 fxAdd2(fixed32 a, fixed32 b) +{ + return a+b; +} + +int main() +{ + long long i=0; + int ia, ib, ic, ic2; + float fa; + // fscanf(stdin, "%d %d", &ia, &ib); + for ( i = 0; i < (long long) 256*256*256*256; i+=(256*256)) + { + ic = fxAdd(i, i); + ic2 = fxAdd2(i, i); + fprintf(stdout, "%f + %f : %f , %f diff = %d\n", toFloat(i), toFloat(i), toFloat(ic), toFloat(ic2), ic-ic2); + } + //fprintf(stdout, "%d + %d : %d\n", ia, ib , ic) ; + //fprintf(stdout, "%f + %f : %f\n", toFloat(ia), toFloat(ib), toFloat(ic)); +} diff --git a/lec12/file b/lec12/file new file mode 100644 index 0000000..e69de29 diff --git a/lec12/fx_head.h b/lec12/fx_head.h new file mode 100644 index 0000000..6d9bd26 --- /dev/null +++ b/lec12/fx_head.h @@ -0,0 +1,79 @@ +#pragma once + +// Fixed with signed long long +#define FX_S28_35 ((1<<16) | (28<<8) | (35)) +#define FX_S29_34 ((1<<16) | (29<<8) | (34)) +#define FX_S30_33 ((1<<16) | (30<<8) | (33)) +#define FX_S31_32 ((1<<16) | (31<<8) | (32)) +#define FX_S32_31 ((1<<16) | (32<<8) | (31)) +#define FX_S33_30 ((1<<16) | (33<<8) | (30)) +#define FX_S34_29 ((1<<16) | (34<<8) | (29)) +#define FX_S35_28 ((1<<16) | (35<<8) | (28)) +// Fixed with unsigned long long +#define FX_U29_35 ((0<<16) | (29<<8) | (35)) +#define FX_U30_34 ((0<<16) | (30<<8) | (34)) +#define FX_U31_33 ((0<<16) | (31<<8) | (33)) +#define FX_U32_32 ((0<<16) | (32<<8) | (32)) +#define FX_U33_31 ((0<<16) | (33<<8) | (31)) +#define FX_U34_30 ((0<<16) | (34<<8) | (30)) +#define FX_U35_29 ((0<<16) | (35<<8) | (29)) +#define FX_U36_28 ((0<<16) | (36<<8) | (28)) +// Fixed with signed int +#define FX_S12_19 ((1<<16) | (12<<8) | (19)) +#define FX_S13_18 ((1<<16) | (13<<8) | (18)) +#define FX_S14_17 ((1<<16) | (14<<8) | (17)) +#define FX_S15_16 ((1<<16) | (15<<8) | (16)) +#define FX_S16_15 ((1<<16) | (16<<8) | (15)) +#define FX_S17_14 ((1<<16) | (17<<8) | (14)) +#define FX_S18_13 ((1<<16) | (18<<8) | (13)) +#define FX_S19_12 ((1<<16) | (19<<8) | (12)) +// Fixed with unsigned int +#define FX_S13_19 ((0<<16) | (13<<8) | (19)) +#define FX_S14_18 ((0<<16) | (14<<8) | (18)) +#define FX_S15_17 ((0<<16) | (15<<8) | (17)) +#define FX_S16_16 ((0<<16) | (16<<8) | (16)) +#define FX_S17_15 ((0<<16) | (17<<8) | (15)) +#define FX_S18_14 ((0<<16) | (18<<8) | (14)) +#define FX_S19_13 ((0<<16) | (19<<8) | (13)) +#define FX_S20_12 ((0<<16) | (20<<8) | (12)) +// Fixed with signed short +#define FX_S04_11 ((1<<16) | (4<<8) | (11)) +#define FX_S05_10 ((1<<16) | (5<<8) | (10)) +#define FX_S06_09 ((1<<16) | (6<<8) | (9)) +#define FX_S07_08 ((1<<16) | (7<<8) | (8)) +#define FX_S08_07 ((1<<16) | (8<<8) | (7)) +#define FX_S09_06 ((1<<16) | (9<<8) | (6)) +#define FX_S10_05 ((1<<16) | (10<<8) | (5)) +#define FX_S11_04 ((1<<16) | (11<<8) | (4)) +// Fixed with unsigned short +#define FX_S05_11 ((0<<16) | (5<<8) | (11)) +#define FX_S06_10 ((0<<16) | (6<<8) | (10)) +#define FX_S07_09 ((0<<16) | (7<<8) | (9)) +#define FX_S08_08 ((0<<16) | (8<<8) | (8)) +#define FX_S09_07 ((0<<16) | (9<<8) | (7)) +#define FX_S10_06 ((0<<16) | (10<<8) | (6)) +#define FX_S11_05 ((0<<16) | (11<<8) | (5)) +#define FX_S12_04 ((0<<16) | (12<<8) | (4)) +// Fixed with signed char +#define FX_S00_07 ((1<<16) | (0<<8) | (7)) +#define FX_S01_06 ((1<<16) | (1<<8) | (6)) +#define FX_S02_05 ((1<<16) | (2<<8) | (5)) +#define FX_S03_04 ((1<<16) | (3<<8) | (4)) +#define FX_S04_03 ((1<<16) | (4<<8) | (3)) +#define FX_S05_02 ((1<<16) | (5<<8) | (2)) +#define FX_S06_01 ((1<<16) | (6<<8) | (1)) +// #define FX_S07_00 ((1<<16) | (7<<8) | (0)) // It is same as unsigned char +// Fixed with unsigned char +#define FX_S00_08 ((0<<16) | (0<<8) | (8)) +#define FX_S01_07 ((0<<16) | (1<<8) | (7)) +#define FX_S02_06 ((0<<16) | (2<<8) | (6)) +#define FX_S03_05 ((0<<16) | (3<<8) | (5)) +#define FX_S04_04 ((0<<16) | (4<<8) | (4)) +#define FX_S05_03 ((0<<16) | (5<<8) | (3)) +#define FX_S06_02 ((0<<16) | (6<<8) | (2)) +#define FX_S07_01 ((0<<16) | (7<<8) | (1)) +// Operation Preference +#define FX_OP_FLOAT 1 +#define FX_OP_PRECISION 2 +#define FX_OP_FAIR 3 +#define FX_OP_PERFORMANCE 4 diff --git a/lec12/fx_s15_16.c b/lec12/fx_s15_16.c new file mode 100644 index 0000000..faafafc --- /dev/null +++ b/lec12/fx_s15_16.c @@ -0,0 +1,7 @@ +#include "fx_head.h" +#include "fx_s15_16.h" + +fixed fxMul_float(fixed a, fixed b) +{ + return fromFloat(toFloat(a) * toFloat(b)); +} diff --git a/lec12/fx_s15_16.h b/lec12/fx_s15_16.h new file mode 100644 index 0000000..8e2178f --- /dev/null +++ b/lec12/fx_s15_16.h @@ -0,0 +1,37 @@ +#include "fx_head.h" +#include <math.h> + +#define FX_POINT FX_S15_16 + +#define FX_Q_NUM (FX_POINT & 0xFF) // 16 + +// If you want calculate with high precision set 64 +#define FX_SYSTEM_INTEGER 32 // or 32 or 16 or 8 +#define FX_SYSTEM_FLOAT 32 // or 32 + +#define FX_DATA_TYPE signed int + + +typedef int fx_s15_16; +typedef fx_s15_16 fixed; + +#define fromDouble(d) ((fixed)((d)*DOUBLE_Q_VALUE)) +#define toDouble(d) ((double)(d)*DOUBLE_1_Q_VALUE) +#define fromFloat(d) ((fixed)((d)*FLOAT_Q_VALUE)) +#define toFloat(d) ((float)(d)*FLOAT_1_Q_VALUE) + +// CONSTANTS +#define FLOAT_Q_VALUE (float)(1<<FX_Q_NUM) +#define DOUBLE_Q_VALUE (double)(1<<FX_Q_NUM) +#define FLOAT_1_Q_VALUE (float)(1.0f/FLOAT_Q_VALUE) +#define DOUBLE_1_Q_VALUE (double)(1.0f/DOUBLE_Q_VALUE) +#define FX_PI fromDOUBLE(M_PI) + +// One of FX_OP_FLOAT, FX_OP_PRECISION, FX_OP_FAIR, FX_OP_PERFORMANCE +#define FX_OP_PREFERENCE FX_OP_FLOAT + +extern fixed fxAdd_float(), fxAdd_precision(), fxAdd_fair(), fxAdd_performance(); +extern fixed fxSub_float(), fxSub_precision(), fxSub_fair(), fxSub_performance(); +extern fixed fxMul_float(), fxMul_precision(), fxMul_fair(), fxMul_performance(); +extern fixed fxDiv_float(), fxDiv_precision(), fxDiv_fair(), fxDiv_performance(); + diff --git a/lec12/main b/lec12/main new file mode 100755 index 0000000000000000000000000000000000000000..be8bbc9bb6e9a65c0c4bf236e54f9f179b125b0d GIT binary patch literal 11840 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 literal 0 HcmV?d00001 diff --git a/lec12/main.c b/lec12/main.c new file mode 100644 index 0000000..015b418 --- /dev/null +++ b/lec12/main.c @@ -0,0 +1,12 @@ +#include "fx_head.h" +#include "fx_s15_16.h" +#include <stdio.h> + + +int main() +{ + + printf("%f : %d\n",1.0, fromDouble(1.0)); + printf("%f : %f\n",1.3*0.3, toFloat(fxMul_float(fromDouble(1.3),fromDouble(0.3)))) ; + +} diff --git a/lec12/main_for_debug b/lec12/main_for_debug new file mode 100755 index 0000000000000000000000000000000000000000..be8bbc9bb6e9a65c0c4bf236e54f9f179b125b0d GIT binary patch literal 11840 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 literal 0 HcmV?d00001 diff --git a/lec12/test2.c b/lec12/test2.c new file mode 100644 index 0000000..2c0cabd --- /dev/null +++ b/lec12/test2.c @@ -0,0 +1,46 @@ +#include <stdio.h> +// #### #### #### #### . #### #### #### #### +// S 15 . 16 +#define FX_Q_NUM 16 +#define FX_2_MINUS_16 1.52587890625e-05F +#define FX_2_PLUS_16 (1<<16) +#define FX_S_15_16 11516 +#define FX_SYSTEM FX_S_15_16 + +typedef int fixed32; + +fixed32 fromFloat(float fa) +{ + return (fixed32) (fa * FX_2_PLUS_16) ; +} + +float toFloat(fixed32 xa) +{ + return ((float) (xa)) * FX_2_MINUS_16 ; +} + +fixed32 fxAdd(fixed32 a, fixed32 b) +{ + return fromFloat((toFloat(a) + toFloat(b))); +} + +fixed32 fxAdd2(fixed32 a, fixed32 b) +{ + return a+b; +} + +int main() +{ + long long i=0; + int ia, ib, ic, ic2; + float fa; + // fscanf(stdin, "%d %d", &ia, &ib); + for ( i = 0; i < (long long) 256*256*256*256; i+=(256*256)) + { + ic = fxAdd(i, i); + ic2 = fxAdd2(i, i); + fprintf(stdout, "%f + %f : %f , %f diff = %d\n", toFloat(i), toFloat(i), toFloat(ic), toFloat(ic2), ic-ic2); + } + //fprintf(stdout, "%d + %d : %d\n", ia, ib , ic) ; + //fprintf(stdout, "%f + %f : %f\n", toFloat(ia), toFloat(ib), toFloat(ic)); +} -- GitLab