lang/ocaml 4.05.0_1 MidnightBSD
Objective Caml compiler and programming environment
- System
- MidnightBSD
- Repository
- mports
- Maintainer
- [email protected]
- Last update
- Commit
c92ebc2bbc- License
- QPL10, lgpl
- Categories
- lang
Description
Objective Caml is an implementation of the ML language, based on the Caml Light dialect extended with a complete class-based object system and a powerful module system in the style of Standard ML.
Objective Caml comprises two compilers. One generates bytecode which is then interpreted by a C program. This compiler runs quickly, generates compact code with moderate memory requirements, and is portable to essentially any 32 or 64 bit Unix platform. Performance of generated programs is quite good for a bytecoded implementation: almost twice as fast as Caml Light 0.7. This compiler can be used either as a standalone, batch-oriented compiler that produces standalone programs, or as an interactive, toplevel-based system.
The other compiler generates high-performance native code for a number of processors. Compilation takes longer and generates bigger code, but the generated programs deliver excellent performance, while retaining the moderate memory requirements of the bytecode compiler.
In the other systems
| System | Port | Version |
|---|---|---|
| MidnightBSD | lang/ocaml | 4.05.0_1 |
| FreeBSD | lang/ocaml | 4.14.2 |
| OpenBSD | lang/ocaml | 4.14.2 |
| NetBSD | lang/ocaml | 4.14.3 |
| DragonFly | lang/ocaml | 4.14.2 |
| HardenedBSD | lang/ocaml | 4.14.2 |
| GhostBSD | lang/ocaml | 4.14.2 |
Install
Binary package:
mport install ocaml${SFX}
From mports:
cd /usr/mports/lang/ocaml && make install clean
To depend on this port in another port's Makefile:
RUN_DEPENDS= ocaml${SFX}>0:lang/ocaml
Dependencies
As this port's Makefile names them.
Build 1
${LOCALBASE}/bin/as: devel/binutils
Runtime 1
${LOCALBASE}/bin/as: devel/binutils
Build dependencies 1
Run dependencies 1
No port depends on this one.
Configuration
Options name: lang_ocaml
| Option | Default | Description |
|---|---|---|
| DOCS | off | |
| EXAMPLES | off | |
| THREADS | on | |
| X11 | on |
- USES
- cpe compiler:c11 gmake tar:xz
- Service scripts
- none
- Conflicts with
- metaocaml-[0-9]*
Files
Manual pages 173
- Arg(3)
- Array(3)
- ArrayLabels(3)
- Ast_helper(3)
- Ast_helper.Cf(3)
- Ast_helper.Ci(3)
- Ast_helper.Cl(3)
- Ast_helper.Const(3)
- Ast_helper.Csig(3)
- Ast_helper.Cstr(3)
- Ast_helper.Ctf(3)
- Ast_helper.Cty(3)
- Ast_helper.Exp(3)
- Ast_helper.Incl(3)
- Ast_helper.Mb(3)
- Ast_helper.Md(3)
- Ast_helper.Mod(3)
- Ast_helper.Mtd(3)
- Ast_helper.Mty(3)
- Ast_helper.Opn(3)
- Ast_helper.Pat(3)
- Ast_helper.Sig(3)
- Ast_helper.Str(3)
- Ast_helper.Te(3)
- Ast_helper.Typ(3)
- Ast_helper.Type(3)
- Ast_helper.Val(3)
- Ast_helper.Vb(3)
- Ast_invariants(3)
- Ast_iterator(3)
- Ast_mapper(3)
- Asttypes(3)
- Attr_helper(3)
- Bigarray(3)
- Bigarray.Array0(3)
- Bigarray.Array1(3)
- Bigarray.Array2(3)
- Bigarray.Array3(3)
- Bigarray.Genarray(3)
- Buffer(3)
- Builtin_attributes(3)
- Bytes(3)
- BytesLabels(3)
- Callback(3)
- CamlinternalFormat(3)
- CamlinternalFormatBasics(3)
- CamlinternalLazy(3)
- CamlinternalMod(3)
- CamlinternalOO(3)
- Char(3)
- Complex(3)
- Depend(3)
- Depend.StringMap(3)
- Depend.StringSet(3)
- Digest(3)
- Docstrings(3)
- Ephemeron(3)
- Ephemeron.GenHashTable(3)
- Ephemeron.GenHashTable.MakeSeeded(3)
- Ephemeron.K1(3)
- Ephemeron.K1.Make(3)
- Ephemeron.K1.MakeSeeded(3)
- Ephemeron.K2(3)
- Ephemeron.K2.Make(3)
- Ephemeron.K2.MakeSeeded(3)
- Ephemeron.Kn(3)
- Ephemeron.Kn.Make(3)
- Ephemeron.Kn.MakeSeeded(3)
- Ephemeron.S(3)
- Ephemeron.SeededS(3)
- Filename(3)
- Format(3)
- Gc(3)
- Genlex(3)
- Hashtbl(3)
- Hashtbl.HashedType(3)
- Hashtbl.Make(3)
- Hashtbl.MakeSeeded(3)
- Hashtbl.S(3)
- Hashtbl.SeededHashedType(3)
- Hashtbl.SeededS(3)
- Int32(3)
- Int64(3)
- Lazy(3)
- Lexer(3)
- Lexing(3)
- List(3)
- ListLabels(3)
- Location(3)
- Longident(3)
- Map(3)
- Map.Make(3)
- Map.OrderedType(3)
- Map.S(3)
- Marshal(3)
- MoreLabels(3)
- MoreLabels.Hashtbl(3)
- MoreLabels.Hashtbl.HashedType(3)
- MoreLabels.Hashtbl.Make(3)
- MoreLabels.Hashtbl.MakeSeeded(3)
- MoreLabels.Hashtbl.S(3)
- MoreLabels.Hashtbl.SeededHashedType(3)
- MoreLabels.Hashtbl.SeededS(3)
- MoreLabels.Map(3)
- MoreLabels.Map.Make(3)
- MoreLabels.Map.OrderedType(3)
- MoreLabels.Map.S(3)
- MoreLabels.Set(3)
- MoreLabels.Set.Make(3)
- MoreLabels.Set.OrderedType(3)
- MoreLabels.Set.S(3)
- Nativeint(3)
- Num(3)
- Obj(3)
- Obj.Ephemeron(3)
- Oo(3)
- Parse(3)
- Parser(3)
- Parsetree(3)
- Parsing(3)
- Pervasives(3)
- Pervasives.LargeFile(3)
- Pprintast(3)
- Printast(3)
- Printexc(3)
- Printexc.Slot(3)
- Printf(3)
- Queue(3)
- Random(3)
- Random.State(3)
- Scanf(3)
- Scanf.Scanning(3)
- Set(3)
- Set.Make(3)
- Set.OrderedType(3)
- Set.S(3)
- Sort(3)
- Spacetime(3)
- Spacetime.Series(3)
- Spacetime.Snapshot(3)
- Stack(3)
- StdLabels(3)
- StdLabels.Array(3)
- StdLabels.Bytes(3)
- StdLabels.List(3)
- StdLabels.String(3)
- Str(3)
- Stream(3)
- String(3)
- StringLabels(3)
- Syntaxerr(3)
- Sys(3)
- Uchar(3)
- Unix(3)
- Unix.LargeFile(3)
- Weak(3)
- Weak.Make(3)
- Weak.S(3)
- ocaml(1)
- ocamlc(1)
- ocamlc.opt(1)
- ocamlcp(1)
- ocamldebug(1)
- ocamldep(1)
- ocamldoc(1)
- ocamllex(1)
- ocamlmktop(1)
- ocamlopt(1)
- ocamlopt.opt(1)
- ocamloptp(1)
- ocamlprof(1)
- ocamlrun(1)
- ocamlyacc(1)
pkg-plist 2000
- man/man1/ocamlyacc.1.gz
- man/man1/ocamldoc.1.gz
- man/man1/ocamloptp.1.gz
- man/man1/ocamldep.1.gz
- man/man1/ocaml.1.gz
- man/man1/ocamlprof.1.gz
- man/man1/ocamlc.opt.1.gz
- man/man1/ocamlopt.1.gz
- man/man1/ocamlmktop.1.gz
- man/man1/ocamlc.1.gz
- man/man1/ocamllex.1.gz
- man/man1/ocamldebug.1.gz
- man/man1/ocamlcp.1.gz
- man/man1/ocamlrun.1.gz
- man/man1/ocamlopt.opt.1.gz
- man/man3/Arg.3o.gz
- man/man3/Hashtbl.Make.3o.gz
- man/man3/MoreLabels.Set.Make.3o.gz
- man/man3/Ast_helper.Typ.3o.gz
- man/man3/Ephemeron.Kn.3o.gz
- man/man3/Bigarray.Array0.3o.gz
- man/man3/Ast_helper.Cty.3o.gz
- man/man3/Int64.3o.gz
- man/man3/Ephemeron.SeededS.3o.gz
- man/man3/MoreLabels.Hashtbl.Make.3o.gz
- man/man3/Attr_helper.3o.gz
- man/man3/MoreLabels.Hashtbl.SeededHashedType.3o.gz
- man/man3/Spacetime.3o.gz
- man/man3/Gc.3o.gz
- man/man3/StdLabels.String.3o.gz
- man/man3/Filename.3o.gz
- man/man3/Builtin_attributes.3o.gz
- man/man3/Ast_helper.Cf.3o.gz
- man/man3/String.3o.gz
- man/man3/Ephemeron.K1.Make.3o.gz
- man/man3/Map.3o.gz
- man/man3/StringLabels.3o.gz
- man/man3/Bigarray.Array1.3o.gz
- man/man3/CamlinternalMod.3o.gz
- man/man3/StdLabels.Array.3o.gz
- man/man3/Set.3o.gz
- man/man3/Ephemeron.K1.3o.gz
- man/man3/MoreLabels.3o.gz
- man/man3/Depend.StringSet.3o.gz
- man/man3/Depend.StringMap.3o.gz
- man/man3/CamlinternalOO.3o.gz
- man/man3/MoreLabels.Map.3o.gz
- man/man3/Weak.3o.gz
- man/man3/Scanf.3o.gz
- man/man3/MoreLabels.Set.3o.gz
- man/man3/Ast_helper.Opn.3o.gz
- man/man3/Bytes.3o.gz
- man/man3/Ephemeron.K2.3o.gz
- man/man3/Ast_mapper.3o.gz
- man/man3/Bigarray.Array2.3o.gz
- man/man3/Ast_helper.Csig.3o.gz
- man/man3/Ast_helper.Ci.3o.gz
- man/man3/ArrayLabels.3o.gz
- man/man3/CamlinternalLazy.3o.gz
- man/man3/Obj.3o.gz
- man/man3/Bigarray.3o.gz
- man/man3/Buffer.3o.gz
- man/man3/Int32.3o.gz
- man/man3/MoreLabels.Hashtbl.3o.gz
- man/man3/Lexing.3o.gz
- man/man3/Printexc.Slot.3o.gz
- man/man3/Ephemeron.K1.MakeSeeded.3o.gz
- man/man3/Unix.3o.gz
- man/man3/Ast_helper.Te.3o.gz
- man/man3/MoreLabels.Map.Make.3o.gz
- man/man3/MoreLabels.Map.OrderedType.3o.gz
- man/man3/Ephemeron.Kn.MakeSeeded.3o.gz
- man/man3/Nativeint.3o.gz
- man/man3/Uchar.3o.gz
- man/man3/Ast_helper.Mb.3o.gz
- man/man3/ListLabels.3o.gz
- man/man3/Ast_helper.Type.3o.gz
- man/man3/Complex.3o.gz
- man/man3/Bigarray.Array3.3o.gz
- man/man3/MoreLabels.Hashtbl.SeededS.3o.gz
- man/man3/Hashtbl.3o.gz
- man/man3/Pervasives.LargeFile.3o.gz
- man/man3/CamlinternalFormat.3o.gz
- man/man3/Ephemeron.K2.MakeSeeded.3o.gz
- man/man3/Printexc.3o.gz
- man/man3/Ast_helper.Val.3o.gz
- man/man3/Stack.3o.gz
- man/man3/Hashtbl.SeededHashedType.3o.gz
- man/man3/Set.OrderedType.3o.gz
- man/man3/Ast_helper.Mtd.3o.gz
- man/man3/Obj.Ephemeron.3o.gz
- man/man3/Printast.3o.gz
- man/man3/Ast_helper.Sig.3o.gz
- man/man3/Scanf.Scanning.3o.gz
- man/man3/BytesLabels.3o.gz
- man/man3/Asttypes.3o.gz
- man/man3/Oo.3o.gz
- man/man3/Map.S.3o.gz
- man/man3/Random.State.3o.gz
- man/man3/Syntaxerr.3o.gz
The first 100 are listed.
distinfo 4
| File | Size | SHA256 |
|---|---|---|
| ocaml-4.05.0.tar.xz | 2.442036e+06 | 04a527ba14b4d7d1b2ea7b2ae21aefecfa8d304399db94f35a96df1459e02ef9 |
| ocaml-4.05-refman-html.tar.gz | 882287 | 2524723648dbbc34b42cbe2fe06822b79837299429d26ff037169b568888cd9c |
| ocaml-4.05-refman.ps.gz | 1.221553e+06 | 1540f86028a9460313b5ab3e0544e280052577d5dc4966f80647e1f49c5ab8df |
| ocaml-4.05-refman.pdf | 1.741857e+06 | 3d3a82a676668ccf66fa6d88f46a2496c89b1488ee6098585a6b7f22a9171eef |
Master sites 3
- http://caml.inria.fr/pub/distrib/${DISTNAME:R}/
- GENTOO
- http://caml.inria.fr/pub/distrib/${DISTNAME:R}/:docs
Commit history 3
| Date | Commit | Credits | Log message |
|---|---|---|---|
c92ebc2bbc |
Lucas Holt | lang/ocaml: fix the packing list for the nox11 flavor and drop duplicate docs Two independent packing list bugs.
The X11 option already drives PLIST_SUB (X11="" / "@comment ") and passes
-no-graph when it is off, but none of the graphics entries carried the
%%X11%% marker, so ocaml-nox11 demanded 14 files its own build never
produces:
lib/ocaml/graphics.cma not installed.
lib/ocaml/libgraphics.a not installed.
...
Fake failed.
Separately, the documentation was listed twice. pkg-plist named all 491
%%DOCSDIR%% files by hand while PORTDOCS already installs htmlman and the
two reference manuals, so add-plist-docs appended the same files again as
absolute paths. Each doc file appeared once as
"share/doc/ocaml/htmlman/libnum.html" and once as
"/usr/local/share/doc/ocaml/htmlman/libnum.html", and installing the package
failed on the second copy:
… |
|
4f9e4a9bc0 |
Lucas Holt | lang/ocaml: use actual documentation filename AI-Assisted-by: OpenAI Codex <[email protected]>
Signed-off-by: Lucas Holt <[email protected]> |
|
83c0911e47 |
Lucas Holt | lang/ocaml: keep doc directory entries at plist end Remove duplicate early DOCSDIR directory entries so package extraction creates documentation files before preserving the empty directory entries at the end of the plist.
AI-Assisted-by: Codex <[email protected]>
Signed-off-by: Lucas Holt <[email protected]> |