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
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
|
# Created by: Michael Vasilenko <acid@stu.cn.ua>
PORTNAME= biew
PORTVERSION= 6.1.0
PORTREVISION= 4
CATEGORIES= editors
MASTER_SITES= SF/beye/biew/${PORTVERSION}
DISTNAME= ${PORTNAME}-${PORTVERSION:S/.//g}-src
MAINTAINER= danfe@FreeBSD.org
COMMENT= Binary file viewer and editor
LICENSE= GPLv2
BROKEN_powerpc= Does not compile
BROKEN_sparc64= Does not compile
ONLY_FOR_ARCHS= amd64 i386
ONLY_FOR_ARCHS_REASON= no targets defined in Makefile
USES= dos2unix gmake iconv ncurses tar:bzip2
DOS2UNIX_FILES= ${PORTDOCS:S,^,doc/,}
HAS_CONFIGURE= yes
CONFIGURE_ARGS= --cc="${CC}" --with-extraincdir="${LOCALBASE}/include" \
--ld="${CC}" --with-extralibdir="${LOCALBASE}/lib" \
--prefix="${PREFIX}" --datadir="${DATADIR}"
MAKEFILE= makefile
WRKSRC= ${WRKDIR}/${PORTNAME}-${PORTVERSION:S/.//g}
PORTDOCS= biew_en.txt biew_ru.txt develop.en develop.ru file_ini.en \
file_ini.ru release.txt unix.txt
OPTIONS_DEFINE= SLANG DOCS
OPTIONS_DEFAULT= SLANG
SLANG_DESC= Use S-Lang based display renderer
SLANG_LIB_DEPENDS= libslang.so:devel/libslang2
SLANG_CONFIGURE_ON= --enable-slang
SLANG_CONFIGURE_OFF= --enable-curses
post-patch:
@${REINPLACE_CMD} -e 's,/usr/X11R6,${LOCALBASE},' ${WRKSRC}/configure
# Allow it to find definition of `uintmax_t' (required at least for ia64)
@${REINPLACE_CMD} -e 's,<sys/types,<stdint,' \
${WRKSRC}/biewlib/sysdep/generic/__config.h
# Fix BTx group of x86 opcodes disasm bug (upstream ticket #44, closed)
@${REINPLACE_CMD} -e 's,DisP->codelen++),++DisP->codelen),' \
${WRKSRC}/plugins/disasm/ix86/ix86_fun.c
# Fix inline assembly to make Clang happy (upstream ticket #49)
@${REINPLACE_CMD} -e '/srcptr/s,::"g",::"r",' \
${WRKSRC}/biewlib/sysdep/ia32/aclib_template.c \
${WRKSRC}/biewlib/sysdep/x86_64/aclib_template.c
@${REINPLACE_CMD} -E 's,fild|fistp,&s,' \
${WRKSRC}/biewlib/sysdep/ia32/cpu_info.c \
${WRKSRC}/biewlib/sysdep/x86_64/cpu_info.c
post-build:
# Convert Russian text files to UTF-8 encoding (doing it in post-build
# ensures we have iconv(1) installed, and seems more logical since these
# files could theoretically also be [re]built)
@${SH} -c '${FIND} ${WRKSRC}/doc/*ru* -type f | while read f ; \
do ${ICONV_CMD} -f cp866 -t utf-8 "$${f}" > "$${f}.tmp" && \
${MV} "$${f}.tmp" "$${f}" ; done'
do-install:
${INSTALL_PROGRAM} ${WRKSRC}/biew ${STAGEDIR}${PREFIX}/bin
@${MKDIR} ${STAGEDIR}${DATADIR}/skn ${STAGEDIR}${DATADIR}/syntax \
${STAGEDIR}${DATADIR}/xlt
${INSTALL_DATA} ${WRKSRC}/bin_rc/biew.hlp ${STAGEDIR}${DATADIR}
${INSTALL_DATA} ${WRKSRC}/bin_rc/skn/* ${STAGEDIR}${DATADIR}/skn
${INSTALL_DATA} ${WRKSRC}/bin_rc/syntax/* ${STAGEDIR}${DATADIR}/syntax
${INSTALL_DATA} ${WRKSRC}/bin_rc/xlt/russian/* \
${STAGEDIR}${DATADIR}/xlt
${INSTALL_MAN} ${WRKSRC}/doc/biew.1 ${STAGEDIR}${MANPREFIX}/man/man1
@${MKDIR} ${STAGEDIR}${DOCSDIR}
${INSTALL_DATA} ${PORTDOCS:S,^,${WRKSRC}/doc/,} ${STAGEDIR}${DOCSDIR}
.include <bsd.port.mk>
|