Browse Source

Successfully build on Windows (#88)

remotes/origin/add-simple-redirecting-site
Ulrik Strid 6 years ago committed by Gal Schlezinger
parent
commit
c94ebc2bc4
  1. 30
      azure-pipelines.yml
  2. 93
      esy.lock/index.json
  3. 4
      esy.lock/opam/base.v0.12.1/opam
  4. 6
      esy.lock/opam/ocaml-migrate-parsetree.1.3.1/opam
  5. 41
      esy.lock/overrides/opam__s__base_opam__c__v0.12.0_opam_override/files/base-v0.12.0.patch
  6. 18
      esy.lock/overrides/opam__s__base_opam__c__v0.12.0_opam_override/package.json
  7. 61
      library/Path.re
  8. 3
      windows.esy.lock/.gitattributes
  9. 3
      windows.esy.lock/.gitignore
  10. 7272
      windows.esy.lock/index.json
  11. 38
      windows.esy.lock/opam/astring.0.8.3/opam
  12. 9
      windows.esy.lock/opam/base-bytes.base/opam
  13. 6
      windows.esy.lock/opam/base-threads.base/opam
  14. 6
      windows.esy.lock/opam/base-unix.base/opam
  15. 38
      windows.esy.lock/opam/base.v0.12.2/opam
  16. 34
      windows.esy.lock/opam/base64.3.2.0/opam
  17. 25
      windows.esy.lock/opam/biniou.1.2.0/opam
  18. 36
      windows.esy.lock/opam/cmdliner.1.0.3/opam
  19. 50
      windows.esy.lock/opam/cohttp-lwt-unix.2.0.0/opam
  20. 46
      windows.esy.lock/opam/cohttp-lwt.2.0.0/opam
  21. 59
      windows.esy.lock/opam/cohttp.2.1.2/opam
  22. 34
      windows.esy.lock/opam/conduit-lwt-unix.1.4.0/opam
  23. 29
      windows.esy.lock/opam/conduit-lwt.1.4.0/opam
  24. 53
      windows.esy.lock/opam/conduit.1.4.0/opam
  25. 23
      windows.esy.lock/opam/conf-m4.1/opam
  26. 39
      windows.esy.lock/opam/conf-pkg-config.1.1/opam
  27. 20
      windows.esy.lock/opam/conf-which.1/opam
  28. 37
      windows.esy.lock/opam/cppo.1.6.6/opam
  29. 32
      windows.esy.lock/opam/cppo_ocamlbuild.1.6.6/opam
  30. 50
      windows.esy.lock/opam/dune.1.9.3/opam
  31. 20
      windows.esy.lock/opam/easy-format.1.3.1/opam
  32. 27
      windows.esy.lock/opam/fieldslib.v0.12.0/opam
  33. 44
      windows.esy.lock/opam/fmt.0.8.6/opam
  34. 47
      windows.esy.lock/opam/ipaddr.3.1.0/opam
  35. 15
      windows.esy.lock/opam/jbuilder.transition/opam
  36. 37
      windows.esy.lock/opam/jsonm.1.0.1/opam
  37. 35
      windows.esy.lock/opam/lambdasoup.0.6.3/opam
  38. 60
      windows.esy.lock/opam/logs.0.6.3/opam
  39. 58
      windows.esy.lock/opam/lwt.4.2.1/opam
  40. 33
      windows.esy.lock/opam/lwt_ppx.1.2.2/opam
  41. 28
      windows.esy.lock/opam/lwt_ssl.1.1.2/opam
  42. 27
      windows.esy.lock/opam/macaddr.3.1.0/opam
  43. 38
      windows.esy.lock/opam/magic-mime.1.1.1/opam
  44. 52
      windows.esy.lock/opam/markup.0.8.0/opam
  45. 32
      windows.esy.lock/opam/menhir.20181113/opam
  46. 24
      windows.esy.lock/opam/merlin-extend.0.3/opam
  47. 74
      windows.esy.lock/opam/merlin.3.2.2/opam
  48. 24
      windows.esy.lock/opam/mmap.1.1.0/opam
  49. 129
      windows.esy.lock/opam/num.1.1/files/findlib-install.patch
  50. 59
      windows.esy.lock/opam/num.1.1/files/installation-warning.patch
  51. 43
      windows.esy.lock/opam/num.1.1/opam
  52. 23
      windows.esy.lock/opam/ocaml-compiler-libs.v0.12.0/opam
  53. 37
      windows.esy.lock/opam/ocaml-migrate-parsetree.1.3.1/opam
  54. 36
      windows.esy.lock/opam/ocamlbuild.0.14.0/opam
  55. 19
      windows.esy.lock/opam/ocamlfind.1.8.0/files/no-awk-check.patch
  56. 4
      windows.esy.lock/opam/ocamlfind.1.8.0/files/ocaml-stub
  57. 6
      windows.esy.lock/opam/ocamlfind.1.8.0/files/ocamlfind.install
  58. 68
      windows.esy.lock/opam/ocamlfind.1.8.0/opam
  59. 43
      windows.esy.lock/opam/parsexp.v0.12.0/opam
  60. 23
      windows.esy.lock/opam/ppx_derivers.1.2.1/opam
  61. 48
      windows.esy.lock/opam/ppx_deriving.4.2.1/opam
  62. 26
      windows.esy.lock/opam/ppx_fields_conv.v0.12.0/opam
  63. 25
      windows.esy.lock/opam/ppx_let.v0.12.0/opam
  64. 26
      windows.esy.lock/opam/ppx_sexp_conv.v0.12.0/opam
  65. 21
      windows.esy.lock/opam/ppx_tools.5.1+4.06.0/opam
  66. 30
      windows.esy.lock/opam/ppx_tools_versioned.5.2.2/opam
  67. 42
      windows.esy.lock/opam/ppxlib.0.6.0/opam
  68. 42
      windows.esy.lock/opam/re.1.9.0/opam
  69. 22
      windows.esy.lock/opam/result.1.4/opam
  70. 23
      windows.esy.lock/opam/seq.0.1/opam
  71. 29
      windows.esy.lock/opam/sexplib.v0.12.0/opam
  72. 26
      windows.esy.lock/opam/sexplib0.v0.12.0/opam
  73. 27
      windows.esy.lock/opam/stdio.v0.12.0/opam
  74. 27
      windows.esy.lock/opam/stdlib-shims.0.1.0/opam
  75. 27
      windows.esy.lock/opam/stringext.1.5.0/opam
  76. 49
      windows.esy.lock/opam/topkg.1.0.0/opam
  77. 36
      windows.esy.lock/opam/uchar.0.0.2/opam
  78. 33
      windows.esy.lock/opam/uri.2.2.0/opam
  79. 40
      windows.esy.lock/opam/uutf.1.0.2/opam
  80. 38
      windows.esy.lock/opam/yojson.1.7.0/opam
  81. 30
      windows.esy.lock/overrides/1538fd5a435089fe97df4df38d52bc7a/.ci/build.yaml
  82. 1
      windows.esy.lock/overrides/1538fd5a435089fe97df4df38d52bc7a/.gitignore
  83. 15
      windows.esy.lock/overrides/1538fd5a435089fe97df4df38d52bc7a/.travis.yml
  84. 98
      windows.esy.lock/overrides/1538fd5a435089fe97df4df38d52bc7a/README.md
  85. 19
      windows.esy.lock/overrides/1538fd5a435089fe97df4df38d52bc7a/azure-pipelines.yml
  86. 16
      windows.esy.lock/overrides/1538fd5a435089fe97df4df38d52bc7a/esy.lock.json
  87. 32
      windows.esy.lock/overrides/1538fd5a435089fe97df4df38d52bc7a/esy/test.c
  88. 31
      windows.esy.lock/overrides/1538fd5a435089fe97df4df38d52bc7a/esy/test.sh
  89. 38
      windows.esy.lock/overrides/1538fd5a435089fe97df4df38d52bc7a/package.json
  90. 11
      windows.esy.lock/overrides/opam__s__conf_pkg_config_opam__c__1.1_opam_override/package.json
  91. 14
      windows.esy.lock/overrides/opam__s__dune_opam__c__1.9.3_opam_override/package.json
  92. 34
      windows.esy.lock/overrides/opam__s__merlin_extend_opam__c__0.3_opam_override/files/merlin-extend-winfix-4.2.3007.patch
  93. 34
      windows.esy.lock/overrides/opam__s__merlin_extend_opam__c__0.3_opam_override/files/merlin-extend-winfix.patch
  94. 15
      windows.esy.lock/overrides/opam__s__merlin_extend_opam__c__0.3_opam_override/package.json
  95. 20
      windows.esy.lock/overrides/opam__s__num_opam__c__1.1_opam_override/files/num-1.1.patch
  96. 24
      windows.esy.lock/overrides/opam__s__num_opam__c__1.1_opam_override/package.json
  97. 463
      windows.esy.lock/overrides/opam__s__ocamlbuild_opam__c__0.14.0_opam_override/files/ocamlbuild-0.14.0.patch
  98. 27
      windows.esy.lock/overrides/opam__s__ocamlbuild_opam__c__0.14.0_opam_override/package.json
  99. 489
      windows.esy.lock/overrides/opam__s__ocamlfind_opam__c__1.8.0_opam_override/files/findlib-1.8.0.patch
  100. 61
      windows.esy.lock/overrides/opam__s__ocamlfind_opam__c__1.8.0_opam_override/package.json
  101. Some files were not shown because too many files have changed in this diff Show More

30
azure-pipelines.yml

@ -53,19 +53,27 @@ jobs: @@ -53,19 +53,27 @@ jobs:
PathtoPublish: '_build/fnm'
ArtifactName: fnm-macos
# - job: Windows
# timeoutInMinutes: 0
# pool:
# vmImage: 'vs2017-win2016'
- job: Windows
timeoutInMinutes: 0
pool:
vmImage: 'vs2017-win2016'
# variables:
# ESY__CACHE_INSTALL_PATH: C:\Users\VssAdministrator\.esy\3_\i
# ESY__CACHE_SOURCE_TARBALL_PATH: C:\Users\VssAdministrator\.esy\source\i
variables:
ESY__CACHE_INSTALL_PATH: C:\Users\VssAdministrator\.esy\3_\i
ESY__CACHE_SOURCE_TARBALL_PATH: C:\Users\VssAdministrator\.esy\source\i
# steps:
# - template: .ci/restore-build-cache.yml
# - template: .ci/esy-build-steps.yml
# - template: .ci/publish-build-cache.yml
steps:
- task: NodeTool@0
inputs:
versionSpec: '8.9'
- script: npm install -g esy@latest
displayName: 'npm install -g esy@latest'
- script: esy install --project windows
displayName: 'esy install'
- script: esy build --project windows -p @opam/conf-openssl
displayName: 'build conf-openssl'
- script: esy build --project windows
displayName: 'esy build'
- job: Release
timeoutInMinutes: 0

93
esy.lock/index.json

@ -16,7 +16,7 @@ @@ -16,7 +16,7 @@
"dependencies": [
"toposort@2.0.2@d41d8cd9", "synchronous-promise@2.0.8@d41d8cd9",
"property-expr@1.5.1@d41d8cd9", "lodash@4.17.11@d41d8cd9",
"fn-name@2.0.1@d41d8cd9", "@babel/runtime@7.4.4@d41d8cd9"
"fn-name@2.0.1@d41d8cd9", "@babel/runtime@7.4.5@d41d8cd9"
],
"devDependencies": []
},
@ -3742,7 +3742,7 @@ @@ -3742,7 +3742,7 @@
"@opam/cohttp-lwt@opam:2.0.0@eac11459",
"@opam/cohttp@opam:2.1.2@0821c01b",
"@opam/cmdliner@opam:1.0.3@96d31520",
"@opam/base@opam:v0.12.0@72570ef9",
"@opam/base@opam:v0.12.1@de2972e2",
"@esy-ocaml/reason@3.4.0@d41d8cd9"
],
"devDependencies": [
@ -5589,11 +5589,11 @@ @@ -5589,11 +5589,11 @@
"overrides": [],
"dependencies": [
"ocaml@4.6.10@d41d8cd9", "@opam/dune@opam:1.9.3@cccbbfe7",
"@opam/base@opam:v0.12.0@72570ef9",
"@opam/base@opam:v0.12.1@de2972e2",
"@esy-ocaml/substs@0.0.1@d41d8cd9"
],
"devDependencies": [
"ocaml@4.6.10@d41d8cd9", "@opam/base@opam:v0.12.0@72570ef9"
"ocaml@4.6.10@d41d8cd9", "@opam/base@opam:v0.12.1@de2972e2"
]
},
"@opam/ssl@opam:0.5.7@893f9f78": {
@ -5766,17 +5766,17 @@ @@ -5766,17 +5766,17 @@
"dependencies": [
"ocaml@4.6.10@d41d8cd9", "@opam/stdio@opam:v0.12.0@1d18adcb",
"@opam/ppx_derivers@opam:1.2.1@0b458500",
"@opam/ocaml-migrate-parsetree@opam:1.3.0@db26ff47",
"@opam/ocaml-migrate-parsetree@opam:1.3.1@266527bd",
"@opam/ocaml-compiler-libs@opam:v0.11.0@7e9ced39",
"@opam/dune@opam:1.9.3@cccbbfe7", "@opam/base@opam:v0.12.0@72570ef9",
"@opam/dune@opam:1.9.3@cccbbfe7", "@opam/base@opam:v0.12.1@de2972e2",
"@esy-ocaml/substs@0.0.1@d41d8cd9"
],
"devDependencies": [
"ocaml@4.6.10@d41d8cd9", "@opam/stdio@opam:v0.12.0@1d18adcb",
"@opam/ppx_derivers@opam:1.2.1@0b458500",
"@opam/ocaml-migrate-parsetree@opam:1.3.0@db26ff47",
"@opam/ocaml-migrate-parsetree@opam:1.3.1@266527bd",
"@opam/ocaml-compiler-libs@opam:v0.11.0@7e9ced39",
"@opam/base@opam:v0.12.0@72570ef9"
"@opam/base@opam:v0.12.1@de2972e2"
]
},
"@opam/ppx_tools_versioned@opam:5.2.2@34409c89": {
@ -5798,12 +5798,12 @@ @@ -5798,12 +5798,12 @@
"overrides": [],
"dependencies": [
"ocaml@4.6.10@d41d8cd9",
"@opam/ocaml-migrate-parsetree@opam:1.3.0@db26ff47",
"@opam/ocaml-migrate-parsetree@opam:1.3.1@266527bd",
"@opam/dune@opam:1.9.3@cccbbfe7", "@esy-ocaml/substs@0.0.1@d41d8cd9"
],
"devDependencies": [
"ocaml@4.6.10@d41d8cd9",
"@opam/ocaml-migrate-parsetree@opam:1.3.0@db26ff47"
"@opam/ocaml-migrate-parsetree@opam:1.3.1@266527bd"
]
},
"@opam/ppx_tools@opam:5.1+4.06.0@a9357225": {
@ -5851,13 +5851,13 @@ @@ -5851,13 +5851,13 @@
"dependencies": [
"ocaml@4.6.10@d41d8cd9", "@opam/sexplib0@opam:v0.12.0@e823b4e9",
"@opam/ppxlib@opam:0.6.0@3500c1bb", "@opam/dune@opam:1.9.3@cccbbfe7",
"@opam/base@opam:v0.12.0@72570ef9",
"@opam/base@opam:v0.12.1@de2972e2",
"@esy-ocaml/substs@0.0.1@d41d8cd9"
],
"devDependencies": [
"ocaml@4.6.10@d41d8cd9", "@opam/sexplib0@opam:v0.12.0@e823b4e9",
"@opam/ppxlib@opam:0.6.0@3500c1bb",
"@opam/base@opam:v0.12.0@72570ef9"
"@opam/base@opam:v0.12.1@de2972e2"
]
},
"@opam/ppx_let@opam:v0.12.0@8bca1692": {
@ -5879,12 +5879,12 @@ @@ -5879,12 +5879,12 @@
"overrides": [],
"dependencies": [
"ocaml@4.6.10@d41d8cd9", "@opam/ppxlib@opam:0.6.0@3500c1bb",
"@opam/dune@opam:1.9.3@cccbbfe7", "@opam/base@opam:v0.12.0@72570ef9",
"@opam/dune@opam:1.9.3@cccbbfe7", "@opam/base@opam:v0.12.1@de2972e2",
"@esy-ocaml/substs@0.0.1@d41d8cd9"
],
"devDependencies": [
"ocaml@4.6.10@d41d8cd9", "@opam/ppxlib@opam:0.6.0@3500c1bb",
"@opam/base@opam:v0.12.0@72570ef9"
"@opam/base@opam:v0.12.1@de2972e2"
]
},
"@opam/ppx_fields_conv@opam:v0.12.0@b6bbc5d9": {
@ -5907,13 +5907,13 @@ @@ -5907,13 +5907,13 @@
"dependencies": [
"ocaml@4.6.10@d41d8cd9", "@opam/ppxlib@opam:0.6.0@3500c1bb",
"@opam/fieldslib@opam:v0.12.0@a177b847",
"@opam/dune@opam:1.9.3@cccbbfe7", "@opam/base@opam:v0.12.0@72570ef9",
"@opam/dune@opam:1.9.3@cccbbfe7", "@opam/base@opam:v0.12.1@de2972e2",
"@esy-ocaml/substs@0.0.1@d41d8cd9"
],
"devDependencies": [
"ocaml@4.6.10@d41d8cd9", "@opam/ppxlib@opam:0.6.0@3500c1bb",
"@opam/fieldslib@opam:v0.12.0@a177b847",
"@opam/base@opam:v0.12.0@72570ef9"
"@opam/base@opam:v0.12.1@de2972e2"
]
},
"@opam/ppx_deriving@opam:4.2.1@7927b93a": {
@ -5944,7 +5944,7 @@ @@ -5944,7 +5944,7 @@
"@opam/ppx_derivers@opam:1.2.1@0b458500",
"@opam/ocamlfind@opam:1.8.0@f744a0c5",
"@opam/ocamlbuild@opam:0.14.0@427a2331",
"@opam/ocaml-migrate-parsetree@opam:1.3.0@db26ff47",
"@opam/ocaml-migrate-parsetree@opam:1.3.1@266527bd",
"@opam/cppo_ocamlbuild@opam:1.6.0@7c1eb503",
"@opam/cppo@opam:1.6.5@bec3dbd9", "@esy-ocaml/substs@0.0.1@d41d8cd9"
],
@ -5952,7 +5952,7 @@ @@ -5952,7 +5952,7 @@
"ocaml@4.6.10@d41d8cd9", "@opam/result@opam:1.3@bee8bf2e",
"@opam/ppx_tools@opam:5.1+4.06.0@a9357225",
"@opam/ppx_derivers@opam:1.2.1@0b458500",
"@opam/ocaml-migrate-parsetree@opam:1.3.0@db26ff47"
"@opam/ocaml-migrate-parsetree@opam:1.3.1@266527bd"
]
},
"@opam/ppx_derivers@opam:1.2.1@0b458500": {
@ -5997,12 +5997,12 @@ @@ -5997,12 +5997,12 @@
"overrides": [],
"dependencies": [
"ocaml@4.6.10@d41d8cd9", "@opam/sexplib0@opam:v0.12.0@e823b4e9",
"@opam/dune@opam:1.9.3@cccbbfe7", "@opam/base@opam:v0.12.0@72570ef9",
"@opam/dune@opam:1.9.3@cccbbfe7", "@opam/base@opam:v0.12.1@de2972e2",
"@esy-ocaml/substs@0.0.1@d41d8cd9"
],
"devDependencies": [
"ocaml@4.6.10@d41d8cd9", "@opam/sexplib0@opam:v0.12.0@e823b4e9",
"@opam/base@opam:v0.12.0@72570ef9"
"@opam/base@opam:v0.12.1@de2972e2"
]
},
"@opam/ocamlfind@opam:1.8.0@f744a0c5": {
@ -6061,20 +6061,20 @@ @@ -6061,20 +6061,20 @@
],
"devDependencies": [ "ocaml@4.6.10@d41d8cd9" ]
},
"@opam/ocaml-migrate-parsetree@opam:1.3.0@db26ff47": {
"id": "@opam/ocaml-migrate-parsetree@opam:1.3.0@db26ff47",
"@opam/ocaml-migrate-parsetree@opam:1.3.1@266527bd": {
"id": "@opam/ocaml-migrate-parsetree@opam:1.3.1@266527bd",
"name": "@opam/ocaml-migrate-parsetree",
"version": "opam:1.3.0",
"version": "opam:1.3.1",
"source": {
"type": "install",
"source": [
"archive:https://opam.ocaml.org/cache/sha256/df/dfb05a3611783f0a49325b1e185bb1827c263d9ca2228287da55f037ad3c280e#sha256:dfb05a3611783f0a49325b1e185bb1827c263d9ca2228287da55f037ad3c280e",
"archive:https://github.com/ocaml-ppx/ocaml-migrate-parsetree/releases/download/v1.3.0/ocaml-migrate-parsetree-v1.3.0.tbz#sha256:dfb05a3611783f0a49325b1e185bb1827c263d9ca2228287da55f037ad3c280e"
"archive:https://opam.ocaml.org/cache/sha256/83/83e4955a6fd6b494646ab92c476840ea96b5fb434435c287e7ad3e6efadc8338#sha256:83e4955a6fd6b494646ab92c476840ea96b5fb434435c287e7ad3e6efadc8338",
"archive:https://github.com/ocaml-ppx/ocaml-migrate-parsetree/releases/download/v1.3.1/ocaml-migrate-parsetree-v1.3.1.tbz#sha256:83e4955a6fd6b494646ab92c476840ea96b5fb434435c287e7ad3e6efadc8338"
],
"opam": {
"name": "ocaml-migrate-parsetree",
"version": "1.3.0",
"path": "esy.lock/opam/ocaml-migrate-parsetree.1.3.0"
"version": "1.3.1",
"path": "esy.lock/opam/ocaml-migrate-parsetree.1.3.1"
}
},
"overrides": [],
@ -6365,14 +6365,14 @@ @@ -6365,14 +6365,14 @@
"dependencies": [
"ocaml@4.6.10@d41d8cd9",
"@opam/ppx_tools_versioned@opam:5.2.2@34409c89",
"@opam/ocaml-migrate-parsetree@opam:1.3.0@db26ff47",
"@opam/ocaml-migrate-parsetree@opam:1.3.1@266527bd",
"@opam/lwt@opam:4.2.1@c1888ec9", "@opam/dune@opam:1.9.3@cccbbfe7",
"@esy-ocaml/substs@0.0.1@d41d8cd9"
],
"devDependencies": [
"ocaml@4.6.10@d41d8cd9",
"@opam/ppx_tools_versioned@opam:5.2.2@34409c89",
"@opam/ocaml-migrate-parsetree@opam:1.3.0@db26ff47",
"@opam/ocaml-migrate-parsetree@opam:1.3.1@266527bd",
"@opam/lwt@opam:4.2.1@c1888ec9"
]
},
@ -6587,11 +6587,11 @@ @@ -6587,11 +6587,11 @@
"overrides": [],
"dependencies": [
"ocaml@4.6.10@d41d8cd9", "@opam/dune@opam:1.9.3@cccbbfe7",
"@opam/base@opam:v0.12.0@72570ef9",
"@opam/base@opam:v0.12.1@de2972e2",
"@esy-ocaml/substs@0.0.1@d41d8cd9"
],
"devDependencies": [
"ocaml@4.6.10@d41d8cd9", "@opam/base@opam:v0.12.0@72570ef9"
"ocaml@4.6.10@d41d8cd9", "@opam/base@opam:v0.12.1@de2972e2"
]
},
"@opam/easy-format@opam:1.3.1@9abfd4ed": {
@ -7124,28 +7124,23 @@ @@ -7124,28 +7124,23 @@
"ocaml@4.6.10@d41d8cd9", "@opam/ocamlfind@opam:1.8.0@f744a0c5"
]
},
"@opam/base@opam:v0.12.0@72570ef9": {
"id": "@opam/base@opam:v0.12.0@72570ef9",
"@opam/base@opam:v0.12.1@de2972e2": {
"id": "@opam/base@opam:v0.12.1@de2972e2",
"name": "@opam/base",
"version": "opam:v0.12.0",
"version": "opam:v0.12.1",
"source": {
"type": "install",
"source": [
"archive:https://opam.ocaml.org/cache/md5/e5/e522176bc2cca7c12745539fa72356ad#md5:e522176bc2cca7c12745539fa72356ad",
"archive:https://ocaml.janestreet.com/ocaml-core/v0.12/files/base-v0.12.0.tar.gz#md5:e522176bc2cca7c12745539fa72356ad"
"archive:https://opam.ocaml.org/cache/md5/8d/8df12fc6f12669ad6c702673ec84214c#md5:8df12fc6f12669ad6c702673ec84214c",
"archive:https://github.com/janestreet/base/archive/v0.12.1.tar.gz#md5:8df12fc6f12669ad6c702673ec84214c"
],
"opam": {
"name": "base",
"version": "v0.12.0",
"path": "esy.lock/opam/base.v0.12.0"
"version": "v0.12.1",
"path": "esy.lock/opam/base.v0.12.1"
}
},
"overrides": [
{
"opamoverride":
"esy.lock/overrides/opam__s__base_opam__c__v0.12.0_opam_override"
}
],
"overrides": [],
"dependencies": [
"ocaml@4.6.10@d41d8cd9", "@opam/sexplib0@opam:v0.12.0@e823b4e9",
"@opam/dune@opam:1.9.3@cccbbfe7", "@esy-ocaml/substs@0.0.1@d41d8cd9"
@ -7228,21 +7223,21 @@ @@ -7228,21 +7223,21 @@
"dependencies": [
"ocaml@4.6.10@d41d8cd9", "@opam/result@opam:1.3@bee8bf2e",
"@opam/ocamlfind@opam:1.8.0@f744a0c5",
"@opam/ocaml-migrate-parsetree@opam:1.3.0@db26ff47",
"@opam/ocaml-migrate-parsetree@opam:1.3.1@266527bd",
"@opam/merlin-extend@opam:0.3@0af73a50",
"@opam/menhir@opam:20181113@0c8257a8",
"@opam/dune@opam:1.9.3@cccbbfe7"
],
"devDependencies": []
},
"@babel/runtime@7.4.4@d41d8cd9": {
"id": "@babel/runtime@7.4.4@d41d8cd9",
"@babel/runtime@7.4.5@d41d8cd9": {
"id": "@babel/runtime@7.4.5@d41d8cd9",
"name": "@babel/runtime",
"version": "7.4.4",
"version": "7.4.5",
"source": {
"type": "install",
"source": [
"archive:https://registry.npmjs.org/@babel/runtime/-/runtime-7.4.4.tgz#sha1:dc2e34982eb236803aa27a07fea6857af1b9171d"
"archive:https://registry.npmjs.org/@babel/runtime/-/runtime-7.4.5.tgz#sha1:582bb531f5f9dc67d2fcb682979894f75e253f12"
]
},
"overrides": [],

4
esy.lock/opam/base.v0.12.0/opam → esy.lock/opam/base.v0.12.1/opam

@ -33,6 +33,6 @@ provided by companion libraries such as stdio: @@ -33,6 +33,6 @@ provided by companion libraries such as stdio:
https://github.com/janestreet/stdio
"
url {
src: "https://ocaml.janestreet.com/ocaml-core/v0.12/files/base-v0.12.0.tar.gz"
checksum: "md5=e522176bc2cca7c12745539fa72356ad"
src: "https://github.com/janestreet/base/archive/v0.12.1.tar.gz"
checksum: "md5=8df12fc6f12669ad6c702673ec84214c"
}

6
esy.lock/opam/ocaml-migrate-parsetree.1.3.0/opam → esy.lock/opam/ocaml-migrate-parsetree.1.3.1/opam

@ -29,9 +29,9 @@ rewriters independent of a compiler version. @@ -29,9 +29,9 @@ rewriters independent of a compiler version.
"""
url {
src:
"https://github.com/ocaml-ppx/ocaml-migrate-parsetree/releases/download/v1.3.0/ocaml-migrate-parsetree-v1.3.0.tbz"
"https://github.com/ocaml-ppx/ocaml-migrate-parsetree/releases/download/v1.3.1/ocaml-migrate-parsetree-v1.3.1.tbz"
checksum: [
"sha256=dfb05a3611783f0a49325b1e185bb1827c263d9ca2228287da55f037ad3c280e"
"sha512=95a12f4e9e257395aeb5024f3acf4f8e419f6df8d94e611c3660a139254252aa5e462394a5ff91c2b238351bed946e0b5aee05f22e0e2e3350fb476ab3b8b510"
"sha256=83e4955a6fd6b494646ab92c476840ea96b5fb434435c287e7ad3e6efadc8338"
"sha512=7da86f9596dd1439990a6f087fdeba64a0f3ce2634473be4cca92ecc02b6fcd97917956890fbe35b3cba5a126d007afec6ede1e4afd0a5218c89fd6079ad4182"
]
}

41
esy.lock/overrides/opam__s__base_opam__c__v0.12.0_opam_override/files/base-v0.12.0.patch

@ -1,41 +0,0 @@ @@ -1,41 +0,0 @@
--- ./src/dune
+++ ./src/dune
@@ -30,7 +30,7 @@
(with-stdout-to popcnt_test.c
(echo
"int main(int argc, char ** argv) { return __builtin_popcount(argc); }"))
- (system
- "%{cc} -mpopcnt -c popcnt_test.c 2> ${null} && echo '(-mpopcnt)' > %{targets} || echo '()' > %{targets}"))))
+ (bash
+ "%{cc} -mpopcnt -c popcnt_test.c 2> /dev/null && echo '(-mpopcnt)' > %{targets} || echo '()' > %{targets}"))))
(ocamllex hex_lexer)
--- ./src/int_math_stubs.c
+++ ./src/int_math_stubs.c
@@ -12,17 +12,24 @@
#define __builtin_popcountll __popcnt64
#define __builtin_popcount __popcnt
-static uint32_t __inline __builtin_clz(uint32_t x)
+static int __inline __builtin_clz(uint32_t x)
{
int r = 0;
_BitScanForward(&r, x);
return r;
}
-static uint64_t __inline __builtin_clzll(uint64_t x)
+static int __inline __builtin_clzll(uint64_t x)
{
int r = 0;
+#ifdef _WIN64
_BitScanForward64(&r, x);
+#else
+ if (!_BitScanForward(&r, (uint32_t)x) &&
+ _BitScanForward(&r, (uint32_t)(x>>32))) {
+ r += 32;
+ }
+#endif
return r;
}

18
esy.lock/overrides/opam__s__base_opam__c__v0.12.0_opam_override/package.json

@ -1,18 +0,0 @@ @@ -1,18 +0,0 @@
{
"build": [
[
"bash",
"-c",
"#{os == 'windows' ? 'patch -p1 < base-v0.12.0.patch' : 'true'}"
],
[
"jbuilder",
"build",
"-p",
"base",
"-j",
"4"
]
]
}

61
library/Path.re

@ -35,7 +35,6 @@ type firstClass = @@ -35,7 +35,6 @@ type firstClass =
| Relative(t(relative));
type opaqueBase =
| Base(base('exists)): opaqueBase;
type opaqueT = (opaqueBase, list(string));
let drive = name => (Abs(Some(name)), []);
let root = (Abs(None), []);
@ -68,9 +67,9 @@ let isDescendent: type kind. (~ofPath: t(kind), t(kind)) => bool = @@ -68,9 +67,9 @@ let isDescendent: type kind. (~ofPath: t(kind), t(kind)) => bool =
| (None, Some(_)) => false
}
| ((Rel(Any, d1), l1), (Rel(Any, d2), l2)) =>
d1 === d1 && segmentsAreInside(~ofSegments=l1, l2)
d1 === d2 && segmentsAreInside(~ofSegments=l1, l2)
| ((Rel(Home, d1), l1), (Rel(Home, d2), l2)) =>
d1 === d1 && segmentsAreInside(~ofSegments=l1, l2)
d1 === d2 && segmentsAreInside(~ofSegments=l1, l2)
| ((Rel(Any, _), _), (Rel(Home, _), _)) => false
| ((Rel(Home, _), _), (Rel(Any, _), _)) => false
};
@ -94,7 +93,7 @@ let toString: type kind. t(kind) => string = @@ -94,7 +93,7 @@ let toString: type kind. t(kind) => string =
let rest =
lst
|> List.rev
|> List.append(Array.to_list(Array.init(i, i => "..")))
|> List.append(Array.to_list(Array.init(i, _ => "..")))
|> String.concat(sep);
init ++ rest;
};
@ -147,16 +146,16 @@ let lex = s => { @@ -147,16 +146,16 @@ let lex = s => {
prevEsc.contents = ch === '\\' && !prevEsc.contents;
};
let rev =
j.contents === len - 1
? revTokens.contents
: [
j.contents === len - 1 ?
revTokens.contents :
[
makeToken(String.sub(s, j.contents + 1, len - 1 - j.contents)),
...revTokens.contents,
];
List.rev(rev);
};
let parseFirstToken = token =>
let _parseFirstToken = token =>
switch (token) {
| SLASH => (Base(Abs(None)), [])
| DOT => (Base(Rel(Any, 0)), [])
@ -166,7 +165,7 @@ let parseFirstToken = token => @@ -166,7 +165,7 @@ let parseFirstToken = token =>
| TXT(s) => (Base(Rel(Any, 0)), [s])
};
let rec parseNextToken: type kind. (t(kind), token) => t(kind) =
let parseNextToken: type kind. (t(kind), token) => t(kind) =
(path, nextToken) =>
switch (path, nextToken) {
| (path, SLASH) => path
@ -257,14 +256,10 @@ let relativeExn = s => @@ -257,14 +256,10 @@ let relativeExn = s =>
* Relates two positive integers to zero and eachother.
*/
type ord =
| /** 0 === i === j */
Zeros
| /** 0 === i < j */
ZeroPositive
| /** i > 0 === j */
PositiveZero
| /** 0 < i && 0 < j */
Positives;
| /** 0 === i === j */ Zeros
| /** 0 === i < j */ ZeroPositive
| /** i > 0 === j */ PositiveZero
| /** 0 < i && 0 < j */ Positives;
/**
* Using `ord` allows us to retain exhaustiveness pattern matching checks that
@ -273,8 +268,8 @@ type ord = @@ -273,8 +268,8 @@ type ord =
* it isn't inferred to be polymorphic.
*/
let ord = (i: int, j: int) =>
i === 0 && j === 0
? Zeros : i === 0 ? ZeroPositive : j === 0 ? PositiveZero : Positives;
i === 0 && j === 0 ?
Zeros : i === 0 ? ZeroPositive : j === 0 ? PositiveZero : Positives;
let rec repeat = (soFar, i, s) =>
i === 0 ? soFar : repeat(soFar ++ s, i - 1, s);
@ -339,14 +334,14 @@ let relativizeExn: type k. (~source: t(k), ~dest: t(k)) => t(relative) = @@ -339,14 +334,14 @@ let relativizeExn: type k. (~source: t(k), ~dest: t(k)) => t(relative) =
| (Some(_), None) => raiseDriveMismatch(source, dest)
| (None, Some(_)) => raiseDriveMismatch(source, dest)
| (Some(d1), Some(d2)) =>
String.compare(d1, d2) !== 0
? raiseDriveMismatch(source, dest)
: relativizeDepth((0, List.rev(s1)), (0, List.rev(s2)))
String.compare(d1, d2) !== 0 ?
raiseDriveMismatch(source, dest) :
relativizeDepth((0, List.rev(s1)), (0, List.rev(s2)))
}
| ((Rel(w1, r1), s1), (Rel(w2, r2), s2)) =>
w1 === w2
? relativizeDepth((r1, List.rev(s1)), (r2, List.rev(s2)))
: raiseDriveMismatch(source, dest)
w1 === w2 ?
relativizeDepth((r1, List.rev(s1)), (r2, List.rev(s2))) :
raiseDriveMismatch(source, dest)
};
(Rel(Any, depth), List.rev(segs));
};
@ -418,9 +413,9 @@ let rec join: type k1 k2. (t(k1), t(k2)) => t(k1) = @@ -418,9 +413,9 @@ let rec join: type k1 k2. (t(k1), t(k2)) => t(k1) =
switch (p1, p2) {
| ((Rel(w, r1), []), (Rel(Any, r2), s2)) => (Rel(w, r1 + r2), s2)
| ((Rel(w, r1), [s1hd, ...s1tl] as s1), (Rel(Any, r2), s2)) =>
r2 > 0
? join((Rel(w, r1), s1tl), (Rel(Any, r2 - 1), s2))
: (Rel(w, r1), List.append(s2, s1))
r2 > 0 ?
join((Rel(w, r1), s1tl), (Rel(Any, r2 - 1), s2)) :
(Rel(w, r1), List.append(s2, s1))
| ((b1, s1), (Rel(Home, r2), s2)) =>
join((b1, [homeChar, ...List.append(s2, s1)]), (Rel(Any, r2), s2))
| ((b1, s1), (Abs(Some(ll)), s2)) => (
@ -430,12 +425,12 @@ let rec join: type k1 k2. (t(k1), t(k2)) => t(k1) = @@ -430,12 +425,12 @@ let rec join: type k1 k2. (t(k1), t(k2)) => t(k1) =
| ((b1, s1), (Abs(None), s2)) => (b1, List.append(s2, s1))
| ((Abs(_) as d, []), (Rel(Any, r2), s2)) => (d, s2)
| ((Abs(_) as d, [s1hd, ...s1tl] as s1), (Rel(Any, r2), s2)) =>
r2 > 0
? join((d, s1tl), (Rel(Any, r2 - 1), s2))
: (d, List.append(s2, s1))
r2 > 0 ?
join((d, s1tl), (Rel(Any, r2 - 1), s2)) :
(d, List.append(s2, s1))
};
let rec dirName: type k1. t(k1) => t(k1) =
let dirName: type k1. t(k1) => t(k1) =
p1 =>
switch (p1) {
| (Rel(w, r1), []) => (Rel(w, r1 + 1), [])
@ -444,7 +439,7 @@ let rec dirName: type k1. t(k1) => t(k1) = @@ -444,7 +439,7 @@ let rec dirName: type k1. t(k1) => t(k1) =
| (Abs(_) as d, [s1hd, ...s1tl]) => (d, s1tl)
};
let rec baseName: type k1. t(k1) => option(string) =
let baseName: type k1. t(k1) => option(string) =
p1 =>
switch (p1) {
| (Rel(w, r1), []) => None

3
windows.esy.lock/.gitattributes vendored

@ -0,0 +1,3 @@ @@ -0,0 +1,3 @@
# Set eol to LF so files aren't converted to CRLF-eol on Windows.
* text eol=lf

3
windows.esy.lock/.gitignore vendored

@ -0,0 +1,3 @@ @@ -0,0 +1,3 @@
# Reset any possible .gitignore, we want all esy.lock to be un-ignored.
!*

7272
windows.esy.lock/index.json

File diff suppressed because it is too large Load Diff

38
windows.esy.lock/opam/astring.0.8.3/opam

@ -0,0 +1,38 @@ @@ -0,0 +1,38 @@
opam-version: "2.0"
maintainer: "Daniel Bünzli <daniel.buenzl i@erratique.ch>"
authors: ["Daniel Bünzli <daniel.buenzl i@erratique.ch>"]
homepage: "http://erratique.ch/software/astring"
doc: "http://erratique.ch/software/astring/doc"
dev-repo: "git+http://erratique.ch/repos/astring.git"
bug-reports: "https://github.com/dbuenzli/astring/issues"
tags: [ "string" "org:erratique" ]
license: "ISC"
depends: [
"ocaml" {>= "4.01.0"}
"ocamlfind" {build}
"ocamlbuild" {build}
"topkg" {build}
"base-bytes"
]
build: [[
"ocaml" "pkg/pkg.ml" "build"
"--pinned" "%{pinned}%" ]]
synopsis: "Alternative String module for OCaml"
description: """
Astring exposes an alternative `String` module for OCaml. This module
tries to balance minimality and expressiveness for basic, index-free,
string processing and provides types and functions for substrings,
string sets and string maps.
Remaining compatible with the OCaml `String` module is a non-goal. The
`String` module exposed by Astring has exception safe functions,
removes deprecated and rarely used functions, alters some signatures
and names, adds a few missing functions and fully exploits OCaml's
newfound string immutability.
Astring depends only on the OCaml standard library. It is distributed
under the ISC license."""
url {
src: "http://erratique.ch/software/astring/releases/astring-0.8.3.tbz"
checksum: "md5=c5bf6352b9ac27fbeab342740f4fa870"
}

9
windows.esy.lock/opam/base-bytes.base/opam

@ -0,0 +1,9 @@ @@ -0,0 +1,9 @@
opam-version: "2.0"
maintainer: " "
authors: " "
homepage: " "
depends: [
"ocaml" {>= "4.02.0"}
"ocamlfind" {>= "1.5.3"}
]
synopsis: "Bytes library distributed with the OCaml compiler"

6
windows.esy.lock/opam/base-threads.base/opam

@ -0,0 +1,6 @@ @@ -0,0 +1,6 @@
opam-version: "2.0"
maintainer: "https://github.com/ocaml/opam-repository/issues"
description: """
Threads library distributed with the OCaml compiler
"""

6
windows.esy.lock/opam/base-unix.base/opam

@ -0,0 +1,6 @@ @@ -0,0 +1,6 @@
opam-version: "2.0"
maintainer: "https://github.com/ocaml/opam-repository/issues"
description: """
Unix library distributed with the OCaml compiler
"""

38
windows.esy.lock/opam/base.v0.12.2/opam

@ -0,0 +1,38 @@ @@ -0,0 +1,38 @@
opam-version: "2.0"
maintainer: "opensource@janestreet.com"
authors: ["Jane Street Group, LLC <opensource@janestreet.com>"]
homepage: "https://github.com/janestreet/base"
bug-reports: "https://github.com/janestreet/base/issues"
dev-repo: "git+https://github.com/janestreet/base.git"
doc: "https://ocaml.janestreet.com/ocaml-core/latest/doc/base/index.html"
license: "MIT"
build: [
["dune" "build" "-p" name "-j" jobs]
]
depends: [
"ocaml" {>= "4.04.2" & < "4.09.0"}
"sexplib0" {>= "v0.12" & < "v0.13"}
"dune" {build & >= "1.5.1"}
]
depopts: [
"base-native-int63"
]
synopsis: "Full standard library replacement for OCaml"
description: "
Full standard library replacement for OCaml
Base is a complete and portable alternative to the OCaml standard
library. It provides all standard functionalities one would expect
from a language standard library. It uses consistent conventions
across all of its module.
Base aims to be usable in any context. As a result system dependent
features such as I/O are not offered by Base. They are instead
provided by companion libraries such as stdio:
https://github.com/janestreet/stdio
"
url {
src: "https://github.com/janestreet/base/archive/v0.12.2.tar.gz"
checksum: "md5=7150e848a730369a2549d01645fb6c72"
}

34
windows.esy.lock/opam/base64.3.2.0/opam

@ -0,0 +1,34 @@ @@ -0,0 +1,34 @@
opam-version: "2.0"
maintainer: "mirageos-devel@lists.xenproject.org"
authors: [ "Thomas Gazagnaire"
"Anil Madhavapeddy" "Calascibetta Romain"
"Peter Zotov" ]
license: "ISC"
homepage: "https://github.com/mirage/ocaml-base64"
doc: "http://mirage.github.io/ocaml-base64/"
bug-reports: "https://github.com/mirage/ocaml-base64/issues"
dev-repo: "git+https://github.com/mirage/ocaml-base64.git"
synopsis: "Base64 encoding for OCaml"
description: """
Base64 is a group of similar binary-to-text encoding schemes that represent
binary data in an ASCII string format by translating it into a radix-64
representation. It is specified in RFC 4648.
"""
depends: [
"ocaml" {>="4.03.0"}
"base-bytes"
"dune" {build & >= "1.0.1"}
"bos" {with-test}
"rresult" {with-test}
"alcotest" {with-test}
]
build: [
["dune" "subst"]
["dune" "build" "-p" name "-j" jobs]
["dune" "runtest" "-p" name] {with-test}
]
url {
src:
"https://github.com/mirage/ocaml-base64/releases/download/v3.2.0/base64-v3.2.0.tbz"
checksum: "md5=8ac1d6145277cee57d36611d1c420f05"
}

25
windows.esy.lock/opam/biniou.1.2.0/opam

@ -0,0 +1,25 @@ @@ -0,0 +1,25 @@
opam-version: "2.0"
maintainer: "martin@mjambon.com"
authors: ["Martin Jambon"]
homepage: "https://github.com/mjambon/biniou"
bug-reports: "https://github.com/mjambon/biniou/issues"
dev-repo: "git+https://github.com/mjambon/biniou.git"
license: "BSD-3-Clause"
build: [
["jbuilder" "build" "-p" name "-j" jobs]
["jbuilder" "runtest" "-p" name] {with-test}
]
depends: [
"ocaml" {>= "4.02.3"}
"conf-which" {build}
"jbuilder" {build & >= "1.0+beta7"}
"easy-format"
]
synopsis:
"Binary data format designed for speed, safety, ease of use and backward compatibility as protocols evolve"
url {
src: "https://github.com/mjambon/biniou/archive/v1.2.0.tar.gz"
checksum: "md5=f3e92358e832ed94eaf23ce622ccc2f9"
}

36
windows.esy.lock/opam/cmdliner.1.0.3/opam

@ -0,0 +1,36 @@ @@ -0,0 +1,36 @@
opam-version: "2.0"
maintainer: "Daniel Bünzli <daniel.buenzl i@erratique.ch>"
authors: ["Daniel Bünzli <daniel.buenzl i@erratique.ch>"]
homepage: "http://erratique.ch/software/cmdliner"
doc: "http://erratique.ch/software/cmdliner/doc/Cmdliner"
dev-repo: "git+http://erratique.ch/repos/cmdliner.git"
bug-reports: "https://github.com/dbuenzli/cmdliner/issues"
tags: [ "cli" "system" "declarative" "org:erratique" ]
license: "ISC"
depends:[ "ocaml" {>= "4.03.0"} ]
build: [[ make "all" "PREFIX=%{prefix}%" ]]
install:
[[make "install" "LIBDIR=%{_:lib}%" "DOCDIR=%{_:doc}%" ]
[make "install-doc" "LIBDIR=%{_:lib}%" "DOCDIR=%{_:doc}%" ]]
synopsis: """Declarative definition of command line interfaces for OCaml"""
description: """\
Cmdliner allows the declarative definition of command line interfaces
for OCaml.
It provides a simple and compositional mechanism to convert command
line arguments to OCaml values and pass them to your functions. The
module automatically handles syntax errors, help messages and UNIX man
page generation. It supports programs with single or multiple commands
and respects most of the [POSIX][1] and [GNU][2] conventions.
Cmdliner has no dependencies and is distributed under the ISC license.
[1]: http://pubs.opengroup.org/onlinepubs/009695399/basedefs/xbd_chap12.html
[2]: http://www.gnu.org/software/libc/manual/html_node/Argument-Syntax.html
"""
url {
archive: "http://erratique.ch/software/cmdliner/releases/cmdliner-1.0.3.tbz"
checksum: "3674ad01d4445424105d33818c78fba8"
}

50
windows.esy.lock/opam/cohttp-lwt-unix.2.0.0/opam

@ -0,0 +1,50 @@ @@ -0,0 +1,50 @@
opam-version: "2.0"
maintainer: "anil@recoil.org"
authors: [
"Anil Madhavapeddy"
"Stefano Zacchiroli"
"David Sheets"
"Thomas Gazagnaire"
"David Scott"
"Rudi Grinberg"
"Andy Ray"
]
synopsis: "CoHTTP implementation for Unix and Windows using Lwt"
description: """
An implementation of an HTTP client and server using the Lwt
concurrency library. See the `Cohttp_lwt_unix` module for information
on how to use this. The package also installs `cohttp-curl-lwt`
and a `cohttp-server-lwt` binaries for quick uses of a HTTP(S)
client and server respectively.
Although the name implies that this only works under Unix, it
should also be fine under Windows too."""
license: "ISC"
tags: ["org:mirage" "org:xapi-project"]
homepage: "https://github.com/mirage/ocaml-cohttp"
doc: "https://mirage.github.io/ocaml-cohttp/"
bug-reports: "https://github.com/mirage/ocaml-cohttp/issues"
depends: [
"ocaml" {>= "4.04.1"}
"dune" {build & >= "1.1.0"}
"conduit-lwt-unix" {>= "1.0.3"}
"cmdliner"
"magic-mime"
"logs"
"fmt" {>= "0.8.2"}
"cohttp-lwt"
"lwt" {>= "3.0.0"}
"base-unix"
"ounit" {with-test}
]
build: [
["dune" "subst"] {pinned}
["dune" "build" "-p" name "-j" jobs]
["dune" "runtest" "-p" name "-j" jobs] {with-test}
]
dev-repo: "git+https://github.com/mirage/ocaml-cohttp.git"
url {
src:
"https://github.com/mirage/ocaml-cohttp/releases/download/v2.0.0/cohttp-v2.0.0.tbz"
checksum: "md5=c354599fdb4f2625b6510182de0fc86b"
}

46
windows.esy.lock/opam/cohttp-lwt.2.0.0/opam

@ -0,0 +1,46 @@ @@ -0,0 +1,46 @@
opam-version: "2.0"
maintainer: "anil@recoil.org"
authors: [
"Anil Madhavapeddy"
"Stefano Zacchiroli"
"David Sheets"
"Thomas Gazagnaire"
"David Scott"
"Rudi Grinberg"
"Andy Ray"
]
synopsis: "CoHTTP implementation using the Lwt concurrency library"
description: """
This is a portable implementation of HTTP that uses the Lwt
concurrency library to multiplex IO. It implements as much of the
logic in an OS-independent way as possible, so that more specialised
modules can be tailored for different targets. For example, you
can install `cohttp-lwt-unix` or `cohttp-lwt-jsoo` for a Unix or
JavaScript backend, or `cohttp-mirage` for the MirageOS unikernel
version of the library. All of these implementations share the same
IO logic from this module."""
license: "ISC"
tags: ["org:mirage" "org:xapi-project"]
homepage: "https://github.com/mirage/ocaml-cohttp"
doc: "https://mirage.github.io/ocaml-cohttp/"
bug-reports: "https://github.com/mirage/ocaml-cohttp/issues"
depends: [
"ocaml" {>= "4.04.1"}
"dune" {build & >= "1.1.0"}
"cohttp" {>= "2.0.0"}
"lwt" {>= "2.5.0"}
"sexplib0" {< "v0.13"}
"ppx_sexp_conv" {>= "v0.9.0" & < "v0.13"}
"logs"
]
build: [
["dune" "subst"] {pinned}
["dune" "build" "-p" name "-j" jobs]
["dune" "runtest" "-p" name "-j" jobs] {with-test}
]
dev-repo: "git+https://github.com/mirage/ocaml-cohttp.git"
url {
src:
"https://github.com/mirage/ocaml-cohttp/releases/download/v2.0.0/cohttp-v2.0.0.tbz"
checksum: "md5=c354599fdb4f2625b6510182de0fc86b"
}

59
windows.esy.lock/opam/cohttp.2.1.2/opam

@ -0,0 +1,59 @@ @@ -0,0 +1,59 @@
opam-version: "2.0"
maintainer: "anil@recoil.org"
authors: [
"Anil Madhavapeddy"
"Stefano Zacchiroli"
"David Sheets"
"Thomas Gazagnaire"
"David Scott"
"Rudi Grinberg"
"Andy Ray"
]
synopsis: "An OCaml library for HTTP clients and servers"
description: """
Cohttp is an OCaml library for creating HTTP daemons. It has a portable
HTTP parser, and implementations using various asynchronous programming
libraries.
See the cohttp-async, cohttp-lwt, cohttp-lwt-unix, cohttp-lwt-jsoo and
cohttp-mirage libraries for concrete implementations for particular
targets.
You can implement other targets using the parser very easily. Look at the `IO`
signature in `lib/s.mli` and implement that in the desired backend.
You can activate some runtime debugging by setting `COHTTP_DEBUG` to any
value, and all requests and responses will be written to stderr. Further
debugging of the connection layer can be obtained by setting `CONDUIT_DEBUG`
to any value."""
license: "ISC"
tags: ["org:mirage" "org:xapi-project"]
homepage: "https://github.com/mirage/ocaml-cohttp"
doc: "https://mirage.github.io/ocaml-cohttp/"
bug-reports: "https://github.com/mirage/ocaml-cohttp/issues"
depends: [
"ocaml" {>= "4.04.1"}
"dune" {build & >= "1.1.0"}
"re" {>= "1.7.2"}
"uri" {>= "2.0.0"}
"fieldslib"
"sexplib0"
"ppx_fields_conv" {>= "v0.9.0"}
"ppx_sexp_conv" {>= "v0.9.0"}
"stringext"
"base64" {>= "3.1.0"}
"fmt" {with-test}
"jsonm" {build}
"alcotest" {with-test}
]
build: [
["dune" "subst"] {pinned}
["dune" "build" "-p" name "-j" jobs]
["dune" "runtest" "-p" name "-j" jobs] {with-test}
]
dev-repo: "git+https://github.com/mirage/ocaml-cohttp.git"
url {
src:
"https://github.com/mirage/ocaml-cohttp/releases/download/v2.1.2/cohttp-v2.1.2.tbz"
checksum: "md5=1bdde705d853175c67666b45bf3edc43"
}

34
windows.esy.lock/opam/conduit-lwt-unix.1.4.0/opam

@ -0,0 +1,34 @@ @@ -0,0 +1,34 @@
opam-version: "2.0"
maintainer: "anil@recoil.org"
authors: [
"Anil Madhavapeddy" "Thomas Leonard" "Thomas Gazagnaire" "Rudi Grinberg"
]
license: "ISC"
tags: "org:mirage"
homepage: "https://github.com/mirage/ocaml-conduit"
bug-reports: "https://github.com/mirage/ocaml-conduit/issues"
depends: [
"ocaml" {>= "4.03.0"}
"dune" {build}
"base-unix"
"ppx_sexp_conv" {< "v0.13"}
"conduit-lwt" {>="1.4.0"}
"lwt" {>= "3.0.0"}
"uri" {>= "1.9.4"}
"ipaddr" {>= "3.0.0"}
]
depopts: ["tls" "lwt_ssl" "launchd"]
conflicts: [
"tls" {< "0.8.0"}
]
build: [
["dune" "subst"] {pinned}
["dune" "build" "-p" name "-j" jobs]
]
dev-repo: "git+https://github.com/mirage/ocaml-conduit.git"
synopsis: "A network connection establishment library for Lwt_unix"
url {
src:
"https://github.com/mirage/ocaml-conduit/releases/download/v1.4.0/conduit-v1.4.0.tbz"
checksum: "md5=204222b8a61692083b79c67c8967fb28"
}

29
windows.esy.lock/opam/conduit-lwt.1.4.0/opam

@ -0,0 +1,29 @@ @@ -0,0 +1,29 @@
opam-version: "2.0"
maintainer: "anil@recoil.org"
authors: [
"Anil Madhavapeddy" "Thomas Leonard" "Thomas Gazagnaire" "Rudi Grinberg"
]
license: "ISC"
tags: "org:mirage"
homepage: "https://github.com/mirage/ocaml-conduit"
bug-reports: "https://github.com/mirage/ocaml-conduit/issues"
depends: [
"ocaml" {>= "4.03.0"}
"dune" {build}
"base-unix"
"ppx_sexp_conv" {< "v0.13"}
"sexplib" {< "v0.13"}
"conduit" {="1.4.0"}
"lwt" {>= "3.0.0"}
]
build: [
["dune" "subst"] {pinned}
["dune" "build" "-p" name "-j" jobs]
]
dev-repo: "git+https://github.com/mirage/ocaml-conduit.git"
synopsis: "A portable network connection establishment library using Lwt"
url {
src:
"https://github.com/mirage/ocaml-conduit/releases/download/v1.4.0/conduit-v1.4.0.tbz"
checksum: "md5=204222b8a61692083b79c67c8967fb28"
}

53
windows.esy.lock/opam/conduit.1.4.0/opam

@ -0,0 +1,53 @@ @@ -0,0 +1,53 @@
opam-version: "2.0"
maintainer: "anil@recoil.org"
authors: [
"Anil Madhavapeddy" "Thomas Leonard" "Thomas Gazagnaire" "Rudi Grinberg"
]
license: "ISC"
tags: "org:mirage"
homepage: "https://github.com/mirage/ocaml-conduit"
doc: "https://mirage.github.io/ocaml-conduit/"
bug-reports: "https://github.com/mirage/ocaml-conduit/issues"
depends: [
"ocaml" {>= "4.03.0"}
"dune" {build}
"ppx_sexp_conv" {< "v0.13"}
"sexplib" {< "v0.13"}
"astring"
"uri"
"result"
"logs" {>= "0.5.0"}
"ipaddr" {>= "3.0.0"}
]
build: [
["dune" "subst"] {pinned}
["dune" "build" "-p" name "-j" jobs]
]
dev-repo: "git+https://github.com/mirage/ocaml-conduit.git"
synopsis: "A network connection establishment library"
description: """
The `conduit` library takes care of establishing and listening for
TCP and SSL/TLS connections for the Lwt and Async libraries.
The reason this library exists is to provide a degree of abstraction
from the precise SSL library used, since there are a variety of ways
to bind to a library (e.g. the C FFI, or the Ctypes library), as well
as well as which library is used (just OpenSSL for now).
By default, OpenSSL is used as the preferred connection library, but
you can force the use of the pure OCaml TLS stack by setting the
environment variable `CONDUIT_TLS=native` when starting your program.
The useful opam packages available that extend this library are:
- `conduit`: the main `Conduit` module
- `conduit-lwt`: the portable Lwt implementation
- `conduit-lwt-unix`: the Lwt/Unix implementation
- `conduit-async` the Jane Street Async implementation
- `mirage-conduit`: the MirageOS compatible implementation
"""
url {
src:
"https://github.com/mirage/ocaml-conduit/releases/download/v1.4.0/conduit-v1.4.0.tbz"
checksum: "md5=204222b8a61692083b79c67c8967fb28"
}

23
windows.esy.lock/opam/conf-m4.1/opam

@ -0,0 +1,23 @@ @@ -0,0 +1,23 @@
opam-version: "2.0"
maintainer: "tim@gfxmonk.net"
homepage: "http://www.gnu.org/software/m4/m4.html"
bug-reports: "https://github.com/ocaml/opam-repository/issues"
authors: "GNU Project"
license: "GPL-3"
build: [["sh" "-exc" "echo | m4"]]
depexts: [
["m4"] {os-distribution = "debian"}
["m4"] {os-distribution = "ubuntu"}
["m4"] {os-distribution = "fedora"}
["m4"] {os-distribution = "rhel"}
["m4"] {os-distribution = "centos"}
["m4"] {os-distribution = "alpine"}
["m4"] {os-distribution = "nixos"}
["m4"] {os-family = "suse"}
["m4"] {os-distribution = "ol"}
["m4"] {os-distribution = "arch"}
]
synopsis: "Virtual package relying on m4"
description:
"This package can only install if the m4 binary is installed on the system."
flags: conf

39
windows.esy.lock/opam/conf-pkg-config.1.1/opam

@ -0,0 +1,39 @@ @@ -0,0 +1,39 @@
opam-version: "2.0"
maintainer: "unixjunkie@sdf.org"
authors: ["Francois Berenger"]
homepage: "http://www.freedesktop.org/wiki/Software/pkg-config/"
bug-reports: "https://github.com/ocaml/opam-repository/issues"
license: "GPL"
build: [
["pkg-config" "--help"]
]
install: [
["ln" "-s" "/usr/local/bin/pkgconf" "%{bin}%/pkg-config"] {os = "openbsd"}
]
remove: [
["rm" "-f" "%{bin}%/pkg-config"] {os = "openbsd"}
]
post-messages: [
"conf-pkg-config: A symlink to /usr/local/bin/pkgconf has been installed in the OPAM bin directory (%{bin}%) on your PATH as 'pkg-config'. This is necessary for correct operation." {os = "openbsd"}
]
depexts: [
["pkg-config"] {os-distribution = "debian"}
["pkg-config"] {os-distribution = "ubuntu"}
["pkg-config"] {os-distribution = "arch"}
["pkgconfig"] {os-distribution = "fedora"}
["pkgconfig"] {os-distribution = "centos"}
["pkgconfig"] {os-distribution = "mageia"}
["pkgconfig"] {os-distribution = "rhel"}
["pkgconfig"] {os-distribution = "ol"}
["pkgconfig"] {os-distribution = "alpine"}
["devel/pkgconf"] {os = "freebsd"}
["devel/pkgconf"] {os = "openbsd"}
["pkg-config"] {os = "macos" & os-distribution = "homebrew"}
["pkgconf"] {os = "freebsd"}
["pkg-config"] {os-distribution = "cygwinports"}
]
synopsis: "Virtual package relying on pkg-config installation"
description: """
This package can only install if the pkg-config package is installed
on the system."""
flags: conf

20
windows.esy.lock/opam/conf-which.1/opam

@ -0,0 +1,20 @@ @@ -0,0 +1,20 @@
opam-version: "2.0"
maintainer: "unixjunkie@sdf.org"
homepage: "http://www.gnu.org/software/which/"
authors: "Carlo Wood"
bug-reports: "https://github.com/ocaml/opam-repository/issues"
license: "GPL-2+"
build: [["which" "which"]]
depexts: [
["which"] {os-distribution = "centos"}
["which"] {os-distribution = "fedora"}
["which"] {os-family = "suse"}
["debianutils"] {os-distribution = "debian"}
["debianutils"] {os-distribution = "ubuntu"}
["which"] {os-distribution = "nixos"}
["which"] {os-distribution = "arch"}
]
synopsis: "Virtual package relying on which"
description:
"This package can only install if the which program is installed on the system."
flags: conf

37
windows.esy.lock/opam/cppo.1.6.6/opam

@ -0,0 +1,37 @@ @@ -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" {build & >= "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"
]
}

32
windows.esy.lock/opam/cppo_ocamlbuild.1.6.6/opam

@ -0,0 +1,32 @@ @@ -0,0 +1,32 @@
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"
"dune" {build & >= "1.0"}
"ocamlbuild"
]
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: "Plugin to use cppo with ocamlbuild"
description: """
This ocamlbuild plugin lets you use cppo in ocamlbuild projects.
To use it, you can call ocamlbuild with the argument `-plugin-tag
package(cppo_ocamlbuild)` (only since ocaml 4.01 and cppo >= 0.9.4).
"""
url {
src: "https://github.com/ocaml-community/cppo/releases/download/v1.6.6/cppo-v1.6.6.tbz"
checksum: [
"sha256=e7272996a7789175b87bb998efd079794a8db6625aae990d73f7b4484a07b8a0"
"sha512=44ecf9d225d9e45490a2feac0bde04865ca398dba6c3579e3370fcd1ea255707b8883590852af8b2df87123801062b9f3acce2455c092deabf431f9c4fb8d8eb"
]
}

50
windows.esy.lock/opam/dune.1.9.3/opam

@ -0,0 +1,50 @@ @@ -0,0 +1,50 @@
opam-version: "2.0"
maintainer: "opensource@janestreet.com"
authors: ["Jane Street Group, LLC <opensource@janestreet.com>"]
homepage: "https://github.com/ocaml/dune"
bug-reports: "https://github.com/ocaml/dune/issues"
dev-repo: "git+https://github.com/ocaml/dune.git"
license: "MIT"
depends: [
"ocaml" {>= "4.02"}
"base-unix"
"base-threads"
]
build: [
# opam 2 sets OPAM_SWITCH_PREFIX, so we don't need a hardcoded path
["ocaml" "configure.ml" "--libdir" lib] {opam-version < "2"}
["ocaml" "bootstrap.ml"]
["./boot.exe" "--release" "--subst"] {pinned}
["./boot.exe" "--release" "-j" jobs]
]
conflicts: [
"jbuilder" {!= "transition"}
"odoc" {< "1.3.0"}
]
synopsis: "Fast, portable and opinionated build system"
description: """
dune is a build system that was designed to simplify the release of
Jane Street packages. It reads metadata from "dune" files following a
very simple s-expression syntax.
dune is fast, it has very low-overhead and support parallel builds on
all platforms. It has no system dependencies, all you need to build
dune and packages using dune is OCaml. You don't need or make or bash
as long as the packages themselves don't use bash explicitly.
dune supports multi-package development by simply dropping multiple
repositories into the same directory.
It also supports multi-context builds, such as building against
several opam roots/switches simultaneously. This helps maintaining
packages across several versions of OCaml and gives cross-compilation
for free.
"""
url {
src: "https://github.com/ocaml/dune/releases/download/1.9.3/dune-1.9.3.tbz"
checksum: [
"sha256=317bec6de4429b5dee157e9864294e1534b722a2acfc50480bd16c804ab790ca"
"sha512=17450333156622d4612816f9ad5a224c741d62b247d63c1d77b5359d37517c1f9bc598dd11fa024f4e02ccf7eef474cd532eef1d9c34ed13439db6c781f9fa7a"
]
}

20
windows.esy.lock/opam/easy-format.1.3.1/opam

@ -0,0 +1,20 @@ @@ -0,0 +1,20 @@
opam-version: "2.0"
maintainer: "martin@mjambon.com"
authors: ["Martin Jambon"]
homepage: "http://mjambon.com/easy-format.html"
bug-reports: "https://github.com/mjambon/easy-format/issues"
dev-repo: "git+https://github.com/mjambon/easy-format.git"
build: [
["jbuilder" "build" "-p" name "-j" jobs]
["jbuilder" "runtest" "-p" name] {with-test}
]
depends: [
"ocaml" {>= "4.02.3"}
"jbuilder" {build}
]
synopsis:
"High-level and functional interface to the Format module of the OCaml standard library"
url {
src: "https://github.com/mjambon/easy-format/archive/v1.3.1.tar.gz"
checksum: "md5=4e163700fb88fdcd6b8976c3a216c8ea"
}

27
windows.esy.lock/opam/fieldslib.v0.12.0/opam

@ -0,0 +1,27 @@ @@ -0,0 +1,27 @@
opam-version: "2.0"
maintainer: "opensource@janestreet.com"
authors: ["Jane Street Group, LLC <opensource@janestreet.com>"]
homepage: "https://github.com/janestreet/fieldslib"
bug-reports: "https://github.com/janestreet/fieldslib/issues"
dev-repo: "git+https://github.com/janestreet/fieldslib.git"
doc: "https://ocaml.janestreet.com/ocaml-core/latest/doc/fieldslib/index.html"
license: "MIT"
build: [
["dune" "build" "-p" name "-j" jobs]
]
depends: [
"ocaml" {>= "4.04.2"}
"base" {>= "v0.12" & < "v0.13"}
"dune" {build & >= "1.5.1"}
]
synopsis: "Syntax extension to define first class values representing record fields, to get and set record fields, iterate and fold over all fields of a record and create new record values"
description: "
Part of Jane Street's Core library
The Core suite of libraries is an industrial strength alternative to
OCaml's standard library that was developed by Jane Street, the
largest industrial user of OCaml.
"
url {
src: "https://ocaml.janestreet.com/ocaml-core/v0.12/files/fieldslib-v0.12.0.tar.gz"
checksum: "md5=7cb44f0fb396b6645fc9965ebb8e6741"
}

44
windows.esy.lock/opam/fmt.0.8.6/opam

@ -0,0 +1,44 @@ @@ -0,0 +1,44 @@
opam-version: "2.0"
maintainer: "Daniel Bünzli <daniel.buenzl i@erratique.ch>"
authors: [ "The fmt programmers" ]
homepage: "https://erratique.ch/software/fmt"
doc: "https://erratique.ch/software/fmt"
dev-repo: "git+https://erratique.ch/repos/fmt.git"
bug-reports: "https://github.com/dbuenzli/fmt/issues"
tags: [ "string" "format" "pretty-print" "org:erratique" ]
license: "ISC"
depends: [
"ocaml" {>= "4.03.0"}
"ocamlfind" {build}
"ocamlbuild" {build}
"topkg" {build & >= "0.9.0"}
# Can be removed once ocaml >= 4.07
"seq"
"stdlib-shims"
]
depopts: [ "base-unix" "cmdliner" ]
conflicts: [ "cmdliner" {< "0.9.8"} ]
build: [[
"ocaml" "pkg/pkg.ml" "build"
"--dev-pkg" "%{pinned}%"
"--with-base-unix" "%{base-unix:installed}%"
"--with-cmdliner" "%{cmdliner:installed}%" ]]
synopsis: """OCaml Format pretty-printer combinators"""
description: """\
Fmt exposes combinators to devise `Format` pretty-printing functions.
Fmt depends only on the OCaml standard library. The optional `Fmt_tty`
library that allows to setup formatters for terminal color output
depends on the Unix library. The optional `Fmt_cli` library that
provides command line support for Fmt depends on [`Cmdliner`][cmdliner].
Fmt is distributed under the ISC license.
[cmdliner]: http://erratique.ch/software/cmdliner
"""
url {
archive: "https://erratique.ch/software/fmt/releases/fmt-0.8.6.tbz"
checksum: "5407789e5f0ea42272ca19353b1abfd3"
}

47
windows.esy.lock/opam/ipaddr.3.1.0/opam

@ -0,0 +1,47 @@ @@ -0,0 +1,47 @@
opam-version: "2.0"
maintainer: "anil@recoil.org"
authors: ["David Sheets" "Anil Madhavapeddy" "Hugo Heuzard"]
synopsis: "A library for manipulation of IP (and MAC) address representations"
description: """
Features:
* Depends only on sexplib (conditionalization under consideration)
* oUnit-based tests
* IPv4 and IPv6 support
* IPv4 and IPv6 CIDR prefix support
* IPv4 and IPv6 [CIDR-scoped address](http://tools.ietf.org/html/rfc4291#section-2.3) support
* `Ipaddr.V4` and `Ipaddr.V4.Prefix` modules are `Map.OrderedType`
* `Ipaddr.V6` and `Ipaddr.V6.Prefix` modules are `Map.OrderedType`
* `Ipaddr` and `Ipaddr.Prefix` modules are `Map.OrderedType`
* `Ipaddr_unix` in findlib subpackage `ipaddr.unix` provides compatibility with the standard library `Unix` module
* `Ipaddr_top` in findlib subpackage `ipaddr.top` provides top-level pretty printers (requires compiler-libs default since OCaml 4.0)
* IP address scope classification
* IPv4-mapped addresses in IPv6 (::ffff:0:0/96) are an embedding of IPv4
* MAC-48 (Ethernet) address support
* `Macaddr` is a `Map.OrderedType`
* All types have sexplib serializers/deserializers
"""
license: "ISC"
tags: ["org:mirage" "org:xapi-project"]
homepage: "https://github.com/mirage/ocaml-ipaddr"
doc: "https://mirage.github.io/ocaml-ipaddr/"
bug-reports: "https://github.com/mirage/ocaml-ipaddr/issues"
depends: [
"ocaml" {>= "4.04.0"}
"dune" {build}
"macaddr"
"sexplib0"
"ounit" {with-test}
"ppx_sexp_conv" {with-test}
]
build: [
["dune" "subst"] {pinned}
["dune" "build" "-p" name "-j" jobs]
["dune" "runtest" "-p" name "-j" jobs] {with-test}
]
dev-repo: "git+https://github.com/mirage/ocaml-ipaddr.git"
url {
src:
"https://github.com/mirage/ocaml-ipaddr/releases/download/v3.1.0/ipaddr-v3.1.0.tbz"
checksum: "md5=471a594563bb9c3dd91ae912b5ffd6ed"
}

15
windows.esy.lock/opam/jbuilder.transition/opam

@ -0,0 +1,15 @@ @@ -0,0 +1,15 @@
opam-version: "2.0"
maintainer: "opensource@janestreet.com"
authors: ["Jane Street Group, LLC <opensource@janestreet.com>"]
homepage: "https://github.com/ocaml/dune"
bug-reports: "https://github.com/ocaml/dune/issues"
dev-repo: "git+https://github.com/ocaml/dune.git"
license: "MIT"
depends: ["ocaml" "dune"]
post-messages: [
"Jbuilder has been renamed and the jbuilder package is now a transition \
package. Use the dune package instead."
]
synopsis:
"This is a transition package, jbuilder is now named dune. Use the dune"
description: "package instead."

37
windows.esy.lock/opam/jsonm.1.0.1/opam

@ -0,0 +1,37 @@ @@ -0,0 +1,37 @@
opam-version: "2.0"
maintainer: "Daniel Bünzli <daniel.buenzl i@erratique.ch>"
authors: ["Daniel Bünzli <daniel.buenzl i@erratique.ch>"]
homepage: "http://erratique.ch/software/jsonm"
doc: "http://erratique.ch/software/jsonm/doc/Jsonm"
dev-repo: "git+http://erratique.ch/repos/jsonm.git"
bug-reports: "https://github.com/dbuenzli/jsonm/issues"
tags: [ "json" "codec" "org:erratique" ]
license: "ISC"
depends: [
"ocaml" {>= "4.01.0"}
"ocamlfind" {build}
"ocamlbuild" {build}
"topkg" {build}
"uchar"
"uutf" {>= "1.0.0"}
]
build:[[
"ocaml" "pkg/pkg.ml" "build"
"--pinned" "%{pinned}%" ]]
synopsis: "Non-blocking streaming JSON codec for OCaml"
description: """
Jsonm is a non-blocking streaming codec to decode and encode the JSON
data format. It can process JSON text without blocking on IO and
without a complete in-memory representation of the data.
The alternative "uncut" codec also processes whitespace and
(non-standard) JSON with JavaScript comments.
Jsonm is made of a single module and depends on [Uutf][uutf]. It is distributed
under the ISC license.
[uutf]: http://erratique.ch/software/uutf"""
url {
src: "http://erratique.ch/software/jsonm/releases/jsonm-1.0.1.tbz"
checksum: "md5=e2ca39eaefd55b8d155c4f1ec5885311"
}

35
windows.esy.lock/opam/lambdasoup.0.6.3/opam

@ -0,0 +1,35 @@ @@ -0,0 +1,35 @@
opam-version: "2.0"
version: "0.6.3"
homepage: "https://github.com/aantron/lambda-soup"
doc: "http://aantron.github.io/lambda-soup"
bug-reports: "https://github.com/aantron/lambda-soup/issues"
license: "BSD"
authors: "Anton Bachin <antonbachin@yahoo.com>"
maintainer: "Anton Bachin <antonbachin@yahoo.com>"
dev-repo: "git+https://github.com/aantron/lambda-soup.git"
depends: [
"ocaml"
"jbuilder" {build & >= "1.0+beta10"}
"markup" {>= "0.7.1"}
"ounit" {with-test}
]
build: [
["jbuilder" "build" "-p" name "-j" jobs]
]
synopsis: "Easy functional HTML scraping and manipulation with CSS selectors"
description: """
Lambda Soup is an HTML scraping library inspired by Python's Beautiful Soup. It
provides lazy traversals from HTML nodes to their parents, children, siblings,
etc., and to nodes matching CSS selectors. The traversals can be manipulated
using standard functional combinators such as fold, filter, and map.
The DOM tree is mutable. You can use Lambda Soup for automatic HTML rewriting in
scripts. Lambda Soup rewrites its own ocamldoc page this way.
A major goal of Lambda Soup is to be easy to use, including in interactive
sessions, and to have a minimal learning curve. It is a very simple library."""
url {
src: "https://github.com/aantron/lambda-soup/archive/0.6.3.tar.gz"
checksum: "md5=89f0596aa05a6e7a33bf9d74797905f1"
}

60
windows.esy.lock/opam/logs.0.6.3/opam

@ -0,0 +1,60 @@ @@ -0,0 +1,60 @@
opam-version: "2.0"
maintainer: "Daniel Bünzli <daniel.buenzl i@erratique.ch>"
authors: ["The logs programmers"]
homepage: "https://erratique.ch/software/logs"
doc: "https://erratique.ch/software/logs/doc"
dev-repo: "git+https://erratique.ch/repos/logs.git"
bug-reports: "https://github.com/dbuenzli/logs/issues"
tags: [ "log" "system" "org:erratique" ]
license: "ISC"
depends: [
"ocaml" {>= "4.03.0"}
"ocamlfind" {build}
"ocamlbuild" {build}
"topkg" {build}
"mtime" {with-test} ]
depopts: [
"js_of_ocaml"
"fmt"
"cmdliner"
"lwt" ]
conflicts: [
"js_of_ocaml" { < "3.3.0" } ]
build: [[
"ocaml" "pkg/pkg.ml" "build"
"--pinned" "%{pinned}%"
"--with-js_of_ocaml" "%{js_of_ocaml:installed}%"
"--with-fmt" "%{fmt:installed}%"
"--with-cmdliner" "%{cmdliner:installed}%"
"--with-lwt" "%{lwt:installed}%" ]]
synopsis: """Logging infrastructure for OCaml"""
description: """\
Logs provides a logging infrastructure for OCaml. Logging is performed
on sources whose reporting level can be set independently. Log message
report is decoupled from logging and is handled by a reporter.
A few optional log reporters are distributed with the base library and
the API easily allows to implement your own.
`Logs` has no dependencies. The optional `Logs_fmt` reporter on OCaml
formatters depends on [Fmt][fmt]. The optional `Logs_browser`
reporter that reports to the web browser console depends on
[js_of_ocaml][jsoo]. The optional `Logs_cli` library that provides
command line support for controlling Logs depends on
[`Cmdliner`][cmdliner]. The optional `Logs_lwt` library that provides
Lwt logging functions depends on [`Lwt`][lwt]
Logs and its reporters are distributed under the ISC license.
[fmt]: http://erratique.ch/software/fmt
[jsoo]: http://ocsigen.org/js_of_ocaml/
[cmdliner]: http://erratique.ch/software/cmdliner
[lwt]: http://ocsigen.org/lwt/
"""
url {
archive: "https://erratique.ch/software/logs/releases/logs-0.6.3.tbz"
checksum: "370e4c802588f73d0777c59bc414b57b"
}

58
windows.esy.lock/opam/lwt.4.2.1/opam

@ -0,0 +1,58 @@ @@ -0,0 +1,58 @@
opam-version: "2.0"
synopsis: "Promises and event-driven I/O"
license: "MIT"
homepage: "https://github.com/ocsigen/lwt"
doc: "https://ocsigen.org/lwt/manual/"
bug-reports: "https://github.com/ocsigen/lwt/issues"
authors: [
"Jérôme Vouillon"
"Jérémie Dimino"
]
maintainer: [
"Anton Bachin <antonbachin@yahoo.com>"
"Mauricio Fernandez <mfp@acm.org>"
"Simon Cruanes <simon.cruanes.2007@m4x.org>"
]
dev-repo: "git+https://github.com/ocsigen/lwt.git"
depends: [
"cppo" {build & >= "1.1.0"}
"dune" {build}
"mmap" # mmap is needed as long as Lwt supports OCaml < 4.06.0.
"ocaml" {>= "4.02.0"}
"result" # result is needed as long as Lwt supports OCaml 4.02.
"seq" # seq is needed as long as Lwt supports OCaml < 4.07.0.
"bisect_ppx" {dev & >= "1.3.0"}
"ocamlfind" {dev & >= "1.7.3-1"}
]
depopts: [
"base-threads"
"base-unix"
"conf-libev"
]
conflicts: [
"ocaml-variants" {= "4.02.1+BER"}
]
build: [
["dune" "build" "-p" name "-j" jobs]
]
description: "A promise is a value that may become determined in the future.
Lwt provides typed, composable promises. Promises that are resolved by I/O are
resolved by Lwt in parallel.
Meanwhile, OCaml code, including code creating and waiting on promises, runs in
a single thread by default. This reduces the need for locks or other
synchronization primitives. Code can be run in parallel on an opt-in basis."
url {
src: "https://github.com/ocsigen/lwt/archive/4.2.1.tar.gz"
checksum: "md5=9d648386ca0a9978eb9487de36b781cc"
}

33
windows.esy.lock/opam/lwt_ppx.1.2.2/opam

@ -0,0 +1,33 @@ @@ -0,0 +1,33 @@
opam-version: "2.0"
synopsis: "PPX syntax for Lwt, providing something similar to async/await from JavaScript"
license: "MIT"
homepage: "https://github.com/ocsigen/lwt"
doc: "https://ocsigen.org/lwt/api/Ppx_lwt"
bug-reports: "https://github.com/ocsigen/lwt/issues"
authors: [
"Gabriel Radanne"
]
maintainer: [
"Anton Bachin <antonbachin@yahoo.com>"
]
dev-repo: "git+https://github.com/ocsigen/lwt.git"
depends: [
"dune" {build}
"lwt"
"ocaml" {>= "4.02.0"}
"ocaml-migrate-parsetree"
"ppx_tools_versioned" {>= "5.0.1"}
]
build: [
["dune" "build" "-p" name "-j" jobs]
]
url {
src: "https://github.com/ocsigen/lwt/archive/4.2.0.tar.gz"
checksum: "md5=2ce7827948adc611319f9449e4519070"
}

28
windows.esy.lock/opam/lwt_ssl.1.1.2/opam

@ -0,0 +1,28 @@ @@ -0,0 +1,28 @@
opam-version: "2.0"
version: "1.1.2"
homepage: "https://github.com/aantron/lwt_ssl"
doc: "https://github.com/aantron/lwt_ssl/blob/master/src/lwt_ssl.mli"
bug-reports: "https://github.com/aantron/lwt_ssl/issues"
license: "LGPL with OpenSSL linking exception"
authors: [
"Jérôme Vouillon"
"Jérémie Dimino"
]
maintainer: "Anton Bachin <antonbachin@yahoo.com>"
dev-repo: "git+https://github.com/aantron/lwt_ssl.git"
depends: [
"ocaml"
"base-unix"
"jbuilder" {build & >= "1.0+beta10"}
"lwt" {>= "3.0.0"}
"ssl" {>= "0.5.0"}
]
build: [
["jbuilder" "build" "-p" name "-j" jobs]
]
synopsis: "OpenSSL binding with concurrent I/O"
url {
src: "https://github.com/aantron/lwt_ssl/archive/1.1.2.tar.gz"
checksum: "md5=d239353b1e7c6e3fd4192c71a3b25ce2"
}

27
windows.esy.lock/opam/macaddr.3.1.0/opam

@ -0,0 +1,27 @@ @@ -0,0 +1,27 @@
opam-version: "2.0"
maintainer: "anil@recoil.org"
authors: ["David Sheets" "Anil Madhavapeddy" "Hugo Heuzard"]
synopsis: "A library for manipulation of MAC address representations"
license: "ISC"
tags: ["org:mirage" "org:xapi-project"]
homepage: "https://github.com/mirage/ocaml-ipaddr"
doc: "https://mirage.github.io/ocaml-ipaddr/"
bug-reports: "https://github.com/mirage/ocaml-ipaddr/issues"
depends: [
"ocaml" {>= "4.04.0"}
"dune" {build}
"sexplib0"
"ounit" {with-test}
"ppx_sexp_conv" {with-test}
]
conflicts: [ "ipaddr" {< "3.0.0"} ]
build: [
["dune" "subst"] {pinned}
["dune" "build" "-p" name "-j" jobs]
]
dev-repo: "git+https://github.com/mirage/ocaml-ipaddr.git"
url {
src:
"https://github.com/mirage/ocaml-ipaddr/releases/download/v3.1.0/ipaddr-v3.1.0.tbz"
checksum: "md5=471a594563bb9c3dd91ae912b5ffd6ed"
}

38
windows.esy.lock/opam/magic-mime.1.1.1/opam

@ -0,0 +1,38 @@ @@ -0,0 +1,38 @@
opam-version: "2.0"
name: "magic-mime"
synopsis: "Map filenames to common MIME types"
description: """
This library contains a database of MIME types that maps filename extensions
into MIME types suitable for use in many Internet protocols such as HTTP or
e-mail. It is generated from the `mime.types` file found in Unix systems, but
has no dependency on a filesystem since it includes the contents of the
database as an ML datastructure.
For example, here's how to lookup MIME types in the [utop] REPL:
#require "magic-mime";;
Magic_mime.lookup "/foo/bar.txt";;
- : bytes = "text/plain"
Magic_mime.lookup "bar.css";;
- : bytes = "text/css"
"""
maintainer: "Anil Madhavapeddy <anil@recoil.org>"
authors: ["Anil Madhavapeddy" "Maxence Guesdon"]
license: "ISC"
homepage: "https://github.com/mirage/ocaml-magic-mime"
doc: "https://mirage.github.io/ocaml-magic-mime/"
bug-reports: "https://github.com/mirage/ocaml-magic-mime/issues"
dev-repo: "git+https://github.com/mirage/ocaml-magic-mime.git"
depends: [
"ocaml" {>= "4.03.0"}
"dune" {build}
]
build: [
["dune" "subst"] {pinned}
["dune" "build" "-p" name "-j" jobs]
]
url {
src:
"https://github.com/mirage/ocaml-magic-mime/releases/download/v1.1.1/magic-mime-v1.1.1.tbz"
checksum: "md5=8430a2686206517f2753e47c9c038b5c"
}

52
windows.esy.lock/opam/markup.0.8.0/opam

@ -0,0 +1,52 @@ @@ -0,0 +1,52 @@
opam-version: "2.0"
version: "0.8.0"
maintainer: "Anton Bachin <antonbachin@yahoo.com>"
authors: "Anton Bachin <antonbachin@yahoo.com>"
homepage: "https://github.com/aantron/markup.ml"
doc: "http://aantron.github.io/markup.ml"
bug-reports: "https://github.com/aantron/markup.ml/issues"
dev-repo: "git+https://github.com/aantron/markup.ml.git"
license: "BSD"
depends: [
"ocaml"
"dune" {build}
"ounit" {with-test}
"uchar"
"uutf" {>= "1.0.0"}
]
# Markup.ml implicitly requires OCaml 4.02.3, as this is a contraint of Dune.
# Without that, Markup.ml implicitly requires OCaml 4.01.0, as this is a
# constraint of Uutf. Without *that*, Markup.ml works on OCaml 3.11 or searlier.
build: [
["dune" "build" "-p" name "-j" jobs]
]
synopsis: "Error-recovering functional HTML5 and XML parsers and writers"
description: """
Markup.ml provides an HTML parser and an XML parser. The parsers are wrapped in
a simple interface: they are functions that transform byte streams to parsing
signal streams. Streams can be manipulated in various ways, such as processing
by fold, filter, and map, assembly into DOM tree structures, or serialization
back to HTML or XML.
Both parsers are based on their respective standards. The HTML parser, in
particular, is based on the state machines defined in HTML5.
The parsers are error-recovering by default, and accept fragments. This makes it
very easy to get a best-effort parse of some input. The parsers can, however, be
easily configured to be strict, and to accept only full documents.
Apart from this, the parsers are streaming (do not build up a document in
memory), non-blocking (can be used with threading libraries), lazy (do not
consume input unless the signal stream is being read), and process the input in
a single pass. They automatically detect the character encoding of the input
stream, and convert everything to UTF-8."""
url {
src: "https://github.com/aantron/markup.ml/archive/0.8.0.tar.gz"
checksum: "md5=be0e44a8e8a540f633996e0e26109b4d"
}

32
windows.esy.lock/opam/menhir.20181113/opam

@ -0,0 +1,32 @@ @@ -0,0 +1,32 @@
opam-version: "2.0"
maintainer: "francois.pottier@inria.fr"
authors: [
"François Pottier <francois.pottier@inria.fr>"
"Yann Régis-Gianas <yrg@pps.univ-paris-diderot.fr>"
]
homepage: "http://gitlab.inria.fr/fpottier/menhir"
dev-repo: "git+https://gitlab.inria.fr/fpottier/menhir.git"
bug-reports: "menhir@inria.fr"
build: [
[make "-f" "Makefile" "PREFIX=%{prefix}%" "USE_OCAMLFIND=true" "docdir=%{doc}%/menhir" "libdir=%{lib}%/menhir" "mandir=%{man}%/man1"]
]
install: [
[make "-f" "Makefile" "install" "PREFIX=%{prefix}%" "docdir=%{doc}%/menhir" "libdir=%{lib}%/menhir" "mandir=%{man}%/man1"]
]
remove: [
[make "-f" "Makefile" "uninstall" "PREFIX=%{prefix}%" "docdir=%{doc}%/menhir" "libdir=%{lib}%/menhir" "mandir=%{man}%/man1"]
]
depends: [
"ocaml" {>= "4.02"}
"ocamlfind" {build}
"ocamlbuild" {build}
]
synopsis: "An LR(1) parser generator"
url {
src:
"https://gitlab.inria.fr/fpottier/menhir/repository/20181113/archive.tar.gz"
checksum: [
"md5=69ce441a06ea131cd43e7b44c4303f3c"
"sha512=4ddefcd71d305bfb933a4056da57e36c13c99ec6dfcc4695814798fbbd78b4d65828381ebcb0e58c4c0394105ac763af3d475474e05e408f7080315bc3cf6176"
]
}

24
windows.esy.lock/opam/merlin-extend.0.3/opam

@ -0,0 +1,24 @@ @@ -0,0 +1,24 @@
opam-version: "2.0"
maintainer: "Frederic Bour <frederic.bour@lakaban.net>"
authors: "Frederic Bour <frederic.bour@lakaban.net>"
homepage: "https://github.com/let-def/merlin-extend"
bug-reports: "https://github.com/let-def/merlin-extend"
license: "MIT"
dev-repo: "git+https://github.com/let-def/merlin-extend.git"
build: [make]
install: [make "install"]
remove: ["ocamlfind" "remove" "merlin_extend"]
depends: [
"ocaml" {>= "4.02.3" & < "4.08.0"}
"ocamlfind" {build}
"cppo" {build}
]
synopsis: "A protocol to provide custom frontend to Merlin"
description: """
This protocol allows to replace the OCaml frontend of Merlin.
It extends what used to be done with the `-pp' flag to handle a few more cases."""
flags: light-uninstall
url {
src: "https://github.com/let-def/merlin-extend/archive/v0.3.tar.gz"
checksum: "md5=9c6dfd4f53328f02f12fcc265f4e2dda"
}

74
windows.esy.lock/opam/merlin.3.2.2/opam

@ -0,0 +1,74 @@ @@ -0,0 +1,74 @@
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"
}

24
windows.esy.lock/opam/mmap.1.1.0/opam

@ -0,0 +1,24 @@ @@ -0,0 +1,24 @@
opam-version: "2.0"
maintainer: "jeremie@dimino.org"
authors: ["Jérémie Dimino <jeremie@dimino.org>" "Anton Bachin" ]
homepage: "https://github.com/mirage/mmap"
bug-reports: "https://github.com/mirage/mmap/issues"
doc: "https://mirage.github.io/mmap/"
dev-repo: "git+https://github.com/mirage/mmap.git"
license: "LGPL 2.1 with linking exception"
build: [
["dune" "build" "-p" name "-j" jobs]
]
depends: [
"ocaml" {>= "4.02.3"}
"dune" {build & >= "1.6"}
]
synopsis: "File mapping functionality"
description: """
This project provides a Mmap.map_file functions for mapping files in memory.
"""
url {
src:
"https://github.com/mirage/mmap/releases/download/v1.1.0/mmap-v1.1.0.tbz"
checksum: "md5=8c5d5fbc537296dc525867535fb878ba"
}

129
windows.esy.lock/opam/num.1.1/files/findlib-install.patch

@ -0,0 +1,129 @@ @@ -0,0 +1,129 @@
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

59
windows.esy.lock/opam/num.1.1/files/installation-warning.patch

@ -0,0 +1,59 @@ @@ -0,0 +1,59 @@
From db8d748b2cad0adc2698e9fcf28727083a711bae Mon Sep 17 00:00:00 2001
From: David Allsopp <david.allsopp@metastack.com>
Date: Wed, 24 Jan 2018 16:01:56 +0000
Subject: [PATCH] Warn about installations broken by previous faulty package
---
Makefile | 33 +++++++++++++++++++++++++++++++++
1 file changed, 33 insertions(+)
diff --git a/Makefile b/Makefile
index b40e588..d4dcd70 100644
--- a/Makefile
+++ b/Makefile
@@ -14,9 +14,42 @@ install:
$(MAKE) -C src install
$(MAKE) -C toplevel install
+OCAMLFIND_DIR:=$(dir $(shell command -v ocamlfind 2>/dev/null))
+OCAMLC_DIR:=$(dir $(shell command -v ocamlc 2>/dev/null))
+NUM_INSTALLED:=$(shell ocamlfind query num 2>/dev/null)
+
+ifeq ($(NUM_INSTALLED),)
+# The num findlib package is not already present - wohoo!
+OUR_FAULT=no
+else
+ifeq ($(OCAMLFIND_DIR),$(OCAMLC_DIR))
+# The num findlib package is present, but ocamlc and ocamlfind are in the
+# same place, which means that either we're looking at a system-installed
+# ocamlfind (which isn't supported), or the user has done something else
+# nefarious and doesn't deserve our sympathy (or, at least, our potentially
+# unhelpful advice)
+OUR_FAULT=no
+else
+# The num findlib package package is present, and ocamlc and ocamlfind reside
+# in different directories, which means that we're almost certainly looking at
+# a system switch which has been damaged by a previous num package installation
+# on an OS which didn't protect the system lib directory.
+OUR_FAULT=probably
+endif
+endif
+
findlib-install:
+ifeq ($(OUR_FAULT),no)
$(MAKE) -C src findlib-install
$(MAKE) -C toplevel install
+else
+ @echo "\033[0;31m[ERROR]\033[m It appears that the num library was previously installed to your system"
+ @echo " compiler's lib directory, probably by a faulty opam package."
+ @echo " You will need to remove arith_flags.*, arith_status.*, big_int.*,"
+ @echo " int_misc.*, nat.*, num.*, ratio.*, nums.*, libnums.* and"
+ @echo " stublibs/dllnums.* from $(shell ocamlc -where)."
+ @false
+endif
uninstall:
$(MAKE) -C src uninstall
--
2.14.1

43
windows.esy.lock/opam/num.1.1/opam

@ -0,0 +1,43 @@ @@ -0,0 +1,43 @@
opam-version: "2.0"
name: "num"
version: "1.1"
maintainer: "Xavier Leroy <xavier.leroy@inria.fr>"
authors: [
"Valérie Ménissier-Morain"
"Pierre Weis"
"Xavier Leroy"
]
license: "LGPL 2.1 with OCaml linking exception"
homepage: "https://github.com/ocaml/num/"
bug-reports: "https://github.com/ocaml/num/issues"
dev-repo: "git+https://github.com/ocaml/num.git"
build: [
[make]
]
install: [
make
"install" {!ocaml:preinstalled}
"findlib-install" {ocaml:preinstalled}
]
remove: [
make
"uninstall" {!ocaml:preinstalled}
"findlib-uninstall" {ocaml:preinstalled}
]
depends: [
"ocaml" {>= "4.06.0"}
"ocamlfind" {build & >= "1.7.3"}
]
conflicts: [ "base-num" ]
patches: [ "findlib-install.patch" "installation-warning.patch" ]
synopsis:
"The legacy Num library for arbitrary-precision integer and rational arithmetic"
extra-files: [
["installation-warning.patch" "md5=93c92bf6da6bae09d068da42b1bbaaac"]
["findlib-install.patch" "md5=3163a4c3f8dd084653eeb64d95311a2a"]
]
url {
src: "https://github.com/ocaml/num/archive/v1.1.tar.gz"
checksum: "md5=710cbe18b144955687a03ebab439ff2b"
}

23
windows.esy.lock/opam/ocaml-compiler-libs.v0.12.0/opam

@ -0,0 +1,23 @@ @@ -0,0 +1,23 @@
opam-version: "2.0"
maintainer: "opensource@janestreet.com"
authors: ["Jane Street Group, LLC <opensource@janestreet.com>"]
homepage: "https://github.com/janestreet/ocaml-compiler-libs"
bug-reports: "https://github.com/janestreet/ocaml-compiler-libs/issues"
dev-repo: "git+https://github.com/janestreet/ocaml-compiler-libs.git"
license: "Apache-2.0"
build: [
["dune" "build" "-p" name "-j" jobs]
]
depends: [
"ocaml" {>= "4.04.1"}
"dune" {build & >= "1.0"}
]
synopsis: "OCaml compiler libraries repackaged"
description: """
This packages exposes the OCaml compiler libraries repackages under
the toplevel names Ocaml_common, Ocaml_bytecomp, ..."""
url {
src:
"https://github.com/janestreet/ocaml-compiler-libs/archive/v0.12.0.tar.gz"
checksum: "md5=3351925ed99be59829641d2044fc80c0"
}

37
windows.esy.lock/opam/ocaml-migrate-parsetree.1.3.1/opam

@ -0,0 +1,37 @@ @@ -0,0 +1,37 @@
opam-version: "2.0"
maintainer: "frederic.bour@lakaban.net"
authors: [
"Frédéric Bour <frederic.bour@lakaban.net>"
"Jérémie Dimino <jeremie@dimino.org>"
]
license: "LGPL-2.1 with OCaml linking exception"
homepage: "https://github.com/ocaml-ppx/ocaml-migrate-parsetree"
bug-reports: "https://github.com/ocaml-ppx/ocaml-migrate-parsetree/issues"
dev-repo: "git+https://github.com/ocaml-ppx/ocaml-migrate-parsetree.git"
doc: "https://ocaml-ppx.github.io/ocaml-migrate-parsetree/"
tags: [ "syntax" "org:ocamllabs" ]
build: [
["dune" "build" "-p" name "-j" jobs]
]
depends: [
"result"
"ppx_derivers"
"dune" {build & >= "1.6.0"}
"ocaml" {>= "4.02.3"}
]
synopsis: "Convert OCaml parsetrees between different versions"
description: """
Convert OCaml parsetrees between different versions
This library converts parsetrees, outcometree and ast mappers between
different OCaml versions. High-level functions help making PPX
rewriters independent of a compiler version.
"""
url {
src:
"https://github.com/ocaml-ppx/ocaml-migrate-parsetree/releases/download/v1.3.1/ocaml-migrate-parsetree-v1.3.1.tbz"
checksum: [
"sha256=83e4955a6fd6b494646ab92c476840ea96b5fb434435c287e7ad3e6efadc8338"
"sha512=7da86f9596dd1439990a6f087fdeba64a0f3ce2634473be4cca92ecc02b6fcd97917956890fbe35b3cba5a126d007afec6ede1e4afd0a5218c89fd6079ad4182"
]
}

36
windows.esy.lock/opam/ocamlbuild.0.14.0/opam

@ -0,0 +1,36 @@ @@ -0,0 +1,36 @@
opam-version: "2.0"
maintainer: "Gabriel Scherer <gabriel.scherer@gmail.com>"
authors: ["Nicolas Pouillard" "Berke Durak"]
homepage: "https://github.com/ocaml/ocamlbuild/"
bug-reports: "https://github.com/ocaml/ocamlbuild/issues"
license: "LGPL-2 with OCaml linking exception"
doc: "https://github.com/ocaml/ocamlbuild/blob/master/manual/manual.adoc"
dev-repo: "git+https://github.com/ocaml/ocamlbuild.git"
build: [
[
make
"-f"
"configure.make"
"all"
"OCAMLBUILD_PREFIX=%{prefix}%"
"OCAMLBUILD_BINDIR=%{bin}%"
"OCAMLBUILD_LIBDIR=%{lib}%"
"OCAMLBUILD_MANDIR=%{man}%"
"OCAML_NATIVE=%{ocaml:native}%"
"OCAML_NATIVE_TOOLS=%{ocaml:native}%"
]
[make "check-if-preinstalled" "all" "opam-install"]
]
conflicts: [
"base-ocamlbuild"
"ocamlfind" {< "1.6.2"}
]
synopsis:
"OCamlbuild is a build system with builtin rules to easily build most OCaml projects."
depends: [
"ocaml" {>= "4.03"}
]
url {
src: "https://github.com/ocaml/ocamlbuild/archive/0.14.0.tar.gz"
checksum: "sha256=87b29ce96958096c0a1a8eeafeb6268077b2d11e1bf2b3de0f5ebc9cf8d42e78"
}

19
windows.esy.lock/opam/ocamlfind.1.8.0/files/no-awk-check.patch

@ -0,0 +1,19 @@ @@ -0,0 +1,19 @@
commit 40142bc941e6e308686e86be6fc2da92f346a22f
Author: Kate <kit.ty.kate@disroot.org>
Date: Tue Mar 19 16:29:06 2019 +0000
Remove awk from the set of checked unix tools as it's not used anywhere
diff --git a/configure b/configure
index d9b587c..20e8dca 100755
--- a/configure
+++ b/configure
@@ -184,7 +184,7 @@ echo "Configuring core..."
# Some standard Unix tools must be available:
-for tool in sed awk ocaml ocamlc uname rm make cat m4 dirname basename; do
+for tool in sed ocaml ocamlc uname rm make cat m4 dirname basename; do
if in_path $tool; then true; else
echo "configure: $tool not in PATH; this is required" 1>&2
exit 1

4
windows.esy.lock/opam/ocamlfind.1.8.0/files/ocaml-stub

@ -0,0 +1,4 @@ @@ -0,0 +1,4 @@
#!/bin/sh
BINDIR=$(dirname "$(command -v ocamlc)")
"$BINDIR/ocaml" -I "$OCAML_TOPLEVEL_PATH" "$@"

6
windows.esy.lock/opam/ocamlfind.1.8.0/files/ocamlfind.install

@ -0,0 +1,6 @@ @@ -0,0 +1,6 @@
bin: [
"src/findlib/ocamlfind" {"ocamlfind"}
"?src/findlib/ocamlfind_opt" {"ocamlfind"}
"?tools/safe_camlp4"
]
toplevel: ["src/findlib/topfind"]

68
windows.esy.lock/opam/ocamlfind.1.8.0/opam

@ -0,0 +1,68 @@ @@ -0,0 +1,68 @@
opam-version: "2.0"
maintainer: "Thomas Gazagnaire <thomas@gazagnaire.org>"
homepage: "http://projects.camlcity.org/projects/findlib.html"
bug-reports: "https://gitlab.camlcity.org/gerd/lib-findlib/issues"
dev-repo: "git+https://gitlab.camlcity.org/gerd/lib-findlib.git"
patches: ["no-awk-check.patch"]
build: [
[
"./configure"
"-bindir"
bin
"-sitelib"
lib
"-mandir"
man
"-config"
"%{lib}%/findlib.conf"
"-no-custom"
"-no-camlp4" {!ocaml:preinstalled & ocaml:version >= "4.02.0"}
"-no-topfind" {ocaml:preinstalled}
]
[make "all"]
[make "opt"] {ocaml:native}
]
install: [
[make "install"]
["install" "-m" "0755" "ocaml-stub" "%{bin}%/ocaml"] {ocaml:preinstalled}
]
remove: [
["ocamlfind" "remove" "bytes"]
[
"./configure"
"-bindir"
bin
"-sitelib"
lib
"-mandir"
man
"-config"
"%{lib}%/findlib.conf"
"-no-camlp4" {!ocaml:preinstalled & ocaml:version >= "4.02.0"}
"-no-topfind" {ocaml:preinstalled}
]
[make "uninstall"]
["rm" "-f" "%{bin}%/ocaml"] {ocaml:preinstalled}
]
depends: [
"ocaml" {>= "4.00.0"}
"conf-m4" {build}
]
synopsis: "A library manager for OCaml"
description: """
Findlib is a library manager for OCaml. It provides a convention how
to store libraries, and a file format ("META") to describe the
properties of libraries. There is also a tool (ocamlfind) for
interpreting the META files, so that it is very easy to use libraries
in programs and scripts."""
authors: "Gerd Stolpmann <gerd@gerd-stolpmann.de>"
extra-files: [
["ocamlfind.install" "md5=06f2c282ab52d93aa6adeeadd82a2543"]
["ocaml-stub" "md5=181f259c9e0bad9ef523e7d4abfdf87a"]
["no-awk-check.patch" "md5=0378123bf1a45fccdea434c053ddb687"]
]
url {
src: "http://download.camlcity.org/download/findlib-1.8.0.tar.gz"
checksum: "md5=a710c559667672077a93d34eb6a42e5b"
mirrors: "http://download2.camlcity.org/download/findlib-1.8.0.tar.gz"
}

43
windows.esy.lock/opam/parsexp.v0.12.0/opam

@ -0,0 +1,43 @@ @@ -0,0 +1,43 @@
opam-version: "2.0"
maintainer: "opensource@janestreet.com"
authors: ["Jane Street Group, LLC <opensource@janestreet.com>"]
homepage: "https://github.com/janestreet/parsexp"
bug-reports: "https://github.com/janestreet/parsexp/issues"
dev-repo: "git+https://github.com/janestreet/parsexp.git"
doc: "https://ocaml.janestreet.com/ocaml-core/latest/doc/parsexp/index.html"
license: "MIT"
build: [
["dune" "build" "-p" name "-j" jobs]
]
depends: [
"ocaml" {>= "4.04.2"}
"base" {>= "v0.12" & < "v0.13"}
"sexplib0" {>= "v0.12" & < "v0.13"}
"dune" {build & >= "1.5.1"}
]
synopsis: "S-expression parsing library"
description: "
This library provides generic parsers for parsing S-expressions from
strings or other medium.
The library is focused on performances but still provide full generic
parsers that can be used with strings, bigstrings, lexing buffers,
character streams or any other sources effortlessly.
It provides three different class of parsers:
- the normal parsers, producing [Sexp.t] or [Sexp.t list] values
- the parsers with positions, building compact position sequences so
that one can recover original positions in order to report properly
located errors at little cost
- the Concrete Syntax Tree parsers, produce values of type
[Parsexp.Cst.t] which record the concrete layout of the s-expression
syntax, including comments
This library is portable and doesn't provide IO functions. To read
s-expressions from files or other external sources, you should use
parsexp_io.
"
url {
src: "https://ocaml.janestreet.com/ocaml-core/v0.12/files/parsexp-v0.12.0.tar.gz"
checksum: "md5=741b2c6f59b9618e3affabaa34d468a2"
}

23
windows.esy.lock/opam/ppx_derivers.1.2.1/opam

@ -0,0 +1,23 @@ @@ -0,0 +1,23 @@
opam-version: "2.0"
maintainer: "jeremie@dimino.org"
authors: ["Jérémie Dimino"]
license: "BSD3"
homepage: "https://github.com/ocaml-ppx/ppx_derivers"
bug-reports: "https://github.com/ocaml-ppx/ppx_derivers/issues"
dev-repo: "git://github.com/ocaml-ppx/ppx_derivers.git"
build: [
["dune" "build" "-p" name "-j" jobs]
]
depends: [
"ocaml"
"dune" {build}
]
synopsis: "Shared [@@deriving] plugin registry"
description: """
Ppx_derivers is a tiny package whose sole purpose is to allow
ppx_deriving and ppx_type_conv to inter-operate gracefully when linked
as part of the same ocaml-migrate-parsetree driver."""
url {
src: "https://github.com/ocaml-ppx/ppx_derivers/archive/1.2.1.tar.gz"
checksum: "md5=5dc2bf130c1db3c731fe0fffc5648b41"
}

48
windows.esy.lock/opam/ppx_deriving.4.2.1/opam

@ -0,0 +1,48 @@ @@ -0,0 +1,48 @@
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"
}

26
windows.esy.lock/opam/ppx_fields_conv.v0.12.0/opam

@ -0,0 +1,26 @@ @@ -0,0 +1,26 @@
opam-version: "2.0"
maintainer: "opensource@janestreet.com"
authors: ["Jane Street Group, LLC <opensource@janestreet.com>"]
homepage: "https://github.com/janestreet/ppx_fields_conv"
bug-reports: "https://github.com/janestreet/ppx_fields_conv/issues"
dev-repo: "git+https://github.com/janestreet/ppx_fields_conv.git"
doc: "https://ocaml.janestreet.com/ocaml-core/latest/doc/ppx_fields_conv/index.html"
license: "MIT"
build: [
["dune" "build" "-p" name "-j" jobs]
]
depends: [
"ocaml" {>= "4.04.2"}
"base" {>= "v0.12" & < "v0.13"}
"fieldslib" {>= "v0.12" & < "v0.13"}
"dune" {build & >= "1.5.1"}
"ppxlib" {>= "0.5.0"}
]
synopsis: "Generation of accessor and iteration functions for ocaml records"
description: "
Part of the Jane Street's PPX rewriters collection.
"
url {
src: "https://ocaml.janestreet.com/ocaml-core/v0.12/files/ppx_fields_conv-v0.12.0.tar.gz"
checksum: "md5=5bdf701197abc0dd4145a489912e49aa"
}

25
windows.esy.lock/opam/ppx_let.v0.12.0/opam

@ -0,0 +1,25 @@ @@ -0,0 +1,25 @@
opam-version: "2.0"
maintainer: "opensource@janestreet.com"
authors: ["Jane Street Group, LLC <opensource@janestreet.com>"]
homepage: "https://github.com/janestreet/ppx_let"
bug-reports: "https://github.com/janestreet/ppx_let/issues"
dev-repo: "git+https://github.com/janestreet/ppx_let.git"
doc: "https://ocaml.janestreet.com/ocaml-core/latest/doc/ppx_let/index.html"
license: "MIT"
build: [
["dune" "build" "-p" name "-j" jobs]
]
depends: [
"ocaml" {>= "4.04.2"}
"base" {>= "v0.12" & < "v0.13"}
"dune" {build & >= "1.5.1"}
"ppxlib" {>= "0.5.0"}
]
synopsis: "Monadic let-bindings"
description: "
Part of the Jane Street's PPX rewriters collection.
"
url {
src: "https://ocaml.janestreet.com/ocaml-core/v0.12/files/ppx_let-v0.12.0.tar.gz"
checksum: "md5=8ebaa03cb252e29c3152cf32e5769e83"
}

26
windows.esy.lock/opam/ppx_sexp_conv.v0.12.0/opam

@ -0,0 +1,26 @@ @@ -0,0 +1,26 @@
opam-version: "2.0"
maintainer: "opensource@janestreet.com"
authors: ["Jane Street Group, LLC <opensource@janestreet.com>"]
homepage: "https://github.com/janestreet/ppx_sexp_conv"
bug-reports: "https://github.com/janestreet/ppx_sexp_conv/issues"
dev-repo: "git+https://github.com/janestreet/ppx_sexp_conv.git"
doc: "https://ocaml.janestreet.com/ocaml-core/latest/doc/ppx_sexp_conv/index.html"
license: "MIT"
build: [
["dune" "build" "-p" name "-j" jobs]
]
depends: [
"ocaml" {>= "4.04.2"}
"base" {>= "v0.12" & < "v0.13"}
"sexplib0" {>= "v0.12" & < "v0.13"}
"dune" {build & >= "1.5.1"}
"ppxlib" {>= "0.5.0"}
]
synopsis: "[@@deriving] plugin to generate S-expression conversion functions"
description: "
Part of the Jane Street's PPX rewriters collection.
"
url {
src: "https://ocaml.janestreet.com/ocaml-core/v0.12/files/ppx_sexp_conv-v0.12.0.tar.gz"
checksum: "md5=648ac430b4a74c2297705d260b66778f"
}

21
windows.esy.lock/opam/ppx_tools.5.1+4.06.0/opam

@ -0,0 +1,21 @@ @@ -0,0 +1,21 @@
opam-version: "2.0"
maintainer: "alain.frisch@lexifi.com"
authors: [ "Alain Frisch <alain.frisch@lexifi.com>" ]
license: "MIT"
homepage: "https://github.com/ocaml-ppx/ppx_tools"
bug-reports: "https://github.com/ocaml-ppx/ppx_tools/issues"
dev-repo: "git://github.com/ocaml-ppx/ppx_tools.git"
tags: [ "syntax" ]
build: [[make "all"]]
install: [[make "install"]]
remove: [["ocamlfind" "remove" "ppx_tools"]]
depends: [
"ocaml" {>= "4.06.0" & < "4.08"}
"ocamlfind" {>= "1.5.0"}
]
synopsis: "Tools for authors of ppx rewriters and other syntactic tools"
flags: light-uninstall
url {
src: "https://github.com/ocaml-ppx/ppx_tools/archive/5.1+4.06.0.tar.gz"
checksum: "md5=6ba2e9690b1f579ba562b86022d1c308"
}

30
windows.esy.lock/opam/ppx_tools_versioned.5.2.2/opam

@ -0,0 +1,30 @@ @@ -0,0 +1,30 @@
opam-version: "2.0"
maintainer: "frederic.bour@lakaban.net"
authors: [
"Frédéric Bour <frederic.bour@lakaban.net>"
"Alain Frisch <alain.frisch@lexifi.com>"
]
license: "MIT"
homepage: "https://github.com/ocaml-ppx/ppx_tools_versioned"
bug-reports: "https://github.com/ocaml-ppx/ppx_tools_versioned/issues"
dev-repo: "git://github.com/ocaml-ppx/ppx_tools_versioned.git"
tags: [ "syntax" ]
build: [
["dune" "subst"] {pinned}
["dune" "build" "-p" name "-j" jobs]
["dune" "runtest" "-p" name "-j" jobs] {with-test}
]
depends: [
"ocaml" {>= "4.02.0"}
"dune" {build & >= "1.0"}
"ocaml-migrate-parsetree" {>= "1.0.10"}
]
synopsis: "A variant of ppx_tools based on ocaml-migrate-parsetree"
url {
src:
"https://github.com/ocaml-ppx/ppx_tools_versioned/archive/5.2.2.tar.gz"
checksum: [
"md5=f78a3c2b4cc3b92702e1f7096a6125fa"
"sha512=68c168ebc01af46fe8766ad7e36cc778caabb97d8eb303db284d106450cb79974c2a640ce459e197630b9e84b02caa24b59c97c9a8d39ddadc7efc7284e42a70"
]
}

42
windows.esy.lock/opam/ppxlib.0.6.0/opam

@ -0,0 +1,42 @@ @@ -0,0 +1,42 @@
opam-version: "2.0"
maintainer: "opensource@janestreet.com"
authors: ["Jane Street Group, LLC <opensource@janestreet.com>"]
homepage: "https://github.com/ocaml-ppx/ppxlib"
bug-reports: "https://github.com/ocaml-ppx/ppxlib/issues"
dev-repo: "git+https://github.com/ocaml-ppx/ppxlib.git"
doc: "https://ocaml-ppx.github.io/ppxlib/"
license: "MIT"
build: [
["dune" "subst"] {pinned}
["dune" "build" "-p" name "-j" jobs]
]
run-test: [
["dune" "runtest" "-p" name "-j" jobs] { ocaml >= "4.06" }
]
depends: [
"ocaml" {>= "4.04.1"}
"base" {>= "v0.11.0" & < "v0.13"}
"dune" {build}
"ocaml-compiler-libs" {>= "v0.11.0"}
"ocaml-migrate-parsetree" {>= "1.0.9"}
"ppx_derivers" {>= "1.0"}
"stdio" {>= "v0.11.0" & < "v0.13"}
"ocamlfind" {with-test}
]
synopsis: "Base library and tools for ppx rewriters"
description: """
A comprehensive toolbox for ppx development. It features:
- a OCaml AST / parser / pretty-printer snapshot,to create a full
frontend independent of the version of OCaml;
- a library for library for ppx rewriters in general, and type-driven
code generators in particular;
- a feature-full driver for OCaml AST transformers;
- a quotation mechanism allowing to write values representing the
OCaml AST in the OCaml syntax;
- a generator of open recursion classes from type definitions.
"""
url {
src:
"https://github.com/ocaml-ppx/ppxlib/releases/download/0.6.0/ppxlib-0.6.0.tbz"
checksum: "md5=e2d129139891c135acc6d52a3fa9f731"
}

42
windows.esy.lock/opam/re.1.9.0/opam

@ -0,0 +1,42 @@ @@ -0,0 +1,42 @@
opam-version: "2.0"
maintainer: "rudi.grinberg@gmail.com"
authors: [
"Jerome Vouillon"
"Thomas Gazagnaire"
"Anil Madhavapeddy"
"Rudi Grinberg"
"Gabriel Radanne"
]
license: "LGPL-2.0 with OCaml linking exception"
homepage: "https://github.com/ocaml/ocaml-re"
bug-reports: "https://github.com/ocaml/ocaml-re/issues"
dev-repo: "git+https://github.com/ocaml/ocaml-re.git"
build: [
["dune" "subst"] {pinned}
["dune" "build" "-p" name "-j" jobs]
["dune" "runtest" "-p" name "-j" jobs] {with-test}
]
depends: [
"ocaml" {>= "4.02"}
"dune" {build}
"ounit" {with-test}
"seq"
]
synopsis: "RE is a regular expression library for OCaml"
description: """
Pure OCaml regular expressions with:
* Perl-style regular expressions (module Re.Perl)
* Posix extended regular expressions (module Re.Posix)
* Emacs-style regular expressions (module Re.Emacs)
* Shell-style file globbing (module Re.Glob)
* Compatibility layer for OCaml's built-in Str module (module Re.Str)
"""
url {
src:
"https://github.com/ocaml/ocaml-re/releases/download/1.9.0/re-1.9.0.tbz"
checksum: "md5=bddaed4f386a22cace7850c9c7dac296"
}

22
windows.esy.lock/opam/result.1.4/opam

@ -0,0 +1,22 @@ @@ -0,0 +1,22 @@
opam-version: "2.0"
maintainer: "opensource@janestreet.com"
authors: ["Jane Street Group, LLC <opensource@janestreet.com>"]
homepage: "https://github.com/janestreet/result"
dev-repo: "git+https://github.com/janestreet/result.git"
bug-reports: "https://github.com/janestreet/result/issues"
license: "BSD3"
build: [["dune" "build" "-p" name "-j" jobs]]
depends: [
"ocaml"
"dune" {build & >= "1.0"}
]
synopsis: "Compatibility Result module"
description: """
Projects that want to use the new result type defined in OCaml >= 4.03
while staying compatible with older version of OCaml should use the
Result module defined in this library."""
url {
src:
"https://github.com/janestreet/result/archive/1.4.tar.gz"
checksum: "md5=d3162dbc501a2af65c8c71e0866541da"
}

23
windows.esy.lock/opam/seq.0.1/opam

@ -0,0 +1,23 @@ @@ -0,0 +1,23 @@
opam-version: "2.0"
maintainer: "simon.cruanes.2007@m4x.org"
authors: "Simon Cruanes"
homepage: "https://github.com/c-cube/seq/"
bug-reports: "https://github.com/c-cube/seq/issues"
license: "GPL"
tags: ["iterator" "seq" "pure" "list" "compatibility" "cascade"]
dev-repo: "git+https://github.com/c-cube/seq.git"
build: [make "build"]
install: [make "install"]
remove: [ "ocamlfind" "remove" "seq" ]
depends: [
"ocaml" {< "4.07.0"}
"ocamlfind" {build}
"ocamlbuild" {build}
]
synopsis:
"Compatibility package for OCaml's standard iterator type starting from 4.07."
flags: light-uninstall
url {
src: "https://github.com/c-cube/seq/archive/0.1.tar.gz"
checksum: "md5=0e87f9709541ed46ecb6f414bc31458c"
}

29
windows.esy.lock/opam/sexplib.v0.12.0/opam

@ -0,0 +1,29 @@ @@ -0,0 +1,29 @@
opam-version: "2.0"
maintainer: "opensource@janestreet.com"
authors: ["Jane Street Group, LLC <opensource@janestreet.com>"]
homepage: "https://github.com/janestreet/sexplib"
bug-reports: "https://github.com/janestreet/sexplib/issues"
dev-repo: "git+https://github.com/janestreet/sexplib.git"
doc: "https://ocaml.janestreet.com/ocaml-core/latest/doc/sexplib/index.html"
license: "MIT"
build: [
["dune" "build" "-p" name "-j" jobs]
]
depends: [
"ocaml" {>= "4.04.2"}
"parsexp" {>= "v0.12" & < "v0.13"}
"sexplib0" {>= "v0.12" & < "v0.13"}
"dune" {build & >= "1.5.1"}
"num"
]
synopsis: "Library for serializing OCaml values to and from S-expressions"
description: "
Part of Jane Street's Core library
The Core suite of libraries is an industrial strength alternative to
OCaml's standard library that was developed by Jane Street, the
largest industrial user of OCaml.
"
url {
src: "https://ocaml.janestreet.com/ocaml-core/v0.12/files/sexplib-v0.12.0.tar.gz"
checksum: "md5=a7f9f8a414aed6cc56901199cda020f6"
}

26
windows.esy.lock/opam/sexplib0.v0.12.0/opam

@ -0,0 +1,26 @@ @@ -0,0 +1,26 @@
opam-version: "2.0"
maintainer: "opensource@janestreet.com"
authors: ["Jane Street Group, LLC <opensource@janestreet.com>"]
homepage: "https://github.com/janestreet/sexplib0"
bug-reports: "https://github.com/janestreet/sexplib0/issues"
dev-repo: "git+https://github.com/janestreet/sexplib0.git"
doc: "https://ocaml.janestreet.com/ocaml-core/latest/doc/sexplib0/index.html"
license: "MIT"
build: [
["dune" "build" "-p" name "-j" jobs]
]
depends: [
"ocaml" {>= "4.04.2"}
"dune" {build & >= "1.5.1"}
]
synopsis: "Library containing the definition of S-expressions and some base converters"
description: "
Part of Jane Street's Core library
The Core suite of libraries is an industrial strength alternative to
OCaml's standard library that was developed by Jane Street, the
largest industrial user of OCaml.
"
url {
src: "https://ocaml.janestreet.com/ocaml-core/v0.12/files/sexplib0-v0.12.0.tar.gz"
checksum: "md5=2486a25d3a94da9a94acc018b5f09061"
}

27
windows.esy.lock/opam/stdio.v0.12.0/opam

@ -0,0 +1,27 @@ @@ -0,0 +1,27 @@
opam-version: "2.0"
maintainer: "opensource@janestreet.com"
authors: ["Jane Street Group, LLC <opensource@janestreet.com>"]
homepage: "https://github.com/janestreet/stdio"
bug-reports: "https://github.com/janestreet/stdio/issues"
dev-repo: "git+https://github.com/janestreet/stdio.git"
doc: "https://ocaml.janestreet.com/ocaml-core/latest/doc/stdio/index.html"
license: "MIT"
build: [
["dune" "build" "-p" name "-j" jobs]
]
depends: [
"ocaml" {>= "4.04.2"}
"base" {>= "v0.12" & < "v0.13"}
"dune" {build & >= "1.5.1"}
]
synopsis: "Standard IO library for OCaml"
description: "
Stdio implements simple input/output functionalities for OCaml.
It re-exports the input/output functions of the OCaml standard
libraries using a more consistent API.
"
url {
src: "https://ocaml.janestreet.com/ocaml-core/v0.12/files/stdio-v0.12.0.tar.gz"
checksum: "md5=b261ff2d5667fde960c95e50cff668da"
}

27
windows.esy.lock/opam/stdlib-shims.0.1.0/opam

@ -0,0 +1,27 @@ @@ -0,0 +1,27 @@
opam-version: "2.0"
maintainer: "The stdlib-shims programmers"
authors: "The stdlib-shims programmers"
homepage: "https://github.com/ocaml/stdlib-shims"
doc: "https://ocaml.github.io/stdlib-shims/"
dev-repo: "git+https://github.com/ocaml/stdlib-shims.git"
bug-reports: "https://github.com/ocaml/stdlib-shims/issues"
tags: ["stdlib" "compatibility" "org:ocaml"]
license: ["typeof OCaml system"]
depends: [
"dune" {build}
"ocaml" {>= "4.02.3"}
]
build: [ "dune" "build" "-p" name "-j" jobs ]
synopsis: "Backport some of the new stdlib features to older compiler"
description: """
Backport some of the new stdlib features to older compiler,
such as the Stdlib module.
This allows projects that require compatibility with older compiler to
use these new features in their code.
"""
url {
src:
"https://github.com/ocaml/stdlib-shims/releases/download/0.1.0/stdlib-shims-0.1.0.tbz"
checksum: "md5=12b5704eed70c6bff5ac39a16db1425d"
}

27
windows.esy.lock/opam/stringext.1.5.0/opam

@ -0,0 +1,27 @@ @@ -0,0 +1,27 @@
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"
}

49
windows.esy.lock/opam/topkg.1.0.0/opam

@ -0,0 +1,49 @@ @@ -0,0 +1,49 @@
opam-version: "2.0"
maintainer: "Daniel Bünzli <daniel.buenzl i@erratique.ch>"
authors: ["Daniel Bünzli <daniel.buenzl i@erratique.ch>"]
homepage: "http://erratique.ch/software/topkg"
doc: "http://erratique.ch/software/topkg/doc"
license: "ISC"
dev-repo: "git+http://erratique.ch/repos/topkg.git"
bug-reports: "https://github.com/dbuenzli/topkg/issues"
tags: ["packaging" "ocamlbuild" "org:erratique"]
depends: [
"ocaml" {>= "4.01.0"}
"ocamlfind" {build & >= "1.6.1"}
"ocamlbuild"
"result" ]
build: [[
"ocaml" "pkg/pkg.ml" "build"
"--pkg-name" name
"--dev-pkg" "%{pinned}%" ]]
synopsis: """The transitory OCaml software packager"""
description: """\
Topkg is a packager for distributing OCaml software. It provides an
API to describe the files a package installs in a given build
configuration and to specify information about the package's
distribution, creation and publication procedures.
The optional topkg-care package provides the `topkg` command line tool
which helps with various aspects of a package's life cycle: creating
and linting a distribution, releasing it on the WWW, publish its
documentation, add it to the OCaml opam repository, etc.
Topkg is distributed under the ISC license and has **no**
dependencies. This is what your packages will need as a *build*
dependency.
Topkg-care is distributed under the ISC license it depends on
[fmt][fmt], [logs][logs], [bos][bos], [cmdliner][cmdliner],
[webbrowser][webbrowser] and `opam-format`.
[fmt]: http://erratique.ch/software/fmt
[logs]: http://erratique.ch/software/logs
[bos]: http://erratique.ch/software/bos
[cmdliner]: http://erratique.ch/software/cmdliner
[webbrowser]: http://erratique.ch/software/webbrowser
"""
url {
src: "http://erratique.ch/software/topkg/releases/topkg-1.0.0.tbz"
checksum: "md5=e3d76bda06bf68cb5853caf6627da603"
}

36
windows.esy.lock/opam/uchar.0.0.2/opam

@ -0,0 +1,36 @@ @@ -0,0 +1,36 @@
opam-version: "2.0"
maintainer: "Daniel Bünzli <daniel.buenzl i@erratique.ch>"
authors: ["Daniel Bünzli <daniel.buenzl i@erratique.ch>"]
homepage: "http://ocaml.org"
doc: "https://ocaml.github.io/uchar/"
dev-repo: "git+https://github.com/ocaml/uchar.git"
bug-reports: "https://github.com/ocaml/uchar/issues"
tags: [ "text" "character" "unicode" "compatibility" "org:ocaml.org" ]
license: "typeof OCaml system"
depends: [
"ocaml" {>= "3.12.0"}
"ocamlbuild" {build}
]
build: [
["ocaml" "pkg/git.ml"]
[
"ocaml"
"pkg/build.ml"
"native=%{ocaml:native}%"
"native-dynlink=%{ocaml:native-dynlink}%"
]
]
synopsis: "Compatibility library for OCaml's Uchar module"
description: """
The `uchar` package provides a compatibility library for the
[`Uchar`][1] module introduced in OCaml 4.03.
The `uchar` package is distributed under the license of the OCaml
compiler. See [LICENSE](LICENSE) for details.
[1]: http://caml.inria.fr/pub/docs/manual-ocaml/libref/Uchar.html"""
url {
src:
"https://github.com/ocaml/uchar/releases/download/v0.0.2/uchar-0.0.2.tbz"
checksum: "md5=c9ba2c738d264c420c642f7bb1cf4a36"
}

33
windows.esy.lock/opam/uri.2.2.0/opam

@ -0,0 +1,33 @@ @@ -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: """
This is an OCaml implementation of the [RFC3986](http://tools.ietf.org/html/rfc3986) specification
for parsing URI or URLs.
"""
depends: [
"ocaml" {>= "4.04.0"}
"dune" {build & >= "1.2.0"}
"ounit" {with-test & >= "1.0.2"}
"ppx_sexp_conv" {build & >= "v0.9.0" & < "v0.13"}
"re" {>= "1.7.2"}
"sexplib0" {< "v0.13"}
"stringext" {>= "1.4.0"}
]
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/v2.2.0/uri-v2.2.0.tbz"
checksum: "md5=e52e17fc6cc3491ab44994e6ebc5664c"
}

40
windows.esy.lock/opam/uutf.1.0.2/opam

@ -0,0 +1,40 @@ @@ -0,0 +1,40 @@
opam-version: "2.0"
maintainer: "Daniel Bünzli <daniel.buenzl i@erratique.ch>"
authors: ["Daniel Bünzli <daniel.buenzl i@erratique.ch>"]
homepage: "http://erratique.ch/software/uutf"
doc: "http://erratique.ch/software/uutf/doc/Uutf"
dev-repo: "git+http://erratique.ch/repos/uutf.git"
bug-reports: "https://github.com/dbuenzli/uutf/issues"
tags: [ "unicode" "text" "utf-8" "utf-16" "codec" "org:erratique" ]
license: "ISC"
depends: [
"ocaml" {>= "4.01.0"}
"ocamlfind" {build}
"ocamlbuild" {build}
"topkg" {build}
"uchar"
]
depopts: ["cmdliner"]
conflicts: ["cmdliner" { < "0.9.6"} ]
build: [[
"ocaml" "pkg/pkg.ml" "build"
"--pinned" "%{pinned}%"
"--with-cmdliner" "%{cmdliner:installed}%" ]]
synopsis: """Non-blocking streaming Unicode codec for OCaml"""
description: """\
Uutf is a non-blocking streaming codec to decode and encode the UTF-8,
UTF-16, UTF-16LE and UTF-16BE encoding schemes. It can efficiently
work character by character without blocking on IO. Decoders perform
character position tracking and support newline normalization.
Functions are also provided to fold over the characters of UTF encoded
OCaml string values and to directly encode characters in OCaml
Buffer.t values.
Uutf has no dependency and is distributed under the ISC license.
"""
url {
archive: "http://erratique.ch/software/uutf/releases/uutf-1.0.2.tbz"
checksum: "a7c542405a39630c689a82bd7ef2292c"
}

38
windows.esy.lock/opam/yojson.1.7.0/opam

@ -0,0 +1,38 @@ @@ -0,0 +1,38 @@
opam-version: "2.0"
maintainer: "martin@mjambon.com"
authors: ["Martin Jambon"]
homepage: "https://github.com/ocaml-community/yojson"
bug-reports: "https://github.com/ocaml-community/yojson/issues"
dev-repo: "git+https://github.com/ocaml-community/yojson.git"
doc: "https://ocaml-community.github.io/yojson/"
build: [
["dune" "subst"] {pinned}
["dune" "build" "-p" name "-j" jobs]
]
run-test: [["dune" "runtest" "-p" name "-j" jobs]]
depends: [
"ocaml" {>= "4.02.3"}
"dune" {build}
"cppo" {build}
"easy-format"
"biniou" {>= "1.2.0"}
"alcotest" {with-test & >= "0.8.5"}
]
synopsis:
"Yojson is an optimized parsing and printing library for the JSON format"
description: """
Yojson is an optimized parsing and printing library for the JSON format.
It addresses a few shortcomings of json-wheel including 2x speedup,
polymorphic variants and optional syntax for tuples and variants.
ydump is a pretty-printing command-line program provided with the
yojson package.
The program atdgen can be used to derive OCaml-JSON serializers and
deserializers from type definitions."""
url {
src:
"https://github.com/ocaml-community/yojson/releases/download/1.7.0/yojson-1.7.0.tbz"
checksum: "md5=b89d39ca3f8c532abe5f547ad3b8f84d"
}

30
windows.esy.lock/overrides/1538fd5a435089fe97df4df38d52bc7a/.ci/build.yaml

@ -0,0 +1,30 @@ @@ -0,0 +1,30 @@
parameters:
host: ''
pool: ''
sign: false
jobs:
- job: ${{ parameters.host }}
pool: ${{ parameters.pool }}
steps:
- ${{ if eq(parameters.sign, 'true') }}:
- script: 'npm install -g esy@latest --unsafe-perm'
displayName: 'Installing deps'
- ${{ if eq(parameters.sign, 'false') }}:
- script: 'sudo npm install -g esy@latest --unsafe-perm'
displayName: 'Installing deps'
- script: mkdir -p test_dir
displayName: 'make test dir'
- bash: |
cd test_dir
echo '{"dependencies": {"@esy-packages/esy-openssl" : "esy-packages/esy-openssl:package.json#'$(git rev-parse --short HEAD)'"}}' > package.json
displayName: 'create test package.json'
- script: |
cd test_dir
esy install
displayName: 'Install esy-deps'
- script: |
cd test_dir
esy x which openssl
esy sh ../esy/test.sh
displayName: 'Building and dry run'

1
windows.esy.lock/overrides/1538fd5a435089fe97df4df38d52bc7a/.gitignore vendored

@ -0,0 +1 @@ @@ -0,0 +1 @@
test_dir

15
windows.esy.lock/overrides/1538fd5a435089fe97df4df38d52bc7a/.travis.yml

@ -0,0 +1,15 @@ @@ -0,0 +1,15 @@
language: node_js
node_js:
- 8
os:
- linux
- osx
install:
- npm install --global esy@0.3.0
- esy install
script:
- travis_wait 40 esy build
cache:
timeout: 360
directories:
- '$HOME/.esy/'

98
windows.esy.lock/overrides/1538fd5a435089fe97df4df38d52bc7a/README.md

@ -0,0 +1,98 @@ @@ -0,0 +1,98 @@
### `esy` build status
[![Build status](https://ci.appveyor.com/api/projects/status/54y3s6ip6ti7y3vm/branch/esy?svg=true)](https://ci.appveyor.com/project/bryphe/esy-openssl/branch/esy)
[![Build Status](https://travis-ci.org/bryphe/esy-openssl.svg?branch=esy)](https://travis-ci.org/bryphe/esy-openssl)
-----------
OpenSSL 1.1.1 11 Sep 2018
Copyright (c) 1998-2018 The OpenSSL Project
Copyright (c) 1995-1998 Eric A. Young, Tim J. Hudson
All rights reserved.
DESCRIPTION
-----------
The OpenSSL Project is a collaborative effort to develop a robust,
commercial-grade, fully featured, and Open Source toolkit implementing the
Transport Layer Security (TLS) protocols (including SSLv3) as well as a
full-strength general purpose cryptographic library.
OpenSSL is descended from the SSLeay library developed by Eric A. Young
and Tim J. Hudson. The OpenSSL toolkit is licensed under a dual-license (the
OpenSSL license plus the SSLeay license), which means that you are free to
get and use it for commercial and non-commercial purposes as long as you
fulfill the conditions of both licenses.
OVERVIEW
--------
The OpenSSL toolkit includes:
libssl (with platform specific naming):
Provides the client and server-side implementations for SSLv3 and TLS.
libcrypto (with platform specific naming):
Provides general cryptographic and X.509 support needed by SSL/TLS but
not logically part of it.
openssl:
A command line tool that can be used for:
Creation of key parameters
Creation of X.509 certificates, CSRs and CRLs
Calculation of message digests
Encryption and decryption
SSL/TLS client and server tests
Handling of S/MIME signed or encrypted mail
And more...
INSTALLATION
------------
See the appropriate file:
INSTALL Linux, Unix, Windows, OpenVMS, ...
NOTES.* INSTALL addendums for different platforms
SUPPORT
-------
See the OpenSSL website www.openssl.org for details on how to obtain
commercial technical support. Free community support is available through the
openssl-users email list (see
https://www.openssl.org/community/mailinglists.html for further details).
If you have any problems with OpenSSL then please take the following steps
first:
- Download the latest version from the repository
to see if the problem has already been addressed
- Configure with no-asm
- Remove compiler optimization flags
If you wish to report a bug then please include the following information
and create an issue on GitHub:
- OpenSSL version: output of 'openssl version -a'
- Configuration data: output of 'perl configdata.pm --dump'
- OS Name, Version, Hardware platform
- Compiler Details (name, version)
- Application Details (name, version)
- Problem Description (steps that will reproduce the problem, if known)
- Stack Traceback (if the application dumps core)
Just because something doesn't work the way you expect does not mean it
is necessarily a bug in OpenSSL. Use the openssl-users email list for this type
of query.
HOW TO CONTRIBUTE TO OpenSSL
----------------------------
See CONTRIBUTING
LEGALITIES
----------
A number of nations restrict the use or export of cryptography. If you
are potentially subject to such restrictions you should seek competent
professional legal advice before attempting to develop or distribute
cryptographic code.

19
windows.esy.lock/overrides/1538fd5a435089fe97df4df38d52bc7a/azure-pipelines.yml

@ -0,0 +1,19 @@ @@ -0,0 +1,19 @@
jobs:
- template: .ci/build.yaml # Template reference
parameters:
host: macOS
pool:
vmImage: 'macOS-10.13'
- template: .ci/build.yaml # Template reference
parameters:
host: Linux
pool:
vmImage: 'Ubuntu-16.04'
- template: .ci/build.yaml # Template reference
parameters:
host: Windows
pool:
vmImage: 'vs2017-win2016'
sign: true # Extra step on Windows only

16
windows.esy.lock/overrides/1538fd5a435089fe97df4df38d52bc7a/esy.lock.json

@ -0,0 +1,16 @@ @@ -0,0 +1,16 @@
{
"hash": "d10585b707b5ab54802c6c85154328fd",
"root": "root@path:./package.json",
"node": {
"root@path:./package.json": {
"record": {
"name": "root",
"version": "path:./package.json",
"source": "path:./package.json",
"files": [],
"opam": null
},
"dependencies": []
}
}
}

32
windows.esy.lock/overrides/1538fd5a435089fe97df4df38d52bc7a/esy/test.c

@ -0,0 +1,32 @@ @@ -0,0 +1,32 @@
/* From: https://wiki.openssl.org/index.php/Libcrypto_API */
#include <openssl/conf.h>
#include <openssl/evp.h>
#include <openssl/err.h>
int main(int arc, char *argv[])
{
/* Load the human readable error strings for libcrypto */
ERR_load_crypto_strings();
/* Load all digest and cipher algorithms */
OpenSSL_add_all_algorithms();
/* Load config file, and other important initialisation */
OPENSSL_config(NULL);
printf("OpenSSL successfully initialized.\n");
/* Clean up */
/* Removes all digests and ciphers */
EVP_cleanup();
/* if you omit the next, a small leak may be left when you make use of the BIO (low level API) for e.g. base64 transformations */
CRYPTO_cleanup_all_ex_data();
/* Remove error strings */
ERR_free_strings();
return 0;
}

31
windows.esy.lock/overrides/1538fd5a435089fe97df4df38d52bc7a/esy/test.sh

@ -0,0 +1,31 @@ @@ -0,0 +1,31 @@
pwd
mkdir -p _test
cd _test
if which x86_64-w64-mingw32-gcc; then
CC=x86_64-w64-mingw32-gcc
else
CC=gcc
fi
echo "Using compiler: $CC"
echo "include..."
#ls -a $INCLUDE
echo "lib.."
#ls -a $cur__lib
$CC ./../../esy/test.c -o ./test.exe -I$OPENSSL_INCLUDE_PATH -L$OPENSSL_LIB_PATH -lssl -lcrypto
#export PATH=$PATH:$cur__bin:$cur__lib
#export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$cur__lib
#echo "Augmented path: $PATH"
echo "Copying binaries..."
#cp $cur__bin/*.dll .
echo "Test executable path:"
ls -a .
./test.exe

38
windows.esy.lock/overrides/1538fd5a435089fe97df4df38d52bc7a/package.json

@ -0,0 +1,38 @@ @@ -0,0 +1,38 @@
{
"name": "esy-openssl",
"version": "0.1.0",
"description": "Mirror of OpenSSL",
"license": "Apache 2.0",
"source": "https://github.com/openssl/openssl/archive/OpenSSL_1_1_1b.tar.gz#1b09930a6099c6c8fa15dd6c6842e134e65e0a31",
"override": {
"build": [
["bash", "-c", "#{os == 'windows' ? './configure mingw64 --prefix=$cur__install --cross-compile-prefix=x86_64-w64-mingw32-' : './config --prefix=$cur__install'}"],
["make"]
],
"install": [
["make", "install"]
],
"buildsInSource": true,
"exportedEnv": {
"OPENSSL_LIB_PATH": {
"val": "#{self.lib}",
"scope": "global"
},
"OPENSSL_INCLUDE_PATH": {
"val": "#{self.install / 'include'}",
"scope": "global"
},
"OPENSSL_BIN_PATH": {
"val": "#{self.bin}",
"scope": "global"
},
"PKG_CONFIG_PATH": {
"val": "#{self.lib / 'pkgconfig'}",
"scope": "global"
}
}
},
"dependencies": {
"@esy-packages/esy-autoconf": "esy-packages/esy-autoconf:package.json#71a8836"
}
}

11
windows.esy.lock/overrides/opam__s__conf_pkg_config_opam__c__1.1_opam_override/package.json

@ -0,0 +1,11 @@ @@ -0,0 +1,11 @@
{
"build": [
[
"pkg-config",
"--help"
]
],
"dependencies": {
"yarn-pkg-config": "esy-ocaml/yarn-pkg-config#cca65f99674ed2d954d28788edeb8c57fada5ed0"
}
}

14
windows.esy.lock/overrides/opam__s__dune_opam__c__1.9.3_opam_override/package.json

@ -0,0 +1,14 @@ @@ -0,0 +1,14 @@
{
"build": [
[
"ocaml",
"bootstrap.ml"
],
[
"./boot.exe",
"--release",
"-j",
"4"
]
]
}

34
windows.esy.lock/overrides/opam__s__merlin_extend_opam__c__0.3_opam_override/files/merlin-extend-winfix-4.2.3007.patch

@ -0,0 +1,34 @@ @@ -0,0 +1,34 @@
--- ./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"

34
windows.esy.lock/overrides/opam__s__merlin_extend_opam__c__0.3_opam_override/files/merlin-extend-winfix.patch

@ -0,0 +1,34 @@ @@ -0,0 +1,34 @@
--- ./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"

15
windows.esy.lock/overrides/opam__s__merlin_extend_opam__c__0.3_opam_override/package.json

@ -0,0 +1,15 @@ @@ -0,0 +1,15 @@
{
"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"
]
]
}

20
windows.esy.lock/overrides/opam__s__num_opam__c__1.1_opam_override/files/num-1.1.patch

@ -0,0 +1,20 @@ @@ -0,0 +1,20 @@
--- ./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

24
windows.esy.lock/overrides/opam__s__num_opam__c__1.1_opam_override/package.json

@ -0,0 +1,24 @@ @@ -0,0 +1,24 @@
{
"build": [
[
"bash",
"-c",
"#{os == 'windows' ? 'patch -p1 < num-1.1.patch' : 'true'}"
],
[
"make"
]
],
"install": [
[
"make",
"findlib-install"
]
],
"exportedEnv": {
"CAML_LD_LIBRARY_PATH": {
"val": "#{self.install / 'lib' / 'num' : $CAML_LD_LIBRARY_PATH}",
"scope": "global"
}
}
}

463
windows.esy.lock/overrides/opam__s__ocamlbuild_opam__c__0.14.0_opam_override/files/ocamlbuild-0.14.0.patch

@ -0,0 +1,463 @@ @@ -0,0 +1,463 @@
--- ./Makefile
+++ ./Makefile
@@ -213,7 +213,7 @@
rm -f man/ocamlbuild.1
man/options_man.byte: src/ocamlbuild_pack.cmo
- $(OCAMLC) $^ -I src man/options_man.ml -o man/options_man.byte
+ $(OCAMLC) -I +unix unix.cma $^ -I src man/options_man.ml -o man/options_man.byte
clean::
rm -f man/options_man.cm*
--- ./src/command.ml
+++ ./src/command.ml
@@ -148,9 +148,10 @@
let self = string_of_command_spec_with_calls call_with_tags call_with_target resolve_virtuals in
let b = Buffer.create 256 in
(* The best way to prevent bash from switching to its windows-style
- * quote-handling is to prepend an empty string before the command name. *)
+ * quote-handling is to prepend an empty string before the command name.
+ * space seems to work, too - and the ouput is nicer *)
if Sys.os_type = "Win32" then
- Buffer.add_string b "''";
+ Buffer.add_char b ' ';
let first = ref true in
let put_space () =
if !first then
@@ -260,7 +261,7 @@
let execute_many ?(quiet=false) ?(pretend=false) cmds =
add_parallel_stat (List.length cmds);
- let degraded = !*My_unix.is_degraded || Sys.os_type = "Win32" in
+ let degraded = !*My_unix.is_degraded in
let jobs = !jobs in
if jobs < 0 then invalid_arg "jobs < 0";
let max_jobs = if jobs = 0 then None else Some jobs in
--- ./src/findlib.ml
+++ ./src/findlib.ml
@@ -66,9 +66,6 @@
(fun command -> lexer & Lexing.from_string & run_and_read command)
command
-let run_and_read command =
- Printf.ksprintf run_and_read command
-
let rec query name =
try
Hashtbl.find packages name
@@ -135,7 +132,8 @@
with Not_found -> s
let list () =
- List.map before_space (split_nl & run_and_read "%s list" ocamlfind)
+ let cmd = Shell.quote_filename_if_needed ocamlfind ^ " list" in
+ List.map before_space (split_nl & run_and_read cmd)
(* The closure algorithm is easy because the dependencies are already closed
and sorted for each package. We only have to make the union. We could also
--- ./src/main.ml
+++ ./src/main.ml
@@ -162,6 +162,9 @@
Tags.mem "traverse" tags
|| List.exists (Pathname.is_prefix path_name) !Options.include_dirs
|| List.exists (Pathname.is_prefix path_name) target_dirs)
+ && ((* beware: !Options.build_dir is an absolute directory *)
+ Pathname.normalize !Options.build_dir
+ <> Pathname.normalize (Pathname.pwd/path_name))
end
end
end
--- ./src/my_std.ml
+++ ./src/my_std.ml
@@ -271,13 +271,107 @@
try Array.iter (fun x -> if x = basename then raise Exit) a; false
with Exit -> true
+let command_plain = function
+| [| |] -> 0
+| margv ->
+ let rec waitpid a b =
+ match Unix.waitpid a b with
+ | exception (Unix.Unix_error(Unix.EINTR,_,_)) -> waitpid a b
+ | x -> x
+ in
+ let pid = Unix.(create_process margv.(0) margv stdin stdout stderr) in
+ let pid', process_status = waitpid [] pid in
+ assert (pid = pid');
+ match process_status with
+ | Unix.WEXITED n -> n
+ | Unix.WSIGNALED _ -> 2 (* like OCaml's uncaught exceptions *)
+ | Unix.WSTOPPED _ -> 127
+
+(* can't use Lexers because of circular dependency *)
+let split_path_win str =
+ let rec aux pos =
+ try
+ let i = String.index_from str pos ';' in
+ let len = i - pos in
+ if len = 0 then
+ aux (succ i)
+ else
+ String.sub str pos (i - pos) :: aux (succ i)
+ with Not_found | Invalid_argument _ ->
+ let len = String.length str - pos in
+ if len = 0 then [] else [String.sub str pos len]
+ in
+ aux 0
+
+let windows_shell = lazy begin
+ let rec iter = function
+ | [] -> [| "bash.exe" ; "--norc" ; "--noprofile" |]
+ | hd::tl ->
+ let dash = Filename.concat hd "dash.exe" in
+ if Sys.file_exists dash then [|dash|] else
+ let bash = Filename.concat hd "bash.exe" in
+ if Sys.file_exists bash = false then iter tl else
+ (* if sh.exe and bash.exe exist in the same dir, choose sh.exe *)
+ let sh = Filename.concat hd "sh.exe" in
+ if Sys.file_exists sh then [|sh|] else [|bash ; "--norc" ; "--noprofile"|]
+ in
+ split_path_win (try Sys.getenv "PATH" with Not_found -> "") |> iter
+end
+
+let prep_windows_cmd cmd =
+ (* workaround known ocaml bug, remove later *)
+ if String.contains cmd '\t' && String.contains cmd ' ' = false then
+ " " ^ cmd
+ else
+ cmd
+
+let run_with_shell = function
+| "" -> 0
+| cmd ->
+ let cmd = prep_windows_cmd cmd in
+ let shell = Lazy.force windows_shell in
+ let qlen = Filename.quote cmd |> String.length in
+ (* old versions of dash had problems with bs *)
+ try
+ if qlen < 7_900 then
+ command_plain (Array.append shell [| "-ec" ; cmd |])
+ else begin
+ (* it can still work, if the called command is a cygwin tool *)
+ let ch_closed = ref false in
+ let file_deleted = ref false in
+ let fln,ch =
+ Filename.open_temp_file
+ ~mode:[Open_binary]
+ "ocamlbuildtmp"
+ ".sh"
+ in
+ try
+ let f_slash = String.map ( fun x -> if x = '\\' then '/' else x ) fln in
+ output_string ch cmd;
+ ch_closed:= true;
+ close_out ch;
+ let ret = command_plain (Array.append shell [| "-e" ; f_slash |]) in
+ file_deleted:= true;
+ Sys.remove fln;
+ ret
+ with
+ | x ->
+ if !ch_closed = false then
+ close_out_noerr ch;
+ if !file_deleted = false then
+ (try Sys.remove fln with _ -> ());
+ raise x
+ end
+ with
+ | (Unix.Unix_error _) as x ->
+ (* Sys.command doesn't raise an exception, so run_with_shell also won't
+ raise *)
+ Printexc.to_string x ^ ":" ^ cmd |> prerr_endline;
+ 1
+
let sys_command =
- match Sys.os_type with
- | "Win32" -> fun cmd ->
- if cmd = "" then 0 else
- let cmd = "bash --norc -c " ^ Filename.quote cmd in
- Sys.command cmd
- | _ -> fun cmd -> if cmd = "" then 0 else Sys.command cmd
+ if Sys.win32 then run_with_shell
+ else fun cmd -> if cmd = "" then 0 else Sys.command cmd
(* FIXME warning fix and use Filename.concat *)
let filename_concat x y =
--- ./src/my_std.mli
+++ ./src/my_std.mli
@@ -69,3 +69,6 @@
val split_ocaml_version : (int * int * int * string) option
(** (major, minor, patchlevel, rest) *)
+
+val windows_shell : string array Lazy.t
+val prep_windows_cmd : string -> string
--- ./src/ocamlbuild_executor.ml
+++ ./src/ocamlbuild_executor.ml
@@ -34,6 +34,8 @@
job_stdin : out_channel;
job_stderr : in_channel;
job_buffer : Buffer.t;
+ job_pid : int;
+ job_tmp_file: string option;
mutable job_dying : bool;
};;
@@ -76,6 +78,61 @@
in
loop 0
;;
+
+let open_process_full_win cmd env =
+ let (in_read, in_write) = Unix.pipe () in
+ let (out_read, out_write) = Unix.pipe () in
+ let (err_read, err_write) = Unix.pipe () in
+ Unix.set_close_on_exec in_read;
+ Unix.set_close_on_exec out_write;
+ Unix.set_close_on_exec err_read;
+ let inchan = Unix.in_channel_of_descr in_read in
+ let outchan = Unix.out_channel_of_descr out_write in
+ let errchan = Unix.in_channel_of_descr err_read in
+ let shell = Lazy.force Ocamlbuild_pack.My_std.windows_shell in
+ let test_cmd =
+ String.concat " " (List.map Filename.quote (Array.to_list shell)) ^
+ "-ec " ^
+ Filename.quote (Ocamlbuild_pack.My_std.prep_windows_cmd cmd) in
+ let argv,tmp_file =
+ if String.length test_cmd < 7_900 then
+ Array.append
+ shell
+ [| "-ec" ; Ocamlbuild_pack.My_std.prep_windows_cmd cmd |],None
+ else
+ let fln,ch = Filename.open_temp_file ~mode:[Open_binary] "ocamlbuild" ".sh" in
+ output_string ch (Ocamlbuild_pack.My_std.prep_windows_cmd cmd);
+ close_out ch;
+ let fln' = String.map (function '\\' -> '/' | c -> c) fln in
+ Array.append
+ shell
+ [| "-c" ; fln' |], Some fln in
+ let pid =
+ Unix.create_process_env argv.(0) argv env out_read in_write err_write in
+ Unix.close out_read;
+ Unix.close in_write;
+ Unix.close err_write;
+ (pid, inchan, outchan, errchan,tmp_file)
+
+let close_process_full_win (pid,inchan, outchan, errchan, tmp_file) =
+ let delete tmp_file =
+ match tmp_file with
+ | None -> ()
+ | Some x -> try Sys.remove x with Sys_error _ -> () in
+ let tmp_file_deleted = ref false in
+ try
+ close_in inchan;
+ close_out outchan;
+ close_in errchan;
+ let res = snd(Unix.waitpid [] pid) in
+ tmp_file_deleted := true;
+ delete tmp_file;
+ res
+ with
+ | x when tmp_file <> None && !tmp_file_deleted = false ->
+ delete tmp_file;
+ raise x
+
(* ***)
(*** execute *)
(* XXX: Add test for non reentrancy *)
@@ -130,10 +187,16 @@
(*** add_job *)
let add_job cmd rest result id =
(*display begin fun oc -> fp oc "Job %a is %s\n%!" print_job_id id cmd; end;*)
- let (stdout', stdin', stderr') = open_process_full cmd env in
+ let (pid,stdout', stdin', stderr', tmp_file) =
+ if Sys.win32 then open_process_full_win cmd env else
+ let a,b,c = open_process_full cmd env in
+ -1,a,b,c,None
+ in
incr jobs_active;
- set_nonblock (doi stdout');
- set_nonblock (doi stderr');
+ if not Sys.win32 then (
+ set_nonblock (doi stdout');
+ set_nonblock (doi stderr');
+ );
let job =
{ job_id = id;
job_command = cmd;
@@ -143,7 +206,9 @@
job_stdin = stdin';
job_stderr = stderr';
job_buffer = Buffer.create 1024;
- job_dying = false }
+ job_dying = false;
+ job_tmp_file = tmp_file;
+ job_pid = pid }
in
outputs := FDM.add (doi stdout') job (FDM.add (doi stderr') job !outputs);
jobs := JS.add job !jobs;
@@ -199,6 +264,7 @@
try
read fd u 0 (Bytes.length u)
with
+ | Unix.Unix_error(Unix.EPIPE,_,_) when Sys.win32 -> 0
| Unix.Unix_error(e,_,_) ->
let msg = error_message e in
display (fun oc -> fp oc
@@ -241,14 +307,19 @@
decr jobs_active;
(* PR#5371: we would get EAGAIN below otherwise *)
- clear_nonblock (doi job.job_stdout);
- clear_nonblock (doi job.job_stderr);
-
+ if not Sys.win32 then (
+ clear_nonblock (doi job.job_stdout);
+ clear_nonblock (doi job.job_stderr);
+ );
do_read ~loop:true (doi job.job_stdout) job;
do_read ~loop:true (doi job.job_stderr) job;
outputs := FDM.remove (doi job.job_stdout) (FDM.remove (doi job.job_stderr) !outputs);
jobs := JS.remove job !jobs;
- let status = close_process_full (job.job_stdout, job.job_stdin, job.job_stderr) in
+ let status =
+ if Sys.win32 then
+ close_process_full_win (job.job_pid, job.job_stdout, job.job_stdin, job.job_stderr, job.job_tmp_file)
+ else
+ close_process_full (job.job_stdout, job.job_stdin, job.job_stderr) in
let shown = ref false in
--- ./src/ocamlbuild_unix_plugin.ml
+++ ./src/ocamlbuild_unix_plugin.ml
@@ -48,12 +48,22 @@
end
let run_and_open s kont =
+ let s_orig = s in
+ let s =
+ (* Be consistent! My_unix.run_and_open uses My_std.sys_command and
+ sys_command uses bash. *)
+ if Sys.win32 = false then s else
+ let l = match Lazy.force My_std.windows_shell |> Array.to_list with
+ | hd::tl -> (Filename.quote hd)::tl
+ | _ -> assert false in
+ "\"" ^ (String.concat " " l) ^ " -ec " ^ Filename.quote (" " ^ s) ^ "\""
+ in
let ic = Unix.open_process_in s in
let close () =
match Unix.close_process_in ic with
| Unix.WEXITED 0 -> ()
| Unix.WEXITED _ | Unix.WSIGNALED _ | Unix.WSTOPPED _ ->
- failwith (Printf.sprintf "Error while running: %s" s) in
+ failwith (Printf.sprintf "Error while running: %s" s_orig) in
let res = try
kont ic
with e -> (close (); raise e)
--- ./src/options.ml
+++ ./src/options.ml
@@ -174,11 +174,24 @@
build_dir := Filename.concat (Sys.getcwd ()) s
else
build_dir := s
+
+let slashify =
+ if Sys.win32 then fun p -> String.map (function '\\' -> '/' | x -> x) p
+ else fun p ->p
+
+let sb () =
+ match Sys.os_type with
+ | "Win32" ->
+ (try set_binary_mode_out stdout true with _ -> ());
+ | _ -> ()
+
+
let spec = ref (
let print_version () =
+ sb ();
Printf.printf "ocamlbuild %s\n%!" Ocamlbuild_config.version; raise Exit_OK
in
- let print_vnum () = print_endline Ocamlbuild_config.version; raise Exit_OK in
+ let print_vnum () = sb (); print_endline Ocamlbuild_config.version; raise Exit_OK in
Arg.align
[
"-version", Unit print_version , " Display the version";
@@ -257,8 +270,8 @@
"-build-dir", String set_build_dir, "<path> Set build directory (implies no-links)";
"-install-lib-dir", Set_string Ocamlbuild_where.libdir, "<path> Set the install library directory";
"-install-bin-dir", Set_string Ocamlbuild_where.bindir, "<path> Set the install binary directory";
- "-where", Unit (fun () -> print_endline !Ocamlbuild_where.libdir; raise Exit_OK), " Display the install library directory";
- "-which", String (fun cmd -> print_endline (find_tool cmd); raise Exit_OK), "<command> Display path to the tool command";
+ "-where", Unit (fun () -> sb (); print_endline (slashify !Ocamlbuild_where.libdir); raise Exit_OK), " Display the install library directory";
+ "-which", String (fun cmd -> sb (); print_endline (slashify (find_tool cmd)); raise Exit_OK), "<command> Display path to the tool command";
"-ocamlc", set_cmd ocamlc, "<command> Set the OCaml bytecode compiler";
"-plugin-ocamlc", set_cmd plugin_ocamlc, "<command> Set the OCaml bytecode compiler \
used when building myocamlbuild.ml (only)";
--- ./src/pathname.ml
+++ ./src/pathname.ml
@@ -84,6 +84,26 @@
| x :: xs -> x :: normalize_list xs
let normalize x =
+ let x =
+ if Sys.win32 = false then
+ x
+ else
+ let len = String.length x in
+ let b = Bytes.create len in
+ for i = 0 to pred len do
+ match x.[i] with
+ | '\\' -> Bytes.set b i '/'
+ | c -> Bytes.set b i c
+ done;
+ if len > 1 then (
+ let c1 = Bytes.get b 0 in
+ let c2 = Bytes.get b 1 in
+ if c2 = ':' && c1 >= 'a' && c1 <= 'z' &&
+ ( len = 2 || Bytes.get b 2 = '/') then
+ Bytes.set b 0 (Char.uppercase_ascii c1)
+ );
+ Bytes.unsafe_to_string b
+ in
if Glob.eval not_normal_form_re x then
let root, paths = split x in
join root (normalize_list paths)
--- ./src/shell.ml
+++ ./src/shell.ml
@@ -24,12 +24,26 @@
| 'a'..'z' | 'A'..'Z' | '0'..'9' | '.' | '-' | '/' | '_' | ':' | '@' | '+' | ',' -> loop (pos + 1)
| _ -> false in
loop 0
+
+let generic_quote quotequote s =
+ let l = String.length s in
+ let b = Buffer.create (l + 20) in
+ Buffer.add_char b '\'';
+ for i = 0 to l - 1 do
+ if s.[i] = '\''
+ then Buffer.add_string b quotequote
+ else Buffer.add_char b s.[i]
+ done;
+ Buffer.add_char b '\'';
+ Buffer.contents b
+let unix_quote = generic_quote "'\\''"
+
let quote_filename_if_needed s =
if is_simple_filename s then s
(* We should probably be using [Filename.unix_quote] except that function
* isn't exported. Users on Windows will have to live with not being able to
* install OCaml into c:\o'caml. Too bad. *)
- else if Sys.os_type = "Win32" then Printf.sprintf "'%s'" s
+ else if Sys.os_type = "Win32" then unix_quote s
else Filename.quote s
let chdir dir =
reset_filesys_cache ();
@@ -37,7 +51,7 @@
let run args target =
reset_readdir_cache ();
let cmd = String.concat " " (List.map quote_filename_if_needed args) in
- if !*My_unix.is_degraded || Sys.os_type = "Win32" then
+ if !*My_unix.is_degraded then
begin
Log.event cmd target Tags.empty;
let st = sys_command cmd in

27
windows.esy.lock/overrides/opam__s__ocamlbuild_opam__c__0.14.0_opam_override/package.json

@ -0,0 +1,27 @@ @@ -0,0 +1,27 @@
{
"build": [
[
"bash",
"-c",
"#{os == 'windows' ? 'patch -p1 < ocamlbuild-0.14.0.patch' : 'true'}"
],
[
"make",
"-f",
"configure.make",
"all",
"OCAMLBUILD_PREFIX=#{self.install}",
"OCAMLBUILD_BINDIR=#{self.bin}",
"OCAMLBUILD_LIBDIR=#{self.lib}",
"OCAMLBUILD_MANDIR=#{self.man}",
"OCAMLBUILD_NATIVE=true",
"OCAMLBUILD_NATIVE_TOOLS=true"
],
[
"make",
"check-if-preinstalled",
"all",
"#{os == 'windows' ? 'install' : 'opam-install'}"
]
]
}

489
windows.esy.lock/overrides/opam__s__ocamlfind_opam__c__1.8.0_opam_override/files/findlib-1.8.0.patch

@ -0,0 +1,489 @@ @@ -0,0 +1,489 @@
--- ./Makefile
+++ ./Makefile
@@ -57,16 +57,16 @@
cat findlib.conf.in | \
$(SH) tools/patch '@SITELIB@' '$(OCAML_SITELIB)' >findlib.conf
if ./tools/cmd_from_same_dir ocamlc; then \
- echo 'ocamlc="ocamlc.opt"' >>findlib.conf; \
+ echo 'ocamlc="ocamlc.opt$(EXEC_SUFFIX)"' >>findlib.conf; \
fi
if ./tools/cmd_from_same_dir ocamlopt; then \
- echo 'ocamlopt="ocamlopt.opt"' >>findlib.conf; \
+ echo 'ocamlopt="ocamlopt.opt$(EXEC_SUFFIX)"' >>findlib.conf; \
fi
if ./tools/cmd_from_same_dir ocamldep; then \
- echo 'ocamldep="ocamldep.opt"' >>findlib.conf; \
+ echo 'ocamldep="ocamldep.opt$(EXEC_SUFFIX)"' >>findlib.conf; \
fi
if ./tools/cmd_from_same_dir ocamldoc; then \
- echo 'ocamldoc="ocamldoc.opt"' >>findlib.conf; \
+ echo 'ocamldoc="ocamldoc.opt$(EXEC_SUFFIX)"' >>findlib.conf; \
fi
.PHONY: install-doc
--- ./src/findlib/findlib_config.mlp
+++ ./src/findlib/findlib_config.mlp
@@ -24,3 +24,5 @@
| "MacOS" -> "" (* don't know *)
| _ -> failwith "Unknown Sys.os_type"
;;
+
+let exec_suffix = "@EXEC_SUFFIX@";;
--- ./src/findlib/findlib.ml
+++ ./src/findlib/findlib.ml
@@ -28,15 +28,20 @@
let conf_ldconf = ref "";;
let conf_ignore_dups_in = ref ([] : string list);;
-let ocamlc_default = "ocamlc";;
-let ocamlopt_default = "ocamlopt";;
-let ocamlcp_default = "ocamlcp";;
-let ocamloptp_default = "ocamloptp";;
-let ocamlmklib_default = "ocamlmklib";;
-let ocamlmktop_default = "ocamlmktop";;
-let ocamldep_default = "ocamldep";;
-let ocamlbrowser_default = "ocamlbrowser";;
-let ocamldoc_default = "ocamldoc";;
+let add_exec str =
+ match Findlib_config.exec_suffix with
+ | "" -> str
+ | a -> str ^ a ;;
+let ocamlc_default = add_exec "ocamlc";;
+let ocamlopt_default = add_exec "ocamlopt";;
+let ocamlcp_default = add_exec "ocamlcp";;
+let ocamloptp_default = add_exec "ocamloptp";;
+let ocamlmklib_default = add_exec "ocamlmklib";;
+let ocamlmktop_default = add_exec "ocamlmktop";;
+let ocamldep_default = add_exec "ocamldep";;
+let ocamlbrowser_default = add_exec "ocamlbrowser";;
+let ocamldoc_default = add_exec "ocamldoc";;
+
let init_manually
--- ./src/findlib/fl_package_base.ml
+++ ./src/findlib/fl_package_base.ml
@@ -133,7 +133,15 @@
List.find (fun def -> def.def_var = "exists_if") p.package_defs in
let files = Fl_split.in_words def.def_value in
List.exists
- (fun file -> Sys.file_exists (Filename.concat d' file))
+ (fun file ->
+ let fln = Filename.concat d' file in
+ let e = Sys.file_exists fln in
+ (* necessary for ppx executables *)
+ if e || Sys.os_type <> "Win32" || Filename.check_suffix fln ".exe" then
+ e
+ else
+ Sys.file_exists (fln ^ ".exe")
+ )
files
with Not_found -> true in
--- ./src/findlib/fl_split.ml
+++ ./src/findlib/fl_split.ml
@@ -126,10 +126,17 @@
| '/' | '\\' -> true
| _ -> false in
let norm_dir_win() =
- if l >= 1 && s.[0] = '/' then
- Buffer.add_char b '\\' else Buffer.add_char b s.[0];
- if l >= 2 && s.[1] = '/' then
- Buffer.add_char b '\\' else Buffer.add_char b s.[1];
+ if l >= 1 then (
+ if s.[0] = '/' then
+ Buffer.add_char b '\\'
+ else
+ Buffer.add_char b s.[0] ;
+ if l >= 2 then
+ if s.[1] = '/' then
+ Buffer.add_char b '\\'
+ else
+ Buffer.add_char b s.[1];
+ );
for k = 2 to l - 1 do
let c = s.[k] in
if is_slash c then (
--- ./src/findlib/frontend.ml
+++ ./src/findlib/frontend.ml
@@ -31,10 +31,18 @@
else
Sys_error (arg ^ ": " ^ Unix.error_message code)
+let is_win = Sys.os_type = "Win32"
+
+let () =
+ match Findlib_config.system with
+ | "win32" | "win64" | "mingw" | "cygwin" | "mingw64" | "cygwin64" ->
+ (try set_binary_mode_out stdout true with _ -> ());
+ (try set_binary_mode_out stderr true with _ -> ());
+ | _ -> ()
let slashify s =
match Findlib_config.system with
- | "mingw" | "mingw64" | "cygwin" ->
+ | "win32" | "win64" | "mingw" | "cygwin" | "mingw64" | "cygwin64" ->
let b = Buffer.create 80 in
String.iter
(function
@@ -49,7 +57,7 @@
let out_path ?(prefix="") s =
match Findlib_config.system with
- | "mingw" | "mingw64" | "cygwin" ->
+ | "win32" | "win64" | "mingw" | "mingw64" | "cygwin" ->
let u = slashify s in
prefix ^
(if String.contains u ' ' then
@@ -273,11 +281,9 @@
let identify_dir d =
- match Sys.os_type with
- | "Win32" ->
- failwith "identify_dir" (* not available *)
- | _ ->
- let s = Unix.stat d in
+ if is_win then
+ failwith "identify_dir"; (* not available *)
+ let s = Unix.stat d in
(s.Unix.st_dev, s.Unix.st_ino)
;;
@@ -459,6 +465,96 @@
)
packages
+let rewrite_cmd s =
+ if s = "" || not is_win then
+ s
+ else
+ let s =
+ let l = String.length s in
+ let b = Buffer.create l in
+ for i = 0 to pred l do
+ match s.[i] with
+ | '/' -> Buffer.add_char b '\\'
+ | x -> Buffer.add_char b x
+ done;
+ Buffer.contents b
+ in
+ if (Filename.is_implicit s && String.contains s '\\' = false) ||
+ Filename.check_suffix (String.lowercase s) ".exe" then
+ s
+ else
+ let s' = s ^ ".exe" in
+ if Sys.file_exists s' then
+ s'
+ else
+ s
+
+let rewrite_cmd s =
+ if s = "" || not is_win then s else
+ let s =
+ let l = String.length s in
+ let b = Buffer.create l in
+ for i = 0 to pred l do
+ match s.[i] with
+ | '/' -> Buffer.add_char b '\\'
+ | x -> Buffer.add_char b x
+ done;
+ Buffer.contents b
+ in
+ if (Filename.is_implicit s && String.contains s '\\' = false) ||
+ Filename.check_suffix (String.lowercase s) ".exe" then
+ s
+ else
+ let s' = s ^ ".exe" in
+ if Sys.file_exists s' then
+ s'
+ else
+ s
+
+let rewrite_pp cmd =
+ if not is_win then cmd else
+ let module T = struct exception Keep end in
+ let is_whitespace = function
+ | ' ' | '\011' | '\012' | '\n' | '\r' | '\t' -> true
+ | _ -> false in
+ (* characters that triggers special behaviour (cmd.exe, not unix shell) *)
+ let is_unsafe_char = function
+ | '(' | ')' | '%' | '!' | '^' | '<' | '>' | '&' -> true
+ | _ -> false in
+ let len = String.length cmd in
+ let buf = Buffer.create (len + 4) in
+ let buf_cmd = Buffer.create len in
+ let rec iter_ws i =
+ if i >= len then () else
+ let cur = cmd.[i] in
+ if is_whitespace cur then (
+ Buffer.add_char buf cur;
+ iter_ws (succ i)
+ )
+ else
+ iter_cmd i
+ and iter_cmd i =
+ if i >= len then add_buf_cmd () else
+ let cur = cmd.[i] in
+ if is_unsafe_char cur || cur = '"' || cur = '\'' then
+ raise T.Keep;
+ if is_whitespace cur then (
+ add_buf_cmd ();
+ Buffer.add_substring buf cmd i (len - i)
+ )
+ else (
+ Buffer.add_char buf_cmd cur;
+ iter_cmd (succ i)
+ )
+ and add_buf_cmd () =
+ if Buffer.length buf_cmd > 0 then
+ Buffer.add_string buf (rewrite_cmd (Buffer.contents buf_cmd))
+ in
+ try
+ iter_ws 0;
+ Buffer.contents buf
+ with
+ | T.Keep -> cmd
let process_pp_spec syntax_preds packages pp_opts =
(* Returns: pp_command *)
@@ -549,7 +645,7 @@
None -> []
| Some cmd ->
["-pp";
- cmd ^ " " ^
+ (rewrite_cmd cmd) ^ " " ^
String.concat " " (List.map Filename.quote pp_i_options) ^ " " ^
String.concat " " (List.map Filename.quote pp_archives) ^ " " ^
String.concat " " (List.map Filename.quote pp_opts)]
@@ -625,9 +721,11 @@
in
try
let preprocessor =
+ rewrite_cmd (
resolve_path
~base ~explicit:true
- (package_property predicates pname "ppx") in
+ (package_property predicates pname "ppx") )
+ in
["-ppx"; String.concat " " (preprocessor :: options)]
with Not_found -> []
)
@@ -895,6 +993,14 @@
switch (e.g. -L<path> instead of -L <path>)
*)
+(* We may need to remove files on which we do not have complete control.
+ On Windows, removing a read-only file fails so try to change the
+ mode of the file first. *)
+let remove_file fname =
+ try Sys.remove fname
+ with Sys_error _ when is_win ->
+ (try Unix.chmod fname 0o666 with Unix.Unix_error _ -> ());
+ Sys.remove fname
let ocamlc which () =
@@ -1022,9 +1128,12 @@
"-intf",
Arg.String (fun s -> pass_files := !pass_files @ [ Intf(slashify s) ]);
-
+
"-pp",
- Arg.String (fun s -> pp_specified := true; add_spec_fn "-pp" s);
+ Arg.String (fun s -> pp_specified := true; add_spec_fn "-pp" (rewrite_pp s));
+
+ "-ppx",
+ Arg.String (fun s -> add_spec_fn "-ppx" (rewrite_pp s));
"-thread",
Arg.Unit (fun _ -> threads := threads_default);
@@ -1237,7 +1346,7 @@
with
any ->
close_out initl;
- Sys.remove initl_file_name;
+ remove_file initl_file_name;
raise any
end;
@@ -1245,9 +1354,9 @@
at_exit
(fun () ->
let tr f x = try f x with _ -> () in
- tr Sys.remove initl_file_name;
- tr Sys.remove (Filename.chop_extension initl_file_name ^ ".cmi");
- tr Sys.remove (Filename.chop_extension initl_file_name ^ ".cmo");
+ tr remove_file initl_file_name;
+ tr remove_file (Filename.chop_extension initl_file_name ^ ".cmi");
+ tr remove_file (Filename.chop_extension initl_file_name ^ ".cmo");
);
let exclude_list = [ stdlibdir; threads_dir; vmthreads_dir ] in
@@ -1493,7 +1602,9 @@
[ "-v", Arg.Unit (fun () -> verbose := Verbose);
"-pp", Arg.String (fun s ->
pp_specified := true;
- options := !options @ ["-pp"; s]);
+ options := !options @ ["-pp"; rewrite_pp s]);
+ "-ppx", Arg.String (fun s ->
+ options := !options @ ["-ppx"; rewrite_pp s]);
]
)
)
@@ -1672,7 +1783,9 @@
Arg.String (fun s -> add_spec_fn "-I" (slashify (resolve_path s)));
"-pp", Arg.String (fun s -> pp_specified := true;
- add_spec_fn "-pp" s);
+ add_spec_fn "-pp" (rewrite_pp s));
+ "-ppx", Arg.String (fun s -> add_spec_fn "-ppx" (rewrite_pp s));
+
]
)
)
@@ -1830,7 +1943,10 @@
output_string ch_out append;
close_out ch_out;
close_in ch_in;
- Unix.utimes outpath s.Unix.st_mtime s.Unix.st_mtime;
+ (try Unix.utimes outpath s.Unix.st_mtime s.Unix.st_mtime
+ with Unix.Unix_error(e,_,_) ->
+ prerr_endline("Warning: setting utimes for " ^ outpath
+ ^ ": " ^ Unix.error_message e));
prerr_endline("Installed " ^ outpath);
with
@@ -1882,6 +1998,8 @@
Unix.openfile (Filename.concat dir owner_file) [Unix.O_RDONLY] 0 in
let f =
Unix.in_channel_of_descr fd in
+ if is_win then
+ set_binary_mode_in f false;
try
let line = input_line f in
let is_my_file = (line = pkg) in
@@ -2208,7 +2326,7 @@
let lines = read_ldconf !ldconf in
let dlldir_norm = Fl_split.norm_dir dlldir in
let dlldir_norm_lc = string_lowercase_ascii dlldir_norm in
- let ci_filesys = (Sys.os_type = "Win32") in
+ let ci_filesys = is_win in
let check_dir d =
let d' = Fl_split.norm_dir d in
(d' = dlldir_norm) ||
@@ -2356,7 +2474,7 @@
List.iter
(fun file ->
let absfile = Filename.concat dlldir file in
- Sys.remove absfile;
+ remove_file absfile;
prerr_endline ("Removed " ^ absfile)
)
dll_files
@@ -2365,7 +2483,7 @@
(* Remove the files from the package directory: *)
if Sys.file_exists pkgdir then begin
let files = Sys.readdir pkgdir in
- Array.iter (fun f -> Sys.remove (Filename.concat pkgdir f)) files;
+ Array.iter (fun f -> remove_file (Filename.concat pkgdir f)) files;
Unix.rmdir pkgdir;
prerr_endline ("Removed " ^ pkgdir)
end
@@ -2415,7 +2533,9 @@
let print_configuration() =
+ let sl = slashify in
let dir s =
+ let s = sl s in
if Sys.file_exists s then
s
else
@@ -2453,27 +2573,27 @@
if md = "" then "the corresponding package directories" else dir md
);
Printf.printf "The standard library is assumed to reside in:\n %s\n"
- (Findlib.ocaml_stdlib());
+ (sl (Findlib.ocaml_stdlib()));
Printf.printf "The ld.conf file can be found here:\n %s\n"
- (Findlib.ocaml_ldconf());
+ (sl (Findlib.ocaml_ldconf()));
flush stdout
| Some "conf" ->
- print_endline Findlib_config.config_file
+ print_endline (sl Findlib_config.config_file)
| Some "path" ->
- List.iter print_endline (Findlib.search_path())
+ List.iter ( fun x -> print_endline (sl x)) (Findlib.search_path())
| Some "destdir" ->
- print_endline (Findlib.default_location())
+ print_endline ( sl (Findlib.default_location()))
| Some "metadir" ->
- print_endline (Findlib.meta_directory())
+ print_endline ( sl (Findlib.meta_directory()))
| Some "metapath" ->
let mdir = Findlib.meta_directory() in
let ddir = Findlib.default_location() in
- print_endline
- (if mdir <> "" then mdir ^ "/META.%s" else ddir ^ "/%s/META")
+ print_endline ( sl
+ (if mdir <> "" then mdir ^ "/META.%s" else ddir ^ "/%s/META"))
| Some "stdlib" ->
- print_endline (Findlib.ocaml_stdlib())
+ print_endline ( sl (Findlib.ocaml_stdlib()))
| Some "ldconf" ->
- print_endline (Findlib.ocaml_ldconf())
+ print_endline ( sl (Findlib.ocaml_ldconf()))
| _ ->
assert false
;;
@@ -2481,7 +2601,7 @@
let ocamlcall pkg cmd =
let dir = package_directory pkg in
- let path = Filename.concat dir cmd in
+ let path = rewrite_cmd (Filename.concat dir cmd) in
begin
try Unix.access path [ Unix.X_OK ]
with
@@ -2647,6 +2767,10 @@
| Sys_error f ->
prerr_endline ("ocamlfind: " ^ f);
exit 2
+ | Unix.Unix_error (e, fn, f) ->
+ prerr_endline ("ocamlfind: " ^ fn ^ " " ^ f
+ ^ ": " ^ Unix.error_message e);
+ exit 2
| Findlib.No_such_package(pkg,info) ->
prerr_endline ("ocamlfind: Package `" ^ pkg ^ "' not found" ^
(if info <> "" then " - " ^ info else ""));
--- ./src/findlib/Makefile
+++ ./src/findlib/Makefile
@@ -90,6 +90,7 @@
cat findlib_config.mlp | \
$(SH) $(TOP)/tools/patch '@CONFIGFILE@' '$(OCAMLFIND_CONF)' | \
$(SH) $(TOP)/tools/patch '@STDLIB@' '$(OCAML_CORE_STDLIB)' | \
+ $(SH) $(TOP)/tools/patch '@EXEC_SUFFIX@' '$(EXEC_SUFFIX)' | \
sed -e 's;@AUTOLINK@;$(OCAML_AUTOLINK);g' \
-e 's;@SYSTEM@;$(SYSTEM);g' \
>findlib_config.ml
@@ -113,7 +114,7 @@
$(OCAMLC) -a -o num_top.cma $(NUMTOP_OBJECTS)
clean:
- rm -f *.cmi *.cmo *.cma *.cmx *.a *.o *.cmxa \
+ rm -f *.cmi *.cmo *.cma *.cmx *.lib *.a *.o *.cmxa \
fl_meta.ml findlib_config.ml findlib.mml topfind.ml topfind \
ocamlfind$(EXEC_SUFFIX) ocamlfind_opt$(EXEC_SUFFIX)
@@ -121,7 +122,7 @@
mkdir -p "$(prefix)$(OCAML_SITELIB)/$(NAME)"
mkdir -p "$(prefix)$(OCAMLFIND_BIN)"
test $(INSTALL_TOPFIND) -eq 0 || cp topfind "$(prefix)$(OCAML_CORE_STDLIB)"
- files=`$(SH) $(TOP)/tools/collect_files $(TOP)/Makefile.config findlib.cmi findlib.mli findlib.cma findlib.cmxa findlib.a findlib.cmxs topfind.cmi topfind.mli fl_package_base.mli fl_package_base.cmi fl_metascanner.mli fl_metascanner.cmi fl_metatoken.cmi findlib_top.cma findlib_top.cmxa findlib_top.a findlib_top.cmxs findlib_dynload.cma findlib_dynload.cmxa findlib_dynload.a findlib_dynload.cmxs fl_dynload.mli fl_dynload.cmi META` && \
+ files=`$(SH) $(TOP)/tools/collect_files $(TOP)/Makefile.config findlib.cmi findlib.mli findlib.cma findlib.cmxa findlib$(LIB_SUFFIX) findlib.cmxs topfind.cmi topfind.mli fl_package_base.mli fl_package_base.cmi fl_metascanner.mli fl_metascanner.cmi fl_metatoken.cmi findlib_top.cma findlib_top.cmxa findlib_top$(LIB_SUFFIX) findlib_top.cmxs findlib_dynload.cma findlib_dynload.cmxa findlib_dynload$(LIB_SUFFIX) findlib_dynload.cmxs fl_dynload.mli fl_dynload.cmi META` && \
cp $$files "$(prefix)$(OCAML_SITELIB)/$(NAME)"
f="ocamlfind$(EXEC_SUFFIX)"; { test -f ocamlfind_opt$(EXEC_SUFFIX) && f="ocamlfind_opt$(EXEC_SUFFIX)"; }; \
cp $$f "$(prefix)$(OCAMLFIND_BIN)/ocamlfind$(EXEC_SUFFIX)"

61
windows.esy.lock/overrides/opam__s__ocamlfind_opam__c__1.8.0_opam_override/package.json

@ -0,0 +1,61 @@ @@ -0,0 +1,61 @@
{
"build": [
[
"bash",
"-c",
"#{os == 'windows' ? 'patch -p1 < findlib-1.8.0.patch' : 'true'}"
],
[
"./configure",
"-bindir",
"#{self.bin}",
"-sitelib",
"#{self.lib}",
"-mandir",
"#{self.man}",
"-config",
"#{self.lib}/findlib.conf",
"-no-custom",
"-no-topfind"
],
[
"make",
"all"
],
[
"make",
"opt"
]
],
"install": [
[
"make",
"install"
],
[
"install",
"-m",
"0755",
"ocaml-stub",
"#{self.bin}/ocaml"
],
[
"mkdir",
"-p",
"#{self.toplevel}"
],
[
"install",
"-m",
"0644",
"src/findlib/topfind",
"#{self.toplevel}/topfind"
]
],
"exportedEnv": {
"OCAML_TOPLEVEL_PATH": {
"val": "#{self.toplevel}",
"scope": "global"
}
}
}

Some files were not shown because too many files have changed in this diff Show More

Loading…
Cancel
Save