Add notes for dtrace and Security

This commit is contained in:
CuriousTommy 2023-01-24 15:11:32 -08:00 committed by GitHub
parent 1effeddc16
commit 31737159b3
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 49 additions and 0 deletions

View File

@ -42,8 +42,10 @@
- [Packaging](contributing/packaging.md)
- [Updating sources](contributing/updating-sources/README.md)
- [BerkeleyDB](contributing/updating-sources/berkeleydb.md)
- [dtrace](contributing/updating-sources/dtrace.md)
- [ICU](contributing/updating-sources/icu.md)
- [JavaScriptCore](contributing/updating-sources/javascriptcore.md)
- [libc](contributing/updating-sources/libc.md)
- [OpenLDAP](contributing/updating-sources/openldap.md)
- [Security](contributing/updating-sources/security.md)

View File

@ -72,7 +72,9 @@ Like it was mentioned earlier, most projects require additional modifications an
The following are links to more specific update requirement guides for subprojects that need them. Note that these document what has had to be done until now; the upstream sources *could* completely switch up their setup from one version to the next, but until now, project structures have been pretty stable. Nonetheless, these are still *guidelines*; whenever sources are updated, you need to make sure to review them and perform any additional steps as necessary (and if possible, please document them).
* [BerkeleyDB](berkeleydb.md)
* [dtrace](dtrace.md)
* [ICU](icu.md)
* [JavaScriptCore](javascriptcore.md)
* [libc](libc.md)
* [OpenLDAP](openldap.md)
* [Security](security.md)

View File

@ -0,0 +1,14 @@
# Additional Update Guidelines for dtrace
As a reminder, these are *guidelines*. The version you update to might make some of these steps obsolete, so make sure you understand what they do and why they're necessary.
## Generates Sources
_In the prior release, the source files were generated by XCode and copied over. If you are able to figure out how to build dtrace from XCode, you can copy over those generated files instead._
```bash sh
mkdir -p gen/libdtrace
cd gen/libdtrace
bison -b y -d ../../lib/libdtrace/common/dt_grammar.y
flex ../../lib/libdtrace/common/dt_lex.l
```

View File

@ -0,0 +1,31 @@
# Additional Update Guidelines for Security
As a reminder, these are *guidelines*. The version you update to might make some of these steps obsolete, so make sure you understand what they do and why they're necessary.
## Generates Sources
```bash
darling/scripts/produce_schemas.sh
darling/scripts/cssm_generator.sh
# Read the notes in the generate_d_files.sh file before executing it.
darling/scripts/generate_d_files.sh
```
## Symbol Links
Most of the `security` folders (inside the `darling/include` folder) are set up as symbolic links (for example, the folder `security_asn1` point to `OSX/libsecurity_asn1/lib`). A consequence of this approach is that some of the files will need to be symbol-linked.
```bash
cd $DARLING_SECURITY/OSX/libsecurity_codesigning/lib/
ln -s ../../../cstemp/codesigning_dtrace.h
cd $DARLING_SECURITY/OSX/libsecurity_smime/lib/
ln -s ../../../libsecurity_smime/lib/SecAsn1Item.h
cd $DARLING_SECURITY/OSX/libsecurity_utilities/lib/
ln -s ../../utilities/debugging.h
cd $DARLING_SECURITY/OSX/libsecurity_utilities/lib/
ln -s ../../utilities/simulatecrash_assert.h
cd $DARLING_SECURITY/OSX/libsecurity_utilities/lib/
ln -s ../../../derived_src/security_utilities/utilities_dtrace.h
cd $DARLING_SECURITY/OSX/libsecurityd/lib/
ln -s ../mig/ss_types.defs
```