1
0
mirror of https://git.FreeBSD.org/ports.git synced 2025-01-26 09:46:09 +00:00

Add interchange 4.8.6, RedHat's database-enabled e-commerce server.

The committed port is an improved and updated version of the submitted one,
thanks to Stefan (Racke) Hornburg <racke@linuxia.de> for his helpful hints
about some configure/build internals of interchange.

I decided to take over maintainership of this port for a while until someone
more responsive than the port submitter (no answer so far from him since I
decided to take over the PR) is interested in it or until I think the testing
period of this port is over.

PR:		41390
Submitted by:	Seth Kingsley <sethk@meowfishies.com>
Thanks to:	Stefan (Racke) Hornburg <racke@linuxia.de>
This commit is contained in:
Alexander Leidinger 2002-08-31 11:25:57 +00:00
parent 9cd47598c1
commit b18f2651ac
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=65363
13 changed files with 1663 additions and 0 deletions

View File

@ -110,6 +110,7 @@
SUBDIR += httrack
SUBDIR += hypermail
SUBDIR += indexme
SUBDIR += interchange
SUBDIR += jakarta-jmeter
SUBDIR += jakarta-tomcat3
SUBDIR += jakarta-tomcat4

64
www/interchange/Makefile Normal file
View File

@ -0,0 +1,64 @@
# New ports collection makefile for: interchange
# Date created: 2 July 2002
# Whom: Seth Kingsley <sethk@meowfishies.com
#
# $FreeBSD$
#
PORTNAME= interchange
PORTVERSION= 4.8.6
CATEGORIES= www
MASTER_SITES= http://ftp.interchange.redhat.com/interchange/4.8/tar/
MAINTAINER= netchild@FreeBSB.org
BUILD_DEPENDS= ${ARCH_PERL}/SQL/Statement.pm:${PORTSDIR}/databases/p5-SQL-Statement
RUN_DEPENDS= ${ARCH_PERL}/SQL/Statement.pm:${PORTSDIR}/databases/p5-SQL-Statement \
${ARCH_PERL}/Storable.pm:${PORTSDIR}/devel/p5-Storable \
${ARCH_PERL}/Safe/Hole.pm:${PORTSDIR}/security/p5-Safe-Hole \
${ARCH_PERL}/Digest/MD5.pm:${PORTSDIR}/security/p5-Digest-MD5 \
${ARCH_PERL}/MIME/Base64.pm:${PORTSDIR}/mail/p5-MIME-Tools \
${SITE_PERL}/URI/URL.pm:${PORTSDIR}/net/p5-URI \
${SITE_PERL}/Term/ReadLine/Perl.pm:${PORTSDIR}/devel/p5-ReadLine-Perl \
${ARCH_PERL}/Term/ReadKey.pm:${PORTSDIR}/devel/p5-Term-ReadKey
USE_PERL5= yes
PERL_CONFIGURE= yes
SITE_PERL= ${LOCALBASE}/lib/perl5/site_perl/${PERL_VER}
ARCH_PERL= ${SITE_PERL}/${PERL_ARCH}
MAN1= configdump.1 config_prog.1 expire.1 localize.1 \
makecat.1 dump.1 compile_link.1 offline.1 update.1 \
restart.1 expireall.1 interchange.1
MAN7= iccattut.7 icdatabase.7 icadvanced.7 icconfig.7 \
icfoundation.7 icfaq.7 ic_howto_cvs.7 icupgrade.7 \
ic_ecommerce.7 ictags.7 ictemplates.7
USE_REINPLACE= yes
MAKE_ARGS+= NOCPANINSTALL=1 \
INSTALLARCHLIB=${PREFIX}/interchange \
INSTALLPRIVLIB=${PREFIX}/interchange/lib/perl5/site_perl/${PERL_VER} \
INSTALLMAN1DIR=${PREFIX}/man/man1 \
INSTALLMAN3DIR=${PREFIX}/man/man7
CONFIGURE_ARGS+= force=1
pre-configure:
.if !defined(USE_THIS_PERL) && !defined(BATCH)
@[ ! "${PERL_VER}" \< "5.6.1" ] || ( ${ECHO_CMD} -e "You use perl ${PERL_VER}, interchange should be used with 5.6.1 or better,\njust install the newer perl from ports and run 'use.perl port', this will\nmake the new perl the default perl. If you already have some perl modules\ninstalled for your old perl, you have to reinstall them for the new perl.\n\nIf you absolutely want to try to run interchange with perl ${PERL_VER},\nyou have to add '-DUSE_THIS_PERL' as an option for 'make'.\n" ; exit 1 )
.endif
.if !defined(CHECK_FOR_IC_USER) && !defined(BATCH)
@${ECHO_CMD} -e "This port needs a specific user account ('interch') at configure time.\n\nIf it is ok for you to add a new user at configure time of this port\nadd '-DCHECK_FOR_IC_USER' as an option for 'make'.\n"
@exit 1
.endif
@PKG_PREFIX=${PREFIX} ${.CURDIR}/pkg-install ${PKGNAME} PRE-INSTALL
post-install:
@${INSTALL_SCRIPT} ${FILESDIR}/interchange.sh \
${PREFIX}/etc/rc.d/interchange.sh.sample
@${REINPLACE_CMD} -i "" -e 's:%%PREFIX%%:${PREFIX}:' \
${PREFIX}/etc/rc.d/interchange.sh.sample
.include <bsd.port.mk>

