pkgsrc/net/arla/Makefile
garbled e6506e3bc3 Add an OSVERSION_SPECIFIC=yes flag to these packages. The flag at this time
doesn't enable any functionality.  It is here as a marker, so people building
binary packages know that these packages have version-specific features
that would make them incompatible with other point releases..  (such as
LKM's)
2000-10-18 04:26:53 +00:00

127 lines
5 KiB
Makefile

# $NetBSD: Makefile,v 1.9 2000/10/18 04:26:53 garbled Exp $
#
DISTNAME= arla-0.34.2
CATEGORIES= net security
MASTER_SITES= ftp://ftp.stacken.kth.se/pub/arla/
MAINTAINER= wennmach@netbsd.org
HOMEPAGE= http://www.stacken.kth.se/project/arla/
DEPENDS+= kth-krb4-1.0.1:../../security/kth-krb4
OSVERSION_SPECIFIC= yes
GNU_CONFIGURE= yes
INFO_FILES= arla.info
.include "../../mk/bsd.prefs.mk"
.if !exists(/sys/lib/libkern/libkern.h)
.if exists(${BSDSRCDIR}/sys/lib/libkern/libkern.h)
CONFIGURE_ARGS+= --with-sys=${BSDSRCDIR}/sys
.else
IGNORE= "${PKGNAME} requires kernel sources available under \$$BSDSRCDIR/sys (or /sys)"
.endif
.endif
CONFIGURE_ARGS+= --with-krb4=${PREFIX}
.if defined(ARLA_CACHE)
CONFIGURE_ARGS+= --with-arlacachedir=${ARLA_CACHE}
.endif
PLIST_SRC= ${WRKDIR}/PLIST
MESSAGE_FILE= ${WRKDIR}/MESSAGE
.if defined(ARLA_CACHE)
CACHEDIR= ${ARLA_CACHE}
.else
CACHEDIR= ${LOCALBASE}/cache
.endif
post-patch:
# This is ugly. Utterly ugly. Sigh.
# kth-krb4 and arla both have their own, different, versions or libroken.
# To resolve this conflict, which manifests in the inability to recompile
# kth-krb4 once it is installed, we rename arla's roken to arla-roken.
@${ECHO} "===> Applying more NetBSD patches for ${DISTNAME}"
@${ECHO} -n "=> Patching configure,"
@${MV} ${WRKSRC}/configure ${WRKSRC}/configure.old
# Notice, the following sed produces some funny comments in configure :-)
@${SED} -e 's/roken/arla-roken/g' ${WRKSRC}/configure.old > ${WRKSRC}/configure
@${CHMOD} 755 ${WRKSRC}/configure
@${ECHO} -n " Makefile.in,"
@for file in `${FIND} ${WRKSRC} -name Makefile.in -print`; { \
${MV} $$file $$file.old; \
${SED} -e 's/roken/arla-roken/g' $$file.old > $$file; \
}
@${ECHO} -n " .c files,"
@for file in `${FIND} ${WRKSRC} -name "*.c" -print`; { \
${MV} $$file $$file.old; \
${SED} -e 's/roken.h/arla-roken.h/g' $$file.old > $$file; \
}
@${ECHO} -n " .h files,"
@for file in `${FIND} ${WRKSRC} -name "*.h" -print`; { \
${MV} $$file $$file.old; \
${SED} -e 's/roken.h/arla-roken.h/g' $$file.old > $$file; \
}
@${ECHO} -n " .y files,"
@for file in `${FIND} ${WRKSRC} -name "*.y" -print`; { \
${MV} $$file $$file.old; \
${SED} -e 's/roken.h/arla-roken.h/g' $$file.old > $$file; \
}
@${ECHO} -n " .l files"
@for file in `${FIND} ${WRKSRC} -name "*.l" -print`; { \
${MV} $$file $$file.old; \
${SED} -e 's/roken.h/arla-roken.h/g' $$file.old > $$file; \
}
@${ECHO} "."
@${MV} ${WRKSRC}/lib/roken/roken.h ${WRKSRC}/lib/roken/arla-roken.h
@${MV} ${WRKSRC}/lib/roken ${WRKSRC}/lib/arla-roken
do-configure:
# *Sometimes* it's bad to try to be too smart:
# pkgsrc's LDFLAGS choice is completely inadequate for arla, since
# arla's configure uses $LDFLAGS as flags for $LD, whereas
# pkgsrc's LDFLAGS are conceived to be used with $CC
# So, basically, bsd.pkg.mk sets LDFLAGS=-Wl,-R${LOCALBASE}
# while arla expects LDFLAGS=-R${LOCALBASE}
@(LDFLAGS= ; cd ${WRKSRC}; ./configure ${CONFIGURE_ARGS})
pre-install:
@${SED} -e 's|@ARLA_CACHE@|${CACHEDIR}|g' \
<${PKGDIR}/PLIST \
>${PLIST_SRC}
@${SED} -e 's|@PREFIX@|${PREFIX}|g' \
-e 's|@ARLA_CACHE@|${CACHEDIR}|g' \
<${PKGDIR}/MESSAGE \
>${MESSAGE_FILE}
post-install:
@${ECHO} " "
@if [ -e ${CACHEDIR} ]; then \
${ECHO} "Arla cache dir (${CACHEDIR}) already exists"; \
else \
${ECHO} "Creating arla cache directory ${CACHEDIR}"; \
${MKDIR} ${CACHEDIR}; \
${CHMOD} 700 ${CACHEDIR}; \
${CHOWN} root ${CACHEDIR}; \
fi
@if [ -e /sbin/mount_xfs ]; then \
${ECHO} "/sbin/mount_xfs already exists"; \
else \
${ECHO} "Creating /sbin/mount_xfs"; \
${LN} -s ${PREFIX}/bin/mount_xfs /sbin/mount_xfs; \
fi
@-${MKDIR} ${PREFIX}/share/examples/arla
@${SED} -e 's|@PREFIX@|${PREFIX}|g' \
< ${FILESDIR}/lkm.conf \
> ${PREFIX}/share/examples/arla/lkm.conf
@${INSTALL} -c -o root -g wheel -m 444 \
${FILESDIR}/services ${PREFIX}/share/examples/arla
@${INSTALL} -c -o root -g wheel -m 444 \
${FILESDIR}/fstab ${PREFIX}/share/examples/arla
@${SED} -e 's|@PREFIX@|${PREFIX}|' ${FILESDIR}/arlad.sh \
> ${PREFIX}/etc/rc.d/arlad.sh
@${ECHO} " "
.include "../../mk/bsd.pkg.mk"