diff --git a/hw5/CMakeLists.txt b/hw5/CMakeLists.txt index db77adc..d4fe21f 100644 --- a/hw5/CMakeLists.txt +++ b/hw5/CMakeLists.txt @@ -6,6 +6,9 @@ set(CMAKE_CXX_STANDARD 20) find_package(Boost COMPONENTS program_options REQUIRED) find_package(spdlog REQUIRED) +include(CheckIPOSupported) +check_ipo_supported(RESULT supported OUTPUT error) + include_directories(${Boost_INCLUDE_DIR}) include_directories(include) @@ -33,3 +36,13 @@ add_executable(verilog_parser target_link_libraries( verilog_parser PRIVATE spdlog::spdlog ${Boost_Libraries} ) + +if(supported) + message(STATUS "LTO supported") + set(CMAKE_INTERPROCEDURAL_OPTIMIZATION TRUE) +else() + message(STATUS "LTO not supported") +endif() + +set(CMAKE_CXX_FLAGS "-O3") +set(CMAKE_C_FLAGS "-O3") diff --git a/hw5/build/CMakeCache.txt b/hw5/build/CMakeCache.txt index 7dc37f2..cf17b51 100644 --- a/hw5/build/CMakeCache.txt +++ b/hw5/build/CMakeCache.txt @@ -398,4 +398,6 @@ FIND_PACKAGE_MESSAGE_DETAILS_Threads:INTERNAL=[TRUE][v()] boost_headers_DIR-ADVANCED:INTERNAL=1 //ADVANCED property for variable: boost_program_options_DIR boost_program_options_DIR-ADVANCED:INTERNAL=1 +//Result of TRY_COMPILE +result:INTERNAL=TRUE diff --git a/hw5/build/CMakeFiles/Makefile.cmake b/hw5/build/CMakeFiles/Makefile.cmake index be50cbd..a6307d8 100644 --- a/hw5/build/CMakeFiles/Makefile.cmake +++ b/hw5/build/CMakeFiles/Makefile.cmake @@ -34,6 +34,13 @@ set(CMAKE_MAKEFILE_DEPENDS "/usr/share/cmake-3.16/Modules/CMakeSystemSpecificInformation.cmake" "/usr/share/cmake-3.16/Modules/CMakeSystemSpecificInitialize.cmake" "/usr/share/cmake-3.16/Modules/CheckCSourceCompiles.cmake" + "/usr/share/cmake-3.16/Modules/CheckIPOSupported.cmake" + "/usr/share/cmake-3.16/Modules/CheckIPOSupported/CMakeLists-C.txt.in" + "/usr/share/cmake-3.16/Modules/CheckIPOSupported/CMakeLists-CXX.txt.in" + "/usr/share/cmake-3.16/Modules/CheckIPOSupported/foo.c" + "/usr/share/cmake-3.16/Modules/CheckIPOSupported/foo.cpp" + "/usr/share/cmake-3.16/Modules/CheckIPOSupported/main.c" + "/usr/share/cmake-3.16/Modules/CheckIPOSupported/main.cpp" "/usr/share/cmake-3.16/Modules/CheckIncludeFile.cmake" "/usr/share/cmake-3.16/Modules/CheckLibraryExists.cmake" "/usr/share/cmake-3.16/Modules/Compiler/CMakeCommonCompilerMacros.cmake" @@ -60,6 +67,12 @@ set(CMAKE_MAKEFILE_OUTPUTS # Byproducts of CMake generate step: set(CMAKE_MAKEFILE_PRODUCTS + "CMakeFiles/_CMakeLTOTest-CXX/src/CMakeLists.txt" + "CMakeFiles/_CMakeLTOTest-CXX/src/foo.cpp" + "CMakeFiles/_CMakeLTOTest-CXX/src/main.cpp" + "CMakeFiles/_CMakeLTOTest-C/src/CMakeLists.txt" + "CMakeFiles/_CMakeLTOTest-C/src/foo.c" + "CMakeFiles/_CMakeLTOTest-C/src/main.c" "CMakeFiles/CMakeDirectoryInformation.cmake" ) diff --git a/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeCache.txt b/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeCache.txt new file mode 100644 index 0000000..15e0f04 --- /dev/null +++ b/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeCache.txt @@ -0,0 +1,253 @@ +# This is the CMakeCache file. +# For build in directory: /home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin +# 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 +######################## + +//Choose the type of build, options are: None Debug Release RelWithDebInfo +// MinSizeRel ... +CMAKE_BUILD_TYPE:STRING= + +//Enable/Disable color output during build. +CMAKE_COLOR_MAKEFILE:BOOL=ON + +//Flags used by the C compiler during all build types. +CMAKE_C_FLAGS:STRING= + +//Flags used by the C compiler during DEBUG builds. +CMAKE_C_FLAGS_DEBUG:STRING=-g + +//Flags used by the C compiler during MINSIZEREL builds. +CMAKE_C_FLAGS_MINSIZEREL:STRING=-Os -DNDEBUG + +//Flags used by the C compiler during RELEASE builds. +CMAKE_C_FLAGS_RELEASE:STRING=-O3 -DNDEBUG + +//Flags used by the C compiler during RELWITHDEBINFO builds. +CMAKE_C_FLAGS_RELWITHDEBINFO:STRING=-O2 -g -DNDEBUG + +//Flags used by the linker during all build types. +CMAKE_EXE_LINKER_FLAGS:STRING= + +//Flags used by the linker during DEBUG builds. +CMAKE_EXE_LINKER_FLAGS_DEBUG:STRING= + +//Flags used by the linker during MINSIZEREL builds. +CMAKE_EXE_LINKER_FLAGS_MINSIZEREL:STRING= + +//Flags used by the linker during RELEASE builds. +CMAKE_EXE_LINKER_FLAGS_RELEASE:STRING= + +//Flags used by the linker during RELWITHDEBINFO builds. +CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO:STRING= + +//Enable/Disable output of compile commands during generation. +CMAKE_EXPORT_COMPILE_COMMANDS:BOOL=OFF + +//Install path prefix, prepended onto install directories. +CMAKE_INSTALL_PREFIX:PATH=/usr/local + +//No help, variable specified on the command line. +CMAKE_INTERPROCEDURAL_OPTIMIZATION:UNINITIALIZED=ON + +//make program +CMAKE_MAKE_PROGRAM:FILEPATH=/usr/bin/make + +//Flags used by the linker during the creation of modules during +// all build types. +CMAKE_MODULE_LINKER_FLAGS:STRING= + +//Flags used by the linker during the creation of modules during +// DEBUG builds. +CMAKE_MODULE_LINKER_FLAGS_DEBUG:STRING= + +//Flags used by the linker during the creation of modules during +// MINSIZEREL builds. +CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL:STRING= + +//Flags used by the linker during the creation of modules during +// RELEASE builds. +CMAKE_MODULE_LINKER_FLAGS_RELEASE:STRING= + +//Flags used by the linker during the creation of modules during +// RELWITHDEBINFO builds. +CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO:STRING= + +//Value Computed by CMake +CMAKE_PROJECT_DESCRIPTION:STATIC= + +//Value Computed by CMake +CMAKE_PROJECT_HOMEPAGE_URL:STATIC= + +//Value Computed by CMake +CMAKE_PROJECT_NAME:STATIC=lto-test + +//Flags used by the linker during the creation of shared libraries +// during all build types. +CMAKE_SHARED_LINKER_FLAGS:STRING= + +//Flags used by the linker during the creation of shared libraries +// during DEBUG builds. +CMAKE_SHARED_LINKER_FLAGS_DEBUG:STRING= + +//Flags used by the linker during the creation of shared libraries +// during MINSIZEREL builds. +CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL:STRING= + +//Flags used by the linker during the creation of shared libraries +// during RELEASE builds. +CMAKE_SHARED_LINKER_FLAGS_RELEASE:STRING= + +//Flags used by the linker during the creation of shared libraries +// during RELWITHDEBINFO builds. +CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO:STRING= + +//If set, runtime paths are not added when installing shared libraries, +// but are added when building. +CMAKE_SKIP_INSTALL_RPATH:BOOL=NO + +//If set, runtime paths are not added when using shared libraries. +CMAKE_SKIP_RPATH:BOOL=NO + +//Flags used by the linker during the creation of static libraries +// during all build types. +CMAKE_STATIC_LINKER_FLAGS:STRING= + +//Flags used by the linker during the creation of static libraries +// during DEBUG builds. +CMAKE_STATIC_LINKER_FLAGS_DEBUG:STRING= + +//Flags used by the linker during the creation of static libraries +// during MINSIZEREL builds. +CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL:STRING= + +//Flags used by the linker during the creation of static libraries +// during RELEASE builds. +CMAKE_STATIC_LINKER_FLAGS_RELEASE:STRING= + +//Flags used by the linker during the creation of static libraries +// during RELWITHDEBINFO builds. +CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO:STRING= + +//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=ON + +//Value Computed by CMake +lto-test_BINARY_DIR:STATIC=/home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin + +//Value Computed by CMake +lto-test_SOURCE_DIR:STATIC=/home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-C/src + + +######################## +# INTERNAL cache entries +######################## + +//This is the directory where this CMakeCache.txt was created +CMAKE_CACHEFILE_DIR:INTERNAL=/home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin +//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=16 +//Patch version of cmake used to create the current loaded cache +CMAKE_CACHE_PATCH_VERSION:INTERNAL=3 +//ADVANCED property for variable: CMAKE_COLOR_MAKEFILE +CMAKE_COLOR_MAKEFILE-ADVANCED:INTERNAL=1 +//Path to CMake executable. +CMAKE_COMMAND:INTERNAL=/usr/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_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 +//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS +CMAKE_EXE_LINKER_FLAGS-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_DEBUG +CMAKE_EXE_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_MINSIZEREL +CMAKE_EXE_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_RELEASE +CMAKE_EXE_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO +CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_EXPORT_COMPILE_COMMANDS +CMAKE_EXPORT_COMPILE_COMMANDS-ADVANCED:INTERNAL=1 +//Name of external makefile project generator. +CMAKE_EXTRA_GENERATOR:INTERNAL= +//Name of generator. +CMAKE_GENERATOR:INTERNAL=Unix Makefiles +//Generator instance identifier. +CMAKE_GENERATOR_INSTANCE:INTERNAL= +//Name of generator platform. +CMAKE_GENERATOR_PLATFORM:INTERNAL= +//Name of generator toolset. +CMAKE_GENERATOR_TOOLSET:INTERNAL= +//Source directory with the top level CMakeLists.txt file for this +// project +CMAKE_HOME_DIRECTORY:INTERNAL=/home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-C/src +//Install .so files without execute permission. +CMAKE_INSTALL_SO_NO_EXE: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 +//number of local generators +CMAKE_NUMBER_OF_MAKEFILES:INTERNAL=1 +//Path to CMake installation. +CMAKE_ROOT:INTERNAL=/usr/share/cmake-3.16 +//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 +CMAKE_SUPPRESS_DEVELOPER_WARNINGS:INTERNAL=FALSE +//ADVANCED property for variable: CMAKE_VERBOSE_MAKEFILE +CMAKE_VERBOSE_MAKEFILE-ADVANCED:INTERNAL=1 + diff --git a/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/CMakeDirectoryInformation.cmake b/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/CMakeDirectoryInformation.cmake new file mode 100644 index 0000000..e9fafc5 --- /dev/null +++ b/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/CMakeDirectoryInformation.cmake @@ -0,0 +1,16 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.16 + +# Relative path conversion top directories. +set(CMAKE_RELATIVE_PATH_TOP_SOURCE "/home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-C/src") +set(CMAKE_RELATIVE_PATH_TOP_BINARY "/home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin") + +# 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/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/Makefile.cmake b/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/Makefile.cmake new file mode 100644 index 0000000..4a8c5b3 --- /dev/null +++ b/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/Makefile.cmake @@ -0,0 +1,46 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.16 + +# 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" + "/home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/3.16.3/CMakeCCompiler.cmake" + "/home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/3.16.3/CMakeSystem.cmake" + "/home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-C/src/CMakeLists.txt" + "/usr/share/cmake-3.16/Modules/CMakeCInformation.cmake" + "/usr/share/cmake-3.16/Modules/CMakeCheckCompilerFlagCommonPatterns.cmake" + "/usr/share/cmake-3.16/Modules/CMakeCommonLanguageInclude.cmake" + "/usr/share/cmake-3.16/Modules/CMakeGenericSystem.cmake" + "/usr/share/cmake-3.16/Modules/CMakeInitializeConfigs.cmake" + "/usr/share/cmake-3.16/Modules/CMakeLanguageInformation.cmake" + "/usr/share/cmake-3.16/Modules/CMakeSystemSpecificInformation.cmake" + "/usr/share/cmake-3.16/Modules/CMakeSystemSpecificInitialize.cmake" + "/usr/share/cmake-3.16/Modules/Compiler/CMakeCommonCompilerMacros.cmake" + "/usr/share/cmake-3.16/Modules/Compiler/GNU-C.cmake" + "/usr/share/cmake-3.16/Modules/Compiler/GNU.cmake" + "/usr/share/cmake-3.16/Modules/Internal/CMakeCheckCompilerFlag.cmake" + "/usr/share/cmake-3.16/Modules/Platform/Linux-GNU-C.cmake" + "/usr/share/cmake-3.16/Modules/Platform/Linux-GNU.cmake" + "/usr/share/cmake-3.16/Modules/Platform/Linux.cmake" + "/usr/share/cmake-3.16/Modules/Platform/UnixPaths.cmake" + ) + +# The corresponding makefile is: +set(CMAKE_MAKEFILE_OUTPUTS + "Makefile" + "CMakeFiles/cmake.check_cache" + ) + +# Byproducts of CMake generate step: +set(CMAKE_MAKEFILE_PRODUCTS + "CMakeFiles/CMakeDirectoryInformation.cmake" + ) + +# Dependency information for all targets: +set(CMAKE_DEPEND_INFO_FILES + "CMakeFiles/boo.dir/DependInfo.cmake" + "CMakeFiles/foo.dir/DependInfo.cmake" + ) diff --git a/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/Makefile2 b/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/Makefile2 new file mode 100644 index 0000000..1c9f733 --- /dev/null +++ b/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/Makefile2 @@ -0,0 +1,138 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.16 + +# Default target executed when no arguments are given to make. +default_target: all + +.PHONY : default_target + +#============================================================================= +# 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 + + +# Produce verbose output by default. +VERBOSE = 1 + +# 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/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-C/src + +# The top-level build directory on which CMake was run. +CMAKE_BINARY_DIR = /home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin + +#============================================================================= +# Directory level rules for the build root directory + +# The main recursive "all" target. +all: CMakeFiles/boo.dir/all +all: CMakeFiles/foo.dir/all + +.PHONY : all + +# The main recursive "preinstall" target. +preinstall: + +.PHONY : preinstall + +# The main recursive "clean" target. +clean: CMakeFiles/boo.dir/clean +clean: CMakeFiles/foo.dir/clean + +.PHONY : clean + +#============================================================================= +# Target rules for target CMakeFiles/boo.dir + +# All Build rule for target. +CMakeFiles/boo.dir/all: CMakeFiles/foo.dir/all + $(MAKE) -f CMakeFiles/boo.dir/build.make CMakeFiles/boo.dir/depend + $(MAKE) -f CMakeFiles/boo.dir/build.make CMakeFiles/boo.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles --progress-num=1,2 "Built target boo" +.PHONY : CMakeFiles/boo.dir/all + +# Build rule for subdir invocation for target. +CMakeFiles/boo.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles 4 + $(MAKE) -f CMakeFiles/Makefile2 CMakeFiles/boo.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles 0 +.PHONY : CMakeFiles/boo.dir/rule + +# Convenience name for target. +boo: CMakeFiles/boo.dir/rule + +.PHONY : boo + +# clean rule for target. +CMakeFiles/boo.dir/clean: + $(MAKE) -f CMakeFiles/boo.dir/build.make CMakeFiles/boo.dir/clean +.PHONY : CMakeFiles/boo.dir/clean + +#============================================================================= +# Target rules for target CMakeFiles/foo.dir + +# All Build rule for target. +CMakeFiles/foo.dir/all: + $(MAKE) -f CMakeFiles/foo.dir/build.make CMakeFiles/foo.dir/depend + $(MAKE) -f CMakeFiles/foo.dir/build.make CMakeFiles/foo.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles --progress-num=3,4 "Built target foo" +.PHONY : CMakeFiles/foo.dir/all + +# Build rule for subdir invocation for target. +CMakeFiles/foo.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles 2 + $(MAKE) -f CMakeFiles/Makefile2 CMakeFiles/foo.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles 0 +.PHONY : CMakeFiles/foo.dir/rule + +# Convenience name for target. +foo: CMakeFiles/foo.dir/rule + +.PHONY : foo + +# clean rule for target. +CMakeFiles/foo.dir/clean: + $(MAKE) -f CMakeFiles/foo.dir/build.make CMakeFiles/foo.dir/clean +.PHONY : CMakeFiles/foo.dir/clean + +#============================================================================= +# Special targets to cleanup operation of make. + +# Special rule to run CMake to check the build system integrity. +# No rule that depends on this can have commands that come from listfiles +# because they might be regenerated. +cmake_check_build_system: + $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0 +.PHONY : cmake_check_build_system + diff --git a/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/TargetDirectories.txt b/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/TargetDirectories.txt new file mode 100644 index 0000000..0a109ea --- /dev/null +++ b/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/TargetDirectories.txt @@ -0,0 +1,4 @@ +/home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/rebuild_cache.dir +/home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/edit_cache.dir +/home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/boo.dir +/home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/foo.dir diff --git a/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/boo.dir/C.includecache b/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/boo.dir/C.includecache new file mode 100644 index 0000000..723c4fb --- /dev/null +++ b/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/boo.dir/C.includecache @@ -0,0 +1,10 @@ +#IncludeRegexLine: ^[ ]*[#%][ ]*(include|import)[ ]*[<"]([^">]+)([">]) + +#IncludeRegexScan: ^.*$ + +#IncludeRegexComplain: ^$ + +#IncludeRegexTransform: + +/home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-C/src/main.c + diff --git a/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/boo.dir/DependInfo.cmake b/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/boo.dir/DependInfo.cmake new file mode 100644 index 0000000..f1541b6 --- /dev/null +++ b/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/boo.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/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-C/src/main.c" "/home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/boo.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 + "/home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/foo.dir/DependInfo.cmake" + ) + +# Fortran module output directory. +set(CMAKE_Fortran_TARGET_MODULE_DIR "") diff --git a/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/boo.dir/build.make b/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/boo.dir/build.make new file mode 100644 index 0000000..27de26f --- /dev/null +++ b/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/boo.dir/build.make @@ -0,0 +1,102 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.16 + +# 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 + + +# Produce verbose output by default. +VERBOSE = 1 + +# 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/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-C/src + +# The top-level build directory on which CMake was run. +CMAKE_BINARY_DIR = /home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin + +# Include any dependencies generated for this target. +include CMakeFiles/boo.dir/depend.make + +# Include the progress variables for this target. +include CMakeFiles/boo.dir/progress.make + +# Include the compile flags for this target's objects. +include CMakeFiles/boo.dir/flags.make + +CMakeFiles/boo.dir/main.c.o: CMakeFiles/boo.dir/flags.make +CMakeFiles/boo.dir/main.c.o: /home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-C/src/main.c + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles --progress-num=$(CMAKE_PROGRESS_1) "Building C object CMakeFiles/boo.dir/main.c.o" + /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -o CMakeFiles/boo.dir/main.c.o -c /home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-C/src/main.c + +CMakeFiles/boo.dir/main.c.i: cmake_force + @echo "Preprocessing C source to CMakeFiles/boo.dir/main.c.i" + /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-C/src/main.c > CMakeFiles/boo.dir/main.c.i + +CMakeFiles/boo.dir/main.c.s: cmake_force + @echo "Compiling C source to assembly CMakeFiles/boo.dir/main.c.s" + /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-C/src/main.c -o CMakeFiles/boo.dir/main.c.s + +# Object files for target boo +boo_OBJECTS = \ +"CMakeFiles/boo.dir/main.c.o" + +# External object files for target boo +boo_EXTERNAL_OBJECTS = + +boo: CMakeFiles/boo.dir/main.c.o +boo: CMakeFiles/boo.dir/build.make +boo: libfoo.a +boo: CMakeFiles/boo.dir/link.txt + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Linking C executable boo" + $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/boo.dir/link.txt --verbose=$(VERBOSE) + +# Rule to build all files generated by this target. +CMakeFiles/boo.dir/build: boo + +.PHONY : CMakeFiles/boo.dir/build + +CMakeFiles/boo.dir/clean: + $(CMAKE_COMMAND) -P CMakeFiles/boo.dir/cmake_clean.cmake +.PHONY : CMakeFiles/boo.dir/clean + +CMakeFiles/boo.dir/depend: + cd /home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-C/src /home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-C/src /home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin /home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin /home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/boo.dir/DependInfo.cmake +.PHONY : CMakeFiles/boo.dir/depend + diff --git a/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/boo.dir/cmake_clean.cmake b/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/boo.dir/cmake_clean.cmake new file mode 100644 index 0000000..8e1baec --- /dev/null +++ b/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/boo.dir/cmake_clean.cmake @@ -0,0 +1,10 @@ +file(REMOVE_RECURSE + "CMakeFiles/boo.dir/main.c.o" + "boo" + "boo.pdb" +) + +# Per-language clean rules from dependency scanning. +foreach(lang C) + include(CMakeFiles/boo.dir/cmake_clean_${lang}.cmake OPTIONAL) +endforeach() diff --git a/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/boo.dir/depend.internal b/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/boo.dir/depend.internal new file mode 100644 index 0000000..23f9d93 --- /dev/null +++ b/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/boo.dir/depend.internal @@ -0,0 +1,5 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.16 + +CMakeFiles/boo.dir/main.c.o + /home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-C/src/main.c diff --git a/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/boo.dir/depend.make b/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/boo.dir/depend.make new file mode 100644 index 0000000..21e8042 --- /dev/null +++ b/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/boo.dir/depend.make @@ -0,0 +1,5 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.16 + +CMakeFiles/boo.dir/main.c.o: /home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-C/src/main.c + diff --git a/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/boo.dir/flags.make b/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/boo.dir/flags.make new file mode 100644 index 0000000..d147633 --- /dev/null +++ b/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/boo.dir/flags.make @@ -0,0 +1,10 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.16 + +# compile C with /usr/bin/cc +C_FLAGS = -flto -fno-fat-lto-objects + +C_DEFINES = + +C_INCLUDES = + diff --git a/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/boo.dir/link.txt b/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/boo.dir/link.txt new file mode 100644 index 0000000..9bbf704 --- /dev/null +++ b/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/boo.dir/link.txt @@ -0,0 +1 @@ +/usr/bin/cc -flto -fno-fat-lto-objects CMakeFiles/boo.dir/main.c.o -o boo libfoo.a diff --git a/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/boo.dir/main.c.o b/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/boo.dir/main.c.o new file mode 100644 index 0000000..2f78dd3 Binary files /dev/null and b/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/boo.dir/main.c.o differ diff --git a/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/boo.dir/progress.make b/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/boo.dir/progress.make new file mode 100644 index 0000000..abadeb0 --- /dev/null +++ b/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/boo.dir/progress.make @@ -0,0 +1,3 @@ +CMAKE_PROGRESS_1 = 1 +CMAKE_PROGRESS_2 = 2 + diff --git a/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/cmake.check_cache b/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/cmake.check_cache new file mode 100644 index 0000000..3dccd73 --- /dev/null +++ b/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/cmake.check_cache @@ -0,0 +1 @@ +# This file is generated by cmake for dependency checking of the CMakeCache.txt file diff --git a/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/foo.dir/C.includecache b/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/foo.dir/C.includecache new file mode 100644 index 0000000..9b69b99 --- /dev/null +++ b/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/foo.dir/C.includecache @@ -0,0 +1,10 @@ +#IncludeRegexLine: ^[ ]*[#%][ ]*(include|import)[ ]*[<"]([^">]+)([">]) + +#IncludeRegexScan: ^.*$ + +#IncludeRegexComplain: ^$ + +#IncludeRegexTransform: + +/home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-C/src/foo.c + diff --git a/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/foo.dir/DependInfo.cmake b/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/foo.dir/DependInfo.cmake new file mode 100644 index 0000000..42fe9ee --- /dev/null +++ b/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/foo.dir/DependInfo.cmake @@ -0,0 +1,20 @@ +# 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/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-C/src/foo.c" "/home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/foo.dir/foo.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/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/foo.dir/build.make b/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/foo.dir/build.make new file mode 100644 index 0000000..cbb7158 --- /dev/null +++ b/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/foo.dir/build.make @@ -0,0 +1,102 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.16 + +# 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 + + +# Produce verbose output by default. +VERBOSE = 1 + +# 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/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-C/src + +# The top-level build directory on which CMake was run. +CMAKE_BINARY_DIR = /home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin + +# Include any dependencies generated for this target. +include CMakeFiles/foo.dir/depend.make + +# Include the progress variables for this target. +include CMakeFiles/foo.dir/progress.make + +# Include the compile flags for this target's objects. +include CMakeFiles/foo.dir/flags.make + +CMakeFiles/foo.dir/foo.c.o: CMakeFiles/foo.dir/flags.make +CMakeFiles/foo.dir/foo.c.o: /home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-C/src/foo.c + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles --progress-num=$(CMAKE_PROGRESS_1) "Building C object CMakeFiles/foo.dir/foo.c.o" + /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -o CMakeFiles/foo.dir/foo.c.o -c /home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-C/src/foo.c + +CMakeFiles/foo.dir/foo.c.i: cmake_force + @echo "Preprocessing C source to CMakeFiles/foo.dir/foo.c.i" + /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-C/src/foo.c > CMakeFiles/foo.dir/foo.c.i + +CMakeFiles/foo.dir/foo.c.s: cmake_force + @echo "Compiling C source to assembly CMakeFiles/foo.dir/foo.c.s" + /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-C/src/foo.c -o CMakeFiles/foo.dir/foo.c.s + +# Object files for target foo +foo_OBJECTS = \ +"CMakeFiles/foo.dir/foo.c.o" + +# External object files for target foo +foo_EXTERNAL_OBJECTS = + +libfoo.a: CMakeFiles/foo.dir/foo.c.o +libfoo.a: CMakeFiles/foo.dir/build.make +libfoo.a: CMakeFiles/foo.dir/link.txt + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Linking C static library libfoo.a" + $(CMAKE_COMMAND) -P CMakeFiles/foo.dir/cmake_clean_target.cmake + $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/foo.dir/link.txt --verbose=$(VERBOSE) + +# Rule to build all files generated by this target. +CMakeFiles/foo.dir/build: libfoo.a + +.PHONY : CMakeFiles/foo.dir/build + +CMakeFiles/foo.dir/clean: + $(CMAKE_COMMAND) -P CMakeFiles/foo.dir/cmake_clean.cmake +.PHONY : CMakeFiles/foo.dir/clean + +CMakeFiles/foo.dir/depend: + cd /home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-C/src /home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-C/src /home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin /home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin /home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/foo.dir/DependInfo.cmake +.PHONY : CMakeFiles/foo.dir/depend + diff --git a/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/foo.dir/cmake_clean.cmake b/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/foo.dir/cmake_clean.cmake new file mode 100644 index 0000000..fe0b8a0 --- /dev/null +++ b/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/foo.dir/cmake_clean.cmake @@ -0,0 +1,10 @@ +file(REMOVE_RECURSE + "CMakeFiles/foo.dir/foo.c.o" + "libfoo.a" + "libfoo.pdb" +) + +# Per-language clean rules from dependency scanning. +foreach(lang C) + include(CMakeFiles/foo.dir/cmake_clean_${lang}.cmake OPTIONAL) +endforeach() diff --git a/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/foo.dir/cmake_clean_target.cmake b/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/foo.dir/cmake_clean_target.cmake new file mode 100644 index 0000000..455c772 --- /dev/null +++ b/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/foo.dir/cmake_clean_target.cmake @@ -0,0 +1,3 @@ +file(REMOVE_RECURSE + "libfoo.a" +) diff --git a/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/foo.dir/depend.internal b/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/foo.dir/depend.internal new file mode 100644 index 0000000..9e611af --- /dev/null +++ b/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/foo.dir/depend.internal @@ -0,0 +1,5 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.16 + +CMakeFiles/foo.dir/foo.c.o + /home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-C/src/foo.c diff --git a/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/foo.dir/depend.make b/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/foo.dir/depend.make new file mode 100644 index 0000000..600eb74 --- /dev/null +++ b/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/foo.dir/depend.make @@ -0,0 +1,5 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.16 + +CMakeFiles/foo.dir/foo.c.o: /home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-C/src/foo.c + diff --git a/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/foo.dir/flags.make b/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/foo.dir/flags.make new file mode 100644 index 0000000..d147633 --- /dev/null +++ b/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/foo.dir/flags.make @@ -0,0 +1,10 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.16 + +# compile C with /usr/bin/cc +C_FLAGS = -flto -fno-fat-lto-objects + +C_DEFINES = + +C_INCLUDES = + diff --git a/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/foo.dir/foo.c.o b/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/foo.dir/foo.c.o new file mode 100644 index 0000000..d59ad49 Binary files /dev/null and b/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/foo.dir/foo.c.o differ diff --git a/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/foo.dir/link.txt b/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/foo.dir/link.txt new file mode 100644 index 0000000..2e58b0d --- /dev/null +++ b/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/foo.dir/link.txt @@ -0,0 +1,2 @@ +"/usr/bin/gcc-ar-9" cr libfoo.a CMakeFiles/foo.dir/foo.c.o +"/usr/bin/gcc-ranlib-9" libfoo.a diff --git a/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/foo.dir/progress.make b/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/foo.dir/progress.make new file mode 100644 index 0000000..8c8fb6f --- /dev/null +++ b/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/foo.dir/progress.make @@ -0,0 +1,3 @@ +CMAKE_PROGRESS_1 = 3 +CMAKE_PROGRESS_2 = 4 + diff --git a/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/progress.marks b/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/progress.marks new file mode 100644 index 0000000..b8626c4 --- /dev/null +++ b/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/progress.marks @@ -0,0 +1 @@ +4 diff --git a/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/Makefile b/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/Makefile new file mode 100644 index 0000000..561d763 --- /dev/null +++ b/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/Makefile @@ -0,0 +1,225 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.16 + +# 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 + + +# Produce verbose output by default. +VERBOSE = 1 + +# 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/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-C/src + +# The top-level build directory on which CMake was run. +CMAKE_BINARY_DIR = /home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin + +#============================================================================= +# Targets provided globally by CMake. + +# Special rule for the target rebuild_cache +rebuild_cache: + @echo "Running CMake to regenerate build system..." + /usr/bin/cmake -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) +.PHONY : rebuild_cache + +# Special rule for the target rebuild_cache +rebuild_cache/fast: rebuild_cache + +.PHONY : rebuild_cache/fast + +# Special rule for the target edit_cache +edit_cache: + @echo "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/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles /home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles/progress.marks + $(MAKE) -f CMakeFiles/Makefile2 all + $(CMAKE_COMMAND) -E cmake_progress_start /home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/CMakeFiles 0 +.PHONY : all + +# The main clean target +clean: + $(MAKE) -f CMakeFiles/Makefile2 clean +.PHONY : clean + +# The main clean target +clean/fast: clean + +.PHONY : clean/fast + +# Prepare targets for installation. +preinstall: all + $(MAKE) -f CMakeFiles/Makefile2 preinstall +.PHONY : preinstall + +# Prepare targets for installation. +preinstall/fast: + $(MAKE) -f CMakeFiles/Makefile2 preinstall +.PHONY : preinstall/fast + +# clear depends +depend: + $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 1 +.PHONY : depend + +#============================================================================= +# Target rules for targets named boo + +# Build rule for target. +boo: cmake_check_build_system + $(MAKE) -f CMakeFiles/Makefile2 boo +.PHONY : boo + +# fast build rule for target. +boo/fast: + $(MAKE) -f CMakeFiles/boo.dir/build.make CMakeFiles/boo.dir/build +.PHONY : boo/fast + +#============================================================================= +# Target rules for targets named foo + +# Build rule for target. +foo: cmake_check_build_system + $(MAKE) -f CMakeFiles/Makefile2 foo +.PHONY : foo + +# fast build rule for target. +foo/fast: + $(MAKE) -f CMakeFiles/foo.dir/build.make CMakeFiles/foo.dir/build +.PHONY : foo/fast + +foo.o: foo.c.o + +.PHONY : foo.o + +# target to build an object file +foo.c.o: + $(MAKE) -f CMakeFiles/foo.dir/build.make CMakeFiles/foo.dir/foo.c.o +.PHONY : foo.c.o + +foo.i: foo.c.i + +.PHONY : foo.i + +# target to preprocess a source file +foo.c.i: + $(MAKE) -f CMakeFiles/foo.dir/build.make CMakeFiles/foo.dir/foo.c.i +.PHONY : foo.c.i + +foo.s: foo.c.s + +.PHONY : foo.s + +# target to generate assembly for a file +foo.c.s: + $(MAKE) -f CMakeFiles/foo.dir/build.make CMakeFiles/foo.dir/foo.c.s +.PHONY : foo.c.s + +main.o: main.c.o + +.PHONY : main.o + +# target to build an object file +main.c.o: + $(MAKE) -f CMakeFiles/boo.dir/build.make CMakeFiles/boo.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/boo.dir/build.make CMakeFiles/boo.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/boo.dir/build.make CMakeFiles/boo.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 "... edit_cache" + @echo "... boo" + @echo "... foo" + @echo "... foo.o" + @echo "... foo.i" + @echo "... foo.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) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0 +.PHONY : cmake_check_build_system + diff --git a/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/boo b/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/boo new file mode 100755 index 0000000..6aaf4ab Binary files /dev/null and b/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/boo differ diff --git a/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/cmake_install.cmake b/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/cmake_install.cmake new file mode 100644 index 0000000..e141cfe --- /dev/null +++ b/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/cmake_install.cmake @@ -0,0 +1,49 @@ +# Install script for directory: /home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-C/src + +# 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/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/${CMAKE_INSTALL_MANIFEST}" + "${CMAKE_INSTALL_MANIFEST_CONTENT}") diff --git a/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/libfoo.a b/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/libfoo.a new file mode 100644 index 0000000..663e628 Binary files /dev/null and b/hw5/build/CMakeFiles/_CMakeLTOTest-C/bin/libfoo.a differ diff --git a/hw5/build/CMakeFiles/_CMakeLTOTest-C/src/CMakeLists.txt b/hw5/build/CMakeFiles/_CMakeLTOTest-C/src/CMakeLists.txt new file mode 100644 index 0000000..23b59a9 --- /dev/null +++ b/hw5/build/CMakeFiles/_CMakeLTOTest-C/src/CMakeLists.txt @@ -0,0 +1,8 @@ +cmake_minimum_required(VERSION "3.16.3") +project("lto-test" LANGUAGES C) + +cmake_policy(SET CMP0069 NEW) + +add_library(foo foo.c) +add_executable(boo main.c) +target_link_libraries(boo PUBLIC foo) diff --git a/hw5/build/CMakeFiles/_CMakeLTOTest-C/src/foo.c b/hw5/build/CMakeFiles/_CMakeLTOTest-C/src/foo.c new file mode 100644 index 0000000..1e56597 --- /dev/null +++ b/hw5/build/CMakeFiles/_CMakeLTOTest-C/src/foo.c @@ -0,0 +1,4 @@ +int foo() +{ + return 0x42; +} diff --git a/hw5/build/CMakeFiles/_CMakeLTOTest-C/src/main.c b/hw5/build/CMakeFiles/_CMakeLTOTest-C/src/main.c new file mode 100644 index 0000000..5be0864 --- /dev/null +++ b/hw5/build/CMakeFiles/_CMakeLTOTest-C/src/main.c @@ -0,0 +1,6 @@ +int foo(); + +int main() +{ + return foo(); +} diff --git a/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeCache.txt b/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeCache.txt new file mode 100644 index 0000000..0f5be8f --- /dev/null +++ b/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeCache.txt @@ -0,0 +1,253 @@ +# This is the CMakeCache file. +# For build in directory: /home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin +# 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 +######################## + +//Choose the type of build, options are: None Debug Release RelWithDebInfo +// MinSizeRel ... +CMAKE_BUILD_TYPE:STRING= + +//Enable/Disable color output during build. +CMAKE_COLOR_MAKEFILE:BOOL=ON + +//Flags used by the CXX compiler during all build types. +CMAKE_CXX_FLAGS:STRING= + +//Flags used by the CXX compiler during DEBUG builds. +CMAKE_CXX_FLAGS_DEBUG:STRING=-g + +//Flags used by the CXX compiler during MINSIZEREL builds. +CMAKE_CXX_FLAGS_MINSIZEREL:STRING=-Os -DNDEBUG + +//Flags used by the CXX compiler during RELEASE builds. +CMAKE_CXX_FLAGS_RELEASE:STRING=-O3 -DNDEBUG + +//Flags used by the CXX compiler during RELWITHDEBINFO builds. +CMAKE_CXX_FLAGS_RELWITHDEBINFO:STRING=-O2 -g -DNDEBUG + +//Flags used by the linker during all build types. +CMAKE_EXE_LINKER_FLAGS:STRING= + +//Flags used by the linker during DEBUG builds. +CMAKE_EXE_LINKER_FLAGS_DEBUG:STRING= + +//Flags used by the linker during MINSIZEREL builds. +CMAKE_EXE_LINKER_FLAGS_MINSIZEREL:STRING= + +//Flags used by the linker during RELEASE builds. +CMAKE_EXE_LINKER_FLAGS_RELEASE:STRING= + +//Flags used by the linker during RELWITHDEBINFO builds. +CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO:STRING= + +//Enable/Disable output of compile commands during generation. +CMAKE_EXPORT_COMPILE_COMMANDS:BOOL=OFF + +//Install path prefix, prepended onto install directories. +CMAKE_INSTALL_PREFIX:PATH=/usr/local + +//No help, variable specified on the command line. +CMAKE_INTERPROCEDURAL_OPTIMIZATION:UNINITIALIZED=ON + +//make program +CMAKE_MAKE_PROGRAM:FILEPATH=/usr/bin/make + +//Flags used by the linker during the creation of modules during +// all build types. +CMAKE_MODULE_LINKER_FLAGS:STRING= + +//Flags used by the linker during the creation of modules during +// DEBUG builds. +CMAKE_MODULE_LINKER_FLAGS_DEBUG:STRING= + +//Flags used by the linker during the creation of modules during +// MINSIZEREL builds. +CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL:STRING= + +//Flags used by the linker during the creation of modules during +// RELEASE builds. +CMAKE_MODULE_LINKER_FLAGS_RELEASE:STRING= + +//Flags used by the linker during the creation of modules during +// RELWITHDEBINFO builds. +CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO:STRING= + +//Value Computed by CMake +CMAKE_PROJECT_DESCRIPTION:STATIC= + +//Value Computed by CMake +CMAKE_PROJECT_HOMEPAGE_URL:STATIC= + +//Value Computed by CMake +CMAKE_PROJECT_NAME:STATIC=lto-test + +//Flags used by the linker during the creation of shared libraries +// during all build types. +CMAKE_SHARED_LINKER_FLAGS:STRING= + +//Flags used by the linker during the creation of shared libraries +// during DEBUG builds. +CMAKE_SHARED_LINKER_FLAGS_DEBUG:STRING= + +//Flags used by the linker during the creation of shared libraries +// during MINSIZEREL builds. +CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL:STRING= + +//Flags used by the linker during the creation of shared libraries +// during RELEASE builds. +CMAKE_SHARED_LINKER_FLAGS_RELEASE:STRING= + +//Flags used by the linker during the creation of shared libraries +// during RELWITHDEBINFO builds. +CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO:STRING= + +//If set, runtime paths are not added when installing shared libraries, +// but are added when building. +CMAKE_SKIP_INSTALL_RPATH:BOOL=NO + +//If set, runtime paths are not added when using shared libraries. +CMAKE_SKIP_RPATH:BOOL=NO + +//Flags used by the linker during the creation of static libraries +// during all build types. +CMAKE_STATIC_LINKER_FLAGS:STRING= + +//Flags used by the linker during the creation of static libraries +// during DEBUG builds. +CMAKE_STATIC_LINKER_FLAGS_DEBUG:STRING= + +//Flags used by the linker during the creation of static libraries +// during MINSIZEREL builds. +CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL:STRING= + +//Flags used by the linker during the creation of static libraries +// during RELEASE builds. +CMAKE_STATIC_LINKER_FLAGS_RELEASE:STRING= + +//Flags used by the linker during the creation of static libraries +// during RELWITHDEBINFO builds. +CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO:STRING= + +//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=ON + +//Value Computed by CMake +lto-test_BINARY_DIR:STATIC=/home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin + +//Value Computed by CMake +lto-test_SOURCE_DIR:STATIC=/home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/src + + +######################## +# INTERNAL cache entries +######################## + +//This is the directory where this CMakeCache.txt was created +CMAKE_CACHEFILE_DIR:INTERNAL=/home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin +//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=16 +//Patch version of cmake used to create the current loaded cache +CMAKE_CACHE_PATCH_VERSION:INTERNAL=3 +//ADVANCED property for variable: CMAKE_COLOR_MAKEFILE +CMAKE_COLOR_MAKEFILE-ADVANCED:INTERNAL=1 +//Path to CMake executable. +CMAKE_COMMAND:INTERNAL=/usr/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_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_EXE_LINKER_FLAGS +CMAKE_EXE_LINKER_FLAGS-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_DEBUG +CMAKE_EXE_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_MINSIZEREL +CMAKE_EXE_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_RELEASE +CMAKE_EXE_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO +CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_EXPORT_COMPILE_COMMANDS +CMAKE_EXPORT_COMPILE_COMMANDS-ADVANCED:INTERNAL=1 +//Name of external makefile project generator. +CMAKE_EXTRA_GENERATOR:INTERNAL= +//Name of generator. +CMAKE_GENERATOR:INTERNAL=Unix Makefiles +//Generator instance identifier. +CMAKE_GENERATOR_INSTANCE:INTERNAL= +//Name of generator platform. +CMAKE_GENERATOR_PLATFORM:INTERNAL= +//Name of generator toolset. +CMAKE_GENERATOR_TOOLSET:INTERNAL= +//Source directory with the top level CMakeLists.txt file for this +// project +CMAKE_HOME_DIRECTORY:INTERNAL=/home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/src +//Install .so files without execute permission. +CMAKE_INSTALL_SO_NO_EXE: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 +//number of local generators +CMAKE_NUMBER_OF_MAKEFILES:INTERNAL=1 +//Path to CMake installation. +CMAKE_ROOT:INTERNAL=/usr/share/cmake-3.16 +//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 +CMAKE_SUPPRESS_DEVELOPER_WARNINGS:INTERNAL=FALSE +//ADVANCED property for variable: CMAKE_VERBOSE_MAKEFILE +CMAKE_VERBOSE_MAKEFILE-ADVANCED:INTERNAL=1 + diff --git a/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/CMakeDirectoryInformation.cmake b/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/CMakeDirectoryInformation.cmake new file mode 100644 index 0000000..70e8151 --- /dev/null +++ b/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/CMakeDirectoryInformation.cmake @@ -0,0 +1,16 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.16 + +# Relative path conversion top directories. +set(CMAKE_RELATIVE_PATH_TOP_SOURCE "/home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/src") +set(CMAKE_RELATIVE_PATH_TOP_BINARY "/home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin") + +# 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/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/Makefile.cmake b/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/Makefile.cmake new file mode 100644 index 0000000..0ff5091 --- /dev/null +++ b/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/Makefile.cmake @@ -0,0 +1,46 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.16 + +# 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" + "/home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/3.16.3/CMakeCXXCompiler.cmake" + "/home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/3.16.3/CMakeSystem.cmake" + "/home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/src/CMakeLists.txt" + "/usr/share/cmake-3.16/Modules/CMakeCXXInformation.cmake" + "/usr/share/cmake-3.16/Modules/CMakeCheckCompilerFlagCommonPatterns.cmake" + "/usr/share/cmake-3.16/Modules/CMakeCommonLanguageInclude.cmake" + "/usr/share/cmake-3.16/Modules/CMakeGenericSystem.cmake" + "/usr/share/cmake-3.16/Modules/CMakeInitializeConfigs.cmake" + "/usr/share/cmake-3.16/Modules/CMakeLanguageInformation.cmake" + "/usr/share/cmake-3.16/Modules/CMakeSystemSpecificInformation.cmake" + "/usr/share/cmake-3.16/Modules/CMakeSystemSpecificInitialize.cmake" + "/usr/share/cmake-3.16/Modules/Compiler/CMakeCommonCompilerMacros.cmake" + "/usr/share/cmake-3.16/Modules/Compiler/GNU-CXX.cmake" + "/usr/share/cmake-3.16/Modules/Compiler/GNU.cmake" + "/usr/share/cmake-3.16/Modules/Internal/CMakeCheckCompilerFlag.cmake" + "/usr/share/cmake-3.16/Modules/Platform/Linux-GNU-CXX.cmake" + "/usr/share/cmake-3.16/Modules/Platform/Linux-GNU.cmake" + "/usr/share/cmake-3.16/Modules/Platform/Linux.cmake" + "/usr/share/cmake-3.16/Modules/Platform/UnixPaths.cmake" + ) + +# The corresponding makefile is: +set(CMAKE_MAKEFILE_OUTPUTS + "Makefile" + "CMakeFiles/cmake.check_cache" + ) + +# Byproducts of CMake generate step: +set(CMAKE_MAKEFILE_PRODUCTS + "CMakeFiles/CMakeDirectoryInformation.cmake" + ) + +# Dependency information for all targets: +set(CMAKE_DEPEND_INFO_FILES + "CMakeFiles/boo.dir/DependInfo.cmake" + "CMakeFiles/foo.dir/DependInfo.cmake" + ) diff --git a/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/Makefile2 b/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/Makefile2 new file mode 100644 index 0000000..463dc0c --- /dev/null +++ b/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/Makefile2 @@ -0,0 +1,138 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.16 + +# Default target executed when no arguments are given to make. +default_target: all + +.PHONY : default_target + +#============================================================================= +# 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 + + +# Produce verbose output by default. +VERBOSE = 1 + +# 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/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/src + +# The top-level build directory on which CMake was run. +CMAKE_BINARY_DIR = /home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin + +#============================================================================= +# Directory level rules for the build root directory + +# The main recursive "all" target. +all: CMakeFiles/boo.dir/all +all: CMakeFiles/foo.dir/all + +.PHONY : all + +# The main recursive "preinstall" target. +preinstall: + +.PHONY : preinstall + +# The main recursive "clean" target. +clean: CMakeFiles/boo.dir/clean +clean: CMakeFiles/foo.dir/clean + +.PHONY : clean + +#============================================================================= +# Target rules for target CMakeFiles/boo.dir + +# All Build rule for target. +CMakeFiles/boo.dir/all: CMakeFiles/foo.dir/all + $(MAKE) -f CMakeFiles/boo.dir/build.make CMakeFiles/boo.dir/depend + $(MAKE) -f CMakeFiles/boo.dir/build.make CMakeFiles/boo.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles --progress-num=1,2 "Built target boo" +.PHONY : CMakeFiles/boo.dir/all + +# Build rule for subdir invocation for target. +CMakeFiles/boo.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles 4 + $(MAKE) -f CMakeFiles/Makefile2 CMakeFiles/boo.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles 0 +.PHONY : CMakeFiles/boo.dir/rule + +# Convenience name for target. +boo: CMakeFiles/boo.dir/rule + +.PHONY : boo + +# clean rule for target. +CMakeFiles/boo.dir/clean: + $(MAKE) -f CMakeFiles/boo.dir/build.make CMakeFiles/boo.dir/clean +.PHONY : CMakeFiles/boo.dir/clean + +#============================================================================= +# Target rules for target CMakeFiles/foo.dir + +# All Build rule for target. +CMakeFiles/foo.dir/all: + $(MAKE) -f CMakeFiles/foo.dir/build.make CMakeFiles/foo.dir/depend + $(MAKE) -f CMakeFiles/foo.dir/build.make CMakeFiles/foo.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles --progress-num=3,4 "Built target foo" +.PHONY : CMakeFiles/foo.dir/all + +# Build rule for subdir invocation for target. +CMakeFiles/foo.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles 2 + $(MAKE) -f CMakeFiles/Makefile2 CMakeFiles/foo.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles 0 +.PHONY : CMakeFiles/foo.dir/rule + +# Convenience name for target. +foo: CMakeFiles/foo.dir/rule + +.PHONY : foo + +# clean rule for target. +CMakeFiles/foo.dir/clean: + $(MAKE) -f CMakeFiles/foo.dir/build.make CMakeFiles/foo.dir/clean +.PHONY : CMakeFiles/foo.dir/clean + +#============================================================================= +# Special targets to cleanup operation of make. + +# Special rule to run CMake to check the build system integrity. +# No rule that depends on this can have commands that come from listfiles +# because they might be regenerated. +cmake_check_build_system: + $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0 +.PHONY : cmake_check_build_system + diff --git a/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/TargetDirectories.txt b/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/TargetDirectories.txt new file mode 100644 index 0000000..4239d34 --- /dev/null +++ b/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/TargetDirectories.txt @@ -0,0 +1,4 @@ +/home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/rebuild_cache.dir +/home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/edit_cache.dir +/home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/boo.dir +/home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/foo.dir diff --git a/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/boo.dir/CXX.includecache b/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/boo.dir/CXX.includecache new file mode 100644 index 0000000..a3faff6 --- /dev/null +++ b/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/boo.dir/CXX.includecache @@ -0,0 +1,10 @@ +#IncludeRegexLine: ^[ ]*[#%][ ]*(include|import)[ ]*[<"]([^">]+)([">]) + +#IncludeRegexScan: ^.*$ + +#IncludeRegexComplain: ^$ + +#IncludeRegexTransform: + +/home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/src/main.cpp + diff --git a/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/boo.dir/DependInfo.cmake b/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/boo.dir/DependInfo.cmake new file mode 100644 index 0000000..5c11369 --- /dev/null +++ b/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/boo.dir/DependInfo.cmake @@ -0,0 +1,21 @@ +# The set of languages for which implicit dependencies are needed: +set(CMAKE_DEPENDS_LANGUAGES + "CXX" + ) +# The set of files for implicit dependencies of each language: +set(CMAKE_DEPENDS_CHECK_CXX + "/home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/src/main.cpp" "/home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/boo.dir/main.cpp.o" + ) +set(CMAKE_CXX_COMPILER_ID "GNU") + +# The include file search paths: +set(CMAKE_CXX_TARGET_INCLUDE_PATH + ) + +# Targets to which this target links. +set(CMAKE_TARGET_LINKED_INFO_FILES + "/home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/foo.dir/DependInfo.cmake" + ) + +# Fortran module output directory. +set(CMAKE_Fortran_TARGET_MODULE_DIR "") diff --git a/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/boo.dir/build.make b/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/boo.dir/build.make new file mode 100644 index 0000000..7845999 --- /dev/null +++ b/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/boo.dir/build.make @@ -0,0 +1,102 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.16 + +# 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 + + +# Produce verbose output by default. +VERBOSE = 1 + +# 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/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/src + +# The top-level build directory on which CMake was run. +CMAKE_BINARY_DIR = /home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin + +# Include any dependencies generated for this target. +include CMakeFiles/boo.dir/depend.make + +# Include the progress variables for this target. +include CMakeFiles/boo.dir/progress.make + +# Include the compile flags for this target's objects. +include CMakeFiles/boo.dir/flags.make + +CMakeFiles/boo.dir/main.cpp.o: CMakeFiles/boo.dir/flags.make +CMakeFiles/boo.dir/main.cpp.o: /home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/src/main.cpp + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles --progress-num=$(CMAKE_PROGRESS_1) "Building CXX object CMakeFiles/boo.dir/main.cpp.o" + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -o CMakeFiles/boo.dir/main.cpp.o -c /home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/src/main.cpp + +CMakeFiles/boo.dir/main.cpp.i: cmake_force + @echo "Preprocessing CXX source to CMakeFiles/boo.dir/main.cpp.i" + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/src/main.cpp > CMakeFiles/boo.dir/main.cpp.i + +CMakeFiles/boo.dir/main.cpp.s: cmake_force + @echo "Compiling CXX source to assembly CMakeFiles/boo.dir/main.cpp.s" + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/src/main.cpp -o CMakeFiles/boo.dir/main.cpp.s + +# Object files for target boo +boo_OBJECTS = \ +"CMakeFiles/boo.dir/main.cpp.o" + +# External object files for target boo +boo_EXTERNAL_OBJECTS = + +boo: CMakeFiles/boo.dir/main.cpp.o +boo: CMakeFiles/boo.dir/build.make +boo: libfoo.a +boo: CMakeFiles/boo.dir/link.txt + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Linking CXX executable boo" + $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/boo.dir/link.txt --verbose=$(VERBOSE) + +# Rule to build all files generated by this target. +CMakeFiles/boo.dir/build: boo + +.PHONY : CMakeFiles/boo.dir/build + +CMakeFiles/boo.dir/clean: + $(CMAKE_COMMAND) -P CMakeFiles/boo.dir/cmake_clean.cmake +.PHONY : CMakeFiles/boo.dir/clean + +CMakeFiles/boo.dir/depend: + cd /home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/src /home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/src /home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin /home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin /home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/boo.dir/DependInfo.cmake +.PHONY : CMakeFiles/boo.dir/depend + diff --git a/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/boo.dir/cmake_clean.cmake b/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/boo.dir/cmake_clean.cmake new file mode 100644 index 0000000..5527b21 --- /dev/null +++ b/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/boo.dir/cmake_clean.cmake @@ -0,0 +1,10 @@ +file(REMOVE_RECURSE + "CMakeFiles/boo.dir/main.cpp.o" + "boo" + "boo.pdb" +) + +# Per-language clean rules from dependency scanning. +foreach(lang CXX) + include(CMakeFiles/boo.dir/cmake_clean_${lang}.cmake OPTIONAL) +endforeach() diff --git a/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/boo.dir/depend.internal b/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/boo.dir/depend.internal new file mode 100644 index 0000000..3f3b65c --- /dev/null +++ b/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/boo.dir/depend.internal @@ -0,0 +1,5 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.16 + +CMakeFiles/boo.dir/main.cpp.o + /home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/src/main.cpp diff --git a/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/boo.dir/depend.make b/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/boo.dir/depend.make new file mode 100644 index 0000000..604836c --- /dev/null +++ b/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/boo.dir/depend.make @@ -0,0 +1,5 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.16 + +CMakeFiles/boo.dir/main.cpp.o: /home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/src/main.cpp + diff --git a/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/boo.dir/flags.make b/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/boo.dir/flags.make new file mode 100644 index 0000000..9162e3e --- /dev/null +++ b/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/boo.dir/flags.make @@ -0,0 +1,10 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.16 + +# compile CXX with /usr/bin/c++ +CXX_FLAGS = -flto -fno-fat-lto-objects + +CXX_DEFINES = + +CXX_INCLUDES = + diff --git a/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/boo.dir/link.txt b/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/boo.dir/link.txt new file mode 100644 index 0000000..bf08c9f --- /dev/null +++ b/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/boo.dir/link.txt @@ -0,0 +1 @@ +/usr/bin/c++ -flto -fno-fat-lto-objects CMakeFiles/boo.dir/main.cpp.o -o boo libfoo.a diff --git a/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/boo.dir/main.cpp.o b/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/boo.dir/main.cpp.o new file mode 100644 index 0000000..f95971b Binary files /dev/null and b/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/boo.dir/main.cpp.o differ diff --git a/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/boo.dir/progress.make b/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/boo.dir/progress.make new file mode 100644 index 0000000..abadeb0 --- /dev/null +++ b/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/boo.dir/progress.make @@ -0,0 +1,3 @@ +CMAKE_PROGRESS_1 = 1 +CMAKE_PROGRESS_2 = 2 + diff --git a/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/cmake.check_cache b/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/cmake.check_cache new file mode 100644 index 0000000..3dccd73 --- /dev/null +++ b/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/cmake.check_cache @@ -0,0 +1 @@ +# This file is generated by cmake for dependency checking of the CMakeCache.txt file diff --git a/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/foo.dir/CXX.includecache b/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/foo.dir/CXX.includecache new file mode 100644 index 0000000..ff12b71 --- /dev/null +++ b/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/foo.dir/CXX.includecache @@ -0,0 +1,10 @@ +#IncludeRegexLine: ^[ ]*[#%][ ]*(include|import)[ ]*[<"]([^">]+)([">]) + +#IncludeRegexScan: ^.*$ + +#IncludeRegexComplain: ^$ + +#IncludeRegexTransform: + +/home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/src/foo.cpp + diff --git a/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/foo.dir/DependInfo.cmake b/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/foo.dir/DependInfo.cmake new file mode 100644 index 0000000..2c1742b --- /dev/null +++ b/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/foo.dir/DependInfo.cmake @@ -0,0 +1,20 @@ +# The set of languages for which implicit dependencies are needed: +set(CMAKE_DEPENDS_LANGUAGES + "CXX" + ) +# The set of files for implicit dependencies of each language: +set(CMAKE_DEPENDS_CHECK_CXX + "/home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/src/foo.cpp" "/home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/foo.dir/foo.cpp.o" + ) +set(CMAKE_CXX_COMPILER_ID "GNU") + +# The include file search paths: +set(CMAKE_CXX_TARGET_INCLUDE_PATH + ) + +# Targets to which this target links. +set(CMAKE_TARGET_LINKED_INFO_FILES + ) + +# Fortran module output directory. +set(CMAKE_Fortran_TARGET_MODULE_DIR "") diff --git a/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/foo.dir/build.make b/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/foo.dir/build.make new file mode 100644 index 0000000..1e6bf2b --- /dev/null +++ b/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/foo.dir/build.make @@ -0,0 +1,102 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.16 + +# 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 + + +# Produce verbose output by default. +VERBOSE = 1 + +# 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/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/src + +# The top-level build directory on which CMake was run. +CMAKE_BINARY_DIR = /home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin + +# Include any dependencies generated for this target. +include CMakeFiles/foo.dir/depend.make + +# Include the progress variables for this target. +include CMakeFiles/foo.dir/progress.make + +# Include the compile flags for this target's objects. +include CMakeFiles/foo.dir/flags.make + +CMakeFiles/foo.dir/foo.cpp.o: CMakeFiles/foo.dir/flags.make +CMakeFiles/foo.dir/foo.cpp.o: /home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/src/foo.cpp + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles --progress-num=$(CMAKE_PROGRESS_1) "Building CXX object CMakeFiles/foo.dir/foo.cpp.o" + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -o CMakeFiles/foo.dir/foo.cpp.o -c /home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/src/foo.cpp + +CMakeFiles/foo.dir/foo.cpp.i: cmake_force + @echo "Preprocessing CXX source to CMakeFiles/foo.dir/foo.cpp.i" + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/src/foo.cpp > CMakeFiles/foo.dir/foo.cpp.i + +CMakeFiles/foo.dir/foo.cpp.s: cmake_force + @echo "Compiling CXX source to assembly CMakeFiles/foo.dir/foo.cpp.s" + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/src/foo.cpp -o CMakeFiles/foo.dir/foo.cpp.s + +# Object files for target foo +foo_OBJECTS = \ +"CMakeFiles/foo.dir/foo.cpp.o" + +# External object files for target foo +foo_EXTERNAL_OBJECTS = + +libfoo.a: CMakeFiles/foo.dir/foo.cpp.o +libfoo.a: CMakeFiles/foo.dir/build.make +libfoo.a: CMakeFiles/foo.dir/link.txt + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Linking CXX static library libfoo.a" + $(CMAKE_COMMAND) -P CMakeFiles/foo.dir/cmake_clean_target.cmake + $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/foo.dir/link.txt --verbose=$(VERBOSE) + +# Rule to build all files generated by this target. +CMakeFiles/foo.dir/build: libfoo.a + +.PHONY : CMakeFiles/foo.dir/build + +CMakeFiles/foo.dir/clean: + $(CMAKE_COMMAND) -P CMakeFiles/foo.dir/cmake_clean.cmake +.PHONY : CMakeFiles/foo.dir/clean + +CMakeFiles/foo.dir/depend: + cd /home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/src /home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/src /home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin /home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin /home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/foo.dir/DependInfo.cmake +.PHONY : CMakeFiles/foo.dir/depend + diff --git a/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/foo.dir/cmake_clean.cmake b/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/foo.dir/cmake_clean.cmake new file mode 100644 index 0000000..380ebe4 --- /dev/null +++ b/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/foo.dir/cmake_clean.cmake @@ -0,0 +1,10 @@ +file(REMOVE_RECURSE + "CMakeFiles/foo.dir/foo.cpp.o" + "libfoo.a" + "libfoo.pdb" +) + +# Per-language clean rules from dependency scanning. +foreach(lang CXX) + include(CMakeFiles/foo.dir/cmake_clean_${lang}.cmake OPTIONAL) +endforeach() diff --git a/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/foo.dir/cmake_clean_target.cmake b/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/foo.dir/cmake_clean_target.cmake new file mode 100644 index 0000000..455c772 --- /dev/null +++ b/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/foo.dir/cmake_clean_target.cmake @@ -0,0 +1,3 @@ +file(REMOVE_RECURSE + "libfoo.a" +) diff --git a/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/foo.dir/depend.internal b/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/foo.dir/depend.internal new file mode 100644 index 0000000..63fc2bb --- /dev/null +++ b/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/foo.dir/depend.internal @@ -0,0 +1,5 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.16 + +CMakeFiles/foo.dir/foo.cpp.o + /home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/src/foo.cpp diff --git a/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/foo.dir/depend.make b/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/foo.dir/depend.make new file mode 100644 index 0000000..b8ec3f2 --- /dev/null +++ b/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/foo.dir/depend.make @@ -0,0 +1,5 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.16 + +CMakeFiles/foo.dir/foo.cpp.o: /home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/src/foo.cpp + diff --git a/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/foo.dir/flags.make b/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/foo.dir/flags.make new file mode 100644 index 0000000..9162e3e --- /dev/null +++ b/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/foo.dir/flags.make @@ -0,0 +1,10 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.16 + +# compile CXX with /usr/bin/c++ +CXX_FLAGS = -flto -fno-fat-lto-objects + +CXX_DEFINES = + +CXX_INCLUDES = + diff --git a/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/foo.dir/foo.cpp.o b/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/foo.dir/foo.cpp.o new file mode 100644 index 0000000..58c6194 Binary files /dev/null and b/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/foo.dir/foo.cpp.o differ diff --git a/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/foo.dir/link.txt b/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/foo.dir/link.txt new file mode 100644 index 0000000..4bc0267 --- /dev/null +++ b/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/foo.dir/link.txt @@ -0,0 +1,2 @@ +"/usr/bin/gcc-ar-9" cr libfoo.a CMakeFiles/foo.dir/foo.cpp.o +"/usr/bin/gcc-ranlib-9" libfoo.a diff --git a/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/foo.dir/progress.make b/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/foo.dir/progress.make new file mode 100644 index 0000000..8c8fb6f --- /dev/null +++ b/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/foo.dir/progress.make @@ -0,0 +1,3 @@ +CMAKE_PROGRESS_1 = 3 +CMAKE_PROGRESS_2 = 4 + diff --git a/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/progress.marks b/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/progress.marks new file mode 100644 index 0000000..b8626c4 --- /dev/null +++ b/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/progress.marks @@ -0,0 +1 @@ +4 diff --git a/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/Makefile b/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/Makefile new file mode 100644 index 0000000..ce9cfab --- /dev/null +++ b/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/Makefile @@ -0,0 +1,225 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.16 + +# 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 + + +# Produce verbose output by default. +VERBOSE = 1 + +# 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/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/src + +# The top-level build directory on which CMake was run. +CMAKE_BINARY_DIR = /home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin + +#============================================================================= +# Targets provided globally by CMake. + +# Special rule for the target rebuild_cache +rebuild_cache: + @echo "Running CMake to regenerate build system..." + /usr/bin/cmake -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) +.PHONY : rebuild_cache + +# Special rule for the target rebuild_cache +rebuild_cache/fast: rebuild_cache + +.PHONY : rebuild_cache/fast + +# Special rule for the target edit_cache +edit_cache: + @echo "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/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles /home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/progress.marks + $(MAKE) -f CMakeFiles/Makefile2 all + $(CMAKE_COMMAND) -E cmake_progress_start /home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles 0 +.PHONY : all + +# The main clean target +clean: + $(MAKE) -f CMakeFiles/Makefile2 clean +.PHONY : clean + +# The main clean target +clean/fast: clean + +.PHONY : clean/fast + +# Prepare targets for installation. +preinstall: all + $(MAKE) -f CMakeFiles/Makefile2 preinstall +.PHONY : preinstall + +# Prepare targets for installation. +preinstall/fast: + $(MAKE) -f CMakeFiles/Makefile2 preinstall +.PHONY : preinstall/fast + +# clear depends +depend: + $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 1 +.PHONY : depend + +#============================================================================= +# Target rules for targets named boo + +# Build rule for target. +boo: cmake_check_build_system + $(MAKE) -f CMakeFiles/Makefile2 boo +.PHONY : boo + +# fast build rule for target. +boo/fast: + $(MAKE) -f CMakeFiles/boo.dir/build.make CMakeFiles/boo.dir/build +.PHONY : boo/fast + +#============================================================================= +# Target rules for targets named foo + +# Build rule for target. +foo: cmake_check_build_system + $(MAKE) -f CMakeFiles/Makefile2 foo +.PHONY : foo + +# fast build rule for target. +foo/fast: + $(MAKE) -f CMakeFiles/foo.dir/build.make CMakeFiles/foo.dir/build +.PHONY : foo/fast + +foo.o: foo.cpp.o + +.PHONY : foo.o + +# target to build an object file +foo.cpp.o: + $(MAKE) -f CMakeFiles/foo.dir/build.make CMakeFiles/foo.dir/foo.cpp.o +.PHONY : foo.cpp.o + +foo.i: foo.cpp.i + +.PHONY : foo.i + +# target to preprocess a source file +foo.cpp.i: + $(MAKE) -f CMakeFiles/foo.dir/build.make CMakeFiles/foo.dir/foo.cpp.i +.PHONY : foo.cpp.i + +foo.s: foo.cpp.s + +.PHONY : foo.s + +# target to generate assembly for a file +foo.cpp.s: + $(MAKE) -f CMakeFiles/foo.dir/build.make CMakeFiles/foo.dir/foo.cpp.s +.PHONY : foo.cpp.s + +main.o: main.cpp.o + +.PHONY : main.o + +# target to build an object file +main.cpp.o: + $(MAKE) -f CMakeFiles/boo.dir/build.make CMakeFiles/boo.dir/main.cpp.o +.PHONY : main.cpp.o + +main.i: main.cpp.i + +.PHONY : main.i + +# target to preprocess a source file +main.cpp.i: + $(MAKE) -f CMakeFiles/boo.dir/build.make CMakeFiles/boo.dir/main.cpp.i +.PHONY : main.cpp.i + +main.s: main.cpp.s + +.PHONY : main.s + +# target to generate assembly for a file +main.cpp.s: + $(MAKE) -f CMakeFiles/boo.dir/build.make CMakeFiles/boo.dir/main.cpp.s +.PHONY : main.cpp.s + +# Help Target +help: + @echo "The following are some of the valid targets for this Makefile:" + @echo "... all (the default if no target is provided)" + @echo "... clean" + @echo "... depend" + @echo "... rebuild_cache" + @echo "... edit_cache" + @echo "... boo" + @echo "... foo" + @echo "... foo.o" + @echo "... foo.i" + @echo "... foo.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) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0 +.PHONY : cmake_check_build_system + diff --git a/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/boo b/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/boo new file mode 100755 index 0000000..bd5e1c1 Binary files /dev/null and b/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/boo differ diff --git a/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/cmake_install.cmake b/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/cmake_install.cmake new file mode 100644 index 0000000..21292c9 --- /dev/null +++ b/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/cmake_install.cmake @@ -0,0 +1,49 @@ +# Install script for directory: /home/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/src + +# 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/bscholar/Documents/ECSE318/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/${CMAKE_INSTALL_MANIFEST}" + "${CMAKE_INSTALL_MANIFEST_CONTENT}") diff --git a/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/libfoo.a b/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/libfoo.a new file mode 100644 index 0000000..241652d Binary files /dev/null and b/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/bin/libfoo.a differ diff --git a/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/src/CMakeLists.txt b/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/src/CMakeLists.txt new file mode 100644 index 0000000..dc962bb --- /dev/null +++ b/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/src/CMakeLists.txt @@ -0,0 +1,8 @@ +cmake_minimum_required(VERSION "3.16.3") +project("lto-test" LANGUAGES CXX) + +cmake_policy(SET CMP0069 NEW) + +add_library(foo foo.cpp) +add_executable(boo main.cpp) +target_link_libraries(boo PUBLIC foo) diff --git a/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/src/foo.cpp b/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/src/foo.cpp new file mode 100644 index 0000000..1e56597 --- /dev/null +++ b/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/src/foo.cpp @@ -0,0 +1,4 @@ +int foo() +{ + return 0x42; +} diff --git a/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/src/main.cpp b/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/src/main.cpp new file mode 100644 index 0000000..5be0864 --- /dev/null +++ b/hw5/build/CMakeFiles/_CMakeLTOTest-CXX/src/main.cpp @@ -0,0 +1,6 @@ +int foo(); + +int main() +{ + return foo(); +} diff --git a/hw5/build/CMakeFiles/verilog_parser.dir/flags.make b/hw5/build/CMakeFiles/verilog_parser.dir/flags.make index 3617497..6d9f070 100644 --- a/hw5/build/CMakeFiles/verilog_parser.dir/flags.make +++ b/hw5/build/CMakeFiles/verilog_parser.dir/flags.make @@ -2,7 +2,7 @@ # Generated by "Unix Makefiles" Generator, CMake Version 3.16 # compile CXX with /usr/bin/c++ -CXX_FLAGS = -std=gnu++2a +CXX_FLAGS = -O3 -std=gnu++2a CXX_DEFINES = -DSPDLOG_COMPILED_LIB diff --git a/hw5/build/CMakeFiles/verilog_parser.dir/link.txt b/hw5/build/CMakeFiles/verilog_parser.dir/link.txt index eb4cfde..e2aadab 100644 --- a/hw5/build/CMakeFiles/verilog_parser.dir/link.txt +++ b/hw5/build/CMakeFiles/verilog_parser.dir/link.txt @@ -1 +1 @@ -/usr/bin/c++ CMakeFiles/verilog_parser.dir/src/parser.cpp.o CMakeFiles/verilog_parser.dir/src/top.cpp.o CMakeFiles/verilog_parser.dir/src/gate.cpp.o -o verilog_parser /usr/lib/x86_64-linux-gnu/libspdlog.so.1.5.0 -lpthread +/usr/bin/c++ -O3 CMakeFiles/verilog_parser.dir/src/parser.cpp.o CMakeFiles/verilog_parser.dir/src/top.cpp.o CMakeFiles/verilog_parser.dir/src/gate.cpp.o -o verilog_parser /usr/lib/x86_64-linux-gnu/libspdlog.so.1.5.0 -lpthread diff --git a/hw5/build/CMakeFiles/verilog_parser.dir/src/gate.cpp.o b/hw5/build/CMakeFiles/verilog_parser.dir/src/gate.cpp.o index 4e2707b..8668f1f 100644 Binary files a/hw5/build/CMakeFiles/verilog_parser.dir/src/gate.cpp.o and b/hw5/build/CMakeFiles/verilog_parser.dir/src/gate.cpp.o differ diff --git a/hw5/build/CMakeFiles/verilog_parser.dir/src/parser.cpp.o b/hw5/build/CMakeFiles/verilog_parser.dir/src/parser.cpp.o index d159e1c..7e55562 100644 Binary files a/hw5/build/CMakeFiles/verilog_parser.dir/src/parser.cpp.o and b/hw5/build/CMakeFiles/verilog_parser.dir/src/parser.cpp.o differ diff --git a/hw5/build/CMakeFiles/verilog_parser.dir/src/top.cpp.o b/hw5/build/CMakeFiles/verilog_parser.dir/src/top.cpp.o index c09d504..4a6500e 100644 Binary files a/hw5/build/CMakeFiles/verilog_parser.dir/src/top.cpp.o and b/hw5/build/CMakeFiles/verilog_parser.dir/src/top.cpp.o differ diff --git a/hw5/build/CMakeFiles/verilog_sim.dir/CXX.includecache b/hw5/build/CMakeFiles/verilog_sim.dir/CXX.includecache index 03f7087..e7cfac5 100644 --- a/hw5/build/CMakeFiles/verilog_sim.dir/CXX.includecache +++ b/hw5/build/CMakeFiles/verilog_sim.dir/CXX.includecache @@ -22,7 +22,15 @@ type_traits vector - +../include/lut.h +cinttypes +- +gate.h +../include/gate.h + ../include/simulator.h +fstream +- memory - string @@ -35,6 +43,8 @@ gate.h ../include/gate.h /home/bscholar/Documents/ECSE318/hw5/src/sim.cpp +chrono +- iostream - string @@ -42,3 +52,19 @@ string simulator.h /home/bscholar/Documents/ECSE318/hw5/src/simulator.h +/home/bscholar/Documents/ECSE318/hw5/src/simulator.cpp +simulator.h +/home/bscholar/Documents/ECSE318/hw5/src/simulator.h +fstream +- +iostream +- +sstream +- +boost/algorithm/string.hpp +- +boost/algorithm/string/trim_all.hpp +- +lut.h +/home/bscholar/Documents/ECSE318/hw5/src/lut.h + diff --git a/hw5/build/CMakeFiles/verilog_sim.dir/flags.make b/hw5/build/CMakeFiles/verilog_sim.dir/flags.make index 3617497..6d9f070 100644 --- a/hw5/build/CMakeFiles/verilog_sim.dir/flags.make +++ b/hw5/build/CMakeFiles/verilog_sim.dir/flags.make @@ -2,7 +2,7 @@ # Generated by "Unix Makefiles" Generator, CMake Version 3.16 # compile CXX with /usr/bin/c++ -CXX_FLAGS = -std=gnu++2a +CXX_FLAGS = -O3 -std=gnu++2a CXX_DEFINES = -DSPDLOG_COMPILED_LIB diff --git a/hw5/build/CMakeFiles/verilog_sim.dir/link.txt b/hw5/build/CMakeFiles/verilog_sim.dir/link.txt index a2ca459..7f5c24a 100644 --- a/hw5/build/CMakeFiles/verilog_sim.dir/link.txt +++ b/hw5/build/CMakeFiles/verilog_sim.dir/link.txt @@ -1 +1 @@ -/usr/bin/c++ CMakeFiles/verilog_sim.dir/src/sim.cpp.o CMakeFiles/verilog_sim.dir/src/gate.cpp.o CMakeFiles/verilog_sim.dir/src/simulator.cpp.o -o verilog_sim /usr/lib/x86_64-linux-gnu/libspdlog.so.1.5.0 -lpthread +/usr/bin/c++ -O3 CMakeFiles/verilog_sim.dir/src/sim.cpp.o CMakeFiles/verilog_sim.dir/src/gate.cpp.o CMakeFiles/verilog_sim.dir/src/simulator.cpp.o -o verilog_sim /usr/lib/x86_64-linux-gnu/libspdlog.so.1.5.0 -lpthread diff --git a/hw5/build/CMakeFiles/verilog_sim.dir/src/gate.cpp.o b/hw5/build/CMakeFiles/verilog_sim.dir/src/gate.cpp.o index 4e2707b..8668f1f 100644 Binary files a/hw5/build/CMakeFiles/verilog_sim.dir/src/gate.cpp.o and b/hw5/build/CMakeFiles/verilog_sim.dir/src/gate.cpp.o differ diff --git a/hw5/build/CMakeFiles/verilog_sim.dir/src/sim.cpp.o b/hw5/build/CMakeFiles/verilog_sim.dir/src/sim.cpp.o index 91f16c9..29617e5 100644 Binary files a/hw5/build/CMakeFiles/verilog_sim.dir/src/sim.cpp.o and b/hw5/build/CMakeFiles/verilog_sim.dir/src/sim.cpp.o differ diff --git a/hw5/build/CMakeFiles/verilog_sim.dir/src/simulator.cpp.o b/hw5/build/CMakeFiles/verilog_sim.dir/src/simulator.cpp.o index 739b28d..b55ce83 100644 Binary files a/hw5/build/CMakeFiles/verilog_sim.dir/src/simulator.cpp.o and b/hw5/build/CMakeFiles/verilog_sim.dir/src/simulator.cpp.o differ diff --git a/hw5/build/verilog_parser b/hw5/build/verilog_parser index 66e2f86..eb26f73 100755 Binary files a/hw5/build/verilog_parser and b/hw5/build/verilog_parser differ diff --git a/hw5/build/verilog_sim b/hw5/build/verilog_sim index 0f3f5c3..d11ace3 100755 Binary files a/hw5/build/verilog_sim and b/hw5/build/verilog_sim differ diff --git a/hw5/include/simulator.h b/hw5/include/simulator.h index 2fb234e..6d4cbe9 100644 --- a/hw5/include/simulator.h +++ b/hw5/include/simulator.h @@ -1,5 +1,6 @@ #pragma once +#include #include #include #include @@ -18,18 +19,17 @@ class Simulator { bool load_model(const std::string &fn); bool load_inputs(const std::string &fn); - bool run(); + bool run(const std::string &fn); void reset_state(); void clear(); private: void print_inputs(bool with_legend = false); - void print_state(bool with_legend = false); + void print_state(std::ofstream &of, bool with_legend = false); // returns true if state changed bool evaluate_gate(GateId id); - // SignalState calculate_next(const std::vector& state, ) SignalState input_scan(GateId id); SignalState table_lookup(GateId id); diff --git a/hw5/simoutput.txt b/hw5/simoutput.txt new file mode 100644 index 0000000..c8c2b3f --- /dev/null +++ b/hw5/simoutput.txt @@ -0,0 +1,20 @@ +INPUT :0000 // g0, g1, g2, g3, +STATE :444 // xg1, xg2, xg3, +OUTPUT :0 // g17, + +INPUT :0010 +STATE :104 +OUTPUT :0 + +INPUT :0100 +STATE :100 +OUTPUT :0 + +INPUT :1000 +STATE :101 +OUTPUT :0 + +INPUT :1111 +STATE :001 +OUTPUT :0 + diff --git a/hw5/src/sim.cpp b/hw5/src/sim.cpp index 5dba52d..5d5c8a3 100644 --- a/hw5/src/sim.cpp +++ b/hw5/src/sim.cpp @@ -1,10 +1,17 @@ +#include #include #include #include "simulator.h" int main(int argc, char **argv) { + using std::chrono::duration_cast; + using std::chrono::nanoseconds; + using clock = std::chrono::high_resolution_clock; + + argc--; + argv++; if (argc < 3) { std::cerr @@ -12,11 +19,10 @@ int main(int argc, char **argv) { << std::endl; return 1; } - // get rid of unused argument - argv++; const std::string gate_fn(argv[0]); const std::string input_fn(argv[1]); + const std::string output_fn(argv[2]); auto *sim = new Simulator(); @@ -30,7 +36,12 @@ int main(int argc, char **argv) { return -1; } - sim->run(); + auto start = clock::now(); + sim->run(output_fn); + auto end = clock::now(); + std::cout << "Simulation took " + << duration_cast(end - start).count() << "ns" + << std::endl; return 0; } diff --git a/hw5/src/simulator.cpp b/hw5/src/simulator.cpp index 6dcfb90..f76e769 100644 --- a/hw5/src/simulator.cpp +++ b/hw5/src/simulator.cpp @@ -2,6 +2,7 @@ #include #include +#include #include #include @@ -13,13 +14,20 @@ Simulator::Simulator() std::cout << "Initialized simulator" << std::endl; } -bool Simulator::run() { +bool Simulator::run(const std::string &fn) { if (!m_has_model || !m_has_inputs) { std::cerr << "Cannot run sim without model and inputs" << std::endl; return false; } reset_state(); + std::ofstream out_file(fn); + + if (out_file.bad()) { + std::cerr << "Could not open file for simulator output: " << fn + << std::endl; + } + const int iterations = m_inputs.size(); for (int i = 0; i < iterations; ++i) { @@ -39,15 +47,18 @@ bool Simulator::run() { } } // print logic values at PI, PO, and States - print_state(i == 0); + print_state(out_file, i == 0); } + out_file.close(); return true; } void Simulator::schedule_fanout(GateId id) { for (GateId &child_id : m_gates[id]->get_fan_out()) { - // std::cout << "Gate " << m_gates[id]->get_name() << " (" << id << ") is scheduling " << m_gates[child_id]->get_name() << " (" << child_id << ") for update" << std::endl; + // std::cout << "Gate " << m_gates[id]->get_name() << " (" << id << ") is + // scheduling " << m_gates[child_id]->get_name() << " (" << child_id << ") + // for update" << std::endl; m_needs_update[child_id] = true; } } @@ -106,7 +117,7 @@ bool Simulator::evaluate_gate(GateId id) { return false; } -#define INPUT_SCAN +// #define INPUT_SCAN #ifdef INPUT_SCAN next_state = input_scan(id); #else @@ -114,7 +125,9 @@ bool Simulator::evaluate_gate(GateId id) { #endif m_gates[id]->set_state(next_state); - std::cout << "Setting " << m_gates[id]->get_name() << " (" << id << ") changing to state " << signal_state_to_char(next_state) << std::endl; + std::cout << "Setting " << m_gates[id]->get_name() << " (" << id + << ") changing to state " << signal_state_to_char(next_state) + << std::endl; return next_state != prev_state; // else do stuff @@ -340,49 +353,51 @@ void Simulator::print_inputs(bool with_legend) { } } -void Simulator::print_state(bool with_legend) { +void Simulator::print_state(std::ofstream &of, bool with_legend) { SignalState state; - std::cout << "INPUT :"; + // std::stringstream ss; + + of << "INPUT :"; for (auto &id : m_input_gates) { state = m_gates[id]->get_state(); - std::cout << signal_state_to_char(state); + of << signal_state_to_char(state); } if (with_legend) { - std::cout << "\t// "; + of << "\t// "; for (auto &id : m_input_gates) { - std::cout << m_gates[id]->get_name() << ", "; + of << m_gates[id]->get_name() << ", "; } } - std::cout << "\nSTATE :"; + of << "\nSTATE :"; for (auto &id : m_dff_gates) { state = m_gates[id]->get_state(); - std::cout << signal_state_to_char(state); + of << signal_state_to_char(state); } if (with_legend) { - std::cout << "\t// "; + of << "\t// "; for (auto &id : m_dff_gates) { - std::cout << m_gates[id]->get_name() << ", "; + of << m_gates[id]->get_name() << ", "; } } - std::cout << "\nOUTPUT :"; + of << "\nOUTPUT :"; for (auto &id : m_output_gates) { state = m_gates[id]->get_state(); - std::cout << signal_state_to_char(state); + of << signal_state_to_char(state); } if (with_legend) { - std::cout << "\t// "; + of << "\t// "; for (auto &id : m_output_gates) { - std::cout << m_gates[id]->get_name() << ", "; + of << m_gates[id]->get_name() << ", "; } } - std::cout << "\n\n"; + of << "\n\n"; }