summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohannes Winkelmann <jw@smts.ch>2006-09-10 18:22:31 +0000
committerJohannes Winkelmann <jw@smts.ch>2006-09-10 18:22:31 +0000
commit9ca92fa2cda75fcf96fcb30d74f66aa6dfe349f5 (patch)
tree46e4a110910bad6a73ea5d48ba3f6e1eff0c5402
parent205624c78b924227a7670f86999033f27238615c (diff)
downloadprt-get-9ca92fa2cda75fcf96fcb30d74f66aa6dfe349f5.tar.gz
prt-get-9ca92fa2cda75fcf96fcb30d74f66aa6dfe349f5.tar.xz
prt-get: use correct pkgmk.conf for PKGMK_PACKAGE_DIR (thanks Anton)
git-svn-id: https://crux.nu/svn/tools/prt-get/trunk@1862 0b5ae1c7-2405-0410-a7fc-ba219f786e1e
-rw-r--r--src/installtransaction.cpp10
-rw-r--r--src/installtransaction.h2
2 files changed, 7 insertions, 5 deletions
diff --git a/src/installtransaction.cpp b/src/installtransaction.cpp
index 73bc825..9339e30 100644
--- a/src/installtransaction.cpp
+++ b/src/installtransaction.cpp
@@ -246,7 +246,7 @@ InstallTransaction::installPackage( const Package* package,
if ( fdlog == -1 ) {
return LOG_FILE_FAILURE;
}
-
+
write( fdlog, message.c_str(), message.length());
write( fdlog, "\n", 1);
@@ -291,7 +291,7 @@ InstallTransaction::installPackage( const Package* package,
result = PKGMK_FAILURE;
} else {
// -- update
- string pkgdest = getPkgDest();
+ string pkgdest = getPkgDest(parser->installRoot());
if ( pkgdest != "" ) {
// TODO: don't manipulate pkgdir
pkgdir = pkgdest;
@@ -582,10 +582,12 @@ InstallTransaction::calcDependencies( )
return SUCCESS;
}
-string InstallTransaction::getPkgDest()
+string InstallTransaction::getPkgDest(const string& installRoot)
{
string pkgdest = "";
- FILE* p = popen( ". /etc/pkgmk.conf && echo $PKGMK_PACKAGE_DIR", "r" );
+ string cmd = ". %s/etc/pkgmk.conf && echo $PKGMK_PACKAGE_DIR";
+ StringHelper::replaceAll(cmd, "%s", installRoot);
+ FILE* p = popen(cmd.c_str(), "r");
if ( p ) {
char line[256];
fgets( line, 256, p );
diff --git a/src/installtransaction.h b/src/installtransaction.h
index bd154ea..4c740c2 100644
--- a/src/installtransaction.h
+++ b/src/installtransaction.h
@@ -103,7 +103,7 @@ private:
bool update,
InstallInfo& info ) const;
- static string getPkgDest();
+ static string getPkgDest(const string& installRoot);
PkgDB* m_pkgDB;
DepResolver m_resolver;

Generated by cgit