From 200d81e0eb9a59482c128f53e291081d37bb8f7b Mon Sep 17 00:00:00 2001 From: Stephen Birarda Date: Wed, 22 May 2013 14:40:01 -0700 Subject: [PATCH] DRY up resource subdir copying for OS X bundle --- interface/CMakeLists.txt | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/interface/CMakeLists.txt b/interface/CMakeLists.txt index 35eb70bdfc..d5da2073fb 100644 --- a/interface/CMakeLists.txt +++ b/interface/CMakeLists.txt @@ -48,14 +48,19 @@ if (APPLE) # set where in the bundle to put the resources file SET_SOURCE_FILES_PROPERTIES(${CMAKE_CURRENT_SOURCE_DIR}/interface.icns PROPERTIES MACOSX_PACKAGE_LOCATION Resources) + SET(INTERFACE_SRCS ${INTERFACE_SRCS} ${CMAKE_CURRENT_SOURCE_DIR}/interface.icns) + # grab the directories in resources and put them in the right spot in Resources - FILE(GLOB INTERFACE_IMAGES resources/images/*) - SET_SOURCE_FILES_PROPERTIES(${INTERFACE_IMAGES} PROPERTIES MACOSX_PACKAGE_LOCATION Resources/images) + file(GLOB RESOURCE_SUBDIRS RELATIVE ${CMAKE_CURRENT_SOURCE_DIR}/resources ${CMAKE_CURRENT_SOURCE_DIR}/resources/*) + foreach(DIR ${RESOURCE_SUBDIRS}) + if(IS_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/resources/${DIR}) + FILE(GLOB DIR_CONTENTS resources/${DIR}/*) + SET_SOURCE_FILES_PROPERTIES(${DIR_CONTENTS} PROPERTIES MACOSX_PACKAGE_LOCATION Resources/${DIR}) + + SET(INTERFACE_SRCS ${INTERFACE_SRCS} ${DIR_CONTENTS}) + endif() + endforeach() - FILE(GLOB INTERFACE_SHADERS resources/shaders/*) - SET_SOURCE_FILES_PROPERTIES(${INTERFACE_SHADERS} PROPERTIES MACOSX_PACKAGE_LOCATION Resources/shaders) - - SET(INTERFACE_SRCS ${INTERFACE_SRCS} ${INTERFACE_IMAGES} ${INTERFACE_SHADERS} ${CMAKE_CURRENT_SOURCE_DIR}/interface.icns) endif (APPLE) find_package(Qt4 REQUIRED QtCore QtGui QtOpenGL)