Commit Graph

81 Commits

Author SHA1 Message Date
Albrecht Schlosser f74f66e507 Re-enable quoting in fltk-config(.in) [fix PR #17]
- add some more missing quotes
- use `eval` to execute the compile/build command.

Tested with both configure/Make and CMake (Ninja) after installing
in a path that contains spaces (Linux only so far).
2024-08-12 17:12:44 +02:00
Albrecht Schlosser 4077dfa629 Revert quoting variables in fltk-config.in partially
Fix regression: commit b83a6abe01 broke
  `fltk-config --compile` even in the build folder and in folders not
  containing spaces.

This commit partially reverts the above mentioned commit so
  `fltk-config` works as before.

To do: fltk-config does not work if installed in a directory that
  contains spaces, check if this can be fixed.
2024-08-10 20:14:50 +02:00
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 ee3f9dd06d Fix more missing quotes in fltk-config.in (#714)
Sorry for the noise.
2023-04-13 22:13:18 +02:00
Albrecht Schlosser f9669b80b9 Fix fltk-config check for local invocation and libs (#717)
This updates the changes done for issues #647 and #656.
2023-04-10 22:02:57 +02:00
Albrecht Schlosser 100786222c Fix missing quotes in fltk-config.in (#714) 2023-04-10 00:46:08 +02:00
Albrecht Schlosser 877126e572 Allow more input files and compiler flags in fltk-config (#647, #656)
Also refactor, reformat, and simplify code:
- move all variable substitutions to the beginning of the file
- simplify Cairo support and nesting of 'if' clauses
- unify indenting: 4 spaces, no tabs
2023-04-09 17:15:47 +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
Greg Ercolano b275ff0715 Fix for fltk when make install used 2022-01-23 03:10:13 -08:00
Greg Ercolano 6546814a23 For issue #358 - adds examples/cairo-draw-x.cxx
Since this is the first cairo example in the examples directory,
    it necessarily involved changes to the Makefile and to fltk-config
    to properly handle the absence/existance of the cairo libs.

    TBD: Add docs to the cario widget describing coordinate system
    and how it differs from the default cairo normalized coordinate system.
2022-01-16 15:22:16 -08: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 c37ea8b6ca Fix line endings and other (svn) properties of fltk-config.in.
Remove executable property.
Set line ending to LF.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@13001 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2018-08-03 09:18:07 +00: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
Manolo Gouy 5a7f80c466 When targetting MacOS+X11, fltk-config should not bundle the executable.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12150 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-12-19 14:35:08 +00:00
Albrecht Schlosser 0a6be0a83f Fix compiler warnings (STR 2988), porting from branch-1.3.
This commit is the accumulated patch introduced in branch 1.3
in svn r 11094, 11095, and 11096.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11097 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-01-31 04:33:54 +00:00
Albrecht Schlosser fb172ecd3c Fix fltk-config for CMake build.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10787 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2015-07-12 22:32:30 +00:00
Albrecht Schlosser 1e249a9804 Remove unused variable 'bindir' from fltk-config and fix CMake local usage.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10555 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2015-02-06 17:03:54 +00:00
Manolo Gouy e44018c1d2 Added the NSHighResolutionCapable item to fltk-config --post for fltk apps to be high-resolution ready.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@9861 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2013-04-05 15:28:43 +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 86688384ce Fix fltk-config --post - script wrapper for app bundle had broken dirname call.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@8149 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2011-01-01 00:10:38 +00:00
engelsman e729fccaf9 added --prefix and --includedir flags to fltk-config (STR #2137)
also fixed typo in fltk-config.cmake.in (STR #2443)



git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7825 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-11-13 16:47:47 +00:00
engelsman db8d9893eb Fixed fltk-config to give --use on one line (STR #2408)
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7813 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-11-10 21:18:17 +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 7180c24f3c STR #1962: I tried to fix the configuration scripts so that the image support libraries (fltk_jpeg fltk_png fltk_z) are linked in the same fashion as the fltk_image library. Please verify this fix.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6609 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2008-12-29 17:10:12 +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 d436a13198 STR#2028 new fix: replace ' by \" for the $compile var wrapping in fltk-config.in.
Tested successfully on _both_ bash and sh shells,  on Mac OS X 10.5,linux fedora 4,latest cygwin/mingw.

Should also works under IRIX sh, please report feedback on other non bashed based unix platforms.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6177 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2008-08-29 09:15:26 +00:00
Michael R Sweet bfbfe8a7b2 Revert change for STR #2028, which is not correct.
$(foo) is NOT portable, and nested quotes like "'$foo'" are required to do
variable expansion for POSIX compatibility.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6176 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2008-08-28 19:55:57 +00:00
Fabien Costantini 2718170bfd STR #2028 fix: single quotes changed to double quotes around the variable $compile to make it interpreted, Thanks alvin
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6175 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2008-08-28 18:12:23 +00:00
Michael R Sweet 18b431e02c Make sure script double-quotes $0...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6171 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2008-08-26 21:07:32 +00:00
Michael R Sweet e9b9ec812d Use $@ for arguments passed to the bundled executable.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6170 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2008-08-26 19:21:22 +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 ab406a8e79 STR 1875: fixed missing return value from 'fltk-config' for compiles that require a post run
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@6032 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2008-02-20 18:10:13 +00:00
Michael R Sweet 8f270ac7e3 Fix copy/paste error.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@6001 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2007-12-16 20:44:28 +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 b2e0a1b087 STR #1624: Added --optim option for fltk-config which returns all flags for compilation that are not returned by --cflags or --cxxflags.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5733 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2007-03-06 20:00:04 +00:00
Matthias Melcher 5add80de70 Added POSTBUILD changes for fltk-config.in which I forgot earlier
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5730 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2007-03-06 19:13:54 +00:00
Michael R Sweet 31e948ed4b Update packaging files.
Remove --post code from fltk-config (--post is now ignore on all
platforms)

Remove outdated information from README.mac.



git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5664 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2007-02-06 19:44:10 +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 84fe87f472 Fix indentation of elements (STR #1549)
Update layout of help dialog to look like other help dialogs.

Drop resource fork stuff from fltk-config (no more --post, it is a no-op)

Use a single table for the header on the documentation page.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5643 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2007-01-28 19:36:51 +00:00
Michael R Sweet a4c2cbd49a Tweak gtk+ drawing of Fl_Choice.
Add support for "-Dname" option in fltk-config.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5484 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2006-09-24 04:39:55 +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 e6bbd2d525 Update copyrights.
Also check for feof() when the character returned by getc is < 0
to work around a bug in Cygwin.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4782 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2006-01-31 19:00:08 +00:00
Michael R Sweet bf7082f16c Fix fl_filename_list() bug (STR #1159) caused by changing of the ABI
(dirent size is different for large file mode)

The default is now --disable-largefile; if you use --enable-largefile,
the large file support definitions are propagated to the fltk-config
script as well.



git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4779 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2006-01-31 15:50:06 +00:00
Michael R Sweet 6936751308 Don't use readlink, it is non-standard.
Sorry, no symlink support for fltk-config, you'll need to use wrapper
scripts.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4689 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-12-07 20:13:12 +00:00
Michael R Sweet c38c41a0c6 Fix typo in fltk-config script.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4513 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-08-15 20:13:02 +00:00
Michael R Sweet b04558b30d Revert --prefix. Until we have a valid use case, we WILL NOT add
--prefix, since IMHO it makes no sense to offer it.



git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4498 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-08-10 13:54:17 +00:00
Dejan Lekic d89e94ded2 Added --prefix flag as suggested by Ian McArthur.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4496 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-08-10 12:35:20 +00:00
Michael R Sweet 87a8b2d9c7 Add --cc and --cxx options to fltk-config, which show the compilers that
were used to compile FLTK...


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4488 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-08-08 15:08:06 +00:00
Michael R Sweet 3b659149e6 The fltk-config script now handles invocation via a symlink (STR
#869)



git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4477 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-08-08 01:09:39 +00:00