diff -rc ../work.orig/etc/CosNaming/Imakefile ./etc/CosNaming/Imakefile
*** ../work.orig/etc/CosNaming/Imakefile	Thu Nov  5 19:20:38 1998
--- ./etc/CosNaming/Imakefile	Mon Nov 30 20:49:02 1998
***************
*** 56,63 ****
--- 56,65 ----
  /******/
  
  LibraryTarget(libCosNaming-c.a, CosNaming-surrogate.o CosNaming-common.o)
+ SLibraryTarget(libCosNaming-c.so, CosNaming-surrogate.o CosNaming-common.o)
  
  InstallLibrary(libCosNaming-c.a, $(DESTDIR)/lib)
+ InstallSLibrary(libCosNaming-c.so, $(DESTDIR)/lib)
  InstallRO(CosNaming.h, $(DESTDIR)/include)
  #endif
  
diff -rc ../work.orig/etc/portmapper/Imakefile ./etc/portmapper/Imakefile
*** ../work.orig/etc/portmapper/Imakefile	Thu Nov  5 19:20:33 1998
--- ./etc/portmapper/Imakefile	Mon Nov 30 20:48:29 1998
***************
*** 38,43 ****
--- 38,45 ----
  portmap.o : SunPortMapper.h portmap.c ${ILUHEADERFILES}
  
  LibraryTarget(libsunportmapper.a, SunPortMapper-surrogate.o SunPortMapper-common.o portmap.o)
+ SLibraryTarget(libsunportmapper.so, SunPortMapper-surrogate.o SunPortMapper-common.o portmap.o)
  InstallLibrary(libsunportmapper.a, $(DESTDIR)/lib)
+ InstallSLibrary(libsunportmapper.so, $(DESTDIR)/lib)
  InstallRO(ilusunportmapper.h, $(DESTDIR)/include)
  InstallRO(SunPortMapper.isl, $(DESTDIR)/interfaces)
diff -rc ../work.orig/imake/ilu.rules ./imake/ilu.rules
*** ../work.orig/imake/ilu.rules	Thu Nov  5 19:22:08 1998
--- ./imake/ilu.rules	Mon Nov 30 20:51:15 1998
***************
*** 508,513 ****
--- 508,519 ----
  	$(AR) $@ objs						@@\
  	$(RANLIB) $@
  
+ #define	SLibraryTarget(library, objs)				@@\
+ all:: library							@@\
+ library: objs							@@\
+ 	$(RM) $@						@@\
+ 	$(LDSHARED) -o $@ objs
+ 
  /*
   * This section added for Linux shared libs
   */
***************
*** 570,576 ****
  #define	ILUCPlusPlusProgramTarget(program, objs, libs, syslibs)	@@\
  all:: program							@@\
  								@@\
! program: objs libs $(ILUCPLUSPLUSLIBS)				@@\
  	$(RM) $@						@@\
  	$(CPLUSPLUS_COMMAND) $(CFLAGS) -o $@ objs libs $(ILUCPLUSPLUSLIBS) syslibs $(CPLUSPLUS_LIBRARIES) $(SYSAUX_LIBRARIES) -lm @@\
  								@@\
--- 576,582 ----
  #define	ILUCPlusPlusProgramTarget(program, objs, libs, syslibs)	@@\
  all:: program							@@\
  								@@\
! program: objs libs						@@\
  	$(RM) $@						@@\
  	$(CPLUSPLUS_COMMAND) $(CFLAGS) -o $@ objs libs $(ILUCPLUSPLUSLIBS) syslibs $(CPLUSPLUS_LIBRARIES) $(SYSAUX_LIBRARIES) -lm @@\
  								@@\
***************
*** 590,596 ****
  #define	ILUCProgramTarget(program, objs, libs, syslibs)		@@\
  all:: program							@@\
  								@@\
! program: objs libs $(ILUCLIBS)					@@\
  	$(RM) $@						@@\
  	$(CC) $(CFLAGS) -o $@ objs libs $(ILUCLIBS) syslibs $(ANSI_C_LIBRARY) $(SYSAUX_LIBRARIES) $(WORKAROUND_LOCAL_GCC_INSTALLATION_BUG) @@\
  								@@\
--- 596,602 ----
  #define	ILUCProgramTarget(program, objs, libs, syslibs)		@@\
  all:: program							@@\
  								@@\
! program: objs libs						@@\
  	$(RM) $@						@@\
  	$(CC) $(CFLAGS) -o $@ objs libs $(ILUCLIBS) syslibs $(ANSI_C_LIBRARY) $(SYSAUX_LIBRARIES) $(WORKAROUND_LOCAL_GCC_INSTALLATION_BUG) @@\
  								@@\
