public inbox for gcc@gcc.gnu.org
 help / color / mirror / Atom feed
* A libstdc++ patch
@ 1997-08-27 16:44 H.J. Lu
  0 siblings, 0 replies; 8+ messages in thread
From: H.J. Lu @ 1997-08-27 16:44 UTC (permalink / raw)
  To: egcs

Hi,

Here is a patch to support both libc 5 and glibc 2 on Linux.

-- 
H.J. Lu (hjl@gnu.ai.mit.edu)
--
Mon Aug 25 17:31:49 1997  H.J. Lu  (hjl@gnu.ai.mit.edu)

	* Makefile.in (LIBIBERTY_OBJS): Check if strerror.o before
	include.
	($(SHLIB)): Use $(CC) instead of (CXX) to avoid implicit
	-lstdc++.
	(install): Link $(SHLIB) to $(MSHLINK).

	* configure.in (*-*-linux*gnulibc1): Add linux-gnulibc1.ml
	for frags to avoid soname conflict.

	* config/linux-gnulibc1.ml: New.

Index: libstdc++/Makefile.in
===================================================================
RCS file: /home/work/cvs/gnu/egcs/libstdc++/Makefile.in,v
retrieving revision 1.1.1.1
diff -u -r1.1.1.1 Makefile.in
--- libstdc++/Makefile.in	1997/08/26 00:21:28	1.1.1.1
+++ libstdc++/Makefile.in	1997/08/26 20:48:36
@@ -44,7 +44,7 @@
 IO_DIR    = ../libio
 LIBIBERTY_DIR = ../libiberty
 
-LIBIBERTY_OBJS = `cat $(LIBIBERTY_DIR)/needed-list` strerror.o
+LIBIBERTY_OBJS = `cat $(LIBIBERTY_DIR)/needed-list` `test -f $(LIBIBERTY_DIR)/strerror.o && echo strerror.o`
 
 tooldir = $(exec_prefix)/$(target)
 INSTALLDIR = $(libdir)
@@ -87,7 +87,7 @@
 	$(RANLIB) $(ARLIB)
 
 $(SHLIB): piclist
-	$(CXX) $(LIBCXXFLAGS) $(SHFLAGS) -shared -o $(SHLIB) `cat piclist` $(SHDEPS)
+	$(CC) $(LIBCXXFLAGS) $(SHFLAGS) -shared -o $(SHLIB) `cat piclist` $(SHDEPS)
 
 $(SHARLIB): $(SHLIB)
 	-rm -f t$(SHARLIB)
@@ -269,7 +269,7 @@
 	  elif [ $$FILE = mshlink ]; then \
 	    for FILE in $(MSHLINK) ; do \
 	      rm -f $(INSTALLDIR)$(MULTISUBDIR)/$$FILE ; \
-	      ln -s -f $$FILE $(INSTALLDIR)$(MULTISUBDIR)/$$FILE ; \
+	      ln -s -f $(SHLIB) $(INSTALLDIR)$(MULTISUBDIR)/$$FILE ; \
 	    done; \
 	  elif [ $$FILE = $(SHLIB) ]; then \
 	    $(INSTALL_PROGRAM) $$FILE $(INSTALLDIR)$(MULTISUBDIR)/$$FILE ; \
Index: libstdc++/configure.in
===================================================================
RCS file: /home/work/cvs/gnu/egcs/libstdc++/configure.in,v
retrieving revision 1.1.1.1
diff -u -r1.1.1.1 configure.in
--- libstdc++/configure.in	1997/08/26 00:21:28	1.1.1.1
+++ libstdc++/configure.in	1997/08/27 15:44:47
@@ -33,6 +33,7 @@
     *-*-hpux*)		frags="${frags} hpux.ml" ;;
     *-*-irix[56]*)	frags="${frags} irix5.ml" ;;
     *-*-linux*aout*)	;;
+    *-*-linux*gnulibc1) frags="${frags} linux.ml linux-gnulibc1.ml" ;;
     *-*-linux*)		frags="${frags} linux.ml" ;;
     *-*-sysv4*)		frags="${frags} elf.ml" ;;
     *-*-solaris*)	frags="${frags} sol2shm.ml" ;;
--- /dev/null	Wed Dec 31 16:00:00 1969
+++ libstdc++/config/linux-gnulibc1.ml	Wed Aug 27 08:30:49 1997
@@ -0,0 +1,4 @@
+# We have to use a different soname for *-linux-gnulibc1* to avoid
+# conflict with *-linux-gnu*.
+
+MSHLINK = libstdc++.so.`echo $(VERSION) | sed 's/\([0-9]\+\)[.]\([0-9]\+\).*/\1\2/'`

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: A libstdc++ patch
  1998-02-18 17:15 H.J. Lu
