2020-12-11 08:53:44 +01:00
|
|
|
# $NetBSD: Makefile,v 1.37 2020/12/11 07:53:44 jaapb Exp $
|
2012-07-11 17:35:06 +02:00
|
|
|
#
|
|
|
|
|
2016-02-06 15:00:13 +01:00
|
|
|
GITHUB_PROJECT= js_of_ocaml
|
2020-12-11 08:53:44 +01:00
|
|
|
DISTNAME= ${GITHUB_PROJECT}-3.8.0
|
2012-07-11 17:35:06 +02:00
|
|
|
CATEGORIES= devel
|
2016-02-06 15:00:13 +01:00
|
|
|
MASTER_SITES= ${MASTER_SITE_GITHUB:=ocsigen/}
|
2012-07-11 17:35:06 +02:00
|
|
|
|
2012-12-14 15:40:24 +01:00
|
|
|
MAINTAINER= jaapb@NetBSD.org
|
2020-01-26 18:30:40 +01:00
|
|
|
HOMEPAGE= https://ocsigen.org/js_of_ocaml/
|
2012-07-11 17:35:06 +02:00
|
|
|
COMMENT= Compiler of OCaml bytecode to Javascript
|
|
|
|
LICENSE= gnu-lgpl-v2
|
|
|
|
|
2017-09-08 15:19:34 +02:00
|
|
|
USE_TOOLS= bash
|
2012-07-11 17:35:06 +02:00
|
|
|
|
2016-06-20 16:01:42 +02:00
|
|
|
OCAML_USE_FINDLIB= yes
|
2019-11-03 11:39:04 +01:00
|
|
|
OCAML_USE_DUNE= yes
|
2017-09-08 15:19:34 +02:00
|
|
|
|
2018-04-13 14:59:41 +02:00
|
|
|
OPAM_INSTALL_FILES= js_of_ocaml js_of_ocaml-ocamlbuild \
|
2019-11-03 11:39:04 +01:00
|
|
|
js_of_ocaml-ppx js_of_ocaml-ppx_deriving_json \
|
|
|
|
js_of_ocaml-lwt js_of_ocaml-compiler
|
2018-11-29 12:59:21 +01:00
|
|
|
DUNE_BUILD_PACKAGES= js_of_ocaml-compiler js_of_ocaml js_of_ocaml-ocamlbuild \
|
2020-01-14 21:56:09 +01:00
|
|
|
js_of_ocaml-ppx js_of_ocaml-ppx_deriving_json \
|
|
|
|
js_of_ocaml-lwt
|
2016-06-20 16:01:42 +02:00
|
|
|
|
2015-01-20 17:09:15 +01:00
|
|
|
.include "options.mk"
|
2020-12-11 08:53:44 +01:00
|
|
|
.include "../../devel/menhir/buildlink3.mk"
|
2017-09-08 15:19:34 +02:00
|
|
|
.include "../../devel/ocamlbuild/buildlink3.mk"
|
2016-02-06 15:00:13 +01:00
|
|
|
.include "../../devel/ocaml-cppo/buildlink3.mk"
|
2020-12-11 08:53:44 +01:00
|
|
|
.include "../../devel/ocaml-dune-configurator/buildlink3.mk"
|
2012-12-14 15:40:24 +01:00
|
|
|
.include "../../devel/ocaml-lwt/buildlink3.mk"
|
2018-04-13 14:59:41 +02:00
|
|
|
.include "../../devel/ocaml-lwt_log/buildlink3.mk"
|
2017-09-08 15:19:34 +02:00
|
|
|
.include "../../devel/ocaml-migrate-parsetree/buildlink3.mk"
|
2017-09-08 19:04:57 +02:00
|
|
|
.include "../../devel/ocaml-ppx_deriving/buildlink3.mk"
|
2017-09-08 15:19:34 +02:00
|
|
|
.include "../../devel/ocaml-ppx_tools_versioned/buildlink3.mk"
|
2020-01-14 21:56:09 +01:00
|
|
|
.include "../../devel/ocaml-ppxlib/buildlink3.mk"
|
2016-12-30 13:04:25 +01:00
|
|
|
.include "../../textproc/ocaml-uchar/buildlink3.mk"
|
Updated js_of_ocaml to latest version, 2.5. Package now uses ocaml.mk.
There are many changes since the latest version, most important are:
** Compiler: SourceMap improvement
** Compiler: remove registration of unused named value (wrt runtime)
** Compiler: Smarter inlining, Constant sharing, Switch generation
** Lib: Dom binding: *AttributeNS, *AttributeNode*, borderRadius
** Runtime: improve performence of string, array allocation
* Misc: enable safestring for OCaml 4.02
* Commandline: switch to Cmdliner. Better -help + manpage
** Runtime: support for num (Ryan Goulden)
** Lib: initial support for Dom_svg
** Lib: introduce Jsonp module
** Lib: introduce JSON object binding
** Lib: introduce DomContentLoaded
** lib: introduce eventSource
** Lib: introduce js_of_ocaml.toplevel package
** Lib: various improvement: textContent,outerHTML,unload event,css properties
** Lib: complete binding of Js.array
** Lib: change signature of Sys_js.register_autoload
** Lib: sync js_of_ocaml.tyxml with latest tyxml
** Tools: helpers to build toplevel: jsoo_mktop, jsoo_mkcmis
** Lib: remove deprecated Event_arrow
** Lib: introduce js_of_ocaml.tyxml
** Lib: introduce js_of_ocaml.weak (that loads weak.js)
and remove predicate joo_weak
** Lib: introduce js_of_ocaml.log (Lwt logger)
** Lib: Dom_html.{range,selection} (Enguerrand Decorne)
** Runtime: improve blit_string perf
** Compiler: option to warn about unused js variable
** Lib: audio/videoElement
** Runtime: bigarray comparison
** Compiler: allow to embed directory with -file dir_name=ext1,ext2:dest_path
** Compiler: can now output embeded files in a differant js file
** Lib: js_of_ocaml.graphics
** Lib: Js.Unsafe.expr to embed JavasScript expression
to be used instead of Js.Unsafe.variable (or eval_string)
** Lib: Sys_js.js_of_ocaml_version && Sys_js.file_content
** OCamlbuild plugin: Add the OASIS support, document the API and add the tags
sourcemap (included in the meta-tag debug) and tailcall (#148)
(by Jacques-Pascal Deplaix)
** Compiler: generate shorter variable names
** Parsing and minifying of external javascript file (ie: runtime)
(by Hugo Heuzard)
** Compiler: JavaScript strict mode enabled
** Runtime: add support for recursive module (by Hugo Heuzard)
** Compiler: use trampoline to implement tailcall optim (by Hugo Heuzard)
** Improved OCaml toplevel UI (by Hugo Heuzard)
** Toplevel: support dynamic loading of cmo and cma files
** Runtime: add Bigarray support (contributed by Andrew Ray)
** Library: switch from "float Js.t" to just "float" for typing
JavaScript numbers
** Compiler: Add javascript file lookup using findlib
(+mypkg/myfile.js will read myfile.js from mypkg findlib directory)
(by Hugo Heuzard)
** Compiler: improve missing primitives & reserved name detection
(by Hugo Heuzard)
** Compiler: static evaluation of constant ("staticeval" optimisation)
(by Hugo Heuzard)
** Compiler: share constants (by Hugo Heuzard)
** Compiler: alias primitives (by Hugo Heuzard)
** Compiler: complete javacript ast (by Hugo Heuzard)
** Compiler: 'caml_format_int %d x' compiles to ""+x (by Hugo Heuzard)
** Add JavaScript file in META (to be used with ocamlfind)
(by Hugo Heuzard)
** Add Ocamlbuild plugin js_of_ocaml.ocamlbuild
(by Jacques-Pascal Deplaix)
** Add/Install classlist.js, weak.js
** Add Url.Current.protocol (by Vicent Balat)
** Dependency: deriving instead of deriving-ocsigen
** Runtime: log wrong string encoding issues to the console (by Hugo Heuzard)
** Add compiler_libs (by Pierre Chambart)
** Compile syntax extension to native code as well (by Hugo Heuzard)
** Add a JavaScript parser (extracted from facebook/pfff)
** Compiler: remove redundant 'var' (by Hugo Heuzard)
** Compiler: improve compact mode, remove unnecessary space, semicolon
** Runtime: Support in_channel and out_channel (by Hugo Heuzard)
** Compiler: option to embed files into the generated js
such files can be read using open_in (by Hugo Heuzard)
** Runtime: add cache for method lookup (by Hugo Heuzard)
** Compiler: experimental sourcemap support (by Hugo Heuzard)
** JavaScript Errors are now wrapped inside OCaml exceptions (by Hugo Heuzard)
** Add missing primitives for OCaml 4.01
** Improved Dom bindings (Hugo Heuzard and many other contributors)
** Add -linkall option to keep all provided primitives (Pierre Chambard)
** Improved tail-call optimization (Hugo Heuzard)
** Added optimization levels: -o {1,2,3} (Hugo Heuzard)
2014-10-09 23:18:05 +02:00
|
|
|
.include "../../mk/ocaml.mk"
|
2012-07-11 17:35:06 +02:00
|
|
|
.include "../../mk/bsd.pkg.mk"
|