packaging support improvements

This grew out of my work creating an sfml port for macports, but should
be helpful for package maintainers of various distributions:

* add an SFML_USE_SYSTEM_DEPS option to ignore everything in extlibs/
  except for headers/stb_image, and use the system versions

* install pkg-config files if a pkg-config program is found
  and either lib/pkgconfig or libdata/pkgconfig exists under the
  INSTALL_PREFIX, or the SFML_INSTALL_PKGCONFIG_FILES flag is set
  explicitly

* install pkg-config files for static libs too, add the necessary
  Requires.private and Libs.private entries to the .pc files to support
  static linking

* on OS X, honor all INSTALL_NAME and RPATH related cmake variables and
  only set the INSTALL_NAME_DIR to "@rpath" if none of them is set, this
  preserves the default behavior of using @rpath but also allows
  overriding by the usual cmake mechanisms
This commit is contained in:
Rafael Kitover 2016-12-19 13:16:07 -08:00 committed by Lukas Dürrenberger
parent 40ae477cc3
commit 5fe5e5d6d7
6 changed files with 81 additions and 27 deletions

View file

@ -8,5 +8,8 @@ Description: The Simple and Fast Multimedia Library, graphics module.
URL: http://www.sfml-dev.org
Version: @VERSION_MAJOR@.@VERSION_MINOR@.@VERSION_PATCH@
Requires: sfml-window
Requires.private: sfml-system, freetype2
Libs: -L${libdir} -lsfml-graphics
# gl and jpeg may not be in pkg-config
Libs.private: @OPENGL_gl_LIBRARY@ @OPENGL_glu_LIBRARY@ @JPEG_LIBRARY@
Cflags: -I${includedir}