diff options
author | Dirk Meyer <dinoex@FreeBSD.org> | 2001-03-14 16:24:40 +0000 |
---|---|---|
committer | Dirk Meyer <dinoex@FreeBSD.org> | 2001-03-14 16:24:40 +0000 |
commit | 85b76746141d2c319b348bf4ada655868d963d80 (patch) | |
tree | a107f1acd2cef3e12813ef0fa26573e7021fb97e /devel/ccdoc | |
parent | support PREFIX properly. (diff) |
- port converted in new layout
- textproc added in category (like astyle)
Ccdoc is a tool for extracting comments from C++ source code and presenting it
in HTML format, very similar to Java's JavaDoc tool. The tagging used in ccdoc
is very similar to that of Javadoc, with adaptations for the C++ specifics, of
course. Ccdoc supports extracting comments from both header and implementation
files.
In contrast to most other C++ doc'ing applications, ccdoc analyses the code
before it has been run through the pre-processor, so things such as macros can
actually be included in the documentation.
It's usage is not quite as straight forward as JavaDoc's, but considering the
quality of the output, it is well worth the effort.
WWW: http://www.joelinoff.com/ccdoc/
PR: 22794
Submitted by: lonewolf@flame.org
Notes
Notes:
svn path=/head/; revision=39837
Diffstat (limited to 'devel/ccdoc')
-rw-r--r-- | devel/ccdoc/Makefile | 46 | ||||
-rw-r--r-- | devel/ccdoc/distinfo | 1 | ||||
-rw-r--r-- | devel/ccdoc/files/patch-aa | 17 | ||||
-rw-r--r-- | devel/ccdoc/files/patch-ab | 11 | ||||
-rw-r--r-- | devel/ccdoc/files/patch-ac | 20 | ||||
-rw-r--r-- | devel/ccdoc/files/patch-ad | 54 | ||||
-rw-r--r-- | devel/ccdoc/pkg-comment | 1 | ||||
-rw-r--r-- | devel/ccdoc/pkg-descr | 17 | ||||
-rw-r--r-- | devel/ccdoc/pkg-plist | 73 |
9 files changed, 240 insertions, 0 deletions
diff --git a/devel/ccdoc/Makefile b/devel/ccdoc/Makefile new file mode 100644 index 000000000000..3d93e0c67884 --- /dev/null +++ b/devel/ccdoc/Makefile @@ -0,0 +1,46 @@ +# New ports collection makefile for: ccdoc +# Date created: 9 October 2000 +# Whom: lonewolf@flame.org +# +# $FreeBSD$ +# + +PORTNAME= ccdoc +PORTVERSION= 0.7a +CATEGORIES= devel textproc +MASTER_SITES= http://www.joelinoff.com/ccdoc/ \ + http://www.flame.org/~lonewolf/distfiles/ \ + http://www.earthmagic.org/FreeBSD/distfiles/ +DISTNAME= ccdoc_v07a_src_taz +EXTRACT_SUFX= .exe + +MAINTAINER= lonewolf@flame.org + +WRKSRC= ${WRKDIR}/ccdoc_v07a +USE_PERL= yes + +DOCDIR=${PREFIX}/share/doc/ccdoc + +pre-patch: + @${ECHO} "Stripping ^M from all the files..." + @find ${WRKSRC} -type f | xargs perl -pi -e 's/\r//' + +do-build: + (cd ${WRKSRC}/ccdoc_dev/libjdl/src; ${PERL} mk.pl opt) + (cd ${WRKSRC}/ccdoc_dev/ccdoc/src; ${PERL} mk.pl opt) + +do-install: + ${INSTALL_PROGRAM} ${WRKSRC}/ccdoc_dev/ccdoc/bin_freebsd_opt/ccdoc.exe ${PREFIX}/bin/ccdoc + +post-install: + strip ${PREFIX}/bin/ccdoc +.if !defined(NOPORTDOCS) + ${MKDIR} ${DOCDIR} + ${INSTALL_MAN} ${WRKSRC}/doc/*.html ${WRKSRC}/doc/*.txt ${WRKSRC}/doc/*.gif ${DOCDIR} + ${MKDIR} ${DOCDIR}/images + ${INSTALL_MAN} ${WRKSRC}/doc/images/*.gif ${DOCDIR}/images + ${MKDIR} ${DOCDIR}/autodoc + ${INSTALL_MAN} ${WRKSRC}/doc/autodoc/* ${DOCDIR}/autodoc +.endif + +.include <bsd.port.mk> diff --git a/devel/ccdoc/distinfo b/devel/ccdoc/distinfo new file mode 100644 index 000000000000..c278a3b151c1 --- /dev/null +++ b/devel/ccdoc/distinfo @@ -0,0 +1 @@ +MD5 (ccdoc_v07a_src_taz.exe) = dd9a24a374d10b00391d09a659878b28 diff --git a/devel/ccdoc/files/patch-aa b/devel/ccdoc/files/patch-aa new file mode 100644 index 000000000000..f7b459075cb3 --- /dev/null +++ b/devel/ccdoc/files/patch-aa @@ -0,0 +1,17 @@ +--- ccdoc_dev/tools/mkmk.pl Thu Oct 5 16:51:43 2000 ++++ ccdoc_dev/tools/mkmk.patched Thu Oct 5 16:52:25 2000 +@@ -166,11 +166,11 @@ + else { + # UNIXes. + print MK "CPP = CC\n"; +- print MK "CPPFLAGS1 = -pto -pta +w\n"; ++ print MK "CPPFLAGS1 = \$(CFLAGS) \n"; + print MK "CPPFLAGS2 = -DJDL_DEFINE_LOCAL_TYPES -DJDL_DEFINE_LOCAL_BOOLEAN\n"; +- print MK "CPPFLAGS3 = -I. -I../..\n"; ++ print MK "CPPFLAGS3 = -I. -I../.. -o \$\@\n"; + print MK "CPPFLAGS4 = \$(MYCPPFLAGS)\n"; +- print MK "CPPFLAGS = \$(CPPFLAGS1) \$(CPPFLAGS2) \$(CPPFLAGS3) \$(CPPFLAGS4) -c -o \$\@\n"; ++ print MK "CPPFLAGS = \$(CPPFLAGS1) \$(CPPFLAGS2) \$(CPPFLAGS3) \$(CPPFLAGS4) -c\n"; + if ( $type == 1 ) { + print MK "LINK = \$(CPP)\n"; + if( $arch eq "hpux" ) { diff --git a/devel/ccdoc/files/patch-ab b/devel/ccdoc/files/patch-ab new file mode 100644 index 000000000000..4735559efcd4 --- /dev/null +++ b/devel/ccdoc/files/patch-ab @@ -0,0 +1,11 @@ +--- ccdoc_dev/ccdoc/src/ccdocphase3.h Thu Oct 5 16:53:10 2000 ++++ ccdoc_dev/ccdoc/src/ccdocphase3.h.patched Fri Oct 6 07:15:30 2000 +@@ -210,7 +210,7 @@ + const char* trailer, + bool mcfFlag); + private: +- WriteTop(); ++ // WriteTop(); + const char* GetCurrTime(); + const char* GetProgram(); + private: diff --git a/devel/ccdoc/files/patch-ac b/devel/ccdoc/files/patch-ac new file mode 100644 index 000000000000..116b58b5c305 --- /dev/null +++ b/devel/ccdoc/files/patch-ac @@ -0,0 +1,20 @@ +--- doc/main.html Tue Jun 15 19:12:06 1999 ++++ doc/main.html.patched Fri Oct 6 16:05:53 2000 +@@ -407,7 +407,7 @@ + </tr> + <tr> + <td height="42"> <a +- href="ccdoc_v07a_bin_taz.exe">ccdoc_v07a bin_taz.exe</a></td> ++ href="http://www.joelinoff.com/ccdoc/ccdoc_v07a_bin_taz.exe">ccdoc_v07a bin_taz.exe</a></td> + <td width="56%" height="42">The binary distribution + for Solaris 5.6, HP UX 10, and Windows 95/98/NT. It + is about 530K.</td> +@@ -415,7 +415,7 @@ + </tr> + <tr> + <td height="23"> <a +- href="ccdoc_v07a_src_taz.exe">ccdoc_v07a src_taz.exe</a></td> ++ href="http://www.joelinoff.com/ccdoc/ccdoc_v07a_src_taz.exe">ccdoc_v07a src_taz.exe</a></td> + <td width="56%" height="23">The source code + distribution along with the binaries. It is about + 834K.</td> diff --git a/devel/ccdoc/files/patch-ad b/devel/ccdoc/files/patch-ad new file mode 100644 index 000000000000..2a1c0e202d9d --- /dev/null +++ b/devel/ccdoc/files/patch-ad @@ -0,0 +1,54 @@ +--- ccdoc_dev/ccdoc/src/ccdocphase2.cpp Mon Oct 9 08:28:09 2000 ++++ ccdoc_dev/ccdoc/src/ccdocphase2.cpp.patched Mon Oct 9 08:29:50 2000 +@@ -53,10 +53,10 @@ + // TODO: After all of the files are processed, run through + // and "fix" the "scoped" records that have comments. + if(m_ScopedNodeList.GetNumItems()) { +- ::fprintf(stderr,"DEBUG: %d scoped nodes found with comments.\n", +- m_ScopedNodeList.GetNumItems()); +- ::fprintf(stderr,"DEBUG: %d scoped node refs found for comment analysis.\n", +- m_ClassMap.GetNumItems()); ++ //::fprintf(stderr,"DEBUG: %d scoped nodes found with comments.\n", ++ //m_ScopedNodeList.GetNumItems()); ++ //::fprintf(stderr,"DEBUG: %d scoped node refs found for comment analysis.\n", ++ //m_ClassMap.GetNumItems()); + {for(uint i=0;i<m_ScopedNodeList.GetNumItems();i++) { + CCcDocParserNode* node = m_ScopedNodeList.Get(i); + CCcDocParserNode* parent = node->GetParent(); +@@ -89,15 +89,15 @@ + } + }} + if(class_name) { +- ::fprintf(stderr,"DEBUG: %s::%s\n",class_name,node->GetName()); ++ //::fprintf(stderr,"DEBUG: %s::%s\n",class_name,node->GetName()); + if(m_ClassMap.Contains(class_name)) { +- ::fprintf(stderr,"DEBUG: found %s\n",class_name); ++ //::fprintf(stderr,"DEBUG: found %s\n",class_name); + CJdlVector<CCcDocParserNode*>* list = 0; + list = (CJdlVector<CCcDocParserNode*>*) m_ClassMap.Get(class_name); + assert(list); + {for(ulong j=0;j<list->GetNumItems();j++) { + CCcDocParserNode* cls = list->Get(j); +- ::fprintf(stderr,"DEBUG: checking node %d/%d\n",j+1,list->GetNumItems()); ++ //::fprintf(stderr,"DEBUG: checking node %d/%d\n",j+1,list->GetNumItems()); + + // Get arg list matching stuff. + ulong x2 = 0; // starting paren +@@ -109,7 +109,7 @@ + + // Find the method: + {for(ulong k=0;k<cls->GetNumChildren();k++) { +- ::fprintf(stderr,"DEBUG: checking children %d/%d\n",k+1,cls->GetNumChildren()); ++ //::fprintf(stderr,"DEBUG: checking children %d/%d\n",k+1,cls->GetNumChildren()); + CCcDocParserNode* nd = cls->GetChild(k); + assert(nd); + if(CCcDocParserNode::STMT_FUNCTION == nd->GetType()) { +@@ -125,7 +125,7 @@ + }} + ulong diff1 = nd->GetNumItems() - x1; + bool matched = false; +- ::fprintf(stderr,"DEBUG: diff1=%d, diff2=%d\n",diff1,diff2); ++ //::fprintf(stderr,"DEBUG: diff1=%d, diff2=%d\n",diff1,diff2); + if(diff1 == diff2) { + matched = true; + for(;x2<node->GetNumItems() && x1<nd->GetNumItems();x1++,x2++) { diff --git a/devel/ccdoc/pkg-comment b/devel/ccdoc/pkg-comment new file mode 100644 index 000000000000..63d240b87f27 --- /dev/null +++ b/devel/ccdoc/pkg-comment @@ -0,0 +1 @@ +Extracting comments from C++ source and generating HTML diff --git a/devel/ccdoc/pkg-descr b/devel/ccdoc/pkg-descr new file mode 100644 index 000000000000..60ca14d15fcd --- /dev/null +++ b/devel/ccdoc/pkg-descr @@ -0,0 +1,17 @@ +Ccdoc is a tool for extracting comments from C++ source code and presenting it +in HTML format, very similar to Java's JavaDoc tool. The tagging used in ccdoc +is very similar to that of Javadoc, with adaptations for the C++ specifics, of +course. Ccdoc supports extracting comments from both header and implementation +files. + +In contrast to most other C++ doc'ing applications, ccdoc analyses the code +before it has been run through the pre-processor, so things such as macros can +actually be included in the documentation. + +It's usage is not quite as straight forward as JavaDoc's, but considering the +quality of the output, it is well worth the effort. + +WWW: http://www.joelinoff.com/ccdoc/ + +- LoneWolf +lonewolf@flame.org diff --git a/devel/ccdoc/pkg-plist b/devel/ccdoc/pkg-plist new file mode 100644 index 000000000000..092eed43c35a --- /dev/null +++ b/devel/ccdoc/pkg-plist @@ -0,0 +1,73 @@ +bin/ccdoc +share/doc/ccdoc/bugs.html +share/doc/ccdoc/ccdoc_flow_v07a.gif +share/doc/ccdoc/faq.txt +share/doc/ccdoc/index.html +share/doc/ccdoc/main.html +share/doc/ccdoc/relnotes.txt +share/doc/ccdoc/sidebar.html +share/doc/ccdoc/autodoc/ccdoc.ctf +share/doc/ccdoc/autodoc/ccdoc.index.html +share/doc/ccdoc/autodoc/ccdoc.index.pkg.CcDoc.html +share/doc/ccdoc/autodoc/ccdoc.index.pkg.libjdl.html +share/doc/ccdoc/autodoc/ccdoc.r126.html +share/doc/ccdoc/autodoc/ccdoc.r134.html +share/doc/ccdoc/autodoc/ccdoc.r148.html +share/doc/ccdoc/autodoc/ccdoc.r160.html +share/doc/ccdoc/autodoc/ccdoc.r1ad.html +share/doc/ccdoc/autodoc/ccdoc.r1c7.html +share/doc/ccdoc/autodoc/ccdoc.r25d.html +share/doc/ccdoc/autodoc/ccdoc.r28b.html +share/doc/ccdoc/autodoc/ccdoc.r32e.html +share/doc/ccdoc/autodoc/ccdoc.r36f.html +share/doc/ccdoc/autodoc/ccdoc.r389.html +share/doc/ccdoc/autodoc/ccdoc.r38c.html +share/doc/ccdoc/autodoc/ccdoc.r38f.html +share/doc/ccdoc/autodoc/ccdoc.r397.html +share/doc/ccdoc/autodoc/ccdoc.r400.html +share/doc/ccdoc/autodoc/ccdoc.r413.html +share/doc/ccdoc/autodoc/ccdoc.r456.html +share/doc/ccdoc/autodoc/ccdoc.r491.html +share/doc/ccdoc/autodoc/ccdoc.r4ce.html +share/doc/ccdoc/autodoc/ccdoc.r59e.html +share/doc/ccdoc/autodoc/ccdoc.r5b3.html +share/doc/ccdoc/autodoc/ccdoc.r5cb.html +share/doc/ccdoc/autodoc/ccdoc.r5d.html +share/doc/ccdoc/autodoc/ccdoc.r610.html +share/doc/ccdoc/autodoc/ccdoc.r68b.html +share/doc/ccdoc/autodoc/ccdoc.r6d0.html +share/doc/ccdoc/autodoc/ccdoc.r6fc.html +share/doc/ccdoc/autodoc/ccdoc.r721.html +share/doc/ccdoc/autodoc/ccdoc.r8.html +share/doc/ccdoc/autodoc/ccdoc.rb2.html +share/doc/ccdoc/autodoc/ccdoc.rf5.html +share/doc/ccdoc/autodoc/ccdoc.xref.html +share/doc/ccdoc/images/blue-ball-small.gif +share/doc/ccdoc/images/blue-ball.gif +share/doc/ccdoc/images/constructor-index.gif +share/doc/ccdoc/images/constructors.gif +share/doc/ccdoc/images/enum-index.gif +share/doc/ccdoc/images/enums.gif +share/doc/ccdoc/images/macro-index.gif +share/doc/ccdoc/images/macros.gif +share/doc/ccdoc/images/magenta-ball-small.gif +share/doc/ccdoc/images/magenta-ball.gif +share/doc/ccdoc/images/method-index.gif +share/doc/ccdoc/images/methods.gif +share/doc/ccdoc/images/package-index.gif +share/doc/ccdoc/images/packages.gif +share/doc/ccdoc/images/red-ball-small.gif +share/doc/ccdoc/images/red-ball.gif +share/doc/ccdoc/images/typedef-index.gif +share/doc/ccdoc/images/typedefs.gif +share/doc/ccdoc/images/variable-index.gif +share/doc/ccdoc/images/variables.gif +share/doc/ccdoc/images/yellow-ball-small.gif +share/doc/ccdoc/images/yellow-ball.gif +share/doc/ccdoc/images/zz_image1.gif +share/doc/ccdoc/images/zz_image2.gif +share/doc/ccdoc/images/zz_image3.gif +share/doc/ccdoc/images/zz_image4.gif +@dirrm share/doc/ccdoc/autodoc +@dirrm share/doc/ccdoc/images +@dirrm share/doc/ccdoc |