From af1a266670d040d2f4083ff309d732d648afba2a Mon Sep 17 00:00:00 2001 From: Angelos Mouzakitis Date: Tue, 10 Oct 2023 14:33:42 +0000 Subject: Add submodule dependency files Change-Id: Iaf8d18082d3991dec7c0ebbea540f092188eb4ec --- meson/docs/markdown/Using-wraptool.md | 78 +++++++++++++++++++++++++++++++++++ 1 file changed, 78 insertions(+) create mode 100644 meson/docs/markdown/Using-wraptool.md (limited to 'meson/docs/markdown/Using-wraptool.md') diff --git a/meson/docs/markdown/Using-wraptool.md b/meson/docs/markdown/Using-wraptool.md new file mode 100644 index 000000000..ffa8309cf --- /dev/null +++ b/meson/docs/markdown/Using-wraptool.md @@ -0,0 +1,78 @@ +# Using wraptool + +Wraptool is a subcommand of Meson that allows you to manage your +source dependencies using the WrapDB database. It gives you all things +you would expect, such as installing and updating dependencies. The +wrap tool works on all platforms, the only limitation is that the wrap +definition works on your target platform. If you find some Wraps that +don't work, please file bugs or, even better, patches. + +All code examples here assume that you are running the commands in +your top level source directory. Lines that start with the `$` mark +are commands to type. + +## Simple querying + +The simplest operation to do is to query the list of packages +available. To list them all issue the following command: + + $ meson wrap list + box2d + enet + gtest + libjpeg + liblzma + libpng + libxml2 + lua + ogg + sqlite + vorbis + zlib + +Usually you want to search for a specific package. This can be done +with the `search` command: + + $ meson wrap search jpeg + libjpeg + +To determine which versions of libjpeg are available to install, issue +the `info` command: + + $ meson wrap info libjpeg + Available versions of libjpeg: + 9a 2 + +The first number is the upstream release version, in this case +`9a`. The second number is the Wrap revision number. They don't relate +to anything in particular, but larger numbers imply newer +releases. You should always use the newest available release. + +## Installing dependencies + +Installing dependencies is just as straightforward. First just create +the `subprojects` directory at the top of your source tree and issue +the install command. + + $ meson wrap install libjpeg + Installed libjpeg branch 9a revision 2 + +Now you can issue a `subproject('libjpeg')` in your `meson.build` file +to use it. + +To check if your projects are up to date you can issue the `status` command. + + $ meson wrap status + Subproject status + libjpeg up to date. Branch 9a, revision 2. + zlib not up to date. Have 1.2.8 2, but 1.2.8 4 is available. + +In this case `zlib` has a newer release available. Updating it is +straightforward: + + $ meson wrap update zlib + Updated zlib to branch 1.2.8 revision 4 + +Wraptool can do other things besides these. Documentation for these +can be found in the command line help, which can be accessed by +`meson wrap --help`. -- cgit 1.2.3-korg