Update README and configure related stuff for 1.5.0
- remove configure stuff from more README files - move documentation/README.txt to README.documentation.txt
This commit is contained in:
parent
0941f0600a
commit
347d35a8c0
@ -32,10 +32,9 @@ README.Unix.txt - Building FLTK on Unix/Linux Systems
|
|||||||
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Note: usage of autotools, configure, and the included Makefiles
|
Note: usage of autotools, configure, and included Makefiles to
|
||||||
to build the FLTK library is deprecated since FLTK 1.4 and will
|
build the FLTK library is no longer available since FLTK 1.5.0.
|
||||||
be removed in the next minor version (1.5).
|
You must use CMake instead, see README.CMake.txt.
|
||||||
Please consider using CMake instead, see README.CMake.txt.
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
|
|
||||||
|
|
||||||
@ -187,15 +186,11 @@ To update to the latest version, just `cd` into the fltk directory and type
|
|||||||
git pull
|
git pull
|
||||||
|
|
||||||
If you have installed JPEG and PNG libraries from pkgsrc, configure your
|
If you have installed JPEG and PNG libraries from pkgsrc, configure your
|
||||||
environment as follows so that the FLTK configure script can find them:
|
environment as follows so that CMake can find them:
|
||||||
|
|
||||||
export CPPFLAGS="-I/usr/pkg/include"
|
export CPPFLAGS="-I/usr/pkg/include"
|
||||||
export LDFLAGS="-L/usr/pkg/lib"
|
export LDFLAGS="-L/usr/pkg/lib"
|
||||||
|
|
||||||
To install GNU autoconf from pkgsrc:
|
|
||||||
|
|
||||||
cd /usr/pkgsrc/devel/autoconf
|
|
||||||
bmake install
|
|
||||||
|
|
||||||
|
|
||||||
2.4 OpenSuSE
|
2.4 OpenSuSE
|
||||||
|
|||||||
@ -34,10 +34,10 @@ CJK text-input methods, as well as dead and compose keys are supported.
|
|||||||
2 Wayland Support for FLTK
|
2 Wayland Support for FLTK
|
||||||
==========================
|
==========================
|
||||||
|
|
||||||
On Linux and FreeBSD systems, the FLTK library is by default configured so FLTK apps
|
On Linux and FreeBSD systems, the FLTK library is by default configured so FLTK
|
||||||
do all their windowing through the Wayland protocol, all their graphics with
|
apps do all their windowing through the Wayland protocol, all their graphics
|
||||||
Cairo or EGL, and all text-drawing with Pango. If no Wayland compositor is
|
withCairo or EGL, and all text-drawing with Pango. If no Wayland compositor
|
||||||
available at run-time, FLTK apps fall back to using X11 for windowing.
|
is available at run-time, FLTK apps fall back to using X11 for windowing.
|
||||||
Cairo and Pango remain used for graphics and text, respectively.
|
Cairo and Pango remain used for graphics and text, respectively.
|
||||||
|
|
||||||
Environment variable FLTK_BACKEND can be used to control whether Wayland or
|
Environment variable FLTK_BACKEND can be used to control whether Wayland or
|
||||||
@ -122,12 +122,12 @@ On Linux and FreeBSD systems equipped with the adequate software packages
|
|||||||
hybrid library. On systems lacking all or part of Wayland-required packages,
|
hybrid library. On systems lacking all or part of Wayland-required packages,
|
||||||
the default building procedure produces a X11-based library.
|
the default building procedure produces a X11-based library.
|
||||||
|
|
||||||
Use "-D FLTK_BACKEND_WAYLAND=OFF" with CMake or "configure --disable-wayland"
|
Use "-D FLTK_BACKEND_WAYLAND=OFF" with CMake to build FLTK for the X11
|
||||||
to build FLTK for the X11 library when the default would build for Wayland.
|
library when the default would build for Wayland.
|
||||||
|
|
||||||
CMake option FLTK_BACKEND_X11=OFF or configure argument "--disable-x11" can
|
CMake option FLTK_BACKEND_X11=OFF can be used to produce a Wayland-only
|
||||||
be used to produce a Wayland-only library which can be useful, e.g., when
|
library which can be useful, e.g., when cross-compiling for systems that
|
||||||
cross-compiling for systems that lack X11 headers and libraries.
|
lack X11 headers and libraries.
|
||||||
|
|
||||||
The FLTK Wayland platform uses a library called libdecor which handles window decorations
|
The FLTK Wayland platform uses a library called libdecor which handles window decorations
|
||||||
(i.e., titlebars, shade). On very recent Linux distributions (e.g., Debian trixie)
|
(i.e., titlebars, shade). On very recent Linux distributions (e.g., Debian trixie)
|
||||||
|
|||||||
@ -1,5 +1,6 @@
|
|||||||
README.txt (documentation)
|
README.documentation.txt
|
||||||
---------------------------
|
------------------------
|
||||||
|
|
||||||
Documentation is available in HTML and PDF format built using 'doxygen'
|
Documentation is available in HTML and PDF format built using 'doxygen'
|
||||||
since FLTK 1.3. The documentation must be generated in a separate step
|
since FLTK 1.3. The documentation must be generated in a separate step
|
||||||
or downloaded from FLTK's software download pages. The documentation can
|
or downloaded from FLTK's software download pages. The documentation can
|
||||||
@ -7,10 +8,11 @@ also be accessed online.
|
|||||||
|
|
||||||
To read the docs after downloading or generating them, open the files:
|
To read the docs after downloading or generating them, open the files:
|
||||||
|
|
||||||
documentation/html/index.html
|
build/documentation/html/index.html
|
||||||
documentation/fltk.pdf
|
build/documentation/fltk.pdf
|
||||||
|
|
||||||
with your browser or PDF viewer, respectively.
|
with your browser or PDF viewer, respectively.
|
||||||
|
Note that 'build' represents your CMake build folder.
|
||||||
|
|
||||||
|
|
||||||
Online Documentation (Latest Release):
|
Online Documentation (Latest Release):
|
||||||
@ -55,9 +57,9 @@ did with the source tarball.
|
|||||||
Generation of Documentation (Common Part):
|
Generation of Documentation (Common Part):
|
||||||
------------------------------------------
|
------------------------------------------
|
||||||
To generate the documentation yourself you should have Doxygen
|
To generate the documentation yourself you should have Doxygen
|
||||||
version 1.8 or later. Recommended version as of this writing
|
version 1.9.8 or later. Recommended version as of this writing
|
||||||
(October 2023) is 1.9.8 or later.
|
(March 2025) is 1.12.0 or later.
|
||||||
Older Doxygen versions than 1.8 may or may not work.
|
Older Doxygen versions than 1.9 may or may not work.
|
||||||
|
|
||||||
Full documentation generation is supported only on Unix/Linux
|
Full documentation generation is supported only on Unix/Linux
|
||||||
platforms that provide a POSIX compatible shell (e.g. 'bash') and
|
platforms that provide a POSIX compatible shell (e.g. 'bash') and
|
||||||
@ -82,15 +84,6 @@ them. You may need to install additional fonts and other sub-packages
|
|||||||
for the PDF version to be generated correctly.
|
for the PDF version to be generated correctly.
|
||||||
|
|
||||||
|
|
||||||
Generation of Documentation with autoconf (configure) + make:
|
|
||||||
-------------------------------------------------------------
|
|
||||||
Use "make html" in the documentation directory to generate the HTML
|
|
||||||
documentation, or "make pdf" to generate the PDF version. "make docs"
|
|
||||||
generates both versions in one step (as would do "make clean html pdf").
|
|
||||||
|
|
||||||
To read the HTML or PDF docs, see above.
|
|
||||||
|
|
||||||
|
|
||||||
Generation of Documentation with CMake:
|
Generation of Documentation with CMake:
|
||||||
---------------------------------------
|
---------------------------------------
|
||||||
We assume that you use an out-of-source build as recommended.
|
We assume that you use an out-of-source build as recommended.
|
||||||
@ -1,7 +1,7 @@
|
|||||||
//
|
//
|
||||||
// Windows-specific code for the Fast Light Tool Kit (FLTK).
|
// Windows-specific code for the Fast Light Tool Kit (FLTK).
|
||||||
//
|
//
|
||||||
// Copyright 1998-2024 by Bill Spitzak and others.
|
// Copyright 1998-2025 by Bill Spitzak and others.
|
||||||
//
|
//
|
||||||
// This library is free software. Distribution and use rights are outlined in
|
// 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
|
// the file "COPYING" which should have been included with this file. If this
|
||||||
@ -105,8 +105,8 @@ extern void fl_cleanup_pens(void);
|
|||||||
|
|
||||||
// MSVC 2010 can't find round() although <math.h> is included above,
|
// MSVC 2010 can't find round() although <math.h> is included above,
|
||||||
// which is surprising because ceil() works fine.
|
// which is surprising because ceil() works fine.
|
||||||
// We could (should?) probably add configure/CMake feature tests for
|
// We could (should?) probably add CMake feature tests for round()
|
||||||
// round() and ceil() rather than depending on MSVC version numbers.
|
// and ceil() rather than depending on MSVC version numbers.
|
||||||
// AlbrechtS, 02/2010 - Note: we don't know about MSVC 2012 - 2015, see
|
// AlbrechtS, 02/2010 - Note: we don't know about MSVC 2012 - 2015, see
|
||||||
// https://docs.microsoft.com/en-us/cpp/preprocessor/predefined-macros
|
// https://docs.microsoft.com/en-us/cpp/preprocessor/predefined-macros
|
||||||
|
|
||||||
|
|||||||
@ -1,7 +1,7 @@
|
|||||||
HOW TO CREATE A NEW UNIT TEST
|
HOW TO CREATE A NEW UNIT TEST
|
||||||
-----------------------------
|
-----------------------------
|
||||||
|
|
||||||
1) Create your new test/unittest_xxx.cxx file (or use an existing one)
|
1) Create your new test/unittest_xxx.cxx file (or copy an existing one)
|
||||||
|
|
||||||
2) In your new cxx file, define a class derived from Fl_Group
|
2) In your new cxx file, define a class derived from Fl_Group
|
||||||
for your test (e.g. Ut_Test_Foo).
|
for your test (e.g. Ut_Test_Foo).
|
||||||
@ -50,30 +50,30 @@ HOW TO CREATE A NEW UNIT TEST
|
|||||||
|
|
||||||
3) Add an entry anywhere to the enum {} at the top of the unittests.h file. Example:
|
3) Add an entry anywhere to the enum {} at the top of the unittests.h file. Example:
|
||||||
|
|
||||||
enum {
|
enum {
|
||||||
UT_TEST_ABOUT = 0,
|
UT_TEST_ABOUT = 0,
|
||||||
UT_TEST_POINTS,
|
UT_TEST_POINTS,
|
||||||
...
|
...
|
||||||
UT_TEST_FOO, <-- ADD YOUR TEST CLASS NAME IN ALL CAPS
|
UT_TEST_FOO, <-- ADD YOUR TEST CLASS NAME IN ALL CAPS
|
||||||
...
|
...
|
||||||
};
|
};
|
||||||
|
|
||||||
4) Add your new unittest_xxx.cxx file to:
|
4) Add your new unittest_xxx.cxx file to:
|
||||||
|
|
||||||
a) test/CMakeLists.txt -- cmake needs this
|
test/CMakeLists.txt -- cmake needs this
|
||||||
b) test/Makefile -- configure needs this (?)
|
|
||||||
|
|
||||||
You should then be able to use cmake to create a build directory that
|
You should then be able to use cmake to create a build directory that
|
||||||
builds with your new test. e.g.
|
builds with your new test. e.g.
|
||||||
|
|
||||||
mkdir build
|
mkdir build
|
||||||
cmake ..
|
cd build
|
||||||
|
cmake ..
|
||||||
|
|
||||||
..and from there, you should be able to go through the common
|
..and from there, you should be able to go through the common
|
||||||
edit/make/run development cycle:
|
edit/make/run development cycle:
|
||||||
|
|
||||||
make -j 4 <-- should build bin/test/unittests with your test
|
make -j 4 <-- should build bin/test/unittests with your test
|
||||||
bin/test/unittests <-- run unittests to check your work
|
bin/test/unittests <-- run unittests to check your work
|
||||||
|
|
||||||
5) That's it!
|
5) That's it!
|
||||||
|
|
||||||
|
|||||||
@ -6,7 +6,7 @@
|
|||||||
// This demo show the different boxtypes. Note that some
|
// This demo show the different boxtypes. Note that some
|
||||||
// boxtypes are not appropriate for some objects
|
// boxtypes are not appropriate for some objects
|
||||||
//
|
//
|
||||||
// Copyright 1998-2023 by Bill Spitzak and others.
|
// Copyright 1998-2025 by Bill Spitzak and others.
|
||||||
//
|
//
|
||||||
// This library is free software. Distribution and use rights are outlined in
|
// 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
|
// the file "COPYING" which should have been included with this file. If this
|
||||||
@ -186,8 +186,8 @@ int main(int argc, char *argv[]) {
|
|||||||
int main(int argc, char **argv) {
|
int main(int argc, char **argv) {
|
||||||
fl_message_title("This program needs the Forms compatibility library");
|
fl_message_title("This program needs the Forms compatibility library");
|
||||||
fl_message(
|
fl_message(
|
||||||
"Please configure FLTK with Forms enabled (--enable-forms)\n"
|
"Please configure FLTK with Forms enabled, i.e.\n"
|
||||||
"or the CMake option FLTK_BUILD_FORMS=ON.");
|
"use the CMake option FLTK_BUILD_FORMS=ON.");
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
#endif // (FLTK_HAVE_FORMS)
|
#endif // (FLTK_HAVE_FORMS)
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user