if building 32-bit objects in 64-bit environment, use -m32 flag
diff --git a/bin/mklib b/bin/mklib
index 6affa66..1e2a164 100755
--- a/bin/mklib
+++ b/bin/mklib
@@ -173,6 +173,15 @@
 		OPTS="${OPTS} -Xlinker --version-script=exptmp"
 		# exptmp is removed below
 	    fi
+
+	    # Check if objects are 32-bit and we're running in 64-bit
+	    # environment.  If so, pass -m32 flag to linker.
+	    set ${OBJECTS}
+	    ABI32=`file $1 | grep 32-bit`
+	    if [ "${ABI32}" -a `uname -m` = "x86_64" ] ; then
+		OPTS="-m32 ${OPTS}"
+	    fi
+
 	    if [ x${PATCH} = "x" ] ; then
 		VERSION="${MAJOR}.${MINOR}"
 	    else