From e3ef18ae6eb8ac93e53188a87d4cf83e302bb855 Mon Sep 17 00:00:00 2001
From: Stephen Birarda <commit@birarda.com>
Date: Tue, 5 Jan 2016 18:32:08 -0800
Subject: [PATCH] customize Interface output name for PR/dev/prod

---
 cmake/macros/SetupHifiPlugin.cmake            |  3 +-
 .../templates/RenameInterfaceBundle.cmake.in  | 16 ----------
 interface/CMakeLists.txt                      | 32 ++++++++-----------
 3 files changed, 16 insertions(+), 35 deletions(-)
 delete mode 100644 cmake/templates/RenameInterfaceBundle.cmake.in

diff --git a/cmake/macros/SetupHifiPlugin.cmake b/cmake/macros/SetupHifiPlugin.cmake
index d8b8c80f9b..2f31ee5d4e 100644
--- a/cmake/macros/SetupHifiPlugin.cmake
+++ b/cmake/macros/SetupHifiPlugin.cmake
@@ -12,7 +12,8 @@ macro(SETUP_HIFI_PLUGIN)
     set_target_properties(${TARGET_NAME} PROPERTIES FOLDER "Plugins")
 
     if (APPLE)
-        set(PLUGIN_PATH "interface.app/Contents/PlugIns")
+        get_property(_INTERFACE_BUNDLE_NAME GLOBAL PROPERTY INTERFACE_BUNDLE_NAME)
+        set(PLUGIN_PATH "${_INTERFACE_BUNDLE_NAME}.app/Contents/PlugIns")
     else()
         set(PLUGIN_PATH "plugins")
     endif()
diff --git a/cmake/templates/RenameInterfaceBundle.cmake.in b/cmake/templates/RenameInterfaceBundle.cmake.in
deleted file mode 100644
index a579c6efe1..0000000000
--- a/cmake/templates/RenameInterfaceBundle.cmake.in
+++ /dev/null
@@ -1,16 +0,0 @@
-#
-#  RenameInterfaceBundle.cmake.in
-#  cmake/templates
-#
-#  Copyright 2016 High Fidelity, Inc.
-#  Created by Stephen Birarda on January 5, 2016
-#
-#  Distributed under the Apache License, Version 2.0.
-#  See the accompanying file LICENSE or http://www.apache.org/licenses/LICENSE-2.0.html
-#
-
-set(SOURCE_BUNDLE "@CMAKE_INSTALL_PREFIX@/Applications/High Fidelity/interface.app")
-set(DESTINATION_BUNDLE "@CMAKE_INSTALL_PREFIX@/Applications/High Fidelity/@INTERFACE_BUNDLE_NAME@.app")
-message(STATUS "Renaming ${SOURCE_BUNDLE} to ${DESTINATION_BUNDLE}")
-
-file(RENAME ${SOURCE_BUNDLE} ${DESTINATION_BUNDLE})
diff --git a/interface/CMakeLists.txt b/interface/CMakeLists.txt
index 91b306dad3..c0fb3c95a2 100644
--- a/interface/CMakeLists.txt
+++ b/interface/CMakeLists.txt
@@ -100,6 +100,20 @@ endif()
 # create the executable, make it a bundle on OS X
 if (APPLE)
   add_executable(${TARGET_NAME} MACOSX_BUNDLE ${INTERFACE_SRCS} ${QM})
+
+  # change the target name to the right thing depending on the type of build this is
+  # set a global INTERFACE_BUNDLE_NAME property so that we can have plugins copied to the right place
+  if (PRODUCTION_BUILD)
+    set(_INTERFACE_BUNDLE_NAME "High Fidelity")
+  elseif (PR_BUILD)
+    set(_INTERFACE_BUNDLE_NAME "High Fidelity ${BUILD_SEQ}")
+  elseif (DEV_BUILD)
+    set(_INTERFACE_BUNDLE_NAME "Interface")
+  endif()
+
+  set_property(GLOBAL PROPERTY INTERFACE_BUNDLE_NAME ${_INTERFACE_BUNDLE_NAME})
+
+  set_target_properties(${TARGET_NAME} PROPERTIES OUTPUT_NAME ${_INTERFACE_BUNDLE_NAME})
 elseif(WIN32)
   add_executable(${TARGET_NAME} WIN32 ${INTERFACE_SRCS} ${QM})
 else()
@@ -214,24 +228,6 @@ if (APPLE)
     BUNDLE DESTINATION "Applications/High Fidelity"
     COMPONENT ${CLIENT_COMPONENT}
   )
-
-  if (PRODUCTION_BUILD OR PR_BUILD)
-    # for a production or PR build, setup rename of produced bundle
-    # for production builds it becomes "High Fidelity" and PR builds are "High Fidelity" with the PR number
-    if (PRODUCTION_BUILD)
-      set(INTERFACE_BUNDLE_NAME "High Fidelity")
-    elseif (PR_BUILD)
-      set(INTERFACE_BUNDLE_NAME "High Fidelity ${BUILD_SEQ}")
-    endif ()
-
-    configure_file(
-      ${HIFI_CMAKE_DIR}/templates/RenameInterfaceBundle.cmake.in
-      ${CMAKE_CURRENT_BINARY_DIR}/RenameInterfaceBundle.cmake
-      @ONLY
-    )
-
-    set_target_properties(${TARGET_NAME} PROPERTIES POST_INSTALL_SCRIPT "${CMAKE_CURRENT_BINARY_DIR}/RenameInterfaceBundle.cmake")
-  endif ()
 else (APPLE)
   # copy the resources files beside the executable
   add_custom_command(TARGET ${TARGET_NAME} POST_BUILD