Commit Graph

77 Commits

Author SHA1 Message Date
mid-kid b83a6abe01 Configure/make: Quote variables that may contain spaces
This allows installing FLTK to directories that contain spaces.
2024-08-10 16:28:37 +02:00
Albrecht Schlosser 2001132f4a Add configure option to build tests only on request (#940)
Option: ./configure --disable-test   build test programs (default=yes)

Thanks for the patch(es) to @michaelbaeuerle.

I added `make test` to be able to build the test programs from the
FLTK root directory if FLTK was configured with --disable-test.
2024-03-20 17:24:12 +01:00
ManoloFLTK 4fb18ffbdd Fix "Provide --without-fluid configure option" - cont'd (#725) 2023-05-10 14:41:48 +02:00
ManoloFLTK fe0fcecd61 Fix "Provide --without-fluid configure option " (#725)
Add new --disable-fluid configure option.
2023-05-09 16:19:12 +02:00
Albrecht Schlosser 5175192755 CMake: build shared libs with OPTION_CAIROEXT (issue #250)
- remove separate libfltk_cairo to avoid cyclic dependencies, but
- keep a dummy libfltk_cairo in 1.4.0 for backwards compatibility
- move cairo/Fl_Cairo.cxx to src/Fl_Cairo.cxx
- add preliminary Cairo support for Visual Studio (MSVC)

Static linking is not affected by this change, but users building
with hand-made Makefiles will have to remove libfltk_cairo starting
with FLTK 1.4.0. The dummy library can be linked for backwards
compatibility but it will be removed later (in 1.4.x or 1.5.0).

The shared FLTK library libfltk.{so|dylib|dll|..} depends on libcairo
if and only if FLTK is built with one of the Cairo options. This has
always been the case for OPTION_CAIROEXT but is now also true if only
OPTION_CAIRO is selected, i.e. FLTK programs linked with a Cairo
enabled shared FLTK library will also be linked with libcairo. The same
is true for configure options --enable-cairo and --enable-cairoext,
respectively.

Preliminary Cairo support for MSVC now detects a Cairo installation
using the CMake variable FLTK_CAIRO_DIR which must be set by the user.
Note that this feature is temporary and may be changed in the future
for a better and more comfortable version.
2023-03-09 17:34:05 +01:00
Matthias Melcher 1fc269b0d4
Move global FLTK options into new app fltk-admin (#560) 2023-01-21 17:14:41 +01:00
ManoloFLTK f5ad1d2545 Wayland: fix configure-based build 2022-03-05 10:18:11 +01:00
Albrecht Schlosser 5438954d8c Generate FL/fl_config.h rather than FL/abi-version.h
... as discussed in fltk.coredev in thread "RFC: introduce public
config header <FL/fl_config.h>", see:
https://groups.google.com/g/fltkcoredev/c/xLCs1AIXMVo/m/MHZpQggzAQAJ

- Rename abi-version.h to fl_config.h, rename input files,
  update dependencies, .gitignore, CMake, configure and Makefiles.

- Include Cairo options in FL/fl_config.h

- Rename FLTK_USE_CAIRO to FLTK_HAVE_CAIROEXT for consistency.

- Include <FL/fl_config.h> in config.h and wherever necessary,
  fix include order (move FL/Fl.H to the top) and more.

- Move USE_X11 to fl_config.h and rename to FLTK_USE_X11

- Do not include <config.h> in Cairo demo program which is no
  longer required in Cairo programs since FLTK 1.4.0
2021-12-18 22:44:08 +01:00
Albrecht Schlosser ef1c2d5b26 Fix README files and remove stale config.guess and config.sub
README.Unix.txt and README.Windows.txt (MinGW, MSYS) instructed to
execute `NOCONFIGURE=1 ./autogen.sh` which is no longer necessary
(a simple `autoconf` does the job).

Remove files misc/config.guess and misc/config.sub because they are
no longer needed: these files are now in th FLTK root directory
available. Remove all references to these files.

Fix .gitattributes accordingly. Also exclude the .github folder
from exports, for instance when creating distribution tarballs.
2021-11-24 15:01:45 +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
Albrecht Schlosser edd5818355 fix autoconf and Makefile
do not delete config.sub and config.guess

todo: remove misc/config.{sub|guess} ?
2021-02-15 00:09:15 +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
Michael C Tiernan d9f7a368a6 Modify make dist-clean target
Added items that are left around by config/make process.

Note: commit message edited by AlbrechtS.
2020-03-16 16:41:25 +01:00
Albrecht Schlosser 6b278da83d Rename configure.in to configure.ac.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11998 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-09-30 21:09:59 +00:00
Albrecht Schlosser 9adb181156 Make FL_ABI_VERSION configurable (STR #3161).
This commit adds the configure option --with-abiversion and the CMake option
OPTION_ABI_VERSION. Both options can be set e.g. to 10304 to build with
FL_ABI_VERSION = 10304 (FLTK 1.3.4).

For IDE builds there are new files ide/<IDE-NAME>/FL/abi-version.h that
can be edited to change the ABI version before the FLTK lib is built.
Note that this file MUST be copied to the include/FL directory if the
IDE-built library is to be installed.

The default is FL_ABI_VERSION = FL_MAJOR*10000 + FL_MINOR*100 + 0, i.e.
10300 for all FLTK 1.3.x versions to keep binary compatibility (ABI).

Todo: more tests and more documentation.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10786 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2015-07-12 19:23:55 +00:00
Greg Ercolano fbfac0f6cc 'make clean' should clean examples too.
'make' however should /not/ build examples.



git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10224 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2014-08-01 20:56:09 +00:00
Pierre Ossman e1df29b852 Stop relying on uname and instead ask autoconf what platform
we are building for. This makes cross compiling things a lot
easier.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@9990 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2013-09-24 09:10:04 +00:00
Greg Ercolano 4f4a8fc3c7 Modifications to all LGPL headers for STR #2685.
(to clarify static exception LGPL by changing license references)



git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@8864 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2011-07-19 04:49:30 +00:00
Michael R Sweet 2ec2b4eda2 Add clang pseudo-target.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@8427 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2011-02-15 15:29:03 +00:00
Matthias Melcher 746c7e24b8 Reversed stupid idea in 'distclean'
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@8138 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-12-29 16:43:06 +00:00
Matthias Melcher 3ef9014a5d 'make distclean' cleans Xcode leftovers
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@8122 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-12-27 15:03:59 +00:00
Matthias Melcher 32716d6b1e Updated the Fluid IDE support for the current source file structure. Changed the Fl_Tree rendering code around a bit to make the tree more like MSWindows on Windows and more like Apple on Apple machines. I hope you guys like it. I also moved the function to load Fl_Preferences into an Fl_Tree into the Fl_Tree class where it belongs.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7672 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-07-10 09:44:45 +00:00
Fabien Costantini d94e82c6c2 Updated make etags target src files filter.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6798 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2009-06-27 16:39:36 +00:00
Fabien Costantini a33d0a6d29 STR#2035 fix : Changed all 1998-200[0-8] dates to 1998-2009 for supported fltk files (this excludes i.e the png subdir).
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6626 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2009-01-12 14:52:45 +00:00
Fabien Costantini ed6ac69dd6 Fixed cairo makefiles link error when shared option activated under linux.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6485 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2008-10-25 18:31:44 +00:00
Albrecht Schlosser 587a23b3bb Minor documentation Makefile tweaks.
Removed fltk.pdf from svn:ignore and make distclean.
Added svn:ignore for man pages in documentation/src.
Added *.log to make clean in documentation.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6465 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2008-10-19 09:46:08 +00:00
Fabien Costantini 268ffc6ef2 Cairo increment 2: Finer cairo granularity, less deps, new fltk_cairo lib
+ added new USE_CAIRO config preprocessor def. 
   to differentiate from HAVE_CAIRO so that we can use the cairo lib 
   without forcing the full fltk lib to be linked against it.
   In that case, cairo autolink context functionality which needs fltk lib 
   instrumentation is disabled.
 + added new --enable-cairoext, which correspond to previous --enable-cairo.
   now, --enable-cairo only adds HAVE_CAIRO def. and keeps fltk lib
   from referencing cairo.
   In both cases (--enable-cairo & --enable-cairoext), a new fltk_cairo lib is 
   created. This lib, similarly to local versions of png,jpeg and zlib, 
   is not generated if cairo is not enabled.
 + added cairo to fltk-config : now new --use-cairo flag is available
 + modified all unix like makefiles to now generate minimum cairo deps and also
   new libfltk_cairo lib.
 + added new cairo subdir to permit conditional fltk_cairo lib generation. 
 + vc2005 project minimum update to compile without be broken, but still needs
   to create a similar fltk_cairo independent lib. For now, it works as before
   with a dedicated cairo env. similar to --enable-cairoext context in unix.
 + regression tested ok with cairo disabled on win32, mac osx, mingw.
  


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6462 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2008-10-19 01:42:35 +00:00
Michael R Sweet d76c1e8cd0 Remove unused variables.
Fix fltk-config --libs and fltk-config --ldstaticflags (STR #1799)


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5985 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2007-11-20 21:15:08 +00:00
Matthias Melcher d0952607ac STR #1643: make clean now also deleting fltk.spec
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5788 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2007-05-01 14:28:23 +00:00
Matthias Melcher e9a617f0c2 STR #1642: removeing cat 6 man pages on Make clean
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5787 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2007-05-01 14:25:07 +00:00
Fabien Costantini 4f9371a4ab Makefiles
+ as discussed, added etags capability to main Makefile
	invoke it by 'make etags' from the root distrib



git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5756 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2007-04-04 07:56:47 +00:00
Michael R Sweet 44b2ff35cf Use install command instead of CHMOD, CP, and MKDIR.
Drop all POSTBUILD stuff as it is no longer used.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5663 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2007-02-06 19:35:28 +00:00
Michael R Sweet 0ce142514f Use "exit 1" instead of "break" to stop a build - that allows automated
build tools to better detect build errors...


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5357 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2006-08-24 21:46:38 +00:00
Matthias Melcher 4e038ef82b STR #1169: Fixed 'make distclean' to remove binaries inside MacOS app packages
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5040 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2006-04-28 01:10:00 +00:00
Michael R Sweet 115d539691 More packaging fun.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4756 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2006-01-15 18:36:16 +00:00
Michael R Sweet 61b86ce0e5 More packaging fun (games package to "advertise" FLTK...)
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4755 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2006-01-15 18:02:44 +00:00
Michael R Sweet 464c2f4a5e Separate the desktop install/uninstall stuff so that users that don't
want desktop integration (or don't have root access) will be able to
install/uninstall.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4752 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2006-01-15 15:15:34 +00:00
Michael R Sweet 1c399af444 Update source file headers with STR web page.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4288 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-04-16 00:13:17 +00:00
Michael R Sweet 91c3b8231d Fix subclass callback output code.
Make fltk-config script executable after rerunning configure script.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4286 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-04-15 20:45:07 +00:00
Michael R Sweet add37faa25 Copyright updates.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4052 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-02-24 21:55:12 +00:00
Michael R Sweet bf910884cc Documentation updates (STR #570)
Added DESTDIR support and now remove all man pages for the
"uninstall" target (STR #545)

Fix PNG drawing on buggy WIN32 graphics cards (STR #548)

The configure script didn't propagate the CPPFLAGS environment
variable (STR #549)

The numpad keys didn't work properly on WIN32 (STR #502)

fl_input() and friends now set the input focus to the text field
when the dialog is shown (STR #553)

Fixed background color mixup when drawing Fl_Choice menus (STR
#544)

Fixed MingW makefiles (STR #550)

More VC++ project file tweaking (STR #559)

Fl_PNG_Image didn't use the png_set_trns_to_alpha function when
available (STR #547)

The FL_UNFOCUS event wasn't always sent when switching tabs (STR
#558)


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@3868 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2004-10-18 20:22:25 +00:00
Michael R Sweet 388a864ef7 Makefile and configure script support for image libs.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@3644 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2004-07-06 00:18:49 +00:00
Michael R Sweet a3d0905c9e Copyright updates and prep for 1.1.5rc1.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@3391 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2004-04-11 04:39:01 +00:00
Michael R Sweet f57e113f71 Use setup GUI with portable distributions.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@3035 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2003-06-15 05:39:12 +00:00
Michael R Sweet 00cb676e11 Copyright update for 1.1.3 release (not quite yet, but soon...)
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@2936 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2003-01-30 21:46:07 +00:00
Michael R Sweet a1b7e13ba9 Fix "make distclean"...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@2637 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2002-09-26 01:15:33 +00:00
Michael R Sweet 4fac733ed7 Oops, doc/foo should be documentation/foo...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@2553 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2002-07-30 14:07:24 +00:00
Michael R Sweet 1cfc6385dd BMP image loader fixes.
JPEG with Cygwin fix.

Make sure that all generated files are removed with a "make distclean".

Make sure we remove the autoconf cache directory when building the
source distribution.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@2551 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2002-07-26 14:22:02 +00:00
Michael R Sweet 30b61c9e03 Run "fltk-config --post" after installing and stripping fluid; otherwise
the resource fork will be lost.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@2166 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2002-05-01 19:35:53 +00:00
Michael R Sweet 2d6a98560e Doco and dist file updates.
Add fltk-config man page.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@1911 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2002-01-06 13:40:32 +00:00