Commit f84b99157916707e77d8e7632de3b1badcfd488a

Authored by Jay Berkenbilt
1 parent b8668c65

Enhance maintainer docs with generate_auto_job (fixes #1574)

Thanks to qooxzuub for the suggested update.
Showing 1 changed file with 11 additions and 7 deletions
README-maintainer.md
@@ -443,6 +443,9 @@ Quick reminder: @@ -443,6 +443,9 @@ Quick reminder:
443 * Add an entry to the bottom half of job.yml for the job JSON field 443 * Add an entry to the bottom half of job.yml for the job JSON field
444 * Add documentation for the new option to cli.rst 444 * Add documentation for the new option to cli.rst
445 * Implement the QPDFJob::Config method in QPDFJob_config.cc 445 * Implement the QPDFJob::Config method in QPDFJob_config.cc
  446 +* Pass the build option `-DGENERATE_AUTO_JOB=1` to `cmake`
  447 + (see [here](https://qpdf.readthedocs.io/en/stable/installation.html#options-for-working-on-qpdf))
  448 + or run `generate_auto_job` manually.
446 * Adding new options tables is harder -- see below 449 * Adding new options tables is harder -- see below
447 450
448 QPDFJob is documented in three places: 451 QPDFJob is documented in three places:
@@ -458,13 +461,14 @@ QPDFJob is documented in three places: @@ -458,13 +461,14 @@ QPDFJob is documented in three places:
458 461
459 Command-line arguments are closely coupled with QPDFJob. To add a new 462 Command-line arguments are closely coupled with QPDFJob. To add a new
460 command-line argument, add the option to the appropriate table in 463 command-line argument, add the option to the appropriate table in
461 -job.yml. This will automatically declare a method in the private  
462 -ArgParser class in QPDFJob_argv.cc which you have to implement. The  
463 -implementation should make calls to methods in QPDFJob via its Config  
464 -classes. Then, add the same option to either the no-json section of  
465 -job.yml if it is to be excluded from the job json structure, or add it  
466 -under the json structure to the place where it should appear in the  
467 -json structure. 464 +job.yml. After `generate_auto_job` is run (either manually or as part
  465 +of the build process, when `GENERATE_AUTO_JOB` is set), this will
  466 +automatically declare a method in the private ArgParser class in
  467 +QPDFJob_argv.cc which you have to implement. The implementation should
  468 +make calls to methods in QPDFJob via its Config classes. Then, add the
  469 +same option to either the no-json section of job.yml if it is to be
  470 +excluded from the job json structure, or add it under the json
  471 +structure to the place where it should appear in the json structure.
468 472
469 In most cases, adding a new option will automatically declare and call 473 In most cases, adding a new option will automatically declare and call
470 the appropriate Config method, which you then have to implement. If 474 the appropriate Config method, which you then have to implement. If