Re: Patches for Fedora 42 & 43
"Andrew L. Moore" <[email protected]> Mon, 13 Oct 2025 19:06:05 -0400
| Newsgroups | gmane.comp.gnu.global.bugs |
|---|---|
| Message-ID | <[email protected]> |
This is a multi-part message in MIME format. --------------FwiSF4pbYwcgOCvx29Lf3BWf Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit We already have one vote in favor of importing Gnulib using its provided bootstrap script. I am not opposed and merely offer the patch use-system-gnulib.diff as a compromise. The patch name is actually misleading, as I explained in reply to Colin Frank. Furthermore, I complicated the patching process by providing the final patch, ax_func_getopt_long.m4, in a different format: It fails to apply using `patch -p1 <patchfile' as appropriate for the other patches. So I've attached a new patch file, use-system-regexp.diff, that replaces both use-system-gnulib.diff and ax_func_getopt_long.m4. This applies correctly using `patch -p1'. Apologies for the complication. One note about Bruno Haible's hash function: In the version that is now deprecated in Gnulib, hash_pjw, the final value is returned modulus the key length, whereas in the original version included in this patch, no modulus is taken (as was the case in the Compilers book). On 10/13/25 01:21, Andrew L. Moore wrote: > The patch use-system-gnulib.diff depends upon an m4 macro which was > omitted. Please find attached a patch for it below. > > On 10/13/25 01:07, Andrew L. Moore wrote: >> Please find attached patches that allow building GNU Global v6.6.14 on >> Fedora GNU/Linux v42 and v43. The first three are straight forward: >> >> 1. When looking for Universal Ctags, use option `--extras'. The code >> does this, but configure was using `--extra'. >> >> 2. When looking for libsqlite3, add /usr/lib64 to the search path. >> >> 3. Address a GNU C v15 compilation error: assignment from incompatible >> pointer type 'int (*)(void)'. The fix is to conditionally add >> prototypes to dberr masks. >> >> Many modern systems come with Gnulib. So either GNU Global could link >> against the system Gnulib, or, alternatively, the Gnulib `bootstrap' >> script could be added to the GNU Global distribution. Gnulib bootstrap >> downloads Gnulib modules as needed. See: >> >> https://cgit.git.savannah.gnu.org/cgit/gnulib.git/tree/top/bootstrap >> >> One complication is that the function hash_string is no longer >> included in Gnulib. >> >> 4. So the final patch is an attempt to address these issues in >> minimalist (lazy) way: If the system provides regcomp and >> getopt_long, then the system-provided functions are used by >> default. To override this, use the configure option >> `--with-included-regex'. An updated version of the hash_string >> function by Bruno Haible is added directly to libutil/strhash.c. >> The function is described in the article: >> >> https://www.haible.de/bruno/hashfunc.html >> >> A more correct approach might be to leverage Gnulib's bootstrap script >> and update strhash.c to use current Gnulib hash functions. If I had >> more time, I would have liked to offer an alternative patch for this. >> The current Gnulib does have lots of overhead, so maybe the included >> patch will be acceptable compromise. --------------FwiSF4pbYwcgOCvx29Lf3BWf Content-Type: text/x-patch; charset=UTF-8; name="use-system-regex.diff" Content-Disposition: attachment; filename="use-system-regex.diff" Content-Transfer-Encoding: base64 ZGlmZiAtLWdpdCBhL01ha2VmaWxlLmFtIGIvTWFrZWZpbGUuYW0KaW5kZXggNDQ0NTJkYy4u NmJiZjc2NCAxMDA2NDQKLS0tIGEvTWFrZWZpbGUuYW0KKysrIGIvTWFrZWZpbGUuYW0KQEAg LTExLDcgKzExLDEwIEBACiAjIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZ IG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLgogIwogQUNMT0NBTF9BTUZM QUdTID0gLUkgbTQKLVNVQkRJUlMgPSBsaWJnbGliYyBsaWJ1dGlsIGxpYnBhcnNlciBsaWJs dGRsIHBsdWdpbi1mYWN0b3J5CitTVUJESVJTID0gbGlidXRpbCBsaWJwYXJzZXIgbGlibHRk bCBwbHVnaW4tZmFjdG9yeQoraWYgTERBRERfR05VTElCCisJU1VCRElSUyArPSBsaWJnbGli YworZW5kaWYKIGlmICFVU0VfREIxODVfQ09NUEFUCiAgICAgICAgIFNVQkRJUlMgKz0gbGli ZGIKIGVuZGlmCmRpZmYgLS1naXQgYS9jb25maWd1cmUuYWMgYi9jb25maWd1cmUuYWMKaW5k ZXggMjVlNTdjZS4uYmY5ZWVkMSAxMDA2NDQKLS0tIGEvY29uZmlndXJlLmFjCisrKyBiL2Nv bmZpZ3VyZS5hYwpAQCAtMjUsNiArMjUsNyBAQCBBQ19JTklUKFtHTlUgR2xvYmFsXSxbNi42 LjE0XSkKIEFDX0RFRklORShDT1BZUklHSFRfWUVBUixbIjE5OTYtMjAyNCJdLFtDb3B5cmln aHQgWWVhcl0pCiBBQ19DT05GSUdfU1JDRElSKGdsb2JhbC9nbG9iYWwuYykKIEFDX0NPTkZJ R19IRUFERVJTKFtjb25maWcuaDpjb25maWctaC5pbl0pCitBQ19DT05GSUdfTElCT0JKX0RJ UihbbGliZ2xpYmNdKQogQUNfQ09ORklHX01BQ1JPX0RJUlMoW200XSkKIEFDX1BSRVJFUSgy LjcxKQogQU1fSU5JVF9BVVRPTUFLRShbMS45LjMgZ251IHN1YmRpci1vYmplY3RzXSkKQEAg LTIyMCw3ICsyMjEsMzkgQEAgQUNfQVJHX1dJVEgoZGIxODUtY29tcGF0LAogXSxbIHdpdGhf ZGIxODVfY29tcGF0PW5vIF0pCiBBTV9DT05ESVRJT05BTChbVVNFX0RCMTg1X0NPTVBBVF0s IFt0ZXN0ICIkd2l0aF9kYjE4NV9jb21wYXQiICE9IG5vXSkKIAotTERBREQ9Jy4uL2xpYnBh cnNlci9saWJnbG9wYXJzZXIuYSAuLi9saWJ1dGlsL2xpYmdsb3V0aWwuYSAnJERCTElCUkFS WScgLi4vbGliZ2xpYmMvbGliZ2xvZ2xpYmMuYScKK0xEQUREPScuLi9saWJwYXJzZXIvbGli Z2xvcGFyc2VyLmEgLi4vbGlidXRpbC9saWJnbG91dGlsLmEgJyREQkxJQlJBUlkKKworQVhf RlVOQ19HRVRPUFRfTE9ORworCitBQ19NU0dfQ0hFQ0tJTkcoW3doZXRoZXIgaW5jbHVkZWQg cmVnZXggaXMgcmVxdWVzdGVkXSkKK0FDX0FSR19XSVRIKFtpbmNsdWRlZC1yZWdleF0sCisg IFtBU19IRUxQX1NUUklORyhbLS13aXRoLWluY2x1ZGVkLXJlZ2V4XSwKKyAgICBbdXNlIGlu Y2x1ZGVkIEdOVSByZWdleCBsaWJyYXJ5XSldLAorICAgIFtdLCBbd2l0aF9pbmNsdWRlZF9y ZWdleD1jaGVja10pCitBQ19NU0dfUkVTVUxUKFskd2l0aF9pbmNsdWRlZF9yZWdleF0pCitp ZiB0ZXN0ICEgLiIkd2l0aF9pbmNsdWRlZF9yZWdleCIgPSAuJ3llcyc7IHRoZW4KKyAgICBB Q19DSEVDS19GVU5DUyhbcmVnY29tcF0sCisgICAgICBbd2l0aF9pbmNsdWRlZF9yZWdleD1u b10sCisgICAgICBbd2l0aF9pbmNsdWRlZF9yZWdleD15ZXMKKyAgICAgICBBQ19NU0dfV0FS TihbU3lzdGVtIHJlZ2V4IG5vdCBmb3VuZCwgZmFsbGluZyBiYWNrIHRvIGluY2x1ZGVkIHZl cnNpb25dKV0pCitmaQorQU1fQ09ORElUSU9OQUwoW0xJQkFERF9SRUdFWF0sCisgICAgICAg IFt0ZXN0IC4iJHdpdGhfaW5jbHVkZWRfcmVnZXgiID0gLid5ZXMnIFwKKyAgICAgICAgICAg LW8gLiIkYWNfY3ZfZnVuY19nZXRvcHRfbG9uZyIgIT0gLid5ZXMnXSkKK0FNX0NPTkRfSUYo W0xJQkFERF9SRUdFWF0sCisgIFtMREFERD0iJExEQUREIC4uL2xpYmdsaWJjL2xpYmdsb2ds aWJjLmEiCisgICBBQ19ERUZJTkUoW0hBVkVfUkVHX1NZTlRBWF9UXSwgWzFdLAorICAgIFtE ZWZpbmUgdG8gMSBpZiByZWdleC5oIGRlZmluZXMgYHJlZ19zeW50YXhfdCcuXSldLAorICBb QUNfQ0hFQ0tfVFlQRVMoW3JlZ19zeW50YXhfdF0sCisgICAgW0FDX0RFRklORShbSEFWRV9S RUdfU1lOVEFYX1RdLCBbMV0sCisgICAgICBbRGVmaW5lIHRvIDEgaWYgcmVnZXguaCBkZWZp bmVzIGByZWdfc3ludGF4X3QnLl0pXSxbXSwKKyAgICAgIFtbI2luY2x1ZGUgPHN5cy90eXBl cy5oPgorI2luY2x1ZGUgPHJlZ2V4Lmg+XV0pXSkKKworQU1fQ09ORElUSU9OQUwoW0xEQURE X0dOVUxJQl0sCisgIFt0ZXN0IC4iJHdpdGhfaW5jbHVkZWRfcmVnZXgiID0gLid5ZXMnIFwK KyAgICAgLW8gLiIkYWNfY3ZfZnVuY19nZXRvcHRfbG9uZyIgIT0gLid5ZXMnXSkKKwogZG5s CiBkbmwgVXNlIHNxbGl0ZTMgQVBJLgogZG5sCmRpZmYgLS1naXQgYS9saWJ1dGlsL3N0cmhh c2guYyBiL2xpYnV0aWwvc3RyaGFzaC5jCmluZGV4IDM5M2EwNjkuLjg3OWJhZTUgMTAwNjQ0 Ci0tLSBhL2xpYnV0aWwvc3RyaGFzaC5jCisrKyBiL2xpYnV0aWwvc3RyaGFzaC5jCkBAIC0y MCw2ICsyMCw3IEBACiAjaWZkZWYgSEFWRV9DT05GSUdfSAogI2luY2x1ZGUgPGNvbmZpZy5o PgogI2VuZGlmCisjaW5jbHVkZSA8bGltaXRzLmg+CiAjaW5jbHVkZSA8c3RkbGliLmg+CiAj aW5jbHVkZSA8c3RkaW8uaD4KICNpbmNsdWRlIDxzdHJpbmcuaD4KQEAgLTcyLDkgKzczLDI3 IEBAIHN0cmhhc2hfY2xvc2UoaGFzaCk7CQkJCS8vIGZyZWUgcmVzb3VyY2VzLgogCiAjZGVm aW5lIG9ic3RhY2tfY2h1bmtfYWxsb2MgY2hlY2tfbWFsbG9jCiAjZGVmaW5lIG9ic3RhY2tf Y2h1bmtfZnJlZSBmcmVlCisjZGVmaW5lIExPTkdCSVRTIChDSEFSX0JJVCAqIHNpemVvZihs b25nKSkKKworLyogU291cmNlOiBodHRwczovL3d3dy5oYWlibGUuZGUvYnJ1bm8vaGFzaGZ1 bmMuaHRtbCAqLworc3RhdGljIHVuc2lnbmVkIGxvbmcKK2NvbXB1dGVfaGFzaHZhbCAoY29u c3Qgdm9pZCAqa2V5LCBzaXplX3Qga2V5bGVuKQoreworICBzaXplX3QgY250OworICB1bnNp Z25lZCBsb25nIGludCBodmFsOworCisgIGNudCA9IDA7CisgIGh2YWwgPSBrZXlsZW47Cisg IHdoaWxlIChjbnQgPCBrZXlsZW4pCisgICAgeworICAgICAgaHZhbCA9IChodmFsIDw8IDkp IHwgKGh2YWwgPj4gKExPTkdCSVRTIC0gOSkpOworICAgICAgaHZhbCArPSAodW5zaWduZWQg bG9uZyBpbnQpICooKChjaGFyICopIGtleSkgKyBjbnQrKyk7CisgICAgfQorICByZXR1cm4g aHZhbCAhPSAwID8gaHZhbCA6IH4oKHVuc2lnbmVkIGxvbmcpIDApOworfQogCiAvKioKLSAq IHN0cmhhc2hfb3Blbjogb3BlbiBzdHJpbmcgaGFzaCB0YWJsZS4KKyAqIHN0cmhhc2hfb3Bl bjogb3BlbiAgaGFzaCB0YWJsZS4KICAqCiAgKglAcGFyYW1baW5dCWJ1Y2tldHMJIHNpemUg b2YgYnVja2V0IHRhYmxlCiAgKglAcmV0dXJuCXNoCVNUUkhBU0ggc3RydWN0dXJlCkBAIC0x MDgsNyArMTI3LDggQEAgc3RyaGFzaF9vcGVuKGludCBidWNrZXRzKQogc3RydWN0IHNoX2Vu dHJ5ICoKIHN0cmhhc2hfYXNzaWduKFNUUkhBU0ggKnNoLCBjb25zdCBjaGFyICpuYW1lLCBp bnQgZm9yY2UpCiB7Ci0Jc3RydWN0IHNoX2hlYWQgKmhlYWQgPSAmc2gtPmh0YWJbX19oYXNo X3N0cmluZyhuYW1lKSAlIHNoLT5idWNrZXRzXTsKKyAgICAgICAgc3RydWN0IHNoX2hlYWQg KmhlYWQgPQorICAgICAgICAgICZzaC0+aHRhYltjb21wdXRlX2hhc2h2YWwobmFtZSwgc3Ry bGVuKG5hbWUpKSAlIHNoLT5idWNrZXRzXTsKIAlzdHJ1Y3Qgc2hfZW50cnkgKmVudHJ5Owog CiAJLyoKLS0tIGEvbTQvYXhfZnVuY19nZXRvcHRfbG9uZy5tNH4JMjAyNS0xMC0xMiAyMjoz MTozOS43MDk2MTk0ODIgLTA0MDAKKysrIGIvbTQvYXhfZnVuY19nZXRvcHRfbG9uZy5tNAky MDI1LTEwLTEyIDIyOjM4OjQ0LjI3MDQyMzkxMSAtMDQwMApAQCAtMCwwICsxLDY2IEBACisj ID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PQorIyAgIGh0dHBzOi8vd3d3LmdudS5vcmcvc29mdHdh cmUvYXV0b2NvbmYtYXJjaGl2ZS9heF9mdW5jX2dldG9wdF9sb25nLmh0bWwKKyMgPT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09CisjCisjIFNZTk9QU0lTCisjCisjICAgQVhfRlVOQ19HRVRPUFRf TE9ORworIworIyBERVNDUklQVElPTgorIworIyAgIENoZWNrIGZvciBnZXRvcHRfbG9uZyBz dXBwb3J0LgorIworIyAgIFRoaXMgYXNzdW1lIHRoYXQgdGhlIHN0YW5kYXJkIGdldG9wdC5o IGZpbGUgKGZyb20gR05VIGxpYmMpIGlzIGF2YWlsYWJsZQorIyAgIGFzIGxpYi9nbnVnZXRv cHQuaC4gSWYgbmVlZGVkLCB0aGlzIGZpbGUgd2lsbCBiZSBsaW5rZWQgYXMgZ2V0b3B0Lmgs IGJ1dAorIyAgIHdlIHdhbnQgdG8gZGVmYXVsdCB0byB0aGUgc3lzdGVtJ3MgZ2V0b3B0Lmgg ZmlsZS4gKFNlZQorIyAgIGh0dHA6Ly9zb3VyY2VzLnJlZGhhdC5jb20vbWwvYXV0b21ha2Uv MjAwMC0wOS9tc2cwMDA0MS5odG1sIGZvciBhbgorIyAgIGV4cGxhbmF0aW9uIGFib3V0IHdo eSB1c2luZyB0aGUgc3lzdGVtJ3MgZ2V0b3B0LmggZmlsZSBpcyBpbXBvcnRhbnQuKQorIwor IyBMSUNFTlNFCisjCisjICAgQ29weXJpZ2h0IChjKSAyMDA4IEFsZXhhbmRyZSBEdXJldC1M dXR6IDxhZGxAZ251Lm9yZz4KKyMKKyMgICBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2Fy ZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeSBpdAorIyAgIHVuZGVy IHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlz aGVkIGJ5IHRoZQorIyAgIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNp b24gMiBvZiB0aGUgTGljZW5zZSwgb3IgKGF0IHlvdXIKKyMgICBvcHRpb24pIGFueSBsYXRl ciB2ZXJzaW9uLgorIworIyAgIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUg aG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLCBidXQKKyMgICBXSVRIT1VUIEFOWSBXQVJS QU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisjICAgTUVSQ0hB TlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiBTZWUgdGhl IEdOVSBHZW5lcmFsCisjICAgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyMK KyMgICBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJh bCBQdWJsaWMgTGljZW5zZSBhbG9uZworIyAgIHdpdGggdGhpcyBwcm9ncmFtLiBJZiBub3Qs IHNlZSA8aHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorIworIyAgIEFzIGEgc3Bl Y2lhbCBleGNlcHRpb24sIHRoZSByZXNwZWN0aXZlIEF1dG9jb25mIE1hY3JvJ3MgY29weXJp Z2h0IG93bmVyCisjICAgZ2l2ZXMgdW5saW1pdGVkIHBlcm1pc3Npb24gdG8gY29weSwgZGlz dHJpYnV0ZSBhbmQgbW9kaWZ5IHRoZSBjb25maWd1cmUKKyMgICBzY3JpcHRzIHRoYXQgYXJl IHRoZSBvdXRwdXQgb2YgQXV0b2NvbmYgd2hlbiBwcm9jZXNzaW5nIHRoZSBNYWNyby4gWW91 CisjICAgbmVlZCBub3QgZm9sbG93IHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVi bGljIExpY2Vuc2Ugd2hlbiB1c2luZworIyAgIG9yIGRpc3RyaWJ1dGluZyBzdWNoIHNjcmlw dHMsIGV2ZW4gdGhvdWdoIHBvcnRpb25zIG9mIHRoZSB0ZXh0IG9mIHRoZQorIyAgIE1hY3Jv IGFwcGVhciBpbiB0aGVtLiBUaGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgKEdQTCkg ZG9lcyBnb3Zlcm4KKyMgICBhbGwgb3RoZXIgdXNlIG9mIHRoZSBtYXRlcmlhbCB0aGF0IGNv bnN0aXR1dGVzIHRoZSBBdXRvY29uZiBNYWNyby4KKyMKKyMgICBUaGlzIHNwZWNpYWwgZXhj ZXB0aW9uIHRvIHRoZSBHUEwgYXBwbGllcyB0byB2ZXJzaW9ucyBvZiB0aGUgQXV0b2NvbmYK KyMgICBNYWNybyByZWxlYXNlZCBieSB0aGUgQXV0b2NvbmYgQXJjaGl2ZS4gV2hlbiB5b3Ug bWFrZSBhbmQgZGlzdHJpYnV0ZSBhCisjICAgbW9kaWZpZWQgdmVyc2lvbiBvZiB0aGUgQXV0 b2NvbmYgTWFjcm8sIHlvdSBtYXkgZXh0ZW5kIHRoaXMgc3BlY2lhbAorIyAgIGV4Y2VwdGlv biB0byB0aGUgR1BMIHRvIGFwcGx5IHRvIHlvdXIgbW9kaWZpZWQgdmVyc2lvbiBhcyB3ZWxs LgorCisjc2VyaWFsIDYKKworQVVfQUxJQVMoW0FETF9GVU5DX0dFVE9QVF9MT05HXSwgW0FY X0ZVTkNfR0VUT1BUX0xPTkddKQorQUNfREVGVU4oW0FYX0ZVTkNfR0VUT1BUX0xPTkddLAor IFtBQ19QUkVSRVEoMi40OSlkbmwKKyAgIyBjbGVhbiBvdXQganVuayBwb3NzaWJseSBsZWZ0 IGJlaGluZCBieSBhIHByZXZpb3VzIGNvbmZpZ3VyYXRpb24KKyAgcm0gLWYgbGliL2dldG9w dC5oCisgICMgQ2hlY2sgZm9yIGdldG9wdF9sb25nIHN1cHBvcnQKKyAgQUNfQ0hFQ0tfSEVB REVSUyhbZ2V0b3B0LmhdKQorICBBQ19DSEVDS19GVU5DUyhbZ2V0b3B0X2xvbmddLCwKKyAg IFsjIEZyZWVCU0QgaGFzIGEgZ251Z2V0b3B0IGxpYnJhcnkgZm9yIHRoaXMKKyAgICBBQ19D SEVDS19MSUIoW2dudWdldG9wdF0sW2dldG9wdF9sb25nXSwKKyAgICAgW0FDX0RFRklORShb SEFWRV9HRVRPUFRfTE9OR10sIFsxXSwgW0RlZmluZSB0byAxIHdoZW4gZ2V0b3B0X2xvbmcg aXMgYXZhaWxhYmxlLl0pXSwKKyAgICAgWyMgdXNlIHRoZSBHTlUgcmVwbGFjZW1lbnQKKyAg ICAgIEFDX0xJQk9CSihnZXRvcHQpCisgICAgICBBQ19MSUJPQkooZ2V0b3B0MSkKKyAgICAg ICNBQ19DT05GSUdfTElOS1MoW2xpYi9nZXRvcHQuaDpsaWIvZ2V0b3B0LmluLmhdKQorICAg ICAgXSldKV0pCg== --------------FwiSF4pbYwcgOCvx29Lf3BWf--