1## Process this file with automake to produce Makefile.in. 2 3include $(top_srcdir)/rpm.am 4AM_CFLAGS = @RPMCFLAGS@ 5 6EXTRA_DIST = 7CLEANFILES = 8 9## 10TESTSUITE = $(srcdir)/rpmtests 11EXTRA_DIST += local.at $(TESTSUITE) 12 13## testsuite components 14TESTSUITE_AT = rpmtests.at 15TESTSUITE_AT += rpmgeneral.at 16TESTSUITE_AT += rpmquery.at 17TESTSUITE_AT += rpmverify.at 18TESTSUITE_AT += rpmdb.at 19TESTSUITE_AT += rpmbuild.at 20TESTSUITE_AT += rpmbuildid.at 21TESTSUITE_AT += debugedit.at 22TESTSUITE_AT += rpmi.at 23TESTSUITE_AT += rpmvercmp.at 24TESTSUITE_AT += rpmdeps.at 25TESTSUITE_AT += rpmconflict.at 26TESTSUITE_AT += rpmconfig.at 27TESTSUITE_AT += rpmconfig2.at 28TESTSUITE_AT += rpmconfig3.at 29TESTSUITE_AT += rpmreplace.at 30TESTSUITE_AT += rpmmacro.at 31TESTSUITE_AT += rpmpython.at 32TESTSUITE_AT += rpmdepmatch.at 33TESTSUITE_AT += rpmscript.at 34TESTSUITE_AT += rpmsigdig.at 35TESTSUITE_AT += rpmspec.at 36TESTSUITE_AT += rpmio.at 37TESTSUITE_AT += rpmorder.at 38TESTSUITE_AT += rpmvfylevel.at 39EXTRA_DIST += $(TESTSUITE_AT) 40 41## testsuite data 42EXTRA_DIST += data/SPECS/attrtest.spec 43EXTRA_DIST += data/SPECS/buildrequires.spec 44EXTRA_DIST += data/SPECS/docmiss.spec 45EXTRA_DIST += data/SPECS/hello.spec 46EXTRA_DIST += data/SPECS/hello-auto.spec 47EXTRA_DIST += data/SPECS/hello-r2.spec 48EXTRA_DIST += data/SPECS/hello-script.spec 49EXTRA_DIST += data/SPECS/hello2.spec 50EXTRA_DIST += data/SPECS/hello2cp.spec 51EXTRA_DIST += data/SPECS/hello2ln.spec 52EXTRA_DIST += data/SPECS/hello2-suid.spec 53EXTRA_DIST += data/SPECS/hello-g3.spec 54EXTRA_DIST += data/SPECS/foo.spec 55EXTRA_DIST += data/SPECS/globtest.spec 56EXTRA_DIST += data/SPECS/versiontest.spec 57EXTRA_DIST += data/SPECS/conflicttest.spec 58EXTRA_DIST += data/SPECS/configtest.spec 59EXTRA_DIST += data/SPECS/filedep.spec 60EXTRA_DIST += data/SPECS/flangtest.spec 61EXTRA_DIST += data/SPECS/hlinktest.spec 62EXTRA_DIST += data/SPECS/hlbreak.spec 63EXTRA_DIST += data/SPECS/iftest.spec 64EXTRA_DIST += data/SPECS/ifmultiline.spec 65EXTRA_DIST += data/SPECS/eliftest.spec 66EXTRA_DIST += data/SPECS/symlinktest.spec 67EXTRA_DIST += data/SPECS/deptest.spec 68EXTRA_DIST += data/SPECS/verifyscript.spec 69EXTRA_DIST += data/SPECS/fakeshell.spec 70EXTRA_DIST += data/SPECS/mini.spec 71EXTRA_DIST += data/SPECS/scripts.spec 72EXTRA_DIST += data/SPECS/scriptfail.spec 73EXTRA_DIST += data/SPECS/scriptfile.spec 74EXTRA_DIST += data/SPECS/selfconflict.spec 75EXTRA_DIST += data/SPECS/shebang.spec 76EXTRA_DIST += data/SPECS/suicidal.spec 77EXTRA_DIST += data/SPECS/replacetest.spec 78EXTRA_DIST += data/SPECS/triggers.spec 79EXTRA_DIST += data/SPECS/filetriggers.spec 80EXTRA_DIST += data/SPECS/parallel.spec 81EXTRA_DIST += data/SPECS/prefixtest.spec 82EXTRA_DIST += data/SPECS/testdoc.spec 83EXTRA_DIST += data/SPECS/sigpipe.spec 84EXTRA_DIST += data/SPECS/test-parsebits.spec 85EXTRA_DIST += data/SPECS/test-subpackages.spec 86EXTRA_DIST += data/SPECS/test-subpackages-exclude.spec 87EXTRA_DIST += data/SPECS/test-subpackages-pathpostfixes.spec 88EXTRA_DIST += data/SPECS/vattrtest.spec 89EXTRA_DIST += data/SPECS/weirdnames.spec 90EXTRA_DIST += data/SOURCES/buildrequires-1.0.tar.gz 91EXTRA_DIST += data/SOURCES/hello-1.0-modernize.patch 92EXTRA_DIST += data/SOURCES/hello-1.0-install.patch 93EXTRA_DIST += data/SOURCES/hello-1.0.tar.gz 94EXTRA_DIST += data/SOURCES/hello-2.0.tar.gz 95EXTRA_DIST += data/RPMS/capstest-1.0-1.noarch.rpm 96EXTRA_DIST += data/RPMS/foo-1.0-1.noarch.rpm 97EXTRA_DIST += data/RPMS/hello-1.0-1.i386.rpm 98EXTRA_DIST += data/RPMS/hello-1.0-1.ppc64.rpm 99EXTRA_DIST += data/RPMS/hello-2.0-1.i686.rpm 100EXTRA_DIST += data/RPMS/hello-2.0-1.x86_64.rpm 101EXTRA_DIST += data/RPMS/hello-2.0-1.x86_64-signed.rpm 102EXTRA_DIST += data/SRPMS/foo-1.0-1.src.rpm 103EXTRA_DIST += data/SRPMS/hello-1.0-1.src.rpm 104EXTRA_DIST += data/SOURCES/hello.c 105EXTRA_DIST += data/SPECS/hello-attr-buildid.spec 106EXTRA_DIST += data/SPECS/hello-config-buildid.spec 107EXTRA_DIST += data/SPECS/hello-cd.spec 108EXTRA_DIST += data/keys/rpm.org-rsa-2048-test.pub 109EXTRA_DIST += data/keys/rpm.org-rsa-2048-test.secret 110EXTRA_DIST += data/macros.testfile 111EXTRA_DIST += data/macros.debug 112EXTRA_DIST += data/SOURCES/foo.c 113EXTRA_DIST += data/SOURCES/bar.c 114EXTRA_DIST += data/SOURCES/baz.c 115EXTRA_DIST += data/SOURCES/foobar.h 116EXTRA_DIST += data/misc/hello.intro 117EXTRA_DIST += data/misc/hello.payload 118 119.PHONY: populate_testing 120 121# testsuite voodoo 122AUTOTEST = $(AUTOM4TE) --language=autotest 123$(TESTSUITE): $(srcdir)/package.m4 local.at $(TESTSUITE_AT) 124 $(AUTOTEST) -I '$(srcdir)' -o $@.tmp $@.at 125 mv $@.tmp $@ 126 127$(srcdir)/package.m4: $(top_srcdir)/configure.ac 128 @{ \ 129 echo '# Signature of the current package.'; \ 130 echo 'm4_define([AT_PACKAGE_NAME], [@PACKAGE_NAME@])'; \ 131 echo 'm4_define([AT_PACKAGE_TARNAME], [@PACKAGE_TARNAME@])'; \ 132 echo 'm4_define([AT_PACKAGE_VERSION], [@PACKAGE_VERSION@])'; \ 133 echo 'm4_define([AT_PACKAGE_STRING], [@PACKAGE_STRING@])'; \ 134 echo 'm4_define([AT_PACKAGE_BUGREPORT], [@PACKAGE_BUGREPORT@])'; \ 135 } >'$(srcdir)/package.m4' 136EXTRA_DIST += package.m4 137 138atconfig: ${top_builddir}/config.status 139 (cd ${top_builddir} && ./config.status ${subdir}/atconfig) 140CLEANFILES += atconfig 141 142 143atlocal: atlocal.in Makefile 144 @sed \ 145 -e "s,[@]usrbindir[@],$(bindir)," \ 146 -e "s,[@]usrlibdir[@],$(libdir)," \ 147 -e "s,[@]execprefix[@],$(exec_prefix)," \ 148 -e "s,[@]usrlibexecdir[@],$(rpmlibexecdir),g" \ 149 -e "s,[@]RPMCONFIGDIR[@],$(rpmconfigdir)," \ 150 -e "s,[@]PYTHON[@],$(PYTHON)," \ 151 < $(srcdir)/atlocal.in > atlocal 152DISTCLEANFILES = atlocal 153EXTRA_DIST += atlocal.in 154 155# The chmod is needed when copying from read-only sources (eg in distcheck) 156populate_testing: 157 if [ -d testing ]; then chmod -R u+w testing/; fi 158 rm -rf testing 159 mkdir -p testing/$(bindir) 160 ln -s ./$(bindir) testing/bin 161 mkdir -p testing/usr 162 ln -s ../bin testing/usr/bin 163 (cd ${top_builddir} && \ 164 $(MAKE) DESTDIR=`pwd`/${subdir}/testing install) 165 cp -r ${srcdir}/data/ testing/ 166 for d in dev etc magic tmp var; do if [ ! -d testing/$${d} ]; then mkdir testing/$${d}; fi; done 167 for node in urandom stdin stderr stdout null full; do ln -s /dev/$${node} testing/dev/$${node}; done 168 for cf in hosts resolv.conf passwd shadow group gshadow mtab ; do [ -f /etc/$${cf} ] && ln -s /etc/$${cf} testing/etc/$${cf}; done 169 for prog in gzip cat patch tar sh ln chmod rm mkdir uname grep sed find file ionice mktemp nice cut sort diff touch install wc coreutils xargs; do p=`which $${prog}`; if [ "$${p}" != "" ]; then ln -s $${p} testing/$(bindir)/; fi; done 170 for d in /proc /sys /selinux /etc/selinux; do if [ -d $${d} ]; then ln -s $${d} testing/$${d}; fi; done 171 (cd testing/magic && file -C) 172 chmod -R u-w testing/ 173 174check_DATA = atconfig atlocal $(TESTSUITE) 175 176if HAVE_FAKECHROOT 177check-local: $(check_DATA) populate_testing 178 $(SHELL) '$(TESTSUITE)' $(TESTSUITEFLAGS) 179else 180check-local: 181 echo "you need to have fakechroot installed" 182 exit 1 183endif !HAVE_FAKECHROOT 184 185installcheck-local: $(check_DATA) populate_testing 186 $(SHELL) '$(TESTSUITE)' AUTOTEST_PATH='$(bindir):$(rpmlibexecdir)' $(TESTSUITEFLAGS) 187 188clean-local: 189 test ! -f '$(TESTSUITE)' || $(SHELL) '$(TESTSUITE)' --clean 190 rm -f *.tmp 191 if [ -d testing ]; then chmod -R u+w testing/; fi 192 rm -rf testing 193