File nosource.diff of Package rpm

rpm does not allow headerPutUint32 on internal tags, so use
headerPut instead. (Maybe NOSOURCE/NOPATCH should not be internal
at all, though.)

--- ./build/files.c.orig	2010-04-08 16:23:42.000000000 +0000
+++ ./build/files.c	2010-04-08 16:23:44.000000000 +0000
@@ -2088,15 +2088,25 @@ int processSourceFiles(rpmSpec spec)
 	if (srcPtr->flags & RPMBUILD_ISSOURCE) {
 	    headerPutString(spec->sourceHeader, RPMTAG_SOURCE, srcPtr->source);
 	    if (srcPtr->flags & RPMBUILD_ISNO) {
-		headerPutUint32(spec->sourceHeader, RPMTAG_NOSOURCE,
-				&srcPtr->num, 1);
+		struct rpmtd_s td;
+		rpmtdReset(&td);
+		td.tag = RPMTAG_NOSOURCE;
+		td.type = RPM_INT32_TYPE;
+		td.data = &srcPtr->num;
+		td.count = 1; 
+		headerPut(spec->sourceHeader, &td, HEADERPUT_APPEND);
 	    }
 	}
 	if (srcPtr->flags & RPMBUILD_ISPATCH) {
 	    headerPutString(spec->sourceHeader, RPMTAG_PATCH, srcPtr->source);
 	    if (srcPtr->flags & RPMBUILD_ISNO) {
-		headerPutUint32(spec->sourceHeader, RPMTAG_NOSOURCE,
-				&srcPtr->num, 1);
+		struct rpmtd_s td;
+		rpmtdReset(&td);
+		td.tag = RPMTAG_NOPATCH;
+		td.type = RPM_INT32_TYPE;
+		td.data = &srcPtr->num;
+		td.count = 1; 
+		headerPut(spec->sourceHeader, &td, HEADERPUT_APPEND);
 	    }
 	}