Commit Graph

43 Commits

Author SHA1 Message Date
Albrecht Schlosser 1209e9dcd7 Make Fl_String and Fl_Int_Vector private (#789)
- add CMake option 'OPTION_USE_STD'
- add configure option '--enable-use_std'
- move FL/Fl_String.H to src/Fl_String.H
- move FL/Fl_Int_Vector.H to src/Fl_Int_Vector.H
- remove Fl_String from demo program examples/callbacks.cxx
- remove Fl_Int_Vector from public header FL/Fl_Table.H
- some methods of Fl_Table are no longer inline
- add CMake option OPTION_USE_STD to allow std::string in some
  selected functions and methods

Experimental, may be removed before release:

- use either Fl_Int_Vector or std::vector in Fl_Table depending
  on CMake OPTION_USE_STD or configure --enable-use_std

Move all fl_filename* functions that use Fl_String to fluid

Main changes in fluid:
 - add fluid_filename.h and .cxx
 - include "fluid_filename.h" rather than <FL/filename.H>

Update fl_input(), fl_password() and test/ask

- add maxchar parameter to fl_input() and fl_password()
- fl_input_str() and fl_password_str() are optional and return
  std::string if enabled (FLTK_USE_STD)
2023-10-22 19:35:17 +02:00
Albrecht Schlosser cfa1a3bd40 Enhance info about documentation generation
- update build requirements
- clarify CMake options
- make clear that a POSIX shell and some Unix tools are required
  to build the PDF documentation
2023-10-03 09:19:36 +02:00
ManoloFLTK 3a777eed58 Describe cmake option OPTION_ALLOW_GTK_PLUGIN 2023-07-09 08:29:58 +02:00
ManoloFLTK 89874f4f85 Move OPTION_USE_SYSTEM_LIBDECOR away from doc options 2023-02-17 07:14:44 +01:00
ManoloFLTK 7a4d8a254e Describe OPTION_USE_KDIALOG and OPTION_USE_SYSTEM_LIBDECOR 2023-02-17 07:09:54 +01:00
Matthias Melcher 1fc269b0d4
Move global FLTK options into new app fltk-admin (#560) 2023-01-21 17:14:41 +01:00
ManoloFLTK 0ba051994a Have OPTION_USE_WAYLAND / --enable-wayland set to ON by default 2022-11-23 06:17:31 +01:00
Matthias Melcher edf7510dda
Make building Fluid optional. (#539) 2022-11-13 20:16:54 +01:00
Greg Ercolano f40bd49a7c Added cmake example for building nmake files
The docs needed an example of building fltk purely from the command line
with Visual Studio (e.g. with nmake), without the IDE.
2022-10-18 23:23:58 -07:00
ManoloFLTK 203e7b7098 New OPTION_WAYLAND_ONLY for CMake to build pure Wayland platform. 2022-09-09 15:19:15 +02:00
ManoloFLTK c720aae515 Make hybrid Wayland/X11 platform. 2022-08-29 12:15:32 +02:00
ManoloFLTK d096ec48d0 Documentation: add missing mentions of the Wayland platform. 2022-07-05 10:13:31 +02:00
ManoloFLTK 84cf249482 Fix for issue #253: Remove xdbe support 2021-11-26 15:01:54 +01:00
Albrecht Schlosser 4ba92a99bb Document how to build universal apps for macOS 2021-04-29 18:32:19 +02:00
Albrecht Schlosser e182c8bcd5 Fix whitespace errors (no code changes)
- remove trailing whitespace
- convert tabs to spaces (configure.ac)
2021-02-16 14:21:13 +01:00
Albrecht Schlosser bbaec9bd88 Update CMake and make files, minor edits only
There are no functional changes to be expected, mostly formatting
and comments.
2021-02-15 19:45:20 +01:00
ManoloFLTK bb099ade19 Basic CMakeLists.txt file to build FLTK-based user program - continued
A single add_executable() command is possible.
2020-11-24 10:05:36 +01:00
ManoloFLTK c7274294ae Basic CMakeLists.txt file to build FLTK-based user program.
The change is mostly concerned with showing how to build
a macOS bundled app, in addition to X11 and Windows support.
2020-11-23 17:22:58 +01:00
Greg Ercolano 7d126461ef Update cmake version requirement in README 2020-11-01 13:03:33 -08:00
Albrecht Schlosser 3b9a04ae2e CMake: add examples folder to build (optional)
- 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-21 18:55:12 +02:00
Albrecht Schlosser 720b84ef9d 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
2020-07-15 00:34:53 +02:00
Albrecht Schlosser f09e17c3c5 Remove $Id$ tags, update URL's, and more
- 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-07-06 20:28:20 +02:00
Albrecht Schlosser 6279ab0586 CMake: Deprecate FLTK_USE_FILE (UseFLTK.cmake)
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-06-13 13:51:35 +02:00
Albrecht Schlosser 088eedb0ad Update CMake instructions for cross compilation
Add CMAKE_RC_COMPILER variable, switch to 64-bit toolchain, add
a note to replace the toolchain location as required, fix typos.
2020-01-18 14:29:01 +01:00
Albrecht Schlosser a46060495d Update CMake README file for cross compilation
Add linker flags to create "native" Windows executables.
2019-07-03 13:41:42 +02:00
Albrecht Schlosser de199c327e Add a CMake option to generate driver (developer) documentation.
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.
2018-12-29 20:35:10 +01:00
Greg Ercolano 16f968b40f Added the new OPTION_USE_NANOSVG to the README.CMake.txt file.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12422 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-09-06 00:02:33 +00:00
Greg Ercolano a4433ca19d Emphasize in the docs that ".." at the end of cmake commands is
not an elipsis, but is part of the command.



git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12421 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-09-05 22:37:07 +00:00
Albrecht Schlosser 27d7736475 Fix some typos.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12301 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-07-07 18:28:10 +00:00
Albrecht Schlosser e562ec02a6 Update several README files, remove obsolete information.
To be continued ...


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12292 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-07-05 17:15:16 +00:00
Matthias Melcher ae22b98442 Added CMake build instructions for MacOS and Xcode
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12291 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-07-05 15:02:43 +00:00
Manolo Gouy 81ffbd2bf7 Document the new OPTION_USE_PANGO platform-specific option.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12216 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-04-08 06:26:23 +00:00
Greg Ercolano 4bff1e5e98 Suggestion for cmake docs for building FLTK with Visual Studio (e.g. VS7 shown)
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12213 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-03-30 01:52:39 +00:00
Albrecht Schlosser af2dc3bce8 Minor CMake documentation clarification.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@12070 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-11-01 20:45:42 +00:00
Albrecht Schlosser 351736c320 Documentation updates (IDE and CMake support).
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@12066 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-11-01 15:18:31 +00:00
Albrecht Schlosser fe0c247dbb Documentation fixes.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11862 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-08-01 12:50:15 +00:00
Manolo Gouy d8cebd1fdf Add description of the new CMake option OPTION_PRINT_SUPPORT
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11129 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-02-05 17:13:17 +00:00
Albrecht Schlosser 604dd63b45 [CMake] Document usage of .fl files w/o fltk_wrap_ui (STR #3281).
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11113 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-02-02 00:49:51 +00:00
Manolo Gouy 69ec698e41 Mac OS: modified CMake config files to allow use of OPTION_APPLE_X11
to build an X11-using version of FLTK on the Mac OS platform.
This matches the recent support of the --enable-x11 option
by the configure script on the mac.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10986 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2015-12-31 06:19:59 +00:00
Albrecht Schlosser 1bb0fb36f6 CMake] install CMake files in DATADIR instead of LIBDIR under Linux.
FLTKConfig.cmake and others have been installed in arch dependent LIBDIR,
but should be in arch independent DATADIR.  The result is that you can
always find FLTKConfig.cmake in <prefix>/share/fltk.

This is where "/path/to/fltk" should point to when FLTK is used in external
projects (see README.CMake.txt).

Todo: test if find_package works w/o defining FLTK_DIR when installed
in a standard location.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10682 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2015-04-07 15:18:35 +00:00
Albrecht Schlosser 318c3619dc CMake enhancements, as discussed in STR #3055.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10342 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2014-09-27 00:41:06 +00:00
Greg Ercolano 29c22b7ca2 Format tweaks, added some examples.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@9919 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2013-05-16 13:29:49 +00:00
Matthias Melcher 7046e8ebcb Merged the CMake documenation and adapted the format to the one used in the other README fiels (mainly adding a TOC).
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@8082 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-12-20 20:00:44 +00:00