summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorScott Rifenbark <scott.m.rifenbark@intel.com>2013-02-04 18:56:16 (GMT)
committerRichard Purdie <richard.purdie@linuxfoundation.org>2013-02-14 17:24:03 (GMT)
commit40fde06345c61ca77bb40341e048673613f9932f (patch)
tree7395907a8b2b25128f7caabca51008e8934a2c40
parent7183fe85ec805ba3f3f52df10afb42b8157b529a (diff)
downloadpoky-40fde06345c61ca77bb40341e048673613f9932f.tar.gz
ref-manual: Edits to the question on how source code is fetched.
Updated the question that asks "How doe the OpenEmbedded build system obtain source code and will it work behind my firewall or proxy server?". Some of the variables did not have links or proper font type. (From yocto-docs rev: be1f665b480a47483595381c9a837892100007e8) Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--documentation/ref-manual/faq.xml81
1 files changed, 49 insertions, 32 deletions
diff --git a/documentation/ref-manual/faq.xml b/documentation/ref-manual/faq.xml
index 176573d..370f65f 100644
--- a/documentation/ref-manual/faq.xml
+++ b/documentation/ref-manual/faq.xml
@@ -485,30 +485,38 @@
485 <qandaentry> 485 <qandaentry>
486 <question> 486 <question>
487 <para id='how-does-the-yocto-project-obtain-source-code-and-will-it-work-behind-my-firewall-or-proxy-server'> 487 <para id='how-does-the-yocto-project-obtain-source-code-and-will-it-work-behind-my-firewall-or-proxy-server'>
488 How does the OpenEmbedded build system obtain source code and will it work behind my 488 How does the OpenEmbedded build system obtain source code and
489 firewall or proxy server? 489 will it work behind my firewall or proxy server?
490 </para> 490 </para>
491 </question> 491 </question>
492 <answer> 492 <answer>
493 <para> 493 <para>
494 The way the build system obtains source code is highly configurable. 494 The way the build system obtains source code is highly
495 You can setup the build system to get source code in most environments if 495 configurable.
496 HTTP transport is available. 496 You can setup the build system to get source code in most
497 environments if HTTP transport is available.
497 </para> 498 </para>
498 <para> 499 <para>
499 When the build system searches for source code, it first tries the local download directory. 500 When the build system searches for source code, it first
500 If that location fails, Poky tries PREMIRRORS, the upstream source, 501 tries the local download directory.
501 and then MIRRORS in that order. 502 If that location fails, Poky tries
503 <link linkend='var-PREMIRRORS'><filename>PREMIRRORS</filename></link>,
504 the upstream source, and then
505 <link linkend='var-MIRRORS'><filename>MIRRORS</filename></link>
506 in that order.
502 </para> 507 </para>
503 <para> 508 <para>
504 By default, the OpenEmbedded build system uses the Yocto Project source PREMIRRORS 509 Assuming your distribution is "poky", the OpenEmbedded build
505 for SCM-based sources, 510 system uses the Yocto Project source
506 upstreams for normal tarballs, and then falls back to a number of other mirrors 511 <filename>PREMIRRORS</filename> by default for SCM-based
507 including the Yocto Project source mirror if those fail. 512 sources, upstreams for normal tarballs, and then falls back
513 to a number of other mirrors including the Yocto Project
514 source mirror if those fail.
508 </para> 515 </para>
509 <para> 516 <para>
510 As an example, you could add a specific server for Poky to attempt before any 517 As an example, you could add a specific server for the
511 others by adding something like the following to the <filename>local.conf</filename> 518 build system to attempt before any others by adding something
519 like the following to the <filename>local.conf</filename>
512 configuration file: 520 configuration file:
513 <literallayout class='monospaced'> 521 <literallayout class='monospaced'>
514 PREMIRRORS_prepend = "\ 522 PREMIRRORS_prepend = "\
@@ -519,26 +527,29 @@
519 </literallayout> 527 </literallayout>
520 </para> 528 </para>
521 <para> 529 <para>
522 These changes cause Poky to intercept Git, FTP, HTTP, and HTTPS 530 These changes cause the build system to intercept Git, FTP,
523 requests and direct them to the <filename>http://</filename> sources mirror. 531 HTTP, and HTTPS requests and direct them to the
524 You can use <filename>file://</filename> URLs to point to local directories 532 <filename>http://</filename> sources mirror.
525 or network shares as well. 533 You can use <filename>file://</filename> URLs to point to
534 local directories or network shares as well.
526 </para> 535 </para>
527 <para> 536 <para>
528 Aside from the previous technique, these options also exist: 537 Aside from the previous technique, these options also exist:
529 <literallayout class='monospaced'> 538 <literallayout class='monospaced'>
530 BB_NO_NETWORK = "1" 539 BB_NO_NETWORK = "1"
531 </literallayout> 540 </literallayout>
532 This statement tells BitBake to throw an error instead of trying to access the 541 This statement tells BitBake to issue an error instead of
533 Internet. 542 trying to access the Internet.
534 This technique is useful if you want to ensure code builds only from local sources. 543 This technique is useful if you want to ensure code builds
544 only from local sources.
535 </para> 545 </para>
536 <para> 546 <para>
537 Here is another technique: 547 Here is another technique:
538 <literallayout class='monospaced'> 548 <literallayout class='monospaced'>
539 BB_FETCH_PREMIRRORONLY = "1" 549 BB_FETCH_PREMIRRORONLY = "1"
540 </literallayout> 550 </literallayout>
541 This statement limits Poky to pulling source from the PREMIRRORS only. 551 This statement limits Poky to pulling source from the
552 <filename>PREMIRRORS</filename> only.
542 Again, this technique is useful for reproducing builds. 553 Again, this technique is useful for reproducing builds.
543 </para> 554 </para>
544 <para> 555 <para>
@@ -548,12 +559,15 @@
548 </literallayout> 559 </literallayout>
549 This statement tells Poky to generate mirror tarballs. 560 This statement tells Poky to generate mirror tarballs.
550 This technique is useful if you want to create a mirror server. 561 This technique is useful if you want to create a mirror server.
551 If not, however, the technique can simply waste time during the build. 562 If not, however, the technique can simply waste time during
563 the build.
552 </para> 564 </para>
553 <para> 565 <para>
554 Finally, consider an example where you are behind an HTTP-only firewall. 566 Finally, consider an example where you are behind an
555 You could make the following changes to the <filename>local.conf</filename> 567 HTTP-only firewall.
556 configuration file as long as the PREMIRROR server is up to date: 568 You could make the following changes to the
569 <filename>local.conf</filename> configuration file as long as
570 the <filename>PREMIRRORS</filename> server is up to date:
557 <literallayout class='monospaced'> 571 <literallayout class='monospaced'>
558 PREMIRRORS_prepend = "\ 572 PREMIRRORS_prepend = "\
559 ftp://.*/.* http://www.yoctoproject.org/sources/ \n \ 573 ftp://.*/.* http://www.yoctoproject.org/sources/ \n \
@@ -561,14 +575,17 @@
561 https://.*/.* http://www.yoctoproject.org/sources/ \n" 575 https://.*/.* http://www.yoctoproject.org/sources/ \n"
562 BB_FETCH_PREMIRRORONLY = "1" 576 BB_FETCH_PREMIRRORONLY = "1"
563 </literallayout> 577 </literallayout>
564 These changes would cause Poky to successfully fetch source over HTTP and 578 These changes would cause the build system to successfully
565 any network accesses to anything other than the PREMIRROR would fail. 579 fetch source over HTTP and any network accesses to anything
580 other than the <filename>PREMIRRORS</filename> would fail.
566 </para> 581 </para>
567 <para> 582 <para>
568 The build system also honors the standard shell environment variables 583 The build system also honors the standard shell environment
569 <filename>http_proxy</filename>, <filename>ftp_proxy</filename>, 584 variables <filename>http_proxy</filename>,
570 <filename>https_proxy</filename>, and <filename>all_proxy</filename> 585 <filename>ftp_proxy</filename>,
571 to redirect requests through proxy servers. 586 <filename>https_proxy</filename>, and
587 <filename>all_proxy</filename> to redirect requests through
588 proxy servers.
572 </para> 589 </para>
573 </answer> 590 </answer>
574 </qandaentry> 591 </qandaentry>