3 PORTNAME= android-tools-fastboot
4 DISTVERSIONPREFIX= android-
5 DISTVERSION?= 6.0.0_r26
8 MASTER_SITES= https://anonscm.debian.org/cgit/android-tools/android-tools.git/plain/debian/:manpage
9 DISTFILES= fastboot.1?id=706e754:manpage
10 EXTRACT_ONLY= ${DISTFILES:N*\:manpage:C/:.*//}
12 MAINTAINER= jbeich@FreeBSD.org
13 COMMENT= Android Fastboot protocol CLI tool
15 LICENSE= APACHE20 BSD2CLAUSE PUBLIC_DOMAIN
17 LICENSE_NAME_PUBLIC_DOMAIN= Public Domain
18 LICENSE_FILE_PUBLIC_DOMAIN= ${WRKSRC}/libselinux/NOTICE
19 LICENSE_PERMS_PUBLIC_DOMAIN= dist-mirror dist-sell pkg-mirror pkg-sell auto-accept
21 LIB_DEPENDS= libpcre.so:${PORTSDIR}/devel/pcre
24 GH_ACCOUNT= android jbeich:extras,libselinux
25 GH_PROJECT= platform_system_core platform_system_extras:extras \
26 platform_external_libselinux:libselinux
28 # Emulate GH_COMMIT without causing desync
29 .ifdef DISTVERSIONSUFFIX
30 GH_REVISION= ${DISTVERSIONSUFFIX:S/-g//} # snapshot
32 GH_REVISION= f7f765fd62bf # generated by: make update-revision
35 CONFLICTS_INSTALL?= ${PORTNAME}-devel-*
37 USES= compiler:c++11-lib pkgconfig uidfix
38 BUILD_WRKSRC= ${WRKSRC}/fastboot
39 INSTALL_WRKSRC= ${BUILD_WRKSRC}
40 MAKEFILE= ${.CURDIR}/files/Makefile # XXX ?= when bmake-only
41 MAKE_ENV= BINDIR="${PREFIX}/bin" EXTRADIR="${FILESDIR}" \
42 FILESDIR="${DOCSDIR}" REVISION="${GH_REVISION}" \
43 MANDIR="${PREFIX}/man/man" \
44 LIBPCRE="${LOCALBASE}/lib/libpcre.a"
45 PLIST_FILES= bin/fastboot \
46 man/man1/fastboot.1.gz
48 SUB_FILES= pkg-message
50 OPTIONS_DEFINE= BASH DOCS
53 .if make(makesum) # for optional distfiles
54 .MAKEFLAGS: WITH="${OPTIONS_DEFINE}"
57 BASH_GH_ACCOUNT= mbrubeck:bashcomp
58 BASH_GH_PROJECT= android-completion:bashcomp
59 BASH_GH_TAGNAME= 3b0fabe:bashcomp
60 BASH_PLIST_FILES= etc/bash_completion.d/fastboot
61 BASH_VARS= LICENSE+=MIT
63 DOCS_MAKE_ARGS_OFF= FILES="" FILESDIR=""
66 @${CP} ${_DISTDIR}/${DISTFILES:M*\:manpage:C/:.*//} \
67 ${BUILD_WRKSRC}/${DISTFILES:M*\:manpage:C/\?.*//}
68 # Adjust paths relative to core
69 @(cd ${WRKSRC_extras} && ${COPYTREE_SHARE} . ${WRKSRC})
70 @${MV} ${WRKSRC_libselinux} ${WRKSRC}/libselinux
73 ${MKDIR} ${STAGEDIR}${PREFIX}/${BASH_PLIST_FILES:H}
74 ${INSTALL_DATA} ${WRKSRC_bashcomp}/android \
75 ${STAGEDIR}${PREFIX}/${BASH_PLIST_FILES}
78 # https://developer.github.com/v3/repos/commits/#get-a-single-commit
79 # Pretend to be curl(1) for pretty-printed JSON to help parse with sed(1)
80 @${REINPLACE_CMD} -i '' -e "/^GH_REVISION.*$@/s/=.*/= $$(\
81 ${SETENV} HTTP_USER_AGENT=curl ${FETCH_CMD} -qo- \
82 https://api.github.com/repos/${GH_ACCOUNT}/${GH_PROJECT}/commits/${GH_TAGNAME} | \
83 ${SED} -n '/sha/ { s/.*\"\([0-9a-f]\{12\}\).*/\1/p; q; }' \
84 ) # generated by: make $@/" \
87 .include <bsd.port.mk>
89 # XXX Work around !target(makesum)
90 .ifndef DISTVERSIONSUFFIX
91 makesum: update-revision