Commit Graph

21 Commits

Author SHA1 Message Date
Albrecht Schlosser
fd5cd80935 Introduce "Modern CMake" in FLTK
This is a big commit and there are too many changes to list them all.
The main changes are:

- rename all CMake build options to 'FLTK_*'
- export library targets with namespace (prefix) 'fltk::'
- standardize shared library target names with suffix '-shared'
- set public build properties on libraries for consumers
- document library names and aliases in README.CMake.txt
- document changes in "Migrating Code from FLTK 1.3 to 1.4"
- partial backwards compatibility for old user projects

Included but not directly related changes:

- fix Windows (Visual Studio) DLL build
- add CMake function fl_debug_target() to show target properties
- don't build test programs if FLTK is a subproject
- internal: reformat CMake code: remove space before '('

Thanks to Matthias and Manolo for their help, testing, and feeback.
2024-02-07 18:37:34 +01:00
Albrecht Schlosser
cf07fa09dc Minor updates of bundled libraries and README.CMake.txt
Update Makefiles, CMakeLists.txt, improve formatting.
2023-12-04 17:31:18 +01:00
Albrecht Schlosser
ede381c005 Fix Visual Studio shared library build
Todo: fluid-shared can't (yet) be built agains the shared fltk lib
  because of some linker errors. Needs investigation.

Note: fluid-shared is basically a test program to demonstrate linking
  against the shared FLTK libs but doesn't work yet using VS (MSVC).
  This is no problem for the functionality.
2023-09-12 23:18:46 +02:00
ManoloFLTK
b5f9d6f38e More for "undefined reference to png_init_filter_functions_vsx" (#652) 2023-01-14 13:06:32 +01:00
Albrecht Schlosser
af4954aee3 CMake/macOS: build arm files for libpng only on ARM
Remove macOS warning "ranlib: file ... has no symbols" although this
works only partially (see comment in png/CMakeLists.txt).
2022-02-05 21:37:37 +01:00
Albrecht Schlosser
3cbf11af8d Use "symbol prefixing" in bundled libs (part 1 of 3)
Add prefix 'fltk_' to bundled libpng.
2021-11-14 19:31:25 +01:00
Albrecht Schlosser
a484541d4b CMake: improve detection and configuration of image libs
Also: fix old (pre 3.13) link_directories() usage
2021-04-30 19:47:47 +02: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
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
ManoloFLTK
93f19c3a24 Add files needed when building libpng for the arm64 architecture.
These files can be compiled-in for other architectures but produce no binary code.
2020-06-24 21:55:39 +02:00
Albrecht Schlosser
8c4930a7d7 Upgrade bundled libpng from 1.6.16 to 1.6.37
Release: 1.6.37 - April 14, 2019

For further details see README.bundled-libs.txt.
2020-01-09 19:26:29 +01:00
Albrecht Schlosser
992192dd02 Update bundled libpng from version 1.5.10 to 1.6.16.
libpng 1.6.16 is the current stable version, 1.6.17 is in development (rc..).


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10625 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2015-03-16 16:47:32 +00:00
Albrecht Schlosser
4d823c0d4a [CMake] Install bundled (jpeg, png, zlib) library headers if built (STR #3187).
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10581 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2015-02-16 16:29:49 +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
Manolo Gouy
7fadd473af Fix STR#2846: revert CMakeLists.txt as before libpng upgrade
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@9556 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2012-05-29 14:08:40 +00:00
Matthias Melcher
4f7f902a00 Updated PNG library to current version 1.5.10
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@9370 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2012-04-22 00:06:25 +00:00
Albrecht Schlosser
a0d26b634a Mostly rewritten CMake files by Michael Surette. They are more complete
than what we had previously, but may need some more testing. The latest
changes (removing old APPLE_QD definitions and code) might need another
update.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7451 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-04-05 22:33:58 +00:00
Dejan Lekic
1cd06f3ad0 This commit contains patch submitted by "fltk.x0" (thanks fltk.x0!) in the middle of May this year - STR #863. Also small change in fluid.cxx - time.h was needed for successful build on MinGW.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4468 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-08-06 05:02:56 +00:00
Michael R Sweet
3ee9c50180 CMake build fixes (STR #724)
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4047 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-02-24 20:26:22 +00:00
Michael R Sweet
ca005c4067 Documentation updates (STR #568)
More CMake updates (STR #499)

The Watcom C++ compiler needed a small change (STR #567)


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@3869 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2004-10-18 20:29:58 +00:00
Michael R Sweet
1ca225e19d Added (unsupported) CMake files (STR #499)
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@3829 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2004-09-13 02:12:41 +00:00