Skip to content

Commit

Permalink
reodering the sections
Browse files Browse the repository at this point in the history
  • Loading branch information
notBroman committed Jan 7, 2024
1 parent 76bde12 commit b719fa6
Showing 1 changed file with 24 additions and 25 deletions.
49 changes: 24 additions & 25 deletions doc/building_picoquic.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,13 +16,35 @@ Fetching and installing this package can be done through an option in the CMake.
This can be set in the cmake file as well by setting the `PICOQUIC_FETCH_PTLS` cmake property to `ON`.

Inherited dependencies
- [OpenSSL through PicoTLS]()
- [OpenSSL through PicoTLS](https://github.com/openssl/openssl)

TODO: Current issues and ongoing work

There is a current issue trying to enable the use of crypto libraries provided by the user.
There is a current issue trying to enable the use of `mbedtls` instead of `openssl`.

## Targets

Targets are anything that is defined as an executable in `CMakeLists.txt`.
Available targets:

- picoquicdemo
- picolog_t
- picoquic_ct
- picohttp_ct
- pico_baton
- picoquic_sample
- thread_test

All of these targets are built when the `make .` or `cmake --build .` commands are used to build the project. After which the test program `picoquic_ct` can be used to verify the port.

`picoquicdemo` ([found in picoquicfirst/picoquicdemo.c](../picoquicfirst/picoquicdemo.c)) and `picoquic_sample` ([sample documentation](../sample/README.md)) are a good starting point for developing an application on top of this QUIC implementation.


## (Re)Building a Single Target

Targets defined in the `CMakeLists.txt`, listed above for convenience, can be build individually using cmake's `--target` option. The command `cmake --build . --target <target_name>` can be used to build a specific target and all it's dependcies. For example `cmake --build . --target picoquic_sample` will build the sample file transfer application in [sample/](../sample/README.md) as defined in the `CMakeLists.txt`. All the required components will also be built. This works if the command is issued in the top-level directory of the repository. This is useful for recompiling test programs and programs like `picoquic_sample` and `picoquicdemo` if they have been modified. Therefore reducing build times when making small changes.

This also works if `picoquic` has not been built as a whole before.

## Picoquic as a Dependency

Expand Down Expand Up @@ -60,26 +82,3 @@ add_subdirectory(dependencies)
find_package(picoquic REQUIRED)
```

## Targets

Targets are anything that is defined as an executable in `CMakeLists.txt`.
Avaialable targets:

- picoquicdemo
- picolog_t
- picoquic_ct
- picohttp_ct
- pico_baton
- picoquic_sample
- thread_test

All of these targets are built when the `make .` or `cmake --build .` commands are used to build the project. After which the test program `picoquic_ct` can be used to verify the port.

`picoquicdemo` ([found in picoquicfirst/picoquicdemo.c](../picoquicfirst/picoquicdemo.c)) and `picoquic_sample` ([sample documentation](../sample/README.md)) are a good starting point for developing an application on top of this QUIC implementation.


## (Re)Building a Single Target

Targets defined in the `CMakeLists.txt`, listed above for convenience, can be build individually using cmake's `--target` option. The command `cmake --build . --target <target_name>` can be used to build a specific target and all it's dependcies. For example `cmake --build . --target picoquic_sample` will build the sample file transfer application in [sample/](../sample/README.md) as defined in the `CMakeLists.txt`. All the required components will also be built. This works if the command is issued in the top-level directory of the repository. This is useful for recompiling test programs and programs like `picoquic_sample` and `picoquicdemo` if they have been modified. Therefore reducing build times when making small changes.

This also works if `picoquic` has not been built as a whole before.

0 comments on commit b719fa6

Please sign in to comment.