-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathCMakeLists.txt
30 lines (22 loc) · 943 Bytes
/
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
28
29
cmake_minimum_required(VERSION 3.5 FATAL_ERROR)
project(NAOFS C)
#set(CMAKE_C_FLAGS "-pg -D_FILE_OFFSET_BITS=64 -lulockmgr")
#set(CMAKE_C_FLAGS "-mcmodel=large")
set(CMAKE_EXPORT_COMPILE_COMMANDS ON)
find_package(PkgConfig REQUIRED)
# find_package(fuse3 REQUIRED CONFIG)
pkg_check_modules(FUSE REQUIRED IMPORTED_TARGET fuse3)
set(PROJECT_SOURCE_DIRECTORY "${CMAKE_SOURCE_DIR}/src")
set(PROJECT_INCLUDE_DIRECTORY "${CMAKE_SOURCE_DIR}/include")
add_subdirectory(src/dsk)
add_subdirectory(src/fdTable)
add_subdirectory(src/incoreInodeOps)
add_subdirectory(src/inode)
add_subdirectory(src/interface)
add_subdirectory(src/mandsk)
add_subdirectory(src/mkfs)
add_subdirectory(src/trav)
add_subdirectory(src/utils)
add_executable(naofs "src/main.c")
target_include_directories(naofs PUBLIC ${PROJECT_INCLUDE_DIRECTORY})
target_link_libraries(naofs PUBLIC PkgConfig::FUSE diskAccess incoreInodeOps inode interface mandsk diskStruct trav utils)