summaryrefslogtreecommitdiff
path: root/debian/patches
diff options
context:
space:
mode:
Diffstat (limited to 'debian/patches')
-rw-r--r--debian/patches/01_remove-googleapi-css.patch16
-rw-r--r--debian/patches/02_build-doc-once.patch21
-rw-r--r--debian/patches/03_pkgconfig-cleanup.patch41
-rw-r--r--debian/patches/04_pkgconfig-freebsd.patch30
-rw-r--r--debian/patches/05_cmake-config-LIB_SIFFIX.patch17
-rw-r--r--debian/patches/06_pkgconfig-libs-private.patch38
-rw-r--r--debian/patches/series6
7 files changed, 169 insertions, 0 deletions
diff --git a/debian/patches/01_remove-googleapi-css.patch b/debian/patches/01_remove-googleapi-css.patch
new file mode 100644
index 0000000..776be09
--- /dev/null
+++ b/debian/patches/01_remove-googleapi-css.patch
@@ -0,0 +1,16 @@
+Description: Remove commented out googleapi css in documentation
+ There isn't actually any privacy breach here (since the line is commented
+ out), but removing it shuts up lintian.
+Author: James Cowgill <jcowgill@debian.org>
+---
+This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
+--- a/doc/header.html.in
++++ b/doc/header.html.in
+@@ -4,7 +4,6 @@
+ <title>SFML - Simple and Fast Multimedia Library</title>
+ <meta http-equiv="Content-Type" content="text/html;"/>
+ <meta charset="utf-8"/>
+- <!--<link rel='stylesheet' type='text/css' href="https://fonts.googleapis.com/css?family=Ubuntu:400,700,400italic"/>-->
+ <link rel="stylesheet" type="text/css" href="doxygen.css" title="default" media="screen,print" />
+ <script type="text/javascript" src="jquery.js"></script>
+ <script type="text/javascript" src="dynsections.js"></script>
diff --git a/debian/patches/02_build-doc-once.patch b/debian/patches/02_build-doc-once.patch
new file mode 100644
index 0000000..3674295
--- /dev/null
+++ b/debian/patches/02_build-doc-once.patch
@@ -0,0 +1,21 @@
+Description: Adjust build script to build documentation only once
+ This patch removes the ALL option from the documentation build command so
+ that it must be run manually with "make doc". This prevents the documentation
+ being built twice (normal build + install phase). It also allows the
+ documentation building to happen after the code building, which makes the
+ logs much more readable in parallel builds.
+Author: James Cowgill <jcowgill@debian.org>
+Forwarded: no
+---
+This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
+--- a/doc/CMakeLists.txt
++++ b/doc/CMakeLists.txt
+@@ -45,7 +45,7 @@ configure_file(${DOXYGEN_INPUT_DIR}/doc/
+ configure_file(${DOXYGEN_INPUT_DIR}/doc/doxygen.css ${DOXYGEN_OUTPUT_DIR}/html/doxygen.css COPYONLY)
+
+ # target setup
+-add_custom_target(doc ALL
++add_custom_target(doc
+ COMMAND ${CMAKE_COMMAND} -E echo_append "Building API Documentation..."
+ COMMAND ${DOXYGEN_EXECUTABLE} ${DOXYGEN_CONFIGURED_INPUT}
+ COMMAND ${CMAKE_COMMAND} -E echo "Done."
diff --git a/debian/patches/03_pkgconfig-cleanup.patch b/debian/patches/03_pkgconfig-cleanup.patch
new file mode 100644
index 0000000..915bae0
--- /dev/null
+++ b/debian/patches/03_pkgconfig-cleanup.patch
@@ -0,0 +1,41 @@
+Description: Cleanup duplicated pkg-config code
+ Some parts of the pkg-config code released with 2.5.0 were duplicated and make
+ adjusting the pkg-config paths more complicated. Fix this by simply removing
+ the old code (which should be removed anyway).
+Author: James Cowgill <jcowgill@debian.org>
+Forwarded: no
+---
+This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -269,30 +269,6 @@ if(SFML_OS_MACOSX)
+ set(XCODE_TEMPLATES_ARCH "\$(NATIVE_ARCH_ACTUAL)")
+ endif()
+
+-if(SFML_OS_LINUX OR SFML_OS_FREEBSD OR SFML_OS_OPENBSD)
+- set(PKGCONFIG_DIR lib${LIB_SUFFIX}/pkgconfig)
+- if(SFML_OS_FREEBSD OR SFML_OS_OPENBSD)
+- set(PKGCONFIG_DIR libdata/pkgconfig)
+- endif()
+- if(BUILD_SHARED_LIBS)
+- sfml_set_option(SFML_INSTALL_PKGCONFIG_FILES FALSE BOOL "TRUE to automatically install pkg-config files so other projects can find SFML")
+- if(SFML_INSTALL_PKGCONFIG_FILES)
+- foreach(sfml_module IN ITEMS all system window graphics audio network)
+- CONFIGURE_FILE(
+- "tools/pkg-config/sfml-${sfml_module}.pc.in"
+- "tools/pkg-config/sfml-${sfml_module}.pc"
+- @ONLY)
+- INSTALL(FILES "${CMAKE_CURRENT_BINARY_DIR}/tools/pkg-config/sfml-${sfml_module}.pc"
+- DESTINATION "${CMAKE_INSTALL_PREFIX}/${PKGCONFIG_DIR}")
+- endforeach()
+- endif()
+- else()
+- if(SFML_INSTALL_PKGCONFIG_FILES)
+- message(WARNING "No pkg-config files are provided for the static SFML libraries (SFML_INSTALL_PKGCONFIG_FILES will be ignored).")
+- endif()
+- endif()
+-endif()
+-
+ # enable project folders
+ set_property(GLOBAL PROPERTY USE_FOLDERS ON)
+ set_property(GLOBAL PROPERTY PREDEFINED_TARGETS_FOLDER "CMake")
diff --git a/debian/patches/04_pkgconfig-freebsd.patch b/debian/patches/04_pkgconfig-freebsd.patch
new file mode 100644
index 0000000..df3f5be
--- /dev/null
+++ b/debian/patches/04_pkgconfig-freebsd.patch
@@ -0,0 +1,30 @@
+Description: Install FreeBSD pkgconfig files in lib/pkgconfig again
+Author: James Cowgill <jcowgill@debian.org>
+Forwarded: no
+---
+This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
+--- a/cmake/Config.cmake
++++ b/cmake/Config.cmake
+@@ -69,18 +69,10 @@ else()
+ return()
+ endif()
+
+-# check if OS or package system supports pkg-config
+-# this could be e.g. macports on mac or msys2 on windows etc.
+-find_package(PkgConfig QUIET)
+-if(PKG_CONFIG_EXECUTABLE)
+- if(EXISTS "${CMAKE_INSTALL_PREFIX}/lib${LIB_SUFFIX}/pkgconfig")
+- set(SFML_OS_SUPPORTS_PKGCONFIG ON)
+- set(SFML_OS_PKGCONFIG_DIR "/lib${LIB_SUFFIX}/pkgconfig")
+- elseif(EXISTS "${CMAKE_INSTALL_PREFIX}/libdata/pkgconfig")
+- set(SFML_OS_SUPPORTS_PKGCONFIG ON)
+- set(SFML_OS_PKGCONFIG_DIR "/libdata/pkgconfig")
+- endif()
+-endif()
++# on Debian, always install pkg-config files, and always into the default
++# $libdir path
++set(SFML_OS_SUPPORTS_PKGCONFIG ON)
++set(SFML_OS_PKGCONFIG_DIR "/lib${LIB_SUFFIX}/pkgconfig")
+
+ # detect the compiler and its version
+ # Note: on some platforms (OS X), CMAKE_COMPILER_IS_GNUCXX is true
diff --git a/debian/patches/05_cmake-config-LIB_SIFFIX.patch b/debian/patches/05_cmake-config-LIB_SIFFIX.patch
new file mode 100644
index 0000000..b7f4fa2
--- /dev/null
+++ b/debian/patches/05_cmake-config-LIB_SIFFIX.patch
@@ -0,0 +1,17 @@
+Description: Install CMake config files into lib${LIB_SIFFIX}
+Author: James Cowgill <jcowgill@debian.org>
+Forwarded: no
+---
+This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
+
+--- a/cmake/Macros.cmake
++++ b/cmake/Macros.cmake
+@@ -320,7 +320,7 @@ function(sfml_export_targets)
+ if (SFML_BUILD_FRAMEWORKS)
+ set(config_package_location "SFML.framework/Resources/CMake")
+ else()
+- set(config_package_location lib/cmake/SFML)
++ set(config_package_location lib${LIB_SUFFIX}/cmake/SFML)
+ endif()
+ configure_package_config_file("${CURRENT_DIR}/SFMLConfig.cmake.in" "${CMAKE_CURRENT_BINARY_DIR}/SFMLConfig.cmake"
+ INSTALL_DESTINATION "${config_package_location}")
diff --git a/debian/patches/06_pkgconfig-libs-private.patch b/debian/patches/06_pkgconfig-libs-private.patch
new file mode 100644
index 0000000..050453b
--- /dev/null
+++ b/debian/patches/06_pkgconfig-libs-private.patch
@@ -0,0 +1,38 @@
+Description: Remove *.private fields from pkg-config files
+ This avoids unnecessary dependencies which are only needed when building static
+ libraries. It also removes the unused dependency on glu.
+Author: James Cowgill <jcowgill@debian.org>
+Forwarded: not-needed
+---
+This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
+--- a/tools/pkg-config/sfml-audio.pc.in
++++ b/tools/pkg-config/sfml-audio.pc.in
+@@ -8,8 +8,5 @@ Description: The Simple and Fast Multime
+ URL: http://www.sfml-dev.org
+ Version: @VERSION_MAJOR@.@VERSION_MINOR@.@VERSION_PATCH@
+ Requires: sfml-system
+-Requires.private: openal, vorbisenc, vorbisfile, vorbis, ogg, flac
+ Libs: -L${libdir} -lsfml-audio
+-# openal may be a system framework
+-Libs.private: @OPENAL_LIBRARY@
+ Cflags: -I${includedir}
+--- a/tools/pkg-config/sfml-graphics.pc.in
++++ b/tools/pkg-config/sfml-graphics.pc.in
+@@ -8,8 +8,5 @@ Description: The Simple and Fast Multime
+ 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 may not be in pkg-config
+-Libs.private: @OPENGL_gl_LIBRARY@ @OPENGL_glu_LIBRARY@
+ Cflags: -I${includedir}
+--- a/tools/pkg-config/sfml-window.pc.in
++++ b/tools/pkg-config/sfml-window.pc.in
+@@ -9,6 +9,4 @@ URL: http://www.sfml-dev.org
+ Version: @VERSION_MAJOR@.@VERSION_MINOR@.@VERSION_PATCH@
+ Requires: sfml-system
+ Libs: -L${libdir} -lsfml-window
+-# gl may not be in pkg-config
+-Libs.private: @OPENGL_gl_LIBRARY@ @OPENGL_glu_LIBRARY@
+ Cflags: -I${includedir}
diff --git a/debian/patches/series b/debian/patches/series
new file mode 100644
index 0000000..51f1523
--- /dev/null
+++ b/debian/patches/series
@@ -0,0 +1,6 @@
+01_remove-googleapi-css.patch
+02_build-doc-once.patch
+03_pkgconfig-cleanup.patch
+04_pkgconfig-freebsd.patch
+05_cmake-config-LIB_SIFFIX.patch
+06_pkgconfig-libs-private.patch