# Contributor: Jakub Jirutka # Maintainer: Jakub Jirutka pkgname=flow pkgver=0.78.0 pkgrel=0 pkgdesc="A static typechecker for JavaScript" url="https://flow.org" # x86, armhf, s390x: limited by ocaml aport arch="all !x86 !armhf !armv7 !s390x" license="MIT" checkdepends="bash diffutils nodejs yarn" makedepends=" js_of_ocaml linux-headers ocaml ocaml-compiler-libs ocaml-dtoa-dev ocaml-findlib ocaml-gen-dev ocaml-lwt-dev ocaml-lwt_log-dev ocaml-lwt_ppx-dev ocaml-ppx_deriving-dev ocaml-ppx_gen_rec-dev ocaml-result-dev ocaml-sedlex-dev ocaml-wtf8-dev ocamlbuild opam zip " subpackages="libflowparser-dev:_parser" source="https://github.com/facebook/$pkgname/archive/v$pkgver/$pkgname-$pkgver.tar.gz makefile-tag-thread.patch " builddir="$srcdir/$pkgname-$pkgver" prepare() { default_prepare cd "$builddir" msg "Installing JS packages needed for running tests..." yarn install \ --ignore-scripts \ --frozen-lockfile \ --non-interactive \ --cache-folder "$srcdir"/.yarn } build() { cd "$builddir" rm -Rf _build make FLOW_RELEASE=1 mkdir dist cp -a bin dist/ make -C src/parser js make -C src/parser dist/libflowparser.zip cp -ar src/parser/dist/libflowparser dist/ } check() { cd "$builddir" make do-test FLOW_RELEASE=1 } package() { cd "$builddir" install -m 755 -D dist/bin/flow "$pkgdir"/usr/bin/flow } _parser() { pkgdesc="The Flow Parser" cd "$builddir" mkdir -p "$subpkgdir"/usr cp -r dist/libflowparser/* "$subpkgdir"/usr/ } sha512sums="033052634fcd3f55babe333d446e4c1ef6ae78509670cf8b68cd1f4bfa8f24ff1a965d8a4a5ec5f55c2774632d1c5145a22f745c268aafa7a6b8199827237a80 flow-0.78.0.tar.gz d300dec1b7925fbba691701e10f68727ef20c06430eab8f746aeebe5ba591569f3430fdc9a8a69815860ab9fc6cf5795a7a509e752922685778d9fa6ae7ca7c2 makefile-tag-thread.patch"