From 57128bb78f56cadf9e2dcca5ba4d710c3bd478a7 Mon Sep 17 00:00:00 2001 From: Jordan Holt Date: Mon, 5 Aug 2024 21:53:09 +0100 Subject: [PATCH] Remove relative config lookups --- src/libcamera/ipa_manager.cpp | 16 ---------- src/libcamera/ipa_proxy.cpp | 48 ++---------------------------- src/libcamera/pipeline_handler.cpp | 21 ++----------- 3 files changed, 4 insertions(+), 81 deletions(-) diff --git a/src/libcamera/ipa_manager.cpp b/src/libcamera/ipa_manager.cpp index f4e0b633..6d5bbd05 100644 --- a/src/libcamera/ipa_manager.cpp +++ b/src/libcamera/ipa_manager.cpp @@ -131,22 +131,6 @@ IPAManager::IPAManager() << "No IPA found in '" << modulePaths << "'"; } - /* - * When libcamera is used before it is installed, load IPAs from the - * same build directory as the libcamera library itself. - */ - std::string root = utils::libcameraBuildPath(); - if (!root.empty()) { - std::string ipaBuildPath = root + "src/ipa"; - constexpr int maxDepth = 2; - - LOG(IPAManager, Info) - << "libcamera is not installed. Adding '" - << ipaBuildPath << "' to the IPA search path"; - - ipaCount += addDir(ipaBuildPath.c_str(), maxDepth); - } - /* Finally try to load IPAs from the installed system path. */ ipaCount += addDir(IPA_MODULE_DIR); diff --git a/src/libcamera/ipa_proxy.cpp b/src/libcamera/ipa_proxy.cpp index 69975d8f..cd9284a3 100644 --- a/src/libcamera/ipa_proxy.cpp +++ b/src/libcamera/ipa_proxy.cpp @@ -122,33 +122,11 @@ std::string IPAProxy::configurationFile(const std::string &name, } } - std::string root = utils::libcameraSourcePath(); - if (!root.empty()) { - /* - * When libcamera is used before it is installed, load - * configuration files from the source directory. The - * configuration files are then located in the 'data' - * subdirectory of the corresponding IPA module. - */ - std::string ipaConfDir = root + "src/ipa/" + ipaName + "/data"; - - LOG(IPAProxy, Info) - << "libcamera is not installed. Loading IPA configuration from '" - << ipaConfDir << "'"; - - std::string confPath = ipaConfDir + "/" + name; + for (const auto &dir : utils::split(IPA_CONFIG_DIR, ":")) { + std::string confPath = dir + "/" + ipaName + "/" + name; ret = stat(confPath.c_str(), &statbuf); if (ret == 0 && (statbuf.st_mode & S_IFMT) == S_IFREG) return confPath; - - } else { - /* Else look in the system locations. */ - for (const auto &dir : utils::split(IPA_CONFIG_DIR, ":")) { - std::string confPath = dir + "/" + ipaName + "/" + name; - ret = stat(confPath.c_str(), &statbuf); - if (ret == 0 && (statbuf.st_mode & S_IFMT) == S_IFREG) - return confPath; - } } if (fallbackName.empty()) { @@ -197,28 +175,6 @@ std::string IPAProxy::resolvePath(const std::string &file) const } } - /* - * When libcamera is used before it is installed, load proxy workers - * from the same build directory as the libcamera directory itself. - * This requires identifying the path of the libcamera.so, and - * referencing a relative path for the proxy workers from that point. - */ - std::string root = utils::libcameraBuildPath(); - if (!root.empty()) { - std::string ipaProxyDir = root + "src/libcamera/proxy/worker"; - - LOG(IPAProxy, Info) - << "libcamera is not installed. Loading proxy workers from '" - << ipaProxyDir << "'"; - - std::string proxyPath = ipaProxyDir + proxyFile; - if (!access(proxyPath.c_str(), X_OK)) - return proxyPath; - - return std::string(); - } - - /* Else try finding the exec target from the install directory. */ std::string proxyPath = std::string(IPA_PROXY_DIR) + proxyFile; if (!access(proxyPath.c_str(), X_OK)) return proxyPath; diff --git a/src/libcamera/pipeline_handler.cpp b/src/libcamera/pipeline_handler.cpp index 5ea2ca78..fd8555ca 100644 --- a/src/libcamera/pipeline_handler.cpp +++ b/src/libcamera/pipeline_handler.cpp @@ -561,25 +561,8 @@ std::string PipelineHandler::configurationFile(const std::string &subdir, struct stat statbuf; int ret; - std::string root = utils::libcameraSourcePath(); - if (!root.empty()) { - /* - * When libcamera is used before it is installed, load - * configuration files from the source directory. The - * configuration files are then located in the 'data' - * subdirectory of the corresponding pipeline handler. - */ - std::string confDir = root + "src/libcamera/pipeline/"; - confPath = confDir + subdir + "/data/" + name; - - LOG(Pipeline, Info) - << "libcamera is not installed. Loading platform configuration file from '" - << confPath << "'"; - } else { - /* Else look in the system locations. */ - confPath = std::string(LIBCAMERA_DATA_DIR) - + "/pipeline/" + subdir + '/' + name; - } + confPath = std::string(LIBCAMERA_DATA_DIR) + + "/pipeline/" + subdir + '/' + name; ret = stat(confPath.c_str(), &statbuf); if (ret == 0 && (statbuf.st_mode & S_IFMT) == S_IFREG) -- 2.44.1