Page MenuHomeFreeBSD

D11162.id29606.diff
No OneTemporary

D11162.id29606.diff

Index: Mk/Uses/cargo.mk
===================================================================
--- /dev/null
+++ Mk/Uses/cargo.mk
@@ -0,0 +1,205 @@
+# $FreeBSD$
+#
+# This file contains logic to ease porting of Rust packages or binaries using
+# the `cargo` command.
+#
+# Feature: cargo
+# Usage: USES=cargo
+# Valid ARGS: none
+#
+# MAINTAINER: ports@FreeBSD.org
+
+.if !defined(_INCLUDE_USES_CARGO_MK)
+_INCLUDE_USES_CARGO_MK= yes
+
+.if !empty(cargo_ARGS)
+IGNORE+= USES=cargo takes no arguments
+.endif
+
+CARGO_CMD?= ${LOCALBASE}/bin/cargo
+
+# List of static dependencies. The format is cratename-version.
+# CARGO_CRATES will be downloaded from MASTER_SITES_CRATESIO.
+CARGO_CRATES?=
+
+# List of features to build (space separated list).
+CARGO_FEATURES?=
+
+# List of crates to update (no version).
+# Used to override a dependency with newer version.
+CARGO_CRATES_UPDATE?=
+
+# Name of the local directory for vendoring crates.
+CARGO_VENDOR_DIR?= ${WRKSRC}/cargo-crates
+
+# Default path for cargo manifest.
+CARGO_CARGOTOML?= ${WRKSRC}/Cargo.toml
+
+# Define MASTER_SITES_CRATESIO for crates.io
+MASTER_SITES_CRATESIO= https://crates.io/api/v1/crates
+
+# Save crates inside ${DISTDIR}/cargo by default.
+CARGO_DIST_SUBDIR?= cargo
+
+# Generate list of DISTFILES.
+.for _crate in ${CARGO_CRATES}
+MASTER_SITES+= ${MASTER_SITES_CRATESIO}/${_crate:C/-[^-]*$//}/${_crate:C/^.*-//}/download?dummy=/:cargo_${_crate:S/-//g:S/.//g}
+DISTFILES+= ${CARGO_DIST_SUBDIR}/${_crate}.tar.gz:cargo_${_crate:S/-//g:S/.//g}
+.endfor
+
+# Build dependencies.
+
+# devel/cargo-generate-vendor is mandatory for hooks.
+PATCH_DEPENDS+= cargo-generate-vendor:devel/cargo-generate-vendor
+BUILD_DEPENDS+= cargo-generate-vendor:devel/cargo-generate-vendor
+
+CARGO_BUILDDEP?= yes
+.if ${CARGO_BUILDDEP:tl} == "yes"
+BUILD_DEPENDS+= cargo:devel/cargo rustc:lang/rust
+.endif
+
+# Location of cargo binary (default to devel/cargo binary)
+CARGO_CARGO_BIN?= ${LOCALBASE}/bin/cargo
+
+# Location of the cargo output directory.
+CARGO_TARGET_DIR?= ${WRKDIR}/target
+
+# Environment for cargo
+# - CARGO_HOME: local cache of the registry index
+# - CARGO_BUILD_JOBS: configure number of jobs to run
+# - CARGO_TARGET_DIR: location of where to place all generated artifacts
+# - RUSTC: path of rustc binary (default to lang/rust)
+# - RUSTDOC: path of rustdoc binary (default to lang/rust)
+# - RUSTFLAGS: custom flags to pass to all compiler invocations that Cargo performs
+#
+# XXX LDFLAGS => -C link-arg=$1 (via RUSTFLAGS)
+CARGO_ENV+= \
+ CARGO_HOME=${WRKDIR}/cargo-home \
+ CARGO_BUILD_JOBS=${MAKE_JOBS_NUMBER} \
+ CARGO_TARGET_DIR=${CARGO_TARGET_DIR} \
+ RUSTC=${LOCALBASE}/bin/rustc \
+ RUSTDOC=${LOCALBASE}/bin/rustdoc \
+ RUSTFLAGS="${RUSTFLAGS}"
+
+# Helper to shorten cargo calls.
+CARGO_CARGO_RUN= \
+ cd ${WRKSRC} && ${SETENV} ${MAKE_ENV} ${CARGO_ENV} \
+ ${CARGO_CARGO_BIN}
+
+# User arguments for cargo targets.
+CARGO_BUILD_ARGS?=
+CARGO_INSTALL_ARGS?=
+CARGO_TEST_ARGS?=
+
+# Manage crate features.
+.if !empty(CARGO_FEATURES)
+CARGO_BUILD_ARGS+= --features='${CARGO_FEATURES}'
+CARGO_TEST_ARGS+= --features='${CARGO_FEATURES}'
+.endif
+
+# Helper for updating a crate.
+CARGO_CARGO_UPDATE= \
+ ${CARGO_CARGO_RUN} update \
+ --manifest-path ${CARGO_CARGOTOML} \
+ --verbose
+
+# Use module targets ?
+CARGO_BUILD?= yes
+CARGO_INSTALL?= yes
+CARGO_TEST?= yes
+CARGO_CONFIGURE?= yes
+
+_USES_extract+= 600:cargo-extract
+cargo-extract:
+# post-extract target for preparing crates directory. It will put all
+# crates in the local crates directory.
+ @${ECHO_MSG} "moving crates to ${CARGO_VENDOR_DIR}"
+ @${MKDIR} ${CARGO_VENDOR_DIR}
+.for _crate in ${CARGO_CRATES}
+ @${MV} ${WRKDIR}/${_crate} ${CARGO_VENDOR_DIR}/${_crate}
+.endfor
+
+_USES_patch+= 600:cargo-patch
+cargo-patch:
+# post-patch target for generating metadata of crates.
+.for _crate in ${CARGO_CRATES}
+ @${ECHO_MSG} "Generating metadata for ${_crate}"
+ @${LOCALBASE}/bin/cargo-generate-vendor \
+ ${DISTDIR}/${CARGO_DIST_SUBDIR}/${_crate}.tar.gz \
+ ${CARGO_VENDOR_DIR}/${_crate}
+.endfor
+
+.if !target(do-configure) && ${CARGO_CONFIGURE:tl} == "yes"
+# configure hook. Place a config file for overriding crates-io index
+# by local source directory.
+do-configure:
+ @${MKDIR} ${WRKDIR}/.cargo
+ @${ECHO_CMD} "[source.cargo]" > ${WRKDIR}/.cargo/config
+ @${ECHO_CMD} "directory = '${CARGO_VENDOR_DIR}'" >> ${WRKDIR}/.cargo/config
+ @${ECHO_CMD} "[source.crates-io]" >> ${WRKDIR}/.cargo/config
+ @${ECHO_CMD} "replace-with = 'cargo'" >> ${WRKDIR}/.cargo/config
+ @if ! ${GREP} -qF '[profile.release]' ${CARGO_CARGOTOML}; then \
+ ${ECHO_CMD} "" >>${CARGO_CARGOTOML}; \
+ ${ECHO_CMD} "[profile.release]" >>${CARGO_CARGOTOML}; \
+ ${ECHO_CMD} "opt-level = 2" >>${CARGO_CARGOTOML}; \
+ ${ECHO_CMD} "debug = false" >>${CARGO_CARGOTOML}; \
+ fi
+# Update crates: place all crates on the same command line.
+.if !empty(CARGO_CRATES_UPDATE)
+ @${CARGO_CARGO_UPDATE} ${CARGO_CRATES_UPDATE:S/^/--package /}
+.endif
+.endif
+
+.if !target(do-build) && ${CARGO_BUILD:tl} == "yes"
+do-build:
+ @${CARGO_CARGO_RUN} build \
+ --manifest-path ${CARGO_CARGOTOML} \
+ --release \
+ --verbose \
+ ${CARGO_BUILD_ARGS}
+.endif
+
+.if !target(do-install) && ${CARGO_INSTALL:tl} == "yes"
+do-install:
+ @${CARGO_CARGO_RUN} install \
+ --root="${STAGEDIR}${PREFIX}" \
+ --verbose \
+ ${CARGO_INSTALL_ARGS}
+ @${RM} -- "${STAGEDIR}${PREFIX}/.crates.toml"
+.endif
+
+.if !target(do-test) && ${CARGO_TEST:tl} == "yes"
+do-test:
+ @${CARGO_CARGO_RUN} test \
+ --manifest-path ${CARGO_CARGOTOML} \
+ --release \
+ --verbose \
+ ${CARGO_TEST_ARGS}
+.endif
+
+#
+# Helper targets for port maintainers
+#
+
+# cargo-crates will output the crates list from Cargo.lock file.
+cargo-crates: extract
+ @${ECHO_CMD} -n "CARGO_CRATES="
+ @${AWK} 'BEGIN { i = 0 } /"checksum / { \
+ if (i == 0) { \
+ print " " $$2 "-" $$3 " \\"; \
+ i = 1 \
+ } else { \
+ print " " $$2 "-" $$3 " \\" \
+ } \
+ }' ${WRKSRC}/Cargo.lock
+
+# cargo-crates-licenses will try to grab license information from
+# downloaded crates.
+cargo-crates-licenses: configure
+ @${FIND} ${CARGO_VENDOR_DIR} -name 'Cargo.toml' -maxdepth 2 \
+ -exec ${GREP} -H '^license' {} \; \
+ | ${SED} \
+ -e 's@^${CARGO_VENDOR_DIR}/@@' \
+ -e 's@/Cargo.toml:license.*= *"@|@' \
+ -e 's@"$$@@g' | /usr/bin/column -t -s '|'
+.endif
Index: devel/bingrep/Makefile
===================================================================
--- /dev/null
+++ devel/bingrep/Makefile
@@ -0,0 +1,43 @@
+# $FreeBSD$
+
+PORTNAME= bingrep
+PORTVERSION= g20170612
+CATEGORIES= devel
+
+MAINTAINER= tobik@FreeBSD.org
+COMMENT= Grep through binaries
+
+USES= cargo
+USE_GITHUB= yes
+GH_ACCOUNT= m4b
+GH_TAGNAME= 0705684
+
+PLIST_FILES= bin/bingrep
+
+CARGO_CRATES= ansi_term-0.9.0 \
+ atty-0.2.2 \
+ bitflags-0.8.2 \
+ clap-2.24.2 \
+ colored-1.5.1 \
+ goblin-0.0.10 \
+ kernel32-sys-0.2.2 \
+ lazy_static-0.2.8 \
+ libc-0.2.23 \
+ plain-0.0.2 \
+ quote-0.3.15 \
+ scroll-0.5.0 \
+ scroll_derive-0.4.0 \
+ strsim-0.6.0 \
+ structopt-0.0.3 \
+ structopt-derive-0.0.3 \
+ syn-0.11.11 \
+ synom-0.11.3 \
+ term_size-0.3.0 \
+ unicode-segmentation-1.2.0 \
+ unicode-width-0.1.4 \
+ unicode-xid-0.0.4 \
+ vec_map-0.8.0 \
+ winapi-0.2.8 \
+ winapi-build-0.1.1
+
+.include <bsd.port.mk>
Index: devel/bingrep/distinfo
===================================================================
--- /dev/null
+++ devel/bingrep/distinfo
@@ -0,0 +1,53 @@
+TIMESTAMP = 1497440040
+SHA256 (cargo/ansi_term-0.9.0.tar.gz) = 23ac7c30002a5accbf7e8987d0632fa6de155b7c3d39d0067317a391e00a2ef6
+SIZE (cargo/ansi_term-0.9.0.tar.gz) = 11718
+SHA256 (cargo/atty-0.2.2.tar.gz) = d912da0db7fa85514874458ca3651fe2cddace8d0b0505571dbdcd41ab490159
+SIZE (cargo/atty-0.2.2.tar.gz) = 5124
+SHA256 (cargo/bitflags-0.8.2.tar.gz) = 1370e9fc2a6ae53aea8b7a5110edbd08836ed87c88736dfabccade1c2b44bff4
+SIZE (cargo/bitflags-0.8.2.tar.gz) = 11200
+SHA256 (cargo/clap-2.24.2.tar.gz) = 6b8f69e518f967224e628896b54e41ff6acfb4dcfefc5076325c36525dac900f
+SIZE (cargo/clap-2.24.2.tar.gz) = 179198
+SHA256 (cargo/colored-1.5.1.tar.gz) = 66e436adfcba3a50905f943d990f5ef7c230ebe2d9476ab5c7dc2427afe357ee
+SIZE (cargo/colored-1.5.1.tar.gz) = 33931
+SHA256 (cargo/goblin-0.0.10.tar.gz) = 81af14056c25d33759862c5ae2035452acb1255bfb1b16db57819f183921e259
+SIZE (cargo/goblin-0.0.10.tar.gz) = 94446
+SHA256 (cargo/kernel32-sys-0.2.2.tar.gz) = 7507624b29483431c0ba2d82aece8ca6cdba9382bff4ddd0f7490560c056098d
+SIZE (cargo/kernel32-sys-0.2.2.tar.gz) = 24537
+SHA256 (cargo/lazy_static-0.2.8.tar.gz) = 3b37545ab726dd833ec6420aaba8231c5b320814b9029ad585555d2a03e94fbf
+SIZE (cargo/lazy_static-0.2.8.tar.gz) = 9950
+SHA256 (cargo/libc-0.2.23.tar.gz) = e7eb6b826bfc1fdea7935d46556250d1799b7fe2d9f7951071f4291710665e3e
+SIZE (cargo/libc-0.2.23.tar.gz) = 153939
+SHA256 (cargo/plain-0.0.2.tar.gz) = 595830506990cbd6a1a08ed73bd9b40beb4692f38334885bf25a5daa654c6fae
+SIZE (cargo/plain-0.0.2.tar.gz) = 9019
+SHA256 (cargo/quote-0.3.15.tar.gz) = 7a6e920b65c65f10b2ae65c831a81a073a89edd28c7cce89475bff467ab4167a
+SIZE (cargo/quote-0.3.15.tar.gz) = 12041
+SHA256 (cargo/scroll-0.5.0.tar.gz) = 1d916a75d18d4c559fa7312afe6f522fe5b63176e6591d02ed81017c22f8ea27
+SIZE (cargo/scroll-0.5.0.tar.gz) = 21550
+SHA256 (cargo/scroll_derive-0.4.0.tar.gz) = 686ef1d49b34827d6aed93e0bbe9e53023b26e25f54dead31859974067400f19
+SIZE (cargo/scroll_derive-0.4.0.tar.gz) = 2789
+SHA256 (cargo/strsim-0.6.0.tar.gz) = b4d15c810519a91cf877e7e36e63fe068815c678181439f2f29e2562147c3694
+SIZE (cargo/strsim-0.6.0.tar.gz) = 8500
+SHA256 (cargo/structopt-0.0.3.tar.gz) = 2d52740003d84335ccfc6f9223a9cede3943e5f1e75b15b21a9cd40d02f1d6df
+SIZE (cargo/structopt-0.0.3.tar.gz) = 3393
+SHA256 (cargo/structopt-derive-0.0.3.tar.gz) = 1e4f5f4da823bbf745599cd6e6c344817e2580cf2ea46d012aa62da714a20725
+SIZE (cargo/structopt-derive-0.0.3.tar.gz) = 3508
+SHA256 (cargo/syn-0.11.11.tar.gz) = d3b891b9015c88c576343b9b3e41c2c11a51c219ef067b264bd9c8aa9b441dad
+SIZE (cargo/syn-0.11.11.tar.gz) = 63309
+SHA256 (cargo/synom-0.11.3.tar.gz) = a393066ed9010ebaed60b9eafa373d4b1baac186dd7e008555b0f702b51945b6
+SIZE (cargo/synom-0.11.3.tar.gz) = 17120
+SHA256 (cargo/term_size-0.3.0.tar.gz) = e2b6b55df3198cc93372e85dd2ed817f0e38ce8cc0f22eb32391bfad9c4bf209
+SIZE (cargo/term_size-0.3.0.tar.gz) = 9932
+SHA256 (cargo/unicode-segmentation-1.2.0.tar.gz) = a8083c594e02b8ae1654ae26f0ade5158b119bd88ad0e8227a5d8fcd72407946
+SIZE (cargo/unicode-segmentation-1.2.0.tar.gz) = 67562
+SHA256 (cargo/unicode-width-0.1.4.tar.gz) = bf3a113775714a22dcb774d8ea3655c53a32debae63a063acc00a91cc586245f
+SIZE (cargo/unicode-width-0.1.4.tar.gz) = 15283
+SHA256 (cargo/unicode-xid-0.0.4.tar.gz) = 8c1f860d7d29cf02cb2f3f359fd35991af3d30bac52c57d265a3c461074cb4dc
+SIZE (cargo/unicode-xid-0.0.4.tar.gz) = 16034
+SHA256 (cargo/vec_map-0.8.0.tar.gz) = 887b5b631c2ad01628bbbaa7dd4c869f80d3186688f8d0b6f58774fbe324988c
+SIZE (cargo/vec_map-0.8.0.tar.gz) = 13742
+SHA256 (cargo/winapi-0.2.8.tar.gz) = 167dc9d6949a9b857f3451275e911c3f44255842c1f7a76f33c55103a909087a
+SIZE (cargo/winapi-0.2.8.tar.gz) = 455145
+SHA256 (cargo/winapi-build-0.1.1.tar.gz) = 2d315eee3b34aca4797b2da6b13ed88266e6d612562a0c46390af8299fc699bc
+SIZE (cargo/winapi-build-0.1.1.tar.gz) = 669
+SHA256 (m4b-bingrep-g20170612-0705684_GH0.tar.gz) = 140f01ea897b5be1e89949d68a5591253b41fb345a587c759984d4e945e92f6b
+SIZE (m4b-bingrep-g20170612-0705684_GH0.tar.gz) = 343989
Index: devel/bingrep/pkg-descr
===================================================================
--- /dev/null
+++ devel/bingrep/pkg-descr
@@ -0,0 +1,9 @@
+Greps through binaries from various OSs and architectures, and colors
+them. Current backends:
+
+- ELF 32/64, arm, x86, openrisc - all others will parse and color, but
+ relocations won't show properly
+- Mach 32/64, arm, x86
+- PE (debug only)
+
+WWW: https://github.com/m4b/bingrep
Index: devel/cargo-generate-vendor/Makefile
===================================================================
--- /dev/null
+++ devel/cargo-generate-vendor/Makefile
@@ -0,0 +1,26 @@
+# $FreeBSD$
+
+PORTNAME= cargo-generate-vendor
+PORTVERSION= 1.0
+CATEGORIES= devel
+
+MAINTAINER= tobik@FreeBSD.org
+COMMENT= Generate metadata for cargo vendoring
+
+LICENSE= ISCL
+
+USES= uidfix perl5 shebangfix
+USE_GITHUB= yes
+GH_ACCOUNT= semarie
+USE_PERL5= run
+
+NO_BUILD= yes
+
+SHEBANG_FILES= cargo-generate-vendor.pl
+PLIST_FILES= bin/cargo-generate-vendor
+
+do-install:
+ ${INSTALL_SCRIPT} ${WRKSRC}/cargo-generate-vendor.pl \
+ ${STAGEDIR}${PREFIX}/bin/cargo-generate-vendor
+
+.include <bsd.port.mk>
Index: devel/cargo-generate-vendor/distinfo
===================================================================
--- /dev/null
+++ devel/cargo-generate-vendor/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1488045421
+SHA256 (semarie-cargo-generate-vendor-1.0_GH0.tar.gz) = 2470103ed75de5021bc9f76ed83095f5d2d3377b135dede1680e7524d3b55027
+SIZE (semarie-cargo-generate-vendor-1.0_GH0.tar.gz) = 1895
Index: devel/cargo-generate-vendor/files/patch-cargo-generate-vendor.pl
===================================================================
--- /dev/null
+++ devel/cargo-generate-vendor/files/patch-cargo-generate-vendor.pl
@@ -0,0 +1,24 @@
+--- cargo-generate-vendor.pl.orig 2017-02-25 18:02:09 UTC
++++ cargo-generate-vendor.pl
+@@ -22,10 +22,6 @@ use Digest::SHA qw(sha256_hex);
+ use File::Find;
+ use Getopt::Std;
+ use JSON::PP;
+-use OpenBSD::Pledge;
+-
+-# early pledge
+-pledge('rpath wpath cpath') || err(1, "pledge: $!");
+
+ # print usage and exit
+ sub usage
+@@ -110,10 +106,6 @@ create_empty(".cargo.ok")
+ open(my $fchecksum, ">", ".cargo-checksum.json")
+ || err(1, "open: '$directory/.cargo-checksum.json': $!");
+
+-# pledge filesystem readonly
+-pledge('rpath')
+- || err(1, "pledge: $!");
+-
+ # compute checksums
+ my %metadata;
+ $metadata{'package'} = sha256_file_hex($archive);
Index: devel/cargo-generate-vendor/pkg-descr
===================================================================
--- /dev/null
+++ devel/cargo-generate-vendor/pkg-descr
@@ -0,0 +1,5 @@
+cargo-generate-vendor is used to help building of vendored crates for
+use with devel/cargo and will generate the required metadata for this
+purpose.
+
+WWW: https://github.com/semarie/cargo-generate-vendor
Index: editors/xi-core/Makefile
===================================================================
--- /dev/null
+++ editors/xi-core/Makefile
@@ -0,0 +1,47 @@
+# $FreeBSD$
+
+PORTNAME= xi-core
+PORTVERSION= g20170612
+DISTVERSIONPREFIX= v
+CATEGORIES= editors
+
+MAINTAINER= tobik@FreeBSD.org
+COMMENT= Modern editor backend written in Rust
+
+LICENSE= APACHE20
+LICENSE_FILE= ${WRKSRC}/../LICENSE
+
+USES= cargo pkgconfig
+USE_GITHUB= yes
+GH_ACCOUNT= google
+GH_PROJECT= xi-editor
+GH_TAGNAME= 3164cb6
+
+WRKSRC_SUBDIR= rust
+
+PLIST_FILES= bin/xi-core
+
+CARGO_CRATES= bytecount-0.1.6 \
+ crossbeam-0.2.10 \
+ dtoa-0.4.1 \
+ itoa-0.3.1 \
+ kernel32-sys-0.2.2 \
+ libc-0.2.23 \
+ memchr-1.0.1 \
+ num-traits-0.1.37 \
+ quote-0.3.15 \
+ redox_syscall-0.1.17 \
+ serde-1.0.2 \
+ serde_derive-1.0.2 \
+ serde_derive_internals-0.15.0 \
+ serde_json-1.0.1 \
+ syn-0.11.11 \
+ synom-0.11.3 \
+ time-0.1.37 \
+ unicode-xid-0.0.4 \
+ winapi-0.2.8 \
+ winapi-build-0.1.1
+
+CARGO_CRATES_UPDATE= libc
+
+.include <bsd.port.mk>
Index: editors/xi-core/distinfo
===================================================================
--- /dev/null
+++ editors/xi-core/distinfo
@@ -0,0 +1,43 @@
+TIMESTAMP = 1497447050
+SHA256 (cargo/bytecount-0.1.6.tar.gz) = 1e8f09fbc8c6726a4b616dcfbd4f54491068d6bb1b93ac03c78ac18ff9a5924a
+SIZE (cargo/bytecount-0.1.6.tar.gz) = 9435
+SHA256 (cargo/crossbeam-0.2.10.tar.gz) = 0c5ea215664ca264da8a9d9c3be80d2eaf30923c259d03e870388eb927508f97
+SIZE (cargo/crossbeam-0.2.10.tar.gz) = 32993
+SHA256 (cargo/dtoa-0.4.1.tar.gz) = 80c8b71fd71146990a9742fc06dcbbde19161a267e0ad4e572c35162f4578c90
+SIZE (cargo/dtoa-0.4.1.tar.gz) = 73264
+SHA256 (cargo/itoa-0.3.1.tar.gz) = eb2f404fbc66fd9aac13e998248505e7ecb2ad8e44ab6388684c5fb11c6c251c
+SIZE (cargo/itoa-0.3.1.tar.gz) = 73340
+SHA256 (cargo/kernel32-sys-0.2.2.tar.gz) = 7507624b29483431c0ba2d82aece8ca6cdba9382bff4ddd0f7490560c056098d
+SIZE (cargo/kernel32-sys-0.2.2.tar.gz) = 24537
+SHA256 (cargo/libc-0.2.23.tar.gz) = e7eb6b826bfc1fdea7935d46556250d1799b7fe2d9f7951071f4291710665e3e
+SIZE (cargo/libc-0.2.23.tar.gz) = 153939
+SHA256 (cargo/memchr-1.0.1.tar.gz) = 1dbccc0e46f1ea47b9f17e6d67c5a96bd27030519c519c9c91327e31275a47b4
+SIZE (cargo/memchr-1.0.1.tar.gz) = 8221
+SHA256 (cargo/num-traits-0.1.37.tar.gz) = e1cbfa3781f3fe73dc05321bed52a06d2d491eaa764c52335cf4399f046ece99
+SIZE (cargo/num-traits-0.1.37.tar.gz) = 20492
+SHA256 (cargo/quote-0.3.15.tar.gz) = 7a6e920b65c65f10b2ae65c831a81a073a89edd28c7cce89475bff467ab4167a
+SIZE (cargo/quote-0.3.15.tar.gz) = 12041
+SHA256 (cargo/redox_syscall-0.1.17.tar.gz) = 29dbdfd4b9df8ab31dec47c6087b7b13cbf4a776f335e4de8efba8288dda075b
+SIZE (cargo/redox_syscall-0.1.17.tar.gz) = 11683
+SHA256 (cargo/serde-1.0.2.tar.gz) = 3b46a59dd63931010fdb1d88538513f3279090d88b5c22ef4fe8440cfffcc6e3
+SIZE (cargo/serde-1.0.2.tar.gz) = 58548
+SHA256 (cargo/serde_derive-1.0.2.tar.gz) = 6c06b68790963518008b8ae0152d48be4bbbe77015d2c717f6282eea1824be9a
+SIZE (cargo/serde_derive-1.0.2.tar.gz) = 23633
+SHA256 (cargo/serde_derive_internals-0.15.0.tar.gz) = 021c338d22c7e30f957a6ab7e388cb6098499dda9fd4ba1661ee074ca7a180d1
+SIZE (cargo/serde_derive_internals-0.15.0.tar.gz) = 16382
+SHA256 (cargo/serde_json-1.0.1.tar.gz) = 1c62115693d0a9ed8c32d1c760f0fdbe7d4b05cb13c135b9b54137ac0d59fccb
+SIZE (cargo/serde_json-1.0.1.tar.gz) = 55365
+SHA256 (cargo/syn-0.11.11.tar.gz) = d3b891b9015c88c576343b9b3e41c2c11a51c219ef067b264bd9c8aa9b441dad
+SIZE (cargo/syn-0.11.11.tar.gz) = 63309
+SHA256 (cargo/synom-0.11.3.tar.gz) = a393066ed9010ebaed60b9eafa373d4b1baac186dd7e008555b0f702b51945b6
+SIZE (cargo/synom-0.11.3.tar.gz) = 17120
+SHA256 (cargo/time-0.1.37.tar.gz) = ffd7ccbf969a892bf83f1e441126968a07a3941c24ff522a26af9f9f4585d1a3
+SIZE (cargo/time-0.1.37.tar.gz) = 28346
+SHA256 (cargo/unicode-xid-0.0.4.tar.gz) = 8c1f860d7d29cf02cb2f3f359fd35991af3d30bac52c57d265a3c461074cb4dc
+SIZE (cargo/unicode-xid-0.0.4.tar.gz) = 16034
+SHA256 (cargo/winapi-0.2.8.tar.gz) = 167dc9d6949a9b857f3451275e911c3f44255842c1f7a76f33c55103a909087a
+SIZE (cargo/winapi-0.2.8.tar.gz) = 455145
+SHA256 (cargo/winapi-build-0.1.1.tar.gz) = 2d315eee3b34aca4797b2da6b13ed88266e6d612562a0c46390af8299fc699bc
+SIZE (cargo/winapi-build-0.1.1.tar.gz) = 669
+SHA256 (google-xi-editor-vg20170612-3164cb6_GH0.tar.gz) = d1a29be0ee2e69191cc250bcd0ba51600887c956b76f58ef94e6eba76fcd6c04
+SIZE (google-xi-editor-vg20170612-3164cb6_GH0.tar.gz) = 811394
Index: editors/xi-core/pkg-descr
===================================================================
--- /dev/null
+++ editors/xi-core/pkg-descr
@@ -0,0 +1,16 @@
+The xi editor project is an attempt to build a high quality text
+editor, using modern software engineering techniques.
+
+Goals include:
+- Incredibly high performance. All editing operations should commit
+ and paint in under 16ms. The editor should never make you wait for
+ anything.
+- Beauty. The editor should fit well on a modern desktop, and not look
+ like a throwback from the '80s or '90s. Text drawing should be done
+ with the best technology available (Core Text on Mac, DirectWrite on
+ Windows, etc.), and support Unicode fully.
+- Reliability. Crashing, hanging, or losing work should never happen.
+- Developer friendliness. It should be easy to customize xi editor,
+ whether by adding plug-ins or hacking on the core.
+
+WWW: https://github.com/google/xi-editor
Index: textproc/ripgrep/Makefile
===================================================================
--- /dev/null
+++ textproc/ripgrep/Makefile
@@ -0,0 +1,70 @@
+# Created by: Petteri Valkonen <petteri.valkonen@iki.fi>
+# $FreeBSD$
+
+# vim: ts=8 noet
+
+PORTNAME= ripgrep
+PORTVERSION= 0.5.2
+CATEGORIES= textproc
+
+MAINTAINER= petteri.valkonen@iki.fi
+COMMENT= Command line search tool
+
+LICENSE= MIT UNLICENSE
+LICENSE_FILE= ${WRKSRC}/COPYING
+LICENSE_COMB= dual
+LICENSE_NAME_UNLICENSE= The Unlicense
+LICENSE_FILE_UNLICENSE= ${WRKSRC}/UNLICENSE
+LICENSE_PERMS_UNLICENSE=dist-mirror dist-sell pkg-mirror pkg-sell auto-accept
+
+USES= cargo
+USE_GITHUB= yes
+GH_ACCOUNT= BurntSushi
+
+PLIST_FILES= bin/rg \
+ man/man1/rg.1.gz
+
+CARGO_CRATES= aho-corasick-0.6.3 \
+ ansi_term-0.9.0 \
+ atty-0.2.2 \
+ bitflags-0.8.2 \
+ bytecount-0.1.6 \
+ cfg-if-0.1.0 \
+ clap-2.24.1 \
+ crossbeam-0.2.10 \
+ encoding_rs-0.5.1 \
+ env_logger-0.4.2 \
+ fnv-1.0.5 \
+ fs2-0.4.1 \
+ kernel32-sys-0.2.2 \
+ lazy_static-0.2.8 \
+ libc-0.2.23 \
+ log-0.3.7 \
+ memchr-1.0.1 \
+ memmap-0.5.2 \
+ num_cpus-1.4.0 \
+ regex-0.2.1 \
+ regex-syntax-0.4.0 \
+ same-file-0.1.3 \
+ simd-0.1.1 \
+ strsim-0.6.0 \
+ term_size-0.3.0 \
+ thread-id-3.0.0 \
+ thread_local-0.3.3 \
+ unicode-segmentation-1.1.0 \
+ unicode-width-0.1.4 \
+ unreachable-0.1.1 \
+ utf8-ranges-1.0.0 \
+ vec_map-0.7.0 \
+ void-1.0.2 \
+ walkdir-1.0.7 \
+ winapi-0.2.8 \
+ winapi-build-0.1.1
+
+# update libc from 0.2.22 to 0.2.23
+CARGO_CRATES_UPDATE= libc
+
+post-install:
+ ${INSTALL_MAN} ${WRKSRC}/doc/rg.1 ${STAGEDIR}${MAN1PREFIX}/man/man1
+
+.include <bsd.port.mk>
Index: textproc/ripgrep/distinfo
===================================================================
--- /dev/null
+++ textproc/ripgrep/distinfo
@@ -0,0 +1,75 @@
+TIMESTAMP = 1497445650
+SHA256 (cargo/aho-corasick-0.6.3.tar.gz) = 500909c4f87a9e52355b26626d890833e9e1d53ac566db76c36faa984b889699
+SIZE (cargo/aho-corasick-0.6.3.tar.gz) = 24963
+SHA256 (cargo/ansi_term-0.9.0.tar.gz) = 23ac7c30002a5accbf7e8987d0632fa6de155b7c3d39d0067317a391e00a2ef6
+SIZE (cargo/ansi_term-0.9.0.tar.gz) = 11718
+SHA256 (cargo/atty-0.2.2.tar.gz) = d912da0db7fa85514874458ca3651fe2cddace8d0b0505571dbdcd41ab490159
+SIZE (cargo/atty-0.2.2.tar.gz) = 5124
+SHA256 (cargo/bitflags-0.8.2.tar.gz) = 1370e9fc2a6ae53aea8b7a5110edbd08836ed87c88736dfabccade1c2b44bff4
+SIZE (cargo/bitflags-0.8.2.tar.gz) = 11200
+SHA256 (cargo/bytecount-0.1.6.tar.gz) = 1e8f09fbc8c6726a4b616dcfbd4f54491068d6bb1b93ac03c78ac18ff9a5924a
+SIZE (cargo/bytecount-0.1.6.tar.gz) = 9435
+SHA256 (cargo/cfg-if-0.1.0.tar.gz) = de1e760d7b6535af4241fca8bd8adf68e2e7edacc6b29f5d399050c5e48cf88c
+SIZE (cargo/cfg-if-0.1.0.tar.gz) = 2758
+SHA256 (cargo/clap-2.24.1.tar.gz) = b7541069be0b8aec41030802abe8b5cdef0490070afaa55418adea93b1e431e0
+SIZE (cargo/clap-2.24.1.tar.gz) = 178111
+SHA256 (cargo/crossbeam-0.2.10.tar.gz) = 0c5ea215664ca264da8a9d9c3be80d2eaf30923c259d03e870388eb927508f97
+SIZE (cargo/crossbeam-0.2.10.tar.gz) = 32993
+SHA256 (cargo/encoding_rs-0.5.1.tar.gz) = e4bc519d572af08cf72c4d61e0de9b05e9fa66d1fdb5e739fb5c405860b42d43
+SIZE (cargo/encoding_rs-0.5.1.tar.gz) = 1225177
+SHA256 (cargo/env_logger-0.4.2.tar.gz) = e3856f1697098606fc6cb97a93de88ca3f3bc35bb878c725920e6e82ecf05e83
+SIZE (cargo/env_logger-0.4.2.tar.gz) = 10386
+SHA256 (cargo/fnv-1.0.5.tar.gz) = 6cc484842f1e2884faf56f529f960cc12ad8c71ce96cc7abba0a067c98fee344
+SIZE (cargo/fnv-1.0.5.tar.gz) = 6295
+SHA256 (cargo/fs2-0.4.1.tar.gz) = 34edaee07555859dc13ca387e6ae05686bb4d0364c95d649b6dab959511f4baf
+SIZE (cargo/fs2-0.4.1.tar.gz) = 12039
+SHA256 (cargo/kernel32-sys-0.2.2.tar.gz) = 7507624b29483431c0ba2d82aece8ca6cdba9382bff4ddd0f7490560c056098d
+SIZE (cargo/kernel32-sys-0.2.2.tar.gz) = 24537
+SHA256 (cargo/lazy_static-0.2.8.tar.gz) = 3b37545ab726dd833ec6420aaba8231c5b320814b9029ad585555d2a03e94fbf
+SIZE (cargo/lazy_static-0.2.8.tar.gz) = 9950
+SHA256 (cargo/libc-0.2.23.tar.gz) = e7eb6b826bfc1fdea7935d46556250d1799b7fe2d9f7951071f4291710665e3e
+SIZE (cargo/libc-0.2.23.tar.gz) = 153939
+SHA256 (cargo/log-0.3.7.tar.gz) = 5141eca02775a762cc6cd564d8d2c50f67c0ea3a372cbf1c51592b3e029e10ad
+SIZE (cargo/log-0.3.7.tar.gz) = 16352
+SHA256 (cargo/memchr-1.0.1.tar.gz) = 1dbccc0e46f1ea47b9f17e6d67c5a96bd27030519c519c9c91327e31275a47b4
+SIZE (cargo/memchr-1.0.1.tar.gz) = 8221
+SHA256 (cargo/memmap-0.5.2.tar.gz) = 46f3c7359028b31999287dae4e5047ddfe90a23b7dca2282ce759b491080c99b
+SIZE (cargo/memmap-0.5.2.tar.gz) = 14465
+SHA256 (cargo/num_cpus-1.4.0.tar.gz) = ca313f1862c7ec3e0dfe8ace9fa91b1d9cb5c84ace3d00f5ec4216238e93c167
+SIZE (cargo/num_cpus-1.4.0.tar.gz) = 6782
+SHA256 (cargo/regex-0.2.1.tar.gz) = 4278c17d0f6d62dfef0ab00028feb45bd7d2102843f80763474eeb1be8a10c01
+SIZE (cargo/regex-0.2.1.tar.gz) = 189277
+SHA256 (cargo/regex-syntax-0.4.0.tar.gz) = 2f9191b1f57603095f105d317e375d19b1c9c5c3185ea9633a99a6dcbed04457
+SIZE (cargo/regex-syntax-0.4.0.tar.gz) = 118223
+SHA256 (cargo/same-file-0.1.3.tar.gz) = d931a44fdaa43b8637009e7632a02adc4f2b2e0733c08caa4cf00e8da4a117a7
+SIZE (cargo/same-file-0.1.3.tar.gz) = 7078
+SHA256 (cargo/simd-0.1.1.tar.gz) = 63b5847c2d766ca7ce7227672850955802fabd779ba616aeabead4c2c3877023
+SIZE (cargo/simd-0.1.1.tar.gz) = 39577
+SHA256 (cargo/strsim-0.6.0.tar.gz) = b4d15c810519a91cf877e7e36e63fe068815c678181439f2f29e2562147c3694
+SIZE (cargo/strsim-0.6.0.tar.gz) = 8500
+SHA256 (cargo/term_size-0.3.0.tar.gz) = e2b6b55df3198cc93372e85dd2ed817f0e38ce8cc0f22eb32391bfad9c4bf209
+SIZE (cargo/term_size-0.3.0.tar.gz) = 9932
+SHA256 (cargo/thread-id-3.0.0.tar.gz) = 4437c97558c70d129e40629a5b385b3fb1ffac301e63941335e4d354081ec14a
+SIZE (cargo/thread-id-3.0.0.tar.gz) = 6240
+SHA256 (cargo/thread_local-0.3.3.tar.gz) = c85048c6260d17cf486ceae3282d9fb6b90be220bf5b28c400f5485ffc29f0c7
+SIZE (cargo/thread_local-0.3.3.tar.gz) = 10964
+SHA256 (cargo/unicode-segmentation-1.1.0.tar.gz) = 18127285758f0e2c6cf325bb3f3d138a12fee27de4f23e146cd6a179f26c2cf3
+SIZE (cargo/unicode-segmentation-1.1.0.tar.gz) = 65559
+SHA256 (cargo/unicode-width-0.1.4.tar.gz) = bf3a113775714a22dcb774d8ea3655c53a32debae63a063acc00a91cc586245f
+SIZE (cargo/unicode-width-0.1.4.tar.gz) = 15283
+SHA256 (cargo/unreachable-0.1.1.tar.gz) = 1f2ae5ddb18e1c92664717616dd9549dde73f539f01bd7b77c2edb2446bdff91
+SIZE (cargo/unreachable-0.1.1.tar.gz) = 1772
+SHA256 (cargo/utf8-ranges-1.0.0.tar.gz) = 662fab6525a98beff2921d7f61a39e7d59e0b425ebc7d0d9e66d316e55124122
+SIZE (cargo/utf8-ranges-1.0.0.tar.gz) = 8599
+SHA256 (cargo/vec_map-0.7.0.tar.gz) = f8cdc8b93bd0198ed872357fb2e667f7125646b1762f16d60b2c96350d361897
+SIZE (cargo/vec_map-0.7.0.tar.gz) = 13455
+SHA256 (cargo/void-1.0.2.tar.gz) = 6a02e4885ed3bc0f2de90ea6dd45ebcbb66dacffe03547fadbb0eeae2770887d
+SIZE (cargo/void-1.0.2.tar.gz) = 2356
+SHA256 (cargo/walkdir-1.0.7.tar.gz) = bb08f9e670fab86099470b97cd2b252d6527f0b3cc1401acdb595ffc9dd288ff
+SIZE (cargo/walkdir-1.0.7.tar.gz) = 17883
+SHA256 (cargo/winapi-0.2.8.tar.gz) = 167dc9d6949a9b857f3451275e911c3f44255842c1f7a76f33c55103a909087a
+SIZE (cargo/winapi-0.2.8.tar.gz) = 455145
+SHA256 (cargo/winapi-build-0.1.1.tar.gz) = 2d315eee3b34aca4797b2da6b13ed88266e6d612562a0c46390af8299fc699bc
+SIZE (cargo/winapi-build-0.1.1.tar.gz) = 669
+SHA256 (BurntSushi-ripgrep-0.5.2_GH0.tar.gz) = 5d880c590cbb09d907d64ba24557fb2b2f025c8363bcdde29f303e9261625eea
+SIZE (BurntSushi-ripgrep-0.5.2_GH0.tar.gz) = 460948
Index: textproc/ripgrep/pkg-descr
===================================================================
--- /dev/null
+++ textproc/ripgrep/pkg-descr
@@ -0,0 +1,5 @@
+ripgrep is a command line search tool that combines the usability of
+The Silver Searcher (an ack clone) with the raw speed of GNU grep.
+ripgrep is fast, cross platform and written in Rust.
+
+WWW: http://blog.burntsushi.net/ripgrep/

File Metadata

Mime Type
text/plain
Expires
Sat, Apr 18, 2:04 AM (16 h, 46 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
31691728
Default Alt Text
D11162.id29606.diff (26 KB)

Event Timeline