diff options
-rw-r--r-- | .gitignore | 1 | ||||
-rw-r--r-- | Makefile | 2 | ||||
-rw-r--r-- | Makefile.common | 5 | ||||
-rw-r--r-- | configure.ml | 31 |
4 files changed, 36 insertions, 3 deletions
diff --git a/.gitignore b/.gitignore index cb5e7c818..b91f40129 100644 --- a/.gitignore +++ b/.gitignore @@ -47,6 +47,7 @@ plugins/*/*_mod.ml myocamlbuild_config.ml config/Makefile config/coq_config.ml +config/Info-*.plist dev/ocamldebug-coq plugins/micromega/csdpcert kernel/byterun/dllcoqrun.so @@ -239,7 +239,7 @@ cacheclean: find theories plugins test-suite -name '.*.aux' -delete cleanconfig: - rm -f config/Makefile config/coq_config.ml myocamlbuild_config.ml dev/ocamldebug-v7 + rm -f config/Makefile config/coq_config.ml myocamlbuild_config.ml dev/ocamldebug-v7 config/Info-*.plist distclean: clean cleanconfig cacheclean diff --git a/Makefile.common b/Makefile.common index 7d05f591d..5b90e19db 100644 --- a/Makefile.common +++ b/Makefile.common @@ -22,8 +22,6 @@ COQTOPEXE:=bin/coqtop$(EXE) CHICKENBYTE:=bin/coqchk.byte$(EXE) CHICKEN:=bin/coqchk$(EXE) -FAKEIDE:=bin/fake_ide$(EXE) - ifeq ($(CAMLP4),camlp4) CAMLP4MOD:=camlp4lib else @@ -95,9 +93,12 @@ GALLINA:=bin/gallina$(EXE) COQTEX:=bin/coq-tex$(EXE) COQWC:=bin/coqwc$(EXE) COQDOC:=bin/coqdoc$(EXE) +FAKEIDE:=bin/fake_ide$(EXE) TOOLS:=$(COQDEP) $(COQMAKEFILE) $(GALLINA) $(COQTEX) $(COQWC) $(COQDOC) $(COQC) +PRIVATEBINARIES:=$(FAKEIDE) $(COQDEPBOOT) + ########################################################################### # Documentation ########################################################################### diff --git a/configure.ml b/configure.ml index 7cb37e82c..a586e6a49 100644 --- a/configure.ml +++ b/configure.ml @@ -12,8 +12,12 @@ open Printf let coq_version = "trunk" +let coq_macos_version = "8.4.99" (** "[...] should be a string comprised of +three non-negative, period-separed integers [...]" *) let vo_magic = 8511 let state_magic = 58511 +let distributed_exec = ["coqtop";"coqc";"coqchk";"coqdoc";"coqmktop";"coqdoc"; +"coq_makefile";"coq-tex";"gallina";"coqwc";"csdpcert"] let verbose = ref false (* for debugging this script *) @@ -1146,3 +1150,30 @@ let write_makefile f = Unix.chmod f 0o444 let _ = write_makefile "config/Makefile" + +let write_macos_metadata exec = + let f = "config/Info-"^exec^".plist" in + let () = safe_remove f in + let o = open_out f in + let pr s = fprintf o s in + pr "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n"; + pr "<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">\n"; + pr "<plist version=\"1.0\">\n"; + pr "<dict>\n"; + pr " <key>CFBundleIdentifier</key>\n"; + pr " <string>fr.inria.coq.%s</string>\n" exec; + pr " <key>CFBundleName</key>\n"; + pr " <string>%s</string>\n" exec; + pr " <key>CFBundleVersion</key>\n"; + pr " <string>%s</string>\n" coq_macos_version; + pr " <key>CFBundleShortVersionString</key>\n"; + pr " <string>%s</string>\n" coq_macos_version; + pr " <key>CFBundleInfoDictionaryVersion</key>\n"; + pr " <string>6.0</string>\n"; + pr "</dict>\n"; + pr "</plist>\n"; + let () = close_out o in + Unix.chmod f 0o444 + +let () = if arch = "Darwin" then +List.iter write_macos_metadata distributed_exec |