[Fedora-directory-commits] adminserver/admserv/newinst/src AdminServer.pm.in, 1.2, 1.3

Richard Allen Megginson (rmeggins) fedora-directory-commits at redhat.com
Fri Jun 22 01:34:22 UTC 2007


Author: rmeggins

Update of /cvs/dirsec/adminserver/admserv/newinst/src
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv1096/adminserver/admserv/newinst/src

Modified Files:
	AdminServer.pm.in 
Log Message:
Resolves: bug 245214
Bug Description: adminserver: Solaris port for 1.1
Reviewed by: nhosoi (Thanks!)
Fix Description: Fortitude can supply different components, depending on the operating system.  On Fedora, mod_nss and Apache are already there, so we don't use Fortitude.
On RHEL4, we use Fortitude for mod_nss.
On Solaris, we use Fortitude for Apache and mod_nss.
I've created a fortitude.m4 that can handle all of these cases, and changed the existing httpd.m4 and mod_nss.m4 to first see if fortitude.m4 has found the component.  configure will also pass the proper --with flags to mod_admserv and mod_restartd.
ICU introduces a dependency on C++.  Solaris requires linking with the C++ libraries and that also requires using C++ to link as well.  This means using the CXXLINK macro.
There were a few other minor porting issues which required the additional compiler defines and use of config.h.
We need to set the libpath before using the @cgibindir@/config program.
LIBPATH was not being set correctly on Solaris because I was using the extended sort flags instead of the standard ones.
Platforms tested: Solaris 9 64bit
Flag Day: no
Doc impact: no



Index: AdminServer.pm.in
===================================================================
RCS file: /cvs/dirsec/adminserver/admserv/newinst/src/AdminServer.pm.in,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- AdminServer.pm.in	20 Jun 2007 16:35:02 -0000	1.2
+++ AdminServer.pm.in	22 Jun 2007 01:34:19 -0000	1.3
@@ -299,6 +299,10 @@
     my $admConf = getAdmConf($configdir);
     my $user = $admConf->{sysuser};
 
+    # this is required on some platforms in order to execute the config command
+    my $savepath = $ENV{SHLIB_PATH} || $ENV{LD_LIBRARY_PATH};
+    $ENV{LD_LIBRARY_PATH} = "@LIBPATH@:$savepath";
+    $ENV{SHLIB_PATH} = $ENV{LD_LIBRARY_PATH};
     my $cmd = "@cgibindir@/config op=set configuration.nsSuiteSpotUser=\"$user\"";
     if ($port != $origport) { # need to change the port number
         $cmd .= " configuration.nsServerPort=\"$port\"";
@@ -308,9 +312,13 @@
     }
 
     if (system($cmd)) {
+        $ENV{LD_LIBRARY_PATH} = $savepath;
+        $ENV{SHLIB_PATH} = $savepath;
         return 0;
     }
 
+    $ENV{LD_LIBRARY_PATH} = $savepath;
+    $ENV{SHLIB_PATH} = $savepath;
     return 1;
 }
 




More information about the Fedora-directory-commits mailing list