Package: ocaml Version: 4.12.0 # ocaml, camlp4, and camlp5 are all version sensitive to each other. If # you update one, make sure to update the others. Revision: 1 Description: Latest implementation of Caml dialect of ML BuildDepends: << fink (>= 0.32.0), libncurses5 (>= 5.9-20110507-1), x11-dev << Depends: << libncurses5-shlibs (>= 5.9-20110507-1), x11 << DescPort: Uses custom configure script. UseMaxBuildJobs: false Source: https://github.com/ocaml/ocaml/archive/%v.tar.gz SourceRename: %n-%v.tar.gz Source2: https://caml.inria.fr/pub/distrib/%n-4.12/%n-4.12-refman.pdf Source3: https://caml.inria.fr/pub/distrib/%n-4.12/%n-4.12-refman-html.tar.gz Source4: https://caml.inria.fr/pub/distrib/%n-4.12/%n-4.12-refman.info.tar.gz Source-Checksum: SHA256(adc07a3995362403f3cb11085a86354de08e5a7f9eb3c09be7bbcc38a3a26744) Source2-Checksum: SHA256(22e5a9fc498676ef33d3ae63d755ba0977be15706d2237daf6e563f9abeb86c9) Source3-Checksum: SHA256(78bb73b1ce8b88052dcbe9b59fdee4fda994cc2978ea5978831f227f77da82fb) Source4-Checksum: SHA256(36367f4a706a5beb0d6016f2e89559fb89cb65582c006875bd2dd66b7e9833c1) PatchFile: %n.patch PatchFile-MD5: 37ed1a21a282337c629c84a6f08f2160 PatchScript: << gzip -d ../infoman/ocaml*.gz cd .. && patch -p1 < %{PatchFile} # -fno-defer-pop does nothing and causes clang 5.1 to die. /usr/bin/sed -i .bak -e 's,-fno-defer-pop ,,' configure # autoconf2.6ish patch for modern XQuartz paths perl -pi -e "s|/usr/lpp/Xamples|/opt/X11|" configure << ConfigureParams: << --mandir=%p/share/man \ --disable-static << CompileScript: << #!/bin/sh -ex ./configure -prefix %p -mandir %p/share/man make -w world opt opt.opt << InstallScript: << make install DESTDIR=%d mv %i/lib/ocaml/ld.conf %i/lib/ocaml/ld.conf.orig sed -e "s|%d||" %i/lib/ocaml/ld.conf.orig > %i/lib/ocaml/ld.conf rm -f %i/lib/ocaml/ld.conf.orig # built-in emacs moved to a separate project at v4.08.0 #(cd emacs; make install-el BINDIR=%i/bin EMACSDIR=%i/share/emacs/site-lisp) # want main .info and its subfiles but not the LaTeX sources, etc. mkdir -p %i/share/info cp ../infoman/ocaml.info ../infoman/ocaml.info.body* %i/share/info mkdir -p %i/share/doc/%n cp -R ../htmlman %i/share/doc/%n install_name_tool -id %p/lib/ocaml/libasmrun_shared.so %i/lib/ocaml/libasmrun_shared.so install_name_tool -id %p/lib/ocaml/libcamlrun_shared.so %i/lib/ocaml/libcamlrun_shared.so install_name_tool -id %p/lib/ocaml/stublibs/dllcamlstr.so %i/lib/ocaml/stublibs/dllcamlstr.so #install_name_tool -id %p/lib/ocaml/stublibs/dllgraphics.so %i/lib/ocaml/stublibs/dllgraphics.so #install_name_tool -id %p/lib/ocaml/stublibs/dllraw_spacetime_lib.so %i/lib/ocaml/stublibs/dllraw_spacetime_lib.so install_name_tool -id %p/lib/ocaml/stublibs/dllthreads.so %i/lib/ocaml/stublibs/dllthreads.so install_name_tool -id %p/lib/ocaml/stublibs/dllunix.so %i/lib/ocaml/stublibs/dllunix.so #install_name_tool -id %p/lib/ocaml/stublibs/dllvmthreads.so %i/lib/ocaml/stublibs/dllvmthreads.so << # Removed as of 4.12.0. Delete lines upon next update. #!%p/lib/ocaml/stublibs/dllgraphics.so #!%p/lib/ocaml/stublibs/dllraw_spacetime_lib.so #!%p/lib/ocaml/stublibs/dllvmthreads.so Shlibs: << !%p/lib/ocaml/libasmrun_shared.so !%p/lib/ocaml/libcamlrun_shared.so !%p/lib/ocaml/stublibs/dllcamlstr.so !%p/lib/ocaml/stublibs/dllthreads.so !%p/lib/ocaml/stublibs/dllunix.so << InfoDocs: ocaml.info DocFiles: Changes README.adoc LICENSE INSTALL.adoc ../%n-4.12-refman.pdf DescDetail: << The main novelties compared with its ancestor, Caml Light, are: 1) Full support for objects and classes -- here combined for the first time with ML-style type reconstruction. 2) A powerful module calculus in the style of Standard ML (but retaining separate compilation). 3) A high-performance native code compiler (in addition to a Caml Light-style bytecode compiler). << DescPackaging: << dmacks overhauled infodoc stuff: patched main file to have dir header and uncompressed files so that fink's automatic infodoc dpkg scripts work. At v4.08, ocaml started building all former modules as (private) flat_namespace dylibs. This carries on to libaries built by other ocaml modules. See https://github.com/ocaml/ocaml/pull/988 << License: OSI-Approved Homepage: https://ocaml.org/ Maintainer: None