freebsd-ports/net/c3270/Makefile
Edwin Groothuis 9a71d72b31 New port: net/c3270 - to replace net/tn3270 - Full-screen curses-based
remote login to IBM mainframes

    This port is the latest version of IBM 3270 terminal emulators
    as an open source project that I can find.  The net/tn3270 port
    is dead-dead-dead and will take too much effort to fix on
    5.x-6.x-Current.  This new port is part of a group and has been
    separated such that the user can pick & choose what he wants.
    This particular port is for full-screen text-mode aka console
    sessions with support for curses, OpenSSL, scripting, and
    SNA-printer emulation with IBM mainframes.

    I am unable to test most of the extra functionality.  Also I
    am continuing to investigate some text-mode anomalies that may
    be highly dependent on the graphics/video card in use.  But we
    do need a working replacement for net/tn3270, and this is 'it'.

    Before accepting this new port:

    Firstly, I need someone with legal eyes to look over this
    project's licensing details at http://x3270.bgp.nu/license.html
    , please.  (I posted this request on -ports@ a few weeks ago
    to no avail.)

    If agreeable, the next thing to do is ditch the port net/tn3270
    entirely.  I'm not sure how to do that myself (and not being
    able to do CVS thru our political firewall here at work).

    Thirdly, if agreeable, simply add this new port net/c3270 to
    the collection, please.  Yes it comprises only three little
    files.  ;)

    Fourthly, people with access to mainframes: Test Test Test Please!  :)

I don't agree with ditching x3270 though.

PR:		ports/72367
Submitted by:	"Paul Seniura" <pdseniura@techie.com>
2004-12-16 09:25:27 +00:00

153 lines
3.7 KiB
Makefile

# New ports collection makefile for: c3270
# Date created: 04 October 2004
# Whom: pdseniura@techie.com
#
# $FreeBSD$
#
PORTNAME= c3270
PORTVERSION= 3.3.2p2
CATEGORIES= net
MASTER_SITES= http://x3270.bgp.nu/download/
DISTNAME= ${PORTNAME}-${PORTVERSION:S/.//g}
EXTRACT_SUFX= .tgz
MAINTAINER= pdseniura@techie.com
COMMENT= Full-screen curses-based remote login to IBM mainframes
WRKSRC= ${WRKDIR}/${PORTNAME}-${PORTVERSION:C/([0-9]\.[0-9])(\..*)/\1/}
USE_GMAKE= yes
GNU_CONFIGURE= yes
CONFIGURE_TARGET=--build=${MACHINE_ARCH}-portbld-freebsd${OSREL}
USE_OPENSSL= yes
USE_REINPLACE= yes
MAN1= c3270.1 \
x3270if.1 \
x3270-script.1 \
pr3287.1
MAN5= ibm_hosts.5
MANCOMPRESSED= no
PLIST_FILES= bin/c3270 \
bin/x3270if \
bin/pr3287 \
etc/x3270/ibm_hosts
PLIST_DIRS= etc/x3270
PORTDOCS= LICENSE \
README \
html/Bugs.html \
html/Build.html \
html/FAQ.html \
html/Intro.html \
html/Lineage.html \
html/New.html \
html/README.html \
html/Wishlist.html \
html/c3270-man.html \
html/x3270-script.html \
html/x3270.xbm \
html/x3270if.html
# c3270's ./configure script supports these.
# Within it all options except DBCS are enabled by default.
OPTIONS=OPENSSL 'Build with OpenSSL support' on \
READLINE 'Use system Readline library' on \
PR3287 'Build pr3287 component' on \
ANSI 'Include NVT (ANSI) support' on \
APL 'Include APL support' on \
DBCS 'Include EBCDIC DBCS support' off \
FT 'Include IND\$$FILE support' on \
LOCAL_PROCESS 'Include Local Process support' on \
PRINTER 'Include printer session support' on \
SCRIPT 'Include scripting support' on \
TN3270E 'Include TN3270-Extended support' on \
TRACE 'Include trace support' on
.include <bsd.port.pre.mk>
.if defined(WITHOUT_OPENSSL) && !defined(WITH_OPENSSL)
CONFIGURE_ARGS+= --disable-ssl
.undef USE_OPENSSL
.endif
.if defined(WITHOUT_READLINE) && !defined(WITH_READLINE)
CONFIGURE_ARGS+= --without-readline
.endif
.if defined(WITHOUT_PR3287) && !defined(WITH_PR3287)
CONFIGURE_ARGS+= --without-pr3287
.endif
.if defined(WITHOUT_ANSI) && !defined(WITH_ANSI)
CONFIGURE_ARGS+= --disable-ansi
.endif
.if defined(WITHOUT_APL) && !defined(WITH_APL)
CONFIGURE_ARGS+= --disable-apl
.endif
# EBCDIC double-byte character set support is disabled by default
.if defined(WITH_DBCS) && !defined(WITHOUT_DBCS)
CONFIGURE_ARGS+= --enable-dbcs
BUILD_DEPENDS+= ${LOCALBASE}/include/unicode/ucnv.h:${PORTSDIR}/devel/icu2:install
UCM_TABLES= ibm-1027_P100-1995 \
ibm-300_P110-1997 \
ibm-837_P100-2000
.for table_name in ${UCM_TABLES}
PLIST_FILES+= etc/x3270/icudt28l_${table_name}.cnv
.endfor
.endif
.if defined(WITHOUT_FT) && !defined(WITH_FT)
CONFIGURE_ARGS+= --disable-ft
.endif
.if defined(WITHOUT_LOCAL_PROCESS) && !defined(WITH_LOCAL_PROCESS)
CONFIGURE_ARGS+= --disable-local-process
.endif
.if defined(WITHOUT_PRINTER) && !defined(WITH_PRINTER)
CONFIGURE_ARGS+= --disable-printer
.endif
.if defined(WITHOUT_SCRIPT) && !defined(WITH_SCRIPT)
CONFIGURE_ARGS+= --disable-script
.endif
.if defined(WITHOUT_TN3270E) && !defined(WITH_TN3270E)
CONFIGURE_ARGS+= --disable-tn3270e
.endif
.if defined(WITHOUT_TRACE) && !defined(WITH_TRACE)
CONFIGURE_ARGS+= --disable-trace
.endif
pre-patch:
# icu2-2.8 gets choked with subchar1 tags
.if defined(WITH_DBCS) && !defined(WITHOUT_DBCS)
${REINPLACE_CMD} -e 's/^<subchar1>/#<subchar1>/g' \
${WRKSRC}/*.ucm
.endif
post-install:
-( cd ${WRKSRC} && ${GMAKE} ${MAKE_FLAGS} Makefile install.man )
.if !defined(NOPORTDOCS)
-${MKDIR} ${DOCSDIR}
-${MKDIR} ${DOCSDIR}/html
.for i in ${PORTDOCS}
-${INSTALL_DATA} ${WRKSRC}/${i} ${DOCSDIR}/${i}
.endfor
@${ECHO_MSG} "===> Extra Documentation installed in ${DOCSDIR}/html ."
.endif
post-deinstall:
-${RMDIR} ${DOCSDIR}/html
-${RMDIR} ${DOCSDIR}
.include <bsd.port.post.mk>