+/* First, deal with the printing format for off_t variables. We assume that if
+the size of off_t is greater than 4, "%lld" will be available as a format for
+printing long long variables, and there will be support for the long long type.
+This assumption is known to be OK for the common operating systems. */
+
+fprintf(new, "#ifndef OFF_T_FMT\n");
+if (sizeof(test_off_t) > 4)
+ {
+ fprintf(new, "#define OFF_T_FMT \"%%lld\"\n");
+ fprintf(new, "#define LONGLONG_T long long int\n");
+ }
+else
+ {
+ fprintf(new, "#define OFF_T_FMT \"%%ld\"\n");
+ fprintf(new, "#define LONGLONG_T long int\n");
+ }
+fprintf(new, "#endif\n\n");
+
+/* Now do the same thing for time_t variables. If the length is greater than
+4, we want to assume long long support (even if off_t was less than 4). If the
+length is 4 or less, we can leave LONGLONG_T to whatever was defined above for
+off_t. */
+
+fprintf(new, "#ifndef TIME_T_FMT\n");
+if (sizeof(test_time_t) > 4)
+ {
+ fprintf(new, "#define TIME_T_FMT \"%%lld\"\n");
+ fprintf(new, "#undef LONGLONG_T\n");
+ fprintf(new, "#define LONGLONG_T long long int\n");
+ }
+else
+ {
+ fprintf(new, "#define TIME_T_FMT \"%%ld\"\n");
+ }
+fprintf(new, "#endif\n\n");
+
+/* Now search the makefile for certain settings */