Blame configure

Packit 1f8b6b
#! /bin/sh
Packit 1f8b6b
Packit 1f8b6b
# Try to turn internationalization off
Packit 1f8b6b
unset LANG
Packit 1f8b6b
unset LC_ALL LC_CTYPE LC_COLLATE LC_MESSAGES LC_MONETARY LC_NUMERIC LC_TIME
Packit 1f8b6b
Packit 1f8b6b
set -e
Packit 1f8b6b
Packit 1f8b6b
PINNED=0
Packit 1f8b6b
for i in "$@"; do
Packit 1f8b6b
  case $i in
Packit 1f8b6b
    --bindir=*)
Packit 1f8b6b
      BINDIR=${i##*=}
Packit 1f8b6b
      ;;
Packit 1f8b6b
    --libdir=*)
Packit 1f8b6b
      LIBDIR=${i##*=}
Packit 1f8b6b
      ;;
Packit 1f8b6b
    --pkgdir=*)
Packit 1f8b6b
      PKGDIR=${i##*=}
Packit 1f8b6b
      ;;
Packit 1f8b6b
    --pinned*)
Packit 1f8b6b
      PINNED=1
Packit 1f8b6b
      ;;
Packit 1f8b6b
    *)
Packit 1f8b6b
      echo "usage: ./configure [--bindir=<dir>] [--libdir=<dir>] [--pkgdir=<dir>]" 1>&2
Packit 1f8b6b
      exit 2
Packit 1f8b6b
      ;;
Packit 1f8b6b
  esac
Packit 1f8b6b
done
Packit 1f8b6b
Packit 1f8b6b
# OCaml is already installed, this means we should have everything we
Packit 1f8b6b
# need. Just dump its configuration.
Packit 1f8b6b
Packit 1f8b6b
ocaml_version=`ocamlc -version`
Packit 1f8b6b
major=`echo $ocaml_version | cut -d. -f1`
Packit 1f8b6b
minor=`echo $ocaml_version | cut -d. -f2`
Packit 1f8b6b
Packit 1f8b6b
if [ $major -lt 4 -o \( $major -eq 4 -a $minor -lt 2 \) ]; then
Packit 1f8b6b
    echo "The standalone Camlp4 requires OCaml >= 4.02."
Packit 1f8b6b
    echo "For previous versions of OCaml use the Camlp4 distributed with OCaml."
Packit 1f8b6b
    exit 2
Packit 1f8b6b
elif [ $major -ne 4 -o $minor -ne 7 ]; then
Packit 1f8b6b
    echo "This version of Camlp4 is for OCaml 4.07 but you are using OCaml $ocaml_version."
Packit 1f8b6b
    if [ -d .git ] ; then
Packit 1f8b6b
      if [ $PINNED -eq 1 ] ; then
Packit 1f8b6b
        echo "You've used the wrong opam pin URL for this switch.">&2
Packit 1f8b6b
        echo "Try https://github.com/ocaml/camlp4.git#$major.$minor instead">&2
Packit 1f8b6b
      else
Packit 1f8b6b
        echo "You appear to be building Camlp4 from git, so try the $major.$minor branch."
Packit 1f8b6b
      fi
Packit 1f8b6b
    fi
Packit 1f8b6b
    exit 2
Packit 1f8b6b
fi
Packit 1f8b6b
Packit 1f8b6b
ocamlc -config | tr -d '\015' | sed 's/: /="/;s/$/"/' > config.sh
Packit 1f8b6b
ocamlc -config | tr -d '\015' | sed 's/^/let /;s/: / = "/;s/$/"/' > myocamlbuild_config.ml
Packit 1f8b6b
Packit 1f8b6b
# Add a few things to config.sh
Packit 1f8b6b
Packit 1f8b6b
. ./config.sh
Packit 1f8b6b
Packit 1f8b6b
if [ "$os_type" = Win32 ]; then
Packit 1f8b6b
    ext_exe=".exe"
Packit 1f8b6b
else
Packit 1f8b6b
    ext_exe=""
Packit 1f8b6b
fi
Packit 1f8b6b
Packit 1f8b6b
OCAMLC="`command -v ocamlc`"
Packit 1f8b6b
LIBDIR="${LIBDIR:-$standard_library}"
Packit 1f8b6b
BINDIR="${BINDIR:-`dirname $OCAMLC`}"
Packit 1f8b6b
PKGDIR="${PKGDIR:-$standard_library}"
Packit 1f8b6b
Packit 1f8b6b
if [ -x "`command -v ocamlopt`" ]; then
Packit 1f8b6b
    OB_FLAGS=""
Packit 1f8b6b
else
Packit 1f8b6b
    OB_FLAGS="-byte-plugin"
Packit 1f8b6b
fi
Packit 1f8b6b
Packit 1f8b6b
COMPLIBS="`ocamlc -where`/compiler-libs"
Packit 1f8b6b
if [ -f "$COMPLIBS/opttoploop.cmi" ]; then
Packit 1f8b6b
    OCAMLNAT=true
Packit 1f8b6b
else
Packit 1f8b6b
    OCAMLNAT=false
Packit 1f8b6b
fi
Packit 1f8b6b
Packit 1f8b6b
cat >> config.sh <
Packit 1f8b6b
A="$ext_lib"
Packit 1f8b6b
O="$ext_obj"
Packit 1f8b6b
EXE="$ext_exe"
Packit 1f8b6b
LIBDIR="$LIBDIR"
Packit 1f8b6b
BINDIR="$BINDIR"
Packit 1f8b6b
PKGDIR="$PKGDIR"
Packit 1f8b6b
OB_FLAGS=$OB_FLAGS
Packit 1f8b6b
OCAMLNAT=$OCAMLNAT
Packit 1f8b6b
EOF
Packit 1f8b6b
Packit 1f8b6b
cat >> myocamlbuild_config.ml <
Packit 1f8b6b
let libdir="$LIBDIR"
Packit 1f8b6b
let bindir="$BINDIR"
Packit 1f8b6b
let pkgdir="$PKGDIR"
Packit 1f8b6b
let ocamlnat=$OCAMLNAT
Packit 1f8b6b
EOF