diff options
-rw-r--r-- | 0001-RPMTAG_PKGID-and-RPMTAG_HDRID-removed-in-RPM-6.patch | 68 | ||||
-rw-r--r-- | 0001-relax-test-for-RPM-5.patch | 23 | ||||
-rw-r--r-- | 0003-use-RPMTAG_SIGMD5-instead-of-RPMTAG_PKGID-RPMTAG_SHA.patch | 79 | ||||
-rw-r--r-- | PHPINFO | 7 | ||||
-rw-r--r-- | REFLECTION | 611 | ||||
-rw-r--r-- | php-pecl-rpminfo.spec | 213 |
6 files changed, 616 insertions, 385 deletions
diff --git a/0001-RPMTAG_PKGID-and-RPMTAG_HDRID-removed-in-RPM-6.patch b/0001-RPMTAG_PKGID-and-RPMTAG_HDRID-removed-in-RPM-6.patch new file mode 100644 index 0000000..c4c7e05 --- /dev/null +++ b/0001-RPMTAG_PKGID-and-RPMTAG_HDRID-removed-in-RPM-6.patch @@ -0,0 +1,68 @@ +From 6f92494506e97d8e347eb1064977d79251f10a79 Mon Sep 17 00:00:00 2001 +From: Remi Collet <remi@remirepo.net> +Date: Fri, 18 Jul 2025 14:41:27 +0200 +Subject: [PATCH 1/2] RPMTAG_PKGID and RPMTAG_HDRID removed in RPM 6 + +--- + rpminfo.c | 14 +++++++---- + tests/008-rpmdbsearch.phpt | 6 ++++- + tests/016-rpmdbsearch2.phpt | 46 +++++++++++++++++++++++++++++++++++++ + 3 files changed, 60 insertions(+), 6 deletions(-) + create mode 100644 tests/016-rpmdbsearch2.phpt + +diff --git a/rpminfo.c b/rpminfo.c +index ae8b8e7..0d17abf 100644 +--- a/rpminfo.c ++++ b/rpminfo.c +@@ -399,22 +399,26 @@ PHP_FUNCTION(rpmdbsearch) + RETURN_THROWS(); + } + +- if (crit == RPMTAG_PKGID) { ++ if (crit == RPMTAG_INSTALLTID) { ++ tid = atol(name); ++ name = (char *)&tid; ++ len = sizeof(tid); ++#ifdef RPMTAG_PKGID ++ } else if (crit == RPMTAG_PKGID) { + if (len != 32) { + zend_argument_value_error(1, "Bad length for PKGID, 32 expected"); + RETURN_THROWS(); + } + len = hex2bin(name, MD5, len); + name = MD5; ++#endif ++#ifdef RPMTAG_HDRID + } else if (crit == RPMTAG_HDRID) { + if (len != 40) { + zend_argument_value_error(1, "Bad length for HDRID, 40 expected"); + RETURN_THROWS(); + } +- } else if (crit == RPMTAG_INSTALLTID) { +- tid = atol(name); +- name = (char *)&tid; +- len = sizeof(tid); ++#endif + } else if (crit == RPMTAG_INSTFILENAMES) { + /* use input parameters */ + } else { +diff --git a/tests/008-rpmdbsearch.phpt b/tests/008-rpmdbsearch.phpt +index f348b92..bd927ec 100644 +--- a/tests/008-rpmdbsearch.phpt ++++ b/tests/008-rpmdbsearch.phpt +@@ -1,7 +1,11 @@ + --TEST-- + Check for rpmdbinfo function + --SKIPIF-- +-<?php if (!extension_loaded("rpminfo")) print "skip"; ?> ++<?php ++if (!extension_loaded("rpminfo")) print "skip"; ++if (version_compare(RPMVERSION, '5', '>=')) die("skip for RPM 4.x"); ++?> ++ + --FILE-- + <?php + echo "Name / glob\n"; +-- +2.50.1 + diff --git a/0001-relax-test-for-RPM-5.patch b/0001-relax-test-for-RPM-5.patch new file mode 100644 index 0000000..7454063 --- /dev/null +++ b/0001-relax-test-for-RPM-5.patch @@ -0,0 +1,23 @@ +From 54b64867fb46dca7a5e5d438afb7fe27f95763f7 Mon Sep 17 00:00:00 2001 +From: Remi Collet <remi@remirepo.net> +Date: Thu, 22 May 2025 10:30:19 +0200 +Subject: [PATCH] relax test for RPM 5 + +--- + tests/004-constants.phpt | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/tests/004-constants.phpt b/tests/004-constants.phpt +index 397c97f..18104cc 100644 +--- a/tests/004-constants.phpt ++++ b/tests/004-constants.phpt +@@ -8,5 +8,5 @@ var_dump(RPMVERSION); + ?> + Done + --EXPECTF-- +-string(%d) "4.%s" ++string(%d) "%s" + Done +-- +2.49.0 + diff --git a/0003-use-RPMTAG_SIGMD5-instead-of-RPMTAG_PKGID-RPMTAG_SHA.patch b/0003-use-RPMTAG_SIGMD5-instead-of-RPMTAG_PKGID-RPMTAG_SHA.patch new file mode 100644 index 0000000..00ededb --- /dev/null +++ b/0003-use-RPMTAG_SIGMD5-instead-of-RPMTAG_PKGID-RPMTAG_SHA.patch @@ -0,0 +1,79 @@ +From 4a4a669084f8b1ccb566d2fed8a1aa13898fc436 Mon Sep 17 00:00:00 2001 +From: Remi Collet <remi@remirepo.net> +Date: Fri, 18 Jul 2025 15:25:21 +0200 +Subject: [PATCH 3/4] use RPMTAG_SIGMD5 instead of RPMTAG_PKGID, + RPMTAG_SHA1HEADER instead of RPMTAG_HDRID + +--- + rpminfo.c | 12 ++++------ + tests/008-rpmdbsearch.phpt | 7 +++--- + tests/016-rpmdbsearch2.phpt | 46 ------------------------------------- + 3 files changed, 7 insertions(+), 58 deletions(-) + delete mode 100644 tests/016-rpmdbsearch2.phpt + +diff --git a/rpminfo.c b/rpminfo.c +index 0d17abf..a32a45a 100644 +--- a/rpminfo.c ++++ b/rpminfo.c +@@ -403,22 +403,18 @@ PHP_FUNCTION(rpmdbsearch) + tid = atol(name); + name = (char *)&tid; + len = sizeof(tid); +-#ifdef RPMTAG_PKGID +- } else if (crit == RPMTAG_PKGID) { ++ } else if (crit == RPMTAG_SIGMD5) { + if (len != 32) { +- zend_argument_value_error(1, "Bad length for PKGID, 32 expected"); ++ zend_argument_value_error(1, "Bad length for PKGID/SIGMD5, 32 expected"); + RETURN_THROWS(); + } + len = hex2bin(name, MD5, len); + name = MD5; +-#endif +-#ifdef RPMTAG_HDRID +- } else if (crit == RPMTAG_HDRID) { ++ } else if (crit == RPMTAG_SHA1HEADER) { + if (len != 40) { +- zend_argument_value_error(1, "Bad length for HDRID, 40 expected"); ++ zend_argument_value_error(1, "Bad length for HDRID/SHA1HEADER, 40 expected"); + RETURN_THROWS(); + } +-#endif + } else if (crit == RPMTAG_INSTFILENAMES) { + /* use input parameters */ + } else { +diff --git a/tests/008-rpmdbsearch.phpt b/tests/008-rpmdbsearch.phpt +index bd927ec..6e0e402 100644 +--- a/tests/008-rpmdbsearch.phpt ++++ b/tests/008-rpmdbsearch.phpt +@@ -3,7 +3,6 @@ Check for rpmdbinfo function + --SKIPIF-- + <?php + if (!extension_loaded("rpminfo")) print "skip"; +-if (version_compare(RPMVERSION, '5', '>=')) die("skip for RPM 4.x"); + ?> + + --FILE-- +@@ -24,16 +23,16 @@ $phprpm = $a[0]['Name']; + $p = rpmdbinfo($phprpm, 1); + + echo "Pkgid\n"; +-$a = rpmdbsearch($p[0]['Sigmd5'], RPMTAG_PKGID); ++$a = rpmdbsearch($p[0]['Sigmd5'], RPMTAG_SIGMD5); + var_dump($a[0]['Name'] == $phprpm); + + echo "Hdrid\n"; +-$a = rpmdbsearch($p[0]['Sha1header'], RPMTAG_HDRID); ++$a = rpmdbsearch($p[0]['Sha1header'], RPMTAG_SHA1HEADER); + var_dump($a[0]['Name'] == $phprpm); + var_dump(count($a[0]) < 10); + + echo "Hdrid (full)\n"; +-$a = rpmdbsearch($p[0]['Sha1header'], RPMTAG_HDRID, -1, true); ++$a = rpmdbsearch($p[0]['Sha1header'], RPMTAG_SHA1HEADER, -1, true); + var_dump($a[0]['Name'] == $phprpm); + var_dump($a[0]['Sha1header'] == $p[0]['Sha1header']); + var_dump(count($a[0]) > 20); +-- +2.50.1 + @@ -2,5 +2,8 @@ rpminfo rpminfo support => enabled -Extension version => 0.6.0 -RPM library version => 4.16.1.3 +Extension version => 1.2.0 +Author => Remi Collet +License => PHP-3.01 +RPM library version => 4.20.1 +RPM stream wrapper => yes @@ -1,278 +1,291 @@ -Extension [ <persistent> extension #98 rpminfo version 0.6.0 ] { +Extension [ <persistent> extension #64 rpminfo version 1.2.0 ] { - - Constants [272] { - Constant [ string RPMVERSION ] { 4.16.1.3 } - Constant [ int RPMSENSE_ANY ] { 0 } - Constant [ int RPMSENSE_LESS ] { 2 } - Constant [ int RPMSENSE_GREATER ] { 4 } - Constant [ int RPMSENSE_EQUAL ] { 8 } - Constant [ int RPMSENSE_POSTTRANS ] { 32 } - Constant [ int RPMSENSE_PREREQ ] { 64 } - Constant [ int RPMSENSE_PRETRANS ] { 128 } - Constant [ int RPMSENSE_INTERP ] { 256 } - Constant [ int RPMSENSE_SCRIPT_PRE ] { 512 } - Constant [ int RPMSENSE_SCRIPT_POST ] { 1024 } - Constant [ int RPMSENSE_SCRIPT_PREUN ] { 2048 } - Constant [ int RPMSENSE_SCRIPT_POSTUN ] { 4096 } - Constant [ int RPMSENSE_SCRIPT_VERIFY ] { 8192 } - Constant [ int RPMSENSE_FIND_REQUIRES ] { 16384 } - Constant [ int RPMSENSE_FIND_PROVIDES ] { 32768 } - Constant [ int RPMSENSE_TRIGGERIN ] { 65536 } - Constant [ int RPMSENSE_TRIGGERUN ] { 131072 } - Constant [ int RPMSENSE_TRIGGERPOSTUN ] { 262144 } - Constant [ int RPMSENSE_MISSINGOK ] { 524288 } - Constant [ int RPMSENSE_RPMLIB ] { 16777216 } - Constant [ int RPMSENSE_TRIGGERPREIN ] { 33554432 } - Constant [ int RPMSENSE_KEYRING ] { 67108864 } - Constant [ int RPMSENSE_CONFIG ] { 268435456 } - Constant [ int RPMMIRE_DEFAULT ] { 0 } - Constant [ int RPMMIRE_STRCMP ] { 1 } - Constant [ int RPMMIRE_REGEX ] { 2 } - Constant [ int RPMMIRE_GLOB ] { 3 } - Constant [ int RPMTAG_ARCH ] { 1022 } - Constant [ int RPMTAG_ARCHIVESIZE ] { 1046 } - Constant [ int RPMTAG_BASENAMES ] { 1117 } - Constant [ int RPMTAG_BUGURL ] { 5012 } - Constant [ int RPMTAG_BUILDARCHS ] { 1089 } - Constant [ int RPMTAG_BUILDHOST ] { 1007 } - Constant [ int RPMTAG_BUILDTIME ] { 1006 } - Constant [ int RPMTAG_C ] { 1054 } - Constant [ int RPMTAG_CHANGELOGNAME ] { 1081 } - Constant [ int RPMTAG_CHANGELOGTEXT ] { 1082 } - Constant [ int RPMTAG_CHANGELOGTIME ] { 1080 } - Constant [ int RPMTAG_CLASSDICT ] { 1142 } - Constant [ int RPMTAG_CONFLICTFLAGS ] { 1053 } - Constant [ int RPMTAG_CONFLICTNAME ] { 1054 } - Constant [ int RPMTAG_CONFLICTNEVRS ] { 5044 } - Constant [ int RPMTAG_CONFLICTS ] { 1054 } - Constant [ int RPMTAG_CONFLICTVERSION ] { 1055 } - Constant [ int RPMTAG_COOKIE ] { 1094 } - Constant [ int RPMTAG_DBINSTANCE ] { 1195 } - Constant [ int RPMTAG_DEPENDSDICT ] { 1145 } - Constant [ int RPMTAG_DESCRIPTION ] { 1005 } - Constant [ int RPMTAG_DIRINDEXES ] { 1116 } - Constant [ int RPMTAG_DIRNAMES ] { 1118 } - Constant [ int RPMTAG_DISTRIBUTION ] { 1010 } - Constant [ int RPMTAG_DISTTAG ] { 1155 } - Constant [ int RPMTAG_DISTURL ] { 1123 } - Constant [ int RPMTAG_DSAHEADER ] { 267 } - Constant [ int RPMTAG_E ] { 1003 } - Constant [ int RPMTAG_ENCODING ] { 5062 } - Constant [ int RPMTAG_ENHANCEFLAGS ] { 5057 } - Constant [ int RPMTAG_ENHANCENAME ] { 5055 } - Constant [ int RPMTAG_ENHANCENEVRS ] { 5061 } - Constant [ int RPMTAG_ENHANCES ] { 5055 } - Constant [ int RPMTAG_ENHANCEVERSION ] { 5056 } - Constant [ int RPMTAG_EPOCH ] { 1003 } - Constant [ int RPMTAG_EPOCHNUM ] { 5019 } - Constant [ int RPMTAG_EVR ] { 5013 } - Constant [ int RPMTAG_EXCLUDEARCH ] { 1059 } - Constant [ int RPMTAG_EXCLUDEOS ] { 1060 } - Constant [ int RPMTAG_EXCLUSIVEARCH ] { 1061 } - Constant [ int RPMTAG_EXCLUSIVEOS ] { 1062 } - Constant [ int RPMTAG_FILECAPS ] { 5010 } - Constant [ int RPMTAG_FILECLASS ] { 1141 } - Constant [ int RPMTAG_FILECOLORS ] { 1140 } - Constant [ int RPMTAG_FILECONTEXTS ] { 1147 } - Constant [ int RPMTAG_FILEDEPENDSN ] { 1144 } - Constant [ int RPMTAG_FILEDEPENDSX ] { 1143 } - Constant [ int RPMTAG_FILEDEVICES ] { 1095 } - Constant [ int RPMTAG_FILEDIGESTALGO ] { 5011 } - Constant [ int RPMTAG_FILEDIGESTS ] { 1035 } - Constant [ int RPMTAG_FILEFLAGS ] { 1037 } - Constant [ int RPMTAG_FILEGROUPNAME ] { 1040 } - Constant [ int RPMTAG_FILEINODES ] { 1096 } - Constant [ int RPMTAG_FILELANGS ] { 1097 } - Constant [ int RPMTAG_FILELINKTOS ] { 1036 } - Constant [ int RPMTAG_FILEMD5S ] { 1035 } - Constant [ int RPMTAG_FILEMODES ] { 1030 } - Constant [ int RPMTAG_FILEMTIMES ] { 1034 } - Constant [ int RPMTAG_FILENAMES ] { 5000 } - Constant [ int RPMTAG_FILENLINKS ] { 5045 } - Constant [ int RPMTAG_FILEPROVIDE ] { 5001 } - Constant [ int RPMTAG_FILERDEVS ] { 1033 } - Constant [ int RPMTAG_FILEREQUIRE ] { 5002 } - Constant [ int RPMTAG_FILESIGNATURELENGTH ] { 5091 } - Constant [ int RPMTAG_FILESIGNATURES ] { 5090 } - Constant [ int RPMTAG_FILESIZES ] { 1028 } - Constant [ int RPMTAG_FILESTATES ] { 1029 } - Constant [ int RPMTAG_FILETRIGGERCONDS ] { 5086 } - Constant [ int RPMTAG_FILETRIGGERFLAGS ] { 5072 } - Constant [ int RPMTAG_FILETRIGGERINDEX ] { 5070 } - Constant [ int RPMTAG_FILETRIGGERNAME ] { 5069 } - Constant [ int RPMTAG_FILETRIGGERPRIORITIES ] { 5084 } - Constant [ int RPMTAG_FILETRIGGERSCRIPTFLAGS ] { 5068 } - Constant [ int RPMTAG_FILETRIGGERSCRIPTPROG ] { 5067 } - Constant [ int RPMTAG_FILETRIGGERSCRIPTS ] { 5066 } - Constant [ int RPMTAG_FILETRIGGERTYPE ] { 5087 } - Constant [ int RPMTAG_FILETRIGGERVERSION ] { 5071 } - Constant [ int RPMTAG_FILEUSERNAME ] { 1039 } - Constant [ int RPMTAG_FILEVERIFYFLAGS ] { 1045 } - Constant [ int RPMTAG_FSCONTEXTS ] { 1148 } - Constant [ int RPMTAG_GIF ] { 1012 } - Constant [ int RPMTAG_GROUP ] { 1016 } - Constant [ int RPMTAG_HDRID ] { 269 } - Constant [ int RPMTAG_HEADERCOLOR ] { 5017 } - Constant [ int RPMTAG_HEADERI18NTABLE ] { 100 } - Constant [ int RPMTAG_HEADERIMAGE ] { 61 } - Constant [ int RPMTAG_HEADERIMMUTABLE ] { 63 } - Constant [ int RPMTAG_HEADERREGIONS ] { 64 } - Constant [ int RPMTAG_HEADERSIGNATURES ] { 62 } - Constant [ int RPMTAG_ICON ] { 1043 } - Constant [ int RPMTAG_INSTALLCOLOR ] { 1127 } - Constant [ int RPMTAG_INSTALLTID ] { 1128 } - Constant [ int RPMTAG_INSTALLTIME ] { 1008 } - Constant [ int RPMTAG_INSTFILENAMES ] { 5040 } - Constant [ int RPMTAG_INSTPREFIXES ] { 1099 } - Constant [ int RPMTAG_LICENSE ] { 1014 } - Constant [ int RPMTAG_LONGARCHIVESIZE ] { 271 } - Constant [ int RPMTAG_LONGFILESIZES ] { 5008 } - Constant [ int RPMTAG_LONGSIGSIZE ] { 270 } - Constant [ int RPMTAG_LONGSIZE ] { 5009 } - Constant [ int RPMTAG_MODULARITYLABEL ] { 5096 } - Constant [ int RPMTAG_N ] { 1000 } - Constant [ int RPMTAG_NAME ] { 1000 } - Constant [ int RPMTAG_NEVR ] { 5015 } - Constant [ int RPMTAG_NEVRA ] { 5016 } - Constant [ int RPMTAG_NOPATCH ] { 1052 } - Constant [ int RPMTAG_NOSOURCE ] { 1051 } - Constant [ int RPMTAG_NVR ] { 5014 } - Constant [ int RPMTAG_NVRA ] { 1196 } - Constant [ int RPMTAG_O ] { 1090 } - Constant [ int RPMTAG_OBSOLETEFLAGS ] { 1114 } - Constant [ int RPMTAG_OBSOLETENAME ] { 1090 } - Constant [ int RPMTAG_OBSOLETENEVRS ] { 5043 } - Constant [ int RPMTAG_OBSOLETES ] { 1090 } - Constant [ int RPMTAG_OBSOLETEVERSION ] { 1115 } - Constant [ int RPMTAG_OLDENHANCES ] { 1159 } - Constant [ int RPMTAG_OLDENHANCESFLAGS ] { 1161 } - Constant [ int RPMTAG_OLDENHANCESNAME ] { 1159 } - Constant [ int RPMTAG_OLDENHANCESVERSION ] { 1160 } - Constant [ int RPMTAG_OLDFILENAMES ] { 1027 } - Constant [ int RPMTAG_OLDSUGGESTS ] { 1156 } - Constant [ int RPMTAG_OLDSUGGESTSFLAGS ] { 1158 } - Constant [ int RPMTAG_OLDSUGGESTSNAME ] { 1156 } - Constant [ int RPMTAG_OLDSUGGESTSVERSION ] { 1157 } - Constant [ int RPMTAG_OPTFLAGS ] { 1122 } - Constant [ int RPMTAG_ORDERFLAGS ] { 5037 } - Constant [ int RPMTAG_ORDERNAME ] { 5035 } - Constant [ int RPMTAG_ORDERVERSION ] { 5036 } - Constant [ int RPMTAG_ORIGBASENAMES ] { 1120 } - Constant [ int RPMTAG_ORIGDIRINDEXES ] { 1119 } - Constant [ int RPMTAG_ORIGDIRNAMES ] { 1121 } - Constant [ int RPMTAG_ORIGFILENAMES ] { 5007 } - Constant [ int RPMTAG_OS ] { 1021 } - Constant [ int RPMTAG_P ] { 1047 } - Constant [ int RPMTAG_PACKAGER ] { 1015 } - Constant [ int RPMTAG_PATCH ] { 1019 } - Constant [ int RPMTAG_PATCHESFLAGS ] { 1134 } - Constant [ int RPMTAG_PATCHESNAME ] { 1133 } - Constant [ int RPMTAG_PATCHESVERSION ] { 1135 } - Constant [ int RPMTAG_PAYLOADCOMPRESSOR ] { 1125 } - Constant [ int RPMTAG_PAYLOADDIGEST ] { 5092 } - Constant [ int RPMTAG_PAYLOADDIGESTALGO ] { 5093 } - Constant [ int RPMTAG_PAYLOADDIGESTALT ] { 5097 } - Constant [ int RPMTAG_PAYLOADFLAGS ] { 1126 } - Constant [ int RPMTAG_PAYLOADFORMAT ] { 1124 } - Constant [ int RPMTAG_PKGID ] { 261 } - Constant [ int RPMTAG_PLATFORM ] { 1132 } - Constant [ int RPMTAG_POLICIES ] { 1150 } - Constant [ int RPMTAG_POLICYFLAGS ] { 5033 } - Constant [ int RPMTAG_POLICYNAMES ] { 5030 } - Constant [ int RPMTAG_POLICYTYPES ] { 5031 } - Constant [ int RPMTAG_POLICYTYPESINDEXES ] { 5032 } - Constant [ int RPMTAG_POSTIN ] { 1024 } - Constant [ int RPMTAG_POSTINFLAGS ] { 5021 } - Constant [ int RPMTAG_POSTINPROG ] { 1086 } - Constant [ int RPMTAG_POSTTRANS ] { 1152 } - Constant [ int RPMTAG_POSTTRANSFLAGS ] { 5025 } - Constant [ int RPMTAG_POSTTRANSPROG ] { 1154 } - Constant [ int RPMTAG_POSTUN ] { 1026 } - Constant [ int RPMTAG_POSTUNFLAGS ] { 5023 } - Constant [ int RPMTAG_POSTUNPROG ] { 1088 } - Constant [ int RPMTAG_PREFIXES ] { 1098 } - Constant [ int RPMTAG_PREIN ] { 1023 } - Constant [ int RPMTAG_PREINFLAGS ] { 5020 } - Constant [ int RPMTAG_PREINPROG ] { 1085 } - Constant [ int RPMTAG_PRETRANS ] { 1151 } - Constant [ int RPMTAG_PRETRANSFLAGS ] { 5024 } - Constant [ int RPMTAG_PRETRANSPROG ] { 1153 } - Constant [ int RPMTAG_PREUN ] { 1025 } - Constant [ int RPMTAG_PREUNFLAGS ] { 5022 } - Constant [ int RPMTAG_PREUNPROG ] { 1087 } - Constant [ int RPMTAG_PROVIDEFLAGS ] { 1112 } - Constant [ int RPMTAG_PROVIDENAME ] { 1047 } - Constant [ int RPMTAG_PROVIDENEVRS ] { 5042 } - Constant [ int RPMTAG_PROVIDES ] { 1047 } - Constant [ int RPMTAG_PROVIDEVERSION ] { 1113 } - Constant [ int RPMTAG_PUBKEYS ] { 266 } - Constant [ int RPMTAG_R ] { 1002 } - Constant [ int RPMTAG_RECOMMENDFLAGS ] { 5048 } - Constant [ int RPMTAG_RECOMMENDNAME ] { 5046 } - Constant [ int RPMTAG_RECOMMENDNEVRS ] { 5058 } - Constant [ int RPMTAG_RECOMMENDS ] { 5046 } - Constant [ int RPMTAG_RECOMMENDVERSION ] { 5047 } - Constant [ int RPMTAG_RECONTEXTS ] { 1149 } - Constant [ int RPMTAG_RELEASE ] { 1002 } - Constant [ int RPMTAG_REMOVETID ] { 1129 } - Constant [ int RPMTAG_REQUIREFLAGS ] { 1048 } - Constant [ int RPMTAG_REQUIRENAME ] { 1049 } - Constant [ int RPMTAG_REQUIRENEVRS ] { 5041 } - Constant [ int RPMTAG_REQUIRES ] { 1049 } - Constant [ int RPMTAG_REQUIREVERSION ] { 1050 } - Constant [ int RPMTAG_RPMVERSION ] { 1064 } - Constant [ int RPMTAG_RSAHEADER ] { 268 } - Constant [ int RPMTAG_SHA1HEADER ] { 269 } - Constant [ int RPMTAG_SHA256HEADER ] { 273 } - Constant [ int RPMTAG_SIGGPG ] { 262 } - Constant [ int RPMTAG_SIGMD5 ] { 261 } - Constant [ int RPMTAG_SIGPGP ] { 259 } - Constant [ int RPMTAG_SIGSIZE ] { 257 } - Constant [ int RPMTAG_SIZE ] { 1009 } - Constant [ int RPMTAG_SOURCE ] { 1018 } - Constant [ int RPMTAG_SOURCEPACKAGE ] { 1106 } - Constant [ int RPMTAG_SOURCEPKGID ] { 1146 } - Constant [ int RPMTAG_SOURCERPM ] { 1044 } - Constant [ int RPMTAG_SUGGESTFLAGS ] { 5051 } - Constant [ int RPMTAG_SUGGESTNAME ] { 5049 } - Constant [ int RPMTAG_SUGGESTNEVRS ] { 5059 } - Constant [ int RPMTAG_SUGGESTS ] { 5049 } - Constant [ int RPMTAG_SUGGESTVERSION ] { 5050 } - Constant [ int RPMTAG_SUMMARY ] { 1004 } - Constant [ int RPMTAG_SUPPLEMENTFLAGS ] { 5054 } - Constant [ int RPMTAG_SUPPLEMENTNAME ] { 5052 } - Constant [ int RPMTAG_SUPPLEMENTNEVRS ] { 5060 } - Constant [ int RPMTAG_SUPPLEMENTS ] { 5052 } - Constant [ int RPMTAG_SUPPLEMENTVERSION ] { 5053 } - Constant [ int RPMTAG_TRANSFILETRIGGERCONDS ] { 5088 } - Constant [ int RPMTAG_TRANSFILETRIGGERFLAGS ] { 5082 } - Constant [ int RPMTAG_TRANSFILETRIGGERINDEX ] { 5080 } - Constant [ int RPMTAG_TRANSFILETRIGGERNAME ] { 5079 } - Constant [ int RPMTAG_TRANSFILETRIGGERPRIORITIES ] { 5085 } - Constant [ int RPMTAG_TRANSFILETRIGGERSCRIPTFLAGS ] { 5078 } - Constant [ int RPMTAG_TRANSFILETRIGGERSCRIPTPROG ] { 5077 } - Constant [ int RPMTAG_TRANSFILETRIGGERSCRIPTS ] { 5076 } - Constant [ int RPMTAG_TRANSFILETRIGGERTYPE ] { 5089 } - Constant [ int RPMTAG_TRANSFILETRIGGERVERSION ] { 5081 } - Constant [ int RPMTAG_TRIGGERCONDS ] { 5005 } - Constant [ int RPMTAG_TRIGGERFLAGS ] { 1068 } - Constant [ int RPMTAG_TRIGGERINDEX ] { 1069 } - Constant [ int RPMTAG_TRIGGERNAME ] { 1066 } - Constant [ int RPMTAG_TRIGGERSCRIPTFLAGS ] { 5027 } - Constant [ int RPMTAG_TRIGGERSCRIPTPROG ] { 1092 } - Constant [ int RPMTAG_TRIGGERSCRIPTS ] { 1065 } - Constant [ int RPMTAG_TRIGGERTYPE ] { 5006 } - Constant [ int RPMTAG_TRIGGERVERSION ] { 1067 } - Constant [ int RPMTAG_URL ] { 1020 } - Constant [ int RPMTAG_V ] { 1001 } - Constant [ int RPMTAG_VCS ] { 5034 } - Constant [ int RPMTAG_VENDOR ] { 1011 } - Constant [ int RPMTAG_VERBOSE ] { 5018 } - Constant [ int RPMTAG_VERIFYSCRIPT ] { 1079 } - Constant [ int RPMTAG_VERIFYSCRIPTFLAGS ] { 5026 } - Constant [ int RPMTAG_VERIFYSCRIPTPROG ] { 1091 } - Constant [ int RPMTAG_VERSION ] { 1001 } - Constant [ int RPMTAG_XPM ] { 1013 } + - Constants [285] { + Constant [ <persistent> string RPMVERSION ] { 4.20.1 } + Constant [ <persistent> int RPMSENSE_ANY ] { 0 } + Constant [ <persistent> int RPMSENSE_LESS ] { 2 } + Constant [ <persistent> int RPMSENSE_GREATER ] { 4 } + Constant [ <persistent> int RPMSENSE_EQUAL ] { 8 } + Constant [ <persistent> int RPMSENSE_POSTTRANS ] { 32 } + Constant [ <persistent> int RPMSENSE_PREREQ ] { 64 } + Constant [ <persistent> int RPMSENSE_PRETRANS ] { 128 } + Constant [ <persistent> int RPMSENSE_INTERP ] { 256 } + Constant [ <persistent> int RPMSENSE_SCRIPT_PRE ] { 512 } + Constant [ <persistent> int RPMSENSE_SCRIPT_POST ] { 1024 } + Constant [ <persistent> int RPMSENSE_SCRIPT_PREUN ] { 2048 } + Constant [ <persistent> int RPMSENSE_SCRIPT_POSTUN ] { 4096 } + Constant [ <persistent> int RPMSENSE_SCRIPT_VERIFY ] { 8192 } + Constant [ <persistent> int RPMSENSE_FIND_REQUIRES ] { 16384 } + Constant [ <persistent> int RPMSENSE_FIND_PROVIDES ] { 32768 } + Constant [ <persistent> int RPMSENSE_TRIGGERIN ] { 65536 } + Constant [ <persistent> int RPMSENSE_TRIGGERUN ] { 131072 } + Constant [ <persistent> int RPMSENSE_TRIGGERPOSTUN ] { 262144 } + Constant [ <persistent> int RPMSENSE_MISSINGOK ] { 524288 } + Constant [ <persistent> int RPMSENSE_RPMLIB ] { 16777216 } + Constant [ <persistent> int RPMSENSE_TRIGGERPREIN ] { 33554432 } + Constant [ <persistent> int RPMSENSE_KEYRING ] { 67108864 } + Constant [ <persistent> int RPMSENSE_CONFIG ] { 268435456 } + Constant [ <persistent> int RPMMIRE_DEFAULT ] { 0 } + Constant [ <persistent> int RPMMIRE_STRCMP ] { 1 } + Constant [ <persistent> int RPMMIRE_REGEX ] { 2 } + Constant [ <persistent> int RPMMIRE_GLOB ] { 3 } + Constant [ <persistent> int RPMTAG_ARCH ] { 1022 } + Constant [ <persistent> int RPMTAG_ARCHIVESIZE ] { 1046 } + Constant [ <persistent> int RPMTAG_ARCHSUFFIX ] { 5098 } + Constant [ <persistent> int RPMTAG_BASENAMES ] { 1117 } + Constant [ <persistent> int RPMTAG_BUGURL ] { 5012 } + Constant [ <persistent> int RPMTAG_BUILDARCHS ] { 1089 } + Constant [ <persistent> int RPMTAG_BUILDHOST ] { 1007 } + Constant [ <persistent> int RPMTAG_BUILDTIME ] { 1006 } + Constant [ <persistent> int RPMTAG_C ] { 1054 } + Constant [ <persistent> int RPMTAG_CHANGELOGNAME ] { 1081 } + Constant [ <persistent> int RPMTAG_CHANGELOGTEXT ] { 1082 } + Constant [ <persistent> int RPMTAG_CHANGELOGTIME ] { 1080 } + Constant [ <persistent> int RPMTAG_CLASSDICT ] { 1142 } + Constant [ <persistent> int RPMTAG_CONFLICTFLAGS ] { 1053 } + Constant [ <persistent> int RPMTAG_CONFLICTNAME ] { 1054 } + Constant [ <persistent> int RPMTAG_CONFLICTNEVRS ] { 5044 } + Constant [ <persistent> int RPMTAG_CONFLICTS ] { 1054 } + Constant [ <persistent> int RPMTAG_CONFLICTVERSION ] { 1055 } + Constant [ <persistent> int RPMTAG_COOKIE ] { 1094 } + Constant [ <persistent> int RPMTAG_DBINSTANCE ] { 1195 } + Constant [ <persistent> int RPMTAG_DEPENDSDICT ] { 1145 } + Constant [ <persistent> int RPMTAG_DESCRIPTION ] { 1005 } + Constant [ <persistent> int RPMTAG_DIRINDEXES ] { 1116 } + Constant [ <persistent> int RPMTAG_DIRNAMES ] { 1118 } + Constant [ <persistent> int RPMTAG_DISTRIBUTION ] { 1010 } + Constant [ <persistent> int RPMTAG_DISTTAG ] { 1155 } + Constant [ <persistent> int RPMTAG_DISTURL ] { 1123 } + Constant [ <persistent> int RPMTAG_DSAHEADER ] { 267 } + Constant [ <persistent> int RPMTAG_E ] { 1003 } + Constant [ <persistent> int RPMTAG_ENCODING ] { 5062 } + Constant [ <persistent> int RPMTAG_ENHANCEFLAGS ] { 5057 } + Constant [ <persistent> int RPMTAG_ENHANCENAME ] { 5055 } + Constant [ <persistent> int RPMTAG_ENHANCENEVRS ] { 5061 } + Constant [ <persistent> int RPMTAG_ENHANCES ] { 5055 } + Constant [ <persistent> int RPMTAG_ENHANCEVERSION ] { 5056 } + Constant [ <persistent> int RPMTAG_EPOCH ] { 1003 } + Constant [ <persistent> int RPMTAG_EPOCHNUM ] { 5019 } + Constant [ <persistent> int RPMTAG_EVR ] { 5013 } + Constant [ <persistent> int RPMTAG_EXCLUDEARCH ] { 1059 } + Constant [ <persistent> int RPMTAG_EXCLUDEOS ] { 1060 } + Constant [ <persistent> int RPMTAG_EXCLUSIVEARCH ] { 1061 } + Constant [ <persistent> int RPMTAG_EXCLUSIVEOS ] { 1062 } + Constant [ <persistent> int RPMTAG_FILECAPS ] { 5010 } + Constant [ <persistent> int RPMTAG_FILECLASS ] { 1141 } + Constant [ <persistent> int RPMTAG_FILECOLORS ] { 1140 } + Constant [ <persistent> int RPMTAG_FILECONTEXTS ] { 1147 } + Constant [ <persistent> int RPMTAG_FILEDEPENDSN ] { 1144 } + Constant [ <persistent> int RPMTAG_FILEDEPENDSX ] { 1143 } + Constant [ <persistent> int RPMTAG_FILEDEVICES ] { 1095 } + Constant [ <persistent> int RPMTAG_FILEDIGESTALGO ] { 5011 } + Constant [ <persistent> int RPMTAG_FILEDIGESTS ] { 1035 } + Constant [ <persistent> int RPMTAG_FILEFLAGS ] { 1037 } + Constant [ <persistent> int RPMTAG_FILEGROUPNAME ] { 1040 } + Constant [ <persistent> int RPMTAG_FILEINODES ] { 1096 } + Constant [ <persistent> int RPMTAG_FILELANGS ] { 1097 } + Constant [ <persistent> int RPMTAG_FILELINKTOS ] { 1036 } + Constant [ <persistent> int RPMTAG_FILEMD5S ] { 1035 } + Constant [ <persistent> int RPMTAG_FILEMODES ] { 1030 } + Constant [ <persistent> int RPMTAG_FILEMTIMES ] { 1034 } + Constant [ <persistent> int RPMTAG_FILENAMES ] { 5000 } + Constant [ <persistent> int RPMTAG_FILENLINKS ] { 5045 } + Constant [ <persistent> int RPMTAG_FILEPROVIDE ] { 5001 } + Constant [ <persistent> int RPMTAG_FILERDEVS ] { 1033 } + Constant [ <persistent> int RPMTAG_FILEREQUIRE ] { 5002 } + Constant [ <persistent> int RPMTAG_FILESIGNATURELENGTH ] { 5091 } + Constant [ <persistent> int RPMTAG_FILESIGNATURES ] { 5090 } + Constant [ <persistent> int RPMTAG_FILESIZES ] { 1028 } + Constant [ <persistent> int RPMTAG_FILESTATES ] { 1029 } + Constant [ <persistent> int RPMTAG_FILETRIGGERCONDS ] { 5086 } + Constant [ <persistent> int RPMTAG_FILETRIGGERFLAGS ] { 5072 } + Constant [ <persistent> int RPMTAG_FILETRIGGERINDEX ] { 5070 } + Constant [ <persistent> int RPMTAG_FILETRIGGERNAME ] { 5069 } + Constant [ <persistent> int RPMTAG_FILETRIGGERPRIORITIES ] { 5084 } + Constant [ <persistent> int RPMTAG_FILETRIGGERSCRIPTFLAGS ] { 5068 } + Constant [ <persistent> int RPMTAG_FILETRIGGERSCRIPTPROG ] { 5067 } + Constant [ <persistent> int RPMTAG_FILETRIGGERSCRIPTS ] { 5066 } + Constant [ <persistent> int RPMTAG_FILETRIGGERTYPE ] { 5087 } + Constant [ <persistent> int RPMTAG_FILETRIGGERVERSION ] { 5071 } + Constant [ <persistent> int RPMTAG_FILEUSERNAME ] { 1039 } + Constant [ <persistent> int RPMTAG_FILEVERIFYFLAGS ] { 1045 } + Constant [ <persistent> int RPMTAG_FSCONTEXTS ] { 1148 } + Constant [ <persistent> int RPMTAG_GIF ] { 1012 } + Constant [ <persistent> int RPMTAG_GROUP ] { 1016 } + Constant [ <persistent> int RPMTAG_HDRID ] { 269 } + Constant [ <persistent> int RPMTAG_HEADERCOLOR ] { 5017 } + Constant [ <persistent> int RPMTAG_HEADERI18NTABLE ] { 100 } + Constant [ <persistent> int RPMTAG_HEADERIMAGE ] { 61 } + Constant [ <persistent> int RPMTAG_HEADERIMMUTABLE ] { 63 } + Constant [ <persistent> int RPMTAG_HEADERREGIONS ] { 64 } + Constant [ <persistent> int RPMTAG_HEADERSIGNATURES ] { 62 } + Constant [ <persistent> int RPMTAG_ICON ] { 1043 } + Constant [ <persistent> int RPMTAG_INSTALLCOLOR ] { 1127 } + Constant [ <persistent> int RPMTAG_INSTALLTID ] { 1128 } + Constant [ <persistent> int RPMTAG_INSTALLTIME ] { 1008 } + Constant [ <persistent> int RPMTAG_INSTFILENAMES ] { 5040 } + Constant [ <persistent> int RPMTAG_INSTPREFIXES ] { 1099 } + Constant [ <persistent> int RPMTAG_LICENSE ] { 1014 } + Constant [ <persistent> int RPMTAG_LONGARCHIVESIZE ] { 271 } + Constant [ <persistent> int RPMTAG_LONGFILESIZES ] { 5008 } + Constant [ <persistent> int RPMTAG_LONGSIGSIZE ] { 270 } + Constant [ <persistent> int RPMTAG_LONGSIZE ] { 5009 } + Constant [ <persistent> int RPMTAG_MODULARITYLABEL ] { 5096 } + Constant [ <persistent> int RPMTAG_N ] { 1000 } + Constant [ <persistent> int RPMTAG_NAME ] { 1000 } + Constant [ <persistent> int RPMTAG_NEVR ] { 5015 } + Constant [ <persistent> int RPMTAG_NEVRA ] { 5016 } + Constant [ <persistent> int RPMTAG_NOPATCH ] { 1052 } + Constant [ <persistent> int RPMTAG_NOSOURCE ] { 1051 } + Constant [ <persistent> int RPMTAG_NVR ] { 5014 } + Constant [ <persistent> int RPMTAG_NVRA ] { 1196 } + Constant [ <persistent> int RPMTAG_O ] { 1090 } + Constant [ <persistent> int RPMTAG_OBSOLETEFLAGS ] { 1114 } + Constant [ <persistent> int RPMTAG_OBSOLETENAME ] { 1090 } + Constant [ <persistent> int RPMTAG_OBSOLETENEVRS ] { 5043 } + Constant [ <persistent> int RPMTAG_OBSOLETES ] { 1090 } + Constant [ <persistent> int RPMTAG_OBSOLETEVERSION ] { 1115 } + Constant [ <persistent> int RPMTAG_OLDENHANCES ] { 1159 } + Constant [ <persistent> int RPMTAG_OLDENHANCESFLAGS ] { 1161 } + Constant [ <persistent> int RPMTAG_OLDENHANCESNAME ] { 1159 } + Constant [ <persistent> int RPMTAG_OLDENHANCESVERSION ] { 1160 } + Constant [ <persistent> int RPMTAG_OLDFILENAMES ] { 1027 } + Constant [ <persistent> int RPMTAG_OLDSUGGESTS ] { 1156 } + Constant [ <persistent> int RPMTAG_OLDSUGGESTSFLAGS ] { 1158 } + Constant [ <persistent> int RPMTAG_OLDSUGGESTSNAME ] { 1156 } + Constant [ <persistent> int RPMTAG_OLDSUGGESTSVERSION ] { 1157 } + Constant [ <persistent> int RPMTAG_OPTFLAGS ] { 1122 } + Constant [ <persistent> int RPMTAG_ORDERFLAGS ] { 5037 } + Constant [ <persistent> int RPMTAG_ORDERNAME ] { 5035 } + Constant [ <persistent> int RPMTAG_ORDERVERSION ] { 5036 } + Constant [ <persistent> int RPMTAG_ORIGBASENAMES ] { 1120 } + Constant [ <persistent> int RPMTAG_ORIGDIRINDEXES ] { 1119 } + Constant [ <persistent> int RPMTAG_ORIGDIRNAMES ] { 1121 } + Constant [ <persistent> int RPMTAG_ORIGFILENAMES ] { 5007 } + Constant [ <persistent> int RPMTAG_OS ] { 1021 } + Constant [ <persistent> int RPMTAG_P ] { 1047 } + Constant [ <persistent> int RPMTAG_PACKAGER ] { 1015 } + Constant [ <persistent> int RPMTAG_PATCH ] { 1019 } + Constant [ <persistent> int RPMTAG_PATCHESFLAGS ] { 1134 } + Constant [ <persistent> int RPMTAG_PATCHESNAME ] { 1133 } + Constant [ <persistent> int RPMTAG_PATCHESVERSION ] { 1135 } + Constant [ <persistent> int RPMTAG_PAYLOADCOMPRESSOR ] { 1125 } + Constant [ <persistent> int RPMTAG_PAYLOADDIGEST ] { 5092 } + Constant [ <persistent> int RPMTAG_PAYLOADDIGESTALGO ] { 5093 } + Constant [ <persistent> int RPMTAG_PAYLOADDIGESTALT ] { 5097 } + Constant [ <persistent> int RPMTAG_PAYLOADFLAGS ] { 1126 } + Constant [ <persistent> int RPMTAG_PAYLOADFORMAT ] { 1124 } + Constant [ <persistent> int RPMTAG_PKGID ] { 261 } + Constant [ <persistent> int RPMTAG_PLATFORM ] { 1132 } + Constant [ <persistent> int RPMTAG_POLICIES ] { 1150 } + Constant [ <persistent> int RPMTAG_POLICYFLAGS ] { 5033 } + Constant [ <persistent> int RPMTAG_POLICYNAMES ] { 5030 } + Constant [ <persistent> int RPMTAG_POLICYTYPES ] { 5031 } + Constant [ <persistent> int RPMTAG_POLICYTYPESINDEXES ] { 5032 } + Constant [ <persistent> int RPMTAG_POSTIN ] { 1024 } + Constant [ <persistent> int RPMTAG_POSTINFLAGS ] { 5021 } + Constant [ <persistent> int RPMTAG_POSTINPROG ] { 1086 } + Constant [ <persistent> int RPMTAG_POSTTRANS ] { 1152 } + Constant [ <persistent> int RPMTAG_POSTTRANSFLAGS ] { 5025 } + Constant [ <persistent> int RPMTAG_POSTTRANSPROG ] { 1154 } + Constant [ <persistent> int RPMTAG_POSTUN ] { 1026 } + Constant [ <persistent> int RPMTAG_POSTUNFLAGS ] { 5023 } + Constant [ <persistent> int RPMTAG_POSTUNPROG ] { 1088 } + Constant [ <persistent> int RPMTAG_POSTUNTRANS ] { 5104 } + Constant [ <persistent> int RPMTAG_POSTUNTRANSFLAGS ] { 5108 } + Constant [ <persistent> int RPMTAG_POSTUNTRANSPROG ] { 5106 } + Constant [ <persistent> int RPMTAG_PREFIXES ] { 1098 } + Constant [ <persistent> int RPMTAG_PREIN ] { 1023 } + Constant [ <persistent> int RPMTAG_PREINFLAGS ] { 5020 } + Constant [ <persistent> int RPMTAG_PREINPROG ] { 1085 } + Constant [ <persistent> int RPMTAG_PRETRANS ] { 1151 } + Constant [ <persistent> int RPMTAG_PRETRANSFLAGS ] { 5024 } + Constant [ <persistent> int RPMTAG_PRETRANSPROG ] { 1153 } + Constant [ <persistent> int RPMTAG_PREUN ] { 1025 } + Constant [ <persistent> int RPMTAG_PREUNFLAGS ] { 5022 } + Constant [ <persistent> int RPMTAG_PREUNPROG ] { 1087 } + Constant [ <persistent> int RPMTAG_PREUNTRANS ] { 5103 } + Constant [ <persistent> int RPMTAG_PREUNTRANSFLAGS ] { 5107 } + Constant [ <persistent> int RPMTAG_PREUNTRANSPROG ] { 5105 } + Constant [ <persistent> int RPMTAG_PROVIDEFLAGS ] { 1112 } + Constant [ <persistent> int RPMTAG_PROVIDENAME ] { 1047 } + Constant [ <persistent> int RPMTAG_PROVIDENEVRS ] { 5042 } + Constant [ <persistent> int RPMTAG_PROVIDES ] { 1047 } + Constant [ <persistent> int RPMTAG_PROVIDEVERSION ] { 1113 } + Constant [ <persistent> int RPMTAG_PUBKEYS ] { 266 } + Constant [ <persistent> int RPMTAG_R ] { 1002 } + Constant [ <persistent> int RPMTAG_RECOMMENDFLAGS ] { 5048 } + Constant [ <persistent> int RPMTAG_RECOMMENDNAME ] { 5046 } + Constant [ <persistent> int RPMTAG_RECOMMENDNEVRS ] { 5058 } + Constant [ <persistent> int RPMTAG_RECOMMENDS ] { 5046 } + Constant [ <persistent> int RPMTAG_RECOMMENDVERSION ] { 5047 } + Constant [ <persistent> int RPMTAG_RECONTEXTS ] { 1149 } + Constant [ <persistent> int RPMTAG_RELEASE ] { 1002 } + Constant [ <persistent> int RPMTAG_REMOVETID ] { 1129 } + Constant [ <persistent> int RPMTAG_REQUIREFLAGS ] { 1048 } + Constant [ <persistent> int RPMTAG_REQUIRENAME ] { 1049 } + Constant [ <persistent> int RPMTAG_REQUIRENEVRS ] { 5041 } + Constant [ <persistent> int RPMTAG_REQUIRES ] { 1049 } + Constant [ <persistent> int RPMTAG_REQUIREVERSION ] { 1050 } + Constant [ <persistent> int RPMTAG_RPMVERSION ] { 1064 } + Constant [ <persistent> int RPMTAG_RSAHEADER ] { 268 } + Constant [ <persistent> int RPMTAG_SHA1HEADER ] { 269 } + Constant [ <persistent> int RPMTAG_SHA256HEADER ] { 273 } + Constant [ <persistent> int RPMTAG_SIGGPG ] { 262 } + Constant [ <persistent> int RPMTAG_SIGMD5 ] { 261 } + Constant [ <persistent> int RPMTAG_SIGPGP ] { 259 } + Constant [ <persistent> int RPMTAG_SIGSIZE ] { 257 } + Constant [ <persistent> int RPMTAG_SIZE ] { 1009 } + Constant [ <persistent> int RPMTAG_SOURCE ] { 1018 } + Constant [ <persistent> int RPMTAG_SOURCEPACKAGE ] { 1106 } + Constant [ <persistent> int RPMTAG_SOURCEPKGID ] { 1146 } + Constant [ <persistent> int RPMTAG_SOURCERPM ] { 1044 } + Constant [ <persistent> int RPMTAG_SPEC ] { 5099 } + Constant [ <persistent> int RPMTAG_SUGGESTFLAGS ] { 5051 } + Constant [ <persistent> int RPMTAG_SUGGESTNAME ] { 5049 } + Constant [ <persistent> int RPMTAG_SUGGESTNEVRS ] { 5059 } + Constant [ <persistent> int RPMTAG_SUGGESTS ] { 5049 } + Constant [ <persistent> int RPMTAG_SUGGESTVERSION ] { 5050 } + Constant [ <persistent> int RPMTAG_SUMMARY ] { 1004 } + Constant [ <persistent> int RPMTAG_SUPPLEMENTFLAGS ] { 5054 } + Constant [ <persistent> int RPMTAG_SUPPLEMENTNAME ] { 5052 } + Constant [ <persistent> int RPMTAG_SUPPLEMENTNEVRS ] { 5060 } + Constant [ <persistent> int RPMTAG_SUPPLEMENTS ] { 5052 } + Constant [ <persistent> int RPMTAG_SUPPLEMENTVERSION ] { 5053 } + Constant [ <persistent> int RPMTAG_SYSUSERS ] { 5109 } + Constant [ <persistent> int RPMTAG_TRANSFILETRIGGERCONDS ] { 5088 } + Constant [ <persistent> int RPMTAG_TRANSFILETRIGGERFLAGS ] { 5082 } + Constant [ <persistent> int RPMTAG_TRANSFILETRIGGERINDEX ] { 5080 } + Constant [ <persistent> int RPMTAG_TRANSFILETRIGGERNAME ] { 5079 } + Constant [ <persistent> int RPMTAG_TRANSFILETRIGGERPRIORITIES ] { 5085 } + Constant [ <persistent> int RPMTAG_TRANSFILETRIGGERSCRIPTFLAGS ] { 5078 } + Constant [ <persistent> int RPMTAG_TRANSFILETRIGGERSCRIPTPROG ] { 5077 } + Constant [ <persistent> int RPMTAG_TRANSFILETRIGGERSCRIPTS ] { 5076 } + Constant [ <persistent> int RPMTAG_TRANSFILETRIGGERTYPE ] { 5089 } + Constant [ <persistent> int RPMTAG_TRANSFILETRIGGERVERSION ] { 5081 } + Constant [ <persistent> int RPMTAG_TRANSLATIONURL ] { 5100 } + Constant [ <persistent> int RPMTAG_TRIGGERCONDS ] { 5005 } + Constant [ <persistent> int RPMTAG_TRIGGERFLAGS ] { 1068 } + Constant [ <persistent> int RPMTAG_TRIGGERINDEX ] { 1069 } + Constant [ <persistent> int RPMTAG_TRIGGERNAME ] { 1066 } + Constant [ <persistent> int RPMTAG_TRIGGERSCRIPTFLAGS ] { 5027 } + Constant [ <persistent> int RPMTAG_TRIGGERSCRIPTPROG ] { 1092 } + Constant [ <persistent> int RPMTAG_TRIGGERSCRIPTS ] { 1065 } + Constant [ <persistent> int RPMTAG_TRIGGERTYPE ] { 5006 } + Constant [ <persistent> int RPMTAG_TRIGGERVERSION ] { 1067 } + Constant [ <persistent> int RPMTAG_UPSTREAMRELEASES ] { 5101 } + Constant [ <persistent> int RPMTAG_URL ] { 1020 } + Constant [ <persistent> int RPMTAG_V ] { 1001 } + Constant [ <persistent> int RPMTAG_VCS ] { 5034 } + Constant [ <persistent> int RPMTAG_VENDOR ] { 1011 } + Constant [ <persistent> int RPMTAG_VERBOSE ] { 5018 } + Constant [ <persistent> int RPMTAG_VERIFYSCRIPT ] { 1079 } + Constant [ <persistent> int RPMTAG_VERIFYSCRIPTFLAGS ] { 5026 } + Constant [ <persistent> int RPMTAG_VERIFYSCRIPTPROG ] { 1091 } + Constant [ <persistent> int RPMTAG_VERITYSIGNATUREALGO ] { 277 } + Constant [ <persistent> int RPMTAG_VERITYSIGNATURES ] { 276 } + Constant [ <persistent> int RPMTAG_VERSION ] { 1001 } + Constant [ <persistent> int RPMTAG_XPM ] { 1013 } } - Functions { @@ -287,37 +300,67 @@ Extension [ <persistent> extension #98 rpminfo version 0.6.0 ] { - Parameters [2] { Parameter #0 [ <required> string $nevr ] - Parameter #1 [ <optional> bool $full ] + Parameter #1 [ <optional> bool $full = false ] } - - Return [ array or NULL ] + - Return [ ?array ] } Function [ <internal:rpminfo> function rpmdbsearch ] { - Parameters [4] { Parameter #0 [ <required> string $pattern ] - Parameter #1 [ <optional> int $rpmtag ] - Parameter #2 [ <optional> int $rpmmire ] - Parameter #3 [ <optional> bool $full ] + Parameter #1 [ <optional> int $rpmtag = RPMTAG_NAME ] + Parameter #2 [ <optional> int $rpmmire = -1 ] + Parameter #3 [ <optional> bool $full = false ] } - - Return [ array or NULL ] + - Return [ ?array ] } Function [ <internal:rpminfo> function rpminfo ] { - Parameters [3] { Parameter #0 [ <required> string $path ] - Parameter #1 [ <optional> bool $full ] - Parameter #2 [ <optional> string or NULL &$error ] + Parameter #1 [ <optional> bool $full = false ] + Parameter #2 [ <optional> ?string &$error = null ] } - - Return [ array or NULL ] + - Return [ ?array ] } Function [ <internal:rpminfo> function rpmvercmp ] { - - Parameters [2] { + - Parameters [3] { Parameter #0 [ <required> string $evr1 ] Parameter #1 [ <required> string $evr2 ] + Parameter #2 [ <optional> ?string $operator = null ] + } + - Return [ int|bool ] + } + Function [ <internal:rpminfo> function rpmgetsymlink ] { + + - Parameters [2] { + Parameter #0 [ <required> string $path ] + Parameter #1 [ <required> string $name ] + } + - Return [ ?string ] + } + Function [ <internal:rpminfo> function rpmexpand ] { + + - Parameters [1] { + Parameter #0 [ <required> string $text ] + } + - Return [ string ] + } + Function [ <internal:rpminfo> function rpmexpandnumeric ] { + + - Parameters [1] { + Parameter #0 [ <required> string $text ] } - Return [ int ] } + Function [ <internal:rpminfo> function rpmdefine ] { + + - Parameters [1] { + Parameter #0 [ <required> string $macro ] + } + - Return [ bool ] + } } } diff --git a/php-pecl-rpminfo.spec b/php-pecl-rpminfo.spec index aeccbe4..e272857 100644 --- a/php-pecl-rpminfo.spec +++ b/php-pecl-rpminfo.spec @@ -1,64 +1,50 @@ # remirepo spec file for php-pecl-rpminfo # -# Copyright (c) 2018-2021 Remi Collet -# License: CC-BY-SA -# http://creativecommons.org/licenses/by-sa/4.0/ +# SPDX-FileCopyrightText: Copyright 2018-2025 Remi Collet +# SPDX-License-Identifier: CECILL-2.1 +# http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt # # Please, preserve the changelog entries # -# we don't want -z defs linker flag -%undefine _strict_symbol_defs_build +%bcond_without tests -%if 0%{?scl:1} -%global sub_prefix %{scl_prefix} -%scl_package php-pecl-rpminfo -%else -%global _root_prefix %{_prefix} -%endif -%global with_zts 0%{!?_without_zts:%{?__ztsphp:1}} -%global pecl_name rpminfo -%global ini_name 40-%{pecl_name}.ini +%{?scl:%scl_package php-pecl-rpminfo} + +%global with_zts 0%{!?_without_zts:%{?__ztsphp:1}} +%global pie_vend remi +%global pie_proj rpminfo +%global pecl_name rpminfo +%global ini_name 40-%{pecl_name}.ini +%global sources %{pecl_name}-%{version} +%global _configure ../%{sources}/configure Summary: RPM information -Name: %{?sub_prefix}php-pecl-%{pecl_name} -Version: 0.6.0 -Release: 3%{?dist}%{!?nophptag:%(%{__php} -r 'echo ".".PHP_MAJOR_VERSION.".".PHP_MINOR_VERSION;')} -License: PHP +Name: %{?scl_prefix}php-pecl-%{pecl_name} +Version: 1.2.0 +Release: 6%{?dist}%{!?nophptag:%(%{__php} -r 'echo ".".PHP_MAJOR_VERSION.".".PHP_MINOR_VERSION;')} +License: PHP-3.01 URL: https://pecl.php.net/package/%{pecl_name} -Source0: https://pecl.php.net/get/%{pecl_name}-%{version}.tgz +Source0: https://pecl.php.net/get/%{sources}.tgz + +Patch0: 0001-relax-test-for-RPM-5.patch +Patch1: 0001-RPMTAG_PKGID-and-RPMTAG_HDRID-removed-in-RPM-6.patch +Patch2: 0003-use-RPMTAG_SIGMD5-instead-of-RPMTAG_PKGID-RPMTAG_SHA.patch BuildRequires: make BuildRequires: %{?dtsprefix}gcc -BuildRequires: pkgconfig(rpm) >= 4.11.3 -BuildRequires: %{?scl_prefix}php-devel >= 7.2 +BuildRequires: pkgconfig(rpm) >= 4.13 +BuildRequires: %{?scl_prefix}php-devel >= 8.0 BuildRequires: %{?scl_prefix}php-pear Requires: %{?scl_prefix}php(zend-abi) = %{php_zend_api} Requires: %{?scl_prefix}php(api) = %{php_core_api} -%{?_sclreq:Requires: %{?scl_prefix}runtime%{?_sclreq}%{?_isa}} - -Provides: %{?scl_prefix}php-%{pecl_name} = %{version} -Provides: %{?scl_prefix}php-%{pecl_name}%{?_isa} = %{version} -Provides: %{?scl_prefix}php-pecl(%{pecl_name}) = %{version} -Provides: %{?scl_prefix}php-pecl(%{pecl_name})%{?_isa} = %{version} -%if "%{?scl_prefix}" != "%{?sub_prefix}" -Provides: %{?scl_prefix}php-pecl-%{pecl_name} = %{version}-%{release} -Provides: %{?scl_prefix}php-pecl-%{pecl_name}%{?_isa} = %{version}-%{release} -%endif -%if "%{?packager}" == "Remi Collet" && 0%{!?scl:1} && 0%{?rhel} -# Other third party repo stuff -%if "%{php_version}" > "7.4" -Obsoletes: php74-pecl-%{pecl_name} <= %{version} -%endif -%if "%{php_version}" > "8.0" -Obsoletes: php80-pecl-%{pecl_name} <= %{version} -%endif -%if "%{php_version}" > "8.1" -Obsoletes: php81-pecl-%{pecl_name} <= %{version} -%endif -%endif +Provides: %{?scl_prefix}php-%{pecl_name} = %{version} +Provides: %{?scl_prefix}php-%{pecl_name}%{?_isa} = %{version} +Provides: %{?scl_prefix}php-pecl(%{pecl_name}) = %{version} +Provides: %{?scl_prefix}php-pecl(%{pecl_name})%{?_isa} = %{version} +Provides: %{?scl_prefix}php-pie(%{pie_vend}/%{pie_proj}) = %{version} %description @@ -75,12 +61,14 @@ Package built for PHP %(%{__php} -r 'echo PHP_MAJOR_VERSION.".".PHP_MINOR_VERSIO # Don't install/register tests sed -e 's/role="test"/role="src"/' \ - %{?_licensedir:-e '/LICENSE/s/role="doc"/role="src"/' } \ + -e '/LICENSE/s/role="doc"/role="src"/' \ -i package.xml -mv %{pecl_name}-%{version} NTS +cd %{sources} +%patch -P0 -p1 +%patch -P1 -p1 +%patch -P2 -p1 -cd NTS # Sanity check, really often broken extver=$(sed -n '/#define PHP_RPMINFO_VERSION/{s/.* "//;s/".*$//;p}' php_rpminfo.h) if test "x${extver}" != "x%{version}"; then @@ -89,9 +77,9 @@ if test "x${extver}" != "x%{version}"; then fi cd .. +mkdir NTS %if %{with_zts} -# Duplicate source tree for NTS / ZTS build -cp -pr NTS ZTS +mkdir ZTS %endif # Create configuration file @@ -104,34 +92,37 @@ EOF %build %{?dtsenable} -cd NTS -%{_bindir}/phpize +cd %{sources} +%{__phpize} +sed -e 's/INSTALL_ROOT/DESTDIR/' -i build/Makefile.global + +cd ../NTS %configure \ --enable-rpminfo \ --with-libdir=%{_lib} \ - --with-php-config=%{_bindir}/php-config -make %{?_smp_mflags} + --with-php-config=%{__phpconfig} + +%make_build %{__php} --no-php-ini \ --define extension=modules/%{pecl_name}.so \ - --re %{pecl_name} >REFLECTION + --re %{pecl_name} >../%{sources}/REFLECTION %if %{with_zts} cd ../ZTS -%{_bindir}/zts-phpize %configure \ --enable-rpminfo \ --with-libdir=%{_lib} \ - --with-php-config=%{_bindir}/zts-php-config -make %{?_smp_mflags} + --with-php-config=%{__ztsphpconfig} + +%make_build %endif %install %{?dtsenable} -make -C NTS \ - install INSTALL_ROOT=%{buildroot} +%make_install -C NTS # install config file install -D -m 644 %{ini_name} %{buildroot}%{php_inidir}/%{ini_name} @@ -140,77 +131,54 @@ install -D -m 644 %{ini_name} %{buildroot}%{php_inidir}/%{ini_name} install -D -m 644 package.xml %{buildroot}%{pecl_xmldir}/%{name}.xml %if %{with_zts} -make -C ZTS \ - install INSTALL_ROOT=%{buildroot} +%make_install -C ZTS install -D -m 644 %{ini_name} %{buildroot}%{php_ztsinidir}/%{ini_name} %endif # Documentation for i in $(grep 'role="doc"' package.xml | sed -e 's/^.*name="//;s/".*$//') REFLECTION -do install -Dpm 644 NTS/$i %{buildroot}%{pecl_docdir}/%{pecl_name}/$i +do install -Dpm 644 %{sources}/$i %{buildroot}%{pecl_docdir}/%{pecl_name}/$i done -%if 0%{?fedora} < 24 && 0%{?rhel} < 8 -# when pear installed alone, after us -%triggerin -- %{?scl_prefix}php-pear -if [ -x %{__pecl} ] ; then - %{pecl_install} %{pecl_xmldir}/%{name}.xml >/dev/null || : -fi - -# posttrans as pear can be installed after us -%posttrans -if [ -x %{__pecl} ] ; then - %{pecl_install} %{pecl_xmldir}/%{name}.xml >/dev/null || : -fi - -%postun -if [ $1 -eq 0 -a -x %{__pecl} ] ; then - %{pecl_uninstall} %{pecl_name} >/dev/null || : -fi -%endif - - %check -%if 0%{?fedora} < 33 && 0%{?rhel} < 9 -# mock install sqlite db, rpm expect db6 format -rm ?TS/tests/007-rpmdbinfo.phpt -rm ?TS/tests/008-rpmdbsearch.phpt -rm ?TS/tests/013-rpmdbsearch-error.phpt +cd %{sources} +%if 0%{?fedora} < 37 && 0%{?rhel} < 10 +# OLD mock install sqlite db, rpm expect db6 format +# NEW mock install in /usr/lib/sysimage/rpm instead of /var/lib/rpm +rm tests/007-rpmdbinfo.phpt +rm tests/008-rpmdbsearch.phpt +rm tests/013-rpmdbsearch-error.phpt %endif -cd NTS # Minimal load test for NTS extension %{__php} --no-php-ini \ --define extension=%{buildroot}/%{php_extdir}/%{pecl_name}.so \ - --modules | grep %{pecl_name} + --modules | grep '^%{pecl_name}$' +%if %{with tests} # Upstream test suite for NTS extension -TEST_PHP_EXECUTABLE=%{__php} \ TEST_PHP_ARGS="-n -d extension=%{buildroot}/%{php_extdir}/%{pecl_name}.so" \ -NO_INTERACTION=1 \ -REPORT_EXIT_STATUS=1 \ -%{__php} -n run-tests.php --show-diff +%{__php} -n run-tests.php -q --show-diff %{?_smp_mflags} +%endif %if %{with_zts} -cd ../ZTS # Minimal load test for ZTS extension %{__ztsphp} --no-php-ini \ --define extension=%{buildroot}/%{php_ztsextdir}/%{pecl_name}.so \ - --modules | grep %{pecl_name} + --modules | grep '^%{pecl_name}$' +%if %{with tests} # Upstream test suite for ZTS extension -TEST_PHP_EXECUTABLE=%{__ztsphp} \ TEST_PHP_ARGS="-n -d extension=%{buildroot}/%{php_ztsextdir}/%{pecl_name}.so" \ -NO_INTERACTION=1 \ -REPORT_EXIT_STATUS=1 \ -%{__ztsphp} -n run-tests.php --show-diff +%{__ztsphp} -n run-tests.php -q --show-diff %{?_smp_mflags} +%endif %endif %files -%{?_licensedir:%license NTS/LICENSE} +%license %{sources}/LICENSE %doc %{pecl_docdir}/%{pecl_name} %{pecl_xmldir}/%{name}.xml @@ -224,6 +192,53 @@ REPORT_EXIT_STATUS=1 \ %changelog +* Wed Jul 30 2025 Remi Collet <remi@remirepo.net> - 1.2.0-6 +- rebuild for 8.5.0alpha3 + +* Fri Jul 18 2025 Remi Collet <remi@remirepo.net> - 1.2.0-5 +- add more upstream patch for RPM 5.99.91 + +* Fri Jul 18 2025 Remi Collet <remi@remirepo.net> - 1.2.0-4 +- add upstream patch for RPM 5.99.91 + +* Thu May 22 2025 Remi Collet <remi@remirepo.net> - 1.2.0-3 +- add upstream patch to relax test for RPM 5.99.90 + +* Thu Dec 19 2024 Remi Collet <remi@remirepo.net> - 1.2.0-1 +- update to 1.2.0 +- re-license spec file to CECILL-2.1 + +* Tue Sep 24 2024 Remi Collet <remi@remirepo.net> - 1.1.1-2 +- rebuild for 8.4.0RC1 + +* Tue Sep 3 2024 Remi Collet <remi@remirepo.net> - 1.1.1-1 +- update to 1.1.1 + +* Fri Nov 10 2023 Remi Collet <remi@remirepo.net> - 1.1.0-1 +- update to 1.1.0 + +* Fri Oct 13 2023 Remi Collet <remi@remirepo.net> - 1.0.1-1 +- update to 1.0.1 + +* Thu Oct 12 2023 Remi Collet <remi@remirepo.net> - 1.0.0-1 +- update to 1.0.0 + +* Tue Sep 26 2023 Remi Collet <remi@remirepo.net> - 0.7.0-1 +- update to 0.7.0 +- drop support for PHP 7 + +* Wed Aug 30 2023 Remi Collet <remi@remirepo.net> - 0.6.0-7 +- rebuild for PHP 8.3.0RC1 + +* Tue Jun 6 2023 Remi Collet <remi@remirepo.net> - 0.6.0-6 +- build out of sources tree + +* Thu Sep 1 2022 Remi Collet <remi@remirepo.net> - 0.6.0-5 +- rebuild for PHP 8.2.0RC1 + +* Thu Feb 10 2022 Remi Collet <remi@remirepo.net> - 0.6.0-4 +- also ignore tests on F36 after database relocation + * Tue Sep 28 2021 Remi Collet <remi@remirepo.net> - 0.6.0-3 - add REFLECTION file to package documentation |