Accepting request 1073466 from home:pmonrealgonzalez:branches:Base:System
- Update to 1.19.0: * New context flag "no-auto-check-trustdb". [T6261] * Optionally, build QGpgME for Qt 6 * Support component "gpgtar-name" in gpgme_get_dirinfo. [T6342] * Extended gpgme_op_encrypt*, gpgme_op_encrypt_sign*, and gpgme_op_sign* to allow creating an encrypted and/or signed archive. [T6342] * Extended gpgme_op_decrypt*, gpgme_op_decrypt_verify*, and gpgme_op_verify* to allow extracting an encrypted and/or signed archive. [T6342] * cpp: Handle error when trying to sign expired keys. [T6155] * cpp: Support encryption flags ThrowKeyIds, EncryptWrap, and WantAddress. [T6359] * cpp, qt: Fix building with C++11. [T6141] * qt: Fix problem with expiration dates after 2038-01-19 on 32-bit systems when adding an existing subkey to another key. [T6137] * cpp: Allow setting the curve to use when generating ECC keys for smart cards. [T4429] * qt: Extend ListAllKeysJob to allow disabling the automatic trust database check when listing all keys. [T6261] * qt: Allow deferred start of import jobs. [T6323] * qt: Support creating and extracting signed and encrypted archives. [T6342] * Rebase gpgme-suse-nobetasuffix.patch * Remove patches upstream: - gpgme-D546-python310.patch - gpgme-1.18.0-T6137-qt_test.patch - python311.patch OBS-URL: https://build.opensuse.org/request/show/1073466 OBS-URL: https://build.opensuse.org/package/show/Base:System/gpgme?expand=0&rev=146
This commit is contained in:
parent
9ef9bc8967
commit
bea38e90ad
@ -1,363 +0,0 @@
|
||||
From c977424a1d39751fc5055131ad3f7819d421dcc8 Mon Sep 17 00:00:00 2001
|
||||
From: =?utf8?q?Ingo=20Kl=C3=B6cker?= <dev@ingo-kloecker.de>
|
||||
Date: Wed, 17 Aug 2022 14:51:19 +0200
|
||||
Subject: [PATCH 1/1] qt: Make sure expiration time is interpreted as unsigned
|
||||
number
|
||||
|
||||
* lang/qt/src/qgpgmeaddexistingsubkeyjob.cpp (add_subkey): Convert
|
||||
expiration time to uint_least32_t.
|
||||
--
|
||||
|
||||
This fixes the corresponding test on 32-bit systems where time_t (the
|
||||
return type of expirationTime()) is a signed 32-bit integer type.
|
||||
|
||||
GnuPG-bug-id: 6137
|
||||
---
|
||||
lang/qt/src/qgpgmeaddexistingsubkeyjob.cpp | 3 ++-
|
||||
1 file changed, 2 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/lang/qt/src/qgpgmeaddexistingsubkeyjob.cpp b/lang/qt/src/qgpgmeaddexistingsubkeyjob.cpp
|
||||
index 32e2c292..b74e7a06 100644
|
||||
--- a/lang/qt/src/qgpgmeaddexistingsubkeyjob.cpp
|
||||
+++ b/lang/qt/src/qgpgmeaddexistingsubkeyjob.cpp
|
||||
@@ -64,7 +64,8 @@ static QGpgMEAddExistingSubkeyJob::result_type add_subkey(Context *ctx, const Ke
|
||||
std::unique_ptr<GpgAddExistingSubkeyEditInteractor> interactor{new GpgAddExistingSubkeyEditInteractor{subkey.keyGrip()}};
|
||||
|
||||
if (!subkey.neverExpires()) {
|
||||
- const auto expiry = QDateTime::fromSecsSinceEpoch(subkey.expirationTime(), Qt::UTC).toString(u"yyyyMMdd'T'hhmmss").toStdString();
|
||||
+ const auto expiry = QDateTime::fromSecsSinceEpoch(uint_least32_t(subkey.expirationTime()),
|
||||
+ Qt::UTC).toString(u"yyyyMMdd'T'hhmmss").toStdString();
|
||||
interactor->setExpiry(expiry);
|
||||
}
|
||||
|
||||
--
|
||||
2.11.0
|
||||
|
||||
From 81d4b7f2d7077297d76af5728949d8f2bdff8cd5 Mon Sep 17 00:00:00 2001
|
||||
From: =?utf8?q?Ingo=20Kl=C3=B6cker?= <dev@ingo-kloecker.de>
|
||||
Date: Wed, 17 Aug 2022 14:56:13 +0200
|
||||
Subject: [PATCH] qt,tests: Log the actual error code if the assertion fails
|
||||
|
||||
* lang/qt/tests/t-addexistingsubkey.cpp (
|
||||
AddExistingSubkeyJobTest::testAddExistingSubkeyAsync,
|
||||
AddExistingSubkeyJobTest::testAddExistingSubkeySync,
|
||||
AddExistingSubkeyJobTest::testAddExistingSubkeyWithExpiration): Use
|
||||
QCOMPARE instead of QVERIFY for asserting equality.
|
||||
--
|
||||
|
||||
GnuPG-bug-id: 6137
|
||||
---
|
||||
lang/qt/tests/t-addexistingsubkey.cpp | 6 +++---
|
||||
1 file changed, 3 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/lang/qt/tests/t-addexistingsubkey.cpp b/lang/qt/tests/t-addexistingsubkey.cpp
|
||||
index 589c90bf..2e654cec 100644
|
||||
--- a/lang/qt/tests/t-addexistingsubkey.cpp
|
||||
+++ b/lang/qt/tests/t-addexistingsubkey.cpp
|
||||
@@ -168,7 +168,7 @@ private Q_SLOTS:
|
||||
QSignalSpy spy (this, SIGNAL(asyncDone()));
|
||||
QVERIFY(spy.wait(QSIGNALSPY_TIMEOUT));
|
||||
|
||||
- QVERIFY(result.code() == GPG_ERR_NO_ERROR);
|
||||
+ QCOMPARE(result.code(), static_cast<int>(GPG_ERR_NO_ERROR));
|
||||
key.update();
|
||||
QCOMPARE(key.numSubkeys(), 3u);
|
||||
}
|
||||
@@ -190,7 +190,7 @@ private Q_SLOTS:
|
||||
|
||||
const auto result = job->exec(key, sourceSubkey);
|
||||
|
||||
- QVERIFY(result.code() == GPG_ERR_NO_ERROR);
|
||||
+ QCOMPARE(result.code(), static_cast<int>(GPG_ERR_NO_ERROR));
|
||||
key.update();
|
||||
QCOMPARE(key.numSubkeys(), 3u);
|
||||
QCOMPARE(key.subkey(2).expirationTime(), 0);
|
||||
@@ -213,7 +213,7 @@ private Q_SLOTS:
|
||||
|
||||
const auto result = job->exec(key, sourceSubkey);
|
||||
|
||||
- QVERIFY(result.code() == GPG_ERR_NO_ERROR);
|
||||
+ QCOMPARE(result.code(), static_cast<int>(GPG_ERR_NO_ERROR));
|
||||
key.update();
|
||||
QCOMPARE(key.numSubkeys(), 3u);
|
||||
|
||||
--
|
||||
2.11.0
|
||||
|
||||
From f2b48de26b8f8c48c293423eda712831544924f6 Mon Sep 17 00:00:00 2001
|
||||
From: =?utf8?q?Ingo=20Kl=C3=B6cker?= <dev@ingo-kloecker.de>
|
||||
Date: Wed, 17 Aug 2022 15:22:29 +0200
|
||||
Subject: [PATCH] qt,tests: Make sure expiration time is interpreted as
|
||||
unsigned number
|
||||
|
||||
* lang/qt/tests/t-addexistingsubkey.cpp,
|
||||
lang/qt/tests/t-changeexpiryjob.cpp: Convert expiration time to
|
||||
uint_least32_t.
|
||||
--
|
||||
|
||||
This doesn't change the outcome of the tests (they also pass without
|
||||
this change because of the expiration dates of the test keys), but it's
|
||||
still good practise to treat the expiration time as an unsigned number
|
||||
if the assertions check that the expiration time is in some range.
|
||||
|
||||
GnuPG-bug-id: 6137
|
||||
---
|
||||
lang/qt/tests/t-addexistingsubkey.cpp | 6 +++---
|
||||
lang/qt/tests/t-changeexpiryjob.cpp | 26 +++++++++++++-------------
|
||||
2 files changed, 16 insertions(+), 16 deletions(-)
|
||||
|
||||
diff --git a/lang/qt/tests/t-addexistingsubkey.cpp b/lang/qt/tests/t-addexistingsubkey.cpp
|
||||
index 2e654cec..87eadf43 100644
|
||||
--- a/lang/qt/tests/t-addexistingsubkey.cpp
|
||||
+++ b/lang/qt/tests/t-addexistingsubkey.cpp
|
||||
@@ -222,9 +222,9 @@ private Q_SLOTS:
|
||||
// several times
|
||||
const auto allowedDeltaTSeconds = 1;
|
||||
const auto expectedExpirationRange = std::make_pair(
|
||||
- sourceSubkey.expirationTime() - allowedDeltaTSeconds,
|
||||
- sourceSubkey.expirationTime() + allowedDeltaTSeconds);
|
||||
- const auto actualExpiration = key.subkey(2).expirationTime();
|
||||
+ uint_least32_t(sourceSubkey.expirationTime()) - allowedDeltaTSeconds,
|
||||
+ uint_least32_t(sourceSubkey.expirationTime()) + allowedDeltaTSeconds);
|
||||
+ const auto actualExpiration = uint_least32_t(key.subkey(2).expirationTime());
|
||||
QVERIFY2(actualExpiration >= expectedExpirationRange.first,
|
||||
("actual: " + std::to_string(actualExpiration) +
|
||||
"; expected: " + std::to_string(expectedExpirationRange.first)).c_str());
|
||||
diff --git a/lang/qt/tests/t-changeexpiryjob.cpp b/lang/qt/tests/t-changeexpiryjob.cpp
|
||||
index 090002f3..3da74d46 100644
|
||||
--- a/lang/qt/tests/t-changeexpiryjob.cpp
|
||||
+++ b/lang/qt/tests/t-changeexpiryjob.cpp
|
||||
@@ -70,7 +70,7 @@ private Q_SLOTS:
|
||||
QVERIFY(!key.isNull());
|
||||
QVERIFY(!key.subkey(0).isNull());
|
||||
QVERIFY(!key.subkey(1).isNull());
|
||||
- const auto subkeyExpiration = key.subkey(1).expirationTime();
|
||||
+ const auto subkeyExpiration = uint_least32_t(key.subkey(1).expirationTime());
|
||||
|
||||
{
|
||||
// Create the job
|
||||
@@ -101,7 +101,7 @@ private Q_SLOTS:
|
||||
newExpirationDate.toSecsSinceEpoch() - 10,
|
||||
QDateTime::currentDateTime().addDays(1).toSecsSinceEpoch());
|
||||
{
|
||||
- const auto actualExpiration = key.subkey(0).expirationTime();
|
||||
+ const auto actualExpiration = uint_least32_t(key.subkey(0).expirationTime());
|
||||
QVERIFY2(actualExpiration >= expectedExpirationRange.first,
|
||||
("actual: " + std::to_string(actualExpiration) +
|
||||
"; expected: " + std::to_string(expectedExpirationRange.first)).c_str());
|
||||
@@ -110,7 +110,7 @@ private Q_SLOTS:
|
||||
"; expected: " + std::to_string(expectedExpirationRange.second)).c_str());
|
||||
}
|
||||
{
|
||||
- const auto actualExpiration = key.subkey(1).expirationTime();
|
||||
+ const auto actualExpiration = uint_least32_t(key.subkey(1).expirationTime());
|
||||
QCOMPARE(actualExpiration, subkeyExpiration); // unchanged
|
||||
}
|
||||
}
|
||||
@@ -133,7 +133,7 @@ private Q_SLOTS:
|
||||
QVERIFY(!key.isNull());
|
||||
QVERIFY(!key.subkey(0).isNull());
|
||||
QVERIFY(!key.subkey(1).isNull());
|
||||
- const auto primaryKeyExpiration = key.subkey(0).expirationTime();
|
||||
+ const auto primaryKeyExpiration = uint_least32_t(key.subkey(0).expirationTime());
|
||||
|
||||
{
|
||||
// Create the job
|
||||
@@ -164,11 +164,11 @@ private Q_SLOTS:
|
||||
newExpirationDate.toSecsSinceEpoch() - 10,
|
||||
QDateTime::currentDateTime().addDays(2).toSecsSinceEpoch());
|
||||
{
|
||||
- const auto actualExpiration = key.subkey(0).expirationTime();
|
||||
+ const auto actualExpiration = uint_least32_t(key.subkey(0).expirationTime());
|
||||
QCOMPARE(actualExpiration, primaryKeyExpiration); // unchanged
|
||||
}
|
||||
{
|
||||
- const auto actualExpiration = key.subkey(1).expirationTime();
|
||||
+ const auto actualExpiration = uint_least32_t(key.subkey(1).expirationTime());
|
||||
QVERIFY2(actualExpiration >= expectedExpirationRange.first,
|
||||
("actual: " + std::to_string(actualExpiration) +
|
||||
"; expected: " + std::to_string(expectedExpirationRange.first)).c_str());
|
||||
@@ -196,7 +196,7 @@ private Q_SLOTS:
|
||||
QVERIFY(!key.isNull());
|
||||
QVERIFY(!key.subkey(0).isNull());
|
||||
QVERIFY(!key.subkey(1).isNull());
|
||||
- const auto subkeyExpiration = key.subkey(1).expirationTime();
|
||||
+ const auto subkeyExpiration = uint_least32_t(key.subkey(1).expirationTime());
|
||||
|
||||
{
|
||||
// Create the job
|
||||
@@ -228,7 +228,7 @@ private Q_SLOTS:
|
||||
newExpirationDate.toSecsSinceEpoch() - 10,
|
||||
QDateTime::currentDateTime().addDays(3).toSecsSinceEpoch());
|
||||
{
|
||||
- const auto actualExpiration = key.subkey(0).expirationTime();
|
||||
+ const auto actualExpiration = uint_least32_t(key.subkey(0).expirationTime());
|
||||
QVERIFY2(actualExpiration >= expectedExpirationRange.first,
|
||||
("actual: " + std::to_string(actualExpiration) +
|
||||
"; expected: " + std::to_string(expectedExpirationRange.first)).c_str());
|
||||
@@ -237,7 +237,7 @@ private Q_SLOTS:
|
||||
"; expected: " + std::to_string(expectedExpirationRange.second)).c_str());
|
||||
}
|
||||
{
|
||||
- const auto actualExpiration = key.subkey(1).expirationTime();
|
||||
+ const auto actualExpiration = uint_least32_t(key.subkey(1).expirationTime());
|
||||
QCOMPARE(actualExpiration, subkeyExpiration); // unchanged
|
||||
}
|
||||
}
|
||||
@@ -291,7 +291,7 @@ private Q_SLOTS:
|
||||
newExpirationDate.toSecsSinceEpoch() - 10,
|
||||
QDateTime::currentDateTime().addDays(4).toSecsSinceEpoch());
|
||||
{
|
||||
- const auto actualExpiration = key.subkey(0).expirationTime();
|
||||
+ const auto actualExpiration = uint_least32_t(key.subkey(0).expirationTime());
|
||||
QVERIFY2(actualExpiration >= expectedExpirationRange.first,
|
||||
("actual: " + std::to_string(actualExpiration) +
|
||||
"; expected: " + std::to_string(expectedExpirationRange.first)).c_str());
|
||||
@@ -300,7 +300,7 @@ private Q_SLOTS:
|
||||
"; expected: " + std::to_string(expectedExpirationRange.second)).c_str());
|
||||
}
|
||||
{
|
||||
- const auto actualExpiration = key.subkey(1).expirationTime();
|
||||
+ const auto actualExpiration = uint_least32_t(key.subkey(1).expirationTime());
|
||||
QVERIFY2(actualExpiration >= expectedExpirationRange.first,
|
||||
("actual: " + std::to_string(actualExpiration) +
|
||||
"; expected: " + std::to_string(expectedExpirationRange.first)).c_str());
|
||||
@@ -359,7 +359,7 @@ private Q_SLOTS:
|
||||
newExpirationDate.toSecsSinceEpoch() - 10,
|
||||
QDateTime::currentDateTime().addDays(5).toSecsSinceEpoch());
|
||||
{
|
||||
- const auto actualExpiration = key.subkey(0).expirationTime();
|
||||
+ const auto actualExpiration = uint_least32_t(key.subkey(0).expirationTime());
|
||||
QVERIFY2(actualExpiration >= expectedExpirationRange.first,
|
||||
("actual: " + std::to_string(actualExpiration) +
|
||||
"; expected: " + std::to_string(expectedExpirationRange.first)).c_str());
|
||||
@@ -368,7 +368,7 @@ private Q_SLOTS:
|
||||
"; expected: " + std::to_string(expectedExpirationRange.second)).c_str());
|
||||
}
|
||||
{
|
||||
- const auto actualExpiration = key.subkey(1).expirationTime();
|
||||
+ const auto actualExpiration = uint_least32_t(key.subkey(1).expirationTime());
|
||||
QVERIFY2(actualExpiration >= expectedExpirationRange.first,
|
||||
("actual: " + std::to_string(actualExpiration) +
|
||||
"; expected: " + std::to_string(expectedExpirationRange.first)).c_str());
|
||||
--
|
||||
2.11.0
|
||||
|
||||
From 2fa5c80aeba4528b3bdf41ec5740e7db5d4b6d2b Mon Sep 17 00:00:00 2001
|
||||
From: =?utf8?q?Ingo=20Kl=C3=B6cker?= <dev@ingo-kloecker.de>
|
||||
Date: Thu, 18 Aug 2022 10:43:19 +0200
|
||||
Subject: [PATCH] cpp: Fix handling of "no key" or "invalid time" situations
|
||||
|
||||
* lang/cpp/src/gpgaddexistingsubkeyeditinteractor.cpp
|
||||
(GpgAddExistingSubkeyEditInteractor::Private::nextState): Fix inverted
|
||||
logic of string comparisons.
|
||||
--
|
||||
|
||||
This fixes the problem that the interactor didn't return the proper
|
||||
error code if gpg didn't accept the key grip or the expiration date.
|
||||
|
||||
GnuPG-bug-id: 6137
|
||||
---
|
||||
lang/cpp/src/gpgaddexistingsubkeyeditinteractor.cpp | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/lang/cpp/src/gpgaddexistingsubkeyeditinteractor.cpp b/lang/cpp/src/gpgaddexistingsubkeyeditinteractor.cpp
|
||||
index 547e613d..8eec7460 100644
|
||||
--- a/lang/cpp/src/gpgaddexistingsubkeyeditinteractor.cpp
|
||||
+++ b/lang/cpp/src/gpgaddexistingsubkeyeditinteractor.cpp
|
||||
@@ -136,7 +136,7 @@ unsigned int GpgAddExistingSubkeyEditInteractor::Private::nextState(unsigned int
|
||||
strcmp(args, "keygen.flags") == 0) {
|
||||
return FLAGS;
|
||||
} else if (status == GPGME_STATUS_GET_LINE &&
|
||||
- strcmp(args, "keygen.keygrip")) {
|
||||
+ strcmp(args, "keygen.keygrip") == 0) {
|
||||
err = NO_KEY_ERROR;
|
||||
return ERROR;
|
||||
}
|
||||
@@ -157,7 +157,7 @@ unsigned int GpgAddExistingSubkeyEditInteractor::Private::nextState(unsigned int
|
||||
strcmp(args, "keyedit.prompt") == 0) {
|
||||
return QUIT;
|
||||
} else if (status == GPGME_STATUS_GET_LINE &&
|
||||
- strcmp(args, "keygen.valid")) {
|
||||
+ strcmp(args, "keygen.valid") == 0) {
|
||||
err = INV_TIME_ERROR;
|
||||
return ERROR;
|
||||
}
|
||||
--
|
||||
2.11.0
|
||||
|
||||
From 2e7a61b898fccc1c20000b79dee83cd980901fa9 Mon Sep 17 00:00:00 2001
|
||||
From: =?utf8?q?Ingo=20Kl=C3=B6cker?= <dev@ingo-kloecker.de>
|
||||
Date: Thu, 18 Aug 2022 10:55:09 +0200
|
||||
Subject: [PATCH] qt,tests: Make test pass on 32-bit systems
|
||||
|
||||
* lang/qt/tests/t-addexistingsubkey.cpp
|
||||
(AddExistingSubkeyJobTest::testAddExistingSubkeyWithExpiration): Handle
|
||||
negative expiration date.
|
||||
--
|
||||
|
||||
On 32-bit systems the expiration date of the test key overflows. This
|
||||
will cause the AddExistingSubkeyJob to fail. We expect it to fail with
|
||||
an "invalid time" error.
|
||||
|
||||
GnuPG-bug-id: 6137
|
||||
---
|
||||
lang/qt/tests/t-addexistingsubkey.cpp | 42 ++++++++++++++++++++---------------
|
||||
1 file changed, 24 insertions(+), 18 deletions(-)
|
||||
|
||||
diff --git a/lang/qt/tests/t-addexistingsubkey.cpp b/lang/qt/tests/t-addexistingsubkey.cpp
|
||||
index 87eadf43..c0eee57b 100644
|
||||
--- a/lang/qt/tests/t-addexistingsubkey.cpp
|
||||
+++ b/lang/qt/tests/t-addexistingsubkey.cpp
|
||||
@@ -213,24 +213,30 @@ private Q_SLOTS:
|
||||
|
||||
const auto result = job->exec(key, sourceSubkey);
|
||||
|
||||
- QCOMPARE(result.code(), static_cast<int>(GPG_ERR_NO_ERROR));
|
||||
- key.update();
|
||||
- QCOMPARE(key.numSubkeys(), 3u);
|
||||
-
|
||||
- // allow 1 second different expiration because gpg calculates with
|
||||
- // expiration as difference to current time and takes current time
|
||||
- // several times
|
||||
- const auto allowedDeltaTSeconds = 1;
|
||||
- const auto expectedExpirationRange = std::make_pair(
|
||||
- uint_least32_t(sourceSubkey.expirationTime()) - allowedDeltaTSeconds,
|
||||
- uint_least32_t(sourceSubkey.expirationTime()) + allowedDeltaTSeconds);
|
||||
- const auto actualExpiration = uint_least32_t(key.subkey(2).expirationTime());
|
||||
- QVERIFY2(actualExpiration >= expectedExpirationRange.first,
|
||||
- ("actual: " + std::to_string(actualExpiration) +
|
||||
- "; expected: " + std::to_string(expectedExpirationRange.first)).c_str());
|
||||
- QVERIFY2(actualExpiration <= expectedExpirationRange.second,
|
||||
- ("actual: " + std::to_string(actualExpiration) +
|
||||
- "; expected: " + std::to_string(expectedExpirationRange.second)).c_str());
|
||||
+ if (sourceSubkey.expirationTime() > 0) {
|
||||
+ QCOMPARE(result.code(), static_cast<int>(GPG_ERR_NO_ERROR));
|
||||
+ key.update();
|
||||
+ QCOMPARE(key.numSubkeys(), 3u);
|
||||
+
|
||||
+ // allow 1 second different expiration because gpg calculates with
|
||||
+ // expiration as difference to current time and takes current time
|
||||
+ // several times
|
||||
+ const auto allowedDeltaTSeconds = 1;
|
||||
+ const auto expectedExpirationRange = std::make_pair(
|
||||
+ uint_least32_t(sourceSubkey.expirationTime()) - allowedDeltaTSeconds,
|
||||
+ uint_least32_t(sourceSubkey.expirationTime()) + allowedDeltaTSeconds);
|
||||
+ const auto actualExpiration = uint_least32_t(key.subkey(2).expirationTime());
|
||||
+ QVERIFY2(actualExpiration >= expectedExpirationRange.first,
|
||||
+ ("actual: " + std::to_string(actualExpiration) +
|
||||
+ "; expected: " + std::to_string(expectedExpirationRange.first)).c_str());
|
||||
+ QVERIFY2(actualExpiration <= expectedExpirationRange.second,
|
||||
+ ("actual: " + std::to_string(actualExpiration) +
|
||||
+ "; expected: " + std::to_string(expectedExpirationRange.second)).c_str());
|
||||
+ } else {
|
||||
+ // on 32-bit systems the expiration date of the test key overflows;
|
||||
+ // in this case we expect an appropriate error code
|
||||
+ QCOMPARE(result.code(), static_cast<int>(GPG_ERR_INV_TIME));
|
||||
+ }
|
||||
}
|
||||
|
||||
private:
|
||||
--
|
||||
2.11.0
|
||||
|
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:361d4eae47ce925dba0ea569af40e7b52c645c4ae2e65e5621bf1b6cdd8b0e9e
|
||||
size 1762323
|
Binary file not shown.
3
gpgme-1.19.0.tar.bz2
Normal file
3
gpgme-1.19.0.tar.bz2
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:cb58494dc415fba9eeb12b826550ad3190dc92e265c5bb2ae1a21c92841cfd38
|
||||
size 1821913
|
BIN
gpgme-1.19.0.tar.bz2.sig
Normal file
BIN
gpgme-1.19.0.tar.bz2.sig
Normal file
Binary file not shown.
@ -1,397 +0,0 @@
|
||||
From 6fc12df6f60edab618c8fd0df3f54f532e923dce Mon Sep 17 00:00:00 2001
|
||||
From: Ben Greiner <code@bnavigator.de>
|
||||
Date: Sat, 18 Dec 2021 13:44:10 +0100
|
||||
Subject: [PATCH gpgme 2/2] build: Find correct version string for Python >=
|
||||
3.10
|
||||
|
||||
* m4/python.m4: use automake 1.16.5 version with gpgme mods
|
||||
|
||||
--
|
||||
Format sys.version_info[:2] instead of cutting it from sys.version[:3]
|
||||
as Python versions >= 3.10 have more than 3 characters for their version
|
||||
string. The newest version from automake 1.16.5 accomodates this.
|
||||
|
||||
Keep the local fourth parameter modification for finding multiple python
|
||||
versions.
|
||||
---
|
||||
configure.ac | 3 +-
|
||||
m4/python.m4 | 285 +++++++++++++++++++++++++++++++++++----------------
|
||||
2 files changed, 197 insertions(+), 91 deletions(-)
|
||||
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 4ce30677..bb124c54 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -425,11 +425,12 @@ if test "$found_py" = "1"; then
|
||||
if test "$found_py" = "1" -o "$found_py3" = "1"; then
|
||||
# Reset everything, so that we can look for another Python.
|
||||
m4_foreach([mym4pythonver],
|
||||
- [[2.7],[3.4],[3.5],[3.6],[3.7],[3.8],[3.9],[all]],
|
||||
+ [[2.7],[3.4],[3.5],[3.6],[3.7],[3.8],[3.9],[3.10],[all]],
|
||||
[unset PYTHON
|
||||
unset PYTHON_VERSION
|
||||
unset PYTHON_CPPFLAGS
|
||||
unset PYTHON_LDFLAGS
|
||||
+ unset PYTHON_LIBS
|
||||
unset PYTHON_SITE_PKG
|
||||
unset PYTHON_EXTRA_LIBS
|
||||
unset PYTHON_EXTRA_LDFLAGS
|
||||
diff --git a/m4/python.m4 b/m4/python.m4
|
||||
index fd0fe771..4b9483c0 100644
|
||||
--- a/m4/python.m4
|
||||
+++ b/m4/python.m4
|
||||
@@ -1,10 +1,10 @@
|
||||
## ------------------------ -*- Autoconf -*-
|
||||
## Python file handling
|
||||
## From Andrew Dalke
|
||||
-## Updated by James Henstridge
|
||||
+## Updated by James Henstridge and other contributors.
|
||||
## Updated by Werner Koch 2018-10-17
|
||||
-## ---------------------------------
|
||||
-# Copyright (C) 1999-2017 Free Software Foundation, Inc.
|
||||
+## ------------------------
|
||||
+# Copyright (C) 1999-2021 Free Software Foundation, Inc.
|
||||
#
|
||||
# This file is free software; the Free Software Foundation
|
||||
# gives unlimited permission to copy and/or distribute it,
|
||||
@@ -36,13 +36,12 @@
|
||||
# numbers and dots only.
|
||||
AC_DEFUN([AM_PATH_PYTHON],
|
||||
[
|
||||
- dnl Find a Python interpreter. Python versions prior to 2.0 are not
|
||||
- dnl supported. (2.0 was released on October 16, 2000). Python 3.0
|
||||
- dnl through to Python 3.9 are also not supported.
|
||||
+ dnl Find a Python interpreter. Python versions prior to 2.7 are not
|
||||
+ dnl supported. Python 3.0 through to Python 3.3 are also not supported.
|
||||
m4_define_default([_AM_PYTHON_INTERPRETER_LIST],
|
||||
[python2 python2.7 dnl
|
||||
python dnl
|
||||
- python3 python3.9 python3.8 python3.7 python3.6 python3.5 python3.4
|
||||
+ python3 python3.10 python3.9 python3.8 python3.7 python3.6 python3.5 python3.4
|
||||
])
|
||||
|
||||
AC_ARG_VAR([PYTHON], [the Python interpreter])
|
||||
@@ -85,34 +84,141 @@ AC_DEFUN([AM_PATH_PYTHON],
|
||||
])
|
||||
|
||||
if test "$PYTHON" = :; then
|
||||
- dnl Run any user-specified action, or abort.
|
||||
+ dnl Run any user-specified action, or abort.
|
||||
m4_default([$3], [AC_MSG_ERROR([no suitable Python interpreter found])])
|
||||
else
|
||||
|
||||
- dnl Query Python for its version number. Getting [:3] seems to be
|
||||
- dnl the best way to do this; it's what "site.py" does in the standard
|
||||
- dnl library.
|
||||
-
|
||||
+ dnl Query Python for its version number. Although site.py simply uses
|
||||
+ dnl sys.version[:3], printing that failed with Python 3.10, since the
|
||||
+ dnl trailing zero was eliminated. So now we output just the major
|
||||
+ dnl and minor version numbers, as numbers. Apparently the tertiary
|
||||
+ dnl version is not of interest.
|
||||
+ dnl
|
||||
AC_CACHE_CHECK([for $am_display_PYTHON version], [am_cv_python_version],
|
||||
- [am_cv_python_version=`$PYTHON -c "import sys; sys.stdout.write(sys.version[[:3]])"`])
|
||||
+ [am_cv_python_version=`$PYTHON -c "import sys; print ('%u.%u' % sys.version_info[[:2]])"`])
|
||||
AC_SUBST([PYTHON_VERSION], [$am_cv_python_version])
|
||||
|
||||
- dnl Use the values of $prefix and $exec_prefix for the corresponding
|
||||
- dnl values of PYTHON_PREFIX and PYTHON_EXEC_PREFIX. These are made
|
||||
- dnl distinct variables so they can be overridden if need be. However,
|
||||
- dnl general consensus is that you shouldn't need this ability.
|
||||
-
|
||||
- AC_SUBST([PYTHON_PREFIX], ['${prefix}'])
|
||||
- AC_SUBST([PYTHON_EXEC_PREFIX], ['${exec_prefix}'])
|
||||
-
|
||||
- dnl At times (like when building shared libraries) you may want
|
||||
+ dnl At times, e.g., when building shared libraries, you may want
|
||||
dnl to know which OS platform Python thinks this is.
|
||||
-
|
||||
+ dnl
|
||||
AC_CACHE_CHECK([for $am_display_PYTHON platform], [am_cv_python_platform],
|
||||
[am_cv_python_platform=`$PYTHON -c "import sys; sys.stdout.write(sys.platform)"`])
|
||||
AC_SUBST([PYTHON_PLATFORM], [$am_cv_python_platform])
|
||||
|
||||
- # Just factor out some code duplication.
|
||||
+ dnl emacs-page
|
||||
+ dnl If --with-python-sys-prefix is given, use the values of sys.prefix
|
||||
+ dnl and sys.exec_prefix for the corresponding values of PYTHON_PREFIX
|
||||
+ dnl and PYTHON_EXEC_PREFIX. Otherwise, use the GNU ${prefix} and
|
||||
+ dnl ${exec_prefix} variables.
|
||||
+ dnl
|
||||
+ dnl The two are made distinct variables so they can be overridden if
|
||||
+ dnl need be, although general consensus is that you shouldn't need
|
||||
+ dnl this separation.
|
||||
+ dnl
|
||||
+ dnl Also allow directly setting the prefixes via configure options,
|
||||
+ dnl overriding any default.
|
||||
+ dnl
|
||||
+ if test "x$prefix" = xNONE; then
|
||||
+ am__usable_prefix=$ac_default_prefix
|
||||
+ else
|
||||
+ am__usable_prefix=$prefix
|
||||
+ fi
|
||||
+
|
||||
+ # Allow user to request using sys.* values from Python,
|
||||
+ # instead of the GNU $prefix values.
|
||||
+ AC_ARG_WITH([python-sys-prefix],
|
||||
+ [AS_HELP_STRING([--with-python-sys-prefix],
|
||||
+ [use Python's sys.prefix and sys.exec_prefix values])],
|
||||
+ [am_use_python_sys=:],
|
||||
+ [am_use_python_sys=false])
|
||||
+
|
||||
+ # Allow user to override whatever the default Python prefix is.
|
||||
+ AC_ARG_WITH([python_prefix],
|
||||
+ [AS_HELP_STRING([--with-python_prefix],
|
||||
+ [override the default PYTHON_PREFIX])],
|
||||
+ [am_python_prefix_subst=$withval
|
||||
+ am_cv_python_prefix=$withval
|
||||
+ AC_MSG_CHECKING([for explicit $am_display_PYTHON prefix])
|
||||
+ AC_MSG_RESULT([$am_cv_python_prefix])],
|
||||
+ [
|
||||
+ if $am_use_python_sys; then
|
||||
+ # using python sys.prefix value, not GNU
|
||||
+ AC_CACHE_CHECK([for python default $am_display_PYTHON prefix],
|
||||
+ [am_cv_python_prefix],
|
||||
+ [am_cv_python_prefix=`$PYTHON -c "import sys; sys.stdout.write(sys.prefix)"`])
|
||||
+
|
||||
+ dnl If sys.prefix is a subdir of $prefix, replace the literal value of
|
||||
+ dnl $prefix with a variable reference so it can be overridden.
|
||||
+ case $am_cv_python_prefix in
|
||||
+ $am__usable_prefix*)
|
||||
+ am__strip_prefix=`echo "$am__usable_prefix" | sed 's|.|.|g'`
|
||||
+ am_python_prefix_subst=`echo "$am_cv_python_prefix" | sed "s,^$am__strip_prefix,\\${prefix},"`
|
||||
+ ;;
|
||||
+ *)
|
||||
+ am_python_prefix_subst=$am_cv_python_prefix
|
||||
+ ;;
|
||||
+ esac
|
||||
+ else # using GNU prefix value, not python sys.prefix
|
||||
+ am_python_prefix_subst='${prefix}'
|
||||
+ am_python_prefix=$am_python_prefix_subst
|
||||
+ AC_MSG_CHECKING([for GNU default $am_display_PYTHON prefix])
|
||||
+ AC_MSG_RESULT([$am_python_prefix])
|
||||
+ fi])
|
||||
+ # Substituting python_prefix_subst value.
|
||||
+ AC_SUBST([PYTHON_PREFIX], [$am_python_prefix_subst])
|
||||
+
|
||||
+ # emacs-page Now do it all over again for Python exec_prefix, but with yet
|
||||
+ # another conditional: fall back to regular prefix if that was specified.
|
||||
+ AC_ARG_WITH([python_exec_prefix],
|
||||
+ [AS_HELP_STRING([--with-python_exec_prefix],
|
||||
+ [override the default PYTHON_EXEC_PREFIX])],
|
||||
+ [am_python_exec_prefix_subst=$withval
|
||||
+ am_cv_python_exec_prefix=$withval
|
||||
+ AC_MSG_CHECKING([for explicit $am_display_PYTHON exec_prefix])
|
||||
+ AC_MSG_RESULT([$am_cv_python_exec_prefix])],
|
||||
+ [
|
||||
+ # no explicit --with-python_exec_prefix, but if
|
||||
+ # --with-python_prefix was given, use its value for python_exec_prefix too.
|
||||
+ AS_IF([test -n "$with_python_prefix"],
|
||||
+ [am_python_exec_prefix_subst=$with_python_prefix
|
||||
+ am_cv_python_exec_prefix=$with_python_prefix
|
||||
+ AC_MSG_CHECKING([for python_prefix-given $am_display_PYTHON exec_prefix])
|
||||
+ AC_MSG_RESULT([$am_cv_python_exec_prefix])],
|
||||
+ [
|
||||
+ # Set am__usable_exec_prefix whether using GNU or Python values,
|
||||
+ # since we use that variable for pyexecdir.
|
||||
+ if test "x$exec_prefix" = xNONE; then
|
||||
+ am__usable_exec_prefix=$am__usable_prefix
|
||||
+ else
|
||||
+ am__usable_exec_prefix=$exec_prefix
|
||||
+ fi
|
||||
+ #
|
||||
+ if $am_use_python_sys; then # using python sys.exec_prefix, not GNU
|
||||
+ AC_CACHE_CHECK([for python default $am_display_PYTHON exec_prefix],
|
||||
+ [am_cv_python_exec_prefix],
|
||||
+ [am_cv_python_exec_prefix=`$PYTHON -c "import sys; sys.stdout.write(sys.exec_prefix)"`])
|
||||
+ dnl If sys.exec_prefix is a subdir of $exec_prefix, replace the
|
||||
+ dnl literal value of $exec_prefix with a variable reference so it can
|
||||
+ dnl be overridden.
|
||||
+ case $am_cv_python_exec_prefix in
|
||||
+ $am__usable_exec_prefix*)
|
||||
+ am__strip_prefix=`echo "$am__usable_exec_prefix" | sed 's|.|.|g'`
|
||||
+ am_python_exec_prefix_subst=`echo "$am_cv_python_exec_prefix" | sed "s,^$am__strip_prefix,\\${exec_prefix},"`
|
||||
+ ;;
|
||||
+ *)
|
||||
+ am_python_exec_prefix_subst=$am_cv_python_exec_prefix
|
||||
+ ;;
|
||||
+ esac
|
||||
+ else # using GNU $exec_prefix, not python sys.exec_prefix
|
||||
+ am_python_exec_prefix_subst='${exec_prefix}'
|
||||
+ am_python_exec_prefix=$am_python_exec_prefix_subst
|
||||
+ AC_MSG_CHECKING([for GNU default $am_display_PYTHON exec_prefix])
|
||||
+ AC_MSG_RESULT([$am_python_exec_prefix])
|
||||
+ fi])])
|
||||
+ # Substituting python_exec_prefix_subst.
|
||||
+ AC_SUBST([PYTHON_EXEC_PREFIX], [$am_python_exec_prefix_subst])
|
||||
+
|
||||
+ # Factor out some code duplication into this shell variable.
|
||||
am_python_setup_sysconfig="\
|
||||
import sys
|
||||
# Prefer sysconfig over distutils.sysconfig, for better compatibility
|
||||
@@ -132,96 +238,95 @@ try:
|
||||
except ImportError:
|
||||
pass"
|
||||
|
||||
- dnl Set up 4 directories:
|
||||
+ dnl emacs-page Set up 4 directories:
|
||||
|
||||
- dnl pythondir -- where to install python scripts. This is the
|
||||
- dnl site-packages directory, not the python standard library
|
||||
- dnl directory like in previous automake betas. This behavior
|
||||
- dnl is more consistent with lispdir.m4 for example.
|
||||
+ dnl 1. pythondir: where to install python scripts. This is the
|
||||
+ dnl site-packages directory, not the python standard library
|
||||
+ dnl directory like in previous automake betas. This behavior
|
||||
+ dnl is more consistent with lispdir.m4 for example.
|
||||
dnl Query distutils for this directory.
|
||||
- AC_CACHE_CHECK([for $am_display_PYTHON script directory],
|
||||
- [am_cv_python_pythondir],
|
||||
- [if test "x$prefix" = xNONE
|
||||
- then
|
||||
- am_py_prefix=$ac_default_prefix
|
||||
- else
|
||||
- am_py_prefix=$prefix
|
||||
- fi
|
||||
- am_cv_python_pythondir=`$PYTHON -c "
|
||||
+ dnl
|
||||
+ AC_CACHE_CHECK([for $am_display_PYTHON script directory (pythondir)],
|
||||
+ [am_cv_python_pythondir],
|
||||
+ [if test "x$am_cv_python_prefix" = x; then
|
||||
+ am_py_prefix=$am__usable_prefix
|
||||
+ else
|
||||
+ am_py_prefix=$am_cv_python_prefix
|
||||
+ fi
|
||||
+ am_cv_python_pythondir=`$PYTHON -c "
|
||||
$am_python_setup_sysconfig
|
||||
if can_use_sysconfig:
|
||||
- sitedir = sysconfig.get_path('purelib', vars={'base':'$am_py_prefix'})
|
||||
+ sitedir = sysconfig.get_path('purelib', vars={'base':'$am_py_prefix'})
|
||||
else:
|
||||
- from distutils import sysconfig
|
||||
- sitedir = sysconfig.get_python_lib(0, 0, prefix='$am_py_prefix')
|
||||
+ from distutils import sysconfig
|
||||
+ sitedir = sysconfig.get_python_lib(0, 0, prefix='$am_py_prefix')
|
||||
sys.stdout.write(sitedir)"`
|
||||
- case $am_cv_python_pythondir in
|
||||
- $am_py_prefix*)
|
||||
- am__strip_prefix=`echo "$am_py_prefix" | sed 's|.|.|g'`
|
||||
- am_cv_python_pythondir=`echo "$am_cv_python_pythondir" | sed "s,^$am__strip_prefix,$PYTHON_PREFIX,"`
|
||||
- ;;
|
||||
- *)
|
||||
- case $am_py_prefix in
|
||||
- /usr|/System*) ;;
|
||||
- *)
|
||||
- am_cv_python_pythondir=$PYTHON_PREFIX/lib/python$PYTHON_VERSION/site-packages
|
||||
- ;;
|
||||
- esac
|
||||
- ;;
|
||||
+ #
|
||||
+ case $am_cv_python_pythondir in
|
||||
+ $am_py_prefix*)
|
||||
+ am__strip_prefix=`echo "$am_py_prefix" | sed 's|.|.|g'`
|
||||
+ am_cv_python_pythondir=`echo "$am_cv_python_pythondir" | sed "s,^$am__strip_prefix,\\${PYTHON_PREFIX},"`
|
||||
+ ;;
|
||||
+ *)
|
||||
+ case $am_py_prefix in
|
||||
+ /usr|/System*) ;;
|
||||
+ *) am_cv_python_pythondir="\${PYTHON_PREFIX}/lib/python$PYTHON_VERSION/site-packages"
|
||||
+ ;;
|
||||
esac
|
||||
- ])
|
||||
+ ;;
|
||||
+ esac
|
||||
+ ])
|
||||
AC_SUBST([pythondir], [$am_cv_python_pythondir])
|
||||
|
||||
- dnl pkgpythondir -- $PACKAGE directory under pythondir. Was
|
||||
- dnl PYTHON_SITE_PACKAGE in previous betas, but this naming is
|
||||
- dnl more consistent with the rest of automake.
|
||||
-
|
||||
+ dnl 2. pkgpythondir: $PACKAGE directory under pythondir. Was
|
||||
+ dnl PYTHON_SITE_PACKAGE in previous betas, but this naming is
|
||||
+ dnl more consistent with the rest of automake.
|
||||
+ dnl
|
||||
AC_SUBST([pkgpythondir], [\${pythondir}/$PACKAGE])
|
||||
|
||||
- dnl pyexecdir -- directory for installing python extension modules
|
||||
- dnl (shared libraries)
|
||||
+ dnl 3. pyexecdir: directory for installing python extension modules
|
||||
+ dnl (shared libraries).
|
||||
dnl Query distutils for this directory.
|
||||
- AC_CACHE_CHECK([for $am_display_PYTHON extension module directory],
|
||||
- [am_cv_python_pyexecdir],
|
||||
- [if test "x$exec_prefix" = xNONE
|
||||
- then
|
||||
- am_py_exec_prefix=$am_py_prefix
|
||||
- else
|
||||
- am_py_exec_prefix=$exec_prefix
|
||||
- fi
|
||||
- am_cv_python_pyexecdir=`$PYTHON -c "
|
||||
+ dnl
|
||||
+ AC_CACHE_CHECK([for $am_display_PYTHON extension module directory (pyexecdir)],
|
||||
+ [am_cv_python_pyexecdir],
|
||||
+ [if test "x$am_cv_python_exec_prefix" = x; then
|
||||
+ am_py_exec_prefix=$am__usable_exec_prefix
|
||||
+ else
|
||||
+ am_py_exec_prefix=$am_cv_python_exec_prefix
|
||||
+ fi
|
||||
+ am_cv_python_pyexecdir=`$PYTHON -c "
|
||||
$am_python_setup_sysconfig
|
||||
if can_use_sysconfig:
|
||||
- sitedir = sysconfig.get_path('platlib', vars={'platbase':'$am_py_prefix'})
|
||||
+ sitedir = sysconfig.get_path('platlib', vars={'platbase':'$am_py_exec_prefix'})
|
||||
else:
|
||||
- from distutils import sysconfig
|
||||
- sitedir = sysconfig.get_python_lib(1, 0, prefix='$am_py_prefix')
|
||||
+ from distutils import sysconfig
|
||||
+ sitedir = sysconfig.get_python_lib(1, 0, prefix='$am_py_exec_prefix')
|
||||
sys.stdout.write(sitedir)"`
|
||||
- case $am_cv_python_pyexecdir in
|
||||
- $am_py_exec_prefix*)
|
||||
- am__strip_prefix=`echo "$am_py_exec_prefix" | sed 's|.|.|g'`
|
||||
- am_cv_python_pyexecdir=`echo "$am_cv_python_pyexecdir" | sed "s,^$am__strip_prefix,$PYTHON_EXEC_PREFIX,"`
|
||||
- ;;
|
||||
- *)
|
||||
- case $am_py_exec_prefix in
|
||||
- /usr|/System*) ;;
|
||||
- *)
|
||||
- am_cv_python_pyexecdir=$PYTHON_EXEC_PREFIX/lib/python$PYTHON_VERSION/site-packages
|
||||
- ;;
|
||||
- esac
|
||||
- ;;
|
||||
+ #
|
||||
+ case $am_cv_python_pyexecdir in
|
||||
+ $am_py_exec_prefix*)
|
||||
+ am__strip_prefix=`echo "$am_py_exec_prefix" | sed 's|.|.|g'`
|
||||
+ am_cv_python_pyexecdir=`echo "$am_cv_python_pyexecdir" | sed "s,^$am__strip_prefix,\\${PYTHON_EXEC_PREFIX},"`
|
||||
+ ;;
|
||||
+ *)
|
||||
+ case $am_py_exec_prefix in
|
||||
+ /usr|/System*) ;;
|
||||
+ *) am_cv_python_pyexecdir="\${PYTHON_EXEC_PREFIX}/lib/python$PYTHON_VERSION/site-packages"
|
||||
+ ;;
|
||||
esac
|
||||
- ])
|
||||
+ ;;
|
||||
+ esac
|
||||
+ ])
|
||||
AC_SUBST([pyexecdir], [$am_cv_python_pyexecdir])
|
||||
|
||||
- dnl pkgpyexecdir -- $(pyexecdir)/$(PACKAGE)
|
||||
-
|
||||
+ dnl 4. pkgpyexecdir: $(pyexecdir)/$(PACKAGE)
|
||||
+ dnl
|
||||
AC_SUBST([pkgpyexecdir], [\${pyexecdir}/$PACKAGE])
|
||||
|
||||
dnl Run any user-specified action.
|
||||
$2
|
||||
fi
|
||||
-
|
||||
])
|
||||
|
||||
|
||||
--
|
||||
2.34.1
|
||||
|
@ -1,8 +1,8 @@
|
||||
Index: gpgme-1.18.0/autogen.sh
|
||||
Index: gpgme-1.19.0/autogen.sh
|
||||
===================================================================
|
||||
--- gpgme-1.18.0.orig/autogen.sh
|
||||
+++ gpgme-1.18.0/autogen.sh
|
||||
@@ -265,8 +265,7 @@ if [ "$myhost" = "find-version" ]; then
|
||||
--- gpgme-1.19.0.orig/autogen.sh
|
||||
+++ gpgme-1.19.0/autogen.sh
|
||||
@@ -268,8 +268,7 @@ if [ "$myhost" = "find-version" ]; then
|
||||
rvd=$((0x$(echo ${rev} | dd bs=1 count=4 2>/dev/null)))
|
||||
else
|
||||
ingit=no
|
||||
|
@ -1,3 +1,35 @@
|
||||
-------------------------------------------------------------------
|
||||
Mon Mar 20 15:46:55 UTC 2023 - Pedro Monreal <pmonreal@suse.com>
|
||||
|
||||
- Update to 1.19.0:
|
||||
* New context flag "no-auto-check-trustdb". [T6261]
|
||||
* Optionally, build QGpgME for Qt 6
|
||||
* Support component "gpgtar-name" in gpgme_get_dirinfo. [T6342]
|
||||
* Extended gpgme_op_encrypt*, gpgme_op_encrypt_sign*, and
|
||||
gpgme_op_sign* to allow creating an encrypted and/or signed
|
||||
archive. [T6342]
|
||||
* Extended gpgme_op_decrypt*, gpgme_op_decrypt_verify*,
|
||||
and gpgme_op_verify* to allow extracting an encrypted and/or
|
||||
signed archive. [T6342]
|
||||
* cpp: Handle error when trying to sign expired keys. [T6155]
|
||||
* cpp: Support encryption flags ThrowKeyIds, EncryptWrap, and
|
||||
WantAddress. [T6359]
|
||||
* cpp, qt: Fix building with C++11. [T6141]
|
||||
* qt: Fix problem with expiration dates after 2038-01-19 on 32-bit
|
||||
systems when adding an existing subkey to another key. [T6137]
|
||||
* cpp: Allow setting the curve to use when generating ECC keys
|
||||
for smart cards. [T4429]
|
||||
* qt: Extend ListAllKeysJob to allow disabling the automatic
|
||||
trust database check when listing all keys. [T6261]
|
||||
* qt: Allow deferred start of import jobs. [T6323]
|
||||
* qt: Support creating and extracting signed and encrypted
|
||||
archives. [T6342]
|
||||
* Rebase gpgme-suse-nobetasuffix.patch
|
||||
* Remove patches upstream:
|
||||
- gpgme-D546-python310.patch
|
||||
- gpgme-1.18.0-T6137-qt_test.patch
|
||||
- python311.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Mar 10 12:18:29 UTC 2023 - Dirk Müller <dmueller@suse.com>
|
||||
|
||||
|
14
gpgme.spec
14
gpgme.spec
@ -27,7 +27,7 @@
|
||||
%bcond_without qt
|
||||
%endif
|
||||
Name: gpgme%{psuffix}
|
||||
Version: 1.18.0
|
||||
Version: 1.19.0
|
||||
Release: 0
|
||||
Summary: Programmatic library interface to GnuPG
|
||||
License: GPL-3.0-or-later AND LGPL-2.1-or-later
|
||||
@ -41,15 +41,9 @@ Source3: https://gnupg.org/signature_key.asc#/gpgme.keyring
|
||||
# used to have a fixed timestamp
|
||||
Source99: gpgme.changes
|
||||
# PATCH-FIX-UPSTREAM support python 3.10 -- https://dev.gnupg.org/D545
|
||||
Patch3: gpgme-D545-python310.patch
|
||||
# PATCH-FIX-UPSTREAM support python 3.10 -- https://dev.gnupg.org/D546
|
||||
Patch4: gpgme-D546-python310.patch
|
||||
# PATCH-FIX-UPSTREAM fix qt tests -- https://dev.gnupg.org/T6137
|
||||
Patch5: gpgme-1.18.0-T6137-qt_test.patch
|
||||
Patch1: gpgme-D545-python310.patch
|
||||
# PATCH-FIX-OPENSUSE gpgme-suse-nobetasuffix.patch code@bnavigator.de -- remove "-unknown" betasuffix boo#1205197
|
||||
Patch6: gpgme-suse-nobetasuffix.patch
|
||||
# Enable python 3.11 as well
|
||||
Patch7: python311.patch
|
||||
Patch2: gpgme-suse-nobetasuffix.patch
|
||||
BuildRequires: autoconf
|
||||
BuildRequires: automake
|
||||
BuildRequires: gcc-c++
|
||||
@ -240,7 +234,7 @@ rm -r %{buildroot}%{_libdir}/pkgconfig/gpgme*
|
||||
|
||||
%check
|
||||
%if ! 0%{?qemu_user_space_build}
|
||||
%make_build check
|
||||
GPGME_DEBUG=2:mygpgme.log %make_build check skip=%{?qt_skip:%{qt_skip}} || cat $(find -name mygpgme.log -type f)
|
||||
%endif
|
||||
|
||||
%if %{with qt}
|
||||
|
@ -1,26 +0,0 @@
|
||||
Index: gpgme-1.18.0/configure.ac
|
||||
===================================================================
|
||||
--- gpgme-1.18.0.orig/configure.ac
|
||||
+++ gpgme-1.18.0/configure.ac
|
||||
@@ -443,7 +443,7 @@ if test "$found_py" = "1"; then
|
||||
if test "$found_py" = "1" -o "$found_py3" = "1"; then
|
||||
# Reset everything, so that we can look for another Python.
|
||||
m4_foreach([mym4pythonver],
|
||||
- [[2.7],[3.4],[3.5],[3.6],[3.7],[3.8],[3.9],[3.10],[all]],
|
||||
+ [[2.7],[3.4],[3.5],[3.6],[3.7],[3.8],[3.9],[3.10],[3.11],[all]],
|
||||
[unset PYTHON
|
||||
unset PYTHON_VERSION
|
||||
unset PYTHON_CPPFLAGS
|
||||
Index: gpgme-1.18.0/m4/python.m4
|
||||
===================================================================
|
||||
--- gpgme-1.18.0.orig/m4/python.m4
|
||||
+++ gpgme-1.18.0/m4/python.m4
|
||||
@@ -41,7 +41,7 @@ AC_DEFUN([AM_PATH_PYTHON],
|
||||
m4_define_default([_AM_PYTHON_INTERPRETER_LIST],
|
||||
[python2 python2.7 dnl
|
||||
python dnl
|
||||
- python3 python3.10 python3.9 python3.8 python3.7 python3.6 python3.5 python3.4
|
||||
+ python3 python3.11 python3.10 python3.9 python3.8 python3.7 python3.6 python3.5 python3.4
|
||||
])
|
||||
|
||||
AC_ARG_VAR([PYTHON], [the Python interpreter])
|
Loading…
Reference in New Issue
Block a user