On Monday 18 February 2013, Alexander Neundorf wrote: > On Sunday 17 February 2013, David Faure wrote: > > On Saturday 16 February 2013 17:23:46 Sune Vuorela wrote: > > > On 2013-02-16, Alexander Neundorf <neund...@kde.org> wrote: > > > > _set_fancy(LIBEXEC_INSTALL_DIR "${LIB_INSTALL_DIR}/kde5/libexec") > > > > > > I still don't see a reason for a *shared* libexec directory. libexec is > > > implementation details of specific libraries, just like one shouldn't > > > mess around with each others private's in the code, one also shouldn't > > > mess around with other's libexec bits. > > > > > > so libfoo's libexec should be lib_install_dir/foo/libexec > > > > I like this solution. It answers my long-lasting question about why there > > isn't a standardized libexec path (so that > > QStandardPaths::findExecutable) can look into it. If there isn't a > > standard path, then we might as well split it per lib indeed. > > > > Any volunteer for porting the current uses of LIBEXEC_INSTALL_DIR > > everywhere in kdelibs-frameworks (both in cmakelists.txt and in code)? > > I'll have a look (if nobody else is faster).
Ok, this is not a simple search-and-replace. kinit.cpp has this code: ByteArray execpath_avoid_loops( const QByteArray& exec, int envc, const char* envs, bool avoid_loops ) { QStringList paths; const QRegExp pathSepRegExp(QString::fromLatin1("[:\b]")); if( envc > 0 ) /* use the passed environment */ { const char* path = get_env_var( "PATH=", envc, envs ); if( path != NULL ) { paths = QFile::decodeName(path).split(pathSepRegExp); } } else { paths = QString::fromLocal8Bit(qgetenv("PATH")). split(pathSepRegExp, QString::KeepEmptyParts); paths.prepend(QFile::decodeName( CMAKE_INSTALL_PREFIX "/" LIBEXEC_INSTALL_DIR)); } QString execpath = QStandardPaths::findExecutable( QFile::decodeName(exec), paths); ... return QFile::encodeName(execpath); } So it will find all executables installed into the same LIBEXEC_INSTALL_DIR. (Having said that, it also assumes that LIBEXEC_INSTALL_DIR is a relative path. It should be able to handle both). If we don't have a common LIBEXEC_INSTALL_DIR anymore, what do we do then ? Alex _______________________________________________ Kde-frameworks-devel mailing list Kde-frameworks-devel@kde.org https://mail.kde.org/mailman/listinfo/kde-frameworks-devel