CMake: add macro fl_debug_var to debug variables.

Some debug messages are included, but currently disabled.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12658 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
This commit is contained in:
Albrecht Schlosser 2018-02-09 20:51:15 +00:00
parent 0012debf37
commit c7b5d61eb0
3 changed files with 63 additions and 13 deletions

View File

@ -1,10 +1,10 @@
#
# "$Id$"
#
# macros.cmake defines macros used by the CMake build system
# Macros used by the CMake build system for the Fast Light Tool Kit (FLTK).
# Written by Michael Surette
#
# Copyright 1998-2017 by Bill Spitzak and others.
# Copyright 1998-2018 by Bill Spitzak and others.
#
# This library is free software. Distribution and use rights are outlined in
# the file "COPYING" which should have been included with this file. If this
@ -17,6 +17,34 @@
# http://www.fltk.org/str.php
#
#######################################################################
# macros used for debugging purposes
#######################################################################
# This macro displays the name and value of a CMake variable.
# The variable name is expanded with spaces to be (at least)
# <min_len> (currently 24) characters wide for better readability.
# VARNAME must be a string literal, e.g. WIN32 or "WIN32".
#
# Syntax:
# fl_debug_var(VARNAME)
#
# Example:
# fl_debug_var(WIN32)
# fl_debug_var("UNIX")
#
macro (fl_debug_var name)
set (min_len 24)
set (var "${name}")
string(LENGTH "${var}" len)
while (len LESS min_len)
string(APPEND var " ")
string(LENGTH "${var}" len)
endwhile (len LESS min_len)
message (STATUS "${var} = '${${name}}'")
endmacro (fl_debug_var)
#######################################################################
# macros used by the build system
#######################################################################

View File

@ -243,20 +243,18 @@ else (OPTION_USE_THREADS)
endif (OPTION_USE_THREADS)
set(debug_threads FALSE) # set to true to show debug info
set (debug_threads 0) # set to 1 to show debug info
if (debug_threads)
message ("")
message (STATUS "NOTE: set debug_threads to FALSE to disable this info!")
message (STATUS "WIN32 = '${WIN32}'")
message (STATUS "MINGW = '${MINGW}'")
message (STATUS "CYGWIN = '${CYGWIN}'")
message (STATUS "OPTION_USE_THREADS = '${OPTION_USE_THREADS}'")
message (STATUS "HAVE_PTHREAD = '${HAVE_PTHREAD}'")
message (STATUS "HAVE_PTHREAD_H = '${HAVE_PTHREAD_H}'")
message (STATUS "FLTK_THREADS_FOUND = '${FLTK_THREADS_FOUND}'")
message (STATUS "CMAKE_EXE_LINKER_FLAGS = '${CMAKE_EXE_LINKER_FLAGS}'")
message (STATUS "options.cmake: set debug_threads to 0 to disable the following info:")
fl_debug_var(OPTION_USE_THREADS)
fl_debug_var(HAVE_PTHREAD)
fl_debug_var(HAVE_PTHREAD_H)
fl_debug_var(FLTK_THREADS_FOUND)
fl_debug_var(CMAKE_EXE_LINKER_FLAGS)
message (STATUS "options.cmake: end of debug_threads info.")
endif (debug_threads)
unset(debug_threads)
unset (debug_threads)
#######################################################################
option(OPTION_LARGE_FILE "enable large file support" ON)

View File

@ -44,6 +44,30 @@ include(CMake/resources.cmake)
#######################################################################
include(CMake/options.cmake)
#######################################################################
# print (debug) several build variables and options
#######################################################################
set (debug_build 0) # set to 1 to show debug info
if (debug_build)
message ("")
message (STATUS "${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt: set debug_build to 0 to disable the following info:")
fl_debug_var(WIN32)
fl_debug_var(MINGW)
fl_debug_var(CYGWIN)
fl_debug_var(MSVC)
fl_debug_var(UNIX)
fl_debug_var(APPLE)
fl_debug_var(CMAKE_BUILD_TYPE)
fl_debug_var(CMAKE_SIZEOF_VOID_P)
fl_debug_var(OPTION_OPTIM)
fl_debug_var(CMAKE_C_FLAGS)
fl_debug_var(CMAKE_CXX_FLAGS)
fl_debug_var(CMAKE_EXE_LINKER_FLAGS)
message (STATUS "${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt: end of debug_build info.")
endif (debug_build)
unset (debug_build)
#######################################################################
# variables shared by export and install
# export.cmake creates configuration files for direct use in a built but uninstalled FLTK