@ 1998-02-24 19:54 ` Jeffrey A Law
  0 siblings, 0 replies; 8+ messages in thread
From: Jeffrey A Law @ 1998-02-24 19:54 UTC (permalink / raw)
  To: H.J. Lu; +Cc: egcs

  In message < m0y5FtX-00058KC@ocean.lucon.org >you write:
  > Hi,
  > 
  > I'd like to see a egcs 1.0.2 based libstdc++ 2.8.1. This patch from
  > egcs for egcs 1.0.2 supports "make check" when libstdc++ is configured
  > for gcc.
  > 
  > Thanks.
  > 
  > 
  > -- 
  > H.J. Lu (hjl@gnu.org)
  > ---
  > Tue Jan 27 10:29:44 1998  H.J. Lu  (hjl@gnu.org)
  > 
  > 	* configure.in (topsrcdir): New.
  > 	(configdirs): Check ${topsrcdir}/gcc instead.
  > 	(config-ml.in): Use ${topsrcdir}/config-ml.in.
  > 
  > 	* tests/configure.in (topsrcdir): New.
  > 	(check): Check ${topsrcdir}/gcc instead.
  > 
  > Tue Jan 13 21:23:05 1998  H.J. Lu  (hjl@gnu.org)
  > 
  > 	* configure.in (configdirs): Include testsuite only if
  > 	${srcdir}/../gcc exists.
  > 
  > 	* tests/configure.in (check): Set to ${CHECK} if
  > 	${srcdir}/../../gcc doesn't exists.
I'm still not convinced we really need this.  But I installed it
onto the release branch anyway.

jeff

^ permalink raw reply	[flat|nested] 8+ messages in thread

* A libstdc++ patch
@ 1998-02-18 17:15 H.J. Lu
  1998-02-24 19:54 ` Jeffrey A Law
  0 siblings, 1 reply; 8+ messages in thread
From: H.J. Lu @ 1998-02-18 17:15 UTC (permalink / raw)
  To: egcs

Hi,

I'd like to see a egcs 1.0.2 based libstdc++ 2.8.1. This patch from
egcs for egcs 1.0.2 supports "make check" when libstdc++ is configured
for gcc.

Thanks.


-- 
H.J. Lu (hjl@gnu.org)
---
Tue Jan 27 10:29:44 1998  H.J. Lu  (hjl@gnu.org)

	* configure.in (topsrcdir): New.
	(configdirs): Check ${topsrcdir}/gcc instead.
	(config-ml.in): Use ${topsrcdir}/config-ml.in.

	* tests/configure.in (topsrcdir): New.
	(check): Check ${topsrcdir}/gcc instead.

Tue Jan 13 21:23:05 1998  H.J. Lu  (hjl@gnu.org)

	* configure.in (configdirs): Include testsuite only if
	${srcdir}/../gcc exists.

	* tests/configure.in (check): Set to ${CHECK} if
	${srcdir}/../../gcc doesn't exists.

--- /home/work/misc/gnu/import/egcs/libstdc++/configure.in	Mon Feb  9 08:19:04 1998
+++ configure.in	Sun Feb 15 08:12:19 1998
@@ -2,7 +2,21 @@
 # necessary for a configure script to process the program in
 # this directory.  For more information, look at ../configure.
 
-configdirs="tests testsuite"
+if [ "${srcdir}" = "." ] ; then
+  if [ "${with_target_subdir}" != "." ] ; then
+    topsrcdir=${with_multisrctop}../..
+  else
+    topsrcdir=${with_multisrctop}..
+  fi
+else
+  topsrcdir=${srcdir}/..
+fi
+
+if [ -d ${topsrcdir}/gcc ] ; then
+  configdirs="tests testsuite"
+else
+  configdirs="tests"
+fi
 srctrigger=sinst.cc
 srcname="ANSI C++ library"
 package_makefile_frag=Make.pack
@@ -82,12 +96,4 @@
     mv -f Makefile.tem Makefile
 fi
 
-if [ "${srcdir}" = "." ] ; then
-  if [ "${with_target_subdir}" != "." ] ; then
-    . ${with_multisrctop}../../config-ml.in
-  else
-    . ${with_multisrctop}../config-ml.in
-  fi
-else
-  . ${srcdir}/../config-ml.in
-fi
+. ${topsrcdir}/config-ml.in
--- /home/work/misc/gnu/import/egcs/libstdc++/tests/configure.in	Thu Aug 21 15:58:42 1997
+++ tests/configure.in	Sun Feb 15 08:12:36 1998
@@ -43,8 +43,22 @@
   echo '	diff -c $(srcdir)/'"${TEST}.exp ${TEST}.out"  >>Makefile
   CHECK="${CHECK} check-${TEST}"
 done
