Commit Graph

100 Commits

Author SHA1 Message Date
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
95165884b6 Support cross-compilation with autotools
We use the host system's `fluid` when cross-compiling. This must be
executable as `fluid`, i.e. it must be in the PATH or otherwise
defined, for instance as an alias.
2020-06-10 16:24:39 +02:00
Albrecht Schlosser
7d1488507d CMake: Fix fltk-config for Windows and Unix/Linux.
This update ought to work with

  fltk-config [--use-images] [--use-gl] --compile <c source file>

on both Windows and Unix/Linux when built with CMake. It was tested
under Windows and Linux using fltk-config directly from the build tree,
but it should work as well after installation.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12686 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2018-02-23 19:41:52 +00:00
Albrecht Schlosser
66cdcfcd1b Fluid: Fix platform-specific build system (CMake + configure).
Don't compile "empty" file (avoid warning: empty translation unit).
Add '-u' (update) command switch to 'make rebuild'.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12173 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-02-15 20:28:13 +00:00
Manolo Gouy
3932b1af7c Remove uses of the '$(shell if test ...' syntax from Makefile that is not cross-platform
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11872 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-08-12 16:59:06 +00:00
Albrecht Schlosser
7728bf91e6 Prepare build configuration variables in Makefiles.
Introduce new Makefile variables BUILD_xxx in makeinclude file, generated
by configure. These variables may be used to select files to be compiled,
dependent on the build configuration.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11079 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-01-28 23:57:50 +00:00
Albrecht Schlosser
f41be78153 Rename confusing configure and Makefile (makeinclude) variable.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10653 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2015-03-25 20:06:54 +00:00
Albrecht Schlosser
1a69ba5ae9 Update configure and makeinclude.in to get rid of version numbers in Makefiles.
configure is used to set all needed version numbers in makeinclude.
makeinclude is included in Makefile's and the version numbers are used
to build the correct shared libs.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10609 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2015-03-07 18:37:56 +00:00
Albrecht Schlosser
8a3c43da55 Remove unused htmldoc from autoconf configure options.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10351 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2014-10-04 22:32:34 +00:00
Manolo Gouy
598e2cb63b MacOS: create a bundled version of all example programs with fltk-config --post
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@9736 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2012-12-05 14:53:03 +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
Manolo Gouy
a8530c73fa Adopted use of FL_LIBRARY #define symbol under Mac OS X. This allows to compile
client applications without including Mac OS system headers, with a gain in speed of 
compilation and portability. The source files of all FLTK libraries must now be compiled with 
-DFL_LIBRARY under Mac OS X. Make, CMake and Xcode project support files
have been modified accordingly.

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@8113 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-12-23 14:24:29 +00:00
Manolo Gouy
f3c7efc8d2 The 3 objective-c++ files used for the Mac OS X support are no longer included
by other files but added to the list of source files to be compiled
for Mac OS X only. Support files for autoconf/configure/make, CMake and Xcode
are also modified accordingly.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@8049 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-12-17 10:43:41 +00:00
Albrecht Schlosser
e1cff96f1f Added Windows Resource Compiler ("RC") to configure/makeinclude for
easier cross-compiling (not yet fully supported).


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7973 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-12-08 09:48:07 +00:00
Matthias Melcher
a803cec1b7 Fixed even more Copyright to 2010. Probably still forgot some.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7906 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-11-28 21:28:30 +00:00
Albrecht Schlosser
998cc6df52 Merge of branch-1.3-Fl_Printer, with the following main changes:
(1) adding Fl_Device class (and more) for device abstraction
 (2) adding Fl_Pinter class (and more) for printing support.