***************
*** 768,773 ****
--- 774,786 ----
              RANLIBRULE(dest)
  #endif /* sgi */
  
+ #define InstallSLibraries(libs, dest)					@@\
+ install.time:: libs							@@\
+ 	@(case '$(MFLAGS)' in *[i]*) set +e;; esac; \			@@\
+           for i in $?; do \						@@\
+            (set -x; \						@@\
+             $(INSTALL) $(INSTLIBFLAGS) $$i dest/$$i); done)
+ 
  #define InstallM3Library(lib, dest)		@@\
  InstallLibraries(lib.a,dest)			@@\
  InstallFiles(lib.ax,$(INSTLIBFLAGS),dest)
***************
*** 846,851 ****
--- 859,867 ----
  
  #define InstallLibrary(file, dest)					@@\
  InstallLibraries(file,dest)
+ 
+ #define InstallSLibrary(file, dest)					@@\
+ InstallSLibraries(file,dest)
  
  #define InstallMultiple(list, flags, dest)				@@\
  InstallFiles(list,flags,dest)
diff -rc ../work.orig/imake/ilu.tmpl ./imake/ilu.tmpl
*** ../work.orig/imake/ilu.tmpl	Thu Nov  5 19:22:09 1998
--- ./imake/ilu.tmpl	Mon Nov 30 22:30:50 1998
***************
*** 64,73 ****
  #ifdef WORK_IN_ILU_SOURCE_TREE
  
  ILUCINCLUDES = -I../../runtime/c -I../../runtime/kernel $(BUILD_SECURITY_INCLUDES) $(BUILD_BIGNUM_INCLUDES)
! ILUCLIBS = ../../runtime/c/libilu-c.a ../../runtime/kernel/libilu.a $(SECURITYLIBS) $(ILU_ZLIB_LIBRARY)
  
  ILUCPLUSPLUSINCLUDES = -I../../runtime/cpp -I../../runtime/kernel $(BUILD_SECURITY_INCLUDES) $(BUILD_BIGNUM_INCLUDES)
! ILUCPLUSPLUSLIBS = ../../runtime/cpp/libilu-c++.a ../../runtime/kernel/libilu.a $(SECURITYLIBS) $(ILU_ZLIB_LIBRARY)
  
  JAVA_ILU_CLASS_DIR = ../../runtime/java/ilu.jar
  
--- 64,73 ----
  #ifdef WORK_IN_ILU_SOURCE_TREE
  
  ILUCINCLUDES = -I../../runtime/c -I../../runtime/kernel $(BUILD_SECURITY_INCLUDES) $(BUILD_BIGNUM_INCLUDES)
! ILUCLIBS = -L../../runtime/c -L../../runtime/kernel -lilu-c -lilu $(SECURITYLIBS) $(ILU_ZLIB_LIBRARY)
  
  ILUCPLUSPLUSINCLUDES = -I../../runtime/cpp -I../../runtime/kernel $(BUILD_SECURITY_INCLUDES) $(BUILD_BIGNUM_INCLUDES)
! ILUCPLUSPLUSLIBS = -L../../runtime/c -L../../runtime/kernel -lilu-c++ -lilu $(SECURITYLIBS) $(ILU_ZLIB_LIBRARY)
  
  JAVA_ILU_CLASS_DIR = ../../runtime/java/ilu.jar
  
***************
*** 88,97 ****
  #else
  
  ILUCINCLUDES = -I$(ILUHOME)/include $(SECURITYINCLUDES) $(BIGNUMINCLUDES)
! ILUCLIBS = $(ILUHOME)/lib/libilu-c.a $(ILUHOME)/lib/libilu.a $(SECURITYLIBS) $(ILU_ZLIB_LIBRARY)
  
  ILUCPLUSPLUSINCLUDES = -I$(ILUHOME)/include $(SECURITYINCLUDES) $(BIGNUMINCLUDES)
! ILUCPLUSPLUSLIBS = $(ILUHOME)/lib/libilu-c++.a $(ILUHOME)/lib/libilu.a $(SECURITYLIBS) $(ILU_ZLIB_LIBRARY)
  
  JAVA_ILU_CLASS_DIR = $(ILUHOME)/lib/ilu.jar
  
--- 88,97 ----
  #else
  
  ILUCINCLUDES = -I$(ILUHOME)/include $(SECURITYINCLUDES) $(BIGNUMINCLUDES)
! ILUCLIBS = -L$(ILUHOME)/lib -lilu-c -lilu $(SECURITYLIBS) $(ILU_ZLIB_LIBRARY)
  
  ILUCPLUSPLUSINCLUDES = -I$(ILUHOME)/include $(SECURITYINCLUDES) $(BIGNUMINCLUDES)
