From 33f532b8d88eb7194cdbdf013da27f567228b029 Mon Sep 17 00:00:00 2001 From: gjb Date: Fri, 9 May 2014 04:14:37 +0000 Subject: Add 9.3 to mdoc.local. Sponsored by: The FreeBSD Foundation --- gnu/usr.bin/groff/tmac/mdoc.local | 1 + 1 file changed, 1 insertion(+) (limited to 'gnu') diff --git a/gnu/usr.bin/groff/tmac/mdoc.local b/gnu/usr.bin/groff/tmac/mdoc.local index bbab704..4d56bef 100644 --- a/gnu/usr.bin/groff/tmac/mdoc.local +++ b/gnu/usr.bin/groff/tmac/mdoc.local @@ -58,6 +58,7 @@ .ds doc-operating-system-FreeBSD-8.4 8.4 .ds doc-operating-system-FreeBSD-9.1 9.1 .ds doc-operating-system-FreeBSD-9.2 9.2 +.ds doc-operating-system-FreeBSD-9.3 9.3 .ds doc-operating-system-FreeBSD-10.0 10.0 .ds doc-operating-system-FreeBSD-10.1 10.1 .ds doc-operating-system-FreeBSD-11.0 11.0 -- cgit v1.1 From a1b87b576cfd0c19f8c5ace184329b74e77694ae Mon Sep 17 00:00:00 2001 From: dim Date: Sun, 11 May 2014 21:07:00 +0000 Subject: Allow libstdc++ and libsupc++ to compile with clang again, after the bsd.*.mk infrastructure changes. Apparently, you must now modify CXXFLAGS *before* including bsd.lib.mk, or your changes will be lost. --- gnu/lib/libstdc++/Makefile | 4 ++-- gnu/lib/libsupc++/Makefile | 3 +-- 2 files changed, 3 insertions(+), 4 deletions(-) (limited to 'gnu') diff --git a/gnu/lib/libstdc++/Makefile b/gnu/lib/libstdc++/Makefile index d19f9f3..fa1d67e 100644 --- a/gnu/lib/libstdc++/Makefile +++ b/gnu/lib/libstdc++/Makefile @@ -632,9 +632,9 @@ ${VERSION_MAP}: ${SRCDIR}/config/abi/pre/gnu.ver CLEANFILES+= ${VERSION_MAP} +CXXFLAGS.clang+= -stdlib=libstdc++ + .include # Filter out libc++-specific flags, and -std= flags above c++98 or gnu++98. CXXFLAGS:= ${CXXFLAGS:N-stdlib=libc++:N-std=c++[01][13x]:N-std=gnu++[01][13x]} - -CXXFLAGS.clang+= -stdlib=libstdc++ diff --git a/gnu/lib/libsupc++/Makefile b/gnu/lib/libsupc++/Makefile index 5cc5f04..c7cc30e 100644 --- a/gnu/lib/libsupc++/Makefile +++ b/gnu/lib/libsupc++/Makefile @@ -51,10 +51,9 @@ CLEANFILES+= unwind.h VERSION_MAP= ${.CURDIR}/Version.map +CXXFLAGS.clang+= -stdlib=libstdc++ .include # Filter out libc++-specific flags, and -std= flags above c++98 or gnu++98. CXXFLAGS:= ${CXXFLAGS:N-stdlib=libc++:N-std=c++[01][13x]:N-std=gnu++[01][13x]} - -CXXFLAGS.clang+= -stdlib=libstdc++ -- cgit v1.1 From 274f59a96f2fc906e0cec15a4d1acaeeb3b8eee5 Mon Sep 17 00:00:00 2001 From: brooks Date: Thu, 15 May 2014 16:44:25 +0000 Subject: Revert r261296. This removes the WITHOUT_NCURSESW option. It was the wrong direction. We will instead remove use of the non-wide-character supporting libncurses. --- gnu/usr.bin/dialog/Makefile | 14 ++------------ 1 file changed, 2 insertions(+), 12 deletions(-) (limited to 'gnu') diff --git a/gnu/usr.bin/dialog/Makefile b/gnu/usr.bin/dialog/Makefile index a7e0a57..f9281c8 100644 --- a/gnu/usr.bin/dialog/Makefile +++ b/gnu/usr.bin/dialog/Makefile @@ -3,21 +3,11 @@ DIALOG= ${.CURDIR}/../../../contrib/dialog PROG= dialog -DPADD= ${LIBDIALOG} ${LIBM} -LDADD= -ldialog -lm +DPADD= ${LIBDIALOG} ${LIBNCURSESW} ${LIBM} +LDADD= -ldialog -lncursesw -lm CFLAGS+= -I${.CURDIR} -I${DIALOG} .PATH: ${DIALOG} WARNS?= 6 -.include - -.if ${MK_NCURSESW} == "no" -DPADD+= ${LIBNCURSES} -LDADD+= -lncurses -.else -DPADD+= ${LIBNCURSESW} -LDADD+= -lncursesw -.endif - .include -- cgit v1.1 From 0a8f0580ffff138a893b62677b763b177cd2b11b Mon Sep 17 00:00:00 2001 From: pluknet Date: Tue, 20 May 2014 21:24:15 +0000 Subject: Move Nx definition to a separate block. Noticed by: ru (a while ago) --- gnu/usr.bin/groff/tmac/mdoc.local | 2 ++ 1 file changed, 2 insertions(+) (limited to 'gnu') diff --git a/gnu/usr.bin/groff/tmac/mdoc.local b/gnu/usr.bin/groff/tmac/mdoc.local index 4d56bef..3ee1093 100644 --- a/gnu/usr.bin/groff/tmac/mdoc.local +++ b/gnu/usr.bin/groff/tmac/mdoc.local @@ -62,6 +62,8 @@ .ds doc-operating-system-FreeBSD-10.0 10.0 .ds doc-operating-system-FreeBSD-10.1 10.1 .ds doc-operating-system-FreeBSD-11.0 11.0 +. +.\" Definitions for other *BSDs not (yet) in doc-common .ds doc-operating-system-NetBSD-7.0 7.0 . .\" Definitions not (yet) in doc-syms -- cgit v1.1 From 5d9ccf1a635147221409ed97a7f92ab7881b5acb Mon Sep 17 00:00:00 2001 From: brueffer Date: Fri, 6 Jun 2014 11:36:05 +0000 Subject: Add Lb string for libcuse. --- gnu/usr.bin/groff/tmac/mdoc.local | 1 + 1 file changed, 1 insertion(+) (limited to 'gnu') diff --git a/gnu/usr.bin/groff/tmac/mdoc.local b/gnu/usr.bin/groff/tmac/mdoc.local index 3ee1093..e7ec4cf 100644 --- a/gnu/usr.bin/groff/tmac/mdoc.local +++ b/gnu/usr.bin/groff/tmac/mdoc.local @@ -35,6 +35,7 @@ .ds doc-str-Lb-libarchive Streaming Archive Library (libarchive, \-larchive) .ds doc-str-Lb-libbluetooth Bluetooth User Library (libbluetooth, \-lbluetooth) .ds doc-str-Lb-libcapsicum Capsicum Library (libcapsicum, \-lcapsicum) +.ds doc-str-Lb-libcuse Userland Character Device Library (libcuse, \-lcuse) .ds doc-str-Lb-libedit Line Editor and History Library (libedit, \-ledit) .ds doc-str-Lb-libefi EFI Runtime Services Library (libefi, \-lefi) .ds doc-str-Lb-libelf ELF Parsing Library (libelf, \-lelf) -- cgit v1.1 From 989e2c600051059839eb88abfc343a905caf37eb Mon Sep 17 00:00:00 2001 From: bdrewery Date: Sun, 8 Jun 2014 17:29:31 +0000 Subject: In preparation for ASLR [1] support add WITH_PIE to support building with -fPIE. This is currently an opt-in build flag. Once ASLR support is ready and stable it should changed to opt-out and be enabled by default along with ASLR. Each application Makefile uses opt-out to ensure that ASLR will be enabled by default in new directories when the system is compiled with PIE/ASLR. [2] Mark known build failures as NO_PIE for now. The only known runtime failure was rtld. [1] http://www.bsdcan.org/2014/schedule/events/452.en.html Submitted by: Shawn Webb Discussed between: des@ and Shawn Webb [2] --- gnu/usr.bin/binutils/addr2line/Makefile | 2 ++ gnu/usr.bin/binutils/nm/Makefile | 2 ++ gnu/usr.bin/binutils/objcopy/Makefile | 2 ++ gnu/usr.bin/binutils/objdump/Makefile | 2 ++ gnu/usr.bin/binutils/readelf/Makefile | 2 ++ gnu/usr.bin/binutils/size/Makefile | 2 ++ gnu/usr.bin/binutils/strings/Makefile | 2 ++ gnu/usr.bin/binutils/strip/Makefile | 2 ++ gnu/usr.bin/gdb/gdb/Makefile | 2 ++ gnu/usr.bin/gdb/gdbtui/Makefile | 2 ++ gnu/usr.bin/gdb/kgdb/Makefile | 2 ++ gnu/usr.bin/groff/src/devices/grodvi/Makefile | 2 ++ gnu/usr.bin/groff/src/devices/grohtml/Makefile | 2 ++ gnu/usr.bin/groff/src/devices/grolbp/Makefile | 2 ++ gnu/usr.bin/groff/src/devices/grolj4/Makefile | 2 ++ gnu/usr.bin/groff/src/devices/grops/Makefile | 2 ++ gnu/usr.bin/groff/src/devices/grotty/Makefile | 2 ++ gnu/usr.bin/groff/src/preproc/eqn/Makefile | 2 ++ gnu/usr.bin/groff/src/preproc/grn/Makefile | 2 ++ gnu/usr.bin/groff/src/preproc/html/Makefile | 2 ++ gnu/usr.bin/groff/src/preproc/pic/Makefile | 2 ++ gnu/usr.bin/groff/src/preproc/refer/Makefile | 2 ++ gnu/usr.bin/groff/src/preproc/soelim/Makefile | 2 ++ gnu/usr.bin/groff/src/preproc/tbl/Makefile | 2 ++ gnu/usr.bin/groff/src/roff/groff/Makefile | 2 ++ gnu/usr.bin/groff/src/roff/troff/Makefile | 2 ++ gnu/usr.bin/groff/src/utils/addftinfo/Makefile | 2 ++ gnu/usr.bin/groff/src/utils/hpftodit/Makefile | 2 ++ gnu/usr.bin/groff/src/utils/indxbib/Makefile | 2 ++ gnu/usr.bin/groff/src/utils/lkbib/Makefile | 2 ++ gnu/usr.bin/groff/src/utils/lookbib/Makefile | 2 ++ gnu/usr.bin/groff/src/utils/tfmtodit/Makefile | 2 ++ gnu/usr.bin/rcs/Makefile.inc | 1 + gnu/usr.bin/texinfo/info/Makefile | 2 ++ gnu/usr.bin/texinfo/infokey/Makefile | 2 ++ gnu/usr.bin/texinfo/install-info/Makefile | 2 ++ gnu/usr.bin/texinfo/makeinfo/Makefile | 2 ++ gnu/usr.bin/texinfo/texindex/Makefile | 2 ++ 38 files changed, 75 insertions(+) (limited to 'gnu') diff --git a/gnu/usr.bin/binutils/addr2line/Makefile b/gnu/usr.bin/binutils/addr2line/Makefile index 2380738..37649fa 100644 --- a/gnu/usr.bin/binutils/addr2line/Makefile +++ b/gnu/usr.bin/binutils/addr2line/Makefile @@ -14,4 +14,6 @@ DPADD+= ${RELTOP}/libbfd/libbfd.a DPADD+= ${RELTOP}/libiberty/libiberty.a LDADD= ${DPADD} +NO_PIE= yes + .include diff --git a/gnu/usr.bin/binutils/nm/Makefile b/gnu/usr.bin/binutils/nm/Makefile index 4ef2b8f..5945d25 100644 --- a/gnu/usr.bin/binutils/nm/Makefile +++ b/gnu/usr.bin/binutils/nm/Makefile @@ -15,4 +15,6 @@ DPADD+= ${RELTOP}/libbfd/libbfd.a DPADD+= ${RELTOP}/libiberty/libiberty.a LDADD= ${DPADD} +NO_PIE= yes + .include diff --git a/gnu/usr.bin/binutils/objcopy/Makefile b/gnu/usr.bin/binutils/objcopy/Makefile index 66d99f4..c23e1e8 100644 --- a/gnu/usr.bin/binutils/objcopy/Makefile +++ b/gnu/usr.bin/binutils/objcopy/Makefile @@ -14,4 +14,6 @@ DPADD+= ${RELTOP}/libbfd/libbfd.a DPADD+= ${RELTOP}/libiberty/libiberty.a LDADD= ${DPADD} +NO_PIE= yes + .include diff --git a/gnu/usr.bin/binutils/objdump/Makefile b/gnu/usr.bin/binutils/objdump/Makefile index 1a0d046..fb275ac 100644 --- a/gnu/usr.bin/binutils/objdump/Makefile +++ b/gnu/usr.bin/binutils/objdump/Makefile @@ -16,4 +16,6 @@ DPADD+= ${RELTOP}/libbfd/libbfd.a DPADD+= ${RELTOP}/libiberty/libiberty.a LDADD= ${DPADD} +NO_PIE= yes + .include diff --git a/gnu/usr.bin/binutils/readelf/Makefile b/gnu/usr.bin/binutils/readelf/Makefile index d90c3bc..fd3110d 100644 --- a/gnu/usr.bin/binutils/readelf/Makefile +++ b/gnu/usr.bin/binutils/readelf/Makefile @@ -17,4 +17,6 @@ DPADD+= ${RELTOP}/libbfd/libbfd.a DPADD+= ${RELTOP}/libiberty/libiberty.a LDADD= ${DPADD} +NO_PIE= yes + .include diff --git a/gnu/usr.bin/binutils/size/Makefile b/gnu/usr.bin/binutils/size/Makefile index c5c19c1..a22e67f 100644 --- a/gnu/usr.bin/binutils/size/Makefile +++ b/gnu/usr.bin/binutils/size/Makefile @@ -14,4 +14,6 @@ DPADD+= ${RELTOP}/libbfd/libbfd.a DPADD+= ${RELTOP}/libiberty/libiberty.a LDADD= ${DPADD} +NO_PIE= yes + .include diff --git a/gnu/usr.bin/binutils/strings/Makefile b/gnu/usr.bin/binutils/strings/Makefile index a432d51..0ff82eb 100644 --- a/gnu/usr.bin/binutils/strings/Makefile +++ b/gnu/usr.bin/binutils/strings/Makefile @@ -14,4 +14,6 @@ DPADD+= ${RELTOP}/libbfd/libbfd.a DPADD+= ${RELTOP}/libiberty/libiberty.a LDADD= ${DPADD} +NO_PIE= yes + .include diff --git a/gnu/usr.bin/binutils/strip/Makefile b/gnu/usr.bin/binutils/strip/Makefile index d3cf8c4..6d17067 100644 --- a/gnu/usr.bin/binutils/strip/Makefile +++ b/gnu/usr.bin/binutils/strip/Makefile @@ -15,4 +15,6 @@ DPADD+= ${RELTOP}/libiberty/libiberty.a LDADD= ${DPADD} INSTALLFLAGS= -S +NO_PIE= yes + .include diff --git a/gnu/usr.bin/gdb/gdb/Makefile b/gnu/usr.bin/gdb/gdb/Makefile index 15eb2eb..23a3072 100644 --- a/gnu/usr.bin/gdb/gdb/Makefile +++ b/gnu/usr.bin/gdb/gdb/Makefile @@ -14,5 +14,7 @@ LDFLAGS+= -Wl,-E DPADD= ${GDBLIBS} ${BULIBS} ${LIBM} ${LIBREADLINE} ${LIBTERMCAP} ${LIBGNUREGEX} LDADD= ${GDBLIBS} ${BULIBS} -lm -lreadline -ltermcap -lgnuregex +NO_PIE= yes + .include CFLAGS+= -DDEBUGDIR=\"${DEBUGDIR}\" diff --git a/gnu/usr.bin/gdb/gdbtui/Makefile b/gnu/usr.bin/gdb/gdbtui/Makefile index 94dbb4b..d3651b4 100644 --- a/gnu/usr.bin/gdb/gdbtui/Makefile +++ b/gnu/usr.bin/gdb/gdbtui/Makefile @@ -15,4 +15,6 @@ LDFLAGS+= -Wl,-E DPADD= ${GDBLIBS} ${BULIBS} ${LIBM} ${LIBREADLINE} ${LIBTERMCAP} ${LIBGNUREGEX} LDADD= ${GDBLIBS} ${BULIBS} -lm -lreadline -ltermcap -lgnuregex +NO_PIE= yes + .include diff --git a/gnu/usr.bin/gdb/kgdb/Makefile b/gnu/usr.bin/gdb/kgdb/Makefile index 30cbf3c..9543ad0 100644 --- a/gnu/usr.bin/gdb/kgdb/Makefile +++ b/gnu/usr.bin/gdb/kgdb/Makefile @@ -17,4 +17,6 @@ LDADD= ${GDBLIBS} ${BULIBS} -lkvm${GDB_SUFFIX} -lm -lreadline -ltermcap \ CFLAGS+= -Wl,-export-dynamic .endif +NO_PIE= yes + .include diff --git a/gnu/usr.bin/groff/src/devices/grodvi/Makefile b/gnu/usr.bin/groff/src/devices/grodvi/Makefile index 3745440..7c88f04 100644 --- a/gnu/usr.bin/groff/src/devices/grodvi/Makefile +++ b/gnu/usr.bin/groff/src/devices/grodvi/Makefile @@ -6,4 +6,6 @@ DPADD= ${LIBDRIVER} ${LIBGROFF} ${LIBM} LDADD= ${LIBDRIVER} ${LIBGROFF} -lm CLEANFILES= ${MAN} +NO_PIE= yes + .include diff --git a/gnu/usr.bin/groff/src/devices/grohtml/Makefile b/gnu/usr.bin/groff/src/devices/grohtml/Makefile index 321f1c8..4d30338 100644 --- a/gnu/usr.bin/groff/src/devices/grohtml/Makefile +++ b/gnu/usr.bin/groff/src/devices/grohtml/Makefile @@ -6,4 +6,6 @@ DPADD= ${LIBDRIVER} ${LIBGROFF} ${LIBM} LDADD= ${LIBDRIVER} ${LIBGROFF} -lm MAN= +NO_PIE= yes + .include diff --git a/gnu/usr.bin/groff/src/devices/grolbp/Makefile b/gnu/usr.bin/groff/src/devices/grolbp/Makefile index 85a41c1..69511e0 100644 --- a/gnu/usr.bin/groff/src/devices/grolbp/Makefile +++ b/gnu/usr.bin/groff/src/devices/grolbp/Makefile @@ -6,4 +6,6 @@ DPADD= ${LIBDRIVER} ${LIBGROFF} ${LIBM} LDADD= ${LIBDRIVER} ${LIBGROFF} -lm CLEANFILES= ${MAN} +NO_PIE= yes + .include diff --git a/gnu/usr.bin/groff/src/devices/grolj4/Makefile b/gnu/usr.bin/groff/src/devices/grolj4/Makefile index bb3f9e4..51a003f 100644 --- a/gnu/usr.bin/groff/src/devices/grolj4/Makefile +++ b/gnu/usr.bin/groff/src/devices/grolj4/Makefile @@ -7,4 +7,6 @@ DPADD= ${LIBDRIVER} ${LIBGROFF} ${LIBM} LDADD= ${LIBDRIVER} ${LIBGROFF} -lm CLEANFILES= ${MAN} +NO_PIE= yes + .include diff --git a/gnu/usr.bin/groff/src/devices/grops/Makefile b/gnu/usr.bin/groff/src/devices/grops/Makefile index 4511f69..4933dbb 100644 --- a/gnu/usr.bin/groff/src/devices/grops/Makefile +++ b/gnu/usr.bin/groff/src/devices/grops/Makefile @@ -6,4 +6,6 @@ DPADD= ${LIBDRIVER} ${LIBGROFF} ${LIBM} LDADD= ${LIBDRIVER} ${LIBGROFF} -lm CLEANFILES= ${MAN} +NO_PIE= yes + .include diff --git a/gnu/usr.bin/groff/src/devices/grotty/Makefile b/gnu/usr.bin/groff/src/devices/grotty/Makefile index d15ee8b..78d6498 100644 --- a/gnu/usr.bin/groff/src/devices/grotty/Makefile +++ b/gnu/usr.bin/groff/src/devices/grotty/Makefile @@ -6,4 +6,6 @@ DPADD= ${LIBDRIVER} ${LIBGROFF} ${LIBM} LDADD= ${LIBDRIVER} ${LIBGROFF} -lm CLEANFILES= ${MAN} +NO_PIE= yes + .include diff --git a/gnu/usr.bin/groff/src/preproc/eqn/Makefile b/gnu/usr.bin/groff/src/preproc/eqn/Makefile index 80871fe..9e53be6 100644 --- a/gnu/usr.bin/groff/src/preproc/eqn/Makefile +++ b/gnu/usr.bin/groff/src/preproc/eqn/Makefile @@ -11,6 +11,8 @@ SCRIPTS= neqn MAN= eqn.1 neqn.1 CLEANFILES= eqn.cpp eqn_tab.h ${SCRIPTS} ${MAN} y.tab.c y.tab.h +NO_PIE= yes + eqn_tab.h: eqn.cpp .include diff --git a/gnu/usr.bin/groff/src/preproc/grn/Makefile b/gnu/usr.bin/groff/src/preproc/grn/Makefile index 58309d2..d859270 100644 --- a/gnu/usr.bin/groff/src/preproc/grn/Makefile +++ b/gnu/usr.bin/groff/src/preproc/grn/Makefile @@ -6,4 +6,6 @@ DPADD= ${LIBGROFF} ${LIBM} LDADD= ${LIBGROFF} -lm CLEANFILES= ${MAN} +NO_PIE= yes + .include diff --git a/gnu/usr.bin/groff/src/preproc/html/Makefile b/gnu/usr.bin/groff/src/preproc/html/Makefile index d46626b..4e82fd1 100644 --- a/gnu/usr.bin/groff/src/preproc/html/Makefile +++ b/gnu/usr.bin/groff/src/preproc/html/Makefile @@ -6,4 +6,6 @@ DPADD= ${LIBGROFF} LDADD= ${LIBGROFF} MAN= +NO_PIE= yes + .include diff --git a/gnu/usr.bin/groff/src/preproc/pic/Makefile b/gnu/usr.bin/groff/src/preproc/pic/Makefile index 3b5939c..2d14d0a 100644 --- a/gnu/usr.bin/groff/src/preproc/pic/Makefile +++ b/gnu/usr.bin/groff/src/preproc/pic/Makefile @@ -8,6 +8,8 @@ DPADD= ${LIBGROFF} ${LIBM} LDADD= ${LIBGROFF} -lm CLEANFILES= ${MAN} pic.cpp pic_tab.h y.tab.c y.tab.h +NO_PIE= yes + pic_tab.h: pic.cpp .include diff --git a/gnu/usr.bin/groff/src/preproc/refer/Makefile b/gnu/usr.bin/groff/src/preproc/refer/Makefile index 8a18f6f..ce82c70 100644 --- a/gnu/usr.bin/groff/src/preproc/refer/Makefile +++ b/gnu/usr.bin/groff/src/preproc/refer/Makefile @@ -7,4 +7,6 @@ DPADD= ${LIBBIB} ${LIBGROFF} ${LIBM} LDADD= ${LIBBIB} ${LIBGROFF} -lm CLEANFILES= label.cpp label_tab.h ${MAN} y.tab.c y.tab.h +NO_PIE= yes + .include diff --git a/gnu/usr.bin/groff/src/preproc/soelim/Makefile b/gnu/usr.bin/groff/src/preproc/soelim/Makefile index 2c68b80..8567a44 100644 --- a/gnu/usr.bin/groff/src/preproc/soelim/Makefile +++ b/gnu/usr.bin/groff/src/preproc/soelim/Makefile @@ -6,4 +6,6 @@ DPADD= ${LIBGROFF} LDADD= ${LIBGROFF} CLEANFILES= ${MAN} +NO_PIE= yes + .include diff --git a/gnu/usr.bin/groff/src/preproc/tbl/Makefile b/gnu/usr.bin/groff/src/preproc/tbl/Makefile index 29e7ac2..83bde82 100644 --- a/gnu/usr.bin/groff/src/preproc/tbl/Makefile +++ b/gnu/usr.bin/groff/src/preproc/tbl/Makefile @@ -6,4 +6,6 @@ DPADD= ${LIBGROFF} ${LIBM} LDADD= ${LIBGROFF} -lm CLEANFILES= ${MAN} +NO_PIE= yes + .include diff --git a/gnu/usr.bin/groff/src/roff/groff/Makefile b/gnu/usr.bin/groff/src/roff/groff/Makefile index 2ae541b..576507c 100644 --- a/gnu/usr.bin/groff/src/roff/groff/Makefile +++ b/gnu/usr.bin/groff/src/roff/groff/Makefile @@ -6,4 +6,6 @@ DPADD= ${LIBGROFF} ${LIBM} LDADD= ${LIBGROFF} -lm CLEANFILES= ${MAN} +NO_PIE= yes + .include diff --git a/gnu/usr.bin/groff/src/roff/troff/Makefile b/gnu/usr.bin/groff/src/roff/troff/Makefile index 802af2b..5c3b837 100644 --- a/gnu/usr.bin/groff/src/roff/troff/Makefile +++ b/gnu/usr.bin/groff/src/roff/troff/Makefile @@ -7,6 +7,8 @@ DPADD= ${LIBGROFF} ${LIBM} LDADD= ${LIBGROFF} -lm CLEANFILES= majorminor.cpp ${MAN} +NO_PIE= yes + .include majorminor.cpp: ${GROFF_DIST}/VERSION ${GROFF_DIST}/REVISION diff --git a/gnu/usr.bin/groff/src/utils/addftinfo/Makefile b/gnu/usr.bin/groff/src/utils/addftinfo/Makefile index 26fbb57..ea3b7a2 100644 --- a/gnu/usr.bin/groff/src/utils/addftinfo/Makefile +++ b/gnu/usr.bin/groff/src/utils/addftinfo/Makefile @@ -6,4 +6,6 @@ DPADD= ${LIBGROFF} LDADD= ${LIBGROFF} CLEANFILES= ${MAN} +NO_PIE= yes + .include diff --git a/gnu/usr.bin/groff/src/utils/hpftodit/Makefile b/gnu/usr.bin/groff/src/utils/hpftodit/Makefile index 1376702..512ca1b 100644 --- a/gnu/usr.bin/groff/src/utils/hpftodit/Makefile +++ b/gnu/usr.bin/groff/src/utils/hpftodit/Makefile @@ -6,4 +6,6 @@ DPADD= ${LIBGROFF} ${LIBM} LDADD= ${LIBGROFF} -lm CLEANFILES= ${MAN} +NO_PIE= yes + .include diff --git a/gnu/usr.bin/groff/src/utils/indxbib/Makefile b/gnu/usr.bin/groff/src/utils/indxbib/Makefile index b2c59a2..86eb4fb 100644 --- a/gnu/usr.bin/groff/src/utils/indxbib/Makefile +++ b/gnu/usr.bin/groff/src/utils/indxbib/Makefile @@ -6,6 +6,8 @@ DPADD= ${LIBBIB} ${LIBGROFF} ${LIBM} LDADD= ${LIBBIB} ${LIBGROFF} -lm CLEANFILES= ${MAN} +NO_PIE= yes + beforeinstall: ${INSTALL} -o ${BINOWN} -g ${BINGRP} -m ${NOBINMODE} \ ${DIST_DIR}/eign ${DESTDIR}${SHAREDIR}/dict/ diff --git a/gnu/usr.bin/groff/src/utils/lkbib/Makefile b/gnu/usr.bin/groff/src/utils/lkbib/Makefile index f30dc56..42fbd63 100644 --- a/gnu/usr.bin/groff/src/utils/lkbib/Makefile +++ b/gnu/usr.bin/groff/src/utils/lkbib/Makefile @@ -6,4 +6,6 @@ DPADD= ${LIBBIB} ${LIBGROFF} ${LIBM} LDADD= ${LIBBIB} ${LIBGROFF} -lm CLEANFILES= ${MAN} +NO_PIE= yes + .include diff --git a/gnu/usr.bin/groff/src/utils/lookbib/Makefile b/gnu/usr.bin/groff/src/utils/lookbib/Makefile index 18834a7..e2ea17d 100644 --- a/gnu/usr.bin/groff/src/utils/lookbib/Makefile +++ b/gnu/usr.bin/groff/src/utils/lookbib/Makefile @@ -6,4 +6,6 @@ DPADD= ${LIBBIB} ${LIBGROFF} ${LIBM} LDADD= ${LIBBIB} ${LIBGROFF} -lm CLEANFILES= ${MAN} +NO_PIE= yes + .include diff --git a/gnu/usr.bin/groff/src/utils/tfmtodit/Makefile b/gnu/usr.bin/groff/src/utils/tfmtodit/Makefile index ba3bbc5..1b0434f 100644 --- a/gnu/usr.bin/groff/src/utils/tfmtodit/Makefile +++ b/gnu/usr.bin/groff/src/utils/tfmtodit/Makefile @@ -6,4 +6,6 @@ DPADD= ${LIBGROFF} ${LIBM} LDADD= ${LIBGROFF} -lm CLEANFILES= ${MAN} +NO_PIE= yes + .include diff --git a/gnu/usr.bin/rcs/Makefile.inc b/gnu/usr.bin/rcs/Makefile.inc index a46437a..912ae7b 100644 --- a/gnu/usr.bin/rcs/Makefile.inc +++ b/gnu/usr.bin/rcs/Makefile.inc @@ -1,3 +1,4 @@ # $FreeBSD$ LIBRCS= ${.OBJDIR}/../lib/librcs.a +NO_PIE= yes diff --git a/gnu/usr.bin/texinfo/info/Makefile b/gnu/usr.bin/texinfo/info/Makefile index b4e44ac..a68a1c6 100644 --- a/gnu/usr.bin/texinfo/info/Makefile +++ b/gnu/usr.bin/texinfo/info/Makefile @@ -13,6 +13,8 @@ CFLAGS+= -DINFODIR=\"${INFODIR}:/usr/local/info:.\" DPADD= ${LIBTERMCAP} ${LIBTXI} LDADD= -ltermcap ${LIBTXI} +NO_PIE= yes + .include .PATH: ${TXIDIR}/info ${TXIDIR}/doc diff --git a/gnu/usr.bin/texinfo/infokey/Makefile b/gnu/usr.bin/texinfo/infokey/Makefile index 50be00d..d42406f 100644 --- a/gnu/usr.bin/texinfo/infokey/Makefile +++ b/gnu/usr.bin/texinfo/infokey/Makefile @@ -6,6 +6,8 @@ SRCS= infokey.c key.c DPADD= ${LIBTXI} LDADD= ${LIBTXI} +NO_PIE= yes + .include .PATH: ${TXIDIR}/info ${TXIDIR}/doc diff --git a/gnu/usr.bin/texinfo/install-info/Makefile b/gnu/usr.bin/texinfo/install-info/Makefile index 325c909..21ab9ea 100644 --- a/gnu/usr.bin/texinfo/install-info/Makefile +++ b/gnu/usr.bin/texinfo/install-info/Makefile @@ -5,6 +5,8 @@ PROG= install-info DPADD= ${LIBTXI} LDADD= ${LIBTXI} +NO_PIE= yes + .include .PATH: ${TXIDIR}/util ${TXIDIR}/doc diff --git a/gnu/usr.bin/texinfo/makeinfo/Makefile b/gnu/usr.bin/texinfo/makeinfo/Makefile index 373c326..1c3b77d 100644 --- a/gnu/usr.bin/texinfo/makeinfo/Makefile +++ b/gnu/usr.bin/texinfo/makeinfo/Makefile @@ -8,6 +8,8 @@ SRCS= cmds.c defun.c files.c float.c footnote.c html.c \ DPADD= ${LIBTXI} LDADD= ${LIBTXI} +NO_PIE= yes + .include .PATH: $(TXIDIR)/makeinfo $(TXIDIR)/doc diff --git a/gnu/usr.bin/texinfo/texindex/Makefile b/gnu/usr.bin/texinfo/texindex/Makefile index 91c2dfc..796d627 100644 --- a/gnu/usr.bin/texinfo/texindex/Makefile +++ b/gnu/usr.bin/texinfo/texindex/Makefile @@ -5,6 +5,8 @@ PROG= texindex DPADD= ${LIBTXI} LDADD= ${LIBTXI} +NO_PIE= yes + .include .PATH: ${TXIDIR}/util ${TXIDIR}/doc -- cgit v1.1 From 090d01798c7cd30fa335c839a532f7ef5f28ab6c Mon Sep 17 00:00:00 2001 From: gavin Date: Sat, 14 Jun 2014 18:45:40 +0000 Subject: With the move away from GNATS, point end users to a better web page detailing how to report bugs. Hat: bugmeister MFC after: 3 days --- gnu/usr.bin/binutils/libbfd/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'gnu') diff --git a/gnu/usr.bin/binutils/libbfd/Makefile b/gnu/usr.bin/binutils/libbfd/Makefile index 1493ccf..ca5e183 100644 --- a/gnu/usr.bin/binutils/libbfd/Makefile +++ b/gnu/usr.bin/binutils/libbfd/Makefile @@ -84,7 +84,7 @@ bfdver.h: Makefile echo '#define BFD_VERSION 217500000' > ${.TARGET} echo '#define BFD_VERSION_DATE 20070703' >> ${.TARGET} echo '#define BFD_VERSION_STRING ${VERSION}' >> ${.TARGET} - echo '#define REPORT_BUGS_TO ""' >> ${.TARGET} + echo '#define REPORT_BUGS_TO ""' >> ${.TARGET} targmatch.h: targmatch.sed config.bfd sed -f ${.ALLSRC:M*.sed} ${.ALLSRC:M*.bfd} > ${.TARGET} -- cgit v1.1 From aa8aca4879186b60f9528a8fdd165604d32b22a4 Mon Sep 17 00:00:00 2001 From: gavin Date: Sat, 14 Jun 2014 20:36:32 +0000 Subject: Remove send-pr, the supported interface to submit bugs is now via https://bugs.freebsd.org/submit/ Removing send-pr also removes one more piece of non-BSD-licensed software. Hat: bugmeister MFC after: 3 days --- gnu/usr.bin/Makefile | 1 - gnu/usr.bin/send-pr/COPYING | 339 --------------- gnu/usr.bin/send-pr/Makefile | 35 -- gnu/usr.bin/send-pr/README | 43 -- gnu/usr.bin/send-pr/categories | 21 - gnu/usr.bin/send-pr/doc/Makefile | 4 - gnu/usr.bin/send-pr/doc/categ.texi | 125 ------ gnu/usr.bin/send-pr/doc/fields.texi | 522 ---------------------- gnu/usr.bin/send-pr/doc/s-usage.texi | 570 ------------------------ gnu/usr.bin/send-pr/doc/send-pr.texi | 658 ---------------------------- gnu/usr.bin/send-pr/doc/states.texi | 58 --- gnu/usr.bin/send-pr/doc/version.texi | 3 - gnu/usr.bin/send-pr/install-sid.sh | 82 ---- gnu/usr.bin/send-pr/send-pr-el.in | 813 ----------------------------------- gnu/usr.bin/send-pr/send-pr.1 | 355 --------------- gnu/usr.bin/send-pr/send-pr.sh | 591 ------------------------- 16 files changed, 4220 deletions(-) delete mode 100644 gnu/usr.bin/send-pr/COPYING delete mode 100644 gnu/usr.bin/send-pr/Makefile delete mode 100644 gnu/usr.bin/send-pr/README delete mode 100644 gnu/usr.bin/send-pr/categories delete mode 100644 gnu/usr.bin/send-pr/doc/Makefile delete mode 100644 gnu/usr.bin/send-pr/doc/categ.texi delete mode 100644 gnu/usr.bin/send-pr/doc/fields.texi delete mode 100644 gnu/usr.bin/send-pr/doc/s-usage.texi delete mode 100644 gnu/usr.bin/send-pr/doc/send-pr.texi delete mode 100644 gnu/usr.bin/send-pr/doc/states.texi delete mode 100644 gnu/usr.bin/send-pr/doc/version.texi delete mode 100755 gnu/usr.bin/send-pr/install-sid.sh delete mode 100644 gnu/usr.bin/send-pr/send-pr-el.in delete mode 100644 gnu/usr.bin/send-pr/send-pr.1 delete mode 100644 gnu/usr.bin/send-pr/send-pr.sh (limited to 'gnu') diff --git a/gnu/usr.bin/Makefile b/gnu/usr.bin/Makefile index 7633069..7b1482d 100644 --- a/gnu/usr.bin/Makefile +++ b/gnu/usr.bin/Makefile @@ -14,7 +14,6 @@ SUBDIR= ${_binutils} \ ${_groff} \ ${_rcs} \ sdiff \ - send-pr \ ${_tests} \ ${_texinfo} diff --git a/gnu/usr.bin/send-pr/COPYING b/gnu/usr.bin/send-pr/COPYING deleted file mode 100644 index 515b6d3..0000000 --- a/gnu/usr.bin/send-pr/COPYING +++ /dev/null @@ -1,339 +0,0 @@ - GNU GENERAL PUBLIC LICENSE - Version 2, June 1991 - - Copyright (C) 1989, 1991 Free Software Foundation, Inc. - 675 Mass Ave, Cambridge, MA 02139, USA - Everyone is permitted to copy and distribute verbatim copies - of this license document, but changing it is not allowed. - - Preamble - - The licenses for most software are designed to take away your -freedom to share and change it. By contrast, the GNU General Public -License is intended to guarantee your freedom to share and change free -software--to make sure the software is free for all its users. This -General Public License applies to most of the Free Software -Foundation's software and to any other program whose authors commit to -using it. (Some other Free Software Foundation software is covered by -he GNU Library General Public License instead.) You can apply it to -your programs, too. - - When we speak of free software, we are referring to freedom, not -price. Our General Public Licenses are designed to make sure that you -have the freedom to distribute copies of free software (and charge for -this service if you wish), that you receive source code or can get it -if you want it, that you can change the software or use pieces of it -in new free programs; and that you know you can do these things. - - To protect your rights, we need to make restrictions that forbid -anyone to deny you these rights or to ask you to surrender the rights. -These restrictions translate to certain responsibilities for you if you -distribute copies of the software, or if you modify it. - - For example, if you distribute copies of such a program, whether -gratis or for a fee, you must give the recipients all the rights that -you have. You must make sure that they, too, receive or can get the -source code. And you must show them these terms so they know their -rights. - - We protect your rights with two steps: (1) copyright the software, and -(2) offer you this license which gives you legal permission to copy, -distribute and/or modify the software. - - Also, for each author's protection and ours, we want to make certain -that everyone understands that there is no warranty for this free -software. If the software is modified by someone else and passed on, we -want its recipients to know that what they have is not the original, so -that any problems introduced by others will not reflect on the original -authors' reputations. - - Finally, any free program is threatened constantly by software -patents. We wish to avoid the danger that redistributors of a free -program will individually obtain patent licenses, in effect making the -program proprietary. To prevent this, we have made it clear that any -patent must be licensed for everyone's free use or not licensed at all. - - The precise terms and conditions for copying, distribution and -modification follow. - - GNU GENERAL PUBLIC LICENSE - TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION - - 0. This License applies to any program or other work which contains -a notice placed by the copyright holder saying it may be distributed -under the terms of this General Public License. The "Program", below, -refers to any such program or work, and a "work based on the Program" -means either the Program or any derivative work under copyright law: -that is to say, a work containing the Program or a portion of it, -either verbatim or with modifications and/or translated into another -language. (Hereinafter, translation is included without limitation in -the term "modification".) Each licensee is addressed as "you". - -Activities other than copying, distribution and modification are not -covered by this License; they are outside its scope. The act of -running the Program is not restricted, and the output from the Program -is covered only if its contents constitute a work based on the -Program (independent of having been made by running the Program). -Whether that is true depends on what the Program does. - - 1. You may copy and distribute verbatim copies of the Program's -source code as you receive it, in any medium, provided that you -conspicuously and appropriately publish on each copy an appropriate -copyright notice and disclaimer of warranty; keep intact all the -notices that refer to this License and to the absence of any warranty; -and give any other recipients of the Program a copy of this License -along with the Program. - -You may charge a fee for the physical act of transferring a copy, and -you may at your option offer warranty protection in exchange for a fee. - - 2. You may modify your copy or copies of the Program or any portion -of it, thus forming a work based on the Program, and copy and -distribute such modifications or work under the terms of Section 1 -above, provided that you also meet all of these conditions: - - a) You must cause the modified files to carry prominent notices - stating that you changed the files and the date of any change. - - b) You must cause any work that you distribute or publish, that in - whole or in part contains or is derived from the Program or any - part thereof, to be licensed as a whole at no charge to all third - parties under the terms of this License. - - c) If the modified program normally reads commands interactively - when run, you must cause it, when started running for such - interactive use in the most ordinary way, to print or display an - announcement including an appropriate copyright notice and a - notice that there is no warranty (or else, saying that you provide - a warranty) and that users may redistribute the program under - these conditions, and telling the user how to view a copy of this - License. (Exception: if the Program itself is interactive but - does not normally print such an announcement, your work based on - the Program is not required to print an announcement.) - -These requirements apply to the modified work as a whole. If -identifiable sections of that work are not derived from the Program, -and can be reasonably considered independent and separate works in -themselves, then this License, and its terms, do not apply to those -sections when you distribute them as separate works. But when you -distribute the same sections as part of a whole which is a work based -on the Program, the distribution of the whole must be on the terms of -this License, whose permissions for other licensees extend to the -entire whole, and thus to each and every part regardless of who wrote it. - -Thus, it is not the intent of this section to claim rights or contest -your rights to work written entirely by you; rather, the intent is to -exercise the right to control the distribution of derivative or -collective works based on the Program. - -In addition, mere aggregation of another work not based on the Program -with the Program (or with a work based on the Program) on a volume of -a storage or distribution medium does not bring the other work under -the scope of this License. - - 3. You may copy and distribute the Program (or a work based on it, -under Section 2) in object code or executable form under the terms of -Sections 1 and 2 above provided that you also do one of the following: - - a) Accompany it with the complete corresponding machine-readable - source code, which must be distributed under the terms of Sections - 1 and 2 above on a medium customarily used for software interchange; or, - - b) Accompany it with a written offer, valid for at least three - years, to give any third party, for a charge no more than your - cost of physically performing source distribution, a complete - machine-readable copy of the corresponding source code, to be - distributed under the terms of Sections 1 and 2 above on a medium - customarily used for software interchange; or, - - c) Accompany it with the information you received as to the offer - to distribute corresponding source code. (This alternative is - allowed only for noncommercial distribution and only if you - received the program in object code or executable form with such - an offer, in accord with Subsection b above.) - -The source code for a work means the preferred form of the work for -making modifications to it. For an executable work, complete source -code means all the source code for all modules it contains, plus any -associated interface definition files, plus the scripts used to -control compilation and installation of the executable. However, as a -special exception, the source code distributed need not include -anything that is normally distributed (in either source or binary -form) with the major components (compiler, kernel, and so on) of the -operating system on which the executable runs, unless that component -itself accompanies the executable. - -If distribution of executable or object code is made by offering -access to copy from a designated place, then offering equivalent -access to copy the source code from the same place counts as -distribution of the source code, even though third parties are not -compelled to copy the source along with the object code. - - 4. You may not copy, modify, sublicense, or distribute the Program -except as expressly provided under this License. Any attempt -otherwise to copy, modify, sublicense or distribute the Program is -void, and will automatically terminate your rights under this License. -However, parties who have received copies, or rights, from you under -this License will not have their licenses terminated so long as such -parties remain in full compliance. - - 5. You are not required to accept this License, since you have not -signed it. However, nothing else grants you permission to modify or -distribute the Program or its derivative works. These actions are -prohibited by law if you do not accept this License. Therefore, by -modifying or distributing the Program (or any work based on the -Program), you indicate your acceptance of this License to do so, and -all its terms and conditions for copying, distributing or modifying -the Program or works based on it. - - 6. Each time you redistribute the Program (or any work based on the -Program), the recipient automatically receives a license from the -original licensor to copy, distribute or modify the Program subject to -these terms and conditions. You may not impose any further -restrictions on the recipients' exercise of the rights granted herein. -You are not responsible for enforcing compliance by third parties to -this License. - - 7. If, as a consequence of a court judgment or allegation of patent -infringement or for any other reason (not limited to patent issues), -conditions are imposed on you (whether by court order, agreement or -otherwise) that contradict the conditions of this License, they do not -excuse you from the conditions of this License. If you cannot -distribute so as to satisfy simultaneously your obligations under this -License and any other pertinent obligations, then as a consequence you -may not distribute the Program at all. For example, if a patent -license would not permit royalty-free redistribution of the Program by -all those who receive copies directly or indirectly through you, then -the only way you could satisfy both it and this License would be to -refrain entirely from distribution of the Program. - -If any portion of this section is held invalid or unenforceable under -any particular circumstance, the balance of the section is intended to -apply and the section as a whole is intended to apply in other -circumstances. - -It is not the purpose of this section to induce you to infringe any -patents or other property right claims or to contest validity of any -such claims; this section has the sole purpose of protecting the -integrity of the free software distribution system, which is -implemented by public license practices. Many people have made -generous contributions to the wide range of software distributed -through that system in reliance on consistent application of that -system; it is up to the author/donor to decide if he or she is willing -to distribute software through any other system and a licensee cannot -impose that choice. - -This section is intended to make thoroughly clear what is believed to -be a consequence of the rest of this License. - - 8. If the distribution and/or use of the Program is restricted in -certain countries either by patents or by copyrighted interfaces, the -original copyright holder who places the Program under this License -may add an explicit geographical distribution limitation excluding -those countries, so that distribution is permitted only in or among -countries not thus excluded. In such case, this License incorporates -the limitation as if written in the body of this License. - - 9. The Free Software Foundation may publish revised and/or new versions -of the General Public License from time to time. Such new versions will -be similar in spirit to the present version, but may differ in detail to -address new problems or concerns. - -Each version is given a distinguishing version number. If the Program -specifies a version number of this License which applies to it and "any -later version", you have the option of following the terms and conditions -either of that version or of any later version published by the Free -Software Foundation. If the Program does not specify a version number of -this License, you may choose any version ever published by the Free Software -Foundation. - - 10. If you wish to incorporate parts of the Program into other free -programs whose distribution conditions are different, write to the author -to ask for permission. For software which is copyrighted by the Free -Software Foundation, write to the Free Software Foundation; we sometimes -make exceptions for this. Our decision will be guided by the two goals -of preserving the free status of all derivatives of our free software and -of promoting the sharing and reuse of software generally. - - NO WARRANTY - - 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY -FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN -OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES -PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED -OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF -MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS -TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE -PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, -REPAIR OR CORRECTION. - - 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING -WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR -REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, -INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING -OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED -TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY -YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER -PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE -POSSIBILITY OF SUCH DAMAGES. - - END OF TERMS AND CONDITIONS - - Appendix: How to Apply These Terms to Your New Programs - - If you develop a new program, and you want it to be of the greatest -possible use to the public, the best way to achieve this is to make it -free software which everyone can redistribute and change under these terms. - - To do so, attach the following notices to the program. It is safest -to attach them to the start of each source file to most effectively -convey the exclusion of warranty; and each file should have at least -the "copyright" line and a pointer to where the full notice is found. - - - Copyright (C) 19yy - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - -Also add information on how to contact you by electronic and paper mail. - -If the program is interactive, make it output a short notice like this -when it starts in an interactive mode: - - Gnomovision version 69, Copyright (C) 19yy name of author - Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. - This is free software, and you are welcome to redistribute it - under certain conditions; type `show c' for details. - -The hypothetical commands `show w' and `show c' should show the appropriate -parts of the General Public License. Of course, the commands you use may -be called something other than `show w' and `show c'; they could even be -mouse-clicks or menu items--whatever suits your program. - -You should also get your employer (if you work as a programmer) or your -school, if any, to sign a "copyright disclaimer" for the program, if -necessary. Here is a sample; alter the names: - - Yoyodyne, Inc., hereby disclaims all copyright interest in the program - `Gnomovision' (which makes passes at compilers) written by James Hacker. - - , 1 April 1989 - Ty Coon, President of Vice - -This General Public License does not permit incorporating your program into -proprietary programs. If your program is a subroutine library, you may -consider it more useful to permit linking proprietary applications with the -library. If this is what you want to do, use the GNU Library General -Public License instead of this License. diff --git a/gnu/usr.bin/send-pr/Makefile b/gnu/usr.bin/send-pr/Makefile deleted file mode 100644 index f17db49..0000000 --- a/gnu/usr.bin/send-pr/Makefile +++ /dev/null @@ -1,35 +0,0 @@ -# $FreeBSD$ -# -# Makefile for building a standalone send-pr. -# - -SCRIPTS= send-pr -MAN= send-pr.1 -SUBMITTERS= current-users -RELEASE= `uname -rsm` -CLEANFILES+= send-pr send-pr.el - -SUBDIR+= doc - -LINKS= ${BINDIR}/send-pr ${BINDIR}/sendbug -MLINKS= send-pr.1 sendbug.1 - -send-pr: send-pr.sh Makefile - sed -e 's,@DATADIR@,/etc,g' \ - -e 's/@DEFAULT_RELEASE@/$(RELEASE)/g' \ - -e 's/^SUBMITTER=.*/SUBMITTER=$(SUBMITTERS)/' \ - ${.ALLSRC:N*Makefile} > ${.TARGET} - -send-pr.el: send-pr-el.in Makefile - default_release=`uname -rsm`; \ - sed -e 's,@DATADIR@,/etc,g' \ - -e "s/@DEFAULT_RELEASE@/$${default_release}/g" \ - -e 's/"unknown"/"$(SUBMITTERS)"/g' \ - ${.ALLSRC:N*Makefile} > ${.TARGET} - -# called from /usr/src/etc/Makefile -etc-gnats-freefall: - ${INSTALL} -o ${BINOWN} -g ${BINGRP} -m 0644 \ - ${.CURDIR}/categories ${DESTDIR}/etc/gnats/freefall - -.include diff --git a/gnu/usr.bin/send-pr/README b/gnu/usr.bin/send-pr/README deleted file mode 100644 index b479179..0000000 --- a/gnu/usr.bin/send-pr/README +++ /dev/null @@ -1,43 +0,0 @@ - send-pr - sends bug reports to a central support site - -`send-pr' uses electronic mail to submit support questions and -software bugs to a central site. No piece of software is perfect, and -software organizations understand this `send-pr' is designed to allow -users who have problems to submit reports of these problems to sites -responsible for supporting the software in question, in a defined form -which can be read by an electronically managed database. - -`send-pr' is part of a suite of programs known collectively as GNATS, -an acronym for Problem Report Management System. GNATS consists of -several programs which, used in concert, formulate and partially -administer a database of Problem Reports, or PRs, at a central support -site. A PR goes through several states in its lifetime; GNATS tracks -the PR and all information associated with it through each state and -finally acts as an archive for PRs which have been resolved. - -The same engine can be used to submit bugs to any number of support -sites by setting up aliases for each of them; `send-pr' error-checks -each PR as it is sent to be sure that the category specified matches a -category supported by the site in question. - -`send-pr' invokes an editor on a problem report template (after trying -to fill in some fields with reasonable default values). When you exit -the editor, `send-pr' sends the completed form to the support site. -At the support site, the PR is assigned a unique number and is stored -in the GNATS database according to its category and customer-id. GNATS -automatically replies with an acknowledgement, citing the category and -the PR number. - -See the Texinfo file `send-pr.texi' or the Info file `send-pr.info' -for detailed installation and usage information. - -See the file MANIFEST for a list of the files which should have -accompanied this distribution. - -See `send-pr.texi', `send-pr.info', or the file INSTALL for the -installation procedure for `send-pr'. - - -Copyright (c) 1993, Free Software Foundation, Inc. -See the file COPYING for copyright information concerning this -distribution and all its components. diff --git a/gnu/usr.bin/send-pr/categories b/gnu/usr.bin/send-pr/categories deleted file mode 100644 index da511e7..0000000 --- a/gnu/usr.bin/send-pr/categories +++ /dev/null @@ -1,21 +0,0 @@ -# $FreeBSD$ -advocacy -alpha -amd64 -arm -bin -conf -docs -gnu -i386 -ia64 -java -kern -misc -ports -powerpc -sparc64 -standards -threads -usb -www diff --git a/gnu/usr.bin/send-pr/doc/Makefile b/gnu/usr.bin/send-pr/doc/Makefile deleted file mode 100644 index 1de7064..0000000 --- a/gnu/usr.bin/send-pr/doc/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -INFO = send-pr -INFOSECTION="System Utilities" - -.include diff --git a/gnu/usr.bin/send-pr/doc/categ.texi b/gnu/usr.bin/send-pr/doc/categ.texi deleted file mode 100644 index fe84918..0000000 --- a/gnu/usr.bin/send-pr/doc/categ.texi +++ /dev/null @@ -1,125 +0,0 @@ -@c $FreeBSD$ - -@node Valid Categories -@unnumberedsec Valid Categories -@cindex valid categories -@cindex example of a list of valid categories - -@table @code -@item bfd -@sc{gnu} binary file descriptor library. - -@item bifrabulator -This one doesn't actually exist. - -@item binutils -@sc{gnu} utilities for binary files (@code{ar}, @code{nm}, @code{size}@dots{}). - -@item bison -@sc{gnu} parser generator. - -@item byacc -Free parser generator. - -@item config -Cygnus Solutions Software configuration and installation. - -@item cvs -Concurrent Version System. - -@item diff -@sc{gnu} @code{diff} program. - -@item doc -Documentation and manuals. - -@item emacs -@sc{gnu} Emacs editor and related functions. - -@item flex -@sc{gnu} lexical analyzer. - -@item g++ -@sc{gnu} C++ compiler. - -@item gas -@sc{gnu} assembler. - -@item gcc -@sc{gnu} C compiler. - -@item gdb -@sc{gnu} source code debugger. - -@item glob -The filename globbing functions. - -@item gprof -@sc{gnu} profiler. - -@item grep -@sc{gnu} @code{grep} program. - -@item info -@sc{gnu} @code{info} hypertext reader. - -@item ispell -@sc{gnu} spelling checker. - -@item kerberos -Kerberos authentication system. - -@item ld -@sc{gnu} linker. - -@item libc -Cygnus Solutions C Support Library. - -@item libg++ -@sc{gnu} C++ class library. - -@item libiberty -@sc{gnu} @samp{libiberty} library. - -@item libm -Cygnus Solutions C Math Library. - -@item make -@sc{gnu} @code{make} program. - -@item makeinfo -@sc{gnu} utility to build Info files from Texinfo documents. - -@item mas -@sc{gnu} Motorola syntax assembler. - -@item newlib -Cygnus Solutions C Support and Math Libraries. - -@item patch -@sc{gnu} bug patch program. - -@item gnats -@sc{gnu} Problem Report Management System. - -@item rcs -Revision Control System. - -@item readline -@sc{gnu} @code{readline} library. - -@item send-pr -@sc{gnu} Problem Report submitting program. - -@item test -Category to use when testing @code{send-pr}. - -@item texindex -@sc{gnu} documentation indexing utility. - -@item texinfo -@sc{gnu} documentation macros. - -@item other -Anything which is not covered by the above categories. -@end table diff --git a/gnu/usr.bin/send-pr/doc/fields.texi b/gnu/usr.bin/send-pr/doc/fields.texi deleted file mode 100644 index 0cce642..0000000 --- a/gnu/usr.bin/send-pr/doc/fields.texi +++ /dev/null @@ -1,522 +0,0 @@ -@c $FreeBSD$ - -@node Fields -@section Problem Report format -@cindex Problem Report format -@cindex format -@cindex database similarities -@cindex fields - -The format of a PR is designed to reflect the nature of @sc{gnats} as a -database. Information is arranged into @dfn{fields}, and kept in -individual records (Problem Reports). - -A Problem Report contains two different types of fields: @dfn{Mail -Header} fields, which are used by the mail handler for delivery, and -@dfn{Problem Report} fields, which contain information relevant to the -Problem Report and its submitter. A Problem Report is essentially a -specially formatted electronic mail message. - -Problem Report fields are denoted by a keyword which begins with -@samp{>} and ends with @samp{:}, as in @samp{>Confidential:}. Fields -belong to one of three data types: - -@table @asis -@cindex Problem Report data types -@cindex @emph{Enumerated} data types -@item @sc{Enumerated} -One of a specific set of values, which vary according to the field. The -value for each keyword must be on the same line as the keyword. These -values are not configurable (yet). - -@ifset SENDPR -For each @sc{Enumerated} keyword, the possible choices are listed in the -@code{send-pr} template as a comment. -@end ifset -The following fields are @sc{Enumerated} format; see the descriptions of -fields below for explanations of each field in detail: - -@smallexample -@group ->Confidential: >Severity: >Priority: ->Class: >State: >Number: -@end group -@end smallexample - -@cindex @emph{Text} data types -@item @sc{Text} -One single line of text which must begin and end on the same line (i.e., -before a newline) as the keyword. See the descriptions of fields below -for explanations of each field in detail. The following fields are -@sc{Text} format: - -@smallexample -@group ->Submitter-Id: >Originator: >Synopsis: ->Category: >Release: >Responsible: ->Arrival-Date: -@end group -@end smallexample - -@cindex @emph{MultiText} data types -@item @sc{MultiText} -Text of any length may occur in this field. @sc{MultiText} may span -multiple lines and may also include blank lines. A @sc{MultiText} field -ends only when another keyword appears. See the descriptions of fields -below for explanations of each field in detail. - -The following fields are @sc{MultiText} format: - -@smallexample -@group ->Organization: >Environment: >Description: ->How-To-Repeat: >Fix: >Audit-Trail: ->Unformatted: -@end group -@end smallexample - -@end table - -@ifclear SENDPR -@subheading Example Problem Report -@end ifclear - -The following is an example Problem Report. Mail headers are at the -top, followed by @sc{gnats} fields, which begin with @samp{>} and end -with @samp{:}. The @samp{Subject:} line in the mail header and the -@samp{>Synopsis:} field are usually duplicates of each other. - -@cindex sample Problem Report -@cindex example Problem Report -@cindex Problem Report template -@cartouche -@smallexample -@group -Message-Id: @var{message-id} -Date: @var{date} -From: @var{address} -Reply-To: @var{address} -To: @var{bug-address} -Subject: @var{subject} - ->Number: @var{gnats-id} ->Category: @var{category} ->Synopsis: @var{synopsis} ->Confidential: yes @emph{or} no ->Severity: critical, serious, @emph{or} non-critical ->Priority: high, medium @emph{or} low ->Responsible: @var{responsible} ->State: open, analyzed, suspended, feedback, @emph{or} closed ->Class: sw-bug, doc-bug, change-request, support, -@ifset SENDPR -@emph{or} duplicate -@end ifset -@ifclear SENDPR -duplicate, @emph{or} mistaken -@end ifclear ->Submitter-Id: @var{submitter-id} ->Arrival-Date: @var{date} ->Originator: @var{name} ->Organization: @var{organization} ->Release: @var{release} ->Environment: - @var{environment} ->Description: - @var{description} ->How-To-Repeat: - @var{how-to-repeat} ->Fix: - @var{fix} ->Audit-Trail: -@var{appended-messages@dots{}} -State-Changed-From-To: @var{from}-@var{to} -State-Changed-When: @var{date} -State-Changed-Why: - @var{reason} -Responsible-Changed-From-To: @var{from}-@var{to} -Responsible-Changed-When: @var{date} -Responsible-Changed-Why: - @var{reason} ->Unformatted: - @var{miscellaneous} -@end group -@end smallexample -@end cartouche - -@menu -* Mail header fields:: -* Problem Report fields:: -@end menu - -@c ---------------------- -@node Mail header fields -@subsection Mail header fields -@cindex mail header fields -@cindex Internet standard RFC-822 - -A Problem Report may contain any mail header field described in the -Internet standard RFC-822. However, only the fields which identify the -sender and the subject are required by @code{send-pr}: - -@table @code -@cindex @code{To:} header -@item To: -The preconfigured mail address for the Support Site where the PR is to -be sent, automatically supplied by @code{send-pr}. - -@cindex @code{Subject:} header -@item Subject: -A terse description of the problem. This field normally contains the -same information as the @samp{>Synopsis:} field. - -@cindex @code{From:} header -@item From: -Usually supplied automatically by the originator's mailer; should -contain the originator's electronic mail address. - -@cindex @code{Reply-To:} header -@item Reply-To: -A return address to which electronic replies can be sent; in most cases, -the same address as the @code{From:} field. -@end table - -@ifclear SENDPR -@cindex @code{Received-By:} headers -One of the configurable options for @sc{gnats} is whether or not to -retain @w{@samp{Received-By:}} headers, which often consume a lot of -space and are not often used. @xref{Local configuration,,Changing your -local configuration}. -@end ifclear - -@c ---------------------- -@node Problem Report fields -@subsection Problem Report fields -@cindex GNATS database fields -@cindex field format - -@c FIXME - this node is loooooooooooooooong... - -@subheading Field descriptions - -The following fields are present whenever a PR is submitted via the -program @code{send-pr}. @sc{gnats} adds additional fields when the PR -arrives at the Support Site; explanations of them follow this list. - -@cindex fields - list -@cindex GNATS fields - list -@table @code -@cindex @code{Submitter-Id} field -@cindex @code{>Submitter-Id:} -@item >Submitter-Id: -(@sc{Text}) A unique identification code assigned by the Support Site. -It is used to identify all Problem Reports coming from a particular -site. (Submitters without a value for this field can invoke -@code{send-pr} with the @samp{--request-id} option to apply for one from -the support organization. Problem Reports from those not affiliated -with the support organization should use the default value of @samp{net} -for this field.) - -@cindex @code{Originator} field -@cindex @code{>Originator:} -@item >Originator: -(@sc{Text}) Originator's real name. The default is the value of the -originator's environment variable @code{NAME}. - -@cindex @code{>Organization:} -@cindex @code{Organization} field -@item >Organization: -(@sc{MultiText}) The originator's organization. The default value is -set with the variable @w{@code{DEFAULT_ORGANIZATION}} in the -@ifclear SENDPR -@file{config} file (@pxref{config file,,The @code{config} file}). -@end ifclear -@ifset SENDPR -@code{send-pr} shell script. -@end ifset - -@cindex @code{Confidential} field -@cindex @code{>Confidential:} -@cindex confidentiality in PRs -@cindex PR confidentiality -@item >Confidential: -(@sc{Enumerated}) Use of this field depends on the originator's -relationship with the support organization; contractual agreements often -have provisions for preserving confidentiality. Conversely, a lack of a -contract often means that any data provided will not be considered -confidential. Submitters should be advised to contact the support -organization directly if this is an issue. - -If the originator's relationship to the support organization provides -for confidentiality, then if the value of this field is @samp{yes} the -support organization treats the PR as confidential; any code samples -provided are not made publicly available (e.g., in regression test -suites). The default value is @samp{no}. - -@cindex @code{Synopsis} field -@cindex @code{>Synopsis:} -@item >Synopsis: -(@sc{Text}) One-line summary of the problem. @w{@code{send-pr}} copies -this information to the @samp{Subject:} line when you submit a Problem -Report. - -@cindex @code{Severity} field -@cindex @code{>Severity:} -@item >Severity: -(@sc{Enumerated}) The severity of the problem. Accepted values include: - -@table @code -@cindex @emph{critical} severity problems -@item critical -The product, component or concept is completely non-operational or some -essential functionality is missing. No workaround is known. - -@cindex @emph{serious} severity problems -@item serious -The product, component or concept is not working properly or significant -functionality is missing. Problems that would otherwise be considered -@samp{critical} are rated @samp{serious} when a workaround is known. - -@cindex @emph{non-critical} severity problems -@item non-critical -The product, component or concept is working in general, but lacks -features, has irritating behavior, does something wrong, or doesn't -match its documentation. -@end table -@noindent -The default value is @samp{serious}. -@sp 1 - -@cindex @code{Priority} field -@cindex @code{>Priority:} -@item >Priority: -(@sc{Enumerated}) How soon the originator requires a solution. Accepted -values include: - -@table @code -@cindex @emph{high} priority problems -@item high -A solution is needed as soon as possible. - -@cindex @emph{medium} priority problems -@item medium -The problem should be solved in the next release. - -@cindex @emph{low} priority problems -@item low -The problem should be solved in a future release. -@end table -@noindent -The default value is @samp{medium}. -@sp 1 - -@cindex @code{Category} field -@cindex @code{>Category:} -@item >Category: -(@sc{Text}) The name of the product, component or concept where -the problem lies. The values for this field are defined by the Support -Site. -@ifclear SENDPR -@xref{categories file,,The @code{categories} file}, for details. -@end ifclear - -@cindex @code{Class} field -@cindex @code{>Class:} -@item >Class: -(@sc{Enumerated}) The class of a problem can be one of the following: - -@table @code -@cindex @emph{sw-bug} class -@item sw-bug -A general product problem. (@samp{sw} stands for ``software''.) - -@cindex @emph{doc-bug} class -@item doc-bug -A problem with the documentation. - -@cindex @emph{change-request} class -@item change-request -A request for a change in behavior, etc. - -@cindex @emph{support} class -@item support -A support problem or question. - -@cindex @emph{duplicate} class -@item duplicate (@var{pr-number}) -Duplicate PR. @var{pr-number} should be the number of the original PR. - -@ifclear SENDPR -@cindex @emph{mistaken} class -@item mistaken -No problem, user error or misunderstanding. This value is valid only at -the Support Site. -@end ifclear -@end table - -@noindent -The default is @samp{sw-bug}. -@sp 1 - -@cindex @code{Release} field -@cindex @code{>Release:} -@item >Release: -(@sc{Text}) Release or version number of the product, component or -concept. - -@cindex @code{Environment} field -@cindex @code{>Environment:} -@item >Environment: -(@sc{MultiText}) Description of the environment where the problem occured: -machine architecture, operating system, host and target types, -libraries, pathnames, etc. - -@cindex @code{Description} field -@cindex @code{>Description:} -@item >Description: -(@sc{MultiText}) Precise description of the problem. - -@cindex @code{How-To-Repeat} field -@cindex @code{>How-To-Repeat:} -@item >How-To-Repeat: -(@sc{MultiText}) Example code, input, or activities to reproduce the -problem. The support organization uses example code both to reproduce -the problem and to test whether the problem is fixed. Include all -preconditions, inputs, outputs, conditions after the problem, and -symptoms. Any additional important information should be included. -Include all the details that would be necessary for someone else to -recreate the problem reported, however obvious. Sometimes seemingly -arbitrary or obvious information can point the way toward a solution. -See also @ref{Helpful hints,,Helpful hints}. - -@cindex @code{Fix} field -@cindex @code{>Fix:} -@item >Fix: -(@sc{MultiText}) A description of a solution to the problem, or a patch -which solves the problem. (This field is most often filled in at the -Support Site; we provide it to the submitter in case she has solved the -problem.) - -@end table - -@noindent -@sc{gnats} adds the following fields when the PR arrives at the Support -Site: - -@table @code -@cindex @code{Number} field -@cindex @code{>Number:} -@item >Number: -(@sc{Enumerated}) The incremental identification number for this PR. -@ifclear SENDPR -This is included in the automated reply to the submitter (if that -feature of @sc{gnats} is activated; @pxref{Local configuration,,Changing -your local configuration}). It is also included in the copy of the PR -that is sent to the maintainer. -@end ifclear - -The @samp{>Number:} field is often paired with the @samp{>Category:} -field as - -@smallexample -@var{category}/@var{number} -@end smallexample - -@noindent -in subsequent email messages. This is for historical reasons, as well -as because Problem Reports are stored in subdirectories which are named -by category. - -@cindex @code{State} field -@cindex @code{>State:} -@item >State: -(@sc{Enumerated}) The current state of the PR. Accepted values are: - -@table @code -@item open -The PR has been filed and the responsible person notified. - -@item analyzed -The responsible person has analyzed the problem. - -@item feedback -The problem has been solved, and the originator has been given a patch -or other fix. - -@item closed -The changes have been integrated, documented, and tested, and the -originator has confirmed that the solution works. - -@item suspended -Work on the problem has been postponed. -@end table - -@noindent -The initial state of a PR is @samp{open}. @xref{States,,States of -Problem Reports}. - -@cindex @code{Responsible} field -@cindex @code{>Responsible:} -@item >Responsible: -(@sc{Text}) The person responsible for this category. -@ifclear SENDPR -@sc{gnats} retrieves this information from the @file{categories} file -(@pxref{categories file,,The @code{categories} file}). -@end ifclear - -@cindex @code{>Arrival-Date:} -@cindex @code{Arrival-Date} field -@item >Arrival-Date: -(@sc{Text}) The time that this PR was received by @sc{gnats}. The date -is provided automatically by @sc{gnats}. - -@cindex @code{>Audit-Trail:} -@cindex @code{Audit-Trail} field -@item >Audit-Trail: -(@sc{MultiText}) Tracks related electronic mail as well as changes in -the @samp{>State:} and @samp{>Responsible:} fields with the sub-fields: - -@table @code -@cindex @code{State-Changed--:} in @code{>Audit-Trail:} -@item @w{State-Changed--: @var{oldstate}>-<@var{newstate}} -The old and new @samp{>State:} field values. - -@cindex @code{Responsible-Changed--:} in @code{>Audit-Trail:} -@item @w{Responsible-Changed--: @var{oldresp}>-<@var{newresp}} -The old and new @samp{>Responsible:} field values. - -@cindex @code{State-Changed-By:} in @code{>Audit-Trail:} -@cindex @code{Responsible-Changed-By:} in @code{>Audit-Trail:} -@item State-Changed-By: @var{name} -@itemx Responsible-Changed-By: @var{name} -The name of the maintainer who effected the change. - -@cindex @code{State-Changed-When:} in @code{>Audit-Trail:} -@cindex @code{Responsible-Changed-When:} in @code{>Audit-Trail:} -@item State-Changed-When: @var{timestamp} -@itemx Responsible-Changed-When: @var{timestamp} -The time the change was made. - -@cindex @code{State-Changed-Why:} in @code{>Audit-Trail:} -@cindex @code{Responsible-Changed-Why:} in @code{>Audit-Trail:} -@item State-Changed-Why: @var{reason@dots{}} -@itemx Responsible-Changed-Why: @var{reason@dots{}} -The reason for the change. -@end table - -@cindex subsequent mail -@cindex other mail -@cindex appending PRs -@cindex saving related mail -@cindex related mail -@noindent -The @samp{>Audit-Trail:} field also contains any mail messages received -by @sc{gnats} related to this PR, in the order received. - -@cindex @code{>Unformatted:} -@cindex @code{Unformatted} field -@item - >Unformatted: -(@sc{MultiText}) Any random text found outside the fields in the -original Problem Report. -@end table - diff --git a/gnu/usr.bin/send-pr/doc/s-usage.texi b/gnu/usr.bin/send-pr/doc/s-usage.texi deleted file mode 100644 index 5c9006b..0000000 --- a/gnu/usr.bin/send-pr/doc/s-usage.texi +++ /dev/null @@ -1,570 +0,0 @@ -@c $FreeBSD$ - -@c This is the usage section for send-pr. It is called as -@c chapter (Invoking send-pr) by send-pr.texi, and also as -@c section (Submitting Problem Reports) by gnats.texi (chapter/section -@c identifiers are adjusted accordingly) - -@c FIXME! This still seems jumbled... - -You can invoke @code{send-pr} from a shell prompt, or from within -@sc{gnu} Emacs using @w{@samp{M-x send-pr}}. - -@menu -* using send-pr:: Creating new Problem Reports -* send-pr in Emacs:: Using send-pr from within Emacs -* send-pr from the shell:: Invoking send-pr from the shell -* Submitting via e-mail:: Submitting a Problem Report via direct e-mail -* Helpful hints:: -@end menu - -@node using send-pr -@section Creating new Problem Reports - -@c FIXME - this is a long node -Invoking @code{send-pr} presents a PR @dfn{template} with a number of -fields already filled in. Complete the template as thoroughly as -possible to make a useful bug report. Submit only one bug with each PR. - -@cindex template -A template consists of three sections: - -@table @dfn -@item Comments -The top several lines of a blank template consist of a series of -comments that provide some basic instructions for completing the Problem -Report, as well as a list of valid entries for the @samp{>Category:} -field. These comments are all preceded by the string @samp{SEND-PR:} -and are erased automatically when the PR is submitted. The -instructional comments within @samp{<} and @samp{>} are also removed. -(Only these comments are removed; lines you provide that happen to have -those characters in them, such as examples of shell-level redirection, -are not affected.) - -@item Mail Header -@code{send-pr} creates a standard mail header. @code{send-pr} completes -all fields except the @samp{Subject:} line with default values. -(@xref{Fields,,Problem Report format}.) - -@item @sc{gnats} fields -These are the informational fields that @sc{gnats} uses to route your -Problem Report to the responsible party for further action. They should -be filled out as completely as possible. (@xref{Fields,,Problem Report -format}. Also see @ref{Helpful hints,,Helpful hints}.) -@end table - -@ifset SENDPR -@noindent -For examples of a Problem Report template and complete Problem Report, -see @ref{An Example}. -@end ifset - -The default template contains your preconfigured @samp{>Submitter-Id:}. -@code{send-pr} attempts to determine values for the @samp{>Originator:} -and @samp{>Organization:} fields (@pxref{Fields,,Problem Report -format}). @code{send-pr} will set the @samp{>Originator:} field to -the value of the @code{NAME} environment variable if it has been set; -similarly, @samp{>Organization:} will be set to the value of @code{ORGANIZATION}. -@code{send-pr} also attempts to find out some information -about your system and architecture, and places this information in the -@samp{>Environment:} field if it finds any. - -You may submit problem reports to different Support Sites from the -default site by specifying the alternate site when you invoke -@code{send-pr}. @xref{send-pr from the shell}. -Each @code{site} has its own list of categories for -which it accepts Problem Reports. -@c FIXME! This should go in.. -@c For a list of sites to whom @code{send-pr} is configured to send -@c Problem Reports, type @w{@samp{send-pr -S}}. -@ifset SENDPR -(@xref{default site,,Setting a default @var{site}}.) -@end ifset - -@code{send-pr} also provides the mail header section of the template -with default values in the @samp{To:}, @samp{From:}, and -@samp{Reply-To:} fields. The @samp{Subject:} field is empty. - -The template begins with a comment section: - -@cindex template comment section -@cindex comment section in the PR template -@smallexample -@group -SEND-PR: -*- send-pr -*- -SEND-PR: Lines starting with `SEND-PR' will be removed -SEND-PR: automatically as well as all comments (the text -SEND-PR: below enclosed in `<' and `>'). -SEND-PR: -SEND-PR: Please consult the document `Reporting Problems -SEND-PR: Using send-pr' if you are not sure how to fill out -SEND-PR: a problem report. -SEND-PR: -SEND-PR: Choose from the following categories: -@end group -@end smallexample - -@noindent -and also contains a list of valid @code{>Category:} values for the -Support Site to whom you are submitting this Problem Report. One (and -only one) of these values should be placed in the @code{>Category:} -field. -@ifset SENDPR -A complete sample bug report, from template to completed PR, is shown in -@ref{An Example}. For a complete list of valid categories, type -@w{@samp{send-pr -L}} at your prompt. @xref{Valid Categories,,Valid -Categories}, for a sample list of categories, . -@end ifset - -@c FIXME.. this sounds awkward -The mail header is just below the comment section. Fill out the -@samp{Subject:} field, if it is not already completed using the value of -@samp{>Synopsis:}. The other mail header fields contain default values. - -@cindex mail header section -@smallexample -@group -To: @var{support-site} -Subject: @emph{complete this field} -From: @var{your-login}@@@var{your-site} -Reply-To: @var{your-login}@@@var{your-site} -X-send-pr-version: send-pr @value{VERSION} -@end group -@end smallexample - -@noindent -where @var{support-site} is an alias on your local machine for the -Support Site you wish to submit this PR to. - -The rest of the template contains @sc{gnats} fields. Each field is -either automatically completed with valid information (such as your -@samp{>Submitter-Id:}) or contains a one-line instruction specifying the -information that field requires in order to be correct. For example, -the @samp{>Confidential:} field expects a value of @samp{yes} or -@samp{no}, and the answer must fit on one line; similarly, the -@samp{>Synopsis:} field expects a short synopsis of the problem, which -must also fit on one line. Fill out the fields as completely as -possible. @xref{Helpful hints,,Helpful hints}, for suggestions as to -what kinds of information to include. - -In this example, words in @emph{italics} are filled in with -pre-configured information: - -@cindex @code{send-pr} fields -@smallexample -@group ->Submitter-Id: @emph{your submitter-id} ->Originator: @emph{your name here} ->Organization: - @emph{your organization} ->Confidential:<[ yes | no ] (one line)> ->Synopsis: ->Severity: <[non-critical | serious | critical](one line)> ->Priority: <[ low | medium | high ] (one line)> ->Category: ->Class: <[sw-bug | doc-bug | change-request | support]> ->Release: ->Environment: - - ->Description: - ->How-To-Repeat: - ->Fix: - -@end group -@end smallexample - -@cindex @code{Submitter-Id} field -@cindex @code{>Submitter-Id:} -When you finish editing the Problem Report, @code{send-pr} mails it to -the address named in the @samp{To:} field in the mail header. -@code{send-pr} checks that the complete form contains a valid -@samp{>Category:}. - -@ifset SENDPR -Your copy of @code{send-pr} should have already been customized on -installation to reflect your @samp{>Submitter-Id:}. (@xref{Installing -send-pr, , Installing @code{send-pr} on your system}.) If you don't -know your @samp{>Submitter-Id:}, you can request it using -@w{@samp{send-pr --request-id}}. If your organization is not affiliated -with the site you send Problem Reports to, a good generic -@samp{>Submitter-Id:} to use is @samp{net}. @emph{NOTE:} If you are using -send-pr to send problem reports to the FreeBSD Project, this version of -send-pr already has a customer ID in it and you do not need to request a -new one. -@end ifset - -@cindex bad Problem Reports -@cindex errors -@cindex invalid Problem Reports -If your PR has an invalid value in one of the @sc{Enumerated} fields -(@pxref{Fields,,Problem Report format}), @code{send-pr} places the PR in -a temporary file named @samp{/tmp/pbad@var{nnnn}} on your machine. -@var{nnnn} is the process identification number given to your current -@code{send-pr} session. If you are running @code{send-pr} from the -shell, you are prompted as to whether or not you wish to try editing the -same Problem Report again. If you are running @code{send-pr} from -Emacs, the Problem Report is placed in the buffer -@w{@samp{*send-pr-error*}}; you can edit this file and then submit it -with - -@smallexample -M-x gnats-submit-pr -@end smallexample - -@cindex subsequent mail -@cindex other mail -@cindex appending PRs -@cindex saving related mail -@cindex related mail -Any further mail concerning this Problem Report should be carbon-copied -to the @sc{gnats} mailing address as well, with the category and -identification number in the @samp{Subject:} line of the message. - -@smallexample -Subject: Re: PR @var{category}/@var{gnats-id}: @var{original message subject} -@end smallexample - -@noindent -Messages which arrive with @samp{Subject:} lines of this form are -automatically appended to the Problem Report in the @samp{>Audit-Trail:} -field in the order received. - -@c --------------------------------------------------------------- -@node send-pr in Emacs -@section Using @code{send-pr} from within Emacs -@cindex using @code{send-pr} from within Emacs -@cindex @code{send-pr} within Emacs -@cindex invoking @code{send-pr} from Emacs -@cindex interactive interface - -You can use an interactive @code{send-pr} interface from within @sc{gnu} -Emacs to fill out your Problem Report. We recommend that you -familiarize yourself with Emacs before using this feature -(@pxref{Introduction,,Introduction,emacs,GNU Emacs}). - -Call @code{send-pr} with @w{@samp{M-x send-pr}}.@footnote{If typing -@w{@samp{M-x send-pr}} doesn't work, see your system administrator for -help loading @code{send-pr} into Emacs.} @code{send-pr} responds with a -Problem Report template preconfigured for the Support Site from which -you received @code{send-pr}. (If you use @code{send-pr} locally, the -default Support Site is probably your local site.) - -You may also submit problem reports to different Support Sites from the -default site. To use this feature, invoke @code{send-pr} with - -@smallexample -C-u M-x send-pr -@end smallexample - -@code{send-pr} prompts you for the name of a @var{site}. @var{site} is -an alias on your local machine which points to an alternate Support -Site. - -@cindex Emacs -@code{send-pr} displays the template and prompts you in the minibuffer -with the line: -@smallexample ->Category: other -@end smallexample - -@noindent -Delete the default value @samp{other} @emph{in the minibuffer} and -replace it with the keyword corresponding to your problem (the list of -valid categories is in the topmost section of the PR template). For -example, if the problem you wish to report has to do with the @sc{gnu} C -compiler, and your support organization accepts bugs submitted for this -program under the category @samp{gcc}, delete @samp{other} and then type -@w{@samp{gcc[@key{RET}]}}. @code{send-pr} replaces the line - -@smallexample ->Category: -@end smallexample - -@noindent -in the template with - -@smallexample ->Category: gcc -@end smallexample - -@noindent -and moves on to another field. - -@cindex completion in Emacs -@cindex name completion in Emacs -@w{@code{send-pr}} provides name completion in the minibuffer. For -instance, you can also type @w{@samp{gc[@key{TAB}]}}, and @code{send-pr} -attempts to complete the entry for you. Typing @w{@samp{g[@key{TAB}]}} -may not have the same effect if several possible entries begin with -@samp{g}. In that case @code{send-pr} cannot complete the entry because -it cannot determine whether you mean @samp{gcc} or, for example, -@samp{gdb}, if both of those are possible categories. -@w{@code{send-pr}} continues to prompt you for a valid entry until you -enter one. - -@w{@code{send-pr}} prompts you interactively to enter each field for -which there is a range of specific choices. If you attempt to enter a -value which is not in the range of acceptable entries, @code{send-pr} -responds with @w{@samp{[No match]}} and allows you to change the entry -until it contains an acceptable value. This avoids unusable information -(at least in these fields) and also avoids typographical errors which -could cause problems later. - -@code{send-pr} prompts you for the following fields: - -@c FIXME - should these go before the discussion on completion? -@example -@group ->Category: ->Confidential: (@emph{default}: no) ->Severity: (@emph{default}: serious) ->Priority: (@emph{default}: medium) ->Class: (@emph{default}: sw-bug) ->Release: ->Synopsis: (@emph{this value is copied to @code{Subject:}}) -@end group -@end example - -@noindent -After you complete these fields, @w{@code{send-pr}} places the cursor in -the @samp{>Description:} field and displays the message - -@smallexample -To send the problem report use: C-c C-c -@end smallexample - -@noindent -in the minibuffer. At this point, edit the file in the main buffer to -reflect your specific problem, putting relevant information in the -proper fields. -@ifset SENDPR -@xref{An Example}, for a sample Problem Report. -@end ifset - -@w{@samp{send-pr}} provides a few key bindings to make moving -around in a template buffer more simple: - -@table @code -@item C-c C-f -@itemx M-x change-field -Changes the field under the cursor. @code{edit-pr} prompts you for a -new value. - -@item M-C-b -@itemx M-x gnats-backward-field -Moves the cursor to the beginning of the value of the current field. - -@item M-C-f -@itemx M-x gnats-forward-field -Moves the cursor to the end of the value of the current field. - -@item M-p -@itemx M-x gnats-previous-field -Moves the cursor back one field to the beginning of the value of the -previous field. - -@item M-n -@itemx M-x gnats-next-field -Moves the cursor forward one field to the beginning of the value of the -next field. -@end table - -@code{send-pr} takes over again when you type @samp{C-c C-c} to send the -message. @code{send-pr} reports any errors in a separate buffer, which -remains in existence until you send the PR properly (or, of course, -until you explicitly kill the buffer). - -For detailed instructions on using Emacs, see -@ref{Introduction,,,emacs,GNU Emacs}. - -@node send-pr from the shell -@section Invoking @code{send-pr} from the shell -@cindex command line options -@cindex invoking @code{send-pr} from the shell -@cindex shell invocation - -@c FIXME! Add [ -S ] right after [ -L ]... -@smallexample -send-pr [ @var{site} ] - [ -f @var{problem-report} | --file @var{problem-report} ] - [ -t @var{mail-address} | --to @var{mail-address} ] - [ --request-id ] - [ -L | --list ] [ -P | --print ] - [ -V | --version] [ -h | --help ] -@end smallexample - -@var{site} is an alias on your local machine which points to an address -used by a Support Site. If this argument is not present, the default -@var{site} is usually the site which you received @code{send-pr} from, -or your local site if you use @sc{gnats} locally. -@ifset SENDPR -(@xref{default site,,Setting a default @var{site}}.) -@end ifset - -Invoking @code{send-pr} with no options calls the editor named in your -environment variable @code{EDITOR} on a default PR template. If the -environment variable @code{PR_FORM} is set, its value is used as a file -name which contains a valid template. If @code{PR_FORM} points to a -missing or unreadable file, or if the file is empty, @code{send-pr} -generates an error message and opens the editor on a default template. - -@table @code -@item -f @var{problem-report} -@itemx --file @var{problem-report} -Specifies a file, @var{problem-report}, where a completed Problem Report -already exists. @code{send-pr} sends the contents of the file without -invoking an editor. If @var{problem-report} is @samp{-}, -@w{@code{send-pr}} reads from standard input. - -@item -t @var{mail-address} -@itemx --to @var{mail-address} -Sends the PR to @var{mail-address}. The default is preset when -@code{send-pr} is configured. @emph{This option is not recommended}; -instead, use the argument @var{site} on the command line. - -@item -c @var{mail-address} -@itemx --cc @var{mail-address} -Places @var{mail-address} in the @code{Cc:} header field of the message -to be sent. - -@item --request-id -Sends a request for a @code{>Submitter-Id:} to the Support Site. - -@cindex listing valid categories -@item -L -@itemx --list -Prints the list of valid @code{>Category:} values on standard output. -No mail is sent. - -@item -s @var{severity} -@itemx --severity @var{severity} -@cindex @code{send-pr} fields -Sets the initial value of the @code{>Severity:} field to @var{severity}. - -@ignore -@item -S -@itemx --sites -Displays a list of valid @var{site} values on standard output. No mail -is sent. -@end ignore - -@item -P -@itemx --print -Displays the PR template. If the variable @code{PR_FORM} is set in your -environment, the file it specifies is printed. If @code{PR_FORM} is not -set, @code{send-pr} prints the standard blank form. If the file -specified by @code{PR_FORM} doesn't exist, @code{send-pr} displays an -error message. No mail is sent. - -@item -V -@itemx --version -Displays the @code{send-pr} version number and a usage summary. No mail -is sent. - -@item -h -@itemx --help -Displays a usage summary for @code{send-pr}. No mail is sent. -@end table - -@c ------------------------------------------------------------------------- -@node Submitting via e-mail -@section Submitting a Problem Report via direct e-mail -@cindex Direct e-mail -@cindex Submitting a PR via e-mail -In addition to using @code{send-pr}, there is another way to submit a problem -report. You can simply send an e-mail message to the support site. - -To do this, look at the address in the @samp{To:} field of the @code{send-pr} -template. When you send unformatted e-mail to this address, @sc{gnats} -processes the message as a new problem report, filling in as many fields from -defaults as it can: - -@table @code -@item Synopsis -The @samp{>Synopsis} field is filled in by the @samp{Subject:} header. - -@item Submitter ID -@sc{gnats} will try to derive the @samp{>Submitter} field from the address -in the @samp{From:} header. - -@item Description -All of the text in the body of the e-mail message is put into the -@samp{>Description} field. Each line of the text is indented by one space, -indicating that it is "quoted text" from the sender. -@end table - -Other fields, such as category, version, severity, etc. are set to default -values (if the @sc{gnats} administrator has set them). - -@c -------------------------------------------------------------------------- -@node Helpful hints -@section Helpful hints -@cindex helpful hints -@cindex Using and Porting @sc{gnu} CC -@cindex effective problem reporting -@cindex kinds of helpful information -@cindex information to submit -@cindex Report all the facts! - -There is no orthodox standard for submitting effective bug reports, -though you might do well to consult the section on submitting bugs for -@sc{gnu} @code{gcc} in @ref{Bugs, , Reporting Bugs, gcc, Using and -Porting GNU CC}, by Richard Stallman. This section contains -instructions on what kinds of information to include and what kinds of -mistakes to avoid. - -In general, common sense (assuming such an animal exists) dictates the -kind of information that would be most helpful in tracking down and -resolving problems in software. -@itemize @bullet -@item -Include anything @emph{you} would want to know if you were looking at -the report from the other end. There's no need to include every minute -detail about your environment, although anything that might be different -from someone else's environment should be included (your path, for -instance). - -@item -Narratives are often useful, given a certain degree of restraint. If a -person responsible for a bug can see that A was executed, and then B and -then C, knowing that sequence of events might trigger the realization of -an intermediate step that was missing, or an extra step that might have -changed the environment enough to cause a visible problem. Again, -restraint is always in order (``I set the build running, went to get a -cup of coffee (Columbian, cream but no sugar), talked to Sheila on the -phone, and then THIS happened@dots{}'') but be sure to include anything -relevant. - -@item -Richard Stallman writes, ``The fundamental principle of reporting bugs -usefully is this: @strong{report all the facts}. If you are not sure -whether to state a fact or leave it out, state it!'' This holds true -across all problem reporting systems, for computer software or social -injustice or motorcycle maintenance. It is especially important in the -software field due to the major differences seemingly insignificant -changes can make (a changed variable, a missing semicolon, etc.). - -@item -Submit only @emph{one} problem with each Problem Report. If you have -multiple problems, use multiple PRs. This aids in tracking each problem -and also in analyzing the problems associated with a given program. - -@item -It never hurts to do a little research to find out if the bug you've -found has already been reported. Most software releases contain lists -of known bugs in the Release Notes which come with the software; see -your system administrator if you don't have a copy of these. - -@item -The more closely a PR adheres to the standard format, the less -interaction is required by a database administrator to route the -information to the proper place. Keep in mind that anything that -requires human interaction also requires time that might be better spent -in actually fixing the problem. It is therefore in everyone's best -interest that the information contained in a PR be as correct as -possible (in both format and content) at the time of submission. -@end itemize diff --git a/gnu/usr.bin/send-pr/doc/send-pr.texi b/gnu/usr.bin/send-pr/doc/send-pr.texi deleted file mode 100644 index 1abb296..0000000 --- a/gnu/usr.bin/send-pr/doc/send-pr.texi +++ /dev/null @@ -1,658 +0,0 @@ -@c $FreeBSD$ - -\input texinfo @c -*-texinfo-*- -@setfilename send-pr.info -@settitle Reporting Problems Using send-pr - -@setchapternewpage odd - -@include version.texi -@set SENDPR - -@ifinfo -@format -START-INFO-DIR-ENTRY -* send-pr: (send-pr). Reporting problems--using send-pr -END-INFO-DIR-ENTRY -@end format -@end ifinfo - -@ifinfo -Copyright @copyright{} 1993, 1994, 1995 Free Software Foundation, Inc. - -Permission is granted to make and distribute verbatim copies of -this manual provided the copyright notice and this permission notice -are preserved on all copies. - -@ignore -Permission is granted to process this file through TeX and print the -results, provided the printed document carries a copying permission -notice identical to this one except for the removal of this paragraph -(this paragraph not being relevant to the printed manual). - -@end ignore - -Permission is granted to copy and distribute modified versions of this -manual under the conditions for verbatim copying, provided also that -the entire resulting derived work is distributed under the terms of a -permission notice identical to this one. - -Permission is granted to copy and distribute translations of this manual -into another language, under the above conditions for modified versions. -@end ifinfo - -@titlepage -@finalout -@title Reporting Problems -@subtitle Using @code{send-pr}, version @value{VERSION} -@subtitle October 1993 -@author Jeffrey M. Osier -@author Cygnus Support -@page - -@vskip 0pt plus 1filll - -Copyright @copyright{} 1993, 1994, 1995 Free Software Foundation, Inc. - -Permission is granted to make and distribute verbatim copies of -this manual provided the copyright notice and this permission notice -are preserved on all copies. - -Permission is granted to copy and distribute modified versions of this -manual under the conditions for verbatim copying, provided also that -the entire resulting derived work is distributed under the terms of a -permission notice identical to this one. - -Permission is granted to copy and distribute translations of this manual -into another language, under the above conditions for modified versions. - -@end titlepage - -@c --------------------------------------------------------------- -@node Top -@top Overview -@cindex foreword to @code{send-pr} -@cindex overview to @code{send-pr} -@cindex introduction to @code{send-pr} - -This manual documents @code{send-pr}, -@ifinfo -version @value{VERSION}, -@end ifinfo -which uses electronic mail to submit support questions and problem -reports to a central Support Site. No body of work is perfect, and -support organizations understand this; @code{send-pr} is designed to -allow users who have problems to submit reports of these problems to -sites responsible for supporting the products in question, in a defined -form which can be read by an electronically managed database. - -@cindex GNATS -@code{send-pr} is part of a suite of programs known collectively as -@sc{gnats}, the @sc{gnu} Problem Report Management System. @sc{gnats} -consists of several programs which, used in concert, formulate and -partially administer a database of @dfn{Problem Reports}, or @dfn{PRs}, -at a central Support Site. A PR goes through several states in its -lifetime; @sc{gnats} tracks the PR and all information associated with it -through each state and finally acts as an archive for PRs which have -been @dfn{closed}. - -Because @code{send-pr} exists as a shell (@file{/bin/sh}) script and as -an Elisp file for use with @sc{gnu} Emacs, it can be used from any -machine on your network which can run a shell script and/or Emacs. - -In general, you can use any editor and mailer to submit valid Problem -Reports, as long as the format required by @sc{gnats} is preserved. -@code{send-pr} automates the process, however, and ensures that certain -fields necessary for automatic processing are present. @code{send-pr} -is strongly recommended for all initial problem-oriented correspondence -with your Support Site. The organization you submit Problem Reports to -supplies an address to which further information can be sent; the person -responsible for the category of the problem you report contacts you -directly. - -@menu -* send-pr in detail:: Details about send-pr and GNATS -* Invoking send-pr:: Editing and sending PRs -* An Example:: A working example -* Installing send-pr:: Installing send-pr on your system -* Index:: -@end menu - -@node send-pr in detail -@chapter Details about send-pr and GNATS - -@cindex details about @code{send-pr} -@cindex Problem Reports -A @dfn{Problem Report} is a message that describes a problem you are -having with a body of work. @code{send-pr} organizes this message into -a form which can be understood and automatically processed by @sc{gnats}, -the @sc{gnu} Problem Report Management System. A Problem Report is -organized into @dfn{fields} which contain data describing you, your -organization, and the problem you are announcing (@pxref{Fields,,Problem -Report format}). Problem Reports go through several defined states in -their lifetimes, from @dfn{open} to @dfn{closed} (@pxref{States,,States -of Problem Reports}). - -@menu -* States:: States of Problem Reports -* Fields:: Problem Report format -@end menu - -@include states.texi - -@include fields.texi - -@node Invoking send-pr -@chapter Editing and sending PRs -@cindex editing and sending PRs -@cindex sending PRs -@cindex invoking send-pr -@cindex using send-pr -@cindex generating new PRs - -@include s-usage.texi - -@node An Example -@chapter An Example -@cindex an example -@cindex example PR -@cindex Cygnus Solutions -@cindex @sc{gnu} software support -Cygnus Solutions in Sunnyvale, CA, uses @sc{gnats} and @code{send-pr} -extensively for their support activities. As a support company, Cygnus -finds problem tracking to be a crucial part of everyday business. -Cygnus supports the @sc{gnu} compiling tools (including @sc{gnats} and -@code{send-pr}) over several many platforms - -With each shipment of the Cygnus Solutions Developer's Kit, customers -receive the latest version of @code{send-pr}, which contains an -up-to-date listing of valid categories (values for the @code{>Category:} -field). Using these tools, Cygnus' customers can communicate their -problems to Cygnus effectively and receive automatic confirmation of -receipt as well as notification of changes in the status of their -reported problems. Much of Cygnus' support mechanism relies on -electronic mail. - -As an example, let's pretend we're a customer of Cygnus Solutions, and -that we're having a problem compiling some of our software using the -@sc{gnu} C compiler, which Cygnus supports. - -Assume that we're getting an error in our @code{bifrabulator} program -wherein the @samp{prestidigitation} routines don't match with the -@samp{whatsitsname}. We've made sure we're following the rules of the -program and checked the Release Notes from Cygnus and found that the bug -isn't already known. In other words, we're pretty sure we've found a -bug. - -@cindex Imaginary Software, Ltd. -Our first step is to call @code{send-pr}. It really doesn't matter -whether we use @code{send-pr} from the shell or from within Emacs. -Indeed, if we use Emacs as a primary editor, calling @code{send-pr} from -the shell is likely to start @code{send-pr} in an Emacs buffer anyway. -So, since our company, @emph{Imaginary Software, Ltd.}, uses @sc{gnu} -software extensively, we're pretty familiar with Emacs, so from within -Emacs we type -@smallexample -M-x send-pr -@end smallexample -@noindent -and we're greeted with the following screen: - -@cindex default PR template -@cindex example of a default template -@cindex blank PR template -@cindex @code{bifrabulator} -@cartouche -@smallexample -SEND-PR: -*- text -*- -SEND-PR: Lines starting with `SEND-PR' will be removed -SEND-PR: automatically as well as all comments (the text -SEND-PR: below enclosed in `<' and `>'). -SEND-PR: Please consult the manual if you are not sure -SEND-PR: how to fill out a problem report. -SEND-PR: -SEND-PR: Choose from the following categories: -SEND-PR: -SEND-PR: bfd binutils bison -SEND-PR: byacc clib config cvs diff -SEND-PR: doc emacs flex g++ gas -SEND-PR: gcc gdb glob gprof grep -SEND-PR: info ispell kerberos ld libg++ -SEND-PR: libiberty make makeinfo mas newlib -SEND-PR: other patch rcs readline send-pr -SEND-PR: test texindex texinfo texinfo.tex -SEND-PR: bifrabulator <---@emph{note: this one is fake} -SEND-PR: -To: cygnus-bugs@@cygnus.com -Subject: -From: jeffrey@@imaginary.com -Reply-To: jeffrey@@imaginary.com -X-send-pr-version: send-pr @value{VERSION} - ->Submitter-Id: imaginary ->Originator: Jeffrey Osier ->Organization: -Imaginary Software, Ltd. ->Confidential: <[ yes | no ] (one line)> ->Synopsis: ->Severity: <[ non-critical | serious | critical ] (one line)> ->Priority: <[ low | medium | high ] (one line)> ->Category: ->Class: <[sw-bug|doc-bug|change-request|support](oneline)> ->Release: ->Environment: - -System: SunOS imaginary.com 4.1.1 1 sun4 -Architecture: sun4 - ->Description: - ->How-To-Repeat: - ->Fix: -@iftex -@hrule -@end iftex ------Emacs: *send-pr* (send-pr Fill)----All------------------ -@iftex -@hrule -@end iftex ->Category: other[] -@end smallexample -@end cartouche -@page -We know from past experience that we need to set certain information into -each field, so we compile all the information we know about our problem. -We have some sample code which we know should work, even though it -doesn't, so we'll include that. Below is the completed PR; we send this -using @kbd{C-c C-c}. (The comments have been truncated). - -@cindex completed Problem Report -@cindex example of a completed PR -@cartouche -@smallexample -SEND-PR: Lines starting with `SEND-PR' will be removed -SEND-PR: automatically as well as all comments (the text -SEND-PR: @dots{} -SEND-PR: -To: cygnus-bugs@@cygnus.com -Subject: bifrabulator routines don't match -From: jeffrey@@imaginary.com -Reply-To: jeffrey@@imaginary.com -X-send-pr-version: send-pr @value{VERSION} - ->Submitter-Id: imaginary ->Originator: Jeffrey Osier ->Organization: -Imaginary Software, Ltd. ->Confidential: no ->Synopsis: bifrabulator routines don't match ->Severity: serious ->Priority: medium ->Category: bifrabulator ->Class: sw-bug ->Release: progressive-930101 ->Environment: -System: SunOS imaginary.com 4.1.1 1 sun4 -Architecture: sun4 (SPARC) - ->Description: - the following code I fed into the bifrabulator came back - with a strange error. apparently, the prestidigitation - routine doesn't match with the whatsitsname in all cases. - ->How-To-Repeat: - call the bifrabulator on the following code. - @emph{code sample@dots{}} - ->Fix: -@iftex -@hrule -@end iftex ------Emacs: *send-pr* (send-pr Fill)----All------------------ -@iftex -@hrule -@end iftex -To send the problem report use: C-c C-c -@end smallexample -@end cartouche - -We type @kbd{C-c C-c}, and off it goes. Now, we depend on Cygnus -Support to figure out the answer to our problem. - -Soon afterward, we get the following message from Cygnus: - -@smallexample -@group -From: gnats (GNATS management) -Sender: gnats-admin -Reply-To: hacker@@cygnus.com -To: jeffrey@@imaginary.com -Subject: Re: bifrabulator/1425: routines don't match - -Thank you very much for your problem report. -It has the internal identification: g++/1425. -The individual assigned to look at your bug is: hacker -(F.B. Hacker) - -Category: bifrabulator -Responsible: hacker -Synopsis: bifrabulator routines don't match -Arrival-Date: Sat Feb 30 03:12:55 1993 -@end group -@end smallexample - -@noindent -This is our receipt that the bug has been accepted and forwarded to the -responsible party. - -@noindent -A while later, we get the analysis: - -@smallexample -@group -To: jeffrey@@imaginary.com -From: hacker@@cygnus.com -Subject: Re: bifrabulator/1425: routines don't match -Reply-To: hacker@@cygnus.com - -Got your message, Jeff. It seems that the bifrabulator was -confusing the prestidigitation routines with the realitychecker -when lexically parsing the whatsitsname. - -I'm working on robustisizing the bifrabulator now. - -How about lunch next week? --- -F.B. Hacker -Cygnus Solutions, Sunnyvale, CA 408 542 9600 -#include -@end group -@end smallexample - -@noindent -About the same time, we get another message from Cygnus. - -@cindex state change example -@cindex example of a state change -@smallexample -@group -From: hacker@@cygnus.com -To: jeffrey@@imaginary.com -Subject: Re: bifrabulator/1425: doesn't match prestidig -Reply-To: hacker@@cygnus.com - - - `F.B. Hacker' changed the state to `analyzed'. - -State-Changed-From-To: open-analyzed -State-Changed-By: hacker -State-Changed-When: Fri Feb 31 1993 08:59:16 1993 -State-Changed-Why: - figured out the problem, working on a patch this afternoon --- -F.B. Hacker -Cygnus Solutions, Sunnyvale, CA 408 542 9600 -#include -@end group -@end smallexample - -@noindent -The bug has now been analyzed, and Cygnus is working on a solution. - -@noindent -Sometime later, we get more mail from F.B.: - -@smallexample -@group -To: jeffrey@@imaginary.com -From: hacker@@cygnus.com -Subject: Re: bifrabulator/1425: routines don't match -Reply-To: hacker@@cygnus.com - -There's a patch now that you can ftp over and check out. - -Hey, that joke you sent me was great! The one about the -strings walking into a bar... my boss laughed for an hour! --- -F.B. Hacker -Cygnus Solutions, Sunnyvale, CA 408 542 9600 -#include -@end group -@end smallexample -@sp 2 -@smallexample -@group -From: hacker@@cygnus.com -To: jeffrey@@imaginary.com -Subject: Re: bifrabulator/1425: doesn't match prestidig -Reply-To: hacker@@cygnus.com - - - `F.B. Hacker' changed the state to `feedback'. - -State-Changed-From-To: analyzed-feedback -State-Changed-By: hacker -State-Changed-When: Fri Feb 31 1993 23:43:16 1993 -State-Changed-Why: - got the patch finished, notified Jeff at Imaginary Software --- -F.B. Hacker -Cygnus Solutions, Sunnyvale, CA 408 542 9600 -#include -@end group -@end smallexample - -@noindent -The bug has gone into @dfn{feedback} status now, until we get the patch, -install it and test it. When everything tests well, we can mail F.B. -back and tell him the bug's been fixed, and he can change the state of -the PR from @dfn{feedback} to @dfn{closed}. - -Following is a list of valid @samp{>Category:} entries that are -supported by Cygnus. - -@menu -* Valid Categories:: -@end menu - -@c FIXME - is this list up to date? -@include categ.texi - -@node Installing send-pr -@appendix Installing @code{send-pr} on your system -@cindex installation - -If you receive @code{send-pr} as part of a larger software distribution, -it probably gets installed when the full distribution is installed. If -you are using @sc{gnats} at your site as well, you must decide where -@code{send-pr} sends Problem Reports by default; see @ref{default site,, -Setting a default @var{site}}. - -@menu -* installation:: installing `send-pr' by itself -* default site:: setting a default site -@end menu - -@node installation -@section Installing @code{send-pr} by itself -@cindex installation procedure - -Install @code{send-pr} by following these steps (you may need -@code{root} access in order to change the @file{aliases} file and to -install @code{send-pr}): - -@itemize @bullet -@item -Unpack the distribution into a directory which we refer to as -@var{srcdir}. - -@item -Edit the file @file{Makefile} to reflect local conventions. -Specifically, you should edit the variable @samp{prefix} to alter the -installation location. The default is @file{/usr/local}. All files are -installed under @samp{prefix} (see below). - -@item @emph{Run} -@smallexample -make all install [ info ] [ install-info ] [ clean ] -@end smallexample - -@noindent -The targets mean the following: - -@table @code -@item all -Builds @code{send-pr} and @code{install-sid} - -@item install -Installs the following: - -@table @code -@item install-sid -@itemx send-pr -into @file{@var{prefix}/bin} - -@item send-pr.1 -into @file{@var{prefix}/man/man1} - -@item @var{site} -the list of valid @var{categories} for the Support Site from which you -received @code{send-pr}, installed as -@w{@file{@var{prefix}/share/gnats/@var{site}}} - -@item send-pr.el -into @w{@file{@var{prefix}/share/emacs/lisp}}@footnote{If your main Emacs -lisp repository is in a different directory from this, substitute that -directory for @w{@file{@var{prefix}/share/emacs/lisp}}.} -@end table - -@item info (@emph{optional}) -Builds @file{send-pr.info} from @file{send-pr.texi}@* -@c FIXME - is this still true? -(@file{send-pr.info} is included with this distribution) - -@item install-info (@emph{optional}) -Installs @file{send-pr.info} into @w{@file{@var{prefix}/info}} - -@item clean (@emph{optional}) -Removes all intermediary build files that can be rebuilt from source -code -@end table - -@item -Run - -@smallexample -install-sid @var{your-sid} -@end smallexample - -@noindent -where @var{your-sid} is the identification code you received with -@w{@code{send-pr}}. @code{send-pr} automatically inserts this value -into the template field @samp{>Submitter-Id:}. If you've downloaded -@code{send-pr} from the Net, use @samp{net} for this value. - -@item -Place the following line in -@w{@file{@var{prefix}/share/emacs/lisp/default.el}}, or instruct your -users to place the following line in their @file{.emacs} files: - -@smallexample -(autoload 'send-pr "send-pr" "Submit a Problem Report." t) -@end smallexample - -@item -Create a mail alias for the Support Site from which you received -@code{send-pr}, and for every site with which you wish to use -@code{send-pr} to communicate. Each alias must have a suffix of -@samp{-gnats}. The Support Site(s) will provide the correct addresses -where these aliases should point. For instance, edit your mail aliases -file to contain something like: - -@smallexample -# support sites; for use with send-pr -cygnus-gnats: bugs@@cygnus.com # Cygnus Solutions -bumblebee-gnats: bumblebugs@@bumblebee.com # Bumblebee Inc. -mycompany-gnats: bugs@@my.company.com (@emph{if you use @sc{gnats} locally}) -@end smallexample - -@code{send-pr} automatically searches for these aliases when you type - -@smallexample -send-pr cygnus -send-pr bumblebee -send-pr @var{site}@dots{} -@end smallexample - -@noindent -@code{send-pr} also uses @var{site} to determine the categories of -problems accepted by the site in question by looking in - -@smallexample -@var{prefix}/share/gnats/@var{site} -@end smallexample - -@end itemize - -@node default site -@section Setting a default @var{site} -@cindex default @var{site} -@cindex setting a default @var{site} - -@code{send-pr} is capable of sending Problem Reports to any number of -Support Sites, using mail aliases which have @samp{-gnats} appended them. -@code{send-pr} automatically appends the suffix, so that when you type - -@smallexample -send-pr @var{site} -@end smallexample - -@noindent -the Problem Report goes to the address noted in the @file{aliases} file -as @w{@samp{@var{site}-gnats}}. You can do this in the Emacs version of -@code{send-pr} by invoking the program with - -@smallexample -C-u M-x send-pr -@end smallexample - -@noindent -You are prompted for @var{site}. - -@var{site} is also used to error-check the @samp{>Category:} field, as a -precaution against sending mistaken information (and against sending -information to the wrong site). - -You may also simply type - -@smallexample -send-pr -@end smallexample - -@noindent -from the shell (or @w{@samp{M-x send-pr}} in Emacs), and the Problem -Report you generate will be sent to the @var{site}, which is usually the -site from which you received your distribution of @w{@code{send-pr}}. -If you use @sc{gnats} at your own organization, the default is usually -your local address for reporting problems. - -To change this, simply edit the file @file{Makefile} before installing -and change the line - -@smallexample -GNATS_SITE = @var{site} -@end smallexample - -@noindent -to reflect the site where you wish to send PRs by default. - -@c --------------------------------------------------------------- -@node Index -@unnumbered Index - -@printindex cp - -@c --------------------------------------------------------------- -@contents -@bye diff --git a/gnu/usr.bin/send-pr/doc/states.texi b/gnu/usr.bin/send-pr/doc/states.texi deleted file mode 100644 index f38405c..0000000 --- a/gnu/usr.bin/send-pr/doc/states.texi +++ /dev/null @@ -1,58 +0,0 @@ -@c $FreeBSD$ - -@node States -@section States of Problem Reports - -@cindex life-cycle of a Problem Report -@cindex states of Problem Reports -@cindex Problem Report states -@cindex automatic notification - -Each PR goes through a defined series of states between origination and -closure. The originator of a PR receives notification automatically of -any state changes. - -Unless your site has customized states (see @pxref{states -file,,,gnats}), @sc{gnats} uses these states: - -@table @dfn -@cindex @emph{open} state -@cindex initial state (@dfn{open}) -@cindex state---@dfn{open} -@item open -The initial state of a Problem Report. This means the PR has been filed -and the responsible person(s) notified. - -@cindex @emph{analyzed} state -@cindex state---@dfn{analyzed} -@item analyzed -The responsible person has analyzed the problem. The analysis should -contain a preliminary evaluation of the problem and an estimate of the -amount of time and resources necessary to solve the problem. It should -also suggest possible workarounds. - -@cindex @emph{feedback} state -@cindex state---@dfn{feedback} -@item feedback -The problem has been solved, and the originator has been given a patch -or other fix. The PR remains in this state until the originator -acknowledges that the solution works. - -@cindex @emph{closed} state -@cindex state---@dfn{closed} -@cindex final state (@dfn{closed}) -@item closed -A Problem Report is closed (``the bug stops here'') only when any -changes have been integrated, documented, and tested, and the submitter -has confirmed the solution. - -@cindex @emph{suspended} state -@cindex state---@dfn{suspended} -@item suspended -Work on the problem has been postponed. This happens if a timely -solution is not possible or is not cost-effective at the present time. -The PR continues to exist, though a solution is not being actively -sought. If the problem cannot be solved at all, it should be closed -rather than suspended. -@end table - diff --git a/gnu/usr.bin/send-pr/doc/version.texi b/gnu/usr.bin/send-pr/doc/version.texi deleted file mode 100644 index bffedc2..0000000 --- a/gnu/usr.bin/send-pr/doc/version.texi +++ /dev/null @@ -1,3 +0,0 @@ -@c $FreeBSD$ - -@set VERSION 3.113 diff --git a/gnu/usr.bin/send-pr/install-sid.sh b/gnu/usr.bin/send-pr/install-sid.sh deleted file mode 100755 index f7f24e5..0000000 --- a/gnu/usr.bin/send-pr/install-sid.sh +++ /dev/null @@ -1,82 +0,0 @@ -#!/bin/sh -# Drop in the SUBMITTER id into a site's installed send-pr script. -# Copyright (C) 1993 Free Software Foundation, Inc. -# Contributed by Brendan Kehoe (brendan@cygnus.com), based on a -# version written by Heinz G. Seidl (hgs@ide.com). -# -# This file is part of GNU GNATS. -# -# GNU GNATS is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2, or (at your option) -# any later version. -# -# GNU GNATS is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with GNU GNATS; see the file COPYING. If not, write to -# the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. - -COMMAND=`echo $0 | sed -e 's,.*/,,g'` -USAGE="Usage: $COMMAND [--install-dir=prefix] [--help] [--version] submitter-id" - -VERSION=3.2 - -BINDIR=@BINDIR@ - -SUBMITTER= -TEMP=/tmp/sp$$ - -if [ $# -eq 0 ]; then - echo "$USAGE" - exit 1 -fi - -while [ $# -gt 0 ]; do - case "$1" in - -install-dir=*|--install-dir=*|--install-di=*|--install-d=*|--install-=*|--install=*|--instal=*|--insta=*|--inst=*|--ins=*|--in=*|--i=*) - I=`echo "$1" | sed 's/-*i[a-z\-]*=//'` - BINDIR=$I/bin ;; - --version) echo $COMMAND version $VERSION ; exit 1 ;; - -*) echo "$USAGE" ; exit 1 ;; - *) SUBMITTER=$1 ;; - esac - shift -done - -path=`echo $0 | sed -e "s;${COMMAND};;"` - -[ -z "$path" ] && path=. - -if [ -f $BINDIR/send-pr ]; then - SPPATH=$BINDIR/send-pr -elif [ -f $path/send-pr ]; then - SPPATH=$path/send-pr -else - echo "$COMMAND: cannot find \`$BINDIR/send-pr' or \`$path/send-pr'" >&2 - exit 1 -fi - -trap 'rm -f $TEMP ; exit 0' 0 -trap 'echo "$COM: Aborting ..."; rm -f $TEMP ; exit 1' 1 2 3 13 15 - -sed -e "s/^SUBMITTER=.*/SUBMITTER=${SUBMITTER}/" $SPPATH > $TEMP - -if grep $SUBMITTER $TEMP > /dev/null; then - cp $SPPATH $SPPATH.orig && - rm -f $SPPATH && - cp $TEMP $SPPATH && - chmod a+rx $SPPATH && - rm -f $TEMP $SPPATH.orig || - { echo "$COMMAND: unable to replace send-pr" >&2 ; exit 1; } -else - echo "$COMMAND: something went wrong when sed-ing the submitter into send-pr" >&2 - exit 1 -fi - -echo "$COMMAND: \`$SUBMITTER' is now the default submitter ID for send-pr" - -exit 0 diff --git a/gnu/usr.bin/send-pr/send-pr-el.in b/gnu/usr.bin/send-pr/send-pr-el.in deleted file mode 100644 index 8195ecb..0000000 --- a/gnu/usr.bin/send-pr/send-pr-el.in +++ /dev/null @@ -1,813 +0,0 @@ -;;;; -*-emacs-lisp-*- -;;;;--------------------------------------------------------------------------- -;;;; EMACS interface for send-pr (by Heinz G. Seidl) -;;;; Slightly hacked by Brendan Kehoe (brendan@cygnus.com). -;;;; -;;;; This file is part of the Problem Report Management System (GNATS) -;;;; Copyright 1992, 1993, 1997 Cygnus Support -;;;; -;;;; This program is free software; you can redistribute it and/or -;;;; modify it under the terms of the GNU General Public -;;;; License as published by the Free Software Foundation; either -;;;; version 2 of the License, or (at your option) any later version. -;;;; -;;;; This program is distributed in the hope that it will be useful, -;;;; but WITHOUT ANY WARRANTY; without even the implied warranty of -;;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -;;;; General Public License for more details. -;;;; -;;;; You should have received a copy of the GNU Library General Public -;;;; License along with this program; if not, write to the Free -;;;; Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. -;;;; -;;;;--------------------------------------------------------------------------- -;;;; -;;;; This file contains the EMACS interface to the Problem Report Management -;;;; System (GNATS): -;;;; -;;;; - The `send-pr' command and the `send-pr-mode' for sending -;;;; Problem Reports (PRs). -;;;; -;;;; For more information about how to send a PR see send-pr(1). -;;;; -;;;;--------------------------------------------------------------------------- -;;;; -;;;; Configuration: the symbol `DEFAULT-RELEASE' can be replaced by -;;;; site/release specific strings during the configuration/installation -;;;; process. -;;;; -;;;; Install this file in your EMACS library directory. -;;;; -;;;;--------------------------------------------------------------------------- -;;;; -;;;; $FreeBSD$ - -(provide 'send-pr) - -;;;;--------------------------------------------------------------------------- -;;;; Customization: put the following forms into your default.el file -;;;; (or into your .emacs) -;;;;--------------------------------------------------------------------------- - -;(autoload 'send-pr-mode "send-pr" -; "Major mode for sending problem reports." t) - -;(autoload 'send-pr "send-pr" -; "Command to create and send a problem report." t) - -;;;;--------------------------------------------------------------------------- -;;;; End of Customization Section -;;;;--------------------------------------------------------------------------- - -(autoload 'server-buffer-done "server") -(defvar server-buffer-clients nil) -(defvar mail-self-blind nil) -(defvar mail-default-reply-to nil) - -(defconst send-pr::version "3.113") - -(defvar gnats:root "/home/gnats" - "*The top of the tree containing the GNATS database.") - -;;;;--------------------------------------------------------------------------- -;;;; hooks -;;;;--------------------------------------------------------------------------- - -(defvar text-mode-hook nil) ; we define it here in case it's not defined -(defvar send-pr-mode-hook text-mode-hook "Called when send-pr is invoked.") - -;;;;--------------------------------------------------------------------------- -;;;; Domains and default values for (some of) the Problem Report fields; -;;;; constants and definitions. -;;;;--------------------------------------------------------------------------- - -(defconst gnats::emacs-19p - (not (or (and (boundp 'epoch::version) epoch::version) - (string-lessp emacs-version "19"))) - "Is this emacs v19?") - -;;; This has to be here rather than at the bottom of this file with -;;; the other utility functions because it is used by -;;; gnats::get-config, which is called when send-pr.el is being -;;; loaded (see the "defconst" below), before the whole file has been -;;; loaded. - -(defun gnats::find-safe-default-directory (&optional buffer) -"If the directory referred to by `default-directory' for the current -buffer (or for optional argument BUFFER) does not exist, set it to the home -directory of the current user if that exists, or to `/'. - -Returns the final value of default-directory in the buffer." - (let ((homedir (expand-file-name "~/"))) - (save-excursion - (if buffer (set-buffer buffer)) - (if (not (file-exists-p default-directory)) - (if (file-exists-p homedir) - (setq default-directory homedir) - (setq default-directory "/"))) - default-directory))) - -;;; These may be changed during configuration/installation or by the individual -;;; user in his/her .emacs file. -;;; -(defun gnats::get-config (var) - (let ((shell-file-name "/bin/sh") - (buf (generate-new-buffer " *GNATS config*")) - ret) - (save-excursion - (set-buffer buf) - (shell-command-on-region - (point-min) (point-max) - (concat ". " gnats:root "/gnats-adm/config; echo $" var ) t) - (goto-char (point-min)) - ; We have to use get-buffer, since shell-command-on-region will wipe - ; out the buffer if there's no output from the command. - (if (or (not (get-buffer "*Shell Command Output*")) - (looking-at "^\\.:\\|/bin/sh:\\|\n")) - (setq ret nil) - (setq ret (buffer-substring (point-min) (- (point-max) 1))))) - (if (and ret (string-equal ret "")) (setq ret nil)) - (kill-buffer buf) - ret)) - -;; const because it must match the script's value -(defconst send-pr:datadir (or (gnats::get-config "DATADIR") "@DATADIR@") - "*Where the `gnats' subdirectory containing category lists lives.") - -(defvar send-pr::sites nil - "List of GNATS support sites; computed at runtime.") -(defvar send-pr:default-site - (or (gnats::get-config "GNATS_SITE") "freefall") - "Default site to send bugs to.") -(defvar send-pr:::site send-pr:default-site - "The site to which a problem report is currently being submitted, or NIL -if using the default site (buffer local).") - -(defvar send-pr:::categories nil - "Buffer local list of available categories, derived at runtime from -send-pr:::site and send-pr::category-alist.") -(defvar send-pr::category-alist nil - "Alist of GNATS support sites and the categories supported at each; computed -at runtime.") - -;;; Ideally we would get all the following values from a central database -;;; during runtime instead of having them here in the code. -;;; -(defconst send-pr::fields - (` (("Category" send-pr::set-categories - (, (or (gnats::get-config "DEFAULT_CATEGORY") nil)) enum) - ("Class" (("sw-bug") ("doc-bug") ("change-request") ("update") ("maintainer-update")) - (, (or (gnats::get-config "DEFAULT_CLASS") 0)) enum) - ("Confidential" (("yes") ("no")) - (, (or (gnats::get-config "DEFAULT_CONFIDENTIAL") 1)) enum) - ("Severity" (("non-critical") ("serious") ("critical")) - (, (or (gnats::get-config "DEFAULT_SEVERITY") 1)) enum) - ("Priority" (("low") ("medium") ("high")) - (, (or (gnats::get-config "DEFAULT_PRIORITY") 1)) enum) - ("Release" nil - (, (or (gnats::get-config "DEFAULT_RELEASE") "@DEFAULT_RELEASE@")) - text) - ("Submitter-Id" nil - (, (or (gnats::get-config "DEFAULT_SUBMITTER") "unknown")) text) - ("Synopsis" nil nil text - (lambda (a b c) (gnats::set-mail-field "Subject" c))))) - "AList, keyed on the name of the field, of: -1) The field name. -2) The list of completions. This can be a list, a function to call, or nil. -3) The default value. -4) The type of the field. -5) A sub-function to call when changed.") - -(defvar gnats::fields nil) - -(defmacro gnats::push (i l) - (` (setq (, l) (cons (,@ (list i l)))))) - -(defun send-pr::set-categories (&optional arg) - "Get the list of categories for the current site out of -send-pr::category-alist if there or from send-pr if not. With arg, force -update." - ;; - (let ((entry (assoc send-pr:::site send-pr::category-alist))) - (or (and entry (null arg)) - (let ((oldpr (getenv "GNATS_ROOT")) cats) - (send-pr::set-sites arg) - (setenv "GNATS_ROOT" gnats:root) - (setq cats (gnats::get-value-from-shell - "send-pr" "-CL" send-pr:::site)) - (setenv "GNATS_ROOT" oldpr) - (if entry (setcdr entry cats) - (setq entry (cons send-pr:::site cats)) - (gnats::push entry send-pr::category-alist)))) - (setq send-pr:::categories (cdr entry)))) - -(defun send-pr::set-sites (&optional arg) - "Get the list of sites (by listing the contents of DATADIR/gnats) and assign -it to send-pr::sites. With arg, force update." - (or (and (null arg) send-pr::sites) - (progn - (setq send-pr::sites nil) - (mapcar - (function - (lambda (file) - (or (memq t (mapcar (function (lambda (x) (string= x file))) - '("." ".." "pr-edit" "pr-addr"))) - (not (file-readable-p file)) - (gnats::push (list (file-name-nondirectory file)) - send-pr::sites)))) - (directory-files (format "%s/gnats" send-pr:datadir) t)) - (setq send-pr::sites (reverse send-pr::sites))))) - -(defconst send-pr::pr-buffer-name "*send-pr*" - "Name of the temporary buffer, where the problem report gets composed.") - -(defconst send-pr::err-buffer-name "*send-pr-error*" - "Name of the temporary buffer, where send-pr error messages appear.") - -(defvar send-pr:::err-buffer nil - "The error buffer used by the current PR buffer.") - -(defvar send-pr:::spawn-to-send nil - "Whether or not send-pr-mode should spawn a send-pr process to send the PR.") - -(defconst gnats::indent 17 "Indent for formatting the value.") - -;;;;--------------------------------------------------------------------------- -;;;; `send-pr' - command for creating and sending of problem reports -;;;;--------------------------------------------------------------------------- - -(fset 'send-pr 'send-pr:send-pr) -(defun send-pr:send-pr (&optional site) - "Create a buffer and read in the result of `send-pr -P'. -When finished with editing the problem report use \\[send-pr:submit-pr] -to send the PR with `send-pr -b -f -'." - ;; - (interactive - (if current-prefix-arg - (list (completing-read "Site: " (send-pr::set-sites 'recheck) nil t - send-pr:default-site)))) - (or site (setq site send-pr:default-site)) - (let ((buf (get-buffer send-pr::pr-buffer-name))) - (if (or (not buf) - (progn (switch-to-buffer buf) - (cond ((or (not (buffer-modified-p buf)) - (y-or-n-p "Erase previous problem report? ")) - (erase-buffer) t) - (t nil)))) - (send-pr::start-up site)))) - -(defun send-pr::start-up (site) - (switch-to-buffer (get-buffer-create send-pr::pr-buffer-name)) - (setq default-directory (expand-file-name "~/")) - (auto-save-mode auto-save-default) - (let ((oldpr (getenv "GNATS_ROOT")) - (case-fold-search nil)) - (setenv "GNATS_ROOT" gnats:root) - (send-pr::insert-template site) - (setenv "GNATS_ROOT" oldpr) - (goto-char (point-min)) - (if (looking-at "send-pr:") - (cond ((looking-at "send-pr: .* does not have a categories list") - (setq send-pr::sites nil) - (error "send-pr: the GNATS site %s does not have a categories list" site)) - (t (error (buffer-substring (point-min) (point-max))))) - (save-excursion - ;; Clear cruft inserted by bdamaged .cshrcs - (goto-char 1) - (re-search-forward "^SEND-PR:") - (delete-region 1 (match-beginning 0))))) - (set-buffer-modified-p nil) - (send-pr:send-pr-mode) - (setq send-pr:::site site) - (setq send-pr:::spawn-to-send t) - (send-pr::set-categories) - (if (null send-pr:::categories) - (progn - (and send-pr:::err-buffer (kill-buffer send-pr:::err-buffer)) - (kill-buffer nil) - (message "send-pr: no categories found")) - (or (stringp mail-default-reply-to) - (setq mail-default-reply-to (getenv "REPLYTO"))) - (and mail-default-reply-to - (gnats::set-mail-field "Reply-To" mail-default-reply-to)) - (and mail-self-blind - (gnats::set-mail-field "BCC" (user-login-name))) - (mapcar 'send-pr::maybe-change-field send-pr::fields) - (gnats::position-on-field "Description") - (message (substitute-command-keys - "To send the problem report use: \\[send-pr:submit-pr]")))) - -(defvar send-pr::template-alist nil - "An alist containing the output of send-pr -P for various sites.") - -(defun send-pr::insert-template (site) - (let ((elt (assoc site send-pr::template-alist))) - (if elt - (save-excursion (insert (cdr elt))) - (call-process "send-pr" nil t nil "-P" site) - (save-excursion - (setq send-pr::template-alist - (cons (cons site (buffer-substring (point-min) (point-max))) - send-pr::template-alist)))))) - -(fset 'do-send-pr 'send-pr:submit-pr) ;backward compat -(defun send-pr:submit-pr () - "Pipe the contents of the buffer *send-pr* to `send-pr -f -.' unless this -buffer was loaded with emacsclient, in which case save the buffer and exit." - ;; - (interactive) - (cond - ((and (boundp 'server-buffer-clients) - server-buffer-clients) - (let ((buffer (current-buffer)) - (version-control nil) (buffer-backed-up nil)) - (save-buffer buffer) - (kill-buffer buffer) - (server-buffer-done buffer))) - (send-pr:::spawn-to-send - (if (or (buffer-modified-p) - (not send-pr:::sent) - (y-or-n-p "PR already sent; resend? ")) - (progn - (or (and send-pr:::err-buffer - (buffer-name send-pr:::err-buffer)) - (setq send-pr:::err-buffer - (get-buffer-create send-pr::err-buffer-name))) - (let ((err-buffer send-pr:::err-buffer) mesg ok) - (save-excursion (set-buffer err-buffer) (erase-buffer)) - (message "running send-pr...") - (let ((oldpr (getenv "GNATS_ROOT"))) - (setenv "GNATS_ROOT" gnats:root) - ;; ensure that a final newline is present: - (if (not (equal (char-after (1- (point-max))) ?\n)) - (save-excursion (goto-char (point-max)) - (insert ?\n))) - (call-process-region (point-min) (point-max) "send-pr" - nil err-buffer nil send-pr:::site - "-b" "-f" "-") - (setenv "GNATS_ROOT" oldpr)) - (message "running send-pr...done") - ;; stupidly we cannot check the return value in EMACS 18.57, - ;; thus we need this kluge to find out whether send-pr succeeded. - (if (save-excursion - (set-buffer err-buffer) - (goto-char (point-min)) - (setq mesg (buffer-substring (point-min) (- (point-max) 1))) - (search-forward "problem report sent" nil t)) - (progn (message mesg) - (kill-buffer err-buffer) - (delete-auto-save-file-if-necessary) - (set-buffer-modified-p nil) - (setq send-pr:::sent t) - (bury-buffer)) - (pop-to-buffer err-buffer)) - )))) - (t - (save-buffer) - (message "Exit emacs to send the PR.")))) - -;;;;--------------------------------------------------------------------------- -;;;; send-pr:send-pr-mode mode -;;;;--------------------------------------------------------------------------- - -(defvar send-pr-mode-map - (let ((map (make-sparse-keymap))) - (define-key map "\C-c\C-c" 'send-pr:submit-pr) - (define-key map "\C-c\C-f" 'gnats:change-field) - (define-key map "\M-n" 'gnats:next-field) - (define-key map "\M-p" 'gnats:previous-field) - (define-key map "\C-\M-f" 'gnats:forward-field) - (define-key map "\C-\M-b" 'gnats:backward-field) - map) - "Keymap for send-pr mode.") - -(defconst gnats::keyword "^>\\([-a-zA-Z]+\\):") -(defconst gnats::before-keyword "[ \t\n\f]*[\n\f]+>\\([-a-zA-Z]+\\):") -(defconst gnats::after-keyword "^>\\([-a-zA-Z]+\\):[ \t\n\f]+") - -(fset 'send-pr-mode 'send-pr:send-pr-mode) -(defun send-pr:send-pr-mode () - "Major mode for submitting problem reports. -For information about the form see gnats(1) and send-pr(1). -Special commands: \\{send-pr-mode-map} -Turning on send-pr-mode calls the value of the variable send-pr-mode-hook, -if it is not nil." - (interactive) - (gnats::patch-exec-path) - (put 'send-pr:send-pr-mode 'mode-class 'special) - (kill-all-local-variables) - (setq major-mode 'send-pr:send-pr-mode) - (setq mode-name "send-pr") - (use-local-map send-pr-mode-map) - (set-syntax-table text-mode-syntax-table) - (setq local-abbrev-table text-mode-abbrev-table) - (setq buffer-offer-save t) - (make-local-variable 'send-pr:::site) - (make-local-variable 'send-pr:::categories) - (make-local-variable 'send-pr:::err-buffer) - (make-local-variable 'send-pr:::spawn-to-send) - (make-local-variable 'send-pr:::sent) - (setq send-pr:::sent nil) - (make-local-variable 'paragraph-separate) - (setq paragraph-separate (concat (default-value 'paragraph-separate) - "\\|" gnats::keyword "[ \t\n\f]*$")) - (make-local-variable 'paragraph-start) - (setq paragraph-start (concat (default-value 'paragraph-start) - "\\|" gnats::keyword)) - (run-hooks 'send-pr-mode-hook) - t) - -;;;;--------------------------------------------------------------------------- -;;;; Functions to read and replace field values. -;;;;--------------------------------------------------------------------------- - -(defun gnats::position-on-field (field &optional quiet) - (goto-char (point-min)) - (if (not (re-search-forward (concat "^>" field ":") nil t)) - (if quiet - nil - (error "Field `>%s:' not found." field)) - (re-search-forward "[ \t\n\f]*") - (if (looking-at gnats::keyword) - (backward-char 1)) - t)) - -(defun gnats::mail-position-on-field (field) - (let (end - (case-fold-search t)) - (goto-char (point-min)) - (re-search-forward "^$") - (setq end (match-beginning 0)) - (goto-char (point-min)) - (if (not (re-search-forward (concat "^" field ":") end 'go-to-end)) - (insert field ": \n") - (re-search-forward "[ \t\n\f]*")) - (skip-chars-backward "\n") - t)) - -(defun gnats::field-contents (field &optional elem move) - (let (pos) - (unwind-protect - (save-excursion - (if (not (gnats::position-on-field field t)) - nil - (setq pos (point-marker)) - (if (or (looking-at "<.*>$") (eolp)) - t - (looking-at ".*$") ; to set match-{beginning,end} - (gnats::nth-word - (buffer-substring (match-beginning 0) (match-end 0)) - elem)))) - (and move pos (goto-char pos))))) - -(defun gnats::functionp (thing) - (or (and (symbolp thing) (fboundp thing)) - (and (listp thing) (eq (car thing) 'lambda)))) - -(defun gnats::field-values (field) - "Return the possible (known) values for field FIELD." - (let* ((fields (if (eq major-mode 'gnats:gnats-mode) gnats::fields - send-pr::fields)) - (thing (elt (assoc field fields) 1))) - (cond ((gnats::functionp thing) (funcall thing)) - ((listp thing) thing) - (t (error "ACK"))))) - -(defun gnats::field-default (field) - "Return the default value for field FIELD." - (let* ((fields (if (eq major-mode 'gnats:gnats-mode) gnats::fields - send-pr::fields)) - (thing (elt (assoc field fields) 2))) - (cond ((stringp thing) thing) - ((null thing) "") - ((numberp thing) (car (elt (gnats::field-values field) thing))) - ((gnats::functionp thing) - (funcall thing (gnats::field-contents field))) - ((eq thing t) (gnats::field-contents field)) - (t (error "ACK"))))) - -(defun gnats::field-type (field) - "Return the type of field FIELD." - (let* ((fields (if (eq major-mode 'gnats:gnats-mode) gnats::fields - send-pr::fields)) - (thing (elt (assoc field fields) 3))) - thing)) - -(defun gnats::field-action (field) - "Return the extra handling function for field FIELD." - (let* ((fields (if (eq major-mode 'gnats:gnats-mode) gnats::fields - send-pr::fields)) - (thing (elt (assoc field fields) 4))) - (cond ((null thing) 'ignore) - ((gnats::functionp thing) thing) - (t (error "ACK"))))) - -;;;;--------------------------------------------------------------------------- -;;;; Point movement functions -;;;;--------------------------------------------------------------------------- - -(or (fboundp 'defsubst) (fset 'defsubst 'defun)) - -(defun send-pr::maybe-change-field (field) - (setq field (car field)) - (let ((thing (gnats::field-contents field))) - (and thing (eq t thing) - (not (eq 'multi-text (gnats::field-type field))) - (gnats:change-field field)))) - -(defun gnats:change-field (&optional field default) - "Change the value of the field containing the cursor. With arg, ask the -user for the field to change. From a program, the function takes optional -arguments of the field to change and the default value to use." - (interactive) - (or field current-prefix-arg (setq field (gnats::current-field))) - (or field - (setq field - (completing-read "Field: " - (if (eq major-mode 'gnats:gnats-mode) - gnats::fields - send-pr::fields) - nil t))) - (gnats::position-on-field field) - (sit-for 0) - (let* ((old (gnats::field-contents field)) - new) - (if (null old) - (error "ACK") - (if (or (interactive-p) t) - (let ((prompt (concat ">" field ": ")) - (domain (gnats::field-values field)) - (type (gnats::field-type field))) - (or default (setq default (gnats::field-default field))) - (setq new - (if (eq type 'enum) - (completing-read prompt domain nil t - (if gnats::emacs-19p (cons default 0) - default)) - (read-string prompt (if gnats::emacs-19p (cons default 1) - default))))) - (setq new default)) - (gnats::set-field field new) - (funcall (gnats::field-action field) field old new) - new))) - -(defun gnats::set-field (field value) - (save-excursion - (gnats::position-on-field field) - (delete-horizontal-space) - (looking-at ".*$") - (replace-match - (concat (make-string (- gnats::indent (length field) 2) ?\40 ) value) t))) - -(defun gnats::set-mail-field (field value) - (save-excursion - (gnats::mail-position-on-field field) - (delete-horizontal-space) - (looking-at ".*$") - (replace-match (concat " " value) t))) - -(defun gnats::before-keyword (&optional where) - "Returns t if point is in some white space before a keyword. -If where is nil, then point is not changed; if where is t then point is moved -to the beginning of the keyword, otherwise it is moved to the beginning -of the white space it was in." - ;; - (if (looking-at gnats::before-keyword) - (prog1 t - (cond ((eq where t) - (re-search-forward "^>") (backward-char)) - ((not (eq where nil)) - (re-search-backward "[^ \t\n\f]") (forward-char)))) - nil)) - -(defun gnats::after-keyword (&optional where) - "Returns t if point is in some white space after a keyword. -If where is nil, then point is not changed; if where is t then point is moved -to the beginning of the keyword, otherwise it is moved to the end of the white -space it was in." - ;; - (if (gnats::looking-after gnats::after-keyword) - (prog1 t - (cond ((eq where t) - (re-search-backward "^>")) - ((not (eq where nil)) - (re-search-forward "[^ \t\n\f]") (backward-char)))) - nil)) - -(defun gnats::in-keyword (&optional where) - "Returns t if point is within a keyword. -If where is nil, then point is not changed; if where is t then point is moved -to the beginning of the keyword." - ;; - (let ((old-point (point-marker))) - (beginning-of-line) - (cond ((and (looking-at gnats::keyword) - (< old-point (match-end 0))) - (prog1 t - (if (eq where t) - t - (goto-char old-point)))) - (t (goto-char old-point) - nil)))) - -(defun gnats::forward-bofield () - "Moves point to the beginning of a field. Assumes that point is in the -keyword." - ;; - (if (re-search-forward "[ \t\n\f]+[^ \t\n\f]" (point-max) '-) - (backward-char) - t)) - -(defun gnats::backward-eofield () - "Moves point to the end of a field. Assumes point is in the keyword." - ;; - (if (re-search-backward "[^ \t\n\f][ \t\n\f]+" (point-min) '-) - (forward-char) - t)) - -(defun gnats::forward-eofield () - "Moves point to the end of a field. Assumes that point is in the field." - ;; - ;; look for the next field - (if (re-search-forward gnats::keyword (point-max) '-) - (progn (beginning-of-line) (gnats::backward-eofield)) - (re-search-backward "[^ \t\n\f][ \t\n\f]*" (point-min) '-) - (forward-char))) - -(defun gnats::backward-bofield () - "Moves point to the beginning of a field. Assumes that point is in the -field." - ;; - ;;look for previous field - (if (re-search-backward gnats::keyword (point-min) '-) - (gnats::forward-bofield) - t)) - - -(defun gnats:forward-field () - "Move point forward to the end of the field or to the beginning of the next -field." - ;; - (interactive) - (if (or (gnats::before-keyword t) (gnats::in-keyword t) - (gnats::after-keyword t)) - (gnats::forward-bofield) - (gnats::forward-eofield))) - -(defun gnats:backward-field () - "Move point backward to the beginning/end of a field." - ;; - (interactive) - (backward-char) - (if (or (gnats::before-keyword t) (gnats::in-keyword t) - (gnats::after-keyword t)) - (gnats::backward-eofield) - (gnats::backward-bofield))) - -(defun gnats:next-field () - "Move point to the beginning of the next field." - ;; - (interactive) - (if (or (gnats::before-keyword t) (gnats::in-keyword t) - (gnats::after-keyword t)) - (gnats::forward-bofield) - (if (re-search-forward gnats::keyword (point-max) '-) - (gnats::forward-bofield) - t))) - -(defun gnats:previous-field () - "Move point to the beginning of the previous field." - ;; - (interactive) - (backward-char) - (if (or (gnats::after-keyword t) (gnats::in-keyword t) - (gnats::before-keyword t)) - (progn (re-search-backward gnats::keyword (point-min) '-) - (gnats::forward-bofield)) - (gnats::backward-bofield))) - -(defun gnats:beginning-of-field () - "Move point to the beginning of the current field." - (interactive) - (cond ((gnats::in-keyword t) - (gnats::forward-bofield)) - ((gnats::after-keyword 0)) - (t - (gnats::backward-bofield)))) - -(defun gnats::current-field () - (save-excursion - (if (cond ((or (gnats::in-keyword t) (gnats::after-keyword t)) - (looking-at gnats::keyword)) - ((re-search-backward gnats::keyword nil t))) - (buffer-substring (match-beginning 1) (match-end 1)) - nil))) - -;;;;--------------------------------------------------------------------------- -;;;; Support functions -;;;;--------------------------------------------------------------------------- - -(defun gnats::looking-after (regex) - "Returns t if point is after regex." - ;; - (let* ((old-point (point)) - (start (if (eobp) - old-point - (forward-char) (point)))) - (cond ((re-search-backward regex (point-min) t) - (goto-char old-point) - (cond ((eq (match-end 0) start) - t)))))) - -(defun gnats::nth-word (string &optional elem) - "Returns the elem-th word of the string. -If elem is nil, then the first wort is returned, if elem is 0 then -the whole string is returned." - ;; - (if (integerp elem) - (cond ((eq elem 0) string) - ((eq elem 1) (gnats::first-word string)) - ((equal string "") "") - ((>= elem 2) - (let ((i 0) (value "")) - (setq string ; strip leading blanks - (substring string (or (string-match "[^ \t]" string) 0))) - (while (< i elem) - (setq value - (substring string 0 - (string-match "[ \t]*$\\|[ \t]+" string))) - (setq string - (substring string (match-end 0))) - (setq i (+ i 1))) - value))) - (gnats::first-word string))) - -(defun gnats::first-word (string) - (setq string - (substring string (or (string-match "[^ \t]" string) 0))) - (substring string 0 (string-match "[ \t]*$\\|[ \t]+" string))) - -;;;;--------------------------------------------------------------------------- - -(defun gnats::patch-exec-path () - ;; - "Replaces `//' by `/' in `exec-path'." - ;; - ;(make-local-variable 'exec-path) - (let ((err-buffer (get-buffer-create " *gnats::patch-exec-path*")) - (ret)) - (setq exec-path (save-excursion (set-buffer err-buffer) - (prin1 exec-path err-buffer) - (goto-char (point-min)) - (while (search-forward "//" nil t) - (replace-match "/" nil t)) - (goto-char (point-min)) - (setq ret (read err-buffer)) - (kill-buffer err-buffer) - ret - )))) - -(defun gnats::get-value-from-shell (&rest command) - "Execute shell command to get a list of valid values for `variable'." - ;; - (let ((err-buffer (get-buffer-create " *gnats::get-value-from-shell*"))) - (save-excursion - (set-buffer err-buffer) - (unwind-protect - (condition-case var - (progn - (apply 'call-process - (car command) nil err-buffer nil (cdr command)) - (goto-char (point-min)) - (if (looking-at "[-a-z]+: ") - (error (buffer-substring (point-min) (point-max)))) - (read err-buffer)) - (error nil)) - (kill-buffer err-buffer))))) - -(or (fboundp 'setenv) - (defun setenv (variable &optional value) - "Set the value of the environment variable named VARIABLE to VALUE. -VARIABLE should be a string. VALUE is optional; if not provided or is -`nil', the environment variable VARIABLE will be removed. -This function works by modifying `process-environment'." - (interactive "sSet environment variable: \nsSet %s to value: ") - (if (string-match "=" variable) - (error "Environment variable name `%s' contains `='" variable) - (let ((pattern (concat "\\`" (regexp-quote (concat variable "=")))) - (case-fold-search nil) - (scan process-environment)) - (while scan - (cond - ((string-match pattern (car scan)) - (if (eq nil value) - (setq process-environment (delq (car scan) - process-environment)) - (setcar scan (concat variable "=" value))) - (setq scan nil)) - ((null (setq scan (cdr scan))) - (setq process-environment - (cons (concat variable "=" value) - process-environment))))))))) - -;;;; end of send-pr.el diff --git a/gnu/usr.bin/send-pr/send-pr.1 b/gnu/usr.bin/send-pr/send-pr.1 deleted file mode 100644 index 49fd42b..0000000 --- a/gnu/usr.bin/send-pr/send-pr.1 +++ /dev/null @@ -1,355 +0,0 @@ -.\" -*- nroff -*- -.\" --------------------------------------------------------------------------- -.\" man page for send-pr (by Heinz G. Seidl, hgs@cygnus.com) -.\" updated Feb 1993 for GNATS 3.00 by Jeffrey Osier, jeffrey@cygnus.com -.\" -.\" This file is part of the Problem Report Management System (GNATS) -.\" Copyright 1992 Cygnus Support -.\" -.\" This program is free software; you can redistribute it and/or -.\" modify it under the terms of the GNU General Public -.\" License as published by the Free Software Foundation; either -.\" version 2 of the License, or (at your option) any later version. -.\" -.\" This program is distributed in the hope that it will be useful, -.\" but WITHOUT ANY WARRANTY; without even the implied warranty of -.\" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -.\" General Public License for more details. -.\" -.\" You should have received a copy of the GNU Library General Public -.\" License along with this program; if not, write to the Free -.\" Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA -.\" -.\" --------------------------------------------------------------------------- -.\" -.\" $FreeBSD$ -.nh -.TH SEND-PR 1 3.113 "October 2006" -.SH NAME -send-pr \- send problem report (PR) to a central support site -.SH SYNOPSIS -.B send-pr -[ -.I site -] -[ -.B \-f -.I problem-report -] -[ -.B \-t -.I mail-address -] -.br -.in +0.8i -[ -.B \-P -] -[ -.B \-L -] -[ -.B \-s -.I severity -] -[ -.B \-V -] -.br -[ -.B \-\-version -] -[ -.B \-c -.I address -] -[ -.B \-a -.I file -] -.SH DESCRIPTION -.B send-pr -is a tool used to submit -.I problem reports -.\" SITE ADMINISTRATORS - change this if you use a local default -(PRs) to a central support site. In most cases the correct -.I site -will be the default. This argument indicates the support site which -is responsible for the category of problem involved. Some sites may -use a local address as a default. -.I site -values are defined by using the -.BR aliases (5). -.LP -.B send-pr -invokes an editor on a problem report template (after trying to fill -in some fields with reasonable default values). When you exit the -editor, -.B send-pr -sends the completed form to the -.I Problem Report Management System -(\fBGNATS\fR) at a central support site. At the support site, the PR -is assigned a unique number and is stored in the \fBGNATS\fR database -according to its category and submitter-id. \fBGNATS\fR automatically -replies with an acknowledgement, citing the category and the PR -number. -.LP -To ensure that a PR is handled promptly, it should contain -one of the available \fIcategories\fR to identify the -problem area. (Use -.B `send-pr -L' -to see a list of categories.) -.LP -The more precise your problem description and the more complete your -information, the faster your support team can solve your problems. -.LP -.B send-pr -depends on a correctly configured mail submission system to work correctly. -If, for any reason, sending mail is not working, problem reports can be -submitted over the web, through: -.IP -.I http://www.freebsd.org/send-pr.html -.SH OPTIONS -.TP -.BI \-f " problem-report" -specify a file (\fIproblem-report\fR) which already contains a -complete problem report. -.B send-pr -sends the contents of the file without invoking the editor. If -the value for -.I problem-report -is -.BR `\|\-\|' , -then -.B send-pr -reads from standard input. -.TP -.BI \-s " severity" -Give the problem report the severity -.IR severity . -.TP -.BI \-t " mail-address" -Change mail address at the support site for problem reports. The -default -.I mail-address -is the address used for the default -.IR site . -Use the -.I site -argument rather than this option in nearly all cases. -.TP -.BI \-c " address" -Put -.I address -in the -.B Cc: -header of the message. -.TP -.BI \-a " file" -Copy the specified -.I file -into the -.B Fix: -section. -Binary files are uuencoded. -.TP -.B \-P -print the form specified by the environment variable -.B PR_FORM -on standard output. If -.B PR_FORM -is not set, print the standard blank PR template. No mail is sent. -.TP -.B \-L -print the list of available categories. No mail is sent. -.TP -.B \-V -Display the -.B send-pr -version number. -This may also be specified as -.B \-\-version. -.LP -Note: use -.B send-pr -to submit problem reports rather than mailing them directly. Using -both the template and -.B send-pr -itself will help ensure all necessary information will reach the -support site. -.SH FREEBSD CATEGORIES -.TP -.B advocacy -This used to be for the advocacy WWW pages. -Now deprecated in favour of the -.B www -category, relevant alternative use of this category is encouraged. -.TP -.B alpha -Alpha processor specific problems. -.TP -.B amd64 -AMD64 processor specific problems. -.TP -.B arm -ARM processor specific problems. -.TP -.B bin -Corrections or enhancements to system executables. -.TP -.B conf -Corrections or enhancements to the system configuration files. -.TP -.B docs -Corrections or enhancements to the manpages or other documentation. -.TP -.B gnu -Corrections or enhancements to the GNU contributed software. -.TP -.B i386 -Intel x86 processor specific problems. -.TP -.B ia64 -Intel ia64 processor specific problems. -.TP -.B java -Problems related to Java. -.TP -.B kern -Changes or enhancements to the architecture independent kernel sources. -.TP -.B misc -Problems that do not fit into any of the other categories. -.TP -.B ports -Corrections or enhancements (including new ports) to the ports collection. -.TP -.B powerpc -PowerPC processor specific problems. -.TP -.B sparc64 -SPARC processor specific problems. -.TP -.B standards -Standards conformance issues. -.TP -.B threads -Problems related to threading on FreeBSD. -.TP -.B usb -Problems related to the USB subsystem. -.TP -.B www -Changes or enhancements to the FreeBSD website. -.SH ENVIRONMENT -The environment variable -.B EDITOR -specifies the editor to invoke on the template. -.br -default: -.B vi -.sp -If the environment variable -.B MAIL_AGENT -is set, its value is used as the path + command line arguments of the -executable to be invoked for sending the problem report (which will be -provided via standard input). -.br -This can be useful if you either use a MTA other than sendmail or need -to provide additional parameters, such as the envelope sender on -machines without a valid FQDN. -.br -Default value: -.B /usr/sbin/sendmail -oi -t -.sp -If the environment variable -.B PR_FORM -is set, then its value is used as the file name of the template for -your problem-report editing session. You can use this to start with a -partially completed form (for example, a form with the identification -fields already completed). -.SH "HOW TO FILL OUT A PROBLEM REPORT" -Problem reports have to be in a particular form so that a program can -easily manage them. Please remember the following guidelines: -.IP \(bu 3m -describe only -.B one problem -with each problem report. -.IP \(bu 3m -For follow-up mail, use the same subject line as the one in the automatic -acknowledgement. It consists of category, PR number and the original synopsis -line. This allows the support site to relate several mail messages to a -particular PR and to record them automatically. -.IP \(bu 3m -Please try to be as accurate as possible in the subject and/or synopsis line. -.IP \(bu 3m -The subject and the synopsis line are not confidential. This is -because open-bugs lists are compiled from them. Avoid confidential -information there. -.LP -See the GNU -.B Info -file -.B send-pr.info -or the document \fIReporting Problems With send-pr\fR\ for detailed -information on reporting problems -.SH "HOW TO SUBMIT TEST CASES, CODE, ETC." -Submit small code samples with the PR. Contact the support site for -instructions on submitting larger test cases and problematic source -code. -.SH FILES -.ta \w'/tmp/pbad.XXXXXXXX 'u -/tmp/pf.XXXXXXXX copy of PR used in editing session -.br -/tmp/pf.XXXXXXXX copy of empty PR form, for testing purposes -.br -/tmp/pr.XXXXXXXX copy of filled PR form, created on interrupt -.br -/tmp/pbad.XXXXXXXX file for rejected PRs -.SH EMACS USER INTERFACE -An Emacs user interface for -.B send-pr -with completion of field values is part of the -.B send-pr -distribution (invoked with -.BR "M-x send-pr" ). -See the file -.B send-pr.info -or the ASCII file -.B INSTALL -in the top level directory of the distribution for configuration and -installation information. The Emacs LISP template file is -.B send-pr-el.in -and is installed as -.BR send-pr.el . -.SH INSTALLATION AND CONFIGURATION -See -.B send-pr.info -or -.B INSTALL -for installation instructions. -.SH SEE ALSO -.I Reporting Problems Using send-pr -(also installed as the GNU Info file -.BR send-pr.info ). -.SH AUTHORS -Jeffrey Osier, Brendan Kehoe, Jason Merrill, Heinz G. Seidl (Cygnus -Support) -.SH COPYING -Copyright (c) 1992, 1993 Free Software Foundation, Inc. -.PP -Permission is granted to make and distribute verbatim copies of -this manual provided the copyright notice and this permission notice -are preserved on all copies. -.PP -Permission is granted to copy and distribute modified versions of this -manual under the conditions for verbatim copying, provided that the -entire resulting derived work is distributed under the terms of a -permission notice identical to this one. -.PP -Permission is granted to copy and distribute translations of this -manual into another language, under the above conditions for modified -versions, except that this permission notice may be included in -translations approved by the Free Software Foundation instead of in -the original English. - diff --git a/gnu/usr.bin/send-pr/send-pr.sh b/gnu/usr.bin/send-pr/send-pr.sh deleted file mode 100644 index dee0f48..0000000 --- a/gnu/usr.bin/send-pr/send-pr.sh +++ /dev/null @@ -1,591 +0,0 @@ -#!/bin/sh -# Submit a problem report to a GNATS site. -# Copyright (C) 1993 Free Software Foundation, Inc. -# Contributed by Brendan Kehoe (brendan@cygnus.com), based on a -# version written by Heinz G. Seidl (hgs@cygnus.com). -# -# This file is part of GNU GNATS. -# -# GNU GNATS is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2, or (at your option) -# any later version. -# -# GNU GNATS is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with GNU GNATS; see the file COPYING. If not, write to -# the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. -# -# $FreeBSD$ - -# The version of this send-pr. -VERSION=3.114 - -# The submitter-id for your site. -# "current-users" is the only allowable value for FreeBSD. -SUBMITTER="current-users" - -# Where the GNATS directory lives, if at all. -[ -z "$GNATS_ROOT" ] && -GNATS_ROOT= - -# The default mail address for PR submissions. -GNATS_ADDR=FreeBSD-gnats-submit@freebsd.org - -# Where the gnats category tree lives. -DATADIR=@DATADIR@ - -# If we've been moved around, try using GCC_EXEC_PREFIX. -[ ! -d $DATADIR/gnats -a -d "$GCC_EXEC_PREFIX" ] && DATADIR="$GCC_EXEC_PREFIX" - -# The default release for this host. -DEFAULT_RELEASE="@DEFAULT_RELEASE@" - -# The default organization. -DEFAULT_ORGANIZATION= - -# The default site to look for. -GNATS_SITE=freefall - -# Newer config information? -[ -f ${GNATS_ROOT}/gnats-adm/config ] && . ${GNATS_ROOT}/gnats-adm/config - -# What mailer to use. This must come after the config file, since it is -# host-dependent. -MAIL_AGENT="${MAIL_AGENT:-/usr/sbin/sendmail -oi -t}" - -# Path to pw(8) -PW="/usr/sbin/pw" - -ECHON=bsd - -if [ $ECHON = bsd ] ; then - ECHON1="echo -n" - ECHON2= -elif [ $ECHON = sysv ] ; then - ECHON1=echo - ECHON2='\c' -else - ECHON1=echo - ECHON2= -fi - -# - -# find a user name -if [ "$LOGNAME" = "" ]; then - if [ "$USER" != "" ]; then - LOGNAME="$USER" - else - LOGNAME="UNKNOWN" - fi -fi - -# Find out the name of the originator of this PR. -if [ -n "$NAME" ]; then - ORIGINATOR="$NAME" -elif [ -f $HOME/.fullname ]; then - ORIGINATOR="`sed -e '1q' $HOME/.fullname`" -else - PTEMP=`mktemp -t p` || exit 1 - PTEMP2=`mktemp -t p` || exit 1 - # Must use temp file due to incompatibilities in quoting behavior - # and to protect shell metacharacters in the expansion of $LOGNAME - $ECHON1 $LOGNAME | awk '{print toupper(substr($1,1,1))substr($1,2)}' > $PTEMP2 - ICLOGNAME="`cat $PTEMP2`" - $PW usershow $LOGNAME | awk -F: '{ print $8 }' \ - | sed -e "s/\&/$ICLOGNAME/" \ - | sed -e 's/,.*//' > $PTEMP - ORIGINATOR="`cat $PTEMP`" - rm -f "$PTEMP" "$PTEMP2" -fi - -FROM="$ORIGINATOR <$LOGNAME>" -REPLY_TO="$ORIGINATOR <${REPLY_TO:-${REPLYTO:-$LOGNAME}}>" - -if [ -n "$ORGANIZATION" ]; then - if [ -f "$ORGANIZATION" ]; then - ORGANIZATION="`cat $ORGANIZATION`" - fi -else - if [ -n "$DEFAULT_ORGANIZATION" ]; then - ORGANIZATION="$DEFAULT_ORGANIZATION" - elif [ -f $HOME/.organization ]; then - ORGANIZATION="`cat $HOME/.organization`" - fi -fi - -# If they don't have a preferred editor set, then use -if [ -z "$VISUAL" ]; then - if [ -z "$EDITOR" ]; then - EDIT=vi - else - EDIT="$EDITOR" - fi -else - EDIT="$VISUAL" -fi - -# Find out some information. -SYSTEM=`( [ -f /bin/uname ] && /bin/uname -a ) || \ - ( [ -f /usr/bin/uname ] && /usr/bin/uname -a ) || echo ""` -ARCH=`[ -f /bin/arch ] && /bin/arch` -MACHINE=`[ -f /bin/machine ] && /bin/machine` - -COMMAND=`echo $0 | sed -e 's,.*/,,'` -USAGE="Usage: $COMMAND [-PVL] [-t address] [-f filename] [-s severity] - [-c address] [-a file] [--version]" -REMOVE= -BATCH= -CC= -SEVERITY_C= - -while [ $# -gt 0 ]; do - case "$1" in - -r) ;; # Ignore for backward compat. - -t | --to) if [ $# -eq 1 ]; then echo "$USAGE"; exit 1; fi - shift ; GNATS_ADDR="$1" - EXPLICIT_GNATS_ADDR=true - ;; - -f | --file) if [ $# -eq 1 ]; then echo "$USAGE"; exit 1; fi - shift ; IN_FILE="$1" - if [ "$IN_FILE" != "-" -a ! -r "$IN_FILE" ]; then - echo "$COMMAND: cannot read $IN_FILE" - exit 1 - fi - ;; - -b | --batch) BATCH=true ;; - -c | --cc) if [ $# -eq 1 ]; then echo "$USAGE"; exit 1; fi - shift ; CC="$1" - ;; - -s | --severity) if [ $# -eq 1 ]; then echo "$USAGE"; exit 1; fi - shift ; SEVERITY_C="$1" - ;; - -p | -P | --print) PRINT=true ;; - -L | --list) FORMAT=norm ;; - -l | -CL | --lisp) FORMAT=lisp ;; - -h | --help) echo "$USAGE"; exit 0 ;; - -V | --version) echo "$VERSION"; exit 0 ;; - -a | --attach) if [ -z "$2" ]; then - echo "$USAGE" ; exit 1; - fi - if [ -e "$2" -a ! -d "$2" ]; then - PRETTY_NAME=`basename $2` - if file $2 | grep "text" >/dev/null 2>/dev/null ; then - ATTACHED_FILES="$ATTACHED_FILES ---- $PRETTY_NAME begins here --- -`cat \"$2\"` ---- $PRETTY_NAME ends here --- -" - else - ATTACHED_FILES="$ATTACHED_FILES -`uuencode \"$PRETTY_NAME\" < \"$2\"` -" - fi - shift; - fi; - ;; - -*) echo "$USAGE" ; exit 1 ;; - *) if [ -z "$USER_GNATS_SITE" ]; then - if [ ! -r "$DATADIR/gnats/$1" ]; then - echo "$COMMAND: the GNATS site $1 does not have a categories list." - exit 1 - else - # The site name is the alias they'll have to have created. - USER_GNATS_SITE=$1 - fi - else - echo "$USAGE" ; exit 1 - fi - ;; - esac - shift -done - -if [ -n "$USER_GNATS_SITE" ] && [ "$USER_GNATS_SITE" != "$GNATS_SITE" ]; then - GNATS_SITE=$USER_GNATS_SITE - GNATS_ADDR=$USER_GNATS_SITE-gnats -fi - -if [ "$SUBMITTER" = "unknown" -a -z "$IN_FILE" ]; then - SUBMITTER="current-users" -fi - -if [ -r "$DATADIR/gnats/$GNATS_SITE" ]; then - CATEGORIES=`grep -v '^#' $DATADIR/gnats/$GNATS_SITE | sort` -else - echo "$COMMAND: could not read $DATADIR/gnats/$GNATS_SITE for categories list." - exit 1 -fi - -if [ -z "$CATEGORIES" ]; then - echo "$COMMAND: the categories list for $GNATS_SITE was empty!" - exit 1 -fi - -case "$FORMAT" in - lisp) echo "$CATEGORIES" | \ - awk 'BEGIN {printf "( "} {printf "(\"%s\") ",$0} END {printf ")\n"}' - exit 0 - ;; - norm) l=`echo "$CATEGORIES" | \ - awk 'BEGIN {max = 0; } { if (length($0) > max) { max = length($0); } } - END {print max + 1;}'` - c=`expr 70 / $l` - if [ $c -eq 0 ]; then c=1; fi - echo "$CATEGORIES" | \ - awk 'BEGIN {print "Known categories:"; i = 0 } - { printf ("%-'$l'.'$l's", $0); if ((++i % '$c') == 0) { print "" } } - END { print ""; }' - exit 0 - ;; -esac - -ORIGINATOR_C='' -ORGANIZATION_C='' -CONFIDENTIAL_C='no ' -SYNOPSIS_C='' -if [ -z "$SEVERITY_C" ]; then - SEVERITY_C='<[ non-critical | serious | critical ] (one line)>' -fi -PRIORITY_C='<[ low | medium | high ] (one line)>' -CATEGORY_C='' -CLASS_C='<[ sw-bug | doc-bug | change-request | update | maintainer-update ] (one line)>' -RELEASE_C='' -ENVIRONMENT_C='' -DESCRIPTION_C='' -HOW_TO_REPEAT_C='' -FIX_C='' - -# Create temporary files, safely -REF=`mktemp -t pf` || exit 1 -TEMP=`mktemp -t pf` || exit 1 -# Catch some signals. ($xs kludge needed by Sun /bin/sh) -xs=0 -trap 'rm -f $REF $TEMP; exit $xs' 0 -trap 'SAV=`mktemp -t pr`;echo "$COMMAND: Aborting ... saving unfinished PR into $SAV"; rm -f $REF ; mv $TEMP $SAV; xs=1; exit' 1 2 3 13 15 - -# If they told us to use a specific file, then do so. -if [ -n "$IN_FILE" ]; then - if [ "$IN_FILE" = "-" ]; then - # The PR is coming from the standard input. - if [ -n "$EXPLICIT_GNATS_ADDR" ]; then - sed -e "s;^[Tt][Oo]:.*;To: $GNATS_ADDR;" > $TEMP - else - cat > $TEMP - fi - else - # Use the file they named. - if [ -n "$EXPLICIT_GNATS_ADDR" ]; then - sed -e "s;^[Tt][Oo]:.*;To: $GNATS_ADDR;" $IN_FILE > $TEMP - else - cat $IN_FILE > $TEMP - fi - fi -else - - if [ -n "$PR_FORM" -a -z "$PRINT_INTERN" ]; then - # If their PR_FORM points to a bogus entry, then bail. - if [ ! -f "$PR_FORM" -o ! -r "$PR_FORM" -o ! -s "$PR_FORM" ]; then - echo "$COMMAND: can't seem to read your template file (\`$PR_FORM'), ignoring PR_FORM" - sleep 1 - PRINT_INTERN=bad_prform - fi - fi - - if [ -n "$PR_FORM" -a -z "$PRINT_INTERN" ]; then - cp $PR_FORM $TEMP || - ( echo "$COMMAND: could not copy $PR_FORM" ; xs=1; exit ) - [ -n "$ATTACHED_FILES" ] && echo "$ATTACHED_FILES" >> $TEMP - else - for file in $TEMP $REF ; do - cat > $file << '__EOF__' -SEND-PR: -*- send-pr -*- -SEND-PR: vim: syntax=sendpr -SEND-PR: -SEND-PR: Lines starting with `SEND-PR' will be removed automatically, as -SEND-PR: will all comments (text enclosed in `<' and `>'). -SEND-PR: -SEND-PR: Please consult the following URL if you are not sure how to -SEND-PR: fill out a problem report: -SEND-PR: http://www.freebsd.org/doc/en/articles/problem-reports/ -SEND-PR: -SEND-PR: Note that the Synopsis field is mandatory. -SEND-PR: -SEND-PR: Please note that (unless you state otherwise) if your report -SEND-PR: includes a patch then it will be taken under the same license as -SEND-PR: the one on the file(s) you want to change. -SEND-PR: -SEND-PR: BE ADVISED THAT FREEBSD PROBLEM REPORTS ARE PUBLIC INFORMATION AND -SEND-PR: WILL BE PUBLISHED AS-IS ON THE PROJECT'S MAILING LISTS AND WEB SITES. -SEND-PR: DO NOT SUBMIT ANY INFORMATION YOU DO NOT WANT MADE PUBLIC. -SEND-PR: -SEND-PR: If you wish to submit a problem report confidentially, then contact -SEND-PR: the FreeBSD bugmaster (bugmaster@FreeBSD.org) to arrange for a -SEND-PR: relevant developer to be contacted. -SEND-PR: -SEND-PR: For sensitive security issues, consider contacting the FreeBSD -SEND-PR: security officer team (security-officer@freebsd.org) directly. -SEND-PR: -SEND-PR: Choose from the following categories: -SEND-PR: -__EOF__ - - # Format the categories so they fit onto lines. - l=`echo "$CATEGORIES" | \ - awk 'BEGIN {max = 0; } { if (length($0) > max) { max = length($0); } } - END {print max + 1;}'` - c=`expr 61 / $l` - if [ $c -eq 0 ]; then c=1; fi - echo "$CATEGORIES" | \ - awk 'BEGIN {printf "SEND-PR: "; i = 0 } - { printf ("%-'$l'.'$l's", $0); - if ((++i % '$c') == 0) { printf "\nSEND-PR: " } } - END { printf "\nSEND-PR:\n"; }' >> $file - - cat >> $file << __EOF__ -To: $GNATS_ADDR -From: $FROM -Reply-To: $REPLY_TO -Cc: $CC -X-send-pr-version: $VERSION -X-GNATS-Notify: - - ->Submitter-Id: $SUBMITTER ->Originator: $ORIGINATOR ->Organization: ${ORGANIZATION-$ORGANIZATION_C} ->Confidential: $CONFIDENTIAL_C ->Synopsis: $SYNOPSIS_C ->Severity: $SEVERITY_C ->Priority: $PRIORITY_C ->Category: $CATEGORY_C ->Class: $CLASS_C ->Release: ${DEFAULT_RELEASE-$RELEASE_C} ->Environment: -`[ -n "$SYSTEM" ] && echo System: $SYSTEM` -`[ -n "$ARCH" ] && echo Architecture: $ARCH` -`[ -n "$MACHINE" ] && echo Machine: $MACHINE` - $ENVIRONMENT_C ->Description: - $DESCRIPTION_C ->How-To-Repeat: - $HOW_TO_REPEAT_C ->Fix: - - $FIX_C -$ATTACHED_FILES - -__EOF__ - - done - fi - - if [ "$PRINT" = true -o "$PRINT_INTERN" = true ]; then - cat $TEMP - xs=0; exit - fi - - chmod u+w $TEMP - eval $EDIT $TEMP - - if cmp -s $REF $TEMP ; then - echo "$COMMAND: problem report not filled out, therefore not sent" - xs=1; exit - fi -fi - -# -# Check the enumeration fields - -# This is a "sed-subroutine" with one keyword parameter -# (with workaround for Sun sed bug) -# -SED_CMD='{ -s||| -s|<.*>|| -s|^[ ]*|| -s|[ ]*$|| -p -q -}' - - -while true; do - CNT=0 - - # 1) Confidential - # - PATTERN=">Confidential:" - CONFIDENTIAL=`eval sed -n -e "\"/$PATTERN/$SED_CMD\"" $TEMP` - case "$CONFIDENTIAL" in - ""|no) CNT=`expr $CNT + 1` ;; - *) echo "$COMMAND: \`$CONFIDENTIAL' is not a valid value for \`Confidential'." ;; - esac - # - # 2) Severity - # - PATTERN=">Severity:" - SEVERITY=`eval sed -n -e "\"/$PATTERN/$SED_CMD\"" $TEMP` - case "$SEVERITY" in - ""|non-critical|serious|critical) CNT=`expr $CNT + 1` ;; - *) echo "$COMMAND: \`$SEVERITY' is not a valid value for \`Severity'." - esac - # - # 3) Priority - # - PATTERN=">Priority:" - PRIORITY=`eval sed -n -e "\"/$PATTERN/$SED_CMD\"" $TEMP` - case "$PRIORITY" in - ""|low|medium|high) CNT=`expr $CNT + 1` ;; - *) echo "$COMMAND: \`$PRIORITY' is not a valid value for \`Priority'." - esac - # - # 4) Category - # - PATTERN=">Category:" - CATEGORY=`eval sed -n -e "\"/$PATTERN/$SED_CMD\"" $TEMP` - FOUND= - for C in $CATEGORIES - do - if [ "$C" = "$CATEGORY" ]; then FOUND=true ; break ; fi - done - if [ -n "$FOUND" ]; then - CNT=`expr $CNT + 1` - else - if [ -z "$CATEGORY" ]; then - echo "$COMMAND: you must include a Category: field in your report." - else - echo "$COMMAND: \`$CATEGORY' is not a known category." - fi - fi - # - # 5) Class - # - PATTERN=">Class:" - CLASS=`eval sed -n -e "\"/$PATTERN/$SED_CMD\"" $TEMP` - case "$CLASS" in - ""|sw-bug|doc-bug|change-request|update|maintainer-update) CNT=`expr $CNT + 1` ;; - *) echo "$COMMAND: \`$CLASS' is not a valid value for \`Class'." - esac - # - # 6) Check that synopsis is not empty - # - if grep "^>Synopsis:[ ]*${SYNOPSIS_C}\$" $TEMP > /dev/null - then - echo "$COMMAND: Synopsis must not be empty." - else - CNT=`expr $CNT + 1` - fi - - [ $CNT -lt 6 -a -z "$BATCH" ] && - echo "Errors were found with the problem report." - - while true; do - if [ -z "$BATCH" ]; then - $ECHON1 "s)end, e)dit or a)bort? $ECHON2" - read input - else - if [ $CNT -eq 6 ]; then - input=s - else - input=a - fi - fi - case "$input" in - a*) - if [ -z "$BATCH" ]; then - BAD=`mktemp -t pbad` - echo "$COMMAND: the problem report remains in $BAD and is not sent." - mv $TEMP $BAD - else - echo "$COMMAND: the problem report is not sent." - fi - xs=1; exit - ;; - e*) - eval $EDIT $TEMP - continue 2 - ;; - s*) - if [ $CNT -lt 6 ]; then - if [ -z "$BATCH" ]; then - echo "But there are still errors in the problem report!" - continue 2 - else - echo "Errors found in PR" - exit 1 - fi - fi - break 2 - ;; - esac - done -done - -# -# Remove the subject field if one is already there. There's no reason -# for it to be any different than the synopsis. -# -if grep '^Subject:' $TEMP > /dev/null -then - ed -s $TEMP << __EOF__ -/^Subject:/d -w -q -__EOF__ -fi - -# -# Add the subject field with the value of $SYNOPSIS. We use the To: -# field as an anchor, which had better be there. -# -SYNOPSIS=`grep '^>Synopsis:' $TEMP | sed -e 's/^>Synopsis:[ ]*//' | - sed -e "s;$SYNOPSIS_C;;"` -ed -s $TEMP << __EOF__ -/^To:/a -Subject: $SYNOPSIS -. -w -q -__EOF__ - -# -# Remove comments and send the problem report -# (we have to use patterns, where the comment contains regex chars) -# -# /^>Originator:/s;$ORIGINATOR;; -sed -e " -/^SEND-PR:/d -/^>Organization:/,/^>[A-Za-z-]*:/s;$ORGANIZATION_C;; -/^>Confidential:/s;<.*>;; -/^>Synopsis:/s;$SYNOPSIS_C;; -/^>Severity:/s;<.*>;; -/^>Priority:/s;<.*>;; -/^>Category:/s;$CATEGORY_C;; -/^>Class:/s;<.*>;; -/^>Release:/,/^>[A-Za-z-]*:/s;$RELEASE_C;; -/^>Environment:/,/^>[A-Za-z-]*:/s;$ENVIRONMENT_C;; -/^>Description:/,/^>[A-Za-z-]*:/s;$DESCRIPTION_C;; -/^>How-To-Repeat:/,/^>[A-Za-z-]*:/s;$HOW_TO_REPEAT_C;; -/^>Fix:/,/^>[A-Za-z-]*:/s;$FIX_C;; -" $TEMP > $REF - -if $MAIL_AGENT < $REF; then - echo "$COMMAND: problem report sent" - xs=0; exit -else - echo "$COMMAND: mysterious mail failure." - if [ -z "$BATCH" ]; then - BAD=`mktemp -t pbad` - echo "$COMMAND: the problem report remains in $BAD and is not sent." - mv $TEMP $BAD - else - echo "$COMMAND: the problem report is not sent." - fi - xs=1; exit -fi -- cgit v1.1 From 33e60dabce67b0805a0f9dc2bc92b0a3156c82c6 Mon Sep 17 00:00:00 2001 From: imp Date: Tue, 24 Jun 2014 22:15:27 +0000 Subject: Make sure that the sub-makes for unwind.h start from the CURDIR (/usr/src) tree rather than the OBJDIR (/usr/obj) tree. This fixes broken incremental builds with the canonical MAKESYSPATH workaround of .../share/mk. This is a gross kludge. --- gnu/lib/csu/Makefile | 2 +- gnu/lib/libgcc/Makefile | 2 +- gnu/lib/libgcov/Makefile | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) (limited to 'gnu') diff --git a/gnu/lib/csu/Makefile b/gnu/lib/csu/Makefile index 6ab5e87..2db69fb 100644 --- a/gnu/lib/csu/Makefile +++ b/gnu/lib/csu/Makefile @@ -73,7 +73,7 @@ crtendS.o: ${ENDSRC} CLEANFILES+= tm.h tconfig.h options.h optionlist cs-tconfig.h cs-tm.h tm.h tconfig.h options.h: ${CCDIR}/cc_tools/Makefile - ${MAKE} -f ${.ALLSRC} MFILE=${.ALLSRC} GCCDIR=${GCCDIR} ${.TARGET} + (cd ${.CURDIR}; ${MAKE} -f ${.ALLSRC} MFILE=${.ALLSRC} GCCDIR=${GCCDIR} ${.TARGET}) realinstall: .for file in ${OBJS} ${SOBJS} ${TGTOBJS} diff --git a/gnu/lib/libgcc/Makefile b/gnu/lib/libgcc/Makefile index 11af430..de80960 100644 --- a/gnu/lib/libgcc/Makefile +++ b/gnu/lib/libgcc/Makefile @@ -317,7 +317,7 @@ ${_src:R:S/$/.So/}: ${_src} ${COMMONHDRS} # Generated headers # ${COMMONHDRS}: ${.CURDIR}/../../usr.bin/cc/cc_tools/Makefile - ${MAKE} -f ${.ALLSRC} MFILE=${.ALLSRC} GCCDIR=${GCCDIR} ${.TARGET} + (cd ${.CURDIR}; ${MAKE} -f ${.ALLSRC} MFILE=${.ALLSRC} GCCDIR=${GCCDIR} ${.TARGET}) CLEANFILES += ${COMMONHDRS} CLEANFILES += cs-*.h option* diff --git a/gnu/lib/libgcov/Makefile b/gnu/lib/libgcov/Makefile index 5292f9f..e2b8074 100644 --- a/gnu/lib/libgcov/Makefile +++ b/gnu/lib/libgcov/Makefile @@ -46,7 +46,7 @@ COMMONHDRS= tm.h tconfig.h gcov-iov.h options.h CLEANFILES+= ${COMMONHDRS} cs-tm.h cs-tconfig.h options.h optionlist ${COMMONHDRS}: ${.CURDIR}/../../usr.bin/cc/cc_tools/Makefile - ${MAKE} -f ${.ALLSRC} MFILE=${.ALLSRC} GCCDIR=${GCCDIR} ${.TARGET} + (cd ${.CURDIR}; ${MAKE} -f ${.ALLSRC} MFILE=${.ALLSRC} GCCDIR=${GCCDIR} ${.TARGET}) ${OBJS} beforedepend: ${COMMONHDRS} -- cgit v1.1 From 9f28abd980752efcf77578cd494f1015083c2a2b Mon Sep 17 00:00:00 2001 From: marcel Date: Mon, 7 Jul 2014 00:27:09 +0000 Subject: Remove ia64. This includes: o All directories named *ia64* o All files named *ia64* o All ia64-specific code guarded by __ia64__ o All ia64-specific makefile logic o Mention of ia64 in comments and documentation This excludes: o Everything under contrib/ o Everything under crypto/ o sys/xen/interface o sys/sys/elf_common.h Discussed at: BSDcan --- gnu/lib/csu/Makefile | 7 - gnu/lib/libgcc/Makefile | 11 - gnu/usr.bin/binutils/as/ia64-freebsd/targ-cpu.h | 3 - gnu/usr.bin/binutils/ld/Makefile | 4 - gnu/usr.bin/binutils/ld/Makefile.ia64 | 24 -- gnu/usr.bin/binutils/ld/elf64_ia64_fbsd.sh | 8 - gnu/usr.bin/binutils/libbfd/Makefile | 2 +- gnu/usr.bin/binutils/libbfd/Makefile.ia64 | 35 -- gnu/usr.bin/binutils/libbfd/bfd.h | 2 +- gnu/usr.bin/binutils/libopcodes/Makefile.ia64 | 4 - gnu/usr.bin/cc/Makefile.tgt | 3 - gnu/usr.bin/cc/include/Makefile | 2 - gnu/usr.bin/gdb/arch/ia64/Makefile | 14 - gnu/usr.bin/gdb/arch/ia64/config.h | 550 ------------------------ gnu/usr.bin/gdb/arch/ia64/init.c | 230 ---------- gnu/usr.bin/gdb/kgdb/trgt_ia64.c | 338 --------------- 16 files changed, 2 insertions(+), 1235 deletions(-) delete mode 100644 gnu/usr.bin/binutils/as/ia64-freebsd/targ-cpu.h delete mode 100644 gnu/usr.bin/binutils/ld/Makefile.ia64 delete mode 100644 gnu/usr.bin/binutils/ld/elf64_ia64_fbsd.sh delete mode 100644 gnu/usr.bin/binutils/libbfd/Makefile.ia64 delete mode 100644 gnu/usr.bin/binutils/libopcodes/Makefile.ia64 delete mode 100644 gnu/usr.bin/gdb/arch/ia64/Makefile delete mode 100644 gnu/usr.bin/gdb/arch/ia64/config.h delete mode 100644 gnu/usr.bin/gdb/arch/ia64/init.c delete mode 100644 gnu/usr.bin/gdb/kgdb/trgt_ia64.c (limited to 'gnu') diff --git a/gnu/lib/csu/Makefile b/gnu/lib/csu/Makefile index 2db69fb..dee77df 100644 --- a/gnu/lib/csu/Makefile +++ b/gnu/lib/csu/Makefile @@ -28,13 +28,6 @@ MKDEP= -DCRT_BEGIN CFLAGS+= -DTARGET_ARM_EABI .endif -.if ${MACHINE_CPUARCH} == "ia64" -BEGINSRC= crtbegin.asm -ENDSRC= crtend.asm -CFLAGS+= -x assembler-with-cpp # Ugly hack -CFLAGS+= -include osreldate.h -.undef SRCS # hack for 'make depend' -.endif .if ${MACHINE_CPUARCH} == "powerpc" TGTOBJS= crtsavres.o SRCS+= crtsavres.asm diff --git a/gnu/lib/libgcc/Makefile b/gnu/lib/libgcc/Makefile index de80960..f0e4834 100644 --- a/gnu/lib/libgcc/Makefile +++ b/gnu/lib/libgcc/Makefile @@ -137,17 +137,6 @@ LIB2FUNCS_EXTRA+= fixdfdi.c fixunssfsi.c .endif .endif -.if ${TARGET_CPUARCH} == "ia64" -# from config/ia64/t-ia64 -LIB1ASMSRC = lib1funcs.asm -LIB1ASMFUNCS = __divxf3 __divdf3 __divsf3 \ - __divdi3 __moddi3 __udivdi3 __umoddi3 \ - __divsi3 __modsi3 __udivsi3 __umodsi3 __save_stack_nonlocal \ - __nonlocal_goto __restore_stack_nonlocal __trampoline \ - _fixtfdi _fixunstfdi _floatditf -LIB2ADDEH = unwind-ia64.c unwind-sjlj.c unwind-c.c -.endif - .if ${TARGET_ARCH} == "powerpc" # from config/rs6000/t-ppccomm LIB2FUNCS_EXTRA = tramp.asm diff --git a/gnu/usr.bin/binutils/as/ia64-freebsd/targ-cpu.h b/gnu/usr.bin/binutils/as/ia64-freebsd/targ-cpu.h deleted file mode 100644 index a0a6360..0000000 --- a/gnu/usr.bin/binutils/as/ia64-freebsd/targ-cpu.h +++ /dev/null @@ -1,3 +0,0 @@ -/* $FreeBSD$ */ - -#include "tc-ia64.h" diff --git a/gnu/usr.bin/binutils/ld/Makefile b/gnu/usr.bin/binutils/ld/Makefile index 81a46d5..6c59945 100644 --- a/gnu/usr.bin/binutils/ld/Makefile +++ b/gnu/usr.bin/binutils/ld/Makefile @@ -5,10 +5,6 @@ .PATH: ${SRCDIR}/ld -.if ${TARGET_ARCH} == "ia64" -CFLAGS+= -O1 -.endif - PROG= ld SCRIPTDIR= /usr/libdata/ldscripts SRCS+= ldcref.c \ diff --git a/gnu/usr.bin/binutils/ld/Makefile.ia64 b/gnu/usr.bin/binutils/ld/Makefile.ia64 deleted file mode 100644 index 50a7bb6..0000000 --- a/gnu/usr.bin/binutils/ld/Makefile.ia64 +++ /dev/null @@ -1,24 +0,0 @@ -# $FreeBSD$ - -NATIVE_EMULATION= elf64_ia64_fbsd - -SRCS+= e${NATIVE_EMULATION}.c -CLEANFILES+= e${NATIVE_EMULATION}.c -e${NATIVE_EMULATION}.c: ${.CURDIR}/${NATIVE_EMULATION}.sh emultempl/elf32.em \ - scripttempl/elf.sc genscripts.sh stringify.sed - sh ${.CURDIR}/genscripts.sh ${SRCDIR}/ld ${LIBSEARCHPATH} \ - ${TOOLS_PREFIX}/usr \ - ${HOST} ${TARGET_TUPLE} ${TARGET_TUPLE} \ - ${NATIVE_EMULATION} "" no ${NATIVE_EMULATION} ${TARGET_TUPLE} \ - ${.CURDIR}/${NATIVE_EMULATION}.sh - -#XXX EMS+= eelf64_ia64 - -SRCS+= eelf64_ia64.c -CLEANFILES+= eelf64_ia64.c -eelf64_ia64.c: emulparams/elf64_ia64.sh emultempl/elf32.em \ - scripttempl/elf.sc genscripts.sh stringify.sed - sh ${.CURDIR}/genscripts.sh ${SRCDIR}/ld ${LIBSEARCHPATH} \ - ${TOOLS_PREFIX}/usr \ - ${HOST} ${TARGET_TUPLE} ${TARGET_TUPLE} \ - elf64_ia64 "" no elf64_ia64 ${TARGET_TUPLE} diff --git a/gnu/usr.bin/binutils/ld/elf64_ia64_fbsd.sh b/gnu/usr.bin/binutils/ld/elf64_ia64_fbsd.sh deleted file mode 100644 index 213b494..0000000 --- a/gnu/usr.bin/binutils/ld/elf64_ia64_fbsd.sh +++ /dev/null @@ -1,8 +0,0 @@ -# $FreeBSD$ -. ${srcdir}/emulparams/elf64_ia64.sh -TEXT_START_ADDR="0x0000000100000000" -unset DATA_ADDR -unset SMALL_DATA_CTOR -unset SMALL_DATA_DTOR -. ${srcdir}/emulparams/elf_fbsd.sh -OUTPUT_FORMAT="elf64-ia64-freebsd" diff --git a/gnu/usr.bin/binutils/libbfd/Makefile b/gnu/usr.bin/binutils/libbfd/Makefile index ca5e183..a24dd04 100644 --- a/gnu/usr.bin/binutils/libbfd/Makefile +++ b/gnu/usr.bin/binutils/libbfd/Makefile @@ -42,7 +42,7 @@ SRCS+= archive.c \ targets.c \ targmatch.h \ tekhex.c -.if (${TARGET_ARCH} == "ia64" || ${TARGET_ARCH} == "sparc64") +.if ${TARGET_ARCH} == "sparc64" WARNS?= 2 .endif CFLAGS+= -D_GNU_SOURCE diff --git a/gnu/usr.bin/binutils/libbfd/Makefile.ia64 b/gnu/usr.bin/binutils/libbfd/Makefile.ia64 deleted file mode 100644 index 2e489bc..0000000 --- a/gnu/usr.bin/binutils/libbfd/Makefile.ia64 +++ /dev/null @@ -1,35 +0,0 @@ -# $FreeBSD$ - -DEFAULT_VECTOR= bfd_elf64_ia64_freebsd_vec - -SRCS+= cofflink.c \ - cpu-ia64.c \ - efi-app-ia64.c \ - elf32.c \ - elf32-gen.c \ - elf32-target.h \ - elf64.c \ - elf64-gen.c \ - elf64-ia64.c \ - elf64-target.h \ - elflink.c \ - pepigen.c \ - pex64igen.c - -VECS+= ${DEFAULT_VECTOR} \ - bfd_efi_app_ia64_vec \ - bfd_elf64_ia64_little_vec \ - bfd_elf64_ia64_big_vec \ - bfd_elf64_little_generic_vec bfd_elf64_big_generic_vec \ - bfd_elf32_little_generic_vec bfd_elf32_big_generic_vec - -CLEANFILES+= elf64-ia64.c pepigen.c pex64igen.c - -elf64-ia64.c: elfxx-ia64.c - sed -e s/NN/64/g ${.ALLSRC} > ${.TARGET} - -pepigen.c: peXXigen.c - sed -e s/XX/pep/g ${.ALLSRC} > ${.TARGET} - -pex64igen.c: peXXigen.c - sed -e s/XX/pex64/g ${.ALLSRC} > ${.TARGET} diff --git a/gnu/usr.bin/binutils/libbfd/bfd.h b/gnu/usr.bin/binutils/libbfd/bfd.h index c9dfef5..f651233 100644 --- a/gnu/usr.bin/binutils/libbfd/bfd.h +++ b/gnu/usr.bin/binutils/libbfd/bfd.h @@ -85,7 +85,7 @@ extern "C" { #define BFD_HOST_64BIT_LONG 0 #define BFD_HOST_64_BIT long long #define BFD_HOST_U_64_BIT unsigned long long -#elif defined(__alpha__) || defined(__sparc64__) || defined(__amd64__) || defined(__ia64__) +#elif defined(__alpha__) || defined(__sparc64__) || defined(__amd64__) #define BFD_HOST_64BIT_LONG 1 #define BFD_HOST_64_BIT long #define BFD_HOST_U_64_BIT unsigned long diff --git a/gnu/usr.bin/binutils/libopcodes/Makefile.ia64 b/gnu/usr.bin/binutils/libopcodes/Makefile.ia64 deleted file mode 100644 index 98198cd..0000000 --- a/gnu/usr.bin/binutils/libopcodes/Makefile.ia64 +++ /dev/null @@ -1,4 +0,0 @@ -# $FreeBSD$ - -SRCS+= ia64-dis.c ia64-opc.c -CFLAGS+= -DARCH_ia64 diff --git a/gnu/usr.bin/cc/Makefile.tgt b/gnu/usr.bin/cc/Makefile.tgt index 48cc774..ee5a794 100644 --- a/gnu/usr.bin/cc/Makefile.tgt +++ b/gnu/usr.bin/cc/Makefile.tgt @@ -11,9 +11,6 @@ TARGET_CPUARCH=${MACHINE_CPUARCH} TARGET_ARCH?= ${MACHINE_ARCH} GCC_CPU=${TARGET_CPUARCH:C/amd64/i386/:C/powerpc/rs6000/:C/sparc64/sparc/} -.if ${TARGET_ARCH} == "ia64" -TARGET_CPU_DEFAULT= MASK_GNU_AS|MASK_GNU_LD -.endif .if ${TARGET_ARCH} == "sparc64" TARGET_CPU_DEFAULT= TARGET_CPU_ultrasparc .endif diff --git a/gnu/usr.bin/cc/include/Makefile b/gnu/usr.bin/cc/include/Makefile index c48975e..48060ec 100644 --- a/gnu/usr.bin/cc/include/Makefile +++ b/gnu/usr.bin/cc/include/Makefile @@ -12,8 +12,6 @@ INCSDIR=${INCLUDEDIR}/gcc/${GCCVER} INCS= ammintrin.h emmintrin.h mmintrin.h mm3dnow.h pmmintrin.h \ tmmintrin.h xmmintrin.h mm_malloc.h INCS+= wmmintrin.h __wmmintrin_aes.h __wmmintrin_pclmul.h -.elif ${TARGET_ARCH} == "ia64" -INCS= ia64intrin.h .elif ${TARGET_ARCH} == "arm" INCS= mmintrin.h .elif ${TARGET_ARCH} == "powerpc" || ${TARGET_ARCH} == "powerpc64" diff --git a/gnu/usr.bin/gdb/arch/ia64/Makefile b/gnu/usr.bin/gdb/arch/ia64/Makefile deleted file mode 100644 index 2fe4899..0000000 --- a/gnu/usr.bin/gdb/arch/ia64/Makefile +++ /dev/null @@ -1,14 +0,0 @@ -# $FreeBSD$ - -.if !defined(GDB_CROSS_DEBUGGER) -LIBSRCS+= fbsd-proc.c fbsd-threads.c gcore.c -LIBSRCS+= ia64-fbsd-nat.c -.endif -LIBSRCS+= solib.c solib-svr4.c -LIBSRCS+= ia64-fbsd-tdep.c ia64-tdep.c - -nm.h: - echo '#include "ia64/nm-fbsd.h"' > ${.TARGET} - -tm.h: - echo '#include "ia64/tm-fbsd.h"' > ${.TARGET} diff --git a/gnu/usr.bin/gdb/arch/ia64/config.h b/gnu/usr.bin/gdb/arch/ia64/config.h deleted file mode 100644 index 4cc29f9..0000000 --- a/gnu/usr.bin/gdb/arch/ia64/config.h +++ /dev/null @@ -1,550 +0,0 @@ -/* $FreeBSD$ */ - -/* config.h. Generated automatically by configure. */ -/* config.in. Generated automatically from configure.in by autoheader. */ - -/* Define if on AIX 3. - System headers sometimes define this. - We just want to avoid a redefinition error message. */ -#ifndef _ALL_SOURCE -/* #undef _ALL_SOURCE */ -#endif - -/* Define if using alloca.c. */ -/* #undef C_ALLOCA */ - -/* Define to empty if the keyword does not work. */ -/* #undef const */ - -/* Define to one of _getb67, GETB67, getb67 for Cray-2 and Cray-YMP systems. - This function is required for alloca.c support on those systems. */ -/* #undef CRAY_STACKSEG_END */ - -/* Define if you have alloca, as a function or macro. */ -#define HAVE_ALLOCA 1 - -/* Define if you have and it should be used (not on Ultrix). */ -/* #undef HAVE_ALLOCA_H */ - -/* Define if the `long double' type works. */ -#define HAVE_LONG_DOUBLE 1 - -/* Define if you have a working `mmap' system call. */ -#define HAVE_MMAP 1 - -/* Define if you have . */ -/* #undef HAVE_VFORK_H */ - -/* Define as __inline if that's what the C compiler calls it. */ -/* #undef inline */ - -/* Define to `long' if doesn't define. */ -/* #undef off_t */ - -/* Define to `int' if doesn't define. */ -/* #undef pid_t */ - -/* Define if you need to in order for stat and other things to work. */ -/* #undef _POSIX_SOURCE */ - -/* Define as the return type of signal handlers (int or void). */ -#define RETSIGTYPE void - -/* Define if the `setpgrp' function takes no argument. */ -/* #undef SETPGRP_VOID */ - -/* Define to `unsigned' if doesn't define. */ -/* #undef size_t */ - -/* If using the C implementation of alloca, define if you know the - direction of stack growth for your system; otherwise it will be - automatically deduced at run-time. - STACK_DIRECTION > 0 => grows toward higher addresses - STACK_DIRECTION < 0 => grows toward lower addresses - STACK_DIRECTION = 0 => direction of growth unknown - */ -/* #undef STACK_DIRECTION */ - -/* Define if the `S_IS*' macros in do not work properly. */ -/* #undef STAT_MACROS_BROKEN */ - -/* Define if you have the ANSI C header files. */ -#define STDC_HEADERS 1 - -/* Define vfork as fork if vfork does not work. */ -/* #undef vfork */ - -/* Enable GNU extensions on systems that have them. */ -#ifndef _GNU_SOURCE -# define _GNU_SOURCE 1 -#endif - -/* Define if your struct reg has r_fs. */ -/* #undef HAVE_STRUCT_REG_R_FS */ - -/* Define if your struct stat has st_blocks. */ -#define HAVE_STRUCT_STAT_ST_BLOCKS 1 - -/* Define if your struct reg has r_gs. */ -/* #undef HAVE_STRUCT_REG_R_GS */ - -/* Define if exists and defines struct link_map which has - members with an ``l_'' prefix. (For Solaris, SVR4, and - SVR4-like systems.) */ -#define HAVE_STRUCT_LINK_MAP_WITH_L_MEMBERS 1 - -/* Define if exists and defines struct link_map which has - members with an ``lm_'' prefix. (For SunOS.) */ -/* #undef HAVE_STRUCT_LINK_MAP_WITH_LM_MEMBERS */ - -/* Define if exists and defines a struct so_map which has - members with an ``som_'' prefix. (Found on older *BSD systems.) */ -/* #undef HAVE_STRUCT_SO_MAP_WITH_SOM_MEMBERS */ - -/* Define if has struct link_map32 */ -/* #undef HAVE_STRUCT_LINK_MAP32 */ - -/* Define if has link_map32 (solaris sparc-64 target) */ -/* #undef _SYSCALL32 */ - -/* Define if the prfpregset_t type is broken. */ -/* #undef PRFPREGSET_T_BROKEN */ - -/* Define if you want to use new multi-fd /proc interface - (replaces HAVE_MULTIPLE_PROC_FDS as well as other macros). */ -/* #undef NEW_PROC_API */ - -/* Define if ioctl argument PIOCSET is available. */ -/* #undef HAVE_PROCFS_PIOCSET */ - -/* Define if the `long long' type works. */ -#define CC_HAS_LONG_LONG 1 - -/* Define if the "ll" format works to print long long ints. */ -#define PRINTF_HAS_LONG_LONG 1 - -/* Define if the "%Lg" format works to print long doubles. */ -#define PRINTF_HAS_LONG_DOUBLE 1 - -/* Define if the "%Lg" format works to scan long doubles. */ -#define SCANF_HAS_LONG_DOUBLE 1 - -/* Define if using Solaris thread debugging. */ -/* #undef HAVE_THREAD_DB_LIB */ - -/* Define on a GNU/Linux system to work around problems in sys/procfs.h. */ -/* #undef START_INFERIOR_TRAPS_EXPECTED */ -/* #undef sys_quotactl */ - -/* Define if you have HPUX threads */ -/* #undef HAVE_HPUX_THREAD_SUPPORT */ - -/* Define if on solaris uses int instead of - size_t, and assorted other type changes. */ -/* #undef PROC_SERVICE_IS_OLD */ - -/* Define if the simulator is being linked in. */ -#define WITH_SIM 1 - -/* Set to true if the save_state_t structure is present */ -/* #undef HAVE_STRUCT_SAVE_STATE_T */ - -/* Set to true if the save_state_t structure has the ss_wide member */ -/* #undef HAVE_STRUCT_MEMBER_SS_WIDE */ - -/* Define if defines the PTRACE_GETREGS request. */ -/* #undef HAVE_PTRACE_GETREGS */ - -/* Define if defines the PTRACE_GETFPXREGS request. */ -/* #undef HAVE_PTRACE_GETFPXREGS */ - -/* Define if defines the PT_GETDBREGS request. */ -#define HAVE_PT_GETDBREGS 1 - -/* Define if defines the PT_GETXMMREGS request. */ -/* #undef HAVE_PT_GETXMMREGS */ - -/* Define if libunwind library is being used. */ -/* #undef HAVE_LIBUNWIND */ - -/* hostfile */ -/* #undef GDB_XM_FILE */ - -/* targetfile */ -#define GDB_TM_FILE config/ia64/tm-fbsd.h - -/* nativefile */ -#ifndef CROSS_DEBUGGER -#define GDB_NM_FILE config/ia64/nm-fbsd.h -#endif - -/* Define to 1 so gets a definition of anon_hdl. Works - around a problem on IRIX 5. */ -#ifndef _KMEMUSER -/* #undef _KMEMUSER */ -#endif - -/* Define if you have the __argz_count function. */ -/* #undef HAVE___ARGZ_COUNT */ - -/* Define if you have the __argz_next function. */ -/* #undef HAVE___ARGZ_NEXT */ - -/* Define if you have the __argz_stringify function. */ -/* #undef HAVE___ARGZ_STRINGIFY */ - -/* Define if you have the _mcleanup function. */ -#define HAVE__MCLEANUP 1 - -/* Define if you have the canonicalize_file_name function. */ -/* #undef HAVE_CANONICALIZE_FILE_NAME */ - -/* Define if you have the dcgettext function. */ -/* #undef HAVE_DCGETTEXT */ - -/* Define if you have the getcwd function. */ -#define HAVE_GETCWD 1 - -/* Define if you have the getpagesize function. */ -#define HAVE_GETPAGESIZE 1 - -/* Define if you have the monstartup function. */ -#define HAVE_MONSTARTUP 1 - -/* Define if you have the munmap function. */ -#define HAVE_MUNMAP 1 - -/* Define if you have the poll function. */ -#define HAVE_POLL 1 - -/* Define if you have the pread64 function. */ -/* #undef HAVE_PREAD64 */ - -/* Define if you have the putenv function. */ -#define HAVE_PUTENV 1 - -/* Define if you have the realpath function. */ -#define HAVE_REALPATH 1 - -/* Define if you have the sbrk function. */ -#define HAVE_SBRK 1 - -/* Define if you have the setenv function. */ -#define HAVE_SETENV 1 - -/* Define if you have the setlocale function. */ -#define HAVE_SETLOCALE 1 - -/* Define if you have the setpgid function. */ -#define HAVE_SETPGID 1 - -/* Define if you have the setpgrp function. */ -#define HAVE_SETPGRP 1 - -/* Define if you have the sigaction function. */ -#define HAVE_SIGACTION 1 - -/* Define if you have the sigprocmask function. */ -#define HAVE_SIGPROCMASK 1 - -/* Define if you have the sigsetmask function. */ -#define HAVE_SIGSETMASK 1 - -/* Define if you have the socketpair function. */ -#define HAVE_SOCKETPAIR 1 - -/* Define if you have the stpcpy function. */ -#define HAVE_STPCPY 1 - -/* Define if you have the strcasecmp function. */ -#define HAVE_STRCASECMP 1 - -/* Define if you have the strchr function. */ -#define HAVE_STRCHR 1 - -/* Define if you have the syscall function. */ -#define HAVE_SYSCALL 1 - -/* Define if you have the header file. */ -/* #undef HAVE_ARGZ_H */ - -/* Define if you have the header file. */ -#define HAVE_CTYPE_H 1 - -/* Define if you have the header file. */ -#define HAVE_CURSES_H 1 - -/* Define if you have the header file. */ -#define HAVE_DIRENT_H 1 - -/* Define if you have the header file. */ -/* #undef HAVE_LIBUNWIND_IA64_H */ - -/* Define if you have the header file. */ -/* #undef HAVE_LIBUNWIND_H */ - -/* Define if you have the header file. */ -#define HAVE_LIMITS_H 1 - -/* Define if you have the header file. */ -#define HAVE_LINK_H 1 - -/* Define if you have the header file. */ -#define HAVE_LOCALE_H 1 - -/* Define if you have the header file. */ -#define HAVE_MACHINE_REG_H 1 - -/* Define if you have the header file. */ -/* #undef HAVE_MALLOC_H */ - -/* Define if you have the header file. */ -#define HAVE_MEMORY_H 1 - -/* Define if you have the header file. */ -#define HAVE_NCURSES_H 1 - -/* Define if you have the header file. */ -/* #undef HAVE_NDIR_H */ - -/* Define if you have the header file. */ -#define HAVE_NL_TYPES_H 1 - -/* Define if you have the header file. */ -#define HAVE_NLIST_H 1 - -/* Define if you have the header file. */ -#define HAVE_POLL_H 1 - -/* Define if you have the header file. */ -/* #undef HAVE_PROC_SERVICE_H */ - -/* Define if you have the header file. */ -/* #undef HAVE_PTRACE_H */ - -/* Define if you have the header file. */ -#define HAVE_SGTTY_H 1 - -/* Define if you have the header file. */ -#define HAVE_STDDEF_H 1 - -/* Define if you have the header file. */ -#define HAVE_STDINT_H 1 - -/* Define if you have the header file. */ -#define HAVE_STDLIB_H 1 - -/* Define if you have the header file. */ -#define HAVE_STRING_H 1 - -/* Define if you have the header file. */ -#define HAVE_STRINGS_H 1 - -/* Define if you have the header file. */ -/* #undef HAVE_SYS_DEBUGREG_H */ - -/* Define if you have the header file. */ -/* #undef HAVE_SYS_DIR_H */ - -/* Define if you have the header file. */ -/* #undef HAVE_SYS_FAULT_H */ - -/* Define if you have the header file. */ -#define HAVE_SYS_FILE_H 1 - -/* Define if you have the header file. */ -#define HAVE_SYS_FILIO_H 1 - -/* Define if you have the header file. */ -#define HAVE_SYS_IOCTL_H 1 - -/* Define if you have the header file. */ -/* #undef HAVE_SYS_NDIR_H */ - -/* Define if you have the header file. */ -#define HAVE_SYS_PARAM_H 1 - -/* Define if you have the header file. */ -#define HAVE_SYS_POLL_H 1 - -/* Define if you have the header file. */ -#define HAVE_SYS_PROC_H 1 - -/* Define if you have the header file. */ -#define HAVE_SYS_PROCFS_H 1 - -/* Define if you have the header file. */ -#define HAVE_SYS_PTRACE_H 1 - -/* Define if you have the header file. */ -/* #undef HAVE_SYS_REG_H */ - -/* Define if you have the header file. */ -#define HAVE_SYS_SELECT_H 1 - -/* Define if you have the header file. */ -#define HAVE_SYS_SYSCALL_H 1 - -/* Define if you have the header file. */ -#define HAVE_SYS_USER_H 1 - -/* Define if you have the header file. */ -#define HAVE_SYS_WAIT_H 1 - -/* Define if you have the header file. */ -#define HAVE_TERM_H 1 - -/* Define if you have the header file. */ -/* #undef HAVE_TERMIO_H */ - -/* Define if you have the header file. */ -#define HAVE_TERMIOS_H 1 - -/* Define if you have the header file. */ -/* #undef HAVE_THREAD_DB_H */ - -/* Define if you have the header file. */ -#define HAVE_TIME_H 1 - -/* Define if you have the header file. */ -#define HAVE_UNISTD_H 1 - -/* Define if you have the header file. */ -/* #undef HAVE_VALUES_H */ - -/* Define if you have the header file. */ -/* #undef HAVE_WAIT_H */ - -/* Define if you have the dl library (-ldl). */ -/* #undef HAVE_LIBDL */ - -/* Define if you have the m library (-lm). */ -#define HAVE_LIBM 1 - -/* Define if you have the w library (-lw). */ -/* #undef HAVE_LIBW */ - -/* Define if you have the stpcpy function */ -#define HAVE_STPCPY 1 - -/* Define if your locale.h file contains LC_MESSAGES. */ -#define HAVE_LC_MESSAGES 1 - -/* Define to 1 if NLS is requested */ -/* #undef ENABLE_NLS */ - -/* Define as 1 if you have gettext and don't want to use GNU gettext. */ -/* #undef HAVE_GETTEXT */ - -/* Name of this package. */ -#define PACKAGE "gdb" - -/* Define to BFD's default architecture. */ -#define DEFAULT_BFD_ARCH bfd_ia64_arch - -/* Define to BFD's default target vector. */ -#define DEFAULT_BFD_VEC bfd_elf64_ia64_little_vec - -/* Define to 1 if your system has the _etext variable. */ -#define HAVE__ETEXT 1 - -/* Define to 1 to avoid a clash between and on - Solaris 2.[78] when using GCC. */ -/* #undef _MSE_INT_H */ - -/* Define to 1 if we found this declaration otherwise define to 0. */ -#define HAVE_DECL_GETOPT 0 - -/* Define if sigsetjmp is available. */ -#define HAVE_SIGSETJMP 1 - -/* Define to 1 if the regex included in libiberty should be used. */ -#define USE_INCLUDED_REGEX 1 - -/* Define to 1 if your system has struct reg in . */ -#define HAVE_STRUCT_REG 1 - -/* Define if provides the uintptr_t type. */ -#define HAVE_UINTPTR_T 1 - -/* Define if malloc is not declared in system header files. */ -/* #undef NEED_DECLARATION_MALLOC */ - -/* Define if realloc is not declared in system header files. */ -/* #undef NEED_DECLARATION_REALLOC */ - -/* Define if free is not declared in system header files. */ -/* #undef NEED_DECLARATION_FREE */ - -/* Define if strerror is not declared in system header files. */ -/* #undef NEED_DECLARATION_STRERROR */ - -/* Define if strdup is not declared in system header files. */ -/* #undef NEED_DECLARATION_STRDUP */ - -/* Define if strstr is not declared in system header files. */ -/* #undef NEED_DECLARATION_STRSTR */ - -/* Define if canonicalize_file_name is not declared in system header files. */ -#define NEED_DECLARATION_CANONICALIZE_FILE_NAME 1 - -/* Define if has pstatus_t. */ -/* #undef HAVE_PSTATUS_T */ - -/* Define if has prrun_t. */ -/* #undef HAVE_PRRUN_T */ - -/* Define if has gregset_t. */ -#define HAVE_GREGSET_T 1 - -/* Define if has fpregset_t. */ -#define HAVE_FPREGSET_T 1 - -/* Define if has prgregset_t. */ -#define HAVE_PRGREGSET_T 1 - -/* Define if has prfpregset_t. */ -#define HAVE_PRFPREGSET_T 1 - -/* Define if has prgregset32_t. */ -/* #undef HAVE_PRGREGSET32_T */ - -/* Define if has prfpregset32_t. */ -/* #undef HAVE_PRFPREGSET32_T */ - -/* Define if has lwpid_t. */ -#define HAVE_LWPID_T 1 - -/* Define if has psaddr_t. */ -#define HAVE_PSADDR_T 1 - -/* Define if has prsysent_t. */ -/* #undef HAVE_PRSYSENT_T */ - -/* Define if has pr_sigset_t. */ -/* #undef HAVE_PR_SIGSET_T */ - -/* Define if has pr_sigaction64_t. */ -/* #undef HAVE_PR_SIGACTION64_T */ - -/* Define if has pr_siginfo64_t. */ -/* #undef HAVE_PR_SIGINFO64_T */ - -/* Define if has the TD_NOTALLOC error code. */ -/* #undef THREAD_DB_HAS_TD_NOTALLOC */ - -/* Define if we can use the tkill syscall. */ -/* #undef HAVE_TKILL_SYSCALL */ - -/* Define to the default OS ABI for this configuration. */ -/* #undef GDB_OSABI_DEFAULT */ - -/* Define to be a string naming the default host character set. */ -#define GDB_DEFAULT_HOST_CHARSET "ISO-8859-1" - -/* Define if you have the iconv() function. */ -/* #undef HAVE_ICONV */ - -/* Define as const if the declaration of iconv() needs const. */ -/* #undef ICONV_CONST */ - diff --git a/gnu/usr.bin/gdb/arch/ia64/init.c b/gnu/usr.bin/gdb/arch/ia64/init.c deleted file mode 100644 index ee383e9..0000000 --- a/gnu/usr.bin/gdb/arch/ia64/init.c +++ /dev/null @@ -1,230 +0,0 @@ -/* $FreeBSD$ */ - -/* Do not modify this file. */ -/* It is created automatically by the Makefile. */ -#include "defs.h" /* For initialize_file_ftype. */ -#include "call-cmds.h" /* For initialize_all_files. */ -extern initialize_file_ftype _initialize_gdbtypes; -extern initialize_file_ftype _initialize_corelow; -extern initialize_file_ftype _initialize_ia64_fbsd_tdep; -extern initialize_file_ftype _initialize_ia64_tdep; -extern initialize_file_ftype _initialize_solib; -extern initialize_file_ftype _initialize_svr4_solib; -extern initialize_file_ftype _initialize_ser_hardwire; -extern initialize_file_ftype _initialize_ser_pipe; -extern initialize_file_ftype _initialize_ser_tcp; -extern initialize_file_ftype _initialize_fbsd_proc; -extern initialize_file_ftype _initialize_gcore; -extern initialize_file_ftype _initialize_thread_db; -extern initialize_file_ftype _initialize_ia64_fbsd_nat; -extern initialize_file_ftype _initialize_kernel_u_addr; -extern initialize_file_ftype _initialize_infptrace; -extern initialize_file_ftype _initialize_inftarg; -extern initialize_file_ftype _initialize_remote; -extern initialize_file_ftype _initialize_dcache; -extern initialize_file_ftype _initialize_sr_support; -extern initialize_file_ftype _initialize_tracepoint; -extern initialize_file_ftype _initialize_ax_gdb; -extern initialize_file_ftype _initialize_annotate; -extern initialize_file_ftype _initialize_auxv; -extern initialize_file_ftype _initialize_breakpoint; -extern initialize_file_ftype _initialize_regcache; -extern initialize_file_ftype _initialize_charset; -extern initialize_file_ftype _initialize_dummy_frame; -extern initialize_file_ftype _initialize_source; -extern initialize_file_ftype _initialize_values; -extern initialize_file_ftype _initialize_valops; -extern initialize_file_ftype _initialize_valarith; -extern initialize_file_ftype _initialize_valprint; -extern initialize_file_ftype _initialize_printcmd; -extern initialize_file_ftype _initialize_symtab; -extern initialize_file_ftype _initialize_symfile; -extern initialize_file_ftype _initialize_symmisc; -extern initialize_file_ftype _initialize_infcall; -extern initialize_file_ftype _initialize_infcmd; -extern initialize_file_ftype _initialize_infrun; -extern initialize_file_ftype _initialize_stack; -extern initialize_file_ftype _initialize_thread; -extern initialize_file_ftype _initialize_interpreter; -extern initialize_file_ftype _initialize_macrocmd; -extern initialize_file_ftype _initialize_gdbarch; -extern initialize_file_ftype _initialize_gdbarch_utils; -extern initialize_file_ftype _initialize_gdb_osabi; -extern initialize_file_ftype _initialize_copying; -extern initialize_file_ftype _initialize_mem; -extern initialize_file_ftype _initialize_parse; -extern initialize_file_ftype _initialize_language; -extern initialize_file_ftype _initialize_frame_reg; -extern initialize_file_ftype _initialize_signals; -extern initialize_file_ftype _initialize_kod; -extern initialize_file_ftype _initialize_gdb_events; -extern initialize_file_ftype _initialize_exec; -extern initialize_file_ftype _initialize_maint_cmds; -extern initialize_file_ftype _initialize_demangler; -extern initialize_file_ftype _initialize_dbxread; -extern initialize_file_ftype _initialize_coffread; -extern initialize_file_ftype _initialize_elfread; -extern initialize_file_ftype _initialize_mipsread; -extern initialize_file_ftype _initialize_stabsread; -extern initialize_file_ftype _initialize_core; -extern initialize_file_ftype _initialize_dwarf2_frame; -extern initialize_file_ftype _initialize_c_language; -extern initialize_file_ftype _initialize_f_language; -extern initialize_file_ftype _initialize_objc_language; -extern initialize_file_ftype _initialize_ui_out; -extern initialize_file_ftype _initialize_cli_out; -extern initialize_file_ftype _initialize_varobj; -extern initialize_file_ftype _initialize_java_language; -extern initialize_file_ftype _initialize_m2_language; -extern initialize_file_ftype _initialize_pascal_language; -extern initialize_file_ftype _initialize_pascal_valprint; -extern initialize_file_ftype _initialize_scheme_language; -extern initialize_file_ftype _initialize_complaints; -extern initialize_file_ftype _initialize_typeprint; -extern initialize_file_ftype _initialize_cp_valprint; -extern initialize_file_ftype _initialize_f_valprint; -extern initialize_file_ftype _initialize_nlmread; -extern initialize_file_ftype _initialize_serial; -extern initialize_file_ftype _initialize_mdebugread; -extern initialize_file_ftype _initialize_user_regs; -extern initialize_file_ftype _initialize_frame; -extern initialize_file_ftype _initialize_frame_unwind; -extern initialize_file_ftype _initialize_frame_base; -extern initialize_file_ftype _initialize_gnu_v2_abi; -extern initialize_file_ftype _initialize_gnu_v3_abi; -extern initialize_file_ftype _initialize_hpacc_abi; -extern initialize_file_ftype _initialize_cp_abi; -extern initialize_file_ftype _initialize_cp_support; -extern initialize_file_ftype _initialize_cp_namespace; -extern initialize_file_ftype _initialize_reggroup; -extern initialize_file_ftype _initialize_inflow; -extern initialize_file_ftype _initialize_cli_dump; -extern initialize_file_ftype _initialize_cli_logging; -extern initialize_file_ftype _initialize_cli_interp; -extern initialize_file_ftype _initialize_mi_out; -extern initialize_file_ftype _initialize_mi_cmds; -extern initialize_file_ftype _initialize_mi_cmd_env; -extern initialize_file_ftype _initialize_mi_interp; -extern initialize_file_ftype _initialize_mi_main; -extern initialize_file_ftype _initialize_tui_hooks; -extern initialize_file_ftype _initialize_tui_interp; -extern initialize_file_ftype _initialize_tui_layout; -extern initialize_file_ftype _initialize_tui_out; -extern initialize_file_ftype _initialize_tui_regs; -extern initialize_file_ftype _initialize_tui_stack; -extern initialize_file_ftype _initialize_tui_win; -void -initialize_all_files (void) -{ - _initialize_gdbtypes (); - _initialize_corelow (); - _initialize_ia64_fbsd_tdep (); - _initialize_ia64_tdep (); - _initialize_solib (); - _initialize_svr4_solib (); - _initialize_ser_hardwire (); - _initialize_ser_pipe (); - _initialize_ser_tcp (); -#ifndef CROSS_DEBUGGER - _initialize_fbsd_proc (); - _initialize_gcore (); - _initialize_thread_db (); - _initialize_ia64_fbsd_nat (); - _initialize_kernel_u_addr (); - _initialize_infptrace (); - _initialize_inftarg (); -#endif - _initialize_remote (); - _initialize_dcache (); - _initialize_sr_support (); - _initialize_tracepoint (); - _initialize_ax_gdb (); - _initialize_annotate (); - _initialize_auxv (); - _initialize_breakpoint (); - _initialize_regcache (); - _initialize_charset (); - _initialize_dummy_frame (); - _initialize_source (); - _initialize_values (); - _initialize_valops (); - _initialize_valarith (); - _initialize_valprint (); - _initialize_printcmd (); - _initialize_symtab (); - _initialize_symfile (); - _initialize_symmisc (); - _initialize_infcall (); - _initialize_infcmd (); - _initialize_infrun (); - _initialize_stack (); - _initialize_thread (); - _initialize_interpreter (); - _initialize_macrocmd (); - _initialize_gdbarch (); - _initialize_gdbarch_utils (); - _initialize_gdb_osabi (); - _initialize_copying (); - _initialize_mem (); - _initialize_parse (); - _initialize_language (); - _initialize_frame_reg (); - _initialize_signals (); - _initialize_kod (); - _initialize_gdb_events (); - _initialize_exec (); - _initialize_maint_cmds (); - _initialize_demangler (); - _initialize_dbxread (); - _initialize_coffread (); - _initialize_elfread (); - _initialize_mipsread (); - _initialize_stabsread (); - _initialize_core (); - _initialize_dwarf2_frame (); - _initialize_c_language (); - _initialize_f_language (); - _initialize_objc_language (); - _initialize_ui_out (); - _initialize_cli_out (); - _initialize_varobj (); - _initialize_java_language (); - _initialize_m2_language (); - _initialize_pascal_language (); - _initialize_pascal_valprint (); - _initialize_scheme_language (); - _initialize_complaints (); - _initialize_typeprint (); - _initialize_cp_valprint (); - _initialize_f_valprint (); - _initialize_nlmread (); - _initialize_serial (); - _initialize_mdebugread (); - _initialize_user_regs (); - _initialize_frame (); - _initialize_frame_unwind (); - _initialize_frame_base (); - _initialize_gnu_v2_abi (); - _initialize_gnu_v3_abi (); - _initialize_hpacc_abi (); - _initialize_cp_abi (); - _initialize_cp_support (); - _initialize_cp_namespace (); - _initialize_reggroup (); - _initialize_inflow (); - _initialize_cli_dump (); - _initialize_cli_logging (); - _initialize_cli_interp (); - _initialize_mi_out (); - _initialize_mi_cmds (); - _initialize_mi_cmd_env (); - _initialize_mi_interp (); - _initialize_mi_main (); - _initialize_tui_hooks (); - _initialize_tui_interp (); - _initialize_tui_layout (); - _initialize_tui_out (); - _initialize_tui_regs (); - _initialize_tui_stack (); - _initialize_tui_win (); -} diff --git a/gnu/usr.bin/gdb/kgdb/trgt_ia64.c b/gnu/usr.bin/gdb/kgdb/trgt_ia64.c deleted file mode 100644 index 6ba800b..0000000 --- a/gnu/usr.bin/gdb/kgdb/trgt_ia64.c +++ /dev/null @@ -1,338 +0,0 @@ -/* - * Copyright (c) 2004 Marcel Moolenaar - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE AUTHORS ``AS IS'' AND ANY EXPRESS OR - * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES - * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. - * IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY DIRECT, INDIRECT, - * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -#include -__FBSDID("$FreeBSD$"); - -#include -#ifdef CROSS_DEBUGGER -#include -#include -#include -#include -#else -#include -#include -#include -#endif -#include -#include -#include - -#include -#include -#include -#include -#include -#include -#include - -#include "kgdb.h" - -CORE_ADDR -kgdb_trgt_core_pcb(u_int cpuid) -{ - CORE_ADDR addr; - char *expr; - - asprintf(&expr, "&cpuid_to_pcpu[%d]->pc_md.pcb", cpuid); - addr = kgdb_parse(expr); - free(expr); - return (addr); -} - -void -kgdb_trgt_fetch_registers(int regno __unused) -{ - struct kthr *kt; - struct pcb pcb; - uint64_t r; - - kt = kgdb_thr_lookup_tid(ptid_get_pid(inferior_ptid)); - if (kt == NULL) - return; - if (kvm_read(kvm, kt->pcb, &pcb, sizeof(pcb)) != sizeof(pcb)) { - warnx("kvm_read: %s", kvm_geterr(kvm)); - memset(&pcb, 0, sizeof(pcb)); - } - - /* Registers 0-127: general registers. */ - supply_register(IA64_GR1_REGNUM, (char *)&pcb.pcb_special.gp); - supply_register(IA64_GR4_REGNUM, (char *)&pcb.pcb_preserved.gr4); - supply_register(IA64_GR5_REGNUM, (char *)&pcb.pcb_preserved.gr5); - supply_register(IA64_GR6_REGNUM, (char *)&pcb.pcb_preserved.gr6); - supply_register(IA64_GR7_REGNUM, (char *)&pcb.pcb_preserved.gr7); - supply_register(IA64_GR12_REGNUM, (char *)&pcb.pcb_special.sp); - supply_register(IA64_GR12_REGNUM+1, (char *)&pcb.pcb_special.tp); - - /* Registers 128-255: floating-point registers. */ - supply_register(IA64_FR2_REGNUM, (char *)&pcb.pcb_preserved_fp.fr2); - supply_register(IA64_FR2_REGNUM+1, (char *)&pcb.pcb_preserved_fp.fr3); - supply_register(IA64_FR2_REGNUM+2, (char *)&pcb.pcb_preserved_fp.fr4); - supply_register(IA64_FR2_REGNUM+3, (char *)&pcb.pcb_preserved_fp.fr5); - supply_register(IA64_FR16_REGNUM, (char *)&pcb.pcb_preserved_fp.fr16); - supply_register(IA64_FR16_REGNUM+1, (char*)&pcb.pcb_preserved_fp.fr17); - supply_register(IA64_FR16_REGNUM+2, (char*)&pcb.pcb_preserved_fp.fr18); - supply_register(IA64_FR16_REGNUM+3, (char*)&pcb.pcb_preserved_fp.fr19); - supply_register(IA64_FR16_REGNUM+4, (char*)&pcb.pcb_preserved_fp.fr20); - supply_register(IA64_FR16_REGNUM+5, (char*)&pcb.pcb_preserved_fp.fr21); - supply_register(IA64_FR16_REGNUM+6, (char*)&pcb.pcb_preserved_fp.fr22); - supply_register(IA64_FR16_REGNUM+7, (char*)&pcb.pcb_preserved_fp.fr23); - supply_register(IA64_FR16_REGNUM+8, (char*)&pcb.pcb_preserved_fp.fr24); - supply_register(IA64_FR16_REGNUM+9, (char*)&pcb.pcb_preserved_fp.fr25); - supply_register(IA64_FR16_REGNUM+10,(char*)&pcb.pcb_preserved_fp.fr26); - supply_register(IA64_FR16_REGNUM+11,(char*)&pcb.pcb_preserved_fp.fr27); - supply_register(IA64_FR16_REGNUM+12,(char*)&pcb.pcb_preserved_fp.fr28); - supply_register(IA64_FR16_REGNUM+13,(char*)&pcb.pcb_preserved_fp.fr29); - supply_register(IA64_FR16_REGNUM+14,(char*)&pcb.pcb_preserved_fp.fr30); - supply_register(IA64_FR16_REGNUM+15,(char*)&pcb.pcb_preserved_fp.fr31); - - /* Registers 320-327: branch registers. */ - if (pcb.pcb_special.__spare == ~0UL) - supply_register(IA64_BR0_REGNUM, (char *)&pcb.pcb_special.rp); - supply_register(IA64_BR1_REGNUM, (char *)&pcb.pcb_preserved.br1); - supply_register(IA64_BR2_REGNUM, (char *)&pcb.pcb_preserved.br2); - supply_register(IA64_BR3_REGNUM, (char *)&pcb.pcb_preserved.br3); - supply_register(IA64_BR4_REGNUM, (char *)&pcb.pcb_preserved.br4); - supply_register(IA64_BR5_REGNUM, (char *)&pcb.pcb_preserved.br5); - - /* Registers 328-333: misc. other registers. */ - supply_register(IA64_PR_REGNUM, (char *)&pcb.pcb_special.pr); - if (pcb.pcb_special.__spare == ~0UL) { - r = pcb.pcb_special.iip + ((pcb.pcb_special.psr >> 41) & 3); - supply_register(IA64_IP_REGNUM, (char *)&r); - supply_register(IA64_CFM_REGNUM, (char *)&pcb.pcb_special.cfm); - } else { - supply_register(IA64_IP_REGNUM, (char *)&pcb.pcb_special.rp); - supply_register(IA64_CFM_REGNUM, (char *)&pcb.pcb_special.pfs); - } - - /* Registers 334-461: application registers. */ - supply_register(IA64_RSC_REGNUM, (char *)&pcb.pcb_special.rsc); - r = pcb.pcb_special.bspstore; - if (pcb.pcb_special.__spare == ~0UL) - r += pcb.pcb_special.ndirty; - else - r = ia64_bsp_adjust(r, IA64_CFM_SOF(pcb.pcb_special.pfs) - - IA64_CFM_SOL(pcb.pcb_special.pfs)); - supply_register(IA64_BSP_REGNUM, (char *)&r); - supply_register(IA64_BSPSTORE_REGNUM, (char *)&r); - supply_register(IA64_RNAT_REGNUM, (char *)&pcb.pcb_special.rnat); - supply_register(IA64_UNAT_REGNUM, (char *)&pcb.pcb_special.unat); - supply_register(IA64_FPSR_REGNUM, (char *)&pcb.pcb_special.fpsr); - if (pcb.pcb_special.__spare == ~0UL) - supply_register(IA64_PFS_REGNUM, (char *)&pcb.pcb_special.pfs); - supply_register(IA64_LC_REGNUM, (char *)&pcb.pcb_preserved.lc); -} - -void -kgdb_trgt_store_registers(int regno __unused) -{ - fprintf_unfiltered(gdb_stderr, "XXX: %s\n", __func__); -} - -void -kgdb_trgt_new_objfile(struct objfile *objfile) -{ -} - -struct kgdb_frame_cache { - CORE_ADDR bsp; - CORE_ADDR ip; - CORE_ADDR sp; - CORE_ADDR saved_bsp; -}; - -#define SPECIAL(x) offsetof(struct trapframe, tf_special) \ - + offsetof(struct _special, x) -#define SCRATCH(x) offsetof(struct trapframe, tf_scratch) \ - + offsetof(struct _caller_saved, x) -#define SCRATCH_FP(x) offsetof(struct trapframe, tf_scratch_fp) \ - + offsetof(struct _caller_saved_fp, x) - -static int kgdb_trgt_frame_ofs_gr[32] = { - -1, /* gr0 */ - SPECIAL(gp), - SCRATCH(gr2), SCRATCH(gr3), - -1, -1, -1, -1, /* gr4-gr7 */ - SCRATCH(gr8), SCRATCH(gr9), SCRATCH(gr10), SCRATCH(gr11), - SPECIAL(sp), SPECIAL(tp), - SCRATCH(gr14), SCRATCH(gr15), SCRATCH(gr16), SCRATCH(gr17), - SCRATCH(gr18), SCRATCH(gr19), SCRATCH(gr20), SCRATCH(gr21), - SCRATCH(gr22), SCRATCH(gr23), SCRATCH(gr24), SCRATCH(gr25), - SCRATCH(gr26), SCRATCH(gr27), SCRATCH(gr28), SCRATCH(gr29), - SCRATCH(gr30), SCRATCH(gr31) -}; - -static int kgdb_trgt_frame_ofs_fr[32] = { - -1, /* fr0: constant 0.0 */ - -1, /* fr1: constant 1.0 */ - -1, -1, -1, -1, /* fr2-fr5 */ - SCRATCH_FP(fr6), SCRATCH_FP(fr7), SCRATCH_FP(fr8), SCRATCH_FP(fr9), - SCRATCH_FP(fr10), SCRATCH_FP(fr11), SCRATCH_FP(fr12), SCRATCH_FP(fr13), - SCRATCH_FP(fr14), SCRATCH_FP(fr15) -}; - -static int kgdb_trgt_frame_ofs_br[8] = { - SPECIAL(rp), - -1, -1, -1, -1, -1, /* br1-br5 */ - SCRATCH(br6), SCRATCH(br7) -}; - -static int kgdb_trgt_frame_ofs_ar[49] = { - /* ar0-ar15 */ - SPECIAL(rsc), - -1, /* ar.bsp */ - SPECIAL(bspstore), SPECIAL(rnat), - -1, -1, -1, -1, -1, /* ar20-ar24 */ - SCRATCH(csd), SCRATCH(ssd), - -1, -1, -1, -1, -1, /* ar27-ar31 */ - SCRATCH(ccv), - -1, -1, -1, /* ar33-ar35 */ - SPECIAL(unat), - -1, -1, -1, /* ar37-ar39 */ - SPECIAL(fpsr), - -1, -1, -1, -1, -1, -1, -1, /* ar41-ar47 */ - -1, -1, -1, -1, -1, -1, -1, -1, /* ar48-ar55 */ - -1, -1, -1, -1, -1, -1, -1, -1, /* ar56-ar63 */ - SPECIAL(pfs) -}; - -static struct kgdb_frame_cache * -kgdb_trgt_frame_cache(struct frame_info *next_frame, void **this_cache) -{ - char buf[MAX_REGISTER_SIZE]; - struct kgdb_frame_cache *cache; - - cache = *this_cache; - if (cache == NULL) { - cache = FRAME_OBSTACK_ZALLOC(struct kgdb_frame_cache); - *this_cache = cache; - frame_unwind_register(next_frame, IA64_BSP_REGNUM, buf); - cache->bsp = extract_unsigned_integer(buf, - register_size(current_gdbarch, IA64_BSP_REGNUM)); - cache->ip = frame_func_unwind(next_frame); - frame_unwind_register(next_frame, SP_REGNUM, buf); - cache->sp = extract_unsigned_integer(buf, - register_size(current_gdbarch, SP_REGNUM)); - } - return (cache); -} - -static void -kgdb_trgt_trapframe_this_id(struct frame_info *next_frame, void **this_cache, - struct frame_id *this_id) -{ - struct kgdb_frame_cache *cache; - - cache = kgdb_trgt_frame_cache(next_frame, this_cache); - *this_id = frame_id_build_special(cache->sp, cache->ip, cache->bsp); -} - -static void -kgdb_trgt_trapframe_prev_register(struct frame_info *next_frame, - void **this_cache, int regnum, int *optimizedp, enum lval_type *lvalp, - CORE_ADDR *addrp, int *realnump, void *valuep) -{ - char buf[MAX_REGISTER_SIZE]; - char dummy_valuep[MAX_REGISTER_SIZE]; - struct kgdb_frame_cache *cache; - CORE_ADDR bsp; - int ofs, regsz; - - regsz = register_size(current_gdbarch, regnum); - - if (valuep == NULL) - valuep = dummy_valuep; - memset(valuep, 0, regsz); - *optimizedp = 0; - *addrp = 0; - *lvalp = not_lval; - *realnump = -1; - - cache = kgdb_trgt_frame_cache(next_frame, this_cache); - - if (regnum == IA64_BSP_REGNUM) { - if (cache->saved_bsp == 0) { - target_read_memory(cache->sp + 16 + SPECIAL(bspstore), - buf, regsz); - bsp = extract_unsigned_integer(buf, regsz); - target_read_memory(cache->sp + 16 + SPECIAL(ndirty), - buf, regsz); - bsp += extract_unsigned_integer(buf, regsz); - cache->saved_bsp = bsp; - } - store_unsigned_integer(valuep, regsz, cache->saved_bsp); - return; - } - if (regnum == IA64_PR_REGNUM) - ofs = SPECIAL(pr); - else if (regnum == IA64_IP_REGNUM) - ofs = SPECIAL(iip); - else if (regnum == IA64_PSR_REGNUM) - ofs = SPECIAL(psr); - else if (regnum == IA64_CFM_REGNUM) - ofs = SPECIAL(cfm); - else if (regnum >= IA64_GR0_REGNUM && regnum <= IA64_GR31_REGNUM) - ofs = kgdb_trgt_frame_ofs_gr[regnum - IA64_GR0_REGNUM]; - else if (regnum >= IA64_FR0_REGNUM && regnum <= IA64_FR15_REGNUM) - ofs = kgdb_trgt_frame_ofs_fr[regnum - IA64_FR0_REGNUM]; - else if (regnum >= IA64_BR0_REGNUM && regnum <= IA64_BR7_REGNUM) - ofs = kgdb_trgt_frame_ofs_br[regnum - IA64_BR0_REGNUM]; - else if (regnum >= IA64_RSC_REGNUM && regnum <= IA64_PFS_REGNUM) - ofs = kgdb_trgt_frame_ofs_ar[regnum - IA64_RSC_REGNUM]; - else - ofs = -1; - if (ofs == -1) - return; - - *addrp = cache->sp + 16 + ofs; - *lvalp = lval_memory; - target_read_memory(*addrp, valuep, regsz); -} - -static const struct frame_unwind kgdb_trgt_trapframe_unwind = { - UNKNOWN_FRAME, - &kgdb_trgt_trapframe_this_id, - &kgdb_trgt_trapframe_prev_register -}; - -const struct frame_unwind * -kgdb_trgt_trapframe_sniffer(struct frame_info *next_frame) -{ - char *pname; - CORE_ADDR ip; - - ip = frame_func_unwind(next_frame); - pname = NULL; - find_pc_partial_function(ip, &pname, NULL, NULL); - if (pname == NULL) - return (NULL); - if (strncmp(pname, "ivt_", 4) == 0) - return (&kgdb_trgt_trapframe_unwind); - /* printf("%s: %lx =%s\n", __func__, ip, pname); */ - return (NULL); -} -- cgit v1.1 From e7ca650bbfc99db17a3561f185163dfcb787b6d0 Mon Sep 17 00:00:00 2001 From: bapt Date: Wed, 9 Jul 2014 15:52:30 +0000 Subject: The GNU readline library is now an INTERNALLIB - that is, it is statically linked into consumers (GDB and variants) in the base system, and the shared library is no longer installed. That also allows ports to be able to use a modern version of readline PR: 162948 Reviewed by: emaste --- gnu/lib/libreadline/Makefile | 2 +- gnu/lib/libreadline/history/Makefile | 15 --------------- gnu/lib/libreadline/history/doc/Makefile | 12 ------------ gnu/lib/libreadline/readline/Makefile | 22 ++++++++++++---------- gnu/lib/libreadline/readline/doc/Makefile | 20 -------------------- gnu/usr.bin/gdb/Makefile.inc | 3 +++ gnu/usr.bin/gdb/gdb/Makefile | 2 +- gnu/usr.bin/gdb/gdbtui/Makefile | 2 +- gnu/usr.bin/gdb/kgdb/Makefile | 2 +- 9 files changed, 19 insertions(+), 61 deletions(-) delete mode 100644 gnu/lib/libreadline/history/Makefile delete mode 100644 gnu/lib/libreadline/history/doc/Makefile delete mode 100644 gnu/lib/libreadline/readline/doc/Makefile (limited to 'gnu') diff --git a/gnu/lib/libreadline/Makefile b/gnu/lib/libreadline/Makefile index 637dcc8..c2bfa66 100644 --- a/gnu/lib/libreadline/Makefile +++ b/gnu/lib/libreadline/Makefile @@ -1,5 +1,5 @@ # $FreeBSD$ -SUBDIR = history readline +SUBDIR = readline .include diff --git a/gnu/lib/libreadline/history/Makefile b/gnu/lib/libreadline/history/Makefile deleted file mode 100644 index 1602872..0000000 --- a/gnu/lib/libreadline/history/Makefile +++ /dev/null @@ -1,15 +0,0 @@ -# $FreeBSD$ - -SUBDIR= doc - -LIB= history -MAN= rlhistory.3 - -SRCS= $(HISTSRC) xmalloc.c - -rlhistory.3: doc/history.3 - cp -f ${.ALLSRC} ${.TARGET} - -CLEANFILES+= rlhistory.3 - -.include diff --git a/gnu/lib/libreadline/history/doc/Makefile b/gnu/lib/libreadline/history/doc/Makefile deleted file mode 100644 index 4b050e7..0000000 --- a/gnu/lib/libreadline/history/doc/Makefile +++ /dev/null @@ -1,12 +0,0 @@ -# $FreeBSD$ - -SRCDIR= ${.CURDIR}/../../../../../contrib/libreadline/doc - -INFO = history - -INFOSECTION= "Programming & development tools." -INFOENTRY_history= "* History: (history). The GNU History library." - -history.info: history.texi hstech.texi hsuser.texi version.texi fdl.texi - -.include diff --git a/gnu/lib/libreadline/readline/Makefile b/gnu/lib/libreadline/readline/Makefile index fab4aa2..6ebea3a 100644 --- a/gnu/lib/libreadline/readline/Makefile +++ b/gnu/lib/libreadline/readline/Makefile @@ -1,10 +1,8 @@ # $FreeBSD$ -SUBDIR= doc - LIB= readline -MAN= doc/readline.3 -SHLIBDIR?= /lib +INTERNALLIB= yes +NO_MAN= yes TILDESRC= tilde.c SRCS= readline.c vi_mode.c funmap.c keymaps.c parens.c search.c \ @@ -15,13 +13,17 @@ SRCS= readline.c vi_mode.c funmap.c keymaps.c parens.c search.c \ INSTALLED_HEADERS= readline.h chardefs.h keymaps.h history.h tilde.h \ rlstdc.h rlconf.h rltypedefs.h -DPADD= ${LIBTERMCAP} -LDADD= -ltermcap - -INCSDIR=${INCLUDEDIR}/readline +CFLAGS+= -I${.OBJDIR}/.. +SRCDIR= ${.CURDIR}/../../../../contrib/libreadline -.for hdr in ${INSTALLED_HEADERS} -INCS+= ${SRCDIR}/${hdr} +.for _h in ${INSTALLED_HEADERS} +CLEANFILES+= ${_h} +DPSRCS+= ${.OBJDIR}/${_h} +${.OBJDIR}/${_h}: ${SRCDIR}/${_h} + ${INSTALL} ${.ALLSRC} ${.TARGET} .endfor +DPADD= ${LIBTERMCAP} +LDADD= -ltermcap + .include diff --git a/gnu/lib/libreadline/readline/doc/Makefile b/gnu/lib/libreadline/readline/doc/Makefile deleted file mode 100644 index 7028971..0000000 --- a/gnu/lib/libreadline/readline/doc/Makefile +++ /dev/null @@ -1,20 +0,0 @@ -# $FreeBSD$ - -SRCDIR= ${.CURDIR}/../../../../../contrib/libreadline/doc - -INFO = readline rluserman - -INFOSECTION= "Programming & development tools." -INFOENTRY_readline= "* Readline: (readline). The GNU Readline library" -INFOENTRY_rluserman= "* Readline: (readline). The GNU readline library API" - -CLEANFILES += readline.texi - -readline.info: rlman.texi rluser.texi rltech.texi version.texi fdl.texi - -readline.texi: rlman.texi - cp -f ${SRCDIR}/rlman.texi ${.TARGET} - -rluserman.info: rluserman.texi version.texi rluser.texi fdl.texi - -.include diff --git a/gnu/usr.bin/gdb/Makefile.inc b/gnu/usr.bin/gdb/Makefile.inc index 6679022..4912e0c6 100644 --- a/gnu/usr.bin/gdb/Makefile.inc +++ b/gnu/usr.bin/gdb/Makefile.inc @@ -15,6 +15,8 @@ CNTRB_RL= ${CNTRB_ROOT}/libreadline OBJ_ROOT= ${.OBJDIR}/../.. OBJ_BU= ${OBJ_ROOT}/binutils OBJ_GDB= ${OBJ_ROOT}/gdb +OBJ_RL= ${OBJ_ROOT}/../lib/libreadline/readline +LIBREADLINE= ${OBJ_ROOT}/../lib/libreadline/readline/libreadline.a # These assignments duplicate much of the functionality of # MACHINE_CPUARCH, but there's no easy way to export make functions... @@ -46,6 +48,7 @@ CFLAGS+= -I${CNTRB_GDB}/gdb/config CFLAGS+= -I${CNTRB_BU}/include CFLAGS+= -I${CNTRB_GDB}/include CFLAGS+= -I${CNTRB_BU}/bfd +CFLAGS+= -I${OBJ_RL}/.. GENSRCS+= nm.h tm.h diff --git a/gnu/usr.bin/gdb/gdb/Makefile b/gnu/usr.bin/gdb/gdb/Makefile index 23a3072..473ffa3 100644 --- a/gnu/usr.bin/gdb/gdb/Makefile +++ b/gnu/usr.bin/gdb/gdb/Makefile @@ -12,7 +12,7 @@ GDBLIBS= ${OBJ_GDB}/libgdb/libgdb.a LDFLAGS+= -Wl,-E DPADD= ${GDBLIBS} ${BULIBS} ${LIBM} ${LIBREADLINE} ${LIBTERMCAP} ${LIBGNUREGEX} -LDADD= ${GDBLIBS} ${BULIBS} -lm -lreadline -ltermcap -lgnuregex +LDADD= ${GDBLIBS} ${BULIBS} -lm ${LIBREADLINE} -ltermcap -lgnuregex NO_PIE= yes diff --git a/gnu/usr.bin/gdb/gdbtui/Makefile b/gnu/usr.bin/gdb/gdbtui/Makefile index d3651b4..34946ea 100644 --- a/gnu/usr.bin/gdb/gdbtui/Makefile +++ b/gnu/usr.bin/gdb/gdbtui/Makefile @@ -13,7 +13,7 @@ GDBLIBS= ${OBJ_GDB}/libgdb/libgdb.a LDFLAGS+= -Wl,-E DPADD= ${GDBLIBS} ${BULIBS} ${LIBM} ${LIBREADLINE} ${LIBTERMCAP} ${LIBGNUREGEX} -LDADD= ${GDBLIBS} ${BULIBS} -lm -lreadline -ltermcap -lgnuregex +LDADD= ${GDBLIBS} ${BULIBS} -lm ${LIBREADLINE} -ltermcap -lgnuregex NO_PIE= yes diff --git a/gnu/usr.bin/gdb/kgdb/Makefile b/gnu/usr.bin/gdb/kgdb/Makefile index 9543ad0..7a7542a 100644 --- a/gnu/usr.bin/gdb/kgdb/Makefile +++ b/gnu/usr.bin/gdb/kgdb/Makefile @@ -10,7 +10,7 @@ GDBLIBS= ${OBJ_GDB}/libgdb/libgdb.a DPADD= ${GDBLIBS} ${BULIBS} ${LIBKVM} ${LIBM} ${LIBREADLINE} ${LIBTERMCAP} \ ${LIBGNUREGEX} -LDADD= ${GDBLIBS} ${BULIBS} -lkvm${GDB_SUFFIX} -lm -lreadline -ltermcap \ +LDADD= ${GDBLIBS} ${BULIBS} -lkvm${GDB_SUFFIX} -lm ${LIBREADLINE} -ltermcap \ -lgnuregex .if defined(GDB_CROSS_DEBUGGER) -- cgit v1.1 From d284902e1150565feea2878bd56b6a4080a7aad9 Mon Sep 17 00:00:00 2001 From: imp Date: Thu, 10 Jul 2014 21:11:48 +0000 Subject: Make MK_GNUCXX mean "build the libstdc++ and libsupc++ libraries" and nothing more. Force it to be "no" when MK_CXX is "no" to simplify usage. It no longer also means "build g++" since we no longer have a platform where that's interesting now that pc98 no longer needs clang and gcc, but not g++. pc98 now just uses clang after boot2 changes. --- gnu/lib/Makefile | 2 +- gnu/usr.bin/cc/Makefile | 7 +------ 2 files changed, 2 insertions(+), 7 deletions(-) (limited to 'gnu') diff --git a/gnu/lib/Makefile b/gnu/lib/Makefile index 2651eef..373c280 100644 --- a/gnu/lib/Makefile +++ b/gnu/lib/Makefile @@ -14,7 +14,7 @@ SUBDIR+= tests # libsupc++ uses libstdc++ headers, although 'make includes' should # have taken care of that already. -.if ${MK_GNUCXX} != "no" && ${MK_CXX} != "no" +.if ${MK_GNUCXX} != "no" SUBDIR+= libstdc++ libsupc++ .endif diff --git a/gnu/usr.bin/cc/Makefile b/gnu/usr.bin/cc/Makefile index 313aaf2..8191ea4 100644 --- a/gnu/usr.bin/cc/Makefile +++ b/gnu/usr.bin/cc/Makefile @@ -12,12 +12,7 @@ SUBDIR+= cpp .endif .if ${MK_CXX} != "no" -.if ${MK_GNUCXX} != "no" -SUBDIR+= cc1plus c++ -.endif -# This should be moved into the above block once c++filt from elftoolchain or -# similar is provided. -SUBDIR+= c++filt +SUBDIR+= cc1plus c++ c++filt .endif .if ${MK_GCOV} != "no" -- cgit v1.1 From ea5a037d1f7b17969046da0165700dcc51245472 Mon Sep 17 00:00:00 2001 From: brooks Date: Thu, 17 Jul 2014 18:24:34 +0000 Subject: Replace all uses of libncurses and libtermcap with their wide character variants. This allows usable file system images (i.e. those with both a shell and an editor) to be created with only one copy of the curses library. Exp-run: antoine PR: 189842 Discussed with: bapt Sponsored by: DARPA, AFRL --- gnu/lib/libreadline/readline/Makefile | 4 ++-- gnu/usr.bin/gdb/gdb/Makefile | 4 ++-- gnu/usr.bin/gdb/gdbtui/Makefile | 4 ++-- gnu/usr.bin/gdb/kgdb/Makefile | 4 ++-- gnu/usr.bin/texinfo/info/Makefile | 4 ++-- 5 files changed, 10 insertions(+), 10 deletions(-) (limited to 'gnu') diff --git a/gnu/lib/libreadline/readline/Makefile b/gnu/lib/libreadline/readline/Makefile index 6ebea3a..f09e943 100644 --- a/gnu/lib/libreadline/readline/Makefile +++ b/gnu/lib/libreadline/readline/Makefile @@ -23,7 +23,7 @@ ${.OBJDIR}/${_h}: ${SRCDIR}/${_h} ${INSTALL} ${.ALLSRC} ${.TARGET} .endfor -DPADD= ${LIBTERMCAP} -LDADD= -ltermcap +DPADD= ${LIBTERMCAPW} +LDADD= -ltermcapw .include diff --git a/gnu/usr.bin/gdb/gdb/Makefile b/gnu/usr.bin/gdb/gdb/Makefile index 473ffa3..9da4da1 100644 --- a/gnu/usr.bin/gdb/gdb/Makefile +++ b/gnu/usr.bin/gdb/gdb/Makefile @@ -11,8 +11,8 @@ GDBLIBS= ${OBJ_GDB}/libgdb/libgdb.a # global symbols visible. LDFLAGS+= -Wl,-E -DPADD= ${GDBLIBS} ${BULIBS} ${LIBM} ${LIBREADLINE} ${LIBTERMCAP} ${LIBGNUREGEX} -LDADD= ${GDBLIBS} ${BULIBS} -lm ${LIBREADLINE} -ltermcap -lgnuregex +DPADD= ${GDBLIBS} ${BULIBS} ${LIBM} ${LIBREADLINE} ${LIBTERMCAPW} ${LIBGNUREGEX} +LDADD= ${GDBLIBS} ${BULIBS} -lm ${LIBREADLINE} -ltermcapw -lgnuregex NO_PIE= yes diff --git a/gnu/usr.bin/gdb/gdbtui/Makefile b/gnu/usr.bin/gdb/gdbtui/Makefile index 34946ea..8369b7f 100644 --- a/gnu/usr.bin/gdb/gdbtui/Makefile +++ b/gnu/usr.bin/gdb/gdbtui/Makefile @@ -12,8 +12,8 @@ GDBLIBS= ${OBJ_GDB}/libgdb/libgdb.a # global symbols visible. LDFLAGS+= -Wl,-E -DPADD= ${GDBLIBS} ${BULIBS} ${LIBM} ${LIBREADLINE} ${LIBTERMCAP} ${LIBGNUREGEX} -LDADD= ${GDBLIBS} ${BULIBS} -lm ${LIBREADLINE} -ltermcap -lgnuregex +DPADD= ${GDBLIBS} ${BULIBS} ${LIBM} ${LIBREADLINE} ${LIBTERMCAPW} ${LIBGNUREGEX} +LDADD= ${GDBLIBS} ${BULIBS} -lm ${LIBREADLINE} -ltermcapw -lgnuregex NO_PIE= yes diff --git a/gnu/usr.bin/gdb/kgdb/Makefile b/gnu/usr.bin/gdb/kgdb/Makefile index 7a7542a..bbc886b 100644 --- a/gnu/usr.bin/gdb/kgdb/Makefile +++ b/gnu/usr.bin/gdb/kgdb/Makefile @@ -8,9 +8,9 @@ BULIBS= ${OBJ_BU}/libbfd/libbfd.a ${OBJ_BU}/libopcodes/libopcodes.a \ ${OBJ_BU}/libiberty/libiberty.a GDBLIBS= ${OBJ_GDB}/libgdb/libgdb.a -DPADD= ${GDBLIBS} ${BULIBS} ${LIBKVM} ${LIBM} ${LIBREADLINE} ${LIBTERMCAP} \ +DPADD= ${GDBLIBS} ${BULIBS} ${LIBKVM} ${LIBM} ${LIBREADLINE} ${LIBTERMCAPW} \ ${LIBGNUREGEX} -LDADD= ${GDBLIBS} ${BULIBS} -lkvm${GDB_SUFFIX} -lm ${LIBREADLINE} -ltermcap \ +LDADD= ${GDBLIBS} ${BULIBS} -lkvm${GDB_SUFFIX} -lm ${LIBREADLINE} -ltermcapw \ -lgnuregex .if defined(GDB_CROSS_DEBUGGER) diff --git a/gnu/usr.bin/texinfo/info/Makefile b/gnu/usr.bin/texinfo/info/Makefile index a68a1c6..de95af6 100644 --- a/gnu/usr.bin/texinfo/info/Makefile +++ b/gnu/usr.bin/texinfo/info/Makefile @@ -10,8 +10,8 @@ SRCS= dir.c display.c doc.c dribble.c echo-area.c filesys.c \ CFLAGS+= -DINFODIR=\"${INFODIR}:/usr/local/info:.\" -DPADD= ${LIBTERMCAP} ${LIBTXI} -LDADD= -ltermcap ${LIBTXI} +DPADD= ${LIBTERMCAPW} ${LIBTXI} +LDADD= -ltermcapw ${LIBTXI} NO_PIE= yes -- cgit v1.1