1
www/interchange/distinfo Normal file
View File

@ -0,0 +1 @@
MD5 (interchange-4.8.6.tar.gz) = cb55a3a9656e4c53bbb65bc81d024fdc

View File

@ -0,0 +1,21 @@
#!/bin/sh
case "$1" in
start)
if [ -x %%PREFIX%%/interchange/bin/interchange ]; then
su -m $(cat %%PREFIX%%/interchange/_uid) \
-c '%%PREFIX%%/interchange/bin/interchange >/dev/null' && \
echo -n ' interchange'
fi
;;
stop)
if [ -r %%PREFIX%%/interchange/etc/interchange.pid ]; then
kill $(cat %%PREFIX%%/interchange/etc/interchange.pid) && \
echo -n ' interchange'
fi
;;
*)
echo "Usage: `basename $0` {start|stop}" >&2
;;
esac

View File

@ -0,0 +1,49 @@
--- Makefile.PL_orig Sun Aug 11 13:52:36 2002
+++ Makefile.PL Sun Aug 11 13:57:36 2002
@@ -709,7 +716,7 @@
VERBINST=0
mv_install ::
- \$(PERL) Makefile.PL force nocpaninstall=\$(NOCPANINSTALL) $uidparm final=\$(INSTALLARCHLIB)
+ \$(PERL) Makefile.PL force nocpaninstall=\$(NOCPANINSTALL) $uidparm final=\$(PREFIX)
install :: all pure_install doc_install mv_install
@@ -744,7 +751,7 @@
}
my %mv_specific = qw/
- STORABLE 1 PREFIX 1 FORCE 1 FINAL 1 RPMBUILDDIR 1 INTERCHANGE_USER 1
+ STORABLE 1 PREFIX 0 FORCE 1 FINAL 1 RPMBUILDDIR 1 INTERCHANGE_USER 1
/;
my %delete;
use Getopt::Long;
@@ -789,17 +796,17 @@
WriteMakefile(
NAME => "Interchange",
MAN3PODS => {
- 'pod/ic_ecommerce.pod' => 'blib/man3/ic_ecommerce.8',
- 'pod/ic_howto_cvs.pod' => 'blib/man3/ic_howto_cvs.8',
- 'pod/icadvanced.pod' => 'blib/man3/icadvanced.8',
- 'pod/iccattut.pod' => 'blib/man3/iccattut.8',
- 'pod/icconfig.pod' => 'blib/man3/icconfig.8',
- 'pod/icdatabase.pod' => 'blib/man3/icdatabase.8',
- 'pod/icfaq.pod' => 'blib/man3/icfaq.8',
- 'pod/icfoundation.pod' => 'blib/man3/icfoundation.8',
- 'pod/ictags.pod' => 'blib/man3/ictags.8',
- 'pod/ictemplates.pod' => 'blib/man3/ictemplates.8',
- 'pod/icupgrade.pod' => 'blib/man3/icupgrade.8',
+ 'pod/ic_ecommerce.pod' => 'blib/man3/ic_ecommerce.7',
+ 'pod/ic_howto_cvs.pod' => 'blib/man3/ic_howto_cvs.7',
+ 'pod/icadvanced.pod' => 'blib/man3/icadvanced.7',
+ 'pod/iccattut.pod' => 'blib/man3/iccattut.7',
+ 'pod/icconfig.pod' => 'blib/man3/icconfig.7',
+ 'pod/icdatabase.pod' => 'blib/man3/icdatabase.7',
+ 'pod/icfaq.pod' => 'blib/man3/icfaq.7',
+ 'pod/icfoundation.pod' => 'blib/man3/icfoundation.7',
+ 'pod/ictags.pod' => 'blib/man3/ictags.7',
+ 'pod/ictemplates.pod' => 'blib/man3/ictemplates.7',
+ 'pod/icupgrade.pod' => 'blib/man3/icupgrade.7',
},
DISTNAME => "interchange",
clean => {

View File

@ -0,0 +1,35 @@
#!/bin/sh
RUNDIR=/var/run/interchange
LOGDIR=/var/log/interchange
ICUSER=$(cat %%PREFIX%%/interchange/_uid)
PIDFILE=${RUNDIR}/interchange.pid
SOCKFILE=${RUNDIR}/interchange.sock
OPTS="SocketFile=${SOCKFILE} IPCsocket=${SOCKFILE}.ipc PIDfile=${PIDFILE}"
OPTS="${OPTS} --pidfile=${PIDFILE} --log=${LOGDIR}/error.log --rundir=${RUNDIR}"
case "$1" in
start)
[ -d ${RUNDIR} ] || \
(mkdir ${RUNDIR} && chown ${ICUSER}:${ICUSER} ${RUNDIR})
[ -d ${LOGDIR} ] || \
(mkdir ${LOGDIR} && chown ${ICUSER}:${ICUSER} ${LOGDIR})
if [ -x %%PREFIX%%/bin/interchange ]; then
su -m ${ICUSER} \
-c "%%PREFIX%%/bin/interchange ${OPTS} >/dev/null" && \
echo -n ' interchange'
fi
;;
stop)
if [ -r ${PIDFILE} ]; then
kill $(cat ${PIDFILE}) && \
echo -n ' interchange'
fi
;;
*)
echo "Usage: `basename $0` {start|stop}" >&2
;;
esac

