Commits

camlspotter committed fa780bf

fix for executable dependency over packages. Still there is a bug of nonrequired compilations

Comments (0)

Files changed (2)

 # Dependencies
 # =========================================================================
 
+#|Returns packages managed by OMy framework
+OMyManagedPackages(packages) =
+   return $(set-diff $(packages), $(OCAML_PREINSTALLED_PACKS))
+
 #|Add dependencies of any build activity over $(packages).
 #
 # .. note:: These functions introduce implicit rules: *you may need to export it, if you use this function in a local context.*
 RequirePackages(packages) =
-    required_packs = $(set-diff $(packages), $(OCAML_PREINSTALLED_PACKS))
+    required_packs = $(OMyManagedPackages $(packages))
     .SCANNER: scan-%: $(Installed $(required_packs))
     % : $(Installed $(required_packs))
     export
 # .. note:: Usually you do not need to call this function. Use OCAMLPACKS variable instead. 
 OCamlRequirePackages(packages) =
     packages += findlib # Yes we use findlib
-    required_packs = $(set-diff $(packages), $(OCAML_PREINSTALLED_PACKS))
+    required_packs = $(OMyManagedPackages $(packages))
     %.cmx %.cmo %.cmi %.cma %.cmxa %.annot %.spot %.spit : $(Installed $(required_packs))
     export
 
 # .. note:: Usually you do not need to call this function. Use CAML4PACKS variable instead. 
 OCamlRequireCamlP4Packages(packages) =
     packages += findlib # Yes we use findlib
-    required_packs = $(set-diff $(packages), $(OCAML_PREINSTALLED_PACKS))
+    required_packs = $(OMyManagedPackages $(packages))
     .SCANNER: scan-ocaml-%: $(Installed $(required_packs))
     %.cmx %.cmo %.cmi %.cma %.cmxa %.annot %.spot %.spit : $(Installed $(required_packs))
     export
   AddLocalOCamlPackageDependencies()
   export # The above thing is local: need to be exported
 
+  $(name).run $(name).opt: $(Installed $(OMyManagedPackages $(OCAMLPACKS)))
+
   # CR jfuruse: forgot to add the deps over the packages!
   .DEFAULT: $(OCamlProgram $(name), $(files))
 
+loser:
+	@echo Use omake instead!
+
+html: loser
+clean: loser