-echo "
-check:
-check-old: ${CHECK}" >>Makefile
 
+if [ "${srcdir}" = "." ] ; then
+  if [ "${with_target_subdir}" != "." ] ; then
+    topsrcdir=${with_multisrctop}../../..
+  else
+    topsrcdir=${with_multisrctop}../..
+  fi
+else
+  topsrcdir=${srcdir}/../..
+fi
 
+if [ -d ${topsrcdir}/gcc ] ; then
+  echo "
+check:
+check-old: ${CHECK}" >>Makefile
+else
+  echo "
+check: ${CHECK}" >>Makefile
+fi

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: A libstdc++ patch
  1998-01-14  4:17 ` Jeffrey A Law
@ 1998-01-14  4:17   ` H.J. Lu
  0 siblings, 0 replies; 8+ messages in thread
From: H.J. Lu @ 1998-01-14  4:17 UTC (permalink / raw)
  To: law; +Cc: egcs

> Well, I'd really prefer patches to fix whatever problem arises when
> the gcc dir doesn't exist.  But since we really want to move towards
> an integrated C++ compiler & runtime I guess it's OK to punt if the
> compiler doesn't exist in the expected place.
> 

The problem is the way in which dejagnu finds the libio directory.
Basically, CC=gcc doesn't work with dejagnu. It expects

CC=...../bin/gcc/xgcc -B.....

It sets the libio directory via ....../bin/gcc/../libio. It doesn't
work when gcc is not built in the same pass as libio.



-- 
H.J. Lu (hjl@gnu.org)

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: A libstdc++ patch
  1998-01-12 10:18 H.J. Lu
@ 1998-01-14  4:17 ` Jeffrey A Law
  1998-01-14  4:17   ` H.J. Lu
  0 siblings, 1 reply; 8+ messages in thread
From: Jeffrey A Law @ 1998-01-14  4:17 UTC (permalink / raw)
  To: H.J. Lu; +Cc: egcs

  In message < m0xrnCd-0004ecC@ocean.lucon.org >you write:
  > I am using the same libstdc++ in libg++. The enclosed patch allows
  > "make check" to finish when the gcc directory doesn't exist.
  > 
  > Thanks.
  > 
  > 
  > -- 
  > H.J. Lu (hjl@gnu.org)
  > ---
  > Fri Jan  9 17:48:32 1999  H.J. Lu  (hjl@gnu.org)
  > 
  > 	* configure.in (configdirs): Include testsuite only if
  > 	${srcdir}/../gcc exists.
  > 
  > 	* tests/configure.in (check): Set to ${CHECK} if
  > 	${srcdir}/../../gcc doesn't exists.
Well, I'd really prefer patches to fix whatever problem arises when
the gcc dir doesn't exist.  But since we really want to move towards
an integrated C++ compiler & runtime I guess it's OK to punt if the
compiler doesn't exist in the expected place.

I've installed your patch.

Thanks,
jeff

^ permalink raw reply	[flat|nested] 8+ messages in thread

* A libstdc++ patch
@ 1998-01-12 10:18 H.J. Lu
  1998-01-14  4:17 ` Jeffrey A Law
  0 siblings, 1 reply; 8+ messages in thread
From: H.J. Lu @ 1998-01-12 10:18 UTC (permalink / raw)
  To: egcs

I am using the same libstdc++ in libg++. The enclosed patch allows
"make check" to finish when the gcc directory doesn't exist.

Thanks.


-- 
H.J. Lu (hjl@gnu.org)
---
Fri Jan  9 17:48:32 1999  H.J. Lu  (hjl@gnu.org)

	* configure.in (configdirs): Include testsuite only if
	${srcdir}/../gcc exists.

	* tests/configure.in (check): Set to ${CHECK} if
	${srcdir}/../../gcc doesn't exists.

Index: configure.in
===================================================================
RCS file: /home/work/cvs/gnu/egcs/libstdc++/configure.in,v
retrieving revision 1.1.1.3
diff -u -r1.1.1.3 configure.in
--- configure.in	1997/11/06 16:57:23	1.1.1.3
+++ configure.in	1998/01/10 02:56:17
@@ -2,7 +2,11 @@
 # necessary for a configure script to process the program in
 # this directory.  For more information, look at ../configure.
 
-configdirs="tests testsuite"
+if [ -d ${srcdir}/../gcc ] ; then
+  configdirs="tests testsuite"
+else
+  configdirs="tests"
+fi
 srctrigger=sinst.cc
 srcname="ANSI C++ library"
 package_makefile_frag=Make.pack
Index: tests/configure.in
===================================================================
RCS file: /home/work/cvs/gnu/egcs/libstdc++/tests/configure.in,v
retrieving revision 1.1.1.1
diff -u -r1.1.1.1 configure.in
--- configure.in	1997/08/26 00:21:29	1.1.1.1
+++ configure.in	1998/01/10 03:02:46
@@ -43,8 +43,13 @@
   echo '	diff -c $(srcdir)/'"${TEST}.exp ${TEST}.out"  >>Makefile
   CHECK="${CHECK} check-${TEST}"
 done
-echo "
+if [ -d ${srcdir}/../../gcc ] ; then
+  echo "
 check:
 check-old: ${CHECK}" >>Makefile
+else
+  echo "
+check: ${CHECK}" >>Makefile
+fi
 
 

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: A libstdc++ patch
  1997-11-24 12:21 H.J. Lu
@ 1997-11-25 18:31 ` Jeffrey A Law
  0 siblings, 0 replies; 8+ messages in thread
