2
1
mirror of https://github.com/qpdf/qpdf.git synced 2024-06-10 06:02:27 +00:00
Commit Graph

2337 Commits

Author SHA1 Message Date
Jay Berkenbilt
c7e877b88b Update documentation for PointerHolder transition 2022-04-09 17:33:29 -04:00
Jay Berkenbilt
ef2b84c6c3 Enable PointerHolder warning and define POINTERHOLDER_IS_SHARED_POINTER 2022-04-09 17:33:29 -04:00
Jay Berkenbilt
128e41648f Remove PointerHolder.hh from other than public header files
Increase to POINTERHOLDER_TRANSITION=4
2022-04-09 17:33:29 -04:00
Jay Berkenbilt
ba0ef7a124 Replace PointerHolder with std::shared_ptr in the rest of the code
Increase to POINTERHOLDER_TRANSITION=3

patrepl s/PointerHolder/std::shared_ptr/g **/*.cc **/*.hh
patrepl s/make_pointer_holder/std::make_shared/g **/*.cc
patrepl s/make_array_pointer_holder/QUtil::make_shared_array/g **/*.cc
patrepl s,qpdf/std::shared_ptr,qpdf/PointerHolder, **/*.cc **/*.hh
git restore include/qpdf/PointerHolder.hh
git restore libtests/pointer_holder.cc
cleanpatch
./format-code
2022-04-09 17:33:29 -04:00
Jay Berkenbilt
a68703b07e Replace PointerHolder with std::shared_ptr in library sources only
(patrepl and cleanpatch are my own utilities)