! ILUCPLUSPLUSLIBS = -L$(ILUHOME)/lib -lilu-c++ -lilu $(SECURITYLIBS) $(ILU_ZLIB_LIBRARY)
  
  JAVA_ILU_CLASS_DIR = $(ILUHOME)/lib/ilu.jar
  
diff -rc ../work.orig/runtime/c/Imakefile ./runtime/c/Imakefile
*** ../work.orig/runtime/c/Imakefile	Thu Nov  5 19:20:12 1998
--- ./runtime/c/Imakefile	Mon Nov 30 20:52:38 1998
***************
*** 44,56 ****
  OBJS = ilu.o orb.o
  
  LibraryTarget(libilu-c.a, $(OBJS) $(BIGNUMOBJS))
  
  InstallLibrary(libilu-c.a, $(DESTDIR)/lib)
  InstallRO(iluchdrs.h ilucstub.h, $(DESTDIR)/include)
  
  #ifdef ADD_C_SHARED_LIBRARY
  SharedLibrary(libilu-c, $(OBJS),,)
  #endif /* def ADD_C_SHARED_LIBRARY */
  
! all:: libilu-c.a
! 
--- 44,57 ----
  OBJS = ilu.o orb.o
  
  LibraryTarget(libilu-c.a, $(OBJS) $(BIGNUMOBJS))
+ SLibraryTarget(libilu-c.so, $(OBJS) $(BIGNUMOBJS))
  
  InstallLibrary(libilu-c.a, $(DESTDIR)/lib)
+ InstallSLibrary(libilu-c.so, $(DESTDIR)/lib)
  InstallRO(iluchdrs.h ilucstub.h, $(DESTDIR)/include)
  
  #ifdef ADD_C_SHARED_LIBRARY
  SharedLibrary(libilu-c, $(OBJS),,)
  #endif /* def ADD_C_SHARED_LIBRARY */
  
! all:: libilu-c.a libilu-c.so
diff -rc ../work.orig/runtime/kernel/Imakefile ./runtime/kernel/Imakefile
*** ../work.orig/runtime/kernel/Imakefile	Thu Nov  5 19:19:08 1998
--- ./runtime/kernel/Imakefile	Mon Nov 30 20:53:59 1998
***************
*** 266,274 ****
--- 266,282 ----
  opaqval.o : $(PVTIFC) ilutypes.h opaqval.c
  
  libilu.a : $(MF)
+ libilu.so : $(MF)
  
  LibraryTarget(libilu.a, $(OBJS))
+ SLibraryTarget(libilu.so, $(OBJS))
  InstallLibrary(libilu.a, $(DESTDIR)/lib)
+ InstallSLibrary(libilu.so, $(DESTDIR)/lib)
+ 
+ ibilu.so:  $(OBJS)
+ 	$(RM) $@
+ 	ld -Bshareable -o $@  $(OBJS)
+ 
  
  #ifdef ADD_KERNEL_SHARED_LIBRARY
  SharedLibrary(libilu, $(OBJS),,)
diff -rc ../work.orig/stubbers/parser/Imakefile ./stubbers/parser/Imakefile
*** ../work.orig/stubbers/parser/Imakefile	Thu Nov  5 19:18:03 1998
--- ./stubbers/parser/Imakefile	Mon Nov 30 20:55:15 1998
***************
*** 78,83 ****
--- 78,84 ----
  #endif
  
  LibraryTarget(libilu-parser.a, $(COMMONOBJS) $(TYPEUID_OBJS) $(XMLIDL_OBJS) $(IDLOBJS) $(BIGNUM_OBJS))
+ SLibraryTarget(libilu-parser.so, $(COMMONOBJS) $(TYPEUID_OBJS) $(XMLIDL_OBJS) $(IDLOBJS) $(BIGNUM_OBJS))
  ProgramTarget(islscan, scan.o, $(ILU_STUBBER_LIBRARIES),)
  
  iluconf.h : ../../runtime/kernel/iluconf.h
***************
*** 101,106 ****
--- 102,108 ----
  
  InstallProgram(islscan, $(DESTDIR)/bin)
  InstallRO(libilu-parser.a, $(DESTDIR)/lib)
+ InstallRO(libilu-parser.so, $(DESTDIR)/lib)
  InstallRO(iluptype.h, $(DESTDIR)/include)
  InstallRO(ilu.isl, $(DESTDIR)/interfaces)
  InstallRO(iluhttp.isl, $(DESTDIR)/interfaces)
