diff options
author | marino <marino@FreeBSD.org> | 2014-06-11 20:23:25 +0800 |
---|---|---|
committer | marino <marino@FreeBSD.org> | 2014-06-11 20:23:25 +0800 |
commit | d7d0269b90c0570aa02518643b766476b49e267c (patch) | |
tree | 50484972d14e732b1c71ba59c2767101236536da /devel/c2mdoc | |
parent | b77b16a3e90d7d7877bb74d57a732d39e278575e (diff) | |
download | freebsd-ports-gnome-d7d0269b90c0570aa02518643b766476b49e267c.tar.gz freebsd-ports-gnome-d7d0269b90c0570aa02518643b766476b49e267c.tar.zst freebsd-ports-gnome-d7d0269b90c0570aa02518643b766476b49e267c.zip |
Resurrect devel/c2mdoc (with stage support), assign maintainer
It seems that this port was killed for not having publically available
distfiles, but from what I can tell, this was always a distfile-free
port, meaning that it was removed in error.
The PR to bring it back did not provide the required stage support, but
luckily that was trivial to add. Differences from the previous version:
* pkg-descr rewrapped
* whitespace removed from awk script (caused PORTREVISION bump)
* Header trimmed
* NOMAN definition removed
* CP+REINPLACE_CMD replaced with SED and moved to post-extract target
* Stage support
* Maintenance passed to PR submitter
PR: 189009
Submitted by: Chris Hutchinson
Tweaks by: marino
Diffstat (limited to 'devel/c2mdoc')
-rw-r--r-- | devel/c2mdoc/Makefile | 29 | ||||
-rw-r--r-- | devel/c2mdoc/files/c2mdoc | 17 | ||||
-rw-r--r-- | devel/c2mdoc/files/c2mdoc.awk | 15 | ||||
-rw-r--r-- | devel/c2mdoc/pkg-descr | 5 |
4 files changed, 66 insertions, 0 deletions
diff --git a/devel/c2mdoc/Makefile b/devel/c2mdoc/Makefile new file mode 100644 index 000000000000..58f5067504ec --- /dev/null +++ b/devel/c2mdoc/Makefile @@ -0,0 +1,29 @@ +# Created by: Bruce M. Simpson <bms@FreeBSD.org> +# $FreeBSD$ + +PORTNAME= c2mdoc +PORTVERSION= 20040302 +PORTREVISION= 1 +CATEGORIES= devel textproc +MASTER_SITES= # +DISTFILES= + +MAINTAINER= portmaster@bsdforge.com +COMMENT= Script to generate mdoc(7) markup from C functions + +RUN_DEPENDS= cproto:${PORTSDIR}/devel/cproto + +NO_BUILD= yes +NO_WRKSUBDIR= yes + +PLIST_FILES= bin/c2mdoc libexec/c2mdoc.awk + +post-extract: + ${SED} -e "s|%%LIBEXECDIR%%|${PREFIX}/libexec|g;" \ + ${FILESDIR}/c2mdoc > ${WRKDIR}/c2mdoc + +do-install: + ${INSTALL_SCRIPT} ${FILESDIR}/c2mdoc.awk ${STAGEDIR}${PREFIX}/libexec + ${INSTALL_SCRIPT} ${WRKDIR}/c2mdoc ${STAGEDIR}${PREFIX}/bin + +.include <bsd.port.mk> diff --git a/devel/c2mdoc/files/c2mdoc b/devel/c2mdoc/files/c2mdoc new file mode 100644 index 000000000000..e1b789998d04 --- /dev/null +++ b/devel/c2mdoc/files/c2mdoc @@ -0,0 +1,17 @@ +#!/bin/sh +# +# c2mdoc -- Front-end which abuses the cproto parser to spit out +# mdoc(7) format prototypes for use in FreeBSD documentation. +# +# $FreeBSD$ +# + +AWKSCRIPT="%%LIBEXECDIR%%/c2mdoc.awk" +CPROTO='-P"int\tf\t(\ta\t,\tb\t)" -pq -f3' +CPROTO_BIN=cproto +export CPROTO + +${CPROTO_BIN} $1 | \ + grep -v '/\*.*\*/' | \ + sed -e 's/[,();]//g' | \ + ${AWKSCRIPT} diff --git a/devel/c2mdoc/files/c2mdoc.awk b/devel/c2mdoc/files/c2mdoc.awk new file mode 100644 index 000000000000..447153bbc163 --- /dev/null +++ b/devel/c2mdoc/files/c2mdoc.awk @@ -0,0 +1,15 @@ +#!/usr/bin/awk -f +# +# c2mdoc.awk -- Takes tabulated output from cproto(1) and turns it into +# mdoc(7) markup. +# +# $FreeBSD$ +# +BEGIN { FS="\t" } +{ + printf ".Ft %s\n", $1 ; + printf ".Fn %s", $2 ; + for (i = 4; i < NF; i++) + printf " \"%s\"", $i + printf "\n" ; +} diff --git a/devel/c2mdoc/pkg-descr b/devel/c2mdoc/pkg-descr new file mode 100644 index 000000000000..1f3aa49d5d37 --- /dev/null +++ b/devel/c2mdoc/pkg-descr @@ -0,0 +1,5 @@ +c2mdoc is a shell and awk script wrapper which abuses devel/cproto's +parser to spit out function prototypes in a format ready to paste into +FreeBSD developer documentation. c2man already claims to do such a +thing, but seems crippled in the face of our kernel source. The +toolchain used by this port whinges but still generates markup. |