Browse Source
* Fix build with fixed versions * Use carets * support `lts/dubnium` format * trim string in test * fix typo * Add resolution to windows.json too * Use specific opam fileremotes/origin/add-simple-redirecting-site


76 changed files with 2157 additions and 3092 deletions
@ -1,23 +0,0 @@ |
|||||||
opam-version: "2.0" |
|
||||||
maintainer: "martin@mjambon.com" |
|
||||||
authors: ["Martin Jambon"] |
|
||||||
homepage: "https://github.com/mjambon/cppo" |
|
||||||
dev-repo: "git+https://github.com/mjambon/cppo.git" |
|
||||||
bug-reports: "https://github.com/mjambon/cppo/issues" |
|
||||||
license: "BSD-3-Clause" |
|
||||||
|
|
||||||
build: [ |
|
||||||
["jbuilder" "subst" "-p" name] {pinned} |
|
||||||
["jbuilder" "build" "-p" name "-j" jobs] |
|
||||||
["jbuilder" "runtest" "-p" name] {with-test} |
|
||||||
] |
|
||||||
depends: [ |
|
||||||
"ocaml" |
|
||||||
"jbuilder" {build & >= "1.0+beta17"} |
|
||||||
"base-unix" |
|
||||||
] |
|
||||||
synopsis: "Equivalent of the C preprocessor for OCaml programs" |
|
||||||
url { |
|
||||||
src: "https://github.com/mjambon/cppo/archive/v1.6.5.tar.gz" |
|
||||||
checksum: "md5=1cd25741d31417995b0973fe0b6f6c82" |
|
||||||
} |
|
@ -0,0 +1,37 @@ |
|||||||
|
opam-version: "2.0" |
||||||
|
maintainer: "martin@mjambon.com" |
||||||
|
authors: "Martin Jambon" |
||||||
|
license: "BSD-3-Clause" |
||||||
|
homepage: "http://mjambon.com/cppo.html" |
||||||
|
doc: "https://ocaml-community.github.io/cppo/" |
||||||
|
bug-reports: "https://github.com/ocaml-community/cppo/issues" |
||||||
|
depends: [ |
||||||
|
"ocaml" {>= "4.03"} |
||||||
|
"dune" {>= "1.0"} |
||||||
|
"base-unix" |
||||||
|
] |
||||||
|
build: [ |
||||||
|
["dune" "subst"] {pinned} |
||||||
|
["dune" "build" "-p" name "-j" jobs] |
||||||
|
["dune" "runtest" "-p" name "-j" jobs] {with-test} |
||||||
|
] |
||||||
|
dev-repo: "git+https://github.com/ocaml-community/cppo.git" |
||||||
|
synopsis: "Code preprocessor like cpp for OCaml" |
||||||
|
description: """ |
||||||
|
Cppo is an equivalent of the C preprocessor for OCaml programs. |
||||||
|
It allows the definition of simple macros and file inclusion. |
||||||
|
|
||||||
|
Cppo is: |
||||||
|
|
||||||
|
* more OCaml-friendly than cpp |
||||||
|
* easy to learn without consulting a manual |
||||||
|
* reasonably fast |
||||||
|
* simple to install and to maintain |
||||||
|
""" |
||||||
|
url { |
||||||
|
src: "https://github.com/ocaml-community/cppo/releases/download/v1.6.6/cppo-v1.6.6.tbz" |
||||||
|
checksum: [ |
||||||
|
"sha256=e7272996a7789175b87bb998efd079794a8db6625aae990d73f7b4484a07b8a0" |
||||||
|
"sha512=44ecf9d225d9e45490a2feac0bde04865ca398dba6c3579e3370fcd1ea255707b8883590852af8b2df87123801062b9f3acce2455c092deabf431f9c4fb8d8eb" |
||||||
|
] |
||||||
|
} |
@ -1,25 +0,0 @@ |
|||||||
opam-version: "2.0" |
|
||||||
maintainer: "martin@mjambon.com" |
|
||||||
authors: ["Martin Jambon"] |
|
||||||
homepage: "http://mjambon.com/cppo.html" |
|
||||||
dev-repo: "git+https://github.com/mjambon/cppo.git" |
|
||||||
bug-reports: "https://github.com/mjambon/cppo/issues" |
|
||||||
license: "BSD-3-Clause" |
|
||||||
|
|
||||||
build: [ |
|
||||||
["jbuilder" "subst" "-p" name] {pinned} |
|
||||||
["jbuilder" "build" "-p" name "-j" jobs] |
|
||||||
] |
|
||||||
|
|
||||||
depends: [ |
|
||||||
"ocaml" |
|
||||||
"jbuilder" {build & >= "1.0+beta10"} |
|
||||||
"ocamlbuild" |
|
||||||
"ocamlfind" |
|
||||||
"cppo" {>= "1.6.0"} |
|
||||||
] |
|
||||||
synopsis: "ocamlbuild support for cppo, OCaml-friendly source preprocessor" |
|
||||||
url { |
|
||||||
src: "https://github.com/mjambon/cppo/archive/v1.6.0.tar.gz" |
|
||||||
checksum: "md5=aee411b3546bc5d198c71ae9185cade4" |
|
||||||
} |
|
@ -0,0 +1,29 @@ |
|||||||
|
opam-version: "2.0" |
||||||
|
maintainer: "Louis Roché <louis@louisroche.net>" |
||||||
|
authors: "Louis Roché <louis@louisroche.net>" |
||||||
|
homepage: "https://github.com/Khady/ocaml-junit" |
||||||
|
bug-reports: "https://github.com/Khady/ocaml-junit/issues" |
||||||
|
license: "LGPLv3+ with OCaml linking exception" |
||||||
|
dev-repo: "git+https://github.com/Khady/ocaml-junit.git" |
||||||
|
doc: "https://khady.github.io/ocaml-junit/" |
||||||
|
tags: ["junit" "jenkins"] |
||||||
|
depends: [ |
||||||
|
"dune" {>= "1.0"} |
||||||
|
"ptime" |
||||||
|
"tyxml" {>= "4.0.0"} |
||||||
|
"odoc" {with-doc & >= "1.1.1"} |
||||||
|
] |
||||||
|
build: [ |
||||||
|
["dune" "subst"] {pinned} |
||||||
|
["dune" "build" "-p" name "-j" jobs] |
||||||
|
["dune" "runtest" "-p" name "-j" jobs] {with-test} |
||||||
|
["dune" "build" "-p" name "-j" jobs] {with-doc} |
||||||
|
] |
||||||
|
name: "junit" |
||||||
|
synopsis: "JUnit XML reports generation library" |
||||||
|
description: "JUnit XML reports generation library" |
||||||
|
url { |
||||||
|
src: |
||||||
|
"https://github.com/Khady/ocaml-junit/releases/download/2.0.1/junit-2.0.1.tbz" |
||||||
|
checksum: "md5=40224fb3d4f5e47dc5ff4605587d383b" |
||||||
|
} |
@ -1,74 +0,0 @@ |
|||||||
opam-version: "2.0" |
|
||||||
name: "merlin" |
|
||||||
synopsis: "Installation with Opam" |
|
||||||
description: """ |
|
||||||
If you have a working [Opam](https://opam.ocaml.org/) installation, Merlin is only two commands away: |
|
||||||
|
|
||||||
```shell |
|
||||||
opam install merlin |
|
||||||
opam user-setup install |
|
||||||
``` |
|
||||||
|
|
||||||
[opam-user-setup](https://github.com/OCamlPro/opam-user-setup) takes care of configuring Emacs and Vim to make best use of your current install. |
|
||||||
|
|
||||||
You can also [configure the editor](#editor-setup) yourself, if you prefer.""" |
|
||||||
maintainer: "defree@gmail.com" |
|
||||||
authors: "The Merlin team" |
|
||||||
homepage: "https://github.com/ocaml/merlin" |
|
||||||
bug-reports: "https://github.com/ocaml/merlin/issues" |
|
||||||
depends: [ |
|
||||||
"ocaml" {>= "4.02.1" & < "4.08"} |
|
||||||
"dune" {build} |
|
||||||
"ocamlfind" {>= "1.5.2"} |
|
||||||
"yojson" |
|
||||||
"craml" {with-test} |
|
||||||
] |
|
||||||
build: [ |
|
||||||
["dune" "subst"] {pinned} |
|
||||||
["dune" "build" "-p" name "-j" jobs] |
|
||||||
] |
|
||||||
post-messages: |
|
||||||
""" |
|
||||||
merlin installed. |
|
||||||
|
|
||||||
Quick setup for VIM |
|
||||||
------------------- |
|
||||||
Append this to your .vimrc to add merlin to vim's runtime-path: |
|
||||||
let g:opamshare = substitute(system('opam config var share'),'\\n$','','''') |
|
||||||
execute "set rtp+=" . g:opamshare . "/merlin/vim" |
|
||||||
|
|
||||||
Also run the following line in vim to index the documentation: |
|
||||||
:execute "helptags " . g:opamshare . "/merlin/vim/doc" |
|
||||||
|
|
||||||
Quick setup for EMACS |
|
||||||
------------------- |
|
||||||
Add opam emacs directory to your load-path by appending this to your .emacs: |
|
||||||
(let ((opam-share (ignore-errors (car (process-lines "opam" "config" "var" "share"))))) |
|
||||||
(when (and opam-share (file-directory-p opam-share)) |
|
||||||
;; Register Merlin |
|
||||||
(add-to-list 'load-path (expand-file-name "emacs/site-lisp" opam-share)) |
|
||||||
(autoload 'merlin-mode "merlin" nil t nil) |
|
||||||
;; Automatically start it in OCaml buffers |
|
||||||
(add-hook 'tuareg-mode-hook 'merlin-mode t) |
|
||||||
(add-hook 'caml-mode-hook 'merlin-mode t) |
|
||||||
;; Use opam switch to lookup ocamlmerlin binary |
|
||||||
(setq merlin-command 'opam))) |
|
||||||
|
|
||||||
Take a look at https://github.com/ocaml/merlin for more information |
|
||||||
|
|
||||||
Quick setup with opam-user-setup |
|
||||||
-------------------------------- |
|
||||||
|
|
||||||
Opam-user-setup support Merlin. |
|
||||||
|
|
||||||
$ opam user-setup install |
|
||||||
|
|
||||||
should take care of basic setup. |
|
||||||
See https://github.com/OCamlPro/opam-user-setup""" |
|
||||||
{success & !user-setup:installed} |
|
||||||
dev-repo: "git+https://github.com/ocaml/merlin.git" |
|
||||||
url { |
|
||||||
src: |
|
||||||
"https://github.com/ocaml/merlin/releases/download/v3.2.2/merlin-v3.2.2.tbz" |
|
||||||
checksum: "md5=ede35b65f8ac9c440cfade5445662c54" |
|
||||||
} |
|
@ -0,0 +1,69 @@ |
|||||||
|
opam-version: "2.0" |
||||||
|
maintainer: "defree@gmail.com" |
||||||
|
authors: "The Merlin team" |
||||||
|
homepage: "https://github.com/ocaml/merlin" |
||||||
|
bug-reports: "https://github.com/ocaml/merlin/issues" |
||||||
|
dev-repo: "git+https://github.com/ocaml/merlin.git" |
||||||
|
build: [ |
||||||
|
["dune" "subst"] {pinned} |
||||||
|
["dune" "build" "-p" name "-j" jobs] |
||||||
|
["dune" "runtest" "-p" name "-j" jobs] {with-test} |
||||||
|
] |
||||||
|
depends: [ |
||||||
|
"ocaml" {>= "4.02.1" & < "4.09"} |
||||||
|
"dune" {>= "1.8.0"} |
||||||
|
"ocamlfind" {>= "1.5.2"} |
||||||
|
"yojson" |
||||||
|
"mdx" {with-test & >= "1.3.0"} |
||||||
|
] |
||||||
|
synopsis: |
||||||
|
"Editor helper, provides completion, typing and source browsing in Vim and Emacs" |
||||||
|
description: |
||||||
|
"Merlin is an assistant for editing OCaml code. It aims to provide the features available in modern IDEs: error reporting, auto completion, source browsing and much more." |
||||||
|
post-messages: [ |
||||||
|
"merlin installed. |
||||||
|
|
||||||
|
Quick setup for VIM |
||||||
|
------------------- |
||||||
|
Append this to your .vimrc to add merlin to vim's runtime-path: |
||||||
|
let g:opamshare = substitute(system('opam config var share'),'\\n$','','''') |
||||||
|
execute \"set rtp+=\" . g:opamshare . \"/merlin/vim\" |
||||||
|
|
||||||
|
Also run the following line in vim to index the documentation: |
||||||
|
:execute \"helptags \" . g:opamshare . \"/merlin/vim/doc\" |
||||||
|
|
||||||
|
Quick setup for EMACS |
||||||
|
------------------- |
||||||
|
Add opam emacs directory to your load-path by appending this to your .emacs: |
||||||
|
(let ((opam-share (ignore-errors (car (process-lines \"opam\" \"config\" \"var\" \"share\"))))) |
||||||
|
(when (and opam-share (file-directory-p opam-share)) |
||||||
|
;; Register Merlin |
||||||
|
(add-to-list 'load-path (expand-file-name \"emacs/site-lisp\" opam-share)) |
||||||
|
(autoload 'merlin-mode \"merlin\" nil t nil) |
||||||
|
;; Automatically start it in OCaml buffers |
||||||
|
(add-hook 'tuareg-mode-hook 'merlin-mode t) |
||||||
|
(add-hook 'caml-mode-hook 'merlin-mode t) |
||||||
|
;; Use opam switch to lookup ocamlmerlin binary |
||||||
|
(setq merlin-command 'opam))) |
||||||
|
|
||||||
|
Take a look at https://github.com/ocaml/merlin for more information |
||||||
|
|
||||||
|
Quick setup with opam-user-setup |
||||||
|
-------------------------------- |
||||||
|
|
||||||
|
Opam-user-setup support Merlin. |
||||||
|
|
||||||
|
$ opam user-setup install |
||||||
|
|
||||||
|
should take care of basic setup. |
||||||
|
See https://github.com/OCamlPro/opam-user-setup |
||||||
|
" |
||||||
|
{success & !user-setup:installed} |
||||||
|
] |
||||||
|
url { |
||||||
|
src: "https://github.com/ocaml/merlin/archive/v3.3.1.tar.gz" |
||||||
|
checksum: [ |
||||||
|
"md5=b542cacabeb98f9f22c6740f22a9fea7" |
||||||
|
"sha512=8aa976197a55cdbe38180e80b1ae98b7408734a7a55b975a5be982016e7e723c64e9a82bcb1ff2827b27f9c5d210a2c34665d3e5c18afdaf4b0767b526b3d834" |
||||||
|
] |
||||||
|
} |
@ -1,129 +0,0 @@ |
|||||||
From 7688bb4fea24463c92e9c4870acc08495a4c77cb Mon Sep 17 00:00:00 2001
|
|
||||||
From: David Allsopp <david.allsopp@metastack.com>
|
|
||||||
Date: Wed, 10 Jan 2018 15:20:46 +0000
|
|
||||||
Subject: [PATCH] Provide findlib-install target
|
|
||||||
|
|
||||||
Allows installing the entire library using ocamlfind.
|
|
||||||
---
|
|
||||||
Makefile | 10 +++++++++-
|
|
||||||
src/META | 17 -----------------
|
|
||||||
src/META.in | 19 +++++++++++++++++++
|
|
||||||
src/Makefile | 17 +++++++++++++++--
|
|
||||||
4 files changed, 43 insertions(+), 20 deletions(-)
|
|
||||||
delete mode 100644 src/META
|
|
||||||
create mode 100644 src/META.in
|
|
||||||
|
|
||||||
diff --git a/Makefile b/Makefile
|
|
||||||
index 6a5d08f..b40e588 100644
|
|
||||||
--- a/Makefile
|
|
||||||
+++ b/Makefile
|
|
||||||
@@ -14,8 +14,16 @@ install:
|
|
||||||
$(MAKE) -C src install
|
|
||||||
$(MAKE) -C toplevel install
|
|
||||||
|
|
||||||
+findlib-install:
|
|
||||||
+ $(MAKE) -C src findlib-install
|
|
||||||
+ $(MAKE) -C toplevel install
|
|
||||||
+
|
|
||||||
uninstall:
|
|
||||||
$(MAKE) -C src uninstall
|
|
||||||
$(MAKE) -C toplevel uninstall
|
|
||||||
|
|
||||||
-.PHONY: all test clean install uninstall
|
|
||||||
+findlib-uninstall:
|
|
||||||
+ $(MAKE) -C src findlib-uninstall
|
|
||||||
+ $(MAKE) -C toplevel uninstall
|
|
||||||
+
|
|
||||||
+.PHONY: all test clean install uninstall findlib-install findlib-uninstall
|
|
||||||
diff --git a/src/META b/src/META
|
|
||||||
deleted file mode 100644
|
|
||||||
index 66ac170..0000000
|
|
||||||
--- a/src/META
|
|
||||||
+++ /dev/null
|
|
||||||
@@ -1,17 +0,0 @@
|
|
||||||
-# This META is the one provided by findlib when the "num" library was
|
|
||||||
-# part of the core OCaml distribution. For backward compatibility,
|
|
||||||
-# it installs into OCaml's standard library directory, not in a subdirectory
|
|
||||||
-
|
|
||||||
-requires = "num.core"
|
|
||||||
-requires(toploop) = "num.core,num-top"
|
|
||||||
-version = "1.0"
|
|
||||||
-description = "Arbitrary-precision rational arithmetic"
|
|
||||||
-package "core" (
|
|
||||||
- directory = "^"
|
|
||||||
- version = "1.0"
|
|
||||||
- browse_interfaces = ""
|
|
||||||
- archive(byte) = "nums.cma"
|
|
||||||
- archive(native) = "nums.cmxa"
|
|
||||||
- plugin(byte) = "nums.cma"
|
|
||||||
- plugin(native) = "nums.cmxs"
|
|
||||||
-)
|
|
||||||
diff --git a/src/META.in b/src/META.in
|
|
||||||
new file mode 100644
|
|
||||||
index 0000000..b5678b7
|
|
||||||
--- /dev/null
|
|
||||||
+++ b/src/META.in
|
|
||||||
@@ -0,0 +1,19 @@
|
|
||||||
+# This META is the one provided by findlib when the "num" library was
|
|
||||||
+# part of the core OCaml distribution. For backward compatibility,
|
|
||||||
+# it is installed into OCaml's standard library directory. If the
|
|
||||||
+# directory line below is removed, then it's installed in a
|
|
||||||
+# subdirectory, as normal for a findlib package.
|
|
||||||
+
|
|
||||||
+requires = "num.core"
|
|
||||||
+requires(toploop) = "num.core,num-top"
|
|
||||||
+version = "1.0"
|
|
||||||
+description = "Arbitrary-precision rational arithmetic"
|
|
||||||
+package "core" (
|
|
||||||
+ directory = "^"
|
|
||||||
+ version = "1.0"
|
|
||||||
+ browse_interfaces = ""
|
|
||||||
+ archive(byte) = "nums.cma"
|
|
||||||
+ archive(native) = "nums.cmxa"
|
|
||||||
+ plugin(byte) = "nums.cma"
|
|
||||||
+ plugin(native) = "nums.cmxs"
|
|
||||||
+)
|
|
||||||
diff --git a/src/Makefile b/src/Makefile
|
|
||||||
index 97dc074..ff271fe 100644
|
|
||||||
--- a/src/Makefile
|
|
||||||
+++ b/src/Makefile
|
|
||||||
@@ -80,21 +80,34 @@ endif
|
|
||||||
ifeq "$(NATDYNLINK)" "true"
|
|
||||||
TOINSTALL+=nums.cmxs
|
|
||||||
endif
|
|
||||||
+ifeq "$(SUPPORTS_SHARED_LIBRARIES)" "true"
|
|
||||||
TOINSTALL_STUBS=dllnums.$(SO)
|
|
||||||
+else
|
|
||||||
+TOINSTALL_STUBS=
|
|
||||||
+endif
|
|
||||||
|
|
||||||
install:
|
|
||||||
+ cp META.in META
|
|
||||||
$(OCAMLFIND) install num META
|
|
||||||
+ rm -f META
|
|
||||||
$(INSTALL_DATA) $(TOINSTALL) $(STDLIBDIR)
|
|
||||||
ifeq "$(SUPPORTS_SHARED_LIBRARIES)" "true"
|
|
||||||
$(INSTALL_DLL) $(TOINSTALL_STUBS) $(STDLIBDIR)/stublibs
|
|
||||||
endif
|
|
||||||
|
|
||||||
-uninstall:
|
|
||||||
+findlib-install:
|
|
||||||
+ grep -Fv '^' META.in > META
|
|
||||||
+ $(OCAMLFIND) install num META $(TOINSTALL) $(TOINSTALL_STUBS)
|
|
||||||
+ rm -f META
|
|
||||||
+
|
|
||||||
+findlib-uninstall:
|
|
||||||
+ $(OCAMLFIND) remove num
|
|
||||||
+
|
|
||||||
+uninstall: findlib-uninstall
|
|
||||||
cd $(STDLIBDIR) && rm -f $(TOINSTALL)
|
|
||||||
ifeq "$(SUPPORTS_SHARED_LIBRARIES)" "true"
|
|
||||||
cd $(STDLIBDIR)/stublibs && rm -f $(TOINSTALL_STUBS)
|
|
||||||
endif
|
|
||||||
- $(OCAMLFIND) remove num
|
|
||||||
|
|
||||||
clean:
|
|
||||||
rm -f *.cm[ioxta] *.cmx[as] *.cmti *.$(O) *.$(A) *.$(SO)
|
|
||||||
--
|
|
||||||
2.14.1
|
|
||||||
|
|
@ -1,48 +0,0 @@ |
|||||||
opam-version: "2.0" |
|
||||||
maintainer: "whitequark <whitequark@whitequark.org>" |
|
||||||
authors: [ "whitequark <whitequark@whitequark.org>" ] |
|
||||||
license: "MIT" |
|
||||||
homepage: "https://github.com/whitequark/ppx_deriving" |
|
||||||
doc: "https://whitequark.github.io/ppx_deriving" |
|
||||||
bug-reports: "https://github.com/whitequark/ppx_deriving/issues" |
|
||||||
dev-repo: "git+https://github.com/whitequark/ppx_deriving.git" |
|
||||||
tags: [ "syntax" ] |
|
||||||
substs: [ "pkg/META" ] |
|
||||||
build: [ |
|
||||||
[ |
|
||||||
"ocaml" |
|
||||||
"pkg/build.ml" |
|
||||||
"native=%{ocaml:native-dynlink}%" |
|
||||||
"native-dynlink=%{ocaml:native-dynlink}%" |
|
||||||
] |
|
||||||
[ |
|
||||||
"ocamlbuild" |
|
||||||
"-classic-display" |
|
||||||
"-use-ocamlfind" |
|
||||||
"src_test/test_ppx_deriving.byte" |
|
||||||
"--" |
|
||||||
] {with-test} |
|
||||||
[make "doc"] {with-doc} |
|
||||||
] |
|
||||||
depends: [ |
|
||||||
"ocaml" {> "4.03.0"} |
|
||||||
"ocamlbuild" {build} |
|
||||||
"ocamlfind" {build & >= "1.6.0"} |
|
||||||
"cppo" {build} |
|
||||||
"cppo_ocamlbuild" {build} |
|
||||||
"ocaml-migrate-parsetree" |
|
||||||
"ppx_derivers" |
|
||||||
"ppx_tools" {>= "4.02.3"} |
|
||||||
"result" |
|
||||||
"ounit" {with-test} |
|
||||||
] |
|
||||||
available: opam-version >= "1.2" |
|
||||||
synopsis: "Type-driven code generation for OCaml >=4.02" |
|
||||||
description: """ |
|
||||||
ppx_deriving provides common infrastructure for generating |
|
||||||
code based on type definitions, and a set of useful plugins |
|
||||||
for common tasks.""" |
|
||||||
url { |
|
||||||
src: "https://github.com/ocaml-ppx/ppx_deriving/archive/v4.2.1.tar.gz" |
|
||||||
checksum: "md5=2195fccf2a527c3ff9ec5b4e36e2f0a8" |
|
||||||
} |
|
@ -0,0 +1,35 @@ |
|||||||
|
opam-version: "2.0" |
||||||
|
maintainer: "whitequark <whitequark@whitequark.org>" |
||||||
|
authors: [ "whitequark <whitequark@whitequark.org>" ] |
||||||
|
license: "MIT" |
||||||
|
homepage: "https://github.com/ocaml-ppx/ppx_deriving" |
||||||
|
doc: "https://ocaml-ppx.github.io/ppx_deriving/" |
||||||
|
bug-reports: "https://github.com/ocaml-ppx/ppx_deriving/issues" |
||||||
|
dev-repo: "git+https://github.com/ocaml-ppx/ppx_deriving.git" |
||||||
|
tags: [ "syntax" ] |
||||||
|
build: [ |
||||||
|
["dune" "subst"] {pinned} |
||||||
|
["dune" "build" "-p" name "-j" jobs] |
||||||
|
["dune" "runtest" "-p" name "-j" jobs] {with-test & ocaml:version >= "4.03"} |
||||||
|
["dune" "build" "@doc" "-p" name "-j" jobs] {with-doc} |
||||||
|
] |
||||||
|
depends: [ |
||||||
|
"dune" {>= "1.6.3"} |
||||||
|
"cppo" {build} |
||||||
|
"ppxfind" {build} |
||||||
|
"ocaml-migrate-parsetree" |
||||||
|
"ppx_derivers" |
||||||
|
"ppx_tools" {>= "4.02.3"} |
||||||
|
"result" |
||||||
|
"ounit" {with-test} |
||||||
|
"ocaml" {>= "4.02" & < "4.09.0"} |
||||||
|
] |
||||||
|
synopsis: "Type-driven code generation for OCaml >=4.02.2" |
||||||
|
description: """ |
||||||
|
ppx_deriving provides common infrastructure for generating |
||||||
|
code based on type definitions, and a set of useful plugins |
||||||
|
for common tasks. |
||||||
|
""" |
||||||
|
url { |
||||||
|
src: "https://github.com/ocaml-ppx/ppx_deriving/archive/v4.4.tar.gz" |
||||||
|
checksum: "sha256=c2d85af4cb65a1f163f624590fb0395a164bbfd0d05082092526b669e66bcc34"} |
@ -0,0 +1,31 @@ |
|||||||
|
opam-version: "2.0" |
||||||
|
maintainer: "jeremie@dimino.org" |
||||||
|
authors: ["Jérémie Dimino"] |
||||||
|
license: "BSD3" |
||||||
|
homepage: "https://github.com/diml/ppxfind" |
||||||
|
bug-reports: "https://github.com/diml/ppxfind/issues" |
||||||
|
dev-repo: "git+https://github.com/diml/ppxfind.git" |
||||||
|
doc: "https://diml.github.io/ppxfind/" |
||||||
|
build: [ |
||||||
|
["dune" "build" "-p" name "-j" jobs] |
||||||
|
] |
||||||
|
depends: [ |
||||||
|
"dune" {>= "1.0"} |
||||||
|
"ocaml-migrate-parsetree" |
||||||
|
"ocamlfind" |
||||||
|
"ocaml" {>= "4.02.3"} |
||||||
|
] |
||||||
|
conflicts: [ "dune" {= "1.2.0" | = "1.2.1"} ] |
||||||
|
synopsis: "Tool combining ocamlfind and ppx" |
||||||
|
description: """ |
||||||
|
Ppxfind is a small command line tool that among other things allows |
||||||
|
to use old style ppx rewriters with jbuilder. |
||||||
|
""" |
||||||
|
url { |
||||||
|
src: |
||||||
|
"https://github.com/diml/ppxfind/releases/download/1.3/ppxfind-1.3.tbz" |
||||||
|
checksum: [ |
||||||
|
"sha256=d49db026d0e74212c4b475b4e628aa57508c7452a0682d8c96e80c130ab892e4" |
||||||
|
"sha512=dd81bf5b3413f99a3c39f25e5e747f8d57d3bacac6a1fda92478af317e2d543294b4937982c94cf010978fcd71b1cfbfce1edbaa0c3d03973079296fda89689f" |
||||||
|
] |
||||||
|
} |
@ -0,0 +1,49 @@ |
|||||||
|
opam-version: "2.0" |
||||||
|
maintainer: "Daniel Bünzli <daniel.buenzl i@erratique.ch>" |
||||||
|
authors: ["The ptime programmers"] |
||||||
|
homepage: "https://erratique.ch/software/ptime" |
||||||
|
doc: "https://erratique.ch/software/ptime/doc" |
||||||
|
dev-repo: "git+http://erratique.ch/repos/ptime.git" |
||||||
|
bug-reports: "https://github.com/dbuenzli/ptime/issues" |
||||||
|
tags: [ "time" "posix" "system" "org:erratique" ] |
||||||
|
license: "ISC" |
||||||
|
depends: [ |
||||||
|
"ocaml" {>= "4.01.0"} |
||||||
|
"ocamlfind" {build} |
||||||
|
"ocamlbuild" {build} |
||||||
|
"topkg" {build} |
||||||
|
"result" |
||||||
|
] |
||||||
|
depopts: [ "js_of_ocaml" ] |
||||||
|
conflicts: [ "js_of_ocaml" { < "3.3.0" } ] |
||||||
|
build:[[ |
||||||
|
"ocaml" "pkg/pkg.ml" "build" |
||||||
|
"--pinned" "%{pinned}%" |
||||||
|
"--with-js_of_ocaml" "%{js_of_ocaml:installed}%" ]] |
||||||
|
|
||||||
|
synopsis: """POSIX time for OCaml""" |
||||||
|
description: """\ |
||||||
|
|
||||||
|
Ptime has platform independent POSIX time support in pure OCaml. It |
||||||
|
provides a type to represent a well-defined range of POSIX timestamps |
||||||
|
with picosecond precision, conversion with date-time values, |
||||||
|
conversion with [RFC 3339 timestamps][rfc3339] and pretty printing to a |
||||||
|
human-readable, locale-independent representation. |
||||||
|
|
||||||
|
The additional Ptime_clock library provides access to a system POSIX |
||||||
|
clock and to the system's current time zone offset. |
||||||
|
|
||||||
|
Ptime is not a calendar library. |
||||||
|
|
||||||
|
Ptime depends on the `result` compatibility package. Ptime_clock |
||||||
|
depends on your system library. Ptime_clock's optional JavaScript |
||||||
|
support depends on [js_of_ocaml][jsoo]. Ptime and its libraries are |
||||||
|
distributed under the ISC license. |
||||||
|
|
||||||
|
[rfc3339]: http://tools.ietf.org/html/rfc3339 |
||||||
|
[jsoo]: http://ocsigen.org/js_of_ocaml/ |
||||||
|
""" |
||||||
|
url { |
||||||
|
archive: "https://erratique.ch/software/ptime/releases/ptime-0.8.5.tbz" |
||||||
|
checksum: "4d48055d623ecf2db792439b3e96a520" |
||||||
|
} |
@ -1,27 +0,0 @@ |
|||||||
opam-version: "2.0" |
|
||||||
maintainer: "rudi.grinberg@gmail.com" |
|
||||||
authors: "Rudi Grinberg" |
|
||||||
homepage: "https://github.com/rgrinberg/stringext" |
|
||||||
bug-reports: "https://github.com/rgrinberg/stringext/issues" |
|
||||||
license: "MIT" |
|
||||||
dev-repo: "git+https://github.com/rgrinberg/stringext.git" |
|
||||||
build: [ |
|
||||||
["jbuilder" "subst" "-p" name] {pinned} |
|
||||||
["jbuilder" "build" "-p" name "-j" jobs] |
|
||||||
["jbuilder" "runtest" "-p" name "-j" jobs] {with-test} |
|
||||||
] |
|
||||||
depends: [ |
|
||||||
"ocaml" {>= "4.02.3"} |
|
||||||
"jbuilder" {build & >= "1.0+beta10"} |
|
||||||
"ounit" {with-test} |
|
||||||
"qtest" {with-test & >= "2.2"} |
|
||||||
"base-bytes" |
|
||||||
] |
|
||||||
synopsis: "Extra string functions for OCaml" |
|
||||||
description: """ |
|
||||||
Extra string functions for OCaml. Mainly splitting. All functions are in the |
|
||||||
`Stringext` module.""" |
|
||||||
url { |
|
||||||
src: "https://github.com/rgrinberg/stringext/archive/1.5.0.zip" |
|
||||||
checksum: "md5=867263ea97532f150516677fa994cdf2" |
|
||||||
} |
|
@ -0,0 +1,32 @@ |
|||||||
|
opam-version: "2.0" |
||||||
|
maintainer: "rudi.grinberg@gmail.com" |
||||||
|
authors: "Rudi Grinberg" |
||||||
|
license: "MIT" |
||||||
|
homepage: "https://github.com/rgrinberg/stringext" |
||||||
|
bug-reports: "https://github.com/rgrinberg/stringext/issues" |
||||||
|
depends: [ |
||||||
|
"ocaml" {>= "4.02.3"} |
||||||
|
"dune" {>= "1.0"} |
||||||
|
"ounit" {with-test} |
||||||
|
"qtest" {with-test & >= "2.2"} |
||||||
|
"base-bytes" |
||||||
|
] |
||||||
|
build: [ |
||||||
|
["dune" "subst"] {pinned} |
||||||
|
["dune" "build" "-p" name "-j" jobs] |
||||||
|
["dune" "runtest" "-p" name "-j" jobs] {with-test} |
||||||
|
] |
||||||
|
dev-repo: "git+https://github.com/rgrinberg/stringext.git" |
||||||
|
synopsis: "Extra string functions for OCaml" |
||||||
|
description: """ |
||||||
|
Extra string functions for OCaml. Mainly splitting. All functions are in the |
||||||
|
Stringext module. |
||||||
|
""" |
||||||
|
url { |
||||||
|
src: |
||||||
|
"https://github.com/rgrinberg/stringext/releases/download/1.6.0/stringext-1.6.0.tbz" |
||||||
|
checksum: [ |
||||||
|
"sha256=db41f5d52e9eab17615f110b899dfeb27dd7e7f89cd35ae43827c5119db206ea" |
||||||
|
"sha512=d8ebe40f42b598a9bd99f1ef4b00ba93458385a4accd121af66a0bf3b3f8d7135f576740adf1a43081dd409977c2219fd4bdbb5b3d1308890d301d553ed49900" |
||||||
|
] |
||||||
|
} |
@ -0,0 +1,45 @@ |
|||||||
|
opam-version: "2.0" |
||||||
|
maintainer: "dev@ocsigen.org" |
||||||
|
homepage: "https://github.com/ocsigen/tyxml/" |
||||||
|
bug-reports: "https://github.com/ocsigen/tyxml/issues" |
||||||
|
doc: "https://ocsigen.org/tyxml/manual/" |
||||||
|
dev-repo: "git+https://github.com/ocsigen/tyxml.git" |
||||||
|
license: "LGPL-2.1 with OCaml linking exception" |
||||||
|
|
||||||
|
build: [ |
||||||
|
["dune" "subst"] {pinned} |
||||||
|
["dune" "build" "-p" name "-j" jobs] |
||||||
|
["dune" "runtest" "-p" name "-j" jobs] {with-test} |
||||||
|
] |
||||||
|
|
||||||
|
depends: [ |
||||||
|
"ocaml" {>= "4.02"} |
||||||
|
"re" {>= "1.5.0"} |
||||||
|
("ocaml" {>= "4.07"} | "re" {>= "1.8.0"}) |
||||||
|
"dune" |
||||||
|
"alcotest" {with-test} |
||||||
|
"seq" |
||||||
|
"uutf" {>= "1.0.0"} |
||||||
|
] |
||||||
|
|
||||||
|
synopsis:"TyXML is a library for building correct HTML and SVG documents" |
||||||
|
description:""" |
||||||
|
TyXML provides a set of convenient combinators that uses the OCaml |
||||||
|
type system to ensure the validity of the generated documents. TyXML |
||||||
|
can be used with any representation of HTML and SVG: the textual one, |
||||||
|
provided directly by this package, or DOM trees (`js_of_ocaml-tyxml`) |
||||||
|
virtual DOM (`virtual-dom`) and reactive or replicated trees |
||||||
|
(`eliom`). You can also create your own representation and use it to |
||||||
|
instantiate a new set of combinators. |
||||||
|
|
||||||
|
```ocaml |
||||||
|
open Tyxml |
||||||
|
let to_ocaml = Html.(a ~a:[a_href "ocaml.org"] [txt "OCaml!"]) |
||||||
|
``` |
||||||
|
""" |
||||||
|
authors: "The ocsigen team" |
||||||
|
url { |
||||||
|
src: |
||||||
|
"https://github.com/ocsigen/tyxml/releases/download/4.3.0/tyxml-4.3.0.tbz" |
||||||
|
checksum: "md5=fd834a567f813bf447cab5f4c3a723e2" |
||||||
|
} |
@ -0,0 +1,33 @@ |
|||||||
|
opam-version: "2.0" |
||||||
|
maintainer: "anil@recoil.org" |
||||||
|
authors: ["Anil Madhavapeddy" "David Sheets" "Rudi Grinberg"] |
||||||
|
license: "ISC" |
||||||
|
tags: ["url" "uri" "org:mirage" "org:xapi-project"] |
||||||
|
homepage: "https://github.com/mirage/ocaml-uri" |
||||||
|
bug-reports: "https://github.com/mirage/ocaml-uri/issues" |
||||||
|
dev-repo: "git+https://github.com/mirage/ocaml-uri.git" |
||||||
|
doc: "https://mirage.github.io/ocaml-uri/" |
||||||
|
synopsis: "An RFC3986 URI/URL parsing library" |
||||||
|
description: """ |
||||||
|
ocaml-uri with sexp support |
||||||
|
""" |
||||||
|
depends: [ |
||||||
|
"uri" {= version} |
||||||
|
"dune" {>= "1.2.0"} |
||||||
|
"ppx_sexp_conv" {>= "v0.9.0"} |
||||||
|
"sexplib0" |
||||||
|
"ounit" {with-test} |
||||||
|
] |
||||||
|
build: [ |
||||||
|
["dune" "subst"] {pinned} |
||||||
|
["dune" "build" "-p" name "-j" jobs] |
||||||
|
["dune" "runtest" "-p" name "-j" jobs] {with-test} |
||||||
|
] |
||||||
|
url { |
||||||
|
src: |
||||||
|
"https://github.com/mirage/ocaml-uri/releases/download/v3.0.0/uri-v3.0.0.tbz" |
||||||
|
checksum: [ |
||||||
|
"sha256=8fb334fba6ebbf879e2e82d80d6adee8bdaf6cec3bb3da248110d805477d19fa" |
||||||
|
"sha512=553c18032a7c96cccdc8e37f497ce34e821b9dd089cfc8685783b7ade1d4dfa422722e4724abcba8b1171b51fa91a2bee297396fc7c349118069b6352e07881e" |
||||||
|
] |
||||||
|
} |
@ -1,34 +0,0 @@ |
|||||||
--- ./extend_helper.ml
|
|
||||||
+++ ./extend_helper.ml
|
|
||||||
@@ -1,13 +1,6 @@
|
|
||||||
-(*pp cppo -V OCAML:`ocamlc -version` *)
|
|
||||||
open Parsetree
|
|
||||||
open Extend_protocol
|
|
||||||
|
|
||||||
-#if OCAML_VERSION < (4, 3, 0)
|
|
||||||
-# define CONST_STRING Asttypes.Const_string
|
|
||||||
-#else
|
|
||||||
-# define CONST_STRING Parsetree.Pconst_string
|
|
||||||
-#endif
|
|
||||||
-
|
|
||||||
(** Default implementation for [Reader_def.print_outcome] using
|
|
||||||
[Oprint] from compiler-libs *)
|
|
||||||
let print_outcome_using_oprint ppf = function
|
|
||||||
@@ -28,7 +21,7 @@
|
|
||||||
pstr_loc = Location.none;
|
|
||||||
pstr_desc = Pstr_eval ({
|
|
||||||
pexp_loc = Location.none;
|
|
||||||
- pexp_desc = Pexp_constant (CONST_STRING (msg, None));
|
|
||||||
+ pexp_desc = Pexp_constant (Asttypes.Const_string (msg, None));
|
|
||||||
pexp_attributes = [];
|
|
||||||
}, []);
|
|
||||||
}]
|
|
||||||
@@ -112,7 +105,7 @@
|
|
||||||
let msg = match payload with
|
|
||||||
| PStr [{
|
|
||||||
pstr_desc = Pstr_eval ({
|
|
||||||
- pexp_desc = Pexp_constant (CONST_STRING (msg, _));
|
|
||||||
+ pexp_desc = Pexp_constant (Asttypes.Const_string (msg, _));
|
|
||||||
}, _);
|
|
||||||
}] -> msg
|
|
||||||
| _ -> "Warning: extension produced an incorrect syntax-error node"
|
|
@ -1,34 +0,0 @@ |
|||||||
--- ./extend_helper.ml
|
|
||||||
+++ ./extend_helper.ml
|
|
||||||
@@ -1,13 +1,6 @@
|
|
||||||
-(*pp cppo -V OCAML:`ocamlc -version` *)
|
|
||||||
open Parsetree
|
|
||||||
open Extend_protocol
|
|
||||||
|
|
||||||
-#if OCAML_VERSION < (4, 3, 0)
|
|
||||||
-# define CONST_STRING Asttypes.Const_string
|
|
||||||
-#else
|
|
||||||
-# define CONST_STRING Parsetree.Pconst_string
|
|
||||||
-#endif
|
|
||||||
-
|
|
||||||
(** Default implementation for [Reader_def.print_outcome] using
|
|
||||||
[Oprint] from compiler-libs *)
|
|
||||||
let print_outcome_using_oprint ppf = function
|
|
||||||
@@ -28,7 +21,7 @@
|
|
||||||
pstr_loc = Location.none;
|
|
||||||
pstr_desc = Pstr_eval ({
|
|
||||||
pexp_loc = Location.none;
|
|
||||||
- pexp_desc = Pexp_constant (CONST_STRING (msg, None));
|
|
||||||
+ pexp_desc = Pexp_constant (Parsetree.Pconst_string (msg, None));
|
|
||||||
pexp_attributes = [];
|
|
||||||
}, []);
|
|
||||||
}]
|
|
||||||
@@ -112,7 +105,7 @@
|
|
||||||
let msg = match payload with
|
|
||||||
| PStr [{
|
|
||||||
pstr_desc = Pstr_eval ({
|
|
||||||
- pexp_desc = Pexp_constant (CONST_STRING (msg, _));
|
|
||||||
+ pexp_desc = Pexp_constant (Parsetree.Pconst_string (msg, _));
|
|
||||||
}, _);
|
|
||||||
}] -> msg
|
|
||||||
| _ -> "Warning: extension produced an incorrect syntax-error node"
|
|
@ -1,15 +0,0 @@ |
|||||||
{ |
|
||||||
"buildEnv": { |
|
||||||
"PATCH_CMD": "#{ocaml.version == '4.2.3007' ? 'patch -p1 < merlin-extend-winfix-4.2.3007.patch' : 'patch -p1 < merlin-extend-winfix.patch'}" |
|
||||||
}, |
|
||||||
"build": [ |
|
||||||
[ |
|
||||||
"bash", |
|
||||||
"-c", |
|
||||||
"#{os == 'windows' ? $PATCH_CMD : 'true'}" |
|
||||||
], |
|
||||||
[ |
|
||||||
"make" |
|
||||||
] |
|
||||||
] |
|
||||||
} |
|
@ -1,20 +0,0 @@ |
|||||||
--- ./src/Makefile
|
|
||||||
+++ ./src/Makefile
|
|
||||||
@@ -80,7 +80,7 @@
|
|
||||||
ifeq "$(NATDYNLINK)" "true"
|
|
||||||
TOINSTALL+=nums.cmxs
|
|
||||||
endif
|
|
||||||
ifeq "$(SUPPORTS_SHARED_LIBRARIES)" "true"
|
|
||||||
-TOINSTALL_STUBS=dllnums.$(SO)
|
|
||||||
+TOINSTALL_STUBS=dllnums$(EXT_DLL)
|
|
||||||
else
|
|
||||||
TOINSTALL_STUBS=
|
|
||||||
@@ -112,7 +112,7 @@
|
|
||||||
endif
|
|
||||||
|
|
||||||
clean:
|
|
||||||
- rm -f *.cm[ioxta] *.cmx[as] *.cmti *.$(O) *.$(A) *.$(SO)
|
|
||||||
+ rm -f *.cm[ioxta] *.cmx[as] *.cmti *.$(O) *.$(A) *$(EXE_DLL)
|
|
||||||
|
|
||||||
depend:
|
|
||||||
$(OCAMLDEP) -slash *.mli *.ml > .depend
|
|
@ -1,10 +1,5 @@ |
|||||||
{ |
{ |
||||||
"build": [ |
"build": [ |
||||||
[ |
|
||||||
"bash", |
|
||||||
"-c", |
|
||||||
"#{os == 'windows' ? 'patch -p1 < num-1.1.patch' : 'true'}" |
|
||||||
], |
|
||||||
[ |
[ |
||||||
"make" |
"make" |
||||||
] |
] |
@ -1,78 +0,0 @@ |
|||||||
--- ./pkg/topkg.ml
|
|
||||||
+++ ./pkg/topkg.ml
|
|
||||||
@@ -152,7 +152,63 @@
|
|
||||||
module Exts : Exts = struct
|
|
||||||
let interface = [".mli"; ".cmi"; ".cmti"]
|
|
||||||
let interface_opt = ".cmx" :: interface
|
|
||||||
- let c_library = if Sys.win32 then [".lib"] else [".a"]
|
|
||||||
+ let c_library =
|
|
||||||
+ match Sys.win32 with
|
|
||||||
+ | false -> [".a"]
|
|
||||||
+ | true ->
|
|
||||||
+ let input_line ch =
|
|
||||||
+ try
|
|
||||||
+ let s = input_line ch in
|
|
||||||
+ let len = String.length s in
|
|
||||||
+ if len > 0 && Sys.os_type = "Win32" && s.[len-1] = '\r' then
|
|
||||||
+ Some (String.sub s 0 (pred len))
|
|
||||||
+ else
|
|
||||||
+ Some s
|
|
||||||
+ with
|
|
||||||
+ | End_of_file -> None
|
|
||||||
+ in
|
|
||||||
+ let rec get_ext_lib ch =
|
|
||||||
+ match input_line ch with
|
|
||||||
+ | None -> ".a"
|
|
||||||
+ | Some s ->
|
|
||||||
+ let len = String.length s in
|
|
||||||
+ if len < 11 || s.[0] <> 'e' || String.sub s 0 9 <> "ext_lib: " then
|
|
||||||
+ get_ext_lib ch
|
|
||||||
+ else
|
|
||||||
+ String.sub s 9 (len - 9)
|
|
||||||
+ in
|
|
||||||
+ let get_ext_lib fln =
|
|
||||||
+ let ch = open_in fln in
|
|
||||||
+ let ch_closed = ref false in
|
|
||||||
+ try
|
|
||||||
+ let res = get_ext_lib ch in
|
|
||||||
+ ch_closed := true;
|
|
||||||
+ close_in ch ;
|
|
||||||
+ res
|
|
||||||
+ with
|
|
||||||
+ | x when !ch_closed = false ->
|
|
||||||
+ close_in_noerr ch;
|
|
||||||
+ raise x
|
|
||||||
+ in
|
|
||||||
+ let e_null = if Sys.win32 then " 2>NUL" else " 2>/dev/null" in
|
|
||||||
+ let fln = Filename.temp_file "get_ext" ".txt" in
|
|
||||||
+ let cleanup = lazy (try Sys.remove fln with Sys_error _ -> ()) in
|
|
||||||
+ try
|
|
||||||
+ let qfln = Filename.quote fln in
|
|
||||||
+ let cmd = "ocamlfind ocamlc -config > " ^ qfln ^ e_null in
|
|
||||||
+ let ec = Sys.command cmd in
|
|
||||||
+ if ec <> 0 then (
|
|
||||||
+ let cmd = "ocamlc -config > " ^ qfln ^ e_null in
|
|
||||||
+ let ec = Sys.command cmd in
|
|
||||||
+ if ec <> 0 then
|
|
||||||
+ failwith (Printf.sprintf "couldn't call ocamlc -config");
|
|
||||||
+ );
|
|
||||||
+ let res = get_ext_lib fln in
|
|
||||||
+ Lazy.force cleanup;
|
|
||||||
+ [res]
|
|
||||||
+ with
|
|
||||||
+ | x -> Lazy.force cleanup; raise x
|
|
||||||
+
|
|
||||||
let c_dll_library = if Sys.win32 then [".dll"] else [".so"]
|
|
||||||
let library = [".cma"; ".cmxa"; ".cmxs"] @ c_library
|
|
||||||
let module_library = (interface_opt @ library)
|
|
||||||
@@ -258,7 +314,9 @@
|
|
||||||
let src, dst =
|
|
||||||
if not auto then src, dst else
|
|
||||||
let dst = match dst with
|
|
||||||
- | None -> Some (Filename.basename src)
|
|
||||||
+ | None ->
|
|
||||||
+ let src = if Sys.os_type <> "Win32" then src else src ^ ".exe" in
|
|
||||||
+ Some (Filename.basename src)
|
|
||||||
| Some _ as dst -> dst
|
|
||||||
in
|
|
||||||
let src = if Env.native then src ^ ".native" else src ^ ".byte" in
|
|
@ -1,15 +0,0 @@ |
|||||||
{ |
|
||||||
"build": [ |
|
||||||
[ |
|
||||||
"bash", |
|
||||||
"-c", |
|
||||||
"#{os == 'windows' ? 'patch -p1 < ppx_deriving-4.2.1.patch' : 'true'}" |
|
||||||
], |
|
||||||
[ |
|
||||||
"ocaml", |
|
||||||
"pkg/build.ml", |
|
||||||
"native=true", |
|
||||||
"native-dynlink=true" |
|
||||||
] |
|
||||||
] |
|
||||||
} |
|
@ -0,0 +1,9 @@ |
|||||||
|
#!/bin/bash |
||||||
|
|
||||||
|
set -e |
||||||
|
|
||||||
|
eval "$(fnm env)" |
||||||
|
fnm install |
||||||
|
fnm use |
||||||
|
|
||||||
|
fnm ls | grep latest-dubnium |
Loading…
Reference in new issue