poldek: poldek/tests/build-test-rpm.sh - %%files supported

mis mis at pld-linux.org
Sun Jul 9 23:20:11 CEST 2006


Author: mis                          Date: Sun Jul  9 21:20:11 2006 GMT
Module: poldek                        Tag: HEAD
---- Log message:
- %%files supported

---- Files affected:
poldek/poldek/tests:
   build-test-rpm.sh (1.1 -> 1.2) 

---- Diffs:

================================================================
Index: poldek/poldek/tests/build-test-rpm.sh
diff -u poldek/poldek/tests/build-test-rpm.sh:1.1 poldek/poldek/tests/build-test-rpm.sh:1.2
--- poldek/poldek/tests/build-test-rpm.sh:1.1	Tue Nov  1 20:20:07 2005
+++ poldek/poldek/tests/build-test-rpm.sh	Sun Jul  9 23:20:06 2006
@@ -7,6 +7,12 @@
 release="1"
 requires=
 provides=
+files=
+
+usage_and_exit() {
+    echo "Usage $0 -n NAME -v VERSION-[RELEASE [-p PROVIDES] [-r REQUIRES] [-f file] "
+    exit 1
+}
 
 while test $# -gt 0 ; do
     case "${1}" in
@@ -22,12 +28,15 @@
         -r)
             shift; requires="$requires ${1},"; shift ;;
 
+        -f)
+            shift; files="$files ${1} "; shift ;;
+
         *)
             echo "unknown option ${1}"; exit 1;
     esac
 done
 
-[ -n "$name" -a -n "$version" ] || exit 1;
+[ -n "$name" -a -n "$version" ] || usage_and_exit;
 
 if echo $version | grep -q '-'; then
     release=$(echo $version | cut -f 2 -d -)
@@ -45,11 +54,30 @@
 echo "Group: System" >> $SPEC
 echo "License: foo" >> $SPEC
 echo "BuildArch: noarch" >> $SPEC
+echo "BuildRoot: /tmp/%{name}-%{version}-root-%(id -u -n)" >> $SPEC
 [ -n "$provides" ] &&  echo "Provides: $provides" >> $SPEC
 [ -n "$requires" ] && echo "Requires: $requires" >> $SPEC
 
 echo -e "%description\n$name" >> $SPEC
+echo -e "%prep\n%pre\n" >> $SPEC
+
+if [ -n "$files" ]; then
+    echo "%install" >> $SPEC
+    for f in $files; do
+        dn=$(dirname $f)
+        echo "mkdir -p \$RPM_BUILD_ROOT/$dn" >> $SPEC
+        echo "touch \$RPM_BUILD_ROOT/$f" >> $SPEC
+    done
+fi
+
+echo -e "%files\n%defattr(644,root,root,755)" >> $SPEC
+if [ -n "$files" ]; then
+    for f in $files; do
+        dn=$(dirname $f)
+        echo "%dir $dn" >> $SPEC
+        echo "$f" >> $SPEC
+    done
+fi
 
-echo -e "%prep\n%pre\n%files\n%defattr(644,root,root,755)" >> $SPEC
-echo -e "%clean\nrm -rf $$RPM_BUILD_ROOT" >> $SPEC
+echo -e "%clean\nrm -rf \$RPM_BUILD_ROOT" >> $SPEC
 rpmbuild -bb $SPEC
================================================================

---- CVS-web:
    http://cvs.pld-linux.org/poldek/poldek/tests/build-test-rpm.sh?r1=1.1&r2=1.2&f=u



More information about the pld-cvs-commit mailing list