diff -ru ./podofo-svn/src/PdfString.cpp ./src/PdfString.cpp
--- ./podofo-svn/src/PdfString.cpp	2009-11-12 11:40:18.000000000 +0100
+++ ./src/PdfString.cpp	2009-11-12 09:25:33.000000000 +0100
@@ -28,12 +28,12 @@
 #include "PdfOutputDevice.h"
 #include "PdfDefinesPrivate.h"
 
-// alloca() is defined only in <cstdlib> on Mac OS X,
-// only in <malloc.h> on win32, and in both on Linux.
-#if defined(_WIN32)
-#include <malloc.h>
-#else
+#if defined(_AIX) || defined(__sun)
+#include <alloca.h>
+#elif defined(__APPLE__) || defined(__linux)
 #include <cstdlib>
+#elif defined(_WIN32)
+#include <malloc.h>
 #endif
 
 #include <stdlib.h>
diff -ru ./podofo-svn/src/PdfXRefStream.cpp ./src/PdfXRefStream.cpp
--- ./podofo-svn/src/PdfXRefStream.cpp	2009-11-12 11:40:18.000000000 +0100
+++ ./src/PdfXRefStream.cpp	2009-11-12 09:25:53.000000000 +0100
@@ -25,12 +25,12 @@
 #include "PdfWriter.h"
 #include "PdfDefinesPrivate.h"
 
-// alloca() is defined only in <cstdlib> on Mac OS X,
-// only in <malloc.h> on win32, and in both on Linux.
-#if defined(_WIN32)
-#include <malloc.h>
-#else
+#if defined(_AIX) || defined(__sun)
+#include <alloca.h>
+#elif defined(__APPLE__) || defined(__linux)
 #include <cstdlib>
+#elif defined(_WIN32)
+#include <malloc.h>
 #endif
 
 namespace PoDoFo {
