diff --git a/Makefile b/Makefile
index 520d86c838e93bd24273c49aa6d9c83714ec3bdb..3f622025116ad9a7cd634bb2f67ce0abd60ed716 100644
--- a/Makefile
+++ b/Makefile
@@ -95,14 +95,18 @@ ifeq ($(OSARCH),SunOS)
 else
   ASTETCDIR=$(sysconfdir)/asterisk
   ASTLIBDIR=$(libdir)/asterisk
-  ASTVARLIBDIR=$(localstatedir)/lib/asterisk
-  ASTSPOOLDIR=$(localstatedir)/spool/asterisk
-  ASTLOGDIR=$(localstatedir)/log/asterisk
   ASTHEADERDIR=$(includedir)/asterisk
   ASTBINDIR=$(bindir)
   ASTSBINDIR=$(sbindir)
+  ASTSPOOLDIR=$(localstatedir)/spool/asterisk
+  ASTLOGDIR=$(localstatedir)/log/asterisk
   ASTVARRUNDIR=$(localstatedir)/run
   ASTMANDIR=$(mandir)
+ifeq ($(OSARCH),FreeBSD)
+  ASTVARLIBDIR=$(prefix)/share/asterisk
+else
+  ASTVARLIBDIR=$(localstatedir)/lib/asterisk
+endif
 endif
 ASTDATADIR?=$(ASTVARLIBDIR)
 
diff --git a/configure.ac b/configure.ac
index 751526cc1e30fbd231197dac278db8486cbbe681..2dba79ecbfe092f982f50133677d27cad87ef028 100644
--- a/configure.ac
+++ b/configure.ac
@@ -28,19 +28,17 @@ case "${host}" in
      ;;
      *)
      ac_default_prefix=/usr
+     if test ${sysconfdir} = '${prefix}/etc'; then
+        sysconfdir=/etc
+     fi
+     if test ${mandir} = '${prefix}/man'; then
+        mandir=/usr/share/man
+     fi
      ;;
 esac
 
-if test ${sysconfdir} = '${prefix}/etc'; then
-   sysconfdir=/etc
-fi
-
 if test ${localstatedir} = '${prefix}/var'; then
-   localstatedir=/var
-fi
-
-if test ${mandir} = '${prefix}/man'; then
-   mandir=/usr/share/man
+     localstatedir=/var
 fi
 
 ### ** Platform.