diff options
| author | Albrecht Schlosser <albrechts.fltk@online.de> | 2020-06-13 15:19:27 +0200 |
|---|---|---|
| committer | Albrecht Schlosser <albrechts.fltk@online.de> | 2020-07-15 00:34:53 +0200 |
| commit | 720b84ef9d086245f5119d143202a2661a78ca53 (patch) | |
| tree | 26bcd11ffa797c3c01917507e9204fbc9f9b45aa /fluid | |
| parent | 54425030774eb04b29c749ffa85d224c8bbfcc34 (diff) | |
CMake: refactor and reformat CMake files
- raise minimum CMake version from 2.6.3 to 3.2.3 (Jun 01, 2015)
- indent all CMake files according to the CMP (2 col.)
- refactor FLTK version number definitions and usage
- unify CMake and autoconf/configure variable names:
- FL_VERSION -> FLTK_VERSION
- FL_MAJOR_VERSION -> FLTK_VERSION_MAJOR
- etc. for _MINOR_ and _PATCH_, respectively
- note: this does not affect FL_VERSION etc. in source code
- generate "export headers" for all libraries (experimental: OFF)
- port some forgotten goodies from branch-1.3 to master
- merge and improve macro 'create_example' (WIP)
- remove "temporary" options and code for older CMake versions
- include and use 'GenerateExportHeader' (experimental, WIP: OFF)
- note: created header files are not yet used
- build only *one* DLL with Visual Studio (tested, works)
- similar to the bundled IDE projects in 1.3.x
- add some dynamically linked test/demo programs ('*-shared')
if shared libraries are built (WIP)
- split 'macros.cmake': use one file per macro
Diffstat (limited to 'fluid')
| -rw-r--r-- | fluid/CMakeLists.txt | 109 |
1 files changed, 54 insertions, 55 deletions
diff --git a/fluid/CMakeLists.txt b/fluid/CMakeLists.txt index e730f274c..30b105891 100644 --- a/fluid/CMakeLists.txt +++ b/fluid/CMakeLists.txt @@ -1,7 +1,7 @@ # # CMakeLists.txt to build fluid for the FLTK project using CMake (www.cmake.org) # -# Copyright 1998-2018 by Bill Spitzak and others. +# Copyright 1998-2020 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 @@ -14,85 +14,84 @@ # https://www.fltk.org/bugs.php # +if (NOT ANDROID) -if(NOT ANDROID) - -set(CPPFILES - CodeEditor.cxx - Fl_Function_Type.cxx - Fl_Group_Type.cxx - Fl_Menu_Type.cxx - Fl_Type.cxx - Fl_Widget_Type.cxx - Fl_Window_Type.cxx - Fluid_Image.cxx - about_panel.cxx - align_widget.cxx - alignment_panel.cxx - code.cxx - factory.cxx - file.cxx - fluid.cxx - function_panel.cxx - template_panel.cxx - undo.cxx - widget_panel.cxx +set (CPPFILES + CodeEditor.cxx + Fl_Function_Type.cxx + Fl_Group_Type.cxx + Fl_Menu_Type.cxx + Fl_Type.cxx + Fl_Widget_Type.cxx + Fl_Window_Type.cxx + Fluid_Image.cxx + about_panel.cxx + align_widget.cxx + alignment_panel.cxx + code.cxx + factory.cxx + file.cxx + fluid.cxx + function_panel.cxx + template_panel.cxx + undo.cxx + widget_panel.cxx ) # ExternalCodeEditor: platform specific files if (WIN32) - list(APPEND CPPFILES ExternalCodeEditor_WIN32.cxx) + list (APPEND CPPFILES ExternalCodeEditor_WIN32.cxx) else () - list(APPEND CPPFILES ExternalCodeEditor_UNIX.cxx) + list (APPEND CPPFILES ExternalCodeEditor_UNIX.cxx) endif (WIN32) -if(APPLE AND (NOT OPTION_APPLE_X11) AND (NOT OPTION_APPLE_SDL)) - set(ICON_NAME fluid.icns) - set(ICON_PATH "${PROJECT_SOURCE_DIR}/fluid/fluid.app/Contents/Resources/${ICON_NAME}") +if (APPLE AND (NOT OPTION_APPLE_X11) AND (NOT OPTION_APPLE_SDL)) + set (ICON_NAME fluid.icns) + set (ICON_PATH "${PROJECT_SOURCE_DIR}/fluid/fluid.app/Contents/Resources/${ICON_NAME}") add_executable(fluid MACOSX_BUNDLE ${CPPFILES} ${ICON_PATH}) -else() +else () add_executable(fluid WIN32 ${CPPFILES}) -endif(APPLE AND (NOT OPTION_APPLE_X11) AND (NOT OPTION_APPLE_SDL)) +endif (APPLE AND (NOT OPTION_APPLE_X11) AND (NOT OPTION_APPLE_SDL)) target_link_libraries(fluid fltk fltk_images fltk_forms) # install fluid -if(APPLE AND (NOT OPTION_APPLE_X11) AND (NOT OPTION_APPLE_SDL)) +if (APPLE AND (NOT OPTION_APPLE_X11) AND (NOT OPTION_APPLE_SDL)) # create bundle - set_target_properties(fluid PROPERTIES MACOSX_BUNDLE_INFO_PLIST "${PROJECT_SOURCE_DIR}/fluid/fluid.app/Contents/Info.plist") - set_target_properties(fluid PROPERTIES MACOSX_BUNDLE_ICON_FILE ${ICON_NAME}) - set_target_properties(fluid PROPERTIES RESOURCE ${ICON_PATH}) + set_target_properties (fluid PROPERTIES MACOSX_BUNDLE_INFO_PLIST "${PROJECT_SOURCE_DIR}/fluid/fluid.app/Contents/Info.plist") + set_target_properties (fluid PROPERTIES MACOSX_BUNDLE_ICON_FILE ${ICON_NAME}) + set_target_properties (fluid PROPERTIES RESOURCE ${ICON_PATH}) # install - install(TARGETS fluid DESTINATION ${FLTK_BINDIR}) + install (TARGETS fluid DESTINATION ${FLTK_BINDIR}) else() - install(TARGETS fluid + install (TARGETS fluid EXPORT FLTK-Targets RUNTIME DESTINATION ${FLTK_BINDIR} LIBRARY DESTINATION ${FLTK_LIBDIR} ARCHIVE DESTINATION ${FLTK_LIBDIR} - ) -endif(APPLE AND (NOT OPTION_APPLE_X11) AND (NOT OPTION_APPLE_SDL)) + ) +endif (APPLE AND (NOT OPTION_APPLE_X11) AND (NOT OPTION_APPLE_SDL)) # install desktop files -if(UNIX) - install(FILES fluid.desktop - DESTINATION ${FLTK_DATADIR}/applications - ) - # Install mime-type file. x-fluid.desktop method is deprecated. - install(FILES fluid.xml - DESTINATION ${FLTK_DATADIR}/mime/packages - ) +if (UNIX) + install (FILES fluid.desktop + DESTINATION ${FLTK_DATADIR}/applications + ) + # Install mime-type file (x-fluid.desktop method is deprecated) + install (FILES fluid.xml + DESTINATION ${FLTK_DATADIR}/mime/packages + ) - # Install desktop icons. - foreach(icon 32 48 64 128) - install(FILES icons/fluid-${icon}.png - DESTINATION ${FLTK_DATADIR}/icons/hicolor/${icon}x${icon}/apps - RENAME fluid.png - ) - endforeach() -endif(UNIX) + # Install desktop icons + foreach (icon 32 48 64 128) + install (FILES icons/fluid-${icon}.png + DESTINATION ${FLTK_DATADIR}/icons/hicolor/${icon}x${icon}/apps + RENAME fluid.png + ) + endforeach() +endif (UNIX) -endif(NOT ANDROID) +endif (NOT ANDROID) |
