summaryrefslogtreecommitdiff
path: root/CMake
AgeCommit message (Collapse)Author
2021-07-21Call pthread's recursive mutex on Linux (Issue #245)Albrecht Schlosser
Add CMake test for PTHREAD_MUTEX_RECURSIVE Add autoconf/configure compile test for PTHREAD_MUTEX_RECURSIVE Replace "#ifdef PTHREAD_MUTEX_RECURSIVE" with "#ifdef HAVE_PTHREAD_MUTEX_RECURSIVE" and define HAVE_PTHREAD_MUTEX_RECURSIVE in config.h
2021-05-31Windows platform: use GDI+ to antialias oblique lines and curves.ManoloFLTK
2021-05-13Refactor macOS bundle generation to avoid "quarantine"Albrecht Schlosser
macOS Big Sur 11.3 introduced a new "security feature" such that app bundles created from existing bundle templates in downloaded files (tar distibutions, expanded) could no longer be executed without unsetting the "quarantine" attribute. This commit fixes this by creating all bundles from scratch. Known *workaround* for older tarballs and snapshots: $ xattr -d -r com.apple.quarantine xxx.app
2021-04-30CMake: improve detection and configuration of image libsAlbrecht Schlosser
Also: fix old (pre 3.13) link_directories() usage
2021-04-30Fix build with Cairo for CMake < 3.13Albrecht Schlosser
target_link_directories() was introduced in CMake 3.13
2021-04-26CMake: Document FLTKConfig.cmake and set FLTK_INCLUDE_DIRAlbrecht Schlosser
Some of the output variables had not been documented, and the "new" variable for FLTK include directories is 'FLTK_INCLUDE_DIRS' (plural) rather than 'FLTK_INCLUDE_DIR'. FLTK_INCLUDE_DIR is now also set for compatibility with FindFLTK.cmake supplied by CMake.
2021-04-11Fix CMake install procedure (#212)Albrecht Schlosser
Only install header files to the FL/ include directory.
2021-04-08Fix CMake warningAlbrecht Schlosser
2021-04-08Fix macOS bundle: set missing fields for test appsAlbrecht Schlosser
- MACOSX_BUNDLE_BUNDLE_NAME: CFBundleName - MACOSX_BUNDLE_GUI_IDENTIFIER: CFBundleIdentifier test/demo.cxx: Remove confusing quotes from demo variable output.
2021-03-01Fix cairo build (autoconf + CMake) + README'sAlbrecht Schlosser
- rewrite to use pkg-config with both autoconf + CMake - remove hardcoded library names - fix build dependencies and search directories - remove or replace old and unused variables - update README files To be done: - implement fallback for autoconf/configure if pkg-config is missing - fix pango build (uses cairo internally)
2021-02-16Create classes Fl_XXX_Gl_Window_Driver according to driver model.ManoloFLTK
2021-02-15Update CMake and make files, minor edits onlyAlbrecht Schlosser
There are no functional changes to be expected, mostly formatting and comments.
2020-10-28Pango ps (#148)ManoloFLTK
Use cairo-PostScript to output PostScript when pango is available. This allows to draw in vectorial form any script. Before, only the Latin script could be drawn to PostScript in vectorial form.
2020-09-01Fix version number in exported file FLTKConfig.cmakeAlbrecht Schlosser
2020-08-31Fix for cmake + macOS + OPTION_APPLE_X11 regarding GLU-using apps.ManoloFLTK
2020-08-31make + macOS: further fix to the construction of fltk-configManoloFLTK
2020-08-27Remove VERSION_GREATER_EQUAL that requires a more recent CMake version than ↵ManoloFLTK
3.2.3 Replace it by (NOT VERSION_LESS)
2020-08-26Fix cmake-based build under macOS with OPTION_APPLE_X11.ManoloFLTK
cmake now correctly finds GLU support when present.
2020-08-26Fix for cmake-based construction of the fltk-config script under macOS.ManoloFLTK
This also supports OPTION_APPLE_X11 and OPTION_USE_PANGO.
2020-08-26macOS: don't create bundles when using X11Albrecht Schlosser
2020-08-25Towards construction of fltk-config by CMake under macOS (WIP).ManoloFLTK
2020-08-21CMake: add examples folder to build (optional)Albrecht Schlosser
- replace misnamed option 'OPTION_BUILD_EXAMPLES' with 'FLTK_BUILD_TEST' - add option 'FLTK_BUILD_EXAMPLES' to build apps in examples folder - move examples/fltk-versions.cxx to test/fltk-versions.cxx - [Travis-CI] enable option 'FLTK_BUILD_EXAMPLES' for automatic builds
2020-08-18CMake: Fix macOS bundle wrapper generationAlbrecht Schlosser
Now bundle wrapper scripts are created in the particular build folder, i.e. in subdir 'Debug', 'Release' etc. in multi config builds (Xcode). To do this, the scripts are now copied whenever the target is built and not during the configuration phase. To do: "install" wrapper scripts.
2020-07-23Create macOS "bundle wrapper" scripts (#115)Albrecht Schlosser
These scripts must be installed side by side with the bundle with the same name and run the executable inside the bundle when executed.
2020-07-20CMake: simplify create_example macroAlbrecht Schlosser
- move target (demo) specific code from macro to CMakeLists.txt - refactor macOS specific code for a cleaner structure - improve documentation Note: CMake ignores platform specific code like creating bundles on other platforms, hence the entire code could be simplified (less conditional code)
2020-07-20CMake: fix FLTK_RUN_FLUID macroAlbrecht Schlosser
The target variable should be set outside of the loop.
2020-07-15CMake: refactor and reformat CMake filesAlbrecht Schlosser
- 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
2020-07-06Remove $Id$ tags, update URL's, and moreAlbrecht Schlosser
- remove obsolete svn '$Id$' tags from all source files - update .fl files and generated files accordingly - replace 'http://www.fltk.org' URL's with 'https://...' - replace bug report URL 'str.php' with 'bugs.php' - remove trailing whitespace - fix other whitespace errors flagged by Git - add and/or fix missing or wrong standard headers - convert tabs to spaces in all source files The only relevant code changes are in the fluid/ folder where some .fl files and other source files were used to generate the '$Id' headers and footers.
2020-06-27Add classes Fl_SVG_File_Surface and Fl_EPS_File_Surface to draw to SVG and EPS.ManoloFLTK
Test programs device and pixmap_browser use these new classes. Class Fl_SVG_File_Surface can be optionally made non functional using the --disable-svg configure option or turning off OPTION_USE_SVG in CMake. Class Fl_EPS_File_Surface can be optionally made non functional using the --disable-print configure option or turning off OPTION_PRINT_SUPPORT in CMake.
2020-06-21Quick fix for inability to link with pango from fltk-configTaeril
Commit 6fe226cb804d000b29ea53e08acc505267fd44de introduced use of pkg-config which broke linking from fltk-config if FLTK was configured to use pango library. This patch duplicates line from another if branch that just adds libraries assuming that if pkg-config found pangoxft that there are present all it's requirements.
2020-06-13CMake: Build static and shared libs side-by-sideAlbrecht Schlosser
Clean up library and variable names. Remove '_SHARED' suffix from library (output) filenames. This commit was inspired by David Runge ('dvzrv'), thanks. See PR #21. Fixes #21
2020-06-13CMake: Deprecate FLTK_USE_FILE (UseFLTK.cmake)Albrecht Schlosser
Cherry-pick the essential changes from FLTK 1.3 since this change had not been ported to 1.4 yet. To do: my current plan is to consolidate 1.3 and 1.4 CMake files as far as possible (with the exceptions of source files, obviously) and to redesign / refactor CMake files later in this process or maybe only for 1.4 if it turns out to be too much to backport.
2020-04-22Unexpand $Id$ marker in the last remaining fileAlbrecht Schlosser
2020-04-15CMake: use pkg_check_modules to search for pangoxftManoloFLTK
Command pkg_check_modules is present in CMake 2.6
2020-02-14CMake: set option to build docs (default): ONAlbrecht Schlosser
This option does not build the documentation automatically, docs still must be built manually, e.g. 'make docs' or 'make html'.
2020-01-18Set OPTION_USE_SYSTEM_LIBPNG/JPEG off under macOS by defaultManoloFLTK
2020-01-18Remove temporary CMake option OPTION_HIDPI no longer used.ManoloFLTK
2019-10-31Continue CMake support of the Darwin+XQuartz+fink test platformManoloFLTK
2019-10-30Restore CMake support of Darwin + XQuartz + fink test platformManoloFLTK
2019-10-30Restore CMake support of Darwin + XQuartz + finkManoloFLTK
2019-06-04Fix typo in CMake macro FL_ADD_LIBRARYAlbrecht Schlosser
2019-05-12Correct config installation path on macOSLasse Lopperi
Before: install/FLTK/.framework/Resources/CMake/FLTKConfig.cmake After: install/FLTK.framework/Resources/CMake/FLTKConfig.cmake See https://cmake.org/cmake/help/v3.0/command/find_package.html for definitions of expected installation paths.
2019-01-17Android CMake: icons, docs, more appsMatthias Melcher
2019-01-17Andoird CMake: trying to autocreate Fluid filesMatthias Melcher
2019-01-16Android CMake: fix, more autogenerated filesMatthias Melcher
Fixed a bug that would cause an error is Android Build was NOT defined. Creating list of test targets automatically.
2019-01-16Android CMake: macro for multiple testsMatthias Melcher
Added a macro that creates the IDE files for a named test. This is just a rough layout and will only work for the simpelest of test targets.
2019-01-15Android: starting to use CMake to build AndroidStudio files.Matthias Melcher
2019-01-14Android: modifying CMake to also create AndroidStudio IDEMatthias Melcher
2019-01-14Android: modifying CMake to also create AndroidStudio IDEMatthias Melcher
2018-12-29Add a CMake option to generate driver (developer) documentation.Albrecht Schlosser
Generating driver documentation can now be configured with CMake. The new configuration OPTION_INCLUDE_DRIVER_DOCUMENTATION is "marked as advanced" since only advanced users and/or FLTK developers need this. Previously this could only be achieved by editing documentation/Doxyfile.in. Added missing documentation option descriptions as well.