]> SALOME platform Git repositories - tools/install.git/commitdiff
Salome HOME
1. Prepare for version 3.2.10
authorvsr <vsr@opencascade.com>
Thu, 8 May 2008 10:58:12 +0000 (10:58 +0000)
committervsr <vsr@opencascade.com>
Thu, 8 May 2008 10:58:12 +0000 (10:58 +0000)
2. Add 'install to single dir' option

16 files changed:
bin/SALOME_InstallWizard
src/SALOME_HelpWindow.cxx
src/SALOME_HelpWindow.hxx
src/SALOME_INSTALL.pro
src/SALOME_InstallWizard.cxx
src/SALOME_InstallWizard.hxx
src/SALOME_ProductsView.cxx
src/SALOME_ProductsView.hxx
src/SALOME_ProgressView.cxx
src/SALOME_ProgressView.hxx
src/SALOME_XmlHandler.cxx
src/SALOME_XmlHandler.hxx
src/globals.h
src/icons.cxx
src/icons.h
src/main.cxx

index c605690532370d4c1c489f4e86293711827905a1..ade820cf5b93db52624d4e13b43404cd02723946 100755 (executable)
Binary files a/bin/SALOME_InstallWizard and b/bin/SALOME_InstallWizard differ
index 83d8b3a390e16d2d1f90cca2690143bab0b03260..bbaafd1b024fd880cecaa8c46678a4ce0a85fc54 100644 (file)
@@ -3,7 +3,7 @@
 //  Author    : Vadim SANDLER, Open CASCADE SAS (vadim.sandler@opencascade.com)
 //  Project   : SALOME
 //  Module    : Installation Wizard
-//  Copyright : 2002-2007 CEA
+//  Copyright : 2002-2008 CEA
 
 #include "SALOME_HelpWindow.hxx"
 #include "SALOME_InstallWizard.hxx"
index da0533360f9817871f75519b028606d343b0d5ea..d3599fd831dc5c23d4d4435394941c3a08c6bef7 100644 (file)
@@ -3,7 +3,7 @@
 //  Author    : Vadim SANDLER, Open CASCADE SAS (vadim.sandler@opencascade.com)
 //  Project   : SALOME
 //  Module    : Installation Wizard
-//  Copyright : 2002-2007 CEA
+//  Copyright : 2002-2008 CEA
 
 #ifndef __SALOME_HelpWindow
 #define __SALOME_HelpWindow
index 5fff4d8dbef934891eb09b22f6bf3aa258e526d6..62d663a296e4ac86978655a8d8ccb8e74b3317e3 100644 (file)
@@ -3,7 +3,7 @@
 #  Author    : Vadim SANDLER, Open CASCADE SAS (vadim.sandler@opencascade.com)
 #  Project   : SALOME
 #  Module    : Installation Wizard
-#  Copyright : 2002-2007 CEA
+#  Copyright : 2002-2008 CEA
 
 TEMPLATE       =  app
 CONFIG         += qt warn_on release thread
index 583380cea668ad0d40372464bea627e9f20d1920..66cfd6c54945f2b3c4920376d358a7d7b174db02 100644 (file)
@@ -3,7 +3,7 @@
 //  Author    : Vadim SANDLER, Open CASCADE SAS (vadim.sandler@opencascade.com)
 //  Project   : SALOME
 //  Module    : Installation Wizard
-//  Copyright : 2002-2007 CEA
+//  Copyright : 2002-2008 CEA
 
 #include "globals.h"
 
@@ -419,7 +419,7 @@ public:
                      .arg( __IW_VERSION_MINOR__ ) \
                      .arg( __IW_VERSION_PATCH__ ) );
     QLabel* copyright = new QLabel( this, "copyright" );
-    copyright->setText( "<b>Copyright</b> &copy; 2004-2007 CEA" );
+    copyright->setText( "<b>Copyright</b> &copy; 2002-2008 CEA" );
     QFont font = title->font();
     font.setPointSize( (int)( font.pointSize() * 1.8 ) );
     title->setFont( font );
