-
Notifications
You must be signed in to change notification settings - Fork 12
WIP: Update bundled qpdf to v12.2.0 #24
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
* qpdf v12.2.0 is most recent release and is supposed to be the last release using C++-17 which should be supported by `gcc-8` as still used by `rhel8`. * `libqpdf` copied over from `qpdf` v12.2.0 sources using `rsync --delete --checksum` and all changes to that directory commited in this commit.
|
Compilation error from Compilation error from |
|
The
The |
|
I think setting |
|
The RHEL-8 issue was a bug on my end, sorry for that. Should be fixed in a few minutes. |
|
The linking error on Windows 4.2 seems to suggest we are missing |
|
Thanks! |
|
This is on CRAN now. Let me know if you have additional suggestions. |
|
Hmm it looks like the build now fails with LTO -> #25 |
This compiled locally on my Linux laptop with
gcc 11.4.0andR CMD checkpassed with R 4.5.1 with zero notes/errors/warnings.When compiling there were a couple
[-Wpedantic]warnings aboutwarning: extra ;There was also a couple
[-Wsign-compare]warnings ofcomparison of integer expressions of different signedness: ‘int’ and ‘std::vector<QPDFPageObjectHelper>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]There are new optional
qpdffeatures that seem to need new headers for OpenSSL, GNUTLS, and/or Zopfli:USE_CRYPTO_GNUTLS,USE_CRYPTO_OPENSSL,ZOPFLIto disable theselibqpdf/QPDFCrypto_openssl.oandlibqpdf/QPDFCrypto_gnutls.oin theLIBQPDFtarget in theMakevarsProcedure to update bundled library:
src/include/andsrc/libqpdfwith contents from thev12.2.0tag ofqpdfsource usingrsync --delete --checksum.src/libqpdf/qpdf/qpdf-config.h.intosrc/libqpdf/qpdf/qpdf-config.hand manually defined and undefined the variables:#undef)USE_CRYPTO_GNUTLS,USE_CRYPTO_OPENSSL,ZOPFLIas mentioned previouslyHAVE_MALLOC_INFOandHAVE_OPEN_MEMSTREAMwhich seemed to work fine on Linux but caused issues with Windows and/or macOSMakevarsso that in theLIBQPDFtarget every.ccfile insrc/libqpdfhas a correspending.oexcept forlibqpdf/QPDFCrypto_openssl.oandlibqpdf/QPDFCrypto_gnutls.ocloses #23