diff --git a/CMakeGlobals.txt b/CMakeGlobals.txt index da74970..1537bff 100644 --- a/CMakeGlobals.txt +++ b/CMakeGlobals.txt @@ -103,7 +103,7 @@ else() else() set(RSTUDIO_INSTALL_BIN bin) endif() - set(RSTUDIO_INSTALL_SUPPORTING .) + set(RSTUDIO_INSTALL_SUPPORTING ${DISTRO_SHARE}) endif() # if the install prefix is /usr/local then tweak as appropriate diff --git a/src/cpp/server/CMakeLists.txt b/src/cpp/server/CMakeLists.txt index af4db1c..96b767e 100644 --- a/src/cpp/server/CMakeLists.txt +++ b/src/cpp/server/CMakeLists.txt @@ -142,7 +142,7 @@ if (UNIX AND NOT APPLE) configure_file(${CMAKE_CURRENT_SOURCE_DIR}/${RSERVER_INITD_DEBIAN_SCRIPT}.in ${CMAKE_CURRENT_BINARY_DIR}/${RSERVER_INITD_DEBIAN_SCRIPT}) install(PROGRAMS ${CMAKE_CURRENT_BINARY_DIR}/${RSERVER_INITD_DEBIAN_SCRIPT} - DESTINATION ${RSERVER_INITD_DEBIAN_DIR}) + DESTINATION ${DISTRO_SHARE}/${RSERVER_INITD_DEBIAN_DIR}) # install configured redhat init.d script set(RSERVER_INITD_REDHAT_DIR "extras/init.d/redhat") @@ -150,7 +150,7 @@ if (UNIX AND NOT APPLE) configure_file(${CMAKE_CURRENT_SOURCE_DIR}/${RSERVER_INITD_REDHAT_SCRIPT}.in ${CMAKE_CURRENT_BINARY_DIR}/${RSERVER_INITD_REDHAT_SCRIPT}) install(PROGRAMS ${CMAKE_CURRENT_BINARY_DIR}/${RSERVER_INITD_REDHAT_SCRIPT} - DESTINATION ${RSERVER_INITD_REDHAT_DIR}) + DESTINATION ${DISTRO_SHARE}/${RSERVER_INITD_REDHAT_DIR}) # install configured suse init.d script set(RSERVER_INITD_SUSE_DIR "extras/init.d/suse") @@ -158,13 +158,13 @@ if (UNIX AND NOT APPLE) configure_file(${CMAKE_CURRENT_SOURCE_DIR}/${RSERVER_INITD_SUSE_SCRIPT}.in ${CMAKE_CURRENT_BINARY_DIR}/${RSERVER_INITD_SUSE_SCRIPT}) install(PROGRAMS ${CMAKE_CURRENT_BINARY_DIR}/${RSERVER_INITD_SUSE_SCRIPT} - DESTINATION ${RSERVER_INITD_SUSE_DIR}) + DESTINATION ${DISTRO_SHARE}/${RSERVER_INITD_SUSE_DIR}) # install pam profile set(RSERVER_PAM_DIR "extras/pam") set(RSERVER_PAM_PROFILE "${RSERVER_PAM_DIR}/rstudio") install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/${RSERVER_PAM_PROFILE} - DESTINATION ${RSERVER_PAM_DIR}) + DESTINATION ${DISTRO_SHARE}/${RSERVER_PAM_DIR}) # install configured apparmor profile set(RSERVER_APPARMOR_DIR "extras/apparmor") @@ -172,9 +172,9 @@ if (UNIX AND NOT APPLE) configure_file(${CMAKE_CURRENT_SOURCE_DIR}/${RSERVER_APPARMOR_PROFILE}.in ${CMAKE_CURRENT_BINARY_DIR}/${RSERVER_APPARMOR_PROFILE}) install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${RSERVER_APPARMOR_PROFILE} - DESTINATION ${RSERVER_APPARMOR_DIR}) + DESTINATION ${DISTRO_SHARE}/${RSERVER_APPARMOR_DIR}) install(PROGRAMS ${CMAKE_CURRENT_SOURCE_DIR}/${RSERVER_APPARMOR_DIR}/apparmor-profile-load - DESTINATION ${RSERVER_APPARMOR_DIR}) + DESTINATION ${DISTRO_SHARE}/${RSERVER_APPARMOR_DIR}) # install configured upstart profile set(RSERVER_UPSTART_DIR "extras/upstart") @@ -182,6 +182,6 @@ if (UNIX AND NOT APPLE) configure_file(${CMAKE_CURRENT_SOURCE_DIR}/${RSERVER_UPSTART_PROFILE}.in ${CMAKE_CURRENT_BINARY_DIR}/${RSERVER_UPSTART_PROFILE}) install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${RSERVER_UPSTART_PROFILE} - DESTINATION ${RSERVER_UPSTART_DIR}) + DESTINATION ${DISTRO_SHARE}/${RSERVER_UPSTART_DIR}) endif() diff --git a/src/cpp/server/ServerOptions.cpp b/src/cpp/server/ServerOptions.cpp index 77a63f1..f0d25f0 100644 --- a/src/cpp/server/ServerOptions.cpp +++ b/src/cpp/server/ServerOptions.cpp @@ -201,7 +201,7 @@ ProgramStatus Options::read(int argc, char * const argv[]) // convert relative paths by completing from the system installation // path (this allows us to be relocatable) - resolvePath(installPath, &wwwLocalPath_); + resolvePath(installPath.childPath(DISTRO_SHARE), &wwwLocalPath_); resolvePath(installPath, &authPamHelperPath_); resolvePath(installPath, &rsessionPath_); resolvePath(installPath, &rldpathPath_); diff --git a/src/cpp/session/SessionOptions.cpp b/src/cpp/session/SessionOptions.cpp index 0df1081..777cc6a 100644 --- a/src/cpp/session/SessionOptions.cpp +++ b/src/cpp/session/SessionOptions.cpp @@ -314,12 +314,12 @@ core::ProgramStatus Options::read(int argc, char * const argv[]) } // convert relative paths by completing from the app resource path - resolvePath(resourcePath, &rHelpCssFilePath_); + resolvePath(resourcePath.childPath(DISTRO_SHARE), &rHelpCssFilePath_); resolvePath(resourcePath, &agreementFilePath_); - resolvePath(resourcePath, &wwwLocalPath_); - resolvePath(resourcePath, &coreRSourcePath_); - resolvePath(resourcePath, &modulesRSourcePath_); - resolvePath(resourcePath, &sessionPackagesPath_); + resolvePath(resourcePath.childPath(DISTRO_SHARE), &wwwLocalPath_); + resolvePath(resourcePath.childPath(DISTRO_SHARE), &coreRSourcePath_); + resolvePath(resourcePath.childPath(DISTRO_SHARE), &modulesRSourcePath_); + resolvePath(resourcePath.childPath(DISTRO_SHARE), &sessionPackagesPath_); resolvePostbackPath(resourcePath, &rpostbackPath_); #ifdef _WIN32 resolvePath(resourcePath, &consoleIoPath_);