Compare commits
169 Commits
1.5_M5.rc5
...
dora-10.0.
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
102bf5e0f6 | ||
|
|
bc37596e8f | ||
|
|
c5a2104c82 | ||
|
|
c042b16d2b | ||
|
|
ac7522bd17 | ||
|
|
c65ae4383d | ||
|
|
82846e69d8 | ||
|
|
5948aaa534 | ||
|
|
28bab2eb20 | ||
|
|
ceb56b7331 | ||
|
|
f52b7f2315 | ||
|
|
75ac719f3e | ||
|
|
4570c2e937 | ||
|
|
5dfb1de6ff | ||
|
|
8229b470b0 | ||
|
|
4404c69019 | ||
|
|
b5ad5ba24b | ||
|
|
7754bd215b | ||
|
|
5445f71fc8 | ||
|
|
5416b958be | ||
|
|
81e678bc0a | ||
|
|
3c5b6af991 | ||
|
|
e57bd62e17 | ||
|
|
e0e30c6239 | ||
|
|
7c72144419 | ||
|
|
f18194c088 | ||
|
|
06afe1fafe | ||
|
|
266a7d8c97 | ||
|
|
22d5782ef5 | ||
|
|
a333693c7f | ||
|
|
ee7e64f116 | ||
|
|
45392cc67a | ||
|
|
95915910df | ||
|
|
0b9c3393c1 | ||
|
|
abeea1be5f | ||
|
|
816b6be64d | ||
|
|
b77cb9b719 | ||
|
|
5f59b3c070 | ||
|
|
7f88c9bf53 | ||
|
|
280045cc66 | ||
|
|
854fa8ef7b | ||
|
|
69a9c18b33 | ||
|
|
105a709bc7 | ||
|
|
869d732517 | ||
|
|
adf8a6364e | ||
|
|
a72f4a9bfc | ||
|
|
0c7b734f96 | ||
|
|
28eedee1d4 | ||
|
|
a59aa9eebb | ||
|
|
acf547084a | ||
|
|
540c27906a | ||
|
|
113398d258 | ||
|
|
479fcbfd30 | ||
|
|
47129f300f | ||
|
|
0d8cbc38ab | ||
|
|
17b5f2f162 | ||
|
|
56ea7aca3e | ||
|
|
9d64f3de4a | ||
|
|
9def5c9542 | ||
|
|
2a013e290d | ||
|
|
20a86e16bc | ||
|
|
4e537df727 | ||
|
|
f81f4c5f21 | ||
|
|
6dff1bc80f | ||
|
|
d299444adc | ||
|
|
104166c804 | ||
|
|
bdfd716b7b | ||
|
|
e7a20238dc | ||
|
|
42b115bb53 | ||
|
|
35a74ee360 | ||
|
|
56f39bcf22 | ||
|
|
a02280f99f | ||
|
|
85a8645347 | ||
|
|
20979ec523 | ||
|
|
30f85cede8 | ||
|
|
43a960abf4 | ||
|
|
b618f74d6e | ||
|
|
d80472c4e3 | ||
|
|
75c143a7ae | ||
|
|
9fc88f96d4 | ||
|
|
53a1d9a788 | ||
|
|
e5d09762c2 | ||
|
|
62e0a4a425 | ||
|
|
0f066bbddb | ||
|
|
218d251fbd | ||
|
|
aa8edc08b0 | ||
|
|
5b973c4924 | ||
|
|
bdede3b8fc | ||
|
|
1cd0b1ea1c | ||
|
|
a81bfcb91f | ||
|
|
6b9cff42a8 | ||
|
|
320f90d917 | ||
|
|
22909d0a47 | ||
|
|
a8a2404053 | ||
|
|
0d194a8c62 | ||
|
|
df2e70a3af | ||
|
|
28144187da | ||
|
|
d8d5841188 | ||
|
|
ec84110a74 | ||
|
|
e2dd4ee7cf | ||
|
|
63bc84cdf5 | ||
|
|
ec51951f96 | ||
|
|
7bd3a81ef5 | ||
|
|
155961db71 | ||
|
|
89d3e75087 | ||
|
|
eb36aaa07f | ||
|
|
b8bdd92ae6 | ||
|
|
7fa2c8f6f7 | ||
|
|
18d6adb73e | ||
|
|
aca7aeadcb | ||
|
|
fcc3b98c5f | ||
|
|
a8d5d06964 | ||
|
|
0f902628fa | ||
|
|
45ace75bbf | ||
|
|
46b76d4b40 | ||
|
|
5cb0828129 | ||
|
|
e44538f4e4 | ||
|
|
56c4de93b9 | ||
|
|
a1d9b6df86 | ||
|
|
b43c8126de | ||
|
|
0fe5d9d657 | ||
|
|
331159d90d | ||
|
|
58825b9b20 | ||
|
|
df18dc084e | ||
|
|
cf2ebed2ff | ||
|
|
072c4e123f | ||
|
|
d2736102f3 | ||
|
|
7509c0f647 | ||
|
|
d4b0a4bee3 | ||
|
|
2471296e25 | ||
|
|
2e1cb79170 | ||
|
|
08d902ac8f | ||
|
|
db51dd22fa | ||
|
|
f9c26fbefb | ||
|
|
4312f5a534 | ||
|
|
66bf6562d2 | ||
|
|
9f3706fcb4 | ||
|
|
1abb7e7829 | ||
|
|
636cbfd8a8 | ||
|
|
e8e3b62d6b | ||
|
|
0ac89346de | ||
|
|
ec9f4c3c25 | ||
|
|
fde2911983 | ||
|
|
4a0ff9c74d | ||
|
|
5a2d11e845 | ||
|
|
24ffda4701 | ||
|
|
197f1fe1cc | ||
|
|
bb8e360657 | ||
|
|
b049d532f6 | ||
|
|
724a466f4c | ||
|
|
b88d1fb377 | ||
|
|
2f64fae60b | ||
|
|
1bff3fc86f | ||
|
|
e5fcc7e1ca | ||
|
|
601e1a740b | ||
|
|
68ec3d4925 | ||
|
|
32edeb391f | ||
|
|
b8819b02dc | ||
|
|
5454f92e57 | ||
|
|
41875facc9 | ||
|
|
d7e22e5f20 | ||
|
|
1ffa203dd5 | ||
|
|
2f8ce2c784 | ||
|
|
41f88ee1db | ||
|
|
141d4f3179 | ||
|
|
d43d7b1893 | ||
|
|
5b5e1b9008 | ||
|
|
c54076ed8a | ||
|
|
e58266dd3b |
@@ -75,14 +75,32 @@ Intel x86 based PCs and devices (genericx86)
|
||||
|
||||
The genericx86 MACHINE is tested on the following platforms:
|
||||
|
||||
o Asus EeePC 901
|
||||
o Acer Aspire One
|
||||
o Toshiba NB305
|
||||
o Intel Embedded Development Board 1-N450 (Black Sand)
|
||||
Intel Xeon/Core i-Series:
|
||||
+ Intel Romley Server: Sandy Bridge Xeon processor, C600 PCH (Patsburg), (Canoe Pass CRB)
|
||||
+ Intel Romley Server: Ivy Bridge Xeon processor, C600 PCH (Patsburg), (Intel SDP S2R3)
|
||||
+ Intel Crystal Forest Server: Sandy Bridge Xeon processor, DH89xx PCH (Cave Creek), (Stargo CRB)
|
||||
+ Intel Chief River Mobile: Ivy Bridge Mobile processor, QM77 PCH (Panther Point-M), (Emerald Lake II CRB, Sabino Canyon CRB)
|
||||
+ Intel Huron River Mobile: Sandy Bridge processor, QM67 PCH (Cougar Point), (Emerald Lake CRB, EVOC EC7-1817LNAR board)
|
||||
+ Intel Calpella Platform: Core i7 processor, QM57 PCH (Ibex Peak-M), (Red Fort CRB, Emerson MATXM CORE-411-B)
|
||||
+ Intel Nehalem/Westmere-EP Server: Xeon 56xx/55xx processors, 5520 chipset, ICH10R IOH (82801), (Hanlan Creek CRB)
|
||||
+ Intel Nehalem Workstation: Xeon 56xx/55xx processors, System SC5650SCWS (Greencity CRB)
|
||||
+ Intel Picket Post Server: Xeon 56xx/55xx processors (Jasper Forest), 3420 chipset (Ibex Peak), (Osage CRB)
|
||||
+ Intel Storage Platform: Sandy Bridge Xeon processor, C600 PCH (Patsburg), (Oak Creek Canyon CRB)
|
||||
+ Intel Shark Bay Client Platform: Haswell processor, LynxPoint PCH, (Walnut Canyon CRB, Lava Canyon CRB, Basking Ridge CRB, Flathead Creek CRB)
|
||||
+ Intel Shark Bay Ultrabook Platform: Haswell ULT processor, Lynx Point-LP PCH, (WhiteTip Mountain 1 CRB)
|
||||
|
||||
and is likely to work on many unlisted Atom based devices. The MACHINE type
|
||||
supports ethernet, wifi, sound, and i915 graphics by default in addition to
|
||||
common PC input devices, busses, and so on.
|
||||
Intel Atom platforms:
|
||||
+ Intel embedded Menlow: Intel Atom Z510/530 CPU, System Controller Hub US15W (Portwell NANO-8044)
|
||||
+ Intel Luna Pier: Intel Atom N4xx/D5xx series CPU (aka: Pineview-D & -M), 82801HM I/O Hub (ICH8M), (Advantech AIMB-212, Moon Creek CRB)
|
||||
+ Intel Queens Bay platform: Intel Atom E6xx CPU (aka: Tunnel Creek), Topcliff EG20T I/O Hub (Emerson NITX-315, Crown Bay CRB, Minnow Board)
|
||||
+ Intel Fish River Island platform: Intel Atom E6xx CPU (aka: Tunnel Creek), Topcliff EG20T I/O Hub (Kontron KM2M806)
|
||||
+ Intel Cedar Trail platform: Intel Atom N2000 & D2000 series CPU (aka: Cedarview), NM10 Express Chipset (Norco kit BIS-6630, Cedar Rock CRB)
|
||||
|
||||
and is likely to work on many unlisted Atom/Core/Xeon based devices. The MACHINE
|
||||
type supports ethernet, wifi, sound, and Intel/vesa graphics by default in
|
||||
addition to common PC input devices, busses, and so on. Note that it does not
|
||||
included the binary-only graphic drivers used on some Atom platforms, for
|
||||
accelerated graphics on these machines please refer to meta-intel.
|
||||
|
||||
Depending on the device, it can boot from a traditional hard-disk, a USB device,
|
||||
or over the network. Writing generated images to physical media is
|
||||
|
||||
@@ -262,8 +262,8 @@ def main():
|
||||
if not configParams.bind:
|
||||
sys.exit("FATAL: The '--server-only' option requires a name/address to bind to with the -B option.\n")
|
||||
if configParams.remote_server:
|
||||
sys.exit("FATAL: The '--server-only' option conflicts with the '--remote-server' option. %s\n" %
|
||||
("Please check your BBSERVER environment" if "BBSERVER" in os.environ else "" ))
|
||||
sys.exit("FATAL: The '--server-only' option conflicts with %s.\n" %
|
||||
("the BBSERVER environment variable" if "BBSERVER" in os.environ else "the '--remote-server' option" ))
|
||||
|
||||
if configParams.bind and configParams.servertype != "xmlrpc":
|
||||
sys.exit("FATAL: If '-B' or '--bind' is defined, we must set the servertype as 'xmlrpc'.\n")
|
||||
@@ -292,13 +292,12 @@ def main():
|
||||
if not configParams.remote_server:
|
||||
# we start a server with a given configuration
|
||||
server = start_server(servermodule, configParams, configuration)
|
||||
bb.event.ui_queue = []
|
||||
else:
|
||||
# we start a stub server that is actually a XMLRPClient that connects to a real server
|
||||
server = servermodule.BitBakeXMLRPCClient(configParams.observe_only)
|
||||
server.saveConnectionDetails(configParams.remote_server)
|
||||
|
||||
logger.removeHandler(handler)
|
||||
|
||||
if not configParams.server_only:
|
||||
# Collect the feature set for the UI
|
||||
featureset = getattr(ui_module, "featureSet", [])
|
||||
@@ -310,6 +309,8 @@ def main():
|
||||
for k in cleanedvars:
|
||||
os.environ[k] = cleanedvars[k]
|
||||
|
||||
logger.removeHandler(handler)
|
||||
|
||||
try:
|
||||
return ui_module.main(server_connection.connection, server_connection.events, configParams)
|
||||
finally:
|
||||
@@ -323,6 +324,8 @@ def main():
|
||||
if __name__ == "__main__":
|
||||
try:
|
||||
ret = main()
|
||||
except bb.BBHandledException:
|
||||
ret = 1
|
||||
except Exception:
|
||||
ret = 1
|
||||
import traceback
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
# bitbake-diffsigs
|
||||
# BitBake task signature data comparison utility
|
||||
#
|
||||
# Copyright (C) 2012 Intel Corporation
|
||||
# Copyright (C) 2012-2013 Intel Corporation
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License version 2 as
|
||||
@@ -30,7 +30,18 @@ sys.path.insert(0, os.path.join(os.path.dirname(os.path.dirname(sys.argv[0])), '
|
||||
import bb.tinfoil
|
||||
import bb.siggen
|
||||
|
||||
logger = logging.getLogger('BitBake')
|
||||
def logger_create(name, output=sys.stderr):
|
||||
logger = logging.getLogger(name)
|
||||
console = logging.StreamHandler(output)
|
||||
format = bb.msg.BBLogFormatter("%(levelname)s: %(message)s")
|
||||
if output.isatty():
|
||||
format.enable_color()
|
||||
console.setFormatter(format)
|
||||
logger.addHandler(console)
|
||||
logger.setLevel(logging.INFO)
|
||||
return logger
|
||||
|
||||
logger = logger_create('bitbake-diffsigs')
|
||||
|
||||
def find_compare_task(bbhandler, pn, taskname):
|
||||
""" Find the most recent signature files for the specified PN/task and compare them """
|
||||
@@ -39,6 +50,9 @@ def find_compare_task(bbhandler, pn, taskname):
|
||||
logger.error('Metadata does not support finding signature data files')
|
||||
sys.exit(1)
|
||||
|
||||
if not taskname.startswith('do_'):
|
||||
taskname = 'do_%s' % taskname
|
||||
|
||||
filedates = bb.siggen.find_siginfo(pn, taskname, None, bbhandler.config_data)
|
||||
latestfiles = sorted(filedates.keys(), key=lambda f: filedates[f])[-2:]
|
||||
if not latestfiles:
|
||||
@@ -71,6 +85,7 @@ def find_compare_task(bbhandler, pn, taskname):
|
||||
|
||||
|
||||
parser = optparse.OptionParser(
|
||||
description = "Compares siginfo/sigdata files written out by BitBake",
|
||||
usage = """
|
||||
%prog -t recipename taskname
|
||||
%prog sigdatafile1 sigdatafile2
|
||||
@@ -78,25 +93,30 @@ parser = optparse.OptionParser(
|
||||
|
||||
parser.add_option("-t", "--task",
|
||||
help = "find the signature data files for last two runs of the specified task and compare them",
|
||||
action="store_true", dest="taskmode")
|
||||
action="store", dest="taskargs", nargs=2, metavar='recipename taskname')
|
||||
|
||||
options, args = parser.parse_args(sys.argv)
|
||||
|
||||
if len(args) == 1:
|
||||
parser.print_help()
|
||||
if options.taskargs:
|
||||
tinfoil = bb.tinfoil.Tinfoil()
|
||||
tinfoil.prepare(config_only = True)
|
||||
find_compare_task(tinfoil, options.taskargs[0], options.taskargs[1])
|
||||
else:
|
||||
if options.taskmode:
|
||||
tinfoil = bb.tinfoil.Tinfoil()
|
||||
if len(args) < 3:
|
||||
logger.error("Please specify a recipe and task name")
|
||||
sys.exit(1)
|
||||
tinfoil.prepare(config_only = True)
|
||||
find_compare_task(tinfoil, args[1], args[2])
|
||||
if len(args) == 1:
|
||||
parser.print_help()
|
||||
else:
|
||||
if len(args) == 2:
|
||||
output = bb.siggen.dump_sigfile(sys.argv[1])
|
||||
else:
|
||||
output = bb.siggen.compare_sigfiles(sys.argv[1], sys.argv[2])
|
||||
import cPickle
|
||||
try:
|
||||
if len(args) == 2:
|
||||
output = bb.siggen.dump_sigfile(sys.argv[1])
|
||||
else:
|
||||
output = bb.siggen.compare_sigfiles(sys.argv[1], sys.argv[2])
|
||||
except IOError as e:
|
||||
logger.error(str(e))
|
||||
sys.exit(1)
|
||||
except cPickle.UnpicklingError, EOFError:
|
||||
logger.error('Invalid signature data - ensure you are specifying sigdata/siginfo files')
|
||||
sys.exit(1)
|
||||
|
||||
if output:
|
||||
print '\n'.join(output)
|
||||
if output:
|
||||
print '\n'.join(output)
|
||||
|
||||
@@ -1,11 +1,65 @@
|
||||
#!/usr/bin/env python
|
||||
|
||||
# bitbake-dumpsig
|
||||
# BitBake task signature dump utility
|
||||
#
|
||||
# Copyright (C) 2013 Intel Corporation
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License version 2 as
|
||||
# published by the Free Software Foundation.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License along
|
||||
# with this program; if not, write to the Free Software Foundation, Inc.,
|
||||
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
|
||||
import os
|
||||
import sys
|
||||
import warnings
|
||||
import optparse
|
||||
import logging
|
||||
|
||||
sys.path.insert(0, os.path.join(os.path.dirname(os.path.dirname(sys.argv[0])), 'lib'))
|
||||
|
||||
import bb.siggen
|
||||
|
||||
output = bb.siggen.dump_sigfile(sys.argv[1])
|
||||
if output:
|
||||
print '\n'.join(output)
|
||||
def logger_create(name, output=sys.stderr):
|
||||
logger = logging.getLogger(name)
|
||||
console = logging.StreamHandler(output)
|
||||
format = bb.msg.BBLogFormatter("%(levelname)s: %(message)s")
|
||||
if output.isatty():
|
||||
format.enable_color()
|
||||
console.setFormatter(format)
|
||||
logger.addHandler(console)
|
||||
logger.setLevel(logging.INFO)
|
||||
return logger
|
||||
|
||||
logger = logger_create('bitbake-dumpsig')
|
||||
|
||||
parser = optparse.OptionParser(
|
||||
description = "Dumps siginfo/sigdata files written out by BitBake",
|
||||
usage = """
|
||||
%prog sigdatafile""")
|
||||
|
||||
options, args = parser.parse_args(sys.argv)
|
||||
|
||||
if len(args) == 1:
|
||||
parser.print_help()
|
||||
else:
|
||||
import cPickle
|
||||
try:
|
||||
output = bb.siggen.dump_sigfile(args[1])
|
||||
except IOError as e:
|
||||
logger.error(str(e))
|
||||
sys.exit(1)
|
||||
except cPickle.UnpicklingError, EOFError:
|
||||
logger.error('Invalid signature data - ensure you are specifying a sigdata/siginfo file')
|
||||
sys.exit(1)
|
||||
|
||||
if output:
|
||||
print '\n'.join(output)
|
||||
|
||||
@@ -241,6 +241,13 @@ class CommandsSync:
|
||||
op = params[3]
|
||||
command.cooker.modifyConfigurationVar(var, val, default_file, op)
|
||||
|
||||
def removeVarFile(self, command, params):
|
||||
"""
|
||||
Remove a variable declaration from a file
|
||||
"""
|
||||
var = params[0]
|
||||
command.cooker.removeConfigurationVar(var)
|
||||
|
||||
def createConfigFile(self, command, params):
|
||||
"""
|
||||
Create an extra configuration file
|
||||
|
||||
@@ -193,7 +193,10 @@ class BBCooker:
|
||||
if op == "append":
|
||||
self.appendConfigurationVar(var, val, default_file)
|
||||
elif op == "set":
|
||||
self.saveConfigurationVar(var, val, default_file)
|
||||
self.saveConfigurationVar(var, val, default_file, "=")
|
||||
elif op == "earlyAssign":
|
||||
self.saveConfigurationVar(var, val, default_file, "?=")
|
||||
|
||||
|
||||
def appendConfigurationVar(self, var, val, default_file):
|
||||
#add append var operation to the end of default_file
|
||||
@@ -207,7 +210,7 @@ class BBCooker:
|
||||
for c in contents:
|
||||
total += c
|
||||
|
||||
total += "#added by bitbake"
|
||||
total += "#added by hob"
|
||||
total += "\n%s += \"%s\"\n" % (var, val)
|
||||
|
||||
with open(default_file, 'w') as f:
|
||||
@@ -218,7 +221,7 @@ class BBCooker:
|
||||
loginfo = {"op":append, "file":default_file, "line":total.count("\n")}
|
||||
self.data.appendVar(var, val, **loginfo)
|
||||
|
||||
def saveConfigurationVar(self, var, val, default_file):
|
||||
def saveConfigurationVar(self, var, val, default_file, op):
|
||||
|
||||
replaced = False
|
||||
#do not save if nothing changed
|
||||
@@ -260,8 +263,8 @@ class BBCooker:
|
||||
#check if the variable was saved before in the same way
|
||||
#if true it replace the place where the variable was declared
|
||||
#else it comments it
|
||||
if contents[begin_line-1]== "#added by bitbake\n":
|
||||
contents[begin_line] = "%s = \"%s\"\n" % (var, val)
|
||||
if contents[begin_line-1]== "#added by hob\n":
|
||||
contents[begin_line] = "%s %s \"%s\"\n" % (var, op, val)
|
||||
replaced = True
|
||||
else:
|
||||
for ii in range(begin_line, end_line):
|
||||
@@ -290,8 +293,8 @@ class BBCooker:
|
||||
total += c
|
||||
|
||||
#add the variable on a single line, to be easy to replace the second time
|
||||
total += "\n#added by bitbake"
|
||||
total += "\n%s = \"%s\"\n" % (var, val)
|
||||
total += "\n#added by hob"
|
||||
total += "\n%s %s \"%s\"\n" % (var, op, val)
|
||||
|
||||
with open(default_file, 'w') as f:
|
||||
f.write(total)
|
||||
@@ -301,6 +304,44 @@ class BBCooker:
|
||||
loginfo = {"op":set, "file":default_file, "line":total.count("\n")}
|
||||
self.data.setVar(var, val, **loginfo)
|
||||
|
||||
def removeConfigurationVar(self, var):
|
||||
conf_files = self.data.varhistory.get_variable_files(var)
|
||||
topdir = self.data.getVar("TOPDIR")
|
||||
|
||||
for conf_file in conf_files:
|
||||
if topdir in conf_file:
|
||||
with open(conf_file, 'r') as f:
|
||||
contents = f.readlines()
|
||||
f.close()
|
||||
|
||||
lines = self.data.varhistory.get_variable_lines(var, conf_file)
|
||||
for line in lines:
|
||||
total = ""
|
||||
i = 0
|
||||
for c in contents:
|
||||
total += c
|
||||
i = i + 1
|
||||
if i==int(line):
|
||||
end_index = len(total)
|
||||
index = total.rfind(var, 0, end_index)
|
||||
|
||||
begin_line = total.count("\n",0,index)
|
||||
|
||||
#check if the variable was saved before in the same way
|
||||
if contents[begin_line-1]== "#added by hob\n":
|
||||
contents[begin_line-1] = contents[begin_line] = "\n"
|
||||
else:
|
||||
contents[begin_line] = "\n"
|
||||
#remove var from history
|
||||
self.data.varhistory.del_var_history(var, conf_file, line)
|
||||
|
||||
total = ""
|
||||
for c in contents:
|
||||
total += c
|
||||
with open(conf_file, 'w') as f:
|
||||
f.write(total)
|
||||
f.close()
|
||||
|
||||
def createConfigFile(self, name):
|
||||
path = os.getcwd()
|
||||
confpath = os.path.join(path, "conf", name)
|
||||
|
||||
@@ -281,9 +281,13 @@ class VariableHistory(object):
|
||||
lines.append(line)
|
||||
return lines
|
||||
|
||||
def del_var_history(self, var):
|
||||
def del_var_history(self, var, f=None, line=None):
|
||||
"""If file f and line are not given, the entire history of var is deleted"""
|
||||
if var in self.variables:
|
||||
self.variables[var] = []
|
||||
if f and line:
|
||||
self.variables[var] = [ x for x in self.variables[var] if x['file']!=f and x['line']!=line]
|
||||
else:
|
||||
self.variables[var] = []
|
||||
|
||||
class DataSmart(MutableMapping):
|
||||
def __init__(self, special = COWDictBase.copy(), seen = COWDictBase.copy() ):
|
||||
|
||||
@@ -225,7 +225,7 @@ class diskMonitor:
|
||||
self.preFreeS[k] = freeSpace
|
||||
|
||||
if action == "STOPTASKS" and not self.checked[k]:
|
||||
logger.error("No new tasks can be excuted since the disk space monitor action is \"STOPTASKS\"!")
|
||||
logger.error("No new tasks can be executed since the disk space monitor action is \"STOPTASKS\"!")
|
||||
self.checked[k] = True
|
||||
rq.finish_runqueue(False)
|
||||
bb.event.fire(bb.event.DiskFull(dev, 'disk', freeSpace, path), self.configuration)
|
||||
@@ -253,7 +253,7 @@ class diskMonitor:
|
||||
self.preFreeI[k] = freeInode
|
||||
|
||||
if action == "STOPTASKS" and not self.checked[k]:
|
||||
logger.error("No new tasks can be excuted since the disk space monitor action is \"STOPTASKS\"!")
|
||||
logger.error("No new tasks can be executed since the disk space monitor action is \"STOPTASKS\"!")
|
||||
self.checked[k] = True
|
||||
rq.finish_runqueue(False)
|
||||
bb.event.fire(bb.event.DiskFull(dev, 'inode', freeInode, path), self.configuration)
|
||||
|
||||
@@ -354,9 +354,12 @@ class BitBakeXMLRPCClient(BitBakeBaseServer):
|
||||
s.close()
|
||||
except:
|
||||
return None
|
||||
self.serverImpl = XMLRPCProxyServer(host, port)
|
||||
self.connection = BitBakeXMLRPCServerConnection(self.serverImpl, (ip, 0), self.observer_only, featureset)
|
||||
return self.connection.connect()
|
||||
try:
|
||||
self.serverImpl = XMLRPCProxyServer(host, port)
|
||||
self.connection = BitBakeXMLRPCServerConnection(self.serverImpl, (ip, 0), self.observer_only, featureset)
|
||||
return self.connection.connect()
|
||||
except Exception as e:
|
||||
bb.fatal("Could not connect to server at %s:%s (%s)" % (host, port, str(e)))
|
||||
|
||||
def endSession(self):
|
||||
self.connection.removeClient()
|
||||
|
||||
@@ -31,6 +31,7 @@ import re
|
||||
import logging
|
||||
import sys
|
||||
import signal
|
||||
import time
|
||||
from bb.ui.crumbs.imageconfigurationpage import ImageConfigurationPage
|
||||
from bb.ui.crumbs.recipeselectionpage import RecipeSelectionPage
|
||||
from bb.ui.crumbs.packageselectionpage import PackageSelectionPage
|
||||
@@ -197,7 +198,7 @@ class Configuration:
|
||||
handler.set_var_in_file("BBLAYERS", self.layers, "bblayers.conf")
|
||||
# local.conf
|
||||
if not defaults:
|
||||
handler.set_var_in_file("MACHINE", self.curr_mach, "local.conf")
|
||||
handler.early_assign_var_in_file("MACHINE", self.curr_mach, "local.conf")
|
||||
handler.set_var_in_file("DISTRO", self.curr_distro, "local.conf")
|
||||
handler.set_var_in_file("DL_DIR", self.dldir, "local.conf")
|
||||
handler.set_var_in_file("SSTATE_DIR", self.sstatedir, "local.conf")
|
||||
@@ -217,7 +218,7 @@ class Configuration:
|
||||
handler.set_var_in_file("SDKMACHINE", self.curr_sdk_machine, "local.conf")
|
||||
handler.set_var_in_file("CONF_VERSION", self.conf_version, "local.conf")
|
||||
handler.set_var_in_file("LCONF_VERSION", self.lconf_version, "bblayers.conf")
|
||||
handler.set_var_in_file("EXTRA_SETTING", self.extra_setting, "local.conf")
|
||||
handler.set_extra_config(self.extra_setting)
|
||||
handler.set_var_in_file("TOOLCHAIN_BUILD", self.toolchain_build, "local.conf")
|
||||
handler.set_var_in_file("IMAGE_FSTYPES", self.image_fstypes, "local.conf")
|
||||
if not defaults:
|
||||
@@ -1466,3 +1467,10 @@ class Builder(gtk.Window):
|
||||
|
||||
def get_topdir(self):
|
||||
return self.handler.get_topdir()
|
||||
|
||||
def wait(self, delay):
|
||||
time_start = time.time()
|
||||
time_end = time_start + delay
|
||||
while time_end > time.time():
|
||||
while gtk.events_pending():
|
||||
gtk.main_iteration()
|
||||
|
||||
@@ -234,7 +234,10 @@ class AdvancedSettingsDialog (CrumbsDialog, SettingsUIHelper):
|
||||
article = ""
|
||||
if image_type.startswith(("a", "e", "i", "o", "u")):
|
||||
article = "n"
|
||||
self.image_types_checkbuttons[image_type].set_tooltip_text("Build a%s %s image" % (article, image_type))
|
||||
if image_type == "live":
|
||||
self.image_types_checkbuttons[image_type].set_tooltip_text("Build iso and hddimg images")
|
||||
else:
|
||||
self.image_types_checkbuttons[image_type].set_tooltip_text("Build a%s %s image" % (article, image_type))
|
||||
table.attach(self.image_types_checkbuttons[image_type], j - 1, j + 3, i, i + 1)
|
||||
if image_type in self.configuration.image_fstypes.split():
|
||||
self.image_types_checkbuttons[image_type].set_active(True)
|
||||
|
||||
@@ -21,6 +21,7 @@
|
||||
|
||||
import gobject
|
||||
import logging
|
||||
import ast
|
||||
from bb.ui.crumbs.runningbuild import RunningBuild
|
||||
|
||||
class HobHandler(gobject.GObject):
|
||||
@@ -315,7 +316,7 @@ class HobHandler(gobject.GObject):
|
||||
|
||||
def set_machine(self, machine):
|
||||
if machine:
|
||||
self.set_var_in_file("MACHINE", machine, "local.conf")
|
||||
self.early_assign_var_in_file("MACHINE", machine, "local.conf")
|
||||
|
||||
def set_sdk_machine(self, sdk_machine):
|
||||
self.set_var_in_file("SDKMACHINE", sdk_machine, "local.conf")
|
||||
@@ -357,7 +358,20 @@ class HobHandler(gobject.GObject):
|
||||
def set_incompatible_license(self, incompat_license):
|
||||
self.set_var_in_file("INCOMPATIBLE_LICENSE", incompat_license, "local.conf")
|
||||
|
||||
def set_extra_setting(self, extra_setting):
|
||||
self.set_var_in_file("EXTRA_SETTING", extra_setting, "local.conf")
|
||||
|
||||
def set_extra_config(self, extra_setting):
|
||||
old_extra_setting = ast.literal_eval(self.runCommand(["getVariable", "EXTRA_SETTING"]) or "{}")
|
||||
if extra_setting:
|
||||
self.set_var_in_file("EXTRA_SETTING", extra_setting, "local.conf")
|
||||
else:
|
||||
self.remove_var_from_file("EXTRA_SETTING")
|
||||
|
||||
#remove not needed settings from conf
|
||||
for key in old_extra_setting:
|
||||
if key not in extra_setting:
|
||||
self.remove_var_from_file(key)
|
||||
for key in extra_setting.keys():
|
||||
value = extra_setting[key]
|
||||
self.set_var_in_file(key, value, "local.conf")
|
||||
@@ -472,6 +486,14 @@ class HobHandler(gobject.GObject):
|
||||
self.server.runCommand(["setVarFile", var, val, default_file, "set"])
|
||||
self.runCommand(["disableDataTracking"])
|
||||
|
||||
def early_assign_var_in_file(self, var, val, default_file=None):
|
||||
self.runCommand(["enableDataTracking"])
|
||||
self.server.runCommand(["setVarFile", var, val, default_file, "earlyAssign"])
|
||||
self.runCommand(["disableDataTracking"])
|
||||
|
||||
def remove_var_from_file(self, var):
|
||||
self.server.runCommand(["removeVarFile", var])
|
||||
|
||||
def append_var_in_file(self, var, val, default_file=None):
|
||||
self.server.runCommand(["setVarFile", var, val, default_file, "append"])
|
||||
|
||||
|
||||
@@ -300,7 +300,12 @@ class ImageConfigurationPage (HobPage):
|
||||
def view_warnings_button_clicked_cb(self, button):
|
||||
self.builder.show_warning_dialog()
|
||||
|
||||
def machine_combo_changed_idle_cb(self):
|
||||
self.builder.window.set_cursor(None)
|
||||
|
||||
def machine_combo_changed_cb(self, machine_combo):
|
||||
self.builder.window.set_cursor(gtk.gdk.Cursor(gtk.gdk.WATCH))
|
||||
self.builder.wait(0.1) #wait for combo and cursor to update
|
||||
self.stopping = False
|
||||
self.builder.parsing_warnings = []
|
||||
combo_item = machine_combo.get_active_text()
|
||||
@@ -324,6 +329,8 @@ class ImageConfigurationPage (HobPage):
|
||||
# Do reparse recipes
|
||||
self.builder.populate_recipe_package_info_async()
|
||||
|
||||
glib.idle_add(self.machine_combo_changed_idle_cb)
|
||||
|
||||
def update_machine_combo(self):
|
||||
self.disable_warnings_bar()
|
||||
all_machines = [self.__dummy_machine__] + self.builder.parameters.all_machines
|
||||
@@ -527,7 +534,10 @@ class ImageConfigurationPage (HobPage):
|
||||
if not response:
|
||||
return
|
||||
if settings_changed:
|
||||
self.builder.window.set_cursor(gtk.gdk.Cursor(gtk.gdk.WATCH))
|
||||
self.builder.wait(0.1) #wait for adv_settings_dialog to terminate
|
||||
self.builder.reparse_post_adv_settings()
|
||||
self.builder.window.set_cursor(None)
|
||||
|
||||
def just_bake_button_clicked_cb(self, button):
|
||||
self.builder.parsing_warnings = []
|
||||
|
||||
@@ -724,7 +724,7 @@ def copyfile(src, dest, newmtime = None, sstat = None):
|
||||
if not sstat:
|
||||
sstat = os.lstat(src)
|
||||
except Exception as e:
|
||||
print("copyfile: Stating source file failed...", e)
|
||||
logger.warn("copyfile: stat of %s failed (%s)" % (src, e))
|
||||
return False
|
||||
|
||||
destexists = 1
|
||||
@@ -751,7 +751,7 @@ def copyfile(src, dest, newmtime = None, sstat = None):
|
||||
#os.lchown(dest,sstat[stat.ST_UID],sstat[stat.ST_GID])
|
||||
return os.lstat(dest)
|
||||
except Exception as e:
|
||||
print("copyfile: failed to properly create symlink:", dest, "->", target, e)
|
||||
logger.warn("copyfile: failed to create symlink %s to %s (%s)" % (dest, target, e))
|
||||
return False
|
||||
|
||||
if stat.S_ISREG(sstat[stat.ST_MODE]):
|
||||
@@ -766,7 +766,7 @@ def copyfile(src, dest, newmtime = None, sstat = None):
|
||||
shutil.copyfile(src, dest + "#new")
|
||||
os.rename(dest + "#new", dest)
|
||||
except Exception as e:
|
||||
print('copyfile: copy', src, '->', dest, 'failed.', e)
|
||||
logger.warn("copyfile: copy %s to %s failed (%s)" % (src, dest, e))
|
||||
return False
|
||||
finally:
|
||||
if srcchown:
|
||||
@@ -777,13 +777,13 @@ def copyfile(src, dest, newmtime = None, sstat = None):
|
||||
#we don't yet handle special, so we need to fall back to /bin/mv
|
||||
a = getstatusoutput("/bin/cp -f " + "'" + src + "' '" + dest + "'")
|
||||
if a[0] != 0:
|
||||
print("copyfile: Failed to copy special file:" + src + "' to '" + dest + "'", a)
|
||||
logger.warn("copyfile: failed to copy special file %s to %s (%s)" % (src, dest, a))
|
||||
return False # failure
|
||||
try:
|
||||
os.lchown(dest, sstat[stat.ST_UID], sstat[stat.ST_GID])
|
||||
os.chmod(dest, stat.S_IMODE(sstat[stat.ST_MODE])) # Sticky is reset on chown
|
||||
except Exception as e:
|
||||
print("copyfile: Failed to chown/chmod/unlink", dest, e)
|
||||
logger.warn("copyfile: failed to chown/chmod %s (%s)" % (dest, e))
|
||||
return False
|
||||
|
||||
if newmtime:
|
||||
|
||||
@@ -63,7 +63,7 @@
|
||||
</revision>
|
||||
<revision>
|
||||
<revnumber>1.5</revnumber>
|
||||
<date>Sometime in 2013</date>
|
||||
<date>October 2013</date>
|
||||
<revremark>Released with the Yocto Project 1.5 Release.</revremark>
|
||||
</revision>
|
||||
</revhistory>
|
||||
|
||||
@@ -75,7 +75,7 @@
|
||||
</revision>
|
||||
<revision>
|
||||
<revnumber>1.5</revnumber>
|
||||
<date>Sometime in 2013</date>
|
||||
<date>October 2013</date>
|
||||
<revremark>Released with the Yocto Project 1.5 Release.</revremark>
|
||||
</revision>
|
||||
</revhistory>
|
||||
|
||||
@@ -183,17 +183,15 @@
|
||||
meta-crownbay/recipes-graphics/xorg-xserver/xserver-xf86-config/
|
||||
meta-crownbay/recipes-graphics/xorg-xserver/xserver-xf86-config/crownbay/
|
||||
meta-crownbay/recipes-graphics/xorg-xserver/xserver-xf86-config/crownbay/xorg.conf
|
||||
meta-crownbay/recipes-graphics/xorg-xserver/xserver-xf86-config/crownbay-noemgd/
|
||||
meta-crownbay/recipes-graphics/xorg-xserver/xserver-xf86-config/crownbay-noemgd/xorg.conf
|
||||
meta-crownbay/recipes-kernel/
|
||||
meta-crownbay/recipes-kernel/linux/
|
||||
meta-crownbay/recipes-kernel/linux/linux-yocto_3.2.bbappend
|
||||
meta-crownbay/recipes-kernel/linux/linux-yocto_3.4.bbappend
|
||||
meta-crownbay/recipes-kernel/linux/linux-yocto_3.8.bbappend
|
||||
meta-crownbay/recipes-kernel/linux/linux-yocto_3.10.bbappend
|
||||
meta-crownbay/recipes-kernel/linux/linux-yocto-dev.bbappend
|
||||
meta-crownbay/recipes-kernel/linux/linux-yocto-rt_3.2.bbappend
|
||||
meta-crownbay/recipes-kernel/linux/linux-yocto-rt_3.4.bbappend
|
||||
meta-crownbay/recipes-kernel/linux/linux-yocto-rt_3.8.bbappend
|
||||
meta-crownbay/recipes-kernel/linux/linux-yocto-rt_3.10.bbappend
|
||||
</literallayout>
|
||||
</para>
|
||||
|
||||
@@ -376,15 +374,6 @@
|
||||
<para>
|
||||
Each BSP Layer requires at least one machine file.
|
||||
However, you can supply more than one file.
|
||||
For example, in the Crown Bay BSP shown earlier in this section, the
|
||||
<filename>conf/machine</filename> directory contains two configuration files:
|
||||
<filename>crownbay.conf</filename> and <filename>crownbay-noemgd.conf</filename>.
|
||||
The <filename>crownbay.conf</filename> file is used for the Crown Bay BSP
|
||||
that supports the <trademark class='registered'>Intel</trademark> Embedded
|
||||
Media and Graphics Driver (<trademark class='registered'>Intel</trademark>
|
||||
EMGD), while the <filename>crownbay-noemgd</filename> file is used for the
|
||||
Crown Bay BSP that supports Video Electronics Standards Association (VESA)
|
||||
graphics only.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
@@ -428,15 +417,13 @@
|
||||
This optional directory contains miscellaneous recipe files for the BSP.
|
||||
Most notably would be the formfactor files.
|
||||
For example, in the Crown Bay BSP there is the
|
||||
<filename>formfactor_0.0.bbappend</filename> file, which is an append file used
|
||||
to augment the recipe that starts the build.
|
||||
Furthermore, there are machine-specific settings used during the build that are
|
||||
defined by the <filename>machconfig</filename> files.
|
||||
In the Crown Bay example, two <filename>machconfig</filename> files exist:
|
||||
one that supports the
|
||||
<trademark class='registered'>Intel</trademark> Embedded
|
||||
Media and Graphics Driver (<trademark class='registered'>Intel</trademark>
|
||||
EMGD) and one that does not:
|
||||
<filename>formfactor_0.0.bbappend</filename> file, which is an
|
||||
append file used to augment the recipe that starts the build.
|
||||
Furthermore, there are machine-specific settings used during the
|
||||
build that are defined by the <filename>machconfig</filename>.
|
||||
In the Crown Bay example, two <filename>machconfig</filename> files
|
||||
exist: one that supports the Intel® Embedded Media and Graphics
|
||||
Driver (Intel® EMGD) and one that does not:
|
||||
<literallayout class='monospaced'>
|
||||
meta-crownbay/recipes-bsp/formfactor/formfactor/crownbay/machconfig
|
||||
meta-crownbay/recipes-bsp/formfactor/formfactor/crownbay-noemgd/machconfig
|
||||
@@ -467,15 +454,12 @@
|
||||
This optional directory contains recipes for the BSP if it has
|
||||
special requirements for graphics support.
|
||||
All files that are needed for the BSP to support a display are kept here.
|
||||
For example, the Crown Bay BSP contains two versions of the
|
||||
<filename>xorg.conf</filename> file.
|
||||
The version in <filename>crownbay</filename> builds a BSP that supports the
|
||||
<trademark class='registered'>Intel</trademark> Embedded Media Graphics Driver (EMGD),
|
||||
while the version in <filename>crownbay-noemgd</filename> builds
|
||||
a BSP that supports Video Electronics Standards Association (VESA) graphics only:
|
||||
For example, the Crown Bay BSP's <filename>xorg.conf</filename> file
|
||||
detects the graphics support needed (i.e. the Intel® Embedded Media
|
||||
Graphics Driver (EMGD) or the Video Electronics Standards Association
|
||||
(VESA) graphics):
|
||||
<literallayout class='monospaced'>
|
||||
meta-crownbay/recipes-graphics/xorg-xserver/xserver-xf86-config_0.1.bbappend
|
||||
meta-crownbay/recipes-graphics/xorg-xserver/xserver-xf86-config/crownbay/xorg.conf
|
||||
meta-crownbay/recipes-graphics/xorg-xserver/xserver-xf86-config/crownbay-noemgd/xorg.conf
|
||||
</literallayout>
|
||||
</para>
|
||||
@@ -502,28 +486,28 @@
|
||||
the <filename>meta-<bsp_name>/recipes-kernel/linux</filename> directory).
|
||||
</para>
|
||||
<para>
|
||||
Suppose you are using the <filename>linux-yocto_3.8.bb</filename> recipe to build
|
||||
Suppose you are using the <filename>linux-yocto_3.10.bb</filename> recipe to build
|
||||
the kernel.
|
||||
In other words, you have selected the kernel in your
|
||||
<filename><bsp_name>.conf</filename> file by adding these types
|
||||
of statements:
|
||||
<literallayout class='monospaced'>
|
||||
PREFERRED_PROVIDER_virtual/kernel ?= "linux-yocto"
|
||||
PREFERRED_VERSION_linux-yocto ?= "3.8%"
|
||||
PREFERRED_VERSION_linux-yocto ?= "3.10%"
|
||||
</literallayout>
|
||||
<note>
|
||||
When the preferred provider is assumed by default, the
|
||||
<filename>PREFERRED_PROVIDER</filename> statement does not appear in the
|
||||
<filename><bsp_name>.conf</filename> file.
|
||||
</note>
|
||||
You would use the <filename>linux-yocto_3.8.bbappend</filename> file to append
|
||||
You would use the <filename>linux-yocto_3.10.bbappend</filename> file to append
|
||||
specific BSP settings to the kernel, thus configuring the kernel for your particular BSP.
|
||||
</para>
|
||||
<para>
|
||||
As an example, look at the existing Crown Bay BSP.
|
||||
The append file used is:
|
||||
<literallayout class='monospaced'>
|
||||
meta-crownbay/recipes-kernel/linux/linux-yocto_3.8.bbappend
|
||||
meta-crownbay/recipes-kernel/linux/linux-yocto_3.10.bbappend
|
||||
</literallayout>
|
||||
The following listing shows the file.
|
||||
Be aware that the actual commit ID strings in this example listing might be different
|
||||
@@ -532,46 +516,18 @@
|
||||
<literallayout class='monospaced'>
|
||||
FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
|
||||
|
||||
COMPATIBLE_MACHINE_crownbay = "crownbay"
|
||||
KMACHINE_crownbay = "crownbay"
|
||||
KBRANCH_crownbay = "standard/crownbay"
|
||||
KERNEL_FEATURES_crownbay_append = " features/drm-emgd/drm-emgd-1.16 cfg/vesafb"
|
||||
|
||||
COMPATIBLE_MACHINE_crownbay-noemgd = "crownbay-noemgd"
|
||||
KMACHINE_crownbay-noemgd = "crownbay"
|
||||
KBRANCH_crownbay-noemgd = "standard/crownbay"
|
||||
KERNEL_FEATURES_crownbay-noemgd_append = " cfg/vesafb"
|
||||
KERNEL_FEATURES_append_crownbay-noemgd = " cfg/vesafb"
|
||||
|
||||
LINUX_VERSION = "3.8.4"
|
||||
LINUX_VERSION = "3.10.11"
|
||||
|
||||
SRCREV_meta_crownbay = "2a6d36e75ca0a121570a389d7bab76ec240cbfda"
|
||||
SRCREV_machine_crownbay = "47aed0c17c1c55988198ad39f86ae88894c8e0a4"
|
||||
SRCREV_emgd_crownbay = "c780732f175ff0ec866fac2130175876b519b576"
|
||||
|
||||
SRCREV_meta_crownbay-noemgd = "2a6d36e75ca0a121570a389d7bab76ec240cbfda"
|
||||
SRCREV_machine_crownbay-noemgd = "47aed0c17c1c55988198ad39f86ae88894c8e0a4"
|
||||
|
||||
SRC_URI_crownbay = "git://git.yoctoproject.org/linux-yocto-3.8.git;protocol=git;nocheckout=1;branch=${KBRANCH},${KMETA},emgd-1.16;name=machine,meta,emgd"
|
||||
SRCREV_meta_crownbay-noemgd = "285f93bf942e8f6fa678ffc6cc53696ed5400718"
|
||||
SRCREV_machine_crownbay-noemgd = "702040ac7c7ec66a29b4d147665ccdd0ff015577"
|
||||
</literallayout>
|
||||
This append file contains statements used to support the Crown Bay BSP for both
|
||||
<trademark class='registered'>Intel</trademark> EMGD and the VESA graphics.
|
||||
The build process, in this case, recognizes and uses only the statements that
|
||||
apply to the defined machine name - <filename>crownbay</filename> in this case.
|
||||
So, the applicable statements in the <filename>linux-yocto_3.8.bbappend</filename>
|
||||
file are follows:
|
||||
<literallayout class='monospaced'>
|
||||
FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
|
||||
|
||||
COMPATIBLE_MACHINE_crownbay = "crownbay"
|
||||
KMACHINE_crownbay = "crownbay"
|
||||
KBRANCH_crownbay = "standard/crownbay"
|
||||
KERNEL_FEATURES_crownbay_append = " features/drm-emgd/drm-emgd-1.16 cfg/vesafb"
|
||||
|
||||
SRCREV_meta_crownbay = "2a6d36e75ca0a121570a389d7bab76ec240cbfda"
|
||||
SRCREV_machine_crownbay = "47aed0c17c1c55988198ad39f86ae88894c8e0a4"
|
||||
SRCREV_emgd_crownbay = "c780732f175ff0ec866fac2130175876b519b576"
|
||||
</literallayout>
|
||||
The append file defines <filename>crownbay</filename> as the
|
||||
This append file contains statements used to support the Crown Bay BSP.
|
||||
The file defines <filename>crownbay</filename> as the
|
||||
<ulink url='&YOCTO_DOCS_REF_URL;#var-COMPATIBLE_MACHINE'><filename>COMPATIBLE_MACHINE</filename></ulink>
|
||||
and uses the
|
||||
<ulink url='&YOCTO_DOCS_REF_URL;#var-KMACHINE'><filename>KMACHINE</filename></ulink> variable to
|
||||
@@ -588,12 +544,6 @@
|
||||
<ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>Source Directory</ulink> Git
|
||||
repository and the <filename>meta</filename> Git repository branches to identify the
|
||||
exact kernel needed to build the Crown Bay BSP.
|
||||
<note>
|
||||
For <filename>crownbay</filename>, a specific commit is also needed to point
|
||||
to the branch that supports EMGD graphics.
|
||||
At a minimum, every BSP points to the
|
||||
<filename>machine</filename> and <filename>meta</filename> commits.
|
||||
</note>
|
||||
</para>
|
||||
|
||||
<para>
|
||||
@@ -1281,31 +1231,35 @@
|
||||
Following is the complete example:
|
||||
<literallayout class='monospaced'>
|
||||
$ yocto-bsp create myarm qemu
|
||||
Checking basic git connectivity...
|
||||
Done.
|
||||
|
||||
Which qemu architecture would you like to use? [default: i386]
|
||||
1) i386 (32-bit)
|
||||
1) i386 (32-bit)
|
||||
2) x86_64 (64-bit)
|
||||
3) ARM (32-bit)
|
||||
4) PowerPC (32-bit)
|
||||
5) MIPS (32-bit)
|
||||
3
|
||||
Would you like to use the default (3.8) kernel? (y/n) [default: y]
|
||||
Would you like to use the default (3.10) kernel? (y/n) [default: y] y
|
||||
Do you need a new machine branch for this BSP (the alternative is to re-use an existing branch)? [y/n] [default: y]
|
||||
Getting branches from remote repo git://git.yoctoproject.org/linux-yocto-3.8.git...
|
||||
Getting branches from remote repo git://git.yoctoproject.org/linux-yocto-3.10.git...
|
||||
Please choose a machine branch to base your new BSP branch on: [default: standard/base]
|
||||
1) standard/arm-versatile-926ejs
|
||||
2) standard/base
|
||||
3) standard/beagleboard
|
||||
4) standard/ck
|
||||
5) standard/crownbay
|
||||
6) standard/edf
|
||||
7) standard/emenlow
|
||||
8) standard/fri2
|
||||
9) standard/fsl-mpc8315e-rdb
|
||||
10) standard/mti-malta32
|
||||
11) standard/mti-malta64
|
||||
12) standard/qemuppc
|
||||
13) standard/routerstationpro
|
||||
14) standard/sys940x
|
||||
1) standard/arm-versatile-926ejs
|
||||
2) standard/base
|
||||
3) standard/beagleboard
|
||||
4) standard/ck
|
||||
5) standard/crownbay
|
||||
6) standard/edf
|
||||
7) standard/emenlow
|
||||
8) standard/fri2
|
||||
9) standard/fsl-mpc8315e-rdb
|
||||
10) standard/minnow
|
||||
11) standard/mti-malta32
|
||||
12) standard/mti-malta64
|
||||
13) standard/qemuppc
|
||||
14) standard/routerstationpro
|
||||
15) standard/sys940x
|
||||
1
|
||||
Would you like SMP support? (y/n) [default: y]
|
||||
Does your BSP have a touchscreen? (y/n) [default: n]
|
||||
@@ -1320,7 +1274,7 @@
|
||||
In the example, we use the ARM architecture.
|
||||
</para></listitem>
|
||||
<listitem><para>The script then prompts you for the kernel.
|
||||
The default 3.8 kernel is acceptable.
|
||||
The default 3.10 kernel is acceptable.
|
||||
So, the example accepts the default.
|
||||
If you enter 'n', the script prompts you to further enter the kernel
|
||||
you do want to use (e.g. 3.2, 3.2_preempt-rt, and so forth.).</para></listitem>
|
||||
|
||||
@@ -3064,7 +3064,7 @@
|
||||
</para></listitem>
|
||||
<listitem><para>Handling optional module packaging
|
||||
</para></listitem>
|
||||
<listitem><para>Setting up Runtime Package Management
|
||||
<listitem><para>Using Runtime Package Management
|
||||
</para></listitem>
|
||||
<listitem><para>Setting up and running package test
|
||||
(ptest)
|
||||
@@ -3605,56 +3605,226 @@
|
||||
</section>
|
||||
</section>
|
||||
|
||||
<section id='setting-up-runtime-package-management'>
|
||||
<title>Setting Up Runtime Package Management</title>
|
||||
<section id='using-runtime-package-management'>
|
||||
<title>Using Runtime Package Management</title>
|
||||
|
||||
<para>
|
||||
For RPM, IPK, and DEB package formats, it is possible to set
|
||||
up a repository that is a host-based
|
||||
package feed from which you can install packages on the
|
||||
target system during runtime.
|
||||
Doing so is optional and depends on the following:
|
||||
During a build, BitBake always transforms a recipe into one or
|
||||
more packages.
|
||||
For example, BitBake takes the <filename>bash</filename> recipe
|
||||
and currently produces the <filename>bash-dbg</filename>,
|
||||
<filename>bash-staticdev</filename>,
|
||||
<filename>bash-dev</filename>, <filename>bash-doc</filename>,
|
||||
<filename>bash-locale</filename>, and
|
||||
<filename>bash</filename> packages.
|
||||
Not all generated packages are included in an image.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
In several situations, you might need to update, add, remove,
|
||||
or query the packages on a target device at runtime
|
||||
(i.e. without having to generate a new image).
|
||||
Examples of such situations include:
|
||||
<itemizedlist>
|
||||
<listitem><para>
|
||||
You take specific steps to set up the feed.
|
||||
You want to provide in-the-field updates to deployed
|
||||
devices (e.g. security updates).
|
||||
</para></listitem>
|
||||
<listitem><para>
|
||||
When you build your image, you select to use the
|
||||
appropriate package manager by setting the
|
||||
<ulink url='&YOCTO_DOCS_REF_URL;#var-PACKAGE_CLASSES'><filename>PACKAGE_CLASSES</filename></ulink>
|
||||
variable.
|
||||
You want to have a fast turn-around development cycle
|
||||
for one or more applications that run on your device.
|
||||
</para></listitem>
|
||||
<listitem><para>
|
||||
You have a web server, such as Apache 2,
|
||||
installed and configured on the development host.
|
||||
You want to temporarily install the "debug" packages
|
||||
of various applications on your device so that
|
||||
debugging can be greatly improved by allowing
|
||||
access to symbols and source debugging.
|
||||
</para></listitem>
|
||||
<listitem><para>
|
||||
You have <filename>createrepo</filename> installed on
|
||||
the development host.
|
||||
</para></listitem>
|
||||
<listitem><para>
|
||||
You enable package management on the target by
|
||||
listing "package-management" in the
|
||||
<ulink url='&YOCTO_DOCS_REF_URL;#var-IMAGE_FEATURES'><filename>IMAGE_FEATURES</filename></ulink>
|
||||
variable.
|
||||
You want to deploy a more minimal package selection of
|
||||
your device but allow in-the-field updates to add a
|
||||
larger selection for customization.
|
||||
</para></listitem>
|
||||
</itemizedlist>
|
||||
</para>
|
||||
|
||||
<para>
|
||||
Following are the steps to set up the optional repository.
|
||||
This example assumes you are using RPM and the Apache 2
|
||||
server:
|
||||
<orderedlist>
|
||||
<listitem><para>
|
||||
Add the directory to your Apache configuration, which
|
||||
you can find at
|
||||
<filename>/etc/httpd/conf/httpd.conf</filename>.
|
||||
Use commands similar to these on the development system.
|
||||
These example commands assume a top-level
|
||||
<link linkend='source-directory'>Source Directory</link>
|
||||
named <filename>poky</filename> in your home directory:
|
||||
<literallayout class='monospaced'>
|
||||
In all these situations, you have something similar to a more
|
||||
traditional Linux distribution in that in-field devices
|
||||
are able to receive pre-compiled packages from a server for
|
||||
installation or update.
|
||||
Being able to install these packages on a running,
|
||||
in-field device is what is termed "runtime package
|
||||
management".
|
||||
</para>
|
||||
|
||||
<para>
|
||||
In order to use runtime package management, you
|
||||
need a host/server machine that serves up the pre-compiled
|
||||
packages plus the required metadata.
|
||||
You also need package manipulation tools on the target.
|
||||
The build machine is a likely candidate to act as the server.
|
||||
However, that machine does not necessarily have to be the
|
||||
package server.
|
||||
The build machine could push its artifacts to another machine
|
||||
that acts as the server (e.g. Internet-facing).
|
||||
</para>
|
||||
|
||||
<para>
|
||||
A simple build that targets just one device produces
|
||||
more than one package database.
|
||||
In other words, the packages produced by a build are separated
|
||||
out into a couple of different package groupings based on
|
||||
criteria such as the target's CPU architecture, the target
|
||||
board, or the C library used on the target.
|
||||
For example, a build targeting the <filename>qemuarm</filename>
|
||||
device produces the following three package databases:
|
||||
<filename>all</filename>, <filename>armv5te</filename>, and
|
||||
<filename>qemuarm</filename>.
|
||||
If you wanted your <filename>qemuarm</filename> device to be
|
||||
aware of all the packages that were available to it,
|
||||
you would need to point it to each of these databases
|
||||
individually.
|
||||
In a similar way, a traditional Linux distribution usually is
|
||||
configured to be aware of a number of software repositories
|
||||
from which it retrieves packages.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
Using runtime package management is completely optional and
|
||||
not required for a successful build or deployment in any
|
||||
way.
|
||||
But if you want to make use of runtime package management,
|
||||
you need to do a couple things above and beyond the basics.
|
||||
The remainder of this section describes what you need to do.
|
||||
</para>
|
||||
|
||||
<section id='runtime-package-management-build'>
|
||||
<title>Build Considerations</title>
|
||||
|
||||
<para>
|
||||
This section describes build considerations that you need
|
||||
to be aware of in order to provide support for runtime
|
||||
package management.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
When BitBake generates packages it needs to know
|
||||
what format(s) to use.
|
||||
In your configuration, you use the
|
||||
<ulink url='&YOCTO_DOCS_REF_URL;#var-PACKAGE_CLASSES'><filename>PACKAGE_CLASSES</filename></ulink>
|
||||
variable to specify the format.
|
||||
<note>
|
||||
You can choose to have more than one format but you must
|
||||
provide at least one.
|
||||
</note>
|
||||
</para>
|
||||
|
||||
<para>
|
||||
If you would like your image to start off with a basic
|
||||
package database of the packages in your current build
|
||||
as well as have the relevant tools available on the
|
||||
target for runtime package management, you can include
|
||||
"package-management" in the
|
||||
<ulink url='&YOCTO_DOCS_REF_URL;#var-IMAGE_FEATURES'><filename>IMAGE_FEATURES</filename></ulink>
|
||||
variable.
|
||||
Including "package-management" in this
|
||||
configuration variable ensures that when the image
|
||||
is assembled for your target, the image includes
|
||||
the currently-known package databases as well as
|
||||
the target-specific tools required for runtime
|
||||
package management to be performed on the target.
|
||||
However, this is not strictly necessary.
|
||||
You could start your image off without any databases
|
||||
but only include the required on-target package
|
||||
tool(s).
|
||||
As an example, you could include "opkg" in your
|
||||
<ulink url='&YOCTO_DOCS_REF_URL;#var-IMAGE_INSTALL'><filename>IMAGE_INSTALL</filename></ulink>
|
||||
variable if you are using the IPK package format.
|
||||
You can then initialize your target's package database(s)
|
||||
later once your image is up and running.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
Whenever you perform any sort of build step that can
|
||||
potentially generate a package or modify an existing
|
||||
package, it is always a good idea to re-generate the
|
||||
package index with:
|
||||
<literallayout class='monospaced'>
|
||||
$ bitbake package-index
|
||||
</literallayout>
|
||||
Realize that it is not sufficient to simply do the
|
||||
following:
|
||||
<literallayout class='monospaced'>
|
||||
$ bitbake <some-package> package-index
|
||||
</literallayout>
|
||||
This is because BitBake does not properly schedule the
|
||||
<filename>package-index</filename> target fully after any
|
||||
other target has completed.
|
||||
Thus, be sure to run the package update step separately.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
As described below in the
|
||||
"<link linkend='runtime-package-management-target-ipk'>Using IPK</link>"
|
||||
section, if you are using IPK as your package format, you
|
||||
can make use of the
|
||||
<filename>distro-feed-configs</filename> recipe provided
|
||||
by <filename>meta-oe</filename> in order to configure your
|
||||
target to use your IPK databases.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
When your build is complete, your packages reside in the
|
||||
<filename>${TMPDIR}/deploy/<package-format></filename>
|
||||
directory.
|
||||
For example, if <filename>${TMPDIR}</filename>
|
||||
is <filename>tmp</filename> and your selected package type
|
||||
is IPK, then your IPK packages are available in
|
||||
<filename>tmp/deploy/ipk</filename>.
|
||||
</para>
|
||||
</section>
|
||||
|
||||
<section id='runtime-package-management-server'>
|
||||
<title>Host or Server Machine Setup</title>
|
||||
|
||||
<para>
|
||||
Typically, packages are served from a server using
|
||||
HTTP.
|
||||
However, other protocols are possible.
|
||||
If you want to use HTTP, then setup and configure a
|
||||
web server, such as Apache 2 or lighttpd, on the machine
|
||||
serving the packages.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
As previously mentioned, the build machine can act as the
|
||||
package server.
|
||||
In the following sections that describe server machine
|
||||
setups, the build machine is assumed to also be the server.
|
||||
</para>
|
||||
|
||||
<section id='package-server-apache'>
|
||||
<title>Serving Packages via Apache 2</title>
|
||||
|
||||
<para>
|
||||
This example assumes you are using the Apache 2
|
||||
server:
|
||||
<orderedlist>
|
||||
<listitem><para>
|
||||
Add the directory to your Apache
|
||||
configuration, which you can find at
|
||||
<filename>/etc/httpd/conf/httpd.conf</filename>.
|
||||
Use commands similar to these on the
|
||||
development system.
|
||||
These example commands assume a top-level
|
||||
<link linkend='source-directory'>Source Directory</link>
|
||||
named <filename>poky</filename> in your home
|
||||
directory.
|
||||
The example also assumes an RPM package type.
|
||||
If you are using a different package type, such
|
||||
as IPK, use "ipk" in the pathnames:
|
||||
<literallayout class='monospaced'>
|
||||
<VirtualHost *:80>
|
||||
....
|
||||
Alias /rpm ~/poky/build/tmp/deploy/rpm
|
||||
@@ -3662,93 +3832,199 @@
|
||||
Options +Indexes
|
||||
</Directory>
|
||||
</VirtualHost>
|
||||
</literallayout>
|
||||
</para></listitem>
|
||||
<listitem><para>
|
||||
Reload the Apache configuration as follows.
|
||||
For all commands, be sure you have root privileges.
|
||||
</para>
|
||||
<para>
|
||||
If your development system is using Fedora or
|
||||
CentOS, use the following:
|
||||
</literallayout></para></listitem>
|
||||
<listitem><para>
|
||||
Reload the Apache configuration as described
|
||||
in this step.
|
||||
For all commands, be sure you have root
|
||||
privileges.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
If your development system is using Fedora or
|
||||
CentOS, use the following:
|
||||
<literallayout class='monospaced'>
|
||||
# service httpd reload
|
||||
</literallayout>
|
||||
For Ubuntu and Debian, use the following:
|
||||
<literallayout class='monospaced'>
|
||||
# /etc/init.d/apache2 reload
|
||||
</literallayout>
|
||||
For OpenSUSE, use the following:
|
||||
<literallayout class='monospaced'>
|
||||
# /etc/init.d/apache2 reload
|
||||
</literallayout></para></listitem>
|
||||
<listitem><para>
|
||||
If you are using Security-Enhanced Linux
|
||||
(SELinux), you need to label the files as
|
||||
being accessible through Apache.
|
||||
Use the following command from the development
|
||||
host.
|
||||
This example assumes RPM package types:
|
||||
<literallayout class='monospaced'>
|
||||
# chcon -R -h -t httpd_sys_content_t tmp/deploy/rpm
|
||||
</literallayout></para></listitem>
|
||||
</orderedlist>
|
||||
</para>
|
||||
</section>
|
||||
|
||||
<section id='package-server-lighttpd'>
|
||||
<title>Serving Packages via lighttpd</title>
|
||||
|
||||
<para>
|
||||
If you are using lighttpd, all you need
|
||||
to do is to provide a link from your
|
||||
<filename>${TMPDIR}/deploy/<package-format></filename>
|
||||
directory to lighttpd's document-root.
|
||||
You can determine the specifics of your lighttpd
|
||||
installation by looking through its configuration file,
|
||||
which is usually found at:
|
||||
<filename>/etc/lighttpd/lighttpd.conf</filename>.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
For example, if you are using IPK, lighttpd's
|
||||
document-root is set to
|
||||
<filename>/var/www/lighttpd</filename>, and you had
|
||||
packages for a target named "BOARD",
|
||||
then you might create a link from your build location
|
||||
to lighttpd's document-root as follows:
|
||||
<literallayout class='monospaced'>
|
||||
service httpd reload
|
||||
# ln -s $(PWD)/tmp/deploy/ipk /var/www/lighttpd/BOARD-dir
|
||||
</literallayout>
|
||||
For Ubuntu and Debian, use the following:
|
||||
</para>
|
||||
|
||||
<para>
|
||||
At this point, you need to start the lighttpd server.
|
||||
The method used to start the server varies by
|
||||
distribution.
|
||||
However, one basic method that starts it by hand is:
|
||||
<literallayout class='monospaced'>
|
||||
/etc/init.d/apache2 reload
|
||||
# lighttpd -f /etc/lighttpd/lighttpd.conf
|
||||
</literallayout>
|
||||
For OpenSUSE, use the following:
|
||||
</para>
|
||||
</section>
|
||||
</section>
|
||||
|
||||
<section id='runtime-package-management-target'>
|
||||
<title>Target Setup</title>
|
||||
|
||||
<para>
|
||||
Setting up the target differs depending on the
|
||||
package management system.
|
||||
This section provides information for RPM and IPK.
|
||||
</para>
|
||||
|
||||
<section id='runtime-package-management-target-rpm'>
|
||||
<title>Using RPM</title>
|
||||
|
||||
<para>
|
||||
The application for performing runtime package
|
||||
management of RPM packages on the target is called
|
||||
<filename>smart</filename>.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
On the target machine, you need to inform
|
||||
<filename>smart</filename> of every package database
|
||||
you want to use.
|
||||
As an example, suppose your target device can use the
|
||||
following three package databases from a server named
|
||||
<filename>server.name</filename>:
|
||||
<filename>all</filename>, <filename>i586</filename>,
|
||||
and <filename>qemux86</filename>.
|
||||
Given this example, issue the following commands on the
|
||||
target:
|
||||
<literallayout class='monospaced'>
|
||||
/etc/init.d/apache2 reload
|
||||
# smart channel --add all type=rpm-md baseurl=http://server.name/rpm/all
|
||||
# smart channel --add i585 type=rpm-md baseurl=http://server.name/rpm/i586
|
||||
# smart channel --add qemux86 type=rpm-md baseurl=http://server.name/rpm/qemux86
|
||||
</literallayout>
|
||||
</para></listitem>
|
||||
<listitem><para>
|
||||
Change your working directory to
|
||||
<filename>tmp/deploy/rpm</filename> in the
|
||||
<link linkend='build-directory'>Build Directory</link>.
|
||||
</para></listitem>
|
||||
<listitem><para>
|
||||
Create the repository data on the host using
|
||||
this command:
|
||||
<literallayout class='monospaced'>
|
||||
createrepo .
|
||||
</literallayout>
|
||||
</para>
|
||||
<para>
|
||||
<note>
|
||||
If you're updating, add
|
||||
<filename>‐‐update</filename> to save some time.
|
||||
</note>
|
||||
</para></listitem>
|
||||
<listitem><para>
|
||||
If you are using Security-Enhanced Linux (SELinux),
|
||||
you need to label the files as being accessible
|
||||
through Apache.
|
||||
Use the following command from the development host:
|
||||
<literallayout class='monospaced'>
|
||||
chcon -R -h -t httpd_sys_content_t .
|
||||
</literallayout>
|
||||
</para></listitem>
|
||||
<listitem><para>
|
||||
On the target machine, add the repository to Smart.
|
||||
For <filename>somealias</filename>, provide a local
|
||||
alias for the repository:
|
||||
<literallayout class='monospaced'>
|
||||
smart channel ‐‐add <somealias> type=rpm-md baseurl=http://server.name/rpm
|
||||
</literallayout>
|
||||
</para></listitem>
|
||||
<listitem><para>
|
||||
Also from the target machine, fetch the repository
|
||||
information using this command:
|
||||
<literallayout class='monospaced'>
|
||||
smart update
|
||||
# smart update
|
||||
</literallayout>
|
||||
</para></listitem>
|
||||
</orderedlist>
|
||||
</para>
|
||||
You can now use the <filename>smart query</filename>
|
||||
and <filename>smart install</filename> commands to
|
||||
find and install packages from the repositories.
|
||||
</para>
|
||||
</section>
|
||||
|
||||
<para>
|
||||
After taking these steps and making sure that the other
|
||||
requirements mentioned at the beginning of the section are met,
|
||||
reboot the target device to take advantage of runtime package
|
||||
installations.
|
||||
</para>
|
||||
<section id='runtime-package-management-target-ipk'>
|
||||
<title>Using IPK</title>
|
||||
|
||||
<para>
|
||||
If your packages are IPK, you can install packages onto an
|
||||
existing running system by first sharing the
|
||||
<filename>tmp/deploy/ipk/</filename> directory
|
||||
through a web server and then by changing
|
||||
<filename>/etc/opkg/base-feeds.conf</filename>
|
||||
to point at the shared server.
|
||||
Following is an example:
|
||||
<literallayout class='monospaced'>
|
||||
$ src/gz all http://www.mysite.com/somedir/deploy/ipk/all
|
||||
$ src/gz armv7a http://www.mysite.com/somedir/deploy/ipk/armv7a
|
||||
$ src/gz beagleboard http://www.mysite.com/somedir/deploy/ipk/beagleboard
|
||||
</literallayout>
|
||||
</para>
|
||||
<para>
|
||||
The application for performing runtime package
|
||||
management of IPK packages on the target is called
|
||||
<filename>opkg</filename>.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
In order to inform <filename>opkg</filename> of the
|
||||
package databases you want to use, simply create one
|
||||
or more <filename>*.conf</filename> files in the
|
||||
<filename>/etc/opkg</filename> directory on the target.
|
||||
The <filename>opkg</filename> application uses them
|
||||
to find its available package databases.
|
||||
As an example, suppose you configured your HTTP server
|
||||
on your machine named
|
||||
<filename>www.mysite.com</filename> to serve files
|
||||
from a <filename>BOARD-dir</filename> directory under
|
||||
its document-root.
|
||||
In this case, you might create a configuration
|
||||
file on the target called
|
||||
<filename>/etc/opkg/base-feeds.conf</filename> that
|
||||
contains:
|
||||
<literallayout class='monospaced'>
|
||||
src/gz all http://www.mysite.com/BOARD-dir/all
|
||||
src/gz armv7a http://www.mysite.com/BOARD-dir/armv7a
|
||||
src/gz beagleboard http://www.mysite.com/BOARD-dir/beagleboard
|
||||
</literallayout>
|
||||
</para>
|
||||
|
||||
<para>
|
||||
As a way of making it easier to generate and make
|
||||
these IPK configuration files available on your
|
||||
target, the <filename>meta-oe</filename> layer
|
||||
provides a recipe called
|
||||
<filename>distro-feed-configs</filename>, which
|
||||
provides a package by the same name.
|
||||
When you include this package into your image, it will
|
||||
automatically generate and include a set of
|
||||
<filename>*.conf</filename> files in the image's
|
||||
<filename>/etc/opkg</filename> directory that will
|
||||
provide your target's <filename>opkg</filename>
|
||||
tool with any and all package databases your build will
|
||||
generate.
|
||||
The only catch is that this recipe cannot possibly
|
||||
imagine your server's DNS name/IP address.
|
||||
Consequently, somewhere in your configuration you need
|
||||
to set a variable called
|
||||
<filename>DISTRO_FEED_URI</filename> to point
|
||||
to your server and the location within the
|
||||
document-root that contains the databases.
|
||||
For example: if you are serving your packages over HTTP,
|
||||
your server's IP address is 192.168.7.1, and your
|
||||
databases are located in a directory called
|
||||
<filename>BOARD-dir</filename> underneath your HTTP
|
||||
server's document-root, you need to set
|
||||
<filename>DISTRO_FEED_URI</filename> to
|
||||
<filename>http://192.168.7.1/BOARD-dir</filename>.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
On the target machine, fetch (or refresh) the
|
||||
repository information using this command:
|
||||
<literallayout class='monospaced'>
|
||||
# opkg update
|
||||
</literallayout>
|
||||
You can now use the <filename>opkg list</filename> and
|
||||
<filename>opkg install</filename> commands to find and
|
||||
install packages from the repositories.
|
||||
</para>
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
|
||||
<section id='testing-packages-with-ptest'>
|
||||
@@ -4252,24 +4528,22 @@
|
||||
</section>
|
||||
</section>
|
||||
|
||||
<section id="running-and-writing-tests-for-a-qemu-image">
|
||||
<title>Running and Writing Tests for a QEMU Image</title>
|
||||
<section id="performing-automated-runtime-testing">
|
||||
<title>Performing Automated Runtime Testing</title>
|
||||
|
||||
<para>
|
||||
The OpenEmbedded build system makes available a series of automated
|
||||
tests for QEMU images.
|
||||
These tests are commands that run on the target system over
|
||||
<filename>ssh</filename> and are written in Python, thus making
|
||||
use of the <filename>unittest</filename> module.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
tests for images to verify runtime functionality.
|
||||
<note>
|
||||
Currently, there is only support for running these tests
|
||||
under QEMU.
|
||||
</note>
|
||||
These tests are written in Python making use of the
|
||||
<filename>unittest</filename> module, and the majority of them
|
||||
run commands on the target system over
|
||||
<filename>ssh</filename>.
|
||||
This section describes how you set up the environment to use these
|
||||
tests, run available tests, and write and add your own tests.
|
||||
You can the same information in a different form and with example
|
||||
log files of test runs on the
|
||||
<ulink url='https://wiki.yoctoproject.org/wiki/Image_tests'>Image Tests</ulink>
|
||||
Wiki page.
|
||||
</para>
|
||||
|
||||
<section id="qemu-image-enabling-tests">
|
||||
@@ -4278,9 +4552,8 @@
|
||||
<para>
|
||||
In order to run tests, you need to do the following:
|
||||
<itemizedlist>
|
||||
<listitem><para><emphasis>Ensure you run the test
|
||||
automatically with no interaction and under
|
||||
<filename>sudo</filename>:</emphasis>
|
||||
<listitem><para><emphasis>Set up to avoid interaction
|
||||
with <filename>sudo</filename> for networking:</emphasis>
|
||||
To accomplish this, you must do one of the
|
||||
following:
|
||||
<itemizedlist>
|
||||
@@ -4300,12 +4573,13 @@
|
||||
<listitem><para>Manually configure a tap interface
|
||||
for your system.</para></listitem>
|
||||
<listitem><para>Run as root the script in
|
||||
<filename>scripts/runqemu-gen-tapdev</filename>,
|
||||
<filename>scripts/runqemu-gen-tapdevs</filename>,
|
||||
which should generate a list of tap devices.
|
||||
List generation is usually done in environments
|
||||
similar to AutoBuilder.</para></listitem>
|
||||
This is the option typically chosen for
|
||||
Autobuilder-type environments.
|
||||
</para></listitem>
|
||||
</itemizedlist></para></listitem>
|
||||
<listitem><para><emphasis>Set up the
|
||||
<listitem><para><emphasis>Set the
|
||||
<filename>DISPLAY</filename> variable:</emphasis>
|
||||
You need to set this variable so that you have an X
|
||||
server available (e.g. start
|
||||
@@ -4321,30 +4595,14 @@
|
||||
<filename>${DEPLOY_DIR}/rpm</filename> so it can run
|
||||
smart channel commands. That means your host's firewall
|
||||
must accept incoming connections from 192.168.7.0/24,
|
||||
which is the default class used for
|
||||
<filename>tap0</filename> devices by
|
||||
<filename>runqemu</filename>.</para></listitem>
|
||||
<listitem><para><emphasis>Have your QEMU image built:</emphasis>
|
||||
The QEMU image on which you want to run tests needs to
|
||||
be built.
|
||||
For example, the following command would build the
|
||||
<filename>core-image-sato</filename> image when
|
||||
<filename>MACHINE</filename> is set to "qemu".
|
||||
<literallayout class='monospaced'>
|
||||
bitbake core-image-sato
|
||||
</literallayout></para></listitem>
|
||||
<listitem><para><emphasis>Globally inherit
|
||||
<ulink url='&YOCTO_DOCS_REF_URL;#ref-classes-testimage'><filename>testimage.class</filename>:</ulink></emphasis>
|
||||
Edit your <filename>local.conf</filename> file as
|
||||
follows:
|
||||
<literallayout class='monospaced'>
|
||||
INHERIT += "testimage"
|
||||
</literallayout></para></listitem>
|
||||
which is the default IP range used for tap devices
|
||||
by <filename>runqemu</filename>.</para></listitem>
|
||||
</itemizedlist>
|
||||
</para>
|
||||
|
||||
<note>
|
||||
If you built your QEMU image using <filename>rm_work</filename>,
|
||||
Regardless of how you initiate the tests, if you built your
|
||||
image using <filename>rm_work</filename>,
|
||||
most of the tests will fail with errors because they rely on
|
||||
<filename>${WORKDIR}/installed_pkgs.txt</filename>.
|
||||
</note>
|
||||
@@ -4354,15 +4612,42 @@
|
||||
<title>Running Tests</title>
|
||||
|
||||
<para>
|
||||
After setting up to run the tests, use BitBake to start
|
||||
the standard suite of tests:
|
||||
<literallayout class='monospaced'>
|
||||
bitbake core-image-sato -c testimage
|
||||
</literallayout>
|
||||
You can start the tests automatically or manually:
|
||||
<itemizedlist>
|
||||
<listitem><para><emphasis>Automatically Running Tests:</emphasis>
|
||||
To run the tests automatically after the
|
||||
OpenEmbedded build system successfully creates an image,
|
||||
first set the
|
||||
<ulink url='&YOCTO_DOCS_REF_URL;#var-TEST_IMAGE'><filename>TEST_IMAGE</filename></ulink>
|
||||
variable to "1" in your <filename>local.conf</filename>
|
||||
file in the
|
||||
<ulink url='&YOCTO_DOCS_DEV_URL;#build-directory'>Build Directory</ulink>:
|
||||
<literallayout class='monospaced'>
|
||||
TEST_IMAGE = "1"
|
||||
</literallayout>
|
||||
Next, simply build your image.
|
||||
If the image successfully builds, the tests will be
|
||||
run:
|
||||
<literallayout class='monospaced'>
|
||||
bitbake core-image-sato
|
||||
</literallayout></para></listitem>
|
||||
<listitem><para><emphasis>Manually Running Tests:</emphasis>
|
||||
To manually run the tests, first globally inherit
|
||||
<ulink url='&YOCTO_DOCS_REF_URL;#ref-classes-testimage'><filename>testimage.class</filename></ulink>
|
||||
by editing your <filename>local.conf</filename> file:
|
||||
<literallayout class='monospaced'>
|
||||
INHERIT += "testimage"
|
||||
</literallayout>
|
||||
Next, use BitBake to run the tests:
|
||||
<literallayout class='monospaced'>
|
||||
bitbake -c testimage <image>
|
||||
</literallayout></para></listitem>
|
||||
</itemizedlist>
|
||||
</para>
|
||||
|
||||
<para>
|
||||
Once you start the tests, the following happens:
|
||||
Regardless of how you run the tests, once they start, the
|
||||
following happens:
|
||||
<itemizedlist>
|
||||
<listitem><para>A copy of the root filesystem is written
|
||||
to <filename>${WORKDIR}/testimage</filename>.
|
||||
@@ -4400,11 +4685,10 @@
|
||||
All test files reside in
|
||||
<filename>meta/lib/oeqa/runtime</filename> in the
|
||||
<link linkend='source-directory'>Source Directory</link>.
|
||||
Tests (also referred to as modules) have a one-to-one
|
||||
relationship with the filenames in <filename>runtime</filename>.
|
||||
Modules can have multiple classes and test methods and are
|
||||
usually grouped together by the area tested (e.g tests for
|
||||
<filename>systemd</filename> reside in
|
||||
A test name maps directly to a Python module.
|
||||
Each test module may contain a number of individual tests.
|
||||
Tests are usually grouped together by the area
|
||||
tested (e.g tests for <filename>systemd</filename> reside in
|
||||
<filename>meta/lib/oeqa/runtime/systemd.py</filename>).
|
||||
</para>
|
||||
|
||||
@@ -4412,12 +4696,13 @@
|
||||
You can add tests to any layer provided you place them in the
|
||||
proper area and you extend
|
||||
<ulink url='&YOCTO_DOCS_REF_URL;#var-BBPATH'><filename>BBPATH</filename></ulink>
|
||||
in the <filename>local.conf</filename> file.
|
||||
in the <filename>local.conf</filename> file as normal.
|
||||
Be sure that tests reside in
|
||||
<filename><layer>/lib/oeqa/runtime</filename>.
|
||||
<note>
|
||||
Be sure that module names do not collide with module names
|
||||
provided by the Yocto Project.
|
||||
used in the default set of test modules in
|
||||
<filename>meta/lib/oeqa/runtime</filename>.
|
||||
</note>
|
||||
</para>
|
||||
|
||||
@@ -4427,12 +4712,13 @@
|
||||
variable in <filename>local.conf</filename>.
|
||||
Each name in <filename>TEST_SUITES</filename> represents a
|
||||
required test for the image.
|
||||
Module skipping is not allowed even if a test is not suitable
|
||||
for an image (e.g. running the <filename>rpm</filename> tests on
|
||||
an image without <filename>rpm</filename>).
|
||||
Test modules named within <filename>TEST_SUITES</filename>
|
||||
cannot be skipped even if a test is not suitable for an image
|
||||
(e.g. running the rpm tests on an image without
|
||||
<filename>rpm</filename>).
|
||||
Appending "auto" to <filename>TEST_SUITES</filename> causes the
|
||||
build system to try to run all tests that are suitable for the
|
||||
image (i.e. the build system decides whether to run each test).
|
||||
image (i.e. each test module may elect to skip itself).
|
||||
</para>
|
||||
|
||||
<para>
|
||||
@@ -4453,17 +4739,12 @@
|
||||
</para>
|
||||
|
||||
<para>
|
||||
The following list summarizes how to run the tests:
|
||||
Here are some things to keep in mind when running tests:
|
||||
<itemizedlist>
|
||||
<listitem><para>Run the default set of tests simply by
|
||||
running the following:
|
||||
<literallayout class='monospaced'>
|
||||
bitbake <qemu_image> -c testimage
|
||||
</literallayout></para></listitem>
|
||||
<listitem><para>The default tests for the image are defined
|
||||
as:
|
||||
<literallayout class='monospaced'>
|
||||
DEFAULT_TEST_SUITES_pn-<qemu_image> = "ping ssh df connman syslog xorg scp vnc date rpm smart dmesg"
|
||||
DEFAULT_TEST_SUITES_pn-<image> = "ping ssh df connman syslog xorg scp vnc date rpm smart dmesg"
|
||||
</literallayout></para></listitem>
|
||||
<listitem><para>Add your own test to the list of the
|
||||
by using the following:
|
||||
@@ -4487,15 +4768,16 @@
|
||||
<para>
|
||||
As mentioned previously, all new test files need to be in the
|
||||
proper place for the build system to find them.
|
||||
New tests can go in the
|
||||
<link linkend='source-directory'>Source Directory</link> at
|
||||
<filename>meta/lib/oeqa/runtime</filename>.
|
||||
Alternatively, a layer can add its own tests in
|
||||
<filename><layer>/lib/oeqa/runtime</filename> as long
|
||||
as you extend <filename>BBPATH</filename>.
|
||||
Just remember that filenames need to map directory to test
|
||||
(module) names and you not use module names that collide with
|
||||
existing core tests.
|
||||
New tests for additional functionality outside of the core
|
||||
should be added to the layer that adds the functionality, in
|
||||
<filename><layer>/lib/oeqa/runtime</filename> (as
|
||||
long as
|
||||
<ulink url='&YOCTO_DOCS_REF_URL;#var-BBPATH'><filename>BBPATH</filename></ulink>
|
||||
is extended in the layer's
|
||||
<filename>layer.conf</filename> file as normal).
|
||||
Just remember that filenames need to map directly to test
|
||||
(module) names and that you do not use module names that
|
||||
collide with existing core tests.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
@@ -4950,8 +5232,11 @@
|
||||
</para>
|
||||
|
||||
<para>
|
||||
For more information on installing and running Toaster, see the
|
||||
"<ulink url='https://wiki.yoctoproject.org/wiki/Web_Hob#Installation_and_Running'>Installation and Running</ulink>"
|
||||
section of the "Toaster" wiki page.
|
||||
For complete information on the API and its search operation
|
||||
URI, parameters, and reposes, see the
|
||||
URI, parameters, and responses, see the
|
||||
<ulink url='https://wiki.yoctoproject.org/wiki/REST_API_Contracts'>REST API Contracts</ulink>
|
||||
Wiki page.
|
||||
</para>
|
||||
|
||||
@@ -24,17 +24,6 @@
|
||||
set up your host development system and build an image, which you
|
||||
find in the
|
||||
<ulink url='&YOCTO_DOCS_QS_URL;'>Yocto Project Quick Start</ulink>.
|
||||
<note>
|
||||
By default, using the Yocto Project creates a Poky distribution.
|
||||
However, you can create your own distribution by providing key
|
||||
<link linkend='metadata'>Metadata</link>.
|
||||
A good example is Angstrom, which has had a distribution
|
||||
based on the Yocto Project since its inception.
|
||||
Other examples include commercial distributions like
|
||||
Wind River Linux, Mentor Embedded Linux, and ENEA Linux.
|
||||
See the "<link linkend='creating-your-own-distribution'>Creating Your Own Distribution</link>"
|
||||
section for more information.
|
||||
</note>
|
||||
</para>
|
||||
|
||||
<para>
|
||||
@@ -43,13 +32,25 @@
|
||||
reconfigure the kernel, and develop an application using the
|
||||
popular <trademark class='trade'>Eclipse</trademark> IDE.
|
||||
</para>
|
||||
|
||||
<note>
|
||||
By default, using the Yocto Project creates a Poky distribution.
|
||||
However, you can create your own distribution by providing key
|
||||
<link linkend='metadata'>Metadata</link>.
|
||||
A good example is Angstrom, which has had a distribution
|
||||
based on the Yocto Project since its inception.
|
||||
Other examples include commercial distributions like
|
||||
Wind River Linux, Mentor Embedded Linux, and ENEA Linux.
|
||||
See the "<link linkend='creating-your-own-distribution'>Creating Your Own Distribution</link>"
|
||||
section for more information.
|
||||
</note>
|
||||
</section>
|
||||
|
||||
<section id='what-this-manual-provides'>
|
||||
<title>What This Manual Provides</title>
|
||||
|
||||
<para>
|
||||
The following list describes what you can get from this guide:
|
||||
The following list describes what you can get from this manual:
|
||||
<itemizedlist>
|
||||
<listitem><para>Information that lets you get set
|
||||
up to develop using the Yocto Project.</para></listitem>
|
||||
@@ -75,17 +76,17 @@
|
||||
<para>
|
||||
This manual will not give you the following:
|
||||
<itemizedlist>
|
||||
<listitem><para>Step-by-step instructions if those instructions exist in other Yocto
|
||||
Project documentation.
|
||||
<listitem><para><emphasis>Step-by-step instructions when those instructions exist in other Yocto
|
||||
Project documentation:</emphasis>
|
||||
For example, the Yocto Project Application Developer's Guide contains detailed
|
||||
instructions on how to run the
|
||||
<ulink url='&YOCTO_DOCS_ADT_URL;#installing-the-adt'>Installing the ADT and Toolchains</ulink>,
|
||||
<ulink url='&YOCTO_DOCS_ADT_URL;#installing-the-adt'>ADT Installer</ulink>,
|
||||
which is used to set up a cross-development environment.</para></listitem>
|
||||
<listitem><para>Reference material.
|
||||
<listitem><para><emphasis>Reference material:</emphasis>
|
||||
This type of material resides in an appropriate reference manual.
|
||||
For example, system variables are documented in the
|
||||
<ulink url='&YOCTO_DOCS_REF_URL;'>Yocto Project Reference Manual</ulink>.</para></listitem>
|
||||
<listitem><para>Detailed public information that is not specific to the Yocto Project.
|
||||
<listitem><para><emphasis>Detailed public information that is not specific to the Yocto Project:</emphasis>
|
||||
For example, exhaustive information on how to use Git is covered better through the
|
||||
Internet than in this manual.</para></listitem>
|
||||
</itemizedlist>
|
||||
@@ -109,7 +110,8 @@
|
||||
with the Yocto Project and quickly begin building an image.</para></listitem>
|
||||
<listitem><para><emphasis>
|
||||
<ulink url='&YOCTO_DOCS_REF_URL;'>Yocto Project Reference Manual</ulink>:</emphasis> This manual is a reference
|
||||
guide to the OpenEmbedded build system known as "Poky."
|
||||
guide to the OpenEmbedded build system, which is based on BitBake.
|
||||
The build system is sometimes referred to as "Poky".
|
||||
</para></listitem>
|
||||
<listitem><para><emphasis>
|
||||
<ulink url='&YOCTO_DOCS_ADT_URL;'>Yocto Project Application Developer's Guide</ulink>:</emphasis>
|
||||
|
||||
@@ -269,15 +269,15 @@
|
||||
Within this group, you will find several kernels supported by
|
||||
the Yocto Project:
|
||||
<itemizedlist>
|
||||
<listitem><para><emphasis><filename>linux-yocto-3.2</filename></emphasis> - The
|
||||
stable Yocto Project kernel to use with the Yocto Project Release 1.2. This kernel
|
||||
is based on the Linux 3.2 released kernel.</para></listitem>
|
||||
<listitem><para><emphasis><filename>linux-yocto-3.4</filename></emphasis> - The
|
||||
stable Yocto Project kernel to use with the Yocto Project Release 1.3. This kernel
|
||||
is based on the Linux 3.4 released kernel.</para></listitem>
|
||||
<listitem><para><emphasis><filename>linux-yocto-3.8</filename></emphasis> - The
|
||||
stable Yocto Project kernel to use with the Yocto Project Release 1.4. This kernel
|
||||
is based on the Linux 3.8 released kernel.</para></listitem>
|
||||
<listitem><para><emphasis><filename>linux-yocto-3.10</filename></emphasis> - The
|
||||
stable Yocto Project kernel to use with the Yocto Project Release 1.5. This kernel
|
||||
is based on the Linux 3.10 released kernel.</para></listitem>
|
||||
<listitem><para><emphasis><filename>linux-yocto-dev</filename></emphasis> - A development
|
||||
kernel based on the latest upstream release candidate available.</para></listitem>
|
||||
</itemizedlist>
|
||||
@@ -749,12 +749,8 @@
|
||||
<para>
|
||||
You can install the Eclipse Yocto Plug-in into the Eclipse
|
||||
IDE one of two ways: use the Yocto Project's Eclipse
|
||||
Update site to install the pre-built plug-in, or build and
|
||||
Update site to install the pre-built plug-in or build and
|
||||
install the plug-in from the latest source code.
|
||||
If you do not want to permanently install the plug-in but
|
||||
just want to try it out within the Eclipse environment,
|
||||
you can import the plug-in project from the Yocto Project's
|
||||
Source Repositories.
|
||||
</para>
|
||||
|
||||
<section id='new-software'>
|
||||
@@ -807,10 +803,29 @@
|
||||
To install the Eclipse Yocto Plug-in from the latest
|
||||
source code, follow these steps:
|
||||
<orderedlist>
|
||||
<listitem><para>Open a shell and create a Git
|
||||
<listitem><para>Be sure your development system
|
||||
is not using OpenJDK to build the plug-in
|
||||
by doing the following:
|
||||
<orderedlist>
|
||||
<listitem><para>Use the Oracle JDK.
|
||||
If you don't have that, go to
|
||||
<ulink url='http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html'></ulink>
|
||||
and download the appropriate tarball
|
||||
for your development system and
|
||||
extract it into your home directory.
|
||||
</para></listitem>
|
||||
<listitem><para>In the shell you are going
|
||||
to do your work, export the location of
|
||||
the Oracle Java as follows:
|
||||
<literallayout class='monospaced'>
|
||||
export PATH=~/jdk1.7.0_40/bin:$PATH
|
||||
</literallayout></para></listitem>
|
||||
</orderedlist></para></listitem>
|
||||
<listitem><para>In the same shell, create a Git
|
||||
repository with:
|
||||
<literallayout class='monospaced'>
|
||||
$ git clone git://git.yoctoproject.org/eclipse-poky-kepler yocto-eclipse
|
||||
$ cd ~
|
||||
$ git clone git://git.yoctoproject.org/eclipse-poky-kepler
|
||||
</literallayout>
|
||||
<note>
|
||||
If you are using Juno, the repository is
|
||||
@@ -818,19 +833,19 @@
|
||||
<filename>git://git.yoctoproject.org/eclipse-poky-juno</filename>.
|
||||
</note>
|
||||
For this example, the repository is named
|
||||
<filename>~/yocto-eclipse</filename>.
|
||||
<filename>~/eclipse-poky-kepler</filename>.
|
||||
</para></listitem>
|
||||
<listitem><para>Change to the directory where you
|
||||
set up the Git repository:
|
||||
<literallayout class='monospaced'>
|
||||
$ cd ~/yocto-eclipse
|
||||
$ cd ~/eclipse-poky-kepler
|
||||
</literallayout></para></listitem>
|
||||
<listitem><para>Be sure you are in the right branch
|
||||
for your Git repository.
|
||||
For this release set the branch to
|
||||
<filename>&DISTRO_NAME;</filename>:
|
||||
<literallayout class='monospaced'>
|
||||
$ git checkout -b &DISTRO_NAME; origin/&DISTRO_NAME;
|
||||
$ git checkout &DISTRO_NAME;
|
||||
</literallayout></para></listitem>
|
||||
<listitem><para>Change to the
|
||||
<filename>scripts</filename>
|
||||
@@ -857,7 +872,7 @@
|
||||
Here is an example that uses the
|
||||
<filename>&DISTRO_NAME;</filename> branch:
|
||||
<literallayout class='monospaced'>
|
||||
$ ECLIPSE_HOME=/home/scottrif/yocto-eclipse/scripts/eclipse ./build.sh &DISTRO_NAME; &DISTRO_NAME;
|
||||
$ ECLIPSE_HOME=/home/scottrif/eclipse-poky-kepler/scripts/eclipse ./build.sh &DISTRO_NAME; &DISTRO_NAME;
|
||||
</literallayout>
|
||||
After running the script, the file
|
||||
<filename>org.yocto.sdk-<release>-<date>-archive.zip</filename>
|
||||
@@ -879,7 +894,7 @@
|
||||
</para></listitem>
|
||||
<listitem><para>Click through the "Okay" buttons.
|
||||
</para></listitem>
|
||||
<listitem><para>Check the box next to the new entry
|
||||
<listitem><para>Check the boxes
|
||||
in the installation window and complete
|
||||
the installation.</para></listitem>
|
||||
<listitem><para>Restart the Eclipse IDE if
|
||||
@@ -893,61 +908,6 @@
|
||||
"<link linkend='configuring-the-eclipse-yocto-plug-in'>Configuring the Eclipse Yocto Plug-in</link>"
|
||||
section.</para>
|
||||
</section>
|
||||
|
||||
<section id='yocto-project-source'>
|
||||
<title>Importing the Plug-in Project into the Eclipse Environment</title>
|
||||
|
||||
<para>
|
||||
Importing the Eclipse Yocto Plug-in project from the
|
||||
Yocto Project source repositories is useful when you
|
||||
want to try out the latest plug-in from the tip of
|
||||
plug-in's development tree.
|
||||
It is important to understand when you import the
|
||||
plug-in you are not installing it into the Eclipse
|
||||
application.
|
||||
Rather, you are importing the project and just using it.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
To import the plug-in project, follow these steps:
|
||||
<orderedlist>
|
||||
<listitem><para>Open a shell and create a Git
|
||||
repository with:
|
||||
<literallayout class='monospaced'>
|
||||
$ git clone git://git.yoctoproject.org/eclipse-poky-kepler yocto-eclipse
|
||||
</literallayout>
|
||||
<note>
|
||||
The Juno repository is located at
|
||||
<filename>git://git.yoctoproject.org/eclipse-poky-juno</filename>
|
||||
</note>
|
||||
For this example, the repository is named
|
||||
<filename>~/yocto-eclipse</filename>.
|
||||
</para></listitem>
|
||||
<listitem><para>In Eclipse, select "Import" from
|
||||
the "File" menu.</para></listitem>
|
||||
<listitem><para>Expand the "General" box and select
|
||||
"existing projects into workspace" and then
|
||||
click "Next".</para></listitem>
|
||||
<listitem><para>Select the root directory and
|
||||
browse to
|
||||
<filename>~/yocto-eclipse/plugins</filename>.
|
||||
</para></listitem>
|
||||
<listitem><para>Three plug-ins exist:
|
||||
<filename>org.yocto.bc.ui</filename>,
|
||||
<filename>org.yocto.sdk.ide</filename>, and
|
||||
<filename>org.yocto.sdk.remotetools</filename>.
|
||||
Select and import all of them.</para></listitem>
|
||||
</orderedlist>
|
||||
</para>
|
||||
|
||||
<para>
|
||||
The left navigation pane in the Eclipse application
|
||||
shows the default projects.
|
||||
Right-click on one of these projects and run it as an
|
||||
Eclipse application to bring up a second instance of
|
||||
Eclipse IDE that has the Yocto Plug-in.
|
||||
</para>
|
||||
</section>
|
||||
</section>
|
||||
|
||||
<section id='configuring-the-eclipse-yocto-plug-in'>
|
||||
@@ -1701,7 +1661,7 @@
|
||||
For example, here is the work directory for recipes and resulting packages that are
|
||||
not device-dependent:
|
||||
<literallayout class='monospaced'>
|
||||
${TMPDIR}/work/${PACKAGE_ARCH}-poky-${TARGET_OS}/${PN}-${PV}-${PR}
|
||||
${TMPDIR}/work/${PACKAGE_ARCH}-poky-${TARGET_OS}/${PN}/${EXTENDPE}${PV}-${PR}
|
||||
</literallayout>
|
||||
Let's look at an example without variables.
|
||||
Assuming a top-level <link linkend='source-directory'>Source Directory</link>
|
||||
@@ -1710,7 +1670,7 @@
|
||||
the following is the work directory for the <filename>acl</filename> recipe that
|
||||
creates the <filename>acl</filename> package:
|
||||
<literallayout class='monospaced'>
|
||||
~/poky/build/tmp/work/i586-poky-linux/acl-2.2.51-r3
|
||||
~/poky/build/tmp/work/i586-poky-linux/acl/2.2.51-r3/
|
||||
</literallayout>
|
||||
</para>
|
||||
|
||||
@@ -1718,7 +1678,7 @@
|
||||
If your resulting package is dependent on the target device,
|
||||
the work directory varies slightly:
|
||||
<literallayout class='monospaced'>
|
||||
${TMPDIR}/work/${MACHINE}-poky-${TARGET_OS}/${PN}-${PV}-${PR}
|
||||
${TMPDIR}/work/${MACHINE}-poky-${TARGET_OS}/${PN}/${EXTENDPE}${PV}-${PR}
|
||||
</literallayout>
|
||||
Again, assuming top-level Source Directory named <filename>poky</filename>
|
||||
and a default Build Directory of <filename>poky/build</filename>, the
|
||||
@@ -1726,8 +1686,8 @@
|
||||
for the <filename>acl</filename> package that is being
|
||||
built for a MIPS-based device:
|
||||
<literallayout class='monospaced'>
|
||||
~/poky/build/tmp/work/mips-poky-linux/acl-2.2.51-r2
|
||||
~/poky/build/tmp/work/mips-poky-linux/acl-2.2.51-r2/acl-2.2.51
|
||||
~/poky/build/tmp/work/mips-poky-linux/acl/2.2.51-r2
|
||||
~/poky/build/tmp/work/mips-poky-linux/acl/2.2.51-r2/acl-2.2.51
|
||||
</literallayout>
|
||||
</para>
|
||||
|
||||
@@ -1741,6 +1701,7 @@
|
||||
<ulink url='&YOCTO_DOCS_REF_URL;#var-TARGET_OS'><filename>TARGET_OS</filename></ulink>,
|
||||
<ulink url='&YOCTO_DOCS_REF_URL;#var-PN'><filename>PN</filename></ulink>,
|
||||
<ulink url='&YOCTO_DOCS_REF_URL;#var-PV'><filename>PV</filename></ulink>,
|
||||
<ulink url='&YOCTO_DOCS_REF_URL;#var-EXTENDPE'><filename>EXTENDPE</filename></ulink>,
|
||||
and
|
||||
<ulink url='&YOCTO_DOCS_REF_URL;#var-PR'><filename>PR</filename></ulink>
|
||||
variables in the Yocto Project Reference Manual.
|
||||
|
||||
@@ -254,9 +254,9 @@
|
||||
<listitem><para><ulink url='http://sitaramc.github.com/gitolite/master-toc.html'>The <filename>gitolite</filename> master index</ulink>:
|
||||
All topics for <filename>gitolite</filename>.
|
||||
</para></listitem>
|
||||
<listitem><para><ulink url='http://hjemli.net/git/cgit/tree/README'><filename>cgit</filename> index</ulink>:
|
||||
A <filename>README</filename> file on how to create a
|
||||
fast web interface for Git.</para></listitem>
|
||||
<listitem><para><ulink url='https://git.wiki.kernel.org/index.php/Interfaces,_frontends,_and_tools'>Interfaces, frontends, and tools</ulink>:
|
||||
Documentation on how to create interfaces and frontends
|
||||
for Git.</para></listitem>
|
||||
</itemizedlist>
|
||||
</note>
|
||||
</section>
|
||||
@@ -275,9 +275,8 @@
|
||||
</para>
|
||||
|
||||
<para>
|
||||
See "<ulink url='http://autobuilder.yoctoproject.org:8010/'>Welcome to the buildbot for the Yocto Project</ulink>"
|
||||
for the Yocto Project's reference implementation that uses
|
||||
buildbot.
|
||||
See "<ulink url='http://autobuilder.yoctoproject.org'>Yocto Project Autobuilder</ulink>"
|
||||
for more information and links to buildbot.
|
||||
The Yocto Project team has found this implementation
|
||||
works well in this role.
|
||||
A public example of this is the Yocto Project
|
||||
@@ -394,7 +393,7 @@
|
||||
For some guidance on mailing lists to use, see the list in the
|
||||
"<link linkend='how-to-submit-a-change'>How to Submit a Change</link>"
|
||||
section.
|
||||
For a description of the available mailing lists, see
|
||||
For a description of the available mailing lists, see the
|
||||
"<ulink url='&YOCTO_DOCS_REF_URL;#resources-mailinglist'>Mailing Lists</ulink>"
|
||||
section in the Yocto Project Reference Manual.
|
||||
</para></listitem>
|
||||
@@ -615,7 +614,7 @@
|
||||
"<ulink url='&YOCTO_DOCS_BSP_URL;#bsp-layers'>BSP Layers</ulink>"
|
||||
section in the Yocto Project Board Support Packages (BSP)
|
||||
Developer's Guide.</para></listitem>
|
||||
<listitem><para id='meta-toochain'><emphasis>Meta-Toolchain:</emphasis>
|
||||
<listitem><para id='meta-toolchain'><emphasis>Meta-Toolchain:</emphasis>
|
||||
A term sometimes used for
|
||||
<link linkend='cross-development-toolchain'>Cross-Development Toolchain</link>.
|
||||
</para></listitem>
|
||||
@@ -689,7 +688,7 @@
|
||||
For example, downloading and unpacking <filename>&YOCTO_POKY_TARBALL;</filename>
|
||||
results in a Source Directory whose top-level folder is named
|
||||
<filename>&YOCTO_POKY;</filename>.
|
||||
If you create a local copy of the Git repository, then you can name the repository
|
||||
If you create a local copy of the Git repository, you can name the repository
|
||||
anything you like.
|
||||
Throughout much of the documentation, <filename>poky</filename> is used as the name of
|
||||
the top-level folder of the local copy of the poky Git repository.
|
||||
@@ -865,8 +864,8 @@
|
||||
It is important to understand that Git tracks content change and not files.
|
||||
Git uses "branches" to organize different development efforts.
|
||||
For example, the <filename>poky</filename> repository has
|
||||
<filename>bernard</filename>,
|
||||
<filename>edison</filename>, <filename>denzil</filename>, <filename>danny</filename>
|
||||
<filename>denzil</filename>, <filename>danny</filename>,
|
||||
<filename>dylan</filename>, <filename>dora</filename>,
|
||||
and <filename>master</filename> branches among others.
|
||||
You can see all the branches by going to
|
||||
<ulink url='&YOCTO_GIT_URL;/cgit.cgi/poky/'></ulink> and
|
||||
@@ -1233,6 +1232,10 @@
|
||||
occurred.</para></listitem>
|
||||
<listitem><para>Be sure to indicate the Severity of the bug.
|
||||
Severity communicates how the bug impacted your work.</para></listitem>
|
||||
<listitem><para>Select the appropriate "Documentation change" item
|
||||
for the bug.
|
||||
Fixing a bug may or may not affect the Yocto Project
|
||||
documentation.</para></listitem>
|
||||
<listitem><para>Provide a brief summary of the issue.
|
||||
Try to limit your summary to just a line or two and be sure to capture the
|
||||
essence of the issue.</para></listitem>
|
||||
|
||||
@@ -32,7 +32,7 @@
|
||||
|
||||
<para>
|
||||
You can use the OpenEmbedded build system, which uses
|
||||
BitBake to develop complete Linux
|
||||
BitBake, to develop complete Linux
|
||||
images and associated user-space applications for architectures based
|
||||
on ARM, MIPS, PowerPC, x86 and x86-64.
|
||||
<note>
|
||||
@@ -122,11 +122,11 @@
|
||||
<literallayout class='monospaced'>
|
||||
$ git clone git://git.yoctoproject.org/poky
|
||||
Cloning into 'poky'...
|
||||
remote: Counting objects: 183981, done.
|
||||
remote: Compressing objects: 100% (47428/47428), done.
|
||||
remote: Total 183981 (delta 132271), reused 183703 (delta 132044)
|
||||
Receiving objects: 100% (183981/183981), 89.71 MiB | 2.93 MiB/s, done.
|
||||
Resolving deltas: 100% (132271/132271), done.
|
||||
remote: Counting objects: 203728, done.
|
||||
remote: Compressing objects: 100% (52371/52371), done.
|
||||
remote: Total 203728 (delta 147444), reused 202891 (delta 146614)
|
||||
Receiving objects: 100% (203728/203728), 95.54 MiB | 308 KiB/s, done.
|
||||
Resolving deltas: 100% (147444/147444), done.
|
||||
</literallayout></para>
|
||||
<para>For another example of how to set up your own local Git repositories, see this
|
||||
<ulink url='&YOCTO_WIKI_URL;/wiki/Transcript:_from_git_checkout_to_meta-intel_BSP'>
|
||||
@@ -145,27 +145,28 @@
|
||||
For simplicity, it is recommended that you create these structures outside of the
|
||||
Source Directory (usually <filename>poky</filename>).</para>
|
||||
<para>As an example, the following transcript shows how to create the bare clone
|
||||
of the <filename>linux-yocto-3.8</filename> kernel and then create a copy of
|
||||
of the <filename>linux-yocto-3.10</filename> kernel and then create a copy of
|
||||
that clone.
|
||||
<note>When you have a local Yocto Project kernel Git repository, you can
|
||||
reference that repository rather than the upstream Git repository as
|
||||
part of the <filename>clone</filename> command.
|
||||
Doing so can speed up the process.</note></para>
|
||||
<para>In the following example, the bare clone is named
|
||||
<filename>linux-yocto-3.8.git</filename>, while the
|
||||
copy is named <filename>my-linux-yocto-3.8-work</filename>:
|
||||
<filename>linux-yocto-3.10.git</filename>, while the
|
||||
copy is named <filename>my-linux-yocto-3.10-work</filename>:
|
||||
<literallayout class='monospaced'>
|
||||
$ git clone --bare git://git.yoctoproject.org/linux-yocto-3.8 linux-yocto-3.8.git
|
||||
Cloning into bare repository 'linux-yocto-3.8.git'...
|
||||
remote: Counting objects: 2847090, done.
|
||||
remote: Compressing objects: 100% (454675/454675), done.
|
||||
remote: Total 2847090 (delta 2386170), reused 2825793 (delta 2364886)
|
||||
Receiving objects: 100% (2847090/2847090), 603.19 MiB | 3.54 MiB/s, done.
|
||||
Resolving deltas: 100% (2386170/2386170), done. </literallayout></para>
|
||||
$ git clone --bare git://git.yoctoproject.org/linux-yocto-3.10 linux-yocto-3.10.git
|
||||
Cloning into bare repository 'linux-yocto-3.10.git'...
|
||||
remote: Counting objects: 3364487, done.
|
||||
remote: Compressing objects: 100% (507178/507178), done.
|
||||
remote: Total 3364487 (delta 2827715), reused 3364481 (delta 2827709)
|
||||
Receiving objects: 100% (3364487/3364487), 722.95 MiB | 423 KiB/s, done.
|
||||
Resolving deltas: 100% (2827715/2827715), done.
|
||||
</literallayout></para>
|
||||
<para>Now create a clone of the bare clone just created:
|
||||
<literallayout class='monospaced'>
|
||||
$ git clone linux-yocto-3.8.git my-linux-yocto-3.8-work
|
||||
Cloning into 'my-linux-yocto-3.8-work'...
|
||||
$ git clone linux-yocto-3.10.git my-linux-yocto-3.10-work
|
||||
Cloning into 'my-linux-yocto-3.10-work'...
|
||||
done.
|
||||
</literallayout></para></listitem>
|
||||
<listitem id='meta-yocto-kernel-extras-repo'><para><emphasis>
|
||||
@@ -189,11 +190,12 @@
|
||||
$ cd ~/poky
|
||||
$ git clone git://git.yoctoproject.org/meta-yocto-kernel-extras meta-yocto-kernel-extras
|
||||
Cloning into 'meta-yocto-kernel-extras'...
|
||||
remote: Counting objects: 690, done.
|
||||
remote: Compressing objects: 100% (431/431), done.
|
||||
remote: Total 690 (delta 238), reused 690 (delta 238)
|
||||
Receiving objects: 100% (690/690), 532.60 KiB, done.
|
||||
Resolving deltas: 100% (238/238), done. </literallayout></para></listitem>
|
||||
remote: Counting objects: 727, done.
|
||||
remote: Compressing objects: 100% (452/452), done.
|
||||
remote: Total 727 (delta 260), reused 719 (delta 252)
|
||||
Receiving objects: 100% (727/727), 536.36 KiB | 102 KiB/s, done.
|
||||
Resolving deltas: 100% (260/260), done.
|
||||
</literallayout></para></listitem>
|
||||
<listitem><para id='supported-board-support-packages-(bsps)'><emphasis>Supported Board
|
||||
Support Packages (BSPs):</emphasis>
|
||||
The Yocto Project provides a layer called <filename>meta-intel</filename> and
|
||||
@@ -226,8 +228,8 @@
|
||||
BSP tarball from the same "Downloads" page of the
|
||||
<ulink url='&YOCTO_HOME_URL;'>Yocto Project Website</ulink>
|
||||
to get the Yocto Project release.
|
||||
Once on the "Download" page, look for "BSP" under the
|
||||
"Type" heading.</para>
|
||||
Once on the "Download" page, look to the right of the
|
||||
page and scroll down to find the BSP tarballs.</para>
|
||||
<para>Once you have the tarball, just extract it into a directory of your choice.
|
||||
Again, this method just produces a snapshot of the BSP layer in the form
|
||||
of a hierarchical directory structure.</para></listitem>
|
||||
@@ -246,16 +248,17 @@
|
||||
$ cd ~/poky
|
||||
$ git clone git://git.yoctoproject.org/meta-intel.git
|
||||
Cloning into 'meta-intel'...
|
||||
remote: Counting objects: 6264, done.
|
||||
remote: Compressing objects: 100% (2135/2135), done.
|
||||
remote: Total 6264 (delta 3321), reused 6235 (delta 3293)
|
||||
Receiving objects: 100% (6264/6264), 2.17 MiB | 2.63 MiB/s, done.
|
||||
Resolving deltas: 100% (3321/3321), done.
|
||||
remote: Counting objects: 7366, done.
|
||||
remote: Compressing objects: 100% (2491/2491), done.
|
||||
remote: Total 7366 (delta 3997), reused 7299 (delta 3930)
|
||||
Receiving objects: 100% (7366/7366), 2.31 MiB | 95 KiB/s, done.
|
||||
Resolving deltas: 100% (3997/3997), done.
|
||||
</literallayout></para>
|
||||
<para>The same
|
||||
<ulink url='&YOCTO_WIKI_URL;/wiki/Transcript:_from_git_checkout_to_meta-intel_BSP'>
|
||||
wiki page</ulink> referenced earlier covers how to
|
||||
set up the <filename>meta-intel</filename> Git repository.</para></listitem>
|
||||
<ulink url='&YOCTO_WIKI_URL;/wiki/Transcript:_from_git_checkout_to_meta-intel_BSP'>wiki page</ulink>
|
||||
referenced earlier covers how to
|
||||
set up the <filename>meta-intel</filename> Git repository.
|
||||
</para></listitem>
|
||||
</itemizedlist></para></listitem>
|
||||
<listitem><para><emphasis>Eclipse Yocto Plug-in:</emphasis> If you are developing
|
||||
applications using the Eclipse Integrated Development Environment (IDE),
|
||||
|
||||
@@ -53,7 +53,7 @@
|
||||
</revision>
|
||||
<revision>
|
||||
<revnumber>1.5</revnumber>
|
||||
<date>Sometime in 2013</date>
|
||||
<date>October 2013</date>
|
||||
<revremark>Released with the Yocto Project 1.5 Release.</revremark>
|
||||
</revision>
|
||||
</revhistory>
|
||||
|
||||
|
Before Width: | Height: | Size: 36 KiB After Width: | Height: | Size: 39 KiB |
|
Before Width: | Height: | Size: 210 KiB After Width: | Height: | Size: 189 KiB |
@@ -38,7 +38,7 @@
|
||||
</revision>
|
||||
<revision>
|
||||
<revnumber>1.5</revnumber>
|
||||
<date>Sometime in 2013</date>
|
||||
<date>October 2013</date>
|
||||
<revremark>Released with the Yocto Project 1.5 Release.</revremark>
|
||||
</revision>
|
||||
</revhistory>
|
||||
|
||||
|
Before Width: | Height: | Size: 41 KiB After Width: | Height: | Size: 42 KiB |
|
Before Width: | Height: | Size: 36 KiB After Width: | Height: | Size: 39 KiB |
|
Before Width: | Height: | Size: 116 KiB After Width: | Height: | Size: 189 KiB |
@@ -36,7 +36,7 @@
|
||||
<!ENTITY YOCTO_RELEASE_DL_URL "&YOCTO_DL_URL;/releases/yocto/yocto-&DISTRO;">
|
||||
<!ENTITY YOCTO_TOOLCHAIN_DL_URL "&YOCTO_RELEASE_DL_URL;/toolchain/">
|
||||
<!ENTITY YOCTO_ECLIPSE_DL_URL "&YOCTO_RELEASE_DL_URL;/eclipse-plugin/indigo;">
|
||||
<!ENTITY YOCTO_ADTINSTALLER_DL_URL "&YOCTO_RELEASE_DL_URL;/adt_installer">
|
||||
<!ENTITY YOCTO_ADTINSTALLER_DL_URL "&YOCTO_RELEASE_DL_URL;/adt-installer">
|
||||
<!ENTITY YOCTO_POKY_DL_URL "&YOCTO_RELEASE_DL_URL;/&YOCTO_POKY;.tar.bz2">
|
||||
<!ENTITY YOCTO_MACHINES_DL_URL "&YOCTO_RELEASE_DL_URL;/machines">
|
||||
<!ENTITY YOCTO_QEMU_DL_URL "&YOCTO_MACHINES_DL_URL;/qemu">
|
||||
@@ -57,8 +57,8 @@
|
||||
<!ENTITY UBUNTU_HOST_PACKAGES_ESSENTIAL "gawk wget git-core diffstat unzip texinfo \
|
||||
build-essential chrpath">
|
||||
<!ENTITY FEDORA_HOST_PACKAGES_ESSENTIAL "gawk make wget tar bzip2 gzip python unzip perl patch \
|
||||
diffutils diffstat git cpp gcc gcc-c++ eglibc-devel texinfo chrpath \
|
||||
ccache">
|
||||
diffutils diffstat git cpp gcc gcc-c++ glibc-devel texinfo chrpath \
|
||||
ccache perl-Data-Dumper perl-Text-ParseWords">
|
||||
<!ENTITY OPENSUSE_HOST_PACKAGES_ESSENTIAL "python gcc gcc-c++ git chrpath make wget python-xml \
|
||||
diffstat texinfo python-curses patch">
|
||||
<!ENTITY CENTOS_HOST_PACKAGES_ESSENTIAL "gawk make wget tar bzip2 gzip python unzip perl patch \
|
||||
|
||||
@@ -38,7 +38,7 @@
|
||||
</revision>
|
||||
<revision>
|
||||
<revnumber>1.5</revnumber>
|
||||
<date>Sometime in 2013</date>
|
||||
<date>October 2013</date>
|
||||
<revremark>Released with the Yocto Project 1.5 Release.</revremark>
|
||||
</revision>
|
||||
</revhistory>
|
||||
|
||||
@@ -1078,7 +1078,8 @@
|
||||
variable points to the <filename>deploy</filename> directory,
|
||||
while the
|
||||
<link linkend='var-DEPLOY_DIR_IMAGE'><filename>DEPLOY_DIR_IMAGE</filename></link>
|
||||
variable points to the machine-specific directory.
|
||||
variable points to the appropriate directory containing images for
|
||||
the current configuration.
|
||||
<itemizedlist>
|
||||
<listitem><para><filename><kernel-image></filename>:
|
||||
A kernel binary file.
|
||||
|
||||
|
Before Width: | Height: | Size: 41 KiB After Width: | Height: | Size: 42 KiB |
@@ -133,17 +133,26 @@
|
||||
</para>
|
||||
</note>
|
||||
<itemizedlist>
|
||||
<listitem><para>Ubuntu 10.04</para></listitem>
|
||||
<listitem><para>Ubuntu 11.10</para></listitem>
|
||||
<!-- <listitem><para>Ubuntu 10.04</para></listitem>
|
||||
<listitem><para>Ubuntu 11.10</para></listitem> -->
|
||||
<listitem><para>Ubuntu 12.04 (LTS)</para></listitem>
|
||||
<listitem><para>Ubuntu 12.10</para></listitem>
|
||||
<listitem><para>Ubuntu 13.04</para></listitem>
|
||||
<listitem><para>Fedora release 17 (Beefy Miracle)</para></listitem>
|
||||
<!-- <listitem><para>Fedora 16 (Verne)</para></listitem>
|
||||
<listitem><para>Fedora 17 (Spherical)</para></listitem> -->
|
||||
<listitem><para>Fedora release 18 (Spherical Cow)</para></listitem>
|
||||
<listitem><para>CentOS release 6.3 (Final)</para></listitem>
|
||||
<listitem><para>CentOS release 6.4 (Final)</para></listitem>
|
||||
<listitem><para>Debian GNU/Linux 6.0 (Squeeze)</para></listitem>
|
||||
<listitem><para>Fedora release 19 (Schrödinger's Cat)</para></listitem>
|
||||
<!-- <listitem><para>CentOS release 5.6 (Final)</para></listitem>
|
||||
<listitem><para>CentOS release 5.7 (Final)</para></listitem>
|
||||
<listitem><para>CentOS release 5.8 (Final)</para></listitem>
|
||||
<listitem><para>CentOS release 6.3 (Final)</para></listitem> -->
|
||||
<listitem><para>CentOS release 6.4</para></listitem>
|
||||
<!-- <listitem><para>Debian GNU/Linux 6.0 (Squeeze)</para></listitem> -->
|
||||
<listitem><para>Debian GNU/Linux 6.0.7 (Squeeze)</para></listitem>
|
||||
<listitem><para>Debian GNU/Linux 7.0 (Wheezy)</para></listitem>
|
||||
<listitem><para>Debian GNU/Linux 7.1 (Wheezy)</para></listitem>
|
||||
<!-- <listitem><para>openSUSE 11.4</para></listitem>
|
||||
<listitem><para>openSUSE 12.1</para></listitem> -->
|
||||
<listitem><para>openSUSE 12.2</para></listitem>
|
||||
<listitem><para>openSUSE 12.3</para></listitem>
|
||||
</itemizedlist>
|
||||
|
||||
@@ -580,6 +580,509 @@
|
||||
</para>
|
||||
</section>
|
||||
</section>
|
||||
|
||||
<section id='moving-to-the-yocto-project-1.5-release'>
|
||||
<title>Moving to the Yocto Project 1.5 Release</title>
|
||||
|
||||
<para>
|
||||
This section provides migration information for moving to the
|
||||
Yocto Project 1.5 Release from the prior release.
|
||||
</para>
|
||||
|
||||
<section id='migration-1.5-host-dependency-changes'>
|
||||
<title>Host Dependency Changes</title>
|
||||
|
||||
<para>
|
||||
The OpenEmbedded build system now has some additional requirements
|
||||
on the host system:
|
||||
<itemizedlist>
|
||||
<listitem><para>Python 2.7.3+</para></listitem>
|
||||
<listitem><para>Tar 1.24+</para></listitem>
|
||||
<listitem><para>Git 1.7.5+</para></listitem>
|
||||
<listitem><para>Patched version of Make if you are using
|
||||
3.82.
|
||||
Most distributions that provide Make 3.82 use the patched
|
||||
version.</para></listitem>
|
||||
</itemizedlist>
|
||||
If the Linux distribution you are using on your build host
|
||||
does not provide packages for these, you can install and use
|
||||
the Buildtools tarball, which provides an SDK-like environment
|
||||
containing them.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
For more information on this requirement, see the
|
||||
"<link linkend='required-git-tar-and-python-versions'>Required Git, tar, and Python Versions</link>"
|
||||
section.
|
||||
</para>
|
||||
</section>
|
||||
|
||||
<section id='migration-1.5-atom-pc-bsp'>
|
||||
<title><filename>atom-pc</filename> Board Support Package (BSP)</title>
|
||||
|
||||
<para>
|
||||
The <filename>atom-pc</filename> hardware reference BSP has been
|
||||
replaced by a <filename>genericx86</filename> BSP.
|
||||
This BSP is not necessarily guaranteed to work on all x86
|
||||
hardware, but it will run on a wider range of systems than the
|
||||
<filename>atom-pc</filename> did.
|
||||
<note>
|
||||
Additionally, a <filename>genericx86-64</filename> BSP has been
|
||||
added for 64-bit systems.
|
||||
</note>
|
||||
</para>
|
||||
</section>
|
||||
|
||||
<section id='migration-1.5-bitbake'>
|
||||
<title>BitBake</title>
|
||||
|
||||
<para>
|
||||
The following changes have been made that relate to BitBake:
|
||||
<itemizedlist>
|
||||
<listitem><para>
|
||||
BitBake now supports a <filename>_remove</filename>
|
||||
operator.
|
||||
The addition of this operator means you will have to
|
||||
rename any items in recipe space (functions, variables)
|
||||
whose names currently contain
|
||||
<filename>_remove_</filename> or end with
|
||||
<filename>_remove</filename> to avoid unexpected behavior.
|
||||
</para></listitem>
|
||||
<listitem><para>
|
||||
BitBake's global method pool has been removed.
|
||||
This method is not particularly useful and led to clashes
|
||||
between recipes containing functions that had the
|
||||
same name.</para></listitem>
|
||||
<listitem><para>
|
||||
The "none" server backend has been removed.
|
||||
The "process" server backend has been serving well as the
|
||||
default for a long time now.</para></listitem>
|
||||
<listitem><para>
|
||||
The <filename>bitbake-runtask</filename> script has been
|
||||
removed.</para></listitem>
|
||||
<listitem><para>
|
||||
<filename>${</filename><link linkend='var-P'><filename>P</filename></link><filename>}</filename>
|
||||
and
|
||||
<filename>${</filename><link linkend='var-PF'><filename>PF</filename></link><filename>}</filename>
|
||||
are no longer added to
|
||||
<link linkend='var-PROVIDES'><filename>PROVIDES</filename></link>
|
||||
by default in <filename>bitbake.conf</filename>.
|
||||
These version-specific <filename>PROVIDES</filename>
|
||||
items were seldom used.
|
||||
Attempting to use them could result in two versions being
|
||||
built simultaneously rather than just one version due to
|
||||
the way BitBake resolves dependencies.</para></listitem>
|
||||
</itemizedlist>
|
||||
</para>
|
||||
</section>
|
||||
|
||||
<section id='migration-1.5-qa-warnings'>
|
||||
<title>QA Warnings</title>
|
||||
|
||||
<para>
|
||||
The following changes have been made to the package QA checks:
|
||||
<itemizedlist>
|
||||
<listitem><para>
|
||||
If you have customized
|
||||
<link linkend='var-ERROR_QA'><filename>ERROR_QA</filename></link>
|
||||
or <link linkend='var-WARN_QA'><filename>WARN_QA</filename></link>
|
||||
values in your configuration, check that they contain all of
|
||||
the issues that you wish to be reported.
|
||||
Previous Yocto Project versions contained a bug that meant
|
||||
that any item not mentioned in <filename>ERROR_QA</filename>
|
||||
or <filename>WARN_QA</filename> would be treated as a
|
||||
warning.
|
||||
Consequently, several important items were not already in
|
||||
the default value of <filename>WARN_QA</filename>.
|
||||
All of the possible QA checks are now documented in the
|
||||
"<link linkend='ref-classes-insane'><filename>insane.bbclass</filename></link>"
|
||||
section.</para></listitem>
|
||||
<listitem><para>
|
||||
An additional QA check has been added to check if
|
||||
<filename>/usr/share/info/dir</filename> is being installed.
|
||||
Your recipe should delete this file within
|
||||
<filename>do_install</filename> if "make install" is
|
||||
installing it.</para></listitem>
|
||||
<listitem><para>
|
||||
If you are using the buildhistory class, the check for the
|
||||
package version going backwards is now controlled using a
|
||||
standard QA check.
|
||||
Thus, if you have customized your
|
||||
<filename>ERROR_QA</filename> or
|
||||
<filename>WARN_QA</filename> values and still wish to have
|
||||
this check performed, you should add
|
||||
"version-going-backwards" to your value for one or the
|
||||
other variables depending on how you wish it to be handled.
|
||||
See the documented QA checks in the
|
||||
"<link linkend='ref-classes-insane'><filename>insane.bbclass</filename></link>"
|
||||
section.
|
||||
</para></listitem>
|
||||
</itemizedlist>
|
||||
</para>
|
||||
</section>
|
||||
|
||||
<section id='migration-1.5-directory-layout-changes'>
|
||||
<title>Directory Layout Changes</title>
|
||||
|
||||
<para>
|
||||
The following directory changes exist:
|
||||
<itemizedlist>
|
||||
<listitem><para>
|
||||
Output SDK installer files are now named to include the
|
||||
image name and tuning architecture through the
|
||||
<link linkend='var-SDK_NAME'><filename>SDK_NAME</filename></link>
|
||||
variable.</para></listitem>
|
||||
<listitem><para>
|
||||
Images and related files are now installed into a directory
|
||||
that is specific to the machine, instead of a parent
|
||||
directory containing output files for multiple machines.
|
||||
The
|
||||
<link linkend='var-DEPLOY_DIR_IMAGE'><filename>DEPLOY_DIR_IMAGE</filename></link>
|
||||
variable continues to point to the directory containing
|
||||
images for the current
|
||||
<link linkend='var-MACHINE'><filename>MACHINE</filename></link>
|
||||
and should be used anywhere there is a need to refer to
|
||||
this directory.
|
||||
The <filename>runqemu</filename> script now uses this
|
||||
variable to find images and kernel binaries and will use
|
||||
BitBake to determine the directory.
|
||||
Alternatively, you can set the
|
||||
<filename>DEPLOY_DIR_IMAGE</filename> variable in the
|
||||
external environment.</para></listitem>
|
||||
<listitem><para>
|
||||
When buildhistory is enabled, its output is now written
|
||||
under the
|
||||
<ulink url='&YOCTO_DOCS_DEV_URL;#build-directory'>Build Directory</ulink>
|
||||
rather than
|
||||
<link linkend='var-TMPDIR'><filename>TMPDIR</filename></link>.
|
||||
Doing so makes it a easier to delete
|
||||
<filename>TMPDIR</filename> and preserve the build history.
|
||||
Additionally, data for produced SDKs is now split by
|
||||
<link linkend='var-IMAGE_NAME'><filename>IMAGE_NAME</filename></link>.
|
||||
</para></listitem>
|
||||
<listitem><para>
|
||||
The <filename>pkgdata</filename> directory produced as
|
||||
part of the packaging process has been collapsed into a
|
||||
single machine-specific directory.
|
||||
This directory is located under
|
||||
<filename>sysroots</filename> and uses a machine-specific
|
||||
name (i.e.
|
||||
<filename>tmp/sysroots/<machine>/pkgdata</filename>).
|
||||
</para></listitem>
|
||||
</itemizedlist>
|
||||
</para>
|
||||
</section>
|
||||
|
||||
<section id='migration-1.5-shortened-git-srcrev-values'>
|
||||
<title>Shortened Git <filename>SRCREV</filename> Values</title>
|
||||
|
||||
<para>
|
||||
BitBake will now shorten revisions from Git repositories from the
|
||||
normal 40 characters down to 10 characters within
|
||||
<link linkend='var-SRCPV'><filename>SRCPV</filename></link>
|
||||
for improved usability in path and file names.
|
||||
This change should be safe within contexts where these revisions
|
||||
are used because the chances of spatially close collisions
|
||||
is very low.
|
||||
Distant collisions are not a major issue in the way
|
||||
the values are used.
|
||||
</para>
|
||||
</section>
|
||||
|
||||
<section id='migration-1.5-image-features'>
|
||||
<title><filename>IMAGE_FEATURES</filename></title>
|
||||
|
||||
<para>
|
||||
The following changes have been made that relate to
|
||||
<link linkend='var-IMAGE_FEATURES'><filename>IMAGE_FEATURES</filename></link>:
|
||||
<itemizedlist>
|
||||
<listitem><para>
|
||||
The value of
|
||||
<link linkend='var-IMAGE_FEATURES'><filename>IMAGE_FEATURES</filename></link>
|
||||
is now validated to ensure invalid feature items are not
|
||||
added.
|
||||
Some users mistakenly add package names to this variable
|
||||
instead of using
|
||||
<link linkend='var-IMAGE_INSTALL'><filename>IMAGE_INSTALL</filename></link>
|
||||
in order to have the package added to the image, which does
|
||||
not work.
|
||||
This change is intended to catch those kinds of situations.
|
||||
Valid <filename>IMAGE_FEATURES</filename> are drawn from
|
||||
<link linkend='var-PACKAGE_GROUP'><filename>PACKAGE_GROUP</filename></link>
|
||||
definitions,
|
||||
<link linkend='var-COMPLEMENTARY_GLOB'><filename>COMPLEMENTARY_GLOB</filename></link>
|
||||
and a new "validitems" varflag on
|
||||
<filename>IMAGE_FEATURES</filename>.
|
||||
The "validitems" varflag change allows additional features
|
||||
to be added if they are not provided using the previous
|
||||
two mechanisms.
|
||||
</para></listitem>
|
||||
<listitem><para>
|
||||
The previously deprecated "apps-console-core"
|
||||
<filename>IMAGE_FEATURES</filename> item is no longer
|
||||
supported.
|
||||
Add "splash" to <filename>IMAGE_FEATURES</filename> if you
|
||||
wish to have the splash screen enabled, since this is
|
||||
all that apps-console-core was doing.</para></listitem>
|
||||
</itemizedlist>
|
||||
</para>
|
||||
</section>
|
||||
|
||||
<section id='migration-1.5-run'>
|
||||
<title><filename>/run</filename></title>
|
||||
|
||||
<para>
|
||||
The <filename>/run</filename> directory from the Filesystem
|
||||
Hierarchy Standard 3.0 has been introduced.
|
||||
You can find some of the implications for this change
|
||||
<ulink url='http://cgit.openembedded.org/openembedded-core/commit/?id=0e326280a15b0f2c4ef2ef4ec441f63f55b75873'>here</ulink>.
|
||||
The change also means that recipes that install files to
|
||||
<filename>/var/run</filename> must be changed.
|
||||
You can find a guide on how to make these changes
|
||||
<ulink url='http://permalink.gmane.org/gmane.comp.handhelds.openembedded/58530'>here</ulink>.
|
||||
</para>
|
||||
</section>
|
||||
|
||||
<section id='migration-1.5-removal-of-package-manager-database-within-image-recipes'>
|
||||
<title>Removal of Package Manager Database Within Image Recipes</title>
|
||||
|
||||
<para>
|
||||
The image <filename>core-image-minimal</filename> no longer adds
|
||||
<filename>remove_packaging_data_files</filename> to
|
||||
<link linkend='var-ROOTFS_POSTPROCESS_COMMAND'><filename>ROOTFS_POSTPROCESS_COMMAND</filename></link>.
|
||||
This addition is now handled automatically when "package-management"
|
||||
is not in
|
||||
<link linkend='var-IMAGE_FEATURES'><filename>IMAGE_FEATURES</filename></link>.
|
||||
If you have custom image recipes that make this addition,
|
||||
you should remove the lines, as they are not needed and might
|
||||
interfere with correct operation of postinstall scripts.
|
||||
</para>
|
||||
</section>
|
||||
|
||||
<section id='migration-1.5-images-now-rebuild-only-on-changes-instead-of-every-time'>
|
||||
<title>Images Now Rebuild Only on Changes Instead of Every Time</title>
|
||||
|
||||
<para>
|
||||
The <filename>do_rootfs</filename> and other related image
|
||||
construction tasks are no longer marked as "nostamp".
|
||||
Consequently, they will only be re-executed when their inputs have
|
||||
changed.
|
||||
Previous versions of the OpenEmbedded build system always rebuilt
|
||||
the image when requested rather when necessary.
|
||||
</para>
|
||||
</section>
|
||||
|
||||
<section id='migration-1.5-task-recipes'>
|
||||
<title>Task Recipes</title>
|
||||
|
||||
<para>
|
||||
The previously deprecated <filename>task.bbclass</filename> has
|
||||
now been dropped.
|
||||
For recipes that previously inherited from this task, you should
|
||||
rename them from <filename>task-*</filename> to
|
||||
<filename>packagegroup-*</filename> and inherit packagegroup
|
||||
instead.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
For more information, see the
|
||||
"<link linkend='ref-classes-packagegroup'>Package Groups - <filename>packagegroup.bbclass</filename></link>"
|
||||
section.
|
||||
</para>
|
||||
</section>
|
||||
|
||||
<section id='migration-1.5-busybox'>
|
||||
<title>BusyBox</title>
|
||||
|
||||
<para>
|
||||
By default, we now split BusyBox into two binaries:
|
||||
one that is suid root for those components that need it, and
|
||||
another for the rest of the components.
|
||||
Splitting BusyBox allows for optimization that eliminates the
|
||||
<filename>tinylogin</filename> recipe as recommended by upstream.
|
||||
You can disable this split by setting
|
||||
<link linkend='var-BUSYBOX_SPLIT_SUID'><filename>BUSYBOX_SPLIT_SUID</filename></link>
|
||||
to "0".
|
||||
</para>
|
||||
</section>
|
||||
|
||||
<section id='migration-1.5-automated-image-testing'>
|
||||
<title>Automated Image Testing</title>
|
||||
|
||||
<para>
|
||||
A new automated image testing framework has been added
|
||||
through the
|
||||
<link linkend='ref-classes-testimage'><filename>testimage*.bbclass</filename></link>
|
||||
class.
|
||||
This framework replaces the older
|
||||
<filename>imagetest-qemu</filename> framework.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
You can learn more about performing automated image tests in the
|
||||
"<ulink url='&YOCTO_DOCS_DEV_URL;#performing-automated-runtime-testing'>Performing Automated Runtime Testing</ulink>"
|
||||
section.
|
||||
</para>
|
||||
</section>
|
||||
|
||||
<section id='migration-1.5-build-history'>
|
||||
<title>Build History</title>
|
||||
|
||||
<para>
|
||||
Following are changes to Build History:
|
||||
<itemizedlist>
|
||||
<listitem><para>
|
||||
Installed package sizes:
|
||||
<filename>installed-package-sizes.txt</filename> for an
|
||||
image now records the size of the files installed by each
|
||||
package instead of the size of each compressed package
|
||||
archive file.</para></listitem>
|
||||
<listitem><para>
|
||||
The dependency graphs (<filename>depends*.dot</filename>)
|
||||
now use the actual package names instead of replacing
|
||||
dashes, dots and plus signs with underscores.
|
||||
</para></listitem>
|
||||
<listitem><para>
|
||||
The <filename>buildhistory-diff</filename> and
|
||||
<filename>buildhistory-collect-srcrevs</filename>
|
||||
utilities have improved command-line handling.
|
||||
Use the <filename>‐‐help</filename> option for
|
||||
each utility for more information on the new syntax.
|
||||
</para></listitem>
|
||||
</itemizedlist>
|
||||
For more information on Build History, see the
|
||||
"<link linkend='maintaining-build-output-quality'>Maintaining Build Output Quality</link>"
|
||||
section.
|
||||
</para>
|
||||
</section>
|
||||
|
||||
<section id='migration-1.5-udev'>
|
||||
<title><filename>udev</filename></title>
|
||||
|
||||
<para>
|
||||
Following are changes to <filename>udev</filename>:
|
||||
<itemizedlist>
|
||||
<listitem><para>
|
||||
<filename>udev</filename> no longer brings in
|
||||
<filename>udev-extraconf</filename> automatically
|
||||
through
|
||||
<link linkend='var-RRECOMMENDS'><filename>RRECOMMENDS</filename></link>,
|
||||
since this was originally intended to be optional.
|
||||
If you need the extra rules, then add
|
||||
<filename>udev-extraconf</filename> to your image.
|
||||
</para></listitem>
|
||||
<listitem><para>
|
||||
<filename>udev</filename> no longer brings in
|
||||
<filename>pciutils-ids</filename> or
|
||||
<filename>usbutils-ids</filename> through
|
||||
<filename>RRECOMMENDS</filename>.
|
||||
These are not needed by <filename>udev</filename> itself
|
||||
and removing them saves around 350KB.
|
||||
</para></listitem>
|
||||
</itemizedlist>
|
||||
</para>
|
||||
</section>
|
||||
|
||||
<section id='removed-renamed-recipes'>
|
||||
<title>Removed and Renamed Recipes</title>
|
||||
|
||||
<itemizedlist>
|
||||
<listitem><para>
|
||||
The <filename>linux-yocto</filename> 3.2 kernel has been
|
||||
removed.</para></listitem>
|
||||
<listitem><para>
|
||||
<filename>libtool-nativesdk</filename> has been renamed to
|
||||
<filename>nativesdk-libtool</filename>.</para></listitem>
|
||||
<listitem><para>
|
||||
<filename>tinylogin</filename> has been removed.
|
||||
It has been replaced by a suid portion of Busybox.
|
||||
See the
|
||||
"<link linkend='migration-1.5-busybox'>BusyBox</link>" section
|
||||
for more information.</para></listitem>
|
||||
<listitem><para>
|
||||
<filename>external-python-tarball</filename> has been renamed
|
||||
to <filename>buildtools-tarball</filename>.
|
||||
</para></listitem>
|
||||
<listitem><para>
|
||||
<filename>web-webkit</filename> has been removed.
|
||||
It has been functionally replaced by
|
||||
<filename>midori</filename>.</para></listitem>
|
||||
<listitem><para>
|
||||
<filename>imake</filename> has been removed.
|
||||
It is no longer needed by any other recipe.
|
||||
</para></listitem>
|
||||
<listitem><para>
|
||||
<filename>transfig-native</filename> has been removed.
|
||||
It is no longer needed by any other recipe.
|
||||
</para></listitem>
|
||||
<listitem><para>
|
||||
<filename>anjuta-remote-run</filename> has been removed.
|
||||
Anjuta IDE integration has not been officially supported for
|
||||
several releases.</para></listitem>
|
||||
</itemizedlist>
|
||||
</section>
|
||||
|
||||
<section id='migration-1.5-other-changes'>
|
||||
<title>Other Changes</title>
|
||||
|
||||
<para>
|
||||
Following is a list of short entries describing other changes:
|
||||
<itemizedlist>
|
||||
<listitem><para>
|
||||
<filename>run-postinsts</filename>: Make this generic.
|
||||
</para></listitem>
|
||||
<listitem><para>
|
||||
<filename>base-files</filename>: Remove the unnecessary
|
||||
<filename>/media/xxx</filename> directories.
|
||||
</para></listitem>
|
||||
<listitem><para>
|
||||
<filename>alsa-state</filename>: Provide an empty
|
||||
<filename>asound.conf</filename> by default.
|
||||
</para></listitem>
|
||||
<listitem><para>
|
||||
<filename>classes/image</filename>: Ensure
|
||||
<link linkend='var-BAD_RECOMMENDATIONS'><filename>BAD_RECOMMENDATIONS</filename></link>
|
||||
supports pre-renamed package names.</para></listitem>
|
||||
<listitem><para>
|
||||
<filename>classes/rootfs_rpm</filename>: Implement
|
||||
<link linkend='var-BAD_RECOMMENDATIONS'><filename>BAD_RECOMMENDATIONS</filename></link>
|
||||
for RPM.</para></listitem>
|
||||
<listitem><para>
|
||||
<filename>systemd</filename>: Remove
|
||||
<filename>systemd_unitdir</filename> if
|
||||
<filename>systemd</filename> is not in
|
||||
<link linkend='var-DISTRO_FEATURES'><filename>DISTRO_FEATURES</filename></link>.
|
||||
</para></listitem>
|
||||
<listitem><para>
|
||||
<filename>systemd</filename>: Remove
|
||||
<filename>init.d</filename> dir if
|
||||
<filename>systemd</filename> unit file is present and
|
||||
<filename>sysvinit</filename> is not a distro feature.
|
||||
</para></listitem>
|
||||
<listitem><para>
|
||||
<filename>libpam</filename>: Deny all services for the
|
||||
<filename>OTHER</filename> entries.
|
||||
</para></listitem>
|
||||
<listitem><para>
|
||||
<filename>image.bbclass</filename>: Move
|
||||
<filename>runtime_mapping_rename</filename> to avoid
|
||||
conflict with <filename>multilib</filename>.
|
||||
See
|
||||
<ulink url='https://bugzilla.yoctoproject.org/show_bug.cgi?id=4993'><filename>YOCTO #4993</filename></ulink>
|
||||
in Bugzilla for more information.
|
||||
</para></listitem>
|
||||
<listitem><para>
|
||||
<filename>linux-dtb</filename>: Use kernel build system
|
||||
to generate the <filename>dtb</filename> files.
|
||||
</para></listitem>
|
||||
<listitem><para>
|
||||
<filename>kern-tools</filename>: Switch from guilt to
|
||||
new <filename>kgit-s2q</filename> tool.
|
||||
</para></listitem>
|
||||
</itemizedlist>
|
||||
</para>
|
||||
</section>
|
||||
</section>
|
||||
</chapter>
|
||||
<!--
|
||||
vim: expandtab tw=80 ts=4
|
||||
|
||||
@@ -23,7 +23,7 @@
|
||||
<note>
|
||||
BitBake strives to be a generic "task" executor that is capable of handling complex dependency relationships.
|
||||
As such, it has no real knowledge of what the tasks being executed actually do.
|
||||
BitBake just considers a list of tasks with dependencies and handles
|
||||
BitBake just considers a list of tasks with dependencies and handles
|
||||
<ulink url='&YOCTO_DOCS_DEV_URL;#metadata'>Metadata</ulink>
|
||||
consisting of variables in a certain format that get passed to the tasks.
|
||||
</note>
|
||||
@@ -320,76 +320,74 @@
|
||||
|
||||
<screen>
|
||||
$ bitbake --help
|
||||
Usage: bitbake [options] [package ...]
|
||||
Usage: bitbake [options] [recipename/target ...]
|
||||
|
||||
Executes the specified task (default is 'build') for a given set of BitBake files.
|
||||
It expects that BBFILES is defined, which is a space separated list of files to
|
||||
be executed. BBFILES does support wildcards.
|
||||
Default BBFILES are the .bb files in the current directory.
|
||||
Executes the specified task (default is 'build') for a given set of target recipes (.bb files).
|
||||
It is assumed there is a conf/bblayers.conf available in cwd or in BBPATH which
|
||||
will provide the layer, BBFILES and other configuration information.
|
||||
|
||||
Options:
|
||||
--version show program's version number and exit
|
||||
-h, --help show this help message and exit
|
||||
-b BUILDFILE, --buildfile=BUILDFILE
|
||||
execute the task against this .bb file, rather than a
|
||||
package from BBFILES. Does not handle any
|
||||
dependencies.
|
||||
-k, --continue continue as much as possible after an error. While the
|
||||
target that failed, and those that depend on it,
|
||||
cannot be remade, the other dependencies of these
|
||||
targets can be processed all the same.
|
||||
-a, --tryaltconfigs continue with builds by trying to use alternative
|
||||
Execute tasks from a specific .bb recipe directly.
|
||||
WARNING: Does not handle any dependencies from other
|
||||
recipes.
|
||||
-k, --continue Continue as much as possible after an error. While the
|
||||
target that failed and anything depending on it cannot
|
||||
be built, as much as possible will be built before
|
||||
stopping.
|
||||
-a, --tryaltconfigs Continue with builds by trying to use alternative
|
||||
providers where possible.
|
||||
-f, --force force run of specified cmd, regardless of stamp status
|
||||
-c CMD, --cmd=CMD Specify task to execute. Note that this only executes
|
||||
the specified task for the providee and the packages
|
||||
it depends on, i.e. 'compile' does not implicitly call
|
||||
stage for the dependencies (IOW: use only if you know
|
||||
what you are doing). Depending on the base.bbclass a
|
||||
listtasks tasks is defined and will show available
|
||||
tasks
|
||||
-f, --force Force the specified targets/task to run (invalidating
|
||||
any existing stamp file).
|
||||
-c CMD, --cmd=CMD Specify the task to execute. The exact options
|
||||
available depend on the metadata. Some examples might
|
||||
be 'compile' or 'populate_sysroot' or 'listtasks' may
|
||||
give a list of the tasks available.
|
||||
-C INVALIDATE_STAMP, --clear-stamp=INVALIDATE_STAMP
|
||||
Invalidate the stamp for the specified cmd such as
|
||||
'compile' and run the default task for the specified
|
||||
target(s)
|
||||
Invalidate the stamp for the specified task such as
|
||||
'compile' and then run the default task for the
|
||||
specified target(s).
|
||||
-r PREFILE, --read=PREFILE
|
||||
read the specified file before bitbake.conf
|
||||
Read the specified file before bitbake.conf.
|
||||
-R POSTFILE, --postread=POSTFILE
|
||||
read the specified file after bitbake.conf
|
||||
-v, --verbose output more chit-chat to the terminal
|
||||
Read the specified file after bitbake.conf.
|
||||
-v, --verbose Output more log message data to the terminal.
|
||||
-D, --debug Increase the debug level. You can specify this more
|
||||
than once.
|
||||
-n, --dry-run don't execute, just go through the motions
|
||||
-n, --dry-run Don't execute, just go through the motions.
|
||||
-S, --dump-signatures
|
||||
don't execute, just dump out the signature
|
||||
construction information
|
||||
-p, --parse-only quit after parsing the BB files (developers only)
|
||||
-s, --show-versions show current and preferred versions of all recipes
|
||||
-e, --environment show the global or per-package environment (this is
|
||||
what used to be bbread)
|
||||
-g, --graphviz emit the dependency trees of the specified packages in
|
||||
the dot syntax, and the pn-buildlist to show the build
|
||||
list
|
||||
Don't execute, just dump out the signature
|
||||
construction information.
|
||||
-p, --parse-only Quit after parsing the BB recipes.
|
||||
-s, --show-versions Show current and preferred versions of all recipes.
|
||||
-e, --environment Show the global or per-package environment complete
|
||||
with information about where variables were
|
||||
set/changed.
|
||||
-g, --graphviz Save dependency tree information for the specified
|
||||
targets in the dot syntax.
|
||||
-I EXTRA_ASSUME_PROVIDED, --ignore-deps=EXTRA_ASSUME_PROVIDED
|
||||
Assume these dependencies don't exist and are already
|
||||
provided (equivalent to ASSUME_PROVIDED). Useful to
|
||||
make dependency graphs more appealing
|
||||
-l DEBUG_DOMAINS, --log-domains=DEBUG_DOMAINS
|
||||
Show debug logging for the specified logging domains
|
||||
-P, --profile profile the command and print a report
|
||||
-u UI, --ui=UI userinterface to use
|
||||
-P, --profile Profile the command and save reports.
|
||||
-u UI, --ui=UI The user interface to use (e.g. knotty, hob, depexp).
|
||||
-t SERVERTYPE, --servertype=SERVERTYPE
|
||||
Choose which server to use, process or xmlrpc
|
||||
Choose which server to use, process or xmlrpc.
|
||||
--revisions-changed Set the exit code depending on whether upstream
|
||||
floating revisions have changed or not
|
||||
--server-only Run bitbake without UI, the frontend can connect with
|
||||
bitbake server itself
|
||||
-B BIND, --bind=BIND The name/address for the bitbake server to bind to
|
||||
--no-setscene Do not run any setscene tasks, forces builds
|
||||
floating revisions have changed or not.
|
||||
--server-only Run bitbake without a UI, only starting a server
|
||||
(cooker) process.
|
||||
-B BIND, --bind=BIND The name/address for the bitbake server to bind to.
|
||||
--no-setscene Do not run any setscene tasks. sstate will be ignored
|
||||
and everything needed, built.
|
||||
--remote-server=REMOTE_SERVER
|
||||
Connect to the specified server
|
||||
-m, --kill-server Terminate the remote server
|
||||
--observe-only Connect to a server as an observing-only client
|
||||
Connect to the specified server.
|
||||
-m, --kill-server Terminate the remote server.
|
||||
--observe-only Connect to a server as an observing-only client.
|
||||
</screen>
|
||||
</section>
|
||||
|
||||
|
||||
@@ -86,9 +86,9 @@
|
||||
the <filename><link linkend='var-EXTRA_OEMAKE'>EXTRA_OEMAKE</link></filename> variable.
|
||||
</para></listitem>
|
||||
<listitem><para><filename>do_install</filename> ‐ Runs <filename>make install</filename>
|
||||
and passes a destination directory option, which takes its value
|
||||
from the standard
|
||||
<filename><link linkend='var-DESTDIR'>DESTDIR</link></filename> variable.
|
||||
and passes in
|
||||
<filename>${</filename><link linkend='var-D'><filename>D</filename></link><filename>}</filename>
|
||||
as <filename>DESTDIR</filename>.
|
||||
</para></listitem>
|
||||
</itemizedlist>
|
||||
</para>
|
||||
@@ -341,9 +341,9 @@
|
||||
on the development host that can be used by Smart, you can
|
||||
install packages from the feed while you are running the image
|
||||
on the target (i.e. runtime installation of packages).
|
||||
For information on how to set up this repository, see the
|
||||
"<ulink url='&YOCTO_DOCS_DEV_URL;#setting-up-runtime-package-management'>Setting Up Runtime Package Management</ulink>"
|
||||
in the Yocto Project Development Manual.
|
||||
For more information, see the
|
||||
"<ulink url='&YOCTO_DOCS_DEV_URL;#using-runtime-package-management'>Using Runtime Package Management</ulink>"
|
||||
section in the Yocto Project Development Manual.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
@@ -797,6 +797,21 @@
|
||||
<listitem><para><emphasis><filename>perms:</filename></emphasis>
|
||||
Currently, this check is unused but reserved.
|
||||
</para></listitem>
|
||||
<listitem><para><emphasis><filename>version-going-backwards:</filename></emphasis>
|
||||
If Build History is enabled, reports when a package
|
||||
being written out has a lower version than the previously
|
||||
written package under the same name.
|
||||
If you are placing output packages into a feed and
|
||||
upgrading packages on a target system using that feed, the
|
||||
version of a package going backwards can result in the target
|
||||
system not correctly upgrading to the "new" version of the
|
||||
package.
|
||||
<note>
|
||||
If you are not using runtime package management on your
|
||||
target system, then you do not need to worry about
|
||||
this situation.
|
||||
</note>
|
||||
</para></listitem>
|
||||
</itemizedlist>
|
||||
</para>
|
||||
</section>
|
||||
@@ -940,8 +955,12 @@
|
||||
|
||||
<para>
|
||||
You can use this class to enable running a series of automated tests
|
||||
for QEMU images.
|
||||
The class handles loading the tests and starting the QEMU image.
|
||||
for images.
|
||||
The class handles loading the tests and starting the image.
|
||||
<note>
|
||||
Currently, there is only support for running these tests
|
||||
under QEMU.
|
||||
</note>
|
||||
</para>
|
||||
|
||||
<para>
|
||||
@@ -950,15 +969,13 @@
|
||||
The tests are commands that run on the target system over
|
||||
<filename>ssh</filename>.
|
||||
they are written in Python and make use of the
|
||||
<filename>unittest modulebuild</filename> software.
|
||||
<filename>unittest</filename> module.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
For information on how to enable, run, and create new tests, see the
|
||||
"<ulink url='running-and-writing-tests-for-a-qemu-image'>Running and Writing Tests for a QEMU Image</ulink>"
|
||||
section and the
|
||||
<ulink url='https://wiki.yoctoproject.org/wiki/Image_tests'>Image Tests</ulink>
|
||||
Wiki page.
|
||||
"<ulink url='&YOCTO_DOCS_DEV_URL;#performing-automated-runtime-testing'>Performing Automated Runtime Testing</ulink>"
|
||||
section.
|
||||
</para>
|
||||
</section>
|
||||
|
||||
@@ -979,6 +996,7 @@
|
||||
allarch.bbclass
|
||||
archive*.bbclass
|
||||
binconfig.bbclass
|
||||
bin_package.bbclass
|
||||
blacklist.bbclass
|
||||
bootimg.bbclass
|
||||
boot-directdisk.bbclass
|
||||
@@ -987,6 +1005,7 @@
|
||||
buildstats.bbclass
|
||||
ccache.bbclass
|
||||
chrpath.bbclass
|
||||
clutter.bbclass
|
||||
cmake.bbclass
|
||||
cml1.bbclass
|
||||
copyleft_compliance.bbclass
|
||||
@@ -996,7 +1015,9 @@
|
||||
crosssdk.bbclass
|
||||
deploy.bbclass
|
||||
distrodata.bbclass
|
||||
distro_features_check.bbclass
|
||||
dummy.bbclass
|
||||
extrausers.bbclass
|
||||
fontcache.bbclass
|
||||
gconf.bbclass
|
||||
gettext.bbclass
|
||||
@@ -1015,12 +1036,11 @@
|
||||
image-mklibs.bbclass
|
||||
image-prelink.bbclass
|
||||
image-swab.bbclass
|
||||
imagetest-dummy.bbclass
|
||||
imagetest-qemu.bbclass
|
||||
image_types.bbclass
|
||||
image_types_uboot.bbclass
|
||||
insserv.bbclass
|
||||
kernel-arch.bbclass
|
||||
kernel-module-split.bbclass
|
||||
kernel-yocto.bbclass
|
||||
lib_package.bbclass
|
||||
linux-kernel-base.bbclass
|
||||
@@ -1061,6 +1081,7 @@
|
||||
sip.bbclass
|
||||
siteconfig.bbclass
|
||||
sourcepkg.bbclass
|
||||
spdx.bbclass
|
||||
sstate.bbclass
|
||||
staging.bbclass
|
||||
syslinux.bbclass
|
||||
@@ -1069,8 +1090,11 @@
|
||||
tinderclient.bbclass
|
||||
toolchain-scripts.bbclass
|
||||
typecheck.bbclass
|
||||
uboot-config.bbclass
|
||||
utility-tasks.bbclass
|
||||
utils.bbclass
|
||||
vala.bbclass
|
||||
waf.bbclass
|
||||
-->
|
||||
|
||||
|
||||
|
||||
@@ -69,7 +69,7 @@
|
||||
</revision>
|
||||
<revision>
|
||||
<revnumber>1.5</revnumber>
|
||||
<date>Sometime in 2013</date>
|
||||
<date>October 2013</date>
|
||||
<revremark>Released with the Yocto Project 1.5 Release.</revremark>
|
||||
</revision>
|
||||
</revhistory>
|
||||
|
||||
@@ -24,7 +24,7 @@
|
||||
<link linkend='var-FILES'>F</link>
|
||||
<!-- <link linkend='var-glossary-g'>G</link> -->
|
||||
<link linkend='var-HOMEPAGE'>H</link>
|
||||
<link linkend='var-IMAGE_CLASSES'>I</link>
|
||||
<link linkend='var-IMAGE_BASENAME'>I</link>
|
||||
<!-- <link linkend='var-glossary-j'>J</link> -->
|
||||
<link linkend='var-KARCH'>K</link>
|
||||
<link linkend='var-LAYERDEPENDS'>L</link>
|
||||
@@ -36,7 +36,7 @@
|
||||
<link linkend='var-RCONFLICTS'>R</link>
|
||||
<link linkend='var-S'>S</link>
|
||||
<link linkend='var-T'>T</link>
|
||||
<link linkend='var-USER_CLASSES'>U</link>
|
||||
<link linkend='var-UBOOT_ENTRYPOINT'>U</link>
|
||||
<!-- <link linkend='var-glossary-v'>V</link> -->
|
||||
<link linkend='var-WARN_QA'>W</link>
|
||||
<!-- <link linkend='var-glossary-x'>X</link> -->
|
||||
@@ -724,8 +724,26 @@ Core layer for images cannot be removed
|
||||
|
||||
<glossentry id='var-BBPATH'><glossterm>BBPATH</glossterm>
|
||||
<glossdef>
|
||||
<para>Used by BitBake to locate <filename>.bbclass</filename> and configuration files.
|
||||
This variable is analogous to the <filename>PATH</filename> variable.</para>
|
||||
<para>
|
||||
Used by BitBake to locate
|
||||
<filename>.bbclass</filename> and configuration files.
|
||||
This variable is analogous to the
|
||||
<filename>PATH</filename> variable.
|
||||
<note>
|
||||
If you run BitBake from a directory outside of the
|
||||
<ulink url='&YOCTO_DOCS_DEV_URL;build-directory'>Build Directory</ulink>,
|
||||
you must be sure to set
|
||||
<filename>BBPATH</filename> to point to the
|
||||
Build Directory.
|
||||
Set the variable as you would any environment variable
|
||||
and then run BitBake:
|
||||
<literallayout class='monospaced'>
|
||||
$ BBPATH = "<build_directory>"
|
||||
$ export BBPATH
|
||||
$ bitbake <target>
|
||||
</literallayout>
|
||||
</note>
|
||||
</para>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
@@ -819,6 +837,25 @@ Core layer for images cannot be removed
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
<glossentry id='var-BUSYBOX_SPLIT_SUID'><glossterm>BUSYBOX_SPLIT_SUID</glossterm>
|
||||
<glossdef>
|
||||
<para>
|
||||
For the BusyBox recipe, specifies whether to split the
|
||||
output executable file into two parts: one for features
|
||||
that require <filename>setuid root</filename>, and one for
|
||||
the remaining features (i.e. those that do not require
|
||||
<filename>setuid root</filename>).
|
||||
</para>
|
||||
|
||||
<para>
|
||||
The <filename>BUSYBOX_SPLIT_SUID</filename> variable
|
||||
defaults to "1", which results in a single output
|
||||
executable file.
|
||||
Set the variable to "0" to split the output file.
|
||||
</para>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
</glossdiv>
|
||||
|
||||
<glossdiv id='var-glossary-c'><title>C</title>
|
||||
@@ -885,6 +922,33 @@ Core layer for images cannot be removed
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
<glossentry id='var-COMPLEMENTARY_GLOB'><glossterm>COMPLEMENTARY_GLOB</glossterm>
|
||||
<glossdef>
|
||||
<para>
|
||||
Defines wildcards to match when installing a list of
|
||||
complementary packages for all the packages explicitly
|
||||
(or implicitly) installed in an image.
|
||||
The resulting list of complementary packages is associated
|
||||
with an item that can be added to
|
||||
<link linkend='var-IMAGE_FEATURES'><filename>IMAGE_FEATURES</filename></link>.
|
||||
An example usage of this is the "dev-pkgs" item that when
|
||||
added to <filename>IMAGE_FEATURES</filename> will
|
||||
install -dev packages (containing headers and other
|
||||
development files) for every package in the image.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
To add a new feature item pointing to a wildcard, use a
|
||||
variable flag to specify the feature item name and
|
||||
use the value to specify the wildcard.
|
||||
Here is an example:
|
||||
<literallayout class='monospaced'>
|
||||
COMPLEMENTARY_GLOB[dev-pkgs] = '*-dev'
|
||||
</literallayout>
|
||||
</para>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
<glossentry id='var-CONFFILES'><glossterm>CONFFILES</glossterm>
|
||||
<glossdef>
|
||||
<para>
|
||||
@@ -994,6 +1058,15 @@ Core layer for images cannot be removed
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
<glossentry id='var-DATETIME'><glossterm>DATETIME</glossterm>
|
||||
<glossdef>
|
||||
<para>
|
||||
The date and time on which the current build started.
|
||||
The format is suitable for timestamps.
|
||||
</para>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
<glossentry id='var-DEBUG_BUILD'><glossterm>DEBUG_BUILD</glossterm>
|
||||
<glossdef>
|
||||
<para>
|
||||
@@ -1138,12 +1211,6 @@ Core layer for images cannot be removed
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
<glossentry id='var-DESTDIR'><glossterm>DESTDIR</glossterm>
|
||||
<glossdef>
|
||||
<para>the destination directory.</para>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
<glossentry id='var-DISTRO'><glossterm>DISTRO</glossterm>
|
||||
<glossdef>
|
||||
<para>
|
||||
@@ -1363,19 +1430,24 @@ Core layer for images cannot be removed
|
||||
<para>
|
||||
Directs BitBake to exclude a recipe from world builds (i.e.
|
||||
<filename>bitbake world</filename>).
|
||||
This variable is intrinsically understood by BitBake.
|
||||
</para>
|
||||
|
||||
<note>
|
||||
During world builds, BitBake locates, parses and builds all
|
||||
recipes found in every layer exposed in the
|
||||
<filename>bblayers.conf</filename> configuration file.
|
||||
</note>
|
||||
</para>
|
||||
|
||||
<para>
|
||||
To exclude a recipe from a world build using this variable,
|
||||
set the variable to "1" in the recipe.
|
||||
</para>
|
||||
|
||||
<note>
|
||||
Recipes added to <filename>EXCLUDE_FROM_WORLD</filename>
|
||||
may still be built during a world build in order to satisfy
|
||||
dependencies of other recipes.
|
||||
Adding a recipe to <filename>EXCLUDE_FROM_WORLD</filename>
|
||||
only ensures that the recipe is not explicitly added
|
||||
to the list of build targets in a world build.
|
||||
</note>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
@@ -1854,6 +1926,16 @@ Core layer for images cannot be removed
|
||||
|
||||
<glossdiv id='var-glossary-i'><title>I</title>
|
||||
|
||||
<glossentry id='var-IMAGE_BASENAME'><glossterm>IMAGE_BASENAME</glossterm>
|
||||
<glossdef>
|
||||
<para>
|
||||
The base name of image output files.
|
||||
This variable defaults to the recipe name
|
||||
(<filename>${</filename><link linkend='var-PN'><filename>PN</filename></link><filename>}</filename>).
|
||||
</para>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
<glossentry id='var-IMAGE_CLASSES'><glossterm>IMAGE_CLASSES</glossterm>
|
||||
<glossdef>
|
||||
<para>
|
||||
@@ -1993,6 +2075,23 @@ Core layer for images cannot be removed
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
<glossentry id='var-IMAGE_NAME'><glossterm>IMAGE_NAME</glossterm>
|
||||
<glossdef>
|
||||
<para>
|
||||
The name of the output image files minus the extension.
|
||||
This variable is derived using the
|
||||
<link linkend='var-IMAGE_BASENAME'><filename>IMAGE_BASENAME</filename></link>,
|
||||
<link linkend='var-MACHINE'><filename>MACHINE</filename></link>,
|
||||
and
|
||||
<link linkend='var-DATETIME'><filename>DATETIME</filename></link>
|
||||
variables:
|
||||
<literallayout class='monospaced'>
|
||||
IMAGE_NAME = "${IMAGE_BASENAME}-${MACHINE}-${DATETIME}"
|
||||
</literallayout>
|
||||
</para>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
<glossentry id='var-IMAGE_OVERHEAD_FACTOR'><glossterm>IMAGE_OVERHEAD_FACTOR</glossterm>
|
||||
<glossdef>
|
||||
<para>
|
||||
@@ -3621,6 +3720,34 @@ recipes-graphics/xorg-font/font-alias_1.0.3.bb:PR = "${INC_PR}.3"
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
<glossentry id='var-PACKAGE_GROUP'><glossterm>PACKAGE_GROUP</glossterm>
|
||||
<glossdef>
|
||||
<para>
|
||||
Defines one or more packages to include in an image when
|
||||
a specific item is included in
|
||||
<link linkend='var-IMAGE_FEATURES'><filename>IMAGE_FEATURES</filename></link>.
|
||||
When setting the value, <filename>PACKAGE_GROUP</filename>
|
||||
should have the name of the feature item as an override.
|
||||
Here is an example:
|
||||
<literallayout class='monospaced'>
|
||||
PACKAGE_GROUP_widget = "package1 package2"
|
||||
</literallayout>
|
||||
In this example, if "widget" were added to
|
||||
<filename>IMAGE_FEATURES</filename>, "package1" and
|
||||
"package2" would be included in the image.
|
||||
<note>
|
||||
Packages installed by features defined through
|
||||
<filename>PACKAGE_GROUP</filename> are often package
|
||||
groups.
|
||||
While similarly named, you should not confuse the
|
||||
<filename>PACKAGE_GROUP</filename> variable with
|
||||
package groups, which are discussed elsewhere in the
|
||||
documentation.
|
||||
</note>
|
||||
</para>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
<glossentry id='var-PACKAGE_INSTALL'><glossterm>PACKAGE_INSTALL</glossterm>
|
||||
<glossdef>
|
||||
<para>
|
||||
@@ -3647,20 +3774,29 @@ recipes-graphics/xorg-font/font-alias_1.0.3.bb:PR = "${INC_PR}.3"
|
||||
<para>
|
||||
This variable provides a means of enabling or disabling
|
||||
features of a recipe on a per-recipe basis.
|
||||
<filename>PACKAGECONFIG</filename> blocks are defined
|
||||
in recipes when you specify features and then arguments
|
||||
that define feature behaviors.
|
||||
Here is the basic block structure:
|
||||
<literallayout class='monospaced'>
|
||||
PACKAGECONFIG ??= "f1 f2 f3 ..."
|
||||
PACKAGECONFIG[f1] = "--with-f1,--without-f1,build-deps-f1,rt-deps-f1"
|
||||
PACKAGECONFIG[f2] = "--with-f2,--without-f2,build-deps-f2,rt-deps-f2"
|
||||
PACKAGECONFIG[f3] = "--with-f3,--without-f3,build-deps-f3,rt-deps-f3"
|
||||
</literallayout>
|
||||
The <filename>PACKAGECONFIG</filename>
|
||||
variable itself specifies a space-separated list of the
|
||||
features to enable.
|
||||
The features themselves are specified as flags on the
|
||||
<filename>PACKAGECONFIG</filename> variable.
|
||||
You can provide up to four arguments, which are separated by
|
||||
commas, to determine the behavior of each feature
|
||||
when it is enabled or disabled.
|
||||
Following the features, you can determine the behavior of
|
||||
each feature by providing up to four order-dependent
|
||||
arguments, which are separated by commas.
|
||||
You can omit any argument you like but must retain the
|
||||
separating commas.
|
||||
The arguments specify the following:
|
||||
The order is important and specifies the following:
|
||||
<orderedlist>
|
||||
<listitem><para>Extra arguments
|
||||
that should be added to the configure script argument list
|
||||
that should be added to the configure script
|
||||
argument list
|
||||
(<link linkend='var-EXTRA_OECONF'><filename>EXTRA_OECONF</filename></link>)
|
||||
if the feature is enabled.</para></listitem>
|
||||
<listitem><para>Extra arguments
|
||||
@@ -3679,14 +3815,16 @@ recipes-graphics/xorg-font/font-alias_1.0.3.bb:PR = "${INC_PR}.3"
|
||||
</para>
|
||||
|
||||
<para>
|
||||
Consider the following example taken from the
|
||||
Consider the following
|
||||
<filename>PACKAGECONFIG</filename> block taken from the
|
||||
<filename>librsvg</filename> recipe.
|
||||
In this example the feature is <filename>croco</filename>, which
|
||||
has three arguments that determine the feature's behavior.
|
||||
<literallayout class='monospaced'>
|
||||
In this example the feature is <filename>croco</filename>,
|
||||
which has three arguments that determine the feature's
|
||||
behavior.
|
||||
<literallayout class='monospaced'>
|
||||
PACKAGECONFIG ??= "croco"
|
||||
PACKAGECONFIG[croco] = "--with-croco,--without-croco,libcroco"
|
||||
</literallayout>
|
||||
</literallayout>
|
||||
The <filename>--with-croco</filename> and
|
||||
<filename>libcroco</filename> arguments apply only if
|
||||
the feature is enabled.
|
||||
@@ -3700,6 +3838,49 @@ recipes-graphics/xorg-font/font-alias_1.0.3.bb:PR = "${INC_PR}.3"
|
||||
added to the configure script rather than
|
||||
<filename>--with-croco</filename>.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
The basic <filename>PACKAGECONFIG</filename> structure
|
||||
previously described holds true regardless of whether you
|
||||
are creating a block or changing a block.
|
||||
When creating a block, use the structure inside your
|
||||
recipe.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
If you want to change an existing
|
||||
<filename>PACKAGECONFIG</filename> block, you can do so
|
||||
one of two ways:
|
||||
<itemizedlist>
|
||||
<listitem><para><emphasis>Append file:</emphasis>
|
||||
Create an append file named
|
||||
<filename><recipename>.bbappend</filename> in your
|
||||
layer and override the value of
|
||||
<filename>PACKAGECONFIG</filename>.
|
||||
You can either completely override the variable:
|
||||
<literallayout class='monospaced'>
|
||||
PACKAGECONFIG="f4 f5"
|
||||
</literallayout>
|
||||
Or, you can just amended the variable:
|
||||
<literallayout class='monospaced'>
|
||||
PACKAGECONFIG_append = " f4"
|
||||
</literallayout></para></listitem>
|
||||
<listitem><para><emphasis>Configuration file:</emphasis>
|
||||
This method is identical to changing the block
|
||||
through an append file except you edit your
|
||||
<filename>local.conf</filename> or
|
||||
<filename><mydistro>.conf</filename> file.
|
||||
As with append files previously described,
|
||||
you can either completely override the variable:
|
||||
<literallayout class='monospaced'>
|
||||
PACKAGECONFIG_pn-<recipename>="f4 f5"
|
||||
</literallayout>
|
||||
Or, you can just amended the variable:
|
||||
<literallayout class='monospaced'>
|
||||
PACKAGECONFIG_append_pn-<recipename> = " f4"
|
||||
</literallayout></para></listitem>
|
||||
</itemizedlist>
|
||||
</para>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
@@ -3751,15 +3932,54 @@ recipes-graphics/xorg-font/font-alias_1.0.3.bb:PR = "${INC_PR}.3"
|
||||
|
||||
<glossentry id='var-PARALLEL_MAKE'><glossterm>PARALLEL_MAKE</glossterm>
|
||||
<glossdef>
|
||||
<para>Specifies extra options that are passed to the <filename>make</filename> command during the
|
||||
compile tasks.
|
||||
This variable is usually in the form <filename>-j 4</filename>, where the number
|
||||
represents the maximum number of parallel threads make can run.
|
||||
If you development host supports multiple cores a good rule of thumb is to set
|
||||
this variable to twice the number of cores on the host.</para>
|
||||
<para>
|
||||
Extra options that are passed to the
|
||||
<filename>make</filename> command during the
|
||||
<filename>do_compile</filename> task in order to specify
|
||||
parallel compilation.
|
||||
This variable is usually in the form
|
||||
<filename>-j 4</filename>, where the number
|
||||
represents the maximum number of parallel threads make can
|
||||
run.
|
||||
If you development host supports multiple cores a good
|
||||
rule of thumb is to set this variable to twice the number
|
||||
of cores on the host.
|
||||
<note>
|
||||
Individual recipes might clear out this variable if
|
||||
the software being built has problems running its
|
||||
<filename>make</filename> process in parallel.
|
||||
</note>
|
||||
</para>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
<glossentry id='var-PARALLEL_MAKEINST'><glossterm>PARALLEL_MAKEINST</glossterm>
|
||||
<glossdef>
|
||||
<para>
|
||||
Extra options passed to the
|
||||
<filename>make install</filename> command during the
|
||||
<filename>do_install</filename> task in order to specify
|
||||
parallel installation.
|
||||
This variable defaults to the value of
|
||||
<link linkend='var-PARALLEL_MAKE'><filename>PARALLEL_MAKE</filename></link>.
|
||||
<note>
|
||||
Individual recipes might clear out this variable if
|
||||
the software being built has problems running its
|
||||
<filename>make install</filename> process in parallel.
|
||||
</note>
|
||||
</para>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
|
||||
|
||||
|
||||
PARALLEL_MAKEINST with the description ".
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<glossentry id='var-PATCHRESOLVE'><glossterm>PATCHRESOLVE</glossterm>
|
||||
<glossdef>
|
||||
<para>
|
||||
@@ -4529,6 +4749,36 @@ recipes-graphics/xorg-font/font-alias_1.0.3.bb:PR = "${INC_PR}.3"
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
<glossentry id='var-SDK_ARCH'><glossterm>SDK_ARCH</glossterm>
|
||||
<glossdef>
|
||||
<para>
|
||||
The target architecture for the SDK.
|
||||
Typically, you do not directly set this variable.
|
||||
Instead, use
|
||||
<link linkend='var-SDKMACHINE'><filename>SDKMACHINE</filename></link>.
|
||||
</para>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
<glossentry id='var-SDK_NAME'><glossterm>SDK_NAME</glossterm>
|
||||
<glossdef>
|
||||
<para>
|
||||
The base name for SDK output files.
|
||||
The name is derived from the
|
||||
<link linkend='var-DISTRO'><filename>DISTRO</filename></link>,
|
||||
<link linkend='var-TCLIBC'><filename>TCLIBC</filename></link>,
|
||||
<link linkend='var-SDK_ARCH'><filename>SDK_ARCH</filename></link>,
|
||||
<link linkend='var-IMAGE_BASENAME'><filename>IMAGE_BASENAME</filename></link>,
|
||||
and
|
||||
<link linkend='var-TUNE_PKGARCH'><filename>TUNE_PKGARCH</filename></link>
|
||||
variables:
|
||||
<literallayout class='monospaced'>
|
||||
SDK_NAME = "${DISTRO}-${TCLIBC}-${SDK_ARCH}-${IMAGE_BASENAME}-${TUNE_PKGARCH}"
|
||||
</literallayout>
|
||||
</para>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
<glossentry id='var-SDKIMAGE_FEATURES'><glossterm>SDKIMAGE_FEATURES</glossterm>
|
||||
<glossdef>
|
||||
<para>Equivalent to
|
||||
@@ -4599,7 +4849,8 @@ recipes-graphics/xorg-font/font-alias_1.0.3.bb:PR = "${INC_PR}.3"
|
||||
SERIAL_CONSOLE = "115200 ttyS0"
|
||||
</literallayout>
|
||||
<note>
|
||||
The <filename>SERIAL_CONSOLE</filename> is deprecated.
|
||||
The <filename>SERIAL_CONSOLE</filename> variable
|
||||
is deprecated.
|
||||
Please use the
|
||||
<link linkend='var-SERIAL_CONSOLES'><filename>SERIAL_CONSOLES</filename></link>
|
||||
variable.
|
||||
@@ -4860,6 +5111,10 @@ recipes-graphics/xorg-font/font-alias_1.0.3.bb:PR = "${INC_PR}.3"
|
||||
<listitem><para><emphasis><filename>striplevel</filename> -</emphasis> Which
|
||||
striplevel to use when applying the patch.
|
||||
The default level is 1.</para></listitem>
|
||||
<listitem><para><emphasis><filename>patchdir</filename> -</emphasis> Specifies
|
||||
the directory in which the patch should be applied.
|
||||
The default is <filename>${</filename><link linkend='var-S'><filename>S</filename></link><filename>}</filename>.
|
||||
</para></listitem>
|
||||
</itemizedlist>
|
||||
</para>
|
||||
<para>Here are options specific to recipes building code from a revision control system:
|
||||
@@ -5217,27 +5472,52 @@ recipes-graphics/xorg-font/font-alias_1.0.3.bb:PR = "${INC_PR}.3"
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
<glossentry id='var-TEST_IMAGE'><glossterm>TEST_IMAGE</glossterm>
|
||||
<glossdef>
|
||||
<para>
|
||||
Automatically runs the series of automated tests for
|
||||
images when an image is successfully built.
|
||||
<note>
|
||||
Currently, there is only support for running these tests
|
||||
under QEMU.
|
||||
</note>
|
||||
These tests are written in Python making use of the
|
||||
<filename>unittest</filename> module, and the majority of
|
||||
them run commands on the target system over
|
||||
<filename>ssh</filename>.
|
||||
You can set this variable to "1" in your
|
||||
<filename>local.conf</filename> file in the
|
||||
<ulink url='&YOCTO_DOCS_DEV_URL;#build-directory'>Build Directory</ulink>
|
||||
to have the OpenEmbedded build system automatically run
|
||||
these tests after an image successfully builds:
|
||||
<literallayout class='monospaced'>
|
||||
TEST_IMAGE = "1"
|
||||
</literallayout>
|
||||
For more information on enabling, running, and writing
|
||||
these tests, see the
|
||||
"<ulink url='&YOCTO_DOCS_DEV_URL;#performing-automated-runtime-testing'>Performing Automated Runtime Testing</ulink>"
|
||||
section in the Yocto Project Development Manual and the
|
||||
"<link linkend='ref-classes-testimage'><filename>testimage.bbclass</filename></link>"
|
||||
section.
|
||||
</para>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
<glossentry id='var-TEST_QEMUBOOT_TIMEOUT'><glossterm>TEST_QEMUBOOT_TIMEOUT</glossterm>
|
||||
<glossdef>
|
||||
<para>
|
||||
The time in seconds allowed for a QEMU image to boot before
|
||||
tests begin to run against the image using the following
|
||||
command:
|
||||
<literallayout class='monospaced'>
|
||||
bitbake <qemu_image> -c testimage
|
||||
</literallayout>
|
||||
</para>
|
||||
|
||||
<para>
|
||||
The time in seconds allowed for an image to boot before
|
||||
automated runtime tests begin to run against an
|
||||
image.
|
||||
The default timeout period to allow the boot process to
|
||||
reach the login prompt is 500 seconds.
|
||||
You can edit this default value in the
|
||||
You can specify a different value in the
|
||||
<filename>local.conf</filename> file.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
For more information on testing QEMU images, see the
|
||||
"<ulink url='running-and-writing-tests-for-a-qemu-image'>Running and Writing Tests for a QEMU Image</ulink>"
|
||||
For more information on testing images, see the
|
||||
"<ulink url='&YOCTO_DOCS_DEV_URL;#performing-automated-runtime-testing'>Performing Automated Runtime Testing</ulink>"
|
||||
section in the Yocto Project Development Manual.
|
||||
</para>
|
||||
</glossdef>
|
||||
@@ -5247,15 +5527,16 @@ recipes-graphics/xorg-font/font-alias_1.0.3.bb:PR = "${INC_PR}.3"
|
||||
<glossdef>
|
||||
<para>
|
||||
An ordered list of tests (modules) to run against
|
||||
a QEMU image using the following command:
|
||||
<literallayout class='monospaced'>
|
||||
bitbake <qemu_image> -c testimage
|
||||
</literallayout>
|
||||
an image when performing automated runtime testing.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
The Yocto Project provides a core set of tests that can
|
||||
be used against QEMU images.
|
||||
The OpenEmbedded build system provides a core set of tests
|
||||
that can be used against images.
|
||||
<note>
|
||||
Currently, there is only support for running these tests
|
||||
under QEMU.
|
||||
</note>
|
||||
Tests include <filename>ping</filename>,
|
||||
<filename>ssh</filename>, <filename>df</filename> among
|
||||
others.
|
||||
@@ -5264,6 +5545,14 @@ recipes-graphics/xorg-font/font-alias_1.0.3.bb:PR = "${INC_PR}.3"
|
||||
<literallayout class='monospaced'>
|
||||
TEST_SUITES_append = " mytest"
|
||||
</literallayout>
|
||||
Alternatively, you can provide the "auto" option to
|
||||
have all applicable tests run against the image.
|
||||
<literallayout class='monospaced'>
|
||||
TEST_SUITES_append = " auto"
|
||||
</literallayout>
|
||||
Using this option causes the build system to automatically
|
||||
run tests that are applicable to the image.
|
||||
Tests that are not applicable are skipped.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
@@ -5282,8 +5571,8 @@ recipes-graphics/xorg-font/font-alias_1.0.3.bb:PR = "${INC_PR}.3"
|
||||
</para>
|
||||
|
||||
<para>
|
||||
For more information on testing QEMU images, see the
|
||||
"<ulink url='running-and-writing-tests-for-a-qemu-image'>Running and Writing Tests for a QEMU Image</ulink>"
|
||||
For more information on testing images, see the
|
||||
"<ulink url='&YOCTO_DOCS_DEV_URL;#performing-automated-runtime-testing'>Performing Automated Runtime Testing</ulink>"
|
||||
section in the Yocto Project Development Manual.
|
||||
</para>
|
||||
</glossdef>
|
||||
@@ -5403,10 +5692,71 @@ recipes-graphics/xorg-font/font-alias_1.0.3.bb:PR = "${INC_PR}.3"
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
<glossentry id='var-TUNE_PKGARCH'><glossterm>TUNE_PKGARCH</glossterm>
|
||||
<glossdef>
|
||||
<para>
|
||||
The package architecture understood by the packaging
|
||||
system to define the architecture, ABI, and tuning of
|
||||
output packages.
|
||||
</para>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
</glossdiv>
|
||||
|
||||
<glossdiv id='var-glossary-u'><title>U</title>
|
||||
|
||||
<glossentry id='var-UBOOT_ENTRYPOINT'><glossterm>UBOOT_ENTRYPOINT</glossterm>
|
||||
<glossdef>
|
||||
<para>
|
||||
Specifies the entry point for the U-Boot image.
|
||||
During U-Boot image creation, the
|
||||
<filename>UBOOT_ENTRYPOINT</filename> variable is passed
|
||||
as a command-line parameter to the
|
||||
<filename>uboot-mkimage</filename> utility.
|
||||
</para>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
<glossentry id='var-UBOOT_LOADADDRESS'><glossterm>UBOOT_LOADADDRESS</glossterm>
|
||||
<glossdef>
|
||||
<para>
|
||||
Specifies the load address for the U-Boot image.
|
||||
During U-Boot image creation, the
|
||||
<filename>UBOOT_LOADADDRESS</filename> variable is passed
|
||||
as a command-line parameter to the
|
||||
<filename>uboot-mkimage</filename> utility.
|
||||
</para>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
<glossentry id='var-UBOOT_MACHINE'><glossterm>UBOOT_MACHINE</glossterm>
|
||||
<glossdef>
|
||||
<para>
|
||||
Specifies the value passed on the
|
||||
<filename>make</filename> command line when building
|
||||
a U-Boot image.
|
||||
The value indicates the target platform configuration.
|
||||
You typically set this variable from the machine
|
||||
configuration file (i.e.
|
||||
<filename>conf/machine/<machine_name>.conf</filename>).
|
||||
</para>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
<glossentry id='var-UBOOT_TARGET'><glossterm>UBOOT_TARGET</glossterm>
|
||||
<glossdef>
|
||||
<para>
|
||||
Specifies the target used for building U-Boot.
|
||||
The target is passed directly as part of the "make" command
|
||||
(e.g. SPL and AIS).
|
||||
If you do not specifically set this variable, the
|
||||
OpenEmbedded build process passes and uses "all" for the
|
||||
target during the U-Boot building process.
|
||||
</para>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
<glossentry id='var-USER_CLASSES'><glossterm>USER_CLASSES</glossterm>
|
||||
<glossdef>
|
||||
<para>
|
||||
|
||||
@@ -27,7 +27,7 @@
|
||||
<title>Build Overview</title>
|
||||
|
||||
<para>
|
||||
The first thing you need to do is set up the OpenEmbedded build
|
||||
The first thing you need to do is set up the OpenEmbedded build
|
||||
environment by sourcing an environment setup script
|
||||
(i.e.
|
||||
<link linkend='structure-core-script'><filename>&OE_INIT_FILE;</filename></link>
|
||||
@@ -508,7 +508,8 @@
|
||||
<imagedata fileref="figures/buildhistory.png" align="center" width="6in" depth="4in" />
|
||||
</para>
|
||||
|
||||
<para>At the top level, there is a <filename>metadata-revs</filename> file
|
||||
<para>
|
||||
At the top level, there is a <filename>metadata-revs</filename> file
|
||||
that lists the revisions of the repositories for the layers enabled
|
||||
when the build was produced.
|
||||
The rest of the data splits into separate
|
||||
@@ -632,6 +633,12 @@
|
||||
<para>
|
||||
The files produced for each image are as follows:
|
||||
<itemizedlist>
|
||||
<listitem><para><filename>image-files:</filename>
|
||||
A directory containing selected files from the root
|
||||
filesystem.
|
||||
The files are defined by
|
||||
<filename>BUILDHISTORY_IMAGE_FILES</filename>.
|
||||
</para></listitem>
|
||||
<listitem><para><filename>build-id:</filename>
|
||||
Human-readable information about the build configuration
|
||||
and metadata source revisions.</para></listitem>
|
||||
|
||||
@@ -88,13 +88,6 @@
|
||||
new to the Yocto Project but familiar with Linux build systems.</para></listitem>
|
||||
</itemizedlist>
|
||||
</para>
|
||||
<note>
|
||||
Due to production processes, there could be differences between the Yocto Project
|
||||
documentation bundled in a released tarball and the
|
||||
<ulink url='&YOCTO_DOCS_QS_URL;'>Yocto Project Quick Start</ulink> on
|
||||
the <ulink url='&YOCTO_HOME_URL;'>Yocto Project</ulink> website.
|
||||
For the latest version of this manual, see the manual on the website.
|
||||
</note>
|
||||
</section>
|
||||
|
||||
<section id='yp-intro'>
|
||||
@@ -288,8 +281,9 @@
|
||||
<title>Ubuntu and Debian</title>
|
||||
|
||||
<para>
|
||||
The essential packages you need for a supported Ubuntu
|
||||
or Debian distribution are shown in the following command:
|
||||
The essential and graphical support packages you need for a
|
||||
supported Ubuntu or Debian distribution are shown in the
|
||||
following command:
|
||||
<literallayout class='monospaced'>
|
||||
$ sudo apt-get install &UBUNTU_HOST_PACKAGES_ESSENTIAL; libsdl1.2-dev xterm
|
||||
</literallayout>
|
||||
@@ -300,8 +294,8 @@
|
||||
<title>Fedora</title>
|
||||
|
||||
<para>
|
||||
The essential packages you need for a supported Fedora distribution
|
||||
are shown in the following command:
|
||||
The essential and graphical packages you need for a supported
|
||||
Fedora distribution are shown in the following command:
|
||||
<literallayout class='monospaced'>
|
||||
$ sudo yum install &FEDORA_HOST_PACKAGES_ESSENTIAL; SDL-devel xterm
|
||||
</literallayout>
|
||||
@@ -309,11 +303,11 @@
|
||||
</section>
|
||||
|
||||
<section id='opensuse'>
|
||||
<title>openSUSE</title>
|
||||
<title>OpenSUSE</title>
|
||||
|
||||
<para>
|
||||
The essential packages you need for a supported openSUSE
|
||||
distribution are shown in the following command:
|
||||
The essential and graphical packages you need for a supported
|
||||
OpenSUSE distribution are shown in the following command:
|
||||
<literallayout class='monospaced'>
|
||||
$ sudo zypper install &OPENSUSE_HOST_PACKAGES_ESSENTIAL; libSDL-devel xterm
|
||||
</literallayout>
|
||||
@@ -324,8 +318,8 @@
|
||||
<title>CentOS</title>
|
||||
|
||||
<para>
|
||||
The essential packages you need for a supported CentOS
|
||||
distribution are shown in the following command:
|
||||
The essential and graphical packages you need for a supported
|
||||
CentOS distribution are shown in the following command:
|
||||
<literallayout class='monospaced'>
|
||||
$ sudo yum install &CENTOS_HOST_PACKAGES_ESSENTIAL; SDL-devel xterm
|
||||
</literallayout>
|
||||
@@ -346,8 +340,8 @@
|
||||
<ulink url="&YOCTO_HOME_URL;">Yocto Project website</ulink>
|
||||
clicking "Downloads" in the navigation pane to the left to view all
|
||||
available Yocto Project releases.
|
||||
Be sure to scroll down and look for "Yocto Project" under the
|
||||
"Type" heading in the list.
|
||||
Current and archived releases are available for download to the
|
||||
right.
|
||||
Nightly and developmental builds are also maintained at
|
||||
<ulink url="&YOCTO_AB_NIGHTLY_URL;"></ulink>.
|
||||
However, for this document a released version of Yocto Project is used.
|
||||
@@ -482,8 +476,9 @@
|
||||
By default, the target architecture for the build is <filename>qemux86</filename>,
|
||||
which produces an image that can be used in the QEMU emulator and is targeted at an
|
||||
<trademark class='registered'>Intel</trademark> 32-bit based architecture.
|
||||
To change this default, edit the value of the <filename>MACHINE</filename> variable
|
||||
in the configuration file before launching the build.
|
||||
To change this default, edit the value of the
|
||||
<ulink url='&YOCTO_DOCS_REF_URL;#var-MACHINE'><filename>MACHINE</filename></ulink>
|
||||
variable in the configuration file before launching the build.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
@@ -719,10 +714,10 @@
|
||||
|
||||
Where:
|
||||
<<emphasis>profile</emphasis>> is the filesystem image's profile:
|
||||
lsb, lsb-dev, lsb-sdk, lsb-qt3, minimal, minimal-dev, sato, sato-dev, or sato-sdk.
|
||||
For information on these types of image profiles, see the
|
||||
"<ulink url='&YOCTO_DOCS_REF_URL;#ref-images'>Images</ulink>" chapter
|
||||
in the Yocto Project Reference Manual.
|
||||
lsb, lsb-dev, lsb-sdk, lsb-qt3, minimal, minimal-dev, sato,
|
||||
sato-dev, or sato-sdk. For information on these types of image
|
||||
profiles, see the "<ulink url='&YOCTO_DOCS_REF_URL;#ref-images'>Images</ulink>" chapter in the Yocto Project
|
||||
Reference Manual.
|
||||
|
||||
<<emphasis>arch</emphasis>> is a string representing the target architecture:
|
||||
x86, x86-64, ppc, mips, or arm.
|
||||
|
||||
@@ -13,19 +13,23 @@ DISTRO_PN_ALIAS_pn-aaina = "Intel"
|
||||
DISTRO_PN_ALIAS_pn-abiword-embedded = "Fedora=abiword Ubuntu=abiword"
|
||||
DISTRO_PN_ALIAS_pn-adt-installer = "Intel"
|
||||
DISTRO_PN_ALIAS_pn-alsa-state = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-alsa-utils-alsaconf = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-atk = "Fedora=atk OpenSuSE=atk"
|
||||
DISTRO_PN_ALIAS_pn-atk-native = "Fedora=atk OpenSuSE=atk"
|
||||
DISTRO_PN_ALIAS_pn-augeas = "Ubuntu=libaugeas0 Debian=libaugeas0"
|
||||
DISTRO_PN_ALIAS_pn-avahi-ui = "Ubuntu=avahi-discover Debian=avahi-discover"
|
||||
DISTRO_PN_ALIAS_pn-babeltrace = "OSPDT"
|
||||
DISTRO_PN_ALIAS_pn-bdwgc = "OSPDT"
|
||||
DISTRO_PN_ALIAS_pn-bigreqsproto = "Meego=xorg-x11-proto-bigreqsproto"
|
||||
DISTRO_PN_ALIAS_pn-bjam-native = "OpenSuSE=boost-jam Debina=bjam"
|
||||
DISTRO_PN_ALIAS_pn-blktool = "Debian=blktool Mandriva=blktool"
|
||||
DISTRO_PN_ALIAS_pn-bluez4= "Fedora=bluez Ubuntu=bluez Debian=bluez-utils Opensuse=bluez"
|
||||
DISTRO_PN_ALIAS_pn-bluez4="Meego=bluz Fedora=bluz Ubuntu=bluz OpenSuSE=bluz Mandriva=bluz"
|
||||
DISTRO_PN_ALIAS_pn-bluez4 = "Ubuntu=bluez Debian=bluez-utils"
|
||||
DISTRO_PN_ALIAS_pn-bluez5 = "Fedora=bluez Opensuse=bluez"
|
||||
DISTRO_PN_ALIAS_pn-bluez-dtl1-workaround = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-btrfs-tools = "Debian=btrfs-tools Fedora=btrfs-progs"
|
||||
DISTRO_PN_ALIAS_pn-builder = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-build-appliance-image = "OSPDT"
|
||||
DISTRO_PN_ALIAS_pn-calibrateproto = "OSPDT upstream=http://cgit.freedesktop.org/xorg/lib/libXCalibrate/"
|
||||
DISTRO_PN_ALIAS_pn-builder = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-buildtools-tarball = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-calibrateproto = "OSPDT upstream=http://cgit.freedesktop.org/xorg/proto/calibrateproto"
|
||||
DISTRO_PN_ALIAS_pn-cdrtools = "OpenSUSE=cdrtools OSPDT"
|
||||
DISTRO_PN_ALIAS_pn-chkconfig-alternatives-native = "Mandriva=chkconfig Debian=chkconfig"
|
||||
@@ -36,44 +40,51 @@ DISTRO_PN_ALIAS_pn-claws-plugin-rssyl = "Fedora=claws-mail-plugins OpenSuSE=claw
|
||||
DISTRO_PN_ALIAS_pn-clipboard-manager = "OpenedHand"
|
||||
DISTRO_PN_ALIAS_pn-clutter = "Fedora=clutter OpenSuse=clutter Ubuntu=clutter-1.0 Mandriva=clutter Debian=clutter"
|
||||
DISTRO_PN_ALIAS_pn-clutter-1.8 = "Fedora=clutter OpenSuse=clutter Ubuntu=clutter-1.0 Mandriva=clutter Debian=clutter"
|
||||
DISTRO_PN_ALIAS_pn-clutter-gst-1.0 = "Debian=clutter-gst Ubuntu=clutter-gst Fedora=clutter-gst"
|
||||
DISTRO_PN_ALIAS_pn-clutter-gst-1.8 = "Fedora=clutter-gst Debian=libclutter-gst"
|
||||
DISTRO_PN_ALIAS_pn-clutter-gtk-1.0 = "Debian=clutter-gtk Ubuntu=clutter-gtk Fedora=clutter-gtk"
|
||||
DISTRO_PN_ALIAS_pn-clutter-gtk-1.8 = "Fedora=clutter-gtk OpenSuSE=clutter-gtk Ubuntu=clutter-gtk-0.10 Mandriva=clutter-gtk Debian=clutter-gtk"
|
||||
DISTRO_PN_ALIAS_pn-cogl-1.0 = "Debian=cogl Ubuntu=cogl Fedora=cogl"
|
||||
DISTRO_PN_ALIAS_pn-cogl = "Fedora=cogl OpenSuse=cogl Ubuntu=cogl Mandriva=cogl Debian=cogl"
|
||||
DISTRO_PN_ALIAS_pn-compositeproto = "Meego=xorg-x11-proto-compositeproto"
|
||||
DISTRO_PN_ALIAS_pn-connman-gnome = "Intel"
|
||||
DISTRO_PN_ALIAS_pn-connman = "Meego=connman"
|
||||
DISTRO_PN_ALIAS_pn-connman-conf = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-connman-gnome = "Intel"
|
||||
DISTRO_PN_ALIAS_pn-console-tools = "Debian=console-tools Ubuntu=console-tools"
|
||||
DISTRO_PN_ALIAS_pn-core-console = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-core-image-base = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-core-image-basic = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-core-image-clutter = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-core-image-core = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-core-image-lsb-dev = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-core-image-lsb = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-core-image-lsb-dev = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-core-image-lsb-qt3 = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-core-image-lsb-sdk = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-core-image-minimal = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-core-image-minimal-dev = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-core-image-minimal-directdisk = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-core-image-minimal-initramfs = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-core-image-minimal-live = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-core-image-minimal-mtdutils = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-core-image-minimal = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-core-image-rt = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-core-image-rt-sdk = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-core-image-sato = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-core-image-sato-dev = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-core-image-sato-directdisk = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-core-image-sato-live = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-core-image-sato = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-core-image-sato-sdk = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-core-image-sato-sdk-directdisk = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-core-image-sato-sdk-live = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-core-image-sato-sdk = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-core-image-sdk = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-core-image-weston = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-core-image-x11 = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-cross-localedef = "OSPDT"
|
||||
DISTRO_PN_ALIAS_pn-cwautomacros= "OSPDT upstream=http://cwautomacros.berlios.de/"
|
||||
DISTRO_PN_ALIAS_pn-cwautomacros = "OSPDT upstream=http://cwautomacros.berlios.de/"
|
||||
DISTRO_PN_ALIAS_pn-damageproto = "Meego=xorg-x11-proto-damageproto"
|
||||
DISTRO_PN_ALIAS_pn-db = "Debian=db5.1 Ubuntu=db5.1"
|
||||
DISTRO_PN_ALIAS_pn-dbus-ptest = "Fedora=dbus Ubuntu=dbus"
|
||||
DISTRO_PN_ALIAS_pn-dbus-wait = "OpenedHand"
|
||||
DISTRO_PN_ALIAS_pn-depmodwrapper-cross = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-directfb-examples = "Debian=directfb Fedora=directfb"
|
||||
DISTRO_PN_ALIAS_pn-distcc = "Debian=distcc Fedora=distcc"
|
||||
DISTRO_PN_ALIAS_pn-distcc-config = "OpenedHand"
|
||||
@@ -91,6 +102,10 @@ DISTRO_PN_ALIAS_pn-eee-acpi-scripts = "Debian=eeepc-acpi-scripts Ubuntu=eeepc-ac
|
||||
DISTRO_PN_ALIAS_pn-eglibc = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-eglibc-initial = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-eglibc-locale = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-eglibc-mtrace = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-eglibc-scripts = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-eglinfo-fb = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-eglinfo-x11 = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-emgd-driver-bin = "Intel"
|
||||
DISTRO_PN_ALIAS_pn-encodings = "Ubuntu=xfonts-encodings Mandriva=x11-font-encodings Debian=xfonts-encodings"
|
||||
DISTRO_PN_ALIAS_pn-evieext = "Meego=xorg-x11-proto-evieext Debian=x11proto-evie"
|
||||
@@ -113,26 +128,34 @@ DISTRO_PN_ALIAS_pn-gcc-crosssdk-initial = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-gccmakedep = "Mandriva=gccmakedep Ubuntu=xutils-dev"
|
||||
DISTRO_PN_ALIAS_pn-gcc-runtime = "Ubuntu=gcc Fedora=gcc"
|
||||
DISTRO_PN_ALIAS_pn-gconf-dbus = "Meego=GConf-dbus"
|
||||
DISTRO_PN_ALIAS_pn-gdk-pixbuf-csource-native = "Debian=libgdk-pixbuf2.0-0 Fedora=gdk-pixbuf2"
|
||||
DISTRO_PN_ALIAS_pn-gdk-pixbuf = "Debian=libgdk-pixbuf2.0 Fedora=gdk-pixbuf"
|
||||
DISTRO_PN_ALIAS_pn-gdk-pixbuf-csource-native = "Debian=libgdk-pixbuf2.0-0 Fedora=gdk-pixbuf2"
|
||||
DISTRO_PN_ALIAS_pn-gettext-minimal-native = "Debian=gettext Fedora=gettext"
|
||||
DISTRO_PN_ALIAS_pn-glib-2.0 = "Meego=glib2 Fedora=glib2 OpenSuSE=glib2 Ubuntu=glib2.0 Mandriva=glib2.0 Debian=glib2.0"
|
||||
DISTRO_PN_ALIAS_pn-glproto = "Meego=xorg-x11-proto-glproto"
|
||||
DISTRO_PN_ALIAS_pn-gnu-config = "OpenedHand"
|
||||
DISTRO_PN_ALIAS_pn-grub-efi-i586 = "Ubuntu=grub Fedora=grub"
|
||||
DISTRO_PN_ALIAS_pn-grub-efi-x86-64-native = "Ubuntu=grub Fedora=grub"
|
||||
DISTRO_PN_ALIAS_pn-gst-ffmpeg = "Mandriva=gstreamer0.10-ffmpeg Debian=gstreamer0.10-ffmpeg"
|
||||
DISTRO_PN_ALIAS_pn-gst-fluendo-mp3 = "Debian=gstreamer0.10-fluendo-mp3 Ubuntu=gstreamer0.10-fluendo-mp3"
|
||||
DISTRO_PN_ALIAS_pn-gst-fluendo-mpegdemux = "Ubuntu=gstreamer0.10-fluendo-mpegdemux Debian=gstreamer0.10-fluendo-mpegdemux"
|
||||
DISTRO_PN_ALIAS_pn-gst-meta-base = "Meego=gstreamer Fedora=gstreamer OpenSuSE=gstreamer Ubuntu=gstreamer0.10 Mandriva=gstreamer0.10 Debian=gstreamer0.10"
|
||||
DISTRO_PN_ALIAS_pn-gst-openmax="OSPDT upstream=http://cgit.freedesktop.org/gstreamer/gst-openmax"
|
||||
DISTRO_PN_ALIAS_pn-gst-openmax = "OSPDT upstream=http://cgit.freedesktop.org/gstreamer/gst-openmax"
|
||||
DISTRO_PN_ALIAS_pn-gst-plugin-bluetooth = "Ubuntu=libgstreamer-plugins-base Fedora=gstreamer-plugins-base"
|
||||
DISTRO_PN_ALIAS_pn-gst-plugins-bad = "Fedora=gstreamer-plugins-bad-free OpenSuSE=gstreamer-plugins-bad Debian=gst-plugins-bad0.10"
|
||||
DISTRO_PN_ALIAS_pn-gst-plugins-base = "Meego=gst-plugins-base Fedora=gstreamer-plugins-base OpenSuSE=gstreamer-plugins-base Ubuntu=gst-plugins-base0.10 Mandriva=gstreamer0.10-plugins-base Debian=gst-plugins-base0.10"
|
||||
DISTRO_PN_ALIAS_pn-gst-plugins-gl = "Debian=gstreamer0.10-plugins-gl OpenSuSE=gstreamer-0_10-plugins-gl"
|
||||
DISTRO_PN_ALIAS_pn-gst-plugins-good = "Meego=gst-plugins-good Fedora=gstreamer-plugins-good OpenSuSE=gstreamer-plugins-good Ubuntu=gst-plugins-good0.10 Mandriva=gstreamer0.10-plugins-good Debian=gst-plugins-good0.10"
|
||||
DISTRO_PN_ALIAS_pn-gst-plugins-ugly = "OpenSuSE=gstreamer-plugins-ugly Mandriva=gstreamer0.10-plugins-ugly Debian=gst-plugins-ugly0.10"
|
||||
DISTRO_PN_ALIAS_pn-gstreamer1.0 = "Debian=gstreamer1.0 Ubuntu=gstreamer1.0"
|
||||
DISTRO_PN_ALIAS_pn-gstreamer1.0-plugins-bad = "Debian=gstreamer1.0-plugins-bad Ubuntu=gstreamer1.0-plugins-bad"
|
||||
DISTRO_PN_ALIAS_pn-gstreamer1.0-plugins-base = "Debian=gstreamer1.0-plugins-base Ubuntu=gstreamer1.0-plugins-base"
|
||||
DISTRO_PN_ALIAS_pn-gstreamer1.0-plugins-good = "Debian=gstreamer1.0-plugins-good Ubuntu=gstreamer1.0-plugins-bad"
|
||||
DISTRO_PN_ALIAS_pn-gstreamer = "Debian=gstreamer1.0 Ubuntu=gstreamer1.0"
|
||||
DISTRO_PN_ALIAS_pn-gtk+ = "Meego=gtk2 Fedora=gtk2 OpenSuSE=gtk2 Ubuntu=gtk+2.0 Mandriva=gtk+2.0 Debian=gtk+2.0"
|
||||
DISTRO_PN_ALIAS_pn-gtk+3 = "Ubuntu=gtk+3.0 Debian=gtk+3.0 Fedora=gtk3"
|
||||
DISTRO_PN_ALIAS_pn-gtk-doc-stub = "Fedora=gtk-doc Ubuntu=gtk-doc"
|
||||
DISTRO_PN_ALIAS_pn-gtk-engines = "Fedora=gtk2-engines OpenSuSE=gtk2-engines Ubuntu=gtk2-engines Mandriva=gtk-engines2 Debian=gtk2-engines"
|
||||
DISTRO_PN_ALIAS_pn-gtk+ = "Meego=gtk2 Fedora=gtk2 OpenSuSE=gtk2 Ubuntu=gtk+2.0 Mandriva=gtk+2.0 Debian=gtk+2.0"
|
||||
DISTRO_PN_ALIAS_pn-gtk-sato-engine = "OpenedHand"
|
||||
DISTRO_PN_ALIAS_pn-gtk-theme-torturer = "OSPDT upstream=http://wiki.laptop.org/go/GTK_for_OLPC"
|
||||
DISTRO_PN_ALIAS_pn-gtk-update-icon-cache-native = "OSPDT"
|
||||
@@ -140,19 +163,19 @@ DISTRO_PN_ALIAS_pn-hello-mod = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-hostap-conf = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-hwlatdetect = "OSPDT"
|
||||
DISTRO_PN_ALIAS_pn-icecc-create-env = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-imake = "Mandriva=xutils Ubuntu=xutils"
|
||||
DISTRO_PN_ALIAS_pn-init-ifupdown = "Debian=ifupdown Ubuntu=ifupdown"
|
||||
DISTRO_PN_ALIAS_pn-initramfs-boot = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-initramfs-framework = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-initramfs-live-boot = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-initramfs-live-install = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-initramfs-live-install-efi = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-initscripts = "Fedora=initscripts Mandravia=initscripts"
|
||||
DISTRO_PN_ALIAS_pn-inputproto = "Meego=xorg-x11-proto-inputproto"
|
||||
DISTRO_PN_ALIAS_pn-iproute2 = "OSPDT"
|
||||
DISTRO_PN_ALIAS_pn-jpeg="OpenSuSE=libjpeg Ubuntu=libjpeg62"
|
||||
DISTRO_PN_ALIAS_pn-jpeg = "OpenSuSE=libjpeg Ubuntu=libjpeg62"
|
||||
DISTRO_PN_ALIAS_pn-kbproto = "Meego=xorg-x11-proto-kbproto Ubuntu=x11proto-kb-dev Debian=x11proto-kb-dev"
|
||||
DISTRO_PN_ALIAS_pn-kconfig-frontends = "OSPDT"
|
||||
DISTRO_PN_ALIAS_pn-kernelshark = "Mandriva=kernelshark Ubuntu=kernelshark"
|
||||
DISTRO_PN_ALIAS_pn-kern-tools-native = "OpenedHand"
|
||||
DISTRO_PN_ALIAS_pn-kern-tools-native = "Windriver"
|
||||
DISTRO_PN_ALIAS_pn-keymaps = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-kf = "OSPDT"
|
||||
@@ -160,50 +183,59 @@ DISTRO_PN_ALIAS_pn-lame = "Debian=lame Ubuntu=lame"
|
||||
DISTRO_PN_ALIAS_pn-latencytop = "Meego=latencytop Fedora=latencytop Debian=latencytop OpenSuSE=latencytop"
|
||||
DISTRO_PN_ALIAS_pn-ldconfig-native = "Ubuntu=libc-bin Fedora=glibc"
|
||||
DISTRO_PN_ALIAS_pn-liba52 = "Mandriva=a52dec Debian=a52dec"
|
||||
DISTRO_PN_ALIAS_pn-libacpi="Ubuntu=libacpi Mandriva=libacpi"
|
||||
DISTRO_PN_ALIAS_pn-libacpi = "Ubuntu=libacpi Mandriva=libacpi"
|
||||
DISTRO_PN_ALIAS_pn-libatomics-ops = "Meego=libatomic-ops Debian=libatomic-ops Ubuntu=libatomic-ops OpenSuSE=libatomic-ops Mandriva=libatomic-ops"
|
||||
DISTRO_PN_ALIAS_pn-libcgroup = "Ubuntu=libcgroup1 Debian=libcgroup1"
|
||||
DISTRO_PN_ALIAS_pn-libcheck = "Ubuntu=check Fedora=check OpenSuSE=check"
|
||||
DISTRO_PN_ALIAS_pn-libclass-isa-perl = "OSPDT"
|
||||
DISTRO_PN_ALIAS_pn-libdrm-poulsbo = "Debian=libdrm-intel1 Ubuntu=libdrm-intel1"
|
||||
DISTRO_PN_ALIAS_pn-libdumpvalue-perl = "OSPDT"
|
||||
DISTRO_PN_ALIAS_pn-libenv-perl = "OSPDT"
|
||||
DISTRO_PN_ALIAS_pn-libfakekey="Meego1.0=libfakekey Debian=libfakekey"
|
||||
DISTRO_PN_ALIAS_pn-libfakekey = "Meego1.0=libfakekey Debian=libfakekey"
|
||||
DISTRO_PN_ALIAS_pn-libfile-checktree-perl = "OSPDT"
|
||||
DISTRO_PN_ALIAS_pn-libfribidi = "OpenSuSE=fribidi Ubuntu=fribidi Mandriva=fribidi Debian=fribidi"
|
||||
DISTRO_PN_ALIAS_pn-libgcc = "Debian=libgcc4 Ubuntu=libgcc1 OpenSuSE=libgcc46"
|
||||
DISTRO_PN_ALIAS_pn-libgdbus = "Intel"
|
||||
DISTRO_PN_ALIAS_pn-libglade = "Meego=libglade2 Fedora=libglade2 OpenSuSE=libglade2 Ubuntu=libglade2 Mandriva=libglade2.0 Debian=libglade2"
|
||||
DISTRO_PN_ALIAS_pn-libgu = "OpenSuSE=glu OSPDT"
|
||||
DISTRO_PN_ALIAS_pn-libglu = "Debian=libglu Ubuntu=libglu Opensuse=mesa-libglu"
|
||||
DISTRO_PN_ALIAS_pn-libgsmd = "Fedora=gsm Ubuntu=libgsm Debian=libgsm Opensuse=libgsm"
|
||||
DISTRO_PN_ALIAS_pn-libgtkstylus = "Debian=libgtkstylus Ubuntu=libgtkstylus"
|
||||
DISTRO_PN_ALIAS_pn-libgu = "OpenSuSE=glu OSPDT"
|
||||
DISTRO_PN_ALIAS_pn-libi18n-collate-perl = "OSPDT"
|
||||
DISTRO_PN_ALIAS_pn-libical = "Ubuntu=libical Fedora=libical"
|
||||
DISTRO_PN_ALIAS_pn-libiconv = "Fedora=mingw-libiconv Opensuse=cross-mingw-libiconv"
|
||||
DISTRO_PN_ALIAS_pn-libjson = "Ubuntu=libjson0-dev Debian=libjson0-dev"
|
||||
DISTRO_PN_ALIAS_pn-libksba = "Fedora=libksba Debian=libksba8"
|
||||
DISTRO_PN_ALIAS_pn-liblbxutil = "Mandriva=liblbxutil OpenSuse=xorg-x11-devel"
|
||||
DISTRO_PN_ALIAS_pn-libmpc = "Fedora=libmpc OpenSuse=libmpc2"
|
||||
DISTRO_PN_ALIAS_pn-libnewt = "Debian=libnewt0.52 Fedora=newt"
|
||||
DISTRO_PN_ALIAS_pn-libnewt-python = "Ubuntu=python-newt Fedora=newt-python"
|
||||
DISTRO_PN_ALIAS_pn-libnss-mdns = "Meego=nss-mdns OpenSuSE=nss-mdns Ubuntu=nss-mdns Mandriva=nss_mdns Debian=nss-mdns"
|
||||
DISTRO_PN_ALIAS_pn-libomxil = "OSPDT upstream=http://omxil.sourceforge.net/"
|
||||
DISTRO_PN_ALIAS_pn-libowl-av = "OpenedHand"
|
||||
DISTRO_PN_ALIAS_pn-libowl = "Debian=owl OpenedHand"
|
||||
DISTRO_PN_ALIAS_pn-libowl-av = "OpenedHand"
|
||||
DISTRO_PN_ALIAS_pn-libpam = "Meego=pam Fedora=pam OpenSuSE=pam Ubuntu=pam Mandriva=pam Debian=pam"
|
||||
DISTRO_PN_ALIAS_pn-libpcre = "Mandriva=libpcre0 Fedora=pcre"
|
||||
DISTRO_PN_ALIAS_pn-libpng12 = "Debian=libpng12-0 Fedora=libpng"
|
||||
DISTRO_PN_ALIAS_pn-libpod-plainer-perl = "OSPDT"
|
||||
DISTRO_PN_ALIAS_pn-libsamplerate0 = "Meego=libsamplerate Fedora=libsamplerate OpenSuSE=libsamplerate Ubuntu=libsamplerate Mandriva=libsamplerate Debian=libsamplerate"
|
||||
DISTRO_PN_ALIAS_pn-libsdl = "Fedora=SDL Opensuse=SDL"
|
||||
DISTRO_PN_ALIAS_pn-libsdl2 = "Fedora=sdl2 Opensuse=libsdl2 Ubuntu=libsdl2 Debian=libsdl2"
|
||||
DISTRO_PN_ALIAS_pn-libsndfile1 = "Meego=libsndfile Fedora=libsndfile OpenSuSE=libsndfile Ubuntu=libsndfile Mandriva=libsndfile Debian=libsndfile"
|
||||
DISTRO_PN_ALIAS_pn-libsoup-2.4 = "Meego=libsoup Fedora=libsoup OpenSuSE=libsoup Ubuntu=libsoup2.4 Mandriva=libsoup Debian=libsoup2.4"
|
||||
DISTRO_PN_ALIAS_pn-libsync = "OSPDT"
|
||||
DISTRO_PN_ALIAS_pn-libtelepathy = "Debian=libtelepathy2 Ubuntu=libtelepathy2"
|
||||
DISTRO_PN_ALIAS_pn-libtimedate-perl = "Debian=libtimedate-perl Ubuntu=libtimedate-perl"
|
||||
DISTRO_PN_ALIAS_pn-liburcu = "Fedora=userspace-rcu Ubuntu=liburcu0"
|
||||
DISTRO_PN_ALIAS_pn-libusb1 = "Debian=libusb-1.0-0 Fedora=libusb1"
|
||||
DISTRO_PN_ALIAS_pn-libusb1-native = "Debian=libusb-1.0-0 Fedora=libusb1"
|
||||
DISTRO_PN_ALIAS_pn-libusb-compat = "OSPDT"
|
||||
DISTRO_PN_ALIAS_pn-libx11 = "Debian=libx11-6 Fedora=libX11 Ubuntu=libx11-6 OpenSuSE=xorg-x11-libX11"
|
||||
DISTRO_PN_ALIAS_pn-libx11-diet = "Debian=libx11-6 Fedora=libX11 Ubuntu=libx11-6 OpenSuSE=xorg-x11-libX11"
|
||||
DISTRO_PN_ALIAS_pn-libxcalibrate = "OSPDT upstream=http://cgit.freedesktop.org/xorg/lib/libXCalibrate/"
|
||||
DISTRO_PN_ALIAS_pn-libxfontcache = "Mandriva=libxfontcache Debian=libxfontcache"
|
||||
DISTRO_PN_ALIAS_pn-libxft = "Mandriva=libxft Debian=libxft2 Ubuntu=libxft2"
|
||||
DISTRO_PN_ALIAS_pn-libxkbcommon = "Fedora=libxkbcommon Debian=libxkbcommon"
|
||||
DISTRO_PN_ALIAS_pn-libxprintapputil = "Debian=libxprintapputil Ubuntu=libxprintapputil1 Mandriva=libxprintapputil"
|
||||
DISTRO_PN_ALIAS_pn-libxscrnsaver = "Fedora=libXScrnSaver Ubuntu=libxss1 Mandriva=libxscrnsaver"
|
||||
DISTRO_PN_ALIAS_pn-libxsettings-client = "Debian=libxsettings-client0 Ubuntu=libxsettings-client0 Mandriva=libXsettings-client0"
|
||||
@@ -218,10 +250,13 @@ DISTRO_PN_ALIAS_pn-linux-yocto-tiny = "OSPDT"
|
||||
DISTRO_PN_ALIAS_pn-lsbinitscripts = "Windriver"
|
||||
DISTRO_PN_ALIAS_pn-lsbsetup = "Windriver"
|
||||
DISTRO_PN_ALIAS_pn-lsbtest = "Windriver"
|
||||
DISTRO_PN_ALIAS_pn-ltp = "Ubuntu=ltp"
|
||||
DISTRO_PN_ALIAS_pn-ltp = "Mandriva=ltp Ubuntu=ltp"
|
||||
DISTRO_PN_ALIAS_pn-lttng-modules = "OSPDT upstream=http://lttng.org/"
|
||||
DISTRO_PN_ALIAS_pn-lttng-tools = "OSPDT upstream=http://lttng.org/"
|
||||
DISTRO_PN_ALIAS_pn-lttng-ust = "OSPDT upstream=http://lttng.org/"
|
||||
DISTRO_PN_ALIAS_pn-lzo = "Debian=liblzo Ubuntu=liblzo Fedora=lzp"
|
||||
DISTRO_PN_ALIAS_pn-lzo-native = "Debian=liblzo Ubuntu=liblzo Fedora=lzp"
|
||||
DISTRO_PN_ALIAS_pn-mailx = "Debian=bsd-mailx Ubuntu=bsd-mailx"
|
||||
DISTRO_PN_ALIAS_pn-makedepend = "Mandriva=makedepend Ubuntu=xutils-dev"
|
||||
DISTRO_PN_ALIAS_pn-makedevs = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-matchbox-config-gtk = "OpenedHand"
|
||||
@@ -232,94 +267,117 @@ DISTRO_PN_ALIAS_pn-matchbox-panel-2 = "Debian=matchbox-panel Mandriva=matchbox-p
|
||||
DISTRO_PN_ALIAS_pn-matchbox-session = "OpenedHand"
|
||||
DISTRO_PN_ALIAS_pn-matchbox-session-sato = "OpenedHand"
|
||||
DISTRO_PN_ALIAS_pn-matchbox-terminal = "OpenedHand"
|
||||
DISTRO_PN_ALIAS_pn-matchbox-theme-sato-2 = "OpenedHand"
|
||||
DISTRO_PN_ALIAS_pn-matchbox-theme-sato = "OpenedHand"
|
||||
DISTRO_PN_ALIAS_pn-matchbox-theme-sato-2 = "OpenedHand"
|
||||
DISTRO_PN_ALIAS_pn-matchbox-themes-extra = "Ubuntu=matchbox-themes-extra Mandriva=matchbox-themes-extra"
|
||||
DISTRO_PN_ALIAS_pn-matchbox-themes-gtk = "OpenedHand"
|
||||
DISTRO_PN_ALIAS_pn-matchbox-wm-2 = "Mandriva=matchbox-window-manager Debian=matchbox-window-manager"
|
||||
DISTRO_PN_ALIAS_pn-matchbox-wm = "OpenedHand"
|
||||
DISTRO_PN_ALIAS_pn-matchbox-wm-2 = "Mandriva=matchbox-window-manager Debian=matchbox-window-manager"
|
||||
DISTRO_PN_ALIAS_pn-menu-cache = "OSPDT"
|
||||
DISTRO_PN_ALIAS_pn-mesa = "Fedora=mesa Ubuntu=libgl1-mesa-dri"
|
||||
DISTRO_PN_ALIAS_pn-mesa-gl = "Fedora=mesa Ubuntu=libgl1-mesa-dri"
|
||||
DISTRO_PN_ALIAS_pn-mesa-glsl-native = "Fedora=mesa Ubuntu=libgl1-mesa-dri"
|
||||
DISTRO_PN_ALIAS_pn-meta-environment-i586 = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-meta-environment-qemux86 = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-meta-environment-qemux86-64 = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-meta-ide-support = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-meta-toolchain-gmae = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-meta-toolchain = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-meta-toolchain-gmae = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-meta-toolchain-qt = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-meta-toolchain-qte = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-mkfontdir = "Mandriva=mkfontdir Ubuntu=xfonts-utils Fedora=xorg-x11-font-utils"
|
||||
DISTRO_PN_ALIAS_pn-meta-toolchain-sdk = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-mini-x-session = "OSPDT"
|
||||
DISTRO_PN_ALIAS_pn-mkfontdir = "Mandriva=mkfontdir Ubuntu=xfonts-utils Fedora=xorg-x11-font-utils"
|
||||
DISTRO_PN_ALIAS_pn-mkfontscale = "Mandriva=mkfontscale Ubuntu=xfonts-utils Fedora=xorg-x11-font-utils"
|
||||
DISTRO_PN_ALIAS_pn-mktemp = "Mandriva=mktemp Fedora=mktemp"
|
||||
DISTRO_PN_ALIAS_pn-moblin-proto = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-modutils-collateral = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-modutils-initscripts = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-msynctool = "OpenSuse=msynctool Mandriva=msynctool"
|
||||
DISTRO_PN_ALIAS_pn-mtd-utils = "Debian=mtd-utils Ubuntu=mtd-utils"
|
||||
DISTRO_PN_ALIAS_pn-mx-1.0 = "Ubuntu=mx Debian=mx Fedora=mx"
|
||||
DISTRO_PN_ALIAS_pn-n450-audio = "Intel"
|
||||
DISTRO_PN_ALIAS_pn-nativesdk-libusb1 = "Debian=libusb-1.0-0 Fedora=libusb1"
|
||||
DISTRO_PN_ALIAS_pn-nativesdk-lzo = "Debian=liblzo Ubuntu=liblzo Fedora=lzp"
|
||||
DISTRO_PN_ALIAS_pn-nativesdk-packagegroup-qt-toolchain-host = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-nativesdk-pkgconfig = "Ubuntu=pkg-config Fedora=pkgconfig"
|
||||
DISTRO_PN_ALIAS_pn-nativesdk-python-git = "Debian=python-git Fedora=GitPython"
|
||||
DISTRO_PN_ALIAS_pn-nativesdk-readline = "Fedora=readline Ubuntu=readline-common"
|
||||
DISTRO_PN_ALIAS_pn-neard = "Intel"
|
||||
DISTRO_PN_ALIAS_pn-network-suspend-scripts = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-nfs-export-root = "OpenedHand"
|
||||
DISTRO_PN_ALIAS_pn-nss-myhostname = "Meego=nss-mdns OpenSuSE=nss-mdns Ubuntu=nss-mdns Mandriva=nss_mdns Debian=nss-mdns"
|
||||
DISTRO_PN_ALIAS_pn-npth = "OSPDT"
|
||||
DISTRO_PN_ALIAS_pn-nss-myhostname = "Meego=nss-mdns OpenSuSE=nss-mdns Ubuntu=nss-mdns Mandriva=nss_mdns Debian=nss-mdns"
|
||||
DISTRO_PN_ALIAS_pn-ocf-linux = "OSPDT"
|
||||
DISTRO_PN_ALIAS_pn-ofono = "Debian=ofono Ubuntu=ofono"
|
||||
DISTRO_PN_ALIAS_pn-oh-puzzles = "OpenedHand"
|
||||
DISTRO_PN_ALIAS_pn-opkg = "OSPDT upstream=http://svn.openmoko.org/trunk/src/tar"
|
||||
DISTRO_PN_ALIAS_pn-opkg-collateral = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-opkg-config-base = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-opkg-nogpg = "OSPDT upstream=http://svn.openmoko.org/trunk/src/tar"
|
||||
DISTRO_PN_ALIAS_pn-opkg = "OSPDT upstream=http://svn.openmoko.org/trunk/src/tar"
|
||||
DISTRO_PN_ALIAS_pn-opkg-utils = "OSPDT upstream=http://svn.openmoko.org/trunk/src/target/opkg/"
|
||||
DISTRO_PN_ALIAS_pn-oprofileui = "Fedora=oprofileui Ubuntu=oprofile-gui Debian=oprofile-gui"
|
||||
DISTRO_PN_ALIAS_pn-oprofileui-server = "Fedora=oprofileui Ubuntu=oprofile-gui Debian=oprofile-gui"
|
||||
DISTRO_PN_ALIAS_pn-owl-video = "OpenedHand"
|
||||
DISTRO_PN_ALIAS_pn-package-index = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-packagegroup-base = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-packagegroup-core = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-packagegroup-core-basic = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-packagegroup-core-boot = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-packagegroup-core-buildessential = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-packagegroup-core-clutter = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-packagegroup-core-console = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-packagegroup-core-device-devel = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-packagegroup-core-directfb = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-packagegroup-core-eclipse-debug = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-packagegroup-core-lsb = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-packagegroup-core-nfs = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-packagegroup-core = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-packagegroup-core-qt = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-packagegroup-core-qt4e = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-packagegroup-core-sdk-gmae = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-packagegroup-core-sdk = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-packagegroup-core-sdk-gmae = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-packagegroup-core-ssh-dropbear = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-packagegroup-core-ssh-openssh = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-packagegroup-core-standalone-gmae-sdk-target = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-packagegroup-core-standalone-sdk-target = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-packagegroup-core-tools-debug = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-packagegroup-core-tools = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-packagegroup-core-tools-debug = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-packagegroup-core-tools-profile = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-packagegroup-core-tools-testapps = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-packagegroup-core-x11-mini = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-packagegroup-core-x11 = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-packagegroup-core-x11-base = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-packagegroup-core-x11-mini = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-packagegroup-core-x11-sato = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-packagegroup-core-x11-xserver = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-packagegroup-cross-canadian-i586 = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-packagegroup-cross-canadian-qemux86 = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-packagegroup-cross-canadian-qemux86-64 = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-packagegroup-qt4e = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-packagegroup-qte-toolchain-host = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-packagegroup-qte-toolchain-target = "Intel"
|
||||
DISTRO_PN_ALIAS_pn-packagegroup-qt-toolchain-target = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-packagegroup-sdk-host = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-packagegroup-self-hosted = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-packagegroup-toolset-native = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-package-index = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-perf = "OSPDT"
|
||||
DISTRO_PN_ALIAS_pn-pkgconfig = "Ubuntu=pkg-config Fedora=pkgconfig"
|
||||
DISTRO_PN_ALIAS_pn-pkgconfig-native = "Ubuntu=pkg-config Fedora=pkgconfig"
|
||||
DISTRO_PN_ALIAS_pn-pointercal = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-pointercal-xinput = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-poky-feed-config-opkg = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-pong-clock = "OpenedHand"
|
||||
DISTRO_PN_ALIAS_pn-portmap = "OpenSuSE=portmap"
|
||||
DISTRO_PN_ALIAS_pn-powertop ="Meego=powertop Fedora=powertop Debian=powertop OpenSuSE=powertop Mandriva=powertop"
|
||||
DISTRO_PN_ALIAS_pn-portmap = "Debian=rpcbind Fedora=rpcbind"
|
||||
DISTRO_PN_ALIAS_pn-powertop = "Meego=powertop Fedora=powertop Debian=powertop OpenSuSE=powertop Mandriva=powertop"
|
||||
DISTRO_PN_ALIAS_pn-ppp-dialin = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-printproto = "Debian=x11proto-print-dev Ubuntu=x11proto-print-dev Mandriva=x11-proto-devel"
|
||||
DISTRO_PN_ALIAS_pn-pseudo = "Windriver"
|
||||
DISTRO_PN_ALIAS_pn-psplash = "OpenedHand"
|
||||
DISTRO_PN_ALIAS_pn-ptest-runner = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-puzzles = "Debian=sgt-puzzles"
|
||||
DISTRO_PN_ALIAS_pn-puzzles = "Debian=sgt-puzzles Fedora=puzzles"
|
||||
DISTRO_PN_ALIAS_pn-python-argparse = "Fedora=python-argparse OpenSuSE=python-argparse"
|
||||
DISTRO_PN_ALIAS_pn-python-argparse-native = "Fedora=python-argparse OpenSuSE=python-argparse"
|
||||
DISTRO_PN_ALIAS_pn-python-dbus = "Ubuntu=python-dbus Debian=python-dbus Mandriva=python-dbus"
|
||||
DISTRO_PN_ALIAS_pn-python-git = "Debian=python-git Fedora=GitPython"
|
||||
DISTRO_PN_ALIAS_pn-python-gst = "OpenSuSE=python-gstreamer Ubuntu=gst0.10-python Debian=gst0.10-python"
|
||||
DISTRO_PN_ALIAS_pn-python-pycairo = "Meego=pycairo Fedora=pycairo Ubuntu=pycairo Debian=pycairo"
|
||||
DISTRO_PN_ALIAS_pn-python-pycurl = "Debian=python-pycurl Ubuntu=python-pycurl"
|
||||
@@ -328,18 +386,18 @@ DISTRO_PN_ALIAS_pn-python-pygtk = "Debian=python-gtk2 Fedora=pygtk2 OpenSuSE=pyt
|
||||
DISTRO_PN_ALIAS_pn-python-pyrex = "Mandriva=python-pyrex Ubuntu=python-pyrex"
|
||||
DISTRO_PN_ALIAS_pn-python-scons = "Fedora=scons OpenSuSE=scons Ubuntu=scons Mandriva=scons Debian=scons"
|
||||
DISTRO_PN_ALIAS_pn-python-setuptools = "Mandriva=python-setup OpenSuSE=python-setup-git"
|
||||
DISTRO_PN_ALIAS_pn-python-smartpm = "Debian=smart OSPDT"
|
||||
DISTRO_PN_ALIAS_pn-python-smartpm = "Debian=smart OpenSuSE=smart"
|
||||
DISTRO_PN_ALIAS_pn-python-ZSI = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-qemu-helper = "OpenedHand"
|
||||
DISTRO_PN_ALIAS_pn-qemu-config = "OpenedHand"
|
||||
DISTRO_PN_ALIAS_pn-qemugl = "OpenedHand"
|
||||
DISTRO_PN_ALIAS_pn-qemu-helper = "OpenedHand"
|
||||
DISTRO_PN_ALIAS_pn-qemu-helper-native = "OpenedHand"
|
||||
DISTRO_PN_ALIAS_pn-qemu-helper-nativesdk = "OpenedHand"
|
||||
DISTRO_PN_ALIAS_pn-qmmp = "Fedora=qmmp"
|
||||
DISTRO_PN_ALIAS_pn-qemuwrapper-cross = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-qmmp = "Fedora=qmmp Debian=qmmp"
|
||||
DISTRO_PN_ALIAS_pn-qt4e-demo-image = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-qt4-embedded = "OSPDT"
|
||||
DISTRO_PN_ALIAS_pn-qt4-graphics-system = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-qt4-native = "Fedora=qt4 Debian=qt4-dev-tools"
|
||||
DISTRO_PN_ALIAS_pn-qt4-native = "Mandriva=libqt4-devel Ubuntu=libqt4-dev"
|
||||
DISTRO_PN_ALIAS_pn-qt4-tools = "Mandriva=libqt4-devel Ubuntu=libqt4-dev"
|
||||
DISTRO_PN_ALIAS_pn-qt4-x11-free = "Ubuntu=qt-x11-free Debian=qt-x11-free"
|
||||
@@ -348,6 +406,8 @@ DISTRO_PN_ALIAS_pn-qt-mobility-embedded = "Ubuntu=qtmobility-dev Debian=qtmobili
|
||||
DISTRO_PN_ALIAS_pn-qt-mobility-x11 = "Ubuntu=qtmobility-dev Debian=qtmobility-dev"
|
||||
DISTRO_PN_ALIAS_pn-quicky = "OSPDT"
|
||||
DISTRO_PN_ALIAS_pn-randrproto = "Meego=xorg-x11-proto-randrproto"
|
||||
DISTRO_PN_ALIAS_pn-readline = "Fedora=readline Debian=readline-common"
|
||||
DISTRO_PN_ALIAS_pn-readline-native = "Fedora=readline Debian=readline-common"
|
||||
DISTRO_PN_ALIAS_pn-recordproto = "Meego=xorg-x11-proto-recordproto"
|
||||
DISTRO_PN_ALIAS_pn-remake = "Mandriva=remake Debian=remake"
|
||||
DISTRO_PN_ALIAS_pn-renderproto = "Meego=xorg-x11-proto-renderproto"
|
||||
@@ -358,9 +418,12 @@ DISTRO_PN_ALIAS_pn-rt-tests = "Debian=rt-tests Ubuntu=rt-tests"
|
||||
DISTRO_PN_ALIAS_pn-run-postinsts = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-sato-icon-theme = "OpenedHand"
|
||||
DISTRO_PN_ALIAS_pn-sato-screenshot = "OpenedHand"
|
||||
DISTRO_PN_ALIAS_pn-sbc = "Fedora=sbc Debian=libsbc1"
|
||||
DISTRO_PN_ALIAS_pn-screenshot = "OpenedHand"
|
||||
DISTRO_PN_ALIAS_pn-scrnsaverproto = "Meego=xorg-x11-proto-scrnsaverproto Ubuntu=x11proto-scrnsaver-dev Debian=x11proto-scrnsaver-dev"
|
||||
DISTRO_PN_ALIAS_pn-settings-daemon = "OpenedHand"
|
||||
DISTRO_PN_ALIAS_pn-sgml-common = "OpenSuSE=sgml-common Fedora=sgml-common"
|
||||
DISTRO_PN_ALIAS_pn-sgml-common-native = "OpenSuSE=sgml-common Fedora=sgml-common"
|
||||
DISTRO_PN_ALIAS_pn-sgmlspl = "Debian=sgmlspl Ubuntu=sgmlspl"
|
||||
DISTRO_PN_ALIAS_pn-shadow-securetty = "Ubuntu=shadow Fedora=shadow"
|
||||
DISTRO_PN_ALIAS_pn-shadow-sysroot = "Ubuntu=shadow Fedora=shadow"
|
||||
@@ -369,9 +432,12 @@ DISTRO_PN_ALIAS_pn-shutdown-desktop = "OpenedHand"
|
||||
DISTRO_PN_ALIAS_pn-signgp-native = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-stat = "Debian=coreutils Fedora=coreutils"
|
||||
DISTRO_PN_ALIAS_pn-swabber-native = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-systemtap-uprobes = "Ubuntu=systemtap Debian=systemtap"
|
||||
DISTRO_PN_ALIAS_pn-sysklogd = "Debian=sysklogd Mandriva=sysklogd"
|
||||
DISTRO_PN_ALIAS_pn-sysprof = "Fedora=sysprof Debian=sysprof"
|
||||
DISTRO_PN_ALIAS_pn-systemd-compat-units = "Fedora=systemd Ubuntu=systemd"
|
||||
DISTRO_PN_ALIAS_pn-systemd-systemctl-native = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-systemd-systemdctl-native = "Fedora=systemd Ubuntu=systemd"
|
||||
DISTRO_PN_ALIAS_pn-systemtap-uprobes = "Ubuntu=systemtap Debian=systemtap"
|
||||
DISTRO_PN_ALIAS_pn-sysvinit-inittab = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-table = "Intel"
|
||||
DISTRO_PN_ALIAS_pn-tar-replacement-native = "OE-Core"
|
||||
@@ -399,14 +465,16 @@ DISTRO_PN_ALIAS_pn-videoproto = "Meego=xorg-x11-proto-videoproto"
|
||||
DISTRO_PN_ALIAS_pn-watchdog = "Debian=watchdog Ubuntu=watchdog Mandriva=watchdog"
|
||||
DISTRO_PN_ALIAS_pn-webkit-gtk = "Fedora=webkitgtk Ubuntu=libwebkit"
|
||||
DISTRO_PN_ALIAS_pn-web-webkit = "OpenedHand"
|
||||
DISTRO_PN_ALIAS_pn-weston = "Fedora=weston OpenSuSE=weston"
|
||||
DISTRO_PN_ALIAS_pn-weston-init = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-which = "Mandriva=which Fedora=which"
|
||||
DISTRO_PN_ALIAS_pn-wpa-supplicant = "Meego=wpa_supplicant Fedora=wpa_supplicant OpenSuSE=wpa_supplicant Ubuntu=wpasupplicant Mandriva=wpa_supplicant Debian=wpasupplicant"
|
||||
DISTRO_PN_ALIAS_pn-x11-common = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-x11perf = "Fedora=xorg-x11-apps Ubuntu=x11-apps"
|
||||
DISTRO_PN_ALIAS_pn-x11vnc = "Fedora=x11vnc Ubuntu=x11vnc"
|
||||
DISTRO_PN_ALIAS_pn-xcb-util-wm = "Debian=xcb-util Fedora=xcb-util"
|
||||
DISTRO_PN_ALIAS_pn-xcb-util-image = "Debian=xcb-util Fedora=xcb-util"
|
||||
DISTRO_PN_ALIAS_pn-xcb-util-keysyms = "Debian=xcb-util Fedora=xcb-util"
|
||||
DISTRO_PN_ALIAS_pn-xcb-util-wm = "Debian=xcb-util Fedora=xcb-util"
|
||||
DISTRO_PN_ALIAS_pn-xcmiscproto = "Meego=xorg-x11-proto-xcmiscproto"
|
||||
DISTRO_PN_ALIAS_pn-xcursor-transparent-theme = "OpenedHand"
|
||||
DISTRO_PN_ALIAS_pn-xdpyinfo = "Fedora=xorg-x11-utils Ubuntu=x11-utils"
|
||||
@@ -425,15 +493,17 @@ DISTRO_PN_ALIAS_pn-xf86miscproto = "Meego=xorg-x11-proto-xf86miscproto"
|
||||
DISTRO_PN_ALIAS_pn-xf86rushproto = "Meego=xorg-x11-proto-xf86rushproto"
|
||||
DISTRO_PN_ALIAS_pn-xf86-video-fbdev = "Ubuntu=xserver-xorg-video-fbdev Debian=xserver-xorg-video-fbdev"
|
||||
DISTRO_PN_ALIAS_pn-xf86-video-intel = "Debian=xserver-xorg-video-intel Fedora=xorg-x11-drv-intel Mandriva=x11-driver-video-intel Meego=xorg-x11-drv-intel Ubuntu=xserver-xorg-video-intel"
|
||||
DISTRO_PN_ALIAS_pn-xf86-video-modesetting = "Debian=xserver-xorg-video-modesetting Fedora=xf86-video-modesetting"
|
||||
DISTRO_PN_ALIAS_pn-xf86-video-omap = "Ubuntu=xf86-video-omap Debian=xf86-video-omap"
|
||||
DISTRO_PN_ALIAS_pn-xf86-video-omapfb = "OSPDT"
|
||||
DISTRO_PN_ALIAS_pn-xf86-video-vesa = "Debian=xserver-xorg-video-vesa Fedora=xorg-x11-drv-vesa Mandriva=x11-driver-video-vesa Ubuntu=xserver-xorg-video-vesa"
|
||||
DISTRO_PN_ALIAS_pn-xf86-video-vmware = "Debian=xserver-xorg-video-vmware Fedora=xorg-x11-drv-vmware Mandriva=x11-driver-video-vmware Ubuntu=xserver-xorg-video-vmware"
|
||||
DISTRO_PN_ALIAS_pn-xf86vidmodeproto = "Meego=xorg-x11-proto-xf86vidmodeproto Ubuntu=x11proto-xf86vidmode Debian=x11proto-xf86vidmode"
|
||||
DISTRO_PN_ALIAS_pn-xhost = "Ubuntu=x11-xserver-utils Fedora=xorg-x11-server-utils"
|
||||
DISTRO_PN_ALIAS_pn-xineramaproto = "Meego=xorg-x11-proto-xineramaproto Ubuntu=x11proto-xinerama Debian=x11proto-xinerama"
|
||||
DISTRO_PN_ALIAS_pn-xinput-calibrator = "Fedora=xinput-calibrator Mandravia=xinput-calibrator Ubuntu=xinput-calibrator"
|
||||
DISTRO_PN_ALIAS_pn-xkbcomp = "Ubuntu=x11-xkb-utils Fedora=xorg-x11-xkb-utils"
|
||||
DISTRO_PN_ALIAS_pn-xmodmap = "Meego=xorg-x11-utils-xmodmap Fedora=xorg-x11-server-utils Ubuntu=x11-xserver-utils"
|
||||
DISTRO_PN_ALIAS_pn-xorg-cf-files = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-xorg-minimal-fonts = "Ubuntu=xfonts-base Fedora=xorg-x11-fonts-base"
|
||||
DISTRO_PN_ALIAS_pn-xprop = "Meego=xorg-x11-utils-xprop Fedora=xorg-x11-utils Ubuntu=x11-utils"
|
||||
DISTRO_PN_ALIAS_pn-xproto = "Meego=xorg-x11-proto-xproto Fedora=xorg-x11-proto-devel Ubuntu=x11proto-core-dev Debian=x11proto-core-dev Opensuse=xorg-x11-proto-devel Mandriva=x11-proto-devel"
|
||||
@@ -447,6 +517,7 @@ DISTRO_PN_ALIAS_pn-xserver-xf86-lite = "Fedora=xorg-x11-server Ubuntu=xserver-xo
|
||||
DISTRO_PN_ALIAS_pn-xserver-xorg = "Fedora=xorg-x11-server Ubuntu=xserver-xorg"
|
||||
DISTRO_PN_ALIAS_pn-xset = "Fedora=xorg-x11-server-utils Ubuntu=x11-xserver-utils Debian=x11-xserver-utils Opensuse=xorg-x11"
|
||||
DISTRO_PN_ALIAS_pn-xtscal = "OSPDT upstream=http://gpe.linuxtogo.org/download/source/"
|
||||
DISTRO_PN_ALIAS_pn-xuser-account = "OE-Core"
|
||||
DISTRO_PN_ALIAS_pn-xvideo-tests = "OpenedHand"
|
||||
DISTRO_PN_ALIAS_pn-xvinfo = "Fedora=xorg-x11-utils Ubuntu=x11-utils"
|
||||
DISTRO_PN_ALIAS_pn-xwininfo = "Fedora=xorg-x11-utils Ubuntu=x11-utils"
|
||||
|
||||
@@ -42,6 +42,8 @@ RECIPE_MAINTAINER_pn-apt = "Cristiana Voicu <cristiana.voicu@intel.com>"
|
||||
RECIPE_MAINTAINER_pn-aspell = "Cristiana Voicu <cristiana.voicu@intel.com>"
|
||||
RECIPE_MAINTAINER_pn-atk = "Cristiana Voicu <cristiana.voicu@intel.com>"
|
||||
RECIPE_MAINTAINER_pn-at = "Cristiana Voicu <cristiana.voicu@intel.com>"
|
||||
RECIPE_MAINTAINER_pn-at-spi2-atk = "Cristiana Voicu <cristiana.voicu@intel.com>"
|
||||
RECIPE_MAINTAINER_pn-at-spi2-core = "Cristiana Voicu <cristiana.voicu@intel.com>"
|
||||
RECIPE_MAINTAINER_pn-attr = "Saul Wold <sgw@linux.intel.com>"
|
||||
RECIPE_MAINTAINER_pn-augeas = "Paul Eggleton <paul.eggleton@linux.intel.com>"
|
||||
RECIPE_MAINTAINER_pn-autoconf = "Laurentiu Palcu <laurentiu.palcu@intel.com>"
|
||||
@@ -63,6 +65,7 @@ RECIPE_MAINTAINER_pn-bison = "Laurentiu Palcu <laurentiu.palcu@intel.com>"
|
||||
RECIPE_MAINTAINER_pn-blktool = "Paul Eggleton <paul.eggleton@linux.intel.com>"
|
||||
RECIPE_MAINTAINER_pn-blktrace = "Tom Zanussi <tom.zanussi@intel.com>"
|
||||
RECIPE_MAINTAINER_pn-bluez4 = "Cristian Iorga <cristian.iorga@intel.com>"
|
||||
RECIPE_MAINTAINER_pn-bluez5 = "Cristian Iorga <cristian.iorga@intel.com>"
|
||||
RECIPE_MAINTAINER_pn-bluez-hcidump = "Cristian Iorga <cristian.iorga@intel.com>"
|
||||
RECIPE_MAINTAINER_pn-boost = "Saul Wold <sgw@linux.intel.com>"
|
||||
RECIPE_MAINTAINER_pn-btrfs-tools = "Laurentiu Palcu <laurentiu.palcu@intel.com>"
|
||||
@@ -81,9 +84,11 @@ RECIPE_MAINTAINER_pn-chrpath = "Paul Eggleton <paul.eggleton@linux.intel.com>"
|
||||
RECIPE_MAINTAINER_pn-clutter-gst-1.0 = "Ross Burton <ross.burton@intel.com>"
|
||||
RECIPE_MAINTAINER_pn-clutter-gtk-1.0 = "Ross Burton <ross.burton@intel.com>"
|
||||
RECIPE_MAINTAINER_pn-clutter = "Ross Burton <ross.burton@intel.com>"
|
||||
RECIPE_MAINTAINER_pn-clutter-1.0 = "Ross Burton <ross.burton@intel.com>"
|
||||
RECIPE_MAINTAINER_pn-cmake-native = "Paul Eggleton <paul.eggleton@linux.intel.com>"
|
||||
RECIPE_MAINTAINER_pn-cmake = "Paul Eggleton <paul.eggleton@linux.intel.com>"
|
||||
RECIPE_MAINTAINER_pn-cogl = "Ross Burton <ross.burton@intel.com>"
|
||||
RECIPE_MAINTAINER_pn-cogl-1.0 = "Ross Burton <ross.burton@intel.com>"
|
||||
RECIPE_MAINTAINER_pn-compositeproto = "Ross Burton <ross.burton@intel.com>"
|
||||
RECIPE_MAINTAINER_pn-connman = "Cristian Iorga <cristian.iorga@intel.com>"
|
||||
RECIPE_MAINTAINER_pn-connman-gnome = "Cristian Iorga <cristian.iorga@intel.com>"
|
||||
@@ -201,6 +206,7 @@ RECIPE_MAINTAINER_pn-gpgme = "Paul Eggleton <paul.eggleton@linux.intel.com>"
|
||||
RECIPE_MAINTAINER_pn-grep = "Cristiana Voicu <cristiana.voicu@intel.com>"
|
||||
RECIPE_MAINTAINER_pn-groff = "Valentin Popa <valentin.popa@intel.com>"
|
||||
RECIPE_MAINTAINER_pn-grub = "Paul Eggleton <paul.eggleton@linux.intel.com>"
|
||||
RECIPE_MAINTAINER_pn-gsettings-desktop-schemas = "Valentin Popa <valentin.popa@intel.com>"
|
||||
RECIPE_MAINTAINER_pn-gst-ffmpeg = "Cristian Iorga <cristian.iorga@intel.com>"
|
||||
RECIPE_MAINTAINER_pn-gst-fluendo-mp3 = "Cristian Iorga <cristian.iorga@intel.com>"
|
||||
RECIPE_MAINTAINER_pn-gst-fluendo-mpegdemux = "Cristian Iorga <cristian.iorga@intel.com>"
|
||||
@@ -239,7 +245,6 @@ RECIPE_MAINTAINER_pn-hostap-utils = "Cristian Iorga <cristian.iorga@intel.com>"
|
||||
RECIPE_MAINTAINER_pn-hwlatdetect = "Darren Hart <dvhart@linux.intel.com>"
|
||||
RECIPE_MAINTAINER_pn-icecc-create-env-native = "Saul Wold <sgw@linux.intel.com>"
|
||||
RECIPE_MAINTAINER_pn-icu = "Valentin Popa <valentin.popa@intel.com>"
|
||||
RECIPE_MAINTAINER_pn-imake = "Cristiana Voicu <cristiana.voicu@intel.com>"
|
||||
RECIPE_MAINTAINER_pn-initramfs-boot = "Saul Wold <sgw@linux.intel.com>"
|
||||
RECIPE_MAINTAINER_pn-initramfs-framework = "Saul Wold <sgw@linux.intel.com>"
|
||||
RECIPE_MAINTAINER_pn-initramfs-live-boot = "Saul Wold <sgw@linux.intel.com>"
|
||||
@@ -277,6 +282,7 @@ RECIPE_MAINTAINER_pn-libart-lgpl = "Ross Burton <ross.burton@intel.com>"
|
||||
RECIPE_MAINTAINER_pn-libassuan = "Cristiana Voicu <cristiana.voicu@intel.com>"
|
||||
RECIPE_MAINTAINER_pn-libatomics-ops = "Cristian Iorga <cristian.iorga@intel.com>"
|
||||
RECIPE_MAINTAINER_pn-libav = "Paul Eggleton <paul.eggleton@linux.intel.com>"
|
||||
RECIPE_MAINTAINER_pn-libbsd = "Saul Wold <sgw@linux.intel.com>"
|
||||
RECIPE_MAINTAINER_pn-libcap = "Saul Wold <sgw@linux.intel.com>"
|
||||
RECIPE_MAINTAINER_pn-libcgroup = "Saul Wold <sgw@linux.intel.com>"
|
||||
RECIPE_MAINTAINER_pn-libcheck = "Saul Wold <sgw@linux.intel.com>"
|
||||
@@ -314,6 +320,7 @@ RECIPE_MAINTAINER_pn-libmpc = "Laurentiu Palcu <laurentiu.palcu@intel.com>"
|
||||
RECIPE_MAINTAINER_pn-libnewt = "Kai Kang <kai.kang@windriver.com>"
|
||||
RECIPE_MAINTAINER_pn-libnfsidmap = "Paul Eggleton <paul.eggleton@linux.intel.com>"
|
||||
RECIPE_MAINTAINER_pn-libnl = "Saul Wold <sgw@linux.intel.com>"
|
||||
RECIPE_MAINTAINER_pn-libnotify = "Ross Burton <ross.burton@intel.com>"
|
||||
RECIPE_MAINTAINER_pn-libnss-mdns = "Saul Wold <sgw@linux.intel.com>"
|
||||
RECIPE_MAINTAINER_pn-libogg = "Cristian Iorga <cristian.iorga@intel.com>"
|
||||
RECIPE_MAINTAINER_pn-liboil = "Cristiana Voicu <cristiana.voicu@intel.com>"
|
||||
@@ -436,6 +443,7 @@ RECIPE_MAINTAINER_pn-meta-ide-support = "Jessica Zhang <jessica.zhang@intel.com>
|
||||
RECIPE_MAINTAINER_pn-meta-toolchain-gmae = "Jessica Zhang <jessica.zhang@intel.com>"
|
||||
RECIPE_MAINTAINER_pn-meta-toolchain-qte = "Paul Eggleton <paul.eggleton@linux.intel.com>"
|
||||
RECIPE_MAINTAINER_pn-meta-toolchain = "Jessica Zhang <jessica.zhang@intel.com>"
|
||||
RECIPE_MAINTAINER_pn-midori = "Ross Burton <ross.burton@intel.com>"
|
||||
RECIPE_MAINTAINER_pn-mingetty = "Kai Kang <kai.kang@windriver.com>"
|
||||
RECIPE_MAINTAINER_pn-minicom = "Cristian Iorga <cristian.iorga@intel.com>"
|
||||
RECIPE_MAINTAINER_pn-mini-x-session = "Saul Wold <sgw@linux.intel.com>"
|
||||
@@ -544,6 +552,7 @@ RECIPE_MAINTAINER_pn-puzzles = "Valentin Popa <valentin.popa@intel.com>"
|
||||
RECIPE_MAINTAINER_pn-python-argparse = "Laurentiu Palcu <laurentiu.palcu@intel.com>"
|
||||
RECIPE_MAINTAINER_pn-python = "Laurentiu Palcu <laurentiu.palcu@intel.com>"
|
||||
RECIPE_MAINTAINER_pn-python-dbus = "Laurentiu Palcu <laurentiu.palcu@intel.com>"
|
||||
RECIPE_MAINTAINER_pn-python-docutils = "Laurentiu Palcu <laurentiu.palcu@intel.com>"
|
||||
RECIPE_MAINTAINER_pn-python-gst = "Laurentiu Palcu <laurentiu.palcu@intel.com>"
|
||||
RECIPE_MAINTAINER_pn-python-imaging = "Laurentiu Palcu <laurentiu.palcu@intel.com>"
|
||||
RECIPE_MAINTAINER_pn-python-pycairo = "Laurentiu Palcu <laurentiu.palcu@intel.com>"
|
||||
@@ -635,7 +644,6 @@ RECIPE_MAINTAINER_pn-tiff = "Saul Wold <sgw@linux.intel.com>"
|
||||
RECIPE_MAINTAINER_pn-time = "Saul Wold <sgw@linux.intel.com>"
|
||||
RECIPE_MAINTAINER_pn-tiny-init = "Saul Wold <sgw@linux.intel.com>"
|
||||
RECIPE_MAINTAINER_pn-trace-cmd = "Darren Hart <dvhart@linux.intel.com>"
|
||||
RECIPE_MAINTAINER_pn-transfig = "Cristiana Voicu <cristiana.voicu@intel.com>"
|
||||
RECIPE_MAINTAINER_pn-tremor = "Cristian Iorga <cristian.iorga@intel.com>"
|
||||
RECIPE_MAINTAINER_pn-tslib = "Paul Eggleton <paul.eggleton@linux.intel.com>"
|
||||
RECIPE_MAINTAINER_pn-ttf-bitstream-vera = "Valentin Popa <valentin.popa@intel.com>"
|
||||
@@ -654,6 +662,7 @@ RECIPE_MAINTAINER_pn-usbutils = "Cristiana Voicu <cristiana.voicu@intel.com>"
|
||||
RECIPE_MAINTAINER_pn-util-linux = "Saul Wold <sgw@linux.intel.com>"
|
||||
RECIPE_MAINTAINER_pn-util-macros = "Saul Wold <sgw@linux.intel.com>"
|
||||
RECIPE_MAINTAINER_pn-v86d = "Laurentiu Palcu <laurentiu.palcu@intel.com>"
|
||||
RECIPE_MAINTAINER_pn-vala = "Ross Burton <ross.burton@intel.com>"
|
||||
RECIPE_MAINTAINER_pn-valgrind = "Cristiana Voicu <cristiana.voicu@intel.com>"
|
||||
RECIPE_MAINTAINER_pn-videoproto = "Valentin Popa <valentin.popa@intel.com>"
|
||||
RECIPE_MAINTAINER_pn-vte ="Saul Wold <sgw@linux.intel.com>"
|
||||
@@ -704,10 +713,10 @@ RECIPE_MAINTAINER_pn-xineramaproto = "Laurentiu Palcu <laurentiu.palcu@intel.com
|
||||
RECIPE_MAINTAINER_pn-xinetd = "Laurentiu Palcu <laurentiu.palcu@intel.com>"
|
||||
RECIPE_MAINTAINER_pn-xinit = "Laurentiu Palcu <laurentiu.palcu@intel.com>"
|
||||
RECIPE_MAINTAINER_pn-xinput = "Laurentiu Palcu <laurentiu.palcu@intel.com>"
|
||||
RECIPE_MAINTAINER_pn-xinput-calibrator = "Laurentiu Palcu <laurentiu.palcu@intel.com>"
|
||||
RECIPE_MAINTAINER_pn-xkbcomp = "Laurentiu Palcu <laurentiu.palcu@intel.com>"
|
||||
RECIPE_MAINTAINER_pn-xkeyboard-config = "Laurentiu Palcu <laurentiu.palcu@intel.com>"
|
||||
RECIPE_MAINTAINER_pn-xmodmap = "Laurentiu Palcu <laurentiu.palcu@intel.com>"
|
||||
RECIPE_MAINTAINER_pn-xorg-cf-files = "Saul Wold <sgw@linux.intel.com>"
|
||||
RECIPE_MAINTAINER_pn-xorg-minimal-fonts = "Laurentiu Palcu <laurentiu.palcu@intel.com>"
|
||||
RECIPE_MAINTAINER_pn-xprop = "Laurentiu Palcu <laurentiu.palcu@intel.com>"
|
||||
RECIPE_MAINTAINER_pn-xproto = "Laurentiu Palcu <laurentiu.palcu@intel.com>"
|
||||
|
||||
@@ -215,6 +215,8 @@ REGEX_pn-prelink = "(?P<pver>cross_prelink)"
|
||||
REGEX_URI_pn-psmisc = "http://sourceforge.net/projects/psmisc/files/psmisc/"
|
||||
REGEX_pn-psmisc = "[hH][rR][eE][fF]=\"http://sourceforge.net/projects/psmisc/files/psmisc/psmisc\-(?P<pver>((\d+[\.\-_]*)+))\.tar\.gz/download\""
|
||||
REGEX_URI_pn-python-argparse = "https://code.google.com/p/argparse/downloads/list"
|
||||
REGEX_URI_pn-python-docutils = "http://sourceforge.net/projects/docutils/files/docutils/"
|
||||
REGEX_pn-python-docutils = "[hH][rR][eE][fF]=\"/projects/docutils/files/docutils/docutils\-(?P<pver>((\d+[\.\-_]*)+)).*/\""
|
||||
REGEX_URI_pn-python-pycurl = "http://pycurl.sourceforge.net/download/"
|
||||
REGEX_pn-python-pycurl = "[hH][rR][eE][fF]=\"pycurl-(?P<pver>((\d+[\.\-_]*)+)).tar.gz\""
|
||||
REGEX_URI_pn-python-scons = "http://sourceforge.net/projects/scons/files/scons/"
|
||||
@@ -257,8 +259,6 @@ REGEX_URI_pn-tiff = "ftp://ftp.remotesensing.org/pub/libtiff/"
|
||||
REGEX_pn-tiff = "[hH][rR][eE][fF]=\"ftp://ftp.remotesensing.org:21/pub/libtiff/tiff-(?P<pver>((\d+[\.\-_]*)+))\.tar\.gz\""
|
||||
REGEX_URI_pn-tiff-native = "ftp://ftp.remotesensing.org/pub/libtiff/"
|
||||
REGEX_pn-tiff-native = "[hH][rR][eE][fF]=\"ftp://ftp.remotesensing.org:21/pub/libtiff/tiff-(?P<pver>((\d+[\.\-_]*)+))\.tar\.gz\""
|
||||
REGEX_URI_pn-transfig-native = "http://sourceforge.net/projects/mcj/files/mcj-source/"
|
||||
REGEX_pn-transfig-native = "[hH][rR][eE][fF]=\"http://sourceforge.net/projects/mcj/files/mcj-source/transfig.(?P<pver>((\d+[\.\-_]*)+[a-z]?)).tar.gz/download\""
|
||||
REGEX_URI_pn-tslib = "http://sourceforge.net/projects/tslib.berlios/files/"
|
||||
REGEX_pn-tslib = "[hH][rR][eE][fF]=\"http://sourceforge.net/projects/tslib.berlios/files/tslib\-(?P<pver>((\d+[\.\-_]*)+))\.tar\.bz2/download\""
|
||||
REGEX_URI_pn-tzdata = "ftp://ftp.iana.org/tz/releases/"
|
||||
|
||||
@@ -127,7 +127,6 @@ RECIPE_COLOR_pn-hostap-conf = "red"
|
||||
RECIPE_COLOR_pn-hostap-utils="yellow"
|
||||
RECIPE_COLOR_pn-icon-naming-utils = "red"
|
||||
RECIPE_COLOR_pn-icu = "yellow"
|
||||
RECIPE_COLOR_pn-imake = "red"
|
||||
RECIPE_COLOR_pn-initramfs-boot = "yellow"
|
||||
RECIPE_COLOR_pn-initramfs-live-boot = "yellow"
|
||||
RECIPE_COLOR_pn-initramfs-live-install = "yellow"
|
||||
@@ -383,7 +382,6 @@ RECIPE_COLOR_pn-telepathy-gabble = "red"
|
||||
RECIPE_COLOR_pn-tidy = "red"
|
||||
RECIPE_COLOR_pn-time = "yellow"
|
||||
RECIPE_COLOR_pn-tinylogin = "yellow"
|
||||
RECIPE_COLOR_pn-transfig = "yellow"
|
||||
RECIPE_COLOR_pn-trapproto = "yellow"
|
||||
RECIPE_COLOR_pn-tslib = "yellow"
|
||||
RECIPE_COLOR_pn-ttf-bitstream-vera = "yellow"
|
||||
|
||||
@@ -137,11 +137,13 @@ RECIPE_UPSTREAM_VERSION_pn-libiconv = "1.14"
|
||||
RECIPE_UPSTREAM_DATE_pn-libiconv = "Aug 07, 2011"
|
||||
CHECK_DATE_pn-libiconv = "Aug 30, 2012"
|
||||
RECIPE_NO_UPDATE_REASON_pn-libnl = "libnl-3.2.2 is incompatible with libnl2, so no Upgrade"
|
||||
RECIPE_NO_UPDATE_REASON_pn-libpng = "1.4.3 and later changes the API and breaks libmatchbox. Sticking with the 1.2.x series instead"
|
||||
RECIPE_UPSTREAM_VERSION_pn-libsoup = "2.41.90"
|
||||
RECIPE_UPSTREAM_VERSION_pn-libpng = "1.6.6"
|
||||
RECIPE_UPSTREAM_DATE_pn-libpng = "Sep 16, 2013"
|
||||
CHECK_DATE_pn-libpng = "Oct 02, 2013"
|
||||
RECIPE_UPSTREAM_VERSION_pn-libpng12 = "1.2.50"
|
||||
RECIPE_UPSTREAM_DATE_pn-libpng12 = "Jul 10, 2012"
|
||||
CHECK_DATE_pn-libpng12 = "Aug 21, 2013"
|
||||
CHECK_DATE_pn-libpng12 = "Oct 02, 2013"
|
||||
RECIPE_UPSTREAM_DATE_pn-libsoup = "Feb 19, 2013"
|
||||
CHECK_DATE_pn-libsoup = "Mar 5, 2013"
|
||||
RECIPE_NO_UPDATE_REASON_pn-libsoup = "2.41.90 is unstable"
|
||||
@@ -164,7 +166,7 @@ CHECK_DATE_pn-makedevs = "Aug 31, 2012"
|
||||
RECIPE_UPSTREAM_VERSION_pn-meta-ide-support = "check"
|
||||
RECIPE_UPSTREAM_VERSION_pn-minicom = "2.6.2"
|
||||
RECIPE_UPSTREAM_DATE_pn-minicom = "Feb 06, 2013"
|
||||
CHECK_DATE_pn-minicom = "Jun 10, 2013"
|
||||
CHECK_DATE_pn-minicom = "Oct 02, 2013"
|
||||
RECIPE_UPSTREAM_DATE_pn-module-init-tools = "Jun 02, 2011"
|
||||
RECIPE_UPSTREAM_VERSION_pn-module-init-tools = "3.15"
|
||||
CHECK_DATE_pn-module-init-tools = "Aug 31, 2012"
|
||||
@@ -203,9 +205,9 @@ CHECK_DATE_pn-rpm = "Sep 03, 2012"
|
||||
RECIPE_UPSTREAM_VERSION_pn-run-postinsts = "check"
|
||||
RECIPE_NO_UPDATE_REASON_pn-sato-screenshot = "PRS Reports Incorrectly"
|
||||
RECIPE_NO_UPDATE_REASON_pn-socat = "2.0.0 is beta"
|
||||
RECIPE_UPSTREAM_VERSION_pn-sqlite3 = "3.7.17"
|
||||
RECIPE_UPSTREAM_DATE_pn-sqlite3 = "Aug 20, 2013"
|
||||
CHECK_DATE_pn-sqlite3= "Aug 21, 2013"
|
||||
RECIPE_UPSTREAM_VERSION_pn-sqlite3 = "3.8.0.2"
|
||||
RECIPE_UPSTREAM_DATE_pn-sqlite3 = "Sep 03, 2013"
|
||||
CHECK_DATE_pn-sqlite3= "Oct 02, 2013"
|
||||
RECIPE_UPSTREAM_VERSION_pn-squashfs-tools = "4.2"
|
||||
RECIPE_UPSTREAM_DATE_pn-squashfs-tools = "Feb 28, 2011"
|
||||
CHECK_DATE_pn-squashfs-tools = "Nov 09, 2012"
|
||||
|
||||
@@ -72,22 +72,20 @@ CONNECTIVITY_CHECK_URIS ?= " \
|
||||
http://bugzilla.yoctoproject.org/report.cgi"
|
||||
|
||||
SANITY_TESTED_DISTROS ?= " \
|
||||
Poky-1.3 \n \
|
||||
Poky-1.4 \n \
|
||||
Poky-1.5 \n \
|
||||
Ubuntu-12.04 \n \
|
||||
Ubuntu-12.10 \n \
|
||||
Ubuntu-13.04 \n \
|
||||
Fedora-17 \n \
|
||||
Fedora-18 \n \
|
||||
CentOS-6.3 \n \
|
||||
Fedora-19 \n \
|
||||
CentOS-6.4 \n \
|
||||
Debian-6.0 \n \
|
||||
Debian-6.0.7 \n \
|
||||
Debian-7.0 \n \
|
||||
Debian-7.1 \n \
|
||||
SUSE-LINUX-12.2 \n \
|
||||
openSUSE-project-12.3 \n \
|
||||
"
|
||||
"
|
||||
|
||||
# Default hash policy for distro
|
||||
BB_SIGNATURE_HANDLER ?= 'OEBasicHash'
|
||||
|
||||
@@ -61,15 +61,15 @@ DISK_SIGNATURE ?= "${DISK_SIGNATURE_GENERATED}"
|
||||
SYSLINUX_ROOT ?= "root=/dev/sda2"
|
||||
SYSLINUX_TIMEOUT ?= "10"
|
||||
|
||||
populate() {
|
||||
DEST=$1
|
||||
install -d ${DEST}
|
||||
boot_direct_populate() {
|
||||
dest=$1
|
||||
install -d $dest
|
||||
|
||||
# Install bzImage, initrd, and rootfs.img in DEST for all loaders to use.
|
||||
install -m 0644 ${STAGING_KERNEL_DIR}/bzImage ${DEST}/vmlinuz
|
||||
install -m 0644 ${STAGING_KERNEL_DIR}/bzImage $dest/vmlinuz
|
||||
|
||||
if [ -n "${INITRD}" ] && [ -s "${INITRD}" ]; then
|
||||
install -m 0644 ${INITRD} ${DEST}/initrd
|
||||
install -m 0644 ${INITRD} $dest/initrd
|
||||
fi
|
||||
|
||||
}
|
||||
@@ -79,13 +79,13 @@ build_boot_dd() {
|
||||
HDDIMG="${S}/hdd.image"
|
||||
IMAGE=${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.hdddirect
|
||||
|
||||
populate ${HDDDIR}
|
||||
boot_direct_populate $HDDDIR
|
||||
|
||||
if [ "${PCBIOS}" = "1" ]; then
|
||||
syslinux_hddimg_populate
|
||||
syslinux_hddimg_populate $HDDDIR
|
||||
fi
|
||||
if [ "${EFI}" = "1" ]; then
|
||||
grubefi_hddimg_populate
|
||||
grubefi_hddimg_populate $HDDDIR
|
||||
fi
|
||||
|
||||
BLOCKS=`du -bks $HDDDIR | cut -f 1`
|
||||
@@ -148,7 +148,12 @@ python do_bootdirectdisk() {
|
||||
def generate_disk_signature():
|
||||
import uuid
|
||||
|
||||
return str(uuid.uuid4())[:8]
|
||||
signature = str(uuid.uuid4())[:8]
|
||||
|
||||
if signature != '00000000':
|
||||
return signature
|
||||
else:
|
||||
return 'ffffffff'
|
||||
|
||||
def validate_disk_signature(d):
|
||||
import re
|
||||
|
||||
@@ -19,19 +19,24 @@
|
||||
|
||||
# External variables (also used by syslinux.bbclass)
|
||||
# ${INITRD} - indicates a filesystem image to use as an initrd (optional)
|
||||
# ${COMPRESSISO} - Transparent compress ISO, reduce size ~40% if set to 1
|
||||
# ${NOISO} - skip building the ISO image if set to 1
|
||||
# ${NOHDD} - skip building the HDD image if set to 1
|
||||
# ${ROOTFS} - indicates a filesystem image to include as the root filesystem (optional)
|
||||
|
||||
do_bootimg[depends] += "dosfstools-native:do_populate_sysroot \
|
||||
mtools-native:do_populate_sysroot \
|
||||
cdrtools-native:do_populate_sysroot"
|
||||
cdrtools-native:do_populate_sysroot \
|
||||
${@oe.utils.ifelse(d.getVar('COMPRESSISO'),'zisofs-tools-native:do_populate_sysroot','')}"
|
||||
|
||||
PACKAGES = " "
|
||||
EXCLUDE_FROM_WORLD = "1"
|
||||
|
||||
HDDDIR = "${S}/hddimg"
|
||||
ISODIR = "${S}/iso"
|
||||
EFIIMGDIR = "${S}/efi_img"
|
||||
COMPACT_ISODIR = "${S}/iso.z"
|
||||
COMPRESSISO ?= "0"
|
||||
|
||||
BOOTIMG_VOLUME_ID ?= "boot"
|
||||
BOOTIMG_EXTRA_SPACE ?= "512"
|
||||
@@ -48,15 +53,10 @@ def pcbios(d):
|
||||
pcbios = base_contains("MACHINE_FEATURES", "efi", "0", "1", d)
|
||||
return pcbios
|
||||
|
||||
def pcbios_class(d):
|
||||
if d.getVar("PCBIOS", True) == "1":
|
||||
return "syslinux"
|
||||
return ""
|
||||
|
||||
PCBIOS = "${@pcbios(d)}"
|
||||
PCBIOS_CLASS = "${@pcbios_class(d)}"
|
||||
|
||||
inherit ${PCBIOS_CLASS}
|
||||
# The syslinux is required for the isohybrid command and boot catalog
|
||||
inherit syslinux
|
||||
inherit ${EFI_CLASS}
|
||||
|
||||
populate() {
|
||||
@@ -86,25 +86,54 @@ build_iso() {
|
||||
populate ${ISODIR}
|
||||
|
||||
if [ "${PCBIOS}" = "1" ]; then
|
||||
syslinux_iso_populate
|
||||
syslinux_iso_populate ${ISODIR}
|
||||
fi
|
||||
if [ "${EFI}" = "1" ]; then
|
||||
grubefi_iso_populate
|
||||
grubefi_iso_populate ${ISODIR}
|
||||
build_fat_img ${EFIIMGDIR} ${ISODIR}/efi.img
|
||||
fi
|
||||
|
||||
if [ "${PCBIOS}" = "1" ]; then
|
||||
# EFI only
|
||||
if [ "${PCBIOS}" != "1" ] && [ "${EFI}" = "1" ] ; then
|
||||
# Work around bug in isohybrid where it requires isolinux.bin
|
||||
# In the boot catalog, even though it is not used
|
||||
mkdir -p ${ISODIR}/${ISOLINUXDIR}
|
||||
install -m 0644 ${STAGING_DATADIR}/syslinux/isolinux.bin ${ISODIR}${ISOLINUXDIR}
|
||||
fi
|
||||
|
||||
if [ "${COMPRESSISO}" = "1" ] ; then
|
||||
# create compact directory, compress iso
|
||||
mkdir -p ${COMPACT_ISODIR}
|
||||
mkzftree -z 9 -p 4 -F ${ISODIR}/rootfs.img ${COMPACT_ISODIR}/rootfs.img
|
||||
|
||||
# move compact iso to iso, then remove compact directory
|
||||
mv ${COMPACT_ISODIR}/rootfs.img ${ISODIR}/rootfs.img
|
||||
rm -Rf ${COMPACT_ISODIR}
|
||||
mkisofs_compress_opts="-R -z -D -l"
|
||||
else
|
||||
mkisofs_compress_opts="-r"
|
||||
fi
|
||||
|
||||
if [ "${PCBIOS}" = "1" ] && [ "${EFI}" != "1" ] ; then
|
||||
# PCBIOS only media
|
||||
mkisofs -V ${BOOTIMG_VOLUME_ID} \
|
||||
-o ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.iso \
|
||||
-b ${ISO_BOOTIMG} -c ${ISO_BOOTCAT} -r \
|
||||
-b ${ISO_BOOTIMG} -c ${ISO_BOOTCAT} \
|
||||
$mkisofs_compress_opts \
|
||||
${MKISOFS_OPTIONS} ${ISODIR}
|
||||
else
|
||||
bbnote "EFI-only ISO images are untested, please provide feedback."
|
||||
mkisofs -V ${BOOTIMG_VOLUME_ID} \
|
||||
# EFI only OR EFI+PCBIOS
|
||||
mkisofs -A ${BOOTIMG_VOLUME_ID} -V ${BOOTIMG_VOLUME_ID} \
|
||||
-o ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.iso \
|
||||
-r ${ISODIR}
|
||||
-b ${ISO_BOOTIMG} -c ${ISO_BOOTCAT} \
|
||||
$mkisofs_compress_opts ${MKISOFS_OPTIONS} \
|
||||
-eltorito-alt-boot -eltorito-platform efi \
|
||||
-b efi.img -no-emul-boot \
|
||||
${ISODIR}
|
||||
isohybrid_args="-u"
|
||||
fi
|
||||
|
||||
isohybrid ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.iso
|
||||
isohybrid $isohybrid_args ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.iso
|
||||
|
||||
cd ${DEPLOY_DIR_IMAGE}
|
||||
rm -f ${DEPLOY_DIR_IMAGE}/${IMAGE_LINK_NAME}.iso
|
||||
@@ -174,10 +203,10 @@ build_hddimg() {
|
||||
populate ${HDDDIR}
|
||||
|
||||
if [ "${PCBIOS}" = "1" ]; then
|
||||
syslinux_hddimg_populate
|
||||
syslinux_hddimg_populate ${HDDDIR}
|
||||
fi
|
||||
if [ "${EFI}" = "1" ]; then
|
||||
grubefi_hddimg_populate
|
||||
grubefi_hddimg_populate ${HDDDIR}
|
||||
fi
|
||||
|
||||
build_fat_img ${HDDDIR} ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.hddimg
|
||||
|
||||
@@ -73,12 +73,12 @@ target_exec_prefix := "${exec_prefix}"
|
||||
base_prefix = "${SDKPATHNATIVE}"
|
||||
prefix = "${SDKPATHNATIVE}${prefix_nativesdk}"
|
||||
exec_prefix = "${SDKPATHNATIVE}${prefix_nativesdk}"
|
||||
bindir = "${exec_prefix}/bin/${TUNE_PKGARCH}${TARGET_VENDOR}-${TARGET_OS}"
|
||||
bindir = "${exec_prefix}/bin/${TARGET_ARCH}${TARGET_VENDOR}-${TARGET_OS}"
|
||||
sbindir = "${bindir}"
|
||||
base_bindir = "${bindir}"
|
||||
base_sbindir = "${bindir}"
|
||||
libdir = "${exec_prefix}/lib/${TUNE_PKGARCH}${TARGET_VENDOR}-${TARGET_OS}"
|
||||
libexecdir = "${exec_prefix}/libexec/${TUNE_PKGARCH}${TARGET_VENDOR}-${TARGET_OS}"
|
||||
libdir = "${exec_prefix}/lib/${TARGET_ARCH}${TARGET_VENDOR}-${TARGET_OS}"
|
||||
libexecdir = "${exec_prefix}/libexec/${TARGET_ARCH}${TARGET_VENDOR}-${TARGET_OS}"
|
||||
|
||||
FILES_${PN} = "${prefix}"
|
||||
FILES_${PN}-dbg += "${prefix}/.debug \
|
||||
@@ -91,3 +91,7 @@ export PKG_CONFIG_SYSROOT_DIR = "${STAGING_DIR_HOST}"
|
||||
do_populate_sysroot[stamp-extra-info] = ""
|
||||
|
||||
USE_NLS = "${SDKUSE_NLS}"
|
||||
|
||||
# We have to us TARGET_ARCH but we care about the absolute value
|
||||
# and not any particular tune that is enabled.
|
||||
TARGET_ARCH[vardepsexclude] = "TUNE_ARCH"
|
||||
|
||||
@@ -56,6 +56,7 @@ libexecdir = "${exec_prefix}/libexec/${CROSS_TARGET_SYS_DIR}"
|
||||
|
||||
do_populate_sysroot[sstate-inputdirs] = "${SYSROOT_DESTDIR}/${STAGING_DIR_NATIVE}/"
|
||||
do_populate_sysroot[stamp-extra-info] = ""
|
||||
do_packagedata[stamp-extra-info] = ""
|
||||
|
||||
python cross_virtclass_handler () {
|
||||
classextend = e.data.getVar('BBCLASSEXTEND', True) or ""
|
||||
|
||||
@@ -27,6 +27,7 @@ target_exec_prefix = "${SDKPATHNATIVE}${prefix_nativesdk}"
|
||||
baselib = "lib"
|
||||
|
||||
do_populate_sysroot[stamp-extra-info] = ""
|
||||
do_packagedata[stamp-extra-info] = ""
|
||||
|
||||
# Need to force this to ensure consitency accross architectures
|
||||
EXTRA_OECONF_FPU = ""
|
||||
|
||||
@@ -47,14 +47,18 @@ distutils_do_install() {
|
||||
|
||||
if test -e ${D}${bindir} ; then
|
||||
for i in ${D}${bindir}/* ; do \
|
||||
sed -i -e s:${STAGING_BINDIR_NATIVE}/python-native/python:${bindir}/env\ python:g $i
|
||||
if [ ${PN} != "${BPN}-native" ]; then
|
||||
sed -i -e s:${STAGING_BINDIR_NATIVE}/python-native/python:${bindir}/env\ python:g $i
|
||||
fi
|
||||
sed -i -e s:${STAGING_BINDIR_NATIVE}:${bindir}:g $i
|
||||
done
|
||||
fi
|
||||
|
||||
if test -e ${D}${sbindir}; then
|
||||
for i in ${D}${sbindir}/* ; do \
|
||||
sed -i -e s:${STAGING_BINDIR_NATIVE}/python-native/python:${bindir}/env\ python:g $i
|
||||
if [ ${PN} != "${BPN}-native" ]; then
|
||||
sed -i -e s:${STAGING_BINDIR_NATIVE}/python-native/python:${bindir}/env\ python:g $i
|
||||
fi
|
||||
sed -i -e s:${STAGING_BINDIR_NATIVE}:${bindir}:g $i
|
||||
done
|
||||
fi
|
||||
|
||||
@@ -9,6 +9,7 @@
|
||||
# External variables
|
||||
# ${INITRD} - indicates a filesystem image to use as an initrd (optional)
|
||||
# ${ROOTFS} - indicates a filesystem image to include as the root filesystem (optional)
|
||||
# ${GRUB_GFXSERIAL} - set this to 1 to have graphics and serial in the boot menu
|
||||
# ${LABELS} - a list of targets for the automatic config
|
||||
# ${APPEND} - an override list of append strings for each label
|
||||
# ${GRUB_OPTS} - additional options to add to the config, ';' delimited # (optional)
|
||||
@@ -16,6 +17,7 @@
|
||||
|
||||
do_bootimg[depends] += "grub-efi-${TRANSLATED_TARGET_ARCH}-native:do_deploy"
|
||||
|
||||
GRUB_SERIAL ?= "console=ttyS0,115200"
|
||||
GRUBCFG = "${S}/grub.cfg"
|
||||
GRUB_TIMEOUT ?= "10"
|
||||
#FIXME: build this from the machine config
|
||||
@@ -40,11 +42,20 @@ grubefi_populate() {
|
||||
}
|
||||
|
||||
grubefi_iso_populate() {
|
||||
grubefi_populate ${ISODIR}
|
||||
iso_dir=$1
|
||||
grubefi_populate $iso_dir
|
||||
# Build a EFI directory to create efi.img
|
||||
mkdir -p ${EFIIMGDIR}/${EFIDIR}
|
||||
cp $iso_dir/${EFIDIR}/* ${EFIIMGDIR}${EFIDIR}
|
||||
cp $iso_dir/vmlinuz ${EFIIMGDIR}
|
||||
echo "EFI\\BOOT\\${GRUB_IMAGE}" > ${EFIIMGDIR}/startup.nsh
|
||||
if [ -f "$iso_dir/initrd" ] ; then
|
||||
cp $iso_dir/initrd ${EFIIMGDIR}
|
||||
fi
|
||||
}
|
||||
|
||||
grubefi_hddimg_populate() {
|
||||
grubefi_populate ${HDDDIR}
|
||||
grubefi_populate $1
|
||||
}
|
||||
|
||||
python build_grub_cfg() {
|
||||
@@ -55,6 +66,8 @@ python build_grub_cfg() {
|
||||
bb.error("WORKDIR not defined, unable to package")
|
||||
return
|
||||
|
||||
gfxserial = d.getVar('GRUB_GFXSERIAL', True) or ""
|
||||
|
||||
labels = d.getVar('LABELS', True)
|
||||
if not labels:
|
||||
bb.debug(1, "LABELS not defined, nothing to do")
|
||||
@@ -88,6 +101,12 @@ python build_grub_cfg() {
|
||||
else:
|
||||
cfgfile.write('timeout=50\n')
|
||||
|
||||
if gfxserial == "1":
|
||||
btypes = [ [ " graphics console", "" ],
|
||||
[ " serial console", d.getVar('GRUB_SERIAL', True) or "" ] ]
|
||||
else:
|
||||
btypes = [ [ "", "" ] ]
|
||||
|
||||
for label in labels.split():
|
||||
localdata = d.createCopy()
|
||||
|
||||
@@ -95,24 +114,27 @@ python build_grub_cfg() {
|
||||
if not overrides:
|
||||
raise bb.build.FuncFailed('OVERRIDES not defined')
|
||||
|
||||
localdata.setVar('OVERRIDES', label + ':' + overrides)
|
||||
bb.data.update_data(localdata)
|
||||
for btype in btypes:
|
||||
localdata.setVar('OVERRIDES', label + ':' + overrides)
|
||||
bb.data.update_data(localdata)
|
||||
|
||||
cfgfile.write('\nmenuentry \'%s\'{\n' % (label))
|
||||
if label == "install":
|
||||
label = "install-efi"
|
||||
cfgfile.write('linux /vmlinuz LABEL=%s' % (label))
|
||||
cfgfile.write('\nmenuentry \'%s%s\'{\n' % (label, btype[0]))
|
||||
lb = label
|
||||
if label == "install":
|
||||
lb = "install-efi"
|
||||
cfgfile.write('linux /vmlinuz LABEL=%s' % (lb))
|
||||
|
||||
append = localdata.getVar('APPEND', True)
|
||||
initrd = localdata.getVar('INITRD', True)
|
||||
append = localdata.getVar('APPEND', True)
|
||||
initrd = localdata.getVar('INITRD', True)
|
||||
|
||||
if append:
|
||||
cfgfile.write('%s' % (append))
|
||||
cfgfile.write('\n')
|
||||
if append:
|
||||
cfgfile.write('%s' % (append))
|
||||
cfgfile.write(' %s' % btype[1])
|
||||
cfgfile.write('\n')
|
||||
|
||||
if initrd:
|
||||
cfgfile.write('initrd /initrd')
|
||||
cfgfile.write('\n}\n')
|
||||
if initrd:
|
||||
cfgfile.write('initrd /initrd')
|
||||
cfgfile.write('\n}\n')
|
||||
|
||||
cfgfile.close()
|
||||
}
|
||||
|
||||
@@ -83,6 +83,8 @@ KERNEL_IMAGETYPE_FOR_MAKE = "${@(lambda s: s[:-3] if s[-3:] == ".gz" else s)(d.g
|
||||
|
||||
copy_initramfs() {
|
||||
echo "Copying initramfs into ./usr ..."
|
||||
# In case the directory is not created yet from the first pass compile:
|
||||
mkdir -p ${B}/usr
|
||||
# Find and use the first initramfs image archive type we find
|
||||
rm -f ${B}/usr/${INITRAMFS_IMAGE}-${MACHINE}.cpio
|
||||
for img in cpio.gz cpio.lzo cpio.lzma cpio.xz; do
|
||||
@@ -156,6 +158,12 @@ kernel_do_compile() {
|
||||
# different initramfs image. The way to do that in the kernel
|
||||
# is to specify:
|
||||
# make ...args... CONFIG_INITRAMFS_SOURCE=some_other_initramfs.cpio
|
||||
if [ "$use_alternate_initrd" = "" ] && [ "${INITRAMFS_TASK}" != "" ] ; then
|
||||
# The old style way of copying an prebuilt image and building it
|
||||
# is turned on via INTIRAMFS_TASK != ""
|
||||
copy_initramfs
|
||||
use_alternate_initrd=CONFIG_INITRAMFS_SOURCE=${B}/usr/${INITRAMFS_IMAGE}-${MACHINE}.cpio
|
||||
fi
|
||||
oe_runmake ${KERNEL_IMAGETYPE_FOR_MAKE} ${KERNEL_ALT_IMAGETYPE} CC="${KERNEL_CC}" LD="${KERNEL_LD}" ${KERNEL_EXTRA_ARGS} $use_alternate_initrd
|
||||
if test "${KERNEL_IMAGETYPE_FOR_MAKE}.gz" = "${KERNEL_IMAGETYPE}"; then
|
||||
gzip -9c < "${KERNEL_IMAGETYPE_FOR_MAKE}" > "${KERNEL_OUTPUT}"
|
||||
|
||||
@@ -128,12 +128,14 @@ def add_package_and_files(d):
|
||||
d.setVar('RRECOMMENDS_' + pn, "%s" % (pn_lic))
|
||||
|
||||
def copy_license_files(lic_files_paths, destdir):
|
||||
import shutil
|
||||
|
||||
bb.utils.mkdirhier(destdir)
|
||||
for (basename, path) in lic_files_paths:
|
||||
ret = bb.utils.copyfile(path, os.path.join(destdir, basename))
|
||||
# If the copy didn't occur, something horrible went wrong and we fail out
|
||||
if not ret:
|
||||
bb.warn("%s could not be copied for some reason. It may not exist. WARN for now." % path)
|
||||
try:
|
||||
ret = shutil.copyfile(path, os.path.join(destdir, basename))
|
||||
except Exception as e:
|
||||
bb.warn("Could not copy license file %s: %s" % (basename, e))
|
||||
|
||||
def find_license_files(d):
|
||||
"""
|
||||
|
||||
@@ -54,7 +54,7 @@ DEPENDS_GETTEXT = "gettext-native"
|
||||
PTEST_ENABLED = "0"
|
||||
|
||||
# Don't use site files for native builds
|
||||
export CONFIG_SITE = ""
|
||||
export CONFIG_SITE = "${COREBASE}/meta/site/native"
|
||||
|
||||
# set the compiler as well. It could have been set to something else
|
||||
export CC = "${CCACHE}${HOST_PREFIX}gcc ${HOST_CC_ARCH}"
|
||||
@@ -157,6 +157,7 @@ do_package_write_ipk[noexec] = "1"
|
||||
do_package_write_deb[noexec] = "1"
|
||||
do_package_write_rpm[noexec] = "1"
|
||||
|
||||
do_packagedata[stamp-extra-info] = ""
|
||||
do_populate_sysroot[stamp-extra-info] = ""
|
||||
|
||||
USE_NLS = "no"
|
||||
|
||||
@@ -87,5 +87,6 @@ addhandler nativesdk_virtclass_handler
|
||||
nativesdk_virtclass_handler[eventmask] = "bb.event.RecipePreFinalise"
|
||||
|
||||
do_populate_sysroot[stamp-extra-info] = ""
|
||||
do_packagedata[stamp-extra-info] = ""
|
||||
|
||||
USE_NLS = "${SDKUSE_NLS}"
|
||||
|
||||
@@ -953,6 +953,9 @@ python populate_packages () {
|
||||
|
||||
seen = []
|
||||
|
||||
# os.mkdir masks the permissions with umask so we have to unset it first
|
||||
oldumask = os.umask(0)
|
||||
|
||||
for pkg in package_list:
|
||||
root = os.path.join(pkgdest, pkg)
|
||||
bb.utils.mkdirhier(root)
|
||||
@@ -1025,6 +1028,7 @@ python populate_packages () {
|
||||
if ret is False or ret == 0:
|
||||
raise bb.build.FuncFailed("File population failed")
|
||||
|
||||
os.umask(oldumask)
|
||||
os.chdir(workdir)
|
||||
|
||||
unshipped = []
|
||||
|
||||
@@ -35,6 +35,11 @@ package_update_index_rpm () {
|
||||
done
|
||||
done
|
||||
|
||||
# FIXME stopgap for broken "bitbake package-index" since MULTILIB_PREFIX_LIST isn't set for that
|
||||
if [ "$target_archs" = "" ] ; then
|
||||
target_archs="${ALL_MULTILIB_PACKAGE_ARCHS}"
|
||||
fi
|
||||
|
||||
target_archs=`echo "$target_archs" | tr - _`
|
||||
|
||||
archs=`for arch in $target_archs $sdk_archs ; do
|
||||
@@ -386,6 +391,10 @@ EOF
|
||||
fi
|
||||
|
||||
# Construct install scriptlet wrapper
|
||||
# Scripts need to be ordered when executed, this ensures numeric order
|
||||
# If we ever run into needing more the 899 scripts, we'll have to
|
||||
# change num to start with 1000.
|
||||
#
|
||||
cat << EOF > ${WORKDIR}/scriptlet_wrapper
|
||||
#!/bin/bash
|
||||
|
||||
@@ -401,11 +410,13 @@ export NATIVE_ROOT=${STAGING_DIR_NATIVE}
|
||||
if [ \$? -ne 0 ]; then
|
||||
if [ \$4 -eq 1 ]; then
|
||||
mkdir -p \$1/etc/rpm-postinsts
|
||||
num=100
|
||||
while [ -e \$1/etc/rpm-postinsts/\${num}-* ]; do num=\$((num + 1)); done
|
||||
name=\`head -1 \$1/\$3 | cut -d' ' -f 2\`
|
||||
echo "#!\$2" > \$1/etc/rpm-postinsts/\${name}
|
||||
echo "# Arg: \$4" >> \$1/etc/rpm-postinsts/\${name}
|
||||
cat \$1/\$3 >> \$1/etc/rpm-postinsts/\${name}
|
||||
chmod +x \$1/etc/rpm-postinsts/\${name}
|
||||
echo "#!\$2" > \$1/etc/rpm-postinsts/\${num}-\${name}
|
||||
echo "# Arg: \$4" >> \$1/etc/rpm-postinsts/\${num}-\${name}
|
||||
cat \$1/\$3 >> \$1/etc/rpm-postinsts/\${num}-\${name}
|
||||
chmod +x \$1/etc/rpm-postinsts/\${num}-\${name}
|
||||
else
|
||||
echo "Error: pre/post remove scriptlet failed"
|
||||
fi
|
||||
@@ -473,7 +484,7 @@ EOF
|
||||
echo "Note: see `dirname ${BB_LOGFILE}`/log.do_${task}_attemptonly.${PID}"
|
||||
translate_oe_to_smart ${sdk_mode} --attemptonly $package_attemptonly
|
||||
echo "Attempting $pkgs_to_install" >> "`dirname ${BB_LOGFILE}`/log.do_${task}_attemptonly.${PID}"
|
||||
smart --data-dir=${target_rootfs}/var/lib/smart install --attempt -y ${pkgs_to_install} >> "`dirname ${BB_LOGFILE}`/log.do_${task}_attemptonly.${PID}" 2>&1
|
||||
smart --data-dir=${target_rootfs}/var/lib/smart install --attempt -y ${pkgs_to_install} >> "`dirname ${BB_LOGFILE}`/log.do_${task}_attemptonly.${PID}" 2>&1 || :
|
||||
fi
|
||||
}
|
||||
|
||||
|
||||
@@ -107,9 +107,14 @@ delayed_postinsts () {
|
||||
}
|
||||
|
||||
save_postinsts () {
|
||||
# Scripts need to be ordered when executed, this ensures numeric order
|
||||
# If we ever run into needing more the 899 scripts, we'll have to
|
||||
# change num to start with 1000.
|
||||
num=100
|
||||
for p in $(delayed_postinsts); do
|
||||
install -d ${IMAGE_ROOTFS}${sysconfdir}/deb-postinsts
|
||||
cp ${IMAGE_ROOTFS}/var/lib/dpkg/info/$p.postinst ${IMAGE_ROOTFS}${sysconfdir}/deb-postinsts/$p
|
||||
cp ${IMAGE_ROOTFS}/var/lib/dpkg/info/$p.postinst ${IMAGE_ROOTFS}${sysconfdir}/deb-postinsts/$num-$p
|
||||
num=`echo \$((num+1))`
|
||||
done
|
||||
}
|
||||
|
||||
|
||||
@@ -106,9 +106,14 @@ delayed_postinsts () {
|
||||
}
|
||||
|
||||
save_postinsts () {
|
||||
# Scripts need to be ordered when executed, this ensures numeric order
|
||||
# If we ever run into needing more the 899 scripts, we'll have to
|
||||
# change num to start with 1000.
|
||||
num=100
|
||||
for p in $(delayed_postinsts); do
|
||||
install -d ${IMAGE_ROOTFS}${sysconfdir}/ipk-postinsts
|
||||
cp ${IMAGE_ROOTFS}${OPKGLIBDIR}/opkg/info/$p.postinst ${IMAGE_ROOTFS}${sysconfdir}/ipk-postinsts/$p
|
||||
cp ${IMAGE_ROOTFS}${OPKGLIBDIR}/opkg/info/$p.postinst ${IMAGE_ROOTFS}${sysconfdir}/ipk-postinsts/$num-$p
|
||||
num=`echo \$((num+1))`
|
||||
done
|
||||
}
|
||||
|
||||
|
||||
@@ -12,7 +12,9 @@
|
||||
# ${APPEND} - an override list of append strings for each label
|
||||
# ${SYSLINUX_OPTS} - additional options to add to the syslinux file ';' delimited
|
||||
# ${SYSLINUX_SPLASH} - A background for the vga boot menu if using the boot menu
|
||||
# ${SYSLINUX_DEFAULT_CONSOLE} - set to "console=ttyX" to change kernel boot default console
|
||||
# ${SYSLINUX_SERIAL} - Set an alternate serial port or turn off serial with empty string
|
||||
# ${SYSLINUX_SERIAL_TTY} - Set alternate console=tty... kernel boot argument
|
||||
|
||||
do_bootimg[depends] += "syslinux:do_populate_sysroot \
|
||||
syslinux-native:do_populate_sysroot"
|
||||
@@ -21,7 +23,11 @@ SYSLINUXCFG = "${S}/syslinux.cfg"
|
||||
|
||||
ISOLINUXDIR = "/isolinux"
|
||||
SYSLINUXDIR = "/"
|
||||
# The kernel has an internal default console, which you can override with
|
||||
# a console=...some_tty...
|
||||
SYSLINUX_DEFAULT_CONSOLE ?= ""
|
||||
SYSLINUX_SERIAL ?= "0 115200"
|
||||
SYSLINUX_SERIAL_TTY ?= "ttyS0,115200"
|
||||
ISO_BOOTIMG = "isolinux/isolinux.bin"
|
||||
ISO_BOOTCAT = "isolinux/boot.cat"
|
||||
MKISOFS_OPTIONS = "-no-emul-boot -boot-load-size 4 -boot-info-table"
|
||||
@@ -36,28 +42,27 @@ syslinux_populate() {
|
||||
|
||||
# Install the config files
|
||||
install -m 0644 ${SYSLINUXCFG} ${DEST}${BOOTDIR}/${CFGNAME}
|
||||
if [ "${AUTO_SYSLINUXMENU}" = 1 ] ; then
|
||||
install -m 0644 ${STAGING_DATADIR}/syslinux/vesamenu.c32 ${DEST}${BOOTDIR}/vesamenu.c32
|
||||
install -m 0444 ${STAGING_DATADIR}/syslinux/libcom32.c32 ${DEST}${BOOTDIR}/libcom32.c32
|
||||
install -m 0444 ${STAGING_DATADIR}/syslinux/libutil.c32 ${DEST}${BOOTDIR}/libutil.c32
|
||||
if [ "${SYSLINUX_SPLASH}" != "" ] ; then
|
||||
install -m 0644 ${SYSLINUX_SPLASH} ${DEST}${BOOTDIR}/splash.lss
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
syslinux_iso_populate() {
|
||||
syslinux_populate ${ISODIR} ${ISOLINUXDIR} isolinux.cfg
|
||||
install -m 0644 ${STAGING_DATADIR}/syslinux/isolinux.bin ${ISODIR}${ISOLINUXDIR}
|
||||
if [ "${AUTO_SYSLINUXMENU}" = 1 ] ; then
|
||||
install -m 0644 ${STAGING_DATADIR}/syslinux/vesamenu.c32 ${ISODIR}${ISOLINUXDIR}/vesamenu.c32
|
||||
if [ "${SYSLINUX_SPLASH}" != "" ] ; then
|
||||
install -m 0644 ${SYSLINUX_SPLASH} ${ISODIR}${ISOLINUXDIR}/splash.lss
|
||||
fi
|
||||
fi
|
||||
iso_dir=$1
|
||||
syslinux_populate $iso_dir ${ISOLINUXDIR} isolinux.cfg
|
||||
install -m 0644 ${STAGING_DATADIR}/syslinux/isolinux.bin $iso_dir${ISOLINUXDIR}
|
||||
install -m 0644 ${STAGING_DATADIR}/syslinux/ldlinux.c32 $iso_dir${ISOLINUXDIR}
|
||||
}
|
||||
|
||||
syslinux_hddimg_populate() {
|
||||
syslinux_populate ${HDDDIR} ${SYSLINUXDIR} syslinux.cfg
|
||||
install -m 0444 ${STAGING_DATADIR}/syslinux/ldlinux.sys ${HDDDIR}${SYSLINUXDIR}/ldlinux.sys
|
||||
if [ "${AUTO_SYSLINUXMENU}" = 1 ] ; then
|
||||
install -m 0644 ${STAGING_DATADIR}/syslinux/vesamenu.c32 ${HDDDIR}${SYSLINUXDIR}/vesamenu.c32
|
||||
if [ "${SYSLINUX_SPLASH}" != "" ] ; then
|
||||
install -m 0644 ${SYSLINUX_SPLASH} ${HDDDIR}${SYSLINUXDIR}/splash.lss
|
||||
fi
|
||||
fi
|
||||
hdd_dir=$1
|
||||
syslinux_populate $hdd_dir ${SYSLINUXDIR} syslinux.cfg
|
||||
install -m 0444 ${STAGING_DATADIR}/syslinux/ldlinux.sys $hdd_dir${SYSLINUXDIR}/ldlinux.sys
|
||||
}
|
||||
|
||||
syslinux_hddimg_install() {
|
||||
@@ -105,6 +110,8 @@ python build_syslinux_cfg () {
|
||||
cfgfile.write('%s\n' % opt)
|
||||
|
||||
cfgfile.write('ALLOWOPTIONS 1\n');
|
||||
syslinux_default_console = d.getVar('SYSLINUX_DEFAULT_CONSOLE', True)
|
||||
syslinux_serial_tty = d.getVar('SYSLINUX_SERIAL_TTY', True)
|
||||
syslinux_serial = d.getVar('SYSLINUX_SERIAL', True)
|
||||
if syslinux_serial:
|
||||
cfgfile.write('SERIAL %s\n' % syslinux_serial)
|
||||
@@ -147,10 +154,10 @@ python build_syslinux_cfg () {
|
||||
localdata.setVar('OVERRIDES', label + ':' + overrides)
|
||||
bb.data.update_data(localdata)
|
||||
|
||||
btypes = [ [ "", "console=tty0" ] ]
|
||||
btypes = [ [ "", syslinux_default_console ] ]
|
||||
if menu and syslinux_serial:
|
||||
btypes = [ [ "Graphics console ", " console=tty0" ],
|
||||
[ "Serial console ", " console=ttyS0,115200" ] ]
|
||||
btypes = [ [ "Graphics console ", syslinux_default_console ],
|
||||
[ "Serial console ", syslinux_serial_tty ] ]
|
||||
|
||||
for btype in btypes:
|
||||
cfgfile.write('LABEL %s%s\nKERNEL /vmlinuz\n' % (btype[0], label))
|
||||
|
||||
@@ -48,6 +48,9 @@ if type systemctl >/dev/null 2>/dev/null; then
|
||||
fi
|
||||
}
|
||||
|
||||
|
||||
systemd_populate_packages[vardeps] += "systemd_prerm systemd_postinst"
|
||||
|
||||
python systemd_populate_packages() {
|
||||
if "systemd" not in d.getVar("DISTRO_FEATURES", True).split():
|
||||
return
|
||||
|
||||
@@ -175,3 +175,5 @@ def testimage_main(d):
|
||||
raise bb.build.FuncFailed("%s - FAILED to start qemu - check the task log and the boot log" % pn)
|
||||
finally:
|
||||
qemu.kill()
|
||||
|
||||
testimage_main[vardepsexclude] =+ "BB_ORIGENV"
|
||||
|
||||
@@ -10,7 +10,7 @@ toolchain_create_sdk_env_script () {
|
||||
script=${1:-${SDK_OUTPUT}/${SDKPATH}/environment-setup-${REAL_MULTIMACH_TARGET_SYS}}
|
||||
rm -f $script
|
||||
touch $script
|
||||
echo 'export PATH=${SDKPATHNATIVE}${bindir_nativesdk}:${SDKPATHNATIVE}${bindir_nativesdk}/${REAL_MULTIMACH_TARGET_SYS}:$PATH' >> $script
|
||||
echo 'export PATH=${SDKPATHNATIVE}${bindir_nativesdk}:${SDKPATHNATIVE}${bindir_nativesdk}/${TARGET_SYS}:$PATH' >> $script
|
||||
echo 'export PKG_CONFIG_SYSROOT_DIR=${SDKTARGETSYSROOT}' >> $script
|
||||
echo 'export PKG_CONFIG_PATH=${SDKTARGETSYSROOT}${libdir}/pkgconfig' >> $script
|
||||
echo 'export CONFIG_SITE=${SDKPATH}/site-config-${REAL_MULTIMACH_TARGET_SYS}' >> $script
|
||||
|
||||
@@ -54,6 +54,8 @@ python __anonymous() {
|
||||
|
||||
PACKAGESPLITFUNCS_prepend = "populate_packages_updatercd "
|
||||
|
||||
populate_packages_updatercd[vardeps] += "updatercd_prerm updatercd_postrm updatercd_postinst"
|
||||
|
||||
python populate_packages_updatercd () {
|
||||
def update_rcd_package(pkg):
|
||||
bb.debug(1, 'adding update-rc.d calls to postinst/postrm for %s' % pkg)
|
||||
|
||||
@@ -8,10 +8,13 @@ class PingTest(oeRuntimeTest):
|
||||
|
||||
def test_ping(self):
|
||||
output = ''
|
||||
status = None
|
||||
count = 0
|
||||
endtime = time.time() + 60
|
||||
while status != 0 and time.time() < endtime:
|
||||
while count < 5 and time.time() < endtime:
|
||||
proc = subprocess.Popen("ping -c 1 %s" % oeRuntimeTest.tc.qemu.ip, shell=True, stdout=subprocess.PIPE)
|
||||
output += proc.communicate()[0]
|
||||
status = proc.poll()
|
||||
self.assertEqual(status, 0, msg = "No echo reply, ping output is:\n%s" % output)
|
||||
if proc.poll() == 0:
|
||||
count += 1
|
||||
else:
|
||||
count = 0
|
||||
self.assertEqual(count, 5, msg = "Expected 5 consecutive replies, got %d.\nping output is:\n%s" % (count,output))
|
||||
|
||||
2
meta/recipes-bsp/grub/files/cfg
Normal file
@@ -0,0 +1,2 @@
|
||||
search.file /EFI/BOOT/grub.cfg root
|
||||
set prefix=($root)/EFI/BOOT
|
||||
@@ -23,6 +23,7 @@ PR = "r2"
|
||||
PN := "grub-efi-${TRANSLATED_TARGET_ARCH}-native"
|
||||
|
||||
SRC_URI = "ftp://ftp.gnu.org/gnu/grub/grub-${PV}.tar.gz \
|
||||
file://cfg \
|
||||
file://grub-2.00-fpmath-sse-387-fix.patch \
|
||||
file://grub-2.00-fix-enable_execute_stack-check.patch \
|
||||
file://grub-2.00-disable-help2man.patch \
|
||||
@@ -66,9 +67,11 @@ EXTRA_OECONF = "--with-platform=efi --disable-grub-mkfont \
|
||||
--enable-liblzma=no --enable-device-mapper=no --enable-libzfs=no"
|
||||
|
||||
do_mkimage() {
|
||||
./grub-mkimage -p /EFI/BOOT -d ./grub-core/ \
|
||||
# Search for the grub.cfg on the local boot media by using the
|
||||
# built in cfg file provided via this recipe
|
||||
./grub-mkimage -c ../cfg -p /EFI/BOOT -d ./grub-core/ \
|
||||
-O ${GRUB_TARGET}-efi -o ./${GRUB_IMAGE} \
|
||||
boot linux ext2 fat serial part_msdos part_gpt normal efi_gop
|
||||
boot linux ext2 fat serial part_msdos part_gpt normal efi_gop iso9660 search
|
||||
}
|
||||
addtask mkimage after do_compile before do_install
|
||||
|
||||
|
||||
@@ -0,0 +1,104 @@
|
||||
bind: port a patch to fix a build failure
|
||||
|
||||
mips1 does not support ll and sc instructions, and lead to below error, now
|
||||
we port a patch from debian to fix it
|
||||
[http://security.debian.org/debian-security/pool/updates/main/b/bind9/bind9_9.8.4.dfsg.P1-6+nmu2+deb7u1.diff.gz]
|
||||
|
||||
| {standard input}: Assembler messages:
|
||||
| {standard input}:47: Error: Opcode not supported on this processor: mips1 (mips1) `ll $3,0($6)'
|
||||
| {standard input}:50: Error: Opcode not supported on this processor: mips1 (mips1) `sc $3,0($6)'
|
||||
|
||||
Upstream-Status: Pending
|
||||
|
||||
Signed-off-by: Roy Li <rongqing.li@windriver.com>
|
||||
|
||||
--- bind9-9.8.4.dfsg.P1.orig/lib/isc/mips/include/isc/atomic.h
|
||||
+++ bind9-9.8.4.dfsg.P1/lib/isc/mips/include/isc/atomic.h
|
||||
@@ -31,18 +31,20 @@
|
||||
isc_atomic_xadd(isc_int32_t *p, int val) {
|
||||
isc_int32_t orig;
|
||||
|
||||
- /* add is a cheat, since MIPS has no mov instruction */
|
||||
- __asm__ volatile (
|
||||
- "1:"
|
||||
- "ll $3, %1\n"
|
||||
- "add %0, $0, $3\n"
|
||||
- "add $3, $3, %2\n"
|
||||
- "sc $3, %1\n"
|
||||
- "beq $3, 0, 1b"
|
||||
- : "=&r"(orig)
|
||||
- : "m"(*p), "r"(val)
|
||||
- : "memory", "$3"
|
||||
- );
|
||||
+ __asm__ __volatile__ (
|
||||
+ " .set push \n"
|
||||
+ " .set mips2 \n"
|
||||
+ " .set noreorder \n"
|
||||
+ " .set noat \n"
|
||||
+ "1: ll $1, %1 \n"
|
||||
+ " addu %0, $1, %2 \n"
|
||||
+ " sc %0, %1 \n"
|
||||
+ " beqz %0, 1b \n"
|
||||
+ " move %0, $1 \n"
|
||||
+ " .set pop \n"
|
||||
+ : "=&r" (orig), "+R" (*p)
|
||||
+ : "r" (val)
|
||||
+ : "memory");
|
||||
|
||||
return (orig);
|
||||
}
|
||||
@@ -52,16 +54,7 @@
|
||||
*/
|
||||
static inline void
|
||||
isc_atomic_store(isc_int32_t *p, isc_int32_t val) {
|
||||
- __asm__ volatile (
|
||||
- "1:"
|
||||
- "ll $3, %0\n"
|
||||
- "add $3, $0, %1\n"
|
||||
- "sc $3, %0\n"
|
||||
- "beq $3, 0, 1b"
|
||||
- :
|
||||
- : "m"(*p), "r"(val)
|
||||
- : "memory", "$3"
|
||||
- );
|
||||
+ *p = val;
|
||||
}
|
||||
|
||||
/*
|
||||
@@ -72,20 +65,23 @@
|
||||
static inline isc_int32_t
|
||||
isc_atomic_cmpxchg(isc_int32_t *p, int cmpval, int val) {
|
||||
isc_int32_t orig;
|
||||
+ isc_int32_t tmp;
|
||||
|
||||
- __asm__ volatile(
|
||||
- "1:"
|
||||
- "ll $3, %1\n"
|
||||
- "add %0, $0, $3\n"
|
||||
- "bne $3, %2, 2f\n"
|
||||
- "add $3, $0, %3\n"
|
||||
- "sc $3, %1\n"
|
||||
- "beq $3, 0, 1b\n"
|
||||
- "2:"
|
||||
- : "=&r"(orig)
|
||||
- : "m"(*p), "r"(cmpval), "r"(val)
|
||||
- : "memory", "$3"
|
||||
- );
|
||||
+ __asm__ __volatile__ (
|
||||
+ " .set push \n"
|
||||
+ " .set mips2 \n"
|
||||
+ " .set noreorder \n"
|
||||
+ " .set noat \n"
|
||||
+ "1: ll $1, %1 \n"
|
||||
+ " bne $1, %3, 2f \n"
|
||||
+ " move %2, %4 \n"
|
||||
+ " sc %2, %1 \n"
|
||||
+ " beqz %2, 1b \n"
|
||||
+ "2: move %0, $1 \n"
|
||||
+ " .set pop \n"
|
||||
+ : "=&r"(orig), "+R" (*p), "=r" (tmp)
|
||||
+ : "r"(cmpval), "r"(val)
|
||||
+ : "memory");
|
||||
|
||||
return (orig);
|
||||
}
|
||||
@@ -18,6 +18,7 @@ SRC_URI = "ftp://ftp.isc.org/isc/bind9/${PV}/${BPN}-${PV}.tar.gz \
|
||||
file://bind-CVE-2012-3817.patch \
|
||||
file://bind-CVE-2013-2266.patch \
|
||||
file://bind-Fix-CVE-2012-4244.patch \
|
||||
file://mips1-not-support-opcode.diff \
|
||||
"
|
||||
|
||||
SRC_URI[md5sum] = "cf31117c5d35af34d4c0702970ad9fb7"
|
||||
|
||||
@@ -6,3 +6,4 @@ Description = Wired network configuration
|
||||
Type = ethernet
|
||||
IPv4 =
|
||||
MAC = 52:54:00:12:34:56
|
||||
Nameservers = 8.8.8.8
|
||||
|
||||
@@ -24,12 +24,14 @@ usbdev.* 0:0 0660 */etc/mdev/usb.sh
|
||||
vcs.* 0:5 0660
|
||||
zero 0:0 0666
|
||||
|
||||
pcm.* 0:0 0660 =snd/
|
||||
control.* 0:0 0660 =snd/
|
||||
timer 0:0 0660 =snd/
|
||||
snd/pcm.* 0:0 0660
|
||||
snd/control.* 0:0 0660
|
||||
snd/timer 0:0 0660
|
||||
snd/seq 0:0 0660
|
||||
snd/mini.* 0:00 0660
|
||||
|
||||
event.* 0:0 0660 =input/ @/etc/mdev/find-touchscreen.sh
|
||||
mice 0:0 0660 =input/
|
||||
mouse.* 0:0 0660 =input/
|
||||
input/event.* 0:0 0660 @/etc/mdev/find-touchscreen.sh
|
||||
input/mice 0:0 0660
|
||||
input/mouse.* 0:0 0660
|
||||
|
||||
tun[0-9]* 0:0 0660 =net/
|
||||
|
||||
@@ -141,5 +141,8 @@ do_install_class-nativesdk() {
|
||||
# dbus-launch has no X support so lets not install it in case the host
|
||||
# has a more featured and useful version
|
||||
rm -f ${D}${bindir}/dbus-launch
|
||||
|
||||
# Remove /var/run to avoid QA error
|
||||
rm -rf ${D}${localstatedir}/run
|
||||
}
|
||||
BBCLASSEXTEND = "native nativesdk"
|
||||
|
||||
@@ -40,6 +40,7 @@ BINCOMMANDS = "dbclient ssh scp"
|
||||
EXTRA_OEMAKE = 'MULTI=1 SCPPROGRESS=1 PROGRAMS="${SBINCOMMANDS} ${BINCOMMANDS}"'
|
||||
EXTRA_OECONF += "\
|
||||
${@base_contains('DISTRO_FEATURES', 'pam', '--enable-pam', '--disable-pam', d)}"
|
||||
CFLAGS += "-DSFTPSERVER_PATH=\\"${libdir}/openssh/sftp-server\\""
|
||||
|
||||
do_install() {
|
||||
install -d ${D}${sysconfdir} \
|
||||
|
||||
@@ -13,6 +13,9 @@ SRC_URI = "${GNOME_MIRROR}/${BPN}/2.36/${BPN}-${PV}.tar.xz"
|
||||
SRC_URI[md5sum] = "fb9121742ed36d1723f296eea19dbb3c"
|
||||
SRC_URI[sha256sum] = "2108d55b0af3eea56ce256830bcaf1519d6337e0054ef2eff80f2c0ef0eb23f9"
|
||||
|
||||
PACKAGECONFIG ??= ""
|
||||
PACKAGECONFIG[pkcs11] = "--with-pkcs11,--without-pkcs11,p11-kit"
|
||||
|
||||
EXTRA_OECONF = "--without-ca-certificates --without-gnome-proxy --without-libproxy"
|
||||
|
||||
inherit autotools pkgconfig
|
||||
|
||||
@@ -21,7 +21,7 @@ IMAGE_FSTYPES = "vmdk"
|
||||
|
||||
inherit core-image
|
||||
|
||||
SRCREV ?= "28af70d9757432182eef86bb7b880504109dd96e"
|
||||
SRCREV ?= "bc37596e8f63614487e7d5c05befcb3be73a393f"
|
||||
SRC_URI = "git://git.yoctoproject.org/poky \
|
||||
file://Yocto_Build_Appliance.vmx \
|
||||
file://Yocto_Build_Appliance.vmxf \
|
||||
|
||||
@@ -20,6 +20,8 @@ RDEPENDS_${PN} = "\
|
||||
nativesdk-libtool \
|
||||
nativesdk-autoconf \
|
||||
nativesdk-automake \
|
||||
nativesdk-shadow \
|
||||
nativesdk-makedevs \
|
||||
"
|
||||
|
||||
RDEPENDS_${PN}_darwin = "\
|
||||
|
||||
@@ -44,6 +44,7 @@ RDEPENDS_packagegroup-self-hosted-host-tools = "\
|
||||
mc-helpers \
|
||||
mc-helpers-perl \
|
||||
mc-helpers-python \
|
||||
leafpad \
|
||||
midori \
|
||||
pcmanfm \
|
||||
parted \
|
||||
@@ -205,6 +206,7 @@ RDEPENDS_packagegroup-self-hosted-extended = "\
|
||||
xinetd \
|
||||
zip \
|
||||
zlib \
|
||||
xz \
|
||||
"
|
||||
|
||||
|
||||
|
||||
@@ -23,8 +23,8 @@ python __anonymous() {
|
||||
haspng = False
|
||||
for uri in splashfiles:
|
||||
fetcher = bb.fetch2.Fetch([uri], d)
|
||||
flocal = fetcher.localpath(uri)
|
||||
fbase = os.path.splitext(os.path.basename(flocal))[0]
|
||||
flocal = os.path.basename(fetcher.localpath(uri))
|
||||
fbase = os.path.splitext(flocal)[0]
|
||||
outsuffix = fetcher.ud[uri].parm.get("outsuffix")
|
||||
if not outsuffix:
|
||||
if fbase.startswith("psplash-"):
|
||||
@@ -74,18 +74,19 @@ python do_compile () {
|
||||
import shutil
|
||||
|
||||
# Build a separate executable for each splash image
|
||||
workdir = d.getVar('WORKDIR', True)
|
||||
convertscript = "%s/make-image-header.sh" % d.getVar('S', True)
|
||||
destfile = "%s/psplash-poky-img.h" % d.getVar('S', True)
|
||||
localfiles = d.getVar('SPLASH_LOCALPATHS', True).split()
|
||||
outputfiles = d.getVar('SPLASH_INSTALL', True).split()
|
||||
for localfile, outputfile in zip(localfiles, outputfiles):
|
||||
if localfile.endswith(".png"):
|
||||
outp = oe.utils.getstatusoutput('%s %s POKY' % (convertscript, localfile))
|
||||
outp = oe.utils.getstatusoutput('%s %s POKY' % (convertscript, os.path.join(workdir, localfile)))
|
||||
print(outp[1])
|
||||
fbase = os.path.splitext(os.path.basename(localfile))[0]
|
||||
fbase = os.path.splitext(localfile)[0]
|
||||
shutil.copyfile("%s-img.h" % fbase, destfile)
|
||||
else:
|
||||
shutil.copyfile(localfile, destfile)
|
||||
shutil.copyfile(os.path.join(workdir, localfile), destfile)
|
||||
# For some reason just updating the header is not enough, we have to touch the .c
|
||||
# file in order to get it to rebuild
|
||||
os.utime("%s/psplash.c" % d.getVar('S', True), None)
|
||||
|
||||
@@ -21,11 +21,6 @@ do_install() {
|
||||
install -m 0644 ${WORKDIR}/machineid.service ${D}${systemd_unitdir}/system
|
||||
ln -sf ../machineid.service ${D}${systemd_unitdir}/system/sysinit.target.wants/
|
||||
ln -sf ../machineid.service ${D}${systemd_unitdir}/system/basic.target.wants/
|
||||
|
||||
# hack to make old style sysvinit postinsts succeed
|
||||
install -d ${D}${bindir}
|
||||
echo "echo 1" > ${D}${bindir}/runlevel
|
||||
chmod 0755 ${D}${bindir}/runlevel
|
||||
}
|
||||
|
||||
SYSTEMD_DISABLED_SYSV_SERVICES = " \
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
[Unit]
|
||||
Description=Run pending postinsts
|
||||
DefaultDependencies=no
|
||||
ConditionPathExists=|/etc/rcS.d/S98run-postinsts
|
||||
ConditionPathExists=|/etc/rcS.d/S99run-postinsts
|
||||
After=systemd-remount-fs.service systemd-tmpfiles-setup.service tmp.mount
|
||||
Before=sysinit.target
|
||||
|
||||
[Service]
|
||||
ExecStart=/etc/rcS.d/S98run-postinsts
|
||||
ExecStart=/etc/rcS.d/S99run-postinsts
|
||||
RemainAfterExit=No
|
||||
Type=oneshot
|
||||
StandardOutput=syslog
|
||||
|
||||
@@ -53,6 +53,7 @@ DEPENDS += "libgcrypt"
|
||||
# Compress the journal
|
||||
PACKAGECONFIG[xz] = "--enable-xz,--disable-xz,xz"
|
||||
PACKAGECONFIG[tcp-wrappers] = "--enable-tcpwrap,--disable-tcpwrap,tcp-wrappers"
|
||||
PACKAGECONFIG[cryptsetup] = "--enable-libcryptsetup,--disable-libcryptsetup,cryptsetup"
|
||||
|
||||
CACHED_CONFIGUREVARS = "ac_cv_path_KILL=${base_bindir}/kill"
|
||||
|
||||
|
||||
@@ -7,6 +7,11 @@ BPN = "binutils"
|
||||
DEPENDS = "flex-native bison-native virtual/${HOST_PREFIX}gcc-crosssdk virtual/nativesdk-libc nativesdk-zlib nativesdk-gettext"
|
||||
EXTRA_OECONF += "--with-sysroot=${SDKPATH}/sysroots/${TUNE_PKGARCH}${TARGET_VENDOR}-${TARGET_OS} \
|
||||
"
|
||||
|
||||
# We have to point binutils at a sysroot but we don't need to rebuild if this changes
|
||||
# e.g. we switch between different machines with different tunes.
|
||||
EXTRA_OECONF[vardepsexclude] = "TUNE_PKGARCH"
|
||||
|
||||
do_install () {
|
||||
autotools_do_install
|
||||
|
||||
|
||||
@@ -7,8 +7,8 @@ SRC_URI = "${DEBIAN_MIRROR}/main/d/dpkg/dpkg_${PV}.tar.xz \
|
||||
|
||||
DEPENDS = "zlib bzip2 perl ncurses"
|
||||
DEPENDS_class-native = "bzip2-native zlib-native virtual/update-alternatives-native gettext-native perl-native"
|
||||
RDEPENDS_${PN} = "${VIRTUAL-RUNTIME_update-alternatives}"
|
||||
RDEPENDS_${PN}_class-native = ""
|
||||
RDEPENDS_${PN} = "${VIRTUAL-RUNTIME_update-alternatives} xz"
|
||||
RDEPENDS_${PN}_class-native = "xz"
|
||||
|
||||
S = "${WORKDIR}/${BPN}-${PV}"
|
||||
|
||||
|
||||
@@ -16,6 +16,8 @@ def get_gcc_fpu_setting(bb, d):
|
||||
return "--enable-e500_double"
|
||||
return ""
|
||||
|
||||
get_gcc_fpu_setting[vardepvalue] = "${@get_gcc_fpu_setting(bb, d)}"
|
||||
|
||||
def get_gcc_mips_plt_setting(bb, d):
|
||||
if d.getVar('TRANSLATED_TARGET_ARCH', True) in [ 'mips', 'mipsel' ] and 'mplt' in d.getVar('DISTRO_FEATURES',1).split() :
|
||||
return "--with-mips-plt"
|
||||
|
||||
@@ -48,6 +48,7 @@ EXTRA_OECONF = "${@['--enable-clocale=generic', ''][d.getVar('USE_NLS', True) !=
|
||||
${@get_gcc_mips_plt_setting(bb, d)} \
|
||||
${@get_gcc_multiarch_setting(bb, d)}"
|
||||
|
||||
export ac_cv_path_SED = 'sed'
|
||||
export gcc_cv_collect2_libs = 'none required'
|
||||
# We need to set gcc_cv_collect2_libs else there is cross-compilation badness
|
||||
# in the config.log files (which might not get generated until do_compile
|
||||
|
||||
@@ -14,6 +14,11 @@ EXTRA_OECONF_PATHS = "--with-gxx-include-dir=${SDKPATH}/sysroots/${TUNE_PKGARCH}
|
||||
--with-build-time-tools=${STAGING_DIR_NATIVE}${prefix_native}/${TARGET_SYS}/bin \
|
||||
--with-sysroot=${SDKPATH}/sysroots/${TUNE_PKGARCH}${TARGET_VENDOR}-${TARGET_OS} \
|
||||
--with-build-sysroot=${STAGING_DIR_TARGET}"
|
||||
# We have to point gcc at a sysroot but we don't need to rebuild if this changes
|
||||
# e.g. we switch between different machines with different tunes.
|
||||
EXTRA_OECONF_PATHS[vardepsexclude] = "TUNE_PKGARCH"
|
||||
TARGET_ARCH[vardepsexclude] = "TUNE_ARCH"
|
||||
get_gcc_fpu_setting[vardepvalue] = ""
|
||||
|
||||
#
|
||||
# gcc-cross looks and finds these in ${exec_prefix} but we're not so lucky
|
||||
|
||||
@@ -67,6 +67,10 @@ validate_config()
|
||||
|
||||
for selected_arch_type in $YOCTOADT_TARGETS; do
|
||||
found=0
|
||||
select_machine_var="\$YOCTOADT_TARGET_MACHINE_$selected_arch_type"
|
||||
select_machine=`eval echo $select_machine_var`
|
||||
show_error_banner=0
|
||||
|
||||
for supported_arch_type in $YOCTOADT_SUPPORTED_TARGETS; do
|
||||
if [ "$selected_arch_type" == "$supported_arch_type" ]; then
|
||||
found=1
|
||||
@@ -75,10 +79,18 @@ validate_config()
|
||||
done
|
||||
if [ $found == 0 ]; then
|
||||
echo_info "[ADT_INST] Error: YOCTADT_TARGETS in adt_installer.conf contains invalid entries: $YOCTOADT_TARGETS. Valid values are: $YOCTOADT_SUPPORTED_TARGETS"
|
||||
show_error_banner=1
|
||||
elif [ -z "$select_machine" ]; then
|
||||
echo_info "[ADT_INST] Error: No MACHINE was defined for $selected_arch_type architecture! This is needed to install the toolchain and the correct environment settings."
|
||||
echo_info "[ADT_INST] To do that, in adt-installer.conf, set the following variable: YOCTOADT_TARGET_MACHINE_$selected_arch_type"
|
||||
show_error_banner=1
|
||||
fi
|
||||
|
||||
if [ $show_error_banner == 1 ]; then
|
||||
echo -e "\n#############################################################################"
|
||||
echo -e "# Meet error(s) when installing Yocto ADT! Please check log file for details. "
|
||||
echo -e "#############################################################################\n"
|
||||
exit -1
|
||||
exit -1
|
||||
fi
|
||||
done
|
||||
|
||||
|
||||
@@ -51,11 +51,11 @@ YOCTOADT_TARGET_MACHINE_arm="qemuarm"
|
||||
YOCTOADT_TARGET_SYSROOT_LOC_arm="$HOME/test-yocto/$YOCTOADT_TARGET_MACHINE_arm"
|
||||
|
||||
|
||||
#Here's another example for setting up target arch of x86, by uncommenting it will trigger the installer to download and setup 2 sysroot environment for 2 target arches: arm and x86. If you want to add more target arch support, you can append more entries by following these samples
|
||||
#YOCTOADT_ROOTFS_x86="sato-sdk"
|
||||
#YOCTOADT_TARGET_SYSROOT_IMAGE_x86="sato-sdk"
|
||||
#YOCTOADT_TARGET_MACHINE_x86="qemux86"
|
||||
#YOCTOADT_TARGET_SYSROOT_LOC_x86="$HOME/test-yocto/$YOCTOADT_TARGET_MACHINE_x86"
|
||||
#Here's a template for setting up target arch of x86
|
||||
YOCTOADT_ROOTFS_x86="sato-sdk"
|
||||
YOCTOADT_TARGET_SYSROOT_IMAGE_x86="sato-sdk"
|
||||
YOCTOADT_TARGET_MACHINE_x86="qemux86"
|
||||
YOCTOADT_TARGET_SYSROOT_LOC_x86="$HOME/test-yocto/$YOCTOADT_TARGET_MACHINE_x86"
|
||||
|
||||
#Here's some template of other arches, which you need to change the value in ""
|
||||
#YOCTOADT_ROOTFS_x86_64="sato-sdk"
|
||||
|
||||
@@ -42,6 +42,28 @@ parse_config()
|
||||
esac
|
||||
}
|
||||
|
||||
get_sudo_app()
|
||||
{
|
||||
username=$(id -nu)
|
||||
|
||||
# find the owner of the parent
|
||||
dir=$1
|
||||
while [ 1 ]; do
|
||||
if [ -d $dir ]; then
|
||||
owner=$(stat -c %U $dir)
|
||||
break
|
||||
else
|
||||
dir=$(dirname $dir)
|
||||
fi
|
||||
done
|
||||
|
||||
if [ "$owner" = "$username" ]; then
|
||||
true
|
||||
else
|
||||
echo sudo
|
||||
fi
|
||||
}
|
||||
|
||||
|
||||
#let us install a qemu-native firstly
|
||||
#installation step 2
|
||||
@@ -60,26 +82,11 @@ fi
|
||||
|
||||
#Now begin to install native sdk and extract qemu rootfs which needs privilege rights
|
||||
#depending on the install location
|
||||
username=$(id -nu)
|
||||
|
||||
# find the owner of the parent
|
||||
dir=$NATIVE_INSTALL_DIR
|
||||
while [ 1 ]; do
|
||||
if [ -d $dir ]; then
|
||||
owner=$(stat -c %U $dir)
|
||||
break
|
||||
else
|
||||
dir=$(dirname $dir)
|
||||
fi
|
||||
done
|
||||
|
||||
if [ "$owner" = "$username" ]; then
|
||||
SUDO=""
|
||||
else
|
||||
echo_info "#######################################################################"
|
||||
echo_info "Please note from this point on installation requires sudo password ..."
|
||||
echo_info "#######################################################################"
|
||||
SUDO=sudo
|
||||
SUDO=$(get_sudo_app $NATIVE_INSTALL_DIR)
|
||||
if [ -n "$SUDO" ]; then
|
||||
echo_info "#######################################################################"
|
||||
echo_info "Please note from this point on installation requires sudo password ..."
|
||||
echo_info "#######################################################################"
|
||||
fi
|
||||
|
||||
#we need to make this directory firstly since opkg need to use it.
|
||||
@@ -188,8 +195,8 @@ escaped_sdkpath=$(echo $DEFAULT_INSTALL_FOLDER |sed -e "s:[\+\.]:\\\\\\\\\0:g")
|
||||
|
||||
# We don't change the script in-place since we may want the user to re-run
|
||||
# adt-installer script
|
||||
$SUDO sh -c "sed -e '"s:##DEFAULT_INSTALL_DIR##:$escaped_sdkpath:"' scripts/relocate_sdk.py > scripts/relocate_sdk_tmp.py"
|
||||
$SUDO chmod +x scripts/relocate_sdk_tmp.py
|
||||
sed -e "s:##DEFAULT_INSTALL_DIR##:$escaped_sdkpath:" scripts/relocate_sdk.py > scripts/relocate_sdk_tmp.py
|
||||
chmod +x scripts/relocate_sdk_tmp.py
|
||||
|
||||
dl_path=$(find $OECORE_NATIVE_SYSROOT/lib -name "ld-linux*")
|
||||
executable_files=$(find $OECORE_NATIVE_SYSROOT -type f -perm /111)
|
||||
@@ -249,6 +256,9 @@ target_machine=`eval echo $target_machine_var`
|
||||
sysroot_image_name="core-image-$target_sysroot_image-$target_machine.tar.bz2"
|
||||
#echo_info "Extracting rootfs: $sysroot_image_name, using pseudo..."
|
||||
|
||||
# sudo password might be needed to install the target sysroot
|
||||
SUDO=$(get_sudo_app $target_sysroot)
|
||||
|
||||
$SUDO scripts/extract_rootfs $sysroot_image_name $target_sysroot $OECORE_NATIVE_SYSROOT $user_inst_type
|
||||
check_result
|
||||
|
||||
@@ -260,6 +270,7 @@ else
|
||||
fi
|
||||
|
||||
if [ ! -z "$env_filename" ]; then
|
||||
SUDO=$(get_sudo_app $INSTALL_FOLDER)
|
||||
$SUDO sed -i -e "s%##SDKTARGETSYSROOT##%$target_sysroot%g" $env_filename
|
||||
else
|
||||
echo_info "[ADT_INST] Error: Failed to find environment script for arch: $1"
|
||||
|
||||
@@ -26,9 +26,6 @@ SRC_URI = "${GNU_MIRROR}/libtool/libtool-${PV}.tar.gz \
|
||||
SRC_URI[md5sum] = "d2f3b7d4627e69e13514a40e72a24d50"
|
||||
SRC_URI[sha256sum] = "b38de44862a987293cd3d8dfae1c409d514b6c4e794ebc93648febf9afc38918"
|
||||
|
||||
# Don't want paths to sed-native (or anything else) encoded
|
||||
CACHED_CONFIGUREVARS += "ac_cv_path_SED=sed"
|
||||
|
||||
do_compile_prepend () {
|
||||
# Sometimes this file doesn't get rebuilt, force the issue
|
||||
rm -f ${S}/libltdl/config/ltmain.sh
|
||||
|
||||
@@ -8,7 +8,6 @@ SRC_URI += "file://prefix.patch"
|
||||
inherit native
|
||||
|
||||
EXTRA_OECONF = " --with-libtool-sysroot=${STAGING_DIR_NATIVE}"
|
||||
CACHED_CONFIGUREVARS += "ac_cv_path_SED=/bin/sed"
|
||||
|
||||
do_configure_prepend () {
|
||||
# Remove any existing libtool m4 since old stale versions would break
|
||||
|
||||
@@ -10,126 +10,6 @@ http://lists.gnu.org/archive/html/libtool/2010-10/msg00048.html
|
||||
|
||||
-Khem Raj <raj.khem@gmail.com>
|
||||
|
||||
Index: libtool-2.4.2/configure
|
||||
===================================================================
|
||||
--- libtool-2.4.2.orig/configure
|
||||
+++ libtool-2.4.2/configure
|
||||
@@ -795,7 +795,7 @@ enable_static
|
||||
with_pic
|
||||
enable_fast_install
|
||||
with_gnu_ld
|
||||
-with_sysroot
|
||||
+with_libtool_sysroot
|
||||
enable_libtool_lock
|
||||
'
|
||||
ac_precious_vars='build_alias
|
||||
@@ -1451,7 +1451,7 @@ Optional Packages:
|
||||
--with-pic[=PKGS] try to use only PIC/non-PIC objects [default=use
|
||||
both]
|
||||
--with-gnu-ld assume the C compiler uses GNU ld [default=no]
|
||||
- --with-sysroot=DIR Search for dependent libraries within DIR
|
||||
+ --with-libtool-sysroot=DIR Search for dependent libraries within DIR
|
||||
(or the compiler's sysroot if not specified).
|
||||
|
||||
Some influential environment variables:
|
||||
@@ -6804,29 +6804,29 @@ fi
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for sysroot" >&5
|
||||
$as_echo_n "checking for sysroot... " >&6; }
|
||||
|
||||
-# Check whether --with-sysroot was given.
|
||||
-if test "${with_sysroot+set}" = set; then :
|
||||
- withval=$with_sysroot;
|
||||
+# Check whether --with-libtool-sysroot was given.
|
||||
+if test "${with_libtool_sysroot+set}" = set; then :
|
||||
+ withval=$with_libtool_sysroot;
|
||||
else
|
||||
- with_sysroot=no
|
||||
+ with_libtool_sysroot=no
|
||||
fi
|
||||
|
||||
|
||||
lt_sysroot=
|
||||
-case ${with_sysroot} in #(
|
||||
+case ${with_libtool_sysroot} in #(
|
||||
yes)
|
||||
if test "$GCC" = yes; then
|
||||
lt_sysroot=`$CC --print-sysroot 2>/dev/null`
|
||||
fi
|
||||
;; #(
|
||||
/*)
|
||||
- lt_sysroot=`echo "$with_sysroot" | sed -e "$sed_quote_subst"`
|
||||
+ lt_sysroot=`echo "$with_libtool_sysroot" | sed -e "$sed_quote_subst"`
|
||||
;; #(
|
||||
no|'')
|
||||
;; #(
|
||||
*)
|
||||
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${with_sysroot}" >&5
|
||||
-$as_echo "${with_sysroot}" >&6; }
|
||||
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${with_libtool_sysroot}" >&5
|
||||
+$as_echo "${with_libtool_sysroot}" >&6; }
|
||||
as_fn_error $? "The sysroot must be an absolute path." "$LINENO" 5
|
||||
;;
|
||||
esac
|
||||
Index: libtool-2.4.2/libltdl/configure
|
||||
===================================================================
|
||||
--- libtool-2.4.2.orig/libltdl/configure
|
||||
+++ libtool-2.4.2/libltdl/configure
|
||||
@@ -747,7 +747,7 @@ with_pic
|
||||
enable_fast_install
|
||||
enable_dependency_tracking
|
||||
with_gnu_ld
|
||||
-with_sysroot
|
||||
+with_libtool_sysroot
|
||||
enable_libtool_lock
|
||||
enable_ltdl_install
|
||||
'
|
||||
@@ -1395,7 +1395,7 @@ Optional Packages:
|
||||
--with-pic[=PKGS] try to use only PIC/non-PIC objects [default=use
|
||||
both]
|
||||
--with-gnu-ld assume the C compiler uses GNU ld [default=no]
|
||||
- --with-sysroot=DIR Search for dependent libraries within DIR
|
||||
+ --with-libtool-sysroot=DIR Search for dependent libraries within DIR
|
||||
(or the compiler's sysroot if not specified).
|
||||
|
||||
Some influential environment variables:
|
||||
@@ -6017,29 +6017,29 @@ fi
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for sysroot" >&5
|
||||
$as_echo_n "checking for sysroot... " >&6; }
|
||||
|
||||
-# Check whether --with-sysroot was given.
|
||||
-if test "${with_sysroot+set}" = set; then :
|
||||
- withval=$with_sysroot;
|
||||
+# Check whether --with-libtool-sysroot was given.
|
||||
+if test "${with_libtool_sysroot+set}" = set; then :
|
||||
+ withval=$with_libtool_sysroot;
|
||||
else
|
||||
- with_sysroot=no
|
||||
+ with_libtool_sysroot=no
|
||||
fi
|
||||
|
||||
|
||||
lt_sysroot=
|
||||
-case ${with_sysroot} in #(
|
||||
+case ${with_libtool_sysroot} in #(
|
||||
yes)
|
||||
if test "$GCC" = yes; then
|
||||
lt_sysroot=`$CC --print-sysroot 2>/dev/null`
|
||||
fi
|
||||
;; #(
|
||||
/*)
|
||||
- lt_sysroot=`echo "$with_sysroot" | sed -e "$sed_quote_subst"`
|
||||
+ lt_sysroot=`echo "$with_libtool_sysroot" | sed -e "$sed_quote_subst"`
|
||||
;; #(
|
||||
no|'')
|
||||
;; #(
|
||||
*)
|
||||
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${with_sysroot}" >&5
|
||||
-$as_echo "${with_sysroot}" >&6; }
|
||||
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${with_libtool_sysroot}" >&5
|
||||
+$as_echo "${with_libtool_sysroot}" >&6; }
|
||||
as_fn_error $? "The sysroot must be an absolute path." "$LINENO" 5
|
||||
;;
|
||||
esac
|
||||
Index: libtool-2.4.2/libltdl/m4/libtool.m4
|
||||
===================================================================
|
||||
--- libtool-2.4.2.orig/libltdl/m4/libtool.m4
|
||||
@@ -168,486 +48,6 @@ Index: libtool-2.4.2/libltdl/m4/libtool.m4
|
||||
AC_MSG_ERROR([The sysroot must be an absolute path.])
|
||||
;;
|
||||
esac
|
||||
Index: libtool-2.4.2/tests/cdemo/configure
|
||||
===================================================================
|
||||
--- libtool-2.4.2.orig/tests/cdemo/configure
|
||||
+++ libtool-2.4.2/tests/cdemo/configure
|
||||
@@ -734,7 +734,7 @@ enable_static
|
||||
with_pic
|
||||
enable_fast_install
|
||||
with_gnu_ld
|
||||
-with_sysroot
|
||||
+with_libtool_sysroot
|
||||
enable_libtool_lock
|
||||
'
|
||||
ac_precious_vars='build_alias
|
||||
@@ -1380,7 +1380,7 @@ Optional Packages:
|
||||
--with-pic[=PKGS] try to use only PIC/non-PIC objects [default=use
|
||||
both]
|
||||
--with-gnu-ld assume the C compiler uses GNU ld [default=no]
|
||||
- --with-sysroot=DIR Search for dependent libraries within DIR
|
||||
+ --with-libtool-sysroot=DIR Search for dependent libraries within DIR
|
||||
(or the compiler's sysroot if not specified).
|
||||
|
||||
Some influential environment variables:
|
||||
@@ -5897,29 +5897,29 @@ fi
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for sysroot" >&5
|
||||
$as_echo_n "checking for sysroot... " >&6; }
|
||||
|
||||
-# Check whether --with-sysroot was given.
|
||||
-if test "${with_sysroot+set}" = set; then :
|
||||
- withval=$with_sysroot;
|
||||
+# Check whether --with-libtool-sysroot was given.
|
||||
+if test "${with_libtool_sysroot+set}" = set; then :
|
||||
+ withval=$with_libtool_sysroot;
|
||||
else
|
||||
- with_sysroot=no
|
||||
+ with_libtool_sysroot=no
|
||||
fi
|
||||
|
||||
|
||||
lt_sysroot=
|
||||
-case ${with_sysroot} in #(
|
||||
+case ${with_libtool_sysroot} in #(
|
||||
yes)
|
||||
if test "$GCC" = yes; then
|
||||
lt_sysroot=`$CC --print-sysroot 2>/dev/null`
|
||||
fi
|
||||
;; #(
|
||||
/*)
|
||||
- lt_sysroot=`echo "$with_sysroot" | sed -e "$sed_quote_subst"`
|
||||
+ lt_sysroot=`echo "$with_libtool_sysroot" | sed -e "$sed_quote_subst"`
|
||||
;; #(
|
||||
no|'')
|
||||
;; #(
|
||||
*)
|
||||
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${with_sysroot}" >&5
|
||||
-$as_echo "${with_sysroot}" >&6; }
|
||||
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${with_libtool_sysroot}" >&5
|
||||
+$as_echo "${with_libtool_sysroot}" >&6; }
|
||||
as_fn_error $? "The sysroot must be an absolute path." "$LINENO" 5
|
||||
;;
|
||||
esac
|
||||
Index: libtool-2.4.2/tests/demo/configure
|
||||
===================================================================
|
||||
--- libtool-2.4.2.orig/tests/demo/configure
|
||||
+++ libtool-2.4.2/tests/demo/configure
|
||||
@@ -738,7 +738,7 @@ enable_static
|
||||
with_pic
|
||||
enable_fast_install
|
||||
with_gnu_ld
|
||||
-with_sysroot
|
||||
+with_libtool_sysroot
|
||||
enable_libtool_lock
|
||||
'
|
||||
ac_precious_vars='build_alias
|
||||
@@ -1384,7 +1384,7 @@ Optional Packages:
|
||||
--with-pic[=PKGS] try to use only PIC/non-PIC objects [default=use
|
||||
both]
|
||||
--with-gnu-ld assume the C compiler uses GNU ld [default=no]
|
||||
- --with-sysroot=DIR Search for dependent libraries within DIR
|
||||
+ --with-libtool-sysroot=DIR Search for dependent libraries within DIR
|
||||
(or the compiler's sysroot if not specified).
|
||||
|
||||
Some influential environment variables:
|
||||
@@ -5895,29 +5895,29 @@ fi
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for sysroot" >&5
|
||||
$as_echo_n "checking for sysroot... " >&6; }
|
||||
|
||||
-# Check whether --with-sysroot was given.
|
||||
-if test "${with_sysroot+set}" = set; then :
|
||||
- withval=$with_sysroot;
|
||||
+# Check whether --with-libtool-sysroot was given.
|
||||
+if test "${with_libtool_sysroot+set}" = set; then :
|
||||
+ withval=$with_libtool_sysroot;
|
||||
else
|
||||
- with_sysroot=no
|
||||
+ with_libtool_sysroot=no
|
||||
fi
|
||||
|
||||
|
||||
lt_sysroot=
|
||||
-case ${with_sysroot} in #(
|
||||
+case ${with_libtool_sysroot} in #(
|
||||
yes)
|
||||
if test "$GCC" = yes; then
|
||||
lt_sysroot=`$CC --print-sysroot 2>/dev/null`
|
||||
fi
|
||||
;; #(
|
||||
/*)
|
||||
- lt_sysroot=`echo "$with_sysroot" | sed -e "$sed_quote_subst"`
|
||||
+ lt_sysroot=`echo "$with_libtool_sysroot" | sed -e "$sed_quote_subst"`
|
||||
;; #(
|
||||
no|'')
|
||||
;; #(
|
||||
*)
|
||||
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${with_sysroot}" >&5
|
||||
-$as_echo "${with_sysroot}" >&6; }
|
||||
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${with_libtool_sysroot}" >&5
|
||||
+$as_echo "${with_libtool_sysroot}" >&6; }
|
||||
as_fn_error $? "The sysroot must be an absolute path." "$LINENO" 5
|
||||
;;
|
||||
esac
|
||||
Index: libtool-2.4.2/tests/depdemo/configure
|
||||
===================================================================
|
||||
--- libtool-2.4.2.orig/tests/depdemo/configure
|
||||
+++ libtool-2.4.2/tests/depdemo/configure
|
||||
@@ -736,7 +736,7 @@ enable_static
|
||||
with_pic
|
||||
enable_fast_install
|
||||
with_gnu_ld
|
||||
-with_sysroot
|
||||
+with_libtool_sysroot
|
||||
enable_libtool_lock
|
||||
'
|
||||
ac_precious_vars='build_alias
|
||||
@@ -1382,7 +1382,7 @@ Optional Packages:
|
||||
--with-pic[=PKGS] try to use only PIC/non-PIC objects [default=use
|
||||
both]
|
||||
--with-gnu-ld assume the C compiler uses GNU ld [default=no]
|
||||
- --with-sysroot=DIR Search for dependent libraries within DIR
|
||||
+ --with-libtool-sysroot=DIR Search for dependent libraries within DIR
|
||||
(or the compiler's sysroot if not specified).
|
||||
|
||||
Some influential environment variables:
|
||||
@@ -5892,29 +5892,29 @@ fi
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for sysroot" >&5
|
||||
$as_echo_n "checking for sysroot... " >&6; }
|
||||
|
||||
-# Check whether --with-sysroot was given.
|
||||
-if test "${with_sysroot+set}" = set; then :
|
||||
- withval=$with_sysroot;
|
||||
+# Check whether --with-libtool-sysroot was given.
|
||||
+if test "${with_libtool_sysroot+set}" = set; then :
|
||||
+ withval=$with_libtool_sysroot;
|
||||
else
|
||||
- with_sysroot=no
|
||||
+ with_libtool_sysroot=no
|
||||
fi
|
||||
|
||||
|
||||
lt_sysroot=
|
||||
-case ${with_sysroot} in #(
|
||||
+case ${with_libtool_sysroot} in #(
|
||||
yes)
|
||||
if test "$GCC" = yes; then
|
||||
lt_sysroot=`$CC --print-sysroot 2>/dev/null`
|
||||
fi
|
||||
;; #(
|
||||
/*)
|
||||
- lt_sysroot=`echo "$with_sysroot" | sed -e "$sed_quote_subst"`
|
||||
+ lt_sysroot=`echo "$with_libtool_sysroot" | sed -e "$sed_quote_subst"`
|
||||
;; #(
|
||||
no|'')
|
||||
;; #(
|
||||
*)
|
||||
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${with_sysroot}" >&5
|
||||
-$as_echo "${with_sysroot}" >&6; }
|
||||
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${with_libtool_sysroot}" >&5
|
||||
+$as_echo "${with_libtool_sysroot}" >&6; }
|
||||
as_fn_error $? "The sysroot must be an absolute path." "$LINENO" 5
|
||||
;;
|
||||
esac
|
||||
Index: libtool-2.4.2/tests/f77demo/configure
|
||||
===================================================================
|
||||
--- libtool-2.4.2.orig/tests/f77demo/configure
|
||||
+++ libtool-2.4.2/tests/f77demo/configure
|
||||
@@ -738,7 +738,7 @@ enable_static
|
||||
with_pic
|
||||
enable_fast_install
|
||||
with_gnu_ld
|
||||
-with_sysroot
|
||||
+with_libtool_sysroot
|
||||
enable_libtool_lock
|
||||
'
|
||||
ac_precious_vars='build_alias
|
||||
@@ -1387,7 +1387,7 @@ Optional Packages:
|
||||
--with-pic[=PKGS] try to use only PIC/non-PIC objects [default=use
|
||||
both]
|
||||
--with-gnu-ld assume the C compiler uses GNU ld [default=no]
|
||||
- --with-sysroot=DIR Search for dependent libraries within DIR
|
||||
+ --with-libtool-sysroot=DIR Search for dependent libraries within DIR
|
||||
(or the compiler's sysroot if not specified).
|
||||
|
||||
Some influential environment variables:
|
||||
@@ -6877,29 +6877,29 @@ fi
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for sysroot" >&5
|
||||
$as_echo_n "checking for sysroot... " >&6; }
|
||||
|
||||
-# Check whether --with-sysroot was given.
|
||||
-if test "${with_sysroot+set}" = set; then :
|
||||
- withval=$with_sysroot;
|
||||
+# Check whether --with-libtool-sysroot was given.
|
||||
+if test "${with_libtool_sysroot+set}" = set; then :
|
||||
+ withval=$with_libtool_sysroot;
|
||||
else
|
||||
- with_sysroot=no
|
||||
+ with_libtool_sysroot=no
|
||||
fi
|
||||
|
||||
|
||||
lt_sysroot=
|
||||
-case ${with_sysroot} in #(
|
||||
+case ${with_libtool_sysroot} in #(
|
||||
yes)
|
||||
if test "$GCC" = yes; then
|
||||
lt_sysroot=`$CC --print-sysroot 2>/dev/null`
|
||||
fi
|
||||
;; #(
|
||||
/*)
|
||||
- lt_sysroot=`echo "$with_sysroot" | sed -e "$sed_quote_subst"`
|
||||
+ lt_sysroot=`echo "$with_libtool_sysroot" | sed -e "$sed_quote_subst"`
|
||||
;; #(
|
||||
no|'')
|
||||
;; #(
|
||||
*)
|
||||
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${with_sysroot}" >&5
|
||||
-$as_echo "${with_sysroot}" >&6; }
|
||||
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${with_libtool_sysroot}" >&5
|
||||
+$as_echo "${with_libtool_sysroot}" >&6; }
|
||||
as_fn_error $? "The sysroot must be an absolute path." "$LINENO" 5
|
||||
;;
|
||||
esac
|
||||
Index: libtool-2.4.2/tests/fcdemo/configure
|
||||
===================================================================
|
||||
--- libtool-2.4.2.orig/tests/fcdemo/configure
|
||||
+++ libtool-2.4.2/tests/fcdemo/configure
|
||||
@@ -739,7 +739,7 @@ enable_static
|
||||
with_pic
|
||||
enable_fast_install
|
||||
with_gnu_ld
|
||||
-with_sysroot
|
||||
+with_libtool_sysroot
|
||||
enable_libtool_lock
|
||||
'
|
||||
ac_precious_vars='build_alias
|
||||
@@ -1388,7 +1388,7 @@ Optional Packages:
|
||||
--with-pic[=PKGS] try to use only PIC/non-PIC objects [default=use
|
||||
both]
|
||||
--with-gnu-ld assume the C compiler uses GNU ld [default=no]
|
||||
- --with-sysroot=DIR Search for dependent libraries within DIR
|
||||
+ --with-libtool-sysroot=DIR Search for dependent libraries within DIR
|
||||
(or the compiler's sysroot if not specified).
|
||||
|
||||
Some influential environment variables:
|
||||
@@ -6976,29 +6976,29 @@ fi
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for sysroot" >&5
|
||||
$as_echo_n "checking for sysroot... " >&6; }
|
||||
|
||||
-# Check whether --with-sysroot was given.
|
||||
-if test "${with_sysroot+set}" = set; then :
|
||||
- withval=$with_sysroot;
|
||||
+# Check whether --with-libtool-sysroot was given.
|
||||
+if test "${with_libtool_sysroot+set}" = set; then :
|
||||
+ withval=$with_libtool_sysroot;
|
||||
else
|
||||
- with_sysroot=no
|
||||
+ with_libtool_sysroot=no
|
||||
fi
|
||||
|
||||
|
||||
lt_sysroot=
|
||||
-case ${with_sysroot} in #(
|
||||
+case ${with_libtool_sysroot} in #(
|
||||
yes)
|
||||
if test "$GCC" = yes; then
|
||||
lt_sysroot=`$CC --print-sysroot 2>/dev/null`
|
||||
fi
|
||||
;; #(
|
||||
/*)
|
||||
- lt_sysroot=`echo "$with_sysroot" | sed -e "$sed_quote_subst"`
|
||||
+ lt_sysroot=`echo "$with_libtool_sysroot" | sed -e "$sed_quote_subst"`
|
||||
;; #(
|
||||
no|'')
|
||||
;; #(
|
||||
*)
|
||||
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${with_sysroot}" >&5
|
||||
-$as_echo "${with_sysroot}" >&6; }
|
||||
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${with_libtool_sysroot}" >&5
|
||||
+$as_echo "${with_libtool_sysroot}" >&6; }
|
||||
as_fn_error $? "The sysroot must be an absolute path." "$LINENO" 5
|
||||
;;
|
||||
esac
|
||||
Index: libtool-2.4.2/tests/mdemo/configure
|
||||
===================================================================
|
||||
--- libtool-2.4.2.orig/tests/mdemo/configure
|
||||
+++ libtool-2.4.2/tests/mdemo/configure
|
||||
@@ -742,7 +742,7 @@ enable_static
|
||||
with_pic
|
||||
enable_fast_install
|
||||
with_gnu_ld
|
||||
-with_sysroot
|
||||
+with_libtool_sysroot
|
||||
enable_libtool_lock
|
||||
'
|
||||
ac_precious_vars='build_alias
|
||||
@@ -1388,7 +1388,7 @@ Optional Packages:
|
||||
--with-pic[=PKGS] try to use only PIC/non-PIC objects [default=use
|
||||
both]
|
||||
--with-gnu-ld assume the C compiler uses GNU ld [default=no]
|
||||
- --with-sysroot=DIR Search for dependent libraries within DIR
|
||||
+ --with-libtool-sysroot=DIR Search for dependent libraries within DIR
|
||||
(or the compiler's sysroot if not specified).
|
||||
|
||||
Some influential environment variables:
|
||||
@@ -5924,29 +5924,29 @@ fi
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for sysroot" >&5
|
||||
$as_echo_n "checking for sysroot... " >&6; }
|
||||
|
||||
-# Check whether --with-sysroot was given.
|
||||
-if test "${with_sysroot+set}" = set; then :
|
||||
- withval=$with_sysroot;
|
||||
+# Check whether --with-libtool-sysroot was given.
|
||||
+if test "${with_libtool_sysroot+set}" = set; then :
|
||||
+ withval=$with_libtool_sysroot;
|
||||
else
|
||||
- with_sysroot=no
|
||||
+ with_libtool_sysroot=no
|
||||
fi
|
||||
|
||||
|
||||
lt_sysroot=
|
||||
-case ${with_sysroot} in #(
|
||||
+case ${with_libtool_sysroot} in #(
|
||||
yes)
|
||||
if test "$GCC" = yes; then
|
||||
lt_sysroot=`$CC --print-sysroot 2>/dev/null`
|
||||
fi
|
||||
;; #(
|
||||
/*)
|
||||
- lt_sysroot=`echo "$with_sysroot" | sed -e "$sed_quote_subst"`
|
||||
+ lt_sysroot=`echo "$with_libtool_sysroot" | sed -e "$sed_quote_subst"`
|
||||
;; #(
|
||||
no|'')
|
||||
;; #(
|
||||
*)
|
||||
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${with_sysroot}" >&5
|
||||
-$as_echo "${with_sysroot}" >&6; }
|
||||
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${with_libtool_sysroot}" >&5
|
||||
+$as_echo "${with_libtool_sysroot}" >&6; }
|
||||
as_fn_error $? "The sysroot must be an absolute path." "$LINENO" 5
|
||||
;;
|
||||
esac
|
||||
Index: libtool-2.4.2/tests/mdemo2/configure
|
||||
===================================================================
|
||||
--- libtool-2.4.2.orig/tests/mdemo2/configure
|
||||
+++ libtool-2.4.2/tests/mdemo2/configure
|
||||
@@ -734,7 +734,7 @@ enable_static
|
||||
with_pic
|
||||
enable_fast_install
|
||||
with_gnu_ld
|
||||
-with_sysroot
|
||||
+with_libtool_sysroot
|
||||
enable_libtool_lock
|
||||
'
|
||||
ac_precious_vars='build_alias
|
||||
@@ -1380,7 +1380,7 @@ Optional Packages:
|
||||
--with-pic[=PKGS] try to use only PIC/non-PIC objects [default=use
|
||||
both]
|
||||
--with-gnu-ld assume the C compiler uses GNU ld [default=no]
|
||||
- --with-sysroot=DIR Search for dependent libraries within DIR
|
||||
+ --with-libtool-sysroot=DIR Search for dependent libraries within DIR
|
||||
(or the compiler's sysroot if not specified).
|
||||
|
||||
Some influential environment variables:
|
||||
@@ -5897,29 +5897,29 @@ fi
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for sysroot" >&5
|
||||
$as_echo_n "checking for sysroot... " >&6; }
|
||||
|
||||
-# Check whether --with-sysroot was given.
|
||||
-if test "${with_sysroot+set}" = set; then :
|
||||
- withval=$with_sysroot;
|
||||
+# Check whether --with-libtool-sysroot was given.
|
||||
+if test "${with_libtool_sysroot+set}" = set; then :
|
||||
+ withval=$with_libtool_sysroot;
|
||||
else
|
||||
- with_sysroot=no
|
||||
+ with_libtool_sysroot=no
|
||||
fi
|
||||
|
||||
|
||||
lt_sysroot=
|
||||
-case ${with_sysroot} in #(
|
||||
+case ${with_libtool_sysroot} in #(
|
||||
yes)
|
||||
if test "$GCC" = yes; then
|
||||
lt_sysroot=`$CC --print-sysroot 2>/dev/null`
|
||||
fi
|
||||
;; #(
|
||||
/*)
|
||||
- lt_sysroot=`echo "$with_sysroot" | sed -e "$sed_quote_subst"`
|
||||
+ lt_sysroot=`echo "$with_libtool_sysroot" | sed -e "$sed_quote_subst"`
|
||||
;; #(
|
||||
no|'')
|
||||
;; #(
|
||||
*)
|
||||
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${with_sysroot}" >&5
|
||||
-$as_echo "${with_sysroot}" >&6; }
|
||||
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${with_libtool_sysroot}" >&5
|
||||
+$as_echo "${with_libtool_sysroot}" >&6; }
|
||||
as_fn_error $? "The sysroot must be an absolute path." "$LINENO" 5
|
||||
;;
|
||||
esac
|
||||
Index: libtool-2.4.2/tests/pdemo/configure
|
||||
===================================================================
|
||||
--- libtool-2.4.2.orig/tests/pdemo/configure
|
||||
+++ libtool-2.4.2/tests/pdemo/configure
|
||||
@@ -737,7 +737,7 @@ enable_static
|
||||
with_pic
|
||||
enable_fast_install
|
||||
with_gnu_ld
|
||||
-with_sysroot
|
||||
+with_libtool_sysroot
|
||||
enable_libtool_lock
|
||||
'
|
||||
ac_precious_vars='build_alias
|
||||
@@ -1383,7 +1383,7 @@ Optional Packages:
|
||||
--with-pic[=PKGS] try to use only PIC/non-PIC objects [default=use
|
||||
both]
|
||||
--with-gnu-ld assume the C compiler uses GNU ld [default=no]
|
||||
- --with-sysroot=DIR Search for dependent libraries within DIR
|
||||
+ --with-libtool-sysroot=DIR Search for dependent libraries within DIR
|
||||
(or the compiler's sysroot if not specified).
|
||||
|
||||
Some influential environment variables:
|
||||
@@ -5900,29 +5900,29 @@ fi
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for sysroot" >&5
|
||||
$as_echo_n "checking for sysroot... " >&6; }
|
||||
|
||||
-# Check whether --with-sysroot was given.
|
||||
-if test "${with_sysroot+set}" = set; then :
|
||||
- withval=$with_sysroot;
|
||||
+# Check whether --with-libtool-sysroot was given.
|
||||
+if test "${with_libtool_sysroot+set}" = set; then :
|
||||
+ withval=$with_libtool_sysroot;
|
||||
else
|
||||
- with_sysroot=no
|
||||
+ with_libtool_sysroot=no
|
||||
fi
|
||||
|
||||
|
||||
lt_sysroot=
|
||||
-case ${with_sysroot} in #(
|
||||
+case ${with_libtool_sysroot} in #(
|
||||
yes)
|
||||
if test "$GCC" = yes; then
|
||||
lt_sysroot=`$CC --print-sysroot 2>/dev/null`
|
||||
fi
|
||||
;; #(
|
||||
/*)
|
||||
- lt_sysroot=`echo "$with_sysroot" | sed -e "$sed_quote_subst"`
|
||||
+ lt_sysroot=`echo "$with_libtool_sysroot" | sed -e "$sed_quote_subst"`
|
||||
;; #(
|
||||
no|'')
|
||||
;; #(
|
||||
*)
|
||||
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${with_sysroot}" >&5
|
||||
-$as_echo "${with_sysroot}" >&6; }
|
||||
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${with_libtool_sysroot}" >&5
|
||||
+$as_echo "${with_libtool_sysroot}" >&6; }
|
||||
as_fn_error $? "The sysroot must be an absolute path." "$LINENO" 5
|
||||
;;
|
||||
esac
|
||||
Index: libtool-2.4.2/tests/sysroot.at
|
||||
===================================================================
|
||||
--- libtool-2.4.2.orig/tests/sysroot.at
|
||||
@@ -679,66 +79,6 @@ Index: libtool-2.4.2/tests/sysroot.at
|
||||
AC_SUBST([sysroot])
|
||||
AC_OUTPUT(Makefile)
|
||||
]])
|
||||
Index: libtool-2.4.2/tests/tagdemo/configure
|
||||
===================================================================
|
||||
--- libtool-2.4.2.orig/tests/tagdemo/configure
|
||||
+++ libtool-2.4.2/tests/tagdemo/configure
|
||||
@@ -744,7 +744,7 @@ enable_static
|
||||
with_pic
|
||||
enable_fast_install
|
||||
with_gnu_ld
|
||||
-with_sysroot
|
||||
+with_libtool_sysroot
|
||||
enable_libtool_lock
|
||||
'
|
||||
ac_precious_vars='build_alias
|
||||
@@ -1395,7 +1395,7 @@ Optional Packages:
|
||||
--with-pic[=PKGS] try to use only PIC/non-PIC objects [default=use
|
||||
both]
|
||||
--with-gnu-ld assume the C compiler uses GNU ld [default=no]
|
||||
- --with-sysroot=DIR Search for dependent libraries within DIR
|
||||
+ --with-libtool-sysroot=DIR Search for dependent libraries within DIR
|
||||
(or the compiler's sysroot if not specified).
|
||||
|
||||
Some influential environment variables:
|
||||
@@ -6916,29 +6916,29 @@ fi
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for sysroot" >&5
|
||||
$as_echo_n "checking for sysroot... " >&6; }
|
||||
|
||||
-# Check whether --with-sysroot was given.
|
||||
-if test "${with_sysroot+set}" = set; then :
|
||||
- withval=$with_sysroot;
|
||||
+# Check whether --with-libtool-sysroot was given.
|
||||
+if test "${with_libtool_sysroot+set}" = set; then :
|
||||
+ withval=$with_libtool_sysroot;
|
||||
else
|
||||
- with_sysroot=no
|
||||
+ with_libtool_sysroot=no
|
||||
fi
|
||||
|
||||
|
||||
lt_sysroot=
|
||||
-case ${with_sysroot} in #(
|
||||
+case ${with_libtool_sysroot} in #(
|
||||
yes)
|
||||
if test "$GCC" = yes; then
|
||||
lt_sysroot=`$CC --print-sysroot 2>/dev/null`
|
||||
fi
|
||||
;; #(
|
||||
/*)
|
||||
- lt_sysroot=`echo "$with_sysroot" | sed -e "$sed_quote_subst"`
|
||||
+ lt_sysroot=`echo "$with_libtool_sysroot" | sed -e "$sed_quote_subst"`
|
||||
;; #(
|
||||
no|'')
|
||||
;; #(
|
||||
*)
|
||||
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${with_sysroot}" >&5
|
||||
-$as_echo "${with_sysroot}" >&6; }
|
||||
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${with_libtool_sysroot}" >&5
|
||||
+$as_echo "${with_libtool_sysroot}" >&6; }
|
||||
as_fn_error $? "The sysroot must be an absolute path." "$LINENO" 5
|
||||
;;
|
||||
esac
|
||||
Index: libtool-2.4.2/tests/testsuite
|
||||
===================================================================
|
||||
--- libtool-2.4.2.orig/tests/testsuite
|
||||
|
||||
@@ -274,8 +274,20 @@ static void add_new_file(char *name, char *path, unsigned long uid,
|
||||
static void add_new_fifo(char *name, char *path, unsigned long uid,
|
||||
unsigned long gid, unsigned long mode)
|
||||
{
|
||||
if (mknod(path, mode, 0))
|
||||
error_msg_and_die("%s: file can not be created with mknod!", path);
|
||||
int status;
|
||||
struct stat sb;
|
||||
|
||||
memset(&sb, 0, sizeof(struct stat));
|
||||
status = stat(path, &sb);
|
||||
|
||||
|
||||
/* Update the mode if we exist and are a fifo already */
|
||||
if (status >= 0 && S_ISFIFO(sb.st_mode)) {
|
||||
chmod(path, mode);
|
||||
} else {
|
||||
if (mknod(path, mode, 0))
|
||||
error_msg_and_die("%s: file can not be created with mknod!", path);
|
||||
}
|
||||
chown(path, uid, gid);
|
||||
// printf("File: %s %s UID: %ld GID: %ld MODE: %04lo\n",
|
||||
// path, name, gid, uid, mode);
|
||||
@@ -465,8 +477,8 @@ int main(int argc, char **argv)
|
||||
error_msg_and_die("%s: not a proper device table file", optarg);
|
||||
break;
|
||||
case 'h':
|
||||
fprintf(stderr, helptext);
|
||||
exit(1);
|
||||
printf(helptext);
|
||||
exit(0);
|
||||
case 'r':
|
||||
case 'd': /* for compatibility with mkfs.jffs, genext2fs, etc... */
|
||||
if (rootdir != default_rootdir) {
|
||||
@@ -476,8 +488,11 @@ int main(int argc, char **argv)
|
||||
break;
|
||||
|
||||
case 'v':
|
||||
fprintf(stderr, "makedevs revision %.*s\n",
|
||||
printf("makedevs revision %.*s\n",
|
||||
(int) strlen(revtext) - 13, revtext + 11);
|
||||
exit(0);
|
||||
default:
|
||||
fprintf(stderr, helptext);
|
||||
exit(1);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -6,6 +6,8 @@ SRC_URI = "file://makedevs.c \
|
||||
file://COPYING.patch"
|
||||
PR = "r7"
|
||||
|
||||
FILES_${PN}_append_class-nativesdk = " ${datadir}"
|
||||
|
||||
do_configure() {
|
||||
install -m 0644 ${WORKDIR}/makedevs.c ${S}/
|
||||
}
|
||||
@@ -19,4 +21,9 @@ do_install() {
|
||||
install -m 0755 ${S}/makedevs ${D}${base_sbindir}/makedevs
|
||||
}
|
||||
|
||||
do_install_append_class-nativesdk() {
|
||||
install -d ${D}${datadir}
|
||||
install -m 644 ${COREBASE}/meta/files/device_table-minimal.txt ${D}${datadir}/
|
||||
}
|
||||
|
||||
BBCLASSEXTEND = "native nativesdk"
|
||||
|
||||
@@ -16,7 +16,13 @@ do_configure_prepend() {
|
||||
sed -i -e s:-Werror::g ${S}/libopkg/Makefile.am
|
||||
}
|
||||
|
||||
inherit autotools pkgconfig
|
||||
inherit autotools pkgconfig systemd
|
||||
|
||||
python () {
|
||||
if 'sysvinit' not in d.getVar("DISTRO_FEATURES", True).split():
|
||||
pn = d.getVar('PN', True)
|
||||
d.setVar('SYSTEMD_SERVICE_%s' % (pn), 'opkg-configure.service')
|
||||
}
|
||||
|
||||
target_localstatedir := "${localstatedir}"
|
||||
OPKGLIBDIR = "${target_localstatedir}/lib"
|
||||
@@ -49,6 +55,16 @@ FILES_libopkg = "${libdir}/*.so.* ${OPKGLIBDIR}/opkg/"
|
||||
do_install_append() {
|
||||
# We need to create the lock directory
|
||||
install -d ${D}${OPKGLIBDIR}/opkg
|
||||
|
||||
if ${@base_contains('DISTRO_FEATURES','sysvinit','false','true',d)};then
|
||||
install -d ${D}${systemd_unitdir}/system
|
||||
install -m 0644 ${WORKDIR}/opkg-configure.service ${D}${systemd_unitdir}/system/
|
||||
sed -i -e 's,@BASE_BINDIR@,${base_bindir},g' \
|
||||
-e 's,@SYSCONFDIR@,${sysconfdir},g' \
|
||||
-e 's,@BINDIR@,${bindir},g' \
|
||||
-e 's,@SYSTEMD_UNITDIR@,${systemd_unitdir},g' \
|
||||
${D}${systemd_unitdir}/system/opkg-configure.service
|
||||
fi
|
||||
}
|
||||
|
||||
do_install_append_class-native() {
|
||||
@@ -59,7 +75,8 @@ do_install_append_class-native() {
|
||||
|
||||
pkg_postinst_${PN} () {
|
||||
#!/bin/sh
|
||||
if [ "x$D" != "x" ] && [ -f $D${OPKGLIBDIR}/opkg/status ]; then
|
||||
if ${@base_contains('DISTRO_FEATURES','sysvinit','true','false',d)} && \
|
||||
[ "x$D" != "x" ] && [ -f $D${OPKGLIBDIR}/opkg/status ]; then
|
||||
install -d $D${sysconfdir}/rcS.d
|
||||
|
||||
# this happens at S98 where our good 'ole packages script used to run
|
||||
|
||||
17
meta/recipes-devtools/opkg/opkg/opkg-configure.service
Normal file
@@ -0,0 +1,17 @@
|
||||
[Unit]
|
||||
Description=Opkg first boot configure
|
||||
DefaultDependencies=no
|
||||
After=systemd-remount-fs.service systemd-tmpfiles-setup.service tmp.mount
|
||||
Before=sysinit.target
|
||||
|
||||
[Service]
|
||||
Type=oneshot
|
||||
EnvironmentFile=-@SYSCONFDIR@/default/postinst
|
||||
ExecStart=-@BASE_BINDIR@/sh -c " if [ $POSTINST_LOGGING = '1' ]; then @BINDIR@/opkg-cl configure > $LOGFILE 2>&1; else @BINDIR@/opkg-cl configure; fi"
|
||||
ExecStartPost=@BASE_BINDIR@/systemctl disable opkg-configure.service
|
||||
StandardOutput=syslog
|
||||
RemainAfterExit=No
|
||||
|
||||
[Install]
|
||||
WantedBy=basic.target
|
||||
WantedBy=sysinit.target
|
||||
@@ -3,6 +3,7 @@ require opkg.inc
|
||||
SRC_URI = "svn://opkg.googlecode.com/svn;module=trunk;protocol=http \
|
||||
file://no-install-recommends.patch \
|
||||
file://add-exclude.patch \
|
||||
file://opkg-configure.service \
|
||||
"
|
||||
|
||||
S = "${WORKDIR}/trunk"
|
||||
|
||||