@@ -463,7 +463,8 @@ public:
 SALOME_InstallWizard::SALOME_InstallWizard(const QString& aXmlFileName,
                                           const QString& aTargetDir,
                                           const QString& aTmpDir,
-                                          const bool     aForceSrc)
+                                          const bool     aForceSrc,
+                                          const bool     aSingleDir)
      : InstallWizard( qApp->desktop(), "SALOME_InstallWizard", false, 0 ),
        helpWindow( NULL ),
        moreMode( false ),
@@ -519,7 +520,7 @@ SALOME_InstallWizard::SALOME_InstallWizard(const QString& aXmlFileName,
   // create introduction page
   setupIntroPage();
   // create products page
-  setupProductsPage(aForceSrc);
+  setupProductsPage(aForceSrc, aSingleDir);
   // create prestart page
   setupCheckPage();
   // create progress page
@@ -675,7 +676,7 @@ void SALOME_InstallWizard::setupIntroPage()
  *  Creates products page
  */
 // ================================================================
-void SALOME_InstallWizard::setupProductsPage(const bool forceSrc)
+void SALOME_InstallWizard::setupProductsPage(const bool forceSrc, const bool singleDir)
 {
   //
   // create page
@@ -750,6 +751,9 @@ void SALOME_InstallWizard::setupProductsPage(const bool forceSrc)
   selectBinBtn = new QMyCheckBox( tr( "SALOME binaries" ), moreBox );
   selectBinBtn->setTristate( true );
   setAboutInfo( selectBinBtn, tr( "Click this button to select/deselect SALOME binaries" ) );
+  singleDirBtn = new QMyCheckBox( tr( "Install to a single directory" ), moreBox );
+  setAboutInfo( singleDirBtn, tr( "Check this box if you want to install binaries of\nall SALOME modules into a single directory." ) );
+  singleDirBtn->setChecked(singleDir);
   selectSrcBtn = new QMyCheckBox( tr( "SALOME sources" ), moreBox );
   selectSrcBtn->setTristate( true );
   setAboutInfo( selectSrcBtn, tr( "Click this button to select/deselect SALOME sources" ) );
@@ -758,8 +762,9 @@ void SALOME_InstallWizard::setupProductsPage(const bool forceSrc)
   QGridLayout* btnLayout = new QGridLayout; btnLayout->setMargin( 0 ); btnLayout->setSpacing( 6 );
   btnLayout->addMultiCellWidget( unselectBtn,  0, 0, 0, 1 );
   btnLayout->addMultiCellWidget( selectBinBtn, 1, 1, 0, 1 );
-  btnLayout->addMultiCellWidget( selectSrcBtn, 2, 2, 0, 1 );
-  btnLayout->addWidget(          buildSrcBtn,  3,    1 );
+  btnLayout->addWidget(          singleDirBtn, 2,    1 );
+  btnLayout->addMultiCellWidget( selectSrcBtn, 3, 3, 0, 1 );
+  btnLayout->addWidget(          buildSrcBtn,  4,    1 );
   btnLayout->addColSpacing( 0, 20 );
   btnLayout->setColStretch( 1, 10 );
   //
@@ -847,6 +852,8 @@ void SALOME_InstallWizard::setupProductsPage(const bool forceSrc)
           this,          SLOT( onProdBtn() ) );
   connect( buildSrcBtn,   SIGNAL( stateChanged(int) ),
           this,          SLOT( onProdBtn() ) );
+  connect( singleDirBtn,  SIGNAL( stateChanged(int) ), 
+          this,          SLOT( onInstallToSingle() ) );
   connect( allFromSrcBtn, SIGNAL( stateChanged(int) ), 
           this,          SLOT( onBuildAll() ) );
   // connecting signals
@@ -1479,6 +1486,7 @@ void SALOME_InstallWizard::checkProductPage()
 
   selectSrcBtn->blockSignals( true );
   selectBinBtn->blockSignals( true );
+  singleDirBtn->blockSignals( true );
 
   int totSrc = 0, selSrc = 0;
   MapProducts::Iterator itProd;
@@ -1513,9 +1521,11 @@ void SALOME_InstallWizard::checkProductPage()
     }
   }
   selectBinBtn->setState( selBin == 0 ? QButton::Off : ( selBin == totBin ? QButton::On : QButton::NoChange  ) );
