diff -ur psutils-1.17.orig/epsffit.c psutils-1.17/epsffit.c
--- psutils-1.17.orig/epsffit.c	2006-01-17 22:16:42.000000000 +0100
+++ psutils-1.17/epsffit.c	2008-02-01 12:23:16.000000000 +0100
@@ -39,7 +39,7 @@
    exit(1);
 }
 
-void main(int argc, char **argv)
+int main(int argc, char **argv)
 {
    int bbfound = 0;              /* %%BoundingBox: found */
    int urx, ury, llx, lly;
@@ -185,5 +185,5 @@
    } else
       message(FATAL, "no %%%%BoundingBox:\n");
 
-   exit(0);
+   return 0;
 }
diff -ur psutils-1.17.orig/psbook.c psutils-1.17/psbook.c
--- psutils-1.17.orig/psbook.c	2006-01-17 22:16:42.000000000 +0100
+++ psutils-1.17/psbook.c	2008-02-01 12:23:16.000000000 +0100
@@ -32,7 +32,7 @@
 }
 
 
-void main(int argc, char *argv[])
+int main(int argc, char *argv[])
 {
    int signature = 0;
    int currentpg, maxpage;
@@ -107,5 +107,5 @@
    }
    writetrailer();
 
-   exit(0);
+   return 0;
 }
diff -ur psutils-1.17.orig/pserror.c psutils-1.17/pserror.c
--- psutils-1.17.orig/pserror.c	1997-03-11 23:53:01.000000000 +0100
+++ psutils-1.17/pserror.c	2008-02-01 12:23:16.000000000 +0100
@@ -24,7 +24,7 @@
 void message(int flags, char *format, ...)
 {
   va_list args ;
-  static column = 0 ;		/* current screen column for message wrap */
+  static int column = 0 ;	/* current screen column for message wrap */
   char msgbuf[MAX_MESSAGE] ;	/* buffer in which to put the message */
   char *bufptr = msgbuf ;	/* message buffer pointer */
 
diff -ur psutils-1.17.orig/psnup.c psutils-1.17/psnup.c
--- psutils-1.17.orig/psnup.c	2006-01-17 22:16:42.000000000 +0100
+++ psutils-1.17/psnup.c	2008-02-01 12:23:16.000000000 +0100
@@ -66,7 +66,7 @@
    return (0);
 }
 
-void main(int argc, char *argv[])
+int main(int argc, char *argv[])
 {
    int horiz, vert, rotate, column, flip, leftright, topbottom;
    int nup = 1;
@@ -331,6 +331,6 @@
       pstops(nup, 1, 0, specs, draw);		/* do page rearrangement */
    }
 
-   exit(0);
+   return 0;
 }
 
diff -ur psutils-1.17.orig/psresize.c psutils-1.17/psresize.c
--- psutils-1.17.orig/psresize.c	2006-01-17 22:16:42.000000000 +0100
+++ psutils-1.17/psresize.c	2008-02-01 12:23:16.000000000 +0100
@@ -46,7 +46,7 @@
 #define MIN(x,y) ((x) > (y) ? (y) : (x))
 #define MAX(x,y) ((x) > (y) ? (x) : (y))
 
-void main(int argc, char *argv[])
+int main(int argc, char *argv[])
 {
    double scale, rscale;			/* page scale */
    double waste, rwaste;			/* amount wasted */
@@ -175,6 +175,6 @@
       
    pstops(1, 1, 0, specs, 0.0);		/* do page rearrangement */
 
-   exit(0);
+   return 0;
 }
 
diff -ur psutils-1.17.orig/psselect.c psutils-1.17/psselect.c
--- psutils-1.17.orig/psselect.c	2006-01-17 22:16:42.000000000 +0100
+++ psutils-1.17/psselect.c	2008-02-01 12:23:16.000000000 +0100
@@ -91,7 +91,7 @@
 }
 
 
-void main(int argc, char *argv[])
+int main(int argc, char *argv[])
 {
    int currentpg, maxpage = 0;
    int even = 0, odd = 0, reverse = 0;
@@ -235,5 +235,5 @@
    }
    writetrailer();
 
-   exit(0);
+   return 0;
 }
diff -ur psutils-1.17.orig/pstops.c psutils-1.17/pstops.c
--- psutils-1.17.orig/pstops.c	2006-01-17 22:16:42.000000000 +0100
+++ psutils-1.17/pstops.c	2008-02-01 12:23:16.000000000 +0100
@@ -112,7 +112,7 @@
    return (head);
 }
 
-void main(int argc, char *argv[])
+int main(int argc, char *argv[])
 {
    PageSpec *specs = NULL;
    int nobinding = 0;
@@ -194,5 +194,5 @@
 
    pstops(modulo, pagesperspec, nobinding, specs, draw);
 
-   exit(0);
+   return 0;
 }
