From owner-cvs-lib Mon Jan 15 09:53:29 1996 Return-Path: owner-cvs-lib Received: (from root@localhost) by freefall.freebsd.org (8.7.3/8.7.3) id JAA27205 for cvs-lib-outgoing; Mon, 15 Jan 1996 09:53:29 -0800 (PST) Received: (from jdp@localhost) by freefall.freebsd.org (8.7.3/8.7.3) id JAA27198 Mon, 15 Jan 1996 09:53:27 -0800 (PST) Date: Mon, 15 Jan 1996 09:53:27 -0800 (PST) From: John Polstra Message-Id: <199601151753.JAA27198@freefall.freebsd.org> To: CVS-committers, cvs-lib Subject: cvs commit: src/lib/csu/i386 c++rt0.c Sender: owner-cvs-lib@FreeBSD.ORG Precedence: bulk jdp 96/01/15 09:53:27 Modified: lib/csu/i386 c++rt0.c Log: Check the count in the first word of __CTOR_LIST__ before executing the loop that invokes the static constructors. That makes it safe to link c++rt0.o into any shared library, even one that does not have any static constructors. Formerly, doing that would cause a bus error. If the library has no static constructors, __CTOR_LIST__ comes out as a simple 4-byte COMMON region, and it does not have the usual NULL word that terminates the list of constructors. This caused the old code to "call" a garbage address via the non-existent entry __CTOR_LIST__[1]. The analogous code that invokes the static destructors was already safe. This change is fully backward-compatible. Reviewed by: dfr@render.com (Doug Rabson) Revision Changes Path 1.4 +12 -4 src/lib/csu/i386/c++rt0.c From owner-cvs-lib Mon Jan 15 17:40:49 1996 Return-Path: owner-cvs-lib Received: (from root@localhost) by freefall.freebsd.org (8.7.3/8.7.3) id RAA29088 for cvs-lib-outgoing; Mon, 15 Jan 1996 17:40:49 -0800 (PST) Received: from time.cdrom.com (time.cdrom.com [192.216.222.226]) by freefall.freebsd.org (8.7.3/8.7.3) with SMTP id RAA29083 Mon, 15 Jan 1996 17:40:45 -0800 (PST) Received: from localhost (localhost [127.0.0.1]) by time.cdrom.com (8.6.12/8.6.9) with SMTP id RAA05361; Mon, 15 Jan 1996 17:40:33 -0800 To: John Polstra cc: CVS-committers@freefall.freebsd.org, cvs-lib@freefall.freebsd.org Subject: Re: cvs commit: src/lib/csu/i386 c++rt0.c In-reply-to: Your message of "Mon, 15 Jan 1996 09:53:27 PST." <199601151753.JAA27198@freefall.freebsd.org> Date: Mon, 15 Jan 1996 17:40:33 -0800 Message-ID: <5359.821756433@time.cdrom.com> From: "Jordan K. Hubbard" Sender: owner-cvs-lib@FreeBSD.ORG Precedence: bulk > Modified: lib/csu/i386 c++rt0.c > Log: > Check the count in the first word of __CTOR_LIST__ before executing > the loop that invokes the static constructors. That makes it safe > to link c++rt0.o into any shared library, even one that does not > have any static constructors. Formerly, doing that would cause a Does this mean that we can remove the CPLUSPLUSLIB declarations from the Makefiles of the C++ libraries we make? Jordan From owner-cvs-lib Mon Jan 15 18:56:40 1996 Return-Path: owner-cvs-lib Received: (from root@localhost) by freefall.freebsd.org (8.7.3/8.7.3) id SAA04096 for cvs-lib-outgoing; Mon, 15 Jan 1996 18:56:40 -0800 (PST) Received: from austin.polstra.com (austin.polstra.com [206.213.73.10]) by freefall.freebsd.org (8.7.3/8.7.3) with SMTP id SAA04078 Mon, 15 Jan 1996 18:56:30 -0800 (PST) Received: from austin.polstra.com (jdp@localhost) by austin.polstra.com (8.6.12/8.6.12) with ESMTP id SAA21898; Mon, 15 Jan 1996 18:56:17 -0800 Message-Id: <199601160256.SAA21898@austin.polstra.com> To: "Jordan K. Hubbard" Subject: Re: cvs commit: src/lib/csu/i386 c++rt0.c In-reply-to: Your message of "Mon, 15 Jan 1996 17:40:33 PST." <5359.821756433@time.cdrom.com> Cc: CVS-committers@freefall.freebsd.org, cvs-lib@freefall.freebsd.org Date: Mon, 15 Jan 1996 18:56:17 -0800 From: John Polstra Sender: owner-cvs-lib@FreeBSD.ORG Precedence: bulk > > Modified: lib/csu/i386 c++rt0.c > > Log: > > Check the count in the first word of __CTOR_LIST__ before executing > > the loop that invokes the static constructors. That makes it safe > > to link c++rt0.o into any shared library, even one that does not > > have any static constructors. Formerly, doing that would cause a > > Does this mean that we can remove the CPLUSPLUSLIB declarations > from the Makefiles of the C++ libraries we make? That's one of the two goals of this change. (The other one is to make "gcc -shared ..." work, just the way it does everywhere else in the world.) You can remove the CPLUSPLUSLIB declarations from the Makefiles, as soon as /usr/share/mk/bsd.lib.mk is changed like this: *** bsd.lib.mk- Mon Jan 15 18:46:43 1996 --- bsd.lib.mk Mon Jan 15 18:47:30 1996 *************** *** 187,193 **** .endif .if !defined(NOPIC) ! .if defined(CPLUSPLUSLIB) && !make(clean) && !make(cleandir) SOBJS+= ${DESTDIR}/usr/lib/c++rt0.o .endif --- 187,193 ---- .endif .if !defined(NOPIC) ! .if !make(clean) && !make(cleandir) SOBJS+= ${DESTDIR}/usr/lib/c++rt0.o .endif In other words, as soon as c++rt0.o is linked into every shared library, regardless of whether CPLUSPLUSLIB is defined in its Makefile. This change can be made any time now. I'll be happy to do it myself, but since /usr/share/mk isn't really my turf, I thought I'd better ask permission first. So: Can I change it?? Huh?? Pleeeeease?? Huh?? -- John From owner-cvs-lib Mon Jan 15 21:31:57 1996 Return-Path: owner-cvs-lib Received: (from root@localhost) by freefall.freebsd.org (8.7.3/8.7.3) id VAA13000 for cvs-lib-outgoing; Mon, 15 Jan 1996 21:31:57 -0800 (PST) Received: from time.cdrom.com (time.cdrom.com [192.216.222.226]) by freefall.freebsd.org (8.7.3/8.7.3) with SMTP id VAA12975 Mon, 15 Jan 1996 21:31:46 -0800 (PST) Received: from localhost (localhost [127.0.0.1]) by time.cdrom.com (8.6.12/8.6.9) with SMTP id VAA06941; Mon, 15 Jan 1996 21:31:22 -0800 To: John Polstra cc: CVS-committers@freefall.freebsd.org, cvs-lib@freefall.freebsd.org Subject: Re: cvs commit: src/lib/csu/i386 c++rt0.c In-reply-to: Your message of "Mon, 15 Jan 1996 18:56:17 PST." <199601160256.SAA21898@austin.polstra.com> Date: Mon, 15 Jan 1996 21:31:22 -0800 Message-ID: <6939.821770282@time.cdrom.com> From: "Jordan K. Hubbard" Sender: owner-cvs-lib@FreeBSD.ORG Precedence: bulk > This change can be made any time now. I'll be happy to do it myself, > but since /usr/share/mk isn't really my turf, I thought I'd better ask > permission first. No problem! I think that /usr/share/mk is "community property" in so far as it's so widely used by everything, but do also bear in mind that it's being widely used brings additional responsibility for making sure you don't break it! :-) > So: Can I change it?? Huh?? Pleeeeease?? Huh?? Yep! Good change! Long overdue! You can kill the CPLUSPLUSLIB declarations in the various Makefiles too, while you're at it! :-) Jordan From owner-cvs-lib Mon Jan 15 21:39:29 1996 Return-Path: owner-cvs-lib Received: (from root@localhost) by freefall.freebsd.org (8.7.3/8.7.3) id VAA13439 for cvs-lib-outgoing; Mon, 15 Jan 1996 21:39:29 -0800 (PST) Received: from jhome.DIALix.COM (root@jhome.DIALix.COM [192.203.228.69]) by freefall.freebsd.org (8.7.3/8.7.3) with ESMTP id VAA13421 Mon, 15 Jan 1996 21:39:19 -0800 (PST) Received: (from peter@localhost) by jhome.DIALix.COM (8.7.3/8.7.3) id NAA00430; Tue, 16 Jan 1996 13:37:43 +0800 (WST) Date: Tue, 16 Jan 1996 13:37:43 +0800 (WST) From: Peter Wemm To: "Jordan K. Hubbard" cc: John Polstra , CVS-committers@freefall.freebsd.org, cvs-lib@freefall.freebsd.org Subject: Re: cvs commit: src/lib/csu/i386 c++rt0.c In-Reply-To: <6939.821770282@time.cdrom.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-cvs-lib@FreeBSD.ORG Precedence: bulk On Mon, 15 Jan 1996, Jordan K. Hubbard wrote: > > So: Can I change it?? Huh?? Pleeeeease?? Huh?? > > Yep! Good change! Long overdue! You can kill the CPLUSPLUSLIB > declarations in the various Makefiles too, while you're at it! :-) > > Jordan Any chance of a rename to crti.o at the same time? -Peter From owner-cvs-lib Tue Jan 16 16:09:27 1996 Return-Path: owner-cvs-lib Received: (from root@localhost) by freefall.freebsd.org (8.7.3/8.7.3) id QAA28463 for cvs-lib-outgoing; Tue, 16 Jan 1996 16:09:27 -0800 (PST) Received: from austin.polstra.com (austin.polstra.com [206.213.73.10]) by freefall.freebsd.org (8.7.3/8.7.3) with SMTP id QAA28443 Tue, 16 Jan 1996 16:09:17 -0800 (PST) Received: from austin.polstra.com (jdp@localhost) by austin.polstra.com (8.6.12/8.6.12) with ESMTP id QAA10493; Tue, 16 Jan 1996 16:08:09 -0800 Message-Id: <199601170008.QAA10493@austin.polstra.com> To: Peter Wemm cc: "Jordan K. Hubbard" , CVS-committers@freefall.freebsd.org, cvs-lib@freefall.freebsd.org Subject: Re: cvs commit: src/lib/csu/i386 c++rt0.c In-reply-to: Your message of "Tue, 16 Jan 1996 13:37:43 +0800." Date: Tue, 16 Jan 1996 16:08:09 -0800 From: John Polstra Sender: owner-cvs-lib@FreeBSD.ORG Precedence: bulk Peter wrote: [about always linking c++rt0.o into shared libraries, and eliminating CPLUSPLUSLIB] > Any chance of a rename to crti.o at the same time? I decided not to do that _yet_. In case the CPLUSPLUSLIB change causes problems for some unforseen reason, I want it to be very easy to back it out again. Let's live with the old name for a while. We can always change the name later. -- John "Yellow-bellied Coward" Polstra :-) From owner-cvs-lib Sat Jan 20 09:35:28 1996 Return-Path: owner-cvs-lib Received: (from root@localhost) by freefall.freebsd.org (8.7.3/8.7.3) id JAA08154 for cvs-lib-outgoing; Sat, 20 Jan 1996 09:35:28 -0800 (PST) Received: (from nate@localhost) by freefall.freebsd.org (8.7.3/8.7.3) id JAA08147 Sat, 20 Jan 1996 09:35:26 -0800 (PST) Date: Sat, 20 Jan 1996 09:35:26 -0800 (PST) From: Nate Williams Message-Id: <199601201735.JAA08147@freefall.freebsd.org> To: CVS-committers, cvs-lib Subject: cvs commit: src/lib/libc/sys - Imported sources Sender: owner-cvs-lib@FreeBSD.ORG Precedence: bulk nate 96/01/20 09:35:26 Branch: lib/libc/sys 1.1.1 Log: ptrace(2) manpage Status: Vendor Tag: netbsd Release Tags: page_1_0 N src/lib/libc/sys/ptrace.2 No conflicts created by this import From owner-cvs-lib Sat Jan 20 09:56:11 1996 Return-Path: owner-cvs-lib Received: (from root@localhost) by freefall.freebsd.org (8.7.3/8.7.3) id JAA09396 for cvs-lib-outgoing; Sat, 20 Jan 1996 09:56:11 -0800 (PST) Received: (from nate@localhost) by freefall.freebsd.org (8.7.3/8.7.3) id JAA09388 Sat, 20 Jan 1996 09:56:09 -0800 (PST) Date: Sat, 20 Jan 1996 09:56:09 -0800 (PST) From: Nate Williams Message-Id: <199601201756.JAA09388@freefall.freebsd.org> To: CVS-committers, cvs-lib Subject: cvs commit: src/lib/libc/sys Makefile.inc ptrace.2 Sender: owner-cvs-lib@FreeBSD.ORG Precedence: bulk nate 96/01/20 09:56:09 Modified: lib/libc/sys Makefile.inc ptrace.2 Log: - FreeBSD'ized the ptrace manpage by removing non-FreeBSD specific portions. - install ptrace.2 Revision Changes Path 1.14 +4 -3 src/lib/libc/sys/Makefile.inc 1.2 +12 -211 src/lib/libc/sys/ptrace.2