patrepl s/PointerHolder/std::shared_ptr/g {include,libqpdf}/qpdf/*.hh
patrepl s/PointerHolder/std::shared_ptr/g libqpdf/*.cc
patrepl s/make_pointer_holder/std::make_shared/g libqpdf/*.cc
patrepl s/make_array_pointer_holder/QUtil::make_shared_array/g libqpdf/*.cc
patrepl s,qpdf/std::shared_ptr,qpdf/PointerHolder, **/*.cc **/*.hh
git restore include/qpdf/PointerHolder.hh
cleanpatch
./format-code
2022-04-09 17:33:29 -04:00
Jay Berkenbilt
ae819b5318 Rewrite PointerHolder as derived from std::shared_ptr 2022-04-09 17:33:29 -04:00
Jay Berkenbilt
ec21910066 Bump version to 11.0.0, indicating ABI-breaking changes 2022-04-09 17:33:29 -04:00
Jay Berkenbilt
37f7f57dc5 Don't hard-code soname in build-appimage 2022-04-09 17:33:29 -04:00
Jay Berkenbilt
08fb583449 Remove accidentally committed file 2022-04-09 14:37:00 -04:00
Jay Berkenbilt
05de8a111a Add formatting code to release checklist 2022-04-09 12:39:32 -04:00
Jay Berkenbilt
59834db472 Add documentation for code formatting and contribution guidelines 2022-04-09 12:25:08 -04:00
Jay Berkenbilt
ece6b6feb4 Add format-code script 2022-04-09 11:56:30 -04:00
Jay Berkenbilt
554a870b81 spell-check: quote wildcards 2022-04-09 11:50:01 -04:00
Jay Berkenbilt
31a81f6bab Note about app-image build testing 2022-04-05 14:56:19 -04:00
Jay Berkenbilt
2e41b805bd Update TODO with additional notes 2022-04-05 14:56:19 -04:00
Jay Berkenbilt
77e889495f Update some code manually to get better formatting results
Add comments to force line breaks, parenthesize function arguments
that are contatenated strings, etc. -- these kinds of changes improve
clang-format's results and also cause emacs cc-mode to match
clang-format. After this type of change, most of the time, when
clang-format and emacs disagree, clang-format is better.
2022-04-05 14:56:19 -04:00
Jay Berkenbilt
12f1eb15ca Programmatically apply new formatting to code
Run this:

for i in  **/*.cc **/*.c **/*.h **/*.hh; do
  clang-format < $i >| $i.new && mv $i.new $i
done
2022-04-04 08:10:40 -04:00
Jay Berkenbilt
f20fa61eb4 Add .clang-format and .dir-locals.el files to set coding style
Configure emacs and clang-format 15 to the coding style I am choosing
for qpdf.
2022-04-04 08:10:40 -04:00
Jay Berkenbilt
97fc98901c Protect gnutls headers from clang-format rearranging them 2022-04-04 08:05:39 -04:00
Jay Berkenbilt
33caed4f17 Exclude formatting on embedded native crypto 2022-04-03 17:58:36 -04:00
Jay Berkenbilt
80801e4c56 TODO note 2022-04-03 17:58:34 -04:00
Jay Berkenbilt
c78229b4e6 Fix AppImage build: need LD_LIBRARY_PATH
I'm not sure why this is needed now and wasn't needed before since the
cmake changes have been in main for a while and there don't appear to
be recent changes to the appimage build tools.

This change adds to lib directory to LD_LIBRARY_PATH so the appimage
tools' ldd check will pass. This is an appropriate change since the
directory that is added will be in the standard load path when
installed.
2022-04-02 13:59:01 -04:00
Jay Berkenbilt
f8e97e0ed5 Put spaces around version constraint in pkg-config (fixes #677)
Also add a pkg-config runtime test that would have caught the error.
2022-03-23 10:52:40 -04:00
Jay Berkenbilt
336062930d Fix typo in previous fix 2022-03-19 19:45:44 -04:00
Jay Berkenbilt
6dcb26d21e Fix test for whether atomic library is needed
Some platforms need it for atomic<long long> but not for atomic<int>.
2022-03-19 18:19:44 -04:00
Jay Berkenbilt
198b96471a Notes for next release 2022-03-19 08:57:47 -04:00
Jay Berkenbilt
e4484fd94c Update ChangeLog and release notes 2022-03-18 19:53:18 -04:00
Jay Berkenbilt
820a3f04fd Remove "lt-" workarounds
The executables that libtool built invoked the underlying binary with
an "lt-" prefix. The code contained numerous workarounds for testing,
which can now be removed.
2022-03-18 19:53:18 -04:00
Jay Berkenbilt
e316e90d1f Add installed package smoke tests in pkg-test directory 2022-03-18 19:53:18 -04:00
Jay Berkenbilt
acdf5b2e7a Update process for ABI testing 2022-03-18 19:53:18 -04:00
Jay Berkenbilt
4c0addfe66 Update instructions for testing pikepdf 2022-03-18 19:53:18 -04:00
Jay Berkenbilt
bc17d2a2a2 Update paths in performance_check 2022-03-18 19:53:18 -04:00
Jay Berkenbilt
11e34f29ce TODO: update section for cmake 2022-03-18 19:53:18 -04:00
Jay Berkenbilt
96839decd0 TODO note about linux32 large file tests 2022-03-18 19:53:18 -04:00
Jay Berkenbilt
2001fd5677 Add spell checker (formerly in Makefile) 2022-03-18 19:53:18 -04:00
Jay Berkenbilt
f58d2a60d5 Update build-related documentation and comments 2022-03-18 19:53:18 -04:00
Jay Berkenbilt
70d0d0889b Remove old build files 2022-03-18 19:53:18 -04:00
Jay Berkenbilt
87db567e1f Convert oss-fuzz-build to use cmake 2022-03-18 19:53:18 -04:00
Jay Berkenbilt
5ee21c67c9 Convert build-windows to use cmake 2022-03-18 19:53:18 -04:00
Jay Berkenbilt
585be5a82e Convert test-sanitizers to use cmake 2022-03-18 19:53:18 -04:00
Jay Berkenbilt
ab467e1f01 Convert build-mac to use cmake 2022-03-18 19:53:18 -04:00
Jay Berkenbilt
8703e6253d Convert build-linux32 to use cmake 2022-03-18 19:53:18 -04:00
Jay Berkenbilt
6d7c0badc1 Convert build-linux to cmake 2022-03-18 19:53:18 -04:00
Jay Berkenbilt
702058a1c3 Convert make_dist to use cmake 2022-03-18 19:53:18 -04:00
Jay Berkenbilt
2515498c36 Convert build-doc to cmake 2022-03-18 19:53:18 -04:00
Jay Berkenbilt
1b85faa61a Convert AppImage build to use cmake 2022-03-18 19:53:18 -04:00
Jay Berkenbilt
3a902ad20a CMake wrapper for Windows 2022-03-18 19:53:18 -04:00
Jay Berkenbilt
aacf48a2e0 Update configure commands to cmake in README-maintainer 2022-03-18 19:53:18 -04:00
Jay Berkenbilt
b8aff90997 Add cmake configuration files 2022-03-18 19:53:18 -04:00
Jay Berkenbilt
105862da3e Add ico file for Windows installer 2022-03-18 19:53:18 -04:00