From 221a69298be2469ac41f6045ce1744ca84044890 Mon Sep 17 00:00:00 2001
From: BtbN <btbn@btbn.de>
Date: Sun, 30 Mar 2014 07:28:08 +0200
Subject: [PATCH] Add a new install function to install targets into the
 datadir structure

This is mainly intended to be used for preloaded/injected DLLs, which
don't belong into the libdir or plugindir.
---
 cmake/Modules/ObsHelpers.cmake | 19 +++++++++++++++++++
 1 file changed, 19 insertions(+)

diff --git a/cmake/Modules/ObsHelpers.cmake b/cmake/Modules/ObsHelpers.cmake
index 4f5f8bed3..a8449706c 100644
--- a/cmake/Modules/ObsHelpers.cmake
+++ b/cmake/Modules/ObsHelpers.cmake
@@ -232,6 +232,25 @@ macro(install_obs_data target datadir datadest)
 	endif()
 endmacro()
 
+macro(install_obs_datatarget target datadest)
+	install(TARGETS ${target}
+		LIBRARY DESTINATION "${OBS_DATA_DESTINATION}/${datadest}"
+		RUNTIME DESTINATION "${OBS_DATA_DESTINATION}/${datadest}")
+	add_custom_command(TARGET ${target} POST_BUILD
+		COMMAND "${CMAKE_COMMAND}" -E copy
+			"$<TARGET_FILE:${target}>"
+			"${OBS_OUTPUT_DIR}/$<CONFIGURATION>/data/${datadest}/$<TARGET_FILE_NAME:${target}>"
+		VERBATIM)
+
+	if(DEFINED ENV{obsInstallerTempDir})
+		add_custom_command(TARGET ${target} POST_BUILD
+			COMMAND "${CMAKE_COMMAND}" -E copy
+				"$<TARGET_FILE:${target}>"
+				"$ENV{obsInstallerTempDir}/${OBS_DATA_DESTINATION}/${datadest}/$<TARGET_FILE_NAME:${target}>"
+			VERBATIM)
+	endif()
+endmacro()
+
 macro(install_obs_plugin_data target datadir)
 	install_obs_plugin(${target})
 	install_obs_data(${target} "${datadir}" "obs-plugins/${target}")
-- 
GitLab