freebsd-ports/x11-servers/XttXF86srv-common/Makefile
Satoshi Asami c6bcad2436 (1) Add new variable, XFREE86_VERSION, to specify which version of
XFree86 (3 or 4) to depend to when USE_XLIB is set.
    XFREE86_VERSION defaults to 3 for now, but adventurous users can
    override it in /etc/make.conf.  When XFREE86_VERSION=3, USE_XLIB
    will add a dependency to x11/XFree86; when it is set to 4, the
    dependency will be to x11/XFree86-4-libraries.  When
    XFREE86_VERSION=4, the PKG_IGNORE_DEPENDS and ALWAYS_BUILD_DEPENDS
    hacks to avoid messing with XFree86 are turned off.

    Since XFree86 version 4 includes some software that used to be
    separate ports, when XFREE86_VERSION=3 the following variables are
    provided:

    USE_DGS		LIB_DEPENDS on x11/dgs
    USE_FREETYPE	LIB_DEPENDS on print/freetype
    USE_MESA		LIB_DEPENDS on graphics/Mesa3
    USE_XPM		LIB_DEPENDS on graphics/xpm

    When XFREE86_VERSION=4, these variables have no effect.  The
    LIB_DEPENDS in the tree for the above four ports have all been
    converted to the USE_* counterparts.  For your information, this
    is the count of the number of ports:

    USE_DGS		0
    USE_FREETYPE	16
    USE_MESA		36
    USE_XPM		236

    There is a new variable, XAWVER, which is set to 6 when
    XFREE86_VERSION=3 and 7 when XFREE86_VERSION=4.  This is also
    passed to PLIST_SUB so ports that build Xaw based shared libraries
    can use this variable to substitute the shlib version number.

    There is also a provision of using a separate mtree file for
    XFREE86_VERSION=4, but that part is not enabled yet.

Reviewed by:	the ports list
Tested by:	make index (XFREE86_VERSION=3 only)

(2) Add hebrew to list of valid categories.
Submitted by:	nbm
2000-08-03 09:28:57 +00:00

213 lines
6.7 KiB
Makefile

