summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChristian Askeland <christian.askeland@gmail.com>2016-02-11 13:15:06 (GMT)
committerBrad King <brad.king@kitware.com>2016-02-11 13:49:06 (GMT)
commite422f738e4eb27dbf24a0b45d56e0f21a1d45cbc (patch)
tree56572857d5fe27c0e2a454b29964f1be4c48e1b6
parentd83abbf9e3f0d5c46ef7f828c7b49f3413647fee (diff)
downloadCMake-e422f738e4eb27dbf24a0b45d56e0f21a1d45cbc.zip
CMake-e422f738e4eb27dbf24a0b45d56e0f21a1d45cbc.tar.gz
CMake-e422f738e4eb27dbf24a0b45d56e0f21a1d45cbc.tar.bz2
BundleUtilities: Fix treatment of .dylib inside .framework folders
The specific cause is when e.g. /Library/Frameworks/GStreamer.framework/Versions/1.0/lib/libgio-2.0.0.dylib is detected by fixup_bundle. set_bundle_key_values() interprets this as a framework, thus doing a string replace that creates an embedded_item that is equal to the original path, i.e. it is not embedded.
-rw-r--r--Modules/BundleUtilities.cmake2
1 files changed, 1 insertions, 1 deletions
diff --git a/Modules/BundleUtilities.cmake b/Modules/BundleUtilities.cmake
index 45dda40..73ff0af 100644
--- a/Modules/BundleUtilities.cmake
+++ b/Modules/BundleUtilities.cmake
@@ -479,7 +479,7 @@ function(set_bundle_key_values keys_var context item exepath dirs copyflag)
get_item_rpaths("${resolved_item}" item_rpaths)
- if(item MATCHES "[^/]+\\.framework/")
+ if((item NOT MATCHES "\\.dylib$") AND (item MATCHES "[^/]+\\.framework/"))
# For frameworks, construct the name under the embedded path from the
# opening "${item_name}.framework/" to the closing "/${item_name}":
#