summaryrefslogtreecommitdiff
path: root/devel/ccdoc
diff options
context:
space:
mode:
authorDirk Meyer <dinoex@FreeBSD.org>2001-03-14 16:24:40 +0000
committerDirk Meyer <dinoex@FreeBSD.org>2001-03-14 16:24:40 +0000
commit85b76746141d2c319b348bf4ada655868d963d80 (patch)
treea107f1acd2cef3e12813ef0fa26573e7021fb97e /devel/ccdoc
parentsupport 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/Makefile46
-rw-r--r--devel/ccdoc/distinfo1
-rw-r--r--devel/ccdoc/files/patch-aa17
-rw-r--r--devel/ccdoc/files/patch-ab11
-rw-r--r--devel/ccdoc/files/patch-ac20
-rw-r--r--devel/ccdoc/files/patch-ad54
-rw-r--r--devel/ccdoc/pkg-comment1
-rw-r--r--devel/ccdoc/pkg-descr17
-rw-r--r--devel/ccdoc/pkg-plist73
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">&nbsp;<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">&nbsp;<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