From 2af6f2f6c2ffa13ecdf3dd221276dc9ef21a170e Mon Sep 17 00:00:00 2001 From: Saleem Abdulrasool Date: Sun, 24 Dec 2023 19:43:18 -0800 Subject: [PATCH] build: add CMake based build system GYP has been replaced with GN for Chromium. Migrate to CMake rather than GN as it is simpler. This allows building for Windows ARM64 as well. --- CMakeLists.txt | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 CMakeLists.txt diff --git a/CMakeLists.txt b/CMakeLists.txt new file mode 100644 index 00000000..3a5dc7d4 --- /dev/null +++ b/CMakeLists.txt @@ -0,0 +1,26 @@ + +cmake_minimum_required(VERSION 3.20) + +project(WinPTY + VERSION 0.4.4 + LANGUAGES CXX) + +# Output Locations +set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib) +set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib) +set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin) + +# Global Macros +add_compile_definitions(UNICODE) +add_compile_definitions(_UNICODE) +add_compile_definitions(NOMINMAX) + +execute_process(COMMAND git rev-parse HEAD + WORKING_DIRECTORY ${PROJECT_SOURCE_DIR} + OUTPUT_VARIABLE GIT_REVISION + OUTPUT_STRIP_TRAILING_WHITESPACE) +if(NOT GIT_REVISION) + set(GIT_REVISION none) +endif() + +add_subdirectory(src)