package/sdl2: fix sdl2-config.cmake instead of removing it

SDL2 autotools-provided sdl2-config.cmake uses the absolute /usr prefix.
For this reason, we previously removed it (as of d59261836a).

This commit fixes sdl2-config.cmake to use relative paths instead.

Signed-off-by: Gleb Mazovetskiy <glex.spb@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
This commit is contained in:
Gleb Mazovetskiy 2021-07-01 07:24:32 +01:00 committed by Thomas Petazzoni
parent 209e580219
commit cb46522f3e

View File

@ -24,13 +24,15 @@ SDL2_CONF_OPTS += \
# We are using autotools build system for sdl2, so the sdl2-config.cmake
# include path are not resolved like for sdl2-config script.
# Remove sdl2-config.cmake file and avoid unsafe include path if this
# file is used by a cmake based package.
# Change the absolute /usr path to resolve relatively to the sdl2-config.cmake location.
# https://bugzilla.libsdl.org/show_bug.cgi?id=4597
define SDL2_REMOVE_SDL2_CONFIG_CMAKE
rm -rf $(STAGING_DIR)/usr/lib/cmake/SDL2
define SDL2_FIX_SDL2_CONFIG_CMAKE
$(SED) '2iget_filename_component(PACKAGE_PREFIX_DIR "$${CMAKE_CURRENT_LIST_DIR}/../../../" ABSOLUTE)\n' \
$(STAGING_DIR)/usr/lib/cmake/SDL2/sdl2-config.cmake
$(SED) 's%"/usr"%$${PACKAGE_PREFIX_DIR}%' \
$(STAGING_DIR)/usr/lib/cmake/SDL2/sdl2-config.cmake
endef
SDL2_POST_INSTALL_STAGING_HOOKS += SDL2_REMOVE_SDL2_CONFIG_CMAKE
SDL2_POST_INSTALL_STAGING_HOOKS += SDL2_FIX_SDL2_CONFIG_CMAKE
# We must enable static build to get compilation successful.
SDL2_CONF_OPTS += --enable-static