The cirros image was rebuilt against the 3.13.0-83 kernel, drivers e1000e, igbvf...
[packages/trusty/cirros-testvm.git] / cirros-testvm / src-cirros / buildroot-2015.05 / docs / manual / manual.html
diff --git a/cirros-testvm/src-cirros/buildroot-2015.05/docs/manual/manual.html b/cirros-testvm/src-cirros/buildroot-2015.05/docs/manual/manual.html
new file mode 100644 (file)
index 0000000..3c1e842
--- /dev/null
@@ -0,0 +1,4052 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>The Buildroot user manual</title><link rel="stylesheet" type="text/css" href="docbook-xsl.css" /><meta name="generator" content="DocBook XSL Stylesheets V1.78.1" /></head><body><div xml:lang="en" class="book" lang="en"><div class="titlepage"><div><div><h1 class="title"><a id="idm139994505750784"></a>The Buildroot user manual</h1></div></div><hr /></div><div class="toc"><p><strong>Table of Contents</strong></p><dl class="toc"><dt><span class="preface"><a href="#idm139994504916048"></a></span></dt><dt><span class="part"><a href="#_getting_started">I. Getting started</a></span></dt><dd><dl><dt><span class="chapter"><a href="#_about_buildroot">1. About Buildroot</a></span></dt><dt><span class="chapter"><a href="#requirement">2. System requirements</a></span></dt><dd><dl><dt><span class="section"><a href="#requirement-mandatory">2.1. Mandatory packages</a></span></dt><dt><span class="section"><a href="#requirement-optional">2.2. Optional packages</a></span></dt></dl></dd><dt><span class="chapter"><a href="#getting-buildroot">3. Getting Buildroot</a></span></dt><dt><span class="chapter"><a href="#_buildroot_quick_start">4. Buildroot quick start</a></span></dt><dt><span class="chapter"><a href="#community-resources">5. Community resources</a></span></dt></dl></dd><dt><span class="part"><a href="#_user_guide">II. User guide</a></span></dt><dd><dl><dt><span class="chapter"><a href="#configure">6. Buildroot configuration</a></span></dt><dd><dl><dt><span class="section"><a href="#_cross_compilation_toolchain">6.1. Cross-compilation toolchain</a></span></dt><dt><span class="section"><a href="#_dev_management">6.2. /dev management</a></span></dt><dt><span class="section"><a href="#_init_system">6.3. init system</a></span></dt></dl></dd><dt><span class="chapter"><a href="#_configuration_of_other_components">7. Configuration of other components</a></span></dt><dt><span class="chapter"><a href="#_general_buildroot_usage">8. General Buildroot usage</a></span></dt><dd><dl><dt><span class="section"><a href="#make-tips">8.1. <span class="emphasis"><em>make</em></span> tips</a></span></dt><dt><span class="section"><a href="#full-rebuild">8.2. Understanding when a full rebuild is necessary</a></span></dt><dt><span class="section"><a href="#rebuild-pkg">8.3. Understanding how to rebuild packages</a></span></dt><dt><span class="section"><a href="#_offline_builds">8.4. Offline builds</a></span></dt><dt><span class="section"><a href="#_building_out_of_tree">8.5. Building out-of-tree</a></span></dt><dt><span class="section"><a href="#env-vars">8.6. Environment variables</a></span></dt><dt><span class="section"><a href="#_dealing_efficiently_with_filesystem_images">8.7. Dealing efficiently with filesystem images</a></span></dt><dt><span class="section"><a href="#_graphing_the_dependencies_between_packages">8.8. Graphing the dependencies between packages</a></span></dt><dt><span class="section"><a href="#_graphing_the_build_duration">8.9. Graphing the build duration</a></span></dt><dt><span class="section"><a href="#_integration_with_eclipse">8.10. Integration with Eclipse</a></span></dt><dt><span class="section"><a href="#_advanced_usage">8.11. Advanced usage</a></span></dt></dl></dd><dt><span class="chapter"><a href="#customize">9. Project-specific customization</a></span></dt><dd><dl><dt><span class="section"><a href="#customize-dir-structure">9.1. Recommended directory structure</a></span></dt><dt><span class="section"><a href="#outside-br-custom">9.2. Keeping customizations outside of Buildroot</a></span></dt><dt><span class="section"><a href="#customize-store-buildroot-config">9.3. Storing the Buildroot configuration</a></span></dt><dt><span class="section"><a href="#customize-store-package-config">9.4. Storing the configuration of other components</a></span></dt><dt><span class="section"><a href="#rootfs-custom">9.5. Customizing the generated target filesystem</a></span></dt><dt><span class="section"><a href="#customize-users">9.6. Adding custom user accounts</a></span></dt><dt><span class="section"><a href="#_customization_emphasis_after_emphasis_the_images_have_been_created">9.7. Customization <span class="emphasis"><em>after</em></span> the images have been created</a></span></dt><dt><span class="section"><a href="#customize-patches">9.8. Adding project-specific patches</a></span></dt><dt><span class="section"><a href="#customize-packages">9.9. Adding project-specific packages</a></span></dt><dt><span class="section"><a href="#_quick_guide_to_storing_your_project_specific_customizations">9.10. Quick guide to storing your project-specific customizations</a></span></dt></dl></dd><dt><span class="chapter"><a href="#_frequently_asked_questions_amp_troubleshooting">10. Frequently Asked Questions &amp; Troubleshooting</a></span></dt><dd><dl><dt><span class="section"><a href="#faq-boot-hang-after-starting">10.1. The boot hangs after <span class="emphasis"><em>Starting network…</em></span></a></span></dt><dt><span class="section"><a href="#faq-no-compiler-on-target">10.2. Why is there no compiler on the target?</a></span></dt><dt><span class="section"><a href="#faq-no-dev-files-on-target">10.3. Why are there no development files on the target?</a></span></dt><dt><span class="section"><a href="#faq-no-doc-on-target">10.4. Why is there no documentation on the target?</a></span></dt><dt><span class="section"><a href="#faq-why-not-visible-package">10.5. Why are some packages not visible in the Buildroot config menu?</a></span></dt><dt><span class="section"><a href="#faq-why-not-use-target-as-chroot">10.6. Why not use the target directory as a chroot directory?</a></span></dt><dt><span class="section"><a href="#faq-no-binary-packages">10.7. Why doesn’t Buildroot generate binary packages (.deb, .ipkg…)?</a></span></dt><dt><span class="section"><a href="#faq-speeding-up-build">10.8. How to speed-up the build process?</a></span></dt></dl></dd><dt><span class="chapter"><a href="#_known_issues">11. Known issues</a></span></dt><dt><span class="chapter"><a href="#legal-info">12. Legal notice and licensing</a></span></dt><dd><dl><dt><span class="section"><a href="#_complying_with_open_source_licenses">12.1. Complying with open source licenses</a></span></dt><dt><span class="section"><a href="#legal-info-list-licenses">12.2. License abbreviations</a></span></dt><dt><span class="section"><a href="#_complying_with_the_buildroot_license">12.3. Complying with the Buildroot license</a></span></dt></dl></dd><dt><span class="chapter"><a href="#_beyond_buildroot">13. Beyond Buildroot</a></span></dt><dd><dl><dt><span class="section"><a href="#_boot_the_generated_images">13.1. Boot the generated images</a></span></dt><dt><span class="section"><a href="#_chroot">13.2. Chroot</a></span></dt></dl></dd></dl></dd><dt><span class="part"><a href="#_developer_guide">III. Developer guide</a></span></dt><dd><dl><dt><span class="chapter"><a href="#_how_buildroot_works">14. How Buildroot works</a></span></dt><dt><span class="chapter"><a href="#_coding_style">15. Coding style</a></span></dt><dd><dl><dt><span class="section"><a href="#writing-rules-config-in">15.1. <code class="literal">Config.in</code> file</a></span></dt><dt><span class="section"><a href="#writing-rules-mk">15.2. The <code class="literal">.mk</code> file</a></span></dt><dt><span class="section"><a href="#_the_documentation">15.3. The documentation</a></span></dt></dl></dd><dt><span class="chapter"><a href="#adding-board-support">16. Adding support for a particular board</a></span></dt><dt><span class="chapter"><a href="#adding-packages">17. Adding new packages to Buildroot</a></span></dt><dd><dl><dt><span class="section"><a href="#_package_directory">17.1. Package directory</a></span></dt><dt><span class="section"><a href="#_config_files">17.2. Config files</a></span></dt><dt><span class="section"><a href="#_the_literal_mk_literal_file">17.3. The <code class="literal">.mk</code> file</a></span></dt><dt><span class="section"><a href="#adding-packages-hash">17.4. The <code class="literal">.hash</code> file</a></span></dt><dt><span class="section"><a href="#_infrastructure_for_packages_with_specific_build_systems">17.5. Infrastructure for packages with specific build systems</a></span></dt><dt><span class="section"><a href="#_infrastructure_for_autotools_based_packages">17.6. Infrastructure for autotools-based packages</a></span></dt><dt><span class="section"><a href="#_infrastructure_for_cmake_based_packages">17.7. Infrastructure for CMake-based packages</a></span></dt><dt><span class="section"><a href="#_infrastructure_for_python_packages">17.8. Infrastructure for Python packages</a></span></dt><dt><span class="section"><a href="#_infrastructure_for_luarocks_based_packages">17.9. Infrastructure for LuaRocks-based packages</a></span></dt><dt><span class="section"><a href="#_infrastructure_for_perl_cpan_packages">17.10. Infrastructure for Perl/CPAN packages</a></span></dt><dt><span class="section"><a href="#_infrastructure_for_virtual_packages">17.11. Infrastructure for virtual packages</a></span></dt><dt><span class="section"><a href="#_infrastructure_for_packages_using_kconfig_for_configuration_files">17.12. Infrastructure for packages using kconfig for configuration files</a></span></dt><dt><span class="section"><a href="#_infrastructure_for_rebar_based_packages">17.13. Infrastructure for rebar-based packages</a></span></dt><dt><span class="section"><a href="#_infrastructure_for_asciidoc_documents">17.14. Infrastructure for asciidoc documents</a></span></dt><dt><span class="section"><a href="#hooks">17.15. Hooks available in the various build steps</a></span></dt><dt><span class="section"><a href="#_gettext_integration_and_interaction_with_packages">17.16. Gettext integration and interaction with packages</a></span></dt><dt><span class="section"><a href="#_tips_and_tricks">17.17. Tips and tricks</a></span></dt><dt><span class="section"><a href="#_conclusion">17.18. Conclusion</a></span></dt></dl></dd><dt><span class="chapter"><a href="#patch-policy">18. Patching a package</a></span></dt><dd><dl><dt><span class="section"><a href="#_providing_patches">18.1. Providing patches</a></span></dt><dt><span class="section"><a href="#patch-apply-order">18.2. How patches are applied</a></span></dt><dt><span class="section"><a href="#_format_and_licensing_of_the_package_patches">18.3. Format and licensing of the package patches</a></span></dt><dt><span class="section"><a href="#_integrating_patches_found_on_the_web">18.4. Integrating patches found on the Web</a></span></dt></dl></dd><dt><span class="chapter"><a href="#download-infra">19. Download infrastructure</a></span></dt><dt><span class="chapter"><a href="#debugging-buildroot">20. Debugging Buildroot</a></span></dt><dt><span class="chapter"><a href="#_contributing_to_buildroot">21. Contributing to Buildroot</a></span></dt><dd><dl><dt><span class="section"><a href="#_reproducing_analyzing_and_fixing_bugs">21.1. Reproducing, analyzing and fixing bugs</a></span></dt><dt><span class="section"><a href="#_analyzing_and_fixing_autobuild_failures">21.2. Analyzing and fixing autobuild failures</a></span></dt><dt><span class="section"><a href="#_reviewing_and_testing_patches">21.3. Reviewing and testing patches</a></span></dt><dt><span class="section"><a href="#_work_on_items_from_the_todo_list">21.4. Work on items from the TODO list</a></span></dt><dt><span class="section"><a href="#submitting-patches">21.5. Submitting patches</a></span></dt><dt><span class="section"><a href="#reporting-bugs">21.6. Reporting issues/bugs or getting help</a></span></dt></dl></dd></dl></dd><dt><span class="part"><a href="#_appendix">IV. Appendix</a></span></dt><dd><dl><dt><span class="chapter"><a href="#makedev-syntax">22. Makedev syntax documentation</a></span></dt><dt><span class="chapter"><a href="#makeuser-syntax">23. Makeusers syntax documentation</a></span></dt><dt><span class="chapter"><a href="#package-list">24. List of target packages available in Buildroot</a></span></dt><dt><span class="chapter"><a href="#virtual-package-list">25. List of virtual packages</a></span></dt><dt><span class="chapter"><a href="#host-package-list">26. List of host utilities available in Buildroot</a></span></dt><dt><span class="chapter"><a href="#deprecated-list">27. Deprecated features</a></span></dt></dl></dd></dl></div><div class="list-of-examples"><p><strong>List of Examples</strong></p><dl><dt>17.1. <a href="#idm139994498807568">Config script: <span class="emphasis"><em>divine</em></span> package</a></dt><dt>17.2. <a href="#idm139994498804640">Config script: <span class="emphasis"><em>imagemagick</em></span> package:</a></dt></dl></div><div class="preface"><div class="titlepage"><div><div><h1 class="title"><a id="idm139994504916048"></a></h1></div></div></div><p>Buildroot 2015.05 manual generated on 2015-05-31
+21:28:39 UTC from git revision 6d73615</p><p>The Buildroot manual is written by the Buildroot developers.
+It is licensed under the GNU General Public License, version 2. Refer to the
+<a class="ulink" href="http://git.buildroot.org/buildroot/tree/COPYING" target="_top">COPYING</a> file in the Buildroot
+sources for the full text of this license.</p><p>Copyright © 2004-2014 The Buildroot developers</p><div class="informalfigure"><div class="mediaobject"><img src="logo.png" alt="logo.png" /></div></div></div><div class="part"><div class="titlepage"><div><div><h1 class="title"><a id="_getting_started"></a>Part I. Getting started</h1></div></div></div><div class="chapter"><div class="titlepage"><div><div><h2 class="title"><a id="_about_buildroot"></a>Chapter 1. About Buildroot</h2></div></div></div><p>Buildroot is a tool that simplifies and automates the process of
+building a complete Linux system for an embedded system, using
+cross-compilation.</p><p>In order to achieve this, Buildroot is able to generate a
+cross-compilation toolchain, a root filesystem, a Linux kernel image
+and a bootloader for your target. Buildroot can be used for any
+combination of these options, independently (you can for example use
+an existing cross-compilation toolchain, and build only your root
+filesystem with Buildroot).</p><p>Buildroot is useful mainly for people working with embedded systems.
+Embedded systems often use processors that are not the regular x86
+processors everyone is used to having in his PC. They can be PowerPC
+processors, MIPS processors, ARM processors, etc.</p><p>Buildroot supports numerous processors and their variants; it also
+comes with default configurations for several boards available
+off-the-shelf. Besides this, a number of third-party projects are based on,
+or develop their BSP <a href="#ftn.idm139994500951776" class="footnote" id="idm139994500951776"><sup class="footnote">[1]</sup></a> or
+SDK <a href="#ftn.idm139994504459696" class="footnote" id="idm139994504459696"><sup class="footnote">[2]</sup></a> on top of Buildroot.</p><div class="footnotes"><br /><hr style="width:100; text-align:left;margin-left: 0" /><div id="ftn.idm139994500951776" class="footnote"><p><a href="#idm139994500951776" class="simpara"><sup class="simpara">[1] </sup></a>BSP: Board Support Package</p></div><div id="ftn.idm139994504459696" class="footnote"><p><a href="#idm139994504459696" class="simpara"><sup class="simpara">[2] </sup></a>SDK: Software Development Kit</p></div></div></div><div class="chapter"><div class="titlepage"><div><div><h2 class="title"><a id="requirement"></a>Chapter 2. System requirements</h2></div></div></div><p>Buildroot is designed to run on Linux systems.</p><p>While Buildroot itself will build most host packages it needs for the
+compilation, certain standard Linux utilities are expected to be
+already installed on the host system. Below you will find an overview of
+the mandatory and optional packages (note that package names may vary
+between distributions).</p><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="requirement-mandatory"></a>2.1. Mandatory packages</h2></div></div></div><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p class="simpara">
+Build tools:
+</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: circle; "><li class="listitem">
+<code class="literal">which</code>
+</li><li class="listitem">
+<code class="literal">sed</code>
+</li><li class="listitem">
+<code class="literal">make</code> (version 3.81 or any later)
+</li><li class="listitem">
+<code class="literal">binutils</code>
+</li><li class="listitem">
+<code class="literal">build-essential</code> (only for Debian based systems)
+</li><li class="listitem">
+<code class="literal">gcc</code> (version 2.95 or any later)
+</li><li class="listitem">
+<code class="literal">g++</code> (version 2.95 or any later)
+</li><li class="listitem">
+<code class="literal">bash</code>
+</li><li class="listitem">
+<code class="literal">patch</code>
+</li><li class="listitem">
+<code class="literal">gzip</code>
+</li><li class="listitem">
+<code class="literal">bzip2</code>
+</li><li class="listitem">
+<code class="literal">perl</code> (version 5.8.7 or any later)
+</li><li class="listitem">
+<code class="literal">tar</code>
+</li><li class="listitem">
+<code class="literal">cpio</code>
+</li><li class="listitem">
+<code class="literal">python</code> (version 2.6 or 2.7)
+</li><li class="listitem">
+<code class="literal">unzip</code>
+</li><li class="listitem">
+<code class="literal">rsync</code>
+</li></ul></div></li><li class="listitem"><p class="simpara">
+Source fetching tools:
+</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: circle; "><li class="listitem">
+<code class="literal">wget</code>
+</li></ul></div></li></ul></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="requirement-optional"></a>2.2. Optional packages</h2></div></div></div><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p class="simpara">
+Configuration interface dependencies:
+</p><p class="simpara">For these libraries, you need to install both runtime and development
+data, which in many distributions are packaged separately. The
+development packages typically have a <span class="emphasis"><em>-dev</em></span> or <span class="emphasis"><em>-devel</em></span> suffix.</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: circle; "><li class="listitem">
+<code class="literal">ncurses5</code> to use the <span class="emphasis"><em>menuconfig</em></span> interface
+</li><li class="listitem">
+<code class="literal">qt4</code> to use the <span class="emphasis"><em>xconfig</em></span> interface
+</li><li class="listitem">
+<code class="literal">glib2</code>, <code class="literal">gtk2</code> and <code class="literal">glade2</code> to use the <span class="emphasis"><em>gconfig</em></span> interface
+</li></ul></div></li><li class="listitem"><p class="simpara">
+Source fetching tools:
+</p><p class="simpara">In the official tree, most of the package sources are retrieved using
+<code class="literal">wget</code> from <span class="emphasis"><em>ftp</em></span>, <span class="emphasis"><em>http</em></span> or <span class="emphasis"><em>https</em></span> locations. A few packages are only
+available through a version control system. Moreover, Buildroot is
+capable of downloading sources via other tools, like <code class="literal">rsync</code> or <code class="literal">scp</code>
+(refer to <a class="xref" href="#download-infra" title="Chapter 19. Download infrastructure">Chapter 19, <em>Download infrastructure</em></a> for more details). If you enable
+packages using any of these methods, you will need to install the
+corresponding tool on the host system:</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: circle; "><li class="listitem">
+<code class="literal">bazaar</code>
+</li><li class="listitem">
+<code class="literal">cvs</code>
+</li><li class="listitem">
+<code class="literal">git</code>
+</li><li class="listitem">
+<code class="literal">mercurial</code>
+</li><li class="listitem">
+<code class="literal">rsync</code>
+</li><li class="listitem">
+<code class="literal">scp</code>
+</li><li class="listitem">
+<code class="literal">subversion</code>
+</li></ul></div></li><li class="listitem"><p class="simpara">
+Java-related packages, if the Java Classpath needs to be built for
+  the target system:
+</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: circle; "><li class="listitem">
+The <code class="literal">javac</code> compiler
+</li><li class="listitem">
+The <code class="literal">jar</code> tool
+</li></ul></div></li><li class="listitem"><p class="simpara">
+Documentation generation tools:
+</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: circle; "><li class="listitem">
+<code class="literal">asciidoc</code>, version 8.6.3 or higher
+</li><li class="listitem">
+<code class="literal">w3m</code>
+</li><li class="listitem">
+<code class="literal">python</code> with the <code class="literal">argparse</code> module (automatically present in 2.7+ and 3.2+)
+</li><li class="listitem">
+<code class="literal">dblatex</code> (required for the pdf manual only)
+</li></ul></div></li><li class="listitem"><p class="simpara">
+Graph generation tools:
+</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: circle; "><li class="listitem">
+<code class="literal">graphviz</code> to use <span class="emphasis"><em>graph-depends</em></span> and <span class="emphasis"><em>&lt;pkg&gt;-graph-depends</em></span>
+</li><li class="listitem">
+<code class="literal">python-matplotlib</code> to use <span class="emphasis"><em>graph-build</em></span>
+</li></ul></div></li></ul></div></div></div><div class="chapter"><div class="titlepage"><div><div><h2 class="title"><a id="getting-buildroot"></a>Chapter 3. Getting Buildroot</h2></div></div></div><p>Buildroot releases are made every 3 months, in February, May, August and
+November. Release numbers are in the format YYYY.MM, so for example
+2013.02, 2014.08.</p><p>Release tarballs are available at <a class="ulink" href="http://buildroot.org/downloads/" target="_top">http://buildroot.org/downloads/</a>.</p><p>If you want to follow development, you can use the daily snapshots or
+make a clone of the Git repository. Refer to the
+<a class="ulink" href="http://buildroot.org/download" target="_top">Download page</a> of the Buildroot website
+for more details.</p></div><div class="chapter"><div class="titlepage"><div><div><h2 class="title"><a id="_buildroot_quick_start"></a>Chapter 4. Buildroot quick start</h2></div></div></div><p><span class="strong"><strong>Important</strong></span>: you can and should <span class="strong"><strong>build everything as a normal user</strong></span>. There
+is no need to be root to configure and use Buildroot. By running all
+commands as a regular user, you protect your system against packages
+behaving badly during compilation and installation.</p><p>The first step when using Buildroot is to create a configuration.
+Buildroot has a nice configuration tool similar to the one you can
+find in the <a class="ulink" href="http://www.kernel.org/" target="_top">Linux kernel</a> or in
+<a class="ulink" href="http://www.busybox.net/" target="_top">BusyBox</a>.</p><p>From the buildroot directory, run</p><pre class="screen"> $ make menuconfig</pre><p>for the original curses-based configurator, or</p><pre class="screen"> $ make nconfig</pre><p>for the new curses-based configurator, or</p><pre class="screen"> $ make xconfig</pre><p>for the Qt-based configurator, or</p><pre class="screen"> $ make gconfig</pre><p>for the GTK-based configurator.</p><p>All of these "make" commands will need to build a configuration
+utility (including the interface), so you may need to install
+"development" packages for relevant libraries used by the
+configuration utilities. Refer to <a class="xref" href="#requirement" title="Chapter 2. System requirements">Chapter 2, <em>System requirements</em></a> for more details,
+specifically the <a class="link" href="#requirement-optional" title="2.2. Optional packages">optional requirements</a>
+<a class="xref" href="#requirement-optional" title="2.2. Optional packages">Section 2.2, “Optional packages”</a>
+to get the dependencies of your favorite interface.</p><p>For each menu entry in the configuration tool, you can find associated
+help that describes the purpose of the entry. Refer to <a class="xref" href="#configure" title="Chapter 6. Buildroot configuration">Chapter 6, <em>Buildroot configuration</em></a>
+for details on some specific configuration aspects.</p><p>Once everything is configured, the configuration tool generates a
+<code class="literal">.config</code> file that contains the entire configuration. This file will be
+read by the top-level Makefile.</p><p>To start the build process, simply run:</p><pre class="screen"> $ make</pre><p>You <span class="strong"><strong>should never</strong></span> use <code class="literal">make -jN</code> with Buildroot: top-level parallel
+make is currently not supported. Instead, use the <code class="literal">BR2_JLEVEL</code> option
+to tell Buildroot to run the compilation of each individual package
+with <code class="literal">make -jN</code>.</p><p>The <code class="literal">make</code> command will generally perform the following steps:</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+download source files (as required);
+</li><li class="listitem">
+configure, build and install the cross-compilation toolchain, or
+  simply import an external toolchain;
+</li><li class="listitem">
+configure, build and install selected target packages;
+</li><li class="listitem">
+build a kernel image, if selected;
+</li><li class="listitem">
+build a bootloader image, if selected;
+</li><li class="listitem">
+create a root filesystem in selected formats.
+</li></ul></div><p>Buildroot output is stored in a single directory, <code class="literal">output/</code>.
+This directory contains several subdirectories:</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+<code class="literal">images/</code> where all the images (kernel image, bootloader and root
+  filesystem images) are stored. These are the files you need to put
+  on your target system.
+</li><li class="listitem">
+<code class="literal">build/</code> where all the components are built (this includes tools
+  needed by Buildroot on the host and packages compiled for the
+  target). This directory contains one subdirectory for each of these
+  components.
+</li><li class="listitem">
+<code class="literal">staging/</code> which contains a hierarchy similar to a root filesystem
+  hierarchy. This directory contains the headers and libraries of the
+  cross-compilation toolchain and all the userspace packages selected
+  for the target. However, this directory is <span class="emphasis"><em>not</em></span> intended to be
+  the root filesystem for the target: it contains a lot of development
+  files, unstripped binaries and libraries that make it far too big
+  for an embedded system. These development files are used to compile
+  libraries and applications for the target that depend on other
+  libraries.
+</li><li class="listitem">
+<code class="literal">target/</code> which contains <span class="emphasis"><em>almost</em></span> the complete root filesystem for
+  the target: everything needed is present except the device files in
+  <code class="literal">/dev/</code> (Buildroot can’t create them because Buildroot doesn’t run
+  as root and doesn’t want to run as root). Also, it doesn’t have the correct
+  permissions (e.g. setuid for the busybox binary). Therefore, this directory
+  <span class="strong"><strong>should not be used on your target</strong></span>. Instead, you should use one of
+  the images built in the <code class="literal">images/</code> directory. If you need an
+  extracted image of the root filesystem for booting over NFS, then
+  use the tarball image generated in <code class="literal">images/</code> and extract it as
+  root. Compared to <code class="literal">staging/</code>, <code class="literal">target/</code> contains only the files and
+  libraries needed to run the selected target applications: the
+  development files (headers, etc.) are not present, the binaries are
+  stripped.
+</li><li class="listitem">
+<code class="literal">host/</code> contains the installation of tools compiled for the host
+  that are needed for the proper execution of Buildroot, including the
+  cross-compilation toolchain.
+</li></ul></div><p>These commands, <code class="literal">make menuconfig|nconfig|gconfig|xconfig</code> and <code class="literal">make</code>, are the
+basic ones that allow to easily and quickly generate images fitting
+your needs, with all the features and applications you enabled.</p><p>More details about the "make" command usage are given in
+<a class="xref" href="#make-tips" title="8.1. make tips">Section 8.1, “<span class="emphasis"><em>make</em></span> tips”</a>.</p></div><div class="chapter"><div class="titlepage"><div><div><h2 class="title"><a id="community-resources"></a>Chapter 5. Community resources</h2></div></div></div><p>Like any open source project, Buildroot has different ways to share
+information in its community and outside.</p><p>Each of those ways may interest you if you are looking for some help,
+want to understand Buildroot or contribute to the project.</p><div class="variablelist"><dl class="variablelist"><dt><span class="term">
+Mailing List
+</span></dt><dd><p class="simpara">Buildroot has a mailing list for discussion and development. It is the
+main method of interaction for Buildroot users and developers.</p><p class="simpara">Only subscribers to the Buildroot mailing list are allowed to post to
+this list. You can subscribe via the
+<a class="ulink" href="http://lists.busybox.net/mailman/listinfo/buildroot" target="_top">mailing list info
+page</a>.</p><p class="simpara">Mails that are sent to the mailing list are also available in the
+<a class="ulink" href="http://lists.busybox.net/pipermail/buildroot" target="_top">mailing list archives</a> and
+via <a class="ulink" href="http://gmane.org" target="_top">Gmane</a>, at
+<a class="ulink" href="http://dir.gmane.org/gmane.comp.lib.uclibc.buildroot" target="_top"><code class="literal">gmane.comp.lib.uclibc.buildroot</code></a>.
+Please search the mailing list archives before asking questions, since
+there is a good chance someone else has asked the same question before.</p></dd><dt><span class="term">
+IRC
+</span></dt><dd><p class="simpara">The Buildroot IRC channel <a class="ulink" href="irc://freenode.net/#buildroot" target="_top">#buildroot</a> is
+hosted on <a class="ulink" href="http://webchat.freenode.net" target="_top">Freenode</a>. It is a useful place to
+ask quick questions or discuss on certain topics.</p><p class="simpara">When asking for help on IRC, share relevant logs or pieces of code
+using a code sharing website, such as <a class="ulink" href="http://code.bulix.org" target="_top">http://code.bulix.org</a>.</p><p class="simpara">Note that for certain questions, posting to the mailing list may be
+better as it will reach more people, both developers and users.</p></dd><dt><span class="term">
+Bug tracker
+</span></dt><dd>Bugs in Buildroot can be reported via the mailing list or alternatively
+via the <a class="ulink" href="https://bugs.busybox.net/buglist.cgi?product=buildroot" target="_top">Buildroot
+bugtracker</a>. Please refer to <a class="xref" href="#reporting-bugs" title="21.6. Reporting issues/bugs or getting help">Section 21.6, “Reporting issues/bugs or getting help”</a> before creating a bug
+report.</dd><dt><span class="term">
+Wiki
+</span></dt><dd><a class="ulink" href="http://elinux.org/Buildroot" target="_top">The Buildroot wiki page</a> is hosted on
+the <a class="ulink" href="http://elinux.org" target="_top">eLinux</a> wiki. It contains some useful links, an
+overview of past and upcoming events, and a TODO list.</dd><dt><span class="term">
+Patchwork
+</span></dt><dd><p class="simpara">Patchwork is a web-based patch tracking system designed to facilitate
+the contribution and management of contributions to an open-source
+project. Patches that have been sent to a mailing list are 'caught' by
+the system, and appear on a web page. Any comments posted that
+reference the patch are appended to the patch page too. For more
+information on Patchwork see
+<a class="ulink" href="http://jk.ozlabs.org/projects/patchwork/" target="_top">http://jk.ozlabs.org/projects/patchwork/</a>.</p><p class="simpara">Buildroot’s Patchwork website is mainly for use by Buildroot’s
+maintainer to ensure patches aren’t missed. It is also used by Buildroot
+patch reviewers (see also <a class="xref" href="#apply-patches-patchwork" title="21.3.1. Applying Patches from Patchwork">Section 21.3.1, “Applying Patches from Patchwork”</a>).
+However, since the website exposes patches and their corresponding
+review comments in a clean and concise web interface, it can be useful
+for all Buildroot developers.</p><p class="simpara">The Buildroot patch management interface is available at
+<a class="ulink" href="http://patchwork.buildroot.org" target="_top">http://patchwork.buildroot.org</a>.</p></dd></dl></div></div></div><div class="part"><div class="titlepage"><div><div><h1 class="title"><a id="_user_guide"></a>Part II. User guide</h1></div></div></div><div class="chapter"><div class="titlepage"><div><div><h2 class="title"><a id="configure"></a>Chapter 6. Buildroot configuration</h2></div></div></div><p>All the configuration options in <code class="literal">make *config</code> have a help text
+providing details about the option.</p><p>The <code class="literal">make *config</code> commands also offer a search tool. Read the help
+message in the different frontend menus to know how to use it:</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+in <span class="emphasis"><em>menuconfig</em></span>, the search tool is called by pressing <code class="literal">/</code>;
+</li><li class="listitem">
+in <span class="emphasis"><em>xconfig</em></span>, the search tool is called by pressing <code class="literal">Ctrl</code> + <code class="literal">f</code>.
+</li></ul></div><p>The result of the search shows the help message of the matching items.
+In <span class="emphasis"><em>menuconfig</em></span>, numbers in the left column provide a shortcut to the
+corresponding entry. Just type this number to directly jump to the
+entry, or to the containing menu in case the entry is not selectable due
+to a missing dependency.</p><p>Although the menu structure and the help text of the entries should be
+sufficiently self-explanatory, a number of topics require additional
+explanation that cannot easily be covered in the help text and are
+therefore covered in the following sections.</p><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_cross_compilation_toolchain"></a>6.1. Cross-compilation toolchain</h2></div></div></div><p>A compilation toolchain is the set of tools that allows you to compile
+code for your system. It consists of a compiler (in our case, <code class="literal">gcc</code>),
+binary utils like assembler and linker (in our case, <code class="literal">binutils</code>) and a
+C standard library (for example
+<a class="ulink" href="http://www.gnu.org/software/libc/libc.html" target="_top">GNU Libc</a>,
+<a class="ulink" href="http://www.uclibc.org/" target="_top">uClibc</a>).</p><p>The system installed on your development station certainly already has
+a compilation toolchain that you can use to compile an application
+that runs on your system. If you’re using a PC, your compilation
+toolchain runs on an x86 processor and generates code for an x86
+processor. Under most Linux systems, the compilation toolchain uses
+the GNU libc (glibc) as the C standard library. This compilation
+toolchain is called the "host compilation toolchain". The machine on
+which it is running, and on which you’re working, is called the "host
+system" <a href="#ftn.idm139994500107152" class="footnote" id="idm139994500107152"><sup class="footnote">[3]</sup></a>.</p><p>The compilation toolchain is provided by your distribution, and
+Buildroot has nothing to do with it (other than using it to build a
+cross-compilation toolchain and other tools that are run on the
+development host).</p><p>As said above, the compilation toolchain that comes with your system
+runs on and generates code for the processor in your host system. As
+your embedded system has a different processor, you need a
+cross-compilation toolchain - a compilation toolchain that runs on
+your <span class="emphasis"><em>host system</em></span> but generates code for your <span class="emphasis"><em>target system</em></span> (and
+target processor). For example, if your host system uses x86 and your
+target system uses ARM, the regular compilation toolchain on your host
+runs on x86 and generates code for x86, while the cross-compilation
+toolchain runs on x86 and generates code for ARM.</p><p>Buildroot provides two solutions for the cross-compilation toolchain:</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+The <span class="strong"><strong>internal toolchain backend</strong></span>, called <code class="literal">Buildroot toolchain</code> in
+   the configuration interface.
+</li><li class="listitem">
+The <span class="strong"><strong>external toolchain backend</strong></span>, called <code class="literal">External toolchain</code> in
+   the configuration interface.
+</li></ul></div><p>The choice between these two solutions is done using the <code class="literal">Toolchain
+Type</code> option in the <code class="literal">Toolchain</code> menu. Once one solution has been
+chosen, a number of configuration options appear, they are detailed in
+the following sections.</p><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="internal-toolchain-backend"></a>6.1.1. Internal toolchain backend</h3></div></div></div><p>The <span class="emphasis"><em>internal toolchain backend</em></span> is the backend where Buildroot builds
+by itself a cross-compilation toolchain, before building the userspace
+applications and libraries for your target embedded system.</p><p>This backend supports several C libraries:
+<a class="ulink" href="http://www.uclibc.org" target="_top">uClibc</a>, the
+<a class="ulink" href="http://www.gnu.org/software/libc/libc.html" target="_top">glibc</a> and
+<a class="ulink" href="http://www.eglibc.org" target="_top">eglibc</a>.</p><p>Once you have selected this backend, a number of options appear. The
+most important ones allow to:</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+Change the version of the Linux kernel headers used to build the
+   toolchain. This item deserves a few explanations. In the process of
+   building a cross-compilation toolchain, the C library is being
+   built. This library provides the interface between userspace
+   applications and the Linux kernel. In order to know how to "talk"
+   to the Linux kernel, the C library needs to have access to the
+   <span class="emphasis"><em>Linux kernel headers</em></span> (i.e. the <code class="literal">.h</code> files from the kernel), which
+   define the interface between userspace and the kernel (system
+   calls, data structures, etc.). Since this interface is backward
+   compatible, the version of the Linux kernel headers used to build
+   your toolchain do not need to match <span class="emphasis"><em>exactly</em></span> the version of the
+   Linux kernel you intend to run on your embedded system. They only
+   need to have a version equal or older to the version of the Linux
+   kernel you intend to run. If you use kernel headers that are more
+   recent than the Linux kernel you run on your embedded system, then
+   the C library might be using interfaces that are not provided by
+   your Linux kernel.
+</li><li class="listitem">
+Change the version of the GCC compiler, binutils and the C library.
+</li><li class="listitem">
+Select a number of toolchain options (uClibc only): whether the
+   toolchain should have RPC support (used mainly for NFS),
+   wide-char support, locale support (for internationalization),
+   C++ support or thread support. Depending on which options you choose,
+   the number of userspace applications and libraries visible in
+   Buildroot menus will change: many applications and libraries require
+   certain toolchain options to be enabled. Most packages show a comment
+   when a certain toolchain option is required to be able to enable
+   those packages. If needed, you can further refine the uClibc
+   configuration by running <code class="literal">make uclibc-menuconfig</code>. Note however that
+   all packages in Buildroot are tested against the default uClibc
+   configuration bundled in Buildroot: if you deviate from this
+   configuration by removing features from uClibc, some packages may no
+   longer build.
+</li></ul></div><p>It is worth noting that whenever one of those options is modified,
+then the entire toolchain and system must be rebuilt. See
+<a class="xref" href="#full-rebuild" title="8.2. Understanding when a full rebuild is necessary">Section 8.2, “Understanding when a full rebuild is necessary”</a>.</p><p>Advantages of this backend:</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+Well integrated with Buildroot
+</li><li class="listitem">
+Fast, only builds what’s necessary
+</li></ul></div><p>Drawbacks of this backend:</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+Rebuilding the toolchain is needed when doing <code class="literal">make clean</code>, which
+  takes time. If you’re trying to reduce your build time, consider
+  using the <span class="emphasis"><em>External toolchain backend</em></span>.
+</li></ul></div></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="external-toolchain-backend"></a>6.1.2. External toolchain backend</h3></div></div></div><p>The <span class="emphasis"><em>external toolchain backend</em></span> allows to use existing pre-built
+cross-compilation toolchains. Buildroot knows about a number of
+well-known cross-compilation toolchains (from
+<a class="ulink" href="http://www.linaro.org" target="_top">Linaro</a> for ARM,
+<a class="ulink" href="http://www.mentor.com/embedded-software/sourcery-tools/sourcery-codebench/editions/lite-edition/" target="_top">Sourcery
+CodeBench</a> for ARM, x86, x86-64, PowerPC, MIPS and SuperH,
+<a class="ulink" href="https://blackfin.uclinux.org/gf/project/toolchain" target="_top">Blackfin toolchains
+from Analog Devices</a>, etc.) and is capable of downloading them
+automatically, or it can be pointed to a custom toolchain, either
+available for download or installed locally.</p><p>Then, you have three solutions to use an external toolchain:</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+Use a predefined external toolchain profile, and let Buildroot
+  download, extract and install the toolchain. Buildroot already knows
+  about a few CodeSourcery, Linaro, Blackfin and Xilinx toolchains.
+  Just select the toolchain profile in <code class="literal">Toolchain</code> from the
+  available ones. This is definitely the easiest solution.
+</li><li class="listitem">
+Use a predefined external toolchain profile, but instead of having
+  Buildroot download and extract the toolchain, you can tell Buildroot
+  where your toolchain is already installed on your system. Just
+  select the toolchain profile in <code class="literal">Toolchain</code> through the available
+  ones, unselect <code class="literal">Download toolchain automatically</code>, and fill the
+  <code class="literal">Toolchain path</code> text entry with the path to your cross-compiling
+  toolchain.
+</li><li class="listitem">
+Use a completely custom external toolchain. This is particularly
+  useful for toolchains generated using crosstool-NG or with Buildroot
+  itself. To do this, select the <code class="literal">Custom toolchain</code> solution in the
+  <code class="literal">Toolchain</code> list. You need to fill the <code class="literal">Toolchain path</code>, <code class="literal">Toolchain
+  prefix</code> and <code class="literal">External toolchain C library</code> options. Then, you have
+  to tell Buildroot what your external toolchain supports. If your
+  external toolchain uses the <span class="emphasis"><em>glibc</em></span> library, you only have to tell
+  whether your toolchain supports C++ or not and whether it has
+  built-in RPC support. If your external toolchain uses the <span class="emphasis"><em>uClibc</em></span>
+  library, then you have to tell Buildroot if it supports RPC,
+  wide-char, locale, program invocation, threads and C++.
+  At the beginning of the execution, Buildroot will tell you if
+  the selected options do not match the toolchain configuration.
+</li></ul></div><p>Our external toolchain support has been tested with toolchains from
+CodeSourcery and Linaro, toolchains generated by
+<a class="ulink" href="http://crosstool-ng.org" target="_top">crosstool-NG</a>, and toolchains generated by
+Buildroot itself. In general, all toolchains that support the
+<span class="emphasis"><em>sysroot</em></span> feature should work. If not, do not hesitate to contact the
+developers.</p><p>We do not support toolchains or SDK generated by OpenEmbedded or
+Yocto, because these toolchains are not pure toolchains (i.e. just the
+compiler, binutils, the C and C++ libraries). Instead these toolchains
+come with a very large set of pre-compiled libraries and
+programs. Therefore, Buildroot cannot import the <span class="emphasis"><em>sysroot</em></span> of the
+toolchain, as it would contain hundreds of megabytes of pre-compiled
+libraries that are normally built by Buildroot.</p><p>We also do not support using the distribution toolchain (i.e. the
+gcc/binutils/C library installed by your distribution) as the
+toolchain to build software for the target. This is because your
+distribution toolchain is not a "pure" toolchain (i.e. only with the
+C/C++ library), so we cannot import it properly into the Buildroot
+build environment. So even if you are building a system for a x86 or
+x86_64 target, you have to generate a cross-compilation toolchain with
+Buildroot or crosstool-NG.</p><p>If you want to generate a custom toolchain for your project, that can
+be used as an external toolchain in Buildroot, our recommendation is
+definitely to build it with <a class="ulink" href="http://crosstool-ng.org" target="_top">crosstool-NG</a>. We
+recommend to build the toolchain separately from Buildroot, and then
+<span class="emphasis"><em>import</em></span> it in Buildroot using the external toolchain backend.</p><p>Advantages of this backend:</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+Allows to use well-known and well-tested cross-compilation
+  toolchains.
+</li><li class="listitem">
+Avoids the build time of the cross-compilation toolchain, which is
+  often very significant in the overall build time of an embedded
+  Linux system.
+</li><li class="listitem">
+Not limited to uClibc: glibc and eglibc toolchains are supported.
+</li></ul></div><p>Drawbacks of this backend:</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+If your pre-built external toolchain has a bug, may be hard to get a
+  fix from the toolchain vendor, unless you build your external
+  toolchain by yourself using Crosstool-NG.
+</li></ul></div><div class="section"><div class="titlepage"><div><div><h4 class="title"><a id="_external_toolchain_wrapper"></a>External toolchain wrapper</h4></div></div></div><p>When using an external toolchain, Buildroot generates a wrapper program,
+that transparently passes the appropriate options (according to the
+configuration) to the external toolchain programs. In case you need to
+debug this wrapper to check exactly what arguments are passed, you can
+set the environment variable <code class="literal">BR2_DEBUG_WRAPPER</code> to either one of:</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+<code class="literal">0</code>, empty or not set: no debug
+</li><li class="listitem">
+<code class="literal">1</code>: trace all arguments on a single line
+</li><li class="listitem">
+<code class="literal">2</code>: trace one argument per line
+</li></ul></div></div></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_dev_management"></a>6.2. /dev management</h2></div></div></div><p>On a Linux system, the <code class="literal">/dev</code> directory contains special files, called
+<span class="emphasis"><em>device files</em></span>, that allow userspace applications to access the
+hardware devices managed by the Linux kernel. Without these <span class="emphasis"><em>device
+files</em></span>, your userspace applications would not be able to use the
+hardware devices, even if they are properly recognized by the Linux
+kernel.</p><p>Under <code class="literal">System configuration</code>, <code class="literal">/dev management</code>, Buildroot offers four
+different solutions to handle the <code class="literal">/dev</code> directory :</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+The first solution is <span class="strong"><strong>Static using device table</strong></span>. This is the old
+   classical way of handling device files in Linux. With this method,
+   the device files are persistently stored in the root filesystem
+   (i.e. they persist across reboots), and there is nothing that will
+   automatically create and remove those device files when hardware
+   devices are added or removed from the system. Buildroot therefore
+   creates a standard set of device files using a <span class="emphasis"><em>device table</em></span>, the
+   default one being stored in <code class="literal">system/device_table_dev.txt</code> in the
+   Buildroot source code. This file is processed when Buildroot
+   generates the final root filesystem image, and the <span class="emphasis"><em>device files</em></span>
+   are therefore not visible in the <code class="literal">output/target</code> directory. The
+   <code class="literal">BR2_ROOTFS_STATIC_DEVICE_TABLE</code> option allows to change the
+   default device table used by Buildroot, or to add an additional
+   device table, so that additional <span class="emphasis"><em>device files</em></span> are created by
+   Buildroot during the build. So, if you use this method, and a
+   <span class="emphasis"><em>device file</em></span> is missing in your system, you can for example create
+   a <code class="literal">board/&lt;yourcompany&gt;/&lt;yourproject&gt;/device_table_dev.txt</code> file
+   that contains the description of your additional <span class="emphasis"><em>device files</em></span>,
+   and then you can set <code class="literal">BR2_ROOTFS_STATIC_DEVICE_TABLE</code> to
+   <code class="literal">system/device_table_dev.txt
+   board/&lt;yourcompany&gt;/&lt;yourproject&gt;/device_table_dev.txt</code>. For more
+   details about the format of the device table file, see
+   <a class="xref" href="#makedev-syntax" title="Chapter 22. Makedev syntax documentation">Chapter 22, <em>Makedev syntax documentation</em></a>.
+</li><li class="listitem">
+The second solution is <span class="strong"><strong>Dynamic using devtmpfs only</strong></span>. <span class="emphasis"><em>devtmpfs</em></span> is
+   a virtual filesystem inside the Linux kernel that has been
+   introduced in kernel 2.6.32 (if you use an older kernel, it is not
+   possible to use this option). When mounted in <code class="literal">/dev</code>, this virtual
+   filesystem will automatically make <span class="emphasis"><em>device files</em></span> appear and
+   disappear as hardware devices are added and removed from the
+   system. This filesystem is not persistent across reboots: it is
+   filled dynamically by the kernel. Using <span class="emphasis"><em>devtmpfs</em></span> requires the
+   following kernel configuration options to be enabled:
+   <code class="literal">CONFIG_DEVTMPFS</code> and <code class="literal">CONFIG_DEVTMPFS_MOUNT</code>. When Buildroot is in
+   charge of building the Linux kernel for your embedded device, it
+   makes sure that those two options are enabled. However, if you
+   build your Linux kernel outside of Buildroot, then it is your
+   responsibility to enable those two options (if you fail to do so,
+   your Buildroot system will not boot).
+</li><li class="listitem">
+The third solution is <span class="strong"><strong>Dynamic using mdev</strong></span>. This method also relies
+   on the <span class="emphasis"><em>devtmpfs</em></span> virtual filesystem detailed above (so the
+   requirement to have <code class="literal">CONFIG_DEVTMPFS</code> and <code class="literal">CONFIG_DEVTMPFS_MOUNT</code>
+   enabled in the kernel configuration still apply), but adds the
+   <code class="literal">mdev</code> userspace utility on top of it. <code class="literal">mdev</code> is a program part of
+   BusyBox that the kernel will call every time a device is added or
+   removed. Thanks to the <code class="literal">/etc/mdev.conf</code> configuration file, <code class="literal">mdev</code>
+   can be configured to for example, set specific permissions or
+   ownership on a device file, call a script or application whenever a
+   device appears or disappear, etc. Basically, it allows <span class="emphasis"><em>userspace</em></span>
+   to react on device addition and removal events. <code class="literal">mdev</code> can for
+   example be used to automatically load kernel modules when devices
+   appear on the system. <code class="literal">mdev</code> is also important if you have devices
+   that require a firmware, as it will be responsible for pushing the
+   firmware contents to the kernel. <code class="literal">mdev</code> is a lightweight
+   implementation (with fewer features) of <code class="literal">udev</code>. For more details
+   about <code class="literal">mdev</code> and the syntax of its configuration file, see
+   <a class="ulink" href="http://git.busybox.net/busybox/tree/docs/mdev.txt" target="_top">http://git.busybox.net/busybox/tree/docs/mdev.txt</a>.
+</li><li class="listitem">
+The fourth solution is <span class="strong"><strong>Dynamic using eudev</strong></span>. This method also
+   relies on the <span class="emphasis"><em>devtmpfs</em></span> virtual filesystem detailed above, but
+   adds the <code class="literal">eudev</code> userspace daemon on top of it. <code class="literal">eudev</code> is a daemon
+   that runs in the background, and gets called by the kernel when a
+   device gets added or removed from the system. It is a more
+   heavyweight solution than <code class="literal">mdev</code>, but provides higher flexibility.
+   <code class="literal">eudev</code> is a standalone version of <code class="literal">udev</code>, the original userspace
+   daemon used in most desktop Linux distributions, which is now part
+   of Systemd. For more details, see <a class="ulink" href="http://en.wikipedia.org/wiki/Udev" target="_top">http://en.wikipedia.org/wiki/Udev</a>.
+</li></ul></div><p>The Buildroot developers recommendation is to start with the <span class="strong"><strong>Dynamic
+using devtmpfs only</strong></span> solution, until you have the need for userspace
+to be notified when devices are added/removed, or if firmwares are
+needed, in which case <span class="strong"><strong>Dynamic using mdev</strong></span> is usually a good solution.</p><p>Note that if <code class="literal">systemd</code> is chosen as init system, /dev management will
+be performed by the <code class="literal">udev</code> program provided by <code class="literal">systemd</code>.</p></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_init_system"></a>6.3. init system</h2></div></div></div><p>The <span class="emphasis"><em>init</em></span> program is the first userspace program started by the
+kernel (it carries the PID number 1), and is responsible for starting
+the userspace services and programs (for example: web server,
+graphical applications, other network servers, etc.).</p><p>Buildroot allows to use three different types of init systems, which
+can be chosen from <code class="literal">System configuration</code>, <code class="literal">Init system</code>:</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+The first solution is <span class="strong"><strong>BusyBox</strong></span>. Amongst many programs, BusyBox has
+   an implementation of a basic <code class="literal">init</code> program, which is sufficient
+   for most embedded systems. Enabling the <code class="literal">BR2_INIT_BUSYBOX</code> will
+   ensure BusyBox will build and install its <code class="literal">init</code> program. This is
+   the default solution in Buildroot. The BusyBox <code class="literal">init</code> program will
+   read the <code class="literal">/etc/inittab</code> file at boot to know what to do. The syntax
+   of this file can be found in
+   <a class="ulink" href="http://git.busybox.net/busybox/tree/examples/inittab" target="_top">http://git.busybox.net/busybox/tree/examples/inittab</a> (note that
+   BusyBox <code class="literal">inittab</code> syntax is special: do not use a random <code class="literal">inittab</code>
+   documentation from the Internet to learn about BusyBox
+   <code class="literal">inittab</code>). The default <code class="literal">inittab</code> in Buildroot is stored in
+   <code class="literal">system/skeleton/etc/inittab</code>. Apart from mounting a few important
+   filesystems, the main job the default inittab does is to start the
+   <code class="literal">/etc/init.d/rcS</code> shell script, and start a <code class="literal">getty</code> program (which
+   provides a login prompt).
+</li><li class="listitem">
+The second solution is <span class="strong"><strong>systemV</strong></span>. This solution uses the old
+   traditional <span class="emphasis"><em>sysvinit</em></span> program, packed in Buildroot in
+   <code class="literal">package/sysvinit</code>. This was the solution used in most desktop
+   Linux distributions, until they switched to more recent
+   alternatives such as Upstart or Systemd. <code class="literal">sysvinit</code> also works with
+   an <code class="literal">inittab</code> file (which has a slightly different syntax than the
+   one from BusyBox). The default <code class="literal">inittab</code> installed with this init
+   solution is located in <code class="literal">package/sysvinit/inittab</code>.
+</li><li class="listitem">
+The third solution is <span class="strong"><strong>systemd</strong></span>. <code class="literal">systemd</code> is the new generation
+   init system for Linux. It does far more than traditional <span class="emphasis"><em>init</em></span>
+   programs: aggressive parallelization capabilities, uses socket and
+   D-Bus activation for starting services, offers on-demand starting
+   of daemons, keeps track of processes using Linux control groups,
+   supports snapshotting and restoring of the system state,
+   etc. <code class="literal">systemd</code> will be useful on relatively complex embedded
+   systems, for example the ones requiring D-Bus and services
+   communicating between each other. It is worth noting that <code class="literal">systemd</code>
+   brings a fairly big number of large dependencies: <code class="literal">dbus</code>, <code class="literal">udev</code>
+   and more. For more details about <code class="literal">systemd</code>, see
+   <a class="ulink" href="http://www.freedesktop.org/wiki/Software/systemd" target="_top">http://www.freedesktop.org/wiki/Software/systemd</a>.
+</li></ul></div><p>The solution recommended by Buildroot developers is to use the
+<span class="strong"><strong>BusyBox init</strong></span> as it is sufficient for most embedded
+systems. <span class="strong"><strong>systemd</strong></span> can be used for more complex situations.</p></div><div class="footnotes"><br /><hr style="width:100; text-align:left;margin-left: 0" /><div id="ftn.idm139994500107152" class="footnote"><p><a href="#idm139994500107152" class="simpara"><sup class="simpara">[3] </sup></a>This terminology differs from what is used by GNU
+configure, where the host is the machine on which the application will
+run (which is usually the same as target)</p></div></div></div><div class="chapter"><div class="titlepage"><div><div><h2 class="title"><a id="_configuration_of_other_components"></a>Chapter 7. Configuration of other components</h2></div></div></div><p>Before attempting to modify any of the components below, make sure you
+have already configured Buildroot itself, and have enabled the
+corresponding package.</p><div class="variablelist"><dl class="variablelist"><dt><span class="term">
+BusyBox
+</span></dt><dd><p class="simpara">If you already have a BusyBox configuration file, you can directly
+specify this file in the Buildroot configuration, using
+<code class="literal">BR2_PACKAGE_BUSYBOX_CONFIG</code>. Otherwise, Buildroot will start from a
+default BusyBox configuration file.</p><p class="simpara">To make subsequent changes to the configuration, use <code class="literal">make
+busybox-menuconfig</code> to open the BusyBox configuration editor.</p><p class="simpara">It is also possible to specify a BusyBox configuration file through an
+environment variable, although this is not recommended. Refer to
+<a class="xref" href="#env-vars" title="8.6. Environment variables">Section 8.6, “Environment variables”</a> for more details.</p></dd><dt><span class="term">
+uClibc
+</span></dt><dd>Configuration of uClibc is done in the same way as for BusyBox. The
+configuration variable to specify an existing configuration file is
+<code class="literal">BR2_UCLIBC_CONFIG</code>. The command to make subsequent changes is <code class="literal">make
+uclibc-menuconfig</code>.</dd><dt><span class="term">
+Linux kernel
+</span></dt><dd><p class="simpara">If you already have a kernel configuration file, you can directly
+specify this file in the Buildroot configuration, using
+<code class="literal">BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG</code>.</p><p class="simpara">If you do not yet have a kernel configuration file, you can either start
+by specifying a defconfig in the Buildroot configuration, using
+<code class="literal">BR2_LINUX_KERNEL_USE_DEFCONFIG</code>, or start by creating an empty file and
+specifying it as custom configuration file, using
+<code class="literal">BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG</code>.</p><p class="simpara">To make subsequent changes to the configuration, use <code class="literal">make
+linux-menuconfig</code> to open the Linux configuration editor.</p></dd><dt><span class="term">
+Barebox
+</span></dt><dd>Configuration of Barebox is done in the same way as for the Linux
+kernel. The corresponding configuration variables are
+<code class="literal">BR2_TARGET_BAREBOX_USE_CUSTOM_CONFIG</code> and
+<code class="literal">BR2_TARGET_BAREBOX_USE_DEFCONFIG</code>. To open the configuration editor,
+use <code class="literal">make barebox-menuconfig</code>.</dd></dl></div></div><div class="chapter"><div class="titlepage"><div><div><h2 class="title"><a id="_general_buildroot_usage"></a>Chapter 8. General Buildroot usage</h2></div></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="make-tips"></a>8.1. <span class="emphasis"><em>make</em></span> tips</h2></div></div></div><p>This is a collection of tips that help you make the most of Buildroot.</p><p><strong>Display all commands executed by make: </strong>
+</p><pre class="screen"> $ make V=1 &lt;target&gt;</pre><p>
+</p><p><strong>Display the list of boards with a defconfig: </strong>
+</p><pre class="screen"> $ make list-defconfigs</pre><p>
+</p><p><strong>Display all available targets: </strong>
+</p><pre class="screen"> $ make help</pre><p>
+</p><p>Not all targets are always available,
+some settings in the <code class="literal">.config</code> file may hide some targets:</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+<code class="literal">busybox-menuconfig</code> only works when <code class="literal">busybox</code> is enabled;
+</li><li class="listitem">
+<code class="literal">linux-menuconfig</code> and <code class="literal">linux-savedefconfig</code> only work when
+  <code class="literal">linux</code> is enabled;
+</li><li class="listitem">
+<code class="literal">uclibc-menuconfig</code> is only available when the uClibc C library is
+  selected in the internal toolchain backend;
+</li><li class="listitem">
+<code class="literal">barebox-menuconfig</code> and <code class="literal">barebox-savedefconfig</code> only work when the
+  <code class="literal">barebox</code> bootloader is enabled.
+</li></ul></div><p><strong>Cleaning: </strong>Explicit cleaning is required when any of the architecture or toolchain
+configuration options are changed.</p><p>To delete all build products (including build directories, host, staging
+and target trees, the images and the toolchain):</p><pre class="screen"> $ make clean</pre><p><strong>Generating the manual: </strong>The present manual sources are located in the <span class="emphasis"><em>docs/manual</em></span> directory.
+To generate the manual:</p><pre class="screen"> $ make manual-clean
+ $ make manual</pre><p>The manual outputs will be generated in <span class="emphasis"><em>output/docs/manual</em></span>.</p><div class="itemizedlist"><p class="title"><strong>Notes</strong></p><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+A few tools are required to build the documentation (see:
+  <a class="xref" href="#requirement-optional" title="2.2. Optional packages">Section 2.2, “Optional packages”</a>).
+</li></ul></div><p><strong>Resetting Buildroot for a new target: </strong>To delete all build products as well as the configuration:</p><pre class="screen"> $ make distclean</pre><p><strong>Notes. </strong>If <code class="literal">ccache</code> is enabled, running <code class="literal">make clean</code> or <code class="literal">distclean</code> does
+not empty the compiler cache used by Buildroot. To delete it, refer
+to <a class="xref" href="#ccache" title="8.11.3. Using ccache in Buildroot">Section 8.11.3, “Using <code class="literal">ccache</code> in Buildroot”</a>.</p></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="full-rebuild"></a>8.2. Understanding when a full rebuild is necessary</h2></div></div></div><p>Buildroot does not attempt to detect what parts of the system should
+be rebuilt when the system configuration is changed through <code class="literal">make
+menuconfig</code>, <code class="literal">make xconfig</code> or one of the other configuration
+tools. In some cases, Buildroot should rebuild the entire system, in
+some cases, only a specific subset of packages. But detecting this in
+a completely reliable manner is very difficult, and therefore the
+Buildroot developers have decided to simply not attempt to do this.</p><p>Instead, it is the responsibility of the user to know when a full
+rebuild is necessary. As a hint, here are a few rules of thumb that
+can help you understand how to work with Buildroot:</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+When the target architecture configuration is changed, a complete
+   rebuild is needed. Changing the architecture variant, the binary
+   format or the floating point strategy for example has an impact on
+   the entire system.
+</li><li class="listitem">
+When the toolchain configuration is changed, a complete rebuild
+   generally is needed. Changing the toolchain configuration often
+   involves changing the compiler version, the type of C library or
+   its configuration, or some other fundamental configuration item,
+   and these changes have an impact on the entire system.
+</li><li class="listitem">
+When an additional package is added to the configuration, a full
+   rebuild is not necessarily needed. Buildroot will detect that this
+   package has never been built, and will build it. However, if this
+   package is a library that can optionally be used by packages that
+   have already been built, Buildroot will not automatically rebuild
+   those. Either you know which packages should be rebuilt, and you
+   can rebuild them manually, or you should do a full rebuild. For
+   example, let’s suppose you have built a system with the <code class="literal">ctorrent</code>
+   package, but without <code class="literal">openssl</code>. Your system works, but you realize
+   you would like to have SSL support in <code class="literal">ctorrent</code>, so you enable the
+   <code class="literal">openssl</code> package in Buildroot configuration and restart the
+   build. Buildroot will detect that <code class="literal">openssl</code> should be built and
+   will be build it, but it will not detect that <code class="literal">ctorrent</code> should be
+   rebuilt to benefit from <code class="literal">openssl</code> to add OpenSSL support. You will
+   either have to do a full rebuild, or rebuild <code class="literal">ctorrent</code> itself.
+</li><li class="listitem">
+When a package is removed from the configuration, Buildroot does
+   not do anything special. It does not remove the files installed by
+   this package from the target root filesystem or from the toolchain
+   <span class="emphasis"><em>sysroot</em></span>. A full rebuild is needed to get rid of this
+   package. However, generally you don’t necessarily need this package
+   to be removed right now: you can wait for the next lunch break to
+   restart the build from scratch.
+</li><li class="listitem">
+When the sub-options of a package are changed, the package is not
+   automatically rebuilt. After making such changes, rebuilding only
+   this package is often sufficient, unless enabling the package
+   sub-option adds some features to the package that are useful for
+   another package which has already been built. Again, Buildroot does
+   not track when a package should be rebuilt: once a package has been
+   built, it is never rebuilt unless explicitly told to do so.
+</li><li class="listitem">
+When a change to the root filesystem skeleton is made, a full
+   rebuild is needed. However, when changes to the root filesystem
+   overlay, a post-build script or a post-image script are made,
+   there is no need for a full rebuild: a simple <code class="literal">make</code> invocation
+   will take the changes into account.
+</li></ul></div><p>Generally speaking, when you’re facing a build error and you’re unsure
+of the potential consequences of the configuration changes you’ve
+made, do a full rebuild. If you get the same build error, then you are
+sure that the error is not related to partial rebuilds of packages,
+and if this error occurs with packages from the official Buildroot, do
+not hesitate to report the problem! As your experience with Buildroot
+progresses, you will progressively learn when a full rebuild is really
+necessary, and you will save more and more time.</p><p>For reference, a full rebuild is achieved by running:</p><pre class="screen">$ make clean all</pre></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="rebuild-pkg"></a>8.3. Understanding how to rebuild packages</h2></div></div></div><p>One of the most common questions asked by Buildroot users is how to
+rebuild a given package or how to remove a package without rebuilding
+everything from scratch.</p><p>Removing a package is unsupported by Buildroot without
+rebuilding from scratch. This is because Buildroot doesn’t keep track
+of which package installs what files in the <code class="literal">output/staging</code> and
+<code class="literal">output/target</code> directories, or which package would be compiled differently
+depending on the availability of another package.</p><p>The easiest way to rebuild a single package from scratch is to remove
+its build directory in <code class="literal">output/build</code>. Buildroot will then re-extract,
+re-configure, re-compile and re-install this package from scratch. You
+can ask buildroot to do this with the <code class="literal">make &lt;package&gt;-dirclean</code> command.</p><p>On the other hand, if you only want to restart the build process of a
+package from its compilation step, you can run <code class="literal">make
+&lt;package&gt;-rebuild</code>, followed by <code class="literal">make</code> or <code class="literal">make &lt;package&gt;</code>. It will
+restart the compilation and installation of the package, but not from
+scratch: it basically re-executes <code class="literal">make</code> and <code class="literal">make install</code>
+inside the package, so it will only rebuild files that changed.</p><p>If you want to restart the build process of a package from its
+configuration step, you can run <code class="literal">make &lt;package&gt;-reconfigure</code>, followed
+by <code class="literal">make</code> or <code class="literal">make &lt;package&gt;</code>. It will restart the configuration,
+compilation and installation of the package.</p><p>Internally, Buildroot creates so-called <span class="emphasis"><em>stamp files</em></span> to keep track of
+which build steps have been completed for each package. They are
+stored in the package build directory,
+<code class="literal">output/build/&lt;package&gt;-&lt;version&gt;/</code> and are named
+<code class="literal">.stamp_&lt;step-name&gt;</code>. The commands detailed above simply manipulate
+these stamp files to force Buildroot to restart a specific set of
+steps of a package build process.</p><p>Further details about package special make targets are explained in
+<a class="xref" href="#pkg-build-steps" title="8.11.5. Package-specific make targets">Section 8.11.5, “Package-specific <span class="emphasis"><em>make</em></span> targets”</a>.</p></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_offline_builds"></a>8.4. Offline builds</h2></div></div></div><p>If you intend to do an offline build and just want to download
+all sources that you previously selected in the configurator
+(<span class="emphasis"><em>menuconfig</em></span>, <span class="emphasis"><em>nconfig</em></span>, <span class="emphasis"><em>xconfig</em></span> or <span class="emphasis"><em>gconfig</em></span>), then issue:</p><pre class="screen"> $ make source</pre><p>You can now disconnect or copy the content of your <code class="literal">dl</code>
+directory to the build-host.</p></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_building_out_of_tree"></a>8.5. Building out-of-tree</h2></div></div></div><p>As default, everything built by Buildroot is stored in the directory
+<code class="literal">output</code> in the Buildroot tree.</p><p>Buildroot also supports building out of tree with a syntax similar to
+the Linux kernel. To use it, add <code class="literal">O=&lt;directory&gt;</code> to the make command
+line:</p><pre class="screen"> $ make O=/tmp/build</pre><p>Or:</p><pre class="screen"> $ cd /tmp/build; make O=$PWD -C path/to/buildroot</pre><p>All the output files will be located under <code class="literal">/tmp/build</code>. If the <code class="literal">O</code>
+path does not exist, Buildroot will create it.</p><p><span class="strong"><strong>Note:</strong></span> the <code class="literal">O</code> path can be either an absolute or a relative path, but if it’s
+passed as a relative path, it is important to note that it is interpreted
+relative to the main Buildroot source directory, <span class="strong"><strong>not</strong></span> the current working
+directory.</p><p>When using out-of-tree builds, the Buildroot <code class="literal">.config</code> and temporary
+files are also stored in the output directory. This means that you can
+safely run multiple builds in parallel using the same source tree as
+long as they use unique output directories.</p><p>For ease of use, Buildroot generates a Makefile wrapper in the output
+directory - so after the first run, you no longer need to pass <code class="literal">O=&lt;…&gt;</code>
+and <code class="literal">-C &lt;…&gt;</code>, simply run (in the output directory):</p><pre class="screen"> $ make &lt;target&gt;</pre></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="env-vars"></a>8.6. Environment variables</h2></div></div></div><p>Buildroot also honors some environment variables, when they are passed
+to <code class="literal">make</code> or set in the environment:</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+<code class="literal">HOSTCXX</code>, the host C++ compiler to use
+</li><li class="listitem">
+<code class="literal">HOSTCC</code>, the host C compiler to use
+</li><li class="listitem">
+<code class="literal">UCLIBC_CONFIG_FILE=&lt;path/to/.config&gt;</code>, path to
+  the uClibc configuration file, used to compile uClibc, if an
+  internal toolchain is being built.
+  Note that the uClibc configuration file can also be set from the
+  configuration interface, so through the Buildroot <code class="literal">.config</code> file; this
+  is the recommended way of setting it.
+</li><li class="listitem">
+<code class="literal">BUSYBOX_CONFIG_FILE=&lt;path/to/.config&gt;</code>, path to
+  the BusyBox configuration file.
+  Note that the BusyBox configuration file can also be set from the
+  configuration interface, so through the Buildroot <code class="literal">.config</code> file; this
+  is the recommended way of setting it.
+</li><li class="listitem">
+<code class="literal">BR2_DL_DIR</code> to override the directory in which
+  Buildroot stores/retrieves downloaded files
+  Note that the Buildroot download directory can also be set from the
+  configuration interface, so through the Buildroot <code class="literal">.config</code> file; this
+  is the recommended way of setting it.
+</li><li class="listitem">
+<code class="literal">BR2_GRAPH_ALT</code>, if set and non-empty, to use an alternate color-scheme in
+  build-time graphs
+</li><li class="listitem">
+<code class="literal">BR2_GRAPH_OUT</code> to set the filetype of generated graphs, either <code class="literal">pdf</code> (the
+  default), or <code class="literal">png</code>.
+</li><li class="listitem">
+<code class="literal">BR2_GRAPH_DEPS_OPTS</code> to pass extra options to the dependency graph; see
+  <a class="xref" href="#graph-depends">Section 8.8, “Graphing the dependencies between packages”</a> for the accepted options
+</li><li class="listitem">
+<code class="literal">BR2_GRAPH_DOT_OPTS</code> is passed verbatim as options to the <code class="literal">dot</code> utility to
+  draw the dependency graph.
+</li></ul></div><p>An example that uses config files located in the toplevel directory and
+in your $HOME:</p><pre class="screen"> $ make UCLIBC_CONFIG_FILE=uClibc.config BUSYBOX_CONFIG_FILE=$HOME/bb.config</pre><p>If you want to use a compiler other than the default <code class="literal">gcc</code>
+or <code class="literal">g</code>++ for building helper-binaries on your host, then do</p><pre class="screen"> $ make HOSTCXX=g++-4.3-HEAD HOSTCC=gcc-4.3-HEAD</pre></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_dealing_efficiently_with_filesystem_images"></a>8.7. Dealing efficiently with filesystem images</h2></div></div></div><p>Filesystem images can get pretty big, depending on the filesystem you choose,
+the number of packages, whether you provisioned free space… Yet, some
+locations in the filesystems images may just be <span class="emphasis"><em>empty</em></span> (e.g. a long run of
+<span class="emphasis"><em>zeroes</em></span>); such a file is called a <span class="emphasis"><em>sparse</em></span> file.</p><p>Most tools can handle sparse files efficiently, and will only store or write
+those parts of a sparse file that are not empty.</p><p>For example:</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p class="simpara">
+<code class="literal">tar</code> accepts the <code class="literal">-S</code> option to tell it to only store non-zero blocks
+  of sparse files:
+</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: circle; "><li class="listitem">
+<code class="literal">tar cf archive.tar -S [files…]</code> will efficiently store sparse files
+   in a tarball
+</li><li class="listitem">
+<code class="literal">tar xf archive.tar -S</code> will efficiently store sparse files extracted
+   from a tarball
+</li></ul></div></li><li class="listitem"><p class="simpara">
+<code class="literal">cp</code> accepts the <code class="literal">--sparse=WHEN</code> option (<code class="literal">WHEN</code> is one of <code class="literal">auto</code>,
+  <code class="literal">never</code> or <code class="literal">always</code>):
+</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: circle; "><li class="listitem">
+<code class="literal">cp --sparse=always source.file dest.file</code> will make <code class="literal">dest.file</code> a
+   sparse file if <code class="literal">source.file</code> has long runs of zeroes
+</li></ul></div></li></ul></div><p>Other tools may have similar options. Please consult their respective man
+pages.</p><p>You can use sparse files if you need to store the filesystem images (e.g.
+to transfer from one machine to another), or if you need to send them (e.g.
+to the Q&amp;A team).</p><p>Note however that flashing a filesystem image to a device while using the
+sparse mode of <code class="literal">dd</code> may result in a broken filesystem (e.g. the block bitmap
+of an ext2 filesystem may be corrupted; or, if you have sparse files in
+your filesystem, those parts may not be all-zeroes when read back). You
+should only use sparse files when handling files on the build machine, not
+when transferring them to an actual device that will be used on the target.</p></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_graphing_the_dependencies_between_packages"></a>8.8. Graphing the dependencies between packages</h2></div></div></div><p><a id="graph-depends"></a>One of Buildroot’s jobs is to know the dependencies between packages,
+and make sure they are built in the right order. These dependencies
+can sometimes be quite complicated, and for a given system, it is
+often not easy to understand why such or such package was brought into
+the build by Buildroot.</p><p>In order to help understanding the dependencies, and therefore better
+understand what is the role of the different components in your
+embedded Linux system, Buildroot is capable of generating dependency
+graphs.</p><p>To generate a dependency graph of the full system you have compiled,
+simply run:</p><pre class="screen">make graph-depends</pre><p>You will find the generated graph in
+<code class="literal">output/graphs/graph-depends.pdf</code>.</p><p>If your system is quite large, the dependency graph may be too complex
+and difficult to read. It is therefore possible to generate the
+dependency graph just for a given package:</p><pre class="screen">make &lt;pkg&gt;-graph-depends</pre><p>You will find the generated graph in
+<code class="literal">output/graph/&lt;pkg&gt;-graph-depends.pdf</code>.</p><p>Note that the dependency graphs are generated using the <code class="literal">dot</code> tool
+from the <span class="emphasis"><em>Graphviz</em></span> project, which you must have installed on your
+system to use this feature. In most distributions, it is available as
+the <code class="literal">graphviz</code> package.</p><p>By default, the dependency graphs are generated in the PDF
+format. However, by passing the <code class="literal">BR2_GRAPH_OUT</code> environment variable, you
+can switch to other output formats, such as PNG, PostScript or
+SVG. All formats supported by the <code class="literal">-T</code> option of the <code class="literal">dot</code> tool are
+supported.</p><pre class="screen">BR2_GRAPH_OUT=svg make graph-depends</pre><p>The <code class="literal">graph-depends</code> behaviour can be controlled by setting options in the
+<code class="literal">BR2_GRAPH_DEPS_OPTS</code> environment variable. The accepted options are:</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+<code class="literal">--depth N</code>, <code class="literal">-d N</code>, to limit the dependency depth to <code class="literal">N</code> levels. The
+  default, <code class="literal">0</code>, means no limit.
+</li><li class="listitem">
+<code class="literal">--stop-on PKG</code>, <code class="literal">-s PKG</code>, to stop the graph on the package <code class="literal">PKG</code>.
+  <code class="literal">PKG</code> can be an actual package name, a glob, or the keyword <span class="emphasis"><em>virtual</em></span>
+  (to stop on virtual packages). The package is still present on the
+  graph, but its dependencies are not.
+</li><li class="listitem">
+<code class="literal">--exclude PKG</code>, <code class="literal">-x PKG</code>, like <code class="literal">--stop-on</code>, but also omits <code class="literal">PKG</code> from
+  the graph.
+</li><li class="listitem">
+<code class="literal">--transitive</code>, <code class="literal">--no-transitive</code>, to draw (or not) the transitive
+  dependencies. The default is to not draw transitive dependencies.
+</li><li class="listitem">
+<code class="literal">--colours R,T,H</code>, the comma-separated list of colours to draw the
+  root package (<code class="literal">R</code>), the target packages (<code class="literal">T</code>) and the host packages
+  (<code class="literal">H</code>). Defaults to: <code class="literal">lightblue,grey,gainsboro</code>
+</li></ul></div><pre class="screen">BR2_GRAPH_DEPS_OPTS='-d 3 --no-transitive --colours=red,green,blue' make graph-depends</pre></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_graphing_the_build_duration"></a>8.9. Graphing the build duration</h2></div></div></div><p><a id="graph-duration"></a>When the build of a system takes a long time, it is sometimes useful
+to be able to understand which packages are the longest to build, to
+see if anything can be done to speed up the build. In order to help
+such build time analysis, Buildroot collects the build time of each
+step of each package, and allows to generate graphs from this data.</p><p>To generate the build time graph after a build, run:</p><pre class="screen">make graph-build</pre><p>This will generate a set of files in <code class="literal">output/graphs</code> :</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+<code class="literal">build.hist-build.pdf</code>, a histogram of the build time for each
+  package, ordered in the build order.
+</li><li class="listitem">
+<code class="literal">build.hist-duration.pdf</code>, a histogram of the build time for each
+  package, ordered by duration (longest first)
+</li><li class="listitem">
+<code class="literal">build.hist-name.pdf</code>, a histogram of the build time for each
+  package, order by package name.
+</li><li class="listitem">
+<code class="literal">build.pie-packages.pdf</code>, a pie chart of the build time per package
+</li><li class="listitem">
+<code class="literal">build.pie-steps.pdf</code>, a pie chart of the global time spent in each
+  step of the packages build process.
+</li></ul></div><p>This <code class="literal">graph-build</code> target requires the Python Matplotlib and Numpy
+libraries to be installed (<code class="literal">python-matplotlib</code> and <code class="literal">python-numpy</code> on
+most distributions), and also the <code class="literal">argparse</code> module if you’re using a
+Python version older than 2.7 (<code class="literal">python-argparse</code> on most
+distributions).</p><p>By default, the output format for the graph is PDF, but a different
+format can be selected using the <code class="literal">BR2_GRAPH_OUT</code> environment variable. The
+only other format supported is PNG:</p><pre class="screen">BR2_GRAPH_OUT=png make graph-build</pre></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_integration_with_eclipse"></a>8.10. Integration with Eclipse</h2></div></div></div><p>While a part of the embedded Linux developers like classical text
+editors like Vim or Emacs, and command-line based interfaces, a number
+of other embedded Linux developers like richer graphical interfaces to
+do their development work. Eclipse being one of the most popular
+Integrated Development Environment, Buildroot integrates with Eclipse
+in order to ease the development work of Eclipse users.</p><p>Our integration with Eclipse simplifies the compilation, remote
+execution and remote debugging of applications and libraries that are
+built on top of a Buildroot system. It does not integrate the
+Buildroot configuration and build processes themselves with
+Eclipse. Therefore, the typical usage model of our Eclipse integration
+would be:</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+Configure your Buildroot system with <code class="literal">make menuconfig</code>, <code class="literal">make
+  xconfig</code> or any other configuration interface provided with
+  Buildroot.
+</li><li class="listitem">
+Build your Buildroot system by running <code class="literal">make</code>.
+</li><li class="listitem">
+Start Eclipse to develop, execute and debug your own custom
+  applications and libraries, that will rely on the libraries built
+  and installed by Buildroot.
+</li></ul></div><p>The Buildroot Eclipse integration installation process and usage is
+described in detail at
+<a class="ulink" href="https://github.com/mbats/eclipse-buildroot-bundle/wiki" target="_top">https://github.com/mbats/eclipse-buildroot-bundle/wiki</a>.</p></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_advanced_usage"></a>8.11. Advanced usage</h2></div></div></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="_using_the_generated_toolchain_outside_buildroot"></a>8.11.1. Using the generated toolchain outside Buildroot</h3></div></div></div><p>You may want to compile, for your target, your own programs or other
+software that are not packaged in Buildroot. In order to do this you
+can use the toolchain that was generated by Buildroot.</p><p>The toolchain generated by Buildroot is located by default in
+<code class="literal">output/host/</code>. The simplest way to use it is to add
+<code class="literal">output/host/usr/bin/</code> to your PATH environment variable and then to
+use <code class="literal">ARCH-linux-gcc</code>, <code class="literal">ARCH-linux-objdump</code>, <code class="literal">ARCH-linux-ld</code>, etc.</p><p>It is possible to relocate the toolchain - but then <code class="literal">--sysroot</code> must
+be passed every time the compiler is called to tell where the
+libraries and header files are.</p><p>It is also possible to generate the Buildroot toolchain in a directory
+other than <code class="literal">output/host</code> by using the <code class="literal">Build options → Host dir</code>
+option. This could be useful if the toolchain must be shared with
+other users.</p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="_using_literal_gdb_literal_in_buildroot"></a>8.11.2. Using <code class="literal">gdb</code> in Buildroot</h3></div></div></div><p>Buildroot allows to do cross-debugging, where the debugger runs on the
+build machine and communicates with <code class="literal">gdbserver</code> on the target to
+control the execution of the program.</p><p>To achieve this:</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+If you are using an <span class="emphasis"><em>internal toolchain</em></span> (built by Buildroot), you
+  must enable <code class="literal">BR2_PACKAGE_HOST_GDB</code>, <code class="literal">BR2_PACKAGE_GDB</code> and
+  <code class="literal">BR2_PACKAGE_GDB_SERVER</code>. This ensures that both the cross gdb and
+  gdbserver get built, and that gdbserver gets installed to your target.
+</li><li class="listitem">
+If you are using an <span class="emphasis"><em>external toolchain</em></span>, you should enable
+  <code class="literal">BR2_TOOLCHAIN_EXTERNAL_GDB_SERVER_COPY</code>, which will copy the
+  gdbserver included with the external toolchain to the target. If your
+  external toolchain does not have a cross gdb or gdbserver, it is also
+  possible to let Buildroot build them, by enabling the same options as
+  for the <span class="emphasis"><em>internal toolchain backend</em></span>.
+</li></ul></div><p>Now, to start debugging a program called <code class="literal">foo</code>, you should run on the
+target:</p><pre class="screen">gdbserver :2345 foo</pre><p>This will cause <code class="literal">gdbserver</code> to listen on TCP port 2345 for a connection
+from the cross gdb.</p><p>Then, on the host, you should start the cross gdb using the following
+command line:</p><pre class="screen">&lt;buildroot&gt;/output/host/usr/bin/&lt;tuple&gt;-gdb -x &lt;buildroot&gt;/output/staging/usr/share/buildroot/gdbinit foo</pre><p>Of course, <code class="literal">foo</code> must be available in the current directory, built
+with debugging symbols. Typically you start this command from the
+directory where <code class="literal">foo</code> is built (and not from <code class="literal">output/target/</code> as the
+binaries in that directory are stripped).</p><p>The <code class="literal">&lt;buildroot&gt;/output/staging/usr/share/buildroot/gdbinit</code> file will tell the
+cross gdb where to find the libraries of the target.</p><p>Finally, to connect to the target from the cross gdb:</p><pre class="screen">(gdb) target remote &lt;target ip address&gt;:2345</pre></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="ccache"></a>8.11.3. Using <code class="literal">ccache</code> in Buildroot</h3></div></div></div><p><a class="ulink" href="http://ccache.samba.org" target="_top">ccache</a> is a compiler cache. It stores the
+object files resulting from each compilation process, and is able to
+skip future compilation of the same source file (with same compiler
+and same arguments) by using the pre-existing object files. When doing
+almost identical builds from scratch a number of times, it can nicely
+speed up the build process.</p><p><code class="literal">ccache</code> support is integrated in Buildroot. You just have to enable
+<code class="literal">Enable compiler cache</code> in <code class="literal">Build options</code>. This will automatically
+build <code class="literal">ccache</code> and use it for every host and target compilation.</p><p>The cache is located in <code class="literal">$HOME/.buildroot-ccache</code>. It is stored
+outside of Buildroot output directory so that it can be shared by
+separate Buildroot builds. If you want to get rid of the cache, simply
+remove this directory.</p><p>You can get statistics on the cache (its size, number of hits,
+misses, etc.) by running <code class="literal">make ccache-stats</code>.</p><p>The make target <code class="literal">ccache-options</code> and the <code class="literal">CCACHE_OPTIONS</code> variable
+provide more generic access to the ccache. For example</p><pre class="screen"># set cache limit size
+make CCACHE_OPTIONS="--max-size=5G" ccache-options
+
+# zero statistics counters
+make CCACHE_OPTIONS="--zero-stats" ccache-options</pre></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="_location_of_downloaded_packages"></a>8.11.4. Location of downloaded packages</h3></div></div></div><p>The various tarballs that are downloaded by Buildroot are all stored
+in <code class="literal">BR2_DL_DIR</code>, which by default is the <code class="literal">dl</code> directory. If you want
+to keep a complete version of Buildroot which is known to be working
+with the associated tarballs, you can make a copy of this directory.
+This will allow you to regenerate the toolchain and the target
+filesystem with exactly the same versions.</p><p>If you maintain several Buildroot trees, it might be better to have a
+shared download location. This can be achieved by pointing the
+<code class="literal">BR2_DL_DIR</code> environment variable to a directory. If this is
+set, then the value of <code class="literal">BR2_DL_DIR</code> in the Buildroot configuration is
+overridden. The following line should be added to <code class="literal">&lt;~/.bashrc&gt;</code>.</p><pre class="screen"> $ export BR2_DL_DIR &lt;shared download location&gt;</pre><p>The download location can also be set in the <code class="literal">.config</code> file, with the
+<code class="literal">BR2_DL_DIR</code> option. Unlike most options in the .config file, this value
+is overridden by the <code class="literal">BR2_DL_DIR</code> environment variable.</p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="pkg-build-steps"></a>8.11.5. Package-specific <span class="emphasis"><em>make</em></span> targets</h3></div></div></div><p>Running <code class="literal">make &lt;package&gt;</code> builds and installs that particular package
+and its dependencies.</p><p>For packages relying on the Buildroot infrastructure, there are
+numerous special make targets that can be called independently like
+this:</p><pre class="screen">make &lt;package&gt;-&lt;target&gt;</pre><p>The package build targets are (in the order they are executed):</p><div class="informaltable"><table cellpadding="4px" style="border-collapse: collapse;border-top: 3px solid #527bbd; border-bottom: 3px solid #527bbd; border-left: 3px solid #527bbd; border-right: 3px solid #527bbd; " width="90%"><colgroup><col class="col_1" /><col class="col_2" /></colgroup><thead><tr><th style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"> command/target    </th><th style="border-bottom: 1px solid #527bbd; " align="left" valign="top"> Description</th></tr></thead><tbody><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p><code class="literal">source</code></p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>Fetch the source (download the tarball, clone
+the source repository, etc)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p><code class="literal">depends</code></p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>Build and install all dependencies required to
+build the package</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p><code class="literal">extract</code></p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>Put the source in the package build directory
+(extract the tarball, copy the source, etc)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p><code class="literal">patch</code></p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>Apply the patches, if any</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p><code class="literal">configure</code></p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>Run the configure commands, if any</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p><code class="literal">build</code></p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>Run the compilation commands</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p><code class="literal">install-staging</code></p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p><span class="strong"><strong>target package:</strong></span> Run the installation of the package in the
+staging directory, if necessary</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p><code class="literal">install-target</code></p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p><span class="strong"><strong>target package:</strong></span> Run the installation of the package in the
+target directory, if necessary</p></td></tr><tr><td style="border-right: 1px solid #527bbd; " align="center" valign="top"><p><code class="literal">install</code></p></td><td style="" align="left" valign="top"><p><span class="strong"><strong>target package:</strong></span> Run the 2 previous installation commands</p>
+<p><span class="strong"><strong>host package:</strong></span> Run the installation of the package in the host
+directory</p></td></tr></tbody></table></div><p>Additionally, there are some other useful make targets:</p><div class="informaltable"><table cellpadding="4px" style="border-collapse: collapse;border-top: 3px solid #527bbd; border-bottom: 3px solid #527bbd; border-left: 3px solid #527bbd; border-right: 3px solid #527bbd; " width="90%"><colgroup><col class="col_1" /><col class="col_2" /></colgroup><thead><tr><th style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"> command/target    </th><th style="border-bottom: 1px solid #527bbd; " align="left" valign="top"> Description</th></tr></thead><tbody><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p><code class="literal">show-depends</code></p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>Displays the dependencies required to build the
+package</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p><code class="literal">graph-depends</code></p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>Generate a dependency graph of the package, in the
+context of the current Buildroot configuration. See
+<a class="link" href="#graph-depends">this section</a>
+<a class="xref" href="#graph-depends">Section 8.8, “Graphing the dependencies between packages”</a> for more details about dependency
+graphs.</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p><code class="literal">dirclean</code></p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>Remove the whole package build directory</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p><code class="literal">reinstall</code></p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>Re-run the install commands</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p><code class="literal">rebuild</code></p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>Re-run the compilation commands - this only makes
+sense when using the <code class="literal">OVERRIDE_SRCDIR</code> feature or when you modified a file
+directly in the build directory</p></td></tr><tr><td style="border-right: 1px solid #527bbd; " align="center" valign="top"><p><code class="literal">reconfigure</code></p></td><td style="" align="left" valign="top"><p>Re-run the configure commands, then rebuild - this only
+makes sense when using the <code class="literal">OVERRIDE_SRCDIR</code> feature or when you modified a
+file directly in the build directory</p></td></tr></tbody></table></div></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="_using_buildroot_during_development"></a>8.11.6. Using Buildroot during development</h3></div></div></div><p>The normal operation of Buildroot is to download a tarball, extract
+it, configure, compile and install the software component found inside
+this tarball. The source code is extracted in
+<code class="literal">output/build/&lt;package&gt;-&lt;version&gt;</code>, which is a temporary directory:
+whenever <code class="literal">make clean</code> is used, this directory is entirely removed, and
+re-recreated at the next <code class="literal">make</code> invocation. Even when a Git or
+Subversion repository is used as the input for the package source
+code, Buildroot creates a tarball out of it, and then behaves as it
+normally does with tarballs.</p><p>This behavior is well-suited when Buildroot is used mainly as an
+integration tool, to build and integrate all the components of an
+embedded Linux system. However, if one uses Buildroot during the
+development of certain components of the system, this behavior is not
+very convenient: one would instead like to make a small change to the
+source code of one package, and be able to quickly rebuild the system
+with Buildroot.</p><p>Making changes directly in <code class="literal">output/build/&lt;package&gt;-&lt;version&gt;</code> is not
+an appropriate solution, because this directory is removed on <code class="literal">make
+clean</code>.</p><p>Therefore, Buildroot provides a specific mechanism for this use case:
+the <code class="literal">&lt;pkg&gt;_OVERRIDE_SRCDIR</code> mechanism. Buildroot reads an <span class="emphasis"><em>override</em></span>
+file, which allows the user to tell Buildroot the location of the
+source for certain packages. By default this <span class="emphasis"><em>override</em></span> file is named
+<code class="literal">local.mk</code> and located in the top directory of the Buildroot source
+tree, but a different location can be specified through the
+<code class="literal">BR2_PACKAGE_OVERRIDE_FILE</code> configuration option.</p><p>In this <span class="emphasis"><em>override</em></span> file, Buildroot expects to find lines of the form:</p><pre class="screen">&lt;pkg1&gt;_OVERRIDE_SRCDIR = /path/to/pkg1/sources
+&lt;pkg2&gt;_OVERRIDE_SRCDIR = /path/to/pkg2/sources</pre><p>For example:</p><pre class="screen">LINUX_OVERRIDE_SRCDIR = /home/bob/linux/
+BUSYBOX_OVERRIDE_SRCDIR = /home/bob/busybox/</pre><p>When Buildroot finds that for a given package, an
+<code class="literal">&lt;pkg&gt;_OVERRIDE_SRCDIR</code> has been defined, it will no longer attempt to
+download, extract and patch the package. Instead, it will directly use
+the source code available in in the specified directory and <code class="literal">make
+clean</code> will not touch this directory. This allows to point Buildroot
+to your own directories, that can be managed by Git, Subversion, or
+any other version control system. To achieve this, Buildroot will use
+<span class="emphasis"><em>rsync</em></span> to copy the source code of the component from the specified
+<code class="literal">&lt;pkg&gt;_OVERRIDE_SRCDIR</code> to <code class="literal">output/build/&lt;package&gt;-custom/</code>.</p><p>This mechanism is best used in conjunction with the <code class="literal">make
+&lt;pkg&gt;-rebuild</code> and <code class="literal">make &lt;pkg&gt;-reconfigure</code> targets. A <code class="literal">make
+&lt;pkg&gt;-rebuild all</code> sequence will <span class="emphasis"><em>rsync</em></span> the source code from
+<code class="literal">&lt;pkg&gt;_OVERRIDE_SRCDIR</code> to <code class="literal">output/build/&lt;package&gt;-custom</code> (thanks to
+<span class="emphasis"><em>rsync</em></span>, only the modified files are copied), and restart the build
+process of just this package.</p><p>In the example of the <code class="literal">linux</code> package above, the developer can then
+make a source code change in <code class="literal">/home/bob/linux</code> and then run:</p><pre class="screen">make linux-rebuild all</pre><p>and in a matter of seconds gets the updated Linux kernel image in
+<code class="literal">output/images</code>. Similarly, a change can be made to the BusyBox source
+code in <code class="literal">/home/bob/busybox</code>, and after:</p><pre class="screen">make busybox-rebuild all</pre><p>the root filesystem image in <code class="literal">output/images</code> contains the updated
+BusyBox.</p></div></div></div><div class="chapter"><div class="titlepage"><div><div><h2 class="title"><a id="customize"></a>Chapter 9. Project-specific customization</h2></div></div></div><p>Typical actions you may need to perform for a given project are:</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+configuring Buildroot (including build options and toolchain,
+  bootloader, kernel, package and filesystem image type selection)
+</li><li class="listitem">
+configuring other components, like the Linux kernel and BusyBox
+</li><li class="listitem"><p class="simpara">
+customizing the generated target filesystem
+</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: circle; "><li class="listitem">
+adding or overwriting files on the target filesystem (using
+     <code class="literal">BR2_ROOTFS_OVERLAY</code>)
+</li><li class="listitem">
+modifying or deleting files on the target filesystem (using
+     <code class="literal">BR2_ROOTFS_POST_BUILD_SCRIPT</code>)
+</li><li class="listitem">
+running arbitrary commands prior to generating the filesystem image
+     (using <code class="literal">BR2_ROOTFS_POST_BUILD_SCRIPT</code>)
+</li><li class="listitem">
+setting file permissions and ownership (using
+     <code class="literal">BR2_ROOTFS_DEVICE_TABLE</code>)
+</li><li class="listitem">
+adding custom devices nodes (using
+     <code class="literal">BR2_ROOTFS_STATIC_DEVICE_TABLE</code>)
+</li></ul></div></li><li class="listitem">
+adding custom user accounts (using <code class="literal">BR2_ROOTFS_USERS_TABLES</code>)
+</li><li class="listitem">
+running arbitrary commands after generating the filesystem image
+  (using <code class="literal">BR2_ROOTFS_POST_IMAGE_SCRIPT</code>)
+</li><li class="listitem">
+adding project-specific patches to some packages (using
+  <code class="literal">BR2_GLOBAL_PATCH_DIR</code>)
+</li><li class="listitem">
+adding project-specific packages
+</li></ul></div><p>An important note regarding such <span class="emphasis"><em>project-specific</em></span> customizations:
+please carefully consider which changes are indeed project-specific and
+which changes are also useful to developers outside your project. The
+Buildroot community highly recommends and encourages the upstreaming of
+improvements, packages and board support to the official Buildroot
+project. Of course, it is sometimes not possible or desirable to
+upstream because the changes are highly specific or proprietary.</p><p>This chapter describes how to make such project-specific customizations
+in Buildroot and how to store them in a way that you can build the same
+image in a reproducible way, even after running <span class="emphasis"><em>make clean</em></span>. By
+following the recommended strategy, you can even use the same Buildroot
+tree to build multiple distinct projects!</p><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="customize-dir-structure"></a>9.1. Recommended directory structure</h2></div></div></div><p>When customizing Buildroot for your project, you will be creating one or
+more project-specific files that need to be stored somewhere. While most
+of these files could be placed in <span class="emphasis"><em>any</em></span> location as their path is to be
+specified in the Buildroot configuration, the Buildroot developers
+recommend a specific directory structure which is described in this
+section.</p><p>Orthogonal to this directory structure, you can choose <span class="emphasis"><em>where</em></span> you place
+this structure itself: either inside the Buildroot tree, or outside of
+it using <code class="literal">BR2_EXTERNAL</code>. Both options are valid, the choice is up to you.</p><pre class="screen">+-- board/
+|   +-- &lt;company&gt;/
+|       +-- &lt;boardname&gt;/
+|           +-- linux.config
+|           +-- busybox.config
+|           +-- &lt;other configuration files&gt;
+|           +-- post_build.sh
+|           +-- post_image.sh
+|           +-- rootfs_overlay/
+|           |   +-- etc/
+|           |   +-- &lt;some file&gt;
+|           +-- patches/
+|               +-- foo/
+|               |   +-- &lt;some patch&gt;
+|               +-- libbar/
+|                   +-- &lt;some other patches&gt;
+|
++-- configs/
+|   +-- &lt;boardname&gt;_defconfig
+|
++-- package/
+|   +-- &lt;company&gt;/
+|       +-- Config.in (if not using BR2_EXTERNAL)
+|       +-- &lt;company&gt;.mk (if not using BR2_EXTERNAL)
+|       +-- package1/
+|       |    +-- Config.in
+|       |    +-- package1.mk
+|       +-- package2/
+|           +-- Config.in
+|           +-- package2.mk
+|
++-- Config.in (if using BR2_EXTERNAL)
++-- external.mk (if using BR2_EXTERNAL)</pre><p>Details on the files shown above are given further in this chapter.</p><p>Note: if you choose to place this structure outside of the Buildroot
+tree using <code class="literal">BR2_EXTERNAL</code>, the &lt;company&gt; and possibly &lt;boardname&gt;
+components may be superfluous and can be left out.</p><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="_implementing_layered_customizations"></a>9.1.1. Implementing layered customizations</h3></div></div></div><p>It is quite common for a user to have several related projects that partly
+need the same customizations. Instead of duplicating these
+customizations for each project, it is recommended to use a layered
+customization approach, as explained in this section.</p><p>Almost all of the customization methods available in Buildroot, like
+post-build scripts and root filesystem overlays, accept a
+space-separated list of items. The specified items are always treated in
+order, from left to right. By creating more than one such item, one for
+the common customizations and another one for the really
+project-specific customizations, you can avoid unnecessary duplication.
+Each layer is typically embodied by a separate directory inside
+<code class="literal">board/&lt;company&gt;/</code>. Depending on your projects, you could even introduce
+more than two layers.</p><p>An example directory structure for where a user has two customization
+layers <span class="emphasis"><em>common</em></span> and <span class="emphasis"><em>fooboard</em></span> is:</p><pre class="screen">+-- board/
+    +-- &lt;company&gt;/
+        +-- common/
+        |   +-- post_build.sh
+        |   +-- rootfs_overlay/
+        |   |   +-- ...
+        |   +-- patches/
+        |       +-- ...
+        |
+        +-- fooboard/
+            +-- linux.config
+            +-- busybox.config
+            +-- &lt;other configuration files&gt;
+            +-- post_build.sh
+            +-- rootfs_overlay/
+            |   +-- ...
+            +-- patches/
+                +-- ...</pre><p>For example, if the user has the <code class="literal">BR2_GLOBAL_PATCH_DIR</code> configuration
+option set as:</p><pre class="screen">BR2_GLOBAL_PATCH_DIR="board/&lt;company&gt;/common/patches board/&lt;company&gt;/fooboard/patches"</pre><p>then first the patches from the <span class="emphasis"><em>common</em></span> layer would be applied,
+followed by the patches from the <span class="emphasis"><em>fooboard</em></span> layer.</p></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="outside-br-custom"></a>9.2. Keeping customizations outside of Buildroot</h2></div></div></div><p>As already briefly mentioned in <a class="xref" href="#customize-dir-structure" title="9.1. Recommended directory structure">Section 9.1, “Recommended directory structure”</a>, you can
+place project-specific customizations in two locations:</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+directly within the Buildroot tree, typically maintaining them using
+   branches in a version control system so that upgrading to a newer
+   Buildroot release is easy.
+</li><li class="listitem">
+outside of the Buildroot tree, using the <code class="literal">BR2_EXTERNAL</code> mechanism.
+   This mechanism allows to keep package recipes, board support and
+   configuration files outside of the Buildroot tree, while still
+   having them nicely integrated in the build logic. This section
+   explains how to use <code class="literal">BR2_EXTERNAL</code>.
+</li></ul></div><p><code class="literal">BR2_EXTERNAL</code> is an environment variable that can be used to point to
+a directory that contains Buildroot customizations. It can be passed
+to any Buildroot <code class="literal">make</code> invocation. It is automatically saved in the
+hidden <code class="literal">.br-external</code> file in the output directory. Thanks to this,
+there is no need to pass <code class="literal">BR2_EXTERNAL</code> at every <code class="literal">make</code> invocation. It
+can however be changed at any time by passing a new value, and can be
+removed by passing an empty value.</p><p><strong>Note. </strong>The <code class="literal">BR2_EXTERNAL</code> path can be either an absolute or a relative path,
+but if it’s passed as a relative path, it is important to note that it
+is interpreted relative to the main Buildroot source directory, <span class="strong"><strong>not</strong></span>
+to the Buildroot output directory.</p><p>Some examples:</p><pre class="screen">buildroot/ $ make BR2_EXTERNAL=/path/to/foobar menuconfig</pre><p>From now on, external definitions from the <code class="literal">/path/to/foobar</code>
+directory will be used:</p><pre class="screen">buildroot/ $ make
+buildroot/ $ make legal-info</pre><p>We can switch to another external definitions directory at any time:</p><pre class="screen">buildroot/ $ make BR2_EXTERNAL=/where/we/have/barfoo xconfig</pre><p>Or disable the usage of external definitions:</p><pre class="screen">buildroot/ $ make BR2_EXTERNAL= xconfig</pre><p><code class="literal">BR2_EXTERNAL</code> allows three different things:</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+One can store all the board-specific configuration files there,
+   such as the kernel configuration, the root filesystem overlay, or
+   any other configuration file for which Buildroot allows to set its
+   location. The <code class="literal">BR2_EXTERNAL</code> value is available within the
+   Buildroot configuration using <code class="literal">$(BR2_EXTERNAL)</code>. As an example, one
+   could set the <code class="literal">BR2_ROOTFS_OVERLAY</code> Buildroot option to
+   <code class="literal">$(BR2_EXTERNAL)/board/&lt;boardname&gt;/overlay/</code> (to specify a root
+   filesystem overlay), or the <code class="literal">BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE</code>
+   Buildroot option to
+   <code class="literal">$(BR2_EXTERNAL)/board/&lt;boardname&gt;/kernel.config</code> (to specify the
+   location of the kernel configuration file).
+</li><li class="listitem"><p class="simpara">
+One can store package recipes (i.e. <code class="literal">Config.in</code> and
+   <code class="literal">&lt;packagename&gt;.mk</code>), or even custom configuration options and make
+   logic. Buildroot automatically includes <code class="literal">$(BR2_EXTERNAL)/Config.in</code> to
+   make it appear in the top-level configuration menu, and includes
+   <code class="literal">$(BR2_EXTERNAL)/external.mk</code> with the rest of the makefile logic.
+</p><p><strong>Note. </strong>Providing <code class="literal">Config.in</code> and <code class="literal">external.mk</code> is mandatory, but they can be
+   empty.</p><p class="simpara">The main usage of this is to store package recipes. The recommended
+   way to do this is to write a <code class="literal">$(BR2_EXTERNAL)/Config.in</code> file that
+   looks like:</p><pre class="screen">source "$BR2_EXTERNAL/package/package1/Config.in"
+source "$BR2_EXTERNAL/package/package2/Config.in"</pre><p class="simpara">Then, have a <code class="literal">$(BR2_EXTERNAL)/external.mk</code> file that looks like:</p><pre class="screen">include $(sort $(wildcard $(BR2_EXTERNAL)/package/*/*.mk))</pre><p class="simpara">And then in <code class="literal">$(BR2_EXTERNAL)/package/package1</code> and
+   <code class="literal">$(BR2_EXTERNAL)/package/package2</code> create normal Buildroot
+   package recipes, as explained in <a class="xref" href="#adding-packages" title="Chapter 17. Adding new packages to Buildroot">Chapter 17, <em>Adding new packages to Buildroot</em></a>.
+   If you prefer, you can also group the packages in subdirectories
+   called &lt;boardname&gt; and adapt the above paths accordingly.</p></li><li class="listitem">
+One can store Buildroot defconfigs in the <code class="literal">configs</code> subdirectory of
+   <code class="literal">$(BR2_EXTERNAL)</code>. Buildroot will automatically show them in the
+   output of <code class="literal">make list-defconfigs</code> and allow them to be loaded with the
+   normal <code class="literal">make &lt;name&gt;_defconfig</code> command. They will be visible under the
+   <code class="literal">User-provided configs</code>' label in the <span class="emphasis"><em>make list-defconfigs</em></span> output.
+</li></ul></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="customize-store-buildroot-config"></a>9.3. Storing the Buildroot configuration</h2></div></div></div><p>The Buildroot configuration can be stored using the command
+ <code class="literal">make savedefconfig</code>.</p><p>This strips the Buildroot configuration down by removing configuration
+options that are at their default value. The result is stored in a file
+called <code class="literal">defconfig</code>. If you want to save it in another place, change the
+<code class="literal">BR2_DEFCONFIG</code> option in the Buildroot configuration itself, or call
+make with <code class="literal">make savedefconfig BR2_DEFCONFIG=&lt;path-to-defconfig&gt;</code>.</p><p>The recommended place to store this defconfig is
+<code class="literal">configs/&lt;boardname&gt;_defconfig</code>. If you follow this recommendation, the
+configuration will be listed in <code class="literal">make help</code> and can be set again by
+running <code class="literal">make &lt;boardname&gt;_defconfig</code>.</p><p>Alternatively, you can copy the file to any other place and rebuild with
+<code class="literal">make defconfig BR2_DEFCONFIG=&lt;path-to-defconfig-file&gt;</code>.</p></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="customize-store-package-config"></a>9.4. Storing the configuration of other components</h2></div></div></div><p>The configuration files for BusyBox, the Linux kernel, Barebox and
+uClibc should be stored as well if changed. For each of these
+components, a Buildroot configuration option exists to point to an input
+configuration file, e.g. <code class="literal">BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE</code>. To store
+their configuration, set these configuration options to a path where you
+want to save the configuration files, and then use the helper targets
+described below to actually store the configuration.</p><p>As explained in <a class="xref" href="#customize-dir-structure" title="9.1. Recommended directory structure">Section 9.1, “Recommended directory structure”</a>, the recommended path to
+store these configuration files is
+<code class="literal">board/&lt;company&gt;/&lt;boardname&gt;/foo.config</code>.</p><p>Make sure that you create a configuration file <span class="emphasis"><em>before</em></span> changing
+the <code class="literal">BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE</code> etc. options. Otherwise,
+Buildroot will try to access this config file, which doesn’t exist
+yet, and will fail. You can create the configuration file by running
+<code class="literal">make linux-menuconfig</code> etc.</p><p>Buildroot provides a few helper targets to make the saving of
+configuration files easier.</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+<code class="literal">make linux-update-defconfig</code> saves the linux configuration to the
+  path specified by <code class="literal">BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE</code>. It
+  simplifies the config file by removing default values. However,
+  this only works with kernels starting from 2.6.33. For earlier
+  kernels, use <code class="literal">make linux-update-config</code>.
+</li><li class="listitem">
+<code class="literal">make busybox-update-config</code> saves the busybox configuration to the
+  path specified by <code class="literal">BR2_PACKAGE_BUSYBOX_CONFIG</code>.
+</li><li class="listitem">
+<code class="literal">make uclibc-update-config</code> saves the uClibc configuration to the
+  path specified by <code class="literal">BR2_UCLIBC_CONFIG</code>.
+</li><li class="listitem">
+<code class="literal">make barebox-update-defconfig</code> saves the barebox configuration to the
+  path specified by <code class="literal">BR2_TARGET_BAREBOX_CUSTOM_CONFIG_FILE</code>.
+</li><li class="listitem">
+For at91bootstrap3, no helper exists so you have to copy the config
+  file manually to <code class="literal">BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_CONFIG_FILE</code>.
+</li></ul></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="rootfs-custom"></a>9.5. Customizing the generated target filesystem</h2></div></div></div><p>Besides changing the configuration through <code class="literal">make *config</code>,
+there are a few other ways to customize the resulting target filesystem.</p><p>The two recommended methods, which can co-exist, are root filesystem
+overlay(s) and post build script(s).</p><div class="variablelist"><dl class="variablelist"><dt><span class="term">
+Root filesystem overlays (<code class="literal">BR2_ROOTFS_OVERLAY</code>)
+</span></dt><dd><p class="simpara">A filesystem overlay is a tree of files that is copied directly
+  over the target filesystem after it has been built. To enable this
+  feature, set config option <code class="literal">BR2_ROOTFS_OVERLAY</code> (in the <code class="literal">System
+  configuration</code> menu) to the root of the overlay. You can even specify
+  multiple overlays, space-separated. If you specify a relative path,
+  it will be relative to the root of the Buildroot tree. Hidden
+  directories of version control systems, like <code class="literal">.git</code>, <code class="literal">.svn</code>, <code class="literal">.hg</code>,
+  etc., files called <code class="literal">.empty</code> and files ending in <code class="literal">~</code> are excluded from
+  the copy.</p><p class="simpara">As shown in <a class="xref" href="#customize-dir-structure" title="9.1. Recommended directory structure">Section 9.1, “Recommended directory structure”</a>, the recommended path for
+  this overlay is <code class="literal">board/&lt;company&gt;/&lt;boardname&gt;/rootfs-overlay</code>.</p></dd><dt><span class="term">
+Post-build scripts (<code class="literal">BR2_ROOTFS_POST_BUILD_SCRIPT</code>)
+</span></dt><dd><p class="simpara">Post-build scripts are shell scripts called <span class="emphasis"><em>after</em></span> Buildroot builds
+  all the selected software, but <span class="emphasis"><em>before</em></span> the rootfs images are
+  assembled. To enable this feature, specify a space-separated list of
+  post-build scripts in config option <code class="literal">BR2_ROOTFS_POST_BUILD_SCRIPT</code> (in
+  the <code class="literal">System configuration</code> menu). If you specify a relative path, it
+  will be relative to the root of the Buildroot tree.</p><p class="simpara">Using post-build scripts, you can remove or modify any file in your
+  target filesystem. You should, however, use this feature with care.
+  Whenever you find that a certain package generates wrong or unneeded
+  files, you should fix that package rather than work around it with some
+  post-build cleanup scripts.</p><p class="simpara">As shown in <a class="xref" href="#customize-dir-structure" title="9.1. Recommended directory structure">Section 9.1, “Recommended directory structure”</a>, the recommended path for
+  this script is <code class="literal">board/&lt;company&gt;/&lt;boardname&gt;/post_build.sh</code>.</p><p class="simpara">The post-build scripts are run with the main Buildroot tree as current
+  working directory. The path to the target filesystem is passed as the
+  first argument to each script. If the config option
+  <code class="literal">BR2_ROOTFS_POST_SCRIPT_ARGS</code> is not empty, these arguments will be
+  passed to the script too. All the scripts will be passed the exact
+  same set of arguments, it is not possible to pass different sets of
+  arguments to each script.</p><p class="simpara">In addition, you may also use these environment variables:</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+<code class="literal">BR2_CONFIG</code>: the path to the Buildroot .config file
+</li><li class="listitem">
+<code class="literal">HOST_DIR</code>, <code class="literal">STAGING_DIR</code>, <code class="literal">TARGET_DIR</code>: see
+    <a class="xref" href="#generic-package-reference" title="17.5.2. generic-package reference">Section 17.5.2, “<code class="literal">generic-package</code> reference”</a>
+</li><li class="listitem">
+<code class="literal">BUILD_DIR</code>: the directory where packages are extracted and built
+</li><li class="listitem">
+<code class="literal">BINARIES_DIR</code>: the place where all binary files (aka images) are
+    stored
+</li><li class="listitem">
+<code class="literal">BASE_DIR</code>: the base output directory
+</li></ul></div></dd></dl></div><p>Below two more methods of customizing the target filesystem are
+described, but they are not recommended.</p><div class="variablelist"><dl class="variablelist"><dt><span class="term">
+Direct modification of the target filesystem
+</span></dt><dd><p class="simpara">For temporary modifications, you can modify the target filesystem
+  directly and rebuild the image. The target filesystem is available
+  under <code class="literal">output/target/</code>. After making your changes, run <code class="literal">make</code> to
+  rebuild the target filesystem image.</p><p class="simpara">This method allows you to do anything to the target filesystem, but if
+  you need to clean your Buildroot tree using <code class="literal">make clean</code>, these
+  changes will be lost. Such cleaning is necessary in several cases,
+  refer to <a class="xref" href="#full-rebuild" title="8.2. Understanding when a full rebuild is necessary">Section 8.2, “Understanding when a full rebuild is necessary”</a> for details. This solution is therefore
+  only useful for quick tests: <span class="emphasis"><em>changes do not survive the <code class="literal">make clean</code>
+  command</em></span>. Once you have validated your changes, you should make sure
+  that they will persist after a <code class="literal">make clean</code>, using a root filesystem
+  overlay or a post-build script.</p></dd><dt><span class="term">
+Custom target skeleton (<code class="literal">BR2_ROOTFS_SKELETON_CUSTOM</code>)
+</span></dt><dd><p class="simpara">The root filesystem image is created from a target skeleton, on top of
+  which all packages install their files. The skeleton is copied to the
+  target directory <code class="literal">output/target</code> before any package is built and
+  installed. The default target skeleton provides the standard Unix
+  filesystem layout and some basic init scripts and configuration files.</p><p class="simpara">If the default skeleton (available under <code class="literal">system/skeleton</code>) does not
+  match your needs, you would typically use a root filesystem overlay or
+  post-build script to adapt it. However, if the default skeleton is
+  entirely different than what you need, using a custom skeleton may be
+  more suitable.</p><p class="simpara">To enable this feature, enable config option
+  <code class="literal">BR2_ROOTFS_SKELETON_CUSTOM</code> and set <code class="literal">BR2_ROOTFS_SKELETON_CUSTOM_PATH</code>
+  to the path of your custom skeleton. Both options are available in the
+  <code class="literal">System configuration</code> menu. If you specify a relative path, it will
+  be relative to the root of the Buildroot tree.</p><p class="simpara">This method is not recommended because it duplicates the entire
+  skeleton, which prevents taking advantage of the fixes or improvements
+  brought to the default skeleton in later Buildroot releases.</p></dd></dl></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="customize-device-permission"></a>9.5.1. Setting file permissions and ownership and adding custom devices nodes</h3></div></div></div><p>Sometimes it is needed to set specific permissions or ownership on files
+or device nodes. For example, certain files may need to be owned by
+root. Since the post-build scripts are not run as root, you cannot do
+such changes from there unless you use an explicit fakeroot from the
+post-build script.</p><p>Instead, Buildroot provides support for so-called <span class="emphasis"><em>permission tables</em></span>.
+To use this feature, set config option <code class="literal">BR2_ROOTFS_DEVICE_TABLE</code> to a
+space-separated list of permission tables, regular text files following
+the <a class="link" href="#makedev-syntax" title="Chapter 22. Makedev syntax documentation">makedev syntax</a>
+<a class="xref" href="#makedev-syntax" title="Chapter 22. Makedev syntax documentation">Chapter 22, <em>Makedev syntax documentation</em></a>.</p><p>If you are using a static device table (i.e. not using <code class="literal">devtmpfs</code>,
+<code class="literal">mdev</code>, or <code class="literal">(e)udev</code>) then you can add device nodes using the same
+syntax, in so-called <span class="emphasis"><em>device tables</em></span>. To use this feature, set config
+option <code class="literal">BR2_ROOTFS_STATIC_DEVICE_TABLE</code> to a space-separated list of
+device tables.</p><p>As shown in <a class="xref" href="#customize-dir-structure" title="9.1. Recommended directory structure">Section 9.1, “Recommended directory structure”</a>, the recommended location for
+such files is <code class="literal">board/&lt;company&gt;/&lt;boardname&gt;/</code>.</p><p>It should be noted that if the specific permissions or device nodes are
+related to a specific application, you should set variables
+<code class="literal">FOO_PERMISSIONS</code> and <code class="literal">FOO_DEVICES</code> in the package’s <code class="literal">.mk</code> file instead
+(see <a class="xref" href="#generic-package-reference" title="17.5.2. generic-package reference">Section 17.5.2, “<code class="literal">generic-package</code> reference”</a>).</p></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="customize-users"></a>9.6. Adding custom user accounts</h2></div></div></div><p>Sometimes it is needed to add specific users in the target system.
+To cover this requirement, Buildroot provides support for so-called
+<span class="emphasis"><em>users tables</em></span>. To use this feature, set config option
+<code class="literal">BR2_ROOTFS_USERS_TABLES</code> to a space-separated list of users tables,
+regular text files following the <a class="link" href="#makeuser-syntax" title="Chapter 23. Makeusers syntax documentation">makeusers syntax</a>
+<a class="xref" href="#makeuser-syntax" title="Chapter 23. Makeusers syntax documentation">Chapter 23, <em>Makeusers syntax documentation</em></a>.</p><p>As shown in <a class="xref" href="#customize-dir-structure" title="9.1. Recommended directory structure">Section 9.1, “Recommended directory structure”</a>, the recommended location for
+such files is <code class="literal">board/&lt;company&gt;/&lt;boardname&gt;/</code>.</p><p>It should be noted that if the custom users are related to a specific
+application, you should set variable <code class="literal">FOO_USERS</code> in the package’s <code class="literal">.mk</code>
+file instead (see <a class="xref" href="#generic-package-reference" title="17.5.2. generic-package reference">Section 17.5.2, “<code class="literal">generic-package</code> reference”</a>).</p></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_customization_emphasis_after_emphasis_the_images_have_been_created"></a>9.7. Customization <span class="emphasis"><em>after</em></span> the images have been created</h2></div></div></div><p>While post-build scripts (<a class="xref" href="#rootfs-custom" title="9.5. Customizing the generated target filesystem">Section 9.5, “Customizing the generated target filesystem”</a>) are run <span class="emphasis"><em>before</em></span>
+building the filesystem image, kernel and bootloader, <span class="strong"><strong>post-image
+scripts</strong></span> can be used to perform some specific actions <span class="emphasis"><em>after</em></span> all images
+have been created.</p><p>Post-image scripts can for example be used to automatically extract your
+root filesystem tarball in a location exported by your NFS server, or
+to create a special firmware image that bundles your root filesystem and
+kernel image, or any other custom action required for your project.</p><p>To enable this feature, specify a space-separated list of post-image
+scripts in config option <code class="literal">BR2_ROOTFS_POST_IMAGE_SCRIPT</code> (in the <code class="literal">System
+configuration</code> menu). If you specify a relative path, it will be
+relative to the root of the Buildroot tree.</p><p>Just like post-build scripts, post-image scripts are run with the main
+Buildroot tree as current working directory. The path to the <code class="literal">images</code>
+output directory is passed as the first argument to each script. If the
+config option <code class="literal">BR2_ROOTFS_POST_SCRIPT_ARGS</code> is not empty, these
+arguments will be passed to the script too. All the scripts will be
+passed the exact same set of arguments, it is not possible to pass
+different sets of arguments to each script.</p><p>Again just like for the post-build scripts, the scripts have access to
+the environment variables <code class="literal">BR2_CONFIG</code>, <code class="literal">HOST_DIR</code>, <code class="literal">STAGING_DIR</code>,
+<code class="literal">TARGET_DIR</code>, <code class="literal">BUILD_DIR</code>, <code class="literal">BINARIES_DIR</code> and <code class="literal">BASE_DIR</code>.</p><p>The post-image scripts will be executed as the user that executes
+Buildroot, which should normally <span class="emphasis"><em>not</em></span> be the root user. Therefore, any
+action requiring root permissions in one of these scripts will require
+special handling (usage of fakeroot or sudo), which is left to the
+script developer.</p></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="customize-patches"></a>9.8. Adding project-specific patches</h2></div></div></div><p>It is sometimes useful to apply <span class="emphasis"><em>extra</em></span> patches to packages - on top of
+those provided in Buildroot. This might be used to support custom
+features in a project, for example, or when working on a new
+architecture.</p><p>The <code class="literal">BR2_GLOBAL_PATCH_DIR</code> configuration option can be used to specify
+a space separated list of one or more directories containing package
+patches.</p><p>For a specific version <code class="literal">&lt;packageversion&gt;</code> of a specific package
+<code class="literal">&lt;packagename&gt;</code>, patches are applied from <code class="literal">BR2_GLOBAL_PATCH_DIR</code> as
+follows:</p><div class="orderedlist"><ol class="orderedlist" type="1"><li class="listitem"><p class="simpara">
+For every directory - <code class="literal">&lt;global-patch-dir&gt;</code> - that exists in
+  <code class="literal">BR2_GLOBAL_PATCH_DIR</code>, a <code class="literal">&lt;package-patch-dir&gt;</code> will be determined as
+  follows:
+</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+<code class="literal">&lt;global-patch-dir&gt;/&lt;packagename&gt;/&lt;packageversion&gt;/</code> if the
+  directory exists.
+</li><li class="listitem">
+Otherwise, <code class="literal">&lt;global-patch-dir&gt;/&lt;packagename&gt;</code> if the directory
+  exists.
+</li></ul></div></li><li class="listitem"><p class="simpara">
+Patches will then be applied from a <code class="literal">&lt;package-patch-dir&gt;</code> as
+  follows:
+</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+If a <code class="literal">series</code> file exists in the package directory, then patches are
+  applied according to the <code class="literal">series</code> file;
+</li><li class="listitem">
+Otherwise, patch files matching <code class="literal">*.patch</code> are applied in
+  alphabetical order.  So, to ensure they are applied in the right
+  order, it is highly recommended to name the patch files like this:
+  <code class="literal">&lt;number&gt;-&lt;description&gt;.patch</code>, where <code class="literal">&lt;number&gt;</code> refers to the
+  <span class="emphasis"><em>apply order</em></span>.
+</li></ul></div></li></ol></div><p>For information about how patches are applied for a package, see
+<a class="xref" href="#patch-apply-order" title="18.2. How patches are applied">Section 18.2, “How patches are applied”</a></p><p>The <code class="literal">BR2_GLOBAL_PATCH_DIR</code> option is the preferred method for
+specifying a custom patch directory for packages. It can be used to
+specify a patch directory for any package in buildroot. It should also
+be used in place of the custom patch directory options that are
+available for packages such as U-Boot and Barebox. By doing this, it
+will allow a user to manage their patches from one top-level
+directory.</p><p>The exception to <code class="literal">BR2_GLOBAL_PATCH_DIR</code> being the preferred method for
+specifying custom patches is <code class="literal">BR2_LINUX_KERNEL_PATCH</code>.
+<code class="literal">BR2_LINUX_KERNEL_PATCH</code> should be used to specify kernel patches that
+are available at an URL. <span class="strong"><strong>Note:</strong></span> <code class="literal">BR2_LINUX_KERNEL_PATCH</code> specifies kernel
+patches that are applied after patches available in <code class="literal">BR2_GLOBAL_PATCH_DIR</code>,
+as it is done from a post-patch hook of the Linux package.</p></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="customize-packages"></a>9.9. Adding project-specific packages</h2></div></div></div><p>In general, any new package should be added directly in the <code class="literal">package</code>
+directory and submitted to the Buildroot upstream project. How to add
+packages to Buildroot in general is explained in full detail in
+<a class="xref" href="#adding-packages" title="Chapter 17. Adding new packages to Buildroot">Chapter 17, <em>Adding new packages to Buildroot</em></a> and will not be repeated here. However, your
+project may need some proprietary packages that cannot be upstreamed.
+This section will explain how you can keep such project-specific
+packages in a project-specific directory.</p><p>As shown in <a class="xref" href="#customize-dir-structure" title="9.1. Recommended directory structure">Section 9.1, “Recommended directory structure”</a>, the recommended location for
+project-specific packages is <code class="literal">package/&lt;company&gt;/</code>. If you are using the
+<code class="literal">BR2_EXTERNAL</code> feature (see <a class="xref" href="#outside-br-custom" title="9.2. Keeping customizations outside of Buildroot">Section 9.2, “Keeping customizations outside of Buildroot”</a>) the recommended
+location is <code class="literal">$(BR2_EXTERNAL)/package/</code>.</p><p>However, Buildroot will not be aware of the packages in this location,
+unless we perform some additional steps. As explained in
+<a class="xref" href="#adding-packages" title="Chapter 17. Adding new packages to Buildroot">Chapter 17, <em>Adding new packages to Buildroot</em></a>, a package in Buildroot basically consists of two
+files: a <code class="literal">.mk</code> file (describing how to build the package) and a
+<code class="literal">Config.in</code> file (describing the configuration options for this
+package).</p><p>Buildroot will automatically include the <code class="literal">.mk</code> files in first-level
+subdirectories of the <code class="literal">package</code> directory (using the pattern
+<code class="literal">package/*/*.mk</code>). If we want Buildroot to include <code class="literal">.mk</code> files from
+deeper subdirectories (like <code class="literal">package/&lt;company&gt;/package1/</code>) then we
+simply have to add a <code class="literal">.mk</code> file in a first-level subdirectory that
+includes these additional <code class="literal">.mk</code> files. Therefore, create a file
+<code class="literal">package/&lt;company&gt;/&lt;company&gt;.mk</code> with following contents (assuming you
+have only one extra directory level below <code class="literal">package/&lt;company&gt;/</code>):</p><pre class="screen">include $(sort $(wildcard package/&lt;company&gt;/*/*.mk))</pre><p>If you are using <code class="literal">BR2_EXTERNAL</code>, create a file
+<code class="literal">$(BR2_EXTERNAL)/external.mk</code> with following contents (again assuming only
+one extra level):</p><pre class="screen">include $(sort $(wildcard $(BR2_EXTERNAL)/package/*/*.mk))</pre><p>For the <code class="literal">Config.in</code> files, create a file <code class="literal">package/&lt;company&gt;/Config.in</code>
+that includes the <code class="literal">Config.in</code> files of all your packages. An exhaustive
+list has to be provided since wildcards are not supported in the source command of kconfig.
+For example:</p><pre class="screen">source "package/&lt;company&gt;/package1/Config.in"
+source "package/&lt;company&gt;/package2/Config.in"</pre><p>Include this new file <code class="literal">package/&lt;company&gt;/Config.in</code> from
+<code class="literal">package/Config.in</code>, preferably in a company-specific menu to make
+merges with future Buildroot versions easier.</p><p>If you are using <code class="literal">BR2_EXTERNAL</code>, create a file
+<code class="literal">$(BR2_EXTERNAL)/Config.in</code> with similar contents:</p><pre class="screen">source "$BR2_EXTERNAL/package/package1/Config.in"
+source "$BR2_EXTERNAL/package/package2/Config.in"</pre><p>You do not have to add an include for this <code class="literal">$(BR2_EXTERNAL)/Config.in</code>
+file as it is included automatically.</p></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_quick_guide_to_storing_your_project_specific_customizations"></a>9.10. Quick guide to storing your project-specific customizations</h2></div></div></div><p>Earlier in this chapter, the different methods for making
+project-specific customizations have been described. This section will
+now summarize all this by providing step-by-step instructions to storing your
+project-specific customizations. Clearly, the steps that are not relevant to
+your project can be skipped.</p><div class="orderedlist"><ol class="orderedlist" type="1"><li class="listitem">
+<code class="literal">make menuconfig</code> to configure toolchain, packages and kernel.
+</li><li class="listitem">
+<code class="literal">make linux-menuconfig</code> to update the kernel config, similar for
+   other configuration like busybox, uclibc, …
+</li><li class="listitem">
+<code class="literal">mkdir -p board/&lt;manufacturer&gt;/&lt;boardname&gt;</code>
+</li><li class="listitem"><p class="simpara">
+Set the following options to <code class="literal">board/&lt;manufacturer&gt;/&lt;boardname&gt;/&lt;package&gt;.config</code>
+   (as far as they are relevant):
+</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+<code class="literal">BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE</code>
+</li><li class="listitem">
+<code class="literal">BR2_PACKAGE_BUSYBOX_CONFIG</code>
+</li><li class="listitem">
+<code class="literal">BR2_UCLIBC_CONFIG</code>
+</li><li class="listitem">
+<code class="literal">BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_CONFIG_FILE</code>
+</li><li class="listitem">
+<code class="literal">BR2_TARGET_BAREBOX_CUSTOM_CONFIG_FILE</code>
+</li></ul></div></li><li class="listitem"><p class="simpara">
+Write the configuration files:
+</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+<code class="literal">make linux-update-defconfig</code>
+</li><li class="listitem">
+<code class="literal">make busybox-update-config</code>
+</li><li class="listitem">
+<code class="literal">make uclibc-update-config</code>
+</li><li class="listitem">
+<code class="literal">cp &lt;output&gt;/build/at91bootstrap3-*/.config
+     board/&lt;manufacturer&gt;/&lt;boardname&gt;/at91bootstrap3.config</code>
+</li><li class="listitem">
+<code class="literal">make barebox-update-defconfig</code>
+</li></ul></div></li><li class="listitem">
+Create <code class="literal">board/&lt;manufacturer&gt;/&lt;boardname&gt;/rootfs-overlay/</code> and fill it
+   with additional files you need on your rootfs, e.g.
+   <code class="literal">board/&lt;manufacturer&gt;/&lt;boardname&gt;/rootfs-overlay/etc/inittab</code>.
+   Set <code class="literal">BR2_ROOTFS_OVERLAY</code>
+   to <code class="literal">board/&lt;manufacturer&gt;/&lt;boardname&gt;/rootfs-overlay</code>.
+</li><li class="listitem">
+Create a post-build script
+   <code class="literal">board/&lt;manufacturer&gt;/&lt;boardname&gt;/post_build.sh</code>. Set
+   <code class="literal">BR2_ROOTFS_POST_BUILD_SCRIPT</code> to
+   <code class="literal">board/&lt;manufacturer&gt;/&lt;boardname&gt;/post_build.sh</code>
+</li><li class="listitem">
+If additional setuid permissions have to be set or device nodes have
+   to be created, create <code class="literal">board/&lt;manufacturer&gt;/&lt;boardname&gt;/device_table.txt</code>
+   and add that path to <code class="literal">BR2_ROOTFS_DEVICE_TABLE</code>.
+</li><li class="listitem">
+If additional user accounts have to be created, create
+   <code class="literal">board/&lt;manufacturer&gt;/&lt;boardname&gt;/users_table.txt</code> and add that path
+   to <code class="literal">BR2_ROOTFS_USERS_TABLES</code>.
+</li><li class="listitem">
+To add custom patches to certain packages, set <code class="literal">BR2_GLOBAL_PATCH_DIR</code>
+   to <code class="literal">board/&lt;manufacturer&gt;/&lt;boardname&gt;/patches/</code> and add your patches
+   for each package in a subdirectory named after the package. Each
+   patch should be called <code class="literal">&lt;packagename&gt;-&lt;num&gt;-&lt;description&gt;.patch</code>.
+</li><li class="listitem">
+Specifically for the Linux kernel, there also exists the option
+   <code class="literal">BR2_LINUX_KERNEL_PATCH</code> with as main advantage that it can also
+   download patches from a URL. If you do not need this,
+   <code class="literal">BR2_GLOBAL_PATCH_DIR</code> is preferred. U-Boot, Barebox, at91bootstrap
+   and at91bootstrap3 also have separate options, but these do not
+   provide any advantage over <code class="literal">BR2_GLOBAL_PATCH_DIR</code> and will likely be
+   removed in the future.
+</li><li class="listitem">
+If you need to add project-specific packages, create
+   <code class="literal">package/&lt;manufacturer&gt;/</code> and place your packages in that
+   directory. Create an overall <code class="literal">&lt;manufacturer&gt;.mk</code> file that
+   includes the <code class="literal">.mk</code> files of all your packages. Create an overall
+   <code class="literal">Config.in</code> file that sources the <code class="literal">Config.in</code> files of all your
+   packages. Include this <code class="literal">Config.in</code> file from Buildroot’s
+   <code class="literal">package/Config.in</code> file.
+</li><li class="listitem">
+<code class="literal">make savedefconfig</code> to save the buildroot configuration.
+</li><li class="listitem">
+<code class="literal">cp defconfig configs/&lt;boardname&gt;_defconfig</code>
+</li></ol></div></div></div><div class="chapter"><div class="titlepage"><div><div><h2 class="title"><a id="_frequently_asked_questions_amp_troubleshooting"></a>Chapter 10. Frequently Asked Questions &amp; Troubleshooting</h2></div></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="faq-boot-hang-after-starting"></a>10.1. The boot hangs after <span class="emphasis"><em>Starting network…</em></span></h2></div></div></div><p>If the boot process seems to hang after the following messages
+(messages not necessarily exactly similar, depending on the list of
+packages selected):</p><pre class="screen">Freeing init memory: 3972K
+Initializing random number generator... done.
+Starting network...
+Starting dropbear sshd: generating rsa key... generating dsa key... OK</pre><p>then it means that your system is running, but didn’t start a shell on
+the serial console. In order to have the system start a shell on your
+serial console, you have to go into the Buildroot configuration, in
+<code class="literal">System configuration</code>, modify <code class="literal">Run a getty (login prompt) after boot</code>
+and set the appropriate port and baud rate in the <code class="literal">getty options</code>
+submenu. This will automatically tune the <code class="literal">/etc/inittab</code> file of the
+generated system so that a shell starts on the correct serial port.</p></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="faq-no-compiler-on-target"></a>10.2. Why is there no compiler on the target?</h2></div></div></div><p>It has been decided that support for the <span class="emphasis"><em>native compiler on the
+target</em></span> would be stopped from the Buildroot-2012.11 release because:</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+this feature was neither maintained nor tested, and often broken;
+</li><li class="listitem">
+this feature was only available for Buildroot toolchains;
+</li><li class="listitem">
+Buildroot mostly targets <span class="emphasis"><em>small</em></span> or <span class="emphasis"><em>very small</em></span> target hardware
+  with limited resource onboard (CPU, ram, mass-storage), for which
+  compiling on the target does not make much sense;
+</li><li class="listitem">
+Buildroot aims at easing the cross-compilation, making native
+  compilation on the target unnecessary.
+</li></ul></div><p>If you need a compiler on your target anyway, then Buildroot is not
+suitable for your purpose. In such case, you need a <span class="emphasis"><em>real
+distribution</em></span> and you should opt for something like:</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+<a class="ulink" href="http://www.openembedded.org" target="_top">openembedded</a>
+</li><li class="listitem">
+<a class="ulink" href="https://www.yoctoproject.org" target="_top">yocto</a>
+</li><li class="listitem">
+<a class="ulink" href="http://www.emdebian.org" target="_top">emdebian</a>
+</li><li class="listitem">
+<a class="ulink" href="https://fedoraproject.org/wiki/Architectures" target="_top">Fedora</a>
+</li><li class="listitem">
+<a class="ulink" href="http://en.opensuse.org/Portal:ARM" target="_top">openSUSE ARM</a>
+</li><li class="listitem">
+<a class="ulink" href="http://archlinuxarm.org" target="_top">Arch Linux ARM</a>
+</li><li class="listitem">
+…
+</li></ul></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="faq-no-dev-files-on-target"></a>10.3. Why are there no development files on the target?</h2></div></div></div><p>Since there is no compiler available on the target (see
+<a class="xref" href="#faq-no-compiler-on-target" title="10.2. Why is there no compiler on the target?">Section 10.2, “Why is there no compiler on the target?”</a>), it does not make sense to waste
+space with headers or static libraries.</p><p>Therefore, those files are always removed from the target since the
+Buildroot-2012.11 release.</p></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="faq-no-doc-on-target"></a>10.4. Why is there no documentation on the target?</h2></div></div></div><p>Because Buildroot mostly targets <span class="emphasis"><em>small</em></span> or <span class="emphasis"><em>very small</em></span> target
+hardware with limited resource onboard (CPU, ram, mass-storage), it
+does not make sense to waste space with the documentation data.</p><p>If you need documentation data on your target anyway, then Buildroot
+is not suitable for your purpose, and you should look for a <span class="emphasis"><em>real
+distribution</em></span> (see: <a class="xref" href="#faq-no-compiler-on-target" title="10.2. Why is there no compiler on the target?">Section 10.2, “Why is there no compiler on the target?”</a>).</p></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="faq-why-not-visible-package"></a>10.5. Why are some packages not visible in the Buildroot config menu?</h2></div></div></div><p>If a package exists in the Buildroot tree and does not appear in the
+config menu, this most likely means that some of the package’s
+dependencies are not met.</p><p>To know more about the dependencies of a package, search for the
+package symbol in the config menu (see <a class="xref" href="#make-tips" title="8.1. make tips">Section 8.1, “<span class="emphasis"><em>make</em></span> tips”</a>).</p><p>Then, you may have to recursively enable several options (which
+correspond to the unmet dependencies) to finally be able to select
+the package.</p><p>If the package is not visible due to some unmet toolchain options,
+then you should certainly run a full rebuild (see <a class="xref" href="#make-tips" title="8.1. make tips">Section 8.1, “<span class="emphasis"><em>make</em></span> tips”</a> for
+more explanations).</p></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="faq-why-not-use-target-as-chroot"></a>10.6. Why not use the target directory as a chroot directory?</h2></div></div></div><p>There are plenty of reasons to <span class="strong"><strong>not</strong></span> use the target directory a chroot
+one, among these:</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+file ownerships, modes and permissions are not correctly set in the
+  target directory;
+</li><li class="listitem">
+device nodes are not created in the target directory.
+</li></ul></div><p>For these reasons, commands run through chroot, using the target
+directory as the new root, will most likely fail.</p><p>If you want to run the target filesystem inside a chroot, or as an NFS
+root, then use the tarball image generated in <code class="literal">images/</code> and extract it
+as root.</p></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="faq-no-binary-packages"></a>10.7. Why doesn’t Buildroot generate binary packages (.deb, .ipkg…)?</h2></div></div></div><p>One feature that is often discussed on the Buildroot list is the
+general topic of "package management". To summarize, the idea
+would be to add some tracking of which Buildroot package installs
+what files, with the goals of:</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+being able to remove files installed by a package when this package
+   gets unselected from the menuconfig;
+</li><li class="listitem">
+being able to generate binary packages (ipk or other format) that
+   can be installed on the target without re-generating a new root
+   filesystem image.
+</li></ul></div><p>In general, most people think it is easy to do: just track which package
+installed what and remove it when the package is unselected. However, it
+is much more complicated than that:</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+It is not only about the <code class="literal">target/</code> directory, but also the sysroot in
+   <code class="literal">host/usr/&lt;tuple&gt;/sysroot</code> and the <code class="literal">host/</code> directory itself. All files
+   installed in those directories by various packages must be tracked.
+</li><li class="listitem">
+When a package is unselected from the configuration, it is not
+   sufficient to remove just the files it installed. One must also
+   remove all its reverse dependencies (i.e. packages relying on it)
+   and rebuild all those packages. For example, package A depends
+   optionally on the OpenSSL library. Both are selected, and Buildroot
+   is built. Package A is built with crypto support using OpenSSL.
+   Later on, OpenSSL gets unselected from the configuration, but
+   package A remains (since OpenSSL is an optional dependency, this
+   is possible.) If only OpenSSL files are removed, then the files
+   installed by package A are broken: they use a library that is no
+   longer present on the target. Although this is technically doable,
+   it adds a lot of complexity to Buildroot, which goes against the
+   simplicity we try to stick to.
+</li><li class="listitem">
+In addition to the previous problem, there is the case where the
+   optional dependency is not even known to Buildroot. For example,
+   package A in version 1.0 never used OpenSSL, but in version 2.0 it
+   automatically uses OpenSSL if available. If the Buildroot .mk file
+   hasn’t been updated to take this into account, then package A will
+   not be part of the reverse dependencies of OpenSSL and will not be
+   removed and rebuilt when OpenSSL is removed. For sure, the .mk file
+   of package A should be fixed to mention this optional dependency,
+   but in the mean time, you can have non-reproducible behaviors.
+</li><li class="listitem">
+The request is to also allow changes in the menuconfig to be
+   applied on the output directory without having to rebuild
+   everything from scratch. However, this is very difficult to achieve
+   in a reliable way: what happens when the suboptions of a package
+   are changed (we would have to detect this, and rebuild the package
+   from scratch and potentially all its reverse dependencies), what
+   happens if toolchain options are changed, etc. At the moment, what
+   Buildroot does is clear and simple so its behaviour is very
+   reliable and it is easy to support users. If configuration changes
+   done in menuconfig are applied after the next make, then it has to
+   work correctly and properly in all situations, and not have some
+   bizarre corner cases. The risk is to get bug reports like "I have
+   enabled package A, B and C, then ran make, then disabled package
+   C and enabled package D and ran make, then re-enabled package C
+   and enabled package E and then there is a build failure". Or worse
+   "I did some configuration, then built, then did some changes,
+   built, some more changes, built, some more changes, built, and now
+   it fails, but I don’t remember all the changes I did and in which
+   order". This will be impossible to support.
+</li></ul></div><p>For all these reasons, the conclusion is that adding tracking of
+installed files to remove them when the package is unselected, or to
+generate a repository of binary packages, is something that is very
+hard to achieve reliably and will add a lot of complexity.</p><p>On this matter, the Buildroot developers make this position statement:</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+Buildroot strives to make it easy to generate a root filesystem (hence
+   the name, by the way.) That is what we want to make Buildroot good at:
+   building root filesystems.
+</li><li class="listitem">
+Buildroot is not meant to be a distribution (or rather, a distribution
+   generator.) It is the opinion of most Buildroot developers that this
+   is not a goal we should pursue. We believe that there are other tools
+   better suited to generate a distro than Buildroot is. For example,
+   <a class="ulink" href="http://openembedded.org/" target="_top">Open Embedded</a>, or <a class="ulink" href="https://openwrt.org/" target="_top">openWRT</a>,
+   are such tools.
+</li><li class="listitem">
+We prefer to push Buildroot in a direction that makes it easy (or even
+   easier) to generate complete root filesystems. This is what makes
+   Buildroot stands out in the crowd (among other things, of course!)
+</li><li class="listitem">
+We believe that for most embedded Linux systems, binary packages are
+   not necessary, and potentially harmful. When binary packages are
+   used, it means that the system can be partially upgraded, which
+   creates an enormous number of possible combinations of package
+   versions that should be tested before doing the upgrade on the
+   embedded device. On the other hand, by doing complete system
+   upgrades by upgrading the entire root filesystem image at once,
+   the image deployed to the embedded system is guaranteed to really
+   be the one that has been tested and validated.
+</li></ul></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="faq-speeding-up-build"></a>10.8. How to speed-up the build process?</h2></div></div></div><p>Since Buildroot often involves doing full rebuilds of the entire
+system that can be quite long, we provide below a number of tips to
+help reduce the build time:</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+Use a pre-built external toolchain instead of the default Buildroot
+   internal toolchain. By using a pre-built Linaro toolchain (on ARM)
+   or a Sourcery CodeBench toolchain (for ARM, x86, x86-64, MIPS,
+   etc.), you will save the build time of the toolchain at each
+   complete rebuild, approximately 15 to 20 minutes. Note that
+   temporarily using an external toolchain does not prevent you to
+   switch back to an internal toolchain (that may provide a higher
+   level of customization) once the rest of your system is working;
+</li><li class="listitem">
+Use the <code class="literal">ccache</code> compiler cache (see: <a class="xref" href="#ccache" title="8.11.3. Using ccache in Buildroot">Section 8.11.3, “Using <code class="literal">ccache</code> in Buildroot”</a>);
+</li><li class="listitem">
+Learn about rebuilding only the few packages you actually care
+   about (see <a class="xref" href="#rebuild-pkg" title="8.3. Understanding how to rebuild packages">Section 8.3, “Understanding how to rebuild packages”</a>), but beware that sometimes full
+   rebuilds are anyway necessary (see <a class="xref" href="#full-rebuild" title="8.2. Understanding when a full rebuild is necessary">Section 8.2, “Understanding when a full rebuild is necessary”</a>);
+</li><li class="listitem">
+Make sure you are not using a virtual machine for the Linux system
+   used to run Buildroot. Most of the virtual machine technologies are
+   known to cause a significant performance impact on I/O, which is
+   really important for building source code;
+</li><li class="listitem">
+Make sure that you’re using only local files: do not attempt to do
+   a build over NFS, which significantly slows down the build. Having
+   the Buildroot download folder available locally also helps a bit.
+</li><li class="listitem">
+Buy new hardware. SSDs and lots of RAM are key to speeding up the
+   builds.
+</li></ul></div></div></div><div class="chapter"><div class="titlepage"><div><div><h2 class="title"><a id="_known_issues"></a>Chapter 11. Known issues</h2></div></div></div><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+It is not possible to pass extra linker options via <code class="literal">BR2_TARGET_LDFLAGS</code>
+  if such options contain a <code class="literal">$</code> sign. For example, the following is known
+  to break: <code class="literal">BR2_TARGET_LDFLAGS="-Wl,-rpath='$ORIGIN/../lib'"</code>
+</li><li class="listitem">
+The <code class="literal">ltp-testsuite</code> package does not build with the default uClibc
+  configuration used by the Buildroot toolchain backend. The LTP
+  testsuite uses several functions that are considered obsolete, such
+  as sigset() and others. uClibc configuration options such as
+  DO_XSI_MATH, UCLIBC_HAS_OBSOLETE_BSD_SIGNAL and
+  UCLIBC_SV4_DEPRECATED are needed if one wants to build the
+  <code class="literal">ltp-testsuite</code> package with uClibc. You need to either use a glibc
+  or eglibc based toolchain, or enable the appropriate options in the
+  uClibc configuration.
+</li><li class="listitem">
+The <code class="literal">xfsprogs</code> package does not build with the default uClibc
+  configuration used by the Buildroot toolchain backend. You need to
+  either use a glibc or eglibc based toolchain, or enable the
+  appropriate options in the uClibc configuration.
+</li><li class="listitem">
+The <code class="literal">mrouted</code> package does not build with the default uClibc
+  configuration used by the Buildroot toolchain backend. You need to
+  either use a glibc or eglibc based toolchain, or enable the
+  appropriate options in the uClibc configuration.
+</li><li class="listitem">
+The <code class="literal">libffi</code> package is not supported on the SuperH 2 and ARC
+  architectures.
+</li><li class="listitem">
+The <code class="literal">prboom</code> package triggers a compiler failure with the SuperH 4
+  compiler from Sourcery CodeBench, version 2012.09.
+</li></ul></div></div><div class="chapter"><div class="titlepage"><div><div><h2 class="title"><a id="legal-info"></a>Chapter 12. Legal notice and licensing</h2></div></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_complying_with_open_source_licenses"></a>12.1. Complying with open source licenses</h2></div></div></div><p>All of the end products of Buildroot (toolchain, root filesystem, kernel,
+bootloaders) contain open source software, released under various licenses.</p><p>Using open source software gives you the freedom to build rich embedded
+systems, choosing from a wide range of packages, but also imposes some
+obligations that you must know and honour.
+Some licenses require you to publish the license text in the documentation of
+your product. Others require you to redistribute the source code of the
+software to those that receive your product.</p><p>The exact requirements of each license are documented in each package, and
+it is your responsibility (or that of your legal office) to comply with those
+requirements.
+To make this easier for you, Buildroot can collect for you some material you
+will probably need. To produce this material, after you have configured
+Buildroot with <code class="literal">make menuconfig</code>, <code class="literal">make xconfig</code> or <code class="literal">make gconfig</code>, run:</p><pre class="screen">make legal-info</pre><p>Buildroot will collect legally-relevant material in your output directory,
+under the <code class="literal">legal-info/</code> subdirectory.
+There you will find:</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+A <code class="literal">README</code> file, that summarizes the produced material and contains warnings
+  about material that Buildroot could not produce.
+</li><li class="listitem">
+<code class="literal">buildroot.config</code>: this is the Buildroot configuration file that is usually
+  produced with <code class="literal">make menuconfig</code>, and which is necessary to reproduce the
+  build.
+</li><li class="listitem">
+The source code for all packages; this is saved in the <code class="literal">sources/</code> and
+  <code class="literal">host-sources/</code> subdirectories for target and host packages respectively.
+  The source code for packages that set <code class="literal">&lt;PKG&gt;_REDISTRIBUTE = NO</code> will not be
+  saved.
+  Patches applied to some packages by Buildroot are distributed with the
+  Buildroot sources and are not duplicated in the <code class="literal">sources/</code> and <code class="literal">host-sources/</code>
+  subdirectories.
+</li><li class="listitem">
+A manifest file (one for host and one for target packages) listing the
+  configured packages, their version, license and related information.
+  Some of this information might not be defined in Buildroot; such items are
+  marked as "unknown".
+</li><li class="listitem">
+The license texts of all packages, in the <code class="literal">licenses/</code> and <code class="literal">host-licenses/</code>
+  subdirectories for target and host packages respectively.
+  If the license file(s) are not defined in Buildroot, the file is not produced
+  and a warning in the <code class="literal">README</code> indicates this.
+</li></ul></div><p>Please note that the aim of the <code class="literal">legal-info</code> feature of Buildroot is to
+produce all the material that is somehow relevant for legal compliance with the
+package licenses. Buildroot does not try to produce the exact material that
+you must somehow make public. Certainly, more material is produced than is
+needed for a strict legal compliance. For example, it produces the source code
+for packages released under BSD-like licenses, that you are not required to
+redistribute in source form.</p><p>Moreover, due to technical limitations, Buildroot does not produce some
+material that you will or may need, such as the toolchain source code and the
+Buildroot source code itself (including patches to packages for which source
+distribution is required).
+When you run <code class="literal">make legal-info</code>, Buildroot produces warnings in the <code class="literal">README</code>
+file to inform you of relevant material that could not be saved.</p></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="legal-info-list-licenses"></a>12.2. License abbreviations</h2></div></div></div><p>Here is a list of the licenses that are most widely used by packages in
+Buildroot, with the name used in the manifest files:</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+<code class="literal">GPLv2</code>:
+  <a class="ulink" href="http://www.gnu.org/licenses/old-licenses/gpl-2.0.html" target="_top">
+  GNU General Public License, version 2</a>;
+</li><li class="listitem">
+<code class="literal">GPLv2+</code>:
+  <a class="ulink" href="http://www.gnu.org/licenses/old-licenses/gpl-2.0.html" target="_top">
+  GNU General Public License, version 2</a>
+  or (at your option) any later version;
+</li><li class="listitem">
+<code class="literal">GPLv3</code>:
+  <a class="ulink" href="http://www.gnu.org/licenses/gpl.html" target="_top">
+  GNU General Public License, version 3</a>;
+</li><li class="listitem">
+<code class="literal">GPLv3+</code>:
+  <a class="ulink" href="http://www.gnu.org/licenses/gpl.html" target="_top">
+  GNU General Public License, version 3</a>
+  or (at your option) any later version;
+</li><li class="listitem">
+<code class="literal">GPL</code>:
+  <a class="ulink" href="http://www.gnu.org/licenses/gpl.html" target="_top">
+  GNU General Public License</a> (any version);
+</li><li class="listitem">
+<code class="literal">LGPLv2</code>:
+  <a class="ulink" href="http://www.gnu.org/licenses/old-licenses/lgpl-2.0.html" target="_top">
+  GNU Library General Public License, version 2</a>;
+</li><li class="listitem">
+<code class="literal">LGPLv2+</code>:
+  <a class="ulink" href="http://www.gnu.org/licenses/old-licenses/lgpl-2.0.html" target="_top">
+  GNU Library General Public License, version 2</a>
+  or (at your option) any later version;
+</li><li class="listitem">
+<code class="literal">LGPLv2.1</code>:
+  <a class="ulink" href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html" target="_top">
+  GNU Lesser General Public License, version 2.1</a>;
+</li><li class="listitem">
+<code class="literal">LGPLv2.1+</code>:
+  <a class="ulink" href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html" target="_top">
+  GNU Lesser General Public License, version 2.1</a>
+  or (at your option) any later version;
+</li><li class="listitem">
+<code class="literal">LGPLv3</code>:
+  <a class="ulink" href="http://www.gnu.org/licenses/lgpl.html" target="_top">
+  GNU Lesser General Public License, version 3</a>;
+</li><li class="listitem">
+<code class="literal">LGPLv3+</code>:
+  <a class="ulink" href="http://www.gnu.org/licenses/lgpl.html" target="_top">
+  GNU Lesser General Public License, version 3</a>
+  or (at your option) any later version;
+</li><li class="listitem">
+<code class="literal">LGPL</code>:
+  <a class="ulink" href="http://www.gnu.org/licenses/lgpl.html" target="_top">
+  GNU Lesser General Public License</a> (any version);
+</li><li class="listitem">
+<code class="literal">BSD-4c</code>:
+  <a class="ulink" href="http://directory.fsf.org/wiki/License:BSD_4Clause" target="_top">
+  Original BSD 4-clause license</a>;
+</li><li class="listitem">
+<code class="literal">BSD-3c</code>:
+  <a class="ulink" href="http://opensource.org/licenses/BSD-3-Clause" target="_top">
+  BSD 3-clause license</a>;
+</li><li class="listitem">
+<code class="literal">BSD-2c</code>:
+  <a class="ulink" href="http://opensource.org/licenses/BSD-2-Clause" target="_top">
+  BSD 2-clause license</a>;
+</li><li class="listitem">
+<code class="literal">MIT</code>:
+  <a class="ulink" href="http://opensource.org/licenses/mit-license.html" target="_top">
+  MIT-style license</a>;
+</li><li class="listitem">
+<code class="literal">Apache-2.0</code>:
+  <a class="ulink" href="http://apache.org/licenses/LICENSE-2.0.html" target="_top">
+  Apache License, version 2.0</a>;
+</li></ul></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_complying_with_the_buildroot_license"></a>12.3. Complying with the Buildroot license</h2></div></div></div><p>Buildroot itself is an open source software, released under the
+<a class="ulink" href="http://www.gnu.org/licenses/old-licenses/gpl-2.0.html" target="_top">GNU General Public
+License, version 2</a> or (at your option) any later version.
+However, being a build system, it is not normally part of the end product:
+if you develop the root filesystem, kernel, bootloader or toolchain for a
+device, the code of Buildroot is only present on the development machine, not
+in the device storage.</p><p>Nevertheless, the general view of the Buildroot developers is that you should
+release the Buildroot source code along with the source code of other packages
+when releasing a product that contains GPL-licensed software.
+This is because the
+<a class="ulink" href="http://www.gnu.org/licenses/old-licenses/gpl-2.0.html" target="_top">GNU GPL</a>
+defines the "<span class="emphasis"><em>complete source code</em></span>" for an executable work as "<span class="emphasis"><em>all the
+source code for all modules it contains, plus any associated interface
+definition files, plus the scripts used to control compilation and installation
+of the executable</em></span>".
+Buildroot is part of the <span class="emphasis"><em>scripts used to control compilation and
+installation of the executable</em></span>, and as such it is considered part of the
+material that must be redistributed.</p><p>Keep in mind that this is only the Buildroot developers' opinion, and you
+should consult your legal department or lawyer in case of any doubt.</p></div></div><div class="chapter"><div class="titlepage"><div><div><h2 class="title"><a id="_beyond_buildroot"></a>Chapter 13. Beyond Buildroot</h2></div></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_boot_the_generated_images"></a>13.1. Boot the generated images</h2></div></div></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="_nfs_boot"></a>13.1.1. NFS boot</h3></div></div></div><p>To achieve NFS-boot, enable <span class="emphasis"><em>tar root filesystem</em></span> in the <span class="emphasis"><em>Filesystem
+images</em></span> menu.</p><p>After a complete build, just run the following commands to setup the
+NFS-root directory:</p><pre class="screen">sudo tar -xavf /path/to/output_dir/rootfs.tar -C /path/to/nfs_root_dir</pre><p>Remember to add this path to <code class="literal">/etc/exports</code>.</p><p>Then, you can execute a NFS-boot from your target.</p></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_chroot"></a>13.2. Chroot</h2></div></div></div><p>If you want to chroot in a generated image, then there are few thing
+you should be aware of:</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+you should setup the new root from the <span class="emphasis"><em>tar root filesystem</em></span> image;
+</li><li class="listitem">
+either the selected target architecture is compatible with your host
+  machine, or you should use some <code class="literal">qemu-*</code> binary and correctly set it
+  within the <code class="literal">binfmt</code> properties to be able to run the binaries built
+  for the target on your host machine;
+</li><li class="listitem">
+Buildroot does not currently provide <code class="literal">host-qemu</code> and <code class="literal">binfmt</code>
+  correctly built and set for that kind of use.
+</li></ul></div></div></div></div><div class="part"><div class="titlepage"><div><div><h1 class="title"><a id="_developer_guide"></a>Part III. Developer guide</h1></div></div></div><div class="chapter"><div class="titlepage"><div><div><h2 class="title"><a id="_how_buildroot_works"></a>Chapter 14. How Buildroot works</h2></div></div></div><p>As mentioned above, Buildroot is basically a set of Makefiles that
+download, configure, and compile software with the correct options. It
+also includes patches for various software packages - mainly the ones
+involved in the cross-compilation toolchain (<code class="literal">gcc</code>, <code class="literal">binutils</code> and
+<code class="literal">uClibc</code>).</p><p>There is basically one Makefile per software package, and they are
+named with the <code class="literal">.mk</code> extension. Makefiles are split into many different
+parts.</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+The <code class="literal">toolchain/</code> directory contains the Makefiles
+  and associated files for all software related to the
+  cross-compilation toolchain: <code class="literal">binutils</code>, <code class="literal">gcc</code>, <code class="literal">gdb</code>,
+  <code class="literal">kernel-headers</code> and <code class="literal">uClibc</code>.
+</li><li class="listitem">
+The <code class="literal">arch/</code> directory contains the definitions for all the processor
+  architectures that are supported by Buildroot.
+</li><li class="listitem">
+The <code class="literal">package/</code> directory contains the Makefiles and
+  associated files for all user-space tools and libraries that Buildroot
+  can compile and add to the target root filesystem. There is one
+  sub-directory per package.
+</li><li class="listitem">
+The <code class="literal">linux/</code> directory contains the Makefiles and associated files for
+  the Linux kernel.
+</li><li class="listitem">
+The <code class="literal">boot/</code> directory contains the Makefiles and associated files for
+  the bootloaders supported by Buildroot.
+</li><li class="listitem">
+The <code class="literal">system/</code> directory contains support for system integration, e.g.
+  the target filesystem skeleton and the selection of an init system.
+</li><li class="listitem">
+The <code class="literal">fs/</code> directory contains the Makefiles and
+  associated files for software related to the generation of the
+  target root filesystem image.
+</li></ul></div><p>Each directory contains at least 2 files:</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+<code class="literal">something.mk</code> is the Makefile that downloads, configures,
+  compiles and installs the package <code class="literal">something</code>.
+</li><li class="listitem">
+<code class="literal">Config.in</code> is a part of the configuration tool
+  description file. It describes the options related to the
+  package.
+</li></ul></div><p>The main Makefile performs the following steps (once the
+configuration is done):</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+Create all the output directories: <code class="literal">staging</code>, <code class="literal">target</code>, <code class="literal">build</code>,
+  etc. in the output directory (<code class="literal">output/</code> by default,
+  another value can be specified using <code class="literal">O=</code>)
+</li><li class="listitem">
+Generate the toolchain target. When an internal toolchain is used, this
+  means generating the cross-compilation toolchain. When an external
+  toolchain is used, this means checking the features of the external
+  toolchain and importing it into the Buildroot environment.
+</li><li class="listitem">
+Generate all the targets listed in the <code class="literal">TARGETS</code> variable. This
+  variable is filled by all the individual components'
+  Makefiles. Generating these targets will trigger the compilation of
+  the userspace packages (libraries, programs), the kernel, the
+  bootloader and the generation of the root filesystem images,
+  depending on the configuration.
+</li></ul></div></div><div class="chapter"><div class="titlepage"><div><div><h2 class="title"><a id="_coding_style"></a>Chapter 15. Coding style</h2></div></div></div><p>Overall, these coding style rules are here to help you to add new files in
+Buildroot or refactor existing ones.</p><p>If you slightly modify some existing file, the important thing is
+to keep the consistency of the whole file, so you can:</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+either follow the potentially deprecated coding style used in this
+file,
+</li><li class="listitem">
+or entirely rework it in order to make it comply with these rules.
+</li></ul></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="writing-rules-config-in"></a>15.1. <code class="literal">Config.in</code> file</h2></div></div></div><p><code class="literal">Config.in</code> files contain entries for almost anything configurable in
+Buildroot.</p><p>An entry has the following pattern:</p><pre class="screen">config BR2_PACKAGE_LIBFOO
+        bool "libfoo"
+        depends on BR2_PACKAGE_LIBBAZ
+        select BR2_PACKAGE_LIBBAR
+        help
+          This is a comment that explains what libfoo is.
+
+          http://foosoftware.org/libfoo/</pre><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+The <code class="literal">bool</code>, <code class="literal">depends on</code>, <code class="literal">select</code> and <code class="literal">help</code> lines are indented
+  with one tab.
+</li><li class="listitem">
+The help text itself should be indented with one tab and two
+  spaces.
+</li></ul></div><p>The <code class="literal">Config.in</code> files are the input for the configuration tool
+used in Buildroot, which is the regular <span class="emphasis"><em>Kconfig</em></span>. For further
+details about the <span class="emphasis"><em>Kconfig</em></span> language, refer to
+<a class="ulink" href="http://kernel.org/doc/Documentation/kbuild/kconfig-language.txt" target="_top">http://kernel.org/doc/Documentation/kbuild/kconfig-language.txt</a>.</p></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="writing-rules-mk"></a>15.2. The <code class="literal">.mk</code> file</h2></div></div></div><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p class="simpara">
+Header: The file starts with a header. It contains the module name,
+preferably in lowercase, enclosed between separators made of 80 hashes. A
+blank line is mandatory after the header:
+</p><pre class="screen">################################################################################
+#
+# libfoo
+#
+################################################################################</pre></li><li class="listitem"><p class="simpara">
+Assignment: use <code class="literal">=</code> preceded and followed by one space:
+</p><pre class="screen">LIBFOO_VERSION = 1.0
+LIBFOO_CONF_OPTS += --without-python-support</pre><p class="simpara">Do not align the <code class="literal">=</code> signs.</p></li><li class="listitem"><p class="simpara">
+Indentation: use tab only:
+</p><pre class="screen">define LIBFOO_REMOVE_DOC
+        $(RM) -fr $(TARGET_DIR)/usr/share/libfoo/doc \
+                $(TARGET_DIR)/usr/share/man/man3/libfoo*
+endef</pre><p class="simpara">Note that commands inside a <code class="literal">define</code> block should always start with a tab,
+so <span class="emphasis"><em>make</em></span> recognizes them as commands.</p></li><li class="listitem"><p class="simpara">
+Optional dependency:
+</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: circle; "><li class="listitem"><p class="simpara">
+Prefer multi-line syntax.
+</p><p class="simpara">YES:</p><pre class="screen">ifeq ($(BR2_PACKAGE_PYTHON),y)
+LIBFOO_CONF_OPTS += --with-python-support
+LIBFOO_DEPENDENCIES += python
+else
+LIBFOO_CONF_OPTS += --without-python-support
+endif</pre><p class="simpara">NO:</p><pre class="screen">LIBFOO_CONF_OPTS += --with$(if $(BR2_PACKAGE_PYTHON),,out)-python-support
+LIBFOO_DEPENDENCIES += $(if $(BR2_PACKAGE_PYTHON),python,)</pre></li><li class="listitem">
+Keep configure options and dependencies close together.
+</li></ul></div></li><li class="listitem"><p class="simpara">
+Optional hooks: keep hook definition and assignment together in one
+  if block.
+</p><p class="simpara">YES:</p><pre class="screen">ifneq ($(BR2_LIBFOO_INSTALL_DATA),y)
+define LIBFOO_REMOVE_DATA
+        $(RM) -fr $(TARGET_DIR)/usr/share/libfoo/data
+endef
+LIBFOO_POST_INSTALL_TARGET_HOOKS += LIBFOO_REMOVE_DATA
+endif</pre><p class="simpara">NO:</p><pre class="screen">define LIBFOO_REMOVE_DATA
+        $(RM) -fr $(TARGET_DIR)/usr/share/libfoo/data
+endef
+
+ifneq ($(BR2_LIBFOO_INSTALL_DATA),y)
+LIBFOO_POST_INSTALL_TARGET_HOOKS += LIBFOO_REMOVE_DATA
+endif</pre></li></ul></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_the_documentation"></a>15.3. The documentation</h2></div></div></div><p>The documentation uses the
+<a class="ulink" href="http://www.methods.co.nz/asciidoc/" target="_top">asciidoc</a> format.</p><p>For further details about the <a class="ulink" href="http://www.methods.co.nz/asciidoc/" target="_top">asciidoc</a>
+syntax, refer to <a class="ulink" href="http://www.methods.co.nz/asciidoc/userguide.html" target="_top">http://www.methods.co.nz/asciidoc/userguide.html</a>.</p></div></div><div class="chapter"><div class="titlepage"><div><div><h2 class="title"><a id="adding-board-support"></a>Chapter 16. Adding support for a particular board</h2></div></div></div><p>Buildroot contains basic configurations for several publicly available
+hardware boards, so that users of such a board can easily build a system
+that is known to work. You are welcome to add support for other boards
+to Buildroot too.</p><p>To do so, you need to create a normal Buildroot configuration that
+builds a basic system for the hardware: toolchain, kernel, bootloader,
+filesystem and a simple BusyBox-only userspace. No specific package
+should be selected: the configuration should be as minimal as
+possible, and should only build a working basic BusyBox system for the
+target platform. You can of course use more complicated configurations
+for your internal projects, but the Buildroot project will only
+integrate basic board configurations. This is because package
+selections are highly application-specific.</p><p>Once you have a known working configuration, run <code class="literal">make
+savedefconfig</code>. This will generate a minimal <code class="literal">defconfig</code> file at the
+root of the Buildroot source tree. Move this file into the <code class="literal">configs/</code>
+directory, and rename it <code class="literal">&lt;boardname&gt;_defconfig</code>.</p><p>It is recommended to use as much as possible upstream versions of the
+Linux kernel and bootloaders, and to use as much as possible default
+kernel and bootloader configurations. If they are incorrect for your
+board, or no default exists, we encourage you to send fixes to the
+corresponding upstream projects.</p><p>However, in the mean time, you may want to store kernel or bootloader
+configuration or patches specific to your target platform. To do so,
+create a directory <code class="literal">board/&lt;manufacturer&gt;</code> and a subdirectory
+<code class="literal">board/&lt;manufacturer&gt;/&lt;boardname&gt;</code>. You can then store your patches
+and configurations in these directories, and reference them from the main
+Buildroot configuration. Refer to <a class="xref" href="#customize" title="Chapter 9. Project-specific customization">Chapter 9, <em>Project-specific customization</em></a> for more details.</p></div><div class="chapter"><div class="titlepage"><div><div><h2 class="title"><a id="adding-packages"></a>Chapter 17. Adding new packages to Buildroot</h2></div></div></div><p>This section covers how new packages (userspace libraries or
+applications) can be integrated into Buildroot. It also shows how
+existing packages are integrated, which is needed for fixing issues or
+tuning their configuration.</p><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_package_directory"></a>17.1. Package directory</h2></div></div></div><p>First of all, create a directory under the <code class="literal">package</code> directory for
+your software, for example <code class="literal">libfoo</code>.</p><p>Some packages have been grouped by topic in a sub-directory:
+<code class="literal">x11r7</code>, <code class="literal">efl</code> and <code class="literal">matchbox</code>. If your package fits in
+one of these categories, then create your package directory in these.
+New subdirectories are discouraged, however.</p></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_config_files"></a>17.2. Config files</h2></div></div></div><p>For the package to be displayed in the configuration tool, you need to
+create a Config file in your package directory. There are two types:
+<code class="literal">Config.in</code> and <code class="literal">Config.in.host</code>.</p><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="_literal_config_in_literal_file"></a>17.2.1. <code class="literal">Config.in</code> file</h3></div></div></div><p>For packages used on the target, create a file named <code class="literal">Config.in</code>. This
+file will contain the option descriptions related to our <code class="literal">libfoo</code> software
+that will be used and displayed in the configuration tool. It should basically
+contain:</p><pre class="screen">config BR2_PACKAGE_LIBFOO
+        bool "libfoo"
+        help
+          This is a comment that explains what libfoo is.
+
+          http://foosoftware.org/libfoo/</pre><p>The <code class="literal">bool</code> line, <code class="literal">help</code> line and other metadata information about the
+configuration option must be indented with one tab. The help text
+itself should be indented with one tab and two spaces, and it must
+mention the upstream URL of the project.</p><p>You can add other sub-options into a <code class="literal">if
+BR2_PACKAGE_LIBFOO…endif</code> statement to configure particular things
+in your software. You can look at examples in other packages. The
+syntax of the <code class="literal">Config.in</code> file is the same as the one for the kernel
+Kconfig file. The documentation for this syntax is available at
+<a class="ulink" href="http://kernel.org/doc/Documentation/kbuild/kconfig-language.txt" target="_top">http://kernel.org/doc/Documentation/kbuild/kconfig-language.txt</a></p><p>Finally you have to add your new <code class="literal">libfoo/Config.in</code> to
+<code class="literal">package/Config.in</code> (or in a category subdirectory if you decided to
+put your package in one of the existing categories). The files
+included there are <span class="emphasis"><em>sorted alphabetically</em></span> per category and are <span class="emphasis"><em>NOT</em></span>
+supposed to contain anything but the <span class="emphasis"><em>bare</em></span> name of the package.</p><pre class="screen">source "package/libfoo/Config.in"</pre></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="_literal_config_in_host_literal_file"></a>17.2.2. <code class="literal">Config.in.host</code> file</h3></div></div></div><p>Some packages also need to be built for the host system. There are two
+options here:</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+The host package is only required to satisfy build-time
+  dependencies of one or more target packages. In this case, add
+  <code class="literal">host-foo</code> to the target package’s <code class="literal">BAR_DEPENDENCIES</code> variable. No
+  <code class="literal">Config.in.host</code> file should be created.
+</li><li class="listitem"><p class="simpara">
+The host package should be explicitly selectable by the user from
+  the configuration menu. In this case, create a <code class="literal">Config.in.host</code> file
+  for that host package:
+</p><pre class="screen">config BR2_PACKAGE_HOST_FOO
+        bool "host foo"
+        help
+          This is a comment that explains what foo for the host is.
+
+          http://foosoftware.org/foo/</pre><p class="simpara">The same coding style and options as for the <code class="literal">Config.in</code> file are valid.</p><p class="simpara">Finally you have to add your new <code class="literal">libfoo/Config.in.host</code> to
+<code class="literal">package/Config.in.host</code>. The files included there are <span class="emphasis"><em>sorted alphabetically</em></span>
+and are <span class="emphasis"><em>NOT</em></span> supposed to contain anything but the <span class="emphasis"><em>bare</em></span> name of the package.</p><pre class="screen">source "package/foo/Config.in.host"</pre><p class="simpara">The host package will then be available from the <code class="literal">Host utilities</code> menu.</p></li></ul></div></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="depends-on-vs-select"></a>17.2.3. Choosing <code class="literal">depends on</code> or <code class="literal">select</code></h3></div></div></div><p>The <code class="literal">Config.in</code> file of your package must also ensure that
+dependencies are enabled. Typically, Buildroot uses the following
+rules:</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+Use a <code class="literal">select</code> type of dependency for dependencies on
+  libraries. These dependencies are generally not obvious and it
+  therefore make sense to have the kconfig system ensure that the
+  dependencies are selected. For example, the <span class="emphasis"><em>libgtk2</em></span> package uses
+  <code class="literal">select BR2_PACKAGE_LIBGLIB2</code> to make sure this library is also
+  enabled.
+  The <code class="literal">select</code> keyword expresses the dependency with a backward
+  semantic.
+</li><li class="listitem">
+Use a <code class="literal">depends on</code> type of dependency when the user really needs to
+  be aware of the dependency. Typically, Buildroot uses this type of
+  dependency for dependencies on target architecture, MMU support and
+  toolchain options (see <a class="xref" href="#dependencies-target-toolchain-options" title="17.2.4. Dependencies on target and toolchain options">Section 17.2.4, “Dependencies on target and toolchain options”</a>),
+  or for dependencies on "big" things, such as the X.org system.
+  The <code class="literal">depends on</code> keyword expresses the dependency with a forward
+  semantic.
+</li></ul></div><p><strong>Note. </strong>The current problem with the <span class="emphasis"><em>kconfig</em></span> language is that these two
+dependency semantics are not internally linked. Therefore, it may be
+possible to select a package, whom one of its dependencies/requirement
+is not met.</p><p>An example illustrates both the usage of <code class="literal">select</code> and <code class="literal">depends on</code>.</p><pre class="screen">config BR2_PACKAGE_RRDTOOL
+        bool "rrdtool"
+        depends on BR2_USE_WCHAR
+        select BR2_PACKAGE_FREETYPE
+        select BR2_PACKAGE_LIBART
+        select BR2_PACKAGE_LIBPNG
+        select BR2_PACKAGE_ZLIB
+        help
+          RRDtool is the OpenSource industry standard, high performance
+          data logging and graphing system for time series data.
+
+          http://oss.oetiker.ch/rrdtool/
+
+comment "rrdtool needs a toolchain w/ wchar"
+        depends on !BR2_USE_WCHAR</pre><p>Note that these two dependency types are only transitive with the
+dependencies of the same kind.</p><p>This means, in the following example:</p><pre class="screen">config BR2_PACKAGE_A
+        bool "Package A"
+
+config BR2_PACKAGE_B
+        bool "Package B"
+        depends on BR2_PACKAGE_A
+
+config BR2_PACKAGE_C
+        bool "Package C"
+        depends on BR2_PACKAGE_B
+
+config BR2_PACKAGE_D
+        bool "Package D"
+        select BR2_PACKAGE_B
+
+config BR2_PACKAGE_E
+        bool "Package E"
+        select BR2_PACKAGE_D</pre><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+Selecting <code class="literal">Package C</code> will be visible if <code class="literal">Package B</code> has been
+  selected, which in turn is only visible if <code class="literal">Package A</code> has been
+  selected.
+</li><li class="listitem">
+Selecting <code class="literal">Package E</code> will select <code class="literal">Package D</code>, which will select
+  <code class="literal">Package B</code>, it will not check for the dependencies of <code class="literal">Package B</code>,
+  so it will not select <code class="literal">Package A</code>.
+</li><li class="listitem">
+Since <code class="literal">Package B</code> is selected but <code class="literal">Package A</code> is not, this violates
+  the dependency of <code class="literal">Package B</code> on <code class="literal">Package A</code>. Therefore, in such a
+  situation, the transitive dependency has to be added explicitly:
+</li></ul></div><pre class="screen">config BR2_PACKAGE_D
+        bool "Package D"
+        select BR2_PACKAGE_B
+        depends on BR2_PACKAGE_A
+
+config BR2_PACKAGE_E
+        bool "Package E"
+        select BR2_PACKAGE_D
+        depends on BR2_PACKAGE_A</pre><p>Overall, for package library dependencies, <code class="literal">select</code> should be
+preferred.</p><p>Note that such dependencies will ensure that the dependency option
+is also enabled, but not necessarily built before your package. To do
+so, the dependency also needs to be expressed in the <code class="literal">.mk</code> file of the
+package.</p><p>Further formatting details: see <a class="link" href="#writing-rules-config-in" title="15.1. Config.in file">the
+coding style</a>
+<a class="xref" href="#writing-rules-config-in" title="15.1. Config.in file">Section 15.1, “<code class="literal">Config.in</code> file”</a>.</p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="dependencies-target-toolchain-options"></a>17.2.4. Dependencies on target and toolchain options</h3></div></div></div><p>Many packages depend on certain options of the toolchain: the choice of
+C library, C++ support, thread support, RPC support, wchar support,
+or dynamic library support. Some packages can only be built on certain
+target architectures, or if an MMU is available in the processor.</p><p>These dependencies have to be expressed with the appropriate <span class="emphasis"><em>depends
+on</em></span> statements in the Config.in file. Additionally, for dependencies on
+toolchain options, a <code class="literal">comment</code> should be displayed when the option is
+not enabled, so that the user knows why the package is not available.
+Dependencies on target architecture or MMU support should not be
+made visible in a comment: since it is unlikely that the user can
+freely choose another target, it makes little sense to show these
+dependencies explicitly.</p><p>The <code class="literal">comment</code> should only be visible if the <code class="literal">config</code> option itself would
+be visible when the toolchain option dependencies are met. This means
+that all other dependencies of the package (including dependencies on
+target architecture and MMU support) have to be repeated on the
+<code class="literal">comment</code> definition. To keep it clear, the <code class="literal">depends on</code> statement for
+these non-toolchain option should be kept separate from the <code class="literal">depends on</code>
+statement for the toolchain options.
+If there is a dependency on a config option in that same file (typically
+the main package) it is preferable to have a global <code class="literal">if … endif</code>
+construct rather than repeating the <code class="literal">depends on</code> statement on the
+comment and other config options.</p><p>The general format of a dependency <code class="literal">comment</code> for package foo is:</p><pre class="screen">foo needs a toolchain w/ featA, featB, featC</pre><p>for example:</p><pre class="screen">mpd needs a toolchain w/ C++, threads, wchar</pre><p>or</p><pre class="screen">crda needs a toolchain w/ threads</pre><p>Note that this text is kept brief on purpose, so that it will fit on a
+80-character terminal.</p><p>The rest of this section enumerates the different target and toolchain
+options, the corresponding config symbols to depend on, and the text to
+use in the comment.</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p class="simpara">
+Target architecture
+</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: circle; "><li class="listitem">
+Dependency symbol: <code class="literal">BR2_powerpc</code>, <code class="literal">BR2_mips</code>, … (see <code class="literal">arch/Config.in</code>)
+</li><li class="listitem">
+Comment string: no comment to be added
+</li></ul></div></li><li class="listitem"><p class="simpara">
+MMU support
+</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: circle; "><li class="listitem">
+Dependency symbol: <code class="literal">BR2_USE_MMU</code>
+</li><li class="listitem">
+Comment string: no comment to be added
+</li></ul></div></li><li class="listitem"><p class="simpara">
+Atomic instructions (whereby the architecture has instructions to
+  perform some operations atomically, like LOCKCMPXCHG on x86)
+</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: circle; "><li class="listitem">
+Dependency symbol: <code class="literal">BR2_ARCH_HAS_ATOMICS</code>
+</li><li class="listitem">
+Comment string: no comment to be added
+</li></ul></div></li><li class="listitem"><p class="simpara">
+Kernel headers
+</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: circle; "><li class="listitem">
+Dependency symbol: <code class="literal">BR2_TOOLCHAIN_HEADERS_AT_LEAST_X_Y</code>, (replace
+   <code class="literal">X_Y</code> with the proper version, see <code class="literal">toolchain/toolchain-common.in</code>)
+</li><li class="listitem">
+Comment string: <code class="literal">headers &gt;= X.Y</code> and/or <code class="literal">headers &lt;= X.Y</code> (replace
+   <code class="literal">X.Y</code> with the proper version)
+</li></ul></div></li><li class="listitem"><p class="simpara">
+C library
+</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: circle; "><li class="listitem">
+Dependency symbol: <code class="literal">BR2_TOOLCHAIN_USES_GLIBC</code>,
+   <code class="literal">BR2_TOOLCHAIN_USES_MUSL</code>, <code class="literal">BR2_TOOLCHAIN_USES_UCLIBC</code>
+</li><li class="listitem">
+Comment string: for the C library, a slightly different comment text
+   is used: <code class="literal">foo needs an (e)glibc toolchain</code>, or <code class="literal">foo needs an (e)glibc
+   toolchain w/ C++</code>
+</li></ul></div></li><li class="listitem"><p class="simpara">
+C++ support
+</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: circle; "><li class="listitem">
+Dependency symbol: <code class="literal">BR2_INSTALL_LIBSTDCPP</code>
+</li><li class="listitem">
+Comment string: <code class="literal">C++</code>
+</li></ul></div></li><li class="listitem"><p class="simpara">
+thread support
+</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: circle; "><li class="listitem">
+Dependency symbol: <code class="literal">BR2_TOOLCHAIN_HAS_THREADS</code>
+</li><li class="listitem">
+Comment string: <code class="literal">threads</code> (unless <code class="literal">BR2_TOOLCHAIN_HAS_THREADS_NPTL</code>
+   is also needed, in which case, specifying only <code class="literal">NPTL</code> is sufficient)
+</li></ul></div></li><li class="listitem"><p class="simpara">
+NPTL thread support
+</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: circle; "><li class="listitem">
+Dependency symbol: <code class="literal">BR2_TOOLCHAIN_HAS_THREADS_NPTL</code>
+</li><li class="listitem">
+Comment string: <code class="literal">NPTL</code>
+</li></ul></div></li><li class="listitem"><p class="simpara">
+RPC support
+</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: circle; "><li class="listitem">
+Dependency symbol: <code class="literal">BR2_TOOLCHAIN_HAS_NATIVE_RPC</code>
+</li><li class="listitem">
+Comment string: <code class="literal">RPC</code>
+</li></ul></div></li><li class="listitem"><p class="simpara">
+wchar support
+</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: circle; "><li class="listitem">
+Dependency symbol: <code class="literal">BR2_USE_WCHAR</code>
+</li><li class="listitem">
+Comment string: <code class="literal">wchar</code>
+</li></ul></div></li><li class="listitem"><p class="simpara">
+dynamic library
+</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: circle; "><li class="listitem">
+Dependency symbol: <code class="literal">!BR2_STATIC_LIBS</code>
+</li><li class="listitem">
+Comment string: <code class="literal">dynamic library</code>
+</li></ul></div></li></ul></div></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="_dependencies_on_a_linux_kernel_built_by_buildroot"></a>17.2.5. Dependencies on a Linux kernel built by buildroot</h3></div></div></div><p>Some packages need a Linux kernel to be built by buildroot. These are
+typically kernel modules or firmware. A comment should be added in the
+Config.in file to express this dependency, similar to dependencies on
+toolchain options. The general format is:</p><pre class="screen">foo needs a Linux kernel to be built</pre><p>If there is a dependency on both toolchain options and the Linux
+kernel, use this format:</p><pre class="screen">foo needs a toolchain w/ featA, featB, featC and a Linux kernel to be built</pre></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="_dependencies_on_udev_dev_management"></a>17.2.6. Dependencies on udev /dev management</h3></div></div></div><p>If a package needs udev /dev management, it should depend on symbol
+<code class="literal">BR2_PACKAGE_HAS_UDEV</code>, and the following comment should be added:</p><pre class="screen">foo needs udev /dev management</pre><p>If there is a dependency on both toolchain options and udev /dev
+management, use this format:</p><pre class="screen">foo needs udev /dev management and a toolchain w/ featA, featB, featC</pre></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="_dependencies_on_features_provided_by_virtual_packages"></a>17.2.7. Dependencies on features provided by virtual packages</h3></div></div></div><p>Some features can be provided by more than one package, such as the
+openGL libraries.</p><p>See <a class="xref" href="#virtual-package-tutorial">Section 17.11, “Infrastructure for virtual packages”</a> for more on the virtual packages.</p><p>See <a class="xref" href="#virtual-package-list" title="Chapter 25. List of virtual packages">Chapter 25, <em>List of virtual packages</em></a> for the symbols to depend on if your package
+depends on a feature provided by a virtual package.</p></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_the_literal_mk_literal_file"></a>17.3. The <code class="literal">.mk</code> file</h2></div></div></div><p><a id="adding-packages-mk"></a>Finally, here’s the hardest part. Create a file named <code class="literal">libfoo.mk</code>. It
+describes how the package should be downloaded, configured, built,
+installed, etc.</p><p>Depending on the package type, the <code class="literal">.mk</code> file must be written in a
+different way, using different infrastructures:</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+<span class="strong"><strong>Makefiles for generic packages</strong></span> (not using autotools or CMake):
+  These are based on an infrastructure similar to the one used for
+  autotools-based packages, but require a little more work from the
+  developer. They specify what should be done for the configuration,
+  compilation and installation of the package. This
+  infrastructure must be used for all packages that do not use the
+  autotools as their build system. In the future, other specialized
+  infrastructures might be written for other build systems. We cover
+  them through in a <a class="link" href="#generic-package-tutorial" title="17.5.1. generic-package tutorial">tutorial</a>
+<a class="xref" href="#generic-package-tutorial" title="17.5.1. generic-package tutorial">Section 17.5.1, “<code class="literal">generic-package</code> tutorial”</a> and a
+  <a class="link" href="#generic-package-reference" title="17.5.2. generic-package reference">reference</a>
+<a class="xref" href="#generic-package-reference" title="17.5.2. generic-package reference">Section 17.5.2, “<code class="literal">generic-package</code> reference”</a>.
+</li><li class="listitem">
+<span class="strong"><strong>Makefiles for autotools-based software</strong></span> (autoconf, automake, etc.):
+  We provide a dedicated infrastructure for such packages, since
+  autotools is a very common build system. This infrastructure <span class="emphasis"><em>must</em></span>
+  be used for new packages that rely on the autotools as their build
+  system. We cover them through a <a class="link" href="#autotools-package-tutorial" title="17.6.1. autotools-package tutorial">tutorial</a>
+<a class="xref" href="#autotools-package-tutorial" title="17.6.1. autotools-package tutorial">Section 17.6.1, “<code class="literal">autotools-package</code> tutorial”</a>
+  and <a class="link" href="#autotools-package-reference" title="17.6.2. autotools-package reference">reference</a>
+<a class="xref" href="#autotools-package-reference" title="17.6.2. autotools-package reference">Section 17.6.2, “<code class="literal">autotools-package</code> reference”</a>.
+</li><li class="listitem">
+<span class="strong"><strong>Makefiles for cmake-based software</strong></span>: We provide a dedicated
+   infrastructure for such packages, as CMake is a more and more
+   commonly used build system and has a standardized behaviour. This
+   infrastructure <span class="emphasis"><em>must</em></span> be used for new packages that rely on
+   CMake. We cover them through a <a class="link" href="#cmake-package-tutorial" title="17.7.1. cmake-package tutorial">tutorial</a>
+<a class="xref" href="#cmake-package-tutorial" title="17.7.1. cmake-package tutorial">Section 17.7.1, “<code class="literal">cmake-package</code> tutorial”</a>
+   and <a class="link" href="#cmake-package-reference" title="17.7.2. cmake-package reference">reference</a>
+<a class="xref" href="#cmake-package-reference" title="17.7.2. cmake-package reference">Section 17.7.2, “<code class="literal">cmake-package</code> reference”</a>.
+</li><li class="listitem">
+<span class="strong"><strong>Makefiles for Python modules</strong></span>: We have a dedicated infrastructure
+   for Python modules that use either the <code class="literal">distutils</code> or the
+   <code class="literal">setuptools</code> mechanism. We cover them through a
+   <a class="link" href="#python-package-tutorial" title="17.8.1. python-package tutorial">tutorial</a>
+<a class="xref" href="#python-package-tutorial" title="17.8.1. python-package tutorial">Section 17.8.1, “<code class="literal">python-package</code> tutorial”</a> and a
+   <a class="link" href="#python-package-reference" title="17.8.2. python-package reference">reference</a>
+<a class="xref" href="#python-package-reference" title="17.8.2. python-package reference">Section 17.8.2, “<code class="literal">python-package</code> reference”</a>.
+</li><li class="listitem">
+<span class="strong"><strong>Makefiles for Lua modules</strong></span>: We have a dedicated infrastructure for
+   Lua modules available through the LuaRocks web site. We cover them
+   through a <a class="link" href="#luarocks-package-tutorial" title="17.9.1. luarocks-package tutorial">tutorial</a>
+<a class="xref" href="#luarocks-package-tutorial" title="17.9.1. luarocks-package tutorial">Section 17.9.1, “<code class="literal">luarocks-package</code> tutorial”</a> and a
+   <a class="link" href="#luarocks-package-reference" title="17.9.2. luarocks-package reference">reference</a>
+<a class="xref" href="#luarocks-package-reference" title="17.9.2. luarocks-package reference">Section 17.9.2, “<code class="literal">luarocks-package</code> reference”</a>.
+</li></ul></div><p>Further formatting details: see <a class="link" href="#writing-rules-mk" title="15.2. The .mk file">the writing
+rules</a>
+<a class="xref" href="#writing-rules-mk" title="15.2. The .mk file">Section 15.2, “The <code class="literal">.mk</code> file”</a>.</p></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="adding-packages-hash"></a>17.4. The <code class="literal">.hash</code> file</h2></div></div></div><p>Optionally, you can add a third file, named <code class="literal">libfoo.hash</code>, that contains
+the hashes of the downloaded files for the <code class="literal">libfoo</code> package.</p><p>The hashes stored in that file are used to validate the integrity of the
+downloaded files.</p><p>The format of this file is one line for each file for which to check the
+hash, each line being space-separated, with these three fields:</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p class="simpara">
+the type of hash, one of:
+</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: circle; "><li class="listitem">
+<code class="literal">md5</code>, <code class="literal">sha1</code>, <code class="literal">sha224</code>, <code class="literal">sha256</code>, <code class="literal">sha384</code>, <code class="literal">sha512</code>, <code class="literal">none</code>
+</li></ul></div></li><li class="listitem"><p class="simpara">
+the hash of the file:
+</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: circle; "><li class="listitem">
+for <code class="literal">none</code>, one or more non-space chars, usually just the string <code class="literal">xxx</code>
+</li><li class="listitem">
+for <code class="literal">md5</code>, 32 hexadecimal characters
+</li><li class="listitem">
+for <code class="literal">sha1</code>, 40 hexadecimal characters
+</li><li class="listitem">
+for <code class="literal">sha224</code>, 56 hexadecimal characters
+</li><li class="listitem">
+for <code class="literal">sha256</code>, 64 hexadecimal characters
+</li><li class="listitem">
+for <code class="literal">sha384</code>, 96 hexadecimal characters
+</li><li class="listitem">
+for <code class="literal">sha512</code>, 128 hexadecimal characters
+</li></ul></div></li><li class="listitem">
+the name of the file, without any directory component
+</li></ul></div><p>Lines starting with a <code class="literal">#</code> sign are considered comments, and ignored. Empty
+lines are ignored.</p><p>There can be more than one hash for a single file, each on its own line. In
+this case, all hashes must match.</p><p><strong>Note. </strong>Ideally, the hashes stored in this file should match the hashes published by
+upstream, e.g. on their website, in the e-mail announcement… If upstream
+provides more than one type of hash (e.g. <code class="literal">sha1</code> and <code class="literal">sha512</code>), then it is
+best to add all those hashes in the <code class="literal">.hash</code> file. If upstream does not
+provide any hash, or only provides an <code class="literal">md5</code> hash, then compute at least one
+strong hash yourself (preferably <code class="literal">sha256</code>, but not <code class="literal">md5</code>), and mention
+this in a comment line above the hashes.</p><p><strong>Note. </strong>If <code class="literal">libfoo</code> is from GitHub (see <a class="xref" href="#github-download-url" title="17.17.2. How to add a package from GitHub">Section 17.17.2, “How to add a package from GitHub”</a> for details), we
+can only accept a <code class="literal">.hash</code> file if the package is a released (e.g. uploaded
+by the maintainer) tarball. Otherwise, the automatically generated tarball
+may change over time, and thus its hashes may be different each time it is
+downloaded, causing a <code class="literal">.hash</code> mismatch for that tarball.</p><p><strong>Note. </strong>The number of spaces does not matter, so one can use spaces (or tabs) to
+properly align the different fields.</p><p>The <code class="literal">none</code> hash type is reserved to those archives downloaded from a
+repository, like a <span class="emphasis"><em>git clone</em></span>, a <span class="emphasis"><em>subversion checkout</em></span>… or archives
+downloaded with the <a class="link" href="#github-download-url" title="17.17.2. How to add a package from GitHub">github helper</a>
+<a class="xref" href="#github-download-url" title="17.17.2. How to add a package from GitHub">Section 17.17.2, “How to add a package from GitHub”</a>.</p><p>The example below defines a <code class="literal">sha1</code> and a <code class="literal">sha256</code> published by upstream for
+the main <code class="literal">libfoo-1.2.3.tar.bz2</code> tarball, an <code class="literal">md5</code> from upstream and a
+locally-computed <code class="literal">sha256</code> hashes for a binary blob, a <code class="literal">sha256</code> for a
+downloaded patch, and an archive with no hash:</p><pre class="screen"># Hashes from: http://www.foosoftware.org/download/libfoo-1.2.3.tar.bz2.{sha1,sha256}:
+sha1   486fb55c3efa71148fe07895fd713ea3a5ae343a                         libfoo-1.2.3.tar.bz2
+sha256 efc8103cc3bcb06bda6a781532d12701eb081ad83e8f90004b39ab81b65d4369 libfoo-1.2.3.tar.bz2
+
+# md5 from: http://www.foosoftware.org/download/libfoo-1.2.3.tar.bz2.md5, sha256 locally computed:
+md5    2d608f3c318c6b7557d551a5a09314f03452f1a1                         libfoo-data.bin
+sha256 01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b libfoo-data.bin
+
+# Locally computed:
+sha256 ff52101fb90bbfc3fe9475e425688c660f46216d7e751c4bbdb1dc85cdccacb9 libfoo-fix-blabla.patch
+
+# No hash for 1234, comes from the github-helper:
+none   xxx                                                              libfoo-1234.tar.gz</pre><p>If the <code class="literal">.hash</code> file is present, and it contains one or more hashes for a
+downloaded file, the hash(es) computed by Buildroot (after download) must
+match the hash(es) stored in the <code class="literal">.hash</code> file. If one or more hashes do
+not match, Buildroot considers this an error, deletes the downloaded file,
+and aborts.</p><p>If the <code class="literal">.hash</code> file is present, but it does not contain a hash for a
+downloaded file, Buildroot considers this an error and aborts. However,
+the downloaded file is left in the download directory since this
+typically indicates that the <code class="literal">.hash</code> file is wrong but the downloaded
+file is probably OK.</p><p>Sources that are downloaded from a version control system (git, subversion,
+etc…) can not have a hash, because the version control system and tar
+may not create exactly the same file (dates, files ordering…), so the
+hash could be wrong even for a valid download. Therefore, the hash check
+is entirely skipped for such sources.</p><p>If the <code class="literal">.hash</code> file is missing, then no check is done at all.</p></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_infrastructure_for_packages_with_specific_build_systems"></a>17.5. Infrastructure for packages with specific build systems</h2></div></div></div><p>By <span class="emphasis"><em>packages with specific build systems</em></span> we mean all the packages
+whose build system is not one of the standard ones, such as
+<span class="emphasis"><em>autotools</em></span> or <span class="emphasis"><em>CMake</em></span>. This typically includes packages whose build
+system is based on hand-written Makefiles or shell scripts.</p><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="generic-package-tutorial"></a>17.5.1. <code class="literal">generic-package</code> tutorial</h3></div></div></div><pre class="screen">01: ################################################################################
+02: #
+03: # libfoo
+04: #
+05: ################################################################################
+06:
+07: LIBFOO_VERSION = 1.0
+08: LIBFOO_SOURCE = libfoo-$(LIBFOO_VERSION).tar.gz
+09: LIBFOO_SITE = http://www.foosoftware.org/download
+10: LIBFOO_LICENSE = GPLv3+
+11: LIBFOO_LICENSE_FILES = COPYING
+12: LIBFOO_INSTALL_STAGING = YES
+13: LIBFOO_CONFIG_SCRIPTS = libfoo-config
+14: LIBFOO_DEPENDENCIES = host-libaaa libbbb
+15:
+16: define LIBFOO_BUILD_CMDS
+17:     $(MAKE) CC="$(TARGET_CC)" LD="$(TARGET_LD)" -C $(@D) all
+18: endef
+19:
+20: define LIBFOO_INSTALL_STAGING_CMDS
+21:     $(INSTALL) -D -m 0755 $(@D)/libfoo.a $(STAGING_DIR)/usr/lib/libfoo.a
+22:     $(INSTALL) -D -m 0644 $(@D)/foo.h $(STAGING_DIR)/usr/include/foo.h
+23:     $(INSTALL) -D -m 0755 $(@D)/libfoo.so* $(STAGING_DIR)/usr/lib
+24: endef
+25:
+26: define LIBFOO_INSTALL_TARGET_CMDS
+27:     $(INSTALL) -D -m 0755 $(@D)/libfoo.so* $(TARGET_DIR)/usr/lib
+28:     $(INSTALL) -d -m 0755 $(TARGET_DIR)/etc/foo.d
+29: endef
+30:
+31: define LIBFOO_DEVICES
+32:     /dev/foo  c  666  0  0  42  0  -  -  -
+33: endef
+34:
+35: define LIBFOO_PERMISSIONS
+36:     /bin/foo  f  4755  0  0  -  -  -  -  -
+37: endef
+38:
+39: define LIBFOO_USERS
+40:     foo -1 libfoo -1 * - - - LibFoo daemon
+41: endef
+42:
+43: $(eval $(generic-package))</pre><p>The Makefile begins on line 7 to 11 with metadata information: the
+version of the package (<code class="literal">LIBFOO_VERSION</code>), the name of the
+tarball containing the package (<code class="literal">LIBFOO_SOURCE</code>) (xz-ed tarball recommended)
+the Internet location at which the tarball can be downloaded from
+(<code class="literal">LIBFOO_SITE</code>), the license (<code class="literal">LIBFOO_LICENSE</code>) and file with the
+license text (<code class="literal">LIBFOO_LICENSE_FILES</code>). All variables must start with
+the same prefix, <code class="literal">LIBFOO_</code> in this case. This prefix is always the
+uppercased version of the package name (see below to understand where
+the package name is defined).</p><p>On line 12, we specify that this package wants to install something to
+the staging space. This is often needed for libraries, since they must
+install header files and other development files in the staging space.
+This will ensure that the commands listed in the
+<code class="literal">LIBFOO_INSTALL_STAGING_CMDS</code> variable will be executed.</p><p>On line 13, we specify that there is some fixing to be done to some
+of the <span class="emphasis"><em>libfoo-config</em></span> files that were installed during
+<code class="literal">LIBFOO_INSTALL_STAGING_CMDS</code> phase.
+These *-config files are executable shell script files that are
+located in <span class="emphasis"><em>$(STAGING_DIR)/usr/bin</em></span> directory and are executed
+by other 3rd party packages to find out the location and the linking
+flags of this particular package.</p><p>The problem is that all these *-config files by default give wrong,
+host system linking flags that are unsuitable for cross-compiling.</p><p>For example:    <span class="emphasis"><em>-I/usr/include</em></span> instead of <span class="emphasis"><em>-I$(STAGING_DIR)/usr/include</em></span>
+or:             <span class="emphasis"><em>-L/usr/lib</em></span> instead of <span class="emphasis"><em>-L$(STAGING_DIR)/usr/lib</em></span></p><p>So some sed magic is done to these scripts to make them give correct
+flags.
+The argument to be given to <code class="literal">LIBFOO_CONFIG_SCRIPTS</code> is the file name(s)
+of the shell script(s) needing fixing. All these names are relative to
+<span class="emphasis"><em>$(STAGING_DIR)/usr/bin</em></span> and if needed multiple names can be given.</p><p>In addition, the scripts listed in <code class="literal">LIBFOO_CONFIG_SCRIPTS</code> are removed
+from <code class="literal">$(TARGET_DIR)/usr/bin</code>, since they are not needed on the target.</p><div class="example"><a id="idm139994498807568"></a><p class="title"><strong>Example 17.1. Config script: <span class="emphasis"><em>divine</em></span> package</strong></p><div class="example-contents"><p>Package divine installs shell script <span class="emphasis"><em>$(STAGING_DIR)/usr/bin/divine-config</em></span>.</p><p>So its fixup would be:</p><pre class="screen">DIVINE_CONFIG_SCRIPTS = divine-config</pre></div></div><br class="example-break" /><div class="example"><a id="idm139994498804640"></a><p class="title"><strong>Example 17.2. Config script: <span class="emphasis"><em>imagemagick</em></span> package:</strong></p><div class="example-contents"><p>Package imagemagick installs the following scripts:
+<span class="emphasis"><em>$(STAGING_DIR)/usr/bin/{Magick,Magick++,MagickCore,MagickWand,Wand}-config</em></span></p><p>So it’s fixup would be:</p><pre class="screen">IMAGEMAGICK_CONFIG_SCRIPTS = \
+   Magick-config Magick++-config \
+   MagickCore-config MagickWand-config Wand-config</pre></div></div><br class="example-break" /><p>On line 14, we specify the list of dependencies this package relies
+on. These dependencies are listed in terms of lower-case package names,
+which can be packages for the target (without the <code class="literal">host-</code>
+prefix) or packages for the host (with the <code class="literal">host-</code>) prefix).
+Buildroot will ensure that all these packages are built and installed
+<span class="emphasis"><em>before</em></span> the current package starts its configuration.</p><p>The rest of the Makefile, lines 16..29, defines what should be done
+at the different steps of the package configuration, compilation and
+installation.
+<code class="literal">LIBFOO_BUILD_CMDS</code> tells what steps should be performed to
+build the package. <code class="literal">LIBFOO_INSTALL_STAGING_CMDS</code> tells what
+steps should be performed to install the package in the staging space.
+<code class="literal">LIBFOO_INSTALL_TARGET_CMDS</code> tells what steps should be
+performed to install the package in the target space.</p><p>All these steps rely on the <code class="literal">$(@D)</code> variable, which
+contains the directory where the source code of the package has been
+extracted.</p><p>On line 31..33, we define a device-node file used by this package
+(<code class="literal">LIBFOO_DEVICES</code>).</p><p>On line 35..37, we define the permissions to set to specific files
+installed by this package (<code class="literal">LIBFOO_PERMISSIONS</code>).</p><p>On lines 39..41, we define a user that is used by this package (e.g.
+to run a daemon as non-root) (<code class="literal">LIBFOO_USERS</code>).</p><p>Finally, on line 43, we call the <code class="literal">generic-package</code> function, which
+generates, according to the variables defined previously, all the
+Makefile code necessary to make your package working.</p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="generic-package-reference"></a>17.5.2. <code class="literal">generic-package</code> reference</h3></div></div></div><p>There are two variants of the generic target. The <code class="literal">generic-package</code> macro is
+used for packages to be cross-compiled for the target. The
+<code class="literal">host-generic-package</code> macro is used for host packages, natively compiled
+for the host. It is possible to call both of them in a single <code class="literal">.mk</code>
+file: once to create the rules to generate a target
+package and once to create the rules to generate a host package:</p><pre class="screen">$(eval $(generic-package))
+$(eval $(host-generic-package))</pre><p>This might be useful if the compilation of the target package requires
+some tools to be installed on the host. If the package name is
+<code class="literal">libfoo</code>, then the name of the package for the target is also
+<code class="literal">libfoo</code>, while the name of the package for the host is
+<code class="literal">host-libfoo</code>. These names should be used in the DEPENDENCIES
+variables of other packages, if they depend on <code class="literal">libfoo</code> or
+<code class="literal">host-libfoo</code>.</p><p>The call to the <code class="literal">generic-package</code> and/or <code class="literal">host-generic-package</code> macro <span class="strong"><strong>must</strong></span> be
+at the end of the <code class="literal">.mk</code> file, after all variable definitions.</p><p>For the target package, the <code class="literal">generic-package</code> uses the variables defined by
+the .mk file and prefixed by the uppercased package name:
+<code class="literal">LIBFOO_*</code>. <code class="literal">host-generic-package</code> uses the <code class="literal">HOST_LIBFOO_*</code> variables. For
+<span class="emphasis"><em>some</em></span> variables, if the <code class="literal">HOST_LIBFOO_</code> prefixed variable doesn’t
+exist, the package infrastructure uses the corresponding variable
+prefixed by <code class="literal">LIBFOO_</code>. This is done for variables that are likely to
+have the same value for both the target and host packages. See below
+for details.</p><p>The list of variables that can be set in a <code class="literal">.mk</code> file to give metadata
+information is (assuming the package name is <code class="literal">libfoo</code>) :</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+<code class="literal">LIBFOO_VERSION</code>, mandatory, must contain the version of the
+  package. Note that if <code class="literal">HOST_LIBFOO_VERSION</code> doesn’t exist, it is
+  assumed to be the same as <code class="literal">LIBFOO_VERSION</code>. It can also be a
+  revision number, branch or tag for packages that are fetched
+  directly from their revision control system.
+  Examples:
+    <code class="literal">LIBFOO_VERSION = 0.1.2</code>
+    <code class="literal">LIBFOO_VERSION = cb9d6aa9429e838f0e54faa3d455bcbab5eef057</code>
+    <code class="literal">LIBFOO_VERSION = stable</code>
+</li><li class="listitem">
+<code class="literal">LIBFOO_SOURCE</code> may contain the name of the tarball of the package,
+  which Buildroot will use to download the tarball from
+  <code class="literal">LIBFOO_SITE</code>. If <code class="literal">HOST_LIBFOO_SOURCE</code> is not specified, it defaults
+  to <code class="literal">LIBFOO_SOURCE</code>. If none are specified, then the value is assumed
+  to be <code class="literal">libfoo-$(LIBFOO_VERSION).tar.gz</code>.
+  Example: <code class="literal">LIBFOO_SOURCE = foobar-$(LIBFOO_VERSION).tar.bz2</code>
+</li><li class="listitem">
+<code class="literal">LIBFOO_PATCH</code> may contain a space-separated list of patch file
+  names, that Buildroot will download and apply to the package source
+  code. If an entry contains <code class="literal">://</code>, then Buildroot will assume it is a
+  full URL and download the patch from this location. Otherwise,
+  Buildroot will assume that the patch should be downloaded from
+  <code class="literal">LIBFOO_SITE</code>. If <code class="literal">HOST_LIBFOO_PATCH</code> is not specified, it defaults
+  to <code class="literal">LIBFOO_PATCH</code>. Note that patches that are included in Buildroot
+  itself use a different mechanism: all files of the form
+  <code class="literal">*.patch</code> present in the package directory inside
+  Buildroot will be applied to the package after extraction (see
+  <a class="link" href="#patch-policy" title="Chapter 18. Patching a package">patching a package</a>
+<a class="xref" href="#patch-policy" title="Chapter 18. Patching a package">Chapter 18, <em>Patching a package</em></a>). Finally, patches listed in
+  the <code class="literal">LIBFOO_PATCH</code> variable are applied <span class="emphasis"><em>before</em></span> the patches stored
+  in the Buildroot package directory.
+</li><li class="listitem">
+<code class="literal">LIBFOO_SITE</code> provides the location of the package, which can be a
+  URL or a local filesystem path. HTTP, FTP and SCP are supported URL
+  types for retrieving package tarballs. Git, Subversion, Mercurial,
+  and Bazaar are supported URL types for retrieving packages directly
+  from source code management systems. There is a helper function to make
+  it easier to download source tarballs from GitHub (refer to
+  <a class="xref" href="#github-download-url" title="17.17.2. How to add a package from GitHub">Section 17.17.2, “How to add a package from GitHub”</a> for details). A filesystem path may be used
+  to specify either a tarball or a directory containing the package
+  source code. See <code class="literal">LIBFOO_SITE_METHOD</code> below for more details on how
+  retrieval works.
+  Note that SCP URLs should be of the form
+  <code class="literal">scp://[user@]host:filepath</code>, and that filepath is relative to the
+  user’s home directory, so you may want to prepend the path with a
+  slash for absolute paths:
+  <code class="literal">scp://[user@]host:/absolutepath</code>.
+  If <code class="literal">HOST_LIBFOO_SITE</code> is not specified, it defaults to
+  <code class="literal">LIBFOO_SITE</code>.
+  Examples:
+    <code class="literal">LIBFOO_SITE=http://www.libfoosoftware.org/libfoo</code>
+    <code class="literal">LIBFOO_SITE=http://svn.xiph.org/trunk/Tremor</code>
+    <code class="literal">LIBFOO_SITE=/opt/software/libfoo.tar.gz</code>
+    <code class="literal">LIBFOO_SITE=$(TOPDIR)/../src/libfoo/</code>
+</li><li class="listitem">
+<code class="literal">LIBFOO_EXTRA_DOWNLOADS</code> is a space-separated list of additional
+  files that Buildroot should download. If an entry contains <code class="literal">://</code>
+  then Buildroot will assume it is a complete URL and will download
+  the file using this URL. Otherwise, Buildroot will assume the file
+  to be downloaded is located at <code class="literal">LIBFOO_SITE</code>. Buildroot will not do
+  anything with those additional files, except download them: it will
+  be up to the package recipe to use them from <code class="literal">$(BR2_DL_DIR)</code>.
+</li><li class="listitem"><p class="simpara">
+<code class="literal">LIBFOO_SITE_METHOD</code> determines the method used to fetch or copy the
+  package source code. In many cases, Buildroot guesses the method
+  from the contents of <code class="literal">LIBFOO_SITE</code> and setting <code class="literal">LIBFOO_SITE_METHOD</code>
+  is unnecessary. When <code class="literal">HOST_LIBFOO_SITE_METHOD</code> is not specified, it
+  defaults to the value of <code class="literal">LIBFOO_SITE_METHOD</code>.
+  The possible values of <code class="literal">LIBFOO_SITE_METHOD</code> are:
+</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: circle; "><li class="listitem">
+<code class="literal">wget</code> for normal FTP/HTTP downloads of tarballs. Used by
+     default when <code class="literal">LIBFOO_SITE</code> begins with <code class="literal">http://</code>, <code class="literal">https://</code> or
+     <code class="literal">ftp://</code>.
+</li><li class="listitem">
+<code class="literal">scp</code> for downloads of tarballs over SSH with scp. Used by
+     default when <code class="literal">LIBFOO_SITE</code> begins with <code class="literal">scp://</code>.
+</li><li class="listitem">
+<code class="literal">svn</code> for retrieving source code from a Subversion repository.
+     Used by default when <code class="literal">LIBFOO_SITE</code> begins with <code class="literal">svn://</code>. When a
+     <code class="literal">http://</code> Subversion repository URL is specified in
+     <code class="literal">LIBFOO_SITE</code>, one <span class="emphasis"><em>must</em></span> specify <code class="literal">LIBFOO_SITE_METHOD=svn</code>.
+     Buildroot performs a checkout which is preserved as a tarball in
+     the download cache; subsequent builds use the tarball instead of
+     performing another checkout.
+</li><li class="listitem">
+<code class="literal">cvs</code> for retrieving source code from a CVS repository.
+     Used by default when <code class="literal">LIBFOO_SITE</code> begins with <code class="literal">cvs://</code>.
+     The downloaded source code is cached as with the <code class="literal">svn</code> method.
+     Only anonymous pserver mode is supported.
+     <code class="literal">LIBFOO_SITE</code> <span class="emphasis"><em>must</em></span> contain the source URL as well as the remote
+     repository directory. The module is the package name.
+     <code class="literal">LIBFOO_VERSION</code> is <span class="emphasis"><em>mandatory</em></span> and <span class="emphasis"><em>must</em></span> be a timestamp.
+</li><li class="listitem">
+<code class="literal">git</code> for retrieving source code from a Git repository. Used by
+     default when <code class="literal">LIBFOO_SITE</code> begins with <code class="literal">git://</code>. The downloaded
+     source code is cached as with the <code class="literal">svn</code>
+     method.
+</li><li class="listitem">
+<code class="literal">hg</code> for retrieving source code from a Mercurial repository. One
+     <span class="emphasis"><em>must</em></span> specify <code class="literal">LIBFOO_SITE_METHOD=hg</code> when <code class="literal">LIBFOO_SITE</code>
+     contains a Mercurial repository URL. The downloaded source code
+     is cached as with the <code class="literal">svn</code> method.
+</li><li class="listitem">
+<code class="literal">bzr</code> for retrieving source code from a Bazaar repository. Used
+     by default when <code class="literal">LIBFOO_SITE</code> begins with <code class="literal">bzr://</code>. The
+     downloaded source code is cached as with the <code class="literal">svn</code> method.
+</li><li class="listitem">
+<code class="literal">file</code> for a local tarball. One should use this when
+     <code class="literal">LIBFOO_SITE</code> specifies a package tarball as a local filename.
+     Useful for software that isn’t available publicly or in version
+     control.
+</li><li class="listitem">
+<code class="literal">local</code> for a local source code directory. One should use this
+     when <code class="literal">LIBFOO_SITE</code> specifies a local directory path containing
+     the package source code. Buildroot copies the contents of the
+     source directory into the package’s build directory.
+</li></ul></div></li><li class="listitem">
+<code class="literal">LIBFOO_DEPENDENCIES</code> lists the dependencies (in terms of package
+  name) that are required for the current target package to
+  compile. These dependencies are guaranteed to be compiled and
+  installed before the configuration of the current package starts. In
+  a similar way, <code class="literal">HOST_LIBFOO_DEPENDENCIES</code> lists the dependencies for
+  the current host package.
+</li><li class="listitem">
+<code class="literal">LIBFOO_PATCH_DEPENDENCIES</code> lists the dependencies (in terms of
+  package name) that are required for the current package to be
+  patched. These dependencies are guaranteed to be extracted and
+  patched before the current package is patched. In a similar way,
+  <code class="literal">HOST_LIBFOO_PATCH_DEPENDENCIES</code> lists the dependencies for the
+  current host package.
+  This is seldom used; usually, <code class="literal">LIBFOO_DEPENDENCIES</code> is what you
+  really want to use.
+</li><li class="listitem">
+<code class="literal">LIBFOO_PROVIDES</code> lists all the virtual packages <code class="literal">libfoo</code> is an
+  implementation of. See <a class="xref" href="#virtual-package-tutorial">Section 17.11, “Infrastructure for virtual packages”</a>.
+</li><li class="listitem">
+<code class="literal">LIBFOO_INSTALL_STAGING</code> can be set to <code class="literal">YES</code> or <code class="literal">NO</code> (default). If
+  set to <code class="literal">YES</code>, then the commands in the <code class="literal">LIBFOO_INSTALL_STAGING_CMDS</code>
+  variables are executed to install the package into the staging
+  directory.
+</li><li class="listitem">
+<code class="literal">LIBFOO_INSTALL_TARGET</code> can be set to <code class="literal">YES</code> (default) or <code class="literal">NO</code>. If
+  set to <code class="literal">YES</code>, then the commands in the <code class="literal">LIBFOO_INSTALL_TARGET_CMDS</code>
+  variables are executed to install the package into the target
+  directory.
+</li><li class="listitem">
+<code class="literal">LIBFOO_INSTALL_IMAGES</code> can be set to <code class="literal">YES</code> or <code class="literal">NO</code> (default). If
+  set to <code class="literal">YES</code>, then the commands in the <code class="literal">LIBFOO_INSTALL_IMAGES_CMDS</code>
+  variable are executed to install the package into the images
+  directory.
+</li><li class="listitem">
+<code class="literal">LIBFOO_CONFIG_SCRIPTS</code> lists the names of the files in
+  <span class="emphasis"><em>$(STAGING_DIR)/usr/bin</em></span> that need some special fixing to make them
+  cross-compiling friendly. Multiple file names separated by space can
+  be given and all are relative to <span class="emphasis"><em>$(STAGING_DIR)/usr/bin</em></span>. The files
+  listed in <code class="literal">LIBFOO_CONFIG_SCRIPTS</code> are also removed from
+  <code class="literal">$(TARGET_DIR)/usr/bin</code> since they are not needed on the target.
+</li><li class="listitem">
+<code class="literal">LIBFOO_DEVICES</code> lists the device files to be created by Buildroot
+  when using the static device table. The syntax to use is the
+  makedevs one. You can find some documentation for this syntax in the
+  <a class="xref" href="#makedev-syntax" title="Chapter 22. Makedev syntax documentation">Chapter 22, <em>Makedev syntax documentation</em></a>. This variable is optional.
+</li><li class="listitem">
+<code class="literal">LIBFOO_PERMISSIONS</code> lists the changes of permissions to be done at
+  the end of the build process. The syntax is once again the makedevs one.
+  You can find some documentation for this syntax in the <a class="xref" href="#makedev-syntax" title="Chapter 22. Makedev syntax documentation">Chapter 22, <em>Makedev syntax documentation</em></a>.
+  This variable is optional.
+</li><li class="listitem">
+<code class="literal">LIBFOO_USERS</code> lists the users to create for this package, if it installs
+  a program you want to run as a specific user (e.g. as a daemon, or as a
+  cron-job). The syntax is similar in spirit to the makedevs one, and is
+  described in the <a class="xref" href="#makeuser-syntax" title="Chapter 23. Makeusers syntax documentation">Chapter 23, <em>Makeusers syntax documentation</em></a>. This variable is optional.
+</li><li class="listitem">
+<code class="literal">LIBFOO_LICENSE</code> defines the license (or licenses) under which the package
+  is released.
+  This name will appear in the manifest file produced by <code class="literal">make legal-info</code>.
+  If the license appears in <a class="link" href="#legal-info-list-licenses" title="12.2. License abbreviations">the following list</a>
+<a class="xref" href="#legal-info-list-licenses" title="12.2. License abbreviations">Section 12.2, “License abbreviations”</a>,
+  use the same string to make the manifest file uniform.
+  Otherwise, describe the license in a precise and concise way, avoiding
+  ambiguous names such as <code class="literal">BSD</code> which actually name a family of licenses.
+  This variable is optional. If it is not defined, <code class="literal">unknown</code> will appear in
+  the <code class="literal">license</code> field of the manifest file for this package.
+</li><li class="listitem">
+<code class="literal">LIBFOO_LICENSE_FILES</code> is a space-separated list of files in the package
+  tarball that contain the license(s) under which the package is released.
+  <code class="literal">make legal-info</code> copies all of these files in the <code class="literal">legal-info</code> directory.
+  See <a class="xref" href="#legal-info" title="Chapter 12. Legal notice and licensing">Chapter 12, <em>Legal notice and licensing</em></a> for more information.
+  This variable is optional. If it is not defined, a warning will be produced
+  to let you know, and <code class="literal">not saved</code> will appear in the <code class="literal">license files</code> field
+  of the manifest file for this package.
+</li><li class="listitem">
+<code class="literal">LIBFOO_REDISTRIBUTE</code> can be set to <code class="literal">YES</code> (default) or <code class="literal">NO</code> to indicate if
+  the package source code is allowed to be redistributed. Set it to <code class="literal">NO</code> for
+  non-opensource packages: Buildroot will not save the source code for this
+  package when collecting the <code class="literal">legal-info</code>.
+</li><li class="listitem">
+<code class="literal">LIBFOO_FLAT_STACKSIZE</code> defines the stack size of an application built into
+  the FLAT binary format. The application stack size on the NOMMU architecture
+  processors can’t be enlarged at run time. The default stack size for the
+  FLAT binary format is only 4k bytes. If the application consumes more stack,
+  append the required number here.
+</li></ul></div><p>The recommended way to define these variables is to use the following
+syntax:</p><pre class="screen">LIBFOO_VERSION = 2.32</pre><p>Now, the variables that define what should be performed at the
+different steps of the build process.</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+<code class="literal">LIBFOO_EXTRACT_CMDS</code> lists the actions to be performed to extract
+  the package. This is generally not needed as tarballs are
+  automatically handled by Buildroot. However, if the package uses a
+  non-standard archive format, such as a ZIP or RAR file, or has a
+  tarball with a non-standard organization, this variable allows to
+  override the package infrastructure default behavior.
+</li><li class="listitem">
+<code class="literal">LIBFOO_CONFIGURE_CMDS</code> lists the actions to be performed to
+  configure the package before its compilation.
+</li><li class="listitem">
+<code class="literal">LIBFOO_BUILD_CMDS</code> lists the actions to be performed to
+  compile the package.
+</li><li class="listitem">
+<code class="literal">HOST_LIBFOO_INSTALL_CMDS</code> lists the actions to be performed
+  to install the package, when the package is a host package. The
+  package must install its files to the directory given by
+  <code class="literal">$(HOST_DIR)</code>. All files, including development files such as
+  headers should be installed, since other packages might be compiled
+  on top of this package.
+</li><li class="listitem">
+<code class="literal">LIBFOO_INSTALL_TARGET_CMDS</code> lists the actions to be
+  performed to install the package to the target directory, when the
+  package is a target package. The package must install its files to
+  the directory given by <code class="literal">$(TARGET_DIR)</code>. Only the files required for
+  <span class="emphasis"><em>execution</em></span> of the package have to be
+  installed. Header files, static libraries and documentation will be
+  removed again when the target filesystem is finalized.
+</li><li class="listitem">
+<code class="literal">LIBFOO_INSTALL_STAGING_CMDS</code> lists the actions to be
+  performed to install the package to the staging directory, when the
+  package is a target package. The package must install its files to
+  the directory given by <code class="literal">$(STAGING_DIR)</code>. All development files
+  should be installed, since they might be needed to compile other
+  packages.
+</li><li class="listitem">
+<code class="literal">LIBFOO_INSTALL_IMAGES_CMDS</code> lists the actions to be performed to
+  install the package to the images directory, when the package is a
+  target package. The package must install its files to the directory
+  given by <code class="literal">$(BINARIES_DIR)</code>. Only files that are binary images (aka
+  images) that do not belong in the <code class="literal">TARGET_DIR</code> but are necessary
+  for booting the board should be placed here. For example, a package
+  should utilize this step if it has binaries which would be similar
+  to the kernel image, bootloader or root filesystem images.
+</li><li class="listitem">
+<code class="literal">LIBFOO_INSTALL_INIT_SYSV</code> and <code class="literal">LIBFOO_INSTALL_INIT_SYSTEMD</code> list the
+  actions to install init scripts either for the systemV-like init systems
+  (busybox, sysvinit, etc.) or for the systemd units. These commands
+  will be run only when the relevant init system is installed (i.e. if
+  systemd is selected as the init system in the configuration, only
+  <code class="literal">LIBFOO_INSTALL_INIT_SYSTEMD</code> will be run).
+</li></ul></div><p>The preferred way to define these variables is:</p><pre class="screen">define LIBFOO_CONFIGURE_CMDS
+        action 1
+        action 2
+        action 3
+endef</pre><p>In the action definitions, you can use the following variables:</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+<code class="literal">$(@D)</code>, which contains the directory in which the package source
+  code has been uncompressed.
+</li><li class="listitem">
+<code class="literal">$(TARGET_CC)</code>, <code class="literal">$(TARGET_LD)</code>, etc. to get the target
+  cross-compilation utilities
+</li><li class="listitem">
+<code class="literal">$(TARGET_CROSS)</code> to get the cross-compilation toolchain prefix
+</li><li class="listitem">
+Of course the <code class="literal">$(HOST_DIR)</code>, <code class="literal">$(STAGING_DIR)</code> and <code class="literal">$(TARGET_DIR)</code>
+  variables to install the packages properly.
+</li></ul></div><p>Finally, you can also use hooks. See <a class="xref" href="#hooks" title="17.15. Hooks available in the various build steps">Section 17.15, “Hooks available in the various build steps”</a> for more information.</p></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_infrastructure_for_autotools_based_packages"></a>17.6. Infrastructure for autotools-based packages</h2></div></div></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="autotools-package-tutorial"></a>17.6.1. <code class="literal">autotools-package</code> tutorial</h3></div></div></div><p>First, let’s see how to write a <code class="literal">.mk</code> file for an autotools-based
+package, with an example :</p><pre class="screen">01: ################################################################################
+02: #
+03: # libfoo
+04: #
+05: ################################################################################
+06:
+07: LIBFOO_VERSION = 1.0
+08: LIBFOO_SOURCE = libfoo-$(LIBFOO_VERSION).tar.gz
+09: LIBFOO_SITE = http://www.foosoftware.org/download
+10: LIBFOO_INSTALL_STAGING = YES
+11: LIBFOO_INSTALL_TARGET = NO
+12: LIBFOO_CONF_OPTS = --disable-shared
+13: LIBFOO_DEPENDENCIES = libglib2 host-pkgconf
+14:
+15: $(eval $(autotools-package))</pre><p>On line 7, we declare the version of the package.</p><p>On line 8 and 9, we declare the name of the tarball (xz-ed tarball recommended)
+and the location of the tarball on the Web. Buildroot will automatically
+download the tarball from this location.</p><p>On line 10, we tell Buildroot to install the package to the staging
+directory. The staging directory, located in <code class="literal">output/staging/</code>
+is the directory where all the packages are installed, including their
+development files, etc. By default, packages are not installed to the
+staging directory, since usually, only libraries need to be installed in
+the staging directory: their development files are needed to compile
+other libraries or applications depending on them. Also by default, when
+staging installation is enabled, packages are installed in this location
+using the <code class="literal">make install</code> command.</p><p>On line 11, we tell Buildroot to not install the package to the
+target directory. This directory contains what will become the root
+filesystem running on the target. For purely static libraries, it is
+not necessary to install them in the target directory because they will
+not be used at runtime. By default, target installation is enabled; setting
+this variable to NO is almost never needed. Also by default, packages are
+installed in this location using the <code class="literal">make install</code> command.</p><p>On line 12, we tell Buildroot to pass a custom configure option, that
+will be passed to the <code class="literal">./configure</code> script before configuring
+and building the package.</p><p>On line 13, we declare our dependencies, so that they are built
+before the build process of our package starts.</p><p>Finally, on line line 15, we invoke the <code class="literal">autotools-package</code>
+macro that generates all the Makefile rules that actually allows the
+package to be built.</p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="autotools-package-reference"></a>17.6.2. <code class="literal">autotools-package</code> reference</h3></div></div></div><p>The main macro of the autotools package infrastructure is
+<code class="literal">autotools-package</code>. It is similar to the <code class="literal">generic-package</code> macro. The ability to
+have target and host packages is also available, with the
+<code class="literal">host-autotools-package</code> macro.</p><p>Just like the generic infrastructure, the autotools infrastructure
+works by defining a number of variables before calling the
+<code class="literal">autotools-package</code> macro.</p><p>First, all the package metadata information variables that exist in the
+generic infrastructure also exist in the autotools infrastructure:
+<code class="literal">LIBFOO_VERSION</code>, <code class="literal">LIBFOO_SOURCE</code>,
+<code class="literal">LIBFOO_PATCH</code>, <code class="literal">LIBFOO_SITE</code>,
+<code class="literal">LIBFOO_SUBDIR</code>, <code class="literal">LIBFOO_DEPENDENCIES</code>,
+<code class="literal">LIBFOO_INSTALL_STAGING</code>, <code class="literal">LIBFOO_INSTALL_TARGET</code>.</p><p>A few additional variables, specific to the autotools infrastructure,
+can also be defined. Many of them are only useful in very specific
+cases, typical packages will therefore only use a few of them.</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+<code class="literal">LIBFOO_SUBDIR</code> may contain the name of a subdirectory
+  inside the package that contains the configure script. This is useful,
+  if for example, the main configure script is not at the root of the
+  tree extracted by the tarball. If <code class="literal">HOST_LIBFOO_SUBDIR</code> is
+  not specified, it defaults to <code class="literal">LIBFOO_SUBDIR</code>.
+</li><li class="listitem">
+<code class="literal">LIBFOO_CONF_ENV</code>, to specify additional environment
+  variables to pass to the configure script. By default, empty.
+</li><li class="listitem">
+<code class="literal">LIBFOO_CONF_OPTS</code>, to specify additional configure
+  options to pass to the configure script. By default, empty.
+</li><li class="listitem">
+<code class="literal">LIBFOO_MAKE</code>, to specify an alternate <code class="literal">make</code>
+  command. This is typically useful when parallel make is enabled in
+  the configuration (using <code class="literal">BR2_JLEVEL</code>) but that this
+  feature should be disabled for the given package, for one reason or
+  another. By default, set to <code class="literal">$(MAKE)</code>. If parallel building
+  is not supported by the package, then it should be set to
+  <code class="literal">LIBFOO_MAKE=$(MAKE1)</code>.
+</li><li class="listitem">
+<code class="literal">LIBFOO_MAKE_ENV</code>, to specify additional environment
+  variables to pass to make in the build step. These are passed before
+  the <code class="literal">make</code> command. By default, empty.
+</li><li class="listitem">
+<code class="literal">LIBFOO_MAKE_OPTS</code>, to specify additional variables to
+  pass to make in the build step. These are passed after the
+  <code class="literal">make</code> command. By default, empty.
+</li><li class="listitem">
+<code class="literal">LIBFOO_AUTORECONF</code>, tells whether the package should
+  be autoreconfigured or not (i.e. if the configure script and
+  Makefile.in files should be re-generated by re-running autoconf,
+  automake, libtool, etc.). Valid values are <code class="literal">YES</code> and
+  <code class="literal">NO</code>. By default, the value is <code class="literal">NO</code>
+</li><li class="listitem">
+<code class="literal">LIBFOO_AUTORECONF_ENV</code>, to specify additional environment
+  variables to pass to the <span class="emphasis"><em>autoreconf</em></span> program if
+  <code class="literal">LIBFOO_AUTORECONF=YES</code>. These are passed in the environment of
+  the <span class="emphasis"><em>autoreconf</em></span> command. By default, empty.
+</li><li class="listitem">
+<code class="literal">LIBFOO_AUTORECONF_OPTS</code> to specify additional options
+  passed to the <span class="emphasis"><em>autoreconf</em></span> program if
+  <code class="literal">LIBFOO_AUTORECONF=YES</code>. By default, empty.
+</li><li class="listitem">
+<code class="literal">LIBFOO_GETTEXTIZE</code>, tells whether the package should be
+  gettextized or not (i.e. if the package uses a different gettext
+  version than Buildroot provides, and it is needed to run
+  <span class="emphasis"><em>gettextize</em></span>.) Only valid when <code class="literal">LIBFOO_AUTORECONF=YES</code>. Valid
+  values are <code class="literal">YES</code> and <code class="literal">NO</code>. The default is <code class="literal">NO</code>.
+</li><li class="listitem">
+<code class="literal">LIBFOO_GETTEXTIZE_OPTS</code>, to specify additional options passed to
+  the <span class="emphasis"><em>gettextize</em></span> program, if <code class="literal">LIBFOO_GETTEXTIZE=YES</code>. You may
+  use that if, for example, the <code class="literal">.po</code> files are not located in the
+  standard place (i.e. in <code class="literal">po/</code> at the root of the package.) By
+  default, <span class="emphasis"><em>-f</em></span>.
+</li><li class="listitem">
+<code class="literal">LIBFOO_LIBTOOL_PATCH</code> tells whether the Buildroot
+  patch to fix libtool cross-compilation issues should be applied or
+  not. Valid values are <code class="literal">YES</code> and <code class="literal">NO</code>. By
+  default, the value is <code class="literal">YES</code>
+</li><li class="listitem">
+<code class="literal">LIBFOO_INSTALL_STAGING_OPTS</code> contains the make options
+  used to install the package to the staging directory. By default, the
+  value is <code class="literal">DESTDIR=$(STAGING_DIR) install</code>, which is
+  correct for most autotools packages. It is still possible to override
+  it.
+</li><li class="listitem">
+<code class="literal">LIBFOO_INSTALL_TARGET_OPTS</code> contains the make options
+  used to install the package to the target directory. By default, the
+  value is <code class="literal">DESTDIR=$(TARGET_DIR) install</code>. The default
+  value is correct for most autotools packages, but it is still possible
+  to override it if needed.
+</li></ul></div><p>With the autotools infrastructure, all the steps required to build
+and install the packages are already defined, and they generally work
+well for most autotools-based packages. However, when required, it is
+still possible to customize what is done in any particular step:</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+By adding a post-operation hook (after extract, patch, configure,
+  build or install). See <a class="xref" href="#hooks" title="17.15. Hooks available in the various build steps">Section 17.15, “Hooks available in the various build steps”</a> for details.
+</li><li class="listitem">
+By overriding one of the steps. For example, even if the autotools
+  infrastructure is used, if the package <code class="literal">.mk</code> file defines its
+  own <code class="literal">LIBFOO_CONFIGURE_CMDS</code> variable, it will be used
+  instead of the default autotools one. However, using this method
+  should be restricted to very specific cases. Do not use it in the
+  general case.
+</li></ul></div></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_infrastructure_for_cmake_based_packages"></a>17.7. Infrastructure for CMake-based packages</h2></div></div></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="cmake-package-tutorial"></a>17.7.1. <code class="literal">cmake-package</code> tutorial</h3></div></div></div><p>First, let’s see how to write a <code class="literal">.mk</code> file for a CMake-based package,
+with an example :</p><pre class="screen">01: ################################################################################
+02: #
+03: # libfoo
+04: #
+05: ################################################################################
+06:
+07: LIBFOO_VERSION = 1.0
+08: LIBFOO_SOURCE = libfoo-$(LIBFOO_VERSION).tar.gz
+09: LIBFOO_SITE = http://www.foosoftware.org/download
+10: LIBFOO_INSTALL_STAGING = YES
+11: LIBFOO_INSTALL_TARGET = NO
+12: LIBFOO_CONF_OPTS = -DBUILD_DEMOS=ON
+13: LIBFOO_DEPENDENCIES = libglib2 host-pkgconf
+14:
+15: $(eval $(cmake-package))</pre><p>On line 7, we declare the version of the package.</p><p>On line 8 and 9, we declare the name of the tarball (xz-ed tarball recommended)
+and the location of the tarball on the Web. Buildroot will automatically
+download the tarball from this location.</p><p>On line 10, we tell Buildroot to install the package to the staging
+directory. The staging directory, located in <code class="literal">output/staging/</code>
+is the directory where all the packages are installed, including their
+development files, etc. By default, packages are not installed to the
+staging directory, since usually, only libraries need to be installed in
+the staging directory: their development files are needed to compile
+other libraries or applications depending on them. Also by default, when
+staging installation is enabled, packages are installed in this location
+using the <code class="literal">make install</code> command.</p><p>On line 11, we tell Buildroot to not install the package to the
+target directory. This directory contains what will become the root
+filesystem running on the target. For purely static libraries, it is
+not necessary to install them in the target directory because they will
+not be used at runtime. By default, target installation is enabled; setting
+this variable to NO is almost never needed. Also by default, packages are
+installed in this location using the <code class="literal">make install</code> command.</p><p>On line 12, we tell Buildroot to pass custom options to CMake when it is
+configuring the package.</p><p>On line 13, we declare our dependencies, so that they are built
+before the build process of our package starts.</p><p>Finally, on line line 15, we invoke the <code class="literal">cmake-package</code>
+macro that generates all the Makefile rules that actually allows the
+package to be built.</p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="cmake-package-reference"></a>17.7.2. <code class="literal">cmake-package</code> reference</h3></div></div></div><p>The main macro of the CMake package infrastructure is
+<code class="literal">cmake-package</code>. It is similar to the <code class="literal">generic-package</code> macro. The ability to
+have target and host packages is also available, with the
+<code class="literal">host-cmake-package</code> macro.</p><p>Just like the generic infrastructure, the CMake infrastructure works
+by defining a number of variables before calling the <code class="literal">cmake-package</code>
+macro.</p><p>First, all the package metadata information variables that exist in
+the generic infrastructure also exist in the CMake infrastructure:
+<code class="literal">LIBFOO_VERSION</code>, <code class="literal">LIBFOO_SOURCE</code>, <code class="literal">LIBFOO_PATCH</code>, <code class="literal">LIBFOO_SITE</code>,
+<code class="literal">LIBFOO_SUBDIR</code>, <code class="literal">LIBFOO_DEPENDENCIES</code>, <code class="literal">LIBFOO_INSTALL_STAGING</code>,
+<code class="literal">LIBFOO_INSTALL_TARGET</code>.</p><p>A few additional variables, specific to the CMake infrastructure, can
+also be defined. Many of them are only useful in very specific cases,
+typical packages will therefore only use a few of them.</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+<code class="literal">LIBFOO_SUBDIR</code> may contain the name of a subdirectory inside the
+  package that contains the main CMakeLists.txt file. This is useful,
+  if for example, the main CMakeLists.txt file is not at the root of
+  the tree extracted by the tarball. If <code class="literal">HOST_LIBFOO_SUBDIR</code> is not
+  specified, it defaults to <code class="literal">LIBFOO_SUBDIR</code>.
+</li><li class="listitem">
+<code class="literal">LIBFOO_CONF_ENV</code>, to specify additional environment variables to
+  pass to CMake. By default, empty.
+</li><li class="listitem"><p class="simpara">
+<code class="literal">LIBFOO_CONF_OPTS</code>, to specify additional configure options to pass
+  to CMake. By default, empty. A number of common CMake options are
+  set by the <code class="literal">cmake-package</code> infrastructure; so it is normally not
+  necessary to set them in the package’s <code class="literal">*.mk</code> file unless you want
+  to override them:
+</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: circle; "><li class="listitem">
+<code class="literal">CMAKE_BUILD_TYPE</code> is driven by <code class="literal">BR2_ENABLE_DEBUG</code>;
+</li><li class="listitem">
+<code class="literal">CMAKE_INSTALL_PREFIX</code>;
+</li><li class="listitem">
+<code class="literal">BUILD_SHARED_LIBS</code> is driven by <code class="literal">BR2_STATIC_LIBS</code>;
+</li><li class="listitem">
+<code class="literal">BUILD_DOC</code>, <code class="literal">BUILD_DOCS</code> are disabled;
+</li><li class="listitem">
+<code class="literal">BUILD_EXAMPLE</code>, <code class="literal">BUILD_EXAMPLES</code> are disabled;
+</li><li class="listitem">
+<code class="literal">BUILD_TEST</code>, <code class="literal">BUILD_TESTS</code>, <code class="literal">BUILD_TESTING</code> are disabled.
+</li></ul></div></li><li class="listitem">
+<code class="literal">LIBFOO_SUPPORTS_IN_SOURCE_BUILD = NO</code> should be set when the package
+  cannot be built inside the source tree but needs a separate build
+  directory.
+</li><li class="listitem">
+<code class="literal">LIBFOO_MAKE</code>, to specify an alternate <code class="literal">make</code> command. This is
+  typically useful when parallel make is enabled in the configuration
+  (using <code class="literal">BR2_JLEVEL</code>) but that this feature should be disabled for
+  the given package, for one reason or another. By default, set to
+  <code class="literal">$(MAKE)</code>. If parallel building is not supported by the package,
+  then it should be set to <code class="literal">LIBFOO_MAKE=$(MAKE1)</code>.
+</li><li class="listitem">
+<code class="literal">LIBFOO_MAKE_ENV</code>, to specify additional environment variables to
+  pass to make in the build step. These are passed before the <code class="literal">make</code>
+  command. By default, empty.
+</li><li class="listitem">
+<code class="literal">LIBFOO_MAKE_OPTS</code>, to specify additional variables to pass to make
+  in the build step. These are passed after the <code class="literal">make</code> command. By
+  default, empty.
+</li><li class="listitem">
+<code class="literal">LIBFOO_INSTALL_STAGING_OPTS</code> contains the make options used to
+  install the package to the staging directory. By default, the value
+  is <code class="literal">DESTDIR=$(STAGING_DIR) install</code>, which is correct for most
+  CMake packages. It is still possible to override it.
+</li><li class="listitem">
+<code class="literal">LIBFOO_INSTALL_TARGET_OPTS</code> contains the make options used to
+  install the package to the target directory. By default, the value
+  is <code class="literal">DESTDIR=$(TARGET_DIR) install</code>. The default value is correct
+  for most CMake packages, but it is still possible to override it if
+  needed.
+</li></ul></div><p>With the CMake infrastructure, all the steps required to build and
+install the packages are already defined, and they generally work well
+for most CMake-based packages. However, when required, it is still
+possible to customize what is done in any particular step:</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+By adding a post-operation hook (after extract, patch, configure,
+  build or install). See <a class="xref" href="#hooks" title="17.15. Hooks available in the various build steps">Section 17.15, “Hooks available in the various build steps”</a> for details.
+</li><li class="listitem">
+By overriding one of the steps. For example, even if the CMake
+  infrastructure is used, if the package <code class="literal">.mk</code> file defines its own
+  <code class="literal">LIBFOO_CONFIGURE_CMDS</code> variable, it will be used instead of the
+  default CMake one. However, using this method should be restricted
+  to very specific cases. Do not use it in the general case.
+</li></ul></div></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_infrastructure_for_python_packages"></a>17.8. Infrastructure for Python packages</h2></div></div></div><p>This infrastructure applies to Python packages that use the standard
+Python setuptools mechanism as their build system, generally
+recognizable by the usage of a <code class="literal">setup.py</code> script.</p><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="python-package-tutorial"></a>17.8.1. <code class="literal">python-package</code> tutorial</h3></div></div></div><p>First, let’s see how to write a <code class="literal">.mk</code> file for a Python package,
+with an example :</p><pre class="screen">01: ################################################################################
+02: #
+03: # python-foo
+04: #
+05: ################################################################################
+06:
+07: PYTHON_FOO_VERSION = 1.0
+08: PYTHON_FOO_SOURCE = python-foo-$(PYTHON_FOO_VERSION).tar.xz
+09: PYTHON_FOO_SITE = http://www.foosoftware.org/download
+10: PYTHON_FOO_LICENSE = BSD-3c
+11: PYTHON_FOO_LICENSE_FILES = LICENSE
+12: PYTHON_FOO_ENV = SOME_VAR=1
+13: PYTHON_FOO_DEPENDENCIES = libmad
+14: PYTHON_FOO_SETUP_TYPE = distutils
+15:
+16: $(eval $(python-package))</pre><p>On line 7, we declare the version of the package.</p><p>On line 8 and 9, we declare the name of the tarball (xz-ed tarball
+recommended) and the location of the tarball on the Web. Buildroot
+will automatically download the tarball from this location.</p><p>On line 10 and 11, we give licensing details about the package (its
+license on line 10, and the file containing the license text on line
+11).</p><p>On line 12, we tell Buildroot to pass custom options to the Python
+<code class="literal">setup.py</code> script when it is configuring the package.</p><p>On line 13, we declare our dependencies, so that they are built
+before the build process of our package starts.</p><p>On line 14, we declare the specific Python build system being used. In
+this case the <code class="literal">distutils</code> Python build system is used. The two
+supported ones are <code class="literal">distutils</code> and <code class="literal">setuptools</code>.</p><p>Finally, on line 16, we invoke the <code class="literal">python-package</code> macro that
+generates all the Makefile rules that actually allow the package to be
+built.</p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="python-package-reference"></a>17.8.2. <code class="literal">python-package</code> reference</h3></div></div></div><p>As a policy, packages that merely provide Python modules should all be
+named <code class="literal">python-&lt;something&gt;</code> in Buildroot. Other packages that use the
+Python build system, but are not Python modules, can freely choose
+their name (existing examples in Buildroot are <code class="literal">scons</code> and
+<code class="literal">supervisor</code>).</p><p>In their <code class="literal">Config.in</code> file, they should depend on <code class="literal">BR2_PACKAGE_PYTHON</code>
+so that when Buildroot will enable Python 3 usage for modules, we will
+be able to enable Python modules progressively on Python 3.</p><p>The main macro of the Python package infrastructure is
+<code class="literal">python-package</code>. It is similar to the <code class="literal">generic-package</code> macro. It is
+also possible to create Python host packages with the
+<code class="literal">host-python-package</code> macro.</p><p>Just like the generic infrastructure, the Python infrastructure works
+by defining a number of variables before calling the <code class="literal">python-package</code>
+or <code class="literal">host-python-package</code> macros.</p><p>All the package metadata information variables that exist in the
+<a class="link" href="#generic-package-reference" title="17.5.2. generic-package reference">generic package infrastructure</a>
+<a class="xref" href="#generic-package-reference" title="17.5.2. generic-package reference">Section 17.5.2, “<code class="literal">generic-package</code> reference”</a> also
+exist in the Python infrastructure: <code class="literal">PYTHON_FOO_VERSION</code>,
+<code class="literal">PYTHON_FOO_SOURCE</code>, <code class="literal">PYTHON_FOO_PATCH</code>, <code class="literal">PYTHON_FOO_SITE</code>,
+<code class="literal">PYTHON_FOO_SUBDIR</code>, <code class="literal">PYTHON_FOO_DEPENDENCIES</code>, <code class="literal">PYTHON_FOO_LICENSE</code>,
+<code class="literal">PYTHON_FOO_LICENSE_FILES</code>, <code class="literal">PYTHON_FOO_INSTALL_STAGING</code>, etc.</p><p>Note that:</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+It is not necessary to add <code class="literal">python</code> or <code class="literal">host-python</code> in the
+   <code class="literal">PYTHON_FOO_DEPENDENCIES</code> variable of a package, since these basic
+   dependencies are automatically added as needed by the Python
+   package infrastructure.
+</li><li class="listitem">
+Similarly, it is not needed to add <code class="literal">host-setuptools</code> and/or
+   <code class="literal">host-distutilscross</code> dependencies to <code class="literal">PYTHON_FOO_DEPENDENCIES</code> for
+   setuptools-based packages, since these are automatically added by
+   the Python infrastructure as needed.
+</li></ul></div><p>One variable specific to the Python infrastructure is mandatory:</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+<code class="literal">PYTHON_FOO_SETUP_TYPE</code>, to define which Python build system is used
+  by the package. The two supported values are <code class="literal">distutils</code> and
+  <code class="literal">setuptools</code>. If you don’t know which one is used in your package,
+  look at the <code class="literal">setup.py</code> file in your package source code, and see
+  whether it imports things from the <code class="literal">distutils</code> module or the
+  <code class="literal">setuptools</code> module.
+</li></ul></div><p>A few additional variables, specific to the Python infrastructure, can
+optionally be defined, depending on the package’s needs. Many of them
+are only useful in very specific cases, typical packages will
+therefore only use a few of them, or none.</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+<code class="literal">PYTHON_FOO_ENV</code>, to specify additional environment variables to
+  pass to the Python <code class="literal">setup.py</code> script (for both the build and install
+  steps). Note that the infrastructure is automatically passing
+  several standard variables, defined in <code class="literal">PKG_PYTHON_DISTUTILS_ENV</code>
+  (for distutils target packages), <code class="literal">HOST_PKG_PYTHON_DISTUTILS_ENV</code>
+  (for distutils host packages), <code class="literal">PKG_PYTHON_SETUPTOOLS_ENV</code> (for
+  setuptools target packages) and <code class="literal">HOST_PKG_PYTHON_SETUPTOOLS_ENV</code>
+  (for setuptools host packages).
+</li><li class="listitem">
+<code class="literal">PYTHON_FOO_BUILD_OPTS</code>, to specify additional options to pass to the
+  Python <code class="literal">setup.py</code> script during the build step. For target distutils
+  packages, the <code class="literal">PKG_PYTHON_DISTUTILS_BUILD_OPTS</code> options are already
+  passed automatically by the infrastructure.
+</li><li class="listitem">
+<code class="literal">PYTHON_FOO_INSTALL_TARGET_OPTS</code>, <code class="literal">PYTHON_FOO_INSTALL_STAGING_OPTS</code>,
+  <code class="literal">HOST_PYTHON_FOO_INSTALL_OPTS</code> to specify additional options to pass
+  to the Python <code class="literal">setup.py</code> script during the target installation step,
+  the staging installation step or the host installation,
+  respectively. Note that the infrastructure is automatically passing
+  some options, defined in <code class="literal">PKG_PYTHON_DISTUTILS_INSTALL_TARGET_OPTS</code>
+  or <code class="literal">PKG_PYTHON_DISTUTILS_INSTALL_STAGING_OPTS</code> (for target distutils
+  packages), <code class="literal">HOST_PKG_PYTHON_DISTUTILS_INSTALL_OPTS</code> (for host
+  distutils packages), <code class="literal">PKG_PYTHON_SETUPTOOLS_INSTALL_TARGET_OPTS</code> or
+  <code class="literal">PKG_PYTHON_SETUPTOOLS_INSTALL_STAGING_OPTS</code> (for target setuptools
+  packages) and <code class="literal">HOST_PKG_PYTHON_SETUPTOOLS_INSTALL_OPTS</code> (for host
+  setuptools packages).
+</li><li class="listitem">
+<code class="literal">HOST_PYTHON_FOO_NEEDS_HOST_PYTHON</code>, to define the host python
+  interpreter. The usage of this variable is limited to host
+  packages. The two supported value are <code class="literal">python2</code> and <code class="literal">python3</code>. It
+  will ensures the right host python package is available and will
+  invoke it for the build. If some build steps are overloaded, the
+  right python interpreter must be explicitly called in the commands.
+</li></ul></div><p>With the Python infrastructure, all the steps required to build and
+install the packages are already defined, and they generally work well
+for most Python-based packages. However, when required, it is still
+possible to customize what is done in any particular step:</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+By adding a post-operation hook (after extract, patch, configure,
+  build or install). See <a class="xref" href="#hooks" title="17.15. Hooks available in the various build steps">Section 17.15, “Hooks available in the various build steps”</a> for details.
+</li><li class="listitem">
+By overriding one of the steps. For example, even if the Python
+  infrastructure is used, if the package <code class="literal">.mk</code> file defines its own
+  <code class="literal">PYTHON_FOO_BUILD_CMDS</code> variable, it will be used instead of the
+  default Python one. However, using this method should be restricted
+  to very specific cases. Do not use it in the general case.
+</li></ul></div></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_infrastructure_for_luarocks_based_packages"></a>17.9. Infrastructure for LuaRocks-based packages</h2></div></div></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="luarocks-package-tutorial"></a>17.9.1. <code class="literal">luarocks-package</code> tutorial</h3></div></div></div><p>First, let’s see how to write a <code class="literal">.mk</code> file for a LuaRocks-based package,
+with an example :</p><pre class="screen">01: ################################################################################
+02: #
+03: # luafoo
+04: #
+05: ################################################################################
+06:
+07: LUAFOO_VERSION = 1.0.2-1
+08: LUAFOO_DEPENDENCIES = foo
+09:
+10: LUAFOO_BUILD_OPTS += FOO_INCDIR=$(STAGING_DIR)/usr/include
+11: LUAFOO_BUILD_OPTS += FOO_LIBDIR=$(STAGING_DIR)/usr/lib
+12: LUAFOO_LICENSE = luaFoo license
+13: LUAFOO_LICENSE_FILES = COPYING
+14:
+15: $(eval $(luarocks-package))</pre><p>On line 7, we declare the version of the package (the same as in the rockspec,
+which is the concatenation of the upstream version and the rockspec revision,
+separated by a hyphen <span class="emphasis"><em>-</em></span>).</p><p>On line 8, we declare our dependencies against native libraries, so that they
+are built before the build process of our package starts.</p><p>On lines 10-11, we tell Buildroot to pass custom options to LuaRocks when it is
+building the package.</p><p>On lines 12-13, we specify the licensing terms for the package.</p><p>Finally, on line 15, we invoke the <code class="literal">luarocks-package</code>
+macro that generates all the Makefile rules that actually allows the
+package to be built.</p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="luarocks-package-reference"></a>17.9.2. <code class="literal">luarocks-package</code> reference</h3></div></div></div><p>LuaRocks is a deployment and management system for Lua modules, and supports
+various <code class="literal">build.type</code>: <code class="literal">builtin</code>, <code class="literal">make</code> and <code class="literal">cmake</code>. In the context of
+Buildroot, the <code class="literal">luarocks-package</code> infrastructure only supports the <code class="literal">builtin</code>
+mode. LuaRocks packages that use the <code class="literal">make</code> or <code class="literal">cmake</code> build mechanisms
+should instead be packaged using the <code class="literal">generic-package</code> and <code class="literal">cmake-package</code>
+infrastructures in Buildroot, respectively.</p><p>The main macro of the LuaRocks package infrastructure is <code class="literal">luarocks-package</code>:
+like <code class="literal">generic-package</code> it works by defining a number of variables providing
+metadata information about the package, and then calling <code class="literal">luarocks-package</code>. It
+is worth mentioning that building LuaRocks packages for the host is not
+supported, so the macro <code class="literal">host-luarocks-package</code> is not implemented.</p><p>Just like the generic infrastructure, the LuaRocks infrastructure works
+by defining a number of variables before calling the <code class="literal">luarocks-package</code>
+macro.</p><p>First, all the package metadata information variables that exist in
+the generic infrastructure also exist in the LuaRocks infrastructure:
+<code class="literal">LUAFOO_VERSION</code>, <code class="literal">LUAFOO_SOURCE</code>, <code class="literal">LUAFOO_SITE</code>,
+<code class="literal">LUAFOO_DEPENDENCIES</code>, <code class="literal">LUAFOO_LICENSE</code>, <code class="literal">LUAFOO_LICENSE_FILES</code>.</p><p>Two of them are populated by the LuaRocks infrastructure (for the
+<code class="literal">download</code> step). If your package is not hosted on the LuaRocks mirror
+<code class="literal">$(BR2_LUAROCKS_MIRROR)</code>, you can override them:</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+<code class="literal">LUAFOO_SITE</code>, which defaults to <code class="literal">$(BR2_LUAROCKS_MIRROR)</code>
+</li><li class="listitem">
+<code class="literal">LUAFOO_SOURCE</code>, which defaults to <code class="literal">luafoo-$(LUAFOO_VERSION).src.rock</code>
+</li></ul></div><p>A few additional variables, specific to the LuaRocks infrastructure, are
+also defined. They can be overridden in specific cases.</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+<code class="literal">LUAFOO_ROCKSPEC</code>, which defaults to <code class="literal">luafoo-$(LUAFOO_VERSION).rockspec</code>
+</li><li class="listitem">
+<code class="literal">LUAFOO_SUBDIR</code>, which defaults to
+  <code class="literal">luafoo-$(LUAFOO_VERSION_WITHOUT_ROCKSPEC_REVISION)</code>
+</li><li class="listitem">
+<code class="literal">LUAFOO_BUILD_OPTS</code> contains additional build options for the
+  <code class="literal">luarocks build</code> call.
+</li></ul></div></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_infrastructure_for_perl_cpan_packages"></a>17.10. Infrastructure for Perl/CPAN packages</h2></div></div></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="perl-package-tutorial"></a>17.10.1. <code class="literal">perl-package</code> tutorial</h3></div></div></div><p>First, let’s see how to write a <code class="literal">.mk</code> file for a Perl/CPAN package,
+with an example :</p><pre class="screen">01: ################################################################################
+02: #
+03: # perl-foo-bar
+04: #
+05: ################################################################################
+06:
+07: PERL_FOO_BAR_VERSION = 0.02
+08: PERL_FOO_BAR_SOURCE = Foo-Bar-$(PERL_FOO_BAR_VERSION).tar.gz
+09: PERL_FOO_BAR_SITE = $(BR2_CPAN_MIRROR)/authors/id/M/MO/MONGER
+10: PERL_FOO_BAR_DEPENDENCIES = perl-strictures
+11: PERL_FOO_BAR_LICENSE = Artistic or GPLv1+
+12: PERL_FOO_BAR_LICENSE_FILES = LICENSE
+13:
+14: $(eval $(perl-package))</pre><p>On line 7, we declare the version of the package.</p><p>On line 8 and 9, we declare the name of the tarball and the location
+of the tarball on a CPAN server. Buildroot will automatically download
+the tarball from this location.</p><p>On line 10, we declare our dependencies, so that they are built
+before the build process of our package starts.</p><p>On line 11 and 12, we give licensing details about the package (its
+license on line 11, and the file containing the license text on line
+12).</p><p>Finally, on line 14, we invoke the <code class="literal">perl-package</code> macro that
+generates all the Makefile rules that actually allow the package to be
+built.</p><p>Most of these data can be retrieved from <a class="ulink" href="https://metacpan.org/" target="_top">https://metacpan.org/</a>.
+So, this file and the Config.in can be generated by running
+the script <code class="literal">supports/scripts/scancpan Foo-Bar</code> in the Buildroot directory
+(or in the <code class="literal">BR2_EXTERNAL</code> directory).
+This script creates a Config.in file and foo-bar.mk file for the
+requested package, and also recursively for all dependencies specified by
+CPAN. You should still manually edit the result. In particular, the
+following things should be checked.</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+If the perl module links with a shared library that is provided by
+  another (non-perl) package, this dependency is not added automatically.
+  It has to be added manually to <code class="literal">PERL_FOO_BAR_DEPENDENCIES</code>.
+</li><li class="listitem">
+The <code class="literal">package/Config.in</code> file has to be updated manually to include the
+  generated Config.in files. As a hint, the <code class="literal">scancpan</code> script prints out
+  the required <code class="literal">source "…"</code> statements, sorted alphabetically.
+</li></ul></div></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="perl-package-reference"></a>17.10.2. <code class="literal">perl-package</code> reference</h3></div></div></div><p>As a policy, packages that provide Perl/CPAN modules should all be
+named <code class="literal">perl-&lt;something&gt;</code> in Buildroot.</p><p>This infrastructure handles various Perl build systems :
+<code class="literal">ExtUtils-MakeMaker</code>, <code class="literal">Module-Build</code> and <code class="literal">Module-Build-Tiny</code>.
+<code class="literal">Build.PL</code> is always preferred when a package provides a <code class="literal">Makefile.PL</code>
+and a <code class="literal">Build.PL</code>.</p><p>The main macro of the Perl/CPAN package infrastructure is
+<code class="literal">perl-package</code>. It is similar to the <code class="literal">generic-package</code> macro. The ability to
+have target and host packages is also available, with the
+<code class="literal">host-perl-package</code> macro.</p><p>Just like the generic infrastructure, the Perl/CPAN infrastructure
+works by defining a number of variables before calling the
+<code class="literal">perl-package</code> macro.</p><p>First, all the package metadata information variables that exist in the
+generic infrastructure also exist in the Perl/CPAN infrastructure:
+<code class="literal">PERL_FOO_VERSION</code>, <code class="literal">PERL_FOO_SOURCE</code>,
+<code class="literal">PERL_FOO_PATCH</code>, <code class="literal">PERL_FOO_SITE</code>,
+<code class="literal">PERL_FOO_SUBDIR</code>, <code class="literal">PERL_FOO_DEPENDENCIES</code>,
+<code class="literal">PERL_FOO_INSTALL_TARGET</code>.</p><p>Note that setting <code class="literal">PERL_FOO_INSTALL_STAGING</code> to <code class="literal">YES</code> has no effect
+unless a <code class="literal">PERL_FOO_INSTALL_STAGING_CMDS</code> variable is defined. The perl
+infrastructure doesn’t define these commands since Perl modules generally
+don’t need to be installed to the <code class="literal">staging</code> directory.</p><p>A few additional variables, specific to the Perl/CPAN infrastructure,
+can also be defined. Many of them are only useful in very specific
+cases, typical packages will therefore only use a few of them.</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+<code class="literal">PERL_FOO_CONF_ENV</code>/<code class="literal">HOST_PERL_FOO_CONF_ENV</code>, to specify additional
+  environment variables to pass to the <code class="literal">perl Makefile.PL</code> or <code class="literal">perl Build.PL</code>.
+  By default, empty.
+</li><li class="listitem">
+<code class="literal">PERL_FOO_CONF_OPTS</code>/<code class="literal">HOST_PERL_FOO_CONF_OPTS</code>, to specify additional
+  configure options to pass to the <code class="literal">perl Makefile.PL</code> or <code class="literal">perl Build.PL</code>.
+  By default, empty.
+</li><li class="listitem">
+<code class="literal">PERL_FOO_BUILD_OPTS</code>/<code class="literal">HOST_PERL_FOO_BUILD_OPTS</code>, to specify additional
+  options to pass to <code class="literal">make pure_all</code> or <code class="literal">perl Build build</code> in the build step.
+  By default, empty.
+</li><li class="listitem">
+<code class="literal">PERL_FOO_INSTALL_TARGET_OPTS</code>, to specify additional options to
+  pass to <code class="literal">make pure_install</code> or <code class="literal">perl Build install</code> in the install step.
+  By default, empty.
+</li><li class="listitem">
+<code class="literal">HOST_PERL_FOO_INSTALL_OPTS</code>, to specify additional options to
+  pass to <code class="literal">make pure_install</code> or <code class="literal">perl Build install</code> in the install step.
+  By default, empty.
+</li></ul></div></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_infrastructure_for_virtual_packages"></a>17.11. Infrastructure for virtual packages</h2></div></div></div><p><a id="virtual-package-tutorial"></a>In Buildroot, a virtual package is a package whose functionalities are
+provided by one or more packages, referred to as <span class="emphasis"><em>providers</em></span>. The virtual
+package management is an extensible mechanism allowing the user to choose
+the provider used in the rootfs.</p><p>For example, <span class="emphasis"><em>OpenGL ES</em></span> is an API for 2D and 3D graphics on embedded systems.
+The implementation of this API is different for the <span class="emphasis"><em>Allwinner Tech Sunxi</em></span> and
+the <span class="emphasis"><em>Texas Instruments OMAP35xx</em></span> platforms. So <code class="literal">libgles</code> will be a virtual
+package and <code class="literal">sunxi-mali</code> and <code class="literal">ti-gfx</code> will be the providers.</p><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="_literal_virtual_package_literal_tutorial"></a>17.11.1. <code class="literal">virtual-package</code> tutorial</h3></div></div></div><p>In the following example, we will explain how to add a new virtual package
+(<span class="emphasis"><em>something-virtual</em></span>) and a provider for it (<span class="emphasis"><em>some-provider</em></span>).</p><p>First, let’s create the virtual package.</p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="_virtual_package_8217_s_literal_config_in_literal_file"></a>17.11.2. Virtual package’s <code class="literal">Config.in</code> file</h3></div></div></div><p>The <code class="literal">Config.in</code> file of virtual package <span class="emphasis"><em>something-virtual</em></span> should contain:</p><pre class="screen">01: config BR2_PACKAGE_HAS_SOMETHING_VIRTUAL
+02:     bool
+03:
+04: config BR2_PACKAGE_PROVIDES_SOMETHING_VIRTUAL
+05:     depends on BR2_PACKAGE_HAS_SOMETHING_VIRTUAL
+06:     string</pre><p>In this file, we declare two options, <code class="literal">BR2_PACKAGE_HAS_SOMETHING_VIRTUAL</code> and
+<code class="literal">BR2_PACKAGE_PROVIDES_SOMETHING_VIRTUAL</code>, whose values will be used by the
+providers.</p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="_virtual_package_8217_s_literal_mk_literal_file"></a>17.11.3. Virtual package’s <code class="literal">.mk</code> file</h3></div></div></div><p>The <code class="literal">.mk</code> for the virtual package should just evaluate the <code class="literal">virtual-package</code> macro:</p><pre class="screen">01: ################################################################################
+02: #
+03: # something-virtual
+04: #
+05: ################################################################################
+06:
+07: $(eval $(virtual-package))</pre><p>The ability to have target and host packages is also available, with the
+<code class="literal">host-virtual-package</code> macro.</p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="_provider_8217_s_literal_config_in_literal_file"></a>17.11.4. Provider’s <code class="literal">Config.in</code> file</h3></div></div></div><p>When adding a package as a provider, only the <code class="literal">Config.in</code> file requires some
+modifications.</p><p>The <code class="literal">Config.in</code> file of the package <span class="emphasis"><em>some-provider</em></span>, which provides the
+functionalities of <span class="emphasis"><em>something-virtual</em></span>, should contain:</p><pre class="screen">01: config BR2_PACKAGE_SOME_PROVIDER
+02:     bool "some-provider"
+03:     select BR2_PACKAGE_HAS_SOMETHING_VIRTUAL
+04:     help
+05:       This is a comment that explains what some-provider is.
+06:
+07:       http://foosoftware.org/some-provider/
+08:
+09: if BR2_PACKAGE_SOME_PROVIDER
+10: config BR2_PACKAGE_PROVIDES_SOMETHING_VIRTUAL
+11:     default "some-provider"
+12: endif</pre><p>On line 3, we select <code class="literal">BR2_PACKAGE_HAS_SOMETHING_VIRTUAL</code>, and on line 11, we
+set the value of <code class="literal">BR2_PACKAGE_PROVIDES_SOMETHING_VIRTUAL</code> to the name of the
+provider, but only if it is selected.</p><p>See <a class="xref" href="#virtual-package-list" title="Chapter 25. List of virtual packages">Chapter 25, <em>List of virtual packages</em></a> for the symbols to select if you implement
+a new provider for an existing virtual package.</p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="_provider_8217_s_literal_mk_literal_file"></a>17.11.5. Provider’s <code class="literal">.mk</code> file</h3></div></div></div><p>The <code class="literal">.mk</code> file should also declare an additional variable
+<code class="literal">SOME_PROVIDER_PROVIDES</code> to contain the names of all the virtual
+packages it is an implementation of:</p><pre class="screen">01: SOME_PROVIDER_PROVIDES = something-virtual</pre><p>Of course, do not forget to add the proper build and runtime dependencies for
+this package!</p><p>See <a class="xref" href="#virtual-package-list" title="Chapter 25. List of virtual packages">Chapter 25, <em>List of virtual packages</em></a> for the names of virtual packages to provide
+if you implement a new provider for an existing virtual package.</p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="_notes_on_depending_on_a_virtual_package"></a>17.11.6. Notes on depending on a virtual package</h3></div></div></div><p>When adding a package that requires a certain <code class="literal">FEATURE</code> provided by a virtual
+package, you have to use <code class="literal">depends on BR2_PACKAGE_HAS_FEATURE</code>, like so:</p><pre class="screen">config BR2_PACKAGE_HAS_FEATURE
+    bool
+
+config BR2_PACKAGE_FOO
+    bool "foo"
+    depends on BR2_PACKAGE_HAS_FEATURE</pre></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="_notes_on_depending_on_a_specific_provider"></a>17.11.7. Notes on depending on a specific provider</h3></div></div></div><p>If your package really requires a specific provider, then you’ll have to
+make your package <code class="literal">depends on</code> this provider; you can <span class="emphasis"><em>not</em></span> <code class="literal">select</code> a
+provider.</p><p>Let’s take an example with two providers for a <code class="literal">FEATURE</code>:</p><pre class="screen">config BR2_PACKAGE_HAS_FEATURE
+    bool
+
+config BR2_PACKAGE_FOO
+    bool "foo"
+    select BR2_PACKAGE_HAS_FEATURE
+
+config BR2_PACKAGE_BAR
+    bool "bar"
+    select BR2_PACKAGE_HAS_FEATURE</pre><p>And you are adding a package that needs <code class="literal">FEATURE</code> as provided by <code class="literal">foo</code>,
+but not as provided by <code class="literal">bar</code>.</p><p>If you were to use <code class="literal">select BR2_PACKAGE_FOO</code>, then the user would still
+be able to select <code class="literal">BR2_PACKAGE_BAR</code> in the menuconfig. This would create
+a configuration inconsistency, whereby two providers of the same <code class="literal">FEATURE</code>
+would be enabled at once, one explicitly set by the user, the other
+implicitly by your <code class="literal">select</code>.</p><p>Instead, you have to use <code class="literal">depends on BR2_PACKAGE_FOO</code>, which avoids any
+implicit configuration inconsistency.</p></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_infrastructure_for_packages_using_kconfig_for_configuration_files"></a>17.12. Infrastructure for packages using kconfig for configuration files</h2></div></div></div><p>A popular way for a software package to handle user-specified
+configuration is <code class="literal">kconfig</code>. Among others, it is used by the Linux
+kernel, Busybox, and Buildroot itself. The presence of a .config file
+and a <code class="literal">menuconfig</code> target are two well-known symptoms of kconfig being
+used.</p><p>Buildroot features an infrastructure for packages that use kconfig for
+their configuration. This infrastructure provides the necessary logic to
+expose the package’s <code class="literal">menuconfig</code> target as <code class="literal">foo-menuconfig</code> in
+Buildroot, and to handle the copying back and forth of the configuration
+file in a correct way.</p><p>The <code class="literal">kconfig-package</code> infrastructure is based on the <code class="literal">generic-package</code>
+infrastructure. All variables supported by <code class="literal">generic-package</code> are
+available in <code class="literal">kconfig-package</code> as well. See
+<a class="xref" href="#generic-package-reference" title="17.5.2. generic-package reference">Section 17.5.2, “<code class="literal">generic-package</code> reference”</a> for more details.</p><p>In order to use the <code class="literal">kconfig-package</code> infrastructure for a Buildroot
+package, the minimally required lines in the <code class="literal">.mk</code> file, in addition to
+the variables required by the <code class="literal">generic-package</code> infrastructure, are:</p><pre class="screen">FOO_KCONFIG_FILE = reference-to-source-configuration-file
+
+$(eval $(kconfig-package))</pre><p>This snippet creates the following make targets:</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+<code class="literal">foo-menuconfig</code>, which calls the package’s <code class="literal">menuconfig</code> target
+</li><li class="listitem">
+<code class="literal">foo-update-config</code>, which copies the configuration back to the source
+  configuration file.
+</li></ul></div><p>and ensures that the source configuration file is copied to the build
+directory at the right moment.</p><p>In addition to these minimally required lines, several optional variables can
+be set to suit the needs of the package under consideration:</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+<code class="literal">FOO_KCONFIG_EDITORS</code>: a space-separated list of kconfig editors to
+  support, for example <span class="emphasis"><em>menuconfig xconfig</em></span>. By default, <span class="emphasis"><em>menuconfig</em></span>.
+</li><li class="listitem">
+<code class="literal">FOO_KCONFIG_OPTS</code>: extra options to pass when calling the kconfig
+  editors. This may need to include <span class="emphasis"><em>$(FOO_MAKE_OPTS)</em></span>, for example. By
+  default, empty.
+</li><li class="listitem">
+<code class="literal">FOO_KCONFIG_FIXUP_CMDS</code>: a list of shell commands needed to fixup the
+  configuration file after copying it or running a kconfig editor. Such
+  commands may be needed to ensure a configuration consistent with other
+  configuration of Buildroot, for example. By default, empty.
+</li></ul></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_infrastructure_for_rebar_based_packages"></a>17.13. Infrastructure for rebar-based packages</h2></div></div></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="rebar-package-tutorial"></a>17.13.1. <code class="literal">rebar-package</code> tutorial</h3></div></div></div><p>First, let’s see how to write a <code class="literal">.mk</code> file for a rebar-based package,
+with an example :</p><pre class="screen">01: ################################################################################
+02: #
+03: # erlang-foobar
+04: #
+05: ################################################################################
+06:
+07: ERLANG_FOOBAR_VERSION = 1.0
+08: ERLANG_FOOBAR_SOURCE = erlang-foobar-$(ERLANG_FOOBAR_VERSION).tar.xz
+09: ERLANG_FOOBAR_SITE = http://www.foosoftware.org/download
+10: ERLANG_FOOBAR_DEPENDENCIES = host-libaaa libbbb
+11:
+12: $(eval $(rebar-package))</pre><p>On line 7, we declare the version of the package.</p><p>On line 8 and 9, we declare the name of the tarball (xz-ed tarball
+recommended) and the location of the tarball on the Web. Buildroot
+will automatically download the tarball from this location.</p><p>On line 10, we declare our dependencies, so that they are built
+before the build process of our package starts.</p><p>Finally, on line 12, we invoke the <code class="literal">rebar-package</code> macro that
+generates all the Makefile rules that actually allows the package to
+be built.</p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="rebar-package-reference"></a>17.13.2. <code class="literal">rebar-package</code> reference</h3></div></div></div><p>The main macro of the <code class="literal">rebar</code> package infrastructure is
+<code class="literal">rebar-package</code>. It is similar to the <code class="literal">generic-package</code> macro. The
+ability to have host packages is also available, with the
+<code class="literal">host-rebar-package</code> macro.</p><p>Just like the generic infrastructure, the <code class="literal">rebar</code> infrastructure works
+by defining a number of variables before calling the <code class="literal">rebar-package</code>
+macro.</p><p>First, all the package metadata information variables that exist in
+the generic infrastructure also exist in the <code class="literal">rebar</code> infrastructure:
+<code class="literal">ERLANG_FOOBAR_VERSION</code>, <code class="literal">ERLANG_FOOBAR_SOURCE</code>,
+<code class="literal">ERLANG_FOOBAR_PATCH</code>, <code class="literal">ERLANG_FOOBAR_SITE</code>,
+<code class="literal">ERLANG_FOOBAR_SUBDIR</code>, <code class="literal">ERLANG_FOOBAR_DEPENDENCIES</code>,
+<code class="literal">ERLANG_FOOBAR_INSTALL_STAGING</code>, <code class="literal">ERLANG_FOOBAR_INSTALL_TARGET</code>,
+<code class="literal">ERLANG_FOOBAR_LICENSE</code> and <code class="literal">ERLANG_FOOBAR_LICENSE_FILES</code>.</p><p>A few additional variables, specific to the <code class="literal">rebar</code> infrastructure,
+can also be defined. Many of them are only useful in very specific
+cases, typical packages will therefore only use a few of them.</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p class="simpara">
+<code class="literal">ERLANG_FOOBAR_USE_AUTOCONF</code>, to specify that the package uses
+  <span class="emphasis"><em>autoconf</em></span> at the configuration step.  When a package sets this
+  variable to <code class="literal">YES</code>, the <code class="literal">autotools</code> infrastructure is used.
+</p><p><strong>Note. </strong>You can also use some of the variables from the <code class="literal">autotools</code>
+  infrastructure: <code class="literal">ERLANG_FOOBAR_CONF_ENV</code>, <code class="literal">ERLANG_FOOBAR_CONF_OPTS</code>,
+  <code class="literal">ERLANG_FOOBAR_AUTORECONF</code>, <code class="literal">ERLANG_FOOBAR_AUTORECONF_ENV</code> and
+  <code class="literal">ERLANG_FOOBAR_AUTORECONF_OPTS</code>.</p></li><li class="listitem"><p class="simpara">
+<code class="literal">ERLANG_FOOBAR_USE_BUNDLED_REBAR</code>, to specify that the package has
+  a bundled version of <span class="emphasis"><em>rebar</em></span> <span class="strong"><strong>and</strong></span> that it shall be used. Valid
+  values are <code class="literal">YES</code> or <code class="literal">NO</code> (the default).
+</p><p><strong>Note. </strong>If the package bundles a <span class="emphasis"><em>rebar</em></span> utility, but can use the generic
+  one that Buildroot provides, just say <code class="literal">NO</code> (i.e., do not specify
+  this variable). Only set if it is mandatory to use the <span class="emphasis"><em>rebar</em></span>
+  utility bundled in this package.</p></li><li class="listitem">
+<code class="literal">ERLANG_FOOBAR_REBAR_ENV</code>, to specify additional environment
+  variables to pass to the <span class="emphasis"><em>rebar</em></span> utility.
+</li></ul></div><p>With the rebar infrastructure, all the steps required to build
+and install the packages are already defined, and they generally work
+well for most rebar-based packages. However, when required, it is
+still possible to customize what is done in any particular step:</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+By adding a post-operation hook (after extract, patch, configure,
+  build or install). See <a class="xref" href="#hooks" title="17.15. Hooks available in the various build steps">Section 17.15, “Hooks available in the various build steps”</a> for details.
+</li><li class="listitem">
+By overriding one of the steps. For example, even if the rebar
+  infrastructure is used, if the package <code class="literal">.mk</code> file defines its
+  own <code class="literal">ERLANG_FOOBAR_BUILD_CMDS</code> variable, it will be used instead
+  of the default rebar one. However, using this method should be
+  restricted to very specific cases. Do not use it in the general
+  case.
+</li></ul></div></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_infrastructure_for_asciidoc_documents"></a>17.14. Infrastructure for asciidoc documents</h2></div></div></div><p><a id="asciidoc-documents-tutorial"></a>The Buildroot manual, which you are currently reading, is entirely written
+using the <a class="ulink" href="http://asciidoc.org/" target="_top">AsciiDoc</a> mark-up syntax. The manual is then
+rendered to many formats:</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+html
+</li><li class="listitem">
+split-html
+</li><li class="listitem">
+pdf
+</li><li class="listitem">
+epub
+</li><li class="listitem">
+text
+</li></ul></div><p>Although Buildroot only contains one document written in AsciiDoc, there
+is, as for packages, an infrastructure for rendering documents using the
+AsciiDoc syntax.</p><p>Also as for packages, the AsciiDoc infrastructure is available from
+<a class="link" href="#outside-br-custom" title="9.2. Keeping customizations outside of Buildroot">BR2_EXTERNAL</a>
+<a class="xref" href="#outside-br-custom" title="9.2. Keeping customizations outside of Buildroot">Section 9.2, “Keeping customizations outside of Buildroot”</a>. This allows documentation for a
+BR2_EXTERNAL tree to match the Buildroot documentation, as it will be
+rendered to the same formats and use the same layout and theme.</p><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="_literal_asciidoc_document_literal_tutorial"></a>17.14.1. <code class="literal">asciidoc-document</code> tutorial</h3></div></div></div><p>Whereas package infrastructures are suffixed with <code class="literal">-package</code>, the document
+infrastructures are suffixed with <code class="literal">-document</code>. So, the AsciiDoc infrastructure
+is named <code class="literal">asciidoc-document</code>.</p><p>Here is an example to render a simple AsciiDoc document.</p><pre class="screen">01: ################################################################################
+02: #
+03: # foo-document
+04: #
+05: ################################################################################
+06:
+07: FOO_SOURCES = $(sort $(wildcard $(pkgdir)/*))
+08: $(eval $(call asciidoc-document))</pre><p>On line 7, the Makefile declares what the sources of the document are.
+Currently, it is expected that the document’s sources are only local;
+Buildroot will not attempt to download anything to render a document.
+Thus, you must indicate where the sources are. Usually, the string
+above is sufficient for a document with no sub-directory structure.</p><p>On line 8, we call the <code class="literal">asciidoc-document</code> function, which generates all
+the Makefile code necessary to render the document.</p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="_literal_asciidoc_document_literal_reference"></a>17.14.2. <code class="literal">asciidoc-document</code> reference</h3></div></div></div><p>The list of variables that can be set in a <code class="literal">.mk</code> file to give metadata
+information is (assuming the document name is <code class="literal">foo</code>) :</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+<code class="literal">FOO_SOURCES</code>, mandatory, defines the source files for the document.
+</li><li class="listitem">
+<code class="literal">FOO_RESOURCES</code>, optional, may contain a space-separated list of paths
+  to one or more directories containing so-called resources (like CSS or
+  images). By default, empty.
+</li></ul></div><p>There are also additional hooks (see <a class="xref" href="#hooks" title="17.15. Hooks available in the various build steps">Section 17.15, “Hooks available in the various build steps”</a> for general information
+on hooks), that a document may set to define extra actions to be done at
+various steps:</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+<code class="literal">FOO_POST_RSYNC_HOOKS</code> to run additional commands after the sources
+  have been copied by Buildroot. This can for example be used to
+  generate part of the manual with information extracted from the
+  tree. As an example, Buildroot uses this hook to generate the tables
+  in the appendices.
+</li><li class="listitem">
+<code class="literal">FOO_CHECK_DEPENDENCIES_HOOKS</code> to run additional tests on required
+  components to generate the document. In AsciiDoc, it is possible to
+  call filters, that is, programs that will parse an AsciiDoc block and
+  render it appropriately (e.g. <a class="ulink" href="http://ditaa.sourceforge.net/" target="_top">ditaa</a> or
+  <a class="ulink" href="https://pythonhosted.org/aafigure/" target="_top">aafigure</a>).
+</li><li class="listitem">
+<code class="literal">FOO_CHECK_DEPENDENCIES_&lt;FMT&gt;_HOOKS</code>, to run additional tests for
+  the specified format <code class="literal">&lt;FMT&gt;</code> (see the list of rendered formats, above).
+</li></ul></div><p>Here is a complete example that uses all variables and all hooks:</p><pre class="screen">01: ################################################################################
+02: #
+03: # foo-document
+04: #
+05: ################################################################################
+06:
+07: FOO_SOURCES = $(sort $(wildcard $(pkgdir)/*))
+08: FOO_RESOURCES = $(sort $(wildcard $(pkgdir)/ressources))
+09:
+10: define FOO_GEN_EXTRA_DOC
+11:     /path/to/generate-script --outdir=$(@D)
+12: endef
+13: FOO_POST_RSYNC_HOOKS += FOO_GEN_EXTRA_DOC
+14:
+15: define FOO_CHECK_MY_PROG
+16:     if ! which my-prog &gt;/dev/null 2&gt;&amp;1; then \
+17:         echo "You need my-prog to generate the foo document"; \
+18:         exit 1; \
+19:     fi
+20: endef
+21: FOO_CHECK_DEPENDENCIES_HOOKS += FOO_CHECK_MY_PROG
+22:
+23: define FOO_CHECK_MY_OTHER_PROG
+24:     if ! which my-other-prog &gt;/dev/null 2&gt;&amp;1; then \
+25:         echo "You need my-other-prog to generate the foo document as PDF"; \
+26:         exit 1; \
+27:     fi
+28: endef
+29: FOO_CHECK_DEPENDENCIES_PDF_HOOKS += FOO_CHECK_MY_OTHER_PROG
+30:
+31: $(eval $(call asciidoc-document))</pre></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="hooks"></a>17.15. Hooks available in the various build steps</h2></div></div></div><p>The generic infrastructure (and as a result also the derived autotools
+and cmake infrastructures) allow packages to specify hooks.
+These define further actions to perform after existing steps.
+Most hooks aren’t really useful for generic packages, since the <code class="literal">.mk</code>
+file already has full control over the actions performed in each step
+of the package construction.</p><p>The following hook points are available:</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+<code class="literal">LIBFOO_PRE_DOWNLOAD_HOOKS</code>
+</li><li class="listitem">
+<code class="literal">LIBFOO_POST_DOWNLOAD_HOOKS</code>
+</li><li class="listitem">
+<code class="literal">LIBFOO_PRE_EXTRACT_HOOKS</code>
+</li><li class="listitem">
+<code class="literal">LIBFOO_POST_EXTRACT_HOOKS</code>
+</li><li class="listitem">
+<code class="literal">LIBFOO_PRE_RSYNC_HOOKS</code>
+</li><li class="listitem">
+<code class="literal">LIBFOO_POST_RSYNC_HOOKS</code>
+</li><li class="listitem">
+<code class="literal">LIBFOO_PRE_PATCH_HOOKS</code>
+</li><li class="listitem">
+<code class="literal">LIBFOO_POST_PATCH_HOOKS</code>
+</li><li class="listitem">
+<code class="literal">LIBFOO_PRE_CONFIGURE_HOOKS</code>
+</li><li class="listitem">
+<code class="literal">LIBFOO_POST_CONFIGURE_HOOKS</code>
+</li><li class="listitem">
+<code class="literal">LIBFOO_PRE_BUILD_HOOKS</code>
+</li><li class="listitem">
+<code class="literal">LIBFOO_POST_BUILD_HOOKS</code>
+</li><li class="listitem">
+<code class="literal">LIBFOO_PRE_INSTALL_HOOKS</code> (for host packages only)
+</li><li class="listitem">
+<code class="literal">LIBFOO_POST_INSTALL_HOOKS</code> (for host packages only)
+</li><li class="listitem">
+<code class="literal">LIBFOO_PRE_INSTALL_STAGING_HOOKS</code> (for target packages only)
+</li><li class="listitem">
+<code class="literal">LIBFOO_POST_INSTALL_STAGING_HOOKS</code> (for target packages only)
+</li><li class="listitem">
+<code class="literal">LIBFOO_PRE_INSTALL_TARGET_HOOKS</code> (for target packages only)
+</li><li class="listitem">
+<code class="literal">LIBFOO_POST_INSTALL_TARGET_HOOKS</code> (for target packages only)
+</li><li class="listitem">
+<code class="literal">LIBFOO_PRE_INSTALL_IMAGES_HOOKS</code>
+</li><li class="listitem">
+<code class="literal">LIBFOO_POST_INSTALL_IMAGES_HOOKS</code>
+</li><li class="listitem">
+<code class="literal">LIBFOO_PRE_LEGAL_INFO_HOOKS</code>
+</li><li class="listitem">
+<code class="literal">LIBFOO_POST_LEGAL_INFO_HOOKS</code>
+</li></ul></div><p>These variables are <span class="emphasis"><em>lists</em></span> of variable names containing actions to be
+performed at this hook point. This allows several hooks to be
+registered at a given hook point. Here is an example:</p><pre class="screen">define LIBFOO_POST_PATCH_FIXUP
+        action1
+        action2
+endef
+
+LIBFOO_POST_PATCH_HOOKS += LIBFOO_POST_PATCH_FIXUP</pre><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="_using_the_literal_post_rsync_literal_hook"></a>17.15.1. Using the <code class="literal">POST_RSYNC</code> hook</h3></div></div></div><p>The <code class="literal">POST_RSYNC</code> hook is run only for packages that use a local source,
+either through the <code class="literal">local</code> site method or the <code class="literal">OVERRIDE_SRCDIR</code>
+mechanism. In this case, package sources are copied using <code class="literal">rsync</code> from
+the local location into the buildroot build directory. The <code class="literal">rsync</code>
+command does not copy all files from the source directory, though.
+Files belonging to a version control system, like the directories
+<code class="literal">.git</code>, <code class="literal">.hg</code>, etc. are not copied. For most packages this is
+sufficient, but a given package can perform additional actions using
+the <code class="literal">POST_RSYNC</code> hook.</p><p>In principle, the hook can contain any command you want. One specific
+use case, though, is the intentional copying of the version control
+directory using <code class="literal">rsync</code>. The <code class="literal">rsync</code> command you use in the hook can, among
+others, use the following variables:</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+<code class="literal">$(SRCDIR)</code>: the path to the overridden source directory
+</li><li class="listitem">
+<code class="literal">$(@D)</code>: the path to the build directory
+</li></ul></div></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_gettext_integration_and_interaction_with_packages"></a>17.16. Gettext integration and interaction with packages</h2></div></div></div><p>Many packages that support internationalization use the gettext
+library. Dependencies for this library are fairly complicated and
+therefore, deserve some explanation.</p><p>The <span class="emphasis"><em>uClibc</em></span> C library doesn’t implement gettext functionality;
+therefore with this C library, a separate gettext must be compiled,
+which is provided by the additional <code class="literal">libintl</code> library, part of the
+<code class="literal">gettext</code> package.</p><p>On the other hand, the <span class="emphasis"><em>glibc</em></span> C library does integrate its own
+gettext library functions, so it is not necessary to build a separate
+<code class="literal">libintl</code> library.</p><p>However, certain packages need some gettext utilities on the target,
+such as the <code class="literal">gettext</code> program itself, which allows to retrieve
+translated strings, from the command line.</p><p>Additionally, some packages (such as <code class="literal">libglib2</code>) do require gettext
+functions unconditionally, while other packages (in general, those who
+support <code class="literal">--disable-nls</code>) only require gettext functions when locale
+support is enabled.</p><p>Therefore, Buildroot defines two configuration options:</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+<code class="literal">BR2_NEEDS_GETTEXT</code>, which is true as soon as the toolchain doesn’t
+  provide its own gettext implementation
+</li><li class="listitem">
+<code class="literal">BR2_NEEDS_GETTEXT_IF_LOCALE</code>, which is true if the toolchain
+  doesn’t provide its own gettext implementation and if locale support
+  is enabled
+</li></ul></div><p>Packages that need gettext only when locale support is enabled should:</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+use <code class="literal">select BR2_PACKAGE_GETTEXT if BR2_NEEDS_GETTEXT_IF_LOCALE</code> in the
+  <code class="literal">Config.in</code> file;
+</li><li class="listitem">
+use <code class="literal">$(if $(BR2_NEEDS_GETTEXT_IF_LOCALE),gettext)</code> in the package
+  <code class="literal">DEPENDENCIES</code> variable in the <code class="literal">.mk</code> file.
+</li></ul></div><p>Packages that unconditionally need gettext (which should be very rare)
+should:</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+use <code class="literal">select BR2_PACKAGE_GETTEXT if BR2_NEEDS_GETTEXT</code> in the <code class="literal">Config.in</code>
+  file;
+</li><li class="listitem">
+use <code class="literal">$(if $(BR2_NEEDS_GETTEXT),gettext)</code> in the package
+  <code class="literal">DEPENDENCIES</code> variable in the <code class="literal">.mk</code> file.
+</li></ul></div><p>Packages that need the <code class="literal">gettext</code> utilities on the target (should be
+rare) should:</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+use <code class="literal">select BR2_PACKAGE_GETTEXT</code> in their <code class="literal">Config.in</code> file,
+  indicating in a comment above that it’s a runtime dependency only.
+</li><li class="listitem">
+not add any <code class="literal">gettext</code> dependency in the <code class="literal">DEPENDENCIES</code> variable of
+  their <code class="literal">.mk</code> file.
+</li></ul></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_tips_and_tricks"></a>17.17. Tips and tricks</h2></div></div></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="package-name-variable-relation"></a>17.17.1. Package name, config entry name and makefile variable relationship</h3></div></div></div><p>In Buildroot, there is some relationship between:</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+the <span class="emphasis"><em>package name</em></span>, which is the package directory name (and the
+  name of the <code class="literal">*.mk</code> file);
+</li><li class="listitem">
+the config entry name that is declared in the <code class="literal">Config.in</code> file;
+</li><li class="listitem">
+the makefile variable prefix.
+</li></ul></div><p>It is mandatory to maintain consistency between these elements,
+using the following rules:</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+the package directory and the <code class="literal">*.mk</code> name are the <span class="emphasis"><em>package name</em></span>
+  itself (e.g.: <code class="literal">package/foo-bar_boo/foo-bar_boo.mk</code>);
+</li><li class="listitem">
+the <span class="emphasis"><em>make</em></span> target name is the <span class="emphasis"><em>package name</em></span> itself (e.g.:
+  <code class="literal">foo-bar_boo</code>);
+</li><li class="listitem">
+the config entry is the upper case <span class="emphasis"><em>package name</em></span> with <code class="literal">.</code> and <code class="literal">-</code>
+  characters substituted with <code class="literal">_</code>, prefixed with <code class="literal">BR2_PACKAGE_</code> (e.g.:
+  <code class="literal">BR2_PACKAGE_FOO_BAR_BOO</code>);
+</li><li class="listitem">
+the <code class="literal">*.mk</code> file variable prefix is the upper case <span class="emphasis"><em>package name</em></span>
+  with <code class="literal">.</code> and <code class="literal">-</code> characters substituted with <code class="literal">_</code> (e.g.:
+  <code class="literal">FOO_BAR_BOO_VERSION</code>).
+</li></ul></div></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="github-download-url"></a>17.17.2. How to add a package from GitHub</h3></div></div></div><p>Packages on GitHub often don’t have a download area with release tarballs.
+However, it is possible to download tarballs directly from the repository
+on GitHub. As GitHub is known to have changed download mechanisms in the
+past, the <span class="emphasis"><em>github</em></span> helper function should be used as shown below.</p><pre class="screen"># Use a tag or a full commit ID
+FOO_VERSION = v1.0
+FOO_SITE = $(call github,&lt;user&gt;,&lt;package&gt;,$(FOO_VERSION))</pre><div class="itemizedlist"><p class="title"><strong>Notes</strong></p><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+The FOO_VERSION can either be a tag or a commit ID.
+</li><li class="listitem">
+The tarball name generated by github matches the default one from
+  Buildroot (e.g.: <code class="literal">foo-f6fb6654af62045239caed5950bc6c7971965e60.tar.gz</code>),
+  so it is not necessary to specify it in the <code class="literal">.mk</code> file.
+</li><li class="listitem">
+When using a commit ID as version, you should use the full 40 hex characters.
+</li></ul></div><p>If the package you wish to add does have a release section on GitHub, the
+maintainer may have uploaded a release tarball, or the release may just point
+to the automatically generated tarball from the git tag. If there is a
+release tarball uploaded by the maintainer, we prefer to use that since it
+may be slightly different (e.g. it contains a configure script so we don’t
+need to do AUTORECONF).</p><p>You can see on the release page if it’s an uploaded tarball or a git tag:</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+If there is a green download button, like
+  <a class="ulink" href="https://github.com/zedshaw/mongrel2/releases/tag/v1.9.1" target="_top">mongrel2</a>, then it
+  was uploaded by the maintainer and you should use the link of that button to
+  specify <code class="literal">FOO_SITE</code>, and not use the <span class="emphasis"><em>github</em></span> helper.
+</li><li class="listitem">
+If there is grey download button, like
+  <a class="ulink" href="https://github.com/xbmc/xbmc/releases/tag/13.2-Gotham" target="_top">xbmc</a>, then it’s an
+  automatically generated tarball and you should use the <span class="emphasis"><em>github</em></span> helper
+  function.
+</li></ul></div></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_conclusion"></a>17.18. Conclusion</h2></div></div></div><p>As you can see, adding a software package to Buildroot is simply a
+matter of writing a Makefile using an existing example and modifying it
+according to the compilation process required by the package.</p><p>If you package software that might be useful for other people, don’t
+forget to send a patch to the Buildroot mailing list (see
+<a class="xref" href="#submitting-patches" title="21.5. Submitting patches">Section 21.5, “Submitting patches”</a>)!</p></div></div><div class="chapter"><div class="titlepage"><div><div><h2 class="title"><a id="patch-policy"></a>Chapter 18. Patching a package</h2></div></div></div><p>While integrating a new package or updating an existing one, it may be
+necessary to patch the source of the software to get it cross-built within
+Buildroot.</p><p>Buildroot offers an infrastructure to automatically handle this during
+the builds. It supports three ways of applying patch sets: downloaded patches,
+patches supplied within buildroot and patches located in a user-defined
+global patch directory.</p><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_providing_patches"></a>18.1. Providing patches</h2></div></div></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="_downloaded"></a>18.1.1. Downloaded</h3></div></div></div><p>If it is necessary to apply a patch that is available for download, then add it
+to the <code class="literal">&lt;packagename&gt;_PATCH</code> variable. It is downloaded from the same site
+as the package itself. It can be a single patch, or a tarball containing a
+patch series.</p><p>This method is typically used for packages from Debian.</p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="_within_buildroot"></a>18.1.2. Within Buildroot</h3></div></div></div><p>Most patches are provided within Buildroot, in the package
+directory; these typically aim to fix cross-compilation, libc support,
+or other such issues.</p><p>These patch files should be named <code class="literal">&lt;number&gt;-&lt;description&gt;.patch</code>.</p><div class="itemizedlist"><p class="title"><strong>Notes</strong></p><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+The patch files coming with Buildroot should not contain any package version
+  reference in their filename.
+</li><li class="listitem">
+The field <code class="literal">&lt;number&gt;</code> in the patch file name refers to the <span class="emphasis"><em>apply order</em></span>,
+  and shall start at 1; It is preferred to pad the number with zeros up to 4
+  digits, like <span class="emphasis"><em>git-format-patch</em></span> does. E.g.: <code class="literal">0001-foobar-the-buz.patch</code>
+</li><li class="listitem">
+Previously, it was mandatory for patches to be prefixed with the name of
+  the package, like <code class="literal">&lt;package&gt;-&lt;number&gt;-&lt;description&gt;.patch</code>, but that is
+  no longer the case. Existing packages will be fixed as time passes. <span class="emphasis"><em>Do
+  not prefix patches with the package name.</em></span>
+</li><li class="listitem">
+Previously, a <code class="literal">series</code> file, as used by <code class="literal">quilt</code>, could also be added in
+  the package directory. In that case, the <code class="literal">series</code> file defines the patch
+  application order. This is deprecated, and will be removed in the future.
+  <span class="emphasis"><em>Do not use a series file.</em></span>
+</li></ul></div></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="_global_patch_directory"></a>18.1.3. Global patch directory</h3></div></div></div><p>The <code class="literal">BR2_GLOBAL_PATCH_DIR</code> configuration file option can be
+used to specify a space separated list of one or more directories
+containing global package patches. See <a class="xref" href="#customize-patches" title="9.8. Adding project-specific patches">Section 9.8, “Adding project-specific patches”</a> for
+details.</p></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="patch-apply-order"></a>18.2. How patches are applied</h2></div></div></div><div class="orderedlist"><ol class="orderedlist" type="1"><li class="listitem">
+Run the <code class="literal">&lt;packagename&gt;_PRE_PATCH_HOOKS</code> commands if defined;
+</li><li class="listitem">
+Cleanup the build directory, removing any existing <code class="literal">*.rej</code> files;
+</li><li class="listitem">
+If <code class="literal">&lt;packagename&gt;_PATCH</code> is defined, then patches from these
+  tarballs are applied;
+</li><li class="listitem"><p class="simpara">
+If there are some <code class="literal">*.patch</code> files in the package’s Buildroot
+  directory or in a package subdirectory named <code class="literal">&lt;packageversion&gt;</code>,
+  then:
+</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+If a <code class="literal">series</code> file exists in the package directory, then patches are
+  applied according to the <code class="literal">series</code> file;
+</li><li class="listitem">
+Otherwise, patch files matching <code class="literal">&lt;packagename&gt;-*.patch</code>
+  are applied in alphabetical order.
+  So, to ensure they are applied in the right order, it is highly
+  recommended to name the patch files like this:
+  <code class="literal">&lt;packagename&gt;-&lt;number&gt;-&lt;description&gt;.patch</code>, where <code class="literal">&lt;number&gt;</code>
+  refers to the <span class="emphasis"><em>apply order</em></span>.
+</li></ul></div></li><li class="listitem">
+If <code class="literal">BR2_GLOBAL_PATCH_DIR</code> is defined, the directories will be
+  enumerated in the order they are specified. The patches are applied
+  as described in the previous step.
+</li><li class="listitem">
+Run the <code class="literal">&lt;packagename&gt;_POST_PATCH_HOOKS</code> commands if defined.
+</li></ol></div><p>If something goes wrong in the steps <span class="emphasis"><em>3</em></span> or <span class="emphasis"><em>4</em></span>, then the build fails.</p></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_format_and_licensing_of_the_package_patches"></a>18.3. Format and licensing of the package patches</h2></div></div></div><p>Patches are released under the same license as the software that is
+modified.</p><p>A message explaining what the patch does, and why it is needed, should
+be added in the header commentary of the patch.</p><p>You should add a <code class="literal">Signed-off-by</code> statement in the header of the each
+patch to help with keeping track of the changes and to certify that the
+patch is released under the same license as the software that is modified.</p><p>If the software is under version control, it is recommended to use the
+upstream SCM software to generate the patch set.</p><p>Otherwise, concatenate the header with the output of the
+<code class="literal">diff -purN package-version.orig/ package-version/</code> command.</p><p>At the end, the patch should look like:</p><pre class="screen">configure.ac: add C++ support test
+
+Signed-off-by: John Doe &lt;john.doe@noname.org&gt;
+
+--- configure.ac.orig
++++ configure.ac
+@@ -40,2 +40,12 @@
+
+AC_PROG_MAKE_SET
++
++AC_CACHE_CHECK([whether the C++ compiler works],
++               [rw_cv_prog_cxx_works],
++               [AC_LANG_PUSH([C++])
++                AC_LINK_IFELSE([AC_LANG_PROGRAM([], [])],
++                               [rw_cv_prog_cxx_works=yes],
++                               [rw_cv_prog_cxx_works=no])
++                AC_LANG_POP([C++])])
++
++AM_CONDITIONAL([CXX_WORKS], [test "x$rw_cv_prog_cxx_works" = "xyes"])</pre></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_integrating_patches_found_on_the_web"></a>18.4. Integrating patches found on the Web</h2></div></div></div><p>When integrating a patch of which you are not the author, you have to
+add a few things in the header of the patch itself.</p><p>Depending on whether the patch has been obtained from the project
+repository itself, or from somewhere on the web, add one of the
+following tags:</p><pre class="screen">Backported from: &lt;some commit id&gt;</pre><p>or</p><pre class="screen">Fetch from: &lt;some url&gt;</pre><p>It is also sensible to add a few words about any changes to the patch
+that may have been necessary.</p></div></div><div class="chapter"><div class="titlepage"><div><div><h2 class="title"><a id="download-infra"></a>Chapter 19. Download infrastructure</h2></div></div></div><p>TODO</p></div><div class="chapter"><div class="titlepage"><div><div><h2 class="title"><a id="debugging-buildroot"></a>Chapter 20. Debugging Buildroot</h2></div></div></div><p>It is possible to instrument the steps <code class="literal">Buildroot</code> does when building
+packages. Define the variable <code class="literal">BR2_INSTRUMENTATION_SCRIPTS</code> to contain
+the path of one or more scripts (or other executables), in a
+space-separated list, you want called before and after each step. The
+scripts are called in sequence, with three parameters:</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+<code class="literal">start</code> or <code class="literal">end</code> to denote the start (resp. the end) of a step;
+</li><li class="listitem">
+the name of the step about to be started, or which just ended;
+</li><li class="listitem">
+the name of the package.
+</li></ul></div><p>For example :</p><pre class="screen">make BR2_INSTRUMENTATION_SCRIPTS="/path/to/my/script1 /path/to/my/script2"</pre><p>The list of steps is:</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+<code class="literal">extract</code>
+</li><li class="listitem">
+<code class="literal">patch</code>
+</li><li class="listitem">
+<code class="literal">configure</code>
+</li><li class="listitem">
+<code class="literal">build</code>
+</li><li class="listitem">
+<code class="literal">install-host</code>, when a host-package is installed in <code class="literal">$(HOST_DIR)</code>
+</li><li class="listitem">
+<code class="literal">install-target</code>, when a target-package is installed in <code class="literal">$(TARGET_DIR)</code>
+</li><li class="listitem">
+<code class="literal">install-staging</code>, when a target-package is installed in <code class="literal">$(STAGING_DIR)</code>
+</li><li class="listitem">
+<code class="literal">install-image</code>, when a target-package installs files in <code class="literal">$(BINARIES_DIR)</code>
+</li></ul></div><p>The script has access to the following variables:</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+<code class="literal">BR2_CONFIG</code>: the path to the Buildroot .config file
+</li><li class="listitem">
+<code class="literal">HOST_DIR</code>, <code class="literal">STAGING_DIR</code>, <code class="literal">TARGET_DIR</code>: see
+    <a class="xref" href="#generic-package-reference" title="17.5.2. generic-package reference">Section 17.5.2, “<code class="literal">generic-package</code> reference”</a>
+</li><li class="listitem">
+<code class="literal">BUILD_DIR</code>: the directory where packages are extracted and built
+</li><li class="listitem">
+<code class="literal">BINARIES_DIR</code>: the place where all binary files (aka images) are
+    stored
+</li><li class="listitem">
+<code class="literal">BASE_DIR</code>: the base output directory
+</li></ul></div></div><div class="chapter"><div class="titlepage"><div><div><h2 class="title"><a id="_contributing_to_buildroot"></a>Chapter 21. Contributing to Buildroot</h2></div></div></div><p>There are many ways in which you can contribute to Buildroot: analyzing
+and fixing bugs, analyzing and fixing package build failures detected by
+the autobuilders, testing and reviewing patches sent by other
+developers, working on the items in our TODO list and sending your own
+improvements to Buildroot or its manual. The following sections give a
+little more detail on each of these items.</p><p>If you are interested in contributing to Buildroot, the first thing you
+should do is to subscribe to the Buildroot mailing list. This list is
+the main way of interacting with other Buildroot developers and to send
+contributions to. If you aren’t subscribed yet, then refer to
+<a class="xref" href="#community-resources" title="Chapter 5. Community resources">Chapter 5, <em>Community resources</em></a> for the subscription link.</p><p>If you are going to touch the code, it is highly recommended to use a
+git repository of Buildroot, rather than starting from an extracted
+source code tarball. Git is the easiest way to develop from and directly
+send your patches to the mailing list. Refer to <a class="xref" href="#getting-buildroot" title="Chapter 3. Getting Buildroot">Chapter 3, <em>Getting Buildroot</em></a>
+for more information on obtaining a Buildroot git tree.</p><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_reproducing_analyzing_and_fixing_bugs"></a>21.1. Reproducing, analyzing and fixing bugs</h2></div></div></div><p>A first way of contributing is to have a look at the open bug reports in
+the <a class="ulink" href="https://bugs.busybox.net/buglist.cgi?product=buildroot" target="_top">Buildroot bug
+tracker</a>. As we strive to keep the bug count as small as possible, all
+help in reproducing, analyzing and fixing reported bugs is more than
+welcome. Don’t hesitate to add a comment to bug reports reporting your
+findings, even if you don’t yet see the full picture.</p></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_analyzing_and_fixing_autobuild_failures"></a>21.2. Analyzing and fixing autobuild failures</h2></div></div></div><p>The Buildroot autobuilders are a set of build machines that continuously
+run Buildroot builds based on random configurations. This is done for
+all architectures supported by Buildroot, with various toolchains, and
+with a random selection of packages. With the large commit activity on
+Buildroot, these autobuilders are a great help in detecting problems
+very early after commit.</p><p>All build results are available at <a class="ulink" href="http://autobuild.buildroot.org" target="_top">http://autobuild.buildroot.org</a>,
+statistics are at <a class="ulink" href="http://autobuild.buildroot.org/stats.php" target="_top">http://autobuild.buildroot.org/stats.php</a>. Every day,
+an overview of all failed packages is sent to the mailing list.</p><p>Detecting problems is great, but obviously these problems have to be
+fixed as well. Your contribution is very welcome here! There are
+basically two things that can be done:</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+Analyzing the problems. The daily summary mails do not contain details
+  about the actual failures: in order to see what’s going on you have to
+  open the build log and check the last output. Having someone doing
+  this for all packages in the mail is very useful for other developers,
+  as they can make a quick initial analysis based on this output alone.
+</li><li class="listitem"><p class="simpara">
+Fixing a problem. When fixing autobuild failures, you should follow
+  these steps:
+</p><div class="orderedlist"><ol class="orderedlist" type="1"><li class="listitem">
+Check if you can reproduce the problem by building with the same
+    configuration. You can do this manually, or use the
+    <a class="ulink" href="http://git.buildroot.org/buildroot-test/tree/utils/br-reproduce-build" target="_top">br-reproduce-build</a>
+    script that will automatically clone a Buildroot git repository,
+    checkout the correct revision, download and set the right
+    configuration, and start the build.
+</li><li class="listitem">
+Analyze the problem and create a fix.
+</li><li class="listitem">
+Verify that the problem is really fixed by starting from a clean
+    Buildroot tree and only applying your fix.
+</li><li class="listitem">
+Send the fix to the Buildroot mailing list (see
+    <a class="xref" href="#submitting-patches" title="21.5. Submitting patches">Section 21.5, “Submitting patches”</a>). In case you created a patch against the
+    package sources, you should also send the patch upstream so that the
+    problem will be fixed in a later release, and the patch in Buildroot
+    can be removed.
+    In the commit message of a patch fixing an autobuild failure, add a
+    reference to the build result directory, as follows:
+</li></ol></div></li></ul></div><pre class="screen">Fixes http://autobuild.buildroot.org/results/51000a9d4656afe9e0ea6f07b9f8ed374c2e4069</pre></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_reviewing_and_testing_patches"></a>21.3. Reviewing and testing patches</h2></div></div></div><p>With the amount of patches sent to the mailing list each day, the
+maintainer has a very hard job to judge which patches are ready to apply
+and which ones aren’t. Contributors can greatly help here by reviewing
+and testing these patches.</p><p>In the review process, do not hesitate to respond to patch submissions
+for remarks, suggestions or anything that will help everyone to
+understand the patches and make them better. Please use internet
+style replies in plain text emails when responding to patch
+submissions.</p><p>To indicate approval of a patch, there are three formal tags that keep
+track of this approval. To add your tag to a patch, reply to it with the
+approval tag below the original author’s Signed-off-by line. These tags
+will be picked up automatically by patchwork (see
+<a class="xref" href="#apply-patches-patchwork" title="21.3.1. Applying Patches from Patchwork">Section 21.3.1, “Applying Patches from Patchwork”</a>) and will be part of the commit log when
+the patch is accepted.</p><div class="variablelist"><dl class="variablelist"><dt><span class="term">
+Tested-by
+</span></dt><dd>
+Indicates that the patch has been tested successfully.
+  You are encouraged to specify what kind of testing you performed
+  (compile-test on architecture X and Y, runtime test on target A,
+  …). This additional information helps other testers and the
+  maintainer.
+</dd><dt><span class="term">
+Reviewed-by
+</span></dt><dd>
+Indicates that you code-reviewed the patch and did your
+  best in spotting problems, but you are not sufficiently familiar with
+  the area touched to provide an Acked-by tag. This means that there
+  may be remaining problems in the patch that would be spotted by
+  someone with more experience in that area. Should such problems be
+  detected, your Reviewed-by tag remains appropriate and you cannot
+  be blamed.
+</dd><dt><span class="term">
+Acked-by
+</span></dt><dd>
+Indicates that you code-reviewed the patch and you are
+  familiar enough with the area touched to feel that the patch can be
+  committed as-is (no additional changes required). In case it later
+  turns out that something is wrong with the patch, your Acked-by could
+  be considered inappropriate. The difference between Acked-by and
+  Reviewed-by is thus mainly that you are prepared to take the blame on
+  Acked patches, but not on Reviewed ones.
+</dd></dl></div><p>If you reviewed a patch and have comments on it, you should simply reply
+to the patch stating these comments, without providing a Reviewed-by or
+Acked-by tag. These tags should only be provided if you judge the patch
+to be good as it is.</p><p>It is important to note that neither Reviewed-by nor Acked-by imply
+that testing has been performed. To indicate that you both reviewed and
+tested the patch, provide two separate tags (Reviewed/Acked-by and
+Tested-by).</p><p>Note also that <span class="emphasis"><em>any developer</em></span> can provide Tested/Reviewed/Acked-by
+tags, without exception, and we encourage everyone to do this. Buildroot
+does not have a defined group of <span class="emphasis"><em>core</em></span> developers, it just so happens
+that some developers are more active than others. The maintainer will
+value tags according to the track record of their submitter. Tags
+provided by a regular contributor will naturally be trusted more than
+tags provided by a newcomer. As you provide tags more regularly, your
+<span class="emphasis"><em>trustworthiness</em></span> (in the eyes of the maintainer) will go up, but <span class="emphasis"><em>any</em></span>
+tag provided is valuable.</p><p>Buildroot’s Patchwork website can be used to pull in patches for testing
+purposes. Please see <a class="xref" href="#apply-patches-patchwork" title="21.3.1. Applying Patches from Patchwork">Section 21.3.1, “Applying Patches from Patchwork”</a> for more
+information on using Buildroot’s Patchwork website to apply patches.</p><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="apply-patches-patchwork"></a>21.3.1. Applying Patches from Patchwork</h3></div></div></div><p>The main use of Buildroot’s Patchwork website for a developer is for
+pulling in patches into their local git repository for testing
+purposes.</p><p>When browsing patches in the patchwork management interface, an <code class="literal">mbox</code>
+link is provided at the top of the page. Copy this link address and
+run the following commands:</p><pre class="screen">$ git checkout -b &lt;test-branch-name&gt;
+$ wget -O - &lt;mbox-url&gt; | git am</pre><p>Another option for applying patches is to create a bundle. A bundle is
+a set of patches that you can group together using the patchwork
+interface. Once the bundle is created and the bundle is made public,
+you can copy the <code class="literal">mbox</code> link for the bundle and apply the bundle
+using the above commands.</p></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_work_on_items_from_the_todo_list"></a>21.4. Work on items from the TODO list</h2></div></div></div><p>If you want to contribute to Buildroot but don’t know where to start,
+and you don’t like any of the above topics, you can always work on items
+from the <a class="ulink" href="http://elinux.org/Buildroot#Todo_list" target="_top">Buildroot TODO list</a>.
+Don’t hesitate to discuss an item first on the mailing list or on IRC.
+Do edit the wiki to indicate when you start working on an item, so we
+avoid duplicate efforts.</p></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="submitting-patches"></a>21.5. Submitting patches</h2></div></div></div><div class="note" style="margin-left: 0; margin-right: 10%;"><h3 class="title">Note</h3><p><span class="emphasis"><em>Please, do not attach patches to bugs, send them to the mailing list
+instead</em></span>.</p></div><p>If you made some changes to Buildroot and you would like to contribute
+them to the Buildroot project, proceed as follows. Starting from the
+changes committed in your local git view, <span class="emphasis"><em>rebase</em></span> your development
+branch on top of the upstream tree before generating a patch set. To do
+so, run:</p><pre class="screen">$ git fetch --all --tags
+$ git rebase origin/master</pre><p>Now, you are ready to generate then submit your patch set.</p><p>To generate it, run:</p><pre class="screen">$ git format-patch -M -n -s -o outgoing origin/master</pre><p>This will generate patch files in the <code class="literal">outgoing</code> subdirectory,
+automatically adding the <code class="literal">Signed-off-by</code> line.</p><p>Once patch files are generated, you can review/edit the commit message
+before submitting them, using your favorite text editor.</p><p>Lastly, send/submit your patch set to the Buildroot mailing list:</p><pre class="screen">$ git send-email --to buildroot@buildroot.org outgoing/*</pre><p>Note that <code class="literal">git</code> should be configured to use your mail account.
+To configure <code class="literal">git</code>, see <code class="literal">man git-send-email</code> or google it.</p><p>If you do not use <code class="literal">git send-email</code>, make sure posted <span class="strong"><strong>patches are not
+line-wrapped</strong></span>, otherwise they cannot easily be applied. In such a case,
+fix your e-mail client, or better yet, learn to use <code class="literal">git send-email</code>.</p><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="_cover_letter"></a>21.5.1. Cover letter</h3></div></div></div><p>If you want to present the whole patch set in a separate mail, add
+<code class="literal">--cover-letter</code> to the <code class="literal">git format-patch</code> command (see <code class="literal">man
+git-format-patch</code> for further information). This will generate a
+template for an introduction e-mail to your patch series.</p><p>A <span class="emphasis"><em>cover letter</em></span> may be useful to introduce the changes you propose
+in the following cases:</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+large number of commits in the series;
+</li><li class="listitem">
+deep impact of the changes in the rest of the project;
+</li><li class="listitem">
+RFC <a href="#ftn.idm139994497851168" class="footnote" id="idm139994497851168"><sup class="footnote">[4]</sup></a>;
+</li><li class="listitem">
+whenever you feel it will help presenting your work, your choices,
+  the review process, etc.
+</li></ul></div></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="_patch_revision_changelog"></a>21.5.2. Patch revision changelog</h3></div></div></div><p>When improvements are requested, the new revision of each commit
+should include a changelog of the modifications between each
+submission. Note that when your patch series is introduced by a cover
+letter, an overall changelog may be added to the cover letter in
+addition to the changelog in the individual commits.
+The best thing to rework a patch series is by interactive rebasing:
+<code class="literal">git rebase -i origin/master</code>. Consult the git manual for more
+information.</p><p>When added to the individual commits, this changelog is added when
+editing the commit message. Below the <code class="literal">Signed-off-by</code> section, add
+<code class="literal">---</code> and your changelog.</p><p>Although the changelog will be visible for the reviewers in the mail
+thread, as well as in <a class="ulink" href="http://patchwork.buildroot.org" target="_top">patchwork</a>, <code class="literal">git</code>
+will automatically ignores lines below <code class="literal">---</code> when the patch will be
+merged. This is the intended behavior: the changelog is not meant to
+be preserved forever in the <code class="literal">git</code> history of the project.</p><p>Hereafter the recommended layout:</p><pre class="screen">Patch title: short explanation, max 72 chars
+
+A paragraph that explains the problem, and how it manifests itself. If
+the problem is complex, it is OK to add more paragraphs. All paragraphs
+should be wrapped at 72 characters.
+
+A paragraph that explains the root cause of the problem. Again, more
+than on paragraph is OK.
+
+Finally, one or more paragraphs that explain how the problem is solved.
+Don't hesitate to explain complex solutions in detail.
+
+Signed-off-by: John DOE &lt;john.doe@example.net&gt;
+
+---
+Changes v2 -&gt; v3:
+  - foo bar  (suggested by Jane)
+  - bar buz
+
+Changes v1 -&gt; v2:
+  - alpha bravo  (suggested by John)
+  - charly delta</pre><p>Any patch revision should include the version number. The version number
+is simply composed of the letter <code class="literal">v</code> followed by an <code class="literal">integer</code> greater or
+equal to two (i.e. "PATCH v2", "PATCH v3" …).</p><p>This can be easily handled with <code class="literal">git format-patch</code> by using the option
+<code class="literal">--subject-prefix</code>:</p><pre class="screen">$ git format-patch --subject-prefix "PATCH v4" \
+    -M -s -o outgoing origin/master</pre></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="reporting-bugs"></a>21.6. Reporting issues/bugs or getting help</h2></div></div></div><p>Before reporting any issue, please check in
+<a class="link" href="#community-resources" title="Chapter 5. Community resources">the mailing list archive</a>
+<a class="xref" href="#community-resources" title="Chapter 5. Community resources">Chapter 5, <em>Community resources</em></a> whether someone has
+already reported and/or fixed a similar problem.</p><p>However you choose to report bugs or get help, either by
+opening a bug in the <a class="link" href="#community-resources" title="Chapter 5. Community resources">bug tracker</a>
+<a class="xref" href="#community-resources" title="Chapter 5. Community resources">Chapter 5, <em>Community resources</em></a> or by
+<a class="link" href="#community-resources" title="Chapter 5. Community resources">sending a mail to the mailing list</a>
+<a class="xref" href="#community-resources" title="Chapter 5. Community resources">Chapter 5, <em>Community resources</em></a>, there are
+a number of details to provide in order to help people reproduce and
+find a solution to the issue.</p><p>Try to think as if you were trying to help someone else; in
+that case, what would you need?</p><p>Here is a short list of details to provide in such case:</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+host machine (OS/release)
+</li><li class="listitem">
+version of Buildroot
+</li><li class="listitem">
+target for which the build fails
+</li><li class="listitem">
+package(s) for which the build fails
+</li><li class="listitem">
+the command that fails and its output
+</li><li class="listitem">
+any information you think that may be relevant
+</li></ul></div><p>Additionally, you should add the <code class="literal">.config</code> file (or if you know how, a
+<code class="literal">defconfig</code>; see <a class="xref" href="#customize-store-buildroot-config" title="9.3. Storing the Buildroot configuration">Section 9.3, “Storing the Buildroot configuration”</a>).</p><p>If some of these details are too large, do not hesitate to use a
+pastebin service. Note that not all available pastebin services will
+preserve Unix-style line terminators when downloading raw pastes.
+Following pastebin services are known to work correctly:
+- <a class="ulink" href="https://gist.github.com/" target="_top">https://gist.github.com/</a>
+- <a class="ulink" href="http://code.bulix.org/" target="_top">http://code.bulix.org/</a></p></div><div class="footnotes"><br /><hr style="width:100; text-align:left;margin-left: 0" /><div id="ftn.idm139994497851168" class="footnote"><p><a href="#idm139994497851168" class="simpara"><sup class="simpara">[4] </sup></a>RFC: (Request for comments) change proposal</p></div></div></div></div><div class="part"><div class="titlepage"><div><div><h1 class="title"><a id="_appendix"></a>Part IV. Appendix</h1></div></div></div><div class="chapter"><div class="titlepage"><div><div><h2 class="title"><a id="makedev-syntax"></a>Chapter 22. Makedev syntax documentation</h2></div></div></div><p>The makedev syntax is used in several places in Buildroot to
+define changes to be made for permissions, or which device files to
+create and how to create them, in order to avoid calls to mknod.</p><p>This syntax is derived from the makedev utility, and more complete
+documentation can be found in the <code class="literal">package/makedevs/README</code> file.</p><p>It takes the form of a space separated list of fields, one file per
+line; the fields are:</p><div class="informaltable"><table cellpadding="4px" style="border-collapse: collapse;border-top: 3px solid #527bbd; border-bottom: 3px solid #527bbd; border-left: 3px solid #527bbd; border-right: 3px solid #527bbd; "><colgroup><col class="col_1" /><col class="col_2" /><col class="col_3" /><col class="col_4" /><col class="col_5" /><col class="col_6" /><col class="col_7" /><col class="col_8" /><col class="col_9" /><col class="col_10" /></colgroup><tbody><tr><td style="border-right: 1px solid #527bbd; " align="left" valign="top"><p>name</p></td><td style="border-right: 1px solid #527bbd; " align="left" valign="top"><p>type</p></td><td style="border-right: 1px solid #527bbd; " align="left" valign="top"><p>mode</p></td><td style="border-right: 1px solid #527bbd; " align="left" valign="top"><p>uid</p></td><td style="border-right: 1px solid #527bbd; " align="left" valign="top"><p>gid</p></td><td style="border-right: 1px solid #527bbd; " align="left" valign="top"><p>major</p></td><td style="border-right: 1px solid #527bbd; " align="left" valign="top"><p>minor</p></td><td style="border-right: 1px solid #527bbd; " align="left" valign="top"><p>start</p></td><td style="border-right: 1px solid #527bbd; " align="left" valign="top"><p>inc</p></td><td style="" align="left" valign="top"><p>count</p></td></tr></tbody></table></div><p>There are a few non-trivial blocks:</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+<code class="literal">name</code> is the path to the file you want to create/modify
+</li><li class="listitem"><p class="simpara">
+<code class="literal">type</code> is the type of the file, being one of:
+</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: circle; "><li class="listitem">
+f: a regular file
+</li><li class="listitem">
+d: a directory
+</li><li class="listitem">
+r: a directory recursively
+</li><li class="listitem">
+c: a character device file
+</li><li class="listitem">
+b: a block device file
+</li><li class="listitem">
+p: a named pipe
+</li></ul></div></li><li class="listitem">
+<code class="literal">mode</code>, <code class="literal">uid</code> and <code class="literal">gid</code> are the usual permissions settings
+</li><li class="listitem">
+<code class="literal">major</code> and <code class="literal">minor</code> are here for device files - set to - for other
+  files
+</li><li class="listitem">
+<code class="literal">start</code>, <code class="literal">inc</code> and <code class="literal">count</code> are for when you want to create a batch
+  of files, and can be reduced to a loop, beginning at <code class="literal">start</code>,
+  incrementing its counter by <code class="literal">inc</code> until it reaches <code class="literal">count</code>
+</li></ul></div><p>Let’s say you want to change the permissions of a given file; using
+this syntax, you will need to put:</p><pre class="screen">/usr/bin/foobar f 644 0 0 - - - - -</pre><p>Alternatively, if you want to change owner/permission of a directory
+recursively, you can put:</p><pre class="screen">/usr/share/myapp r 750 myuser myuser - - - - -</pre><p>On the other hand, if you want to create the device file <code class="literal">/dev/hda</code>
+and the corresponding 15 files for the partitions, you will need for
+<code class="literal">/dev/hda</code>:</p><pre class="screen">/dev/hda b 640 0 0 3 0 0 0 -</pre><p>and then for device files corresponding to the partitions of
+<code class="literal">/dev/hda</code>, <code class="literal">/dev/hdaX</code>, <code class="literal">X</code> ranging from 1 to 15:</p><pre class="screen">/dev/hda b 640 0 0 3 1 1 1 15</pre></div><div class="chapter"><div class="titlepage"><div><div><h2 class="title"><a id="makeuser-syntax"></a>Chapter 23. Makeusers syntax documentation</h2></div></div></div><p>The syntax to create users is inspired by the makedev syntax, above, but
+is specific to Buildroot.</p><p>The syntax for adding a user is a space-separated list of fields, one
+user per line; the fields are:</p><div class="informaltable"><table cellpadding="4px" style="border-collapse: collapse;border-top: 3px solid #527bbd; border-bottom: 3px solid #527bbd; border-left: 3px solid #527bbd; border-right: 3px solid #527bbd; "><colgroup><col class="col_1" /><col class="col_2" /><col class="col_3" /><col class="col_4" /><col class="col_5" /><col class="col_6" /><col class="col_7" /><col class="col_8" /><col class="col_9" /></colgroup><tbody><tr><td style="border-right: 1px solid #527bbd; " align="left" valign="top"><p>username</p></td><td style="border-right: 1px solid #527bbd; " align="left" valign="top"><p>uid</p></td><td style="border-right: 1px solid #527bbd; " align="left" valign="top"><p>group</p></td><td style="border-right: 1px solid #527bbd; " align="left" valign="top"><p>gid</p></td><td style="border-right: 1px solid #527bbd; " align="left" valign="top"><p>password</p></td><td style="border-right: 1px solid #527bbd; " align="left" valign="top"><p>home</p></td><td style="border-right: 1px solid #527bbd; " align="left" valign="top"><p>shell</p></td><td style="border-right: 1px solid #527bbd; " align="left" valign="top"><p>groups</p></td><td style="" align="left" valign="top"><p>comment</p></td></tr></tbody></table></div><p>Where:</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+<code class="literal">username</code> is the desired user name (aka login name) for the user.
+  It can not be <code class="literal">root</code>, and must be unique. If set to <code class="literal">-</code>, then just a
+  group will be created.
+</li><li class="listitem">
+<code class="literal">uid</code> is the desired UID for the user. It must be unique, and not
+  <code class="literal">0</code>. If set to <code class="literal">-1</code>, then a unique UID will be computed by Buildroot
+  in the range [1000…1999]
+</li><li class="listitem">
+<code class="literal">group</code> is the desired name for the user’s main group. It can not
+  be <code class="literal">root</code>. If the group does not exist, it will be created.
+</li><li class="listitem">
+<code class="literal">gid</code> is the desired GID for the user’s main group. It must be unique,
+  and not <code class="literal">0</code>. If set to <code class="literal">-1</code>, and the group does not already exist, then
+  a unique GID will be computed by Buildroot in the range [1000..1999]
+</li><li class="listitem">
+<code class="literal">password</code> is the crypt(3)-encoded password. If prefixed with <code class="literal">!</code>,
+  then login is disabled. If prefixed with <code class="literal">=</code>, then it is interpreted
+  as clear-text, and will be crypt-encoded (using MD5). If prefixed with
+  <code class="literal">!=</code>, then the password will be crypt-encoded (using MD5) and login
+  will be disabled. If set to <code class="literal">*</code>, then login is not allowed.
+</li><li class="listitem">
+<code class="literal">home</code> is the desired home directory for the user. If set to <span class="emphasis"><em>-</em></span>, no
+  home directory will be created, and the user’s home will be <code class="literal">/</code>.
+  Explicitly setting <code class="literal">home</code> to <code class="literal">/</code> is not allowed.
+</li><li class="listitem">
+<code class="literal">shell</code> is the desired shell for the user. If set to <code class="literal">-</code>, then
+  <code class="literal">/bin/false</code> is set as the user’s shell.
+</li><li class="listitem">
+<code class="literal">groups</code> is the comma-separated list of additional groups the user
+  should be part of. If set to <code class="literal">-</code>, then the user will be a member of
+  no additional group. Missing groups will be created with an arbitrary
+  <code class="literal">gid</code>.
+</li><li class="listitem">
+<code class="literal">comment</code> (aka <a class="ulink" href="https://en.wikipedia.org/wiki/Gecos_field" target="_top">GECOS</a>
+  field) is an almost-free-form text.
+</li></ul></div><p>There are a few restrictions on the content of each field:</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+except for <code class="literal">comment</code>, all fields are mandatory.
+</li><li class="listitem">
+except for <code class="literal">comment</code>, fields may not contain spaces.
+</li><li class="listitem">
+no field may contain a colon (<code class="literal">:</code>).
+</li></ul></div><p>If <code class="literal">home</code> is not <code class="literal">-</code>, then the home directory, and all files below,
+will belong to the user and its main group.</p><p>Examples:</p><pre class="screen">foo -1 bar -1 !=blabla /home/foo /bin/sh alpha,bravo Foo user</pre><p>This will create this user:</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+<code class="literal">username</code> (aka login name) is: <code class="literal">foo</code>
+</li><li class="listitem">
+<code class="literal">uid</code> is computed by Buildroot
+</li><li class="listitem">
+main <code class="literal">group</code> is: <code class="literal">bar</code>
+</li><li class="listitem">
+main group <code class="literal">gid</code> is computed by Buildroot
+</li><li class="listitem">
+clear-text <code class="literal">password</code> is: <code class="literal">blabla</code>, will be crypt(3)-encoded, and login is disabled.
+</li><li class="listitem">
+<code class="literal">home</code> is: <code class="literal">/home/foo</code>
+</li><li class="listitem">
+<code class="literal">shell</code> is: <code class="literal">/bin/sh</code>
+</li><li class="listitem">
+<code class="literal">foo</code> is also a member of <code class="literal">groups</code>: <code class="literal">alpha</code> and <code class="literal">bravo</code>
+</li><li class="listitem">
+<code class="literal">comment</code> is: <code class="literal">Foo user</code>
+</li></ul></div><pre class="screen">test 8000 wheel -1 = - /bin/sh - Test user</pre><p>This will create this user:</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+<code class="literal">username</code> (aka login name) is: <code class="literal">test</code>
+</li><li class="listitem">
+<code class="literal">uid</code> is : <code class="literal">8000</code>
+</li><li class="listitem">
+main <code class="literal">group</code> is: <code class="literal">wheel</code>
+</li><li class="listitem">
+main group <code class="literal">gid</code> is computed by Buildroot, and will use the value defined in the rootfs skeleton
+</li><li class="listitem">
+<code class="literal">password</code> is empty (aka no password).
+</li><li class="listitem">
+<code class="literal">home</code> is <code class="literal">/</code> but will not belong to <code class="literal">test</code>
+</li><li class="listitem">
+<code class="literal">shell</code> is: <code class="literal">/bin/sh</code>
+</li><li class="listitem">
+<code class="literal">test</code> is not a member of any additional <code class="literal">groups</code>
+</li><li class="listitem">
+<code class="literal">comment</code> is: <code class="literal">Test user</code>
+</li></ul></div></div><div class="chapter"><div class="titlepage"><div><div><h2 class="title"><a id="package-list"></a>Chapter 24. List of target packages available in Buildroot</h2></div></div></div><div class="informaltable"><table cellpadding="4px" style="border-collapse: collapse;border-top: 3px solid #527bbd; border-bottom: 3px solid #527bbd; border-left: 3px solid #527bbd; border-right: 3px solid #527bbd; " width="100%"><colgroup><col class="col_1" /><col class="col_2" /></colgroup><thead><tr><th style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"> Packages                                 </th><th style="border-bottom: 1px solid #527bbd; " align="left" valign="top"> Target packages → …</th></tr></thead><tbody><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>a10disp</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>acl</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ System tools</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>acpid</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>adwaita icon theme</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Fonts, icons, sounds and themes</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>aespipe</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Miscellaneous</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>agent++</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Networking</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>aiccu</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>aircrack-ng</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>alsa-lib</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Audio/Sound</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>alsa-utils</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Audio and video applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>alsamixergui</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>am335x-pru-package</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>am33x-cm3</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling → Firmware</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>apache</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>apitrace</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>applewmproto</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 X protocols</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>appres</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>apr</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Other</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>apr-util</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Other</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>argp-standalone</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Other</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>argus</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>armadillo</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Other</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>arptables</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>at</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Shell and utilities</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>atftp</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>atk</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Graphics</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>attr</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ System tools</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>audiofile</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Audio/Sound</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>aumix</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Audio and video applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>autossh</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>avahi</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>avrdude</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>axel</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>b43-firmware</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling → Firmware</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>bandwidthd</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>bash</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Shell and utilities</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>batctl</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>bc</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Miscellaneous</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>bcache tools</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>bcusdk</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>bdftopcf</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>bdwgc</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Other</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>beecrypt</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Crypto</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>beforelight</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>bellagio</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Audio and video applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>benejson</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → JSON/XML</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>berkeleydb</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Database</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>bigreqsproto</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 X protocols</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>bind</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>binutils</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Development tools</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>biosdevname</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>bitmap</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>Bitstream Vera</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Fonts, icons, sounds and themes</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>blackbox <span class="strong"><strong>(deprecated)</strong></span></p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>blktrace</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Debugging, profiling and benchmark</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>bluez-utils</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>bluez-utils 5.x</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>bmon</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>boa</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>bonnie++</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Debugging, profiling and benchmark</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>boost</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Other</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>bootstrap</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Javascript</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>bootutils</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ System tools</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>botan</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Crypto</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>bridge-utils</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>bsdiff</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Development tools</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>btrfs-progs</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Filesystem and flash utilities</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>bullet</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Graphics</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>bustle</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Development tools</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>BusyBox</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p></p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>bwm-ng</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>bzip2</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Compressors and decompressors</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>c-ares</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Networking</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>c-periphery</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>CA Certificates</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Crypto</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>cache-calibrator</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Debugging, profiling and benchmark</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>cairo</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Graphics</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>can-utils</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>canfestival</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Networking</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>cblas/clapack</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Other</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>cc-tool</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>ccid</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>ccrypt</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Shell and utilities</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>cdrkit</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>cegui06</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>celt051</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Audio/Sound</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>cgic</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Networking</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>cgilua</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Lua libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>chrony</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>cifs-utils</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Filesystem and flash utilities</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>civetweb</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>cJSON</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → JSON/XML</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>clamav</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Miscellaneous</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>classpath</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Other</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>collectd</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Miscellaneous</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>compositeproto</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 X protocols</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>connman</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>conntrack-tools</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>copas</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Lua libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>coreutils</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ System tools</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>cosmo</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Lua libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>coxpcall</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Lua libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>cppcms</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Other</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>cppdb</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Database</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>cppunit</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Development tools</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>cppzmq</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Networking</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>cpuload</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ System tools</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>cramfs</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Filesystem and flash utilities</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>crda</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>cryptodev-linux</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Crypto → cryptodev variant</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>cryptsetup</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>ctorrent</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>cups <span class="strong"><strong>(deprecated)</strong></span></p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>curlftpfs (FUSE)</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Filesystem and flash utilities</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>cvs</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Development tools</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>cwiid</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>czmq</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Networking</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>dado</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Lua libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>damageproto</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 X protocols</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>dash</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Shell and utilities</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>dbus</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>dbus-c++</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>dbus-glib</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>dbus-python</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>dbus-triggerd</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>dcron</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ System tools</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>debianutils</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ System tools</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>Declarative module</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>DejaVu fonts</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Fonts, icons, sounds and themes</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>devmem2</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>dhcp (ISC)</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>dhcpcd</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>dhcpdump</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>dhrystone</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Debugging, profiling and benchmark</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>dialog</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Shell and utilities</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>diffutils</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Development tools</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>dillo</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>ding-libs</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Other</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>directfb</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>directfb examples</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>directfb virtual input extension</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>dmalloc</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Debugging, profiling and benchmark</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>dmidecode</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>dmraid</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>dmxproto</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 X protocols</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>dnsmasq</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>docker</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>dosfstools</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Filesystem and flash utilities</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>dovecot</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Mail</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>dovecot-pigeonhole</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Mail</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>drbd-utils</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>dri2proto</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 X protocols</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>dri3proto</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 X protocols</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>dropbear</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>dropwatch</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Debugging, profiling and benchmark</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>dsp-tools</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ System tools</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>dstat</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Debugging, profiling and benchmark</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>dtach</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Shell and utilities</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>dtc (libfdt)</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>dtv-scan-tables</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>duma</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Debugging, profiling and benchmark</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>dvb-apps</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>dvbsnoop</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>dvdauthor</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Audio and video applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>dvdrw-tools</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Audio and video applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>e2fsprogs</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Filesystem and flash utilities</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>e2tools</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Filesystem and flash utilities</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>ebtables</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>ecryptfs-utils</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Filesystem and flash utilities</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>ed</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Text editors and viewers</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>editres</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>eeprog</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>eigen</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Other</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>ejabberd</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>elfutils</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Other</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>empty</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Miscellaneous</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>enchant</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Text and terminal handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>encodings</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Fonts</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>enlightenment</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>Enlightenment Foundation Libraries</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>enscript</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>epoxy</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Libraries</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>erlang</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>erlang-goldrush</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Erlang libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>erlang-lager</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Erlang libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>erlang-p1-cache-tab</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Erlang libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>erlang-p1-iconv</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Erlang libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>erlang-p1-sip</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Erlang libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>erlang-p1-stringprep</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Erlang libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>erlang-p1-stun</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Erlang libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>erlang-p1-tls</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Erlang libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>erlang-p1-utils</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Erlang libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>erlang-p1-xml</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Erlang libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>erlang-p1-yaml</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Erlang libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>erlang-p1-zlib</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Erlang libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>espeak</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Audio and video applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>ethtool</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>eudev</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>evemu</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>evtest</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>exFAT (FUSE)</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Filesystem and flash utilities</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>exfat-utils</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Filesystem and flash utilities</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>exim</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Mail</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>exiv2</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Graphics</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>expat</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → JSON/XML</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>expect</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → tcl libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>expedite</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>explorercanvas</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Javascript</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>ezxml</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → JSON/XML</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>f2fs-tools</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Filesystem and flash utilities</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>faad2</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Audio and video applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>faifa</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>fan-ctrl</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>fb-test-app</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>fbdump (Framebuffer Capture Tool)</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>fbgrab</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>fbset</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>fbterm</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>fbv</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>fconfig</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>fdk-aac</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Audio/Sound</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>feh</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>fetchmail</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Mail</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>ffmpeg</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Audio and video applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>fftw</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Other</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>file</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Shell and utilities</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>filemq</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Networking</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>findutils</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Development tools</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>fio</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Debugging, profiling and benchmark</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>firmware-imx</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>fis</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>fixesproto</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 X protocols</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>flac</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Audio and video applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>flann</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Other</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>flashbench</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Filesystem and flash utilities</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>flashrom</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>flex</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Development tools</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>flickcurl</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Networking</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>flite</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Audio and video applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>flot</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Javascript</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>fltk</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Graphics</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>fluxbox</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>fmc</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>fmlib</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Networking</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>fmtools</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>font-adobe-100dpi</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Fonts</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>font-adobe-75dpi</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Fonts</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>font-adobe-utopia-100dpi</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Fonts</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>font-adobe-utopia-75dpi</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Fonts</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>font-adobe-utopia-type1</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Fonts</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>font-alias</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Fonts</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>font-arabic-misc</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Fonts</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>font-bh-100dpi</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Fonts</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>font-bh-75dpi</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Fonts</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>font-bh-lucidatypewriter-100dpi</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Fonts</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>font-bh-lucidatypewriter-75dpi</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Fonts</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>font-bh-ttf</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Fonts</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>font-bh-type1</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Fonts</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>font-bitstream-100dpi</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Fonts</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>font-bitstream-75dpi</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Fonts</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>font-bitstream-type1</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Fonts</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>font-cronyx-cyrillic</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Fonts</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>font-cursor-misc</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Fonts</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>font-daewoo-misc</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Fonts</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>font-dec-misc</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Fonts</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>font-ibm-type1</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Fonts</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>font-isas-misc</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Fonts</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>font-jis-misc</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Fonts</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>font-micro-misc</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Fonts</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>font-misc-cyrillic</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Fonts</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>font-misc-ethiopic</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Fonts</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>font-misc-meltho</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Fonts</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>font-misc-misc</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Fonts</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>font-mutt-misc</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Fonts</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>font-schumacher-misc</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Fonts</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>font-screen-cyrillic</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Fonts</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>font-sony-misc</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Fonts</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>font-sun-misc</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Fonts</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>font-util</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Fonts</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>font-winitzki-cyrillic</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Fonts</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>font-xfree86-type1</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Fonts</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>fontcacheproto</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 X protocols</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>fontconfig</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Graphics</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>fontsproto</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 X protocols</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>fonttosfnt</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>foomatic_filters <span class="strong"><strong>(deprecated)</strong></span></p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>fping</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>freeradius-client</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Networking</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>freerdp</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>Freescale i.MX libraries</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>freetype</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Graphics</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>fslsfonts</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>fstobdf</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>fswebcam</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>ftop</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ System tools</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>fxload</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>gadgetfs-test</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>gamin</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Filesystem</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>gawk</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Development tools</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>gd</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Graphics</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>gdb</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Debugging, profiling and benchmark</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>gdbm</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Database</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>gdk-pixbuf</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Graphics</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>genext2fs</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Filesystem and flash utilities</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>genpart</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Filesystem and flash utilities</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>genromfs</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Filesystem and flash utilities</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>geoip</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Networking</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>gesftpserver</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>getent</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ System tools</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>gettext</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Development tools</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>ghostscript-fonts</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Fonts, icons, sounds and themes</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>giblib</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Graphics</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>giflib</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Graphics</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>git</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Development tools</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>glib-networking</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Networking</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>glibmm</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Other</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>glm</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Other</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>glmark2</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>glproto</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 X protocols</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>gmp</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Other</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>gmpc</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>gnu-efi</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>gnuchess</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Games</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>gnupg</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Shell and utilities</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>gnupg2</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Shell and utilities</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>gnuplot</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>gnuradio</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Miscellaneous</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>gnutls</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Crypto</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>Google font directory</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Miscellaneous</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>google-breakpad</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Debugging, profiling and benchmark</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>gperf</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Development tools</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>gpm</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>gpsd</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>gptfdisk</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>gpu-amd-bin-mx51 (also imx53)</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>gpu-viv-bin-mx6q</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>gqview</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>grantlee</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>grep</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Development tools</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>gsl</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Other</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>gst-dsp</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Audio and video applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>gst-ffmpeg</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Audio and video applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>gst-fsl-plugins</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Audio and video applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>gst-omapfb</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Audio and video applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>gst-omx</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Audio and video applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>gst-plugin-x170</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Audio and video applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>gst-plugins-bad</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Audio and video applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>gst-plugins-base</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Audio and video applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>gst-plugins-good</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Audio and video applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>gst-plugins-ugly</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Audio and video applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>gst1-imx</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Audio and video applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>gst1-libav</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Audio and video applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>gst1-plugins-bad</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Audio and video applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>gst1-plugins-base</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Audio and video applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>gst1-plugins-good</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Audio and video applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>gst1-plugins-ugly</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Audio and video applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>gst1-validate</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Audio and video applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>gstreamer 0.10</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Audio and video applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>gstreamer 1.x</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Audio and video applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>gtest</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Other</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>gtk engines</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Fonts, icons, sounds and themes</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>gtkperf (performance test for GTK2)</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>guile</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>gutenprint <span class="strong"><strong>(deprecated)</strong></span></p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>gvfs</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>gzip</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Compressors and decompressors</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>hans</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>harfbuzz</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Graphics</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>haserl</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>haveged</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Miscellaneous</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>hdparm</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>heirloom-mailx</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Mail</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>hiawatha</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>hicolor icon theme</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Fonts, icons, sounds and themes</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>hostapd</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>hplip <span class="strong"><strong>(deprecated)</strong></span></p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>htop</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ System tools</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>httping</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>hwdata</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>hwloc</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>i2c-tools</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>iceauth</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>ico</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>icu</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Text and terminal handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>ifplugd</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>iftop</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>ifupdown</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>igh-ethercat</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>igmpproxy</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>ijs</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Graphics</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>imagemagick</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>imlib2</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Graphics</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>imx-lib</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>imx-vpu</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>inadyn</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>inconsolata</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Fonts, icons, sounds and themes</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>infozip</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Compressors and decompressors</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>inotify-tools</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Shell and utilities</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>input-event-daemon</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>input-tools</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>inputproto</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 X protocols</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>intel-microcode</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>intltool</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Development tools</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>iodine</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>iostat</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>iotop</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ System tools</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>iozone</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Debugging, profiling and benchmark</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>iperf</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>iperf3</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>ipkg</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Package managers</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>ipmitool</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>ipmiutil</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>iproute2</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>iprutils</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ System tools</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>ipsec-tools</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>ipset</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>iptables</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>iptraf-ng</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>iputils</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>irda-utils</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>irqbalance</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ System tools</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>iucode-tool</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>iw</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>jack2</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Audio and video applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>jamvm</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>jansson</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → JSON/XML</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>janus-gateway</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>jasper</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Graphics</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>jhead</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>jimtcl</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>joe</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Text editors and viewers</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>jpeg</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Graphics → jpeg variant</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>jpeg-turbo</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Graphics → jpeg variant</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>jq</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Development tools</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>jQuery</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Javascript</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>jQuery keyboard</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Javascript</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>jQuery UI</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Javascript</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>jQuery UI themes</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Javascript</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>jquery-mobile</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Javascript</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>jQuery-Sparkline</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Javascript</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>jQuery-Validation</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Javascript</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>jsmin</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Javascript</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>json-c</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → JSON/XML</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>json-glib</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → JSON/XML</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>json-javascript</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Javascript</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>jsoncpp</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → JSON/XML</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>kbd</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>kbproto</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 X protocols</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>kexec</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Debugging, profiling and benchmark</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>kexec-lite</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Debugging, profiling and benchmark</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>keyutils</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ System tools</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>kismet</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>kmod</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ System tools</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>knock</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>kobs-ng</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Filesystem and flash utilities</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>kodi</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Audio and video applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>kodi-addon-xvdr</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Audio and video applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>kodi-audioencoder-flac</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Audio and video applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>kodi-audioencoder-lame</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Audio and video applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>kodi-audioencoder-vorbis</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Audio and video applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>kodi-audioencoder-wav</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Audio and video applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>kodi-pvr-addons</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Audio and video applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>ktap</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Debugging, profiling and benchmark</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>lame</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Audio and video applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>latencytop</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Debugging, profiling and benchmark</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>lbase64</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Lua libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>LBreakout2</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Games</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>lcdapi</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>lcdproc</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>lcms2</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Graphics</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>leafnode2</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>leafpad</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>less</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Text editors and viewers</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>lesstif</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Graphics</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>leveldb</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Database</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>lftp</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libaio</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libao</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Audio/Sound</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libarchive</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Compression and decompression</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libargtable2</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Other</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libart</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Graphics</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libass</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Multimedia</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libassuan</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Crypto</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libatasmart</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libatomic_ops</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Other</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libbluray</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Multimedia</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libbsd</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Other</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libcap</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Other</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libcap-ng</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Other</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libcdaudio</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Audio/Sound</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libcdio</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Audio/Sound</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libcec</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libcgi</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Networking</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libcgicc</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Networking</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libcgroup</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Other</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libcli</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Text and terminal handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libcofi</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Other</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libconfig</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Filesystem</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libconfuse</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Filesystem</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libcue</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Audio/Sound</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libcuefile</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Audio/Sound</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libcurl</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Networking</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libdaemon</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Other</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libdcadec</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Multimedia</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libdmtx</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Graphics</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libdmx</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Libraries</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libdnet</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Networking</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libdri2</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Graphics</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libdrm</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Graphics</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libdvbcsa</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Multimedia</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libdvbsi</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Multimedia</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libdvdnav</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Multimedia</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libdvdread</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Multimedia</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libebml</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Multimedia</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libecore</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libedbus</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libedit</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Text and terminal handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libedje</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libee</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Other</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libeet</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libefreet</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libeina</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libeio</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libelementary</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libembryo</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libenca</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Text and terminal handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>Liberation (Free fonts)</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Fonts, icons, sounds and themes</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libesmtp</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Mail</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libestr</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Text and terminal handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libethumb</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libev</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Other</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libevas</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libevas generic loaders</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libevdev</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Other</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libevent</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Other</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libexif</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Graphics</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libeXosip2</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Networking</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libfcgi</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Networking</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libffi</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Other</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libfontenc</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Libraries</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libfreefare</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libfreeimage</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Graphics</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libfribidi</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Text and terminal handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libFS</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Libraries</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libfslcodec</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Multimedia</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libfslparser</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Multimedia</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libfslvpuwrap</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Multimedia</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libftdi</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libftdi1</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libfuse</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Filesystem</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libgail</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Graphics</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libgcrypt</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Crypto</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libgeotiff</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Graphics</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libglade</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Graphics</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libglew</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Graphics</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libglib2</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Other</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libglu</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Graphics</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libgpg-error</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Crypto</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libgpgme</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Crypto</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libgsasl</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Networking</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libgtk2</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Graphics</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libgtk3</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Graphics</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libhid</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libical</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Other</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libICE</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Libraries</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libiconv</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Text and terminal handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libid3tag</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Audio/Sound</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libidn</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Networking</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libiio</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libinput</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libiqrf</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libiscsi</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Networking</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libjson</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → JSON/XML</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libksba</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Crypto</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>liblinear</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Other</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libllcp</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>liblo</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Audio/Sound</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>liblockfile</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Filesystem</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>liblog4c-localtime</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Logging</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>liblogging</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Logging</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libmad</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Audio/Sound</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libmatroska</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Multimedia</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libmbim</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libmbus</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Networking</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libmcrypt</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Crypto</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libmemcached</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Networking</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libmhash</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Crypto</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libmicrohttpd</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Networking</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libmms</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Multimedia</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libmnl</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Networking</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libmodbus</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Networking</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libmodplug</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Audio/Sound</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libmpd</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Audio/Sound</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libmpdclient</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Audio/Sound</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libmpeg2</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Multimedia</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libndp</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Networking</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libneon</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Networking</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libnetfilter_acct</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Networking</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libnetfilter_conntrack</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Networking</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libnetfilter_cthelper</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Networking</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libnetfilter_cttimeout</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Networking</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libnetfilter_log</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Networking</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libnetfilter_queue</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Networking</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libnfc</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libnfnetlink</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Networking</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libnfs</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Filesystem</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libnftnl</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Networking</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libnice</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Networking</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libnl</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Networking</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libnspr</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Other</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libnss</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Crypto</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>liboauth</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Networking</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libogg</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Multimedia</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>liboping</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Networking</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libosip2</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Networking</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libpcap</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Networking</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libpciaccess</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libpfm4</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Other</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libphidget</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libplayer</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Multimedia</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libplist</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Other</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libpng</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Graphics</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libpthread-stubs</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Other</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libpthsem</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Other</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libqmi</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libqrencode</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Graphics</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libraw</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Graphics</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libraw1394</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libreplaygain</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Audio/Sound</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>librsvg</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Graphics</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>librsync</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Networking</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>librtlsdr</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>librtmp</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Networking</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libsamplerate</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Audio/Sound</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libseccomp</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Other</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libsecret</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Crypto</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libselinux</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Security</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libsemanage</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Security</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libsepol</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Security</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libserial</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libserialport</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libsexy</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libsha1</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Crypto</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libshairplay</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Networking</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libshout</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Networking</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libsidplay2</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Audio/Sound</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libsigc++</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Other</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libsigrok</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libsigrokdecode</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libsigsegv</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Other</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libSM</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Libraries</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libsndfile</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Audio/Sound</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libsoc</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libsocketcan</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Networking</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libsoup</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Networking</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libsoxr</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Audio/Sound</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libsrtp</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Networking</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libssh2</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Crypto</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libstrophe</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Networking</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libsvg</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Graphics</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libsvg-cairo</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Graphics</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libsvgtiny</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Graphics</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libsysfs</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Filesystem</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libtasn1</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Other</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libtheora</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Multimedia</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libtirpc</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Networking</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libtool</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Development tools</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libtorrent</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Networking</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libtpl</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Other</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libubox</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Other</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libuci</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Other</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libungif <span class="strong"><strong>(deprecated)</strong></span></p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Graphics</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libunistring</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Text and terminal handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libunwind</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Other</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libupnp</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Networking</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libupnpp</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Networking</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>liburcu</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Other</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>liburiparser</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Networking</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libusb</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libusb-compat</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libuv</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Other</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libv4l</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libva</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Graphics</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libva-intel-driver</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Graphics</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libvips</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Graphics</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libvncserver</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Networking</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libvorbis</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Audio/Sound</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libvpx</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Audio and video applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libwebsock</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Networking</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libwebsockets</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Networking</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libX11</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Libraries</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libXau</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Libraries</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libXaw</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Libraries</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libxcb</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Libraries</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libXcomposite</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Libraries</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libXcursor</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Libraries</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libXdamage</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Libraries</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libXdmcp</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Libraries</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libXext</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Libraries</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libXfixes</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Libraries</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libXfont</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Libraries</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libXft</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Libraries</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libXi</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Libraries</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libXinerama</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Libraries</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libxkbcommon</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libxkbfile</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Libraries</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libxml++</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → JSON/XML</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libxml2</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → JSON/XML</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libxmlrpc</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → JSON/XML</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libXmu</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Libraries</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libXpm</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Libraries</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libXrandr</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Libraries</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libXrender</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Libraries</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libXres</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Libraries</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libXScrnSaver</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Libraries</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libxshmfence</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Libraries</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libxslt</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → JSON/XML</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libXt</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Libraries</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libXtst</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Libraries</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libXv</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Libraries</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libXvMC</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Libraries</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libXxf86dga</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Libraries</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libXxf86vm</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Libraries</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libyaml</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → JSON/XML</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libz160</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libzip</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Compression and decompression</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>lightning</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Other</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>lighttpd</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>linenoise</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Text and terminal handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>linknx</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>links</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>linphone</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>linux-firmware</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling → Firmware</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>linux-fusion communication layer for DirectFB multi</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>linux-pam</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Other</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>linux-zigbee</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>lirc-tools</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>listres</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>LiTE (toolbox engine)</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>live555</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Multimedia</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>ljlinenoise</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Lua libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>ljsyscall</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Lua libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>lm-sensors</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>lmbench</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Debugging, profiling and benchmark</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>lockdev</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Filesystem</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>lockfile programs</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Shell and utilities</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>log4cplus</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Logging</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>log4cxx</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Logging</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>logrotate</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Shell and utilities</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>logsurfer</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Shell and utilities</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>lpeg</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Lua libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>lpty</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Lua libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>lrandom</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Lua libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>lrzsz</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>lshw</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>lsof</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Debugging, profiling and benchmark</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>lsqlite3</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Lua libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>lsuio</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>ltp-testsuite</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Debugging, profiling and benchmark</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>ltrace</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Debugging, profiling and benchmark</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>LTris</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Games</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>lttng-babeltrace</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Debugging, profiling and benchmark</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>lttng-libust</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Other</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>lttng-modules</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Debugging, profiling and benchmark</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>lttng-tools</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Debugging, profiling and benchmark</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>lua</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>lua-cjson</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Lua libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>lua-coat</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Lua libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>lua-coatpersistent</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Lua libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>lua-csnappy</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Lua libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>lua-ev</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Lua libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>lua-messagepack</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Lua libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>lua-msgpack-native</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Lua libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>lua-periphery</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Lua libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>lua-testmore</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Lua libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>luabitop</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Lua libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>luacrypto</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Lua libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>luaexpat</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Lua libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>luaexpatutils</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Lua libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>luafilesystem</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Lua libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>luajit</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>luajson</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Lua libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>lualogging</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Lua libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>luaposix</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Lua libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>luasec</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Lua libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>luasocket</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Lua libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>luasql-sqlite3</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Lua libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>luit</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>lunit</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Lua libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>lvm2 &amp; device mapper</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>lxc</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ System tools</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>lz4</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Compressors and decompressors</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>lzip</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Compressors and decompressors</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>lzlib</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Lua libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>lzo</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Compression and decompression</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>lzop</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Compressors and decompressors</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>macchanger</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>madplay</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Audio and video applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>make</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Development tools</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>makedepend</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Utilities</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>makedevs</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Filesystem and flash utilities</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>Matchbox Desktop</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>Matchbox Panel</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>Matchbox session common files</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>Matchbox Virtual Keyboard</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>MatchBox Window Manager</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>mc</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Text editors and viewers</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>mcelog</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Debugging, profiling and benchmark</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>mcookie</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Utilities</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>mcrypt</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Miscellaneous</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>mdadm</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>media-ctl</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>mediastreamer</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Multimedia</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>memcached</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>memstat</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Debugging, profiling and benchmark</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>memtest86</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>memtester</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>mesa3d</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>mesa3d-demos</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>metacity</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>midori</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>mii-diag</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>Mini-XML</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → JSON/XML</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>minicom</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>minidlna</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>mjpegtools</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Audio and video applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>mjpg-streamer</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>mkfontdir</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>mkfontscale</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>mmc-utils</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Filesystem and flash utilities</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>mobile-broadband-provider-info</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Miscellaneous</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>modemmanager</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>modplugtools</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Audio and video applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>mongoose</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>mongrel2</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>monit</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ System tools</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>mono</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>mosquitto</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>mp4v2</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Audio/Sound</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>mpc</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Other</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>mpd</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Audio and video applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>mpd-mpc</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Audio and video applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>mpdecimal</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Other</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>mpfr</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Other</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>mpg123</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Audio and video applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>mplayer</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Audio and video applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>mrouted</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>msgpack</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Other</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>msmtp</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Mail</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>mtd, jffs2 and ubi/ubifs tools</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Filesystem and flash utilities</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>mtdev</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>mtdev2tuio</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Other</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>mtools</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Filesystem and flash utilities</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>mtr</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>Multimedia Module</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>musepack</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Audio and video applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>mutt</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Mail</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>MySQL</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Database</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>nano</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Text editors and viewers</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>nanocom</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>nbd</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>ncdu</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ System tools</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>ncftp</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>ncmpc</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Audio and video applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>ncurses</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Text and terminal handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>ndisc6 tools</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>ne10</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>neard</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>neardal</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>net-tools</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>netatalk</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>netcat</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>netcat-openbsd</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>netperf</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Debugging, profiling and benchmark</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>netplug</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>netsnmp</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>netstat-nat</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>nettle</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Crypto</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>networkmanager</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>newt</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Text and terminal handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>nfacct</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>nfs-utils</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Filesystem and flash utilities</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>nftables</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>nginx</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>ngircd</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>ngrep</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>nmap</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>nodejs</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>noip</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>nss-mdns</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Networking</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>ntfs-3g</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Filesystem and flash utilities</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>ntp</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>numactl</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ System tools</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>nut</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ System tools</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>nuttcp</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>nvidia-driver</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>nvidia-tegra23</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>nvidia-tegra23 binaries</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>nvidia-tegra23 codecs</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>ocf-linux</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Crypto → cryptodev variant</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>oclock</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>ocrad</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>odhcp6c</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>odhcploc</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>ofono</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>ola (open lighting architecture)</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>olsrd</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>omniorb</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Networking</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>on2-8170-libs</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Audio and video applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>on2-8170-modules</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>open-plc-utils</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>open2300</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>opencore-amr</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Audio/Sound</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>opencv</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Graphics</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>openjpeg</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Graphics</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>openldap</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Networking</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>openntpd</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>openobex</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>openocd</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>openpgm</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Networking</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>openpowerlink</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>openssh</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>openssl</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Crypto</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>openswan</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>OpenTyrian</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Games</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>OpenTyrian data</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Games</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>openvmtools</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ System tools</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>openvpn</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>opkg</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Package managers</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>oprofile</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Debugging, profiling and benchmark</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>opus</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Audio/Sound</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>opus-tools</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Audio and video applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>opusfile</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Audio/Sound</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>orbit</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Lua libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>orc</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Other</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>oRTP</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Networking</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>owl-linux</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>p11-kit</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Other</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>p910nd</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>pango</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Graphics</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>parted</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>patch</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Development tools</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>pax-utils</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Debugging, profiling and benchmark</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>pciutils</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>pcmanfm</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>pcre</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Text and terminal handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>pcsc-lite</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>perf</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Debugging, profiling and benchmark</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>perl</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>perl-crypt-openssl-random</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Perl libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>perl-crypt-openssl-rsa</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Perl libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>perl-datetime-tiny</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Perl libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>perl-db-file</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Perl libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>perl-digest-hmac</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Perl libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>perl-digest-sha1</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Perl libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>perl-encode-detect</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Perl libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>perl-encode-locale</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Perl libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>perl-file-listing</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Perl libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>perl-file-util</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Perl libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>perl-gd</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Perl libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>perl-gdgraph</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Perl libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>perl-gdtextutil</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Perl libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>perl-html-parser</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Perl libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>perl-html-tagset</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Perl libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>perl-http-cookies</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Perl libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>perl-http-daemon</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Perl libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>perl-http-date</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Perl libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>perl-http-message</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Perl libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>perl-http-negotiate</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Perl libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>perl-io-html</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Perl libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>perl-io-socket-ssl</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Perl libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>perl-json-tiny</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Perl libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>perl-libwww-perl</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Perl libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>perl-lwp-mediatypes</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Perl libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>perl-mail-dkim</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Perl libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>perl-mailtools</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Perl libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>perl-mime-base64</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Perl libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>perl-mojolicious</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Perl libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>perl-net-dns</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Perl libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>perl-net-http</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Perl libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>perl-net-ssleay</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Perl libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>perl-netaddr-ip</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Perl libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>perl-path-tiny</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Perl libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>perl-time-hires</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Perl libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>perl-timedate</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Perl libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>perl-try-tiny</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Perl libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>perl-uri</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Perl libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>perl-www-robotrules</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Perl libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>perl-xml-libxml</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Perl libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>perl-xml-namespacesupport</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Perl libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>perl-xml-sax</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Perl libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>perl-xml-sax-base</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Perl libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>phidgetwebservice</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>php</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>php-geoip</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → External php extensions</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>php-gnupg</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → External php extensions</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>php-imagick</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → External php extensions</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>php-memcached</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → External php extensions</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>php-ssh2</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → External php extensions</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>php-yaml</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → External php extensions</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>php-zmq</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → External php extensions</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>picocom</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>pifmrds</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>pinentry</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Shell and utilities</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>pixman</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Graphics</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>pkgconf</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Development tools</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>poco</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Other</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>polarssl</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Crypto</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>polkit</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ System tools</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>poppler</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Graphics</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>popt</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Text and terminal handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>portaudio</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Audio/Sound</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>portmap</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>postgresql</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Database</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>powerpc-utils</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ System tools</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>powertop</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>pppd</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>pps-tools</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>pptp-linux</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>prboom</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Games</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>presentproto</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 X protocols</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>procps-ng</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ System tools</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>proftpd</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>protobuf</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Other</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>protobuf-c</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Other</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>proxychains-ng</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>psmisc</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ System tools</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>psplash</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>ptpd</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>ptpd2</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>pulseaudio</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Audio and video applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>pulseview</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>pure-ftpd</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>pv</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Debugging, profiling and benchmark</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>pwgen</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ System tools</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>python</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>python-alsaaudio</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → external python modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>python-bottle</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → external python modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>python-certifi</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → external python modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>python-cffi</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → external python modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>python-cheetah</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → external python modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>python-cherrypy</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → external python modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>python-coherence</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → external python modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>python-configobj</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → external python modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>python-configshell-fb</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → external python modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>python-crc16</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → external python modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>python-daemon</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → external python modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>python-dialog</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → external python modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>python-django</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → external python modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>python-docopt</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → external python modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>python-dpkt</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → external python modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>python-enum</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → external python modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>python-enum34</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → external python modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>python-flask</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → external python modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>python-flup</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → external python modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>python-gobject</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → external python modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>python-httplib2</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → external python modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>python-id3</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → external python modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>python-ipaddr</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → external python modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>python-ipy</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → external python modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>python-ipython</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → external python modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>python-itsdangerous</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → external python modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>python-jinja2</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → external python modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>python-json-schema-validator</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → external python modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>python-keyring</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → external python modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>python-libconfig</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → external python modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>python-lxml</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → external python modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>python-mad</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → external python modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>python-mako</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → external python modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>python-markdown</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → external python modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>python-markupsafe</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → external python modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>python-meld3</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → external python modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>python-msgpack</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → external python modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>python-netifaces</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → external python modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>python-networkmanager</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → external python modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>python-nfc</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → external python modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>python-numpy</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → external python modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>python-pam</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → external python modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>python-posix-ipc</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → external python modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>python-protobuf</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → external python modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>python-psutil</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → external python modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>python-pyasn</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → external python modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>python-pycrypto</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → external python modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>python-pyftpdlib</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → external python modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>python-pygame</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → external python modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>python-pyinotify</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → external python modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>python-pyparsing</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → external python modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>python-pypcap</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → external python modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>python-pyqt</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → external python modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>python-pyro</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → external python modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>python-pysendfile</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → external python modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>python-pysnmp</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → external python modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>python-pysnmp-apps</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → external python modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>python-pysnmp-mibs</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → external python modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>python-pyusb</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → external python modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>python-pyxb</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → external python modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>python-pyzmq</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → external python modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>python-requests</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → external python modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>python-rtslib-fb</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → external python modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>python-serial</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → external python modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>python-setuptools</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → external python modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>python-simplejson</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → external python modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>python-sip</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → external python modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>python-six</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → external python modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>python-spidev</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → external python modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>python-thrift</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → external python modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>python-tornado</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → external python modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>python-twisted</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → external python modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>python-urwid</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → external python modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>python-versiontools</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → external python modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>python-webpy</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → external python modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>python-werkzeug</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → external python modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>python-ws4py</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → external python modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>python-zope-interface</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → external python modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>python3</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>qdecoder</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Networking</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>QEMU</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Miscellaneous</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>qextserialport</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>qhull</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Other</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>qjson</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>qlibc</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Other</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>qpdf</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Miscellaneous</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>Qt</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>qt-webkit-kiosk</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>Qt5</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>qt5base</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>qt5cinex</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>qt5connectivity</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>qt5declarative</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>qt5enginio</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>qt5graphicaleffects</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>qt5imageformats</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>qt5multimedia</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>qt5quick1</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>qt5quickcontrols</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>qt5script</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>qt5sensors</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>qt5serialport</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>qt5svg</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>qt5webkit</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>qt5webkit examples</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>qt5websockets</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>qt5x11extras</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>qt5xmlpatterns</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>qtuio</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>quagga</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>quota</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ System tools</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>qwt</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>radvd</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>ramspeed</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Debugging, profiling and benchmark</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>ramspeed/smp</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Debugging, profiling and benchmark</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>randrproto</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 X protocols</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>rapidjson</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → JSON/XML</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>rdesktop</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>read-edid</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>readline</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Text and terminal handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>recordproto</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 X protocols</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>redis</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Database</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>renderproto</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 X protocols</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>resourceproto</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 X protocols</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>rgb</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>rings</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Lua libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>rng-tools</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>roxml</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → JSON/XML</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>rp-pppoe</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>rpcbind</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>rpi-firmware</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling → Firmware</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>rpi-userland</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>rpm</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Package managers</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>rrdtool</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>rsh-redone</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>rstart</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>rsync</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>rsyslog</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ System tools</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>rt-tests</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Debugging, profiling and benchmark</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>rtai</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Real-Time</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>rtorrent</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>rtptools</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>rubix</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Games</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>ruby</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>samba <span class="strong"><strong>(deprecated)</strong></span></p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>samba4</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>sane-backends</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>SawMan (Window Manager)</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>schifra</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Other</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>sconeserver</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>screen</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Shell and utilities</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>Script Module</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>scripts</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>scrnsaverproto</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 X protocols</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>SDL</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>SDL_gfx</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>SDL_image</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>SDL_mixer</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>SDL_net</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>SDL_sound</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>SDL_TTF</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>sdparm</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>sed</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Development tools</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>ser2net</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>sessreg</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>setserial</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>setxkbmap</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>sg3-utils</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>shairport-sync</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>shared-mime-info</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Miscellaneous</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>shareware Doom WAD file</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Games</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>showfont</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>sigrok-cli</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>simicsfs</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Filesystem and flash utilities</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>sispmctl</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>sl</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Games</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>slang</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Text and terminal handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>slirp</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Networking</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>smack</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ System tools</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>smartmontools</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>smcroute</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>smproxy</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>smstools3</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>snappy</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Compression and decompression</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>snmp++</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Networking</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>snowball-hdmiservice</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>snowball-init</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Miscellaneous</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>socat</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>socketcand</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>sofia-sip</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Networking</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>softether</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>sound-theme-borealis</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Fonts, icons, sounds and themes</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>sound-theme-freedesktop</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Fonts, icons, sounds and themes</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>sox</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Audio and video applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>spawn-fcgi</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>speex</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Audio/Sound</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>spice protocol</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>spice server</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>spidev_test</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Debugging, profiling and benchmark</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>sqlcipher</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Database</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>sqlite</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Database</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>squashfs</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Filesystem and flash utilities</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>squid</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>sredird</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>sshfs (FUSE)</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Filesystem and flash utilities</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>sshpass</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>sstrip</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Development tools</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>start-stop-daemon</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ System tools</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>startup-notification</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Other</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>statserial</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>strace</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Debugging, profiling and benchmark</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>stress</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Debugging, profiling and benchmark</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>strongswan</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>stunnel</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>subversion</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Development tools</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>sudo</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Shell and utilities</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>sunxi nand-part</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Filesystem and flash utilities</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>sunxi script.bin board file</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling → Firmware</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>sunxi-cedarx</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>sunxi-mali</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>supervisor</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ System tools</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>SVG Module</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>sylpheed</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Mail</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>synergy</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>sysdig</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Debugging, profiling and benchmark</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>syslogd &amp; klogd</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ System tools</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>sysprof</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Debugging, profiling and benchmark</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>sysstat</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>systemd</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ System tools</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>sysvinit</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ System tools</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>szip</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Compression and decompression</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>taglib</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Audio/Sound</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>tar</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Development tools</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>targetcli-fb</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>tcl</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>tclap</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Text and terminal handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>tcllib</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → tcl libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>tcpdump</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>tcping</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>tcpreplay</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>tftpd</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>thrift</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Networking</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>thttpd</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>ti-gfx</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>ti-uim</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>ti-utils</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>tidsp-binaries</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Audio and video applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>tiff</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Graphics</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>time</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Shell and utilities</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>tinc</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>tinyalsa</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Audio/Sound</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>tinyhttpd</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>tinymembench</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Debugging, profiling and benchmark</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>tinyxml</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → JSON/XML</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>tinyxml2</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → JSON/XML</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>tmux</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Shell and utilities</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>tn5250</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>tor</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>torsmo</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>tovid</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Audio and video applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>trace-cmd</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Debugging, profiling and benchmark</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>transmission</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>tree</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Development tools</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>tremor (fixed point vorbis decoder)</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Audio/Sound</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>triggerhappy</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>trinity</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Debugging, profiling and benchmark</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>tslib</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>tstools</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Audio and video applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>tvheadend</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>twm</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>twolame</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Audio and video applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>u-boot tools</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>udisks</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>udpcast</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>uemacs</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Text editors and viewers</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>ulogd</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>unionfs (FUSE)</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Filesystem and flash utilities</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>unixodbc</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Database</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>upmpdcli</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Audio and video applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>urg</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>usb_modeswitch</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>usb_modeswitch_data</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>usbmount</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>usbredir</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Networking</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>usbutils</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>ushare</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>ussp-push</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>ustr</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Text and terminal handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>util-linux</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ System tools</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>util-macros</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Utilities</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>ux500-firmware</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling → Firmware</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>valgrind</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Debugging, profiling and benchmark</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>vde2</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>videoproto</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 X protocols</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>viewres</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>vim</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Text editors and viewers</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>vlc</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Audio and video applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>vnstat</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>vo-aacenc</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Audio/Sound</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>vorbis-tools</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Audio and video applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>vpnc</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>vsftpd</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>vtun</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>w_scan</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>wavpack</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Audio and video applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>wayland</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Graphics</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>webkit</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Graphics</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>WebKit Module</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>webp</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Graphics</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>webrtc-audio-processing</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Audio/Sound</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>weston</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>wf111</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>wget</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>whetstone</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Debugging, profiling and benchmark</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>which</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Shell and utilities</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>whois</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>windowswmproto</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 X protocols</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>wine</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Miscellaneous</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>wipe</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>wireless tools</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>wireless-regdb</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>wireshark</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>wmctrl</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>wpa_supplicant</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>wsapi</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Lua libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>wvdial</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>wvstreams</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Networking</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>x11perf</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>x11vnc</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>x264</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Multimedia</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xauth</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xavante</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Interpreter languages and scripting → Lua libraries/modules</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xbacklight</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xbiff</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xbitmaps</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Other data</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xcalc</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xcb-proto</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 X protocols</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xcb-util</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Libraries</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xcb-util-cursor</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Libraries</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xcb-util-image</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Libraries</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xcb-util-keysyms</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Libraries</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xcb-util-renderutil</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Libraries</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xcb-util-wm</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Libraries</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xclipboard</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xclock</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xcmiscproto</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 X protocols</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xcmsdb</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xcompmgr</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xconsole</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xcursor-transparent-theme</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Other data</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xcursorgen</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xdata_xcursor-themes</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Other data</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xdbedizzy</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xditview</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xdm</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xdpyinfo</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xdriinfo</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xedit</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>Xenomai Userspace</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Real-Time</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xerces-c++</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → JSON/XML</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xev</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xextproto</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 X protocols</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xeyes</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xf86-input-evdev</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Drivers</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xf86-input-joystick</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Drivers</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xf86-input-keyboard</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Drivers</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xf86-input-libinput</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Drivers</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xf86-input-mouse</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Drivers</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xf86-input-synaptics</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Drivers</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xf86-input-tslib</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Drivers</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xf86-input-vmmouse</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Drivers</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xf86-input-void <span class="strong"><strong>(deprecated)</strong></span></p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Drivers</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xf86-video-ark</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Drivers</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xf86-video-ast</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Drivers</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xf86-video-ati</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Drivers</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xf86-video-cirrus</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Drivers</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xf86-video-dummy</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Drivers</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xf86-video-fbdev</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Drivers</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xf86-video-geode</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Drivers</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xf86-video-glide</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Drivers</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xf86-video-glint</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Drivers</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xf86-video-i128</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Drivers</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xf86-video-imx</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Drivers</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xf86-video-imx-viv</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Drivers</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xf86-video-intel</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Drivers</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xf86-video-mach64</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Drivers</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xf86-video-mga</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Drivers</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xf86-video-neomagic</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Drivers</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xf86-video-nv</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Drivers</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xf86-video-openchrome</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Drivers</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xf86-video-r128</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Drivers</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xf86-video-savage</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Drivers</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xf86-video-siliconmotion</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Drivers</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xf86-video-sis</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Drivers</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xf86-video-tdfx</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Drivers</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xf86-video-tga</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Drivers</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xf86-video-trident</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Drivers</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xf86-video-v4l</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Drivers</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xf86-video-vesa</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Drivers</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xf86-video-vmware</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Drivers</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xf86-video-voodoo</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Drivers</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xf86-video-wsfb</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Drivers</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xf86bigfontproto</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 X protocols</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xf86dga</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xf86dgaproto</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 X protocols</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xf86driproto</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 X protocols</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xf86vidmodeproto</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 X protocols</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xfd</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xfindproxy</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xfontsel</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xfs</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xfsinfo</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xfsprogs</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Filesystem and flash utilities</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xgamma</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xgc</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xhost</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xineramaproto</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 X protocols</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xinetd</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xinit</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xinput</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xinput-calibrator</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xkbcomp</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xkbevd</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xkbprint</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xkbutils</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xkeyboard-config</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xkill</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xl2tp</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xload</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xlogo</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xlsatoms</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xlsclients</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xlsfonts</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xmag</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xman</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xmessage</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xmh</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>XML Patterns Module</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xmlstarlet</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Shell and utilities</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xmodmap</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xmore</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xorg-server</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Servers</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xorriso</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xpr</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xprop</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xproto</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 X protocols</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xproxymanagementprotocol</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 X protocols</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xrandr</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xrdb</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xrefresh</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xscreensaver</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xset</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xsetmode</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xsetpointer</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xsetroot</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xsm</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xstdcmap</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xtables-addons</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xterm</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xtrans</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Libraries</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xvidtune</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xvinfo</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xvkbd</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xwd</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xwininfo</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xwud</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Graphic libraries and applications (graphic/text) → X11R7 Applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xz-utils</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Compressors and decompressors</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>yajl</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → JSON/XML</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>yaml-cpp</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → JSON/XML</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>yasm</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Development tools</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>yavta</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Audio and video applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>ympd</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Audio and video applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>zd1211-firmware</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Hardware handling → Firmware</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>zeromq</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Networking</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>zlib</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Compression and decompression</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>zlog</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Logging</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>zmqpp</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Networking</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>znc</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>zsh</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Shell and utilities</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>zxing</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>→ Libraries → Graphics</p></td></tr><tr><td style="border-right: 1px solid #527bbd; " align="center" valign="top"><p>zyre</p></td><td style="" align="left" valign="top"><p>→ Libraries → Networking</p></td></tr></tbody></table></div></div><div class="chapter"><div class="titlepage"><div><div><h2 class="title"><a id="virtual-package-list"></a>Chapter 25. List of virtual packages</h2></div></div></div><p>These are the virtual packages known to <code class="literal">Buildroot</code>, with the
+corresponding symbols and providers.</p><div class="informaltable"><table cellpadding="4px" style="border-collapse: collapse;border-top: 3px solid #527bbd; border-bottom: 3px solid #527bbd; border-left: 3px solid #527bbd; border-right: 3px solid #527bbd; " width="100%"><colgroup><col class="col_1" /><col class="col_2" /><col class="col_3" /></colgroup><thead><tr><th style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"> Virtual packages     </th><th style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="left" valign="top"> Symbols                          </th><th style="border-bottom: 1px solid #527bbd; " align="left" valign="top"> Providers</th></tr></thead><tbody><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>cryptodev</p></td><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="left" valign="top"><p><code class="literal">BR2_PACKAGE_HAS_CRYPTODEV</code></p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>cryptodev-linux, ocf-linux</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>jpeg</p></td><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="left" valign="top"><p><code class="literal">BR2_PACKAGE_HAS_JPEG</code></p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>jpeg, jpeg-turbo</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libegl</p></td><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="left" valign="top"><p><code class="literal">BR2_PACKAGE_HAS_LIBEGL</code></p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>mesa3d (w/ OpenGL EGL), gpu-amd-bin-mx51 (also imx53), gpu-viv-bin-mx6q, nvidia-driver (w/ X.org drivers), nvidia-tegra23 binaries, rpi-userland, sunxi-mali, ti-gfx</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libgl</p></td><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="left" valign="top"><p><code class="literal">BR2_PACKAGE_HAS_LIBGL</code></p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>mesa3d (w/ DRI swrast driver), mesa3d (w/ DRI i915 driver), mesa3d (w/ DRI i965 driver), mesa3d (w/ DRI radeon driver), xf86-video-imx-viv, nvidia-driver (w/ X.org drivers)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libgles</p></td><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="left" valign="top"><p><code class="literal">BR2_PACKAGE_HAS_LIBGLES</code></p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>mesa3d (w/ OpenGL ES), gpu-amd-bin-mx51 (also imx53), gpu-viv-bin-mx6q, nvidia-driver (w/ X.org drivers), nvidia-tegra23 binaries, rpi-userland, sunxi-mali, ti-gfx</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libopenmax</p></td><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="left" valign="top"><p><code class="literal">BR2_PACKAGE_HAS_LIBOPENMAX</code></p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>bellagio, nvidia-tegra23 binaries, rpi-userland</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libopenvg</p></td><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="left" valign="top"><p><code class="literal">BR2_PACKAGE_HAS_LIBOPENVG</code></p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>gpu-amd-bin-mx51 (also imx53), gpu-viv-bin-mx6q, rpi-userland</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>luainterpreter</p></td><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="left" valign="top"><p><code class="literal">BR2_PACKAGE_HAS_LUAINTERPRETER</code></p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>lua, luajit</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>powervr</p></td><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="left" valign="top"><p><code class="literal">BR2_PACKAGE_HAS_POWERVR</code></p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>ti-gfx</p></td></tr><tr><td style="border-right: 1px solid #527bbd; " align="center" valign="top"><p>udev</p></td><td style="border-right: 1px solid #527bbd; " align="left" valign="top"><p><code class="literal">BR2_PACKAGE_HAS_UDEV</code></p></td><td style="" align="left" valign="top"><p>eudev, systemd</p></td></tr></tbody></table></div></div><div class="chapter"><div class="titlepage"><div><div><h2 class="title"><a id="host-package-list"></a>Chapter 26. List of host utilities available in Buildroot</h2></div></div></div><p>The following packages are all available in the menu <code class="literal">Host utilities</code>.</p><div class="informaltable"><table cellpadding="4px" style="border-collapse: collapse;border-top: 3px solid #527bbd; border-bottom: 3px solid #527bbd; border-left: 3px solid #527bbd; border-right: 3px solid #527bbd; " width="30%"><colgroup><col class="col_1" /></colgroup><thead><tr><th style="border-bottom: 1px solid #527bbd; " align="center" valign="top"> Packages</th></tr></thead><tbody><tr><td style="border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>host checkpolicy</p></td></tr><tr><td style="border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>host cramfs</p></td></tr><tr><td style="border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>host dfu-util</p></td></tr><tr><td style="border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>host dos2unix</p></td></tr><tr><td style="border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>host dosfstools</p></td></tr><tr><td style="border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>host e2fsprogs</p></td></tr><tr><td style="border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>host e2tools</p></td></tr><tr><td style="border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>host genext2fs</p></td></tr><tr><td style="border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>host genimage</p></td></tr><tr><td style="border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>host genpart</p></td></tr><tr><td style="border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>host lpc3250loader</p></td></tr><tr><td style="border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>host mke2img</p></td></tr><tr><td style="border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>host mtd, jffs2 and ubi/ubifs tools</p></td></tr><tr><td style="border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>host mtools</p></td></tr><tr><td style="border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>host omap-u-boot-utils</p></td></tr><tr><td style="border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>host openocd</p></td></tr><tr><td style="border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>host parted</p></td></tr><tr><td style="border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>host patchelf</p></td></tr><tr><td style="border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>host pwgen</p></td></tr><tr><td style="border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>host qemu</p></td></tr><tr><td style="border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>host sam-ba</p></td></tr><tr><td style="border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>host squashfs</p></td></tr><tr><td style="border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>host sunxi-tools</p></td></tr><tr><td style="border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>host u-boot tools</p></td></tr><tr><td style="border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>host util-linux</p></td></tr><tr><td style="" align="center" valign="top"><p>host-imx-usb loader</p></td></tr></tbody></table></div></div><div class="chapter"><div class="titlepage"><div><div><h2 class="title"><a id="deprecated-list"></a>Chapter 27. Deprecated features</h2></div></div></div><p>The following features are marked as <span class="emphasis"><em>deprecated</em></span> in Buildroot due to
+them being either too old or unmaintained. They will be removed at
+some point, so stop using them.
+Each deprecated symbol in kconfig depends on a symbol
+<code class="literal">BR2_DEPRECATED_SINCE_xxxx_xx</code>, which provides an indication of when
+the feature can be removed: features will not be removed within the
+year following deprecation. For example, a symbol depending on
+<code class="literal">BR2_DEPRECATED_SINCE_2013_05</code> can be removed from 2014.05 onwards.</p><div class="informaltable"><table cellpadding="4px" style="border-collapse: collapse;border-top: 3px solid #527bbd; border-bottom: 3px solid #527bbd; border-left: 3px solid #527bbd; border-right: 3px solid #527bbd; " width="100%"><colgroup><col class="col_1" /><col class="col_2" /></colgroup><thead><tr><th style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"> Features                                 </th><th style="border-bottom: 1px solid #527bbd; " align="left" valign="top"> Location</th></tr></thead><tbody><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>SuperH64</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>Target options → Target Architecture</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>sstrip</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>Build options → strip command for binaries on target</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>Linux 3.0.x kernel headers</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>Toolchain → Kernel Headers</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>Linux 3.11.x kernel headers</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>Toolchain → Kernel Headers</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>Linux 3.13.x kernel headers</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>Toolchain → Kernel Headers</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>Linux 3.15.x kernel headers</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>Toolchain → Kernel Headers</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>Linux 3.16.x kernel headers</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>Toolchain → Kernel Headers</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>Linux 3.17.x kernel headers</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>Toolchain → Kernel Headers</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>gcc 4.5.x</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>Toolchain → GCC compiler Version</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>gdb 7.7.x</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>Toolchain → GDB debugger Version</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>xf86-input-void</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>Target packages → Graphic libraries and applications (graphic/text) → X11R7 Drivers</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>blackbox</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>Target packages → Graphic libraries and applications (graphic/text)</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>libungif</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>Target packages → Libraries → Graphics</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>cups</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>Target packages → Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>foomatic_filters</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>Target packages → Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>gutenprint</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>Target packages → Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>hplip</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>Target packages → Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>samba</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>Target packages → Networking applications</p></td></tr><tr><td style="border-right: 1px solid #527bbd; border-bottom: 1px solid #527bbd; " align="center" valign="top"><p>custom patch dir</p></td><td style="border-bottom: 1px solid #527bbd; " align="left" valign="top"><p>Bootloaders</p></td></tr><tr><td style="border-right: 1px solid #527bbd; " align="center" valign="top"><p>Custom Network Settings</p></td><td style="" align="left" valign="top"><p>Bootloaders</p></td></tr></tbody></table></div></div></div></div></body></html>
\ No newline at end of file