diff --git a/configure b/configure
index cf5665c06d1dd7f022b0411e0cfd8a169b0c8b5d..acab82849b85c2e9c48fb11762df31536a90fb5f 100755
--- a/configure
+++ b/configure
@@ -1,5 +1,5 @@
 #! /bin/sh
-# From configure.ac Revision: 42982 .
+# From configure.ac Revision: 43245 .
 # Guess values for system-dependent variables and create Makefiles.
 # Generated by GNU Autoconf 2.60a.
 #
@@ -655,6 +655,7 @@ HOST_PLATFORM
 HOST_CPU
 HOST_VENDOR
 HOST_OS
+OSARCH
 UNAME
 PBX_OSREV
 CC
@@ -2046,6 +2047,17 @@ HOST_OS=${host_os}
 
 
 
+case "${host_os}" in
+     freebsd*)
+     OSARCH=FreeBSD
+     ;;
+     *)
+     OSARCH=${HOST_OS}
+     ;;
+esac
+
+
+
 #  check for uname
 if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}uname", so it can be a program name with args.
@@ -30356,6 +30368,7 @@ HOST_PLATFORM!$HOST_PLATFORM$ac_delim
 HOST_CPU!$HOST_CPU$ac_delim
 HOST_VENDOR!$HOST_VENDOR$ac_delim
 HOST_OS!$HOST_OS$ac_delim
+OSARCH!$OSARCH$ac_delim
 UNAME!$UNAME$ac_delim
 PBX_OSREV!$PBX_OSREV$ac_delim
 CC!$CC$ac_delim
@@ -30399,7 +30412,6 @@ GNUTLS_INCLUDE!$GNUTLS_INCLUDE$ac_delim
 PBX_GNUTLS!$PBX_GNUTLS$ac_delim
 GSM_LIB!$GSM_LIB$ac_delim
 GSM_INCLUDE!$GSM_INCLUDE$ac_delim
-PBX_GSM!$PBX_GSM$ac_delim
 _ACEOF
 
   if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 97; then
@@ -30441,6 +30453,7 @@ _ACEOF
 ac_delim='%!_!# '
 for ac_last_try in false false false false false :; do
   cat >conf$$subs.sed <<_ACEOF
+PBX_GSM!$PBX_GSM$ac_delim
 IKSEMEL_LIB!$IKSEMEL_LIB$ac_delim
 IKSEMEL_INCLUDE!$IKSEMEL_INCLUDE$ac_delim
 PBX_IKSEMEL!$PBX_IKSEMEL$ac_delim
@@ -30537,7 +30550,6 @@ PBX_ZAPTEL!$PBX_ZAPTEL$ac_delim
 ALLOCA!$ALLOCA$ac_delim
 EGREP!$EGREP$ac_delim
 LIBOBJS!$LIBOBJS$ac_delim
-POW_LIB!$POW_LIB$ac_delim
 _ACEOF
 
   if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 97; then
@@ -30579,6 +30591,7 @@ _ACEOF
 ac_delim='%!_!# '
 for ac_last_try in false false false false false :; do
   cat >conf$$subs.sed <<_ACEOF
+POW_LIB!$POW_LIB$ac_delim
 GC_CFLAGS!$GC_CFLAGS$ac_delim
 GC_LDFLAGS!$GC_LDFLAGS$ac_delim
 GSM_INTERNAL!$GSM_INTERNAL$ac_delim
@@ -30601,7 +30614,7 @@ CURL_LIB!$CURL_LIB$ac_delim
 LTLIBOBJS!$LTLIBOBJS$ac_delim
 _ACEOF
 
-  if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 20; then
+  if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 21; then
     break
   elif $ac_last_try; then
     { { echo "$as_me:$LINENO: error: could not make $CONFIG_STATUS" >&5
diff --git a/configure.ac b/configure.ac
index f6c066802afd96a2de3e347ded217a059f39b720..71ef5548660898803acb75946531ed600767bd58 100644
--- a/configure.ac
+++ b/configure.ac
@@ -60,6 +60,17 @@ AC_SUBST(HOST_CPU)
 AC_SUBST(HOST_VENDOR)
 AC_SUBST(HOST_OS)
 
+case "${host_os}" in
+     freebsd*)
+     OSARCH=FreeBSD
+     ;;
+     *)
+     OSARCH=${HOST_OS}
+     ;;
+esac
+
+AC_SUBST(OSARCH)
+
 #  check for uname
 AC_PATH_TOOL([UNAME], [uname], No)
 if test ! x"${UNAME}" = xNo; then
diff --git a/makeopts.in b/makeopts.in
index 2167696b1365d97a4b0a1fb0ed29e4ad30731fba..683484aa6a3c91e2efe8125803d0949bcc7c6e29 100644
--- a/makeopts.in
+++ b/makeopts.in
@@ -30,7 +30,7 @@ HOST_VENDOR=@HOST_VENDOR@
 HOST_OS=@HOST_OS@
 
 PROC=@HOST_CPU@
-OSARCH=@HOST_OS@
+OSARCH=@OSARCH@
 OSREV=@PBX_OSREV@
 
 GC_CFLAGS=@GC_CFLAGS@