Browse Source

Continue FHS-like mode

master
probonopd 8 years ago
parent
commit
05f2f03a88
  1. 10
      linuxdeployqt/main.cpp
  2. 9
      shared/shared.cpp

10
linuxdeployqt/main.cpp

@ -120,20 +120,16 @@ int main(int argc, char **argv)
} }
QString appDirPath; QString appDirPath;
if(fhsLikeMode == false){
appDirPath = appDir;
} else {
appDirPath = QDir::cleanPath(fhsPrefix + "/../");
}
qDebug() << "appDirPath:" << appDirPath;
QString relativeBinPath; QString relativeBinPath;
if(fhsLikeMode == false){ if(fhsLikeMode == false){
appDirPath = appDir;
relativeBinPath = appName; relativeBinPath = appName;
} else { } else {
appDirPath = QDir::cleanPath(fhsPrefix + "/../");
QString relativePrefix = fhsPrefix.replace(appDirPath+"/", ""); QString relativePrefix = fhsPrefix.replace(appDirPath+"/", "");
relativeBinPath = relativePrefix + "/bin/" + appName; relativeBinPath = relativePrefix + "/bin/" + appName;
} }
qDebug() << "appDirPath:" << appDirPath;
qDebug() << "relativeBinPath:" << relativeBinPath; qDebug() << "relativeBinPath:" << relativeBinPath;
QFile appRun(appDirPath + "/AppRun"); QFile appRun(appDirPath + "/AppRun");

9
shared/shared.cpp

@ -219,7 +219,12 @@ int containsHowOften(QStringList haystack, QString needle) {
LibraryInfo parseLddLibraryLine(const QString &line, const QString &appDirPath, const QSet<QString> &rpaths) LibraryInfo parseLddLibraryLine(const QString &line, const QString &appDirPath, const QSet<QString> &rpaths)
{ {
if(fhsLikeMode == false){
bundleLibraryDirectory= "lib"; // relative to bundle bundleLibraryDirectory= "lib"; // relative to bundle
} else {
QString relativePrefix = fhsPrefix.replace(appDirPath+"/", "");
bundleLibraryDirectory = relativePrefix + "/lib/";
}
LogDebug() << "bundleLibraryDirectory:" << bundleLibraryDirectory; LogDebug() << "bundleLibraryDirectory:" << bundleLibraryDirectory;
LibraryInfo info; LibraryInfo info;
@ -764,7 +769,11 @@ DeploymentInfo deployQtLibraries(const QString &appDirPath, const QStringList &a
setenv("LD_LIBRARY_PATH",newPath.toUtf8().constData(),1); setenv("LD_LIBRARY_PATH",newPath.toUtf8().constData(),1);
} }
if(fhsLikeMode == false){
changeIdentification("$ORIGIN/" + bundleLibraryDirectory, applicationBundle.binaryPath); changeIdentification("$ORIGIN/" + bundleLibraryDirectory, applicationBundle.binaryPath);
} else {
changeIdentification("$ORIGIN/../lib/" + bundleLibraryDirectory, applicationBundle.binaryPath);
}
applicationBundle.libraryPaths = findAppLibraries(appDirPath); applicationBundle.libraryPaths = findAppLibraries(appDirPath);
LogDebug() << "applicationBundle.libraryPaths:" << applicationBundle.libraryPaths; LogDebug() << "applicationBundle.libraryPaths:" << applicationBundle.libraryPaths;

Loading…
Cancel
Save