]> git.ipfire.org Git - thirdparty/openembedded/openembedded-core-contrib.git/commitdiff
documentation/poky-ref-manual/extendpoky.xml: New section on static library
authorScott Rifenbark <scott.m.rifenbark@intel.com>
Mon, 26 Sep 2011 17:13:56 +0000 (10:13 -0700)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Tue, 4 Oct 2011 12:46:37 +0000 (13:46 +0100)
I added a new section to the "Adding a Package" section.  This section
describes how to define the *.a files for when you create a library
that has static linking.  Response to a comment from Paul Eggleton.

(From yocto-docs rev: 64499006ecd1e6b7573f1955a2f6e2f1a9564ce8)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
documentation/poky-ref-manual/extendpoky.xml

index 978aa20a47dac47fd8698b9fa1414bb4ef7f92ad..efbc52f7cb3dfcdd33002f7ce1434b8387d80c1a 100644 (file)
@@ -79,7 +79,8 @@
                 By default, the <filename>helloworld</filename>, <filename>helloworld-dbg</filename>,
                 and <filename>helloworld-dev</filename> packages are built. 
                 For information on how to customize the packaging process, see the
-                <link linkend='usingpoky-extend-addpkg-files'>Controlling Package Content</link> section.
+                "<link linkend='splitting-an-application-into-multiple-packages'>Splitting an Application
+                into Multiple Packages</link>" section.
             </para>
         </section>
 
             </para>
         </section>
 
-        <section id='usingpoky-extend-addpkg-files'>
-            <title>Controlling Package Content</title>
+        <section id='splitting-an-application-into-multiple-packages'>
+            <title>Splitting an Application into Multiple Packages</title>
 
             <para>                        
                 You can use the variables <filename><link linkend='var-PACKAGES'>PACKAGES</link></filename> and 
             </para>
         </section>
 
+        <section id='including-static-library-files'>
+            <title>Including Static Library Files</title>
+
+            <para>                        
+                If you are building a library and the library offers static linking, you can control
+                which static library files (<filename>*.a</filename> files) get included in the 
+                built library.  
+            </para>
+
+            <para>
+                The <filename>PACKAGES</filename> and <filename>FILES_*</filename> variables in the 
+                <filename>meta/conf/bitbake.conf</filename> configuration file define how files installed
+                by the <filename>do_install</filename> task are packaged.
+                By default, the <filename>PACKAGES</filename> variable contains 
+                <filename>${PN}-staticdev</filename>, which includes all static library files.
+                <note>
+                    Previously released versions of the Yocto Project defined the static library files 
+                    through <filename>${PN}-dev</filename>.
+                </note>
+                Following, is part of the BitBake configuration file. 
+                You can see where the static library files are defined:
+                <literallayout class='monospaced'>
+     PACKAGES = "${PN}-dbg ${PN} ${PN}-doc ${PN}-dev ${PN}-staticdev ${PN}-locale"
+     PACKAGES_DYNAMIC = "${PN}-locale-*"
+     FILES = ""
+
+     FILES_${PN} = "${bindir}/* ${sbindir}/* ${libexecdir}/* ${libdir}/lib*${SOLIBS} \
+                 ${sysconfdir} ${sharedstatedir} ${localstatedir} \
+                 ${base_bindir}/* ${base_sbindir}/* \
+                 ${base_libdir}/*${SOLIBS} \
+                 ${datadir}/${BPN} ${libdir}/${BPN}/* \
+                 ${datadir}/pixmaps ${datadir}/applications \
+                 ${datadir}/idl ${datadir}/omf ${datadir}/sounds \
+                 ${libdir}/bonobo/servers"
+
+     FILES_${PN}-doc = "${docdir} ${mandir} ${infodir} ${datadir}/gtk-doc \
+                 ${datadir}/gnome/help"
+     SECTION_${PN}-doc = "doc"
+     
+     FILES_${PN}-dev = "${includedir} ${libdir}/lib*${SOLIBSDEV} ${libdir}/*.la \
+                     ${libdir}/*.o ${libdir}/pkgconfig ${datadir}/pkgconfig \
+                     ${datadir}/aclocal ${base_libdir}/*.o"
+     SECTION_${PN}-dev = "devel"
+     ALLOW_EMPTY_${PN}-dev = "1"
+     RDEPENDS_${PN}-dev = "${PN} (= ${EXTENDPKGV})"
+     
+     FILES_${PN}-staticdev = "${libdir}/*.a ${base_libdir}/*.a"
+     SECTION_${PN}-staticdev = "devel"
+     RDEPENDS_${PN}-staticdev = "${PN}-dev (= ${EXTENDPKGV})"
+                </literallayout>
+            </para>
+        </section>
+
         <section id='usingpoky-extend-addpkg-postinstalls'>
             <title>Post Install Scripts</title>