#!/bin/sh
sqlite3 "$REPOCOP_TEST_TMPDIR/tmp.db" <<EOSQL
attach database '$REPOCOP_DISTROTEST_DBDIR/rpm.db' as rpm;
attach database '$REPOCOP_DISTROTEST_DBDIR/rpm-ext.db' as rpmext;
.mode tabs
.output $REPOCOP_TEST_TMPDIR/msg
-- filedir conflict
-- http://refspecs.freestandards.org/LSB_3.1.0/LSB-Core-generic/LSB-Core-generic/pkgformat.html
-- note: 580 is RPMFILE_DONOTUSE (1 << 2) + RPMFILE_GHOST (1 << 6) + RPMFILE_EXCLUDE (1 << 9)
select a.pkgid, a.FILENAME, b.pkgid FROM rpm_files as a LEFT JOIN rpm as c ON a.pkgid=c.pkgid, rpm_files as b  LEFT JOIN rpm as d ON b.pkgid=d.pkgid WHERE a.pkgid<>b.pkgid and a.filename=b.filename and a.fileflag & 580 = 0 and b.fileflag & 580 = 0 and a.filemode & 61440 = 40960 and b.filemode & 61440 = 40960 AND a.FILELINKTO <> b.FILELINKTO AND  c.name <> d.name AND a.pkgid NOT IN (select conflictee FROM explicit_conflict WHERE conflicter=b.pkgid) AND b.pkgid NOT IN (select conflictee FROM explicit_conflict WHERE conflicter=a.pkgid) AND a.pkgid NOT IN (select obsoletee FROM explicit_obsolete WHERE obsoleter=b.pkgid) AND b.pkgid NOT IN (select obsoletee FROM explicit_obsolete WHERE obsoleter=a.pkgid);
EOSQL
#for i in `sort -u $REPOCOP_TEST_TMPDIR/msg*`; do repocop-test-warn -k $i update_wms call in post/postun is deprecated; done
# delete debuginfo <-> debuginfo confilcts (see https://bugzilla.altlinux.org/show_bug.cgi?id=28467)
sed -i -e '/-debuginfo\t.*-debuginfo$/d' $REPOCOP_TEST_TMPDIR/msg*
perl -ne 'chomp;@a=split /\t/;system(qw/repocop-test-warn -k/,$a[0], "value of symlink $a[1] is different from the same symlink in the package $a[2]. Moreover, the packages have no explicit conflicts with each other. You should add explicit conflicts, or, if conflicts are avoidable, consider using alternatives.")' $REPOCOP_TEST_TMPDIR/msg
rm $REPOCOP_TEST_TMPDIR/*
