The "findlib" library provides a scheme to manage reusable software
components (packages), and includes tools that support this
scheme. Packages are collections of OCaml modules for which
metainformation can be stored. The packages are kept in the filesystem
hierarchy, but with strict directory structure. The library contains
functions to look the directory up that stores a package, to query
metainformation about a package, and to retrieve dependency
information about multiple packages. There is also a tool that allows
the user to enter queries on the command-line. In order to simplify
compilation and linkage, there are new frontends of the various OCaml
compilers that can directly deal with packages.
===> The following configuration options are available for ocaml-findlib-1.9.6_3:
DOCS=on: Build and/or install documentation
TOOLBOX=on: Include toolbox interface (requires OCaml with Tk)
===> Use 'make config' to modify these settings
Mk/**ocaml.mk: Convert remaining bsd.ocaml.mk to Uses/ocaml.mk
- Instead of USE_OCAML=yes use USES=ocaml. If empty USES=ocaml implies
build and run
- Instead of USE_OCAMLFIND_PLIST use USES=ocaml:findplist which also
implies USES=ocaml:findlib
- Instead of USE_OCAML_CAMLP4 use USES=ocaml:camlp4
- Instead of USE_OCAML_FINDLIB use USES=ocaml:findlib
- Instead of USE_OCAML_LDCONFIG use USES=ocaml:ldconfig
- Instead of USE_OCAML_WASH use USES=ocaml:wash
- Instead of NO_OCAML_BUILDDEPENDS use USES=ocaml:run
- Instead of NO_OCAML_RUNDDEPENDS use USES=ocaml:build
- Instead of USE_OCAML_TK use USES=ocaml:tk which actually implies
USES=ocaml:tkbuild and USES=ocaml:tkrun
- Instead of NO_OCAMLTK_BUILDDEPENDS use USES=ocaml:tkrun
- Instead of NO_OCAMLTK_RUNDEPENDS use USES=ocaml:tkbuild
- USES=ocaml:dune remains unchanged
- Prepare to add/remove keywords easily
Approved by: mat (portmgr)
Reviewed by: freebsd@dev.thsi.be
Differential Revision: https://reviews.freebsd.org/D48227
ocaml: Updates to ocaml compiler and several ocaml ports
- Update devel/ocaml to 4.14.2 [1]
- Specify runtime dependency on GNU AS as full path, this fixes
build on armv6 - armv7 [1] [2]
- converters/ocaml-base64: Update to 3.5.1, add LICENSE, other
improvements
- converters/ocaml-jsonm: Strip shared objects [3]
- databases/ocaml-dbm: Update to 1.3, move to gitlub, other
improvements
- devel/menhir: Update to 20231231
- devel/ocaml-base: Unbreak non-x86 [2]
- devel/ocaml-camlp-streams: Silence patch and strip commands
- devel/ocaml-ipaddr: Update to 5.5.0
- devel/ocaml-lwt: Update to 5.7.0 [4]
(Only the first 15 lines of the commit message are shown above )
lang/ocaml: Update to 4.14.1
The 'force-safe-string; setting is NOT enabled, as opposed to the
new upstream default. OCaml users are encouraged to migrate to safe
strings as soon as possible.
- The X11 library isn't part of lang/ocaml anymore, users should
install x11-toolkits/ocaml-graphics.
- Add new 'ocaml' USES
- Bump PORTREVISION on dependent ports, due to ABI Change.
The update includes the following updates to existing ports (needed
to keep them working):
- devel/ocaml-camlp4: Updated to 4.14+1
(Only the first 15 lines of the commit message are shown above )
lang/ocaml: Update to 4.08.1
This update allows (and for some requires) to also update dependencies
to newer versions. Where possible I updated to the latest version.
The ocaml port now is MAKE_JOBS safe.
Changes to dependent ports included in this commit:
- devel/ocaml-sexplib: Rename to devel/ocaml-sexplib0 adapting to
upstream. Update to 0.16.0
- devel/coccinelle: Update to 1.1.1, moved to github
- devel/ocaml-camlp4: Update to 4.08+1
- devel/ocaml-camomile: Use dune for build, adapt port
- devel/ocaml-cppo: Fix lib files installation [1]
(Only the first 15 lines of the commit message are shown above )
Remove WWW entries moved into port Makefiles
Commit b7f05445c00f has added WWW entries to port Makefiles based on
WWW: lines in pkg-descr files.
This commit removes the WWW: lines of moved-over URLs from these
pkg-descr files.
Approved by: portmgr (tcberner)
Add WWW entries to port Makefiles
It has been common practice to have one or more URLs at the end of the
ports' pkg-descr files, one per line and prefixed with "WWW:". These
URLs should point at a project website or other relevant resources.
Access to these URLs required processing of the pkg-descr files, and
they have often become stale over time. If more than one such URL was
present in a pkg-descr file, only the first one was tarnsfered into
the port INDEX, but for many ports only the last line did contain the
port specific URL to further information.
There have been several proposals to make a project URL available as
a macro in the ports' Makefiles, over time.
(Only the first 15 lines of the commit message are shown above )
devel: remove 'Created by' lines
A big Thank You to the original contributors of these ports:
* "Waitman Gobble" <uzimac@da3m0n8t3r.com>
* <jkoshy@FreeBSD.org>
* Aaron Dalton <aaron@FreeBSD.org>
* Aaron Dalton <aaron@daltons.ca>
* Aaron H. K. Diep <ahkdiep@gmail.com>
* Aaron Hurt <ahurt@anbcs.com>
* Abel Chow <abel_chow@yahoo.com>
* Adam McLaurin
* Adam Saponara <as@php.net>
* Adam Weinberger <adamw@FreeBSD.org>
* Ade Lovett <ade@FreeBSD.org>
(Only the first 15 lines of the commit message are shown above )
devel/ocaml-findlib: the port had been updated to version 1.8.1
- This is not the latest version, but this step lubricates coming
next phase of our OCaml stack update
- Since we're post-4.06 now, remove support for Num library which
is a separate port/package
- Detect optionally installed libraries and adjust the packaging
list accordingly
- Spell `Tk' correctly in the TOOLBOX option description
PR: 238904, 262791
devel/ocaml-findlib: transient (minor) update to version 1.7.3
There should be no user-visible changes, but it makes easier to
handle Num library which was split off the core OCaml starting
with 4.06.0 release.
Update OCaml to version 4.05.0 (this is the last version where strings
are unsafe by default, which is the main motivation why it was picked,
but not the very latest one) and synchronize the rest of the stack and
dependent ports with it, particularly:
- Update `devel/ocaml-ocamlbuild' to version 0.14.0 and unbreak,
register build dependency on all ports that require it (should
be part of USE_OCAML, but we do not want to make any Mk-related
changes the for time being)
- Update `devel/ocaml-camlp4' to version 4.05+2
- Update `devel/ocaml-camlp5' to version 7.07 (the project had
moved to GitHub)
- Mark `devel/ocaml-deriving-ocsigen' as BROKEN for now, it is
very outdated and requires quite a lot of work
- Update `x11-toolkits/ocaml-labltk' to version 8.06.3
PR: 218333
Exp-run by: antoine
Add OPTIONS_DEFINE=DOCS for ports with %%PORTDOCS%% in the plist.
Where possible, correct a few instances where PORTDOCS was being used
to flag stuff in EXAMPLESDIR. For some ports, mostly those owned by
ruby@, PORTDOCS is applied to pretty much everything whether it's
documentation or example.
- Enable stage support - no functional changes
In particular, files installed by findlib will still be installed directly
into the default ocaml library directory, as regular users would expect.
- Bump portrevisions on all ocaml libraries, as it appears that compiled
interface files (.cmi) are not backward compatible with a newer ocaml
version.
PR: ports/156195
Suggested by: mandree