Skip to content

Commit bc8061f

Browse files
William-AnJRPan
andauthored
Migrate gpgpu-sim build system to cmake (#66)
* migrate_cmake: add package dependency checking * migrate_cmake: port setup_environment to CMake * migrate_cmake: break dependency checking and env export gen to different .cmake files * migrate_cmake: use CUDAToolkit_FOUND to test for CUDA compiler * migrate_cmake: use CUDAToolkit_FOUND to test for CUDA compiler * migrate_cmake: use CUDAToolkit_FOUND to test for CUDA compiler * migrate_cmake: properly parse for cuda version number * migrate_cmake: set highest CUDA supported to be 11.10.x * migrate_cmake: specify top level CMake file * migrate_cmake: add libcuda cmake file * migrate_cmake: use global compiler options and definitions * migrate_cmake: add cmake file to src * migrate_cmake: add cmake files for cuda-sim folder * migrate_cmake: add cmake files to gpgpu-sim folder * migrate_cmake: add cmake files for intersim * migrate_cmake: add short test using cmake * migrate_cmake: bump CXX standard requirement to 17 * Add cmake files for accelwattch * migrate_cmake: remove use of GLOB to grab source files * migrate_cmake: comment out the write protection on generated instructions.h * migrate_cmake: create sym folder and add newline to generated setup file * migrate_cmake: fix some path issues * migrate_cmake: let cmake thinks flex and bison generate CXX files * migrate_cmake: fix not linking pthread properly * migrate_cmake: remove debug message * migrate_cmake: add empty libopencl cmake file * migrate_cmake: install phase and runtime version detect * Added install phase to install the shared object and add symlinks * Changes with CUDA toolkit will be detected and triggered a rebuild * GPGPU-Sim detailed version string will be updated on each build * Typo fix and fix correct bin dir * Replace gcc -> g++ in intersim * ignore setup * check CMAKE_BUILD_TYPE * set DCMAKE_BUILD_TYPE --------- Co-authored-by: JRPAN <[email protected]>
1 parent 6389301 commit bc8061f

21 files changed

+854
-8
lines changed

.github/workflows/cmake.yml

+83
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,83 @@
1+
# Workflow with cmake build system
2+
name: Short-Tests-CMake
3+
4+
# Controls when the workflow will run
5+
on:
6+
# Triggers the workflow on push or pull request events but only for the mydev branch
7+
push:
8+
pull_request:
9+
10+
# Allows you to run this workflow manually from the Actions tab
11+
workflow_dispatch:
12+
13+
# A workflow run is made up of one or more jobs that can run sequentially or in parallel
14+
jobs:
15+
build-TITANV:
16+
runs-on: ubuntu-latest
17+
container:
18+
image: tgrogers/accel-sim_regress:Ubuntu-22.04-cuda-11.7
19+
env:
20+
CONFIG: TITANV
21+
22+
# Steps represent a sequence of tasks that will be executed as part of the job
23+
steps:
24+
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
25+
- uses: actions/checkout@v4
26+
- name: Run Simulation
27+
run: /bin/bash $GITHUB_WORKSPACE/short-tests-cmake.sh
28+
29+
build-TITANV-LOCALXBAR:
30+
runs-on: ubuntu-latest
31+
container:
32+
image: tgrogers/accel-sim_regress:Ubuntu-22.04-cuda-11.7
33+
env:
34+
CONFIG: TITANV-LOCALXBAR
35+
36+
# Steps represent a sequence of tasks that will be executed as part of the job
37+
steps:
38+
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
39+
- uses: actions/checkout@v4
40+
- name: Run Simulation
41+
run: /bin/bash $GITHUB_WORKSPACE/short-tests-cmake.sh
42+
43+
build-QV100:
44+
runs-on: ubuntu-latest
45+
container:
46+
image: tgrogers/accel-sim_regress:Ubuntu-22.04-cuda-11.7
47+
env:
48+
CONFIG: QV100
49+
50+
# Steps represent a sequence of tasks that will be executed as part of the job
51+
steps:
52+
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
53+
- uses: actions/checkout@v4
54+
- name: Run Simulation
55+
run: /bin/bash $GITHUB_WORKSPACE/short-tests-cmake.sh
56+
57+
build-2060:
58+
runs-on: ubuntu-latest
59+
container:
60+
image: tgrogers/accel-sim_regress:Ubuntu-22.04-cuda-11.7
61+
env:
62+
CONFIG: RTX2060
63+
64+
# Steps represent a sequence of tasks that will be executed as part of the job
65+
steps:
66+
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
67+
- uses: actions/checkout@v4
68+
- name: Run Simulation
69+
run: /bin/bash $GITHUB_WORKSPACE/short-tests-cmake.sh
70+
71+
build-3070:
72+
runs-on: ubuntu-latest
73+
container:
74+
image: tgrogers/accel-sim_regress:Ubuntu-22.04-cuda-11.7
75+
env:
76+
CONFIG: RTX3070
77+
78+
# Steps represent a sequence of tasks that will be executed as part of the job
79+
steps:
80+
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
81+
- uses: actions/checkout@v4
82+
- name: Run Simulation
83+
run: /bin/bash $GITHUB_WORKSPACE/short-tests-cmake.sh

.gitignore

+1
Original file line numberDiff line numberDiff line change
@@ -61,3 +61,4 @@ debug_tools/WatchYourStep/ptxjitplus/*.ptx
6161
accel-sim-framework/
6262
gpu-app-collection/
6363

64+
setup

CMakeLists.txt

+167
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,167 @@
1+
cmake_minimum_required(VERSION 3.17)
2+
3+
# Project name and version
4+
project(GPGPU-Sim
5+
VERSION 4.2.0
6+
DESCRIPTION "cycle-level simulator modeling contemporary graphics processing units (GPUs)"
7+
HOMEPAGE_URL https://github.com/accel-sim/gpgpu-sim_distribution
8+
LANGUAGES CXX)
9+
10+
# Specify the C++ standard
11+
set(CMAKE_CXX_STANDARD 17)
12+
set(CMAKE_CXX_STANDARD_REQUIRED True)
13+
14+
# GPGPU-Sim build option
15+
option(GPGPUSIM_ENABLE_TRACE "Whether to enable GPGPU-Sim debug tracing" ON)
16+
17+
# GPGPU-Sim conditional build variable
18+
set(GPGPUSIM_USE_POWER_MODEL OFF)
19+
set(GPGPUSIM_USE_OPENCL OFF)
20+
21+
# Check for dependencies
22+
include(gpgpusim_check.cmake)
23+
24+
# Create version file
25+
add_custom_target(gen_build_string ALL
26+
COMMAND ${CMAKE_COMMAND} -D INPUT_DIR=${CMAKE_CURRENT_SOURCE_DIR} -D OUTPUT_DIR=${CMAKE_BINARY_DIR} -P ${CMAKE_CURRENT_SOURCE_DIR}/gpgpusim_gen_build_string.cmake
27+
COMMENT "Generating build string file to ${CMAKE_CURRENT_BINARY_DIR}")
28+
29+
# CMake target
30+
# GPGPU-Sim CUDA Runtime lib
31+
# Use the entrypoint object files sources else CMake will complain
32+
add_library(cudart SHARED $<TARGET_OBJECTS:gpgpusim_entrypoint>)
33+
add_library(entrypoint STATIC $<TARGET_OBJECTS:gpgpusim_entrypoint>)
34+
35+
# Add global C/CXX compilation flags and definitions
36+
# TODO Specify more build modes like gem5 with fast opt?
37+
if(${CMAKE_BUILD_TYPE} STREQUAL "Debug")
38+
add_compile_definitions(DEBUG=1)
39+
add_compile_options("$<$<COMPILE_LANGUAGE:CXX>:-Wall;-Wno-unused-function;-Wno-sign-compare;-g;-fPIC>")
40+
add_compile_options("$<$<COMPILE_LANGUAGE:C>:-Wall;-Wno-unused-function;-Wno-sign-compare;-ggdb;-fPIC>")
41+
else()
42+
add_compile_definitions(DEBUG=0)
43+
add_compile_options("$<$<COMPILE_LANGUAGE:CXX>:-O3;-g;-Wall;-Wno-unused-function;-Wno-sign-compare;-fPIC>")
44+
add_compile_options("$<$<COMPILE_LANGUAGE:C>:-Wall;-Wno-unused-function;-Wno-sign-compare;-fPIC>")
45+
endif()
46+
47+
# Add CUDA version
48+
add_compile_definitions(CUDART_VERSION=${CUDA_VERSION_NUMBER})
49+
50+
# OpenCL support
51+
if(GPGPUSIM_USE_OPENCL)
52+
add_compile_definitions(OPENGL_SUPPORT)
53+
endif()
54+
55+
# Tracing support
56+
if(GPGPUSIM_ENABLE_TRACE)
57+
add_compile_definitions(TRACING_ON=1)
58+
endif()
59+
60+
# Add subdirectory
61+
add_subdirectory(src)
62+
add_subdirectory(libcuda)
63+
add_subdirectory(libopencl)
64+
65+
# Set linker option for libcudart.so
66+
if(APPLE)
67+
target_link_options(cudart PUBLIC "-Wl,-headerpad_max_install_names,-undefined,dynamic_lookup,-compatibility_version,1.1,-current_version,1.1;-lm;-lz;-pthread")
68+
else()
69+
target_link_options(cudart PUBLIC
70+
"-Wl,--version-script=${CMAKE_CURRENT_SOURCE_DIR}/linux-so-version.txt;-lm;-lz;-lGL;-pthread")
71+
target_link_options(entrypoint PUBLIC
72+
"-Wl,--version-script=${CMAKE_CURRENT_SOURCE_DIR}/linux-so-version.txt;-lm;-lz;-lGL;-pthread")
73+
endif()
74+
# cuda: CUDA API lib
75+
# ptxsim: cuda-sim, functional simulator
76+
# gpgpusim: gpu simulator (gpgpu-sim)
77+
# intersim: interconnect simulator
78+
# accelwattch: power simulator
79+
# Rest of source files in src/ will be created with gpgpusim_entrypoint target
80+
target_link_libraries(cudart PUBLIC cuda ptxsim gpgpusim intersim)
81+
target_link_libraries(entrypoint PUBLIC cuda ptxsim gpgpusim intersim)
82+
if(GPGPUSIM_USE_POWER_MODEL)
83+
target_link_libraries(cudart PUBLIC cuda ptxsim gpgpusim intersim accelwattch)
84+
target_link_libraries(entrypoint PUBLIC cuda ptxsim gpgpusim intersim accelwattch)
85+
endif()
86+
87+
# TODO Conditionally build for Opencl?
88+
# if(GPGPUSIM_USE_OPENCL)
89+
# add_library(OpenCL)
90+
# endif()
91+
92+
# Install and post-install
93+
# Get configure
94+
set(GPGPUSIM_CONFIG "gcc-${CMAKE_CXX_COMPILER_VERSION}/cuda-${CUDA_VERSION_NUMBER}/${GPGPUSIM_BUILD_MODE}")
95+
96+
# Env var setup script
97+
include(gpgpusim_gen_setup_environment.cmake)
98+
99+
# Installation
100+
set(GPGPUSIM_INSTALL_PATH ${PROJECT_SOURCE_DIR}/lib/${GPGPUSIM_CONFIG})
101+
install(TARGETS cudart DESTINATION ${GPGPUSIM_INSTALL_PATH})
102+
103+
# Installing symlinks
104+
install(CODE "execute_process\(\
105+
COMMAND ${CMAKE_COMMAND} -E create_symlink \
106+
${GPGPUSIM_INSTALL_PATH}/$<TARGET_FILE_NAME:cudart> \
107+
${GPGPUSIM_INSTALL_PATH}/$<TARGET_FILE_NAME:cudart>.2\)")
108+
install(CODE "execute_process\(\
109+
COMMAND ${CMAKE_COMMAND} -E create_symlink \
110+
${GPGPUSIM_INSTALL_PATH}/$<TARGET_FILE_NAME:cudart> \
111+
${GPGPUSIM_INSTALL_PATH}/$<TARGET_FILE_NAME:cudart>.3\)")
112+
install(CODE "execute_process\(\
113+
COMMAND ${CMAKE_COMMAND} -E create_symlink \
114+
${GPGPUSIM_INSTALL_PATH}/$<TARGET_FILE_NAME:cudart> \
115+
${GPGPUSIM_INSTALL_PATH}/$<TARGET_FILE_NAME:cudart>.4\)")
116+
install(CODE "execute_process\(\
117+
COMMAND ${CMAKE_COMMAND} -E create_symlink \
118+
${GPGPUSIM_INSTALL_PATH}/$<TARGET_FILE_NAME:cudart> \
119+
${GPGPUSIM_INSTALL_PATH}/$<TARGET_FILE_NAME:cudart>.5.0\)")
120+
install(CODE "execute_process\(\
121+
COMMAND ${CMAKE_COMMAND} -E create_symlink \
122+
${GPGPUSIM_INSTALL_PATH}/$<TARGET_FILE_NAME:cudart> \
123+
${GPGPUSIM_INSTALL_PATH}/$<TARGET_FILE_NAME:cudart>.5.5\)")
124+
install(CODE "execute_process\(\
125+
COMMAND ${CMAKE_COMMAND} -E create_symlink \
126+
${GPGPUSIM_INSTALL_PATH}/$<TARGET_FILE_NAME:cudart> \
127+
${GPGPUSIM_INSTALL_PATH}/$<TARGET_FILE_NAME:cudart>.6.0\)")
128+
install(CODE "execute_process\(\
129+
COMMAND ${CMAKE_COMMAND} -E create_symlink \
130+
${GPGPUSIM_INSTALL_PATH}/$<TARGET_FILE_NAME:cudart> \
131+
${GPGPUSIM_INSTALL_PATH}/$<TARGET_FILE_NAME:cudart>.6.5\)")
132+
install(CODE "execute_process\(\
133+
COMMAND ${CMAKE_COMMAND} -E create_symlink \
134+
${GPGPUSIM_INSTALL_PATH}/$<TARGET_FILE_NAME:cudart> \
135+
${GPGPUSIM_INSTALL_PATH}/$<TARGET_FILE_NAME:cudart>.7.0\)")
136+
install(CODE "execute_process\(\
137+
COMMAND ${CMAKE_COMMAND} -E create_symlink \
138+
${GPGPUSIM_INSTALL_PATH}/$<TARGET_FILE_NAME:cudart> \
139+
${GPGPUSIM_INSTALL_PATH}/$<TARGET_FILE_NAME:cudart>.7.5\)")
140+
install(CODE "execute_process\(\
141+
COMMAND ${CMAKE_COMMAND} -E create_symlink \
142+
${GPGPUSIM_INSTALL_PATH}/$<TARGET_FILE_NAME:cudart> \
143+
${GPGPUSIM_INSTALL_PATH}/$<TARGET_FILE_NAME:cudart>.8.0\)")
144+
install(CODE "execute_process\(\
145+
COMMAND ${CMAKE_COMMAND} -E create_symlink \
146+
${GPGPUSIM_INSTALL_PATH}/$<TARGET_FILE_NAME:cudart> \
147+
${GPGPUSIM_INSTALL_PATH}/$<TARGET_FILE_NAME:cudart>.9.0\)")
148+
install(CODE "execute_process\(\
149+
COMMAND ${CMAKE_COMMAND} -E create_symlink \
150+
${GPGPUSIM_INSTALL_PATH}/$<TARGET_FILE_NAME:cudart> \
151+
${GPGPUSIM_INSTALL_PATH}/$<TARGET_FILE_NAME:cudart>.9.1\)")
152+
install(CODE "execute_process\(\
153+
COMMAND ${CMAKE_COMMAND} -E create_symlink \
154+
${GPGPUSIM_INSTALL_PATH}/$<TARGET_FILE_NAME:cudart> \
155+
${GPGPUSIM_INSTALL_PATH}/$<TARGET_FILE_NAME:cudart>.9.2\)")
156+
install(CODE "execute_process\(\
157+
COMMAND ${CMAKE_COMMAND} -E create_symlink \
158+
${GPGPUSIM_INSTALL_PATH}/$<TARGET_FILE_NAME:cudart> \
159+
${GPGPUSIM_INSTALL_PATH}/$<TARGET_FILE_NAME:cudart>.10.0\)")
160+
install(CODE "execute_process\(\
161+
COMMAND ${CMAKE_COMMAND} -E create_symlink \
162+
${GPGPUSIM_INSTALL_PATH}/$<TARGET_FILE_NAME:cudart> \
163+
${GPGPUSIM_INSTALL_PATH}/$<TARGET_FILE_NAME:cudart>.10.1\)")
164+
install(CODE "execute_process\(\
165+
COMMAND ${CMAKE_COMMAND} -E create_symlink \
166+
${GPGPUSIM_INSTALL_PATH}/$<TARGET_FILE_NAME:cudart> \
167+
${GPGPUSIM_INSTALL_PATH}/$<TARGET_FILE_NAME:cudart>.11.0\)")

gpgpusim_check.cmake

+136
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,136 @@
1+
# Dependency checking
2+
# Unset FindCUDA variables so that it
3+
# gets reconfigured
4+
include(gpgpusim_unset_cuda.cmake)
5+
6+
find_package(Git REQUIRED)
7+
find_package(BISON REQUIRED)
8+
find_package(FLEX REQUIRED)
9+
find_package(ZLIB REQUIRED)
10+
find_package(CUDAToolkit REQUIRED)
11+
find_package(Doxygen)
12+
find_package(Python3)
13+
14+
# GPGPU-Sim additional checking and info
15+
message(CHECK_START "Additional settings for ${CMAKE_PROJECT_NAME}")
16+
list(APPEND CMAKE_MESSAGE_INDENT " ")
17+
18+
# Check for OS
19+
message(CHECK_START "Checking for OS")
20+
if((NOT APPLE) AND (NOT UNIX) AND (NOT LINUX))
21+
message(FATAL_ERROR "${CMAKE_SYSTEM_NAME} not supported")
22+
else()
23+
message(CHECK_PASS ${CMAKE_SYSTEM_NAME})
24+
endif()
25+
26+
# Check for version
27+
message(CHECK_START "Checking GPGPU-Sim version")
28+
message(CHECK_PASS "${CMAKE_PROJECT_VERSION}")
29+
30+
# Check for git commit hash
31+
message(CHECK_START "Checking git commit hash")
32+
# Get the latest abbreviated commit hash of the working branch
33+
execute_process(
34+
COMMAND git log -1 --format=%H
35+
WORKING_DIRECTORY ${CMAKE_CURRENT_LIST_DIR}
36+
OUTPUT_VARIABLE GPGPUSIM_CONFIG_GIT_HASH
37+
OUTPUT_STRIP_TRAILING_WHITESPACE
38+
RESULT_VARIABLE GPGPUSIM_CHECK_GIT_HASH
39+
)
40+
if(${GPGPUSIM_CHECK_GIT_HASH})
41+
message(CHECK_FAIL "not a git repo")
42+
else()
43+
message(CHECK_PASS "${GPGPUSIM_CONFIG_GIT_HASH}")
44+
endif()
45+
46+
# Check for compiler and version
47+
message(CHECK_START "Checking CXX compiler")
48+
if(NOT (${CMAKE_CXX_COMPILER_ID} STREQUAL GNU))
49+
message(CHECK_FAIL "GPGPU-Sim only tested with GCC: ${CMAKE_CXX_COMPILER_ID}")
50+
else()
51+
message(CHECK_PASS "${CMAKE_CXX_COMPILER}")
52+
endif()
53+
message(CHECK_START "Checking CXX compiler version")
54+
message(CHECK_PASS "${CMAKE_CXX_COMPILER_VERSION}")
55+
set(GPGPSIM_CC_VERSION )
56+
57+
# Check for CUDA nvcc and version
58+
# Check already done with find_package, here just to display the path and version
59+
message(CHECK_START "Checking CUDA compiler")
60+
if(NOT CUDAToolkit_FOUND)
61+
message(CHECK_FAIL "not found")
62+
else()
63+
message(CHECK_PASS "${CUDAToolkit_NVCC_EXECUTABLE}")
64+
message(CHECK_START "Checking CUDA compiler version")
65+
message(CHECK_PASS "${CUDAToolkit_VERSION}")
66+
if((CUDAToolkit_VERSION VERSION_LESS 2.0.3) OR (CUDAToolkit_VERSION VERSION_GREATER 11.10.0))
67+
message(FATAL_ERROR "GPGPU-Sim ${CMAKE_PROJECT_VERSION} not tested with CUDA version ${CUDAToolkit_VERSION} (please see README)")
68+
endif()
69+
endif()
70+
71+
# Check for Power model
72+
# TODO How to configure the project to look for it?
73+
message(CHECK_START "Checking for GPGPU-Sim power model")
74+
if(IS_DIRECTORY ${PROJECT_SOURCE_DIR}/src/accelwattch)
75+
if(NOT EXISTS ${PROJECT_SOURCE_DIR}/src/accelwattch/gpgpu_sim.verify)
76+
message(FATAL_ERROR "gpgpu_sim.verify not found in ${PROJECT_SOURCE_DIR}/src/accelwattch/")
77+
endif()
78+
message(CHECK_PASS "${PROJECT_SOURCE_DIR}/src/accelwattch/")
79+
set(GPGPUSIM_USE_POWER_MODEL True)
80+
set(GPGPUSIM_POWER_MODEL ${PROJECT_SOURCE_DIR}/src/accelwattch)
81+
elseif(DEFINED ${GPGPUSIM_POWER_MODEL})
82+
if(NOT EXISTS ${GPGPUSIM_POWER_MODEL}/gpgpu_sim.verify)
83+
message(FATAL_ERROR "gpgpu_sim.verify not found in ${GPGPUSIM_POWER_MODEL} - Either incorrect directory or incorrect McPAT version")
84+
endif()
85+
message(CHECK_PASS "${GPGPUSIM_POWER_MODEL}")
86+
set(GPGPUSIM_USE_POWER_MODEL True)
87+
else()
88+
message(CHECK_PASS "configured without a power model")
89+
endif()
90+
91+
# Set Build path
92+
# Get CUDA version
93+
set(CUDA_VERSION_STRING "${CUDAToolkit_VERSION_MAJOR}.${CUDAToolkit_VERSION_MINOR}")
94+
# execute_process(
95+
# COMMAND ${CUDAToolkit_NVCC_EXECUTABLE} --version
96+
# COMMAND awk "/release/ {print $5;}"
97+
# COMMAND sed "s/,//"
98+
# WORKING_DIRECTORY ${CMAKE_CURRENT_LIST_DIR}
99+
# OUTPUT_VARIABLE CUDA_VERSION_STRING
100+
# OUTPUT_STRIP_TRAILING_WHITESPACE
101+
# )
102+
103+
# CMake cannot do formatted string output, so we just use the good old `awk`
104+
# math(EXPR CUDA_VERSION_NUMBER_MAJOR "${CUDAToolkit_VERSION_MAJOR} * 10")
105+
# math(EXPR CUDA_VERSION_NUMBER_MINOR "${CUDAToolkit_VERSION_MINOR} * 10")
106+
# set(CUDA_VERSION_NUMBER "${CUDA_VERSION_NUMBER_MAJOR}${CUDA_VERSION_NUMBER_MINOR}")
107+
execute_process(
108+
COMMAND echo ${CUDA_VERSION_STRING}
109+
COMMAND sed "s/\\./ /"
110+
COMMAND awk "{printf(\"%02u%02u\", 10*int($1), 10*$2);}"
111+
WORKING_DIRECTORY ${CMAKE_CURRENT_LIST_DIR}
112+
OUTPUT_VARIABLE CUDA_VERSION_NUMBER
113+
OUTPUT_STRIP_TRAILING_WHITESPACE
114+
)
115+
116+
# Get debug or release
117+
# Set with -DCMAKE_BUILD_TYPE=Debug|Release to change build type
118+
message(CHECK_START "Checking for CMAKE_BUILD_TYPE")
119+
if(NOT CMAKE_BUILD_TYPE)
120+
set(CMAKE_BUILD_TYPE Release)
121+
set(GPGPUSIM_BUILD_MODE "release" CACHE STRING "" FORCE)
122+
else()
123+
string(TOLOWER "${CMAKE_BUILD_TYPE}" GPGPUSIM_BUILD_MODE)
124+
set(CMAKE_BUILD_TYPE Debug)
125+
endif()
126+
message(CHECK_PASS "${CMAKE_BUILD_TYPE}")
127+
# TODO: Make this step an installation phase that handle copying so and creating symlinks
128+
message(STATUS "Setting binary directory to ${CMAKE_BINARY_DIR}")
129+
130+
# TODO OpenCL check/support?
131+
132+
list(POP_BACK CMAKE_MESSAGE_INDENT)
133+
message(CHECK_PASS "done")
134+
message(STATUS "Be sure to run 'source setup' "
135+
"before you run CUDA program with GPGPU-Sim or building with external "
136+
"simulator like SST")

0 commit comments

Comments
 (0)