Index: gar.pkg.mk
===================================================================
--- gar.pkg.mk	(revision 3994)
+++ gar.pkg.mk	(working copy)
@@ -445,7 +445,7 @@
 # We depend on extract as the additional package files (like .gspec) must be
 # unpacked to global/ for packaging. E. g. 'merge' depends only on the specific
 # modulations and does not fill global/.
-package: extract merge $(SPKG_DESTDIRS) pre-package $(PACKAGE_TARGETS) post-package
+package: extract merge $(SPKG_DESTDIRS) pre-package $(PACKAGE_TARGETS) post-package svncheck
 	$(DONADA)
 
 # The dynamic pkginfo is only generated for dynamic gspec-files
@@ -462,6 +462,23 @@
 						 $(MKPACKAGE_ARGS) ) || exit 2
 	@$(MAKECOOKIE)
 
+# Warn the maintainer if the svn isn't committed and stop the package
+# target from passing.  The package files should still be in place, so
+# the maintainer may still test packages without committing all changes
+# first.
+svncheck: $(PACKAGE_TARGETS)
+	@( if ggrep --color UNCOMMITTED $(WORKDIR)/*pkginfo*; then \
+		echo; \
+		echo '*****************************************************'; \
+		echo 'PLEASE MAKE SURE YOU COMMIT CHANGES TO SVN BEFORE'; \
+		echo 'SUBMITTING YOUR PACKAGE(S)!!'; \
+		echo; \
+		echo 'Package files are still available for testing.'; \
+		echo '*****************************************************'; \
+		echo; \
+		exit 1; \
+	   fi )
+
 package-p:
 	@$(foreach COOKIEFILE,$(PACKAGE_TARGETS), test -e $(COOKIEDIR)/$(COOKIEFILE) ;)
 
