}
item = (QCheckListItem*)( item->nextSibling() );
}
- if ( !textBin.isEmpty() )
+ if ( !textBin.isEmpty() ) {
text += tr( "SALOME binaries to be installed" ) + ":<ul>" + textBin + "</ul>";
+ text += tr( "Install SALOME binaries to a single directory: <b>%1</b><br><br>").arg( singleDirBtn->isChecked() ? tr( "yes" ) : tr( "no" ) );
+ }
if ( !textSrc.isEmpty() )
text += tr( "SALOME sources to be installed" ) + ( buildSrcBtn->isChecked() ? tr( " and built" ) : QString( "" ) ) + ":<ul>" + textSrc + "</ul>";
if ( !textBoth.isEmpty() )
// all products are installed successfully
QString workDir = QDir::cleanDirPath( QFileInfo( "./config_files/" ).absFilePath() );
MapProducts::Iterator mapIter;
+ bool needModifyLaFiles = false;
___MESSAGE___( "starting pick-up environment" );
for ( mapIter = productsMap.begin(); mapIter != productsMap.end(); ++mapIter ) {
QCheckListItem* item = mapIter.key();
Dependancies dep = mapIter.data();
QString depproducts = QUOTE( DefineDependeces(productsMap) );
- if ( !productsView->isNone( item ) && dep.pickUpEnvironment() ) {
- ___MESSAGE___( "... for " << dep.getName().latin1() );
- QString script;
- script += "cd " + QUOTE( QFileInfo( QDir::cleanDirPath( "./config_files/" ) ).absFilePath() ) + "; ";
- script += item->text(2) + " ";
- script += "pickup_env ";
- script += QUOTE( QFileInfo( QDir::cleanDirPath( tempFolder->text().stripWhiteSpace() ) + TEMPDIRNAME ).absFilePath() ) + " ";
- script += QUOTE( QFileInfo( QDir::cleanDirPath( QDir::currentDirPath() + "/Products" ) ).absFilePath() ) + " ";
- script += QUOTE( QFileInfo( QDir::cleanDirPath( targetFolder->text().stripWhiteSpace() ) ).absFilePath() ) + " ";
- script += depproducts + " "; // dependencies
- script += item->text(0) + " "; // product
- if ( singleDirBtn->isChecked() ) // single directory flag
- script += "1";
- ___MESSAGE___( "... --> " << script.latin1() );
- if ( system( script.latin1() ) ) {
- ___MESSAGE___( "ERROR" );
+ if ( !productsView->isNone( item ) ) {
+ if ( !dep.hasContext( "salome sources" ) && dep.hasContext( "salome binaries" ) )
+ needModifyLaFiles = true;
+ if ( dep.pickUpEnvironment() ) {
+ ___MESSAGE___( "... for " << dep.getName().latin1() );
+ QString script;
+ script += "cd " + QUOTE( QFileInfo( QDir::cleanDirPath( "./config_files/" ) ).absFilePath() ) + "; ";
+ script += item->text(2) + " ";
+ script += "pickup_env ";
+ script += QUOTE( QFileInfo( QDir::cleanDirPath( tempFolder->text().stripWhiteSpace() ) + TEMPDIRNAME ).absFilePath() ) + " ";
+ script += QUOTE( QFileInfo( QDir::cleanDirPath( QDir::currentDirPath() + "/Products" ) ).absFilePath() ) + " ";
+ script += QUOTE( QFileInfo( QDir::cleanDirPath( targetFolder->text().stripWhiteSpace() ) ).absFilePath() ) + " ";
+ script += depproducts + " "; // dependencies
+ script += item->text(0) + " "; // product
+ if ( singleDirBtn->isChecked() ) // single directory flag
+ script += "1";
+ ___MESSAGE___( "... --> " << script.latin1() );
+ if ( system( script.latin1() ) ) {
+ ___MESSAGE___( "ERROR" );
+ }
}
}
}
+ // modify *.la files if necessary (SALOME binaries)
+ if ( singleDirBtn->isChecked() && needModifyLaFiles ) {
+ ___MESSAGE___( "modify *.la files" );
+ QString depproducts = QUOTE( DefineDependeces(productsMap) );
+ QString script;
+ script += "cd " + QUOTE( QFileInfo( QDir::cleanDirPath( "./config_files/" ) ).absFilePath() ) + "; ";
+ script += "modify_la_files.sh ";
+ script += QUOTE( QFileInfo( QDir::cleanDirPath( tempFolder->text().stripWhiteSpace() ) + TEMPDIRNAME ).absFilePath() ) + " ";
+ script += QUOTE( QFileInfo( QDir::cleanDirPath( targetFolder->text().stripWhiteSpace() ) ).absFilePath() ) + " ";
+ script += depproducts; // dependencies
+ ___MESSAGE___( "... --> " << script.latin1() );
+ if ( system( script.latin1() ) ) {
+ ___MESSAGE___( "ERROR" );
+ }
+ }
+
// <Next> button
setNextEnabled( true );
nextButton()->setText( tr( "&Next >" ) );