basic-vcs/CMakeLists.txt

40 lines
1.1 KiB
CMake

cmake_minimum_required(VERSION 4.1)
project(basic-vcs)
add_definitions(-DMINIZ=1)
set(CMAKE_CXX_STANDARD 23)
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_SOURCE_DIR}/bin)
add_executable(basic-vcs src/main.cpp
include/sha1.hpp
include/init.h
include/cat-file.h
include/commands.h
include/ls-tree.h
include/write-tree.h
src/commands/cat-file.cpp
src/commands/init.cpp
src/commands/ls-tree.cpp
src/commands/write-tree.cpp
src/commands/hash-object.cpp
include/hash-object.h
src/commands/commit-tree.cpp
include/commit-tree.h
include/commit-tree.h
src/miniz.c
include/miniz.h
src/tz.cpp)
target_link_libraries(basic-vcs PRIVATE )
target_include_directories(basic-vcs PRIVATE include)
if(CMAKE_SYSTEM_NAME STREQUAL "Windows")
set_property(GLOBAL PROPERTY USE_FOLDERS ON)
set_property(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} PROPERTY VS_STARTUP_PROJECT basic-vcs)
elseif(CMAKE_SYSTEM_NAME STREQUAL "Linux")
target_link_libraries(basic-vcs PRIVATE curl)
endif()