Wed Feb 17 14:15:46 2021 UTC ()
devel/binaryen: import binaryen-99.

Binaryen is a compiler and toolchain infrastructure library for WebAssembly,
written in C++. It aims to make compiling to WebAssembly easy, fast, and
effective.

* Easy: Binaryen has a simple C API in a single header, and can also be used
  from JavaScript. It accepts input in WebAssembly-like form but also accepts
  a general control flow graph for compilers that prefer that.

* Fast: Binaryen's internal IR uses compact data structures and is designed
  for completely parallel codegen and optimization, using all available CPU
  cores. Binaryen's IR also compiles down to WebAssembly extremely easily and
  quickly because it is essentially a subset of WebAssembly.

* Effective: Binaryen's optimizer has many passes (see an overview later
  down) that can improve code size and speed. These optimizations aim to
  make Binaryen powerful enough to be used as a compiler backend by itself.
  One specific area of focus is on WebAssembly-specific optimizations (that
  general-purpose compilers might not do), which you can think of as wasm
  minification, similar to minification for JavaScript, CSS, etc., all of
  which are language-specific.


(fcambus)
diff -r0 -r1.1 pkgsrc/devel/binaryen/DESCR
diff -r0 -r1.1 pkgsrc/devel/binaryen/Makefile
diff -r0 -r1.1 pkgsrc/devel/binaryen/PLIST
diff -r0 -r1.1 pkgsrc/devel/binaryen/distinfo

File Added: pkgsrc/devel/binaryen/DESCR
Binaryen is a compiler and toolchain infrastructure library for WebAssembly,
written in C++. It aims to make compiling to WebAssembly easy, fast, and
effective.

* Easy: Binaryen has a simple C API in a single header, and can also be used
  from JavaScript. It accepts input in WebAssembly-like form but also accepts
  a general control flow graph for compilers that prefer that.

* Fast: Binaryen's internal IR uses compact data structures and is designed
  for completely parallel codegen and optimization, using all available CPU
  cores. Binaryen's IR also compiles down to WebAssembly extremely easily and
  quickly because it is essentially a subset of WebAssembly.

* Effective: Binaryen's optimizer has many passes (see an overview later
  down) that can improve code size and speed. These optimizations aim to
  make Binaryen powerful enough to be used as a compiler backend by itself.
  One specific area of focus is on WebAssembly-specific optimizations (that
  general-purpose compilers might not do), which you can think of as wasm
  minification, similar to minification for JavaScript, CSS, etc., all of
  which are language-specific.

File Added: pkgsrc/devel/binaryen/Makefile
# $NetBSD: Makefile,v 1.1 2021/02/17 14:15:46 fcambus Exp $

VERSION=	99
DISTNAME=	binaryen-${VERSION}
CATEGORIES=	devel
MASTER_SITES=	${MASTER_SITE_GITHUB:=WebAssembly/}
GITHUB_TAG=	version_${VERSION}

MAINTAINER=	fcambus@NetBSD.org
HOMEPAGE=	https://github.com/WebAssembly/binaryen/
COMMENT=	Compiler and toolchain infrastructure library for WebAssembly
LICENSE=	apache-2.0

USE_CMAKE=	yes
USE_LANGUAGES=	c c++14

WRKSRC=		${WRKDIR}/binaryen-${GITHUB_TAG}

CMAKE_ARGS+=	-DENABLE_WERROR=OFF

PYTHON_FOR_BUILD_ONLY=	yes

.include "../../lang/python/application.mk"
.include "../../mk/bsd.pkg.mk"

File Added: pkgsrc/devel/binaryen/PLIST
@comment $NetBSD: PLIST,v 1.1 2021/02/17 14:15:46 fcambus Exp $
bin/wasm-as
bin/wasm-ctor-eval
bin/wasm-dis
bin/wasm-emscripten-finalize
bin/wasm-metadce
bin/wasm-opt
bin/wasm-reduce
bin/wasm-shell
bin/wasm-split
bin/wasm2js
include/binaryen-c.h
lib/libbinaryen.so

File Added: pkgsrc/devel/binaryen/distinfo
$NetBSD: distinfo,v 1.1 2021/02/17 14:15:46 fcambus Exp $

SHA1 (binaryen-99.tar.gz) = 9ee91e4a25ea11765b19a77613f51f30181daefb
RMD160 (binaryen-99.tar.gz) = a94eeae092a3732f5d44bdcc43b5fe2c5512f5bd
SHA512 (binaryen-99.tar.gz) = 58c21d7f99a0e0b04243893ffef479662d6cda7386bfdf03cabe9896d8da04bf9e5560b75f2262e43cca8943e6e2d4594c69eeb36160b072e6d48fe6eb5f56f5
Size (binaryen-99.tar.gz) = 3642692 bytes