@@ -17,59 +17,6 @@ function rebuild() {
17
17
stdio : [ 0 , 1 , 2 ]
18
18
} ) ;
19
19
}
20
- var assert = require ( "assert" ) ;
21
- /**
22
- *
23
- * @param {string } src
24
- * @param {(file:string)=>boolean } filter
25
- * @param {string } dest
26
- */
27
- function installDirBy ( src , dest , filter ) {
28
- fs . readdir ( src , function ( err , files ) {
29
- if ( err === null ) {
30
- files . forEach ( function ( file ) {
31
- if ( filter ( file ) ) {
32
- var x = path . join ( src , file ) ;
33
- var y = path . join ( dest , file ) ;
34
- // console.log(x, '----->', y )
35
- fs . copyFile ( x , y , err => assert . equal ( err , null ) ) ;
36
- }
37
- } ) ;
38
- } else {
39
- throw err ;
40
- }
41
- } ) ;
42
- }
43
-
44
- function install ( ) {
45
- var root_dir = path . join ( __dirname , ".." ) ;
46
- var lib_dir = path . join ( root_dir , "lib" ) ;
47
- var jscomp_dir = path . join ( root_dir , "jscomp" ) ;
48
- var runtime_dir = path . join ( jscomp_dir , "runtime" ) ;
49
- var others_dir = path . join ( jscomp_dir , "others" ) ;
50
- var ocaml_dir = path . join ( lib_dir , "ocaml" ) ;
51
- var stdlib_dir = path . join ( jscomp_dir , "stdlib-406" ) ;
52
- if ( ! fs . existsSync ( ocaml_dir ) ) {
53
- fs . mkdirSync ( ocaml_dir )
54
- }
55
- // sync up with cmij_main.ml
56
- installDirBy ( runtime_dir , ocaml_dir , function ( file ) {
57
- var y = path . parse ( file ) ;
58
- return y . name === "js" && y . ext !== ".cmj" ;
59
- // install js.cmi, js.mli
60
- } ) ;
61
-
62
- // for merlin or other IDE
63
- var installed_suffixes = [ ".ml" , ".mli" , ".cmi" , ".cmt" , ".cmti" ] ;
64
- installDirBy ( others_dir , ocaml_dir , function ( file ) {
65
- var y = path . parse ( file ) ;
66
- return installed_suffixes . includes ( y . ext ) ;
67
- } ) ;
68
- installDirBy ( stdlib_dir , ocaml_dir , function ( file ) {
69
- var y = path . parse ( file ) ;
70
- return installed_suffixes . includes ( y . ext )
71
- } ) ;
72
- }
73
20
74
21
function buildCompiler ( ) {
75
22
// for 4.02.3 it relies on OCAMLLIB to find stdlib path
@@ -104,7 +51,7 @@ if (!is_windows) {
104
51
105
52
function createOCamlTar ( ) {
106
53
if ( process . platform === hostPlatform ) {
107
- install ( ) ;
54
+ require ( "./installUtils.js" ) . install ( ) ;
108
55
cp . execSync ( `git -C ocaml status -uno` , { cwd : root , stdio : [ 0 , 1 , 2 ] } ) ;
109
56
cp . execSync (
110
57
`git -C ocaml archive --format=tar.gz HEAD -o ../vendor/ocaml.tar.gz` ,
0 commit comments