wmfs/CMakeLists.txt
Marc Lagrange 00a3e7ff76 [CMake] Add comment for CPack, need to configure it for the moment
Signed-off-by: Marc Lagrange <markocpc@gmail.com>
2008-08-11 03:35:05 +02:00

82 lines
2.0 KiB
CMake

#CMakeLists.txt
# Minimum version of CMake
cmake_minimum_required(VERSION 2.6)
if(COMMAND cmake_policy)
cmake_policy(VERSION 2.6)
endif()
# Source dir
set(SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR})
set(BUILD_DIR ${CMAKE_CURRENT_BINARY_DIR})
# Project name - wmfs
project(wmfs C)
# Definition of the wmfs source
set(wmfs_src
wmfs.c
config.c)
# Set the executable from the wmfs_src
add_executable(wmfs ${wmfs_src})
# Set the version - NOT USED AT THE MOMENT
set(VERSION wmfs-devel)
# CFLAGS
set(CFLAGS "-g -Wall")
set(CMAKE_C_FLAGS ${CFLAGS})
# Link Libraries
set(LIBRARIES_TO_LINK
X11
confuse)
target_link_libraries(wmfs ${LIBRARIES_TO_LINK})
# Messages
message("Project version : ${VERSION}")
message("Using these CFLAGS : ${CFLAGS}")
message("Linking with theses libraries : ${LIBRARIES_TO_LINK}")
# Includes
include(FindPkgConfig)
#include(CPack) # need to configure it for packaging
# Use pkgconfig to get required libraries
pkg_check_modules(wmfs_required
x11
xcb
libconfuse)
# Find exterbal programs
find_program(GIT_EXECUTABLE git)
# Remplace strings in configs
set(WMFS_VERSION ${VERSION})
set(WMFS_COMPILE_MACHINE ${CMAKE_SYSTEM_PROCESSOR})
set(WMFS_COMPILE_BY $ENV{USER})
set(WMFS_COMPILE_FLAGS ${CFLAGS})
set(WMFS_LINKED_LIBS ${LIBRARIES_TO_LINK})
# Configure files
set(wmfs_configure_files
config.h.in)
macro(a_configure_file file)
string(REGEX REPLACE ".in\$" "" outfile ${file})
message(STATUS "Configuring ${outfile}")
configure_file(${SOURCE_DIR}/${file}
${BUILD_DIR}/${outfile}
ESCAPE_QUOTE
@ONLY)
endmacro()
foreach(file ${wmfs_configure_files})
a_configure_file(${file})
endforeach()
# Generating CHANGELOG
if(EXISTS ${SOURCE_DIR}/.git/HEAD AND GIT_EXECUTABLE)
# generate
execute_process(
COMMAND ${GIT_EXECUTABLE} log
WORKING_DIRECTORY ${SOURCE_DIR}
#COMMENT "Generating CHANGELOG"
OUTPUT_VARIABLE WMFS_CHANGELOG
)
set(CHANGELOG_FILE ${SOURCE_DIR}/CHANGELOG)
file(WRITE ${CHANGELOG_FILE} ${WMFS_CHANGELOG})
endif()