From: Jeffrey A Law @ 1997-11-25 18:31 UTC (permalink / raw)
  To: H.J. Lu; +Cc: egcs

  In message < m0xa4u7-0004ecC@ocean.lucon.org >you write:
  > Latest change from complex to complx is incomplete. Here is
  > the patch.
  > 
  > 
  > -- 
  > H.J. Lu (hjl@gnu.org)
  > ---
  > Mon Nov 24 10:14:51 1997  H.J. Lu  (hjl@gnu.org)
  > 
  > 	* Makefile.in (stmp-complex, bigstmp-complex): Changed to
  > 	xxxx-complx.
Thanks.  I've installed your patch.

jeff

^ permalink raw reply	[flat|nested] 8+ messages in thread

* A libstdc++ patch
@ 1997-11-24 12:21 H.J. Lu
  1997-11-25 18:31 ` Jeffrey A Law
  0 siblings, 1 reply; 8+ messages in thread
From: H.J. Lu @ 1997-11-24 12:21 UTC (permalink / raw)
  To: egcs

Latest change from complex to complx is incomplete. Here is
the patch.


-- 
H.J. Lu (hjl@gnu.org)
---
Mon Nov 24 10:14:51 1997  H.J. Lu  (hjl@gnu.org)

	* Makefile.in (stmp-complex, bigstmp-complex): Changed to
	xxxx-complx.

Index: Makefile.in
===================================================================
RCS file: /home/work/cvs/gnu/egcs/libstdc++/Makefile.in,v
retrieving revision 1.1.1.4
diff -u -r1.1.1.4 Makefile.in
--- Makefile.in	1997/11/23 21:14:12	1.1.1.4
+++ Makefile.in	1997/11/24 18:13:41
@@ -159,7 +159,7 @@
 	   CONJ NORM COS COSH EXP LOG POWCC POWCF POWCI POWFC SIN SINH SQRT
 COMIO    = EXTRACT INSERT
 
-stmp-complex: ${srcdir}/cinst.cc ${srcdir}/std/complext.h \
+stmp-complx: ${srcdir}/cinst.cc ${srcdir}/std/complext.h \
 	      ${srcdir}/std/complext.cc ${srcdir}/std/dcomplex.h \
 	      ${srcdir}/std/ldcomplex.h
 	for N in $(COMFUNCS) $(COMIO); do \
@@ -188,7 +188,7 @@
 	  $(COMPILE.cc) -DLD -D$${N} ${srcdir}/cinst.cc -o ld$${N}.o; \
 	  if [ $$? -eq 0 ]; then true; else exit 1; fi; \
 	done
-	touch stmp-complex
+	touch stmp-complx
 
 bigstmp-complx: ${srcdir}/cinst.cc ${srcdir}/std/complext.h \
 	         ${srcdir}/std/complext.cc ${srcdir}/std/dcomplex.h \
@@ -241,7 +241,7 @@
 	else true ; fi
 	$(COMPILE.cc) -DLD `for N in $(COMIO); do echo " -D$${N}"; done` \
 	  $(srcdir)/cinst.cc -o ldcomio.o
-	touch bigstmp-complex
+	touch bigstmp-complx
 
 .PHONY: install
 install:

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~1998-02-24 19:54 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
1997-08-27 16:44 A libstdc++ patch H.J. Lu
1997-11-24 12:21 H.J. Lu
1997-11-25 18:31 ` Jeffrey A Law
1998-01-12 10:18 H.J. Lu
1998-01-14  4:17 ` Jeffrey A Law
1998-01-14  4:17   ` H.J. Lu
1998-02-18 17:15 H.J. Lu
1998-02-24 19:54 ` Jeffrey A Law

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).