Todo: Code cleanup, update dependencies, remove/replace test print window.
I'm looking into converting the test window popup in a global shortcut
that would pop up the print dialog now...


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7263 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-03-14 18:07:24 +00:00
Greg Ercolano
2c3d7c7b45 FNFC continued -- Added makeinclude.in
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6998 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-01-13 23:29:43 +00:00
Matthias Melcher
43f16de4de Removed [] expression from configure.in
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6954 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2009-12-07 21:52:11 +00:00
Matthias Melcher
b34b7a8d2b Some fixes for the Cocoa port
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6952 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2009-12-07 19:15:37 +00:00
Matthias Melcher
b2cffc688e Moved OS X code base to the more moder Cocoa toolkit thanks to the awesome work of Manolo Gouy (STR #2221). This is a big one! I tested all test applications under 32-bit autoconf and Xcode, and a few apps under 64bit intel. No PPC testing was done. Please verify this patch if you have the machine!
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6951 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2009-12-06 22:21:55 +00:00
Matthias Melcher
167d767e0f Changed the copyright to 2009 for header files. Still todo: src and test directory.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6614 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2009-01-01 16:11:32 +00:00
Matthias Melcher
6b3f61e3ff In the configuration setp, LIBNAME (which contains the local path of the library as seen from the src directory) was used wrong. I added LIBBASENAME, the true library name without the path, and replaced LIBNAME wherever it was used wrongly.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6611 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2008-12-29 19:45:46 +00:00
Fabien Costantini
b2deb4b6f4 Fixed one typoe in configure.in, changed LINKFLTKCAIRO parameter passing in LINKSHARED.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6487 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2008-10-25 21:06:31 +00:00
Fabien Costantini
9d3b6d2b73 corrected makeinclude IMGDSONAME to CAIRODSONAME paste typo.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6466 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2008-10-19 10:19:11 +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
Fabien Costantini
14ca02ffff Doxygen documentation: commented out the 1.5.7 specific doc options, updated README for pdf and html use. Now minimum version required is 1.5.5
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6440 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2008-10-15 15:58:04 +00:00
Matthias Melcher
b6bde2e456 Merging the UTF8 patch, consisting of O'ksi'd s original 1.1.6 patch and additions by Ian. PLEASE BE AWARE that the patch in its current incarnation is a regression in many aspects and further work is required before we can announce Unicode support.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6212 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2008-09-10 23:56:49 +00:00
Michael R Sweet
ba2e9f3375 Make --post create a basic Mac OS X application bundle with a shell script
that executes the bundled program.

Change the defaults for Quartz, threading, large file support, XDBE, Xft,
and Xinerama to "yes".

Remove the old Mac OS X resource fork file.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6142 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2008-07-13 21:39:07 +00:00
Matthias Melcher
9c538a4b2e STR 1883: Attempt to fix installation of binaries in .app bundle on platforms other than OS X. Must be tested with Cygwin and on Linux!
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@6051 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2008-02-26 15:26:08 +00:00
Michael R Sweet
8dac15372c Add -L. to DSOFLAGS (STR #1791)
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5988 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2007-11-21 04:43:28 +00:00
Matthias Melcher
a1d7593761 STR #1632: restored files to the original settings. I a no expert with build files, so I will leave this to someone who can fix this right. Matthias.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5800 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2007-05-03 15:49:59 +00:00
Matthias Melcher
d84e2832f7 Second aproach at solving the 'install -d' issue. I added a public domain script that supposedly solves the issue on every box. I also looke at 'install-sh', but found a bazillion of versions, doing so much more than we actually need. But I am open to sugestions, and happy to reverse my changes if something better comes along.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5799 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2007-05-03 12:33:20 +00:00
Matthias Melcher
40be03495d Remove the 'verbose' flag for directory creation.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5798 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2007-05-02 15:12:09 +00:00
Matthias Melcher
ba562f87b9 STR #1632: replaced 'install -d' with 'mkdir -p', falling back to 'install' in case 'mkdir' could not be found (which I can't imagine happening. Now I hope that every implementation of 'mkdir' supports the '-p' flag.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5797 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2007-05-02 15:01:37 +00:00
Matthias Melcher
6df72e8979 STR #1623: restored the unloved POSTBUILD command because the reulting executable is still better than the automatically foregrounding one. The 'right thing' is to create a bundle anyways.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5728 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2007-03-06 17:03:25 +00:00
Michael R Sweet
7d64ba5ec8 Newer autoconf defines "datarootdir", which "datadir" depends on. I still
don't know why they did this...


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5677 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2007-02-08 19:17: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
47fb93aa3c Update pthreads configure test to work on more platforms.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5661 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2007-02-05 18:39:27 +00:00
Michael R Sweet
ef2dc5bd87 Add DSOFLAGS to DSOCOMMAND's, so that we inherit X_LIBS and other options
for linking of shared libs.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5426 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2006-09-12 01:31:42 +00:00
Michael R Sweet
4db211dce1 Add missing man.6 rule...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5381 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2006-08-29 18:44:59 +00:00
Michael R Sweet
58699112db Fix use of LDFLAGS and make install depend on all target...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5264 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2006-07-25 19:06:56 +00:00
Michael R Sweet
eea2b38b34 Add --with-archflags option to configure script, and use it in the right
places.

Update changes file.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5216 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2006-06-19 18:29:31 +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
887a458227 Work on Linux and OSX desktop integration stuff via make install and
packaging via EPM.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4750 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2006-01-15 03:16:09 +00:00
Michael R Sweet
4ba1119822 Workaround Solaris make problems...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4706 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-12-14 02:23:01 +00:00
Michael R Sweet
7dd1ddbeef FLTK now enables large file support when available (STR #1087)
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4702 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-12-14 00:39:55 +00:00
Michael R Sweet
2f40b8b80b Start adding support for sound in Sudoku via ALSA.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4684 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-12-05 00:55:01 +00:00
Michael R Sweet
ff4722e07a Fix local image library link bug...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4490 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-08-08 16:00:53 +00:00
Michael R Sweet
b8dcdf4c64 Compilation could fail if a previous installation of FLTK was in
the same (non-standard) directory as an image library (STR #926)

configure.in:
    - Add LINKFLTKFORMS definition.
    - Change LINKFLTK* definitions to just reference the static
      libraries themselves.

makeinclude.in:
    - Use LINKFLTKFORMS and drop -L../lib stuff for static linking.

src/Makefile:
    - Move -L. in front of LDLIBS and IMGLIBS when linking shared
      libfltk_images.



git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4472 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-08-08 00:44:38 +00:00