Upcoming changes to introduce `cmake-format` checks default to this, which suits
Graphviz well as it matches the (claimed) `clang-format` C/C++ style.
include(FindPackageHandleStandardArgs)
if(WIN32)
find_package_handle_standard_args(ANN DEFAULT_MSG
- ANN_LIBRARY ANN_INCLUDE_DIR ANN_RUNTIME_LIBRARY)
+ ANN_LIBRARY ANN_INCLUDE_DIR
+ ANN_RUNTIME_LIBRARY)
else()
find_package_handle_standard_args(ANN DEFAULT_MSG
ANN_LIBRARY ANN_INCLUDE_DIR)
find_program(CAIRO_RUNTIME_LIBRARY NAMES cairo.dll libcairo-2.dll)
find_program(EXPAT_RUNTIME_LIBRARY NAMES expat.dll libexpat-1.dll)
- find_program(FONTCONFIG_RUNTIME_LIBRARY NAMES fontconfig.dll libfontconfig-1.dll)
+ find_program(FONTCONFIG_RUNTIME_LIBRARY
+ NAMES fontconfig.dll libfontconfig-1.dll)
find_program(PIXMAN_RUNTIME_LIBRARY NAMES pixman-1.dll libpixman-1-0.dll)
find_package_handle_standard_args(CAIRO DEFAULT_MSG
include(FindPackageHandleStandardArgs)
if(WIN32)
find_package_handle_standard_args(GD DEFAULT_MSG
- GD_LIBRARY GD_INCLUDE_DIR GD_RUNTIME_LIBRARY)
+ GD_LIBRARY GD_INCLUDE_DIR
+ GD_RUNTIME_LIBRARY)
else()
find_package_handle_standard_args(GD DEFAULT_MSG
GD_LIBRARY GD_INCLUDE_DIR)
-# CMake does not allow for braces in $ENV{}, so a temporary variable must be used.
+# CMake does not allow for braces in $ENV{}, so a temporary variable must be
+# used.
set(PROGRAMFILES_X86 "ProgramFiles(x86)")
find_program(NSIS_MAKE
if(WIN32)
find_path(PANGOCAIRO_INCLUDE_DIR pango/pangocairo.h PATH_SUFFIXES pango-1.0)
find_path(GLIB_INCLUDE_DIR glib.h PATH_SUFFIXES glib-2.0)
- find_path(GLIBCONFIG_INCLUDE_DIR glibconfig.h PATH_SUFFIXES glib-2.0/include lib/glib-2.0/include)
+ find_path(GLIBCONFIG_INCLUDE_DIR glibconfig.h
+ PATH_SUFFIXES glib-2.0/include lib/glib-2.0/include)
find_path(HARFBUZZ_INCLUDE_DIR hb.h PATH_SUFFIXES harfbuzz)
find_library(GLIB_LIBRARY NAMES glib-2.0)
find_program(GOBJECT_RUNTIME_LIBRARY NAMES gobject-2.dll libgobject-2.0-0.dll)
find_program(HARFBUZZ_RUNTIME_LIBRARY NAMES libharfbuzz-0.dll)
find_program(PANGO_RUNTIME_LIBRARY NAMES pango-1.dll libpango-1.0-0.dll)
- find_program(PANGOCAIRO_RUNTIME_LIBRARY NAMES pangocairo-1.dll libpangocairo-1.0-0.dll)
- find_program(PANGOFT_RUNTIME_LIBRARY NAMES pangoft2-1.dll libpangoft2-1.0-0.dll)
- find_program(PANGOWIN_RUNTIME_LIBRARY NAMES pangowin32-1.dll libpangowin32-1.0-0.dll)
+ find_program(PANGOCAIRO_RUNTIME_LIBRARY
+ NAMES pangocairo-1.dll libpangocairo-1.0-0.dll)
+ find_program(PANGOFT_RUNTIME_LIBRARY
+ NAMES pangoft2-1.dll libpangoft2-1.0-0.dll)
+ find_program(PANGOWIN_RUNTIME_LIBRARY
+ NAMES pangowin32-1.dll libpangowin32-1.0-0.dll)
find_package_handle_standard_args(PANGOCAIRO DEFAULT_MSG
GLIB_INCLUDE_DIR
if(NOT EXISTS "@CMAKE_CURRENT_BINARY_DIR@/install_manifest.txt")
- message(FATAL_ERROR "Cannot find install manifest: @CMAKE_CURRENT_BINARY_DIR@/install_manifest.txt")
+ message(FATAL_ERROR "Cannot find install manifest: \
+@CMAKE_CURRENT_BINARY_DIR@/install_manifest.txt")
endif(NOT EXISTS "@CMAKE_CURRENT_BINARY_DIR@/install_manifest.txt")
file(READ "@CMAKE_CURRENT_BINARY_DIR@/install_manifest.txt" files)
#
# For the ZIP CPack generator:
# $ENV{DESTDIR} is empty
-# ${CMAKE_INSTALL_PREFIX} is the absolute path to the staging install directory
+# ${CMAKE_INSTALL_PREFIX} is the absolute path to the staging install
+# directory
#
# For the NSIS and DEB CPack generators:
# $ENV{DESTDIR} is the absolute path to the staging install directory
# ${CMAKE_INSTALL_PREFIX} to get the location of the 'bin' and 'lib'
# directories in the staging install area.
#
+# cmake-lint: disable=C0301
# More info:
# https://cmake.org/cmake/help/latest/variable/CMAKE_INSTALL_PREFIX.html#variable:CMAKE_INSTALL_PREFIX
# https://cmake.org/cmake/help/latest/envvar/DESTDIR.html
find_package(NSIS)
if(NSIS_FOUND)
- set(CPACK_NSIS_MUI_ICON "${TOP_SOURCE_DIR}/windows/build/Graphviz.ico" )
- set(CPACK_NSIS_MUI_UNIICON "${TOP_SOURCE_DIR}/windows/build/Graphviz.ico" )
- set(CPACK_NSIS_INSTALLED_ICON_NAME "Uninstall.exe" )
- set(CPACK_NSIS_HELP_LINK "http://www.graphviz.org" )
- set(CPACK_NSIS_URL_INFO_ABOUT "http://www.graphviz.org" )
- set(CPACK_NSIS_MODIFY_PATH ON )
+ set(CPACK_NSIS_MUI_ICON "${TOP_SOURCE_DIR}/windows/build/Graphviz.ico")
+ set(CPACK_NSIS_MUI_UNIICON "${TOP_SOURCE_DIR}/windows/build/Graphviz.ico")
+ set(CPACK_NSIS_INSTALLED_ICON_NAME "Uninstall.exe")
+ set(CPACK_NSIS_HELP_LINK "http://www.graphviz.org")
+ set(CPACK_NSIS_URL_INFO_ABOUT "http://www.graphviz.org")
+ set(CPACK_NSIS_MODIFY_PATH ON)
if(CMAKE_CL_64)
set(CPACK_NSIS_INSTALL_ROOT "$PROGRAMFILES64")
else()
set(CPACK_NSIS_INSTALL_ROOT "$PROGRAMFILES")
endif()
set(CPACK_NSIS_EXTRA_UNINSTALL_COMMANDS "
- Delete \\\"${CPACK_NSIS_INSTALL_ROOT}\\\\${CPACK_PACKAGE_INSTALL_DIRECTORY}\\\\${BINARY_INSTALL_DIR}\\\\config6\\\"
+ Delete \\\"${CPACK_NSIS_INSTALL_ROOT}\\\\${CPACK_PACKAGE_INSTALL_DIRECTORY}\
+\\\\${BINARY_INSTALL_DIR}\\\\config6\\\"
")
LIST(APPEND CPACK_GENERATOR NSIS)
endif()
if(WIN32 OR CYGWIN)
# Copy dot executable to each alias name then install copies to bindir
foreach(cmd_alias IN LISTS dot_aliases)
- set(dotcopy "${CMAKE_CURRENT_BINARY_DIR}/${cmd_alias}${CMAKE_EXECUTABLE_SUFFIX}")
+ set(dotcopy
+ "${CMAKE_CURRENT_BINARY_DIR}/${cmd_alias}${CMAKE_EXECUTABLE_SUFFIX}")
add_custom_command(
TARGET dot
POST_BUILD
)
endforeach()
else()
- # For not-WIN32, install symlinks from dot_aliases -> dot_executable in bindir.
- # Note: This may be brittle. This builds a symlink from ./cmd_alias -> ./dot
- # in ${CMAKE_CURRENT_BINARY_DIR}, then installs that symlink
- # into ${BINARY_INSTALL_DIR}. This presumes ${CMAKE_CURRENT_BINARY_DIR}/dot
- # is installed to ${BINARY_INSTALL_DIR}/dot. There is a (small?) risk of
- # dangling symlinks
+ # For not-WIN32, install symlinks from dot_aliases -> dot_executable in
+ # bindir. Note: This may be brittle. This builds a symlink from
+ # ./cmd_alias -> ./dot in ${CMAKE_CURRENT_BINARY_DIR}, then installs that
+ # symlink into ${BINARY_INSTALL_DIR}. This presumes
+ # ${CMAKE_CURRENT_BINARY_DIR}/dot is installed to ${BINARY_INSTALL_DIR}/dot.
+ # There is a (small?) risk of dangling symlinks
foreach(cmd_alias IN LISTS dot_aliases)
set(dotlink "${CMAKE_CURRENT_BINARY_DIR}/${cmd_alias}")
add_custom_command(
TARGET dot
POST_BUILD
- COMMAND ${CMAKE_COMMAND} -E create_symlink $<TARGET_FILE_NAME:dot> ${cmd_alias}
+ COMMAND ${CMAKE_COMMAND} -E create_symlink $<TARGET_FILE_NAME:dot>
+ ${cmd_alias}
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
COMMENT "Linking $<TARGET_FILE_NAME:dot> as ${cmd_alias}"
)
tool_defaults(dijkstra)
# =================================== gml2gv ===================================
-BISON_TARGET(Gmlparse ${CMAKE_CURRENT_SOURCE_DIR}/gmlparse.y ${CMAKE_CURRENT_BINARY_DIR}/gmlparse.c)
-FLEX_TARGET(Gmlscan ${CMAKE_CURRENT_SOURCE_DIR}/gmlscan.l ${CMAKE_CURRENT_BINARY_DIR}/gmlscan.c)
+BISON_TARGET(Gmlparse ${CMAKE_CURRENT_SOURCE_DIR}/gmlparse.y
+ ${CMAKE_CURRENT_BINARY_DIR}/gmlparse.c)
+FLEX_TARGET(Gmlscan ${CMAKE_CURRENT_SOURCE_DIR}/gmlscan.l
+ ${CMAKE_CURRENT_BINARY_DIR}/gmlscan.c)
ADD_FLEX_BISON_DEPENDENCY(Gmlscan Gmlparse)
add_executable(gml2gv
-BISON_TARGET(Grammar ${CMAKE_CURRENT_SOURCE_DIR}/grammar.y ${CMAKE_CURRENT_BINARY_DIR}/grammar.c)
-FLEX_TARGET(Scan ${CMAKE_CURRENT_SOURCE_DIR}/scan.l ${CMAKE_CURRENT_BINARY_DIR}/scan.c)
+BISON_TARGET(Grammar ${CMAKE_CURRENT_SOURCE_DIR}/grammar.y
+ ${CMAKE_CURRENT_BINARY_DIR}/grammar.c)
+FLEX_TARGET(Scan ${CMAKE_CURRENT_SOURCE_DIR}/scan.l
+ ${CMAKE_CURRENT_BINARY_DIR}/scan.c)
ADD_FLEX_BISON_DEPENDENCY(Scan Grammar)
add_definitions(-DEXPORT_CGRAPH -DEXPORT_AGXBUF -DEXPORT_CGHDR)
-BISON_TARGET(HTMLparse ${CMAKE_CURRENT_SOURCE_DIR}/htmlparse.y ${CMAKE_CURRENT_BINARY_DIR}/htmlparse.c)
+BISON_TARGET(HTMLparse ${CMAKE_CURRENT_SOURCE_DIR}/htmlparse.y
+ ${CMAKE_CURRENT_BINARY_DIR}/htmlparse.c)
add_definitions(-DGVC_EXPORTS)
# Generate colortbl.h from sources
add_custom_command(
OUTPUT svgcolor_lib
- DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/svgcolor_names ${TOP_SOURCE_DIR}/awk/svgcolor.awk
+ DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/svgcolor_names
+ ${TOP_SOURCE_DIR}/awk/svgcolor.awk
COMMAND ${AWK_EXECUTABLE} ${AWK_OPTIONS} -f ${TOP_SOURCE_DIR}/awk/svgcolor.awk
- ${CMAKE_CURRENT_SOURCE_DIR}/svgcolor_names > ${CMAKE_CURRENT_BINARY_DIR}/svgcolor_lib
+ ${CMAKE_CURRENT_SOURCE_DIR}/svgcolor_names
+ >${CMAKE_CURRENT_BINARY_DIR}/svgcolor_lib
)
add_custom_command(
OUTPUT brewer_lib
- DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/brewer_colors ${TOP_SOURCE_DIR}/awk/brewer.awk
+ DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/brewer_colors
+ ${TOP_SOURCE_DIR}/awk/brewer.awk
COMMAND ${AWK_EXECUTABLE} -f ${TOP_SOURCE_DIR}/awk/brewer.awk
- ${CMAKE_CURRENT_SOURCE_DIR}/brewer_colors > ${CMAKE_CURRENT_BINARY_DIR}/brewer_lib
+ ${CMAKE_CURRENT_SOURCE_DIR}/brewer_colors
+ >${CMAKE_CURRENT_BINARY_DIR}/brewer_lib
)
configure_file(
"${TOP_SOURCE_DIR}/cmake/generate_color_lib.cmake.in"
)
add_custom_command(
OUTPUT color_lib
- DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/svgcolor_lib ${CMAKE_CURRENT_BINARY_DIR}/brewer_lib ${CMAKE_CURRENT_SOURCE_DIR}/color_names
- COMMAND ${CMAKE_COMMAND} -P ${CMAKE_CURRENT_BINARY_DIR}/generate_color_lib.cmake
+ DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/svgcolor_lib
+ ${CMAKE_CURRENT_BINARY_DIR}/brewer_lib
+ ${CMAKE_CURRENT_SOURCE_DIR}/color_names
+ COMMAND ${CMAKE_COMMAND} -P
+ ${CMAKE_CURRENT_BINARY_DIR}/generate_color_lib.cmake
)
add_custom_command(
OUTPUT common/colortbl.h
DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/color_lib
- COMMAND ${CMAKE_COMMAND} -E make_directory "${CMAKE_CURRENT_BINARY_DIR}/common"
+ COMMAND ${CMAKE_COMMAND} -E make_directory
+ "${CMAKE_CURRENT_BINARY_DIR}/common"
COMMAND ${AWK_EXECUTABLE} -f ${TOP_SOURCE_DIR}/awk/colortbl.awk
- ${CMAKE_CURRENT_BINARY_DIR}/color_lib > ${CMAKE_CURRENT_BINARY_DIR}/common/colortbl.h
+ ${CMAKE_CURRENT_BINARY_DIR}/color_lib
+ >${CMAKE_CURRENT_BINARY_DIR}/common/colortbl.h
)
add_library(common_obj OBJECT
)
if(WIN32)
- target_include_directories(common_obj PRIVATE ${WINDOWS_DEPENDENCY_DIR}/include)
+ target_include_directories(common_obj
+ PRIVATE ${WINDOWS_DEPENDENCY_DIR}/include)
endif()
# From https://gitlab.com/graphviz/graphviz/-/issues/1613 @mdwies 20093010
${GRAPHVIZ_LIB_DIR}
${CMAKE_CURRENT_SOURCE_DIR}
${CMAKE_CURRENT_BINARY_DIR}/.. # needed to find generated expr/exparse.h
- ${CMAKE_CURRENT_BINARY_DIR}/../common # needed to find generated common/colortbl.h
+ ${CMAKE_CURRENT_BINARY_DIR}/../common
+ # needed to find generated common/colortbl.h
${GRAPHVIZ_LIB_DIR}/ast
${GRAPHVIZ_LIB_DIR}/cdt
${GRAPHVIZ_LIB_DIR}/cgraph
add_executable(test_${testname} test_${testname}.cpp)
set_target_properties(test_${testname} PROPERTIES CXX_STANDARD 20)
set_target_properties(test_${testname} PROPERTIES CXX_STANDARD_REQUIRED ON)
- add_test(NAME test_${testname} COMMAND test_${testname} --reporter junit --out test_${testname}.xml)
+ add_test(NAME test_${testname}
+ COMMAND test_${testname} --reporter junit --out test_${testname}.xml)
target_include_directories(test_${testname} PRIVATE
${GRAPHVIZ_LIB_DIR}
${GRAPHVIZ_LIB_DIR}/cdt