aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Makefile.PL7
-rw-r--r--URPM.xs4
2 files changed, 9 insertions, 2 deletions
diff --git a/Makefile.PL b/Makefile.PL
index d4813d5..e2dc5d4 100644
--- a/Makefile.PL
+++ b/Makefile.PL
@@ -18,7 +18,7 @@ defined $rpm_path or die "Can't find rpm on this system\n";
my $version = `LC_ALL=C $rpm_path --version`;
chomp $version;
-$version =~ s/RPM version //;
+$version =~ s/(RPM version )|(rpm \(RPM\) )//;
my $pversion = eval "v$version";
$pversion ge v4.2 or die "Unable to build URPM with too old (or undetected) rpm version $version\n";
@@ -58,7 +58,10 @@ if ($pversion ge v4.4.90 && $pversion lt v4.5) {
push @rpmflags, '-DRPM_448';
}
if ($pversion ge v4.5) {
- push @rpmflags, '-DRPM_450';
+ push @rpmflags, '-DRPM_450';
+ }
+ if ($pversion ge v5.0.0) {
+ push @rpmflags, '-DRPM_500 -DWITH_DB';
}
}
my $ccflags = join(' ', '-Wall -fno-strict-aliasing', @rpmflags);
diff --git a/URPM.xs b/URPM.xs
index 85c9cc9..3f48775 100644
--- a/URPM.xs
+++ b/URPM.xs
@@ -54,7 +54,11 @@ typedef struct rpmSpec_s * Spec;
#endif
#include <rpm/rpmlib.h>
+#ifdef RPM_500
+#include <rpm/rpmtag.h>
+#else
#include <rpm/header.h>
+#endif
#include <rpm/rpmio.h>
#include <rpm/rpmdb.h>
#include <rpm/rpmts.h>