diff --git a/doc/Makefile b/doc/Makefile
index bf7e70ab044e1e97c9a21f73ccb85e4ae9530e4c..f9db594cac7bf39ff65205390a12bc352050218f 100644
--- a/doc/Makefile
+++ b/doc/Makefile
@@ -28,7 +28,6 @@ MAKECONFIG_DIR=$(FRAMAC_SRC)/share
 
 include $(FRAMAC_SRC)/share/Makefile.common
 
-DOCDIR ?= "$(DESTDIR)${prefix}/share/doc"
 FRAMAC_DOCDIR ?= $(DOCDIR)/frama-c
 
 .PHONY: .force
diff --git a/ivette/Makefile b/ivette/Makefile
index b9f07f68e9113757c6607bde8ad46d871707405e..05418ec12edf6e21d7fcaed72b2a9e71bf25a5bf 100644
--- a/ivette/Makefile
+++ b/ivette/Makefile
@@ -159,9 +159,8 @@ include $(DOME)/template/makefile
 # --- Ivette Installation
 # --------------------------------------------------------------------------
 
-INSTALLDIR?=/usr/local
-BINDIR=$(INSTALLDIR)/bin
-LIBDIR=$(INSTALLDIR)/lib
+BINDIR=$(PREFIX)/bin
+LIBDIR=$(PREFIX)/lib
 
 dist-dir:
 	@echo "Cleaning dist"
diff --git a/opam/opam b/opam/opam
index 6f16116da6577c2d378aaa2c52a49d4f791eb384..b6bf8efb427d35b976d5da765f5abbdab3427ad4 100644
--- a/opam/opam
+++ b/opam/opam
@@ -93,7 +93,7 @@ build: [
 
 install: [
   [make "INSTALLDIR=%{prefix}%" "install"]
-  [make "-C" "doc" "install"] {with-doc}
+  [make "PREFIX=%{prefix}%" "-C" "doc" "install"] {with-doc}
 ]
 
 run-test: [
diff --git a/share/Makefile.common b/share/Makefile.common
index fed4267889d3444317af1daff6330da7f1891d90..8ce54338620771a0d474d640821cda807259d3c5 100644
--- a/share/Makefile.common
+++ b/share/Makefile.common
@@ -32,6 +32,18 @@
 
 PLATFORM:=$(shell uname -s)
 
+#############
+# Locations #
+#############
+
+# Note that Dune rules do NOT use these variables.
+# They are used by other Makefiles
+#   - Ivette (PREFIX)
+#   - Manuals (DOCDIR)
+
+PREFIX ?= /usr/local
+DOCDIR ?= $(PREFIX)/share/doc
+
 #############
 # Verbosing #
 #############