Prepare the test root entirely from Makefile, add missing bits
authorPanu Matilainen <pmatilai@redhat.com>
Mon, 4 Apr 2011 09:01:43 +0000 (12:01 +0300)
committerPanu Matilainen <pmatilai@redhat.com>
Mon, 4 Apr 2011 09:01:43 +0000 (12:01 +0300)
- Running builds in fakechroot needs a whole lot of things.. add symlinks
  to various system config + dev files to give some trivial packages
  a chance to build under fakechroot

tests/Makefile.am
tests/atlocal.in

index 6255732..f6e9510 100644 (file)
@@ -86,7 +86,10 @@ testing$(bindir)/rpmbuild: ../rpmbuild
        (cd ${top_builddir} && \
                  $(MAKE) DESTDIR=`pwd`/${subdir}/testing install)
        cp -r data/ testing/
-       for prog in gzip cat patch tar sh chmod; do p=`which $${prog}`; ln -s $${p} testing/$${p}; done
+       mkdir testing/{dev,etc}
+       for node in stdin stderr stdout null; do ln -s /dev/$${node} testing/dev/$${node}; done
+       for cf in hosts resolv.conf passwd shadow group gshadow mtab fstab; do [ -f /etc/$${cf} ] && ln -s /etc/$${cf} testing/etc/$${cf}; done
+       for prog in gzip cat patch tar sh chmod rm mkdir; do p=`which $${prog}`; ln -s $${p} testing/$${p}; done
 
 check_DATA = atconfig atlocal $(TESTSUITE)
 check_DATA += testing$(bindir)/rpmbuild
index fecd950..3d46a7d 100644 (file)
@@ -30,7 +30,6 @@ function run()
 function runroot()
 {
     (cd ${RPMTEST} && \
-     mkdir -p etc && touch etc/mtab &&
-     FAKECHROOT_BASE="${RPMTEST}" fakechroot "$@" --define "_topdir ${TOPDIR}"
+     FAKECHROOT_BASE="${RPMTEST}" fakechroot "$@" --define "_topdir /build"
     )
 }