aboutsummaryrefslogtreecommitdiff
path: root/sysutils/sformat/Makefile
blob: 9732c9ef2db5af89351475d267f1cb5a106dcc2e (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
# Created by: marius@alchemy.franken.de
# $FreeBSD$

PORTNAME=	sformat
PORTVERSION=	3.5
PORTREVISION=	5
CATEGORIES=	sysutils
MASTER_SITES=	ftp://ftp.berlios.de/pub/sformat/:sformat \
		LOCAL/marius:libschily,sformat
DISTFILES=	${DISTNAME}${EXTRACT_SUFX}:sformat \
		${LIBSCHILY}:libschily
EXTRACT_ONLY=	${DISTNAME}${EXTRACT_SUFX}

MAINTAINER=	marius@FreeBSD.org
COMMENT=	Allows formatting/partitioning/analysis/repairing of SCSI disks

LIBSCHILY=	libschily-2.01.01a07.tar.gz
USES=		gmake

.include <bsd.port.pre.mk>

CCOM!=		${BASENAME} ${CC}
MAKE_ENV+=	CCOM=${CCOM}
SFMTTARGET=	${ARCH}-freebsd-${CCOM}
SFMTXARCH!=	${UNAME} -m

post-extract:
	@cd ${WRKSRC} && ${EXTRACT_CMD} ${EXTRACT_BEFORE_ARGS} \
		${DISTDIR}/${DIST_SUBDIR}/${LIBSCHILY} ${EXTRACT_AFTER_ARGS}
.for i in config.guess config.sub
	@${CP} ${PORTSDIR}/Templates/${i} ${WRKSRC}/conf
.endfor
.if ${SFMTTARGET} != "i386-freebsd-cc"
	@${LN} -sf ${WRKSRC}/RULES/i386-freebsd-cc.rul \
		${WRKSRC}/RULES/${SFMTXARCH}-${OPSYS:tl}-cc.rul
.endif

post-patch:
.for i in datio.c sformat.1
	@${REINPLACE_CMD} -i "" -e 's:%%DATADIR%%:${DATADIR}:g;' \
		${WRKSRC}/sformat/${i}
.endfor
.for i in include/schily.h libschily/fexec.c libschily/libschily-mapvers
	@${REINPLACE_CMD} -e 's|fexecve|js_fexecve|g' ${WRKSRC}/${i}
.endfor
	@${REINPLACE_CMD} -e 's|int	getline|int	get_line|g' ${WRKSRC}/include/schily.h
	@${REINPLACE_CMD} -e 's|(getline(|(get_line(|g' ${WRKSRC}/sformat/io.c \
		${WRKSRC}/libscg/scsitransp.c
	@${REINPLACE_CMD} -e 's| getline(| get_line(|g' ${WRKSRC}/sformat/io.c \
		${WRKSRC}/sformat/defect.c
	@${REINPLACE_CMD} -e 's|^getline|get_line|g' ${WRKSRC}/libschily/stdio/fgetline.c
	@${REINPLACE_CMD} -e 's|)getline|)get_line|g' ${WRKSRC}/sformat/diskfmt.c \
		${WRKSRC}/sformat/makelabel.c

do-install:
	${INSTALL_PROGRAM} ${WRKSRC}/sformat/OBJ/${SFMTTARGET}/sformat \
		${STAGEDIR}${PREFIX}/bin
	${MKDIR} ${STAGEDIR}${DATADIR}
	${INSTALL_DATA} ${WRKSRC}/sformat/sformat.dat ${STAGEDIR}${DATADIR}
	${INSTALL_MAN} ${WRKSRC}/sformat/sformat.1 \
		${STAGEDIR}${MANPREFIX}/man/man1

.include <bsd.port.post.mk>