> ## Documentation Index
> Fetch the complete documentation index at: https://dragonwingdocs.qualcomm.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Modify the Qualcomm Device Loader source using devtool

The following examples show the `devtool` usage for Qualcomm software components.

## **Kernel**

See [Use Yocto to develop kernel](https://dragonwingdocs.qualcomm.com/System/Kernel/build-kernel-yocto).

## **QDL tool**

Use the `devtool` to modify the QDL source in the workspace created.

```text theme={null}
devtool modify qdl
INFO: Source tree extracted to <workspace>/build/workspace/sources/qdl
INFO: Using source tree as build directory since that would be the default for this recipe
INFO: Recipe qdl now set up to build from <workspace>/build/workspace/sources/qdl
```

1. Check out the following tree locally:
   ```text theme={null}
   tree -L 2 build/workspace/
   build/workspace/
   ├── appends
   │   └── qdl_git.bbappend
   ├── conf
   │   └── layer.conf
   ├── README
   └── sources
       └── qdl
   ```
2. Inspect the checked-out QDL source tree:
   ```text theme={null}
   ls workspace/sources/qdl/
   firehose.c  LICENSE  Makefile  patch.c  patch.h  program.c  program.h  qdl.c  qdl.h  README  sahara.c  ufs.c  ufs.h  util.c
   ```
3. Change the source tree under `workspace/sources/qdl/` and build your changes:
   ```text theme={null}
   devtool build qdl
   devtool build-image qcom-multimedia-image
   ```

The generated images are in the path `build/tmp/deploy/images/rb3gen2-core-kit/qcom-multimedia-image`.

## **Weston**

Use the `devtool` to modify Weston in the workspace created.

```text theme={null}
devtool modify weston
INFO: Adding local source files to srctree...
INFO: Source tree extracted to <workspace>/build/workspace/sources/weston
INFO: Recipe weston now set up to build from <workspace>/build/workspace/sources/weston
```

1. Check out the following tree locally:
   ```text theme={null}
   tree -L 2 build/workspace/
   build/workspace/
   ├── appends
   │   └── weston_10.0.2.bbappend
   ├── conf
   │   └── layer.conf
   ├── README
   └── sources
       └── weston
   ```
2. Inspect the checked-out Weston source tree:
   ```text theme={null}
   ls workspace/sources/weston/
   clients           COPYING      desktop-shell     include      libweston          meson.build        oe-local-files  pipewire    releasing.rst  tests  weston.ini.in
   compositor        data         doc               ivi-shell    libweston-desktop  meson_options.txt  oe-logs         protocol    remoting       tools  xwayland
   CONTRIBUTING.rst  DCO-1.1.txt  fullscreen-shell  kiosk-shell  man                notes.txt          oe-workdir      README.rst  shared         wcap
   ```
3. Change the source tree under `workspace/sources/weston/` and build your changes:
   ```text theme={null}
   devtool build weston
   devtool build-image qcom-multimedia-image
   ```

The generated images are in the path `build/tmp/deploy/images/rb3gen2-core-kit/qcom-multimedia-image`.
