Caml-findlib version 1.2.5 - How to Download and Install on Mac OS X
Sunday the 22nd of November, 2009

    caml-findlib  most recent diff


    version 1.2.5

      View the most recent changes for the caml-findlib port at: caml-findlib.darwinports.com/diff
      Scroll down toward the bottom of the page to get installation instructions for caml-findlib.
      The raw portfile for caml-findlib 1.2.5 is located here:
      http://caml-findlib.darwinports.com/dports/devel/caml-findlib/Portfile
      Find related portfiles with the unique DarwinPorts.com search feature.
      Check for any related Fink projects here: pdb.finkproject.org/pdb/package.php/caml-findlib


      The caml-findlib Portfile 59356 2009-10-13 22:25:22Z avsm macports.org $

      PortSystem 1.0
      Name: caml-findlib
      Version: 1.2.5
      distname findlib-${version}
      Category: devel ml
      Maintainers: avsm
      Description: Objective Caml library management system
      Long Description: 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.
      Homepage: http://projects.camlcity.org/projects/findlib.html
      Platform: darwin
      Master Sites: http://download.camlcity.org/download/
      build.target all opt
      use_parallel_build no
      Checksums: md5 db12a92903c2869bb89e1a6446db269e sha1 e0c6da48f9ea40c67f1d4857b428d20335b0c847 rmd160 a122ce8ef60fce12c2b30f7275a4f1480d0833bc

      livecheck.type regex
      livecheck.regex "findlib-(.*?).tar.gz"

      depends_lib port:ocaml

      configure.args -bindir ${prefix}/bin -mandir ${prefix}/share/man -sitelib ${prefix}/lib/ocaml/site-lib

      configure.pre_args ""

      universal_variant no

      destroot.destdir prefix=${destroot}

      # `ocamlfind printconf destdir` returns nothing if the dir isn't in place
      # but we know it's the same as our site-lib dir
      set ocamlfind_destdir [file normalize ${prefix}/lib/ocaml/site-lib/stublibs]
      destroot.keepdirs ${destroot}${ocamlfind_destdir}
      post-destroot {
      file mkdir ${destroot}${ocamlfind_destdir}
      }

      post-activate {
      # Add our stublibs dir path to ld.conf
      set ldconfpath [exec ${destroot}${prefix}/bin/ocamlfind printconf ldconf]
      # ld.conf should exist since ocaml is installed, but lets just be safe anyway
      if {[file exists $ldconfpath]} then {
      # make sure ld.conf doesn't already have this line, so if the user installs,
      # uninstalls, then installs again, we won't duplicate it
      set has_line 0
      set ldconf [open $ldconfpath r+]
      while {[gets $ldconf line] != -1 && !$has_line} {
      if {[string equal $line $ocamlfind_destdir]} then {
      set has_line 1
      }
      }
      if {!$has_line} {
      ui_msg "## Adding line `${ocamlfind_destdir}' to file ${ldconfpath}"
      ui_msg "## Be sure to remove this line if you uninstall ${name}"
      puts $ldconf $ocamlfind_destdir
      }
      close $ldconf
      } else {
      ui_warn "File ${ldconfpath} doesn't seem to be installed."
      ui_warn "Is ocaml installed properly?"
      }
      }

      # pre-deactivate doesn't actually exist
      # which annoys me, because it means I can't remove the line I added to ld.conf
      #pre-deactivate {
      # # remove our stublibs dir path from ld.conf
      # set ocamlfind_destdir [file normalize ${prefix}/lib/ocaml/site-lib/stublibs]
      # set ldconfpath ${destroot}[exec ${destroot}${prefix}/bin/ocamlfind printconf ldconf]
      # set ldconfoutpath [file dirname $ldconfpath]/.[file tail $ldconfpath]~
      # if {[file exists $ldconfpath]} then {
      # set ldconf [open $ldconfpath r]
      # set ldconfout [open $ldconfoutpath w]
      # while {[gets $ldconf line] != -1} {
      # if {![string equal $line $ocamlfind_destdir]} {
      # puts $ldconfout $line
      # }
      # }
      # close $ldconfout
      # close $ldconf
      # file rename -force $ldconfoutpath $ldconfpath
      # }
      #}

      Variant: toolbox {
      configure.args-append -with-toolbox
      depends_lib bin:lablgtk:lablgtk
      }

    If you haven't already installed Darwin Ports, you can find easy instructions for doing so at the main Darwin Ports page.

    Once Darwin Ports has been installed, in a terminal window and while online, type the following and hit return:


      %  cd /opt/local/bin/portslocation/dports/caml-findlib
      % sudo port install caml-findlib
      Password:
    You will then be prompted for your root password, which you should enter. You may have to wait for a few minutes while the software is retrieved from the network and installed for you. Y ou should see something that looks similar to:

      ---> Fetching caml-findlib
      ---> Verifying checksum for caml-findlib
      ---> Extracting caml-findlib
      ---> Configuring caml-findlib
      ---> Building caml-findlib with target all
      ---> Staging caml-findlib into destroot
      ---> Installing caml-findlib
    - Make sure that you do not close the terminal window while Darwin Ports is working. Once the software has been installed, you can find further information about using caml-findlib with these commands:
      %  man caml-findlib
      % apropos caml-findlib
      % which caml-findlib
      % locate caml-findlib

     Where to find more information:

    Darwin Ports



    Lightbox this page.