This repository has been archived on 2021-04-22. You can view files and clone it, but cannot push or open issues/pull-requests.
stj/src/CMakeLists.txt

45 lines
1.3 KiB
CMake
Raw Normal View History

2020-11-05 17:02:06 +01:00
cmake_minimum_required(VERSION 3.0)
2020-11-05 18:21:52 +01:00
# Use Release as default type
if (NOT CMAKE_BUILD_TYPE)
set(CMAKE_BUILD_TYPE Release)
endif()
# Set Compiler
2020-11-05 17:49:05 +01:00
set(CMAKE_C_COMPILER "clang-10")
2020-11-05 17:02:06 +01:00
set(CMAKE_EXPORT_COMPILE_COMMANDS ON)
project(stj VERSION 0.1)
2020-11-05 18:21:52 +01:00
# List all files needed in final binary
2020-11-05 17:02:06 +01:00
file(GLOB st_SRC "st/*.c" "st/*.h")
file(GLOB main_SRC "*.c" "*.h")
add_executable(stj x.c "${st_SRC}" "${main_SRC}")
2020-11-05 18:21:52 +01:00
# Set the standard to C11
set_property(TARGET stj PROPERTY C_STANDARD 11)
2020-11-05 17:02:06 +01:00
2020-11-05 18:21:52 +01:00
# Find required packages
2020-11-05 17:02:06 +01:00
find_package(Freetype 2 REQUIRED)
target_include_directories(stj PRIVATE "${FREETYPE_INCLUDE_DIRS}")
target_link_libraries(stj PRIVATE "${FREETYPE_LIBRARIES}")
find_package(Fontconfig REQUIRED)
target_include_directories(stj PRIVATE "${Fontconfig_INCLUDE_DIRS}")
target_link_libraries(stj PRIVATE "${Fontconfig_LIBRARIES}")
find_package(X11 REQUIRED)
target_include_directories(stj PRIVATE "${X11_INCLUDE_DIR}")
target_link_libraries(stj PRIVATE "${X11_LIBRARIES}")
# Needed to work; copied from original Makefile
target_link_libraries(stj PRIVATE m)
target_link_libraries(stj PRIVATE rt)
target_link_libraries(stj PRIVATE util)
target_link_libraries(stj PRIVATE Xft)
target_link_libraries(stj PRIVATE Xrender)
# Add version as flag
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -DVERSION=\"${CMAKE_PROJECT_VERSION}\"")