This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

shared libgcc for PA32



This patch enables building a shared libgcc for PA32 hpux10 and hpux11
targets.

I've bootstrapped this on hpux10 & hpux11 with and without --enable-shared
and all the right things appear to be happening.  It would probably work
for hpux8 & hpux9, but I no longer have such systems and can't test them,
so I didn't enable this change on those configurations.  [ hpux8 & hpux9
are officially obsolete anyway. ]

	* config/pa/t-hpux-shlib: New file.
	* config.gcc (hpux10, hpux11): Include t-hpux-shlib in tmake_file
	for 32bit hpux10 & hpux11 configurations.

Index: config.gcc
===================================================================
RCS file: /cvs/cvsfiles/devo/gcc/config.gcc,v
retrieving revision 1.46.16.1
diff -c -3 -p -r1.46.16.1 config.gcc
*** config.gcc	2001/11/30 06:56:04	1.46.16.1
--- config.gcc	2001/12/19 15:58:54
*************** hppa1.1-*-hpux10* | hppa2*-*-hpux10*)
*** 838,844 ****
  	float_format=i128
  	xm_defines=POSIX
  	xmake_file=pa/x-pa-hpux
! 	tmake_file=pa/t-pa
  	if test x$enable_threads = x; then
  	    enable_threads=$have_pthread_h
  	fi
--- 838,844 ----
  	float_format=i128
  	xm_defines=POSIX
  	xmake_file=pa/x-pa-hpux
! 	tmake_file="pa/t-pa pa/t-hpux-shlib"
  	if test x$enable_threads = x; then
  	    enable_threads=$have_pthread_h
  	fi
*************** hppa1.0-*-hpux10*)
*** 855,861 ****
  	float_format=i128
  	xm_defines=POSIX
  	xmake_file=pa/x-pa-hpux
! 	tmake_file=pa/t-pa
  	if test x$enable_threads = x; then
  	    enable_threads=$have_pthread_h
  	fi
--- 855,861 ----
  	float_format=i128
  	xm_defines=POSIX
  	xmake_file=pa/x-pa-hpux
! 	tmake_file="pa/t-pa pa/t-hpux-shlib"
  	if test x$enable_threads = x; then
  	    enable_threads=$have_pthread_h
  	fi
*************** hppa1.1-*-hpux11* | hppa2*-*-hpux11*)
*** 892,898 ****
  	float_format=i128
  	xm_defines=POSIX
  	xmake_file=pa/x-pa-hpux
! 	tmake_file=pa/t-pa
  #	if test x$enable_threads = x; then
  #	    enable_threads=$have_pthread_h
  #	fi
--- 892,898 ----
  	float_format=i128
  	xm_defines=POSIX
  	xmake_file=pa/x-pa-hpux
! 	tmake_file="pa/t-pa pa/t-hpux-shlib"
  #	if test x$enable_threads = x; then
  #	    enable_threads=$have_pthread_h
  #	fi
*************** hppa1.0-*-hpux11*)
*** 908,913 ****
--- 908,914 ----
  	float_format=i128
  	xm_defines=POSIX
  	xmake_file=pa/x-pa-hpux
+ 	tmake_file="pa/t-pa pa/t-hpux-shlib"
  #	if test x$enable_threads = x; then
  #	    enable_threads=$have_pthread_h
  #	fi
Index: config/pa/t-hpux-shlib
===================================================================
RCS file: t-hpux-shlib
diff -N t-hpux-shlib
*** /dev/null	Thu Aug 24 02:00:32 2000
--- t-hpux-shlib	Wed Dec 19 07:58:54 2001
***************
*** 0 ****
--- 1,19 ----
+ # Build a shared libgcc library.
+ SHLIB_EXT = .sl
+ SHLIB_NAME = @shlib_base_name@.sl
+ SHLIB_SONAME = @shlib_base_name@.1
+ SHLIB_OBJS = @shlib_objs@
+ 
+ SHLIB_LINK = $(GCC_FOR_TARGET) $(LIBGCC2_CFLAGS) -shared  -nodefaultlibs \
+ 	-o $(SHLIB_NAME) @multilib_flags@ $(SHLIB_OBJS) -lc && \
+         rm -f $(SHLIB_SONAME) && \
+         $(LN_S) $(SHLIB_NAME) $(SHLIB_SONAME)
+ 
+ 
+ # $(slibdir) double quoted to protect it from expansion while building
+ # libgcc.mk.  We want this delayed until actual install time.
+ SHLIB_INSTALL = $(INSTALL_DATA) -m 555 $(SHLIB_NAME) \
+ 	$$(slibdir)/$(SHLIB_SONAME); \
+         rm -f $$(slibdir)/$(SHLIB_NAME); \
+         $(LN_S) $(SHLIB_SONAME) $$(slibdir)/$(SHLIB_NAME)
+ 



Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]