139 lines
4.8 KiB
Diff
139 lines
4.8 KiB
Diff
Currently all ELF files (binaries and libraries), get installed to /usr/share/musikcube.
|
|
This patch moves all those files to their normal locations and fixes the code to expect that
|
|
|
|
diff --git a/.cmake/InstallFiles.cmake b/.cmake/InstallFiles.cmake
|
|
index 62d3c003..01ef58ac 100644
|
|
--- a/.cmake/InstallFiles.cmake
|
|
+++ b/.cmake/InstallFiles.cmake
|
|
@@ -4,7 +4,7 @@ if (APPLE)
|
|
install(FILES ${plugins} DESTINATION share/musikcube/plugins)
|
|
else ()
|
|
file(GLOB plugins "bin/plugins/*.so")
|
|
- install(FILES ${plugins} DESTINATION share/musikcube/plugins)
|
|
+ install(FILES ${plugins} DESTINATION lib/musikcube/plugins)
|
|
endif ()
|
|
|
|
if (${BUILD_STANDALONE} MATCHES "true")
|
|
@@ -43,20 +43,12 @@ endif()
|
|
if (APPLE)
|
|
install(FILES "bin/libmusikcore.dylib" DESTINATION share/musikcube)
|
|
else()
|
|
- install(FILES "bin/libmusikcore.so" DESTINATION share/musikcube)
|
|
+ install(FILES "bin/libmusikcore.so" DESTINATION lib/)
|
|
endif()
|
|
|
|
# executable and shell script for musikcube
|
|
install(
|
|
FILES bin/musikcube
|
|
- DESTINATION share/musikcube
|
|
- PERMISSIONS
|
|
- OWNER_EXECUTE OWNER_READ OWNER_WRITE
|
|
- GROUP_EXECUTE GROUP_READ GROUP_WRITE
|
|
- WORLD_EXECUTE WORLD_READ)
|
|
-
|
|
-install(
|
|
- FILES "${CMAKE_CURRENT_BINARY_DIR}/src/musikcube/musikcube"
|
|
DESTINATION bin/
|
|
PERMISSIONS
|
|
OWNER_EXECUTE OWNER_READ OWNER_WRITE
|
|
@@ -58,14 +50,6 @@ install(
|
|
# executable and shell script for daemon
|
|
install(
|
|
FILES bin/musikcubed
|
|
- DESTINATION share/musikcube
|
|
- PERMISSIONS
|
|
- OWNER_EXECUTE OWNER_READ OWNER_WRITE
|
|
- GROUP_EXECUTE GROUP_READ GROUP_WRITE
|
|
- WORLD_EXECUTE WORLD_READ)
|
|
-
|
|
-install(
|
|
- FILES "${CMAKE_CURRENT_BINARY_DIR}/src/musikcubed/musikcubed"
|
|
DESTINATION bin/
|
|
PERMISSIONS
|
|
OWNER_EXECUTE OWNER_READ OWNER_WRITE
|
|
diff --git a/src/musikcore/support/Common.cpp b/src/musikcore/support/Common.cpp
|
|
index 31703117..53aa8a88 100644
|
|
--- a/src/musikcore/support/Common.cpp
|
|
+++ a/src/musikcore/support/Common.cpp
|
|
@@ -87,78 +87,11 @@
|
|
namespace musik { namespace core {
|
|
|
|
std::string GetPluginDirectory() {
|
|
- std::string path(GetApplicationDirectory());
|
|
- path.append("/plugins/");
|
|
- return path;
|
|
+ return std::string("/usr/lib/musikcube/plugins");
|
|
}
|
|
|
|
std::string GetApplicationDirectory() {
|
|
- std::string result;
|
|
-
|
|
- #ifdef WIN32
|
|
- wchar_t widePath[2048];
|
|
- int length = GetModuleFileName(NULL, widePath, 2048);
|
|
- if (length != 0 && length < 2048) {
|
|
- result.assign(GetPath(u16to8(widePath).c_str()));
|
|
- }
|
|
- #elif __APPLE__
|
|
- char pathbuf[PATH_MAX + 1];
|
|
- uint32_t bufsize = sizeof(pathbuf);
|
|
- _NSGetExecutablePath(pathbuf, &bufsize);
|
|
- result.assign(pathbuf);
|
|
- size_t last = result.find_last_of("/");
|
|
- result = result.substr(0, last); /* remove filename component */
|
|
- #else
|
|
- char pathbuf[PATH_MAX + 1] = { 0 };
|
|
-
|
|
- #ifdef __FreeBSD__
|
|
- int mib[4];
|
|
- mib[0] = CTL_KERN;
|
|
- mib[1] = KERN_PROC;
|
|
- mib[2] = KERN_PROC_PATHNAME;
|
|
- mib[3] = -1;
|
|
- size_t bufsize = sizeof(pathbuf);
|
|
- sysctl(mib, 4, pathbuf, &bufsize, nullptr, 0);
|
|
- #elif defined __OpenBSD__
|
|
- int mib[4];
|
|
- char **argv;
|
|
- size_t len = ARG_MAX;
|
|
-
|
|
- mib[0] = CTL_KERN;
|
|
- mib[1] = KERN_PROC_ARGS;
|
|
- mib[2] = getpid();
|
|
- mib[3] = KERN_PROC_ARGV;
|
|
-
|
|
- argv = new char*[len];
|
|
- if (sysctl(mib, 4, argv, &len, nullptr, 0) < 0) abort();
|
|
-
|
|
- fs::path command = fs::absolute(fs::path(fs::u8path(argv[0])));
|
|
- realpath(command.u8string().c_str(), pathbuf);
|
|
- delete[] argv;
|
|
- #elif defined __HAIKU__
|
|
- image_info ii;
|
|
- int32 c = 0;
|
|
- while (get_next_image_info(0, &c, &ii) == B_OK) {
|
|
- if (ii.type == B_APP_IMAGE) {
|
|
- if (strlen(ii.name)) {
|
|
- std::string fn(ii.name);
|
|
- result = fs::u8path(fn).u8string();
|
|
- }
|
|
- }
|
|
- }
|
|
- #else
|
|
- std::string pathToProc = u8fmt("/proc/%d/exe", (int) getpid());
|
|
- readlink(pathToProc.c_str(), pathbuf, PATH_MAX);
|
|
- #endif
|
|
-
|
|
- if (!result.size() && strlen(pathbuf)) {
|
|
- result.assign(pathbuf);
|
|
- }
|
|
- size_t last = result.find_last_of("/");
|
|
- result = result.substr(0, last); /* remove filename component */
|
|
- #endif
|
|
-
|
|
- return result;
|
|
+ return std::string("/usr/share/musikcube");
|
|
}
|
|
|
|
std::string GetHomeDirectory() {
|