| MODIFYING OPENSSL SOURCE |
| ======================== |
| |
| This document describes the way to add custom modifications to OpenSSL sources. |
| |
| If you are adding new public functions to the custom library build, you need to |
| either add a prototype in one of the existing OpenSSL header files; |
| or provide a new header file and edit |
| [Configurations/unix-Makefile.tmpl](Configurations/unix-Makefile.tmpl) |
| to pick up that file. |
| |
| After that perform the following steps: |
| |
| ./Configure -Werror --strict-warnings [your-options] |
| make update |
| make |
| make test |
| |
| `make update` ensures that your functions declarations are added to |
| `util/libcrypto.num` or `util/libssl.num`. |
| If you plan to submit the changes you made to OpenSSL |
| (see [CONTRIBUTING.md](CONTRIBUTING.md)), it's worth running: |
| |
| make doc-nits |
| |
| after running `make update` to ensure that documentation has correct format. |
| |
| `make update` also generates files related to OIDs (in the `crypto/objects/` |
| folder) and errors. |
| If a merge error occurs in one of these generated files then the |
| generated files need to be removed and regenerated using `make update`. |
| To aid in this process the generated files can be committed separately |
| so they can be removed easily. |