@@ -8,11 +8,58 @@ set(CMAKE_CXX_STANDARD 17) # C++ 17
88set (CMAKE_CXX_STANDARD_REQUIRED True )
99
1010if (CMAKE_SYSTEM_NAME STREQUAL "Linux" ) # Settings for Linux
11- set (CMAKE_C_COMPLIER "gcc" ) # Settings for gcc (you may use clang)
12- set (CMAKE_CXX_FLAGS_DEBUG "-g" )
13- set (CMAKE_CXX_FLAGS_RELEASE "-O3" )
11+ message (STATUS "OS : Linux" )
12+ if (CMAKE_CXX_COMPILER_ID STREQUAL "GNU" )
13+ message (STATUS "C++ Compiler : gcc" )
14+ set (CMAKE_C_COMPLIER "gcc" )
15+ set (CMAKE_CXX_FLAGS_DEBUG "-g" )
16+ set (CMAKE_CXX_FLAGS_RELEASE "-O3" )
17+ elseif (CMAKE_CXX_COMPILER_ID STREQUAL "Clang" )
18+ message (STATUS "C++ Compiler : clang" )
19+ # ...
20+ elseif (CMAKE_CXX_COMPILER_ID STREQUAL "Intel" )
21+ message (STATUS "C++ Compiler : Intel" )
22+ # ...
23+ elseif (CMAKE_CXX_COMPILER_ID STREQUAL "PGI" )
24+ message (STATUS "C++ Compiler : PGI (NVIDIA)" )
25+ # ...
26+ elseif (CMAKE_CXX_COMPILER_ID STREQUAL "XL" )
27+ message (STATUS "C++ Compiler : IBM XL" )
28+ # ...
29+ elseif (CMAKE_CXX_COMPILER_ID STREQUAL "Cray" )
30+ message (STATUS "C++ Compiler : Cray" )
31+ # ...
32+ else ()
33+ message (STATUS "Using an unknown compiler" )
34+ endif ()
1435elseif (CMAKE_SYSTEM_NAME STREQUAL "Windows" )
15- # ...
36+ message (STATUS "OS : Windows" )
37+ if (CMAKE_CXX_COMPILER_ID STREQUAL "GNU" )
38+ message (STATUS "C++ Compiler : gcc" )
39+ # ...
40+ elseif (CMAKE_CXX_COMPILER_ID STREQUAL "Clang" )
41+ message (STATUS "C++ Compiler : clang" )
42+ # ...
43+ elseif (CMAKE_CXX_COMPILER_ID STREQUAL "MSVC" )
44+ message (STATUS "C++ Compiler : Visual C++" )
45+ # ...
46+ elseif (CMAKE_CXX_COMPILER_ID STREQUAL "Embarcadero" )
47+ message (STATUS "C++ Compiler : C++ Builder (Embarcadero)" )
48+ # ...
49+ else ()
50+ message (STATUS "Using an unknown compiler" )
51+ endif ()
52+ elseif (CMAKE_SYSTEM_NAME STREQUAL "Darwin" )
53+ message (STATUS "OS : macOS" )
54+ # ...
55+ elseif (CMAKE_SYSTEM_NAME STREQUAL "AIX" )
56+ message (STATUS "OS : IBM AIX" )
57+ # ...
58+ elseif (CMAKE_SYSTEM_NAME STREQUAL "HP-UX" )
59+ message (STATUS "OS : HP Unix" )
60+ # ...
61+ else ()
62+ message (STATUS "Using an unknown OS" )
1663endif ()
1764
1865set (CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} /build )
@@ -21,19 +68,27 @@ file(GLOB SOURCE_FILES CONFIGURE_DEPENDS
2168 ${CMAKE_CURRENT_SOURCE_DIR} /*.cpp
2269)
2370
24- add_executable (${EXE} ${SOURCE_FILES} )
71+ add_executable (${EXE} ${SOURCE_FILES} )
2572
26- target_include_directories ( ${EXE} PUBLIC
27- # /hello/inc1
28- # /hello/inc2
73+ # TODO: Set include(*.h) directory
74+ target_include_directories ( ${EXE} PUBLIC
75+ # ${CMAKE_SOURCE_DIR}/include
2976 # $ENV{HELLO_ROOT}/inc
77+ # /hello/inc2
3078)
3179
32- target_link_directories ( ${EXE} PRIVATE
33- # /hello/lib
80+ # TODO: Set link directory
81+ target_link_directories ( ${EXE} PRIVATE
3482 # $ENV{HELLO_ROOT}/lib
83+ # /hello/lib2
3584)
3685
86+ # TODO: Set link library(*.so,*.a)
87+ target_link_libraries (${EXE} PUBLIC
88+ # libHello2.so
89+ # ${CMAKE_SOURCE_DIR}/lib/hello3.a
90+ # /hello2/lib/test.a
91+ )
3792
3893
3994
0 commit comments