From owner-freebsd-ports Mon Mar 22 11:10:21 1999 Delivered-To: freebsd-ports@freebsd.org Received: from freefall.freebsd.org (freefall.FreeBSD.ORG [204.216.27.21]) by hub.freebsd.org (Postfix) with ESMTP id 6166C15309 for ; Mon, 22 Mar 1999 11:10:19 -0800 (PST) (envelope-from gnats@FreeBSD.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.9.2/8.9.2) id LAA65668; Mon, 22 Mar 1999 11:10:01 -0800 (PST) (envelope-from gnats@FreeBSD.org) Received: from ns1.tu-graz.ac.at (ns1.tu-graz.ac.at [129.27.2.3]) by hub.freebsd.org (Postfix) with ESMTP id 7464D14C2C for ; Mon, 22 Mar 1999 11:01:13 -0800 (PST) (envelope-from dada@ns1.tu-graz.ac.at) Received: from fcggsg07.icg.tu-graz.ac.at (fcggsg07.icg.tu-graz.ac.at [129.27.201.16]) by ns1.tu-graz.ac.at (8.8.6/8.8.6) with ESMTP id UAA06813 for ; Mon, 22 Mar 1999 20:00:43 +0100 (MET) Received: from localhost.tu-graz.ac.at (isdn273.tu-graz.ac.at [129.27.241.73]) by fcggsg07.icg.tu-graz.ac.at (8.8.8/8.8.8) with ESMTP id UAA23549 for ; Mon, 22 Mar 1999 20:00:34 +0100 (MET) Received: (from dada@localhost) by localhost.tu-graz.ac.at (8.8.8/8.8.8) id UAA03648; Mon, 22 Mar 1999 20:00:26 +0100 (CET) (envelope-from dada) Message-Id: <199903221900.UAA03648@localhost.tu-graz.ac.at> Date: Mon, 22 Mar 1999 20:00:26 +0100 (CET) From: dada@sbox.tu-graz.ac.at Reply-To: dada@sbox.tu-graz.ac.at To: FreeBSD-gnats-submit@freebsd.org X-Send-Pr-Version: 3.2 Subject: ports/10732: c2html port update Sender: owner-freebsd-ports@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.org >Number: 10732 >Category: ports >Synopsis: update from 0.1 to 0.3 >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-ports >State: open >Quarter: >Keywords: >Date-Required: >Class: change-request >Submitter-Id: current-users >Arrival-Date: Mon Mar 22 11:10:01 PST 1999 >Closed-Date: >Last-Modified: >Originator: Martin Kammerhofer >Release: FreeBSD 2.2.8-STABLE i386 >Organization: Graz University of Technology >Environment: >Description: c2html has been updated on sunsite from 0.1 to 0.3 It's now using autoconf. Patch files patch-a[bcd] are no longer necessary (removed) patch-aa is a very simple patch to Makefile.in now. Maintainer has changed from Andrey Zakhvatov to Martin Kammerhofer (who sent this PR). Of course, I've asked Andrey about it and he gave me his OK to take over this port from him. >How-To-Repeat: >Fix: 0<==cut here======================================================= diff -urN c2html.old/Makefile c2html/Makefile --- c2html.old/Makefile Sat Nov 22 01:30:17 1997 +++ c2html/Makefile Sun Mar 21 19:05:35 1999 @@ -1,26 +1,29 @@ # New ports collection makefile for: c2html -# Version required: 0.1 -# Date created: 28 October 1997 -# Whom: Andrey Zakhvatov +# Version required: 0.3 +# Date created: 21 March 1999 +# Whom: Martin Kammerhofer # -# $Id: Makefile,v 1.1.1.1 1997/11/22 00:30:17 jseger Exp $ +# $Id$ # -DISTNAME= c2html-0.1 +DISTNAME= c2html-0.3 CATEGORIES= textproc www MASTER_SITES= ${MASTER_SITE_SUNSITE} MASTER_SITE_SUBDIR= apps/www/converters -MAINTAINER= andy@icc.surw.chel.su +MAINTAINER= mkamm@gmx.net + +USE_AUTOCONF= yes MAN1= c2html.1 -do-install: - @ ${INSTALL_PROGRAM} ${WRKSRC}/c2html ${PREFIX}/bin - @ ${INSTALL_MAN} ${WRKSRC}/c2html.1 ${PREFIX}/man/man1 - @ ${MKDIR} ${PREFIX}/share/doc/c2html -.for file in COPYING README - @ ${INSTALL_DATA} ${WRKSRC}/${file} ${PREFIX}/share/doc/c2html -.endfor +post-install: + strip ${PREFIX}/bin/c2html +.if !defined(NOPORTDOCS) + ${MKDIR} ${PREFIX}/share/doc/c2html + ${INSTALL_MAN} ${WRKSRC}/AUTHORS ${PREFIX}/share/doc/c2html + ${INSTALL_MAN} ${WRKSRC}/NEWS ${PREFIX}/share/doc/c2html + ${INSTALL_MAN} ${WRKSRC}/README ${PREFIX}/share/doc/c2html +.endif .include diff -urN c2html.old/files/md5 c2html/files/md5 --- c2html.old/files/md5 Sat Nov 22 01:30:17 1997 +++ c2html/files/md5 Sun Mar 21 19:05:35 1999 @@ -1 +1 @@ -MD5 (c2html-0.1.tar.gz) = 66659aec84aad813e52042576abf6662 +MD5 (c2html-0.3.tar.gz) = 81b404f443f63eb92c1f608673944408 diff -urN c2html.old/patches/patch-aa c2html/patches/patch-aa --- c2html.old/patches/patch-aa Sun Feb 28 20:00:15 1999 +++ c2html/patches/patch-aa Sun Mar 21 19:05:35 1999 @@ -1,18 +1,20 @@ ---- Makefile.orig Mon Sep 1 22:18:51 1997 -+++ Makefile Sun Nov 16 17:24:44 1997 -@@ -2,13 +2,13 @@ +--- Makefile.in~ Wed Mar 10 22:14:48 1999 ++++ Makefile.in Sun Mar 21 18:19:16 1999 +@@ -12,7 +12,7 @@ + # for gzip because otherwise the load on the web server + # grows without having big benefits. + # COMPRESSION = -DCOMPRESSION=4 +-COMPRESSION = -DCOMPRESSION=1 ++COMPRESSION ?= -DCOMPRESSION=1 - CC = gcc - FLEX = flex --CFLAGS = -O2 -Wall -pedantic -ansi -+CFLAGS+= -Wall -pedantic -ansi -DCOMPRESSION=1 + # Dont change things beyond this line. + TARGET = c2html +@@ -40,7 +40,7 @@ + srcdir = @srcdir@ + CPPFLAGS = @CPPFLAGS@ - all: c2html - - c2html: c2html.l - $(FLEX) c2html.l -- $(CC) $(CFLAGS) -o c2html lex.yy.c -static -lfl -+ $(CC) $(CFLAGS) -o c2html lex.yy.c -lfl - clean: - rm -rf *.o *~ c2html +-CFLAGS = -O2 -Wall -pedantic $(COMPRESSION) ++CFLAGS += -O2 -Wall -pedantic $(COMPRESSION) + ALL_CFLAGS = $(CFLAGS) -I$(srcdir) + all: $(TARGET) diff -urN c2html.old/patches/patch-ab c2html/patches/patch-ab --- c2html.old/patches/patch-ab Mon Feb 22 05:22:23 1999 +++ c2html/patches/patch-ab Thu Jan 1 01:00:00 1970 @@ -1,62 +0,0 @@ ---- README.orig Tue Sep 2 04:18:51 1997 -+++ README Sat Jan 16 16:28:33 1999 -@@ -1,8 +1,8 @@ --c2html version 0.1 by Florian Schintke --distributed under the GNU Public license. For further information see --the file COPYING. -+c2html version 0.2 by Florian Schintke -+CGI features added by Martin Kammerhofer - --%% Datei COPYING mitliefern!!! -+This program is distributed under the GNU Public license. For further -+information see the file COPYING. - - c2html - ====== -@@ -33,7 +33,43 @@ - files. The names of the new files are built by appending ".html" to - the corresponding input filename. - -+How do I convert my C sources on demand only? -+--------------------------------------------- - -- -- -- -+You need a webserver to do this. The webserver must be configured to -+INVOKE c2html as a CGI program to handle all *.c and *.h files. If -+your webserver is apache you can achieve this by adding lines -+ -+ AddType text/x-c .c .h -+ Action text/x-c /cgi-bin/c2html -+ -+to configuration file "srm.conf". c2html expects the pathname of it's -+input file in environment variable PATH_TRANSLATED. CGI mode works by -+checking for environment variables GATEWAY_INTERFACE and -+PATH_TRANSLATED. If both are set a HTTP header line -+ -+ Content-Type: text/html -+ -+is simply prepended to the output. -+ -+Since your sources are converted on-the-fly to HTML you don't need any -+webspace for your html-ized files. Furthermore you don't have to -+bother about keeping your published html-ized sources up to date. :) -+ -+A drawback might be that you cannot HTTP download the plain text -+source files any more. You can always enable the 'Action' directive -+mentioned above for specific directories or virtual hosts only. (You -+can even use symlinks in combination with '' to let surfers -+choose themselves between html-ized and plain text representations). -+Another solution might be to set up anonymous ftp in such a way, that -+users simply have to change 'http:' to 'ftp:' in their URLs to get the -+plain text representations of C-sources. -+ -+How can I save bandwidth using c2html as a CGI? -+----------------------------------------------- -+ -+If c2html has been compiled with -DCOMPRESSION=1 it will compress it's -+HTML output with gzip if your browser supports it. This will save -+bandwidth but add additional load to your webserver machine. c2html -+will not have it's output compressed by gzip if you are connected to a -+server on 'localhost'. diff -urN c2html.old/patches/patch-ac c2html/patches/patch-ac --- c2html.old/patches/patch-ac Mon Feb 22 05:22:23 1999 +++ c2html/patches/patch-ac Thu Jan 1 01:00:00 1970 @@ -1,63 +0,0 @@ ---- c2html.orig Tue Sep 2 04:18:51 1997 -+++ c2html.1 Sat Jan 16 16:28:33 1999 -@@ -3,7 +3,7 @@ - c2html \- generates highlighted html-files from C source - .SH SYNOPSIS - .B c2html --[filenames] -+[filename...] - .br - .SH DESCRIPTION - This manual page -@@ -16,9 +16,50 @@ - - If invoked with filenames as arguments - .B c2html --will write the output in new files. The names of the new -+will write it's output into new files. Names of output - files are generated by appending ".html" to the - corresponding input filename. - - You can convert both .c and .h files with - .BR c2html . -+.SS Installing as a CGI program -+.B c2html -+can be installed as a CGI program and convert source files on the -+fly. In order to set this up for apache the webmaster has to add the -+two lines -+.RS -+ AddType text/x-c .c .h -+.P -+ Action text/x-c /cgi-bin/c2html -+.RE -+to the webserver configuration file. -+.B c2html -+depends on the webserver properly setting environment variable -+PATH_TRANSLATED to the pathname of the source file. -+If -+.B c2html -+has been compiled with option -DCOMPRESSION=1 then it will invoke -+.B gzip -+to compress the generated HTML before sending it to the requesting -+browser. Of course -+.B c2html -+takes care to check if the browser accepts gzip encoding. -+.SH OPTIONS -+.BI -t title -+If reading from stdin this sets the title instead of the default -+"stdin". If invoked with filenames as arguments this option is -+ignored. -+ -+.BI -w width -+sets the WIDTH attribute for HTML tag
. If this option is not
-+used a default of 80 is assumed.  (Currently most browsers are
-+ignoring this attribute).
-+
-+.BI -V
-+reports the version number of
-+.B c2html
-+.SH EXIT STATUS
-+.B c2html
-+returns 0 on success, 1 if input files are not existing/readable, 2 if
-+output files are not creatable/writable and 3 if invoked with illegal
-+options.
diff -urN c2html.old/patches/patch-ad c2html/patches/patch-ad
--- c2html.old/patches/patch-ad	Mon Feb 22 05:22:23 1999
+++ c2html/patches/patch-ad	Thu Jan  1 01:00:00 1970
@@ -1,185 +0,0 @@
---- c2html.l.orig	Mon Sep  1 21:18:51 1997
-+++ c2html.l	Sun Feb 21 20:03:48 1999
-@@ -1,15 +1,22 @@
--%{
-+%{ /* $Id: patch-ad,v 1.1 1999/02/22 04:22:23 steve Exp $    -*- mode: C -*- */
- /* 
-  * We build a lexical analyzer that converts a C source file to 
-  * a beautifully highlighted HTML file now.
-  */
- 
-+#define C2HTML_VERSION "0.2"
-+
- #include 
--#include 
-+#include 
- #include 
-+#include 
- 
- #include "colors.h"
- 
-+#ifndef COMPRESSION
-+#define COMPRESSION 0
-+#endif
-+
- FILE *actin;
- FILE *actout;
- 
-@@ -293,51 +300,113 @@
-  * path this file) into the output file.
-  */
- 
-+static char *prog;
-+static void usage() {
-+    fprintf (stderr, "usage: %s [-t title] [-w width] [file_to_convert ...]\n", prog);
-+    exit(3);
-+}
-+
-+
- int
- main(int argc, char *argv[])
- {
-   char *outfilename;
--  int i = 1;
-+  int i, ch, width=80, rc=0;
-+  char *title=(char *)0, *pt;
-+  char gzipcmd[10];
-+
-+  prog = (pt=strrchr(argv[0], '/')) ? ++pt : argv[0]; /* basename */
-+  while ((ch = getopt(argc, argv, "h?t:w:V")) != -1)
-+      switch(ch) {
-+      case 't':
-+          title = optarg;
-+          break;
-+      case 'w':
-+          if (sscanf(optarg, "%d", &width) != 1)
-+              usage();
-+          break;
-+      case 'V':
-+          fprintf(stderr, "c2html version %s%s\n",
-+		  C2HTML_VERSION, COMPRESSION ? "" : " (no compression)");
-+          exit(0);
-+      default:
-+          usage();
-+      }
-+  argc -= optind;
-+  argv += optind;
- 
--  if (1 == argc) 
--    {
-+  if (argc == 0) {
-       actin = stdin;
-       actout = stdout;
--      fprintf (actout, "\n\n");
--      fprintf (actout, "stdout" );
-+      
-+      if ((pt=getenv("PATH_TRANSLATED")) && getenv("GATEWAY_INTERFACE")) {
-+          /* CGI */
-+          if (!title)
-+              title = pt;
-+          actin = fopen (pt, "r");
-+          if (!actin) {
-+              fprintf (actout, "Content-Type: text/html\n\n");
-+              fprintf (actout, "<HTML><HEAD><TITLE>error in CGI '%s'\
-+\n\
-+

error in CGI program '%s': cannot read file '%s'

\n\ -+\n", prog, prog, pt); -+ exit(1); -+ } -+ fprintf (actout, "Content-Type: text/html\n"); -+#if COMPRESSION -+ /* should we compress output with gzip? */ -+ do { -+ if (!(pt=getenv("HTTP_ACCEPT_ENCODING"))) -+ break; /* no header Accept-Encoding: */ -+ if (!strstr(pt, "gzip")) -+ break; /* browser doesn't understand gzip format */ -+ if ((pt=getenv("REMOTE_ADDR")) && !strncmp(pt, "127", 3)) -+ break; /* never compress to local client */ -+ /* OK, compress output with gzip */ -+ fprintf(actout, "Content-Encoding: x-gzip\n\n"); -+ fflush(actout); -+ snprintf(gzipcmd, sizeof(gzipcmd), "gzip -%d", COMPRESSION); -+ if (!(actout = popen(gzipcmd, "w"))) -+ exit(4); /* cannot fork, gzip not found, ... */ -+ } while (0); -+#endif /* COMPRESSION */ -+ } /* end of CGI section */ -+ fprintf (actout, "\n\n\n"); -+ fprintf (actout, "%s", title ? title : "stdin"); - fprintf (actout, "\n\n\n"); - fprintf (actout, "\n", bgcolor); - (void) insert (actout, ownhead); -- fprintf (actout, "
");
--
--      yyin = stdin;
--      yyout = stdout;
--      
-+      fprintf (actout, "
", width);
-+  
-+      yyin = actin;
-+      yyout = actout;
-       yylex();
--      
--      fprintf (actout,"
\n\n\n\n"); -- } - -- while (i < argc) -- { -+ fprintf (actout,"
\n\n\n\n"); -+ } else for (i=0; i < argc; i++) { - actin = fopen (argv[i], "r"); -- if (!actin) -- { -- fprintf (stderr, "usage: %s [files_to_convert]\n", argv[0]); -- fprintf (stderr, "%s: cannot open file %s\n", argv[0], argv[i]); -- exit (1); -+ if (!actin) { -+ fprintf (stderr, "%s: cannot read file '%s'\n", prog, argv[i]); -+ rc = rc < 1 ? 1 : rc; -+ continue; - } - - outfilename = malloc (sizeof (char)*strlen (argv[i]) + 6); - strcat (strcpy (outfilename, argv[i]), ".html"); - actout = fopen (outfilename, "w"); -+ if (!actout) { -+ fprintf (stderr, "%s: cannot write file '%s'\n", prog, outfilename); -+ rc = rc < 2 ? 2 : rc; -+ continue; -+ } -+ outfilename[strlen(outfilename) - 5] = '\0'; /* chop '.html' suffix */ - fprintf (actout, "\n\n"); - fprintf (actout, - "%s", outfilename ); - fprintf (actout, "\n\n\n"); - fprintf (actout, "\n", bgcolor); - (void) insert (actout, ownhead); -- fprintf (actout, "
");
-+      fprintf (actout, "
", width);
- 
-       yyin = actin;
-       yyout = actout;
-@@ -351,9 +420,8 @@
-       free (outfilename);
-       fclose (actin);
-       fclose (actout);
--      i++;
--    }
--  return 0;
-+  }
-+  return rc;
- }
- 
- int
-@@ -372,8 +440,8 @@
-           c = fgetc (infile);
-         }
-       fclose (infile);
--      return (1);
-+      return 1;
-     }
-   else
--    return (0);   
-+    return 0;
- }
diff -urN c2html.old/pkg/DESCR c2html/pkg/DESCR
--- c2html.old/pkg/DESCR	Sat Nov 22 01:30:17 1997
+++ c2html/pkg/DESCR	Sun Mar 21 19:05:36 1999
@@ -4,3 +4,8 @@
 font colors  (as Netscape does) the  output will look like highlighted
 by emacs.  Otherwise it will  not look  so   nice, but readability  is
 increased too.
+
+c2html can also work as a  CGI program and convert your sources on the
+fly.   To use  in this  way  copy it  to your  /cgi-bin directory  and
+configure  your webserver to  call c2html  for *.c  and *.h  files. An
+example that works with Apache is described in the manpage.
diff -urN c2html.old/pkg/PLIST c2html/pkg/PLIST
--- c2html.old/pkg/PLIST	Sat Sep  5 10:15:19 1998
+++ c2html/pkg/PLIST	Sun Mar 21 19:05:36 1999
@@ -1,4 +1,5 @@
 bin/c2html
-share/doc/c2html/COPYING
+share/doc/c2html/AUTHORS
+share/doc/c2html/NEWS
 share/doc/c2html/README
 @dirrm share/doc/c2html

>Release-Note:
>Audit-Trail:
>Unformatted:


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-ports" in the body of the message