@@ -493,7 +493,11 @@ bsc_flags = $bsc_no_open_flags -open Bs_stdlib_mini
493
493
rule cc
494
494
command = $bsc $bsc_flags -bs-no-implicit-include -I ${ ninjaCwd } -c $in
495
495
description = $in -> $out
496
- restat = 1
496
+ ${
497
+ devmode ? ` restat = 1` :
498
+ ``
499
+ }
500
+
497
501
${ ninjaQuickBuidList ( [
498
502
[ 'bs_stdlib_mini.cmi' , 'bs_stdlib_mini.mli' ,
499
503
'cc' , ninjaCwd , [ [ "bsc_flags" , "-nostdlib -nopervasives" ] ] , [ ] , externalDeps ] ,
@@ -551,11 +555,15 @@ async function othersNinja(devmode=true) {
551
555
var cppoRule = `cppo`
552
556
var templateOthersRules = `
553
557
${ BSC_COMPILER }
554
- bsc_flags = -no-alias-deps -bs-no-version-header -bs-diagnose -bs-no-check-div-by-zero -bs-cross-module-opt -bs-package-name bs-platform -bs-package-output commonjs:lib/js -bs-package-output amdjs:lib/amdjs -bs-package-output es6:lib/es6 -nostdlib -nopervasives -unsafe -warn-error A -w -40-49-103 -bin-annot -bs-noassertfalse -open Bs_stdlib_mini -I ./runtime
558
+ bsc_flags = -absname -no-alias-deps -bs-no-version-header -bs-diagnose -bs-no-check-div-by-zero -bs-cross-module-opt -bs-package-name bs-platform -bs-package-output commonjs:lib/js -bs-package-output amdjs:lib/amdjs -bs-package-output es6:lib/es6 -nostdlib -nopervasives -unsafe -warn-error A -w -40-49-103 -bin-annot -bs-noassertfalse -open Bs_stdlib_mini -I ./runtime
555
559
rule cc
556
560
command = $bsc $bsc_flags -bs-no-implicit-include -I ${ ninjaCwd } -c $in
557
- description = $in -> $out
558
- restat = 1
561
+ description = $in -> $out
562
+ ${
563
+ devmode ? ` restat = 1` :
564
+ ``
565
+ }
566
+
559
567
${ devmode ?
560
568
`rule ${ cppoRule }
561
569
command = cppo -D $type $in -o $out
@@ -689,9 +697,10 @@ ${ninjaQuickBuidList([
689
697
)
690
698
}
691
699
692
- async function stdlibNinja ( ) {
700
+ async function stdlibNinja ( devmode = true ) {
693
701
var ninjaCwd = stdlibVersion
694
702
var externalDeps = [ othersTarget ]
703
+ var ninjaOutput = devmode ? 'build.ninja' : 'release.ninja'
695
704
var bsc_flags = 'bsc_flags'
696
705
/**
697
706
* @type [string,string][]
@@ -702,8 +711,12 @@ ${BSC_COMPILER}
702
711
${ bsc_flags } = -absname -no-alias-deps -bs-no-version-header -bs-diagnose -bs-no-check-div-by-zero -bs-cross-module-opt -bs-package-name bs-platform -bs-package-output commonjs:lib/js -bs-package-output amdjs:lib/amdjs -bs-package-output es6:lib/es6 -nostdlib -warn-error A -w -40-49-103 -bin-annot -bs-no-warn-unimplemented-external -I ./runtime -I ./others
703
712
rule cc
704
713
command = $bsc $${ bsc_flags } -bs-no-implicit-include -I ${ ninjaCwd } -c $in
705
- description = $in -> $out
706
- restat = 1
714
+ description = $in -> $out
715
+ ${
716
+ devmode ? ` restat = 1` :
717
+ ``
718
+ }
719
+
707
720
${ ninjaQuickBuidList ( [
708
721
[ 'camlinternalFormatBasics.cmi' , 'camlinternalFormatBasics.mli' ,
709
722
'cc' , ninjaCwd , bsc_builtin_overrides , [ ] , externalDeps ] ,
@@ -746,7 +759,7 @@ ${ninjaQuickBuidList([
746
759
output . push ( phony ( stdlibTarget , fileTargets ( allTargets ) , stdlibVersion ) )
747
760
748
761
writeFile (
749
- path . join ( stdlibDir , 'build.ninja' ) ,
762
+ path . join ( stdlibDir , ninjaOutput ) ,
750
763
templateStdlibRules + output . join ( '\n' ) + '\n'
751
764
)
752
765
}
@@ -965,27 +978,31 @@ if (require.main === module) {
965
978
}
966
979
var dev = process . argv . includes ( '-dev' )
967
980
var release = process . argv . includes ( '-release' )
968
- if ( dev ) {
969
- udpateLibsDevNinja ( )
981
+ var all = process . argv . includes ( '-all' )
982
+ if ( all ) {
983
+ updateDev ( )
984
+ updateRelease ( )
985
+ } else if ( dev ) {
986
+ updateDev ( )
970
987
} else if ( release ) {
971
- updateAllLibsNinja ( )
988
+ updateRelease ( )
972
989
}
973
990
}
974
- function updateAllLibsNinja ( ) {
991
+ function updateRelease ( ) {
975
992
runtimeNinja ( false )
976
- stdlibNinja ( )
993
+ stdlibNinja ( false )
977
994
othersNinja ( false )
978
995
}
979
996
980
- function udpateLibsDevNinja ( ) {
997
+ function updateDev ( ) {
981
998
runtimeNinja ( )
982
999
stdlibNinja ( )
983
1000
othersNinja ( )
984
1001
testNinja ( )
985
1002
nativeNinja ( )
986
1003
}
987
- exports . updateLibsDevNinja = udpateLibsDevNinja
988
- exports . updateAllLibsNinja = updateAllLibsNinja
1004
+ exports . updateDev = updateDev
1005
+ exports . updateRelease = updateRelease
989
1006
990
1007
/**
991
1008
*
0 commit comments