diff options
author | jlam <jlam> | 2004-08-27 03:45:08 +0000 |
---|---|---|
committer | jlam <jlam> | 2004-08-27 03:45:08 +0000 |
commit | c6716b56fa87f289520f990686f8c7eab47b495f (patch) | |
tree | bda7db559cd31cbe91e38f167027a433937747a4 /textproc/nbsed | |
parent | 8782d37a3a507737145bbca45476cff58290edb7 (diff) | |
download | pkgsrc-c6716b56fa87f289520f990686f8c7eab47b495f.tar.gz |
Simplify the import structure by keeping the "sed" name, and using the
configure script's --program-transform-name to install as "nbsed". Also
add a cat-ready nbsed.0 file.
Diffstat (limited to 'textproc/nbsed')
-rw-r--r-- | textproc/nbsed/Makefile | 22 | ||||
-rw-r--r-- | textproc/nbsed/PLIST | 3 | ||||
-rw-r--r-- | textproc/nbsed/files/Makefile.in | 30 | ||||
-rwxr-xr-x | textproc/nbsed/files/configure | 20 | ||||
-rw-r--r-- | textproc/nbsed/files/configure.ac | 4 | ||||
-rw-r--r-- | textproc/nbsed/files/sed.1 (renamed from textproc/nbsed/files/nbsed.1) | 2 | ||||
-rw-r--r-- | textproc/nbsed/files/sed.cat1 | 326 | ||||
-rwxr-xr-x | textproc/nbsed/files/sed2nbcompat | 13 |
8 files changed, 375 insertions, 45 deletions
diff --git a/textproc/nbsed/Makefile b/textproc/nbsed/Makefile index aa2062fc9d3..b67dbcffe10 100644 --- a/textproc/nbsed/Makefile +++ b/textproc/nbsed/Makefile @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.8 2004/08/21 08:39:54 jlam Exp $ +# $NetBSD: Makefile,v 1.9 2004/08/27 03:45:08 jlam Exp $ DISTNAME= nbsed-20040821 CATEGORIES= textproc pkgtools @@ -9,12 +9,20 @@ MAINTAINER= tech-pkg@NetBSD.org HOMEPAGE= http://www.NetBSD.org/ COMMENT= NetBSD-current's sed(1) -NO_CHECKSUM= # defined -GNU_CONFIGURE= # defined +USE_BUILDLINK3= yes +NO_CHECKSUM= yes +GNU_CONFIGURE= yes +CONFIGURE_ARGS+= --program-transform-name="s,sed,nbsed," -post-extract: - ${MKDIR} ${WRKSRC} - cd ${FILESDIR} && ${PAX} -rwpe . ${WRKSRC} +.include "../../mk/bsd.prefs.mk" + +.if defined(LIBNBCOMPAT_STYLE) && (${LIBNBCOMPAT_STYLE} == "inplace") +. include "../../pkgtools/libnbcompat/inplace.mk" +.else +. include "../../pkgtools/libnbcompat/buildlink3.mk" +.endif + +do-extract: + @${CP} -Rp ${FILESDIR} ${WRKSRC} -.include "../../pkgtools/libnbcompat/inplace.mk" .include "../../mk/bsd.pkg.mk" diff --git a/textproc/nbsed/PLIST b/textproc/nbsed/PLIST index 2bd23ed3f71..1ddd55e12f3 100644 --- a/textproc/nbsed/PLIST +++ b/textproc/nbsed/PLIST @@ -1,3 +1,4 @@ -@comment $NetBSD: PLIST,v 1.1.1.1 2003/08/18 17:34:54 agc Exp $ +@comment $NetBSD: PLIST,v 1.2 2004/08/27 03:45:08 jlam Exp $ bin/nbsed +man/cat1/nbsed.0 man/man1/nbsed.1 diff --git a/textproc/nbsed/files/Makefile.in b/textproc/nbsed/files/Makefile.in index 1e3889a1f6d..3f301d271f6 100644 --- a/textproc/nbsed/files/Makefile.in +++ b/textproc/nbsed/files/Makefile.in @@ -1,4 +1,4 @@ -# $Id: Makefile.in,v 1.3 2004/08/23 02:58:58 jlam Exp $ +# $Id: Makefile.in,v 1.4 2004/08/27 03:45:08 jlam Exp $ @SET_MAKE@ SHELL = @SHELL@ @@ -52,16 +52,16 @@ missing mkinstalldirs regress.sh .c.o: $(COMPILE) -c $< -o $@ -all: nbsed +all: sed -nbsed: $(OBJS) +sed: $(OBJS) $(LINK) $(OBJS) $(LIBS) -check: nbsed +check: sed @SHELL@ $(srcdir)/regress.sh clean: - rm -f *.o nbsed + rm -f *.o sed distclean: clean rm -f Makefile config.h @@ -70,18 +70,22 @@ distclean: clean maintainer-clean: distclean rm -f configure config.h.in -install: nbsed +install: sed $(mkinstalldirs) $(DESTDIR)$(bindir) - @f=`echo nbsed|sed '$(transform)'`; \ - echo "$(INSTALL_PROGRAM) nbsed $(DESTDIR)$(bindir)/$$f"; \ - $(INSTALL_PROGRAM) nbsed $(DESTDIR)$(bindir)/$$f + @f=`echo sed|sed '$(transform)'`; \ + echo "$(INSTALL_PROGRAM) sed $(DESTDIR)$(bindir)/$$f"; \ + $(INSTALL_PROGRAM) sed $(DESTDIR)$(bindir)/$$f $(mkinstalldirs) $(DESTDIR)$(mandir)/man1 - @f=`echo nbsed.1|sed '$(transform)'`; \ - echo "$(INSTALL_DATA) nbsed.1 $(DESTDIR)$(mandir)/man1/$$f"; \ - $(INSTALL_DATA) nbsed.1 $(DESTDIR)$(mandir)/man1/$$f + @f=`echo sed.1|sed '$(transform)'`; \ + echo "$(INSTALL_DATA) sed.1 $(DESTDIR)$(mandir)/man1/$$f"; \ + $(INSTALL_DATA) sed.1 $(DESTDIR)$(mandir)/man1/$$f + $(mkinstalldirs) $(DESTDIR)$(mandir)/cat1 + @f=`echo sed.cat1|sed '$(transform);s,\.cat1$$,.0,'`; \ + echo "$(INSTALL_DATA) sed.cat1 $(DESTDIR)$(mandir)/cat1/$$f"; \ + $(INSTALL_DATA) sed.cat1 $(DESTDIR)$(mandir)/cat1/$$f uninstall: - @f=`echo nbsed|sed '$(transform)'`; \ + @f=`echo sed|sed '$(transform)'`; \ echo " rm -f $(DESTDIR)$(bindir)/$$f"; \ rm -f $(DESTDIR)$(bindir)/$$f diff --git a/textproc/nbsed/files/configure b/textproc/nbsed/files/configure index e4ce585d6f6..8bfeeff73eb 100755 --- a/textproc/nbsed/files/configure +++ b/textproc/nbsed/files/configure @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.59 for nbsed 20040821. +# Generated by GNU Autoconf 2.59 for sed 20040821. # # Report bugs to <agc@NetBSD.org>. # @@ -267,10 +267,10 @@ SHELL=${CONFIG_SHELL-/bin/sh} : ${ac_max_here_lines=38} # Identity of this package. -PACKAGE_NAME='nbsed' -PACKAGE_TARNAME='nbsed' +PACKAGE_NAME='sed' +PACKAGE_TARNAME='sed' PACKAGE_VERSION='20040821' -PACKAGE_STRING='nbsed 20040821' +PACKAGE_STRING='sed 20040821' PACKAGE_BUGREPORT='agc@NetBSD.org' ac_unique_file="main.c" @@ -780,7 +780,7 @@ if test "$ac_init_help" = "long"; then # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures nbsed 20040821 to adapt to many kinds of systems. +\`configure' configures sed 20040821 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -846,7 +846,7 @@ fi if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of nbsed 20040821:";; + short | recursive ) echo "Configuration of sed 20040821:";; esac cat <<\_ACEOF @@ -958,7 +958,7 @@ fi test -n "$ac_init_help" && exit 0 if $ac_init_version; then cat <<\_ACEOF -nbsed configure 20040821 +sed configure 20040821 generated by GNU Autoconf 2.59 Copyright (C) 2003 Free Software Foundation, Inc. @@ -972,7 +972,7 @@ cat >&5 <<_ACEOF This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by nbsed $as_me 20040821, which was +It was created by sed $as_me 20040821, which was generated by GNU Autoconf 2.59. Invocation command line was $ $0 $@ @@ -4973,7 +4973,7 @@ _ASBOX } >&5 cat >&5 <<_CSEOF -This file was extended by nbsed $as_me 20040821, which was +This file was extended by sed $as_me 20040821, which was generated by GNU Autoconf 2.59. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -5033,7 +5033,7 @@ _ACEOF cat >>$CONFIG_STATUS <<_ACEOF ac_cs_version="\\ -nbsed config.status 20040821 +sed config.status 20040821 configured by $0, generated by GNU Autoconf 2.59, with options \\"`echo "$ac_configure_args" | sed 's/[\\""\`\$]/\\\\&/g'`\\" diff --git a/textproc/nbsed/files/configure.ac b/textproc/nbsed/files/configure.ac index ff2969e9c98..c510894a0f8 100644 --- a/textproc/nbsed/files/configure.ac +++ b/textproc/nbsed/files/configure.ac @@ -1,7 +1,7 @@ -dnl $Id: configure.ac,v 1.7 2004/08/23 02:58:58 jlam Exp $ +dnl $Id: configure.ac,v 1.8 2004/08/27 03:45:08 jlam Exp $ dnl Process this file with autoconf to produce a configure script. AC_PREREQ(2.57) -AC_INIT([nbsed],[20040821],[agc@NetBSD.org]) +AC_INIT([sed],[20040821],[agc@NetBSD.org]) AC_CONFIG_SRCDIR([main.c]) AC_CONFIG_HEADER(config.h) AC_ARG_PROGRAM diff --git a/textproc/nbsed/files/nbsed.1 b/textproc/nbsed/files/sed.1 index c073994f614..eb630bc018b 100644 --- a/textproc/nbsed/files/nbsed.1 +++ b/textproc/nbsed/files/sed.1 @@ -1,4 +1,4 @@ -.\" $NetBSD: nbsed.1,v 1.5 2004/07/25 05:40:25 grant Exp $ +.\" $NetBSD: sed.1,v 1.1 2004/08/27 03:45:08 jlam Exp $ .\" .\" Copyright (c) 1992, 1993 .\" The Regents of the University of California. All rights reserved. diff --git a/textproc/nbsed/files/sed.cat1 b/textproc/nbsed/files/sed.cat1 new file mode 100644 index 00000000000..ed63cf6b668 --- /dev/null +++ b/textproc/nbsed/files/sed.cat1 @@ -0,0 +1,326 @@ +SED(1) NetBSD Reference Manual SED(1) + +NNAAMMEE + sseedd - stream editor + +SSYYNNOOPPSSIISS + sseedd [--aaEEnn] _c_o_m_m_a_n_d [_f_i_l_e _._._.] + sseedd [--aaEEnn] [--ee _c_o_m_m_a_n_d] [--ff _c_o_m_m_a_n_d___f_i_l_e] [_f_i_l_e _._._.] + +DDEESSCCRRIIPPTTIIOONN + The sseedd utility reads the specified files, or the standard input if no + files are specified, modifying the input as specified by a list of com- + mands. The input is then written to the standard output. + + A single command may be specified as the first argument to sseedd. Multiple + commands may be specified by using the --ee or --ff options. All commands + are applied to the input in the order they are specified regardless of + their origin. + + The following options are available: + + --aa The files listed as parameters for the ``w'' functions are creat- + ed (or truncated) before any processing begins, by default. The + --aa option causes sseedd to delay opening each file until a command + containing the related ``w'' function is applied to a line of in- + put. + + --EE Enables the use of extended regular expressions instead of the + usual basic regular expression syntax. + + --ee _c_o_m_m_a_n_d + Append the editing commands specified by the _c_o_m_m_a_n_d argument to + the list of commands. + + --ff _c_o_m_m_a_n_d___f_i_l_e + Append the editing commands found in the file _c_o_m_m_a_n_d___f_i_l_e to the + list of commands. The editing commands should each be listed on + a separate line. + + --nn By default, each line of input is echoed to the standard output + after all of the commands have been applied to it. The --nn option + suppresses this behavior. + + The form of a sseedd command is as follows: + + [address[,address]]function[arguments] + + Whitespace may be inserted before the first address and the function por- + tions of the command. + + Normally, sseedd cyclically copies a line of input, not including its termi- + nating newline character, into a _p_a_t_t_e_r_n _s_p_a_c_e, (unless there is some- + thing left after a ``D'' function), applies all of the commands with ad- + dresses that select that pattern space, copies the pattern space to the + standard output, appending a newline, and deletes the pattern space. + + Some of the functions use a _h_o_l_d _s_p_a_c_e to save all or part of the pattern + space for subsequent retrieval. + +SSEEDD AADDDDRREESSSSEESS + An address is not required, but if specified must be a number (that + counts input lines cumulatively across input files), a dollar (``$'') + character that addresses the last line of input, or a context address + (which consists of a regular expression preceded and followed by a delim- + iter). + + A command line with no addresses selects every pattern space. + + A command line with one address selects all of the pattern spaces that + match the address. + + A command line with two addresses selects the inclusive range from the + first pattern space that matches the first address through the next pat- + tern space that matches the second. (If the second address is a number + less than or equal to the line number first selected, only that line is + selected.) Starting at the first line following the selected range, sseedd + starts looking again for the first address. + + Editing commands can be applied to non-selected pattern spaces by use of + the exclamation character (``!'') function. + +SSEEDD RREEGGUULLAARR EEXXPPRREESSSSIIOONNSS + The sseedd regular expressions are basic regular expressions (BRE's, see + re_format(7) for more information). In addition, sseedd has the following + two additions to BRE's: + + 1. In a context address, any character other than a backslash (``\'') + or newline character may be used to delimit the regular expression + by prefixing the first use of that delimiter with a backslash. Al- + so, putting a backslash character before the delimiting character + causes the character to be treated literally. For example, in the + context address \xabc\xdefx, the RE delimiter is an ``x'' and the + second ``x'' stands for itself, so that the regular expression is + ``abcxdef''. + + 2. The escape sequence \n matches a newline character embedded in the + pattern space. You can't, however, use a literal newline character + in an address or in the substitute command. + + One special feature of sseedd regular expressions is that they can default + to the last regular expression used. If a regular expression is empty, + i.e. just the delimiter characters are specified, the last regular ex- + pression encountered is used instead. The last regular expression is de- + fined as the last regular expression used as part of an address or sub- + stitute command, and at run-time, not compile-time. For example, the + command ``/abc/s//XXX/'' will substitute ``XXX'' for the pattern ``abc''. + +SSEEDD FFUUNNCCTTIIOONNSS + In the following list of commands, the maximum number of permissible ad- + dresses for each command is indicated by [0addr], [1addr], or [2addr], + representing zero, one, or two addresses. + + The argument _t_e_x_t consists of one or more lines. To embed a newline in + the text, precede it with a backslash. Other backslashes in text are + deleted and the following character taken literally. + + The ``r'' and ``w'' functions take an optional file parameter, which + should be separated from the function letter by white space. Each file + given as an argument to sseedd is created (or its contents truncated) before + any input processing begins. + + The ``b'', ``r'', ``s'', ``t'', ``w'', ``y'', ``!'', and ``:'' functions + all accept additional arguments. The following synopses indicate which + arguments have to be separated from the function letters by white space + characters. + + Two of the functions take a function-list. This is a list of sseedd func- + tions separated by newlines, as follows: + + { function + function + ... + function + } + + The ``{'' can be preceded by white space and can be followed by white + space. The function can be preceded by white space. The terminating + ``}'' must be preceded by a newline or optional white space. + + [2addr] function-list + Execute function-list only when the pattern space is selected. + + [1addr]a\ + text + Write _t_e_x_t to standard output immediately before each attempt to + read a line of input, whether by executing the ``N'' function or + by beginning a new cycle. + + [2addr]b[label] + Branch to the ``:'' function with the specified label. If the + label is not specified, branch to the end of the script. + + [2addr]c\ + text + Delete the pattern space. With 0 or 1 address or at the end of a + 2-address range, _t_e_x_t is written to the standard output. + + [2addr]d + Delete the pattern space and start the next cycle. + + [2addr]D + Delete the initial segment of the pattern space through the first + newline character and start the next cycle. + + [2addr]g + Replace the contents of the pattern space with the contents of + the hold space. + + [2addr]G + Append a newline character followed by the contents of the hold + space to the pattern space. + + [2addr]h + Replace the contents of the hold space with the contents of the + pattern space. + + [2addr]H + Append a newline character followed by the contents of the pat- + tern space to the hold space. + + [1addr]i\ + text + Write _t_e_x_t to the standard output. + + [2addr]l + (The letter ell.) Write the pattern space to the standard output + in a visually unambiguous form. This form is as follows: + + backslash \\ + alert \a + form-feed \f + newline \n + carriage-return \r + tab \t + vertical tab \v + + Nonprintable characters are written as three-digit octal numbers + (with a preceding backslash) for each byte in the character (most + significant byte first). Long lines are folded, with the point + of folding indicated by displaying a backslash followed by a new- + line. The end of each line is marked with a ``$''. + + [2addr]n + Write the pattern space to the standard output if the default + output has not been suppressed, and replace the pattern space + with the next line of input. (Does not begin a new cycle.) + + [2addr]N + Append the next line of input to the pattern space, using an em- + bedded newline character to separate the appended material from + the original contents. Note that the current line number + changes. + + [2addr]p + Write the pattern space to standard output. + + [2addr]P + Write the pattern space, up to the first newline character to the + standard output. + + [1addr]q + Branch to the end of the script and quit without starting a new + cycle. + + [1addr]r file + Copy the contents of _f_i_l_e to the standard output immediately be- + fore the next attempt to read a line of input. If _f_i_l_e cannot be + read for any reason, it is silently ignored and no error condi- + tion is set. + + [2addr]s/regular expression/replacement/flags + Substitute the replacement string for the first instance of the + regular expression in the pattern space. Any character other + than backslash or newline can be used instead of a slash to de- + limit the RE and the replacement. Within the RE and the replace- + ment, the RE delimiter itself can be used as a literal character + if it is preceded by a backslash. + + An ampersand (``&'') appearing in the replacement is replaced by + the string matching the RE. The special meaning of ``&'' in this + context can be suppressed by preceding it by a backslash. The + string ``\#'', where ``#'' is a digit, is replaced by the text + matched by the corresponding backreference expression (see + re_format(7)). + + A line can be split by substituting a newline character into it. + To specify a newline character in the replacement string, precede + it with a backslash. + + The value of _f_l_a_g_s in the substitute function is zero or more of + the following: + + 0 ... 9 + Make the substitution only for the N'th occurrence + of the regular expression in the pattern space. + + g Make the substitution for all non-overlapping + matches of the regular expression, not just the + first one. + + p Write the pattern space to standard output if a re- + placement was made. If the replacement string is + identical to that which it replaces, it is still + considered to have been a replacement. + + w _f_i_l_e Append the pattern space to _f_i_l_e if a replacement + was made. If the replacement string is identical + to that which it replaces, it is still considered + to have been a replacement. + + [2addr]t [label] + Branch to the ``:'' function bearing the label if any substitu- + tions have been made since the most recent reading of an input + line or execution of a ``t'' function. If no label is specified, + branch to the end of the script. + + [2addr]w _f_i_l_e + Append the pattern space to the _f_i_l_e. + + [2addr]x + Swap the contents of the pattern and hold spaces. + + [2addr]y/string1/string2/ + Replace all occurrences of characters in _s_t_r_i_n_g_1 in the pattern + space with the corresponding characters from _s_t_r_i_n_g_2. Any char- + acter other than a backslash or newline can be used instead of a + slash to delimit the strings. Within _s_t_r_i_n_g_1 and _s_t_r_i_n_g_2, a + backslash followed by any character other than a newline is that + literal character, and a backslash followed by an ``n'' is re- + placed by a newline character. + + [2addr]!function + [2addr]!function-list + Apply the function or function-list only to the lines that are + _n_o_t selected by the address(es). + + [0addr]:label + This function does nothing; it bears a label to which the ``b'' + and ``t'' commands may branch. + + [1addr]= + Write the line number to the standard output followed by a new- + line character. + + [0addr] + Empty lines are ignored. + + [0addr]# + The ``#'' and the remainder of the line are ignored (treated as a + comment), with the single exception that if the first two charac- + ters in the file are ``#n'', the default output is suppressed. + This is the same as specifying the --nn option on the command line. + + The sseedd utility exits 0 on success and >0 if an error occurs. + +SSEEEE AALLSSOO + awk(1), ed(1), grep(1), regex(3), re_format(7) + +SSTTAANNDDAARRDDSS + The sseedd function is expected to be a superset of the IEEE Std 1003.2 + (``POSIX.2'') specification. + +HHIISSTTOORRYY + A sseedd command appeared in Version 7 AT&T UNIX. + +NetBSD 1.6.2 January 4, 2004 5 diff --git a/textproc/nbsed/files/sed2nbcompat b/textproc/nbsed/files/sed2nbcompat index c98250a53cb..cfc8ec78126 100755 --- a/textproc/nbsed/files/sed2nbcompat +++ b/textproc/nbsed/files/sed2nbcompat @@ -1,6 +1,6 @@ #!/bin/sh # -# $NetBSD: sed2nbcompat,v 1.1 2004/08/21 08:39:54 jlam Exp $ +# $NetBSD: sed2nbcompat,v 1.2 2004/08/27 03:45:08 jlam Exp $ # # Copyright (c) 2004 The NetBSD Foundation, Inc. # All rights reserved. @@ -37,7 +37,7 @@ # POSSIBILITY OF SUCH DAMAGE. # -if [ $# -lt 1 ]; then echo "pax2nbcompat dest"; exit 1; fi +if [ $# -lt 1 ]; then echo "sed2nbcompat dest"; exit 1; fi : ${PKGSRCDIR:=/usr/pkgsrc} : ${BSDSRCDIR:=/usr/src} @@ -52,12 +52,3 @@ dest=$1 $src2nbcompat ${BSDSRCDIR}/usr.bin/sed $dest cd $dest -echo "Removing $dest/sed.cat1." -rm -f sed.cat1 -if diff -I "\$NetBSD.*\$" -u nbsed.1 sed.1 >/dev/null 2>&1; then - echo "Removing $dest/sed.1." - rm -f sed.1 -else - echo "Replacing $dest/nbsed.1 with $dest/sed.1." - mv -f sed.1 nbsed.1 -fi |