+  singleDirBtn->setEnabled( selectBinBtn->isEnabled() && selectBinBtn->isChecked() ); 
 
   selectSrcBtn->blockSignals( false );
   selectBinBtn->blockSignals( false );
+  singleDirBtn->blockSignals( false );
 
   long tots = 0, temps = 0;
 
@@ -1649,6 +1659,13 @@ void SALOME_InstallWizard::launchScript()
     // ... product name - currently instaled product
     shellProcess->addArgument( item->text(0) );
 
+    // ... flag to install single all SALOME binaries to one installation directory, 
+    //     if this option was selected
+    if ( singleDirBtn->isChecked() ) { //  && productsMap[ item ].hasContext( "salome binaries" ) && productsView->isBinaries( item ) 
+      // add flag to install salome binaries to the same directory
+      shellProcess->addArgument( "1" );
+    }
+
     // run script
     if ( !shellProcess->start() ) {
       // error handling can be here
@@ -1674,8 +1691,10 @@ void SALOME_InstallWizard::launchScript()
       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 + " ";
-      script += item->text(0);
+      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" );
@@ -2570,6 +2589,16 @@ void SALOME_InstallWizard::resetToDefaultState()
   productsView->blockSignals( false );
 }
 
+// ================================================================
+/*!
+ *  SALOME_InstallWizard::onInstallToSingle
+ *  Install SALOME binaries to a single directory check box slot
+ */
+// ================================================================
+void SALOME_InstallWizard::onInstallToSingle()
+{
+}
+
 // ================================================================
 /*!
  *  SALOME_InstallWizard::onBuildAll
index 11c7ffe947246cb383a0d008212d1d09146bfbcc..a72c4410ce4d611c0e3fe570275aa96fb9708f6a 100644 (file)
@@ -3,7 +3,7 @@
 //  Author    : Vadim SANDLER, Open CASCADE SAS (vadim.sandler@opencascade.com)
 //  Project   : SALOME
 //  Module    : Installation Wizard
-//  Copyright : 2002-2007 CEA
+//  Copyright : 2002-2008 CEA
 
 #ifndef __SALOME_InstallWizard
 #define __SALOME_InstallWizard
@@ -147,7 +147,8 @@ class SALOME_InstallWizard: public InstallWizard
   SALOME_InstallWizard(const QString& aXmlFileName,
                       const QString& aTargetDir = QString::null,
                       const QString& aTmpDir    = QString::null,
-                      const bool     aForceSrc  = false);
+                      const bool     aForceSrc  = false,
+                      const bool     aSingleDir = false);
   // destructor
   virtual ~SALOME_InstallWizard( );
 
@@ -204,7 +205,7 @@ class SALOME_InstallWizard: public InstallWizard
   // creates introduction page
   void setupIntroPage();   
   // creates products page
-  void setupProductsPage(const bool forceSrc = false);
+  void setupProductsPage(const bool forceSrc = false, const bool singleDir = false);
   // creates directories page
   void setupDirPage();
   // creates prestart page
@@ -265,6 +266,8 @@ class SALOME_InstallWizard: public InstallWizard
   void onProdBtn();
   // <More...> button slot
   void onMoreBtn();
+  // <Install SALOME binaries to a single directory> check box
+  void onInstallToSingle();
   // <Install all products from sources> check box
   void onBuildAll();
 
@@ -331,6 +334,7 @@ class SALOME_InstallWizard: public InstallWizard
   QPushButton*     unselectBtn;    // <Unselect All> button
   QWidget*         lessBox;        // container for the <Less...> mode widgets
   QMyCheckBox*     allFromSrcBtn;  // <Install all products from sources> check box
+  QMyCheckBox*     singleDirBtn;   // <Install SALOME binaries to a single directory> check box
   // --> prestart page
   QWidget*         prestartPage;   // page itself
   QTextEdit*       choices;        // choice text view
index c68ae029922c408f92fa9bbbea6dd43284858247..a47e5c771288d7f54cd2799aa81c2ddcfe72c2fa 100644 (file)
@@ -3,7 +3,7 @@
 //  Author    : Vadim SANDLER, Open CASCADE SAS (vadim.sandler@opencascade.com)
 //  Project   : SALOME
 //  Module    : Installation Wizard
-//  Copyright : 2002-2007 CEA
+//  Copyright : 2002-2008 CEA
 
 #include "SALOME_ProductsView.hxx"
 #include <qstringlist.h>
index 0a2d27edb139649d665152063564bbb8a59f9298..96f75264e96a222b0733924f24d318ab984ae141 100644 (file)
@@ -3,7 +3,7 @@
 //  Author    : Vadim SANDLER, Open CASCADE SAS (vadim.sandler@opencascade.com)
 //  Project   : SALOME
 //  Module    : Installation Wizard
-//  Copyright : 2002-2007 CEA
+//  Copyright : 2002-2008 CEA
 
 #ifndef __SALOME_ProductsView
 #define __SALOME_ProductsView
index 6d5e94e7de37ce767891b7050d43b6100985ef71..731c91cb4c10ada388b71a1301e3566b4992d5dd 100644 (file)
@@ -3,7 +3,7 @@
 //  Author    : Vadim SANDLER, Open CASCADE SAS (vadim.sandler@opencascade.com)
 //  Project   : SALOME
 //  Module    : Installation Wizard
-//  Copyright : 2002-2007 CEA
+//  Copyright : 2002-2008 CEA
 
 #include "SALOME_ProgressView.hxx"
 
index 155ca46fa4e2b619b9ac26245fde29210c8e38b5..269f91492faab2da03c473eaf126c5f6e770d42c 100644 (file)
@@ -3,7 +3,7 @@
 //  Author    : Vadim SANDLER, Open CASCADE SAS (vadim.sandler@opencascade.com)
 //  Project   : SALOME
 //  Module    : Installation Wizard
-//  Copyright : 2002-2007 CEA
+//  Copyright : 2002-2008 CEA
 
 #ifndef __SALOME_ProgressView
 #define __SALOME_ProgressView
index f0a8be4deedd8b6bf8ba7cb665881ae2c4c6acb9..2bfa36de7779c21ea42cf666cfcb2bd33b8a8e52 100644 (file)
@@ -3,7 +3,7 @@
 //  Author    : Vadim SANDLER, Open CASCADE SAS (vadim.sandler@opencascade.com)
 //  Project   : SALOME
 //  Module    : Installation Wizard
-//  Copyright : 2002-2007 CEA
+//  Copyright : 2002-2008 CEA
 
 #include "globals.h"
 
index bda9d92d793a529e527bf6102a7aab29e8ce9528..e686f1efb614a7d4d885c0e0408ede447ba591c8 100644 (file)
@@ -3,7 +3,7 @@
 //  Author    : Vadim SANDLER, Open CASCADE SAS (vadim.sandler@opencascade.com)
 //  Project   : SALOME
 //  Module    : Installation Wizard
-//  Copyright : 2002-2007 CEA
+//  Copyright : 2002-2008 CEA
 
 #ifndef __SALOME_XmlHandler
 #define __SALOME_XmlHandler
index 7e812b183815a1868cc0c7968f45b02799586b6b..538c23e0970da199f364bce75872de9684a03312 100644 (file)
@@ -3,7 +3,7 @@
 //  Author    : Vadim SANDLER, Open CASCADE SAS (vadim.sandler@opencascade.com)
 //  Project   : SALOME
 //  Module    : Installation Wizard
-//  Copyright : 2002-2007 CEA
+//  Copyright : 2002-2008 CEA
 
 #if !defined( ___GLOBALS )
 #define ___GLOBALS
@@ -17,7 +17,7 @@
 
 #define __IW_VERSION_MAJOR__ 1
 #define __IW_VERSION_MINOR__ 0
-#define __IW_VERSION_PATCH__ 3
+#define __IW_VERSION_PATCH__ 4
 
 #define __IW_VERSION__ (__IW_VERSION_MAJOR__*10000 + \
                         __IW_VERSION_MINOR__*100   + \
index 04b1d4331de4c7848041996712260b45c11a83b3..4af18942b3b26d67fea271ada3d0339bbb27c250 100644 (file)
@@ -3,7 +3,7 @@
 //  Author    : Vadim SANDLER, Open CASCADE SAS (vadim.sandler@opencascade.com)
 //  Project   : SALOME
 //  Module    : Installation Wizard
-//  Copyright : 2002-2007 CEA
+//  Copyright : 2002-2008 CEA
 
 #include "icons.h"
 
index 3ac9d217f5c15ae4990cf0736bb9a59f2da44c92..d76e9b21234b9ccaed8b07292573c7793a957c27 100644 (file)
@@ -3,7 +3,7 @@
 //  Author    : Vadim SANDLER, Open CASCADE SAS (vadim.sandler@opencascade.com)
 //  Project   : SALOME
 //  Module    : Installation Wizard
-//  Copyright : 2002-2007 CEA
+//  Copyright : 2002-2008 CEA
 
 #ifndef ___ICONS_h
 #define ___ICONS_h
index 15ae14ffcab666c2477d568d915912ac831eb02f..9c2162e4c57b269e2fa7b72530bc5c2bb1fc7113 100644 (file)
@@ -3,7 +3,7 @@
 //  Author    : Vadim SANDLER, Open CASCADE SAS (vadim.sandler@opencascade.com)
 //  Project   : SALOME
 //  Module    : Installation Wizard
-//  Copyright : 2002-2007 CEA
+//  Copyright : 2002-2008 CEA
 
 #include "globals.h"
 
@@ -56,17 +56,18 @@ int main( int argc, char **argv )
   bool has_target = false;
   bool has_tmp    = false;
   bool force_src  = false;
+  bool single_dir = false;
   for( int i = 1; i < argc; i++ ) {
     QString a = QString( argv[i] );
     if ( a == "--version" || a == "-v" ) {
-      printf("SALOME Installation Wizard version %d.%d.%d ",
+      printf("SALOME Installation Wizard version %d.%d.%d (Qt version %d.%d.%d)\n",
             ( __IW_VERSION__ / 10000 ),
             ( __IW_VERSION__ / 100 % 100 ),
-            ( __IW_VERSION__ % 100 ) );
-      printf("(Qt version %d.%d.%d)\n",
+            ( __IW_VERSION__ % 100 ),
             ( QT_VERSION >> 16 ) & 0xFF,
             ( QT_VERSION >> 8  ) & 0xFF,
             ( QT_VERSION       ) & 0xFF );
+      printf("Copyright (C) 2002-2008 CEA\n");
       return 0;
     }
     else if ( a == "--target" || a == "-d" ) {
@@ -102,6 +103,9 @@ int main( int argc, char **argv )
     else if ( a == "--all-from-sources" || a == "-a" ) {
       force_src = true;
     }
+    else if ( a == "--single-directory" || a == "-s" ) {
+      single_dir = true;
+    }
   }
   if ( has_xml && xmlFileName.isEmpty() ) {
     printf("Please specify the configuration XML file!\n");
@@ -125,7 +129,7 @@ int main( int argc, char **argv )
   int result = -1;
   QFile xmlfile(xmlFileName);
   if ( xmlfile.exists() ) {
-    SALOME_InstallWizard wizard(xmlFileName, targetDirPath, tmpDirPath, force_src);
+    SALOME_InstallWizard wizard(xmlFileName, targetDirPath, tmpDirPath, force_src, single_dir);
     a.setMainWidget( &wizard );
     wizard.show();
     result = a.exec();