Olga Shern wrote:
Hi Vlad,

I see OFED installation / uninstallation (install.pl / uninstall.sh) failure on RH5 UP2 full OS installation.

There are three different issues:

   1. only relevant for uninstall.sh – on RH5 UP2 openmpi is installed
      as 32 and 64 bit library to remove it need

      to add /--allmatches/  flag to /rpm –e/ command

   2. On RH5 UP2 compat-dapl-1.2.5 is installed and  /rpm –q
       compat-dapl/  return NULL in this case,

Need to add compat-dapl-1.2.5 as part of the rpms that need to be removed in uninstall.sh

The attached patch fixes the above two issue


Hi Olga,
The patch applied, thanks

3. lam MPI and mpi-selector RPMs are installed on RH5 UP2. lam mpi is depended on mpi-selector therefore mpi-selector cannot not be removed

I don’t have a simple solution for this because we cannot remove lam mpi.

One of the solutions that I can think about, is not to remove mpi-selector only update it.

      What do you think?


Agree,
Please test the attached patch:
    Leave mpi-selector if it can't be removed.
    Update mpi-selector if exist.


Regards,
Vladimir

Regards,

Olga

>From 9c5a29481ff6271962431e270b507c87ebf7380b Mon Sep 17 00:00:00 2001
From: Vladimir Sokolovsky <[EMAIL PROTECTED]>
Date: Wed, 13 Aug 2008 15:58:56 +0300
Subject: [PATCH] Leave mpi-selector if it can't be removed.
 Update mpi-selector if exist.

Signed-off-by: Vladimir Sokolovsky <[EMAIL PROTECTED]>
---
 install.pl   |   13 ++++++++++++-
 uninstall.sh |    5 ++++-
 2 files changed, 16 insertions(+), 2 deletions(-)

diff --git a/install.pl b/install.pl
index da5de6f..a12e9e8 100755
--- a/install.pl
+++ b/install.pl
@@ -3275,7 +3275,13 @@ sub install_rpm
         print RED "$package does not exist", RESET "\n";
         exit 1;
     }
-    $cmd = "rpm -iv";
+
+    if ($name eq "mpi-selector") {
+        $cmd = "rpm -Uv --force";
+    } else {
+        $cmd = "rpm -iv";
+    }
+
     $cmd .= " $package";
 
     print "Running $cmd\n" if ($verbose);
@@ -3665,6 +3671,7 @@ sub uninstall
     }
     my $cmd = "rpm -e --allmatches";
     for my $package (@all_packages, @hidden_packages, @prev_ofed_packages) {
+        next if ($package eq "mpi-selector");
         if (is_installed($package)) {
             $cmd .= " $package";
             $cnt ++;
@@ -3684,6 +3691,10 @@ sub uninstall
             exit 1;
         }
     }
+
+    if (is_installed("mpi-selector")) {
+        system("rpm -e --allmatches mpi-selector >> $ofedlogs/ofed_uninstall.log 2>&1");
+    }
 }
 
 sub install
diff --git a/uninstall.sh b/uninstall.sh
index 694615a..1fd4415 100755
--- a/uninstall.sh
+++ b/uninstall.sh
@@ -213,7 +213,10 @@ uninstall()
         for mpiselector in $MPI_SELECTOR_LIST
         do 
             if ( $RPM -q ${mpiselector} > $NULL 2>&1 ); then
-                ex "$RPM -e --allmatches ${mpiselector}"
+                if ! ( $RPM -e --allmatches ${mpiselector} > /dev/null 2>&1 ); then
+			echo "Cannot remove ${mpiselector}."
+			echo "There are RPMs that depend on it."
+                fi
             fi
         done    
     fi
-- 
1.5.4.3

_______________________________________________
ewg mailing list
[email protected]
http://lists.openfabrics.org/cgi-bin/mailman/listinfo/ewg

Reply via email to