View File

@ -0,0 +1,31 @@
--- Makefile.PL_orig Sun Aug 11 13:52:36 2002
+++ Makefile.PL Sun Aug 11 13:57:36 2002
@@ -789,17 +796,17 @@
WriteMakefile(
NAME => "Interchange",
MAN3PODS => {
- 'pod/ic_ecommerce.pod' => 'blib/man3/ic_ecommerce.8',
- 'pod/ic_howto_cvs.pod' => 'blib/man3/ic_howto_cvs.8',
- 'pod/icadvanced.pod' => 'blib/man3/icadvanced.8',
- 'pod/iccattut.pod' => 'blib/man3/iccattut.8',
- 'pod/icconfig.pod' => 'blib/man3/icconfig.8',
- 'pod/icdatabase.pod' => 'blib/man3/icdatabase.8',
- 'pod/icfaq.pod' => 'blib/man3/icfaq.8',
- 'pod/icfoundation.pod' => 'blib/man3/icfoundation.8',
- 'pod/ictags.pod' => 'blib/man3/ictags.8',
- 'pod/ictemplates.pod' => 'blib/man3/ictemplates.8',
- 'pod/icupgrade.pod' => 'blib/man3/icupgrade.8',
+ 'pod/ic_ecommerce.pod' => 'blib/man3/ic_ecommerce.7',
+ 'pod/ic_howto_cvs.pod' => 'blib/man3/ic_howto_cvs.7',
+ 'pod/icadvanced.pod' => 'blib/man3/icadvanced.7',
+ 'pod/iccattut.pod' => 'blib/man3/iccattut.7',
+ 'pod/icconfig.pod' => 'blib/man3/icconfig.7',
+ 'pod/icdatabase.pod' => 'blib/man3/icdatabase.7',
+ 'pod/icfaq.pod' => 'blib/man3/icfaq.7',
+ 'pod/icfoundation.pod' => 'blib/man3/icfoundation.7',
+ 'pod/ictags.pod' => 'blib/man3/ictags.7',
+ 'pod/ictemplates.pod' => 'blib/man3/ictemplates.7',
+ 'pod/icupgrade.pod' => 'blib/man3/icupgrade.7',
},
DISTNAME => "interchange",
clean => {

View File

@ -0,0 +1,13 @@
--- dist/src/tlink.c.orig Thu Jul 4 03:03:50 2002
+++ dist/src/tlink.c Thu Jul 4 03:04:04 2002
@@ -36,9 +36,9 @@
#include <sys/time.h>
#include <sys/types.h>
#include <sys/socket.h>
+#include <netinet/in.h>
#include <arpa/inet.h>
#include <arpa/telnet.h>
-#include <netinet/in.h>
#include <netdb.h>
#include <sys/un.h>
#include <unistd.h>

View File

@ -0,0 +1 @@
RedHat's database-enabled e-commerce server

View File

@ -0,0 +1,16 @@
#!/bin/sh
#
# $FreeBSD$
#
if [ "$2" != "POST-DEINSTALL" ]; then
exit 0
fi
USER=interch
# Don't delete it, there may be ${USER} owned files around.
pw usershow "${USER}" >/dev/null 2>&1 \
&& echo -e "*\n* To delete the user '${USER}' use 'pw userdel ${USER}'.\n*"
exit 0

View File

@ -0,0 +1,8 @@
Interchange is the open source alternative to commercial e-commerce
servers and "best of breed" application server/component applications.
Interchange is one of the most powerful tools available to automate and
database-enable your web site or build online applications. It's also
one of the easiest tools to learn, plus it's open source, making it the
most open and least expensive solution to implement.
WWW: http://www.icdevgroup.org/cgi-bin/ic/index

View File

@ -0,0 +1,28 @@
#!/bin/sh
#
# $FreeBSD$
#
# $1 = package name
if [ "$2" != "PRE-INSTALL" ]; then
exit 0
fi
USER=interch
GROUP=${USER}
UID=94
GID=${UID}
pw groupshow ${GROUP} >/dev/null 2>&1 \
|| (pw groupadd ${GROUP} -g ${GID} \
|| (echo "Adding group '${GROUP}' failed!"; exit 1) \
&& echo "Added group '${GROUP}'.")
pw usershow ${USER} >/dev/null 2>&1 \
|| (pw useradd ${USER} -h - -u ${UID} -g ${GROUP} \
-c "Interchange user" -d "${PKG_PREFIX}/interchange" \
-s "/sbin/nologin" \
|| (echo "Adding user '${USER}' failed!"; exit 1) \
&& echo "Added user '${USER}'.")
exit 0

1395
www/interchange/pkg-plist Normal file

File diff suppressed because it is too large Load Diff