From owner-svn-ports-all@freebsd.org Wed Oct 28 14:29:54 2015 Return-Path: Delivered-To: svn-ports-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 19DDAA1FD72; Wed, 28 Oct 2015 14:29:54 +0000 (UTC) (envelope-from jbeich@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id DADF61362; Wed, 28 Oct 2015 14:29:53 +0000 (UTC) (envelope-from jbeich@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t9SETqYs090609; Wed, 28 Oct 2015 14:29:52 GMT (envelope-from jbeich@FreeBSD.org) Received: (from jbeich@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t9SETqKg090604; Wed, 28 Oct 2015 14:29:52 GMT (envelope-from jbeich@FreeBSD.org) Message-Id: <201510281429.t9SETqKg090604@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: jbeich set sender to jbeich@FreeBSD.org using -f From: Jan Beich Date: Wed, 28 Oct 2015 14:29:52 +0000 (UTC) To: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org Subject: svn commit: r400394 - in head/devel: . fb-adb fb-adb/files X-SVN-Group: ports-head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-ports-all@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the ports tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 28 Oct 2015 14:29:54 -0000 Author: jbeich Date: Wed Oct 28 14:29:52 2015 New Revision: 400394 URL: https://svnweb.freebsd.org/changeset/ports/400394 Log: devel/fb-adb: add new port Differential Revision: https://reviews.freebsd.org/D3930 fb-adb is a tool for interacting with Android systems. It does much of what adb does, but with better remote shell support and, hopefully, fewer bugs. Differences between adb and fb-adb are that fb-adb: * is binary clean (no LF -> CRLF mangling) * transmits and updates window size * distinguishes standard output and standard error * properly muxes streams with independent flow control * allows for ssh-like pty allocation control * propagates program exit status instead of always exiting with status 0 * properly escapes program arguments * kills remote program * provides a generic facility to elevate to root without re-escaping https://github.com/facebook/fb-adb Added: head/devel/fb-adb/ head/devel/fb-adb/Makefile (contents, props changed) head/devel/fb-adb/distinfo (contents, props changed) head/devel/fb-adb/files/ head/devel/fb-adb/files/patch-util.c (contents, props changed) head/devel/fb-adb/pkg-descr (contents, props changed) Modified: head/devel/Makefile (contents, props changed) Modified: head/devel/Makefile ============================================================================== --- head/devel/Makefile Wed Oct 28 14:27:28 2015 (r400393) +++ head/devel/Makefile Wed Oct 28 14:29:52 2015 (r400394) @@ -499,6 +499,7 @@ SUBDIR += f77flow SUBDIR += fam SUBDIR += fastcrc + SUBDIR += fb-adb SUBDIR += fb303 SUBDIR += fc++ SUBDIR += ffcall Added: head/devel/fb-adb/Makefile ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/devel/fb-adb/Makefile Wed Oct 28 14:29:52 2015 (r400394) @@ -0,0 +1,78 @@ +# $FreeBSD$ + +PORTNAME= fb-adb +DISTVERSION= 1.4.4-109 +DISTVERSIONSUFFIX= -g930ba5f +CATEGORIES= devel + +MAINTAINER= jbeich@FreeBSD.org +COMMENT= Better shell for Android devices + +LICENSE= BSD3CLAUSE +LICENSE_FILE= ${WRKSRC}/LICENSE + +BUILD_DEPENDS= xxd:${PORTSDIR}/editors/vim-lite \ + ${LOCALBASE}/android/ARMv7/bin/arm-aux-linux-androideabi-gcc:${PORTSDIR}/lang/gnatdroid-armv7 \ + ${BASH_CMD}:${PORTSDIR}/shells/${BASH_CMD:T} +RUN_DEPENDS= adb:${PORTSDIR}/devel/android-tools-adb + +USE_GITHUB= yes +GH_ACCOUNT= facebook + +USES= autoreconf:outsource gmake ncurses perl5 python:3,build +USE_PERL5= build # pod2man +BASH_CMD?= bash # can be zsh +GNU_CONFIGURE= yes +CONFIGURE_ENV= PATH="${BUILD_DEPENDS:M*android*:C/:.*//:H}:$$PATH" \ + PYTHON3="${PYTHON_CMD}" +# XXX --mandir as SET_LATE_CONFIGURE_ARGS doesn't respect CONFIGURE_CMD +CONFIGURE_ARGS= --mandir="${MANPREFIX}/man" --with-android-ndk=system +INSTALL_TARGET= install-strip +PLIST_FILES= bin/${PORTNAME} \ + man/man1/${PORTNAME}.1.gz + +# Cross-build sanitization +CONFIG_SITE= /dev/null # XXX Only for AC_CONFIG_SUBDIRS +CONFIGURE_ENV+= HOST_CFLAGS="${CPPFLAGS} ${CFLAGS:N-[Og]*:N-pipe}" \ + STUB_CFLAGS="${STUB_CFLAGS}" \ + CPPFLAGS="" CFLAGS="${CFLAGS:M-[Og]*} ${CFLAGS:M-pipe}" \ + HOST_LDFLAGS="${LDFLAGS} ${LIBS}" \ + STUB_LDFLAGS="${STUB_LDFLAGS}" \ + LDFLAGS="" LIBS="" + +OPTIONS_DEFINE= ASSERT BASH DEBUG + +ASSERT_CONFIGURE_ENABLE=checking +BASH_DESC= Install JSON parser used by bash-completion +BASH_RUN_DEPENDS= jq:${PORTSDIR}/textproc/jq +DEBUG_CONFIGURE_ENABLE= debuggable-stubs + +post-patch: +# XXX Decouple -Werror from --enable-checking (ASSERT=on) +# XXX lang/gnatdroid-x86 doesn't exist yet + @${REINPLACE_CMD} -e '/CPPFLAGS.*-Werror/d' \ + -e 's/stub-x86[^,]*, //g' \ + ${WRKSRC}/configure.ac + @${REINPLACE_CMD} -e 's/linux-android/aux-&/' \ + ${WRKSRC}/stub-*/configure + +# XXX Similar to USES=qmake:outsource, merge into Mk/Uses/autoreconf.mk +.if defined(USES) && ${USES:Mautoreconf\:outsource} +USES:= autoreconf:build ${USES:Nautoreconf*} +CONFIGURE_CMD= ${AUTORECONF_WRKSRC}/${CONFIGURE_SCRIPT} +CONFIGURE_WRKSRC= ${WRKDIR}/.build +BUILD_WRKSRC= ${CONFIGURE_WRKSRC} +INSTALL_WRKSRC= ${CONFIGURE_WRKSRC} +AUTORECONF_WRKSRC?= ${WRKSRC} + +_USES_configure+= 470:do-autoreconf +do-autoreconf: +.for f in AUTHORS ChangeLog INSTALL NEWS README +# Don't modify time stamps if the files already exist + @test -e ${AUTORECONF_WRKSRC}/${f} || ${TOUCH} ${AUTORECONF_WRKSRC}/${f} +.endfor + @(cd ${AUTORECONF_WRKSRC} && ${LOCALBASE}/bin/autoreconf -f -i) + @${MKDIR} ${CONFIGURE_WRKSRC} +.endif + +.include Added: head/devel/fb-adb/distinfo ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/devel/fb-adb/distinfo Wed Oct 28 14:29:52 2015 (r400394) @@ -0,0 +1,6 @@ +SHA256 (facebook-fb-adb-1.4.4-109-g930ba5f_GH0.tar.gz) = e93ca8163fa42d3fc10888231bb7cc9fedbff809171f9b6745ca04da7a082b6d +SIZE (facebook-fb-adb-1.4.4-109-g930ba5f_GH0.tar.gz) = 248393 +SHA256 (android-ndk-r10e-linux-x86.bin) = 92b07d25aaad9b341a7f2b2a62402d508e948bf2dea3ee7b65a6aeb18bca7df5 +SIZE (android-ndk-r10e-linux-x86.bin) = 394281908 +SHA256 (android-ndk-r10e-linux-x86_64.bin) = 102d6723f67ff1384330d12c45854315d6452d6510286f4e5891e00a5a8f1d5a +SIZE (android-ndk-r10e-linux-x86_64.bin) = 401522849 Added: head/devel/fb-adb/files/patch-util.c ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/devel/fb-adb/files/patch-util.c Wed Oct 28 14:29:52 2015 (r400394) @@ -0,0 +1,12 @@ +--- util.c.orig 2015-10-09 22:02:18 UTC ++++ util.c +@@ -1563,3 +1563,9 @@ xregerror(int errcode, const regex_t* pr + reslist_xfer(rl->parent, rl); + return (char*) gb.buf; + } ++ ++#ifndef __linux__ ++// XXX For GCC 4.4 or older ++__weak_reference(my_unreachable, __builtin_unreachable); ++void my_unreachable() { abort(); } ++#endif Added: head/devel/fb-adb/pkg-descr ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/devel/fb-adb/pkg-descr Wed Oct 28 14:29:52 2015 (r400394) @@ -0,0 +1,16 @@ +fb-adb is a tool for interacting with Android systems. It does much of +what adb does, but with better remote shell support and, hopefully, +fewer bugs. Differences between adb and fb-adb are that fb-adb: + + * is binary clean (no LF -> CRLF mangling) + * transmits and updates window size + * distinguishes standard output and standard error + * properly muxes streams with independent flow control + * allows for ssh-like pty allocation control + * propagates program exit status instead of always exiting + with status 0 + * properly escapes program arguments + * kills remote program + * provides a generic facility to elevate to root without re-escaping + +WWW: https://github.com/facebook/fb-adb