From owner-freebsd-ports Thu May 13 15:50: 9 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 EAE37150D0 for ; Thu, 13 May 1999 15:50:01 -0700 (PDT) (envelope-from gnats@FreeBSD.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.9.3/8.9.2) id PAA68279; Thu, 13 May 1999 15:50:01 -0700 (PDT) (envelope-from gnats@FreeBSD.org) Received: from kronos.alcnet.com (kronos.alcnet.com [207.244.223.187]) by hub.freebsd.org (Postfix) with ESMTP id 3B1B815184 for ; Thu, 13 May 1999 15:43:09 -0700 (PDT) (envelope-from kbyanc@kronos.alcnet.com) Received: (from kbyanc@localhost) by kronos.alcnet.com (8.9.3/8.9.3/antispam) id SAA39025; Thu, 13 May 1999 18:56:24 -0400 (EDT) Message-Id: <199905132256.SAA39025@kronos.alcnet.com> Date: Thu, 13 May 1999 18:56:24 -0400 (EDT) From: kbyanc@alcnet.com Reply-To: kbyanc@alcnet.com To: FreeBSD-gnats-submit@freebsd.org X-Send-Pr-Version: 3.2 Subject: ports/11699: new port for FastCGI developers kit Sender: owner-freebsd-ports@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.org >Number: 11699 >Category: ports >Synopsis: new port: FastCGI development kit >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: Thu May 13 15:50:01 PDT 1999 >Closed-Date: >Last-Modified: >Originator: Kelly Yancey >Release: FreeBSD 3.1-19990309-STABLE i386 >Organization: ALC Communications - http://www.alcnet.com/ >Environment: N/A >Description: New item for the ports tree: the FastCGI development kit from http://www.fastcgi.com >How-To-Repeat: N/A >Fix: # This is a shell archive. Save it in a file, remove anything before # this line, and then unpack it by entering "sh file". Note, it may # create directories; files and directories will be owned by you and # have default permissions. # # This archive contains: # # . # ./Makefile # ./pkg # ./pkg/COMMENT # ./pkg/DESCR # ./pkg/PLIST # ./files # ./files/md5 # ./patches # ./patches/patch-aa # ./patches/patch-ab # echo c - . mkdir -p . > /dev/null 2>&1 echo x - ./Makefile sed 's/^X//' >./Makefile << 'END-of-./Makefile' X# New ports collection makefile for: fcgi-devkit X# Version required: 2.1 X# Date created: 13 May 1999 X# Whom: kbyanc X# X# $Id$ X# X XDISTNAME= fcgi-devkit-2.1 XPKGNAME= fcgi-devkit-2.1 XCATEGORIES= www XMASTER_SITES= http://fastcgi.idle.com/dist/ X XMAINTAINER= kbyanc@alcnet.com X XMAN1= cgi-fcgi.1 XMAN3= FCGI_Accept.3 FCGI_Finish.3 FCGI_SetExitStatus.3 FCGI_StartFilterData.3 X XGNU_CONFIGURE= yes X XCONFIGURE_ARGS= X Xpost-install: X @rm -f /usr/local/fcgi-devkit/libfcgi/os_unix.c.orig \ X /usr/local/fcgi-devkit/Makefile.in.orig X X.include END-of-./Makefile echo c - ./pkg mkdir -p ./pkg > /dev/null 2>&1 echo x - ./pkg/COMMENT sed 's/^X//' >./pkg/COMMENT << 'END-of-./pkg/COMMENT' XFastCGI Development Kit. END-of-./pkg/COMMENT echo x - ./pkg/DESCR sed 's/^X//' >./pkg/DESCR << 'END-of-./pkg/DESCR' XFastCGI Development Kit. X XFastCGI is a fast, open, and secure Web server interface that solves the Xperformance problems inherent in CGI, without introducing the overhead and Xcomplexity of proprietary APIs (Application Programming Interfaces). X XFastCGI allows for many nice features such as persistent CGI applications X(eliminating process creation time per request) and being able run CGI Xapplications on hosts remote to the web server itself. X XMost web servers have optional or add-on support for FastCGI. Applications Xwhich are developed with FastCGI behave as standard CGIs when invoked by web Xservers without FastCGI support. In other words, if the server supports XFastCGI, then FastCGI applications get all the perks (mainly being *really* Xfast); if the server does not support FastCGI, then FastCGI applications Xbehave exactly like standard CGIs. X XSee http://www.fastcgi.com/ for more information about the benefits of XFastCGI, for developer documentation, and for the Apache FastCGI module (to Xenable FastCGI support for the popular Apache web server). X X- Kelly Xkbyanc@posi.net END-of-./pkg/DESCR echo x - ./pkg/PLIST sed 's/^X//' >./pkg/PLIST << 'END-of-./pkg/PLIST' Xbin/cgi-fcgi Xlib/libfcgi.a Xfcgi-devkit/FastCGI.mak Xfcgi-devkit/FastCGI.mak.in Xfcgi-devkit/FastCGI.mb Xfcgi-devkit/LICENSE.TERMS Xfcgi-devkit/Makefile Xfcgi-devkit/Makefile.in Xfcgi-devkit/README Xfcgi-devkit/README_NT.txt Xfcgi-devkit/acconfig.h Xfcgi-devkit/build.bat Xfcgi-devkit/build_no_shell.bat Xfcgi-devkit/configure Xfcgi-devkit/configure.in Xfcgi-devkit/dependencies.in Xfcgi-devkit/descrip.dfc Xfcgi-devkit/index.html Xfcgi-devkit/install.sh Xfcgi-devkit/version.conf Xfcgi-devkit/version.in Xfcgi-devkit/Perl/ChangeLog Xfcgi-devkit/Perl/FCGI.PL Xfcgi-devkit/Perl/FCGI.pm Xfcgi-devkit/Perl/Makefile.PL Xfcgi-devkit/Perl/README Xfcgi-devkit/Perl/configure Xfcgi-devkit/Perl/configure.in Xfcgi-devkit/Perl/configure.readme Xfcgi-devkit/Perl/echo.PL Xfcgi-devkit/Perl/typemap Xfcgi-devkit/cgi-fcgi/Makefile Xfcgi-devkit/cgi-fcgi/Makefile.in Xfcgi-devkit/cgi-fcgi/cgi-fcgi.c Xfcgi-devkit/cgi-fcgi/cgi-fcgi.mak Xfcgi-devkit/cgi-fcgi/cgi-fcgi.mak.in Xfcgi-devkit/cgi-fcgi/cgi-fcgi.mdp Xfcgi-devkit/cgi-fcgi/descrip.dfc Xfcgi-devkit/doc/FCGI_Accept.3 Xfcgi-devkit/doc/FCGI_Finish.3 Xfcgi-devkit/doc/FCGI_SetExitStatus.3 Xfcgi-devkit/doc/FCGI_StartFilterData.3 Xfcgi-devkit/doc/Makefile Xfcgi-devkit/doc/cgi-fcgi.1 Xfcgi-devkit/doc/fcgi-devel-kit.htm Xfcgi-devkit/doc/fcgi-java.htm Xfcgi-devkit/doc/fcgi-perf.htm Xfcgi-devkit/doc/fcgi-perl.htm Xfcgi-devkit/doc/fcgi-spec.html Xfcgi-devkit/doc/fcgi-tcl.htm Xfcgi-devkit/doc/omi-logo.gif Xfcgi-devkit/doc/www5-api-workshop.html Xfcgi-devkit/doc/fastcgi-prog-guide/ap_guida.htm Xfcgi-devkit/doc/fastcgi-prog-guide/ap_guide.htm Xfcgi-devkit/doc/fastcgi-prog-guide/apaman.htm Xfcgi-devkit/doc/fastcgi-prog-guide/ch1inta1.gif Xfcgi-devkit/doc/fastcgi-prog-guide/ch1intra.gif Xfcgi-devkit/doc/fastcgi-prog-guide/ch1intro.htm Xfcgi-devkit/doc/fastcgi-prog-guide/ch2c.htm Xfcgi-devkit/doc/fastcgi-prog-guide/ch3perl.htm Xfcgi-devkit/doc/fastcgi-prog-guide/ch4tcl.htm Xfcgi-devkit/doc/fastcgi-prog-guide/cover.htm Xfcgi-devkit/doc/fastcgi-prog-guide/covera.gif Xfcgi-devkit/doc/fastcgi-whitepaper/Makefile Xfcgi-devkit/doc/fastcgi-whitepaper/fastcgi.htm Xfcgi-devkit/doc/fastcgi-whitepaper/img00001.gif Xfcgi-devkit/doc/fastcgi-whitepaper/img00002.gif Xfcgi-devkit/doc/fastcgi-whitepaper/img00003.gif Xfcgi-devkit/examples/Makefile Xfcgi-devkit/examples/Makefile.in Xfcgi-devkit/examples/echo-perl Xfcgi-devkit/examples/echo-tcl Xfcgi-devkit/examples/echo.c Xfcgi-devkit/examples/echo.cgi Xfcgi-devkit/examples/echo.html Xfcgi-devkit/examples/echo.mak Xfcgi-devkit/examples/echo2.c Xfcgi-devkit/examples/echo2.html Xfcgi-devkit/examples/echo2.mak Xfcgi-devkit/examples/echo2_nt.fcgi Xfcgi-devkit/examples/echo_nt.fcgi Xfcgi-devkit/examples/log-dump.c Xfcgi-devkit/examples/sample-store.c Xfcgi-devkit/examples/tclHash.c Xfcgi-devkit/examples/tiny-authorizer.c Xfcgi-devkit/examples/tiny-cgi.c Xfcgi-devkit/examples/tiny-fcgi.c Xfcgi-devkit/examples/tiny-fcgi.cgi Xfcgi-devkit/examples/tiny-fcgi.mak Xfcgi-devkit/examples/tiny-fcgi2.c Xfcgi-devkit/examples/tiny-fcgi2.cgi Xfcgi-devkit/examples/tiny-fcgi2.mak Xfcgi-devkit/examples/tiny-fcgi2_nt.fcgi Xfcgi-devkit/examples/tiny-fcgi_nt.fcgi Xfcgi-devkit/examples/tiny-perl-fcgi Xfcgi-devkit/examples/tiny-tcl-fcgi Xfcgi-devkit/examples/SampleStore/Images/cart-hd.gif Xfcgi-devkit/examples/SampleStore/Images/main-hd.gif Xfcgi-devkit/examples/SampleStore/Images/offer-hd.gif Xfcgi-devkit/examples/SampleStore/Images/purch-hd.gif Xfcgi-devkit/examples/SampleStore/Images/thank-hd.gif Xfcgi-devkit/examples/SampleStore/Protected/RMSTitanic.html Xfcgi-devkit/examples/SampleStore/Unprotected/Purchase.html Xfcgi-devkit/examples/SampleStore/Unprotected/ThankYou.html Xfcgi-devkit/examples/conf/om-httpd.config Xfcgi-devkit/images/aplib-hd.gif Xfcgi-devkit/images/divider.gif Xfcgi-devkit/images/fcgi-hd.gif Xfcgi-devkit/images/mail-hd.gif Xfcgi-devkit/images/navbar.gif Xfcgi-devkit/images/serv-hd.gif Xfcgi-devkit/images/words-hd.gif Xfcgi-devkit/include/fastcgi.h Xfcgi-devkit/include/fcgi_config.h Xfcgi-devkit/include/fcgi_config.h.in Xfcgi-devkit/include/fcgi_config_x86.h Xfcgi-devkit/include/fcgi_stdio.h Xfcgi-devkit/include/fcgiapp.h Xfcgi-devkit/include/fcgiappmisc.h Xfcgi-devkit/include/fcgimisc.h Xfcgi-devkit/include/fcgios.h Xfcgi-devkit/include/tcl.h Xfcgi-devkit/include/tclInt.h Xfcgi-devkit/include/tclRegexp.h Xfcgi-devkit/java/FCGIGlobalDefs.java Xfcgi-devkit/java/FCGIInputStream.java Xfcgi-devkit/java/FCGIInterface.java Xfcgi-devkit/java/FCGIMessage.java Xfcgi-devkit/java/FCGIOutputStream.java Xfcgi-devkit/java/FCGIRequest.java Xfcgi-devkit/libfcgi/Makefile Xfcgi-devkit/libfcgi/Makefile.in Xfcgi-devkit/libfcgi/descrip.dfc Xfcgi-devkit/libfcgi/fcgi_stdio.c Xfcgi-devkit/libfcgi/fcgiapp.c Xfcgi-devkit/libfcgi/libfcgi.mak Xfcgi-devkit/libfcgi/libfcgi.mak.in Xfcgi-devkit/libfcgi/os_unix.c Xfcgi-devkit/libfcgi/os_win32.c Xfcgi-devkit/libfcgi/strerror.c Xfcgi-devkit/tcl/common/tclAppInit.c Xfcgi-devkit/tcl/common/tclFCGI.c Xfcgi-devkit/tcl/tcl7.4/Makefile.in Xfcgi-devkit/tcl/tcl7.4/configure.in X@dirrm fcgi-devkit/Perl X@dirrm fcgi-devkit/cgi-fcgi X@dirrm fcgi-devkit/doc/fastcgi-prog-guide X@dirrm fcgi-devkit/doc/fastcgi-whitepaper X@dirrm fcgi-devkit/doc X@dirrm fcgi-devkit/examples/SampleStore/Images X@dirrm fcgi-devkit/examples/SampleStore/Protected X@dirrm fcgi-devkit/examples/SampleStore/Unprotected X@dirrm fcgi-devkit/examples/SampleStore X@dirrm fcgi-devkit/examples/conf X@dirrm fcgi-devkit/examples X@dirrm fcgi-devkit/images X@dirrm fcgi-devkit/include X@dirrm fcgi-devkit/java X@dirrm fcgi-devkit/libfcgi X@dirrm fcgi-devkit/tcl/common X@dirrm fcgi-devkit/tcl/tcl7.4 X@dirrm fcgi-devkit/tcl X@dirrm fcgi-devkit X END-of-./pkg/PLIST echo c - ./files mkdir -p ./files > /dev/null 2>&1 echo x - ./files/md5 sed 's/^X//' >./files/md5 << 'END-of-./files/md5' XMD5 (fcgi-devkit-2.1.tar.gz) = c397edce40036372d230193223549f98 END-of-./files/md5 echo c - ./patches mkdir -p ./patches > /dev/null 2>&1 echo x - ./patches/patch-aa sed 's/^X//' >./patches/patch-aa << 'END-of-./patches/patch-aa' X*** Makefile.in.orig Thu May 13 17:22:24 1999 X--- Makefile.in Thu May 13 17:31:56 1999 X*************** X*** 14,20 **** X prefix = @prefix@ X common_prefix = @common_prefix@ X CVS_TAG = @CVS_TAG@ X! EXPORT_DIR = $(prefix)/build X PROTO_DIR = ../proto X BIN_DIR = $(exec_prefix)/bin X LIB_DIR = $(prefix)/lib X--- 14,20 ---- X prefix = @prefix@ X common_prefix = @common_prefix@ X CVS_TAG = @CVS_TAG@ X! EXPORT_DIR = $(prefix)/fcgi-devkit X PROTO_DIR = ../proto X BIN_DIR = $(exec_prefix)/bin X LIB_DIR = $(prefix)/lib X*************** X*** 41,47 **** X (cd cgi-fcgi; make all) X (cd examples; make all) X X! export: X @ for i in $(TARGET_DIRS); \ X do \ X if test ! -d $$i; then \ X--- 41,47 ---- X (cd cgi-fcgi; make all) X (cd examples; make all) X X! install: all X @ for i in $(TARGET_DIRS); \ X do \ X if test ! -d $$i; then \ END-of-./patches/patch-aa echo x - ./patches/patch-ab sed 's/^X//' >./patches/patch-ab << 'END-of-./patches/patch-ab' X*** /usr/ports/www/fcgi-devkit/work/fcgi-devkit-2.1/libfcgi/os_unix.c Sat Feb 6 00:08:33 1999 X--- os_unix.c Thu May 13 10:32:00 1999 X*************** X*** 412,420 **** X */ X int OS_Read(int fd, char * buf, size_t len) X { X! return(read(fd, buf, len)); X } X! X /* X *-------------------------------------------------------------- X * X--- 412,424 ---- X */ X int OS_Read(int fd, char * buf, size_t len) X { X! int result; X! do { X! result = read(fd, buf, len); X! } while((result == -1) && (errno == EINTR)); X! return(result); X } X! X /* X *-------------------------------------------------------------- X * X*************** X*** 433,442 **** X */ X int OS_Write(int fd, char * buf, size_t len) X { X! return(write(fd, buf, len)); X } X X- X /* X *---------------------------------------------------------------------- X * X--- 437,449 ---- X */ X int OS_Write(int fd, char * buf, size_t len) X { X! int result; X! do { X! result = write(fd, buf, len); X! } while((result == -1) && (errno == EINTR)); X! return(result); X } X X /* X *---------------------------------------------------------------------- X * X*************** X*** 761,768 **** X * any work to do. X */ X if(numRdPosted == 0 && numWrPosted == 0) { X! selectStatus = select((maxFd+1), &readFdSetCpy, &writeFdSetCpy, X! NULL, tmo); X if(selectStatus < 0) { X exit(errno); X } X--- 768,777 ---- X * any work to do. X */ X if(numRdPosted == 0 && numWrPosted == 0) { X! do { X! selectStatus = select((maxFd+1), &readFdSetCpy, &writeFdSetCpy, X! NULL, tmo); X! } while ((selectStatus == -1) && (errno == EINTR)); X if(selectStatus < 0) { X exit(errno); X } X*************** X*** 1020,1030 **** X { X struct timeval tval = { READABLE_UNIX_FD_DROP_DEAD_TIMEVAL }; X fd_set read_fds; X X FD_ZERO(&read_fds); X FD_SET(fd, &read_fds); X X! return select(fd + 1, &read_fds, NULL, NULL, &tval) >= 0 && FD_ISSET(fd, &read_fds); X } X X /* X--- 1029,1043 ---- X { X struct timeval tval = { READABLE_UNIX_FD_DROP_DEAD_TIMEVAL }; X fd_set read_fds; X+ int result; X X FD_ZERO(&read_fds); X FD_SET(fd, &read_fds); X X! do { X! result = select(fd + 1, &read_fds, NULL, NULL, &tval); X! } while((result == -1) && (errno == EINTR)); X! return result >= 0 && FD_ISSET(fd, &read_fds); X } X X /* END-of-./patches/patch-ab exit >Release-Note: >Audit-Trail: >Unformatted: To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-ports" in the body of the message