# New ports collection makefile for: Common Files for Xservers with Xtt
# Date created: 15 April 1998
# Whom: Taguchi Takeshi <taguchi@tohoku.iij.ad.jp>
#
# $FreeBSD$
#
PORTNAME?= xtt-common
PORTVERSION= ${VERSION}.${PATCHLEVEL}
CATEGORIES= x11-servers
MASTER_SITES= ftp://ftp.xfree86.org/pub/XFree86/3.3.6/source/ \
ftp://ftp.freesoftware.com/pub/XFree86/3.3.6/source/ \
http://X-TT.dsl.gr.jp/dists/1.x/${VERSION}/
DISTFILES= X336src-1.tgz xtt-${VERSION}.tgz
MAINTAINER= taguchi@tohoku.iij.ad.jp
RUN_DEPENDS+= mkttfdir:${PORTSDIR}/print/perlftlib
VERSION= 1.3
PATCHLEVEL= 0
SERVER?= common
INSTALLS_SHLIB= yes
.if !defined(USE_SHARED_WRKSRC) && defined(COMPILE_ALL_SERVERS_AT_ONCE)
USE_SHARED_WRKSRC= YES
.endif
.if !defined(XDM_DES) && defined(USA_RESIDENT) && ${USA_RESIDENT} == NO
MASTER_SITES+= ftp://psych.psy.uq.oz.au/pub/X11R5/ \
ftp://ftp.internat.freebsd.org/pub/FreeBSD/X11-Crypto/ \
ftp://ftp3.za.freebsd.org/pub/FreeBSD/X11-Crypto/
DISTFILES+= Wraphelp.c
IGNOREFILES= Wraphelp.c
.endif
USE_X_PREFIX= YES
USE_FREETYPE= YES
EXTRACT_ONLY= X336src-1.tgz xtt-${VERSION}.tgz
BINOWN= root
BINGRP= wheel
MASTERDIR?= ${.CURDIR}/../XttXF86srv-common
FILESDIR= ${MASTERDIR}/files
PATCHDIR= ${MASTERDIR}/patches
.if defined(USE_SHARED_WRKSRC)
WRKDIR= ${MASTERDIR}/work
.endif
WRKSRC= ${WRKDIR}/xc
DIST_SUBDIR= xc
XTTDIR= ${WRKDIR}/xtt-${VERSION}
.if !defined(PATCH_DEBUG)
XTTPATCHARGS= -p1 -E -t -s -N
.else
XTTPATCHARGS= -p1 -E
.endif
COREPATCHES= shared-libfont-1.2.diff xfs-for-delayed-font-1.0.diff \
make-xfs-only-1.3.diff xtt-xf335-changes.diff
XTTTARBALL= xtt-core.tar
ADDPATCHES= ${XTTDIR}/contribute/xtt-xfsft-lib.patch
DOCDIR= ${PREFIX}/share/doc/Xtt
PATCH_DIST_ARGS= -d ${WRKDIR} --forward --quiet -E ${PATCH_STRIP}
#PATCH_DIST_STRIP= -p1
# ******************
# USE_SHARED_WRKSRC:
# All Xtt ports require many disk space. Imagen, X source code will extract
# under server and common ports dir. This variable save your disk space.
# if this variable is defined, X source will only extract under common
# ports. server ports will use this common's WRKSRC.
# COMPILE_ALL_SERVERS_AT_ONCE:
# If this variable is defined, All server ports will build at once.
# This variable will save your time, if you want to make all xtt packages.
# ******************
.if defined(USE_SHARED_WRKSRC)
SHARED_COOKIE= ${WRKDIR}/.compiled_by_other_server_ports
CONFIGURE_COOKIE= ${WRKDIR}/.configure_done.${SERVER}
BUILD_COOKIE= ${WRKDIR}/.build_done.${SERVER}
INSTALL_COOKIE= ${WRKDIR}/.install_done.${SERVER}
PACKAGE_COOKIE= ${WRKDIR}/.package_done.${SERVER}
TMPPLIST= ${WRKDIR}/.PLIST.${SERVER}.mktmp
.if ${SERVER} == common && exists(${SHARED_COOKIE}) && !defined(COMPILE_ALL_SERVERS_AT_ONCE)
EXTRACT_ONLY=
.endif
.if ${SERVER} == common && exists(${SHARED_COOKIE}) && !defined(COMPILE_ALL_SERVERS_AT_ONCE)
NO_BUILD= YES
.endif
.if defined(COMPILE_ALL_SERVERS_AT_ONCE) && ${SERVER} != xfs
ALL_SERVER= XF86_3DLabs XF86_8514 XF86_AGX XF86_I128 XF86_Mach32 \
XF86_Mach64 XF86_Mach8 XF86_Mono XF86_P9000 XF86_S3 XF86_S3V \
XF86_SVGA XF86_VGA16 XF86_W32 \
XF98_EGC XF98_GA968 XF98_GANBWAP XF98_MGA XF98_NEC480 \
XF98_NECS3 XF98_NKVNEC XF98_SVGA XF98_TGUI XF98_PWLB XF98_PWSKB \
XF98_WABEP XF98_WABS XF98_WSNA \
common
HOSTDEFSRV= ${FILESDIR}/host.def.ALL
.else
ALL_SERVER= ${SERVER} common
HOSTDEFSRV= ${FILESDIR}/host.def.${SERVER}
.endif
.else
ALL_SERVER= ${SERVER}
HOSTDEFSRV= ${FILESDIR}/host.def.${SERVER}
.endif
LOCALFILE= host.def.local
HOSTDEFLOCAL= ${WRKDIR}/${LOCALFILE}
HOSTDEFDST= ${WRKSRC}/config/cf/${LOCALFILE}
HOSTDEFORG= ${WRKSRC}/config/cf/host.def
.if ${SERVER} == xfs
ALL_TARGET= xfs
.elif ${SERVER} == common && !defined(COMPILE_ALL_SERVERS_AT_ONCE)
ALL_TARGET= libfont
.else
ALL_TARGET= World
.endif
.include <bsd.port.pre.mk>
pre-fetch:
.if defined(USE_SHARED_WRKSRC)
@( \
${ECHO} "************************************************************"; \
${ECHO} "* ALL PORTS COMMONLY USE x11/XttXF86srv-common/work ! *"; \
${ECHO} "************************************************************")
.if defined(COMPILE_ALL_SERVERS_AT_ONCE)
@( \
${ECHO} "************************************************************"; \
${ECHO} "* ALL PORTS (except xfs) BUILD AT ONCE ! *"; \
${ECHO} "************************************************************")
.endif
.endif
.if !defined(USE_SHARED_WRKSRC) && exists(${MASTERDIR}/work/.configure_done.${SERVER})
pre-extract:
@( \
${ECHO} "ERROR:" ; \
${ECHO} "Xtt ${SERVER} ports have already extracted with" ; \
${ECHO} "\"USE_SHARED_WRKSRC\" option." ; \
${FALSE} )
.endif
pre-patch:
@( cd ${WRKSRC}; \
${PATCH} -s < ${PATCHDIR}/xttpatch ; \
for i in ${COREPATCHES} ; do \
${PATCH} ${XTTPATCHARGS} < ${XTTDIR}/$${i}; \
done; \
${TAR} xf ${XTTDIR}/${XTTTARBALL} -C ${WRKSRC}/lib/font; \
for i in ${ADDPATCHES} ; do \
${PATCH} ${XTTPATCHARGS} < $${i}; \
done )
pre-configure:
@( ${CP} ${FILESDIR}/Imakefile ${WRKDIR} ; \
(cd ${WRKDIR} ; ${XMKMF} ; \
${SETENV} ${SCRIPT_ENV} DISTDIR=${DISTDIR} WRKDIR=${WRKDIR} \
FILESDIR=${FILESDIR} ${MAKE}) ; \
${CAT} ${HOSTDEFLOCAL} ${HOSTDEFSRV} > ${HOSTDEFDST} ; \
${ECHO} "#include <${LOCALFILE}>" >> ${HOSTDEFORG} )
.if ${SERVER} == common
do-install:
@( \
cd ${WRKSRC}/lib/font; \
${SETENV} ${MAKE_ENV} ${MAKE} install; \
${INSTALL_SCRIPT} ${FILESDIR}/mkfontdir.pl ${PREFIX}/bin; \
${MKDIR} ${DOCDIR}; \
${INSTALL_DATA} ${XTTDIR}/doc/[0A-Z]*.eng ${DOCDIR}; \
${INSTALL_DATA} ${XTTDIR}/doc/[0A-Z]*.jis ${DOCDIR} )
.if ${PORTOBJFORMAT} == "aout"
${LN} -sf libfont.so.1.2 ${PREFIX}/lib/libfont.so
.endif
.elif ${SERVER} == xfs
do-install:
@${SETENV} OBJFORMAT=${PORTOBJFORMAT} ${INSTALL_PROGRAM} \
${WRKSRC}/programs/xfs/xfs ${PREFIX}/bin/xfs.xtt
.else
do-install:
@( \
${SETENV} OBJFORMAT=${PORTOBJFORMAT} ${INSTALL_PROGRAM} \
${WRKSRC}/programs/Xserver/${SERVER} ${PREFIX}/bin/${SERVER}.xtt; \
${LN} -fs ${PREFIX}/bin/${SERVER}.xtt ${PREFIX}/bin/X )
.endif
.if defined(USE_SHARED_WRKSRC)
post-configure:
@( \
cd ${WRKDIR} ; \
for i in ${ALL_SERVER} ; do \
${TOUCH} ${TOUCH_FLAGS} `${BASENAME} ${CONFIGURE_COOKIE} .${SERVER}`.$${i} ; \
done )
.if ${SERVER} != common || (${SERVER} == common && defined(COMPILE_ALL_SERVERS_AT_ONCE))
@${TOUCH} ${TOUCH_FLAGS} ${SHARED_COOKIE}
.endif
post-build:
@( \
cd ${WRKDIR} ; for i in ${ALL_SERVER} ; do \
${TOUCH} ${TOUCH_FLAGS} `${BASENAME} ${BUILD_COOKIE} .${SERVER}`.$${i} ; \
done )
.if ${SERVER} != common || (${SERVER} == common && defined(COMPILE_ALL_SERVERS_AT_ONCE))
@${TOUCH} ${TOUCH_FLAGS} ${SHARED_COOKIE}
.endif
post-install:
@( \
cd ${WRKDIR} ; ${TOUCH} ${TOUCH_FLAGS} ${INSTALL_COOKIE} ; \
${TOUCH} ${TOUCH_FLAGS} `${BASENAME} ${INSTALL_COOKIE} .${SERVER}`.common )
post-package:
@( \
cd ${WRKDIR} ; ${TOUCH} ${TOUCH_FLAGS} ${PACKAGE_COOKIE} )
.endif
.include <bsd.port.post.mk>