diff --git a/srcpkgs/apr/template b/srcpkgs/apr/template
index 8aea0343355..466290172ef 100644
--- a/srcpkgs/apr/template
+++ b/srcpkgs/apr/template
@@ -1,7 +1,7 @@
 # Template file for 'apr'
 pkgname=apr
 version=1.5.2
-revision=3
+revision=4
 build_style=gnu-configure
 configure_args="--with-installbuilddir=/usr/share/apr-1/build"
 makedepends="expat-devel libuuid-devel"
@@ -12,6 +12,15 @@ license="Apache-2.0"
 distfiles="http://www.apache.org/dist/apr/apr-$version.tar.bz2"
 checksum=7d03ed29c22a7152be45b8e50431063736df9e1daa1ddf93f6a547ba7a28f67a
 
+# Do not redefine struct iovec in include/apr_want.h
+CFLAGS="-DAPR_IOVEC_DEFINED=1"
+
+# Can't run test programs when cross compiling
+if [ -n "$CROSS_BUILD" ]; then
+	export apr_cv_process_shared_works=yes
+	export apr_cv_mutex_robust_shared=yes
+fi
+
 pre_build() {
 	if [ "$CROSS_BUILD" ]; then
 		sed -i "/LINK_PROG.*OBJECTS_gen_test_char/s|.*|\t${BUILD_CC} ${BUILD_CFLAGS} tools/gen_test_char.c -o tools/gen_test_char|" Makefile