--- a/libhandle/handle.c
+++ b/libhandle/handle.c
@@ -20,6 +20,7 @@
 #include <xfs/xfs.h>
 #include <xfs/handle.h>
 #include <xfs/parent.h>
+#include <linux/limits.h>
 
 /* just pick a value we know is more than big enough */
 #define	MAXHANSIZ	64
--- a/libhandle/jdm.c
+++ b/libhandle/jdm.c
@@ -20,6 +20,7 @@
 #include <xfs/handle.h>
 #include <xfs/jdm.h>
 #include <xfs/parent.h>
+#include <linux/limits.h>
 
 /* internal fshandle - typecast to a void for external use */
 #define FSHANDLE_SZ		8
--- a/libdisk/evms.c
+++ b/libdisk/evms.c
@@ -22,6 +22,7 @@
 #include <fcntl.h>
 #include <sys/ioctl.h>
 #include <sys/sysmacros.h>
+#include <sys/stat.h>
 #include <disk/volume.h>
 #include "evms.h"
 
--- a/libdisk/evms.h
+++ b/libdisk/evms.h
@@ -16,6 +16,8 @@
  *   Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
  */
 
+#include <sys/types.h>
+
 #define EVMS_MAJOR			117
 #define EVMS_GET_VOL_STRIPE_INFO	\
 		_IOR(EVMS_MAJOR, 0xF0, struct evms_vol_stripe_info_s)
--- a/libdisk/fstype.h
+++ b/libdisk/fstype.h
@@ -192,7 +192,7 @@ struct adfs_super_block {
 	char    s_dummy2[62];
 	char    s_checksum[1];
 };
-#define adfsblksize(s)	((uint) s.s_blksize[0])
+#define adfsblksize(s)	((unsigned int) s.s_blksize[0])
 
 /* found in first 4 bytes of block 1 */
 struct vxfs_super_block {
--- a/fsr/xfs_fsr.c
+++ b/fsr/xfs_fsr.c
@@ -25,6 +25,7 @@
 #include <xfs/xfs_dinode.h>
 #include <xfs/xfs_attr_sf.h>
 
+#include <paths.h>
 #include <fcntl.h>
 #include <errno.h>
 #include <malloc.h>
--- a/libdisk/xvm.c
+++ b/libdisk/xvm.c
@@ -22,6 +22,7 @@
 #include <unistd.h>
 #include <sys/stat.h>
 #include <sys/ioctl.h>
+#include <sys/types.h>
 #include <disk/volume.h>
 #include "xvm.h"
 
