As per https://github.com/rpm-software-management/rpm/discussions/2983, here goes.
More details in commits, but to summarize: add necessary casts to most of the codebase to make it buildable with a c++ compiler, and then switch over to c++. Exempt from this conversion are - Python bindings: there are no big benefits from converting it right now, and it'll serve as a C API canary as well - plugins: some of these may want to move to their real upstream repository now that the plugin API is public, we don't want to for language changes for them just now - the low-level ndb engine is left up to maintainer (@mlschroe ) discretion, there's no *need* to convert it You can view, comment on, or merge this pull request online at: https://github.com/rpm-software-management/rpm/pull/3028 -- Commit Summary -- * Add a top-level option to compile with C++, doesn't do anything yet * Add casts that C++ requires but C doesn't across librpmio * Add casts that C++ requires but C doesn't across librpm * Add casts that C++ requires but C doesn't across librpmbuild * Add casts that C++ requires but C doesn't across librpmsign * Add casts that C++ requires but C doesn't across cli tools * Switch to C++ for the majority of codebase -- File Changes -- M CMakeLists.txt (16) M build/CMakeLists.txt (14) M build/build.c (2) M build/files.c (30) M build/misc.c (4) M build/pack.c (14) M build/parsePreamble.c (4) M build/parsePrep.c (4) M build/parseReqs.c (8) M build/parseScript.c (2) M build/parseSpec.c (12) M build/policies.c (2) M build/reqprov.c (2) M build/rpmfc.c (34) M build/spec.c (12) M build/speclua.c (6) M lib/CMakeLists.txt (18) M lib/backend/bdb_ro.c (26) M lib/backend/dbi.c (2) M lib/backend/dbiset.c (5) M lib/backend/ndb/glue.c (66) M lib/backend/sqlite.c (43) M lib/cpio.c (2) M lib/depends.c (2) M lib/formats.c (10) M lib/fprint.c (11) M lib/fsm.c (6) M lib/header.c (66) M lib/headerfmt.c (2) M lib/headerutil.c (14) M lib/manifest.c (2) M lib/order.c (17) M lib/package.c (2) M lib/poptALL.c (2) M lib/poptI.c (2) M lib/poptQV.c (6) M lib/psm.c (24) M lib/relocation.c (18) M lib/rpmal.c (10) M lib/rpmchecksig.c (2) M lib/rpmdb.c (56) M lib/rpmdb_internal.h (4) M lib/rpmds.c (46) M lib/rpmfi.c (40) M lib/rpmfs.c (8) M lib/rpmgi.c (2) M lib/rpminstall.c (2) M lib/rpmplugins.c (6) M lib/rpmprob.c (2) M lib/rpmps.c (4) M lib/rpmrc.c (12) M lib/rpmscript.c (12) M lib/rpmtd.c (10) M lib/rpmte.c (9) M lib/rpmtriggers.c (23) M lib/rpmts.c (16) M lib/rpmug.c (2) M lib/rpmvs.c (17) M lib/signature.c (4) M lib/tagexts.c (36) M lib/tagname.c (2) M lib/transaction.c (16) M lib/verify.c (2) M misc/rpmhash.C (8) M misc/system.h (10) M rpmio/CMakeLists.txt (12) M rpmio/argv.c (12) M rpmio/base64.c (8) M rpmio/digest.c (2) M rpmio/digest_libgcrypt.c (4) M rpmio/digest_openssl.c (8) M rpmio/expression.c (6) M rpmio/lposix.c (16) M rpmio/macro.c (24) M rpmio/rpmfileutil.c (4) M rpmio/rpmhook.c (2) M rpmio/rpmio.c (16) M rpmio/rpmkeyring.c (12) M rpmio/rpmlog.c (4) M rpmio/rpmlua.c (20) M rpmio/rpmstring.c (4) M rpmio/rpmstrpool.c (18) M rpmio/rpmver.c (4) M sign/CMakeLists.txt (7) M sign/rpmgensig.c (10) M sign/rpmsignverity.c (2) M tests/Dockerfile.fedora (1) M tools/CMakeLists.txt (9) M tools/elfdeps.c (2) M tools/rpm.c (2) M tools/rpm2archive.c (2) M tools/rpmbuild.c (2) M tools/rpmdump.c (2) M tools/rpmsign.c (2) M tools/rpmsort.c (4) -- Patch Links -- https://github.com/rpm-software-management/rpm/pull/3028.patch https://github.com/rpm-software-management/rpm/pull/3028.diff -- Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/pull/3028 You are receiving this because you are subscribed to this thread. Message ID: <rpm-software-management/rpm/pull/3...@github.com>
_______________________________________________ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint