From b85478d64b2f9db63e8c9af94ad9b9ee0e40f3f7 Mon Sep 17 00:00:00 2001
From: fluttershy <a@a.a>
Date: Mon, 20 Jan 2025 15:12:57 +0500
Subject: [PATCH] compiler

---
 CMakeLists.txt | 19 +++++++++++++++++--
 1 file changed, 17 insertions(+), 2 deletions(-)

diff --git a/CMakeLists.txt b/CMakeLists.txt
index 5e774c1..1c554fb 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -8,11 +8,27 @@ set(SOURCE sources/main.cpp)
 set(LIBS ${CMAKE_SOURCE_DIR}/libs/)
 set(INCLUDE ${CMAKE_SOURCE_DIR}/include/)
 set(TESTS ${CMAKE_SOURCE_DIR}/tests)
+set(CMAKE_C_COMPILER "clang")
+set(CMAKE_CXX_COMPILER "clang++")
 
+find_program(CMAKE_C_COMPILER clang)
+find_program(CLANG_CXX_COMPILER clang++)
 find_package(CURL REQUIRED)
 find_path(IXWEBSOCKET_INCLUDE_DIR ixwebsocket)
 find_library(IXWEBSOCKET_LIBRARIES ixwebsocket)
 
+if(NOT CMAKE_C_COMPILER OR NOT CLANG_CXX_COMPILER)
+    message(STATUS "clang not found")
+    set(CMAKE_C_COMPILER "gcc")
+    set(CMAKE_CXX_COMPILER "g++")
+    find_program(CMAKE_C_COMPILER clang)
+    find_program(CLANG_CXX_COMPILER clang++)
+    if(NOT CMAKE_C_COMPILER OR NOT CLANG_CXX_COMPILER)
+    message(FATAL_ERROR "gcc not found")
+    endif()
+endif()
+message(STATUS "current compiler: ${CMAKE_C_COMPILER}")
+
 if(NOT IXWEBSOCKET_INCLUDE_DIR OR NOT IXWEBSOCKET_LIBRARIES)
     message(FATAL_ERROR "ixwebsocket not found")
 endif()
@@ -60,5 +76,4 @@ target_link_libraries(${PROJECT_NAME} PRIVATE
 
 set(CMAKE_CXX_STANDARD 20)
 set(CMAKE_CXX_STANDARD_REQUIRED True)
-set(CMAKE_CXX_FLAGS "-march=native -O2 -pipe")
-#set(CMAKE_CXX_FLAGS "-O0 -pipe")
\ No newline at end of file
+set(CMAKE_CXX_FLAGS "-march=native -O2 -pipe")
\ No newline at end of file