-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathCMakeLists.txt
27 lines (25 loc) · 1.22 KB
/
CMakeLists.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
cmake_minimum_required(VERSION 3.24)
project(operating_system)
# 下面的语句定义编译哪个目录
set(Class 5) # 1: JobSchedule 2: ProcessSchedule 0: demo 3: FirstFit 4: BestFit 5: PagingStorage
if (Class EQUAL 1)
set(CMAKE_CXX_STANDARD 17)
add_executable(operating_system src/JobSchedule/job_schedule.cpp src/JobSchedule/job_schedule.h
src/JobSchedule/main.cpp src/JobSchedule/some_job.cpp src/JobSchedule/some_job.h)
elseif (Class EQUAL 2)
set(CMAKE_CXX_STANDARD 17)
add_executable(operating_system src/ProcessSchedule/process_schedule.cpp src/ProcessSchedule/process_schedule.h
src/ProcessSchedule/main.cpp src/ProcessSchedule/some_process.cpp src/ProcessSchedule/some_process.h)
elseif (Class EQUAL 0)
set(CMAKE_CXX_STANDARD 17)
add_executable(operating_system demo.cpp src/FirstFit/main.c)
elseif (Class EQUAL 3)
set(CMAKE_C_STANDARD 11)
add_executable(operating_system src/FirstFit/main.c)
elseif (Class EQUAL 4)
set(CMAKE_C_STANDARD 11)
add_executable(operating_system src/BestFit/main.c)
elseif (Class EQUAL 5)
set(CMAKE_CXX_STANDARD 17)
add_executable(operating_system src/PagingStorage/main.cpp src/PagingStorage/page.cpp src/PagingStorage/page.h)
endif ()