The following packages require perl-RPM4: (1) iurt (2) perl-MDV-Repsys (3) perl-Youri-Package-RPM-Builder (4) perl-Youri-Package-RPM-Updater (5) perl-Youri-Package (6) mdv-youri-core notes: - (5) doesn't use proposes both Youri::Package::URPM and Youri::Package::RPM4, and doesn't force usage of any. - (6) is a fork of perl-Youri-Package, which uses Youri::Package::URPM (and so perl-RPM4 is unused) here is below the various functions/methods of perl-RPM4 used by the packages above. RPM4::add_macro (2)(3)(4) RPM4::expand (2)(3)(4) [renamed expand_macro in rpm5] RPM4::installsrpm (2)(4) RPM4::rpmvercmp (4) RPM4::setverbosity (2)(4) RPM4::Sign->new $sign->rpmssign [not available in rpm5] RPM4::Transaction->new $db->transadd (3) [renamed add_install in rpm5] $db->transcheck (3) [renamed check in rpm5] $db->transpbs (3) [renamed problems in rpm5] $pbs->hasnext (3) [not available directly in rpm5] $pbs->init (3) [not available directly in rpm5] $pbs->problem (3) [not available directly in rpm5] RPM4::Spec->new $spec->binrpm (3) $spec->sources (2) $spec->sources_url (4) $spec->srcheader (2)(3)(4) $spec->srcrpm (3) RPM4::Header->new $header->compare $header->dep [renamed dependencies in rpm5] $deps->info [not available directly in rpm5] $deps->init $deps->next $header->files $files->filename $files->init $files->md5 [renamed digest in rpm5] $files->mode $files->next $header->fullname [not available directly in rpm5] $header->issrc [renamed is_source_package in rpm5] $header->queryformat (1)(2) [renamed tagformat in rpm5] $header->sourcerpmname [not available directly in rpm5] $header->tag (4) RPM4::Header::Dependencies->new [renamed RPM::Dependencies in rpm5] $dep->overlap nb: - functions/methods above which are not used by (1), (2), (3), (4) are used by either (5) or (6) (usually by both) - i have annotated with [... in rpm5] the changes between perl-RPM4 and RPM perl module in rpm5 CVS - except for ->rpmsign, the "not available in rpm5" have similar functions in rpm5 RPM module diff -p -up RPM4-0.23/src/Makefile.PL.rpm46 RPM4-0.23/src/Makefile.PL --- RPM4-0.23/src/Makefile.PL.rpm46 2007-03-01 00:56:26.000000000 +0100 +++ RPM4-0.23/src/Makefile.PL 2009-01-19 13:23:30.000000000 +0100 @@ -33,17 +33,11 @@ foreach (qw( 4.2.0 4.4.1 4.4.2 - 4.4.3 - 4.4.4 - 4.4.5 - 4.4.6 - 4.4.7 - 4.4.8 )) { $v = $_; $v =~ s/\./_/g; print $FH "#define RPM$v\n"; - $rpmv eq $_ and last; + $rpmv =~ /^\Q$_/ and last; } print $FH "\n#endif\n"; close($FH); @@ -89,7 +83,7 @@ WriteMakefile( VERSION_FROM => '../lib/RPM4.pm', OBJECT => "RPM4.o RPM4sign.o $obj", INC => "-I$rpmheaderlocation", - LIBS => "-lrpm -lrpmio -lrpmdb -lrpmbuild -lpopt -lz -lbz2 $ldd", - 'CCFLAGS' => $fl, + LIBS => "-lrpm -lrpmio -lrpmbuild -lpopt -lz -lbz2 $ldd", + 'CCFLAGS' => "-Wall $fl", depend => { "RPM4.xs" => join(" ", @rpmconstantfiles) }, ); diff -p -up RPM4-0.23/src/RPM4.h.rpm46 RPM4-0.23/src/RPM4.h --- RPM4-0.23/src/RPM4.h.rpm46 2005-12-20 02:33:44.000000000 +0100 +++ RPM4-0.23/src/RPM4.h 2009-01-19 13:06:10.000000000 +0100 @@ -16,15 +16,6 @@ int rpmchecksig(rpmts ts, const char * f * We Import its here * This File should be the last included */ -/* From rpmlead.h */ - -#ifndef _H_RPMLEAD - -rpmRC writeLead(FD_t fd, const struct rpmlead *lead); -rpmRC readLead(FD_t fd, struct rpmlead *lead); - -#endif /* _H_RPMLEAD */ - /* From signature.h */ #ifndef H_SIGNATURE @@ -48,7 +39,7 @@ rpmRC rpmReadSignature(FD_t fd, Header * int rpmWriteSignature(FD_t fd, Header h); int rpmAddSignature(Header sig, const char * file, - int_32 sigTag, const char * passPhrase); + int32_t sigTag, const char * passPhrase); #define RPMLOOKUPSIG_QUERY 0 /*!< Lookup type in effect */ #define RPMLOOKUPSIG_DISABLE 1 /*!< Disable (--sign was not given) */ @@ -71,10 +62,10 @@ const char * rpmDetectPGPVersion(pgpVers */ typedef /*@abstract@*/ struct entryInfo_s * entryInfo; struct entryInfo_s { - int_32 tag; /*!< Tag identifier. */ - int_32 type; /*!< Tag data type. */ - int_32 offset; /*!< Offset into data segment (ondisk only). */ - int_32 count; /*!< Number of tag elements. */ + int32_t tag; /*!< Tag identifier. */ + int32_t type; /*!< Tag data type. */ + int32_t offset; /*!< Offset into data segment (ondisk only). */ + int32_t count; /*!< Number of tag elements. */ }; /** \ingroup header diff -p -up RPM4-0.23/src/RPM4.xs.rpm46 RPM4-0.23/src/RPM4.xs --- RPM4-0.23/src/RPM4.xs.rpm46 2007-07-22 02:23:52.000000000 +0200 +++ RPM4-0.23/src/RPM4.xs 2009-01-19 13:30:14.000000000 +0100 @@ -78,10 +78,14 @@ #include #include #include -#include #include +#include #include +#include #include +#include +#define _RPM_4_4_COMPAT +#include #ifdef HAVE_RPMCONSTANT #include @@ -189,10 +193,10 @@ void * #endif transCallback(const void *h, const rpmCallbackType what, - const RPM_CALLBACK_AMOUNT_TYPE amount, - const RPM_CALLBACK_AMOUNT_TYPE total, - const void * pkgKey, - void * data) { + const rpm_loff_t amount, + const rpm_loff_t total, + fnpyKey pkgKey, + rpmCallbackData data) { /* The call back is used to open/close file, so we fix value, run the perl callback * and let rpmShowProgress from rpm rpmlib doing its job. @@ -292,7 +296,7 @@ void * * is set for for the logging system. * If the callback is set, rpm does not print any message, * and let the callback to do it */ -void logcallback(void) { +int logcallback(rpmlogRec rec, rpmlogCallbackData data) { dSP; if (log_callback_function) { int logcode = rpmlogCode(); @@ -304,7 +308,7 @@ void logcallback(void) { XPUSHs(sv_2mortal(newSVpv("logcode", 0))); XPUSHs(sv_2mortal(newSViv(logcode))); XPUSHs(sv_2mortal(newSVpv("msg", 0))); - XPUSHs(sv_2mortal(newSVpv(rpmlogMessage(), 0))); + XPUSHs(sv_2mortal(newSVpv((char *) rpmlogMessage(), 0))); XPUSHs(sv_2mortal(newSVpv("priority", 0))); XPUSHs(sv_2mortal(newSViv(RPMLOG_PRI(logcode)))); PUTBACK; @@ -313,47 +317,6 @@ void logcallback(void) { } } -/* This callback is run during transcheck */ -int transSolveCallback(rpmts ts, rpmds Dep, const void * data) { - int rc = 0; - int count; - dSP; -#ifdef HDLISTDEBUG - PRINTF_CALL; -#endif - /* Should return -1 retry, 0 ignore, 1 not found */ - rc = rpmtsSolve(ts, Dep, data); - /* PUSHMARK(SP); */ - if (ts) { - XPUSHs(sv_2mortal(newSVpv("db", 0))); - XPUSHs(sv_2mortal(sv_setref_pv(newSVpv("", 0), bless_rpmts, rpmtsLink(ts, "RPM4 transSolveCallback()")))); -#ifdef HDRPMMEM - PRINTF_NEW(bless_rpmts, ts, ts->nrefs); -#endif - - } - if (Dep) { - XPUSHs(sv_2mortal(newSVpv("dep", 0))); - XPUSHs(sv_2mortal(sv_setref_pv(newSVpv("", 0), bless_rpmds, rpmdsLink(Dep, "RPM4 transSolveCallback()")))); -#ifdef HDRPMMEM - PRINTF_NEW(bless_rpmds, Dep, Dep->nrefs); -#endif - } - XPUSHs(sv_2mortal(newSVpv("rc", 0))); - XPUSHs(sv_2mortal(newSViv(rc))); - PUTBACK; - count = call_sv((SV *) data, G_SCALAR); - SPAGAIN; - if (count) { - rc = POPi; - if (rc < -1 || rc > 1) - croak("Uh Oh! Your perl callback should return 1 (retry), 0 (ignore) or 1 (not found) and not %d", rc); - } else { - rc = 1; - } - return rc; -} - /************************************************** * Real Function rpmts function with double call * * Aka function(arg) or RPM4::Db->function(arg) * @@ -416,7 +379,7 @@ void _newdep(SV * sv_deptag, char * name /* Get a new specfile */ void _newspec(rpmts ts, char * filename, SV * svpassphrase, SV * svrootdir, SV * svcookies, SV * svanyarch, SV * svforce, SV * svverify) { - Spec spec = NULL; + rpmSpec spec = NULL; char * passphrase = NULL; char * rootdir = NULL; char * cookies = NULL; @@ -446,7 +409,15 @@ void _newspec(rpmts ts, char * filename, verify = SvIV(svverify); if (filename) { - if (!parseSpec(ts, filename, rootdir, 0, passphrase, cookies, anyarch, force, verify)) + if (!parseSpec(ts, filename, rootdir +#ifndef RPM4_4_8 + , NULL +#endif + ,0, passphrase, cookies, anyarch, force +#ifdef RPM4_4_8 + , verify +#endif + )) spec = rpmtsSetSpec(ts, NULL); #ifdef HHACK } else { @@ -465,15 +436,15 @@ void _newspec(rpmts ts, char * filename, } /* Building a spec file */ -int _specbuild(rpmts ts, Spec spec, SV * sv_buildflags) { +int _specbuild(rpmts ts, rpmSpec spec, SV * sv_buildflags) { rpmBuildFlags buildflags = sv2rpmbuildflags(sv_buildflags); if (buildflags == RPMBUILD_NONE) croak("No action given for build"); return buildSpec(ts, spec, buildflags, 0); } void _installsrpms(rpmts ts, char * filename) { - const char * specfile = NULL; - const char * cookies = NULL; + char * specfile = NULL; + char * cookies = NULL; dSP; I32 gimme = GIMME_V; if (rpmInstallSource( @@ -514,9 +485,9 @@ BOOT: if (rpmReadConfigFiles(NULL, NULL) != 0) croak("Can't read configuration"); #ifdef HDLISTDEBUG -rpmSetVerbosity(RPMMESS_DEBUG); +rpmSetVerbosity(RPMLOG_DEBUG); #else -rpmSetVerbosity(RPMMESS_NORMAL); +rpmSetVerbosity(RPMLOG_NOTICE); #endif #ifdef HDRPMDEBUG _rpmds_debug = -1; @@ -572,10 +543,10 @@ setlogcallback(function) SV * function CODE: if (function == NULL || !SvOK(function)) { - rpmlogSetCallback(NULL); + rpmlogSetCallback(NULL, NULL); } else if (SvTYPE(SvRV(function)) == SVt_PVCV) { log_callback_function = newSVsv(function); - rpmlogSetCallback(logcallback); + rpmlogSetCallback(logcallback, NULL); } else croak("First arg is not a code reference"); @@ -583,7 +554,7 @@ void lastlogmsg() PPCODE: XPUSHs(sv_2mortal(newSViv(rpmlogCode()))); - XPUSHs(sv_2mortal(newSVpv(rpmlogMessage(), 0))); + XPUSHs(sv_2mortal(newSVpv((char *) rpmlogMessage(), 0))); int setlogfile(filename) @@ -609,7 +580,7 @@ readconfig(rcfile = NULL, target = NULL) char * rcfile char * target CODE: - RETVAL = rpmReadConfigFiles(rcfile, target); + RETVAL = rpmReadConfigFiles(rcfile && rcfile[0] ? rcfile : NULL, target); OUTPUT: RETVAL @@ -626,29 +597,7 @@ rpmlog(svcode, msg) void querytag() PREINIT: - int i = 0; - const struct headerSprintfExtension_s * ext = rpmHeaderFormats; - PPCODE: - for (i = 0; i < rpmTagTableSize; i++) { - XPUSHs(sv_2mortal(newSVpv(rpmTagTable[i].name + 7, 0))); - XPUSHs(sv_2mortal(newSViv(rpmTagTable[i].val))); - } - - while (ext->name != NULL) { - if (ext->type == HEADER_EXT_MORE) { - ext = ext->u.more; - continue; - } - for (i = 0; i < rpmTagTableSize; i++) { - if (!strcmp(rpmTagTable[i].name, ext->name)) - break; - } - if (i >= rpmTagTableSize && ext->type == HEADER_EXT_TAG) { - XPUSHs(sv_2mortal(newSVpv(ext->name + 7, 0))); - XPUSHs(sv_newmortal()); - } - ext++; - } + CODE: int tagtypevalue(svtagtype) @@ -672,7 +621,7 @@ tagName(tag) PREINIT: const char *r = NULL; PPCODE: - r = tagName(tag); + r = rpmTagGetName(tag); XPUSHs(sv_2mortal(newSVpv(r, 0))); void @@ -717,7 +666,7 @@ expand(name) PPCODE: const char * value = rpmExpand(name, NULL); XPUSHs(sv_2mortal(newSVpv(value, 0))); - free(value); + free((char *) value); void expandnumeric(name) @@ -1205,10 +1154,10 @@ Header_queryformat(h, query) PREINIT: char *s = NULL; PPCODE: - s = headerSprintf(h, query, - rpmTagTable, rpmHeaderFormats, NULL); + s = headerFormat(h, query, + NULL); XPUSHs(sv_2mortal(newSVpv(s, 0))); - _free(s); + free(s); void Header_fullname(h) @@ -1254,7 +1203,7 @@ void Header_nevr(header) Header header PPCODE: - PUSHs(sv_2mortal(newSVpv(hGetNEVR(header, NULL), 0))); + PUSHs(sv_2mortal(newSVpv(headerGetNEVR(header, NULL), 0))); int Header_issrc(h) @@ -1686,7 +1635,7 @@ Ts_transadd(ts, header, key = NULL, upgr /* if (! (headerGetEntry(eiu->h, RPMTAG_PREFIXES, &pft, (void **) &paths, &c) && (c == 1))) { */ if (! headerIsEntry(header, RPMTAG_PREFIXES)) { - rpmMessage(RPMMESS_ERROR, + rpmMessage(RPMLOG_ERR, _("package %s is not relocatable\n"), ""); XPUSHi((IV)1); XSRETURN(1); @@ -1828,22 +1777,10 @@ Ts_traverse_transaction(ts, callback, ty RETVAL int -Ts_transcheck(ts, callback = NULL) +Ts_transcheck(ts) rpmts ts - SV * callback CODE: - ts = rpmtsLink(ts, "RPM4 Db_transcheck()"); - if (callback != NULL && SvOK(callback) && SvTYPE(SvRV(callback)) == SVt_PVCV) { /* Be sure we have a code ref */ -#ifdef HDLISTDEBUG - PRINTF_CALL; -#endif - rpmtsSetSolveCallback(ts, transSolveCallback, (void *) callback); - } - RETVAL = rpmtsCheck(ts); - /* Restoring default rpm setting */ - rpmtsSetSolveCallback(ts, rpmtsSolve, NULL); - ts = rpmtsFree(ts); OUTPUT: RETVAL @@ -1908,7 +1845,7 @@ Ts__transpbs(ts) rpmps ps; PPCODE: ps = rpmtsProblems(ts); - if (ps && ps->numProblems) /* if no problem, return undef */ + if (ps && rpmpsNumProblems(ps)) /* if no problem, return undef */ XPUSHs(sv_2mortal(sv_setref_pv(newSVpv("", 0), bless_rpmps, ps))); int @@ -1916,22 +1853,22 @@ Ts_importpubkey(ts, filename) rpmts ts char * filename PREINIT: - const byte * pkt = NULL; + uint8_t *pkt = NULL; size_t pktlen = 0; int rc; CODE: rpmtsClean(ts); - if ((rc = pgpReadPkts(filename, &pkt, &pktlen)) <= 0) { + if ((rc = pgpReadPkts(filename, (uint8_t ** ) &pkt, &pktlen)) <= 0) { RETVAL = 1; } else if (rc != PGPARMOR_PUBKEY) { RETVAL = 1; - } else if (rpmcliImportPubkey(ts, pkt, pktlen) != RPMRC_OK) { + } else if (rpmtsImportPubkey(ts, pkt, pktlen) != RPMRC_OK) { RETVAL = 1; } else { RETVAL = 0; } - pkt = _free(pkt); + free(pkt); OUTPUT: RETVAL @@ -1976,7 +1913,7 @@ Ts_rpm2header(ts, filename) int Ts_specbuild(ts, spec, sv_buildflags) rpmts ts - Spec spec + rpmSpec spec SV * sv_buildflags CODE: RETVAL = _specbuild(ts, spec, sv_buildflags); @@ -2129,7 +2066,7 @@ rpmlibdep() int i; #endif PPCODE: -#ifndef RPM4_4_3 +#if 0 num = rpmGetRpmlibProvides(&provNames, &provFlags, &provVersions); for (i = 0; i < num; i++) { #ifdef HDLISTDEBUG @@ -2616,20 +2553,13 @@ void Files_md5(Files) rpmfi Files PREINIT: - const byte * md5; - char * fmd5 = malloc((char) 33); + const char * md5; PPCODE: if ((md5 = -#ifdef RPM4_4_6 - rpmfiDigest(Files, NULL, NULL) -#else - rpmfiMD5(Files) -#endif + rpmfiFDigestHex(Files, NULL) ) != NULL && *md5 != 0 /* return undef if empty */) { - (void) pgpHexCvt(fmd5, md5, 16); - XPUSHs(sv_2mortal(newSVpv(fmd5, 0))); + XPUSHs(sv_2mortal(newSVpv(md5, 0))); } - _free(fmd5); void Files_link(Files) @@ -2772,7 +2702,7 @@ Spec_new(perlclass, specfile = NULL, ... void Spec_DESTROY(spec) - Spec spec + rpmSpec spec CODE: #ifdef HDRPMMEM PRINTF_FREE(bless_spec, spec, -1); @@ -2781,7 +2711,7 @@ Spec_DESTROY(spec) void Spec_srcheader(spec) - Spec spec + rpmSpec spec PPCODE: if ( ! spec->sourceHeader) initSourceHeader(spec); @@ -2789,7 +2719,7 @@ Spec_srcheader(spec) void Spec_binheader(spec) - Spec spec + rpmSpec spec PREINIT: Package pkg; PPCODE: @@ -2798,7 +2728,7 @@ Spec_binheader(spec) void Spec_srcrpm(spec) - Spec spec + rpmSpec spec PREINIT: const char *name, *version, *release; PPCODE: @@ -2814,10 +2744,10 @@ Spec_srcrpm(spec) void Spec_binrpm(spec) - Spec spec + rpmSpec spec PREINIT: Package pkg; - const char * binFormat; + char * binFormat; char * binRpm; char * path; PPCODE: @@ -2826,18 +2756,17 @@ Spec_binrpm(spec) continue; /* headerCopyTags(h, pkg->header, copyTags); */ binFormat = rpmGetPath("%{_rpmfilename}", NULL); - binRpm = headerSprintf(pkg->header, binFormat, rpmTagTable, - rpmHeaderFormats, NULL); - _free(binFormat); + binRpm = headerFormat(pkg->header, binFormat, NULL); + free(binFormat); path = rpmGetPath("%{_rpmdir}/", binRpm, NULL); XPUSHs(sv_2mortal(newSVpv(path, 0))); - _free(path); - _free(binRpm); + free(path); + free(binRpm); } void Spec_check(spec, ts = NULL) - Spec spec + rpmSpec spec PREINIT: int rc; rpmts ts = rpmtsCreate(); @@ -2863,7 +2792,7 @@ Spec_check(spec, ts = NULL) croak("Can't check rpmts"); /* any better idea ? */ ps = rpmtsProblems(ts); - if (ps && ps->numProblems) /* if no problem, return undef */ + if (ps && rpmpsNumProblems(ps)) /* if no problem, return undef */ XPUSHs(sv_2mortal(sv_setref_pv(newSVpv("", 0), bless_rpmps, ps))); ts = rpmtsFree(ts); SPAGAIN; @@ -2871,7 +2800,7 @@ Spec_check(spec, ts = NULL) int Spec_build(spec, sv_buildflags) - Spec spec + rpmSpec spec SV * sv_buildflags PREINIT: rpmts ts = rpmtsCreate(); @@ -2883,7 +2812,7 @@ Spec_build(spec, sv_buildflags) const char * Spec_specfile(spec) - Spec spec + rpmSpec spec CODE: RETVAL = spec->specFile; OUTPUT: @@ -2891,7 +2820,7 @@ Spec_specfile(spec) void Spec_sources(spec, is = 0) - Spec spec + rpmSpec spec int is PREINIT: struct Source *srcPtr; @@ -2904,7 +2833,7 @@ Spec_sources(spec, is = 0) void Spec_sources_url(spec, is = 0) - Spec spec + rpmSpec spec int is PREINIT: struct Source * srcPtr; @@ -2917,7 +2846,7 @@ Spec_sources_url(spec, is = 0) void Spec_icon(spec) - Spec spec + rpmSpec spec PREINIT: Package pkg; PPCODE: @@ -2934,7 +2863,7 @@ Spec_icon(spec) void Spec_icon_url(spec) - Spec spec + rpmSpec spec PREINIT: Package pkg; PPCODE: @@ -2959,7 +2888,7 @@ ps_new(perlclass, ts) rpmps ps; PPCODE: ps = rpmtsProblems(ts); - if (ps && ps->numProblems) /* if no problem, return undef */ + if (ps && rpmpsNumProblems(ps)) /* if no problem, return undef */ XPUSHs(sv_2mortal(sv_setref_pv(newSVpv("", 0), bless_rpmps, ps))); void @@ -2989,13 +2918,9 @@ ps_isignore(ps, numpb) int numpb PREINIT: rpmProblem p; + int i; CODE: - if (ps->numProblems < numpb) - RETVAL = 0; /* croak here ? */ - else { - p = ps->probs + numpb; - RETVAL = p->ignoreProblem; - } + RETVAL = 0; /* ignoreProblem is obsolete and always false */ OUTPUT: RETVAL @@ -3005,12 +2930,17 @@ ps_fmtpb(ps, numpb) int numpb PREINIT: rpmProblem p; + int i; CODE: - if (ps->numProblems < numpb) - RETVAL = NULL; - else { - p = ps->probs + numpb; + rpmpsi psi = rpmpsInitIterator(ps); + for (i = 0; i <= numpb; i++) + if (rpmpsNextIterator(psi) < 0) break; + + p = rpmpsGetProblem(psi); + if (p) RETVAL = rpmProblemString(p); + else { + RETVAL = NULL; } OUTPUT: RETVAL diff -p -up RPM4-0.23/src/typemap.rpm46 RPM4-0.23/src/typemap --- RPM4-0.23/src/typemap.rpm46 2005-12-20 02:33:44.000000000 +0100 +++ RPM4-0.23/src/typemap 2009-01-19 13:06:10.000000000 +0100 @@ -1,6 +1,6 @@ TYPEMAP Header O_OBJECT -Spec O_OBJECT +rpmSpec O_OBJECT rpmts O_OBJECT rpmds O_OBJECT rpmfi O_OBJECT diff -p -up RPM4-0.23/src/RPM4sign.c.pix RPM4-0.23/src/RPM4sign.c --- RPM4-0.23/src/RPM4sign.c.pix 2005-12-20 02:33:44.000000000 +0100 +++ RPM4-0.23/src/RPM4sign.c 2009-01-20 13:07:34.000000000 +0100 @@ -15,10 +15,9 @@ /* Hight level function */ int rpmsign(char *passphrase, const char *rpm) { QVA_t qva = &rpmQVKArgs; - const char * file[2]; + ARGV_t file = NULL; - file[0] = rpm; - file[1] = NULL; + argvAdd(&file, rpm); qva->qva_mode = RPMSIGN_ADD_SIGNATURE; qva->passPhrase = passphrase; diff -p -up RPM4-0.23/t/07dep.t.pix RPM4-0.23/t/07dep.t --- RPM4-0.23/t/07dep.t.pix 2007-03-07 22:26:16.000000000 +0100 +++ RPM4-0.23/t/07dep.t 2009-01-20 13:02:13.000000000 +0100 @@ -15,7 +15,7 @@ isa_ok( ); SKIP: { - if ($minfo{RPMVERSION} lt '4.4.3') { + if (1 || $minfo{RPMVERSION} lt '4.4.3') { skip( "These function are supported only for rpm 4.4.3 or highter", 4