Compare commits

...

1346 Commits

Author SHA1 Message Date
Richard Purdie
c6edf2f8bc build-appliance-image: Update to master head revision
(From OE-Core rev: e3f5ceec690379d64bd38330111a32f6c8fc6353)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-24 12:31:33 +01:00
Richard Purdie
5694f06b6e layer.conf: Update sumo->thud in preparation for release
(From meta-yocto rev: 2404cddc02b428fb510574b02707f7e0b68e31e8)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-24 12:31:21 +01:00
Richard Purdie
9925dc55de layer.conf: Add thud to LAYERSERIES_CORENAMES
With the release approaching, add thud to LAYERSERIES_CORENAMES and update
oe-core to use this release series. "sumo" will be removed during M4 in
the next couple of weeks so people need to start updating their master
layers in preperation for release.

(From OE-Core rev: 986792481fa005fe136fd4b4e388042492b1ad8a)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-24 12:30:16 +01:00
Richard Purdie
88ef638f86 build-appliance-image: Update to master head revision
(From OE-Core rev: f010915f06c1b6c72089b56fb610f60e4fbc5065)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-24 12:26:46 +01:00
Anuj Mittal
0fa51b7709 linux-yocto: update genericx86* SRCREV for 4.14
Bump to kernel release v4.14.71.

(From meta-yocto rev: b08448debe424211ee721e54eff28f78469cc2a2)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-24 12:26:35 +01:00
Anuj Mittal
0b8cee95f4 linux-yocto: update genericx86* SRCREV for 4.18
Bump to kernel release v4.18.9.

(From meta-yocto rev: c3fb4f3d469272ade1584ca8f76fa116ab09e2e4)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-24 12:26:35 +01:00
Khem Raj
7929e06936 musl: Bring in patches post 1.20 release
There have been regressions found in 1.20 release, this is cumulative
update to bring these changes and drops the local patches which have
been upstreamed in this delta

https://git.musl-libc.org/cgit/musl/log/?qt=range&q=0fa1e638e87cf257e9f96b4019b2076afd674a19..c50985d5c8e316c5c464f352e79eeebfed1121a9

License-Update: Dropped BSD Prng implementation

https://git.musl-libc.org/cgit/musl/commit/COPYRIGHT?id=c50985d5c8e316c5c464f352e79eeebfed1121a9

(From OE-Core rev: 0e1f892ed34d4c84f2a9164f10efad94f9282c49)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-24 12:26:35 +01:00
Richard Purdie
c942230eee bitbake: daemonize/build: Clean up /dev/null fd handling
At the end of bitbake selftest we see:

sys:1: ResourceWarning: unclosed file <_io.TextIOWrapper name='/dev/null' mode='r+' encoding='UTF-8'>

Clean up the /dev/null handling to drop the unused entry in build.by and
ensure the other open() calls are cleaned up.

NULL was unused since http://git.yoctoproject.org/cgit.cgi/poky/commit/bitbake/lib/bb/build.py?id=4a081b5a52e3d27da8d4b062f3fda292e8d8fb0a
back in 2012.

(Bitbake rev: e72be96cfa9f05fda5f420c7cfa8bcfa9304b884)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-22 15:52:12 -07:00
Richard Purdie
7be6abc98d bitbake: COW: Fix StopIteration warning
Fix the warning:

WARNING: lib/bb/data_smart.py:235: DeprecationWarning: generator 'COWDictMeta.iter' raised StopIteration
  for k, v in self.variables.iteritems():

by using return from the generator, not raising StopIteration.

(Bitbake rev: 407d6e07b09123c12c382b4a92107f002c314b05)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-22 15:52:12 -07:00
Bruce Ashfield
ad38cb9346 linux-yocto: enable pci and CRYPTO_DEV_VIRTIO
With recent kernels and the latest openssl we observe hangs when there
is not sufficient entropy in the system before crypto is used
(i.e. OpenVSwitch or openssh server).

This was mainly observed on qemuarm64, but can happen elsewhere. So
we enable CRYPTO_DEV_VIRTIO in the main virtio fragment and enable
PCI for qemuarm64 to ensure that entropy is available.

(From OE-Core rev: 8cc08e44cf3e969c124456d459c6c06a76cad018)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-22 15:52:12 -07:00
Bruce Ashfield
5f99ecf3dd linux-yocto/4.14: update to v4.14.71
Integrating the korg stable releases up to v4.14.71 which comprise
the following commits:

   1244bbb3e921 Linux 4.14.71
   06274364edb4 mm: get rid of vmacache_flush_all() entirely
   8b34a7b14ee7 autofs: fix autofs_sbi() does not check super block type
   daf0ca743b28 tuntap: fix use after free during release
   ab75811f7181 tun: fix use after free for ptr_ring
   8626c40a3093 mtd: ubi: wl: Fix error return code in ubi_wl_init()
   08fb833b40e3 ip: frags: fix crash in ip_do_fragment()
   b3a0c61b7369 ip: process in-order fragments efficiently
   c91f27fb5716 ip: add helpers to process in-order fragments faster.
   04b28f406e86 ipv4: frags: precedence bug in ip_expire()
   6b921536f170 net: sk_buff rbnode reorg
   37c7cc80b1d7 net: add rb_to_skb() and other rb tree helpers
   6bf32cda46eb net: pskb_trim_rcsum() and CHECKSUM_COMPLETE are friends
   5123ffdad659 ipv6: defrag: drop non-last frags smaller than min mtu
   3bde783eca23 net: modify skb_rbtree_purge to return the truesize of all purged skbs.
   7750c414b89b net: speed up skb_rbtree_purge()
   1c44969111cc ip: discard IPv4 datagrams with overlapping segments.
   5fff99e88a1f inet: frags: fix ip6frag_low_thresh boundary
   48c2afc16888 inet: frags: get rid of ipfrag_skb_cb/FRAG_CB
   8291cd943a9b inet: frags: reorganize struct netns_frags
   bd946fb5226e rhashtable: reorganize struct rhashtable layout
   3226bdcb0448 ipv6: frags: rewrite ip6_expire_frag_queue()
   085a0147447a inet: frags: do not clone skb in ip_expire()
   990204ddc5f6 inet: frags: break the 2GB limit for frags storage
   caa4249eca08 inet: frags: remove inet_frag_maybe_warn_overflow()
   5b1b3ad46dd1 inet: frags: get rif of inet_frag_evicting()
   bd3df633f17d inet: frags: remove some helpers
   9aee41eff751 inet: frags: use rhashtables for reassembly units
   33dc9f7c5d12 rhashtable: add schedule points
   11be675bf0aa ipv6: export ip6 fragments sysctl to unprivileged users
   266da0fb83f3 inet: frags: refactor lowpan_net_frag_init()
   eb1686ae5e20 inet: frags: refactor ipv6_frag_init()
   0512f7e93504 inet: frags: Convert timers to use timer_setup()
   0cbf74b9519d inet: frags: refactor ipfrag_init()
   673220d6417d inet: frags: add a pointer to struct netns_frags
   6093d5abcf5a inet: frags: change inet_frags_init_net() return value
   6f7bf899b92d drm/i915: set DP Main Stream Attribute for color range on DDI platforms
   bdbf6e0b9326 RDMA/cma: Do not ignore net namespace for unbound cm_id
   0d1d365d1d44 MIPS: WARN_ON invalid DMA cache maintenance, not BUG_ON
   1181e8687a8d NFSv4.1: Fix a potential layoutget/layoutrecall deadlock
   0983ef553d8f f2fs: fix to do sanity check with {sit,nat}_ver_bitmap_bytesize
   7beff543897c mfd: ti_am335x_tscadc: Fix struct clk memory leak
   b28c14ae3576 iommu/ipmmu-vmsa: Fix allocation in atomic context
   1252c1daa9c3 f2fs: Fix uninitialized return in f2fs_ioc_shutdown()
   9d54a48ef296 f2fs: fix to wait on page writeback before updating page
   9e850bc7691a media: helene: fix xtal frequency setting at power on
   5deea7d63ba1 partitions/aix: fix usage of uninitialized lv_info and lvname structures
   f3677a5c7d08 partitions/aix: append null character to print data from disk
   758289892a13 media: s5p-mfc: Fix buffer look up in s5p_mfc_handle_frame_{new, copy_time} functions
   b0a6faaa6060 Input: atmel_mxt_ts - only use first T9 instance
   e85940a5bb5f dm cache: only allow a single io_mode cache feature to be requested
   94f885db2a18 net: dcb: For wild-card lookups, use priority -1, not 0
   946cf3fe1be6 MIPS: generic: fix missing of_node_put()
   e607db7ce984 MIPS: Octeon: add missing of_node_put()
   7fb2b50ee596 f2fs: fix to do sanity check with reserved blkaddr of inline inode
   ee5067c60606 tpm/tpm_i2c_infineon: switch to i2c_lock_bus(..., I2C_LOCK_SEGMENT)
   cf503dbe5c22 tpm_tis_spi: Pass the SPI IRQ down to the driver
   894b7c6584ed f2fs: fix to skip GC if type in SSA and SIT is inconsistent
   7141f97cdd83 pktcdvd: Fix possible Spectre-v1 for pkt_devs
   5f91efc475c8 f2fs: try grabbing node page lock aggressively in sync scenario
   fd4e3615936c net: mvneta: fix mtu change on port without link
   0cfe17c2a909 pinctrl/amd: only handle irq if it is pending and unmasked
   acd73639c38c gpio: ml-ioh: Fix buffer underwrite on probe error path
   1fc16c07d63b pinctrl: imx: off by one in imx_pinconf_group_dbg_show()
   591ee8d9cd2f x86/mm: Remove in_nmi() warning from vmalloc_fault()
   60deae3d9fc9 Bluetooth: hidp: Fix handling of strncpy for hid->name information
   1dac27c707c8 ath10k: disable bundle mgmt tx completion event support
   6158c2b70a8a tools/testing/nvdimm: kaddr and pfn can be NULL to ->direct_access()
   383195f9feca scsi: 3ware: fix return 0 on the error path of probe
   62128a8d8489 ata: libahci: Correct setting of DEVSLP register
   7cadaaa96c07 ata: libahci: Allow reconfigure of DEVSLP register
   3f3d6c0608b7 MIPS: Fix ISA virt/bus conversion for non-zero PHYS_OFFSET
   1ed3a9307230 rpmsg: core: add support to power domains for devices
   0e890d1cf491 wlcore: Set rx_status boottime_ns field on rx
   bd21eb8aa705 ath10k: prevent active scans on potential unusable channels
   2dacb8cc67ef ath9k_hw: fix channel maximum power level test
   473983f319cc ath9k: report tx status on EOSP
   40992419f135 macintosh/via-pmu: Add missing mmio accessors
   968f03158db5 perf evlist: Fix error out while applying initial delay and LBR
   cc33476b67b8 perf c2c report: Fix crash for empty browser
   521aedea92cd NFSv4.0 fix client reference leak in callback
   c39273ce0d85 perf tools: Allow overriding MAX_NR_CPUS at compile time
   e296ac45b568 f2fs: fix defined but not used build warnings
   e04910746abe f2fs: do not set free of current section
   d85e49570227 f2fs: fix to active page in lru list for read path
   ca21de151016 tty: rocket: Fix possible buffer overwrite on register_PCI
   4bb1d3ec658c Drivers: hv: vmbus: Cleanup synic memory free path
   eec63d96d0e4 firmware: vpd: Fix section enabled flag on vpd_section_destroy
   16c6e01a4a98 uio: potential double frees if __uio_register_device() fails
   2458e91302aa misc: ti-st: Fix memory leak in the error path of probe()
   8e6ee30ad80f gpu: ipu-v3: default to id 0 on missing OF alias
   3b9909896570 media: camss: csid: Configure data type and decode format properly
   cb71229f6483 timers: Clear timer_base::must_forward_clk with timer_base::lock held
   d1060bfcdc72 md/raid5: fix data corruption of replacements after originals dropped
   1f6324f4ea5b scsi: target: fix __transport_register_session locking
   3ddbcd49bbb3 blk-mq: fix updating tags depth
   47a6917f4b72 net: phy: Fix the register offsets in Broadcom iProc mdio mux driver
   6b7c7186c210 media: dw2102: Fix memleak on sequence of probes
   cbd5e67820a9 media: davinci: vpif_display: Mix memory leak on probe error path
   77e120a9c64a selftests/bpf: fix a typo in map in map test
   274977d99c19 powerpc/powernv: Fix concurrency issue with npu->mmio_atsd_usage
   16aa222d2293 gpio: tegra: Move driver registration to subsys_init level
   fb281ed2e4dc Bluetooth: h5: Fix missing dependency on BT_HCIUART_SERDEV
   0455f5d63b3e i2c: aspeed: Add an explicit type casting for *get_clk_reg_val
   5ffdd121d0c4 ethtool: Remove trailing semicolon for static inline
   96e5b8cc3cfd misc: mic: SCIF Fix scif_get_new_port() error handling
   0b2d28449e68 ARC: [plat-axs*]: Enable SWAP
   e5d857d5f1fc tpm: separate cmd_ready/go_idle from runtime_pm
   64def6f35348 crypto: aes-generic - fix aes-generic regression on powerpc
   0fad94cf1016 switchtec: Fix Spectre v1 vulnerability
   ff225750dc4e x86/microcode: Update the new microcode revision unconditionally
   05104410c9d1 x86/microcode: Make sure boot_cpu_data.microcode is up-to-date
   1d92a611db50 cpu/hotplug: Prevent state corruption on error rollback
   cb2625854091 cpu/hotplug: Adjust misplaced smb() in cpuhp_thread_fun()
   cc4271088619 ALSA: hda - Fix cancel_work_sync() stall from jackpoll work
   a709c46fdcd0 KVM: VMX: Do not allow reexecute_instruction() when skipping MMIO instr
   d5fca5314c4d KVM: s390: vsie: copy wrapping keys to right place
   ae3968b41645 Btrfs: fix data corruption when deduplicating between different files
   55bcfe019ac4 smb3: check for and properly advertise directory lease support
   b0b69369eecc SMB3: Backup intent flag missing for directory opens with backupuid mounts
   9efcaa7c4afb MIPS: VDSO: Match data page cache colouring when D$ aliases
   492519107c9d android: binder: fix the race mmap and alloc_new_buf_locked
   381992bcccac block: bfq: swap puts in bfqg_and_blkg_put
   23ecbbad7bf9 nbd: don't allow invalid blocksize settings
   425739151e03 scsi: lpfc: Correct MDS diag and nvmet configuration
   d98b67089c0e i2c: i801: fix DNV's SMBCTRL register offset
   831223b294f8 i2c: xiic: Make the start and the byte count write atomic
   5dfe87ac34e2 Linux 4.14.70
   ab088bc2911d arm64: Handle mismatched cache type
   469c89aa5d7e arm64: Fix mismatched cache line size detection
   0d2e80411a1a ASoC: wm8994: Fix missing break in switch
   03717f80cf2c arm64: cpu_errata: include required headers
   82a0e0f5cf40 x86: kvm: avoid unused variable warning
   e02c9275beea kvm: x86: Set highest physical address bits in non-present/reserved SPTEs
   39cff99ba469 Revert "ARM: imx_v6_v7_defconfig: Select ULPI support"
   e37957305de3 irda: Only insert new objects into the global database via setsockopt
   77be9452d0e5 irda: Fix memory leak caused by repeated binds of irda socket
   63fd9d43c018 s390/lib: use expoline for all bcr instructions
   9370868fd3ca kbuild: make missing $DEPMOD a Warning instead of an Error
   1e0750745bdf drm/i915: Increase LSPCON timeout
   13b23ccfa288 x86/xen: don't write ptes directly in 32-bit PV guests
   d85c2999a7b5 x86/pae: use 64 bit atomic xchg function in native_ptep_get_and_clear
   685a452ce3bf usb: dwc3: core: Fix ULPI PHYs and prevent phy_get/ulpi_init during suspend/resume
   44e5d0b6ce63 HID: add quirk for another PIXART OEM mouse used by HP
   801fc191bb15 mm: Fix devm_memremap_pages() collision handling
   1508043c32a9 lightnvm: pblk: free padded entries in write buffer
   fd8cb2e71cdd sched/deadline: Fix switching to -deadline
   8d015a362a84 debugobjects: Make stack check warning more informative
   448b5498f6c6 uapi/linux/keyctl.h: don't use C++ reserved keyword as a struct member name
   589a8eafc74e drm/amdgpu:add VCN booting with firmware loaded by PSP
   4a4afcf76c96 drm/amdgpu:add VCN support in PSP driver
   d47d14de2438 drm/amdgpu:add new firmware id for VCN
   997157c4eb38 drm/amdgpu:add tmr mc address into amdgpu_firmware_info
   65d20e40552f drm/amdgpu: update tmr mc address
   f40ecf3fe04a drm/edid: Add 6 bpc quirk for SDC panel in Lenovo B50-80
   d991f8ae4071 drm/amd/pp/Polaris12: Fix a chunk of registers missed to program
   c46a1b2622fa drm/amdgpu: Fix RLC safe mode test in gfx_v9_0_enter_rlc_safe_mode
   7e1a6951ca99 drm/i915/lpe: Mark LPE audio runtime pm as "no callbacks"
   a35d3352434d ARM: rockchip: Force CONFIG_PM on Rockchip systems
   1f62d35cd2e1 arm64: rockchip: Force CONFIG_PM on Rockchip systems
   33f4c5c68044 btrfs: Don't remove block group that still has pinned down bytes
   0cdbc3faf960 btrfs: relocation: Only remove reloc rb_trees if reloc control has been initialized
   2f92584bf1f6 btrfs: replace: Reset on-disk dev stats value after replace
   145b1f56b992 btrfs: Exit gracefully when chunk map cannot be inserted to the tree
   80f97c79f3e1 kvm: nVMX: Fix fault vector for VMX operation at CPL > 0
   1187e0186d81 KVM: vmx: track host_state.loaded using a loaded_vmcs pointer
   0aa49a4ddc8e clk: rockchip: Add pclk_rkpwm_pmu to PMU critical clocks in rk3399
   92ef9425c6e1 powerpc/pseries: Avoid using the size greater than RTAS_ERROR_LOG_MAX.
   f3c124c3077d powerpc/64s: Make rfi_flush_fallback a little more robust
   17b1473e6433 powerpc/platforms/85xx: fix t1042rdb_diu.c build errors & warning
   e5f0192fe220 SMB3: Number of requests sent should be displayed for SMB3 not just CIFS
   f6a01ab96067 smb3: fix reset of bytes read and written stats
   9dd38052a3eb cfq: Suppress compiler warnings about comparisons
   9b3fa26f0092 RDS: IB: fix 'passing zero to ERR_PTR()' warning
   e33c8a2896ec selftests/powerpc: Kill child processes on SIGINT
   c861151b1fe9 iommu/omap: Fix cache flushes on L2 table entries
   0a65ab39f8b6 ASoC: rt5677: Fix initialization of rt5677_of_match.data
   3e86f5157661 staging: comedi: ni_mio_common: fix subdevice flags for PFI subdevice
   120130a75724 dm kcopyd: avoid softlockup in run_complete_job
   50956ef66cdb PCI: mvebu: Fix I/O space end address calculation
   301ae5910648 xen/balloon: fix balloon initialization for PVH Dom0
   a333f3f2a255 Input: do not use WARN() in input_alloc_absinfo()
   a9fac97e2e50 NFSv4: Fix error handling in nfs4_sp4_select_mode()
   8ac6b147534c scsi: aic94xx: fix an error code in aic94xx_init()
   24165131bcab ACPI / scan: Initialize status to ACPI_STA_DEFAULT
   c953a5038d2d s390/dasd: fix panic for failed online processing
   ab16afe8c624 s390/dasd: fix hanging offline processing due to canceled worker
   d67c7c9dd14f block: bvec_nr_vecs() returns value for wrong slab
   6952b4ed9e42 perf probe powerpc: Fix trace event post-processing
   af675a6eefe9 powerpc: Fix size calculation using resource_size()
   c20a5e06b750 powerpc/uaccess: Enable get_user(u64, *p) on 32-bit
   47425c36d3fb f2fs: fix to clear PG_checked flag in set_page_dirty()
   c2842800d6bd net/9p: fix error path of p9_virtio_probe
   4cd195263e42 net/9p/trans_fd.c: fix race by holding the lock
   5859129cf62e irqchip/bcm7038-l1: Hide cpu offline callback when building for !SMP
   5e51aa84f4e8 perf tools: Check for null when copying nsinfo.
   800dbcee10cd net: hns3: Fix for phy link issue when using marvell phy driver
   a77439e5fb28 net: hns3: Fix for command format parsing error in hclge_is_all_function_id_zero
   c16a0727c71a RDMA/hns: Fix usage of bitmap allocation functions return values
   0c02e0c3fd13 tcp, ulp: add alias for all ulp modules
   58de2cef2b68 netfilter: fix memory leaks on netlink_dump_start error
   e4f419133dfa platform/x86: asus-nb-wmi: Add keymap entry for lid flip action on UX360
   044e9463ec20 mfd: sm501: Set coherent_dma_mask when creating subdevices
   ccf1ae823e4a ipvs: fix race between ip_vs_conn_new() and ip_vs_del_dest()
   a2805f40c77e s390/kdump: Fix memleak in nt_vmcoreinfo
   2b81b00edba1 netfilter: ip6t_rpfilter: set F_IFACE for linklocal addresses
   f95c5cde34e8 platform/x86: intel_punit_ipc: fix build errors
   e20c4abf9186 fs/dcache.c: fix kmemcheck splat at take_dentry_name_snapshot()
   4570403f6e11 mm/fadvise.c: fix signed overflow UBSAN complaint
   2dc61587a103 pwm: meson: Fix mux clock names
   52ec8484a7c5 IB/hfi1: Invalid NUMA node information can cause a divide by zero
   e5ef973b137f x86/mce: Add notifier_block forward declaration
   b7540b6235f0 virtio: pci-legacy: Validate queue pfn
   ab4bddc2d032 scripts: modpost: check memory allocation results
   7bbf1e8a2471 fat: validate ->i_start before using
   305277dae99e fs/proc/kcore.c: use __pa_symbol() for KCORE_TEXT list entries
   68e787c3c800 hfsplus: fix NULL dereference in hfsplus_lookup()
   003d4c3bf5a5 reiserfs: change j_timestamp type to time64_t
   f552f8c28d34 fork: don't copy inconsistent signal handler state to child
   8b89affb42ae sunrpc: Don't use stack buffer with scatterlist
   ece4ba1c0c90 hfs: prevent crash on exit from failed search
   7d6eba211a1a hfsplus: don't return 0 when fill_super() failed
   d4e42116f77e cifs: check if SMB2 PDU size has been padded and suppress the warning
   c9ba1b82ce96 net: sched: action_ife: take reference to meta module
   e54c50709019 act_ife: fix a potential deadlock
   cd7330c06195 act_ife: move tcfa_lock down to where necessary
   8aa07625eb81 hv_netvsc: Fix a deadlock by getting rtnl lock earlier in netvsc_probe()
   dadb0110a49d hv_netvsc: ignore devices that are not PCI
   bf82c2cb1450 vhost: correctly check the iova range when waking virtqueue
   fe0d111fea19 mlxsw: spectrum_switchdev: Do not leak RIFs when removing bridge
   3c035a48e774 sctp: hold transport before accessing its asoc in sctp_transport_get_next
   456e46f05b37 nfp: wait for posted reconfigs when disabling the device
   8fed734df375 tipc: fix a missing rhashtable_walk_exit()
   417b068a6a7a net/sched: act_pedit: fix dump of extended layered op
   56af4184d356 vti6: remove !skb->ignore_df check from vti6_xmit()
   e4b6c5fd31bd tcp: do not restart timewait timer on rst reception
   3eada53de462 r8169: add support for NCube 8168 network card
   d19688e347a1 qlge: Fix netdev features configuration.
   7f1e6ec4ff12 net: sched: Fix memory exposure from short TCA_U32_SEL
   cb765f5c3c5b net: macb: do not disable MDIO bus at open/close time
   1ef819e411f8 net: bcmgenet: use MAC link status for fixed phy
   a16405ad27f6 ipv4: tcp: send zero IPID for RST and ACK sent in SYN-RECV and TIME-WAIT state
   a08d7ea10bc7 act_ife: fix a potential use-after-free
   7fe7a0f4c5cf Linux 4.14.69
   29245d36680e arm64: mm: always enable CONFIG_HOLES_IN_ZONE
   3098933c1213 fs/quota: Fix spectre gadget in do_quotactl
   0682e027f39d crypto: caam/qi - fix error path in xts setkey
   ccb38942fbe1 crypto: caam/jr - fix descriptor DMA unmapping
   be6f98b203d3 crypto: caam - fix DMA mapping direction for RSA forms 2 & 3
   9f830cf2d510 crypto: vmx - Fix sleep-in-atomic bugs
   300ec47ab8ea perf auxtrace: Fix queue resize
   5a842ecca279 cap_inode_getsecurity: use d_find_any_alias() instead of d_find_alias()
   d1a265da7b29 bcache: release dc->writeback_lock properly in bch_writeback_thread()
   c8d875b471b6 libnvdimm: fix ars_status output length calculation
   ff0791f467d0 getxattr: use correct xattr length
   19b99719970b udlfb: set optimal write delay
   d0f2eb3a419b fb: fix lost console when the user unplugs a USB adapter
   9b0dd656d593 pwm: tiehrpwm: Fix disabling of output of PWMs
   0ef9c771924d pwm: tiehrpwm: Don't use emulation mode bits to control PWM output
   63bbaa1469e6 ubifs: Fix synced_i_size calculation for xattr inodes
   8a23348d76a1 ubifs: xattr: Don't operate on deleted inodes
   f6d7acc1d9ca ubifs: Check data node size before truncate
   3259dd7176e4 Revert "UBIFS: Fix potential integer overflow in allocation"
   a230db38a9fd ubifs: Fix memory leak in lprobs self-check
   656d6e6f6d23 userns: move user access out of the mutex
   b692c405a1ae sys: don't hold uts_sem while accessing userspace memory
   c2ea292b1350 iommu/vt-d: Fix dev iotlb pfsid use
   eb58c40465f3 iommu/vt-d: Add definitions for PFSID
   7cf82f3b7a77 mm/tlb: Remove tlb_remove_table() non-concurrent condition
   ddcb92700552 ARM: tegra: Fix Tegra30 Cardhu PCA954x reset
   d453f04e813a NFSv4: Fix a sleep in atomic context in nfs4_callback_sequence()
   c5759d5a7e6a NFSv4: Fix locking in pnfs_generic_recover_commit_reqs
   bf23ba3737e0 NFSv4 client live hangs after live data migration recovery
   ec13c53dc59f pnfs/blocklayout: off by one in bl_map_stripe()
   ed480f2b9e86 block, bfq: return nbytes and not zero from struct cftype .write() method
   fe806eb54bca xtensa: increase ranges in ___invalidate_{i,d}cache_all
   0d78efe0412b xtensa: limit offsets in __loop_cache_{all,page}
   025cc91f8c52 KVM: PPC: Book3S: Fix guest DMA when guest partially backed by THP pages
   58936d4d7b14 KVM: VMX: fixes for vmentry_l1d_flush module parameter
   015156f50179 PM / sleep: wakeup: Fix build error caused by missing SRCU support
   924383edf44c cpufreq: governor: Avoid accessing invalid governor_data
   256f63f52ec3 drivers/block/zram/zram_drv.c: fix bug storing backing_dev
   8840ca570f2b ovl: fix wrong use of impure dir cache in ovl_iterate()
   aa9ceea20788 mfd: hi655x: Fix regmap area declared size for hi655x
   4f6789cad647 uprobes: Use synchronize_rcu() not synchronize_sched()
   a36e2aa90576 livepatch: Validate module/old func name length
   68a735eb9a16 printk/tracing: Do not trace printk_nmi_enter()
   cbde057aa0e7 tracing/blktrace: Fix to allow setting same value
   4c9016757e3b tracing: Do not call start/stop() functions when tracing_on does not change
   2b4c940dccbe rtc: omap: fix potential crash on power off
   bbac5374b537 vmw_balloon: fix VMCI use when balloon built into kernel
   89667b269e87 vmw_balloon: VMCI_DOORBELL_SET does not check status
   d3b403844db5 vmw_balloon: do not use 2MB without batching
   9fd44e90903c vmw_balloon: fix inflation of 64-bit GFNs
   c0a8e047734c extcon: Release locking when sending the notification of connector state
   3f9481902f0b iio: ad9523: Fix return value for ad952x_store()
   e4d3a25111dc iio: ad9523: Fix displayed phase
   b86374912fee iio: sca3000: Fix missing return in switch
   91b48a9ced06 Drivers: hv: vmbus: Reset the channel callback in vmbus_onoffer_rescind()
   d286cfd45277 uart: fix race between uart_put_char() and uart_shutdown()
   5044eb05026e dm crypt: don't decrease device limits
   f961be894413 dm cache metadata: set dirty on all cache blocks after a crash
   b7227e6044be dm cache metadata: save in-core policy_hint_size to on-disk superblock
   3bef88257145 dm thin: stop no_space_timeout worker when switching to write-mode
   4f4b1c5c4c8a dm integrity: change 'suspending' variable from bool to int
   5f04d296f24b net/9p/trans_fd.c: fix race-condition by flushing workqueue before the kfree()
   312479e06828 net/9p/client.c: version pointer uninitialized
   f92953b0765b 9p/virtio: fix off-by-one error in sg list bounds check
   4827a583871a fs/9p/xattr.c: catch the error of p9_client_clunk when setting xattr failed
   390671089d62 9p: fix multiple NULL-pointer-dereferences
   def89b81ef45 RDMA/rxe: Set wqe->status correctly if an unexpected response is received
   bac5c3c122f4 ib_srpt: Fix a use-after-free in srpt_close_ch()
   241e62005c74 cxl: Fix wrong comparison in cxl_adapter_context_get()
   1eb08e7b192d powerpc/powernv/pci: Work around races in PCI bridge enabling
   15677df25afc PCI: Add wrappers for dev_printk()
   4bfd910e8fb3 powerpc/pseries: Fix endianness while restoring of r3 in MCE handler.
   ed53c0ecc959 powerpc/fadump: handle crash memory ranges array index overflow
   259c5122f3a8 Fix kexec forbidding kernels signed with keys in the secondary keyring to boot
   f70805bef73e Replace magic for trusting the secondary keyring with #define
   9cbb32610233 mailbox: xgene-slimpro: Fix potential NULL pointer dereference
   c160382ab064 media: Revert "[media] tvp5150: fix pad format frame height"
   fba6b7f4bbe2 libertas: fix suspend and resume for SDIO connected cards
   7188f7416438 drm/i915/userptr: reject zero user_size
   1e2698976822 block: really disable runtime-pm for blk-mq
   0affbaece6d0 block: blk_init_allocated_queue() set q->fq as NULL in the fail case
   cf12d0f9c0dc readahead: stricter check for bdi io_pages
   8513c01ae15f mmc: renesas_sdhi_internal_dmac: fix #define RST_RESERVED_BITS
   e7b6b3699b97 spi: cadence: Change usleep_range() to udelay(), for atomic context
   dc9a7dd57f63 spi: spi-fsl-dspi: Fix imprecise abort on VF500 during probe
   23554cab1ebd spi: pxa2xx: Add support for Intel Ice Lake
   aa1d05c50483 spi: davinci: fix a NULL pointer dereference
   4d3016e56c3d 9p/net: Fix zero-copy path in the 9p virtio transport
   4a2262972b5d net: mac802154: tx: expand tailroom if necessary
   54c0fa829d45 net: 6lowpan: fix reserved space for single frames
   ee13f7edca58 Linux 4.14.68
   77d1658e5dd1 gcc-plugins: Use dynamic initializers
   616d41d1b408 gcc-plugins: Add include required by GCC release 8
   73b2e7073b51 cdrom: Fix info leak/OOB read in cdrom_ioctl_drive_status
   63a0f9de021a watchdog: Mark watchdog touch functions as notrace
   f9f67667e0ae power: generic-adc-battery: check for duplicate properties copied from iio channels
   54cecb7440bc power: generic-adc-battery: fix out-of-bounds write when copying channel properties
   d2a97eba0c4e PM / clk: signedness bug in of_pm_clk_add_clks()
   2adc2541a5c4 clk: rockchip: fix clk_i2sout parent selection bits on rk3399
   ae302d685162 iscsi target: fix session creation failure handling
   5b55b24cec4c scsi: core: Avoid that SCSI device removal through sysfs triggers a deadlock
   c984f4d1d40a scsi: sysfs: Introduce sysfs_{un,}break_active_protection()
   d071004e0249 scsi: mpt3sas: Fix _transport_smp_handler() error path
   61ec14f42c84 tpm: Return the actual size when receiving an unsupported command
   ba0797a8016c MIPS: lib: Provide MIPS64r6 __multi3() for GCC < 7
   1c40cd97ffe3 MIPS: Change definition of cpu_relax() for Loongson-3
   156b5e33ab12 MIPS: Always use -march=<arch>, not -<arch> shortcuts
   62c59b1ddbdc MIPS: Correct the 64-bit DSP accumulator register size
   4bdf9c175980 kprobes: Make list and blacklist root user read only
   6ba27d3e2b4a kprobes/arm: Fix %p uses in error messages
   0536c9e41f3f s390/pci: fix out of bounds access during irq setup
   2ac8fbd174d7 s390/numa: move initial setup of node_to_cpumask_map
   97e3dcc08e4e s390/qdio: reset old sbal_state flags
   bcd169a2726a s390: fix br_r1_trampoline for machines without exrl
   9fae74e9a441 s390/mm: fix addressing exception after suspend/resume
   bbcbaf56ff4b x86/entry/64: Wipe KASAN stack shadow before rewind_stack_do_exit()
   cf9fcdd6c2a2 hwmon: (nct6775) Fix potential Spectre v1
   ec4034835eaf x86/speculation/l1tf: Increase l1tf memory limit for Nehalem+
   f64979512c5e x86/spectre: Add missing family 6 check to microcode check
   f822ceb82608 x86/irqflags: Mark native_restore_fl extern inline
   53f01e2004ae x86/nmi: Fix NMI uaccess race against CR3 switching
   fbd5b82d30d2 x86/vdso: Fix lsl operand order
   42228037aa5f pinctrl: freescale: off by one in imx1_pinconf_group_dbg_show()
   7806d2ef4904 ASoC: sirf: Fix potential NULL pointer dereference
   2ef691428ee3 ASoC: zte: Fix incorrect PCM format bit usages
   d1913b9e07e7 ASoC: dpcm: don't merge format from invalid codec dai
   e16bbdeccdd7 b43/leds: Ensure NUL-termination of LED name string
   f0f3784ee3e9 b43legacy/leds: Ensure NUL-termination of LED name string
   f337a54878e2 udl-kms: avoid division
   c0357c1895ae udl-kms: fix crash due to uninitialized memory
   86c18c5a4bc5 udl-kms: handle allocation failure
   29e641a3693a udl-kms: change down_interruptible to down
   e8a3f3a03655 fuse: Add missed unlock_page() to fuse_readpages_fill()
   ff4a71855d0a fuse: Fix oops at process_init_reply()
   973206923812 fuse: umount should wait for all requests
   fc17d7519e8e fuse: fix unlocked access to processing queue
   cfb6eca6e4bb fuse: fix double request_end()
   7d392674443c fuse: fix initial parallel dirops
   eaebcf902ae0 fuse: Don't access pipe->buffers without pipe_lock()
   c49505f6efb1 x86/kvm/vmx: Remove duplicate l1d flush definitions
   933e1ab12051 KVM: x86: SVM: Call x86_spec_ctrl_set_guest/host() with interrupts disabled
   cedb8037f069 x86/process: Re-export start_thread()
   4587db4c2a95 x86/vdso: Fix vDSO build if a retpoline is emitted
   310f2a6e3ad3 x86/speculation/l1tf: Suggest what to do on systems with too much RAM
   59463ec29cac x86/speculation/l1tf: Fix off-by-one error when warning that system has too much RAM
   7418d7086217 x86/speculation/l1tf: Fix overflow in l1tf_pfn_limit() on 32bit
   e9afa7c1ef17 mm/tlb, x86/mm: Support invalidating TLB caches for RCU_TABLE_FREE
   3e0994616d4a mm: move tlb_table_flush to tlb_flush_mmu_free
   7d91aa5717db platform/x86: ideapad-laptop: Apply no_hw_rfkill to Y20-15IKBM, too
   0c9bed369889 nvme-pci: add a memory barrier to nvme_dbbuf_update_and_check_event
   509c0cdfb438 ext4: reset error code in ext4_find_entry in fallback
   5043e05dd571 ext4: sysfs: print ext4_super_block fields as little-endian
   7773a6d94896 ext4: check for NUL characters in extended attribute's name
   bd0f93a630ff stop_machine: Atomically queue and wake stopper threads
   e72107b2d995 stop_machine: Reflow cpu_stop_queue_two_works()
   97f76f3bc406 s390/kvm: fix deadlock when killed by oom
   4a06fdf2c490 KVM: arm/arm64: Skip updating PTE entry if no change
   792a039415dc KVM: arm/arm64: Skip updating PMD entry if no change
   75677d72be74 arm64: dts: rockchip: corrected uart1 clock-names for rk3328
   5a56b307992e arm64: mm: check for upper PAGE_SHIFT bits in pfn_valid()
   a8affa695373 kprobes/arm64: Fix %p uses in error messages
   cd71265a8cd6 printk/nmi: Prevent deadlock when accessing the main log buffer in NMI
   943276ef14c7 printk: Create helper function to queue deferred console handling
   646e7c04803f printk: Split the code for storing a message into the log buffer
   b48522b7887a iommu/arm-smmu: Error out only if not enough context interrupts
   f91ca31f5379 Btrfs: fix btrfs_write_inode vs delayed iput deadlock
   e7457f97d2af btrfs: don't leak ret from do_chunk_alloc
   770025cc4b69 btrfs: use correct compare function of dirty_metadata_bytes
   758f55f91833 smb3: fill in statfs fsid and correct namelen
   66913d23eeda smb3: don't request leases in symlink creation and query
   be1210c7758c smb3: Do not send SMB3 SET_INFO if nothing changed
   82a856f52733 smb3: enumerating snapshots was leaving part of the data off end
   d5f2790a7a1e cifs: check kmalloc before use
   cba34b940773 cifs: add missing debug entries for kconfig options
   cfcfbe08d298 mei: don't update offset in write
   cf7ab2abc524 mm/memory.c: check return value of ioremap_prot
   7bb880a11650 scsi: vmw_pvscsi: Return DID_RESET for status SAM_STAT_COMMAND_TERMINATED
   4ce46fff750d scsi: fcoe: clear FC_RP_STARTED flags when receiving a LOGO
   a67aef68ef24 scsi: fcoe: drop frames in ELS LOGO error path
   95239b2db50f scsi: fcoe: fix use-after-free in fcoe_ctlr_els_send
   fbb37b72489d gpiolib-acpi: make sure we trigger edge events at least once on boot
   1d7bf02d716d memcg: remove memcg_cgroup::id from IDR on mem_cgroup_css_alloc() failure
   47041cf42a47 drivers: net: lmc: fix case value for target abort error
   28013eecf6a0 Squashfs: Compute expected length from inode size rather than block length
   249778d9459a mm: delete historical BUG from zap_pmd_range()
   8babbc02f893 squashfs metadata 2: electric boogaloo
   dfa5c4bf8c94 enic: do not call enic_change_mtu in enic_probe
   574a4f3e6173 sparc: use asm-generic version of msi.h
   7c841ea7f8f1 sparc/time: Add missing __init to init_tick_ops()
   24fab572ae7d arc: fix type warnings in arc/mm/cache.c
   391e3007e447 arc: fix build errors in arc/include/asm/delay.h
   aca05b1741d3 arc: [plat-eznps] fix printk warning in arc/plat-eznps/mtm.c
   79f9c523ca43 arc: [plat-eznps] fix data type errors in platform headers
   d267258ee192 ARC: [plat-eznps] Add missing struct nps_host_reg_aux_dpc
   2312e6a802b3 enic: handle mtu change for vf properly
   d4f96c0515fc nfp: flower: fix port metadata conversion bug
   bc928fdf5d1e bpf: use GFP_ATOMIC instead of GFP_KERNEL in bpf_parse_prog()
   331c36cd01d8 ARC: dma [non-IOC] setup SMP_CACHE_BYTES and cache_line_size
   49c1fba34589 Revert "MIPS: BCM47XX: Enable 74K Core ExternalSync for PCIe erratum"
   9339ea7c92fc tools/power turbostat: Read extended processor family from CPUID
   a73b6c4c2601 zswap: re-check zswap_is_full() after do zswap_shrink()
   92c159863d8a ipc/sem.c: prevent queue.status tearing in semop
   2dd2f7722570 hinic: Link the logical network device to the pci device in sysfs
   d00c34f8e205 selftests/ftrace: Add snapshot and tracing_on test case
   2c69b0300458 cachefiles: Wait rather than BUG'ing on "Unexpected object collision"
   4029dd9fc48b cachefiles: Fix refcounting bug in backing-file read monitoring
   819b476c2138 fscache: Allow cancelled operations to be enqueued
   165335d4f18e x86/boot: Fix if_changed build flip/flop bug
   d35aab9df15a sched/rt: Restore rt_runtime after disabling RT_RUNTIME_SHARE
   0ba83f87c3f1 i2c/mux, locking/core: Annotate the nested rt_mutex usage
   b3da5df23900 locking/rtmutex: Allow specifying a subclass for nested locking
   354e35beb0c5 net: axienet: Fix double deregister of mdio
   f63868841a31 qmi_wwan: fix interface number for DW5821e production firmware
   637de2c01678 bnx2x: Fix invalid memory access in rss hash config path.
   1875957f2ec4 media: staging: omap4iss: Include asm/cacheflush.h after generic includes
   00f795e12b8b perf/x86/amd/ibs: Don't access non-started event
   385b40b4fc1b i2c: davinci: Avoid zero value of CLKH
   562d7bc6c966 can: m_can: Move accessing of message ram to after clocks are enabled
   0b14a856f918 can: mpc5xxx_can: check of_iomap return before use
   06ab42734529 net: prevent ISA drivers from building on PPC32
   5803ce5effc9 atl1c: reserve min skb headroom
   ffb34418ca94 qed: Correct Multicast API to reflect existence of 256 approximate buckets.
   f4e284f1db9e qed: Fix possible race for the link state value.
   77c65d5f40c6 qed: Fix link flap issue due to mismatching EEE capabilities.
   b970d8a1c213 net: caif: Add a missing rcu_read_unlock() in caif_flow_cb
   a10170d94ed4 tools/power turbostat: fix -S on UP systems
   10ca6b3f92d3 KVM: vmx: use local variable for current_vmptr when emulating VMPTRST
   123534dbd490 netfilter: nf_tables: don't allow to rename to already-pending name
   4a0144a43c52 netfilter: nf_tables: fix memory leaks on chain rename
   e3476a6da5d8 bpf, ppc64: fix unexpected r0=0 exit path inside bpf_xadd
   a685c4c4d6e8 netfilter: nft_set_hash: add rcu_barrier() in the nft_rhash_destroy()
   70e88fef36ec usb: gadget: f_uac2: fix endianness of 'struct cntrl_*_lay3'
   7cd80fc138f2 tools: usb: ffs-test: Fix build on big endian systems
   645fef5e8dde usb/phy: fix PPC64 build errors in phy-fsl-usb.c
   a362655deb0e usb: gadget: u_audio: protect stream runtime fields with stream spinlock
   c7d18686e87a usb: gadget: u_audio: remove cached period bytes value
   42b09bece176 usb: gadget: u_audio: remove caching of stream buffer parameters
   224c0d0894ff usb: gadget: u_audio: update hw_ptr in iso_complete after data copied
   dc126a1e5fb8 usb: gadget: u_audio: fix pcm/card naming in g_audio_setup()
   fa18ff7edb88 usb: gadget: f_uac2: fix error handling in afunc_bind (again)
   43b058dc21cd usb: gadget: r8a66597: Fix a possible sleep-in-atomic-context bugs in r8a66597_queue()
   3f41c2d0e618 usb: gadget: r8a66597: Fix two possible sleep-in-atomic-context bugs in init_controller()
   05ee6166d702 nbd: handle unexpected replies better
   ced413c5ef85 nbd: don't requeue the same request twice.
   962ff36dac01 drm/imx: imx-ldb: check if channel is enabled before printing warning
   a43eac2d855b drm/imx: imx-ldb: disable LDB on driver bind
   9ac1a4644bb8 scsi: libiscsi: fix possible NULL pointer dereference in case of TMF
   ca5fc53ad401 scsi: target: iscsi: cxgbit: fix max iso npdu calculation
   384f0d9fe4ad drm/bridge: adv7511: Reset registers on hotplug
   7cb625dd9ed6 nl80211: Add a missing break in parse_station_flags
   147b89c421d0 ext4: clear mmp sequence number when remounting read-only
   de044d4ecc65 mac80211: add stations tied to AP_VLANs during hw reconfig
   b6f147a2d907 esp6: fix memleak on error path in esp6_input
   0118f86d21f1 xfrm: free skb if nlsk pointer is NULL
   d35cc7ed2cfe xfrm: fix missing dst_release() after policy blocking lbcast and multicast
   d2adc199957f vti6: fix PMTU caching and reporting on xmit
   7ff4bf211f3e crypto: vmx - Use skcipher for ctr fallback

(From OE-Core rev: 636ffaec45db57a3eb5ae1ca9a81b763dc1a6a53)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-22 15:52:12 -07:00
Bruce Ashfield
9cea4da969 linux-yocto/4.18: update to v4.18.9
Integrating the korg -stable commits for 4.18.8/9, that comprise
the following commits:

   86e014f514f9 Linux 4.18.9
   175ad0cbd818 mm: get rid of vmacache_flush_all() entirely
   39998fd58036 autofs: fix autofs_sbi() does not check super block type
   51d34e94c470 clocksource: Revert "Remove kthread"
   777c7b8464de RDMA/cma: Do not ignore net namespace for unbound cm_id
   9daa1d751d51 MIPS: mscc: ocelot: fix length of memory address space for MIIM
   20452f8f04a2 MIPS: WARN_ON invalid DMA cache maintenance, not BUG_ON
   1c7b8cf2a76a RDMA/hns: Update the data type of immediate data
   137fee538bb0 NFSv4.1: Fix a potential layoutget/layoutrecall deadlock
   1256eeb12678 RDMA/hns: Add illegal hop_num judgement
   b6f493453c78 f2fs: fix to do sanity check with extra_attr feature
   059311916fbb f2fs: fix to propagate return value of scan_nat_page()
   8d65ffb36708 f2fs: fix to do sanity check with {sit,nat}_ver_bitmap_bytesize
   ea08014059c6 mfd: ti_am335x_tscadc: Fix struct clk memory leak
   ff418359bfcb iommu/ipmmu-vmsa: Fix allocation in atomic context
   3ca5bae4d2d8 mfd: rave-sp: Initialize flow control and parity of the port
   0342426f2bf7 f2fs: fix to do sanity check with secs_per_zone
   ee0b97e19865 f2fs: avoid potential deadlock in f2fs_sbi_store
   d92dadb83be8 media: em28xx: Fix DualHD disconnect oops
   aba03a8b544a f2fs: Fix uninitialized return in f2fs_ioc_shutdown()
   eade994be5e6 f2fs: fix to wait on page writeback before updating page
   f9ce9240ebbe iommu/arm-smmu-v3: Abort all transactions if SMMU is enabled in kdump kernel
   1b210d52abf5 media: em28xx: Fix dual transport stream operation
   088ce054c745 drm/amd/display: Prevent PSR from being enabled if initialization fails
   fdc340f5a710 media: helene: fix xtal frequency setting at power on
   18f4b79efb40 media: rcar-csi2: update stream start for V3M
   e681be2362e8 partitions/aix: fix usage of uninitialized lv_info and lvname structures
   06a557d12a90 partitions/aix: append null character to print data from disk
   c57525ab6f77 media: s5p-mfc: Fix buffer look up in s5p_mfc_handle_frame_{new, copy_time} functions
   3f6592445cbe Input: atmel_mxt_ts - only use first T9 instance
   5864b9e06e17 dm cache: only allow a single io_mode cache feature to be requested
   24983c8101c9 net: dcb: For wild-card lookups, use priority -1, not 0
   e66813955581 thermal_hwmon: Sanitize attribute name passed to hwmon
   8cc36414d815 thermal: rcar_thermal: avoid NULL dereference in absence of IRQ resources
   273234f22e95 MIPS: generic: fix missing of_node_put()
   9449bd8ff770 MIPS: Octeon: add missing of_node_put()
   235fd393825b f2fs: fix to do sanity check with reserved blkaddr of inline inode
   d44e0ddb577d tpm/tpm_i2c_infineon: switch to i2c_lock_bus(..., I2C_LOCK_SEGMENT)
   d229e7ecc0cb tpm_tis_spi: Pass the SPI IRQ down to the driver
   4f268d981258 f2fs: fix to skip GC if type in SSA and SIT is inconsistent
   2cf9708981e7 pktcdvd: Fix possible Spectre-v1 for pkt_devs
   bf5cde3c685b f2fs: try grabbing node page lock aggressively in sync scenario
   b493d05c0402 net: mvneta: fix mtu change on port without link
   d35bf0a213ec pinctrl/amd: only handle irq if it is pending and unmasked
   d288d8163c97 gpio: ml-ioh: Fix buffer underwrite on probe error path
   9b9ceea29ad2 gpio: pxa: disable pinctrl calls for PXA3xx
   6871146498a7 pinctrl: imx: off by one in imx_pinconf_group_dbg_show()
   9d8c6300d158 regulator: tps65217: Fix NULL pointer dereference on probe
   0d268eaecd3d x86/mm: Remove in_nmi() warning from vmalloc_fault()
   73941b28bcdd Bluetooth: hidp: Fix handling of strncpy for hid->name information
   dc00dc4ccf8b powerpc/mm: Don't report PUDs as memory leaks when using kmemleak
   81a4ff2429e7 PCI: mobiveil: Fix struct mobiveil_pcie.pcie_reg_base address type
   94ee251c1ed4 PCI: mobiveil: Add missing ../pci.h include
   1f1e9c39a6a7 media: em28xx: explicitly disable TS packet filter
   ddd0ae7f02d4 ath10k: disable bundle mgmt tx completion event support
   0bf7bf9931ad tools/testing/nvdimm: kaddr and pfn can be NULL to ->direct_access()
   83d9430bd43b scsi: 3ware: fix return 0 on the error path of probe
   0a964871ccea nfs: Referrals not inheriting proto setting from parent
   0c8b7991f40d ata: libahci: Correct setting of DEVSLP register
   d12d3336fe95 ata: libahci: Allow reconfigure of DEVSLP register
   b0f09f787d38 MIPS: Fix ISA virt/bus conversion for non-zero PHYS_OFFSET
   2916355cbc9c scsi: tcmu: do not set max_blocks if data_bitmap has been setup
   15ce90b8346f mtd: rawnand: make subop helpers return unsigned values
   e5d9ae0077a5 rpmsg: core: add support to power domains for devices
   d397e7c9d663 wlcore: Set rx_status boottime_ns field on rx
   b19c6e698558 ath10k: prevent active scans on potential unusable channels
   23aa633d564b ath9k_hw: fix channel maximum power level test
   ce5127257d99 ath9k: report tx status on EOSP
   1e83b3b9c60e perf build: Fix installation directory for eBPF
   e01f7c77ce21 macintosh/via-pmu: Add missing mmio accessors
   14335f6beb3f powerpc/pseries: fix EEH recovery of some IOV devices
   d8551bc50c57 perf evlist: Fix error out while applying initial delay and LBR
   96e8b14b1f42 perf c2c report: Fix crash for empty browser
   3ce0566333dd NFSv4.0 fix client reference leak in callback
   aa405740d359 device-dax: avoid hang on error before devm_memremap_pages()
   f2d46f40bb92 perf tools: Allow overriding MAX_NR_CPUS at compile time
   528000132554 ASoC: soc-pcm: Use delay set in component pointer function
   9590fe082ac4 f2fs: fix to detect looped node chain correctly
   7d2914dac206 f2fs: fix defined but not used build warnings
   86750bef4029 f2fs: issue discard align to section in LFS mode
   14580e8d9655 f2fs: Keep alloc_valid_block_count in sync
   2ab744266b20 f2fs: do not set free of current section
   9a83044805f9 f2fs: fix to active page in lru list for read path
   b70fdc0ffc14 IB/IPoIB: Set ah valid flag in multicast send flow
   17732e7759e8 iwlwifi: pcie: don't access periphery registers when not available
   a1354f0d718a uio: fix possible circular locking dependency
   40dc1eb129a5 tty: rocket: Fix possible buffer overwrite on register_PCI
   e951163fb87c Drivers: hv: vmbus: Cleanup synic memory free path
   15e5a96b1e1a firmware: vpd: Fix section enabled flag on vpd_section_destroy
   386b28c2de45 uio: potential double frees if __uio_register_device() fails
   baec9ce83ad5 misc: ti-st: Fix memory leak in the error path of probe()
   7fef1a4f376a gpu: ipu-v3: default to id 0 on missing OF alias
   0bbd7344b42a media: camss: csid: Configure data type and decode format properly
   b3f70869623d timers: Clear timer_base::must_forward_clk with timer_base::lock held
   5a149d67afa9 md/raid5: fix data corruption of replacements after originals dropped
   b54ac5fd6d6a scsi: target: fix __transport_register_session locking
   9db9eb8c4e30 scsi: lpfc: Fix driver crash when re-registering NVME rports.
   abe0bde4dd8c blk-mq: fix updating tags depth
   a73a10b78563 clk: scmi: Fix the rounding of clock rate
   846f4edf32b6 scsi: qla2xxx: Silent erroneous message
   8e2b7c2c14f5 scsi: qla2xxx: Fix session state stuck in Get Port DB
   549f85194379 scsi: qla2xxx: Fix unintended Logout
   8246055b5c6b net: phy: Fix the register offsets in Broadcom iProc mdio mux driver
   e78e5a975500 media: dw2102: Fix memleak on sequence of probes
   e88a48b70c31 media: davinci: vpif_display: Mix memory leak on probe error path
   c3b51c11c836 selftests/bpf: fix a typo in map in map test
   c9feebab869c powerpc/4xx: Fix error return path in ppc4xx_msi_probe()
   35fa5df6c79a powerpc/powernv: Fix concurrency issue with npu->mmio_atsd_usage
   7e3d17181c13 gpio: tegra: Move driver registration to subsys_init level
   9a5cbf5c84a1 pinctrl: berlin: fix 'pctrl->functions' allocation in berlin_pinctrl_build_state
   074f319a5c13 Bluetooth: h5: Fix missing dependency on BT_HCIUART_SERDEV
   516771283149 i2c: aspeed: Add an explicit type casting for *get_clk_reg_val
   e6ab983acd1b ethtool: Remove trailing semicolon for static inline
   0906eb972eea ALSA: hda/realtek - Add mute LED quirk for HP Spectre x360
   c6fe80156828 misc: mic: SCIF Fix scif_get_new_port() error handling
   40b9d96cea9f tc-testing: remove duplicate spaces in connmark match patterns
   86bebb604160 tc-testing: flush gact actions on test teardown
   e114758826f5 ARC: [plat-axs*]: Enable SWAP
   f688bf1511c9 switchtec: Fix Spectre v1 vulnerability
   5b7497c02dac x86/apic/vector: Make error return value negative
   0d07d02abd58 x86/process: Don't mix user/kernel regs in 64bit __show_regs()
   c6f8e398c10e x86/microcode: Update the new microcode revision unconditionally
   e0a8f85b0aee x86/microcode: Make sure boot_cpu_data.microcode is up-to-date
   875872547357 cpu/hotplug: Prevent state corruption on error rollback
   6b7b020bef06 cpu/hotplug: Adjust misplaced smb() in cpuhp_thread_fun()
   a4db12abb871 ALSA: hda - Fix cancel_work_sync() stall from jackpoll work
   ce987db2b52f memory: ti-aemif: fix a potential NULL-pointer dereference
   8bf0dc8d0a67 ACPI / LPSS: Force LPSS quirks on boot
   e8cc3b38a0b6 ARC: [plat-axs*/plat-hsdk]: Allow U-Boot to pass MAC-address to the kernel
   18d40b7836d4 KVM: x86: Do not re-{try,execute} after failed emulation in L2
   4ff64069721a KVM: x86: Default to not allowing emulation retry in kvm_mmu_page_fault
   3e88f92cd118 KVM: x86: Merge EMULTYPE_RETRY and EMULTYPE_ALLOW_REEXECUTE
   172c718af8b2 KVM: x86: Invert emulation re-execute behavior to make it opt-in
   9a89243cb1c7 KVM: VMX: Do not allow reexecute_instruction() when skipping MMIO instr
   a7e360b1086b KVM: x86: SVM: Set EMULTYPE_NO_REEXECUTE for RSM emulation
   625a6bcb11a2 KVM: s390: vsie: copy wrapping keys to right place
   33cd6d44e8c6 KVM: PPC: Book3S HV: Use correct pagesize in kvm_unmap_radix()
   9e7e9f25ef3e KVM: arm/arm64: Clean dcache to PoC when changing PTE due to CoW
   a2359d3d80fe arm64: KVM: Only force FPEXC32_EL2.EN if trapping FPSIMD
   e9773e97f502 Btrfs: fix data corruption when deduplicating between different files
   29d76c9853a2 btrfs: fix qgroup_free wrong num_bytes in btrfs_subvolume_reserve_metadata
   15c4b1902f0e cifs: connect to servername instead of IP for IPC$ share
   dc0416dcd3ab smb3: check for and properly advertise directory lease support
   d88717b6ce78 SMB3: Backup intent flag missing for directory opens with backupuid mounts
   521983976c38 MIPS: VDSO: Match data page cache colouring when D$ aliases
   67b987648258 android: binder: fix the race mmap and alloc_new_buf_locked
   c583d8956d83 block: bfq: swap puts in bfqg_and_blkg_put
   d927dea6392d block: don't warn when doing fsync on read-only devices
   56935391aba9 nbd: don't allow invalid blocksize settings
   e847a545edae scsi: lpfc: Correct MDS diag and nvmet configuration
   faeb7c279e48 mac80211: don't update the PM state of a peer upon a multicast frame
   15a6f8974a8c memory_hotplug: fix kernel_panic on offline page processing
   f1549c67f23f mm/hugetlb: filter out hugetlb pages if HUGEPAGE migration is not supported.
   c0cbb9e5d448 HID: input: fix leaking custom input node name
   81bb35902b63 HID: i2c-hid: Fix flooded incomplete report after S3 on Rayd touchscreen
   7bc3f187fd30 HID: core: fix grouping by application
   e114a409eef6 HID: multitouch: fix Elan panels with 2 input modes declaration
   b94023f1ab51 i2c: i801: fix DNV's SMBCTRL register offset
   824ca3763057 i2c: xiic: Make the start and the byte count write atomic
   dfba61ec760e Linux 4.18.8
   d27f3eb84d52 ASoC: wm8994: Fix missing break in switch
   e496c9a4c17d HID: redragon: fix num lock and caps lock LEDs
   838ddbf08cc7 x86: kvm: avoid unused variable warning
   d9b47449c1a1 kvm: x86: Set highest physical address bits in non-present/reserved SPTEs
   f9acfbec6652 kbuild: make missing $DEPMOD a Warning instead of an Error
   30566a3520bb x86/xen: don't write ptes directly in 32-bit PV guests
   22b734b0c850 x86/pae: use 64 bit atomic xchg function in native_ptep_get_and_clear
   9fdac0148450 debugobjects: Make stack check warning more informative
   977f362a1f7b drm/amdgpu: Don't warn on destroying a pinned BO
   ff9ac76caaee drm/amdgpu: Warn and update pin_size values when destroying a pinned BO
   e2a81121f62a drm/amdgpu: Make pin_size values atomic
   df058ec846fe drm/amdgpu: Keep track of amount of pinned CPU visible VRAM
   dd458c42c28a x86/tsc: Prevent result truncation on 32bit
   009a091aae1c drm/i915: set DP Main Stream Attribute for color range on DDI platforms
   7a5d47d5faa3 mm: respect arch_dup_mmap() return value
   153fedc6ba32 uapi/linux/keyctl.h: don't use C++ reserved keyword as a struct member name
   97cdbf04a052 drm/i915: Re-apply "Perform link quality check, unconditionally during long pulse"
   15ca3cf67c18 drm/amdgpu: fix incorrect use of drm_file->pid
   dd4a6ffb5bc1 drm/amdgpu: fix incorrect use of fcheck
   0d34ba1b3d33 drm/amdgpu:add VCN booting with firmware loaded by PSP
   e765455ea299 drm/amdgpu:add VCN support in PSP driver
   56c8d038c465 drm/amdgpu:add new firmware id for VCN
   467fce24d137 drm/amdgpu:add tmr mc address into amdgpu_firmware_info
   9eba3ada1217 drm/amdgpu: update tmr mc address
   1e7e7a541e08 drm/amd/display: Check if clock source in use before disabling
   dfe84b71296f drm/amd/display: Pass connector id when executing VBIOS CT
   433009dc1b81 drm/rockchip: vop: fix irq disabled after vop driver probed
   5e1f742d4bbb drm/rockchip: vop: split out core clock enablement into separate functions
   2781b277d589 drm/rockchip: lvds: add missing of_node_put
   590eda32ee42 drm/amd/display: Report non-DP display as disconnected without EDID
   823057fc0a2c drm/amd/display: Use requested HDMI aspect ratio
   691f2d763d07 drm/amd/display: update clk for various HDMI color depths
   b31d6596d7d2 drm/amd/display: Don't share clk source between DP and HDMI
   a74410c9d4e4 drm/amd/display: fix type of variable
   401a86f73216 drm/edid: Add 6 bpc quirk for SDC panel in Lenovo B50-80
   fd0f192ab66c drm/edid: Quirk Vive Pro VR headset non-desktop.
   ef78d745f0fd drm/amd/pp/Polaris12: Fix a chunk of registers missed to program
   e32774810036 drm/amd/powerplay: fixed uninitialized value
   8ec9ca91819f drm/amd/pp: Convert voltage unit in mV*4 to mV on CZ/ST
   4c518d5abdf4 drm/amdgpu: Fix RLC safe mode test in gfx_v9_0_enter_rlc_safe_mode
   7acffde7a949 drm/amdgpu: fix a reversed condition
   c8fe7d36e49b drm/amdgpu: update uvd_v6_0_ring_vm_funcs to use new nop packet
   7ddb29b09517 drm/i915: Free write_buf that we allocated with kzalloc.
   087ed76cb538 drm/i915: Increase LSPCON timeout
   cfc7d9e0064b drm/i915: Nuke the LVDS lid notifier
   a23feb39586a drm/i915/lpe: Mark LPE audio runtime pm as "no callbacks"
   760d0077abc1 btrfs: fix mount and ioctl device scan ioctl race
   49db06e7f366 btrfs: reorder initialization before the mount locks uuid_mutex
   1ef9a3009ba9 btrfs: lift uuid_mutex to callers of btrfs_parse_early_options
   71ddab54bee5 btrfs: lift uuid_mutex to callers of btrfs_scan_one_device
   40ce21951aab btrfs: use device_list_mutex when removing stale devices
   b57a7b0d4122 btrfs: rename local devices for fs_devices in btrfs_free_stale_devices(
   0b40d58d469f btrfs: extend locked section when adding a new device in device_list_add
   2d4bbb81bac6 btrfs: do btrfs_free_stale_devices outside of device_list_add
   8515518d6365 ARM: rockchip: Force CONFIG_PM on Rockchip systems
   c4e3acea0ebc arm64: rockchip: Force CONFIG_PM on Rockchip systems
   3ffbbcafe9a5 btrfs: Fix a C compliance issue
   c8c9b6c07166 btrfs: Don't remove block group that still has pinned down bytes
   122fe306d072 btrfs: lift uuid_mutex to callers of btrfs_open_devices
   f88b40c1472a btrfs: check-integrity: Fix NULL pointer dereference for degraded mount
   4fb2799b05c2 btrfs: tree-checker: Detect invalid and empty essential trees
   13b0dbef7dd5 btrfs: relocation: Only remove reloc rb_trees if reloc control has been initialized
   4c8415cf5b5a btrfs: fix in-memory value of total_devices after seed device deletion
   32455d96e3ee btrfs: replace: Reset on-disk dev stats value after replace
   464a90e380f2 btrfs: Exit gracefully when chunk map cannot be inserted to the tree
   f5cf5b0383e3 drm/etnaviv: fix crash in GPU suspend when init failed due to buffer placement
   fc73680f9cf7 kvm: nVMX: Fix fault vector for VMX operation at CPL > 0
   68b0ce42a7f4 KVM: vmx: track host_state.loaded using a loaded_vmcs pointer
   ac5395827d48 drm/amd/display: Read back max backlight value at boot
   5bd634167f2f clk: rockchip: Add pclk_rkpwm_pmu to PMU critical clocks in rk3399
   214d87aee3af powerpc/pseries: Avoid using the size greater than RTAS_ERROR_LOG_MAX.
   b070664de855 um: fix parallel building with O= option
   d7e16ec6ee19 powerpc/64s: Make rfi_flush_fallback a little more robust
   a4b8adb73ba1 powerpc/platforms/85xx: fix t1042rdb_diu.c build errors & warning
   813cbe22dc04 smb3: if server does not support posix do not allow posix mount option
   c2704b5e4688 SMB3: Number of requests sent should be displayed for SMB3 not just CIFS
   31bd39126330 CIFS: fix memory leak and remove dead code
   b91052f95055 smb3: fix reset of bytes read and written stats
   0cf56c159d64 cfq: Suppress compiler warnings about comparisons
   8b59b7c743dc RDS: IB: fix 'passing zero to ERR_PTR()' warning
   fe5e418c6bc3 selinux: cleanup dentry and inodes on error in selinuxfs
   c3fb1a354ccf selftests/powerpc: Kill child processes on SIGINT
   0510985d1460 iommu/omap: Fix cache flushes on L2 table entries
   8041b94f4eda ASoC: rt5677: Fix initialization of rt5677_of_match.data
   3fb096cdad59 staging: comedi: ni_mio_common: fix subdevice flags for PFI subdevice
   aee3d110a104 dm kcopyd: avoid softlockup in run_complete_job
   ab131d7f7a9c PCI: mvebu: Fix I/O space end address calculation
   00bb59025eaf xen/balloon: fix balloon initialization for PVH Dom0
   19f2289b4ec9 Input: do not use WARN() in input_alloc_absinfo()
   4d89c871694a NFSv4: Fix error handling in nfs4_sp4_select_mode()
   12af4639cfe2 scsi: aic94xx: fix an error code in aic94xx_init()
   d5fed61a3d2e blk-mq: count the hctx as active before allocating tag
   e904dff96e84 ACPI / scan: Initialize status to ACPI_STA_DEFAULT
   e1d82ba3d835 s390/dasd: fix panic for failed online processing
   70866799dd6f s390/dasd: fix hanging offline processing due to canceled worker
   151751ec48a2 brcmfmac: fix brcmf_wiphy_wowl_params() NULL pointer dereference
   d0e21e43cd3e block: bvec_nr_vecs() returns value for wrong slab
   c728031a3535 perf probe powerpc: Fix trace event post-processing
   6f3bddbfb636 powerpc: Fix size calculation using resource_size()
   118522ed5fa7 powerpc/uaccess: Enable get_user(u64, *p) on 32-bit
   c565269d06e9 bpf: fix bpffs non-array map seq_show issue
   77197f8d9628 pinctrl: axp209: Fix NULL pointer dereference after allocation
   0fbcbc408cec f2fs: fix to clear PG_checked flag in set_page_dirty()
   ec3fb9172b86 net/9p: fix error path of p9_virtio_probe
   91ca7c5644c3 net/9p/trans_fd.c: fix race by holding the lock
   8542647689ad irqchip/bcm7038-l1: Hide cpu offline callback when building for !SMP
   e51977e08ef0 irqchip/stm32: Fix init error handling
   e71ea647e9ae RISC-V: Use KBUILD_CFLAGS instead of KCFLAGS when building the vDSO
   bd2b9872d3cb f2fs: fix avoid race between truncate and background GC
   7038712b79a1 f2fs: avoid race between zero_range and background GC
   aa8ce04f531f perf tools: Check for null when copying nsinfo.
   6d39ab3401ff coccicheck: return proper error code on fail
   243b6c6a90cc drm/amd/display: Guard against null crtc in CRC IRQ
   1e0892195475 PCI: Match Root Port's MPS to endpoint's MPSS as necessary
   0472229e385c net: hns3: Fix for phy link issue when using marvell phy driver
   b02fd8a8dc25 block: don't warn for flush on read-only device
   534dde34bb7d net: hns3: Fix for command format parsing error in hclge_is_all_function_id_zero
   faba3f032e96 perf arm spe: Fix uninitialized record error variable
   7da94d53075d ACPICA: ACPICA: add status check for acpi_hw_read before assigning return value
   08100b285966 RDMA/hns: Fix usage of bitmap allocation functions return values
   59e8e46ada76 ubi: Initialize Fastmap checkmapping correctly
   58d705bdcd85 tcp, ulp: add alias for all ulp modules
   30d2d473b6c2 netfilter: fix memory leaks on netlink_dump_start error
   2d24a4ca6204 platform/x86: asus-nb-wmi: Add keymap entry for lid flip action on UX360
   3bf9fa21774a netfilter: x_tables: do not fail xt_alloc_table_info too easilly
   8dea99cf8b43 mfd: sm501: Set coherent_dma_mask when creating subdevices
   c63f900720ba ipvs: fix race between ip_vs_conn_new() and ip_vs_del_dest()
   df1ce63447ea s390/kdump: Fix memleak in nt_vmcoreinfo
   875fefda91d4 netfilter: ip6t_rpfilter: set F_IFACE for linklocal addresses
   bdcdbe6e48f0 samples/bpf: all XDP samples should unload xdp/bpf prog on SIGTERM
   2262b26d750d bpf, sockmap: fix leakage of smap_psock_map_entry
   ea775b698008 net/xdp: Fix suspicious RCU usage warning
   7fb58bc7549d bpf, sockmap: fix sock_map_ctx_update_elem race with exist/noexist
   4cd728b4b50a tcp, ulp: fix leftover icsk_ulp_ops preventing sock from reattach
   98d30c6ae96a bpf, sockmap: fix map elem deletion race with smap_stop_sock
   af160422460e platform/x86: intel_punit_ipc: fix build errors
   56d0f1c6d4d2 fs/dcache.c: fix kmemcheck splat at take_dentry_name_snapshot()
   8bca1a92d8b8 mm: make DEFERRED_STRUCT_PAGE_INIT explicitly depend on SPARSEMEM
   b9f9fc3844d8 mm/fadvise.c: fix signed overflow UBSAN complaint
   dfb5ad65ca17 powerpc/topology: Get topology for shared processors at boot
   3940236559d1 pwm: meson: Fix mux clock names
   216011668891 IB/hfi1: Invalid NUMA node information can cause a divide by zero
   8fb30bf797fe i2c: core: ACPI: Make acpi_gsb_i2c_read_bytes() check i2c_transfer return value
   106fabc844a1 x86/mce: Add notifier_block forward declaration
   34f91b3d0e55 virtio: pci-legacy: Validate queue pfn
   cad3dc0a4563 apparmor: fix an error code in __aa_create_ns()
   fb6fc1b6a408 scripts: modpost: check memory allocation results
   13892551c76f workqueue: re-add lockdep dependencies for flushing
   b7a3d36d6c32 workqueue: skip lockdep wq dependency in cancel_work_sync()
   798d80a612dd fat: validate ->i_start before using
   739956488c79 fs/proc/kcore.c: use __pa_symbol() for KCORE_TEXT list entries
   69177abd89a5 iommu/rockchip: Move irq request past pm_runtime_enable
   d30de7347e29 hfsplus: fix NULL dereference in hfsplus_lookup()
   5a476ca109bc iommu/rockchip: Handle errors returned from PM framework
   9f0114724473 reiserfs: change j_timestamp type to time64_t
   df67ae0bd579 fs/proc/vmcore.c: hide vmcoredd_mmap_dumps() for nommu builds
   0de1a99801ff fork: don't copy inconsistent signal handler state to child
   19ca1a2830e9 sunrpc: Don't use stack buffer with scatterlist
   3d872bd5ae87 hfs: prevent crash on exit from failed search
   84ac254ed287 hfsplus: don't return 0 when fill_super() failed
   8043c90bada1 cifs: check if SMB2 PDU size has been padded and suppress the warning
   ded39314abc0 hv_netvsc: ignore devices that are not PCI
   c56a2888ac2b vhost: correctly check the iova range when waking virtqueue
   a6fddbba3e63 mlxsw: spectrum_switchdev: Do not leak RIFs when removing bridge
   98c4cc4c81e8 sctp: hold transport before accessing its asoc in sctp_transport_get_next
   eb4f28d8f9e0 nfp: wait for posted reconfigs when disabling the device
   ade76212f72a ip6_vti: fix a null pointer deference when destroy vti6 tunnel
   b7f172c4b692 ip6_vti: fix creating fallback tunnel device for vti6
   aff760646722 Revert "net: stmmac: Do not keep rearming the coalesce timer in stmmac_xmit"
   e366979eb8f0 r8169: set RxConfig after tx/rx is enabled for RTL8169sb/8110sb devices
   0981fb60a006 net/mlx5: Fix SQ offset in QPs with small RQ
   2ff8354c2317 net/ipv6: Put lwtstate when destroying fib6_info
   b24b39afa411 net/ipv6: Only update MTU metric if it set
   6568eedbe939 net/ipv6: init ip6 anycast rt->dst.input as ip6_input
   078e7d112fbc ipv6: don't get lwtstate twice in ip6_rt_copy_init()
   23f64bad173c net: macb: Fix regression breaking non-MDIO fixed-link PHYs
   630403ba9183 erspan: set erspan_ver to 1 by default when adding an erspan dev
   0f6387a1087d sctp: remove useless start_fail from sctp_ht_iter in proc
   b68d53c36108 tipc: fix the big/little endian issue in tipc_dest
   78d378ed13e8 hv_netvsc: Fix a deadlock by getting rtnl lock earlier in netvsc_probe()
   36b59c8e48e4 tipc: fix a missing rhashtable_walk_exit()
   f6fb6b2993ab net/sched: act_pedit: fix dump of extended layered op
   a2cea09396bd bnxt_en: Do not adjust max_cp_rings by the ones used by RDMA.
   e779d52e66d1 bnxt_en: Clean up unused functions.
   510fd03c5231 net: sched: action_ife: take reference to meta module
   e57d65cf4692 act_ife: fix a potential deadlock
   5c1dfc425994 act_ife: move tcfa_lock down to where necessary
   8563554006c5 vti6: remove !skb->ignore_df check from vti6_xmit()
   028d57cc5e44 tcp: do not restart timewait timer on rst reception
   ad99830d972c r8169: add support for NCube 8168 network card
   2b3b1f121306 r8152: disable RX aggregation on new Dell TB16 dock
   5379200c84c2 qlge: Fix netdev features configuration.
   9c03cfa220c1 net: sched: Fix memory exposure from short TCA_U32_SEL
   716fc5ce90cf net: macb: do not disable MDIO bus at open/close time
   5b47db7fa7b1 net: bcmgenet: use MAC link status for fixed phy
   e242b5c405b9 ipv4: tcp: send zero IPID for RST and ACK sent in SYN-RECV and TIME-WAIT state
   f5c34c4a092e act_ife: fix a potential use-after-free

(From OE-Core rev: 0f455c8a37223617fffb3aac06325bf0a79cbe2a)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-22 15:52:12 -07:00
Bruce Ashfield
b146493ab0 linux-yocto/4.14: fix kernel configuration audit warnings
Some of the reference BSPs for 4.14 need fixes that have been done
on 4.18 and master to silence warnings, so we cherry-pick the
following changes:

  f991b21d7858 config: flash: drop obselete config values
  da7524cf2980 edgerouter: Drop the obsolete kernel options
  675c5b0cde65 cfg: drop MACH_VERSATILE_PB and MACH_VERSTAILE_AB
  0936b18ed8d5 cfg/timer/rtc: toggle RTC_CLASS instead of GEN_RTC
  634d8f2230d1 mpc8315e-rdb: Drop the obsolete kernel options
  9beb3a28736e rt: drop obselete configuration options

(From OE-Core rev: bfe6a9b2d1a118791cebcd1019f3e80bced294c6)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-22 15:52:12 -07:00
Bruce Ashfield
86d52f6007 linux-yocto: tweak RTC configuration
[
  Author: Jens Rehsack <sno@netbsd.org>
  Date:   Thu Sep 13 19:29:54 2018 +0200

    cfg/timer/rtc: toggle RTC_CLASS instead of GEN_RTC

    In 2016, the final removal of GEN_RTC happened with commit
    6705fdb3 char/genrtc: remove the rest of the driver

    What is remaining, is a legacy driver (char/rtc) and the new
    RTC_CLASS framework - which supports everything except S390
    and Atari. Many platforms automatically support the right
    driver for RTC_CLASS framework.

    Signed-off-by: Jens Rehsack <sno@netbsd.org>
    Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
]

(From OE-Core rev: 7ddcba89a3bbed4b582768661585684ffdc85f31)

Signed-off-by: Jens Rehsack <sno@netbsd.org>
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-22 15:52:12 -07:00
Bruce Ashfield
d35de606ba linux-yocto/4.18: update to v4.18.7
Updating the 4.18 kernel with the latest -stable releases that comprise
the following commits:

   8ea7eadbef2f Linux 4.18.7
   239043b876b8 arm64: mm: always enable CONFIG_HOLES_IN_ZONE
   a70bc6c6a621 cpuidle: menu: Retain tick when shallow state is selected
   7f401f160a9c udf: Fix mounting of Win7 created UDF filesystems
   c1ef3feca667 fs/quota: Fix spectre gadget in do_quotactl
   7ab1035b3fc6 crypto: caam/qi - fix error path in xts setkey
   3290dec64398 crypto: caam/jr - fix descriptor DMA unmapping
   f39f1f81c74e crypto: caam - fix DMA mapping direction for RSA forms 2 & 3
   26b165edc3e4 crypto: arm64/sm4-ce - check for the right CPU feature bit
   dce1a2c6f339 crypto: aesni - Use unaligned loads from gcm_context_data
   61c8901dbf43 crypto: vmx - Fix sleep-in-atomic bugs
   8d02bd8d4a6c perf auxtrace: Fix queue resize
   5ad671c8520d mm, dev_pagemap: Do not clear ->mapping on final put
   ff1663fc9483 cap_inode_getsecurity: use d_find_any_alias() instead of d_find_alias()
   476738bbc962 kconfig: fix "Can't open ..." in parallel build
   a0725910f3e2 bcache: release dc->writeback_lock properly in bch_writeback_thread()
   437d23a6792a libnvdimm: fix ars_status output length calculation
   54ce46aa9870 libnvdimm: Use max contiguous area for namespace size
   118cb27721f9 getxattr: use correct xattr length
   fd13ae7e102a udlfb: set line_length in dlfb_ops_set_par
   f551b193299b udlfb: handle allocation failure
   0b5373ea7298 udlfb: make a local copy of fb_ops
   af0890aa4565 udlfb: set optimal write delay
   76aab4b1d804 udlfb: don't switch if we are switching to the same videomode
   1a5656245bd6 udlfb: fix display corruption of the last line
   27f6b46dd248 udlfb: fix semaphore value leak
   1a9ec6296e18 fb: fix lost console when the user unplugs a USB adapter
   f72831f9cbb6 pwm: tiehrpwm: Fix disabling of output of PWMs
   e0e08ede24c9 pwm: tiehrpwm: Don't use emulation mode bits to control PWM output
   3ce08627b3e3 ubifs: Fix synced_i_size calculation for xattr inodes
   f9b28f9a2b7f ubifs: Fix directory size calculation for symlinks
   cef393ce9aea ubifs: xattr: Don't operate on deleted inodes
   ce0504b74d04 ubifs: Check data node size before truncate
   aa8298662e52 Revert "UBIFS: Fix potential integer overflow in allocation"
   3863ba26f271 ubifs: Fix memory leak in lprobs self-check
   7131c193fcc3 userns: move user access out of the mutex
   1497f1e0714a sys: don't hold uts_sem while accessing userspace memory
   11f44063756f iommu/vt-d: Fix dev iotlb pfsid use
   e7feba89574d iommu/vt-d: Add definitions for PFSID
   3245925a8e9c iommu/ipmmu-vmsa: Don't register as BUS IOMMU if machine doesn't have IPMMU-VMSA
   2d0363ffc0ab mm/tlb: Remove tlb_remove_table() non-concurrent condition
   6bdfc65b5062 pwm: omap-dmtimer: Return -EPROBE_DEFER if no dmtimer platform data
   1ba930714d12 ARM: dts: am57xx-idk: Enable dual role for USB2 port
   da43c1c103c8 ARM: tegra: Fix Tegra30 Cardhu PCA954x reset
   1750f49b26c2 NFSv4: Fix a sleep in atomic context in nfs4_callback_sequence()
   c8f825303e49 NFSv4: Fix locking in pnfs_generic_recover_commit_reqs
   b8cbfd88d132 NFSv4 client live hangs after live data migration recovery
   e16dac834b32 nfsd: fix leaked file lock with nfs exported overlayfs
   f7169718defc pnfs/blocklayout: off by one in bl_map_stripe()
   6ee996baf1ab block, bfq: return nbytes and not zero from struct cftype .write() method
   fbd0c9d27ccb xtensa: increase ranges in ___invalidate_{i,d}cache_all
   27077422f951 xtensa: limit offsets in __loop_cache_{all,page}
   3bb34bba5624 KVM: PPC: Book3S: Fix guest DMA when guest partially backed by THP pages
   f90625c7172b KVM: VMX: fixes for vmentry_l1d_flush module parameter
   09747f7004ab i2c: designware: Re-init controllers with pm_disabled set on resume
   7bb7ef09b3db ALSA: ac97: fix unbalanced pm_runtime_enable
   d7cff0016036 ALSA: ac97: fix check of pm_runtime_get_sync failure
   52977303d997 ALSA: ac97: fix device initialization in the compat layer
   cd67823c9d34 PM / sleep: wakeup: Fix build error caused by missing SRCU support
   00e4955e677b cpufreq: governor: Avoid accessing invalid governor_data
   f83952c64769 cpuidle: menu: Handle stopped tick more aggressively
   cc8ea9dd0c24 sched: idle: Avoid retaining the tick when it has been stopped
   fe759487ee98 drivers/block/zram/zram_drv.c: fix bug storing backing_dev
   1cc1c4e06562 ACPICA: Clear status of all events when entering sleep states
   ab08867f08e4 ACPICA: AML Parser: skip opcodes that open a scope upon parse failure
   0c3339c82b9e ovl: fix wrong use of impure dir cache in ovl_iterate()
   8856ca57dcb1 mfd: hi655x: Fix regmap area declared size for hi655x
   f8d649720924 uprobes: Use synchronize_rcu() not synchronize_sched()
   ee20433f60ae livepatch: Validate module/old func name length
   640d29c1236e printk/tracing: Do not trace printk_nmi_enter()
   cfe603dd4e39 tracing/blktrace: Fix to allow setting same value
   b0d32c7b0cda tracing: Do not call start/stop() functions when tracing_on does not change
   187bee9b94fb rtc: omap: fix potential crash on power off
   949d4ca049eb rtc: omap: fix resource leak in registration error path
   ad7a3f8c456f vmw_balloon: fix VMCI use when balloon built into kernel
   32b5be5b44e9 vmw_balloon: VMCI_DOORBELL_SET does not check status
   45696b968345 vmw_balloon: do not use 2MB without batching
   f288edefc2c6 vmw_balloon: fix inflation of 64-bit GFNs
   a5e6360c4322 eventpoll.h: wrap casts in () properly
   5f4a5b6fed24 extcon: Release locking when sending the notification of connector state
   cbdfa40c8187 iio: ad9523: Fix return value for ad952x_store()
   10508adb4df0 iio: ad9523: Fix displayed phase
   5ef899676e25 iio: sca3000: Fix missing return in switch
   35949ad3f2d7 Drivers: hv: vmbus: Reset the channel callback in vmbus_onoffer_rescind()
   4f8eac4396c7 Drivers: hv: vmbus: Fix the offer_in_progress in vmbus_process_offer()
   d7b108aae76c uart: fix race between uart_put_char() and uart_shutdown()
   6cdc67be3e12 dm writecache: fix a crash due to reading past end of dirty_bitmap
   d94cf7087099 dm crypt: don't decrease device limits
   25b25e552439 dm cache metadata: set dirty on all cache blocks after a crash
   7bbb3231d6f7 dm cache metadata: save in-core policy_hint_size to on-disk superblock
   f308e9fbe04f dm thin: stop no_space_timeout worker when switching to write-mode
   0da098366e8c dm integrity: change 'suspending' variable from bool to int
   6d7bd0a68a4a net/9p/trans_fd.c: fix race-condition by flushing workqueue before the kfree()
   fe7e153d9564 net/9p/client.c: version pointer uninitialized
   372ed5efc933 9p/virtio: fix off-by-one error in sg list bounds check
   ba74c64c00a5 fs/9p/xattr.c: catch the error of p9_client_clunk when setting xattr failed
   db6cb8a7c458 9p: fix multiple NULL-pointer-dereferences
   a34932007267 RDMA/rxe: Set wqe->status correctly if an unexpected response is received
   8a3f37b0da74 ib_srpt: Fix a use-after-free in __srpt_close_all_ch()
   41cc5e9aff78 ib_srpt: Fix a use-after-free in srpt_close_ch()
   2ea037fe87b1 RDMA/mlx5: Fix shift overflow in mlx5_ib_create_wq
   c34579cc3ea7 overflow.h: Add arithmetic shift helper
   74d835f7fdf7 IB/srpt: Support HCAs with more than two ports
   32a46b60c50e IB/srpt: Fix srpt_cm_req_recv() error path (2/2)
   e46df54477b4 IB/srpt: Fix srpt_cm_req_recv() error path (1/2)
   103a3a62e0fb IB/mlx5: Fix leaking stack memory to userspace
   e48fd87e93e1 IB/mlx5: Honor cnt_set_id_valid flag instead of set_id
   7ab793382972 ocxl: Fix page fault handler in case of fault on dying process
   9833940072b3 cxl: Fix wrong comparison in cxl_adapter_context_get()
   6757519a48ca powerpc/powernv/pci: Work around races in PCI bridge enabling
   96f829b77bf1 powerpc64/ftrace: Include ftrace.h needed for enable/disable calls
   d4e41dc984f2 powerpc/nohash: fix pte_access_permitted()
   bb691eafb6df powerpc/pkeys: Preallocate execute-only key
   44d146b99b08 powerpc/pkeys: Fix calculation of total pkeys.
   5e2727bf84c5 powerpc/pkeys: Save the pkey registers before fork
   0d86f5345672 powerpc/pkeys: key allocation/deallocation must not change pkey registers
   72ebe30452ef powerpc/pkeys: Deny read/write/execute by default
   8ed3d6a90178 powerpc/pkeys: Give all threads control of their key permissions
   174f12c1f3ef powerpc/pseries: Fix endianness while restoring of r3 in MCE handler.
   8bfd9029bc79 powerpc/64s: Fix page table fragment refcount race vs speculative references
   7c0850fb2b60 powerpc/fadump: handle crash memory ranges array index overflow
   ec4ad94be6ce Fix kexec forbidding kernels signed with keys in the secondary keyring to boot
   54fb49e87c23 Replace magic for trusting the secondary keyring with #define
   686baf538b8c mailbox: xgene-slimpro: Fix potential NULL pointer dereference
   71849f9c7c55 media: Revert "[media] tvp5150: fix pad format frame height"
   a0e70000075e libertas: fix suspend and resume for SDIO connected cards
   9be8dc35bceb dma-buf: Move BUG_ON from _add_shared_fence to _add_shared_inplace
   e561eea4a424 apparmor: fix bad debug check in apparmor_secid_to_secctx()
   ac89e9c33de3 block: Ensure that a request queue is dissociated from the cgroup controller
   d367a6927ffd block: Introduce blk_exit_queue()
   d9ef3176a398 blkcg: Introduce blkg_root_lookup()
   0c2e7eb1a4c3 block: really disable runtime-pm for blk-mq
   cde67159df4d block: blk_init_allocated_queue() set q->fq as NULL in the fail case
   4bc567311980 block: fix infinite loop if the device loses discard capability
   d3949a0a1341 readahead: stricter check for bdi io_pages
   3a9bc441b671 mmc: renesas_sdhi_internal_dmac: fix #define RST_RESERVED_BITS
   74b83d076cdf mmc: renesas_sdhi_internal_dmac: mask DMAC interrupts
   cf8871c4121c mmc: block: Fix unsupported parallel dispatch of requests
   e27421b3b394 spi: cadence: Change usleep_range() to udelay(), for atomic context
   db597647506d spi: spi-fsl-dspi: Fix imprecise abort on VF500 during probe
   3b45f480496c spi: pxa2xx: Add support for Intel Ice Lake
   e52c91662cef spi: davinci: fix a NULL pointer dereference
   b84ea5862258 9p/net: Fix zero-copy path in the 9p virtio transport
   8c37a4ca229d net: mac802154: tx: expand tailroom if necessary
   6ce27549cc14 net: 6lowpan: fix reserved space for single frames
   832fa8183637 rcu: Make expedited GPs handle CPU 0 being offline
   3a2c23838bc5 Linux 4.18.6
   8e6d15678656 x86/dumpstack: Don't dump kernel memory based on usermode RIP
   6575b15002bf cdrom: Fix info leak/OOB read in cdrom_ioctl_drive_status
   f90252556e1a watchdog: Mark watchdog touch functions as notrace
   0f9bf062f1f1 power: generic-adc-battery: check for duplicate properties copied from iio channels
   7ffb7b7e8348 power: generic-adc-battery: fix out-of-bounds write when copying channel properties
   86b0dd9d0ebc PM / clk: signedness bug in of_pm_clk_add_clks()
   350192f495ae clk: npcm7xx: fix memory allocation
   a8b0c3c7c494 clk: rockchip: fix clk_i2sout parent selection bits on rk3399
   f905fc199d7d mtd: rawnand: qcom: wait for desc completion in all BAM channels
   21ab6022cb67 mtd: rawnand: marvell: add suspend and resume hooks
   f05cb63dc0dc mtd: rawnand: fsmc: Stop using chip->read_buf()
   307b0cf42c9b mtd: rawnand: hynix: Use ->exec_op() in hynix_nand_reg_write_op()
   d47b35b84da5 iscsi target: fix session creation failure handling
   9558fc1bab40 scsi: core: Avoid that SCSI device removal through sysfs triggers a deadlock
   807d1d299a04 scsi: sysfs: Introduce sysfs_{un,}break_active_protection()
   373a1411a103 scsi: mpt3sas: Fix _transport_smp_handler() error path
   8039fa72ff4d scsi: mpt3sas: Fix calltrace observed while running IO & reset
   7624ac8705f5 tpm: separate cmd_ready/go_idle from runtime_pm
   b64b3b46074e tpm: Return the actual size when receiving an unsupported command
   d07d4e8b68fd MIPS: lib: Provide MIPS64r6 __multi3() for GCC < 7
   8f55e1f507d6 MIPS: Change definition of cpu_relax() for Loongson-3
   9238ea28869e MIPS: Always use -march=<arch>, not -<arch> shortcuts
   8d6a4b45018c MIPS: memset.S: Fix byte_fixup for MIPSr6
   d06e5e4a8a28 MIPS: Correct the 64-bit DSP accumulator register size
   968a9a4a8a97 kprobes: Make list and blacklist root user read only
   2f56c8af315b kprobes/arm: Fix %p uses in error messages
   10334e1ad3d0 kprobes: Replace %p with other pointer types
   b143efb4242c kprobes: Show blacklist addresses as same as kallsyms does
   d6c96d240daa s390/purgatory: Add missing FORCE to Makefile targets
   5a2e51f95908 s390/purgatory: Fix crash with expoline enabled
   87509861a989 s390/pci: fix out of bounds access during irq setup
   b51627dc7fdb s390/numa: move initial setup of node_to_cpumask_map
   d695333c5de6 s390/qdio: reset old sbal_state flags
   dacf5e594708 s390: fix br_r1_trampoline for machines without exrl
   6a32f6f857af s390/lib: use expoline for all bcr instructions
   120c776a2ab1 s390/mm: fix addressing exception after suspend/resume
   77207a7ee4b6 x86: Allow generating user-space headers without a compiler
   3fef5c2f4d9c x86/entry/64: Wipe KASAN stack shadow before rewind_stack_do_exit()
   b1491daecd6e hwmon: (nct6775) Fix potential Spectre v1
   2ff13cec042e x86/speculation/l1tf: Increase l1tf memory limit for Nehalem+
   084c0d5b4cf5 x86/spectre: Add missing family 6 check to microcode check
   c6941f12e9e4 x86/irqflags: Mark native_restore_fl extern inline
   20a103149aa5 x86/nmi: Fix NMI uaccess race against CR3 switching
   aa3ad4314551 x86/vdso: Fix lsl operand order
   306f625c2231 scsi: qla2xxx: Fix stalled relogin
   82964fac7ac2 pinctrl: freescale: off by one in imx1_pinconf_group_dbg_show()
   f8fa13e1f53a soc: qcom: rmtfs-mem: fix memleak in probe error paths
   e550a74a7d12 ASoC: wm_adsp: Correct DSP pointer for preloader control
   00bdd9bfd3eb ASoC: sirf: Fix potential NULL pointer dereference
   cde7486adce1 ASoC: zte: Fix incorrect PCM format bit usages
   aeb4906d3222 ASoC: dpcm: don't merge format from invalid codec dai
   a8d156323e5b b43/leds: Ensure NUL-termination of LED name string
   579cdda6ba4c b43legacy/leds: Ensure NUL-termination of LED name string
   dccaa28ec448 udl-kms: avoid division
   930e10ea2156 udl-kms: fix crash due to uninitialized memory
   723119f9aab5 udl-kms: handle allocation failure
   69900129d68f udl-kms: change down_interruptible to down
   684ca9975c53 lib/vsprintf: Do not handle %pO[^F] as %px
   15b584de9ab1 fuse: Add missed unlock_page() to fuse_readpages_fill()
   c00f07a1f66c fuse: Fix oops at process_init_reply()
   e4631745286f fuse: umount should wait for all requests
   19e0fafd9e68 fuse: fix unlocked access to processing queue
   bcdb9bd38da6 fuse: fix double request_end()
   6ffb58d4f74e fuse: fix initial parallel dirops
   8bebc8585fab fuse: Don't access pipe->buffers without pipe_lock()
   9b4b6acf0280 KVM: x86: SVM: Call x86_spec_ctrl_set_guest/host() with interrupts disabled
   150b420a2959 KVM: x86: ensure all MSRs can always be KVM_GET/SET_MSR'd
   1e227ae17f08 x86/process: Re-export start_thread()
   e0fb4e0e375e x86/vdso: Fix vDSO build if a retpoline is emitted
   0ea75fa0f6bd x86/speculation/l1tf: Suggest what to do on systems with too much RAM
   ed1fa683e01b x86/speculation/l1tf: Fix off-by-one error when warning that system has too much RAM
   63da8b8a387b x86/speculation/l1tf: Fix overflow in l1tf_pfn_limit() on 32bit
   e43594dabdc8 mm/tlb, x86/mm: Support invalidating TLB caches for RCU_TABLE_FREE
   575a66cbe443 mm: move tlb_table_flush to tlb_flush_mmu_free
   8c7181608026 platform/x86: ideapad-laptop: Apply no_hw_rfkill to Y20-15IKBM, too
   6ef37c5f0142 platform/x86: wmi: Do not mix pages and kmalloc
   6bdd19331fc6 x86/gpu: reserve ICL's graphics stolen memory
   4debdc1d06a7 nvme-pci: add a memory barrier to nvme_dbbuf_update_and_check_event
   7036ab018947 ext4: fix race when setting the bitmap corrupted flag
   eafb2d82ca7e ext4: reset error code in ext4_find_entry in fallback
   3f2541a7e58c ext4: sysfs: print ext4_super_block fields as little-endian
   6891c3c114fc ext4: use ext4_warning() for sb_getblk failure
   f34a0bc19575 ext4: check for NUL characters in extended attribute's name
   55472d881c48 stop_machine: Atomically queue and wake stopper threads
   3fc7316acc67 stop_machine: Reflow cpu_stop_queue_two_works()
   19a5808f8b73 perf kvm: Fix subcommands on s390
   32a52f0bded3 s390/kvm: fix deadlock when killed by oom
   1d0bd8c92361 KVM: arm/arm64: Skip updating PTE entry if no change
   c7bcb09e4e35 KVM: arm/arm64: Skip updating PMD entry if no change
   166b04aee70e KVM: arm/arm64: Fix lost IRQs from emulated physcial timer when blocked
   52df41f653bb KVM: arm/arm64: Fix potential loss of ptimer interrupts
   5c2fd3598fb8 arm64: dts: rockchip: corrected uart1 clock-names for rk3328
   88e798da7c29 arm64: mm: check for upper PAGE_SHIFT bits in pfn_valid()
   ca41d82d4e66 arm64: Handle mismatched cache type
   faed5cb96b91 arm64: Fix mismatched cache line size detection
   bc10c237ecd8 kprobes/arm64: Fix %p uses in error messages
   a4ed70a386c0 printk/nmi: Prevent deadlock when accessing the main log buffer in NMI
   50631d1b2613 printk: Create helper function to queue deferred console handling
   b0eea4d14b94 printk: Split the code for storing a message into the log buffer
   2297091c7a6c iommu/arm-smmu: Error out only if not enough context interrupts
   b5563064b99e regulator: arizona-ldo1: Use correct device to get enable GPIO
   29ac604e627b bpf, arm32: fix stack var offset in jit
   6289b80699af hwmon: (k10temp) 27C Offset needed for Threadripper2
   df5c4d19606d Btrfs: send, fix incorrect file layout after hole punching beyond eof
   23dd2c5d90a1 Btrfs: fix send failure when root has deleted files still open
   7ecc8a106c53 Btrfs: fix btrfs_write_inode vs delayed iput deadlock
   84717fb63dad Btrfs: fix mount failure after fsync due to hard link recreation
   8b08e816f47a btrfs: don't leak ret from do_chunk_alloc
   258c1eb7cde6 btrfs: use correct compare function of dirty_metadata_bytes
   fb35368feb7f smb3: fill in statfs fsid and correct namelen
   107d9ee2e080 smb3: don't request leases in symlink creation and query
   1316a0cc27d1 smb3: Do not send SMB3 SET_INFO if nothing changed
   25b981bfe192 smb3: enumerating snapshots was leaving part of the data off end
   a66f62737197 cifs: check kmalloc before use
   a1ac808c81a6 cifs: use a refcount to protect open/closing the cached file handle
   5ba293d099ce cifs: add missing debug entries for kconfig options
   52b9e2a58be2 CIFS: fix uninitialized ptr deref in smb2 signing
   a673044fbe8b cifs: add missing support for ACLs in SMB 3.11
   08aee5c2c26f mei: don't update offset in write
   6bdbaa2fdd48 xprtrdma: Fix disconnect regression
   84342771f595 scsi: libsas: dynamically allocate and free ata host
   16edb8e6d472 scripts/kernel-doc: Escape all literal braces in regexes
   10bb2648f16c PATCH scripts/kernel-doc

(From OE-Core rev: db4c334fc376d7f7eab46fa956195020a1d3aee7)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-22 15:52:12 -07:00
Bruce Ashfield
66f9781874 linux-yocto: configuration warning fixes
Integrating the following commits to address kernel configuration
audit warnings:

  856794172e8f features/intel-pinctrl: Fix conflict with configs
  397b67321037 bsp/intel-x86: Rename CONFIG_R8723BE to CONFIG_RTL8723BE
  fca2a16483f2 features/thermal: Add dependency for kernel option
  b6110e2e8e55 features/tpm: fix conflict with configs and add dependency
  ee22bc1f8fcd features/mmc: modify dependency
  e50eb6bd929b features: drop the obsolete kernel option
  f5327047994f features/hostapd: drop obsolete configs
  48b54e625876 bsp/intel-x86: Drop configs that has been removed by kernel

(From OE-Core rev: a49c66844c8c3a87f8383085661ff59bfb045452)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-22 15:52:12 -07:00
Hongzhi.Song
52eac3e682 linux-yocto-rt: Add paravirt_kvm support for qemux86-64
This feature includes paravirtualized KVM guest support, including
KVMCLOCK for enhancing clock accuracy of guest OS.

(From OE-Core rev: 2b2238e5e81748475de8a339c33529484971b0ff)

Signed-off-by: He Zhe <zhe.he@windriver.com>
Signed-off-by: Hongzhi.Song <hongzhi.song@windriver.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-22 15:52:12 -07:00
Alex Kiernan
ce80e2572c kernel.bbclass: Avoid iterating over KERNEL_IMAGETYPES twice
During deploy we iterate over KERNEL_IMAGETYPES twice, with no consumer
of our changes in the interim. Collapse these two loops into one.

(From OE-Core rev: 8d3139640ed4cd4e196dc2d1f6ae02d612fb9564)

Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-22 15:52:12 -07:00
Alex Kiernan
b492b08a4d kernel: Fix modules tarball generation with usrmerge
When usrmerge is enabled the kernel modules aren't under /lib, but /usr/lib;
ensure we fetch the modules from the correct location so we don't have a
tarball which consists of a single symlink.

(From OE-Core rev: 62d2d7d12dda69d6019a1a2d5492450487e41bfd)

Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-22 15:52:12 -07:00
Alex Kiernan
f5603cac26 kernel-fitimage: Fix dangling symlink to image tree source
When deploying the its file, the target of the symlink is missing the its
extension, add it here.

(From OE-Core rev: df72761760d453b2dfc7cc2fa1344bb016df9712)

Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-22 15:52:12 -07:00
Alex Kiernan
4a49f5f617 Revert "kernel.bbclass: do not deploy fitImage; kernel-fitimage.bbclass does that."
This reverts commit 65cded55fa96b1ba72149a31689c081ac27af7f7.

The fitImage deployed here is the one generated in kernel-fitimage.bbclass,
whereas the one deployed by kernel-fitimage.bbclass is a raw image, so we
need the one deployed here keeping.

(From OE-Core rev: 798d2acc0141b13da7ddd18875a417b2df9d57b3)

Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-22 15:52:12 -07:00
Reto Schneider
8e5a7658a0 kernel-uimage.bbclass: Dependency on u-boot-mkimage-native for all uImages
u-boot-mkimage-native is needed to build any type of uImages, be it
the uImage target itself or for example uImage.lzma. The dependency
however gets only added when at least one of KERNEL_IMAGETYPE and
KERNEL_ALT_IMAGETYPE is exactly uImage. Building uImage.bin and uImage.lzma is
not possible this way.

This patch adds a dependency to u-boot-mkimage-native for all imagetypes which
contains the string uImage.

(From OE-Core rev: ac4ce0b07b2742c64d44f988ecb27e7200b5a0bc)

Signed-off-by: Reto Schneider <code@reto-schneider.ch>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-22 15:52:12 -07:00
Alexey Brodkin
cbd7c6294a binutils: Fix Glibc building for ARC
(From OE-Core rev: c2b7410aaac0c68dc1bcf8d0f4102ff55dc870aa)

Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-22 15:52:12 -07:00
Alexey Brodkin
651ede75e9 gcc: Fix specs generation for ARC
GCC's built-in spec for LD is missing a space after
"--eh-frame-hdr" thus with the next option merged together they
are not understood by LD and so LD fails.

Back-port from upstream GCC, see:
892142379c

(From OE-Core rev: 0757187bdbed3025b022a82dd85ee35dc7b71f1f)

Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-22 15:52:12 -07:00
Mingli Yu
c32b26ce8d glibc: fix Segmentation fault in gethostid.c
Linux gethostid: Check for NULL value from gethostbyname_r [BZ #23679]

A NULL value can happen with certain gethostbyname_r failures.

Before this patch, there is a Segmentation fault
as below:
 # /mybuild/hostid
 Segmentation fault
 # gdb /mybuild/hostid
 GNU gdb (GDB) 8.2
 Copyright (C) 2018 Free Software Foundation, Inc.
 License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
 This is free software: you are free to change and redistribute it.
 There is NO WARRANTY, to the extent permitted by law.
 Type "show copying" and "show warranty" for details.
 This GDB was configured as "x86_64-wrs-linux".
 Type "show configuration" for configuration details.
 For bug reporting instructions, please see:
 <http://www.gnu.org/software/gdb/bugs/>.
 Find the GDB manual and other documentation resources online at:
    <http://www.gnu.org/software/gdb/documentation/>.

 For help, type "help".
 Type "apropos word" to search for commands related to "word"...
 Reading symbols from /mybuild/hostid...done.
 (gdb) r
 Starting program: /mybuild/hostid

 Program received signal SIGSEGV, Segmentation fault.
 0x00007ffff7f0330e in gethostid () at ../sysdeps/unix/sysv/linux/gethostid.c:125
 125	  memcpy (&in, hp->h_addr,
 (gdb) bt
 #0  0x00007ffff7f0330e in gethostid () at ../sysdeps/unix/sysv/linux/gethostid.c:125
 #1  0x0000555555555159 in main ()

 # cat /mybuild/hostid.c
 #include <stdio.h>
 #include <unistd.h>

 int
 main(int argc, char *argv[])
 {
    long hostid;
    hostid = gethostid();
    printf("the hostid is %ld\n", hostid);

 }

(From OE-Core rev: 92c266fd9b1c4034a13bd5b102d1817df388a7b5)

Signed-off-by: Mingli Yu <Mingli.Yu@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-21 18:45:47 -07:00
Nathan Rossi
4aa1f858ef siteinfo.bbclass: Add LatticeMico32 architecture site info
Add the basic architecture site info targets for the LatticeMico32
architecture. This architecture does not target Linux.

(From OE-Core rev: 216f8ea907c8ac7e580e33dcbd12c0f30608bf74)

Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-21 18:45:47 -07:00
Nathan Rossi
42329b7bf0 qemu-targets.inc: Mark 'lm32' as softmmu only architecture
The lm32 architecture does not support linux-user within QEMU as it is
not a Linux supported target.

(From OE-Core rev: 2f6c85da5202cdd0d2da2ce53e0a62b09a711b16)

Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-21 18:45:47 -07:00
Nathan Rossi
431d7c92c5 lib/oe/elf.py: Add LatticeMico32 architecture definition
Add the ELF definition for the LaticeMico32 architecture. This
architecture is 'elf' OS only as it does not target Linux.

(From OE-Core rev: d14f86f39a25649c923deecc24a283ba968b13f5)

Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-21 18:45:47 -07:00
Nathan Rossi
a716317331 libgloss_3.0.0.bb: Ensure ${D}${libdir} exists installing content
Some targets do not populate any content into libdir, so make sure it is
created before attempting to move files/directories into it.

(From OE-Core rev: f8d7394f314041de7bcbf06ccb6405f64c68fad0)

Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-21 18:45:47 -07:00
Alexey Brodkin
bcc4628c6c gcc: Disable libitm for ARC
The libitm is not supported on ARC, so disable it

(From OE-Core rev: 6840f54cbac88e8a8f70384775771c4fda20b9c9)

Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-21 18:45:47 -07:00
Alexey Brodkin
d5354055a6 icu: Add ARC support
(From OE-Core rev: 7b7b0fb8c27d06919f537a272107fc3f0b9cf9e5)

Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-21 18:45:47 -07:00
Antoine Tenart
3efeb11bd6 nspr: Add ARC support
[Alexey: Rebased on top of other patches like RiscV, NIOS2 etc]

(From OE-Core rev: bc9259fad8f90f0cbabd3db7509c401b071e4ff3)

Signed-off-by: Antoine Tenart <antoine.tenart@bootlin.com>
Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-21 18:45:47 -07:00
Alexey Brodkin
0ad7337361 openssl: Add support for ARC
(From OE-Core rev: 479d0e0d1002c025c9cbb0f03ed038c3feba44a7)

Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-21 18:45:47 -07:00
Alexey Brodkin
bdbb6dad55 kernel-arch.bbclass: Add ARC to kernel arch map
(From OE-Core rev: d53b0b885fcf038d26d3f8aa8c5b46ec86649cea)

Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-21 18:45:47 -07:00
Alexey Brodkin
28de528302 siteinfo: Define data for ARC
(From OE-Core rev: a66834f63e190377c3464ea180ccdc0262226049)

Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-21 18:45:47 -07:00
Alex Kiernan
1ad1a557cb p11-kit: Add PACKAGECONFIG for trust paths
Add trust-paths PACKAGECONFIG item which enables support for default
trust-paths in /etc/ssl/certs/ca-certificates.crt

(From OE-Core rev: d63f16f03ad60ab77fd5c78de1bbf1f248c51c6e)

Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-21 18:45:47 -07:00
Alex Kiernan
e7e081aa2a p11-kit: Upgrade from 0.22.1 -> 0.23.14
p11-kit is no longer doing odd/even for development/stable releases, so
drop the custom UPSTREAM_CHECK_GITTAGREGEX.

(From OE-Core rev: 1a38f27342c5a40f81e579b2d0feb7b6e9880ac7)

Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-21 18:45:47 -07:00
Max Kellermann
631b3edebd libsolv: make rpm optional
(From OE-Core rev: dfe55fdc34ae32b75934ea42b44d9ab6023e0250)

Signed-off-by: Max Kellermann <max.kellermann@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-21 18:45:47 -07:00
Ross Burton
f7fd5de4cf clutter: simplify SRC_URI
The Clutter class's ability to switch between tarballs and git isn't really
useful, so remove it.  If it comes back, it should use the devupstream class.

(From OE-Core rev: 6150ec737bad895b9fb62f711449a259887ebd1b)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-21 18:45:47 -07:00
Anuj Mittal
aa9dfaca06 mobile-broadband-provider: fix SRC_URI
Fixes build for older versions of git which don't follow redirects
properly if the .git suffix is missing.

(From OE-Core rev: 77c353cc9bdfbf1b6453b2579b72726db05eb69c)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-21 18:45:47 -07:00
Ming Liu
f9b3f4a333 mesa: enable virgl driver for qemux86/qemux86-64
virgl driver should be enabled for qemux86/qemux86-64 machines, or else
it will cause runtime issue due to virtio_gpu driver missing.

(From OE-Core rev: 5f143ceb1fac06ac84370ceb0cf0fba656effdf8)

Signed-off-by: Ming Liu <liu.ming50@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-21 18:45:47 -07:00
Ross Burton
2e554563c3 pseudo: update to latest HEAD
This incorporates two fixes for large inodes, which hopefully solves some of the
rare mysterious behaviour.

(From OE-Core rev: 6921e7f91eb646a2b7b865eccd91552825a4ab78)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-21 18:45:47 -07:00
Ross Burton
4cd0d52e5f xserver-xorg: rewrite xorg-server.m4 patch
Instead of having a patch that upstream won't accept, rewrite it in a
upstreamable way and <gasp> submit it upstream.

The fundamental problem is that pkg-config --variable=sdkdir will return the
value of sdkdir literally, whereas --cflags will return -I${sdkdir} *but* will
do sysroot relocation magic on the path so it is usable.

(From OE-Core rev: 4af34cb1193fe86b862566becfb560b3d19155f4)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-21 18:45:47 -07:00
Ross Burton
9d2cbf0414 xserver-xorg: remove obsolete patch
This patch is forcing input to use SIGIO, despite the fact that since 2015
xserver has used an input thread.

(From OE-Core rev: cde11398e6d74ad8f27334199b4bd99cdf1f0ff7)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-21 18:45:47 -07:00
Ross Burton
d21d958c5b python3: remove specal handling of sqite3-tests
This package doesn't exist anymore so the manifest tool doesn't need to handle
it specially.

(From OE-Core rev: 30eadb119a64d8561b946d5b8ee30244caeaf134)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-21 18:45:46 -07:00
Ross Burton
e6aea815de python3: consolidate tests
Currently the bulk of the tests in python3-tests, some more in
python3-sqlite3-tests, and others in their parent module (such as
python3-ctypes).  This is pointless space usage if we're not planning on running
the tests, so consolidate all the tests into python3-tests.

(From OE-Core rev: 554d3690dab49fee3c93b6b677eb3ef58cff64c1)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-21 18:45:46 -07:00
Ross Burton
aaf110e874 python3: respect package order in manifest
Don't sort the manifest when using it to generate packaging rules, so ordering
can be used to have complex packaging rules.

(From OE-Core rev: 80dae6218efd25c92b9c43360e0846bb0af56c7e)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-21 18:45:46 -07:00
Ross Burton
2ac291af1f python3: don't sort the manifest in create_manifest
Instead of sorting the entire manifest when it is updated, use OrderedDict to
preserve the order of fields.  This means that packages can be ordered in the
manifest to allow non-trivial FILES assignments (such as a package that picks up
pieces of other packages)

The manifest has been regenerated with the new stable ordering, and
distutils-staticdev moved above distutils so the packaging rules work as
expected.

(From OE-Core rev: 1c67c2146e3644a26367a32885d27a4378f17ac6)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-21 18:45:46 -07:00
Andrew Geissler
3c69d1a128 python: consolidate tests
Currently the bulk of the tests in python-tests, some more in
python-sqlite3-tests, and others in their parent module (such as
python-ctypes).  This is pointless space usage if we're not planning on
running the tests, so consolidate all the tests into python-tests.

This is a backport of the same changes done by Ross Burton for python3

Changes since v1:
- Rebase

(From OE-Core rev: 0e94737e7124f689c3697d4227bfcd228cc04295)

Signed-off-by: Andrew Geissler <geissonator@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-21 18:45:46 -07:00
Andrew Geissler
b0ce2e842a python: respect package order in manifest
Don't sort the manifest when using it to generate packaging rules, so
ordering can be used to have complex packaging rules.

This is a backport of the same changes done by Ross Burton for python3

Changes since v1:
- Rebase

(From OE-Core rev: 5a5a97b1c3914ad4a3e94981bf53897d0a3f4fb3)

Signed-off-by: Andrew Geissler <geissonator@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-21 18:45:46 -07:00
Andrew Geissler
b0f5feea01 python: don't sort the manifest in create_manifest
Instead of sorting the entire manifest when it is updated, use
OrderedDict to preserve the order of fields.This means that
packages can be ordered in the manifest to allow non-trivial
FILES assignments (such as a package that picks up pieces of
other packages)

The manifest has been regenerated with the new stable ordering, and
distutils-staticdev moved above distutils so the packaging rules work as
expected.

This is a backport of the same changes done by Ross Burton for python3

Changes since v1:
- Moved distutils-staticdev above distutils so packaging rules work
as expected.
Changes since v2:
- Rebase

(From OE-Core rev: 3c62c42ebde9dd4acdc74c56160d6ce8639b497c)

Signed-off-by: Andrew Geissler <geissonator@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-21 18:45:46 -07:00
Jens Rehsack
ef753fc7b3 distutils{, 3}.bbclass: improve error messages
For non-python developers it's difficult to identify where start
searching in case of errors. Fixing and marking the string to
grep for might help finding some root causes of issues slightly
quicker.

(From OE-Core rev: 44fff749ee7bfe47e88286aec1e8a22e63079ca7)

Signed-off-by: Jens Rehsack <sno@netbsd.org>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-21 18:45:46 -07:00
Alex Kiernan
784a3f8198 gpgme: Inherit from distutils-common-base
Inherit from distutils-common-base and pythonnative/python3native to
avoid runtime dependency on Python, whilst still fixing clang builds.

Fixes: 8bfb54edc6fa ("gpgme: Inherit distutils3-base")
Suggested-by: Khem Raj <raj.khem@gmail.com>
(From OE-Core rev: 4e1e914101146149cbfd70ff00cfcd0fdcf1a88c)

Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-21 18:45:46 -07:00
Alex Kiernan
b6eeccc881 systemd: Add util-linux-fsck to RDEPENDS
systemd-fsck expects util-linux-fsck passing a number of options that
busybox fsck doesn't interpret. It then continues silently when run, so
disks end up not having fsck run at all.

Move util-linux-fsck from RRECOMMENDS to RDEPENDS to ensure we have the
fsck which systemd expects.

(From OE-Core rev: 409c3424250d55d1c5549841ddae22288aaa4859)

Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-21 18:45:46 -07:00
Max Krummenacher
8c0a33f326 package_manager: use normalized path when doing the filtered copy
The linking/copying of the package files failes if the deploy dir is set
in a non normalized way e.g. like this DEPLOY_DIR = "${TOPDIR}/../deploy"

Then the simple string replacement which is used to calculated the link
destination from the link source fails, as the link source is normalized
but the deploydir prefix is not.

Normalizing deploydir fixes this.

(From OE-Core rev: e0ebfaa92bbfd3158b48e28dfb6435890c73bef3)

Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-21 18:45:46 -07:00
Otavio Salvador
9045673b78 cmake: Upgrade 3.12.1 -> 3.12.2
(From OE-Core rev: a585c51f8107e52cf7fa16b46b889b3f81eca600)

Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-21 18:45:46 -07:00
Otavio Salvador
4622cc08bf libarchive: Update 3.3.2 -> 3.3.3
This upgrades to 3.3.3 release and drop the backported patches when
doing the recipe update.

(From OE-Core rev: 60d99a4e64fdddbbe5863fa5879c813fa004600b)

Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-21 18:45:46 -07:00
Otavio Salvador
611e090acc linux-firmware: Bump revision to 44d4fca
44d4fca Merge https://github.com/pmachata/linux-firmware
253a573 brcm: update firmware for bcm43362 sdio
3cee728 Mellanox: Add new mlxsw_spectrum firmware 13.1703.4
ccab6c7 rtl_bt: Add firmware and configuration files for the Bluetooth part of RTL8822CU
75d2b12 Mellanox: Add new mlxsw_spectrum firmware 13.1703.4
85c5d90 nvidia: switch GP10[2467] to newer scrubber/ACR firmware (from GP108)

License-Update: new firmware files additions
(From OE-Core rev: f82738fd14f18fab368b397faac2f70167b16b8a)

Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-21 18:45:46 -07:00
Hongzhi.Song
4653abec82 ltp: add a patch for source code to fix issue about fcntl
The testcases of fcntl fail on 32-bit arch

To cope with glibc commit:
  06ab719d30b0 ("Fix Linux fcntl OFD locks for non-LFS architectures
  (BZ#20251)")
Make OFD command use fcntl64() syscall on 32-bit.

(From OE-Core rev: 67fca07c9487ccd1a28357da32c9987c00d1ba77)

Signed-off-by: Hongzhi.Song <hongzhi.song@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-21 18:45:46 -07:00
Nathan Rossi
13f2911a3d libgloss_3.0.0.bb: Consolidate rmdir with -p
Consolidate the rmdir of multiple directories with the use of -p to
delete the leaf empty directory and any empty ancestor directories.

(From OE-Core rev: ba2f5ad890ecf94f541d84cc04669a6b02990d39)

Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-21 18:45:46 -07:00
Douglas Royds
fdc0181062 reproducible: Consistent debug logging
Log both the source of the source_date_epoch and the resulting
source_date_epoch in all cases.

Also, now that we are determining the source_date_epoch successfully for both
yocto and non-yocto kernels, remove the inherits_class('kernel') exception.
We will log a failure to find a source_date_epoch for kernels as well.

(From OE-Core rev: 48fe0e83435f9fb53b1e5b37d5d9f1c2caccd22d)

Signed-off-by: Douglas Royds <douglas.royds@taitradio.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-21 18:45:46 -07:00
Douglas Royds
d6f2ffb5c7 reproducible: Don't enforce existence of ${S} dir
Unnecessary.

(From OE-Core rev: 75d5a9d72566aca7a9f08bea21523b3c66bddeae)

Signed-off-by: Douglas Royds <douglas.royds@taitradio.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-21 18:45:46 -07:00
Douglas Royds
73ba6051be reproducible: Find the git repo in WORKDIR/git or S first
Change the search regime for find_git_folder():

1. WORKDIR/git: This is the default git fetcher unpack path
2. ${S}
3. Go looking for .git/ under the WORKDIR as a last resort.

linux-yocto:
We had an existing (silent) defect. The linux-yocto recipes all specify
two git SRC_URIs, one for the kernel source itself, the other for the
kmeta data (config fragments and friends). find_git_folder() was finding
the git checkout for the kmeta data, but due to a typo in the git log -1
--pretty=%ct line, we were (silently) reading the source_date_epoch from
the ${S} directory = STAGING_KERNEL_DIR, which is empty. If your
build/ happened to be inside a git checkout, git would walk up the
directory tree, and silently read the commit timestamp from this other
git checkout. The correct path to read the git commit timestamp from is
the "gitpath", being that found by find_git_folder(), though this
function was incorrectly finding the kmeta data checkout, not the kernel
source tree.

Non-kernel git recipes:
The default git fetcher clones and checks out the sources at
WORKDIR/git/ regardless of the setting of S (unless subpath or
destsuffix is set). find_git_folder() now looks for the
WORKDIR/git/.git/ directory first.

Non-yocto linux kernels:
Kernel recipes that don't inherit kernel-yocto should always set
S = ${WORKDIR}/git, so that when base_do_unpack_append() in
kernel.bbclass moves the checkout down to the STAGING_KERNEL_DIR and
symlinks it as WORKDIR/git, the build can still work by following the
symlink. We were previously failing to follow the symlink in the
os.walk(), but we now look first for WORKDIR/git/.git/, and find it due
to the symlink.

If none of the above mechanisms work for finding the git checkout,
perhaps there was a subpath or destsuffix specified in the SRC_URI.
We go looking for the git checkout under the WORKDIR as a last resort.

(From OE-Core rev: b0ddb141d36853447f85ecaac07dbc9c5779627f)

Signed-off-by: Douglas Royds <douglas.royds@taitradio.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-21 18:45:46 -07:00
Douglas Royds
526276a74d reproducible: Rename ambiguous "path" var to sourcedir or workdir as appropriate
(From OE-Core rev: 01358d6a89623a38e66969daa431d2eecb1ce8a2)

Signed-off-by: Douglas Royds <douglas.royds@taitradio.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-21 18:45:46 -07:00
Douglas Royds
d872b0e51e reproducible: Refactor: get_source_date_epoch_from_youngest_file()
(From OE-Core rev: 2c8baf6c50e5a266a1e9ac939415bd481668e17e)

Signed-off-by: Douglas Royds <douglas.royds@taitradio.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-21 18:45:46 -07:00
Douglas Royds
1bf7337bf8 reproducible: Tidy class description
Tidy whitespace, delete commented-out lines

(From OE-Core rev: 254eb5a2a12fd6b5cf7427818ea9fa886ea407a6)

Signed-off-by: Douglas Royds <douglas.royds@taitradio.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-21 18:45:46 -07:00
Ross Burton
4569d6163d fribidi: use Meson instead of autotools
Upstream is moving to Meson, so backport a patch to use that instead of
autotools.

(From OE-Core rev: d297f7ebf3f62528d055e1938a9693d6f3a61935)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-21 18:45:46 -07:00
Ross Burton
51749fb8db fribidi: rename directory to match recipe
(From OE-Core rev: 979b247c558eeb151fce925ee6600700ef20f869)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-21 18:45:46 -07:00
Oleksandr Kravchuk
4363bd6e10 wayland-protocols: update to 1.16
Updated package to v1.16 to match the currently used Wayland version.

(From OE-Core rev: bb378dccdf6f2b2ab6a3fe06d11ad56f70741f69)

Signed-off-by: Oleksandr Kravchuk <oleksandr.kravchuk@pelagicore.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-21 18:45:46 -07:00
Andrej Valek
a52a4a7a4c dropbear: remove localoptions.h in source searching
- localoptions.h is automatically searched in build directory

(From OE-Core rev: 40fe89027e1b9ed63c65ff026bc6cce5de1b814a)

Signed-off-by: Andrej Valek <andrej.valek@siemens.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-21 18:45:46 -07:00
Changqing Li
2d760d2d61 dbus-test: fix ptest failed problem when multilib is enabled
Fix some failed info like:
| ./test/test-bus: relocation error: ./test/test-bus: symbol
| _dbus_threads_init_debug, version LIBDBUS_PRIVATE_1.10.10 not defined
| in file libdbus-1.so.3 with link time reference
| FAIL: test/test-bus

In run-ptest, LD_LIBRARY_PATH is set to /usr/lib, but when multilib
is enabled, /usr/lib64 will be used. fix by replace with correct path.

(From OE-Core rev: d1bdf962dc3f121066bd7efb451dd9072b881718)

Signed-off-by: Changqing Li <changqing.li@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-21 18:45:46 -07:00
Florian Wickert
aa6def606f gstreamer1.0-plugins-bad: remove rtmpdump from DEPENDS
rtmpdump is not a build dependency for gstreamer1.0-plugins-bad even if
rtmp is enabled. This wouldn't compile anyway due to the
openssl/openssl10 incompatibility because rtmpdump requires openssl10.

(From OE-Core rev: f9b7de219ae03b48843f65a49d90822b33d34534)

Signed-off-by: Florian Wickert <fw@javox-solutions.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-21 18:45:46 -07:00
Ross Burton
d02939de27 xserver-xorg: remove redundant patch
Upstream doesn't assume a monotonic clock isn't available anymore, so we can
remove this patch.

(From OE-Core rev: 25e034b4c3854a7a9190c4deee7fbca6ba4a8c47)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-21 18:45:46 -07:00
Khem Raj
3b993fc618 musl: Add aliases for glibc provided libraries
This is a step towards running pebuilt applications for glibc  on musl
There are many realworld applications which are not always built from
source, especially provided by third party

Package the glibc symlinks into new package musl-glibc-compat

(From OE-Core rev: 8ea0680462c506e01244d3fd3d35e6b2f805ada6)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-21 18:45:46 -07:00
Khem Raj
244caa1dbf linuxloader.bbclass: Refactor to have seprate functions for musl/glibc loader
this makes it possible to use this for musl where we are trying to
create a glibc compat package

Add missing aarch64 loader definition for glibc function

(From OE-Core rev: 0a02ea79ec522582b46138a027eb166819e5647d)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-21 18:45:46 -07:00
Richard Purdie
18b90a0fd9 yocto-uninative: Add aarch64 uninative tarball checksum
(From OE-Core rev: 957a2f95b839f2d871c658d6e8ea8c0f4d6c41e5)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-20 09:06:00 -07:00
Richard Purdie
382ca0e565 uninative: Add support for aarch64 hosts
(From OE-Core rev: b72e54b9a649faf4eb292e3bc643d5d06d4d4fea)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-20 09:06:00 -07:00
Khem Raj
b650322dcd mtools: Fix build with clang
Identify with __clang__ to undefine UNUSED

(From OE-Core rev: fcede6dd3e44d9f7761d058db76dfaf103b75c6a)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-20 05:41:32 -07:00
Jagadeesh Krishnanjanappa
ebecaa5f48 ghostscript: upgrade to 9.25
Removed below patches, as v9.25 source already has those
changes/security fixes:

0001-Bug-699665-memory-corruption-in-aesdecode.patch
0001-pdfwrite-Guard-against-trying-to-output-an-infinite-.patch
0002-Bug-699656-Handle-LockDistillerParams-not-being-a-bo.patch
0003-Fix-Bug-699660-shading_param-incomplete-type-checkin.patch
0004-Hide-the-.shfill-operator.patch
0005-Bug-699657-properly-apply-file-permissions-to-.tempf.patch
remove-direct-symlink.patch

Re-worked ghostscript-9.21-native-fix-disable-system-libtiff.patch
and ghostscript-9.21-prevent_recompiling.patch
to fix warnings in do_patch task of ghostscript v9.25 recipe.

Highlights of ghostscript v9.25 release:
---------------------------------------
- This release fixes problems with argument handling, some unintended results
  of the security fixes to the SAFER file access restrictions
  (specifically accessing ICC profile files), and some additional security
  issues over the recent 9.24 release.

- Note: The ps2epsi utility does not, and cannot call Ghostscript with
  the -dSAFER command line option. It should never be called with input
  from untrusted sources.

- Security issues have been the primary focus of this release, including
  solving several (well publicised) real and potential exploits.

- As well as Ghostscript itself, jbig2dec has had a significant amount of work
  improving its robustness in the face of out specification files.

- IMPORTANT: We are in the process of forking LittleCMS. LCMS2 is not thread
  safe, and cannot be made thread safe without breaking the ABI.
  Our fork will be thread safe, and include performance enhancements
  (these changes have all be been offered and rejected upstream). We will
  maintain compatibility between Ghostscript and LCMS2 for a time, but not in
  perpetuity. Our fork will be available as its own package separately from
  Ghostscript (and MuPDF).

- The usual round of bug fixes, compatibility changes, and incremental
  improvements.

(From OE-Core rev: 4340928b8878b91b5a2750eb6bc87918740511ca)

Signed-off-by: Jagadeesh Krishnanjanappa <jkrishnanjanappa@mvista.com>

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-20 05:41:32 -07:00
Andrej Valek
8a839b7e2b unzip: add nativesdk support
(From OE-Core rev: 82886e19ba874a33e618a4854a32987884e2c058)

Signed-off-by: Andrej Valek <andrej.valek@siemens.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-20 05:41:32 -07:00
Zhixiong Chi
9eb4e056c5 gdb: gdbserver: update ctrl-c handling
A) gdbserver sends SIGINT not to the process, but to the process
group (-signal_pid). But the attached process is not always a
process group leader. If not, "kill (-signal_pid, SIGINT)" returns
error and fails to interrupt the attached process. We cannot interrupt
the process attached with gdbserver who is not a process group leader.

This problem was created by the gdb upstream commit 78708b7c8c
The commit fixed the following case B) bug.
B) We cannot interrupt the process attached with gdbserver whose
main thread exits (pthread_exit()).

Now this patch can solve both A) and B).

(From OE-Core rev: 435f671981a090bd06e8f3bf3436d58d531afd49)

Signed-off-by: Zhixiong Chi <zhixiong.chi@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-20 05:41:32 -07:00
Zhixiong Chi
7796602c95 curl: CVE-2018-14618
Backport the CVE patch from the upstream
57d299a499.patch
https://curl.haxx.se/docs/CVE-2018-14618.html
https://nvd.nist.gov/vuln/detail/CVE-2018-14618

(From OE-Core rev: b76903b4b7bfec71be0a8a14e2cab4e2ec852222)

Signed-off-by: Zhixiong Chi <zhixiong.chi@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-20 05:41:32 -07:00
Changqing Li
fb7b9e2d15 openssl10: fix compile error for debian-mips64
Current configuration for debian-mips64 is not correct,
'SIXTY_FOUR_BIT_LONG' need to be specified. otherwise,
it will cause other recipe like crda compile failed since
use default THIRTY_TWO_BIT mode.

(From OE-Core rev: 68f82ceb289149885eb0b04547cb4f79a680183b)

Signed-off-by: Changqing Li <changqing.li@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-20 05:41:32 -07:00
Ross Burton
932e5c6e59 gnupg: patch gnupg-native to allow path relocation
GnuPG hard-codes $bindir etc and uses them to find the helper binaries, such as
gpg-agent.  This breaks if gnupg-native is reused from sstate for a different
build directory and GPG signing of packages is required.

Patch in getenv() checks for gnupg-native when returning the hardcoded paths,
and create a wrapper script which overrides GNUPG_BINDIR. There are more paths
that can be overridden, but this one is sufficient to make GnuPG work.

(From OE-Core rev: dfd69ff889ed78bf137116583d8ae351859ee203)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-20 05:41:32 -07:00
Maxin B. John
b139362261 maintainers.inc: Update package owners
update Intel owners

(From OE-Core rev: a6de4b1809e90d02a865c56ec8269bdfa3ceec0a)

Signed-off-by: Maxin B. John <maxin.john@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-20 05:41:32 -07:00
Martin Jansa
1739597814 dummy-sdk-package.inc: work around MACHINE_ARCH SSTATE_MANMACH
* since following change:
  allarch: only enable allarch when multilib is	not used
  the sstate-diff-machines.sh reports different signature for target-sdk-provides-dummy
  when multilib is enabled

 === Comparing signatures for task do_populate_sysroot.sigdata between qemux86 and qemux86copy ===
ERROR: lib32-target-sdk-provides-dummy different signature for task do_populate_sysroot.sigdata between qemux86 and qemux86copy
basehash changed from b0a44b2c7003b6b4aa3a023d9cb9fe82 to 3a59fa25ddb6a95aff079d477ebf3457
Variable SSTATE_MANMACH value changed from 'qemux86' to 'qemux86copy'

ERROR: target-sdk-provides-dummy different signature for task do_populate_sysroot.sigdata between qemux86 and qemux86copy
basehash changed from 9e44f1deb3d15886ee96db1a3332764c to 6b417d08a5113c9b06d13b3681f5ab4f
Variable SSTATE_MANMACH value changed from 'qemux86' to 'qemux86copy'

It's using:
inherit allarch

python() {
    # Put the package somewhere separate to ensure it's never used except
    # when we want it
    # (note that we have to do this in anonymous python here to avoid
    # allarch.bbclass disabling itself)
    d.setVar('PACKAGE_ARCH', '${DUMMYARCH}')
}

and DUMMYARCH = "sdk-provides-dummy-target"

The difference as shown with bitbake -e before and after reverting allarch.bbclass commit:

before revert:
   $SSTATE_MANMACH [2 operations]
     set? oe-core/meta/classes/sstate.bbclass:61
       "${SSTATE_PKGARCH}"
     set sstate.bbclass:100 [__anon_111_oe_core_meta_classes_sstate_bbclass]
       "machineName"
   pre-expansion value:
     "machineName"
SSTATE_MANMACH="machineName"

   $SSTATE_PKGARCH
     set oe-core/meta/classes/sstate.bbclass:11
       "${PACKAGE_ARCH}"
SSTATE_PKGARCH="sdk-provides-dummy-target"

   $PACKAGE_ARCH [3 operations]
     set oe-core/meta/conf/bitbake.conf:150
       [_defaultval] "${TUNE_PKGARCH}"
     set oe-core/meta/conf/documentation.conf:304
       [doc] "The architecture of the resulting package or packages."
     set dummy-sdk-package.inc:12 [__anon_12_oe_core_meta_recipes_core_meta_dummy_sdk_package_inc]
       "${DUMMYARCH}"
   pre-expansion value:
     "${DUMMYARCH}"
PACKAGE_ARCH="sdk-provides-dummy-target"

after revert:
   $SSTATE_MANMACH
     set? oe-core/meta/classes/sstate.bbclass:61
       "${SSTATE_PKGARCH}"
SSTATE_MANMACH="allarch"

   $SSTATE_PKGARCH [2 operations]
     set oe-core/meta/classes/sstate.bbclass:11
       "${PACKAGE_ARCH}"
     set sstate.bbclass:98 [__anon_111__oe_core_meta_classes_sstate_bbclass]
       "allarch"
   pre-expansion value:
     "allarch"
SSTATE_PKGARCH="allarch"

   $PACKAGE_ARCH [4 operations]
     set oe-core/meta/conf/bitbake.conf:150
       [_defaultval] "${TUNE_PKGARCH}"
     set oe-core/meta/conf/documentation.conf:304
       [doc] "The architecture of the resulting package or packages."
     set oe-core/meta/classes/allarch.bbclass:5
       "all"
     set dummy-sdk-package.inc:12 [__anon_12_oe_core_meta_recipes_core_meta_dummy_sdk_package_inc]
       "${DUMMYARCH}"
   pre-expansion value:
     "${DUMMYARCH}"
PACKAGE_ARCH="sdk-provides-dummy-target"

the relevant part of the anonymous python in sstate.bbclass:

    elif bb.data.inherits_class('allarch', d) and d.getVar("PACKAGE_ARCH") == "all":
        d.setVar('SSTATE_PKGARCH', "allarch")
    else:
        d.setVar('SSTATE_MANMACH', d.expand("${PACKAGE_ARCH}"))

So with allarch.bbclass change, the PACKAGE_ARCH isn't set to "all" because multilib is enabled,
but that causes sstate.bbclass to set SSTATE_MANMACH to MACHINE instead of SSTATE_PKGARCH
allarch, where it got MACHINE is still a bit of mystery to me.

(From OE-Core rev: f25cc92cfd692fd23f21fd736243b81f116fd37a)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-20 05:41:32 -07:00
Martin Jansa
23a0378f18 coreutils: update printenv's ALTERNATIVE_LINK_NAME
* use base_bindir like busybox does to prevent conflicting u-a configs

(From OE-Core rev: ae947ffd0c1531b6a3df250199bff38cce2f5533)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-20 05:41:31 -07:00
Martin Jansa
19c64533eb glibc: fix build with -O
* tested for qemuarm, qemux86 with -O, -O0, -Os, with gcc
* to build with -O0 I had to remove restriction from systemtap first

(From OE-Core rev: be3d12c6b1003348f1dabec9d2253f22b42f0387)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-20 05:41:31 -07:00
Anuj Mittal
f13f1dd286 initramfs-framework/udev: call settle before kill
When mount command is executed in rootfs module of initrd, eudev creates
a loop0 device node, applies rules and adds a inotify watch to it. Right
after this step, we execute finish which first tries to kill any running
udevd daemon before doing a switch_root.

In some cases, it is possible that switch_root is executed before
inotify_add_watch was actually processed which would lead to errors like:

| inotify_add_watch(6, /dev/loop0, 10) failed: No such file or directory

Make sure that we process all the events in queue before actually trying
to kill udevd to prevent this race.

Fixes [YOCTO #12861]

(From OE-Core rev: a85c34d263fcf1542bbedcaf1634302466bb20cf)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-20 05:41:31 -07:00
Ioan-Adrian Ratiu
ad42d8e4d9 isoimage-isohybrid: don't include cpio in cpio image
Because the find | cpio processes execute in parallel connected via
the pipe, and the cpio outputs in the same dir find searches for
source files, the cpio will be included in itself partially, depending
on how fast the build machine creates the cpio file before cpio
gobbles it up.

This bloats the ISO image, though compression reduces the .iso file size,
once the kernel decompresses the cpio image and boots it live, it uses
up to double the RAM memory.

Fix this by creating the initrd.cpio file directly inside cr_workdir.

(From OE-Core rev: 7a7b29f5f1392f4f87af4f20cda99c66b4789fde)

Signed-off-by: Ioan-Adrian Ratiu <adrian.ratiu@ni.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-20 05:41:31 -07:00
Hongxu Jia
78067c910e libressl: remove recipe
Since openssh support oepnssl 1.1.x, there is no reason
to keep libressl.

(From OE-Core rev: 30121a78555574f49b321566fcab172417bdf3e3)

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-20 05:41:31 -07:00
Hongxu Jia
1aed107063 openssh: upgrade 7.8p1 -> 7.8p1+git to support openssl 1.1.x
- Convert from tarball to git repository which support
  openssl 1.1.x

- There is no specific minor version that contains the
  openssl fix (it was merged to master a few days agao),
  rename recipe version to `7.8p1+git'

- Fix regression test binaries missing
  In commit `1f7aaf7 openssh: build regression test binaries', it build
  regression test binaries, since upstream add two binaries in commits
  `c59aca8 Create control sockets in clean temp directories' and
  `1acc058 Disable tests where fs perms are incorrect', we should update
  do_compile_ptest.

  [ptest log]
  |/usr/lib/openssh/ptest/regress/test-exec.sh: line 330: /usr/lib/openssh/
  ptest/regress/mkdtemp: No such file or directory
  [ptest log]

(From OE-Core rev: 9d48cb3da696add33315cf129fe60102bd9756c9)

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-20 05:41:31 -07:00
Armin Kuster
b78597a4e0 xf86-video-fbdev: update to 0.5.0
(From OE-Core rev: 6a1e55083800a680515a21294353b2c89a23b0bb)

Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-17 08:41:45 +01:00
Armin Kuster
6602ece87c xserver-xf86-config: 1.20 qemumips fix
When updating to xorg-xserver 1.20+, mips64 would not work correctly and
cause the xorg test to fail.

Changing the DefaultDepth fixed that.

[Yocto # 12845]

(From OE-Core rev: 46c72077a79ec7a37daefe78ba0f6230ee36bfbf)

Signed-off-by: Kevin Hao <kexin.hao@windriver.com>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-17 08:41:45 +01:00
Armin Kuster
de614a5b22 xserver-xorg: upgrade 1.19.6 -> 1.20.1
removed included patch

Refresh 0001-configure.ac-Fix-check-for-CLOCK_MONOTONIC
Remove 0001-config-fix-NULL-value-detection-for-ID_INPUT-being-u.patch

(From OE-Core rev: 2aef37314d90ba5144b8f8c5d26190b687ddbbb3)

Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-17 08:41:44 +01:00
Alexander Kanavin
c316eb3b88 openssl: update to 1.1.1 final
This is the new LTS release with support for TLS 1.3.

Release announcement:
https://www.openssl.org/blog/blog/2018/09/11/release111/

(From OE-Core rev: 6b0d5202002f76106ea33e4975c8ebef72a63fa1)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-17 08:41:44 +01:00
Hongzhi.Song
4ca9402c37 udev-extraconf: Add systemd-mount to udev-extraconf/mount.sh
Udev-extraconf works correctly with sysvinit in the aspect of automounting
block devices. But it has a serious problem in case of systemd. Block devices
automounted by udev is unaccessible to host space(out of udevd's private
namespace). For example, we cannot format those block devices.

e.g.
    root@qemux86:~# mkfs.ext4 /dev/sda1
    mke2fs 1.43.8 (1-Jan-2018)
    /dev/sda1 contains a ext4 file system
    last mounted on Tue Apr  3 06:22:41 2018
    Proceed anyway? (y,N) y
    /dev/sda1 is apparently in use by the system; will not make a filesystem here!

Other distributions has no such problem, because they use a series of rules to
manager block devices. Different types of block devices match different rules.
But udev-extraconf just use one rule, automount.rules, which results in this
problem.

The 'systemd-mount' command is recommended by the systemd community to solve such
problems.

This patch makes use of 'systemd-mount' to solve the above problem.

[YOCTO #12644]

(From OE-Core rev: a0b3389c5afc23f622f793cbad8b4135093e6f08)

(From OE-Core rev: 4af22800a7af4fcb80cafe08d982a4850d9dd2ad)

Signed-off-by: Hongzhi.Song <hongzhi.song@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-17 08:41:44 +01:00
Khem Raj
dd29a499a1 musl: Add MAX_HANDLE_SZ
(From OE-Core rev: d24bafa872cd1915ca23468bb37be98518347e02)

(From OE-Core rev: a5b0265e83f3c5a222c1b08bc853bec40e5a5148)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-17 08:41:44 +01:00
Khem Raj
b759a65e3f musl: Wire-up name_to_handle_at and name_to_handle_at syscalls
(From OE-Core rev: c70bb5a24e8923a34adb9c7b8298ae12702e3f27)

(From OE-Core rev: a74faf487545df16c7395ee6f6a302f989c1341b)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-17 08:41:44 +01:00
Ross Burton
7bf0d81587 oeqa/selftest/recipetool: fix non-determinism in cmake test
The Navit recipe can depend on fribidi which is now part of oe-core.  Since the
pkgconfig lookup is based on pkgdata the results can change depending on what
has been built, which leads to occasional failures.

Build gtk+ before the test to ensure that the pkgdata is populated with more of
the dependencies, and add fribidi to the generated DEPENDS checklist.

(From OE-Core rev: d180dc758710c7259d45eeb9304e7284a8fd8825)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-13 17:38:07 +01:00
Richard Purdie
1110b68dda oeqa/selftest/runtime_test: Ensure we build/use gnupg-native
Without this, we see errors if gpg is missing from the host system
for "oe-selftest -r runtime_test.TestImage.test_testimage_dnf".

(From OE-Core rev: e91838b63b506e2969582b2b8511fd3724d6aa3f)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-13 17:38:07 +01:00
Andrew Bresticker
0b22cc4407 kexec-tools: Depend on sysinit.target rather than basic.target
kdump.service only needs filesystems to be up, for which sysinit.target
is sufficeint. basic.target pulls in networking and other services which
are unnecessary for kdump. This is also useful for when kdump.service is
used as the boot target (e.g. for the kdump kernel) and only a minimal
system needs to be brought up.

(From OE-Core rev: 6f709f0c5a4ce57e522a65774fd567013b95d82e)

Signed-off-by: Andrew Bresticker <abrestic@waymo.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-13 17:38:07 +01:00
Andrew Bresticker
abd7f41f61 kexec-tools: Install systemd service
Set SYSTEMD_PACKAGES and SYSTEMD_SERVICE so that kdump.service actually
gets installed.

(From OE-Core rev: 0e9cafe732b7f4e47f4e9b32ffbc2ebf9715d18d)

Signed-off-by: Andrew Bresticker <abrestic@waymo.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-13 17:38:07 +01:00
Changqing Li
f564b44515 apr-util: fix ptest fail problem
Test suite test_dbm failed after gdbm upgrtade to 13.1,
from 13.1, return value of some function are changed.

* gdbm_fetch, gdbm_firstkey, and gdbm_nextkey behavior

If the requested key was not found, these functions return datum with
dptr pointing to NULL and set gdbm_errno to GDBM_ITEM_NOT_FOUND (in
prior releases, gdbm_errno was set to GDBM_NO_ERROR),

(From OE-Core rev: 0952c190fc6aec333676ce3883e8232fa8595551)

Signed-off-by: Changqing Li <changqing.li@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-13 17:38:07 +01:00
Khem Raj
025343ed6e insane: Recognise BPF as a valid EM_MACHINE type
BPF Linux ELF objects are generated with kernel-selftests with
>= 4.18 kernel and when clang is enabled which packages BPF objects
into packages, therefore recongnise this as a valid ELF target

Add a selftest for BPF

Do not flag BPF objects in target, since they pretty much will be ok for
most of kernels architectures we care do support BPF

(From OE-Core rev: 3667a8ec016bae3f8026ef7b4c895546804f6368)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-13 17:38:07 +01:00
Andrew Bresticker
6c1ed635df initramfs-framework: Don't use 'tr'
tr is available in busybox, but not in toybox. Just use sed instead.

(From OE-Core rev: 518cca6711f737f44ff74a5ac1308de8c9b49e78)

Signed-off-by: Andrew Bresticker <abrestic@waymo.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-13 17:38:07 +01:00
Dima Zavin
c84266ec35 perf: do not pull in any perl dependencies unless scripting is requested
(From OE-Core rev: 79a19811f4039c5d1861094abbbdaea0aedeee04)

Signed-off-by: Dima Zavin <dmitriyz@waymo.com>
Signed-off-by: Andrew Bresticker <abrestic@waymo.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-13 17:38:07 +01:00
Alexey Brodkin
a7e6f334a1 linux-libc-headers: Don't do useless configuration
There's no point in configuring Linux kernel before
headers installation.

Moreover in come cases it might lead to problems on kernels
starting from 4.17 with architecture or platfrom sets
CROSS_COMPILE variable automatically, see [1].

Also note Buildroot doesn't do that kind of configuration as
well, see [2].

And while at it convert empty do_compile to noexec as well.

[1] https://lkml.org/lkml/2018/9/12/486
[2] https://git.buildroot.org/buildroot/tree/package/linux-headers/linux-headers.mk#n106

(From OE-Core rev: 681ea847d760e69623b4ed110a6078f37ac3ec63)

Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-13 17:38:07 +01:00
Khem Raj
a906da83f4 linux-libc-headers: Include linux/stddef.h in linux/swab.h
This helps compiling bpf tests using non-glibc C libraries e.g. musl

(From OE-Core rev: 5f1895fb94d35a1496f22863791ad6f7a6aca97a)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Cc: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-13 17:38:07 +01:00
Jens Rehsack
069829248b coreutils: add alternative target for nice
Avoid coreutils conflicts with nice from other recipes, like
busybox - even if that's not enabled by default.
In situations, where coreutils is a dependency for -dev images
and small busybox nice is available always, it avoids extra
effort for coreutils for those users.

(From OE-Core rev: 57b1b20abca7d6821e99802147b93f4f577cfad0)

Signed-off-by: Jens Rehsack <sno@netbsd.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-13 17:38:07 +01:00
Anuj Mittal
5e9c1b23f4 tune-core2: use n270 instead of core2duo
Fixes warnings in builds using core2-32 tune:

warning: TCG doesn't support requested feature: CPUID.80000001H:EDX.syscall [bit 11]
warning: TCG doesn't support requested feature: CPUID.80000001H:EDX.lm [bit 29]

when executing postinsts using qemu-i386.

i386 target doesn't enable CPUID_EXT2_SYSCALL and CPUID_EXT2_LM [1]
while cpu choice of core2duo that we use for core2-32 TUNE does [2].
Use n270 cpu instead to use with qemu which supports SSSE3 and doesn't
have these bits enabled [3].

[1] https://github.com/qemu/qemu/blob/master/target/i386/cpu.c#L739
[2] https://github.com/qemu/qemu/blob/master/target/i386/cpu.c#L1439
[3] https://github.com/qemu/qemu/blob/master/target/i386/cpu.c#L1603

Fixes [YOCTO #12916]

(From OE-Core rev: 3db567d7835c6bb158d0f6c5b5533835a0181c45)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-13 17:38:07 +01:00
Ross Burton
5679b31bcf python3: fix openssl 1.1.1 changes
Due to human error an older revision of the SSL patch was merged.

(From OE-Core rev: 325af0f4a821971a7aeeca35b10e3558f86029e0)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-13 10:04:40 +01:00
Ross Burton
90028f3771 python3: don't hard-code version in python-config
Use variables instead of hard-coding to remove another variation between
releases.

(From OE-Core rev: 6f6b384799bf093fabac90230dcdef1541ea9c75)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-13 07:42:28 +01:00
Ross Burton
529daba874 python3: add PACKAGECONFIG for bluetooth
Instead of forcibly disabling Bluetooth (support for Bluetooth sockets in the
socket module), add a PACKAGECONFIG.  The default remains disabled for
consistency.

(From OE-Core rev: fd5b497cc8a2f9f93f732070123b073bfb6d2eca)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-13 07:42:28 +01:00
Ross Burton
5bf97f6741 python: we use system ffi so no need to autoreconf in-tree libffi
For target Python we use the libffi that we build, so we don't need to
autoreconf the in-tree libffi.

(From OE-Core rev: 12626b26aca281d0d5ee90dc15627083a517fa3b)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-13 07:42:28 +01:00
Ross Burton
b49872c9be python3: remove redundant assignments
_PYTHON_PROJECT_BASE and _PYTHON_PROJECT_SRC appear to be set in setup.py from
the source directory and build directory correctly, so this is redundant.

(From OE-Core rev: 983206d4ccab2b27adba2776f73c0c711d3ec98e)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-13 07:42:28 +01:00
Ross Burton
53535f67ae python3: split common assignments into a dedicated python3.inc
Instead of including the Py2 python.inc and having to undo some of the
assignments, create a new python3.inc to hold the common configuration.

Over time we can move more from the recipes into this file to unify the target
and native recipes.

(From OE-Core rev: fc4767113adbdfbf4aeaaf6dd8605e7fd4bbaa46)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-13 07:42:28 +01:00
Anuj Mittal
3c32b1525a python3{,-native}: backport openssl 1.1.1 compatibility changes
Backport changes from 3.7/3.6 to fix failing python3 ssl test suite.

Fixes [YOCTO #12919]

(From OE-Core rev: 6c123468b546931de005cf136d98bca6b893b37b)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-13 07:42:28 +01:00
Anuj Mittal
55f36a4045 python3{,native}: update to 3.5.6
Includes changes:

76aa2c0a9a bpo-33216: Clarify the documentation for CALL_FUNCTION_* (#8338)
1b141b9553 Doc: Backport language switcher (bpo-33700, bpo-31045) (#8048)
f381cfe07d [3.5] bpo-33001: Prevent buffer overrun in os.symlink (GH-5989) (#5991)
937ac1fe06 [3.5] bpo-32981: Fix catastrophic backtracking vulns (GH-5955) (#6034)

(From OE-Core rev: e38ff96cc2217df403ea2c5abcd35d42969689d4)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-13 07:42:28 +01:00
Dengke Du
37be2ed7a9 ltp: fix mmap15 failed on qemumips64
Actually, this is not a bug, mmap15 only run on 64bit system.
On qemumips64, mmap15 return EINVAL, x86-64 and arm64 return
ENOMEM. This is because mips system check the addr that passed
to the syscall mmap15:

    https://github.com/torvalds/linux/blob/master/arch/mips/mm/mmap.c#L71

If the addr larger than (TASK_SIZE - page_size), mips think it is invalid.

(From OE-Core rev: cbc026227fb9bafe71665a673104272e191bdef9)

Signed-off-by: Dengke Du <dengke.du@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-13 07:42:28 +01:00
Kevin Hao
821711bf2e wic: Introduce the --use-label partition parameter
We can use this parameter to make the wic use the label to name a
partition in /etc/fstab.

(From OE-Core rev: 51638edaa00befaed58e2def255d46ae44d9234f)

Signed-off-by: Kevin Hao <kexin.hao@windriver.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-13 07:42:28 +01:00
Khem Raj
92bc2b3e84 socat: Cache shift value for CRDLY, TABDLY and CSIZE
Match it to definitions in
arch/<ARCH>/include/uapi/asm/termbits.h

(From OE-Core rev: 3e222bf3e0631b385dc46b02b6ba890451c291b2)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-13 07:42:28 +01:00
Kai Kang
7118a4b793 eudev: set configure option --with-rootlibexecdir
Set configure option '--with-rootlibexecdir' for eudev to fix udev.pc file conflict:

| file /usr/share/pkgconfig/udev.pc conflicts between attempted installs of eudev-dev-3.2.5-r0.core2_64 and lib32-eudev-dev-3.2.5-r0.x86

It alway sets 'udevdir' in udev.pc with value '/lib/udev' that systemd
does the same thing.

(From OE-Core rev: 2585f4252a3831bf9c5e6ab69d9da2c1325e6bc0)

Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-13 07:42:28 +01:00
Kai Kang
d577afd930 multilib: fix install file conflicts
Fix install files conflicts between multlib packages by inherit multilib_script:

| file /usr/bin/cairo-trace conflicts between attempted installs of lib32-libcairo-perf-utils-1.14.12-r0.x86 and libcairo-perf-utils-1.14.12-r0.core2_64
| file /usr/bin/icu-config conflicts between attempted installs of lib32-icu-dev-62.1-r0.x86 and icu-dev-62.1-r0.core2_64
| file /usr/bin/gpgrt-config conflicts between attempted installs of lib32-libgpg-error-dev-1.32-r0.x86 and libgpg-error-dev-1.32-r0.core2_64

(From OE-Core rev: 52f2dd97e9dd20dea0f3cdeb2df490d1a4c646aa)

Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-13 07:42:28 +01:00
Kai Kang
1d5b01c956 target-sdk-provides-dummy: skip package_qa_multilib check
The rprovides of target-sdk-provides-dummy don't be updated with
multilib, so it fails package_qa_multilib check. Because
target-sdk-provides-dummy doesn't install any file to sysroot, it is
safe to skip package_qa_multilib check for target-sdk-provides-dummy.

Remove ${MLPREFIX}target-sdk-provides-dummy from TOOLCHAIN_TARGET_TASK
at same time in populate_sdk_base.bbclass.

(From OE-Core rev: 3197c086269a4b21fb807a9c552b56f23c5b86dc)

Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-13 07:42:28 +01:00
Kai Kang
50b2d1679f statetests.py: drop test_sstate_allarch_samesigs_multilib
allarch is disabled when multilib is used, so sstate oeqa case
test_sstate_allarch_samesigs_multilib is useless. Remove check for
allarch part and rename to test_sstate_nativesdk_samesigs_multilib.

(From OE-Core rev: 32fe47ea0aea791357d3045c202cdad86b16f2ff)

Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-13 07:42:28 +01:00
Kai Kang
ee929034eb update_gtk_immodules_cache: update for multilib
Postinstall script update_gtk_immodules_cache calls
${bindir}/gtk-query-immodules-${version}. When multilib is enabled, both
packages foo and lib32-foo call ${bindir}/gtk-query-immodules-${version}
and one of them will fail to run obviously.

Duplicate install files gtk-query-immodules-${version} to ${libexecdir}
with ${MLPREFIX}. And update update_gtk_immodules_cache calls proper
binary.

(From OE-Core rev: cad28bd74438d8edbdb02a2d56169e2a55260ca8)

Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-13 07:42:28 +01:00
Kai Kang
44fa30ffa2 update_font_cache: update script for multilib
Packages which inherit fontcache.bbclass call postinstall script
update_font_cache. And in update_font_cache, it calls ${bindir}/fc-cache
by qemuwrapper. When multilib is enabled, both packages foo and lib32-foo
will call ${bindir}/fc-cache and one of them will fail to run obviously.

Duplicate install file fc-cache to ${libexecdir} with ${MLPREFIX} and
call proper fc-cache in update_font_cache.

(From OE-Core rev: 53d8625732b0c8416e367d5eef43863ec2065433)

Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-13 07:42:28 +01:00
Kai Kang
d14fb25788 sstate.bbclass: update SSTATE_DUPWHITELIST
Update SSTATE_DUPWHITELIST in sstate.bbclass.

* remove ${DEPLOY_DIR_RPM}/noarch/ which is not overwritten any more
* add directories for package target-sdk-provides-dummy

(From OE-Core rev: 6d3ca476dbc2059f4b7fa3dfd73de6bbfed49198)

Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-13 07:42:28 +01:00
Kai Kang
d9ba0219b2 allarch: only enable allarch when multilib is not used
Some allarch packages rdepends non-allarch packages. when multilib is
used, it doesn't expand the dependency chain correctly, e.g.

core-image-sato -> ca-certificates(allarch) -> openssl

we expect dependency chain for lib32-core-image-sato:

lib32-core-image-sato -> ca-certificates(allarch) -> lib32-openssl

it should install lib32-openssl for ca-certificates but openssl is still
wrongly required.

Only enable allarch when multilib is not used to fix the issue.

(From OE-Core rev: a23c482cab4f874f4a6a6889716123569eb5ece9)

Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-13 07:42:28 +01:00
Leon Woestenberg
c2d00e2f83 kernel.bbclass: do not deploy fitImage; kernel-fitimage.bbclass does that.
kernel-fitimage.bbclass replaces an occurance of "fitImage" in
KERNEL_IMAGETYPE_FOR_MAKE by an image type that is buildable for the
architecture (such as zImage). The kernel-fitimage.bbclass packs that
image as sub-image in a flattened image tree image (fitImage) and
deploys this fitImage along with the image tree source file (.its).

kernel-fitimage.bbclass does not alter KERNEL_IMAGETYPES, which thus
also contains "fitImage", which kernel.bbclass will also deploy
redundantly with different naming.

The result is a dual deployment with slightly different naming,
each with a set of symlinks.

The solution chosen is to have fitImage deployment be handled by
kernel-fitimage.bbclass, and have kernel.bbclass ignore fitImage
types during deployment.

(From OE-Core rev: 65cded55fa96b1ba72149a31689c081ac27af7f7)

Signed-off-by: Leon Woestenberg <leon@sidebranch.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-13 07:42:28 +01:00
Luca Ceresoli
bb05e37d57 devicetree.bbclass: don't pad DT overlays
By default the devicetree class adds padding to the generated .dtb
files, which can be needed by the bootloader. However it also pads
.dtbo files, which is not useful.

Don't apply padding to the overlay devicetrees.

To achieve this:

 * move "-p ${DT_PADDING_SIZE}" to a new variable, DTB_BFLAGS (B for
   "base")
 * add "-p 0" to DTC_OFLAGS to disable padding for overlays

Cc: Nathan Rossi <nathan@nathanrossi.com>
(From OE-Core rev: 678fe8c66b19f141f6869859cf365aec037e89d9)

Signed-off-by: Luca Ceresoli <luca@lucaceresoli.net>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-13 07:42:28 +01:00
Robert Yang
9ba2b4ab7d bitbake.conf: Make BUILD_OPTIMIZATION respect to DEBUG_BUILD
We may also need debug native tools, so make BUILD_OPTIMIZATION respect to
DEBUG_BUILD, otherwise, we need set CFLAGS in the recipe which isn't
convenient.

(From OE-Core rev: 5db09f7ad007d1def009a60d7d9bf9c13c0faa4e)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-13 07:42:28 +01:00
Robert Yang
285b9a0d8e oe/utils.py: Add vartrue()
It can be used to simplify code like:
"${@['iffalse', 'iftrue'][var]}"

(From OE-Core rev: fc5a5af7bc3619f575988a75efc0c4fe15478b2d)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-13 07:42:28 +01:00
Ross Burton
cb4134f798 python3: fix multiprocessing
glibc 2.28 slightly changed the behaviour of sigaddset() which broke
multiprocessing.  Backport a patch from Python 3.6 to solve this.

(From OE-Core rev: df1874eda517070dab86270ffafd5fe9a307e76b)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-13 07:42:28 +01:00
Ross Burton
27849379a7 python3: remove patch that inadvertently disables xattrs
This patch dates back to the addition of the Python 3 recipe to oe-core, and as
listxattr is never added to supports_follow_symlinks the extended attribute
support will never be enabled.

(From OE-Core rev: 9806e141e85b4e4c38eb7b45e6f2fbc2d2aed29d)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-13 07:42:28 +01:00
Ross Burton
0fa20ac73b python3: remove redundant patch
None of the Python invocations that this changes are actually called, and
there's no need to provide a HOSTPGEN variable when the recipe can just override
PGEN directly.

(From OE-Core rev: 47a8602171428b7ce5d897f7e2c2f26b203b8b63)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-13 07:42:28 +01:00
Ross Burton
e0fb62596f python3: fix ftplib with TLS 1.3
With OpenSSL 1.1.x TLS 1.3 can be used, so backport a patch from Python 3.6 to
fix the ftplib unit test.

(From OE-Core rev: a31047bec6b7c368674d4620e70e526ac211b936)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-13 07:42:28 +01:00
Emmanuel Roullit
a8948584c1 testimage.bbclass: fix qemu_use_kvm handling
QEMU_USE_KVM can either be a boolean or a whitespace separated list
of kvm supported machines.
For the 'intel-corei7-64' machine, defined in meta-intel, kvm could not be
used as the 'x86' substring is not part of its machine name.

By changing the order of this 'or' statement and setting
the 'QEMU_USE_KVM' variable to 'intel-corei7-64', it is possible to run the
'testimage' task with kvm support successfully.

(From OE-Core rev: a22789253aa653dc50fb159b40910248c2f98dd4)

Signed-off-by: Emmanuel Roullit <emmanuel.roullit@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-13 07:42:27 +01:00
Ross Burton
ae130de4ba yasm: remove
Nothing in oe-core is using yasm now that gstreamer-libav and ffmpeg are using
nasm, so remove it from oe-core.

(From OE-Core rev: b7f3f7ecfdf26129c5df2d3ee14e73c4633ea5a3)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-11 12:09:10 +01:00
Ross Burton
6c57503ebd pkgconf: don't use alternatives
There's no need to do alternatives as pkgconf and pkg-config won't be installed
at the same time, and pkg-config doesn't do alternatives either.

(From OE-Core rev: d638fe0cc84b72b9159767a862ad37550469eae8)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-11 10:46:17 +01:00
Ross Burton
a75936df89 lrzsz: fix CVE-2018-10195
"Integer overflow in src/zm.c:zsdata() causes crash in sz and can leak
information to receiver."

Take a patch from Fedora to resolve CVE-2018-10195.

(From OE-Core rev: a7b50fcee9a295de57f743fa3637905992da722e)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-11 10:46:17 +01:00
Ross Burton
a22a2cca9b harfbuzz: remove stale pkg.m4
harfbuzz shipped an old pkg.m4 which overruled the pkg.m4 from the sysroot.
This is now fixed upstream, but until another release is made delete it from the
source tree.

(From OE-Core rev: 44d826327e9336d7490745d5721d79809556b177)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-11 10:46:17 +01:00
Scott Rifenbark
83270f0722 ref-manual: Updated TCLIBC variable.
Added "baremetal" as an argument.

(From yocto-docs rev: 34cb39334d0af43f3c184adbfc53270def394154)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-11 09:36:07 +01:00
Scott Rifenbark
e29bae3507 dev-manual: Updates to "Cloning the poky Repository"
Some re-wordings and also ran through the examples to produce
updated output.

(From yocto-docs rev: 306baeb24d2c6b45d09f44e8c8d5f55b9aef1b8d)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-11 09:36:07 +01:00
Khem Raj
0e989923f5 poky.conf: Promote unknown-configure-option to QA Error
Currently, this is a QA warning by default, howver its a useful
check to catch configuration errors, where we might have forgotten
to update or adapt configure options on updates/upgrades to a package

(From meta-yocto rev: a75ad2e4227f715146fc1e07f9abef4e80c1aa12)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-11 09:05:42 +01:00
Denys Dmytriyenko
522010236d weston: upgrade to 5.0.0
License checksum for compositor.c has changed due to extra copyright line
and year being updated - the license itself hasn't changed.

(From OE-Core rev: eed00380c95eebbd36cf66628ed7ef6e15678f10)

Signed-off-by: Denys Dmytriyenko <denys@ti.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-11 09:05:35 +01:00
Denys Dmytriyenko
0de3237296 wayland: upgrade to 1.16.0
(From OE-Core rev: c17a05a962bb6de75dc73235f7689f57222fee79)

Signed-off-by: Denys Dmytriyenko <denys@ti.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-11 09:05:35 +01:00
Khem Raj
bbcc6ab93b serf: Document and add upstream status field for 0003-gen_def.patch
(From OE-Core rev: 60909e5d4ac94ed77699a569960bb689acb432dd)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-11 09:05:35 +01:00
Nathan Rossi
09bc7331a4 tclibc-baremetal.inc: Remove BASEDEPENDS on compilerlibs
Without a libc the gcc-runtime provider of compilerlibs does not
compile. As such avoid the default dependence on the
virtual/${TARGET_PREFIX}compilerlibs provider.

(From OE-Core rev: 61eead0cdd1f44d8c850f8e4c7389ef444bcd591)

Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-11 09:05:35 +01:00
Nathan Rossi
a71dbdee2f tclibc: For newlib and baremetal disable some security features
With GCCPIE being enabled by default with security_flags.inc the
compiler will by default attempt to compile and link programs as PIE.
The targets that use newlib and baremetal in general do not support PIE
or are otherwise unable to use it due to how embedded targets are
compiled and executed. As such it makes sense to disable PIE by default
for these libc's in order to prevent build failures.

For baremetal tclibc there are no libc features or implementation as
such there is no implementation for the strong stack protector by
default.

(From OE-Core rev: dfe434b793c156a87b5ead5cb85fe60d920d69d3)

Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-11 09:05:35 +01:00
Nathan Rossi
7670b7b4cc libgloss_3.0.0.bb: Fix up mv pattern to include libnosys
When installing libgloss libraries handle the ${TARGET_SYS}/lib contents
so that it is placed in ${libdir} instead of ${libdir}/lib. This
resolves a packaging QA issue.

  ERROR: libgloss-3.0.0-r0 do_package: QA Issue: libgloss:
  Files/directories were installed but not shipped in any package:
    /usr/lib/lib
    /usr/lib/lib/libnosys.a
    /usr/lib/lib/nosys.specs
  Please set FILES such that these items are packaged. Alternatively
  if they are unneeded, avoid installing them or delete them within
  do_install.
  libgloss: 3 installed and not shipped files. [installed-vs-shipped]

(From OE-Core rev: 69ce8ba6cc610f310ae28d988d487918906e6ef9)

Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-11 09:05:35 +01:00
Martin Jansa
b7e3f3ff4b attr: use u-a for setfattr
setfattr is now provided also by busybox since 1.29.2 upgrade and
do_rootfs is failing with:
update-alternatives: Error: not linking usr/bin/setfattr to /bin/busybox.nosuid since
usr/bin/setfattr exists and is not a link

(From OE-Core rev: d633633f3d83467fe1f946c57e2e75e0e774ec7e)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-11 09:05:35 +01:00
Changqing Li
ea8dfcf2d1 bind: patch for CVE-2018-5740
(From OE-Core rev: bf81b4e5327134e131e3198adad68c74afb5e259)

Signed-off-by: Changqing Li <changqing.li@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-11 09:05:35 +01:00
Hongxu Jia
c0f6e29c21 ghostscript: fix CVE-2018-15908 & CVE-2018-15909 & CVE-2018-15910 & CVE-2018-15911
(From OE-Core rev: b6d32d43fd2b016e932b7dc81fb943eb936b73bb)

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-11 09:05:35 +01:00
Changqing Li
17f1496f84 libx11: Upgrade 1.6.5 ->1.6.6
(From OE-Core rev: a04a0f309f4080497ddb6fa1cf81b9c2db5f4e11)

Signed-off-by: Changqing Li <changqing.li@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-11 09:05:35 +01:00
Changqing Li
f3fb768200 qemu: patch for CVE-2018-15746
(From OE-Core rev: 8c02e508dc861ee95a66f3f685d24518a699685b)

Signed-off-by: Changqing Li <changqing.li@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-11 09:05:35 +01:00
Khem Raj
735e066b1c gst-validate: Fix build on musl
Connect has different signature on musl.

Fixes
socket_interposer.c:103:1: error: conflicting types for 'connect'
| connect (int socket, const struct sockaddr_in *addrin, socklen_t
address_len)
| ^
|
recipe-sysroot/usr/include/sys/socket.h:327:5:
note: previous declaration is here
| int connect (int, const struct sockaddr *, socklen_t);
|     ^

(From OE-Core rev: 77c02f815103733bcfbde3adec3784e456de42d4)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-11 09:05:35 +01:00
Khem Raj
09f94874fd sysprof: Fix build with clang
(From OE-Core rev: f179c402f46a3d3c42760d66d6a20c9e0b93f50d)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-11 09:05:35 +01:00
Anton Gerasimov
e6277eb17b systemd: set split-bin to true by default
Not doing so will make meson chose where to install init binary
based on irrelevant features of the build machine.

PACKAGECONFIG option is defined to override this behavior.

(From OE-Core rev: 4ff2282a7dc421c3ea6578c73fbbba768eeed146)

Signed-off-by: Anton Gerasimov <tossel@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-11 09:05:35 +01:00
Emmanuel Roullit
cfadccd7e2 wic: squashfs does support partition uuid.
wic allows the user to create disk image and reference each created
partitions via its partition UUID.

squashfs does not support filesystem UUID but it does offer support for
partition UUID.

$ lsblk -o NAME,FSTYPE,UUID,PARTUUID
NAME   FSTYPE   UUID                                 PARTUUID
sda
|-sda1 vfat     6078-ACD0                            95aa4ffb-741d-4d99-adf6-0358bc890046
|-sda2 squashfs                                      7d46da2d-29cc-4d5a-9e39-d0381c4abb0c
|-sda3 squashfs                                      d4a3e24e-410a-4f2c-8ad5-8f8321de177b
|-sda4 ext4     d72ec529-78e4-4cd3-b39b-781b6b1cb47c f3edc990-f4f6-4536-9587-44dae4ceb99f
`-sda5 ext4     a0b265aa-e935-40b8-9c6b-e9e58ad3890f 6e72ebaa-29ed-41cd-844c-3f76976cf41d

Modifying this constrain allows a user to create squashfs-based rootfs and boot
from them with such kernel argument 'root=PARTUUID=7d46da2d-29cc-4d5a-9e39-d0381c4abb0c'

Fixes: 2fbdcf4e59c8 ("wic: kparser.py: Check for SquashFS and use-uuid")
(From OE-Core rev: a8787bbfdf088b0ef9feb8e6b4230b743bb4086f)

Signed-off-by: Emmanuel Roullit <emmanuel.roullit@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-11 09:05:35 +01:00
Armin Kuster
b141ea4bd8 xserver-xorg: config: fix NULL value detection for ID_INPUT being unset
Fixes Yocto # 12899

Xorg.log message:

(II) config/udev: Adding input device (unnamed) (/dev/tty59)

and cause system freezes.

(From OE-Core rev: e29a330e04baf0881805e4a36d28bafad7fcd318)

Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-11 09:05:35 +01:00
Trevor Woerner
31a55b5734 gdb: PACKAGECONFIG for tui
Allow the tui (Terminal User Interface) option to be set via a PACKAGECONFIG.

(From OE-Core rev: b4dd830e3407e1ebfbb13387fa359e356fd12ab9)

Signed-off-by: Trevor Woerner <trevor@toganlabs.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-11 09:05:35 +01:00
Hong Liu
f148288ca3 libdrm:2.4.93 -> 2.4.94
Upgrade libdrm from 2.4.93 to 2.4.94.

(From OE-Core rev: 8438e8f07c51a6564f5d9a681c57a6a813f1603a)

Signed-off-by: Hong Liu <hongl.fnst@cn.fujitsu.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-11 09:05:35 +01:00
Alistair Francis
e918d692ec gdb: Add bison-native dependency
This fixes RISC-V GDB cross compile configure failure on missing bison.

(From OE-Core rev: 199fcc1a30b3e88dfc627cbc05310a645ccd4bf9)

Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-11 09:05:35 +01:00
Alexander Kanavin
cd0dcb1aef genericx86-common.inc: remove eee-acpi-scripts
Asus EEEpc hardware hasn't been produced for a long time;
upstream repo is now gone.

(From meta-yocto rev: 76cd3a475ebce4ae26fc3aae0f2b43628926f7b0)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-10 12:13:38 +01:00
Richard Purdie
530aceebc1 bitbake: runqueue: Ensure setscene tasks that aren't covered get built
Running "bitbake gconf-native -c cleansstate; bitbake core-image-sato:do_populate_sdk"

results in a build where it fails to find gconf-native and fails to build it,
merrily trying to build the SDK without gconf being present.

The issue is the missing setscene tasks are effectively ignored as the later
code in runqueue thinks that since other sstate tasks are present, these
'cover' the missing one. In reality we need to call BB_SETSCENE_DEPVALID
to make that decision. To do that we need a "reduced" setscene dependency
graph which we don't have in main task graph context.

Since that was already done in setscene, we should just assume anything
in the non-covered list needs to be built.

(Bitbake rev: 464d0339add15bc8b4344ddd1e4c49706e3c0a02)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-10 12:13:38 +01:00
Richard Purdie
479a059c96 bitbake: cooker/runqueue: Turn universe warnings into verbnotes
If the user puts universe on the commandline, they don't really want warnings
so use the new verbnote level instead.

(Bitbake rev: 0c87ade5678e503899e3a6cdda5329f6fc212b63)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-10 12:13:38 +01:00
Richard Purdie
78d517e410 bitbake: msg: Add explicit verbnote log level
It has become apparant we need a log level which reaches the console but
isn't a warning/error. Add "verbnote" as a way of doing this, behaves as
a note but with a higher priority.

(Bitbake rev: 2076f12cc2f809345108b1606bd6201f41287505)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-10 12:13:38 +01:00
Ross Burton
7c037b0d3e mesa: disable LLVM on x86
Whilst turning on the LLVM drivers is a honourable goal, the performance impact
is *huge*.  Instead let specific BSPs turn it on as required.

(From OE-Core rev: 882d31bc0dbe20434d2b89aa92901374bb5e5666)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-10 12:13:07 +01:00
Bruce Ashfield
946690cbb7 linux-yocto/4.14/4.18: address kernel configuration warnings
Making the following commits available to address kernel configuration
warnings:

  734172039130 preempt-rt: remove entry for aufs
  7a6753341309 common_pc: remove config audit warnings
  dea9c6aa7ddd common-pc/tiny: mask configuration warnings

(From OE-Core rev: cc3fa85467c0423b06e78b3e775d5358c422ee4e)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-10 12:13:07 +01:00
Bruce Ashfield
65163175b0 kern-tools: improve kernel config audit output
Recent kernels broke the ability of kconfiglib to parse the Kconfig
files and offer reasons why a symbol may not be set. To address this
issue, we update to Kconfiglib2 and adjust the symbol_why script to
work with the new API.

We also tweak the kconf_check script to allow the specification of
a list of option as "non-hardware". This allows a BSP to inhibit
warnings on options that it knows are mismatched for a valid reason
(i.e. -tiny kernels using common fragments with known missing
dependencies).

(From OE-Core rev: 6acfe7d9e431923124c5c4e743f39f9d7aea97c5)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-10 12:13:07 +01:00
Richard Purdie
e03fb7fcf7 core-image-tiny-initramfs: Avoid parsing failures
This variable is otherwise unset leading to missing dependency warnings. Give
it the same default as used elsewhere in other recipes.

(From OE-Core rev: 0a1265f4dd90ad9524005ce91b3d0564ce2215e5)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-10 12:13:07 +01:00
Richard Purdie
800f4a0c19 libpciaccess: Extend to native/nativesdk
Avoids warnings from libdrm which has nativesdk/native variants and depends upon this.

(From OE-Core rev: 7b604e6a8f800e779f368244b0fa94c219c93df0)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-10 12:13:07 +01:00
Richard Purdie
4b41d9072a busybox/packagegroups: Break out the busybox-syslog dependency
The busybox-syslog rrecomends is proving tricky as it gets pulled in early and
there are conflicts between its use of update-alternatives and busybox needing
to provide those things.

We already have recipes using BAD_RRECOMMENDS to remove this dependency, it probably
makes sense to spell it out explicitly and allow it to be overridden more easily.

This patch does this, dropping the now unneeded BAD_RRECOMMENDS. It preserves
the dependency as a recommendation for now, further cleanup may allow simplication
of that.

This unbreaks certain build failures on the autobuilder, more as a workaround but
is a change we probably want to make anyway.

(From OE-Core rev: 544ade2d78f1375d9e93d6bf5842d857ddaf3530)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-10 12:13:07 +01:00
Richard Purdie
1aa224368f staging: Fix broken debug code
The code currently only prints a single depchain due to overwriting data
instead of appending. Fix this.

(From OE-Core rev: 48af19cdfa92aa9d336da50afe4ed3dde92daecc)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-10 12:13:06 +01:00
Richard Purdie
bd3e4bb373 staging: Ensure we handle glibc-locale do_stash_locale correctly
Occasionally we see warnings like:

WARNING: core-image-sato-1.0-r0 do_populate_sdk: Manifest /home/pokybuild/yocto-worker/nightly-qa-extras/build/build/tmp/sstate-control/manifest-allarch-nativesdk-linux-libc-headers.populate_sysroot not found in i686_linux allarch (variant '')?

which occur when do_populate_sdk is run in an otherwise empty TMPDIR.

It occurs because do_stash_locale is not recognised as a setscene task
and is removed from the taskgraph meaning the dependency chains fed
through setscene_depvalid don't match what was actually setscene'd.

That task is recipe specific and not in the global SSTATETASKS so we
hardcode the value for now to stop the build warnings. This is going to
need to be revisited for a more generic solution.

(From OE-Core rev: d8d5b624058920113f9d297f7f711d6d3249ae39)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-10 12:13:06 +01:00
Yi Zhao
1589ac43db taglib: Security fix CVE-2018-11439
CVE-2018-11439: The TagLib::Ogg::FLAC::File::scan function in
oggflacfile.cpp in TagLib 1.11.1 allows remote attackers to cause
information disclosure (heap-based buffer over-read) via a crafted audio
file.

References:
https://nvd.nist.gov/vuln/detail/CVE-2018-11439

Patch from:
272648ccfc

(From OE-Core rev: a300c4917b6c22ef039158be7ae92055c35658d4)

Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-10 12:13:06 +01:00
Ross Burton
91098772f8 sysprof: fix build with musl
(From OE-Core rev: d2dc07ebc9e38a7936c942b7c89caa67b654c587)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-10 12:13:06 +01:00
Alexander Kanavin
db3071d825 sysprof: update to 3.30.0
(From OE-Core rev: 9a16f9e4eb782e43c659832f551b7e50fa9c0486)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-10 12:13:06 +01:00
Khem Raj
2b7043ca09 gdb: Update to 8.2
* https://sourceware.org/ml/gdb-announce/2018/msg00003.html
* Support RISC-V

(From OE-Core rev: 1d9d117e8eee2d3b9802384cb93155aea487f002)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-10 12:13:06 +01:00
Richard Purdie
3578a05aed busybox: Ensure busybox-syslog depends on busybox
If we don't do this, busybox-syslog can install before busybox
which clearly doesn't make sense and can trigger postinst failures
(missing sed which u-a depends upon).

(From OE-Core rev: 7080711849347c7fff55f925c33e6ea69d7c46bb)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-10 12:13:06 +01:00
Ross Burton
a81753fff9 libbsd: drop obsolete patch
This was only needed with old pkg-config, but we have 0.29.2 so this can be
dropped.

(From OE-Core rev: 27605fc88d0dc8021abeccc38bab286f56a92736)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-10 12:13:06 +01:00
Ross Burton
b425de93db mobile-broadband-provider-info: update patch status
I pushed this upstream, so mark the patch as such.

(From OE-Core rev: d1cae876c68b5b4ab666f1860d2935634a1f69dd)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-10 12:13:06 +01:00
Ross Burton
22d61c54c5 gstreamer1.0-libav: use nasm instead of yasm
The options are still called yasm and there's some cleanup to be done, but as
libav can use both yasm and nasm let's unify on nasm (last release six months
ago, fifteen RCs since) instead of yasm (last release 2014).

(From OE-Core rev: 9343c02cc12aa210a1b7ae7696c83a5501c91ceb)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-10 12:13:06 +01:00
Ross Burton
5224d52782 ffmpeg: use nasm instead of yasm
As ffmpeg can use both yasm and nasm let's unify on nasm (last release six
months ago, fifteen RCs since) instead of yasm (last release 2014).

(From OE-Core rev: fe204ba16068c518a15c946c3d370dff8a2171c7)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-10 12:13:06 +01:00
Ross Burton
d9f7b9d3ad python3: use regrtest instead of PyBench for profile-guided-optimisation
PyBench takes a long time to run, also upstream have removed it from Python and
instead use test.regrtest —pgo to profile the interpreter.

The results are good: not only does Python compile faster (~300s vs ~600s on my
machine) but Phoronix’s PyBench test runs in 2130ms compared to 2229ms when
using PyBench to train (and 2345ms with PGO disabled).

(From OE-Core rev: 98b2b6c3eae15d9b84c97c6a1495040f6b7e389a)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-10 12:13:06 +01:00
Ross Burton
dbb2d923de python3: don't use runtime checks to identify float endianism
Python uses AC_RUN_IFELSE to determine the byte order for floats and doubles,
and falls back onto "I don't know" if it can't run code.  This results in
crippled floating point numbers in Python, and the regression tests fail.

Instead of running code, take a macro from autoconf-archive which compiles C
with a special double in which has an ASCII representation, and then greps the
binary to identify the format.

(From OE-Core rev: 1781b87ae0765c1867da2fa8c56bf988b4e84405)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-10 12:13:06 +01:00
Ross Burton
ef38b43dbb python3: trim PGO patch
There's no need to delete the line that removes the profile data, as we're not
using it after the build.  This reduces the size of the patch, making it easier
to maintain.

(From OE-Core rev: 561577add4b935d9bfb7b7dd6abdc3e26c1d9143)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-10 12:13:06 +01:00
Ross Burton
fd3a47eceb python3: add toggle for profile-guided-optimisation
Add a PACKAGECONFIG for profile-guided-optimisation, and default to whether
qemu-usermode is available.

Move --enable-optimizations to the pgo optimisation as all this currently does
is use the PGO rules, causing a performance hit if PGO isn't actually used.

(From OE-Core rev: 231e13c76d3ca7beebfbc8d8a856f72fa3780601)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-10 12:13:06 +01:00
Ross Burton
7d04ae16f6 python3: generalise make commands
We're repeating the same make invocation over and over, twice without setting
OPT=${CFLAGS} which doesn't seem right.

Centralise the make invocation to clean up the tasks.

(From OE-Core rev: d2b5bf97eedc67f77d87a44bab86ab086176b8db)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-10 12:13:06 +01:00
Alexander Kanavin
c687dcb312 gobject-introspection: update to 1.58.0
License-Update: clarification of what parts of g-i are licensed under which license.
Actual terms are the same.

Add a patch to deal with prelink-rtld returning 127 in some cases despite there being no error.

(From OE-Core rev: 50b2187ed8b54317e953882034ba5648e0a4b764)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-10 12:13:06 +01:00
Alexander Kanavin
b4696f5124 glib: update to 2.58.0
Drop upstreamed patches, refresh the rest.
Add an explicit dependency on gettext-native, as glib is no longer
fooled by setting msgfmt to /bin/false.

(From OE-Core rev: 79d229e8be892cc0bd36fe9f71ac4671cc34aa82)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-10 12:13:06 +01:00
Alexander Kanavin
b0c7ed8269 meson: update to 0.47.2
Drop backported patches, refresh the rest.

(From OE-Core rev: 6c09949663a02015dc8a7b80f581e4867afdd7e3)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-10 12:13:06 +01:00
Changqing Li
2636881461 libice: patch for CVE-2017-2626
(From OE-Core rev: 890093056ccff294364cc768bd797cb54fcbcee3)

Signed-off-by: Changqing Li <changqing.li@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-10 12:13:06 +01:00
Mingli Yu
f7d1b79cc1 kexec-tools: fix for "Unhandled rela relocation: R_X86_64_PLT32" error
In response to a change in binutils, commit b21ebf2fb4c
(x86: Treat R_X86_64_PLT32 as R_X86_64_PC32) was applied to
the linux kernel during the 4.16 development cycle and has
since been backported to earlier stable kernel series. The
change results in the failure message as below when rebooting
via kexec.
 # kexec -l /boot/bzImage --append="console=ttyS0,115200 root=/dev/sda1"
 Unhandled rela relocation: R_X86_64_PLT32

Fix this by replicating the change in kexec.

(From OE-Core rev: 734a1bb8944caef1336f3a9cc98ea104d6be1f57)

Signed-off-by: Mingli Yu <Mingli.Yu@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-10 12:13:06 +01:00
Chen Qi
195e60ba96 build.py: add clean option to 'devtool build' command
Add -c (--clean) optiont to 'devtool build' command so that users
could easily clean things up when using devtool.

I encountered a problem about do_prepare_recipe_sysroot failure
when using `devtool build' command and I found myself in a situation
where I either have to use `bitbake' command to clean things up or
use `rm' to remove the directories under ${WORKDIR}.

So add a clean option as it would be helpful when users want to clean
things up to prepare an environment for a clean build.

(From OE-Core rev: 29d790cdeff19e520a35ec5902d6deaae8665492)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-10 12:13:06 +01:00
Mingli Yu
8f8a10e05e ffmpeg: Fix CVE-2018-15822
Fixes: Assertion failure
Fixes: assert_flvenc.c:941_1.swf

(From OE-Core rev: 23393330a599403085437cb62169bb3a2375c07a)

Signed-off-by: Mingli Yu <Mingli.Yu@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-10 12:13:06 +01:00
Mingli Yu
688611a5ed dropbear: Fix CVE-2018-15599
Wait to fail invalid usernames to fix
CVE-2018-15599

Rework 0006-dropbear-configuration-file.patch
to fix fuzz warnings

(From OE-Core rev: f017715120b67ff02f56ed5db131436ee62aeffb)

Signed-off-by: Mingli Yu <Mingli.Yu@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-10 12:13:06 +01:00
Mingli Yu
8e8d296ea9 libxkbcommon: Upgrade to 0.8.2
(From OE-Core rev: ba22336190481d39e700327e8331d15689a9e877)

Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-10 12:13:06 +01:00
Alexander Kanavin
0c4e26f49c gtk-doc: update to 1.29
(From OE-Core rev: 264fc66963d1700f374dd4cfcf107ba2487f4759)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-10 12:13:06 +01:00
Alexander Kanavin
aae1276f96 vala: update to 0.42.0
(From OE-Core rev: 8553c52f174af4c8c433c543f806f5ed5c1ec48c)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-10 12:13:06 +01:00
Alexander Kanavin
39c941e192 dtc: update to 1.4.7
(From OE-Core rev: a88e056b4529aa7b81a4f8266460e37773172d4a)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-10 12:13:06 +01:00
Alexander Kanavin
d9149d7cc9 gptfdisk: update to 1.0.4
(From OE-Core rev: 20a2a6cb344f7f4c527f8e44f8da8b9e0e7bd780)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-10 12:13:06 +01:00
Alexander Kanavin
74dacabf15 gdbm: update to 1.18
(From OE-Core rev: 76ef43b208e3b2bd2616171c7781629e060809cc)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-10 12:13:06 +01:00
Alexander Kanavin
f82ede6363 boost: update to 1.68.0
(From OE-Core rev: fb646ea311c589a51ef76eea7581e63f8a8f6bbd)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-10 12:13:06 +01:00
Alexander Kanavin
67b4b7ec95 cantarell-fonts: update to 0.0.25
See here for the "reconstruct" explanation:
e28a9096da

(From OE-Core rev: 68685bfc83051105ab2c5a5fb7d350ecaca2457f)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-10 12:13:06 +01:00
Alexander Kanavin
22529f7fe5 lighttpd: update to 1.4.50
(From OE-Core rev: 2b32390d0e79c75138ecc3ec84062f8bdb163abf)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-10 12:13:06 +01:00
Alexander Kanavin
2dcfeb3c6b iso-codes: update to 4.1
(From OE-Core rev: e54933e41dc7584bb9f30c7992326fbd387088cf)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-10 12:13:06 +01:00
Alexander Kanavin
0330d55879 btrfs-tools: update to 4.17.1
(From OE-Core rev: b6fad2cd3af34e7a98ce897f8aa9f160e748eee7)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-10 12:13:06 +01:00
Alexander Kanavin
604a4018de babetrace: update to 1.5.6
(From OE-Core rev: 7d1d6fed774cf8e67e2c9891b7bf835a255229ab)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-10 12:13:06 +01:00
Alexander Kanavin
09697b68fe libsolv: update to 0.6.35
(From OE-Core rev: a0462977458cc4ec2879c97a98c681fae50f6383)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-10 12:13:06 +01:00
Alexander Kanavin
652b6e4142 rpm: update to 4.14.2
Drop --disable-dbus option and patch: --disable-plugins is sufficient.

Drop upstreamed patches.

Drop a chunk of 0001-Do-not-reset-the-PATH-environment-variable-before-ru.patch, as upstream fixed the issue.

(From OE-Core rev: 4e4fc46589762914f10ae2fa41b614bcb32f9bb9)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-10 12:13:06 +01:00
Alexander Kanavin
51ed80991f qemu: fix upstream version check
(From OE-Core rev: dff0e6de970bb4c858c22874ea19328c670a4ad6)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-10 12:13:05 +01:00
Alexander Kanavin
b9036bcf1b dos2unix: fix upstream version check
(From OE-Core rev: dabce3f4f9db7d57348eeb8608323687cff91e82)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-10 12:13:05 +01:00
Alexander Kanavin
050e3e48f0 bzip2: do not perform upstream verison check
Otherwise, latest version is reported as 1.0.2 which is less than 1.0.6.
Hopefully some kind of official homepage will exist at some point.

(From OE-Core rev: 12baebac49ab774935f1f71eaaf22ed696366d10)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-10 12:13:05 +01:00
Alexander Kanavin
d6c564632c eee-acpi-scripts: remove the recipe
Asus EEEPc hardware is well obsolete, upstream repo is now gone.

(From OE-Core rev: 2ac9d94a4d9b88d56ac6af1dd4d7f3d383439a12)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-10 12:13:05 +01:00
Richard Purdie
c710430aa1 Revert "prelink: Fix SRC_URI and branch"
This reverts commit bd8470dcaebddf37bf889d3dffd3dcb53d367f23.

It breaks prelink since its using the master branch which doesn't contain
the cross changes.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-06 14:49:28 +01:00
Alejandro del Castillo
fe40065693 opkg: add strict package matching on removal patch
During removal, opkg is using globs to select which metadata files to
remove. The glob is too broad and sometimes can result in a package
removing the metadata from a package with a close name. Make the
matching more strict.

Fixes bugzilla 12905

(From OE-Core rev: 715180e41884393d4f2f234dd557df61a21c4745)

Signed-off-by: Alejandro del Castillo <alejandro.delcastillo@ni.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-06 10:36:31 +01:00
Hongxu Jia
1d313f7cda opkg-keyrings: do not use 'exit 1' to postpone to first boot
Since `229f4e9 package.bbclass: add support for
pkg_postinst_ontarget()' applied in oe-core, use
pkg_postinst_ontarget to run postinst at first boot.

(From OE-Core rev: a6e62aae8f83696755828631e5ff67a579a6462f)

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-06 10:36:31 +01:00
Yi Zhao
5c5f9990a2 epiphany: upgrade 3.28.1.1 -> 3.28.3.1
(From OE-Core rev: da989c32feb76a4f768b6ab99d3cd023bc2bd5b1)

Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-06 10:36:31 +01:00
Zhixiong Chi
a33c82de39 elfutils: CVE-2018-16062
Backport the CVE patch from the upstream:
https://sourceware.org/git/?p=elfutils.git;a=commit;
h=29e31978ba51c1051743a503ee325b5ebc03d7e9

(From OE-Core rev: bcca86fca317c16a8f6c138c7df369b944e50700)

Signed-off-by: Zhixiong Chi <zhixiong.chi@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-06 10:36:31 +01:00
Alejandro Enedino Hernandez Samaniego
c05304f1ea python3: fix indentation on create_manifest3
(From OE-Core rev: 76b4596c3782590bd27a7d46c2b64393c3a83944)

Signed-off-by: Alejandro Enedino Hernandez Samaniego <alejandr@xilinx.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-06 10:36:31 +01:00
Alejandro Enedino Hernandez Samaniego
a8a984dde7 python3-manifest: Avoid duplicate modules
There was a bug where modules were being added twice to the
core package, this patches the manifest to reflect the fix on
the create_manifest script.

(From OE-Core rev: 9ddbff824052751b4d0bb30c453ecb5098d728c9)

Signed-off-by: Alejandro Enedino Hernandez Samaniego <alejandr@xilinx.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-06 10:36:31 +01:00
Alejandro Enedino Hernandez Samaniego
f65c898ba6 python3: Clean up create manifest script
This patch intends to clean up the whole create_manifest script/task
for python3.

This is an effort to make the code more human friendly and facilitate
adoption, it not only cleans up the code but it also improves comments,
it should also be easier to upgrade the manifest after each python3
upgrade now, with these fixes the transition to python 3.7 should be
seamless.

It fixes a rather harmless bug where module dependencies were being
added twice to the core package and adds tests and sqlite3-tests
as special packages since we want specific dependencies on those.
It also fixes a bug that happened on a few packages that
contained a directory with the same name as the module itself
e.g. asyncio, where the script avoided checking that module for
dependencies.

Lastly, it improves the output, it errors out if a module is found
on more than one package, which is what usually happens when
python upstream introduces a new file, hence why the current
manifest is unaware of, it is better to exit with an error because
otherwise the user wouldnt know if anything went wrong unless the output
of the script was checked manually.

(From OE-Core rev: 658042073cb58c58ac4db4ff13689d1ffd89b72e)

Signed-off-by: Alejandro Enedino Hernandez Samaniego <alejandr@xilinx.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-06 10:36:31 +01:00
Alejandro Enedino Hernandez Samaniego
d3148222f0 python3: Modify create_manifest to make it versionless
This patch improves the create_manifest script by making it
use PYTHON_MAJMIN instead of hard coded paths containing the
version number when looking at the necessary modules for
every package, the script should now be independent of the
python(3) version on which were working

(From OE-Core rev: b94af33b5ffdd62617cf69fca4d99e927447740a)

Signed-off-by: Alejandro Enedino Hernandez Samaniego <alejandr@xilinx.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-06 10:36:31 +01:00
Alejandro Enedino Hernandez Samaniego
e9b05a3fea python3-manifest: Use PYTHON_MAJMIN instead of hard coded version
Currently the manifest contains hard coded paths with the version number,
e.g. python3.5, this patch changes the paths to use the variable
PYTHON_MAJMIN instead, this should make the python upgrades easier

(From OE-Core rev: a6fab3ca81e3dc6ee226840ed7e9f1cd21ecbc2a)

Signed-off-by: Alejandro Enedino Hernandez Samaniego <alejandr@xilinx.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-06 10:36:31 +01:00
Khem Raj
270b5581a3 prelink: Fix SRC_URI and branch
(From OE-Core rev: bd8470dcaebddf37bf889d3dffd3dcb53d367f23)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-06 10:36:31 +01:00
Mark Hatle
6b00b697cf prelink: Update to the latest version of prelink
The new version of prelink includes the fix for a segmentation fault due to
using e_shnum vs e_shstrndx.

In addition the following changes are incorporated:

    2018-08-29   Khem Raj <raj.khem@gmail.com>
	* src/elf.h: Add RISC-V defines
	* src/rtld/dl-tls.c: Add RISC-V support
	* src/rtld/rtld.c: Add RISC-V support

    2018-08-29  Robert Yang  <liezhi.yang@windriver.com>
	* src/dso.c: use ehdr.e_shstrndx as index

    2017-06-20  Andrew Stubbs  <ams@codesourcery.com>
	* src/arch-x86_64.c (x86_64_prelink_conflict_rela): Also convert
	R_X86_64_32 conflicts to R_X86_64_IRELATIVE for ifuncs.
	* src/arch-x86_64.c (PL_ARCH(x32)): Set mmap_end to 0x60000000.

    2017-06-20  Joseph Myers  <joseph@codesourcery.com>
	* src/rtld/rtld.c (load_ld_so_conf): Add argument use_x32.
	(main): Update call to load_ld_so_conf.

    2017-06-20   Kyle Russell <bkylerussell@gmail.com>
	* src/rtld/rtld.c: Add missing DT_NEEDED DSOs to needed_list

(From OE-Core rev: 1f0568c6b8982f814f630193fb5114db489afcaf)

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-06 10:36:31 +01:00
Khem Raj
c756901cac eglinfo: Upgrade contained waf version to 2.0.11 release
Fixes build with python 3.7+ on build host

(From OE-Core rev: 3655743d0f37ced4323e84bfba5900bba0e9dea5)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-06 10:36:31 +01:00
Khem Raj
052e6676a4 serf: Fix Sconstruct build with python 3.7
These patches will be needed to build serf on hosts with
python 3.7+

(From OE-Core rev: ab0be544b392bbd6cb1dc91edd5fe8563d7de393)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-06 10:36:31 +01:00
Richard Purdie
74feaddda3 bitbake: server/process: Various server startup logging fixes
There were various problems in the server startup loggin:

a) stdout/stderr were not being flushed before forking which could potentially
   duplicate output

b) there were separate buffers for stdout/stderr leading to confusing logs
   where the entries could be reordered. This was particularly confusing
   due to the separator the logs use to idendify new messages

c) an fd wasn't being closed during server startup meaning if the
   server failed to start, the closed fd wasn't detected as it was held
   open by the other reference

d) If the pipe was detected as being closed, the code incorrectly retried
   server startup

e) The event code would remap stdout/stderr without flushing them, leading
   to lose log messages

(Bitbake rev: 0594faa0b52ce5dbd948d836d88617d38d9862d1)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-05 18:01:37 +01:00
Mark Hatle
b7e26bedc2 bitbake: cooker.py: Fix incorrect bb files matched warning
In the case of a sublayer of an existing layer, where the sublayer and
main layer share a path, the system may not match the paths properly resulting
in:

    No bb files matched BBFILE_PATTERN_sublayer '^/path/main/sublayer'

because it has already matched the main layer.

Fix this issue by sorting the collection items based on the pattern, using
longest to shortest.  Obviously regex wildcards could still be an issue
but these are typically not used, so this simply fix should work in the
existing cases.

(Bitbake rev: 1787cef7221b88f6920ea70fadaffc117d84c7aa)

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-05 18:01:37 +01:00
Richard Purdie
2e9189c70c poky-tiny: Switch to 4.18 kernels
(From meta-yocto rev: 2b2d41267bae85dc7bf85a3165c1a46781259000)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-05 18:00:25 +01:00
Richard Purdie
7a76bb5304 populate_base_sdk: Stop running gcc --version all the time
Running 'gcc --version' for every image recipe is slow and increases parsing
time/resource usage for no good reason. Only compute the value in when we're
really running the task/function.

(From OE-Core rev: bf49316bb9913b7c89de64d6a194be31aa66e16b)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-05 18:00:25 +01:00
Richard Purdie
bcaa35fe54 binutils: Fix variable conflict
A recent binutils patch added the LDGOLD variable but its already used
for controlling EXTRA_OECONF options for gold. Separate the two variables
to different names to avoid build warnings and confusion.

(From OE-Core rev: 713c83fd00ab16250f05b0c3933f0c8178b8a33e)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-05 18:00:25 +01:00
Richard Purdie
341c0d7d82 gcc: Merge two related patches together
These patches may as well be merged together as they affect the same code
and things are clearer this way.

(From OE-Core rev: 7533c000183a2b447cbabd6ce1b8b75de55b63e7)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-05 18:00:25 +01:00
Joshua Lock
c539765288 os-release: fix to install in the expected location
os-release (5) recommends that the os-release file be installed in
/usr/lib/os-release and that /etc/os-release be a relative symlink to it.

(From OE-Core rev: 4feb8614ee25a3d3ceb7f5187120a1256a993155)

Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-05 18:00:25 +01:00
Ross Burton
869c3bb146 python: Run pybench once for optimisation task in pgo
There is no good reason to loop 10 times on the test since the profile
optimisation won't change between runs, we don't need/want a statistical
average. This is just burning cpu cycles, just make 1 run.

(From OE-Core rev: 78af3a3e6865cac8bc9fd881af6158ce5e21d4e5)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-05 18:00:25 +01:00
Richard Purdie
687e32ffaf scripts/autobuilder-worker-prereq-tests: Extend todo list
Add a couple of missing items to the TODO list that this script needs to handle.

(From OE-Core rev: c6bc6d874ae43eb2808508b935f837c670c1d15e)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-05 18:00:25 +01:00
Richard Purdie
705bb5e847 busybox: Put klogd/syslogd alternative links in syslog package
Currently these are in ${PN} and ${PN}-syslog may get replaced by
other packages but update-alternatives would error in the postinst
if other files were installed first. Avoid the problems by putting
the links in the correct package.

(From OE-Core rev: ef11c54ba99af261a70ec31091216cdd1556da24)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-05 18:00:25 +01:00
Richard Purdie
9fb645f0df busybox: Sync arch and link locations with coreutils
coreutils installs these into bindir, folllow its lead to avoid postinst
failures when installing coreutils and busybox together.

(From OE-Core rev: ed6e039bf9b16ea882995780425b33b84f9356cf)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-05 18:00:25 +01:00
Andrej Valek
29108755c1 busybox: update to 1.29.2
- refresh busybox-udhcpc-no_deconfig.patch
  - remove obsolete patches which are included in this update
  - update defconfig
  - Add newly required virtual/crypt depends [RB]

(From OE-Core rev: b9c7fdd4b204ab1c2466e9ec5d933bbc635fcc4f)

Signed-off-by: Andrej Valek <andrej.valek@siemens.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-05 18:00:25 +01:00
Khem Raj
5b2a6e0edc musl: Upgrade to 1.1.20
All 1.1.20 Release Notes

https://git.musl-libc.org/cgit/musl/commit/?id=0fa1e638e87cf257e9f96b4019b2076afd674a19

ChangeLog for this change in OE

https://git.musl-libc.org/cgit/musl/log/?qt=range&q=767f7a1091af3a3dcee2f7a49d0713359a81961c..0fa1e638e87cf257e9f96b4019b2076afd674a19

(From OE-Core rev: c2dfd3baa2e673d45505b8b23bbae251cfd844e9)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-05 18:00:25 +01:00
Khem Raj
bb0157d20c openssl_1.1.1: Fix Musl build by disabling async during configure
(From OE-Core rev: b011ae369de12bb54cd466d9f43139d9d2937383)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-05 18:00:25 +01:00
Andrej Valek
f0386ed8ee wpa-supplicant: fix CVE-2018-14526
Ignore unauthenticated encrypted EAPOL-Key data in supplicant
processing. When using WPA2, these are frames that have the Encrypted
flag set, but not the MIC flag.

(From OE-Core rev: a5a07887e73ebf0aa6b3b1fa247e44743b39322e)

Signed-off-by: Andrej Valek <andrej.valek@siemens.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-05 18:00:25 +01:00
Alexander Kanavin
cb3d32f165 openssl: rename PV to 1.1.1~pre9 to avoid future versions from going backwards
(From OE-Core rev: efa34c4c82e9e334d1f102b7729bed5f1500e6ae)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-05 18:00:25 +01:00
Khem Raj
13521ccc5a packagegroup-core-x11-sato: Make weak include for gst-examples
gstreamer is not _yet_ ported to risc-v

(From OE-Core rev: 597b253c766013c5328f95ac226ef855926f7784)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-05 18:00:25 +01:00
Kai Kang
444b3139cd package_manager.py: add noarch to buildarch_compat
It fails to run rpmbuild to build a noarch package on target when it
contains 'BuildArch: noarch' in the spec file:

| error: No compatible architectures found for build

Add 'noarch' to buildarch_compat in configure file rpmrc to fix it.

(From OE-Core rev: 2bdddb458bcc779d595e972f60a719aeb1c1b6d5)

Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-05 18:00:25 +01:00
Changhyeok Bae
7ef551b88b iproute2: Upgrade 4.17.0 -> 4.18.0
(From OE-Core rev: 5fac36f035f45d353aba86d64c9a54933da1ab2d)

Signed-off-by: Changhyeok Bae <changhyeok.bae@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-05 18:00:25 +01:00
Kai Kang
3beda3d921 lttng-tools: add systemd support
Add systemd service file of lttng-tools from Fedora

ftp://fr2.rpmfind.net/linux/fedora/linux/development/rawhide
/Everything/source/tree/Packages/l/lttng-tools-2.10.5-1.fc29.src.rpm

It requires kernel configs CONFIG_STAGING and CONFIG_LTTNG2 to be set.
But linux-yocto doesn't meet the requirement. So disable the service by
default.

(From OE-Core rev: 29bc046d705beb9dac2e70fa31358da7719ba7a4)

Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-05 18:00:25 +01:00
Otavio Salvador
eadd66da9b cmake: Update 3.11.4 -> 3.12.1
This updates CMake to the 3.12.1 stable release. All patches were
rebase on top of the new source file and all them applied without
changes.

The number of patches has changed as all them were applied on the Git
tree and re-exported, to avoid any fuzzy warnings.

License-Update: new contributor added in Copyright.txt

(From OE-Core rev: 439be401cd642937b45796489e8c10aa5238a963)

Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-05 18:00:25 +01:00
Ross Burton
ea02ec5e27 pango: upgrade
(From OE-Core rev: 419e63fe1c69eef196f0e7c39ab1fc5b85692bb2)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-05 18:00:25 +01:00
Richard Purdie
873b3cf4ae maintainers: Add entry for fribidi
(From OE-Core rev: 0f9e7cb8bd6042152e5f3f0a9786f5550d2c851f)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-05 18:00:24 +01:00
Ross Burton
74435155f3 fribidi: add (from meta-oe)
Originally this was fribidi 0.19.7 from meta-oe, with the following changes:

- Upgrade to latest release (1.0.5)
- Drop GLib and PCRE build-dependencies (removed upstream)
- License is *or newer*
- Upstream has moved to Github
- Remove the historical PROVIDES (patches for meta-oe sent)

(From OE-Core rev: d1feb75be77816efdb00149acef4815a8c97d844)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-05 18:00:24 +01:00
Ross Burton
c6accbb81a no-static-libs: disable static libraries in libjpeg-turbo
Previously this was done with the generic autotools support, but CMake doesn't
have a standard option so set it explicitly.

(From OE-Core rev: 47bd456c1be169fc86788edf0173847b9b0d255b)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-05 18:00:24 +01:00
Kai Kang
92397ad593 webkit: 2.20.3 -> 2.20.5
Upgrade webkitgtk from 2.20.3 to 2.20.5.

* include fix of CVE-2018-12911
* backport patch for fix CVE-2017-17821

(From OE-Core rev: b77193ca8fd362d7b711574aa0b6eb07f7cc605f)

Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-05 18:00:24 +01:00
Chen Qi
675d372205 autotools.bbclass: adjust indentation for consistency
All other functions in this class use TAB for indentation while
the do_compile function uses '4 spaces'. Adjust it for consistency.

(From OE-Core rev: c2829b74892633c554a5f8262d4cafbe0fa6c3a7)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-05 18:00:24 +01:00
Ross Burton
95cbd1e576 oe-pkgdata-util: add option for lookup-recipe to not fatally fail
It is often useful to run lookup-recipe on a list of packages and get
notifications that there were failures, instead of a fatal error on the first
failure.

This makes it possible to pass long lists of packages to oe-pkgdata-util and
process the output.

(From OE-Core rev: 8439565a009bb72d63bb3be6230832811b04cf6e)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-05 18:00:24 +01:00
Alex Kiernan
04d388174e sudo: Add missing dep on virtual/crypt
Ensure we have virtual/crypt even if building without PAM; fixes:

  sudo: error in /etc/sudo.conf, line 0 while loading plugin "sudoers_policy"
  sudo: unable to load /usr/libexec/sudo/sudoers.so: /usr/libexec/sudo/sudoers.so: undefined symbol: crypt
  sudo: fatal error, unable to load plugins

(From OE-Core rev: f863713ae255bf5b6619c98ecd36aacbda352bbb)

Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-05 18:00:24 +01:00
Richard Purdie
02aff2ad81 yocto-bsp: drop 4.12 bbappend
4.18 is replacing 4.12 as the latest kernel in the upcoming
release, so we drop this dangling bbappend.

(From meta-yocto rev: 6686fbad03d8de5d29d58aae149e253474336d5f)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-04 11:03:56 +01:00
Bruce Ashfield
65fa4d1039 yocto-bsp: drop 4.15 bbappend
4.18 is replacing 4.15 as the latest kernel in the upcoming
release, so we drop this dangling bbappend.

(From meta-yocto rev: 14e89c34cc0cb9e74075cd5a86500426701b1c8d)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-04 11:03:56 +01:00
Bruce Ashfield
eacb605ff7 poky: set linux-yocto default to 4.18
4.18 will be the newest kernel in the upcoming release, so we bump
our default to it in preparation of 4.15 being dropped.

(From meta-yocto rev: 698c1edd9a258a891b7f1373c3468218e6440856)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-04 11:03:56 +01:00
Richard Purdie
a842b02a87 openssl: Handle -conf package file conflicts
The configuration files from 1.0 and 1.1 conflict:

"""
file /etc/ssl/openssl.cnf conflicts between attempted installs of openssl10-conf-1.0.2p-r0.i586 and openssl-conf-1.1.1+pre9-r0.i586
"""

Ensure that if 1.1 is present, it will overwrite the config file
from 1.0.

(From OE-Core rev: bd92ff5759809df2542ce1bcba2c45bbd11d1e10)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-04 11:03:56 +01:00
Richard Purdie
0892e449a5 oeqa/selftest/runtime_test: Fix runtime_test.TestImage.test_testimage_install after ssl changes
The test installs socat and expects it to run but assumes all its dependencies
are already installed (which includes libssl).

Recent changes mean this isn't the case so force libssl into the image in advance
to work around this issue for now.

(From OE-Core rev: 13b82380abb273e6575b1e74870d3fe8249ebbc1)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-04 11:03:56 +01:00
Richard Purdie
25bac865de recipes: Update git.gnome.org addresses after upstream changes
git.gnome.org is no more. It has ceased to be. It's an ex-git.

Please see here:
https://about.gitlab.com/2018/05/31/welcome-gnome-to-gitlab/

Note that gitlab does not support git://, only https:// (and ssh).

[Commit message from Alexander Kanavin]

(From OE-Core rev: 8382cdc0888ca645a44aacaac1155afb8dcde979)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-04 11:03:56 +01:00
Otavio Salvador
3ad9909e59 mesa: Upgrade 18.1.3 -> 18.1.7
This upgrades mesa to the 18.1.7 stable release.

The changes can be found at:

 https://www.mesa3d.org/relnotes/18.1.4.html
 https://www.mesa3d.org/relnotes/18.1.5.html
 https://www.mesa3d.org/relnotes/18.1.6.html
 https://www.mesa3d.org/relnotes/18.1.7.html

(From OE-Core rev: a77eb44bb1ff2ece9dcff1f7b5fe671ea3ae034d)

Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-04 11:03:56 +01:00
Otavio Salvador
76956f0057 linux-firmware: Update to feb25f3e revision
It includes following changes:

fea76a0 amdgpu: sync up polaris10 firmware with 18.30 release
ffca603 amdgpu: sync up vega10 firmware with 18.30 release
2ed60eb amdgpu: sync up raven firmware with 18.30 release
02cc45f amdgpu: sync up polaris12 firmware with 18.30 release
b860e58 amdgpu: sync up tonga firmware with 18.30 release
15ed096 amdgpu: sync up polaris11 firmware with 18.30 release
005a9fe amdgpu: sync up fiji firmware with 18.30 release
1d17c18 linux-firmware: add firmware for mhdp8546
c2e0d14 qed: Add firmware 8.37.7.0
f1b95fe linux-firmware:Update firmware patch for Intel Bluetooth 7265 (D1)
8813230 linux-firmware: Update firmware file for Intel Bluetooth,9560
c2d8f1b linux-firmware: Update firmware file for Intel Bluetooth,9260
9767096 linux-firmware: Update firmware file for Intel Bluetooth,8265
41bdd3b linux-firmware: Update firmware patch for Intel Bluetooth 8260
fdd3468 linux-firmware: add firmware for mt76x0
eee8208 Merge commit 'c4883661c7eeedd061eb3b483135b47dab39a88d' of https://github.com/Netronome/linux-firmware
6ae7a5b qcom: update venus firmware files for v5.2
c488366 nfp: update Agilio SmartNIC flower firmware to rev AOTC-2.9.A.31
7b5835f linux-firmware: add firmware for mt76x2u
3a5103f wl18xx: update firmware file 8.9.0.0.79
b01151b Mellanox: Add new mlxsw_spectrum firmware 13.1702.6
0ff06f2 WHENCE: Remove reference to amdgpu/vegam_me_2.bin
3fcf221 linux-firmware: mediatek: add MT7622 Bluetooth firmwares and license file
c8d6903 brcm: add 43430 based AP6212 and 1DX NVRAM
fad829d Merge git://git.marvell.com/mwifiex-firmware
0ced724 linux-firmware: update Marvell USB8801 B0 firmware image
8d69bab amdgpu: update copyright date
153a51e amdgpu: add initial VegaM firmware
10e2971 amdgpu: sync up vega10 firmware with 18.20 release
4b05dee amdgpu: sync up raven firmware with 18.20 release
aeec108 amdgpu: sync up polaris12 firmware with 18.20 release
5408150 amdgpu: sync up polaris11 firmware with 18.20 release
34116bf amdgpu: sync up polaris10 firmware with 18.20 release
a8a2884 amdgpu: sync up verde firmware with 18.20 release
bea8c7f amdgpu: sync up pitcairn firmware with 18.20 release
d47f956 amdgpu: sync up tahiti firmware with 18.20 release
1f92e00 amdgpu: sync up oland firmware with 18.20 release
effed45 amdgpu: sync up hainan firmware with 18.20 release
d50a667 amdgpu: sync up kaveri firmware with 18.20 release
5b8eca3 amdgpu: sync up mullins firmware with 18.20 release
b4b5726 amdgpu: sync up kabini firmware with 18.20 release
fc80838 amdgpu: sync up hawaii firmware with 18.20 release
5350953 amdgpu: sync up bonaire firmware with 18.20 release
8c96b0d WHENCE: Fix typo Version
6213586 cxgb4: update firmware to revision 1.20.8.0

License-Update:
 - LICENSE.amdgpu has a copyright year bump
 - LICENCE.cadence is new
 - LICENCE.mediatek is new
 - WHENCE list the version bumps as well as the new Cadence and
   MediaTek license files and its respective firmware files.

(From OE-Core rev: 1b980f95112f83f713de9c70f3e1d64996dcade0)

Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-04 11:03:56 +01:00
Otavio Salvador
de7194039a go-dep: Update 0.4.1 -> 0.5.0
NEW FEATURES:

- Add CI tests against go1.10. Drop support for go1.8. (#1620).
- Added install.sh script. (#1533).
- List out of date projects in dep status (#1553).
- Enabled opt-in persistent caching via DEPCACHEAGE env var. (#1711).
- Allow DEPPROJECTROOT environment variable to supersede GOPATH
  deduction and explicitly set the current project's root (#1883).
- dep ensure now explains what changes to the code or Gopkg.toml have
  induced solving (#1912).
- Hash digests of vendor contents are now stored in Gopkg.lock, and
  the contents of vendor are only rewritten on change or hash
  mismatch (#1912).
- Added support for ppc64/ppc64le.
- New subcommand dep check quickly reports if imports, Gopkg.toml,
  Gopkg.lock, and vendor are out of sync (#1932).

BUG FIXES:

- Excise certain git-related environment variables. (#1872)

IMPROVEMENTS:

- Add template operations support in dep status template output (#1549).
- Reduce network access by trusting local source information and only
  pulling from upstream when necessary (#1250).
- Update our dependency on Masterminds/semver to follow upstream again
  now that Masterminds/semver#67 is merged(#1792).
- inputs-digest was removed from Gopkg.lock (#1912).
- Hash digests of vendor contents are now stored in Gopkg.lock, and
  the contents of vendor are only rewritten on change or hash
  mismatch (#1912).
- Don't exclude Godeps folder (#1822).
- Add project-package relationship graph support in graphviz (#1588).
- Limit concurrency of dep status to avoid hitting open file
  limits (#1923).

(From OE-Core rev: 165da89292f81d236e4e8e652500b8879c2ad9be)

Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-04 11:03:56 +01:00
Alexander Kanavin
235e794519 openssl: do not tweak so names, use PRIVATE_LIBS instead
The tweaking was not sufficient to prevent package dependency issues,
but there is a standard mechanism to do exactly that kind of prevention
which I wasn't aware of.

(From OE-Core rev: 1e75fead42f27723e720686f5a5233dc5acbe5b3)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-04 11:03:56 +01:00
Alexander Kanavin
da0ce5d365 ca-certificates: update to 20180409
License-Update: URI fix
(From OE-Core rev: 87acc51a7892524a22640bf9eba46c11701365d6)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-04 11:03:56 +01:00
Alexander Kanavin
729445340a libressl: add a recipe to support openssh
After reading through this:

https://github.com/openssh/openssh-portable/pull/48

and this thread:

https://lists.mindrot.org/pipermail/openssh-unix-dev/2017-October/036344.html

I've concluded that this is the best of the three not-great options. The alternatives:

- bundle libressl inside openssh packages
- keep openssh dependent on openssl 1.0 and wait until upstream does something

are both inferior. Libressl is used with openssh in OpenBSD and in OS X,
so it did get at least some testing in the real world.

(From OE-Core rev: e7ac137bfc59bc67e17d5372b59d20bdbfcc2550)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-04 11:03:56 +01:00
Alexander Kanavin
d9704260de openssl: update to 1.1.1
At the moment 1.1.1 is in pre-release stage, however the final release
should be available within a few weeks. The major selling point is that
it supports the new TLS 1.3 specification. It will also be the new long
term support version. More information:

https://www.openssl.org/policies/releasestrat.html

(From OE-Core rev: 9f14a32a3b47b83877fe4fa58b13caeeb38f183a)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-04 11:03:56 +01:00
Alexander Kanavin
1343314af9 cryptodev-tests: port to openssl 1.1
This leaves openssh as the only recipe that requires openssl 1.0 (or libressl).

(From OE-Core rev: 8b3711f32f0e25961762cbc77ae2e10628ecdf07)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-04 11:03:56 +01:00
Alexander Kanavin
df15a4c914 openssl: rename openssl 1.0.x to openssl10 and make openssl 1.1.x the default version
I believe the time has come to do this: openssl 1.0 upstream support stops at the end
of 2019, and we do not want a situation where a supported YP release contains an
unsupported version of a critical security component.

Openssl 1.0 can still be utilized by depending on 'openssl10' recipe.

(From OE-Core rev: 876466145f2da93757ba3f92177d0f959f5fe975)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-04 11:03:56 +01:00
Chen Qi
352d1a4bfd package.bbclass: warn if perms conf file does not exist
It's possible that the perms conf file specified by FILESYSTEM_PERMS_TABLES
does not exist. Currently, this situation is silently ignored, which
is likely to lead to further do_rootfs failures.

So fix to output a warning, telling user that the specified file
in FILESYSTEM_PERMS_TABLES cannot be found.

(From OE-Core rev: e14b9f2a667889092251053933dc2f3c51f01ef0)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-04 11:03:55 +01:00
Randy MacLeod
f19360329a openssh: update from 7.7p1 to 7.8p1
Drop the disable-ciphers patch since it has been integrated:
   cec33896 Omit 3des-cbc if OpenSSL built without DES.

(From OE-Core rev: 7d35f5bb7b1700ae4bb7f55af8db7357a851c15a)

Signed-off-by: Randy MacLeod <Randy.MacLeod@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-04 11:03:55 +01:00
Khem Raj
5c0f6391cf gdb: Seprate out gold and dwp into a variable
This is needed for riscv64 to build target binutils fixes alternatives
creation

(From OE-Core rev: 81a8e7addadcffc322735f3a30369d382334590b)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-04 11:03:55 +01:00
Khem Raj
ce5cb58f3a tcf-agent: Disable non-building features on riscv64
(From OE-Core rev: ef803a2e82a5e33984da830f54ea8261a90819e7)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-04 11:03:55 +01:00
Khem Raj
1817bd3442 packagegroup-core-tools-testapps: Exclude gst-examples on riscv64
(From OE-Core rev: c86aa4beefb7882f5418b111b89433fb4ed45019)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-04 11:03:55 +01:00
Khem Raj
9c30eb1989 glibc-locale: Enable riscv64 and riscv32 in BINARY_LOCALE_ARCHES supported architectures
This support is there using cross-localedef but was not enabled, this
caused the post-install for locales to be emitted which delays the boot
significantly.

emitted postints for locales contain exit 1 which is flagged now and was
causing image generation to fail.

(From OE-Core rev: c67298f3af9cbb8c7596e4fb20b652a8f2582add)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-04 11:03:55 +01:00
Khem Raj
4efc4517ef libc-package: Add risc-v specific options to cross-localedef invocation
It was otherwise being deferred until boot time

(From OE-Core rev: f8a4ce9b2d59a380d35305a2cd7f73b279bbd8f5)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-04 11:03:55 +01:00
Khem Raj
c5fc674b4e boost: Fix invalid const in atomic builtins
Fixes build with clang

(From OE-Core rev: b844cc9a3ac95f51586a57e973c1b3c4188b9cff)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-04 11:03:55 +01:00
Bruce Ashfield
6f80bc6b6d kernel-yocto/cfg: configuration warning fixes
Now that the kernel configuration audit output is visible, we cleanup
and drop obselete configs:

   bae5cc4e973f bsp/romley: drop obsolete config
   2e39f82df02a x86: update microcode configs
   6894481e965e wifi: CONFIG_VENDOR_ATH must be build in
   3a9f687cdf42 pm: drop obselete CONFIG_USB_SUSPEND
   bb869e576f6b pm: change CONFIG_PM_RUNTIME to CONFIG_PM
   49547fd6b4a3 i915: remove obselete CONFIG_DRM_I915_KMS
   4b49aa8e8d09 i915: rename preliminary_hw_support to alpha_support
   d6186c621856 sound: fix CONFIG_SND_SST_MFLD_PLATFORM
   d57f4ebf6b54 netfilter: drop CONFIG_NF_CONNTRACK_PROC_COMPAT
   c8e3cf86df8b netfilter: remove obselete ULOG configs
   13da6cb561c0 fs: drop old ext3 options
   8e25da60cfd3 cgroups: remove obselete options
   aa6a61d826e0 wifi: ATH_CARDS -> WLAN_VENDOR_ATH
   4e32f99a1591 intel: remove CONFIG_CPU_FREQ_TABLE
   131df62ce93a common-pc: remove obselete subsystem
   0040deb2fad7 bsp: don't include crypto.scc
   3f94205d082c features/crypto: drop feature
   e2951464ef97 features/thermal: use the correct config name
   5a09f42be52e features: drop obsolete configs

(From OE-Core rev: fbd0ae4e302fa8e18a15d9081537c58edec2a460)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-04 11:03:55 +01:00
Bruce Ashfield
b1629e322a linux-yocto/4.14: update to v4.14.67
Integrating the korg -stable updates that comprise the following commits:

   f4c88459f7c9 Linux 4.14.67
   ef3cf941e0df reiserfs: fix broken xattr handling (heap corruption, bad retval)
   82c6d4994ba8 i2c: imx: Fix race condition in dma read
   415a02d8b65a i2c: core: ACPI: Properly set status byte to 0 for multi-byte writes
   b5b7417ed9d6 PCI: pciehp: Fix unprotected list iteration in IRQ handler
   2f27dfad05ef PCI: pciehp: Fix use-after-free on unplug
   8af37982c3b2 PCI: Skip MPS logic for Virtual Functions (VFs)
   cf9c2bc5eea0 PCI: hotplug: Don't leak pci_slot on registration failure
   6541d98d114e parisc: Remove unnecessary barriers from spinlock.h
   3f59cf41fbfb net/smc: no shutdown in state SMC_LISTEN
   9e9f27e0d7ac packet: refine ring v3 block size test to hold one frame
   c764f22b2fc3 netfilter: conntrack: dccp: treat SYNC/SYNCACK as invalid if no prior state
   caf3d4bd62cc xfrm_user: prevent leaking 2 bytes of kernel memory
   fdb441da3858 parisc: Remove ordered stores from syscall.S
   deebf1d61e70 f2fs: sanity check for total valid node blocks
   2ab95e71c8a5 f2fs: return error during fill_super
   270d5d771917 KVM: irqfd: fix race between EPOLLHUP and irq_bypass_register_consumer
   7a12f4ed07a5 nvme: fix handling of metadata_len for NVME_IOCTL_IO_CMD
   0ee106583f9c ARM: dts: imx6: RDU2: fix irq type for mv88e6xxx switch
   119970f4775b ACPI / EC: Use ec_no_wakeup on more Thinkpad X1 Carbon 6th systems
   715f5f92aabf soc: imx: gpc: restrict register range for regmap access
   90e7d66508e3 tcp: identify cryptic messages as TCP seq # bugs
   e86aaeb8a630 net: qca_spi: Fix log level if probe fails
   7f117d7000ee net: qca_spi: Make sure the QCA7000 reset is triggered
   f600a10d05da net: qca_spi: Avoid packet drop during initial sync
   96dfb7652e17 PCI: versatile: Fix I/O space page leak
   0e66392d985c PCI: OF: Fix I/O space page leak
   114a5608cde4 kvmclock: fix TSC calibration for nested guests
   1b1968d8f6ae net: usb: rtl8150: demote allmulti message to dev_dbg()
   70cc6b67508c octeon_mgmt: Fix MIX registers configuration on MTU setup
   fc9caa36d80e btrfs: scrub: Don't use inode page cache in scrub_handle_errored_block()
   2daadcdc5827 ibmvnic: Fix error recovery on login failure
   a6c35a5c8750 net/ethernet/freescale/fman: fix cross-build error
   7b4ab0e6510b hv/netvsc: fix handling of fallback to single queue mode
   dcedabcab045 drm/nouveau/gem: off by one bugs in nouveau_gem_pushbuf_reloc_apply()
   b6fadd93ad96 pinctrl: nsp: Fix potential NULL dereference
   54046f1793c7 pinctrl: nsp: off by ones in nsp_pinmux_enable()
   87011fb97fe5 pinctrl: ingenic: Fix inverted direction for < JZ4770
   2d2eacd650c6 tcp: remove DELAYED ACK events in DCTCP
   bf106eaa181c qlogic: check kstrtoul() for errors
   75425326b88c packet: reset network header if packet shorter than ll reserved space
   edf81993dc29 kbuild: suppress warnings from 'getconf LFS_*'
   abf9fb6e1537 tools: build: Use HOSTLDFLAGS with fixdep
   bd43d233acaa ixgbe: Be more careful when modifying MAC filters
   95b08af40269 ARM: dts: am3517.dtsi: Disable reference to OMAP3 OTG controller
   e77c08b7c6f0 ARM: DRA7/OMAP5: Enable ACTLR[0] (Enable invalidates of BTB) for secondary cores
   b900c624d467 ARM: 8780/1: ftrace: Only set kernel memory back to read-only after boot
   26c7588c28ca RDMA/mlx5: Fix memory leak in mlx5_ib_create_srq() error path
   a6629efeef9d nfit: fix unchecked dereference in acpi_nfit_ctl
   953c9cddc999 perf script python: Fix dict reference counting
   d1d2e7d014d2 perf tools: Fix compilation errors on gcc8
   42a061a16675 perf llvm-utils: Remove bashism from kernel include fetch script
   e238b259b774 scsi: qedi: Send driver state to MFW
   a38adc3e104b scsi: qedf: Send the driver state to MFW
   fdf578210a0e bnxt_en: Fix for system hang if request_irq fails
   cab718feb18f bnxt_en: Always set output parameters in bnxt_get_max_rings().
   822bbc4c7966 bnxt_en: Fix inconsistent BNXT_FLAG_AGG_RINGS logic.
   09af6c90819d ARC: Improve cmpxchg syscall implementation
   e653e79ace50 netfilter: nf_conntrack: Fix possible possible crash on module loading.
   a76e62b50dc0 netfilter: nft_compat: explicitly reject ERROR and standard target
   afd13311ee01 drm/armada: fix irq handling
   3d211fefdd52 drm/armada: fix colorkey mode property
   f2cbde943d97 drm/tegra: Fix comparison operator for buffer size
   d3f205d2d3cd gpu: host1x: Check whether size of unpin isn't 0
   1b57c5876c08 ieee802154: fakelb: switch from BUG_ON() to WARN_ON() on problem
   c1f84e47ec26 ieee802154: at86rf230: use __func__ macro for debug messages
   68e70bc28d53 ieee802154: at86rf230: switch from BUG_ON() to WARN_ON() on problem
   1b8f1ab088ba nvmem: Don't let a NULL cell_id for nvmem_cell_get() crash us
   de9f2452b1ad net/sched: act_tunnel_key: fix NULL dereference when 'goto chain' is used
   431f0995a5e8 ARM: pxa: irq: fix handling of ICMR registers in suspend/resume
   924d13694a13 ravb: fix invalid context bug while changing link options by ethtool
   1465aba3428d ravb: fix invalid context bug while calling auto-negotiation by ethtool
   7947dc71b9de sh_eth: fix invalid context bug while changing link options by ethtool
   533b9559ff83 sh_eth: fix invalid context bug while calling auto-negotiation by ethtool
   5860ae76e018 net: qrtr: Broadcast messages only from control port
   8e39e96f23d8 ipv6: make ipv6_renew_options() interrupt/kernel safe
   365279b70bf3 netfilter: x_tables: set module owner for icmp(6) matches
   2d0da2188643 ieee802154: 6lowpan: set IFLA_LINK
   f599525df7f1 samples/bpf: Check the error of write() and read()
   3bbb0484a731 samples/bpf: Check the result of system()
   2b533daef882 samples/bpf: add missing <linux/if_vlan.h>
   bf030b2faacb drm/bridge/sii8620: Fix display of packed pixel modes
   5996929435a8 smsc75xx: Add workaround for gigabit link up hardware errata.
   6e7084e2c3f9 kasan: fix shadow_size calculation error in kasan_module_alloc
   017fe62bb794 tracing: Use __printf markup to silence compiler
   56f059c87bc6 bpf: hash map: decrement counter on error
   fa97c9162779 ARM: imx_v4_v5_defconfig: Select ULPI support
   2059e527a659 ARM: imx_v6_v7_defconfig: Select ULPI support
   2aebd462a5fd HID: wacom: Correct touch maximum XY of 2nd-gen Intuos
   979c7c0dd75d x86/mm/32: Initialize the CR4 shadow before __flush_tlb_all()
   bf6c97326381 drm/amdgpu: fix swapped emit_ib_size in vce3
   f3ef33ee85c1 ipvlan: call dev_change_flags when ipvlan mode is reset
   0bcba95686be objtool: Support GCC 8 '-fnoreorder-functions'
   e793dc3d9766 m68k: fix "bad page state" oops on ColdFire boot
   83141913ca6b openrisc: entry: Fix delay slot exception detection
   c845344aa2e2 acpi/nfit: fix cmd_rc for acpi_nfit_ctl to always return a value
   f06fae164194 dpaa_eth: DPAA SGT needs to be 256B
   fba7c43d9368 fsl/fman: fix parser reporting bad checksum on short frames
   3baa3f9221e2 bnx2x: Fix receiving tx-timeout in error or recovery state.
   441712f28d69 PCI: faraday: Add missing of_node_put()
   7851cea48abc PCI: xilinx-nwl: Add missing of_node_put()
   dfcee0c7d9cb PCI: xilinx: Add missing of_node_put()
   a21b37053edc bpf, s390: fix potential memleak when later bpf_jit_prog fails
   a567493430be drbd: Fix drbd_request_prepare() discard handling
   8a9e8b683a7c drm/exynos: decon5433: Fix WINCONx reset value
   4091040d025b drm/exynos: decon5433: Fix per-plane global alpha for XRGB modes
   49316955f501 drm/exynos: gsc: Fix support for NV16/61, YUV420/YVU420 and YUV422 modes
   d4857eb755d7 nl80211: check nla_parse_nested() return values
   334c9cd8ba8d nl80211: relax ht operation checks for mesh
   0aa88fda693a dev-dax: check_vma: ratelimit dev_info-s
   601c226ea662 md/raid10: fix that replacement cannot complete recovery after reassemble
   94cac10c50c1 ath10k: update the phymode along with bandwidth change request
   bb2b7243e3f7 dmaengine: k3dma: Off by one in k3_of_dma_simple_xlate()
   4cea08638e9a dmaengine: pl330: report BURST residue granularity
   4c68433396e1 ARM64: dts: meson-gxl: fix Mali GPU compatible string
   58b22343150b ARM: dts: da850: Fix interrups property for gpio
   9f8da50b0232 selftests/x86/sigreturn: Do minor cleanups
   90c45a36250b selftests/x86/sigreturn/64: Fix spurious failures on AMD CPUs
   778bce908b84 nfp: cast sizeof() to int when comparing with error code
   a5b6bb86cc12 net/mlx5: E-Switch, Disallow vlan/spoofcheck setup if not being esw manager
   77c967872e8e ceph: fix dentry leak in splice_dentry()
   4c3b0ae79f07 netfilter: nf_log: fix uninit read in nf_log_proc_dostring
   1ea053d1cc8b ARM: davinci: board-da850-evm: fix WP pin polarity for MMC/SD
   0f868ad81fac perf bench: Fix numa report output code
   28dbfc731fec perf tools: Fix a clang 7.0 compilation error
   b4d84dcee9ef perf report powerpc: Fix crash if callchain is empty
   f33194bca6c3 perf test session topology: Fix test on s390
   6367516474c8 perf record: Support s390 random socket_id assignment
   2f9e98dbccf7 kconfig: fix line numbers for if-entries in menu tree
   5a64e0870cc1 typec: tcpm: Fix a msecs vs jiffies bug
   d341ce9a63dc NFC: pn533: Fix wrong GFP flag usage
   8a7ac5ee6856 usb: xhci: increase CRS timeout value
   13a049bebb76 usb: xhci: remove the code build warning
   b171162cbd94 ALSA: seq: Fix UBSAN warning at SNDRV_SEQ_IOCTL_QUERY_NEXT_CLIENT ioctl
   36bc1e1e69be ARM: dts: am437x: make edt-ft5x06 a wakeup source
   fc3b4e774cec brcmfmac: stop watchdog before detach and free everything
   dc68381f4919 iio: pressure: bmp280: fix relative humidity unit
   9265a4509509 cxgb4: when disabling dcb set txq dcb priority to 0
   04954b2dca34 batman-adv: Fix multicast TT issues with bogus ROAM flags
   44fed77fc7e4 batman-adv: Avoid storing non-TT-sync flags on singular entries too
   d50e1f18eace batman-adv: Fix bat_v best gw refcnt after netlink dump
   cc210a039ed1 batman-adv: Fix bat_ogm_iv best gw refcnt after netlink dump
   7634aad31a73 arm64: dts: msm8916: fix Coresight ETF graph connections
   4545cfb006b7 Smack: Mark inode instant in smack_task_to_inode
   f8e7a1bd752a ipv6: mcast: fix unsolicited report interval after receiving querys
   b580cead624b x86/microcode/intel: Fix memleak in save_microcode_patch()
   99654c9ffcea mtd: dataflash: Use ULL suffix for 64-bit constants
   a17ea7fb07ac selftests: bpf: notification about privilege required to run test_kmod.sh testing script
   c55300fcac1c locking/lockdep: Do not record IRQ state within lockdep code
   097a82cb1a71 drm/bridge/sii8620: fix display of packed pixel modes in MHL2
   7a21294b84fa KVM: arm/arm64: Drop resource size check for GICV window
   8fb20507bca0 sctp: fix erroneous inc of snmp SctpFragUsrMsgs
   363b8de31ac9 net: davinci_emac: match the mdio device against its compatible if possible
   9b0b625841d8 nbd: Add the nbd NBD_DISCONNECT_ON_CLOSE config flag.
   fbeb2ee3ecca ARC: Enable machine_desc->init_per_cpu for !CONFIG_SMP
   6d2b87505f7a block: sed-opal: Fix a couple off by one bugs
   955887c1fe90 nvmet: reset keep alive timer in controller enable
   62e4c9049e86 net: stmmac: socfpga: add additional ocp reset line for Stratix10
   e0eaae387284 net: propagate dev_get_valid_name return code
   7c828ea375a1 net: hamradio: use eth_broadcast_addr
   fb24c6df0f8e enic: initialize enic->rfs_h.lock in enic_probe
   9418ea8cf216 qed: Do not advertise DCBX_LLD_MANAGED capability.
   3b29b09a53ab qed: Add sanity check for SIMD fastpath handler.
   26c6ffff8eec qed: Fix possible memory leak in Rx error path handling.
   d22240dd6ab3 arm64: make secondary_start_kernel() notrace
   a929f067a88f arm64: dma-mapping: clear buffers allocated with FORCE_CONTIGUOUS flag
   2e62d135dd53 xen/scsiback: add error handling for xenbus_printf
   91e1bb748bcc scsi: xen-scsifront: add error handling for xenbus_printf
   586ae5694e37 pNFS: Always free the session slot on error in nfs4_layoutget_handle_exception
   395c67c1c02d xen: add error handling for xenbus_printf
   72bc7a2f77ba dwc2: gadget: Fix ISOC IN DDMA PID bitfield value calculation
   6958ade76b36 usb: gadget: dwc2: fix memory leak in gadget_init()
   66cae9b5a1d9 usb: gadget: composite: fix delayed_status race condition when set_interface
   a54f59199a81 usb: dwc2: fix isoc split in transfer with no data
   6a38c8a49a9f usb: dwc2: alloc dma aligned buffer for isoc split in
   7ccd2c1be366 libahci: Fix possible Spectre-v1 pmp indexing in ahci_led_store()
   ed4afe79ba5a IB/rxe: Fix missing completion for mem_reg work requests
   6bcd5cdf3a36 drm/arm/malidp: Preserve LAYER_FORMAT contents when setting format
   0a43cd3ea76a drm: mali-dp: Enable Global SE interrupts mask for DP500
   997a6b6b3017 drivers/perf: xgene_pmu: Fix IOB SLOW PMU parser error
   fec2c747ae39 arm64: dts: Stingray: Fix I2C controller interrupt type
   22dc4f2b8b46 arm64: dts: ns2: Fix PCIe controller interrupt type
   db0b1a4b0772 arm64: dts: ns2: Fix I2C controller interrupt type
   69347a9150c9 arm64: dts: specify 1.8V EMMC capabilities for bcm958742t
   31b16a0302be arm64: dts: specify 1.8V EMMC capabilities for bcm958742k
   eab85e8bd486 ARM: dts: Cygnus: Fix PCIe controller interrupt type
   6542fcfbd4c5 ARM: dts: Cygnus: Fix I2C controller interrupt type
   2d4ac6f1837b ARM: dts: BCM5301x: Fix i2c controller interrupt type
   d8ff67605d54 ARM: dts: NSP: Fix PCIe controllers interrupt types
   7ab23e15c7d2 ARM: dts: NSP: Fix i2c controller interrupt type
   0104d49dc06f selftests: sync: add config fragment for testing sync framework
   a626c95346e1 selftests: vm: return Kselftest Skip code for skipped tests
   3a9907ebf83b selftests: zram: return Kselftest Skip code for skipped tests
   41325fa657b9 selftests: user: return Kselftest Skip code for skipped tests
   d5f9d1d350bc selftests: sysctl: return Kselftest Skip code for skipped tests
   bc5e458a9ee2 selftests: static_keys: return Kselftest Skip code for skipped tests
   81810e45384b selftests: pstore: return Kselftest Skip code for skipped tests
   175b38277b6d netfilter: nf_ct_helper: Fix possible panic after nf_conntrack_helper_unregister
   69c471908ddd netfilter: ipv6: nf_defrag: reduce struct net memory waste
   dcf6f268deee ACPI / EC: Use ec_no_wakeup on Thinkpad X1 Carbon 6th
   987a7dab8308 usb: dwc3: of-simple: fix use-after-free on remove
   7b2dc4515f03 usb: dwc2: gadget: Fix issue in dwc2_gadget_start_isoc()
   3572fd055e69 usb: gadget: ffs: Fix BUG when userland exits with submitted AIO transfers
   48168383379f usb: dwc3: pci: add support for Intel IceLake
   bf3bb8b549da soc: imx: gpcv2: correct PGC offset
   4dff89e722d5 hwmon: (nct6775) Fix loop limit
   c0f29f9d8aa8 ARC: Explicitly add -mmedium-calls to CFLAGS
   c170373c7230 drm/bridge/sii8620: fix potential buffer overflow
   69004038f01c drm/bridge/sii8620: fix loops in EDID fetch logic
   da327a4b9d09 IB/mlx4: Fix an error handling path in 'mlx4_ib_rereg_user_mr()'
   048f62f3725d Input: synaptics-rmi4 - fix axis-swap behavior
   d4108ed2a57f perf tools: Fix error index for pmu event parser
   7dcffd98360a vfio: ccw: fix error return in vfio_ccw_sch_event
   67c0f84827e1 arm: dts: armada: Fix "#cooling-cells" property's name
   4aec7c283904 pty: fix O_CLOEXEC for TIOCGPTPEER
   96de65df1936 EDAC: Add missing MEM_LRDDR4 entry in edac_mem_types[]
   b518e870f1f6 drm/i915/kvmgt: Fix potential Spectre v1
   4bc32484df6a ext4: fix spectre gadget in ext4_mb_regular_allocator()
   c5f7d3c4daf1 Linux 4.14.66
   178742867e4f cls_matchall: fix tcf_unbind_filter missing
   2b2cdec98e03 isdn: Disable IIOCDBGVAR
   f276e2efb661 Bluetooth: avoid killing an already killed socket
   31e4f8ba0173 misc: sram: fix resource leaks in probe error path
   3620bc1ceb14 serial: 8250_dw: Add ACPI support for uart on Broadcom SoC
   f6790793d80d serial: 8250_dw: always set baud rate in dw8250_set_termios
   da93a03fdd0a serial: 8250_exar: Read INT0 from slave device, too
   71cc9159212b tty: serial: 8250: Revert NXP SC16C2552 workaround
   21be9327e00c ACPI / PM: save NVS memory for ASUS 1025C laptop
   60d93a4b6d32 USB: option: add support for DW5821e
   925bce3815d8 USB: serial: pl2303: add a new device id for ATEN
   d17b9ab7d954 USB: serial: sierra: fix potential deadlock at close
   33a3444a096a ALSA: vxpocket: Fix invalid endian conversions
   79018e171ae5 ALSA: memalloc: Don't exceed over the requested size
   fda20e719212 ALSA: hda: Correct Asrock B85M-ITX power_save blacklist entry
   6b4af40779cc ALSA: cs5535audio: Fix invalid endian conversion
   f4253b46437a ALSA: virmidi: Fix too long output trigger loop
   f13a825ae2c6 ALSA: vx222: Fix invalid endian conversions
   f7de68a8d6cd ALSA: hda - Turn CX8200 into D3 as well upon reboot
   7f4c155214ae ALSA: hda - Sleep for 10ms after entering D3 on Conexant codecs
   50670d158cfa net: aquantia: Fix IFF_ALLMULTI flag functionality
   b3fb93987232 ip6_tunnel: use the right value for ipv4 min mtu check in ip6_tnl_xmit
   59f9f2c76fe1 vhost: reset metadata cache when initializing new IOTLB
   e125b1cc673a net_sched: Fix missing res info when create new tc_index filter
   36e55fde4ccf vsock: split dwork to avoid reinitializations
   4396f5024b9e net_sched: fix NULL pointer dereference when delete tcindex filter
   222e05e0a29a llc: use refcount_inc_not_zero() for llc_sap_find()
   46be8e4471d7 l2tp: use sk_dst_check() to avoid race on sk->sk_dst_cache
   64d9b03d082a dccp: fix undefined behavior with 'cwnd' shift in ccid2_cwnd_restart()
   4cea13b66144 Linux 4.14.65
   3f2e4f5dd834 x86/speculation/l1tf: Exempt zeroed PTEs from inversion
   7251bd56d925 Linux 4.14.64
   21ed56ef827e x86/mm: Add TLB purge to free pmd/pte page interfaces
   a34806961be4 ioremap: Update pgtable free interfaces with addr
   6e2c702e797c Bluetooth: hidp: buffer overflow in hidp_process_report
   9efed51870be ASoC: Intel: cht_bsw_max98090_ti: Fix jack initialization
   643a9d6d4ff7 ASoC: msm8916-wcd-digital: fix RX2 MIX1 and RX3 MIX1
   1a2d99218d87 block, bfq: fix wrong init of saved start time for weight raising
   3f745fe61ac6 clk: sunxi-ng: Fix missing CLK_SET_RATE_PARENT in ccu-sun4i-a10.c
   c13fddcb9822 ASoC: rsnd: fix ADG flags
   de59521d508a fw_cfg: fix driver remove
   13f12749af15 sched/debug: Fix task state recording/printout
   e5f4bae2e3c8 ACPI / APEI: Remove ghes_ioremap_area
   7e179bffb681 crypto: skcipher - fix crash flushing dcache in error path
   0f2981ee03ff crypto: skcipher - fix aligning block size in skcipher_copy_iv()
   68432fd1665b crypto: ablkcipher - fix crash flushing dcache in error path
   2cde72d94f0a crypto: blkcipher - fix crash flushing dcache in error path
   e7aefb13e61c crypto: vmac - separate tfm and request context
   ef70d14553ed crypto: vmac - require a block cipher with 128-bit block size
   e73828389b1c crypto: x86/sha256-mb - fix digest copy in sha256_mb_mgr_get_comp_job_avx2()
   50123ab8c47d kbuild: verify that $DEPMOD is installed
   3d0170b8af8d x86/mm: Disable ioremap free page handling on x86-PAE
   7985292f97b4 x86: i8259: Add missing include file
   5f7a645432d6 x86/l1tf: Fix build error seen if CONFIG_KVM_INTEL is disabled

(From OE-Core rev: 304fa05177b638c6a591d2cd03d397beb8e1dc35)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-04 11:03:55 +01:00
Bruce Ashfield
673c7ffe92 linux-yocto/4.18: update to 4.18.5
Integrating the korg -stable release that comprises the following
commits:

   96158f3a9e70 Linux 4.18.5
   0d63520b5fb4 reiserfs: fix broken xattr handling (heap corruption, bad retval)
   7bc1a91a5abd i2c: imx: Fix race condition in dma read
   32d9b3638608 i2c: core: ACPI: Properly set status byte to 0 for multi-byte writes
   8c1bd0d0edf0 PCI: pciehp: Fix unprotected list iteration in IRQ handler
   2de0279ac99e PCI: pciehp: Fix use-after-free on unplug
   d2d937b78621 PCI: Skip MPS logic for Virtual Functions (VFs)
   16558e4db5dc PCI: aardvark: Size bridges before resources allocation
   dabfad3cae57 PCI: hotplug: Don't leak pci_slot on registration failure
   4d4306a283a1 PCI / ACPI / PM: Resume all bridges on suspend-to-RAM
   473af290c7fd PCI: Restore resized BAR state on resume
   96be7bbde431 parisc: Remove ordered stores from syscall.S
   e1d35a1a02c4 parisc: Remove unnecessary barriers from spinlock.h
   3df731e0ccfe drm/amdgpu/pm: Fix potential Spectre v1
   d8a1aecababa drm/i915/kvmgt: Fix potential Spectre v1
   5b6ea348768d ext4: fix spectre gadget in ext4_mb_regular_allocator()
   5bd4084f029d powerpc64s: Show ori31 availability in spectre_v1 sysfs file not v2
   c2d73c253885 x86/mm/init: Remove freed kernel image areas from alias mapping
   a01cdb47ffd1 x86/mm/init: Add helper for freeing kernel image pages
   22ddf85281c3 x86/mm/init: Pass unconverted symbol addresses to free_init_pages()
   0a57c747ae05 mm: Allow non-direct-map arguments to free_reserved_area()
   2114c7185168 pty: fix O_CLOEXEC for TIOCGPTPEER
   48cf4d45ce8f EDAC: Add missing MEM_LRDDR4 entry in edac_mem_types[]
   28b2837b7236 Linux 4.18.4
   b1246ef7cf01 cls_matchall: fix tcf_unbind_filter missing
   ffbc6163fca7 net: mvneta: fix mvneta_config_rss on armada 3700
   298f83fe1298 net: ethernet: mvneta: Fix napi structure mixup on armada 3700
   043b985f7c81 ip_vti: fix a null pointer deferrence when create vti fallback tunnel
   63d60df1773e r8169: don't use MSI-X on RTL8106e
   6f560142350c hv/netvsc: Fix NULL dereference at single queue mode fallback
   cd0fb1cb23a8 net: sock_diag: Fix spectre v1 gadget in __sock_diag_cmd()
   3909ccf1fe71 isdn: Disable IIOCDBGVAR
   2b9ffbf248fb Bluetooth: avoid killing an already killed socket
   a34e4f42055a Revert "uio: use request_threaded_irq instead"
   93e5f3d10e79 misc: sram: fix resource leaks in probe error path
   421483e0c444 uio: fix wrong return value from uio_mmap()
   1d5fb78f91ae serial: 8250_dw: Add ACPI support for uart on Broadcom SoC
   1964062d2945 serial: 8250_dw: always set baud rate in dw8250_set_termios
   73f85a14da62 serial: 8250_exar: Read INT0 from slave device, too
   47f7d1daf64b tty: serial: 8250: Revert NXP SC16C2552 workaround
   8d26e06a887e ACPI / PM: save NVS memory for ASUS 1025C laptop
   54d05edc6052 USB: option: add support for DW5821e
   fee0c36502c5 USB: serial: pl2303: add a new device id for ATEN
   0a4711920c0a USB: serial: sierra: fix potential deadlock at close
   28f807d781df media: gl861: fix probe of dvb_usb_gl861
   e078fab2a495 ALSA: seq: Fix poll() error return
   8efea5358093 ALSA: vxpocket: Fix invalid endian conversions
   efa72756f954 ALSA: memalloc: Don't exceed over the requested size
   29a168321517 ALSA: hda: Correct Asrock B85M-ITX power_save blacklist entry
   1c0888fb4b49 ALSA: dice: fix wrong copy to rx parameters for Alesis iO26
   eeb2943acc74 ALSA: cs5535audio: Fix invalid endian conversion
   fe4740d8be76 ALSA: virmidi: Fix too long output trigger loop
   bb150b4471ce ALSA: vx222: Fix invalid endian conversions
   f9a16dfcbd88 ALSA: hda - Turn CX8200 into D3 as well upon reboot
   79141c5015ab ALSA: hda - Sleep for 10ms after entering D3 on Conexant codecs
   72a579b814d9 r8169: don't use MSI-X on RTL8168g
   01002eb0a1c3 net_sched: Fix missing res info when create new tc_index filter
   8a1a056d12d3 net_sched: fix NULL pointer dereference when delete tcindex filter
   4ea1da6d1c60 l2tp: use sk_dst_check() to avoid race on sk->sk_dst_cache

(From OE-Core rev: 7de607cb0b5c08dbbd746ec78b096e5b85e693b1)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-04 11:03:55 +01:00
Bruce Ashfield
be6db68a5e qemuarm64: add compatibility with -rt
We have an rt BSP definition for preempt-rt and qemuarm, and it boots
with 4.18, so we add it to the compatible machines:

  qemuarm64 login: root
  root@qemuarm64:~# uname -a
  Linux qemuarm64 4.18.3-rt1-yocto-preempt-rt #1 SMP PREEMPT RT Tue Aug 28
  14:10:55 UTC 2018 aarch64 aarch64 aarch64 GNU/Linux

(From OE-Core rev: a99ff5415b587fdeb3212ba1c95c5c366a7c362b)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-04 11:03:55 +01:00
Bruce Ashfield
06b05601c2 linux-yocto/4.18: remove obselete bsp configuration options
Integrating the following commits to remove kernel config audit warnings:

  3ea2052ace1 common-pc: Drop the x2apic feature
  1fec700ec479 beaglebone: Clean up the cfg file
  1b97e53dcd11 beaglebone: Drop the needless unsetting of the kernel options
  c6c68c3622d0 beaglebone: Drop the obsolete kernel options
  552c9a3f3023 edgerouter: Drop the obsolete kernel options
  3a62e42dfb89 mpc8315e-rdb: Drop the obsolete kernel options

(From OE-Core rev: a06cc553d3f33f51272cd7c2f6860f41a06eb0e3)

Signed-off-by: Kevin Hao <kexin.hao@windriver.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-04 11:03:55 +01:00
Bruce Ashfield
2a498c6f3d linux-yocto/4.12: drop versioned recipes
While the 4.12 kernel will continue to get updates, that will happen
in maintenance branches. So we drop the 4.12 versioned recipes to make
it clear that 4.14 and 4.18 are the active kernels.

(From OE-Core rev: a528cf2a783b940f44d52cae4ec8c20c5763e624)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-04 11:03:55 +01:00
Bruce Ashfield
52575da23b linux-yocto: drop 4.15 versioned recipe
4.15 was part of the release as the 'newest' kernel. It is no longer
supported upstream, so there's no need to carry it into newer releases
since it will be replaced by 4.18.

(From OE-Core rev: a49f3d846594f7e81bc9389bd842c289109d2b72)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-04 11:03:55 +01:00
Bruce Ashfield
a9471601fe kernel-devsrc: fix arm/arm64 target module build
module.lds is required for arch/arm* to build modules out of tree, but
isn't required for scripts/prepare, so it was missed in the initial
devsrc rework:

root@qemuarm64:/tmp# make -C /usr/src/kernel M=/tmp modules
make: Entering directory '/lib/modules/4.18.3-yocto-standard/build'
  CC [M]  /tmp/hellomod.o
  Building modules, stage 2.
  MODPOST 1 modules
  CC      /tmp/hellomod.mod.o
  LD [M]  /tmp/hellomod.ko
make: Leaving directory '/lib/modules/4.18.3-yocto-standard/build'
root@qemuarm64:/tmp# insmod hellomod.ko
[  675.743628] hellomod: loading out-of-tree module taints kernel.
[  675.794959] Hello world!

(From OE-Core rev: a37979a19ee16dc1e01243175fce24683f6ced83)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-04 11:03:55 +01:00
Changqing Li
011ab977bd libjpeg-turbo: fix wrongly defined HAVE_STDLIB_H
After uprade to 2.0.0, build system change from
autotools to cmake, wrong usage of #cmakedefine
cause wrongly defined HAVE_STDLIB_H, which cause
some other package compile failed.

(From OE-Core rev: d1e09cb2521ccb9d02ced2d61abb4034cb04836d)

Signed-off-by: Changqing Li <changqing.li@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-04 11:03:55 +01:00
Andreas Müller
a6ea6216bd libsdl2: Fix left rotated display for RaspPi/VC4/GLES2
The patch should increase performance for libsdl2 on GLES2 too.

(From OE-Core rev: 52f9659f2bb44affec2f67935df01f13b6ff3e02)

Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-04 11:03:55 +01:00
Jagadeesh Krishnanjanappa
abe5813b4b libcgroup: CVE-2018-14348
Affects libcgroup <= 0.41

(From OE-Core rev: 37101fa37107c498393492ccdbc8652f685b6cce)

Signed-off-by: Jagadeesh Krishnanjanappa <jkrishnanjanappa@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-04 11:03:55 +01:00
Jagadeesh Krishnanjanappa
381f016dcc libarchive: CVE-2017-14501
iso9660: validate directory record length

Affects libarchive <= 3.3.2

(From OE-Core rev: dea4280623f945c06e8132c888988373e686318e)

Signed-off-by: Jagadeesh Krishnanjanappa <jkrishnanjanappa@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-04 11:03:55 +01:00
Khem Raj
1a2d37aa37 gpgme: Inherit distutils3-base
its building a module therefore its important to provide correct cross
build environment, distutils3-base automatically inherits python3native
this is seen when using clang where it tried to link with gcc since the
environment falls back to builtin LDSHARED variable

(From OE-Core rev: 8bfb54edc6fafda2301aece91ec6b55905e2a418)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-04 11:03:55 +01:00
Khem Raj
246a987eb5 musl: Update to latest
Important regression fixes for mips and pthreads

https://git.musl-libc.org/cgit/musl/log/?qt=range&q=1ad8138819ced49851e618c9c063aa0ffc86718c..767f7a1091af3a3dcee2f7a49d0713359a81961c

(From OE-Core rev: 51ae57dc1cc6bc6aaebc62b5d087a51de35962f7)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-04 11:03:55 +01:00
Khem Raj
4ec1eede9f systemd: Fix qsort_r patch for function return mismatch
clang is fussy and complains that a valueless return is used from  a
function which should return a value

(From OE-Core rev: 301d9801a43b2173c83a2296553abd53f152a145)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-04 11:03:55 +01:00
Khem Raj
7a812523a7 distutils-common-base.bbclass: Define commonly used compiler variables
This is inspired from
https://github.com/python/cpython/blob/master/configure.ac

Helps cross compiling python C modules in some cases where they do
not respect normal CFLAGS

Errors like using gcc to link when compiler is clang is fixed

(From OE-Core rev: 0ab1b35172a41021f5e27c5d17d1e131ce5befd7)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-04 11:03:55 +01:00
Hongxu Jia
03b6f92245 security_flags.inc: add var-SECURITY_STACK_PROTECTOR to improve variable OVERRIDES
There are var-SECURITY_PIE_CFLAGS, var-lcl_maybe_fortify and
var-SECURITY_STRINGFORMAT which are helpful for OVERRIDES.

Also add var-SECURITY_STACK_PROTECTOR, and drop hardcoded `_remove'
overrides. Such as `4ca946c security_flags: use -fstack-protector-strong',
it s/-fstack-protector-all/-fstack-protector-strong/, only tweak
var-SECURITY_STACK_PROTECTOR is sufficient.

The fix does not have any side affect on SECURITY_CFLAGS of glibc/
glibc-initial/gcc-runtime, these three directly assigned with "".
...
SECURITY_CFLAGS_pn-glibc = ""
SECURITY_CFLAGS_pn-glibc-initial = ""
SECURITY_CFLAGS_pn-gcc-runtime = ""
...

(From OE-Core rev: 0ed4a6233bdcb25cbdce698504611541420d92d0)

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-04 11:03:55 +01:00
Hongxu Jia
30f54f14dd security_flags.inc: use `?=' to set a default var-lcl_maybe_fortify
- Since poky enable security flags+pie by default, tweak comments
to sync with it.
[poky commit]
491082c poky.conf: Enable security flags+pie by default
29d76b3 poky-lsb: Remove including security_flags.inc
[poky commit]

- Use `?=' to set a default lcl_maybe_fortify, it is helpful for
variable OVERRIDES.

(From OE-Core rev: 38c410bb7d1688cd952da9f19269c2a65a92ab45)

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-04 11:03:55 +01:00
Robert Yang
7f10f6a57a elfutils: Fix prelink libqb error on mips and mips64
The previous patch
0001-libelf-elf_end.c-check-data_list.data.d.d_buf-before.patch
fixed segmentation fault error on other arches except mips and mips64, now
update it to fix mips and mips64 too, also submitted to upstream.

(From OE-Core rev: 8e280aff908b980d641c762946f691a6d376b87b)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-04 11:03:55 +01:00
Yeoh Ee Peng
5ebf30be9d oeqa/runtime/dnf: Make sure test_dnf_install does not skipped
During debugging dnf issue, we found that the test_dnf_install
PASSED the testing even though the environment does not allow
dnf install to run successfully. Further debugging had identified
that current test_dnf_install will execute dnf install even when
the package to be installed already exist, thus dnf install
will just skipped and this test will PASSED even though it was
not.

To solve this, added additional logic to check if the package
to be installed already exist, if yes then remove the package
before actually run dnf install. This will make sure dnf install
was tested as expected.

(From OE-Core rev: 4f662b253f7313c4e02bfafb527cdac076b6309a)

Signed-off-by: Yeoh Ee Peng <ee.peng.yeoh@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-04 11:03:55 +01:00
Chen Qi
227cc78b3f oeqa/sdk: fixes related to hasPackage semantics
The current _hasPackage does a regex match when checking for the
existence of packages. This will sometimes result in unexpected
result. For example, the condition hasTargetPackage('gcc') is likely
to be always true as it matches libgcc1.

For most of the time, we should do exact match instead of regex match.
So change _hasPackage function to do that. For the current sdk test
cases, the only place that needs regex match is '^gcc-'. This is because
there's no easy way to get multilib tune arch (e.g. i686) from testdata.json
file.

Besides, packagegroup-cross-canadian-xxx and gcc-xxx should be check in
host manifest instead of the target one. So fix to use hasHostPackage.

Also, as we are doing exact match, there's no need to use r'gtk\+3',
just 'gtk+3' is enough.

(From OE-Core rev: 595e9922cdbacf84cf35cc83f0d03cace042e302)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-04 11:03:55 +01:00
Chen Qi
20cba32f2d sdk/buldgalculator.py: check against multilib for gtk+3
When determining whether to skip the test case, the check should be
done with consideration of multilib. Otherwise, we will meet the
following error when testing against lib32 environment.

  No package 'gtk+-3.0' found

(From OE-Core rev: ce82ee46f4a7beb5663238b276e779e5c9657777)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-04 11:03:55 +01:00
Chen Qi
a7e6de1716 sdk/context.py: add ability to check for multilib version of target package
Add a named argument 'multilib' for the hasTargetPackage function. Its default
value is False. When setting to True, it will try to get the correct multilib
prefix from the sdk_env, the environment setup script.

We need this because we don't want unexpected run of some sdk test cases.
The following steps will generate error.

1. Enable multilib for qemux86-64
   require conf/multilib.conf
   MULTILIBS ?= "multilib:lib32"
   DEFAULTTUNE_virtclass-multilib-lib32 ?= "core2-32"
2. bitbake core-image-sato -c populate_sdk
3. bitbake core-image-sato -c testsdk

The error message is like below.

  No package 'gtk+-3.0' found
  RESULTS - buildgalculator.GalculatorTest.test_galculator - Testcase -1: FAILED

As we don't have lib32-gtk+3 installed, the test case should be skipped when
testing against the lib32 environment setup script.

(From OE-Core rev: 163764ad4760a5fabf65640df5f968be98ad13d2)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-04 11:03:55 +01:00
Alexander Kanavin
5e3a07180b lib/oe/package_manager: turn postinst failure warnings into bitbake failures
Sumo release provides a transition period so that deferrals to first boot
via 'exit 1' can be converted to pkg_postinst_ontarget(). For the next release
however, postinst script failures should be treated as such.

[YOCTO #12607]

(From OE-Core rev: 42acb0ebde4e88bcdf34a541b700f19d8607abb0)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-04 11:03:55 +01:00
Richard Purdie
4434777705 bitbake: tests/fetch: Update gnome.org urls after upstream changes
(Bitbake rev: 43ff74d675baed13fc17e1d12c0e013b16ba249b)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-29 10:43:23 +01:00
Hongxu Jia
c0d181dc93 ruby: improve reproducibility
Find out rbconfig.rb and created.rid from ${B}/.installed.list
and remove build host directories

- For rbconfig.rb, parse it like python's _sysconfigdata.py
[snip rbconfig.rb]
 26   CONFIG["INSTALL"] = 'install -c'
[snip rbconfig.rb]

- For created.rid, it records file created time, just strip ${WORKDIR} prefix.
[snip created.rid]
840 /ruby-2.5.1/doc/maintainers.rdoc        Fri, 22 Dec 2017 23:08:05 +0000
[snip created.rid]

(From OE-Core rev: 853e0499be449c71378c087e08b1926be8e2ac87)

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-29 10:42:51 +01:00
Hongxu Jia
ea2f74e9a7 bind: improve reproducibility
- Tweak var-DST_OPENSSL_LIBS assignment in configure.in, it is
  helpful to fix build path issue in isc-config.sh

- `named/lwresd -V' and start log hide build options which expose
  build path directories.

(From OE-Core rev: 037d741c94dd7f8518b3499ee0beb91a343ffa6a)

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-29 10:42:48 +01:00
Hongxu Jia
7eb2ead27a nss :improve reproducibility
- Explicitly requests the newer database `sql:' rather than
  retrieved from NSS_DEFAULT_DB_TYPE

- Removes build path prefix from pkcs11.txt

Refers certutil manual:
[certutil manual]
-d [prefix]directory
 Specify the database directory containing the certificate and key database files.
 certutil supports two types of databases: the legacy security databases (cert8.db,
  key3.db, and secmod.db) and new SQLite databases (cert9.db, key4.db, and pkcs11.txt).

 NSS recognizes the following prefixes:
  sql: requests the newer database
  dbm: requests the legacy database
 If no prefix is specified the default type is retrieved from NSS_DEFAULT_DB_TYPE.
 If NSS_DEFAULT_DB_TYPE is not set then dbm: is the default.
[certutil manual]

(From OE-Core rev: e9b99efe4b5cf7e810156f7bb55736e01be36a45)

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-29 10:42:48 +01:00
Tanu Kaskinen
855e73c613 pulseaudio: 11.1 -> 12.2
Release notes for 12.0:
https://www.freedesktop.org/wiki/Software/PulseAudio/Notes/12.0/

12.1 contains a few regression fixes:
https://lists.freedesktop.org/archives/pulseaudio-discuss/2018-July/030259.html

12.2 is just a fixup for the configure script brokenness in the 12.1 tarball.

qpaeq changed license from AGPL to LGPL, so now there's no AGPL licensed
code any more. This removes the excuse to not enable fftw support (i.e.
module-equalizer-sink and qpaeq). I'll enable fftw in a separate patch.

There's a new gsettings module that should be enabled, but I'll do
that in a separate patch. It's not particularly important, because the
module is only used by the paprefs GUI application that doesn't seem to
be packaged for OE at the moment.

Removed upstreamed patches:
0001-padsp-Make-it-compile-on-musl.patch
0001-memfd-wrappers-only-define-memfd_create-if-not-alrea.patch

License-Update: qpaeq changed license from AGPL to LGPL:
61217528a1

(From OE-Core rev: 9bc3a8ec4a007fe75dc8f44faf6357517b1fb020)

Signed-off-by: Tanu Kaskinen <tanuk@iki.fi>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-29 10:42:48 +01:00
Changqing Li
a53b5dc5eb libid3tag: patch for CVE-2004-2779
(From OE-Core rev: e2bec1f7e05ec014bd887440521da7e1a13555be)

Signed-off-by: Changqing Li <changqing.li@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-29 10:42:48 +01:00
Changqing Li
c274e1c8d8 libjpeg-turbo: Upgrade 1.5.3 -> 2.0.0
License-Update: Copyright Year Update

1. Upgrade from 1.5.3 -> 2.0.0, change from autools to cmake
2. Add a patch for fix package qa error
3. remove --with-build-date since 2.0.0 not support config build date

(From OE-Core rev: 83f206d68e9ae9ed21398f5cfde6f911065fbce6)

Signed-off-by: Changqing Li <changqing.li@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-29 10:42:48 +01:00
Alexandru Vasiu
0dc9785c08 isoimage-isohybrid: Fix variable names
initrd.cpio is created in initrd_dir, not in cr_workdir. Gzip will
let initrd.cpio uncompressed if the path is not found.

Also, grub_image variable doesn't exist, grub_src_image should
be used instead.

(From OE-Core rev: c88875b568a66297b1d3df380c590f20796c57f6)

Signed-off-by: Alexandru Vasiu <alexandru.vasiu@ni.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-29 10:42:48 +01:00
Alexandru Vasiu
87943f2fe0 isoimage-isohybrid: Fix creating initrd.cpio
Only bsdcpio works with numbers for option -R to specify user:group,
while GNU cpio doesn't. Debian use GNU cpio so without this change,
you cannot create ISO images without installing bsdcpio.

(From OE-Core rev: 7c6ba368006ca94ecc0daac7b1c5e0fbe4236daf)

Signed-off-by: Alexandru Vasiu <alexandru.vasiu@ni.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-29 10:42:48 +01:00
Changqing Li
bd369f288d libcroco: patch for CVE-2017-7960
(From OE-Core rev: 2539d7334cbe9693ebe68d33c7a97872a1645510)

Signed-off-by: Changqing Li <changqing.li@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-29 10:42:48 +01:00
Changqing Li
1e1b1ab769 squashfs-tools: patch for CVE-2015-4645(4646)
(From OE-Core rev: 8aa8bc77ef311b1c9dffcd2e2c0da610697b89fd)

Signed-off-by: Changqing Li <changqing.li@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-29 10:42:48 +01:00
Changqing Li
3f0c92bae0 libexif: patch for CVE-2017-7544
(From OE-Core rev: b25f5e8efbe723520fa6e6311767c35e4cb71859)

Signed-off-by: Changqing Li <changqing.li@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-29 10:42:48 +01:00
Alexander Kanavin
ff9f07b8a4 kmod: do not reset $bindir/sbindir, use EXTRA_OECONF instead
This was causing issues with classes that use $bindir to find
already installed binaries in rootfs (manpages class in particular).

$bindir needs to be the same for all recipes.

(From OE-Core rev: 3d92bce5a8e021c03e509e8ee6ead064e97bfcec)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-29 10:42:48 +01:00
He Zhe
045b3c2cd3 ltp: Remove unnecessary check from creat08 and open10
Issue: LIN1018-1797

At the point of the following failure, the file being checked, setgid,
is owned by "nobody" in the "nogroup" and tries to inherit SGID from
its parent directory who is in group of "bin". This is forbidden since
Linux kernel v4.18-rc4, unless current process is given CAP_FSETID
beforehand. See "Fix up non-directory creation in SGID directories" in
the kernel. The check in Block3 succeeds since it becomes root again
then.

creat08 3 TFAIL : creat08.c:368: testdir.B.1026/setgid: Incorrect modes, setgid bit should be set
creat08 4 TFAIL : creat08.c:376: Test failed in block2.

open10 3 TFAIL : open10.c:352: open10.testdir.B.1045/setgid: Incorrect modes, setgid bit not set
open10 4 TFAIL : open10.c:359: Test failed in block2.
open10 6 TFAIL : open10.c:443: Test failed because of above failures.

Backport a patch from upstream.

(From OE-Core rev: 5f3ab95b0ed964e08c65ae3159606f27485dbec7)

Signed-off-by: He Zhe <zhe.he@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-29 10:42:48 +01:00
Paulo Neves
a8368651ff bitbake: fetcher: Fixed remote removal not throwing exception.
Before this fix it is assumed that the removal of the
remote can only fail because there is not remote to remove. This
is a false assumption. Example error which would be ignored:

git -c core.fsyncobjectfiles=0 remote rm origin failed with exit code 1, output:
Note: A branch outside the refs/remotes/ hierarchy was not removed;
to delete it, use:
  git branch -d master
error: could not lock config file config
error: Could not remove config section 'remote.origin'

Due to the masking of this error a stranger error will be
presented to the user, because this time we do not mask the
exception:

git -c core.fsyncobjectfiles=0 remote add --mirror=fetch origin https://github.com/ptsneves/tl-wn722.git failed with exit code 128, output:
fatal: remote origin already exists.

The most likely reason that the remote cannot be removed nor
modified is that the DL_DIR/git2 does not have permissions
compatible with the user running bitbake.

This commit fixes:
https://bugzilla.yoctoproject.org/show_bug.cgi?id=12728

(Bitbake rev: 9c86c582a10c9b23abad7d34b6cbf12f7086294d)

Signed-off-by: Paulo Neves <ptsneves@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-28 10:32:08 +01:00
David Reyna
4c41fc3f6e bitbake: toaster: enable project import and merged Toaster settings
Enable the ability to select an existing build directory into Toaster.
This  opens to the user the backend features of 12823, for command line
user compatibility.

Enable the ability to select saving Toaster settings in the regular
"bblayers.conf" and "local.conf" instead of the default
"toaster_bblayers.conf" and "toaster.conf". This opens to the user the
backend features of 12821, for command line user compatibility.

[YOCTO #12902]

(Bitbake rev: 8ce51fbd92ab42365a38e0c1c260bb4979377a89)

Signed-off-by: David Reyna <David.Reyna@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-28 10:32:08 +01:00
Awais Belal
1035d9decb bitbake: toaster/layerdetails.js: don't hide local layer info
The local layer info (provided through custom fixtures) should
not be hidden. It is better to handle it in the same manner
as an imported layer, otherwise the layer path and dependency
info is not shown. The layer editing fields are handled in the
html side of things appropriately so this does not harm that
implementation.

[YOCTO #12891]

(Bitbake rev: aa79967920b2617ce007f66c89f3343f1a7f34b4)

Signed-off-by: Awais Belal <awais_belal@mentor.com>
Signed-off-by: David Reyna <David.Reyna@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-28 10:32:08 +01:00
Awais Belal
876450442b bitbake: toaster/models.py: allow local paths for custom recipe's base
In a case where the layer source is local only and the recipe
is not yet built, we can search for the path with layer's
local_source_dir, and if available that should be used rather
than just skipping the scenario.

[YOCTO #12891]

(Bitbake rev: 59f3e04122fca43835603779ac2d201464fbaebf)

Signed-off-by: Awais Belal <awais_belal@mentor.com>
Signed-off-by: David Reyna <David.Reyna@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-28 10:32:08 +01:00
Awais Belal
3b7ec34371 bitbake: toaster/checksettings: allow CUSTOM_XML_ONLY setting through env
This change allows the CUSTOM_XML_ONLY toaster setting to be
provided through the environment so the user can do this without
mingling with the settings.xml, for scenarios where modifying
settings.xml is not achievable.

[YOCTO #12891]

(Bitbake rev: 55333f1c3ded1c53120e6cb32b440cc707521e2b)

Signed-off-by: Awais Belal <awais_belal@mentor.com>
Signed-off-by: David Reyna <David.Reyna@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-28 10:32:08 +01:00
Awais Belal
bc344a4285 bitbake: toastergui/newproject.html: fix release divs
The release drop down divs are not being closed
appropriately, which showed adverse reactions on
the UI that aligned the "Create project" button
with the left edge of the screen without any
margins. This fixes these divs which in turn
aligns the button appropriately.

[YOCTO #12891]

(Bitbake rev: a6e20bddddd083fbecb5ed8d5f4824da640fdd44)

Signed-off-by: Awais Belal <awais_belal@mentor.com>
Signed-off-by: David Reyna <David.Reyna@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-28 10:32:08 +01:00
Awais Belal
215c187712 bitbake: toaster/widgets.py: avoid divide by zero issues
There can be cases where the variables being used
to divide in build percentage expressions can be
zero. For example, a setup consisting of only local
repos will have repos_to_clone=0 and will generate
a divide by zero scenario.
Fix this by checking the divisor in such cases.

[YOCTO #12891]

(Bitbake rev: 679c70aa32d23e9247f8a68efcb579ad733af84b)

Signed-off-by: Awais Belal <awais_belal@mentor.com>
Signed-off-by: David Reyna <David.Reyna@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-28 10:32:08 +01:00
Awais Belal
525efc3a02 bitbake: toaster: allow TOASTER_DIR to be overridden from cmdline
TOASTER_DIR is used for higher level toaster artifacts
such the SQL DB and creating toaster internal build
directories for projects. Prior to this change it was
evaluated as `dirname $BUILDDIR` and user had no control
over it. This change allows to override this variable
from the command line for more flexibility. The variable
defaults to its original setting if the optional argument
is not passed.

[YOCTO #12891]

(Bitbake rev: e073775d3b6980fc8004ae28a3ccc3c5bbf50fb2)

Signed-off-by: Awais Belal <awais_belal@mentor.com>
Signed-off-by: David Reyna <David.Reyna@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-28 10:32:08 +01:00
Awais Belal
af52215712 bitbake: toaster: use a more flexible way to find bitbake
The current mechanism for finding the bitbake binary
assumes a directory structure which is identical to
poky, where oe-core's meta and bitbake directories are
at the same level. There can be a case where bitbake
is used from elsewhere and in such cases the above
mentioned assumption fails to hold, whereas this is
totally allowed by the oe-init-build-env script which
can take bitbakedir as an argument.
The better approach is to allow bitbake to be derived
from PATH, while keeping the older mechanism in place so
it can be removed after tests are done in various
environments. This makes more sense as toaster has
also been launched from the same bitbake instance
that is the one in PATH.

[YOCTO #12891]

(Bitbake rev: 365d8d94ae3e4e0f95e0806dbcb7c77c20a55d2d)

Signed-off-by: Awais Belal <awais_belal@mentor.com>
Signed-off-by: David Reyna <David.Reyna@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-28 10:32:08 +01:00
Awais Belal
95e37ba260 bitbake: toaster: allow pokydirname to be evaluated when all layers are local
Toaster depends on pokydirname for identifying the location of
the oe-init-build-env script (and there might be other purposes
in the future). The problem with current approach is that it
only checks/sets the variable with git based repos, whereas
toaster provides mechanisms to allow having layers that are all
locally available. The evaluation of the variable fails in such
scenarios, so use a more flexible mechanism in this case and
try to locate poky in the local layers as well, if not already
set.

[YOCTO #12891]

(Bitbake rev: 6c3c196b28603591371ec7e62871fbb4296f2c71)

Signed-off-by: Awais Belal <awais.belal@mentor.com>
Signed-off-by: David Reyna <David.Reyna@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-28 10:32:08 +01:00
Kevin Hao
fd1da1ac6e meta-yocto-bsp: Bump the kernel to v4.18
Bump the kernel to v4.18 for all the boards in meta-yocto-bsp layer.

(From meta-yocto rev: 1e672581cc3fc695570f1ae9f951efbe4b05733a)

Signed-off-by: Kevin Hao <kexin.hao@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-28 10:31:13 +01:00
Scott Rifenbark
ed84cafb03 dev-manual: Updates to "Cloning and Checking Out Branches"
Provided clearer text.

(From yocto-docs rev: 16b793389b359ee08b632d77c1d0abad4796543a)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-28 10:30:43 +01:00
Scott Rifenbark
5c1c122563 dev-manual: Updates to "Accessing Nightly Builds"
Re-wrote section to provide more accurate step-by-step
instructions.

(From yocto-docs rev: dd1b5918d32b6272100fb59562de37f9a191e7ab)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-28 10:30:43 +01:00
Scott Rifenbark
1331cc8c8a dev-manual: Fixed typo closing parenthisis.
(From yocto-docs rev: d78dddd9c81c6c182a14ab5fb15b5c80caf2bf86)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-28 10:30:43 +01:00
Scott Rifenbark
a512748684 dev-manual: Updated general multiconfig syntax.
A task or package can only depend on a task... not a task
or package.

(From yocto-docs rev: 63f14e131ebf2bb8379a07f8958bf69a06af1124)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-28 10:30:43 +01:00
Scott Rifenbark
accd9e7b62 dev-manual: Updates to section on multiconfig builds
* Added qualifying text indicating that you can build images or
packages.  In other words, the multiconfig does not necessarily
have to be an image.  It can be a package as well.

* Added qualifying text describing that it is not a requirement
to have separate TMPDIRs for each multiconfig.  I used a build
for two multiconfigs of "qemux86" for different DISTROs as
a case.

(From yocto-docs rev: 6e5ed0d1ab305c3382fea55fc1a2deaac0b7d518)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-28 10:30:43 +01:00
Scott Rifenbark
2d3a811338 dev-manual: Updates to "Locating Yocto Project Source Files"
Some edits for clarity and fixes to the procedures regarding
the DOWNLOADS page.

(From yocto-docs rev: 98ee61f7797c9352a1eff060b98a3e2e74a1da6f)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-28 10:30:43 +01:00
Scott Rifenbark
f08a41e9ef dev-manual, Makefile: Created new section on multi-config build deps
Rewrote the section on setting up and executing multi-config builds.
Broke the section into two sub-sections.  One is for the standard
information that was there for setting up a multi-config build. A
new section was for the cross-build dependencies in multi-config
builds.

Part of the re-write included creating a new figure that shows
the configuration file hierarchy needed for these types of builds.
So, new figure added to both the dev-manual and the mega-manual
figures directories.

Finally, the Makefile needed updated to account for the new figures.

(From yocto-docs rev: dc158e97c216aa6e7fa3755164409d581f8569c5)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-28 10:30:43 +01:00
Scott Rifenbark
48b17b2bfe dev-manual, ref-manual: Changed section heading for multiconfig builds
Changed the section heading in the dev-manual for building images for
multiple targets useing multiple configurations.  This wording is
more accurate.  I updated the link from the BBMULTI_CONFIG variable
description as well.

(From yocto-docs rev: 3b2f95c3c54bed7ab8b4673ba7a254d31bea811b)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-28 10:30:43 +01:00
Jens Rehsack
97885b2973 cpan.bbclass: make RPATH fix more general
Extract a general version of RPATH fix for libxml-parser-perl_2.44.bb
from
  292471701 libxml-parser-perl: fix "...contains bad RPATH"
into cpan.bbclass to catch most errors reported by Khem Raj via
  http://errors.yoctoproject.org/Errors/Build/66538/

Genrally, Perl 5 toolchain deals with cross-compile sysroots
as if a dependency is installed at an exostic place on a server.
This issue needs to be addressed wider into the community.

(From OE-Core rev: a5439ff9627d309f6980947f5ee573d85e672228)

Signed-off-by: Jens Rehsack <sno@netbsd.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-28 10:30:28 +01:00
Hongxu Jia
1c048479af selftest/package: Add package separated debug symbols hardlink test
Tweak recipe selftest-hardlink
- addition of libexecdir to simulate multiple directories
- add gdb.sh to run gdb from script which is invoked at test time.
- rename `hello' -> `hello1' to workaround name confliction with the one in lmbench

Add test_gdb_hardlink_debug to selftest/package
- run a qemu and invoke gdb.sh to gdb binaries of selftest-hardlink
- check gdb to read symbols from separated debug hardlink file
- check debug symbols works correctly

[Test without commit `package.bbclass: only one hardlink of separated debug info file in each directory']
2018-08-26 01:27:30,195 - oe-selftest - INFO - test_gdb_hardlink_debug (package.PackageTests)
2018-08-26 01:30:29,005 - oe-selftest - INFO - gdbtest /usr/bin/hello1
2018-08-26 01:30:36,539 - oe-selftest - INFO - gdbtest /usr/bin/hello2
2018-08-26 01:30:43,568 - oe-selftest - INFO - gdbtest /usr/libexec/hello3
2018-08-26 01:30:50,157 - oe-selftest - ERROR - No debugging symbols found. GDB result:
Reading symbols from /usr/libexec/hello3...(no debugging symbols found)...done.^M
(gdb) Function "main" not defined.^M
Make breakpoint pending on future shared library load? (y or [n]) [answered N; input not from terminal]^M
(gdb) Starting program: /usr/libexec/hello3 ^M
Hello World!^M
[Inferior 1 (process 320) exited normally]^M
(gdb) The program is not being run.^M
(gdb)
2018-08-26 01:30:51,180 - oe-selftest - INFO -  ... FAIL
2018-08-26 01:30:51,181 - oe-selftest - INFO - Traceback (most recent call last):
  File "oe-core/meta/lib/oeqa/selftest/cases/package.py", line 148, in test_gdb_hardlink_debug
    self.fail('GDB %s failed' % binary)
AssertionError: GDB /usr/libexec/hello3 failed
[Test without commit `package.bbclass: only one hardlink of separated debug info file in each directory']

[Test with commit `package.bbclass: only one hardlink of separated debug info file in each directory']
2018-08-26 12:40:30,976 - oe-selftest - INFO - test_gdb_hardlink_debug (package.PackageTests)
2018-08-26 12:42:15,149 - oe-selftest - INFO - gdbtest /usr/bin/hello1
2018-08-26 12:42:24,064 - oe-selftest - INFO - gdbtest /usr/bin/hello2
2018-08-26 12:42:31,078 - oe-selftest - INFO - gdbtest /usr/libexec/hello3
2018-08-26 12:42:38,646 - oe-selftest - INFO - gdbtest /usr/libexec/hello4
2018-08-26 12:42:46,824 - oe-selftest - INFO -  ... ok
[Test with commit `package.bbclass: only one hardlink of separated debug info file in each directory']

(From OE-Core rev: 104d07e57488f4a414fb5e1f60d0c8b0c02d6b4d)

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-28 10:30:28 +01:00
Bruce Ashfield
ec71111c9c qemu/bsp: update 4.15 preferred versions to 4.18
4.18 is replacing 4.15 as the latest kernel in the upcoming
release, so we update our preferred versions to match.

(From OE-Core rev: e12f9e7ede7eea408d6a97233c7c8df97e8bfb26)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-28 10:30:28 +01:00
Bruce Ashfield
8a8382ecce libc-headers: update to 4.18
Updating to the 4.18 headers to match the newest kernel that will
be part of the release.

4.18 brings a requirement on bison-native to the libc-headers, since
it is required as part of the configuration steps.

We also tweak the license md5sum, since the kernel now includes SPDX
headers in the license file and that changes our sum.

(From OE-Core rev: c36a5e21b711cd577a2186a5267d46bb4323acc1)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-28 10:30:28 +01:00
Bruce Ashfield
74b2b627ba linux-yocto: introduce 4.18 recipes
Introducing the 4.18 kernel as the 'newest' kernel for the oe core
release.

This update includes tweaked configs, carried forward BSPs, features
(aufs, yaffs2, preempt-rt) and has been tested on all arches for boot
and performance sanity.

(From OE-Core rev: e08069b6855ba8cc3ef3c6e704f08f9259d77330)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-28 10:30:28 +01:00
Bruce Ashfield
43344a13af lttng: uprev to 2.10.7
Uprev'ing lttng to 2.10.7 to support 4.18+ kernels.

(From OE-Core rev: f63965c0f9fcb49f19a9c9fdf092c23bf6b85c10)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-28 10:30:28 +01:00
Bruce Ashfield
334861f67b linux-yocto: add selftest and security configuration blocks
Adding two new configuration blocks/features to the 4.14+ kernel
variants.

One is for enabling selftest options, and the other is a collection
of kernel security/hardening configs.

(From OE-Core rev: 8a0c315d21bb6783b55ecc73ec48274da0ceff43)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-28 10:30:28 +01:00
Bruce Ashfield
9145de064e linux-yocto/4.14: update to v4.14.62
Integratign the korg -stable updates that comprise the following
commits:

   1aa1166eface Linux 4.14.62
   7d29fb53439c jfs: Fix inconsistency between memory allocation and ea_buf->max_size
   59f35b983e8a xfs: don't call xfs_da_shrink_inode with NULL bp
   6f021e4ef39a xfs: validate cached inodes are free when allocated
   27c41b170183 xfs: catch inode allocation state mismatch corruption
   a34399927da1 intel_idle: Graceful probe failure when MWAIT is disabled
   d626ac9669f2 nvmet-fc: fix target sgl list on large transfers
   4af9c61ad953 nvme-pci: Fix queue double allocations
   12c058df8272 nvme-pci: allocate device queues storage space at probe
   0ea7fcfc7fe6 Btrfs: fix file data corruption after cloning a range and fsync
   ea464580fef7 i2c: imx: Fix reinit_completion() use
   60baabc37bc1 ring_buffer: tracing: Inherit the tracing setting to next ring buffer
   ff28e5cc58c2 ACPI / PCI: Bail early in acpi_pci_add_bus() if there is no ACPI handle
   dd69abaccbf7 ext4: fix false negatives *and* false positives in ext4_check_descriptors()
   09901e570c9e netlink: Don't shift on 64 for ngroups
   2d898915ccf4 nohz: Fix missing tick reprogram when interrupting an inline softirq
   e5bcbedadfd9 nohz: Fix local_timer_softirq_pending()
   a6d9dacf4e44 genirq: Make force irq threading setup more robust
   a96feef5b071 scsi: qla2xxx: Return error when TMF returns
   f70766f1338d scsi: qla2xxx: Fix ISP recovery on unload
   01cda405c88b scsi: qla2xxx: Fix NPIV deletion by calling wait_for_sess_deletion
   43d7c954b22e scsi: qla2xxx: Fix unintialized List head crash
   2ae6c0413b47 Linux 4.14.61
   b4653a3ea3d7 scsi: sg: fix minor memory leak in error path
   1a08888316d2 drm/vc4: Reset ->{x, y}_scaling[1] when dealing with uniplanar formats
   51ef850c78bb crypto: padlock-aes - Fix Nano workaround data corruption
   65be9cbe1224 RDMA/uverbs: Expand primary and alt AV port checks
   4aa0acf29064 iwlwifi: add more card IDs for 9000 series
   0eba9f5d3d48 userfaultfd: remove uffd flags from vma->vm_flags if UFFD_EVENT_FORK fails
   a1b5bcffe4a4 audit: fix potential null dereference 'context->module.name'
   e5a16c6a6707 kvm: x86: vmx: fix vpid leak
   c1a29c2d00c6 x86/entry/64: Remove %ebx handling from error_entry/exit
   7cf6b325f554 x86/apic: Future-proof the TSC_DEADLINE quirk for SKX
   34a938cd3ad4 virtio_balloon: fix another race between migration and ballooning
   45c8178cf69e net: socket: fix potential spectre v1 gadget in socketcall
   c8159f9a1ae9 can: ems_usb: Fix memory leak on ems_usb_disconnect()
   e7de67165efe squashfs: more metadata hardenings
   953f918d548b squashfs: more metadata hardening
   a766ccbf1d29 net/mlx5e: E-Switch, Initialize eswitch only if eswitch manager
   e0638b6a054c rxrpc: Fix user call ID check in rxrpc_service_prealloc_one
   83a46456c983 net: stmmac: Fix WoL for PCI-based setups
   1828cb3d10d9 netlink: Fix spectre v1 gadget in netlink_create()
   bcbdea137159 net: dsa: Do not suspend/resume closed slave_dev
   8721f3608945 ipv4: frags: handle possible skb truesize change
   fc63057d5fda inet: frag: enforce memory limits earlier
   dc8edd08cd89 bonding: avoid lockdep confusion in bond_get_stats()
   deaacd62c217 Linux 4.14.60
   0a2f6725115d tcp: add one more quick ack after after ECN events
   1f04d750f668 tcp: refactor tcp_ecn_check_ce to remove sk type cast
   fd31083cbe05 tcp: do not aggressively quick ack after ECN events
   1c005489fa98 tcp: add max_quickacks param to tcp_incr_quickack and tcp_enter_quickack_mode
   5a1baf194475 tcp: do not force quickack when receiving out-of-order packets
   fffd3058eaf4 netlink: Don't shift with UB on nlk->ngroups
   e208cda5f10e netlink: Do not subscribe to non-existent groups
   da970765b24c xen-netfront: wait xenbus state change when load module manually
   7309441887f6 tcp_bbr: fix bw probing to raise in-flight data for very small BDPs
   7f36a065963a NET: stmmac: align DMA stuff to largest cache line length
   e071e2fdf45e net: mdio-mux: bcm-iproc: fix wrong getter and setter pair
   ccdbe7e2374a net: lan78xx: fix rx handling before first packet is send
   112e80ac8285 net: fix amd-xgbe flow-control issue
   11b694387ab4 net: ena: Fix use of uninitialized DMA address bits field
   1494a3a70ce0 ipv4: remove BUG_ON() from fib_compute_spec_dst
   20556dc7f239 net: dsa: qca8k: Allow overwriting CPU port setting
   2eda475b0849 net: dsa: qca8k: Add QCA8334 binding documentation
   1fbc97b32b7e net: dsa: qca8k: Enable RXMAC when bringing up a port
   62310e69f1ae net: dsa: qca8k: Force CPU port to its highest bandwidth
   a61b3378b847 RDMA/uverbs: Protect from attempts to create flows on unsupported QP
   b8e9dd160ca3 usb: gadget: udc: renesas_usb3: should remove debugfs
   6aaaca7b81e4 ovl: Sync upper dirty data when syncing overlayfs
   21b5b5e80bcf PCI: xgene: Remove leftover pci_scan_child_bus() call
   011626d61a43 PCI: pciehp: Assume NoCompl+ for Thunderbolt ports
   f547aa20b4f6 ext4: fix check to prevent initializing reserved inodes
   dc1b4b710fbe ext4: check for allocation block validity with block group locked
   cdcbe750acd6 ext4: fix inline data updates with checksums enabled
   961f9feb4332 squashfs: be more careful about metadata corruption
   af41fd042fc1 random: mix rdrand with entropy sent in from userspace
   b8088c524ae2 block: reset bi_iter.bi_done after splitting bio
   cc5d7097ba8f blkdev: __blkdev_direct_IO_simple: fix leak in error case
   2258351cf086 block: bio_iov_iter_get_pages: fix size of last iovec
   2488689fe468 drm/dp/mst: Fix off-by-one typo when dump payload table
   2aa0e652bce1 drm/atomic-helper: Drop plane->fb references only for drm_atomic_helper_shutdown()
   20f01a1b7b6d drm: Add DP PSR2 sink enable bit
   a2fdb85a15eb ASoC: topology: Add missing clock gating parameter when parsing hw_configs
   b754906cd9c9 ASoC: topology: Fix bclk and fsync inversion in set_link_hw_format()
   e1d4f1e2856e media: si470x: fix __be16 annotations
   98121d665d93 media: atomisp: compat32: fix __user annotations
   a5ed99bc6f59 scsi: cxlflash: Avoid clobbering context control register value
   bb7cccb01c84 scsi: cxlflash: Synchronize reset and remove ops
   07b2a0d00183 scsi: megaraid_sas: Increase timeout by 1 sec for non-RAID fastpath IOs
   0b45eb5a340d scsi: scsi_dh: replace too broad "TP9" string with the exact models
   fb2b60e27a16 regulator: Don't return or expect -errno from of_map_mode()
   4886bf00337f media: omap3isp: fix unbalanced dma_iommu_mapping
   09740f513e3f crypto: authenc - don't leak pointers to authenc keys
   a07fc8dd2bd4 crypto: authencesn - don't leak pointers to authenc keys
   f17d397bfed4 usb: hub: Don't wait for connect state at resume for powered-off ports
   d136b7ab24b8 microblaze: Fix simpleImage format generation
   6cfd0d3c627f soc: imx: gpcv2: Do not pass static memory as platform data
   62079c8371aa serial: core: Make sure compiler barfs for 16-byte earlycon names
   41e1f1feee06 staging: lustre: ldlm: free resource when ldlm_lock_create() fails.
   e906355a7f96 staging: lustre: llite: correct removexattr detection
   fea5a0d87816 staging: vchiq_core: Fix missing semaphore release in error case
   06d6d1ad241d audit: allow not equal op for audit by executable
   e7cb8f11f6e2 rsi: fix nommu_map_sg overflow kernel panic
   0be8aa812cef rsi: Fix 'invalid vdd' warning in mmc
   e660508795d6 ipconfig: Correctly initialise ic_nameservers
   18a48a7a4418 drm/gma500: fix psb_intel_lvds_mode_valid()'s return type
   75d1087174d2 igb: Fix queue selection on MAC filters on i210
   c7ab132d7e3d arm64: defconfig: Enable Rockchip io-domain driver
   2ee4fbcd27f9 nvme: lightnvm: add granby support
   503f22cf7b2a memory: tegra: Apply interrupts mask per SoC
   9746d3696de9 memory: tegra: Do not handle spurious interrupts
   c06f5a018f71 delayacct: Use raw_spinlocks
   da2b62c740de stop_machine: Use raw spinlocks
   4531135811a5 backlight: pwm_bl: Don't use GPIOF_* with gpiod_get_direction
   232703c9091f dt-bindings: net: meson-dwmac: new compatible name for AXG SoC
   c3b540c06954 net: hns3: Fixes the out of bounds access in hclge_map_tqp
   17b26041363f spi: meson-spicc: Fix error handling in meson_spicc_probe()
   c9e5888ec8ae dt-bindings: pinctrl: meson: add support for the Meson8m2 SoC
   d6ce4f1bf79a mmc: pwrseq: Use kmalloc_array instead of stack VLA
   f0b0debbb49d mmc: dw_mmc: update actual clock for mmc debugfs
   ab76f866c8f0 ALSA: hda/ca0132: fix build failure when a local macro is defined
   c6f9830cfb47 drm/atomic: Handling the case when setting old crtc for plane
   cf0061396910 media: siano: get rid of __le32/__le16 cast warnings
   4bbf1ce3a1e3 f2fs: avoid fsync() failure caused by EAGAIN in writepage()
   15239633dc55 bpf: fix references to free_bpf_prog_info() in comments
   b62ed0bbbd63 thermal: exynos: fix setting rising_threshold for Exynos5433
   66eb9942673a staging: lustre: o2iblnd: Fix FastReg map/unmap for MLX5
   52a21fcafa71 staging: lustre: o2iblnd: fix race at kiblnd_connect_peer
   de3da42dc775 scsi: qedf: Set the UNLOADING flag when removing a vport
   ad1562ae8135 scsi: hisi_sas: config ATA de-reset as an constrained command for v3 hw
   13e4e358b94c scsi: megaraid: silence a static checker bug
   ca588ff3e7d6 scsi: 3w-xxxx: fix a missing-check bug
   a0e86c016bb4 scsi: 3w-9xxx: fix a missing-check bug
   112f47373e36 bnxt_en: Check unsupported speeds in bnxt_update_link() on PF only.
   c9b5d1519c24 perf: fix invalid bit in diagnostic entry
   d5d8223d7c67 s390/cpum_sf: Add data entry sizes to sampling trailer entry
   af5e8846a5e9 brcmfmac: Add support for bcm43364 wireless chipset
   59d9b120600d mtd: rawnand: fsl_ifc: fix FSL NAND driver to read all ONFI parameter pages
   d49f8498042a media: saa7164: Fix driver name in debug output
   f3766ad7d325 media: media-device: fix ioctl function types
   ce222fb1256b ACPI / LPSS: Only call pwm_add_table() for Bay Trail PWM if PMIC HRV is 2
   885d2128ab7f libata: Fix command retry decision
   adf9ceabfc16 media: rcar_jpu: Add missing clk_disable_unprepare() on error in jpu_open()
   240bc678f726 net: phy: phylink: Release link GPIO
   fa57e8d54494 dma-iommu: Fix compilation when !CONFIG_IOMMU_DMA
   deb1feaad03a tty: Fix data race in tty_insert_flip_string_fixed_flag
   731b918a624c i40e: free the skb after clearing the bitlock
   6fdc5235693b nvmem: properly handle returned value nvmem_reg_read
   901366594729 ARM: dts: sh73a0: Add missing interrupt-affinity to PMU node
   9c552c4e262f ARM: dts: emev2: Add missing interrupt-affinity to PMU node
   b565e4e9dd09 ARM: dts: stih407-pinctrl: Fix complain about IRQ_TYPE_NONE usage
   d7ed9da96a8a EDAC, altera: Fix ARM64 build warning
   d0eca5d32b11 HID: i2c-hid: check if device is there before really probing
   83eef34c65f1 powerpc/embedded6xx/hlwd-pic: Prevent interrupts from being handled by Starlet
   b42848b2a819 drm/amdgpu: Remove VRAM from shared bo domains.
   14bedc05ab2d drm/radeon: fix mode_valid's return type
   3ee32f73fc72 arm64: dts: renesas: salvator-common: use audio-graph-card for Sound
   d85073283aa7 HID: hid-plantronics: Re-resend Update to map button for PTT products
   6a43d5a3ca6c arm64: cmpwait: Clear event register before arming exclusive monitor
   62a87c8759f2 media: atomisp: ov2680: don't declare unused vars
   25436aa5c184 ALSA: usb-audio: Apply rate limit to warning messages in URB complete callback
   d239ee35ddb2 net: ethernet: ti: cpsw-phy-sel: check bus_find_device() ret value
   0bd08027bd19 media: smiapp: fix timeout checking in smiapp_read_nvm
   41b16e6ec6a8 ixgbevf: fix MAC address changes through ixgbevf_set_mac()
   7627ecfc4902 md: fix NULL dereference of mddev->pers in remove_and_add_spares()
   1b3433cfa222 md/raid1: add error handling of read error from FailFast device
   6192b115c58b regulator: pfuze100: add .is_enable() for pfuze100_swb_regulator_ops
   9b56c4151ac2 ALSA: emu10k1: Rate-limit error messages about page errors
   9f25b548732c rtc: tps65910: fix possible race condition
   8f5e7596fe3a rtc: vr41xx: fix possible race condition
   aca6728fa1ed rtc: tps6586x: fix possible race condition
   192591ade6ec Bluetooth: btusb: add ID for LiteOn 04ca:301a
   33775b07426b drm/nouveau/fifo/gk104-: poll for runlist update completion
   fdb5207dc1f1 scsi: zfcp: assert that the ERP lock is held when tracing a recovery trigger
   b095b5888eab scsi: ufs: fix exception event handling
   c9f744135ad7 scsi: ufs: ufshcd: fix possible unclocked register access
   63c7e58dab1e fscrypt: use unbound workqueue for decryption
   1d6908ce90b5 net: hns3: Fix the missing client list node initialization
   625d1e783375 spi: Add missing pm_runtime_put_noidle() after failed get
   d0a963cf845c drivers/perf: arm-ccn: don't log to dmesg in event_init
   cffbdb7702ba ima: based on policy verify firmware signatures (pre-allocated buffer)
   945e6ce33d80 mwifiex: correct histogram data with appropriate index
   a30ff89c34b8 net: dsa: qca8k: Add support for QCA8334 switch
   082900a6d567 PCI: pciehp: Request control of native hotplug only if supported
   39da0cf774db bpf: powerpc64: pad function address loads with NOPs
   cf957ba7c6e8 pinctrl: at91-pio4: add missing of_node_put
   210807e92b49 powerpc/8xx: fix invalid register expression in head_8xx.S
   56a58a5395ab spi: sh-msiof: Fix setting SIRMDR1.SYNCAC to match SITMDR1.SYNCAC
   7eda31872980 powerpc: Add __printf verification to prom_printf
   566be4969b83 powerpc/powermac: Mark variable x as unused
   d26f8af1a126 powerpc/powermac: Add missing prototype for note_bootable_part()
   ee8c480702a6 powerpc/chrp/time: Make some functions static, add missing header include
   c0ff32b7e852 powerpc/32: Add a missing include header
   935674605cf8 ath: Add regulatory mapping for Bahamas
   936058197fbb ath: Add regulatory mapping for Bermuda
   c4b93c91bb63 ath: Add regulatory mapping for Serbia
   aafbcce424ec ath: Add regulatory mapping for Tanzania
   5e895c9cb8ca ath: Add regulatory mapping for Uganda
   3c51226005d9 ath: Add regulatory mapping for APL2_FCCA
   cdd106451c6a ath: Add regulatory mapping for APL13_WORLD
   f198926d6a40 ath: Add regulatory mapping for ETSI8_WORLD
   be1c9763cbc7 ath: Add regulatory mapping for FCC3_ETSIC
   1afb8720b694 nvme-pci: Fix AER reset handling
   4bb1acf80c7f nvme-rdma: stop admin queue before freeing it
   2040b0d8c9c0 PCI: Prevent sysfs disable of device while driver is attached
   d93663a78783 PM / wakeup: Make s2idle_lock a RAW_SPINLOCK
   652b94b72696 x86/microcode: Make the late update update_lock a raw lock for RT
   2737a4adec5a btrfs: qgroup: Finish rescan when hit the last leaf of extent tree
   31371d2dad49 btrfs: add barriers to btrfs_sync_log before log_commit_wait wakeups
   3bf165384e82 Btrfs: don't BUG_ON() in btrfs_truncate_inode_items()
   ef61d940cd96 Btrfs: don't return ino to ino cache if inode item removal fails
   9aecdc961e6a media: videobuf2-core: don't call memop 'finish' when queueing
   b7ffc03574f8 media: tw686x: Fix incorrect vb2_mem_ops GFP flags
   1a95962bf210 net: hns3: Fixes the init of the VALID BD info in the descriptor
   6f8688bf299b wlcore: sdio: check for valid platform device data before suspend
   852feed35dcd mwifiex: handle race during mwifiex_usb_disconnect
   6648fdc71138 mfd: cros_ec: Fail early if we cannot identify the EC
   3d4837733945 ASoC: dpcm: fix BE dai not hw_free and shutdown
   5650a9be9635 Bluetooth: btusb: Add a new Realtek 8723DE ID 2ff8:b011
   678e64c63217 Bluetooth: hci_qca: Fix "Sleep inside atomic section" warning
   73425f6ad6eb iwlwifi: pcie: fix race in Rx buffer allocator
   59b837d5927c btrfs: balance dirty metadata pages in btrfs_finish_ordered_io
   233cba023484 PCI: Fix devm_pci_alloc_host_bridge() memory leak
   f559bb20c1ae selftests: intel_pstate: return Kselftest Skip code for skipped tests
   4312c2df0b7b selftests: memfd: return Kselftest Skip code for skipped tests
   9c8f3af66282 selftests/intel_pstate: Improve test, minor fixes
   596a9bfe8190 perf/x86/intel/uncore: Correct fixed counter index check for NHM
   71b1bf6e9753 perf/x86/intel/uncore: Correct fixed counter index check in generic code
   38c8c0a9709d usbip: dynamically allocate idev by nports found in sysfs
   bc30588b8e08 usbip: usbip_detach: Fix memory, udev context and udev leak
   63019044fb89 block, bfq: remove wrong lock in bfq_requests_merged
   67226fb52c23 f2fs: fix race in between GC and atomic open
   ad8d61efc9b7 f2fs: fix to detect failure of dquot_initialize
   c92d09e35d2d f2fs: Fix deadlock in shutdown ioctl
   4f979af7b0ad f2fs: fix to wait page writeback during revoking atomic write
   de13b2ac741f f2fs: fix to don't trigger writeback during recovery
   f3f029197738 f2fs: fix error path of move_data_page
   122031c29202 disable loading f2fs module on PAGE_SIZE > 4KB
   1339e2b8eaea pnfs: Don't release the sequence slot until we've processed layoutget on open
   20fc8b34c195 netfilter: nf_tables: check msg_type before nft_trans_set(trans)
   4f5fd8a1ae16 lightnvm: pblk: warn in case of corrupted write buffer
   929e1a3906e1 RDMA/mad: Convert BUG_ONs to error flows
   a23e1da9773b powerpc/64s: Fix compiler store ordering to SLB shadow area
   0aceed2d7ec1 hvc_opal: don't set tb_ticks_per_usec in udbg_init_opal_common()
   bc0b4615cc97 powerpc/eeh: Fix use-after-release of EEH driver
   04cda3ac3312 powerpc/64s: Add barrier_nospec
   47b356145017 powerpc/lib: Adjust .balign inside string functions for PPC32
   e27dad1eb1ac infiniband: fix a possible use-after-free bug
   848f260301d0 e1000e: Ignore TSYNCRXCTL when getting I219 clock attributes
   4c717e335ae1 ceph: fix alignment of rasize
   cdad03c1f21e bpf, arm32: fix inconsistent naming about emit_a32_lsr_{r64,i64}
   8dcf2dbf65ef printk: drop in_nmi check from printk_safe_flush_on_panic()
   2f6a38b131ab watchdog: da9063: Fix updating timeout value
   d90c9b07cb32 irqchip/ls-scfg-msi: Map MSIs in the iommu
   ff60eda50453 netfilter: ipset: List timing out entries with "timeout 1" instead of zero
   52f072f580e4 netfilter: ipset: forbid family for hash:mac sets
   a47ece2b17c2 perf tools: Fix pmu events parsing rule
   6a929b97b777 rtc: ensure rtc_set_alarm fails when alarms are not supported
   191d00f8c872 mm/slub.c: add __printf verification to slab_err()
   b9d1724cf618 mm: vmalloc: avoid racy handling of debugobjects in vunmap
   9e1a1fc0cd9b mm: /proc/pid/pagemap: hide swap entries from unprivileged users
   9691035cbf72 kernel/hung_task.c: show all hung tasks before panic
   827faa4eb566 vfio/type1: Fix task tracking for QEMU vCPU hotplug
   8f38152f2ae2 vfio/mdev: Check globally for duplicate devices
   ca014df110e9 vfio: platform: Fix reset module leak in error path
   5a47fe3efd4d nfsd: fix potential use-after-free in nfsd4_decode_getdeviceinfo
   baad2bf44770 NFSv4.1: Fix the client behaviour on NFS4ERR_SEQ_FALSE_RETRY
   42b1df406a29 ALSA: fm801: add error handling for snd_ctl_add
   40ff9a54dd9b ALSA: emu10k1: add error handling for snd_ctl_add
   44a78f7d1757 skip LAYOUTRETURN if layout is invalid
   0a84c912f575 hv_netvsc: fix network namespace issues with VF support
   51b694070738 xen/netfront: raise max number of slots in xennet_get_responses()
   a45f5ee6850b kcov: ensure irq code sees a valid area
   73990abb1a04 mlxsw: spectrum_switchdev: Fix port_vlan refcounting
   c1550e014135 arm64: fix vmemmap BUILD_BUG_ON() triggering on !vmemmap setups
   4681e8820f99 tracing: Quiet gcc warning about maybe unused link variable
   86428ec165ee tracing/kprobes: Fix trace_probe flags on enable_trace_kprobe() failure
   f957456878eb kthread, tracing: Don't expose half-written comm when creating kthreads
   10419b0c16d4 tracing: Fix possible double free in event_enable_trigger_func()
   9158a7debe53 tracing: Fix double free of event_trigger_data
   a2f85c02810f delayacct: fix crash in delayacct_blkio_end() after delayacct init failure
   8eead4f5dea9 kvm, mm: account shadow page tables to kmemcg
   ca6427facd96 Input: elan_i2c - add another ACPI ID for Lenovo Ideapad 330-15AST
   e0e385e2126e Input: i8042 - add Lenovo LaVie Z to the i8042 reset list
   b4667635de2e Input: elan_i2c - add ACPI ID for lenovo ideapad 330
   c09032b71fc6 spi: spi-s3c64xx: Fix system resume support
   e581f7c590cc drivers/infiniband/ulp/srpt/ib_srpt.c: fix build with gcc-4.4.4
   1e8bb2e9c9df IB/srpt: Fix an out-of-bounds stack access in srpt_zerolength_write()
   d02c9c8bfef1 drivers/infiniband/core/verbs.c: fix build with gcc-4.4.4
   3af618717e71 RDMA/core: Avoid that ib_drain_qp() triggers an out-of-bounds stack access
   c0b86d269bf0 i2c: core: decrease reference count of device node in i2c_unregister_device
   2d5fc7ffa84b fork: unconditionally clear stack on fork
   53208e12faa5 Linux 4.14.59
   e94f784fddd5 turn off -Wattribute-alias
   08382d3a1be2 can: m_can.c: fix setup of CCCR register: clear CCCR NISO bit before checking can.ctrlmode
   a55d3d73d457 can: peak_canfd: fix firmware < v3.3.0: limit allocation to 32-bit DMA addr only
   60454a9715df can: xilinx_can: fix RX overflow interrupt not being enabled
   19c756e01b09 can: xilinx_can: fix incorrect clear of non-processed interrupts
   189c7890f33b can: xilinx_can: keep only 1-2 frames in TX FIFO to fix TX accounting
   96bf3257c866 can: xilinx_can: fix device dropping off bus on RX overrun
   c5846b2fd57b can: xilinx_can: fix recovery from error states not being propagated
   f820de2a08b6 can: xilinx_can: fix power management handling
   464a3f9139f4 can: xilinx_can: fix RX loop if RXNEMP is asserted without RXOK
   55cb8f40c8d7 driver core: Partially revert "driver core: correct device's shutdown order"
   5421694d8cd7 usb: gadget: f_fs: Only return delayed status when len is 0
   68fc92a0f391 usb: dwc2: Fix DMA alignment to start at allocated boundary
   ac3f65c6b635 usb: core: handle hub C_PORT_OVER_CURRENT condition
   e089c305af49 usb: cdc_acm: Add quirk for Castles VEGA3000
   ab9489c4db89 staging: speakup: fix wraparound in uaccess length check
   22e3d3178b18 tcp: add tcp_ooo_try_coalesce() helper
   ec645ae62309 tcp: call tcp_drop() from tcp_data_queue_ofo()
   6285a74a536f tcp: detect malicious patterns in tcp_collapse_ofo_queue()
   81e6b01d1c10 tcp: avoid collapses in tcp_prune_queue() if possible
   f3a5ba6310e1 tcp: free batches of packets in tcp_prune_ofo_queue()
   ae70b6153197 tcp: do not delay ACK in DCTCP upon CE status change
   78636179f6e6 tcp: do not cancel delay-AcK on DCTCP special ACK
   f7f24b369383 tcp: helpers to send special DCTCP ack
   68c9bdfc8b42 tcp: fix dctcp delayed ACK schedule
   68974d0b9c86 vxlan: fix default fdb entry netlink notify ordering during netdev create
   bb0335aacfdd vxlan: make netlink notify in vxlan_fdb_destroy optional
   1c345a529258 vxlan: add new fdb alloc and create helpers
   23557c5d34b9 rtnetlink: add rtnl_link_state check in rtnl_configure_link
   464e2326a7f5 sock: fix sg page frag coalescing in sk_alloc_sg
   50b464d33964 net: phy: consider PHY_IGNORE_INTERRUPT in phy_start_aneg_priv
   46f9e1d0bd4e multicast: do not restore deleted record source filter mode to new one
   6d5b7d68f45b net/ipv6: Fix linklocal to global address with VRF
   047af2d8ced3 net/mlx5e: Fix quota counting in aRFS expire flow
   c83cd44202b5 net/mlx5e: Don't allow aRFS for encapsulated packets
   291d99ac4dc2 net/mlx5: Adjust clock overflow work period
   f208fbad98fd net: skb_segment() should not return NULL
   6e92f04a4fef net/mlx4_core: Save the qpn from the input modifier in RST2INIT wrapper
   df20f746d68b ip: in cmsg IP(V6)_ORIGDSTADDR call pskb_may_pull
   c2ce657fd68c ip: hash fragments consistently
   f1fb27fc256c bonding: set default miimon value for non-arp modes if not set
   7e454c18b76f drm/nouveau: Set DRIVER_ATOMIC cap earlier to fix debugfs
   d0bd2c70ffcb drm/nouveau/drm/nouveau: Fix runtime PM leak in nv50_disp_atomic_commit()
   58113603a4ea KVM: PPC: Check if IOMMU page is contained in the pinned physical page
   14500f14e0b6 xen/PVH: Set up GS segment for stack canary
   de019e7857fb MIPS: Fix off-by-one in pci_resource_to_user()
   4c686d73bc3e MIPS: ath79: fix register address in ath79_ddr_wb_flush()
   4168a8422364 Revert "cifs: Fix slab-out-of-bounds in send_set_info() on SMB2 ACE setting"
   f952480a8fc1 Linux 4.14.58
   3fcc143edcdd xhci: Fix perceived dead host due to runtime suspend race with event handler
   ff42682f21d7 powerpc/powernv: Fix save/restore of SPRG3 on entry/exit from stop (idle)
   ea8a50e5f829 cxl_getfile(): fix double-iput() on alloc_file() failures
   b12c7d0847e2 alpha: fix osf_wait4() breakage
   78cdeb665fb1 net: usb: asix: replace mii_nway_restart in resume path
   bbf9b1a46420 ipv6: make DAD fail with enhanced DAD when nonce length differs
   7c14cf21867c net: systemport: Fix CRC forwarding check for SYSTEMPORT Lite
   65851c6b6d6e net/mlx4_en: Don't reuse RX page when XDP is set
   7e7fefde7dec hv_netvsc: Fix napi reschedule while receive completion is busy
   c7daaa272dda tg3: Add higher cpu clock for 5762.
   c84c7d8383c2 qmi_wwan: add support for Quectel EG91
   294dc77bb75e ptp: fix missing break in switch
   811ad4b366a6 net: phy: fix flag masking in __set_phy_supported
   78382d78bb4a net/ipv4: Set oif in fib_compute_spec_dst
   829f4fd66354 skbuff: Unconditionally copy pfmemalloc in __skb_clone()
   6403b54a4f7e net: Don't copy pfmemalloc flag in __copy_skb_header()
   cc0ab64759c8 net: diag: Don't double-free TCP_NEW_SYN_RECV sockets in tcp_abort
   cfb876dc3042 lib/rhashtable: consider param->min_size when setting initial table size
   9f7276ce825b ipv6: ila: select CONFIG_DST_CACHE
   a5d33d38bd37 ipv6: fix useless rol32 call on hash
   0348dcd98af3 ipv4: Return EINVAL when ping_group_range sysctl doesn't map to user ns
   c8347d91cfd7 gen_stats: Fix netlink stats dumping in the presence of padding
   dd1363ca743e drm/nouveau: Avoid looping through fake MST connectors
   22c4488c8649 drm/nouveau: Use drm_connector_list_iter_* for iterating connectors
   387362c3ed80 drm/i915: Fix hotplug irq ack on i965/g4x
   d21fb63010c4 stop_machine: Disable preemption when waking two stopper threads
   9a2e4a01ded2 vfio/spapr: Use IOMMU pageshift rather than pagesize
   a5b8eae53672 vfio/pci: Fix potential Spectre v1
   dfc328156dde cpufreq: intel_pstate: Register when ACPI PCCH is present
   70ef1db1f21d mm/huge_memory.c: fix data loss when splitting a file pmd
   be2657752e9e mm: memcg: fix use after free in mem_cgroup_iter()
   95c58105bd97 ARC: mm: allow mprotect to make stack mappings executable
   3c732b3ab3a5 ARC: configs: Remove CONFIG_INITRAMFS_SOURCE from defconfigs
   13e5197d7ef6 ARC: Fix CONFIG_SWAP
   edb5e3eeb14a ARCv2: [plat-hsdk]: Save accl reg pair by default
   a82d4478337a ALSA: hda: add mute led support for HP ProBook 455 G5
   feefc072d10d ALSA: hda/realtek - Add Panasonic CF-SZ6 headset jack quirk
   5d251646ab15 ALSA: rawmidi: Change resized buffers atomically
   321089a0aa35 fat: fix memory allocation failure handling of match_strdup()
   1450a7c5da03 x86/MCE: Remove min interval polling limitation
   aa49e48232ee x86/events/intel/ds: Fix bts_interrupt_threshold alignment
   b4108288eab8 x86/apm: Don't access __preempt_count with zeroed fs
   3a46a033bfa8 KVM/Eventfd: Avoid crash when assign and deassign specific eventfd in parallel.
   763ccb4d1980 scsi: sd_zbc: Fix variable type and bogus comment
   ecc160ece609 Linux 4.14.57
   779128d80cb0 string: drop __must_check from strscpy() and restore strscpy() usages in cgroup
   96fd60c8160c arm64: KVM: Add ARCH_WORKAROUND_2 discovery through ARCH_FEATURES_FUNC_ID
   1b749f8a2416 arm64: KVM: Handle guest's ARCH_WORKAROUND_2 requests
   805357aa65bb arm64: KVM: Add ARCH_WORKAROUND_2 support for guests
   0592871918f0 arm64: KVM: Add HYP per-cpu accessors
   b769d86ea9d4 arm64: ssbd: Add prctl interface for per-thread mitigation
   e7d02797288f arm64: ssbd: Introduce thread flag to control userspace mitigation
   c5c89bb4deb8 arm64: ssbd: Restore mitigation status on CPU resume
   02e26bd9ad58 arm64: ssbd: Skip apply_ssbd if not using dynamic mitigation
   8d6907af4583 arm64: ssbd: Add global mitigation state accessor
   45808ab2f924 arm64: Add 'ssbd' command-line option
   837c87c233c1 arm64: Add ARCH_WORKAROUND_2 probing
   1bffd4869011 arm64: Add per-cpu infrastructure to call ARCH_WORKAROUND_2
   5ad09d2abb5a arm64: Call ARCH_WORKAROUND_2 on transitions between EL0 and EL1
   1de2719134b5 arm/arm64: smccc: Add SMCCC-specific return codes
   2cdc2e62a6ac KVM: arm64: Avoid storing the vcpu pointer on the stack
   dca7815605af KVM: arm/arm64: Do not use kern_hyp_va() with kvm_vgic_global_state
   e77175fafa7d arm64: alternatives: Add dynamic patching feature
   286950e0831b KVM: arm64: Stop save/restoring host tpidr_el1 on VHE
   0dac9f10d952 arm64: alternatives: use tpidr_el2 on VHE hosts
   6256b86e8519 KVM: arm64: Change hyp_panic()s dependency on tpidr_el2
   8ad56472d67c KVM: arm/arm64: Convert kvm_host_cpu_state to a static per-cpu allocation
   ed812b882599 KVM: arm64: Store vcpu on the stack during __guest_enter()
   115df2a7c5ba net/nfc: Avoid stalls when nfc_alloc_send_skb() returned NULL.
   a4b57440d971 rds: avoid unenecessary cong_update in loop transport
   1bbe05e27af1 bdi: Fix another oops in wb_workfn()
   28c74ff85efd netfilter: ipv6: nf_defrag: drop skb dst before queueing
   b124e97f3ef5 nsh: set mac len based on inner packet
   00235ab80007 autofs: fix slab out of bounds read in getname_kernel()
   30a7a7b04f8b tls: Stricter error checking in zerocopy sendmsg path
   d9bb71d76c07 KEYS: DNS: fix parsing multiple options
   cba5008502f2 reiserfs: fix buffer overflow with long warning messages
   766a7ad6639b netfilter: ebtables: reject non-bridge targets
   b5199c61e95c PCI: hv: Disable/enable IRQs rather than BH in hv_compose_msi_msg()
   aa6be396714c block: do not use interruptible wait anywhere
   f1059632a4fc mtd: rawnand: denali_dt: set clk_x_rate to 200 MHz unconditionally
   c4bfed85bae8 crypto: af_alg - Initialize sg_num_bytes in error code path
   16b3ae12337e clocksource: Initialize cs->wd_list
   a406abeb7416 media: rc: oops in ir_timer_keyup after device unplug
   67f7c68a9085 xhci: Fix USB3 NULL pointer dereference at logical disconnect.
   2be27d444f61 net: lan78xx: Fix race in tx pending skb size calculation
   12c0949a0745 rtlwifi: rtl8821ae: fix firmware is not ready to run
   ee8d2e719c1e rtlwifi: Fix kernel Oops "Fw download fail!!"
   3caea5150c15 net: cxgb3_main: fix potential Spectre v1
   d8530e891edd VSOCK: fix loopback on big-endian systems
   7eba6537c3d1 vhost_net: validate sock before trying to put its fd
   2dc4696ee6d9 tcp: prevent bogus FRTO undos with non-SACK flows
   3373d6d056d7 tcp: fix Fast Open key endianness
   4f5f7bce308e strparser: Remove early eaten to fix full tcp receive buffer stall
   32761addd300 stmmac: fix DMA channel hang in half-duplex mode
   5e90946baa57 r8152: napi hangup fix after disconnect
   d8c1603d0bb4 qmi_wwan: add support for the Dell Wireless 5821e module
   dd537828bf73 qed: Limit msix vectors in kdump kernel to the minimum required count.
   023a2043bc8a qed: Fix use of incorrect size in memcpy call.
   4c2849931b23 qed: Fix setting of incorrect eswitch mode.
   d725fde81ffc qede: Adverstise software timestamp caps when PHC is not available.
   35e324ebeee0 net/tcp: Fix socket lookups with SO_BINDTODEVICE
   b3c66b54d8fe net: sungem: fix rx checksum support
   b36f997add36 net_sched: blackhole: tell upper qdisc about dropped packets
   5e6b4b9b28b7 net/packet: fix use-after-free
   ddbbd3e05743 net: mvneta: fix the Rx desc DMA address in the Rx path
   7ae129dd6778 net/mlx5: Fix wrong size allocation for QoS ETC TC regitster
   46ff2bc7aeb1 net/mlx5: Fix required capability for manipulating MPFS
   8b7b5f76693c net/mlx5: Fix incorrect raw command length parsing
   075b50381248 net/mlx5: Fix command interface race in polling mode
   c3994f4f8bda net/mlx5: E-Switch, Avoid setup attempt if not being e-switch manager
   b216867c02ac net/mlx5e: Don't attempt to dereference the ppriv struct if not being eswitch manager
   1d8dda4444fa net/mlx5e: Avoid dealing with vport representors if not being e-switch manager
   f389c17b8dc5 net: macb: Fix ptp time adjustment for large negative delta
   b364a914c499 net: fix use-after-free in GRO with ESP
   fb6b14663d56 net: dccp: switch rx_tstamp_last_feedback to monotonic clock
   a3225a836e56 net: dccp: avoid crash in ccid3_hc_rx_send_feedback()
   a2e53d69f685 ixgbe: split XDP_TX tail and XDP_REDIRECT map flushing
   f5a42d63f0d4 ipvlan: fix IFLA_MTU ignored on NEWLINK
   d10c0baaae3f ipv6: sr: fix passing wrong flags to crypto_alloc_shash()
   e34e92d8b689 hv_netvsc: split sub-channel setup into async and sync
   43c9207d0296 atm: zatm: Fix potential Spectre v1
   f93d65939a4a atm: Preserve value of skb->truesize when accounting to vcc
   c62e2f087af1 alx: take rtnl before calling __alx_open from resume
   03bb9187754e crypto: crypto4xx - fix crypto4xx_build_pdr, crypto4xx_build_sdr leak
   996a6a393b3f crypto: crypto4xx - remove bad list_del
   dc3782a3e9c6 PCI: exynos: Fix a potential init_clk_resources NULL pointer dereference
   b1c3ce0cfff2 bcm63xx_enet: do not write to random DMA channel on BCM6345
   b913a05ab75e bcm63xx_enet: correct clock usage
   1ccab2bf726e ocfs2: ip_alloc_sem should be taken in ocfs2_get_block()
   c59a8f13f36b ocfs2: subsystem.su_mutex is required while accessing the item->ci_parent
   f5778c2d657e xprtrdma: Fix corner cases when handling device removal
   1083a7e8130c cpufreq / CPPC: Set platform specific transition_delay_us
   61a9f6b7fe0c Btrfs: fix duplicate extents after fsync of file with prealloc extents
   edefb935700c x86/paravirt: Make native_save_fl() extern inline
   92e50158fc0a x86/asm: Add _ASM_ARG* constants for argument registers to <asm/asm.h>
   779145a6f6ec compiler-gcc.h: Add __attribute__((gnu_inline)) to all inline declarations
   cff26c95b24c Linux 4.14.56
   eab3a3412215 f2fs: give message and set need_fsck given broken node id
   d2c18ad18cc7 loop: remember whether sysfs_create_group() was done
   e8484443c9db RDMA/ucm: Mark UCM interface as BROKEN
   140eae92cf70 PM / hibernate: Fix oops at snapshot_write()
   6f9f5797fc7d loop: add recursion validation to LOOP_CHANGE_FD
   348b32aa3a37 netfilter: x_tables: initialise match/target check parameter struct
   e5ee20c65b34 netfilter: nf_queue: augment nfqa_cfg_policy
   0032322689bb uprobes/x86: Remove incorrect WARN_ON() in uprobe_init_insn()
   19f39eff68b4 crypto: x86/salsa20 - remove x86 salsa20 implementations
   2a017ea2ea14 nvme-pci: Remap CMB SQ entries on every controller reset
   54ca2776fcca xen: setup pv irq ops vector earlier
   f47f1f976745 iw_cxgb4: correctly enforce the max reg_mr depth
   33beaca902a6 i2c: tegra: Fix NACK error handling
   ac5270d4bd46 IB/hfi1: Fix incorrect mixing of ERR_PTR and NULL return values
   e61f8cb63ede tools build: fix # escaping in .cmd files for future Make
   d8148f732748 arm64: neon: Fix function may_use_simd() return error status
   324881805629 kbuild: delete INSTALL_FW_PATH from kbuild documentation
   36244e3a60cf tracing: Reorder display of TGID to be after PID
   81ebc9decd16 mm: do not bug_on on incorrect length in __mm_populate()
   ff62981880d1 fs, elf: make sure to page align bss in load_elf_library
   e6f011384c92 fs/proc/task_mmu.c: fix Locked field in /proc/pid/smaps*
   684a2d8ed53f mm: do not drop unused pages when userfaultd is running
   f329f46764b1 ALSA: hda - Handle pm failure during hotplug
   11c6be539e1a ALSA: hda/realtek - two more lenovo models need fixup of MIC_LOCATION
   e58114824fa6 scsi: megaraid_sas: fix selection of reply queue
   c3aa570dd539 scsi: megaraid_sas: Create separate functions to allocate ctrl memory
   fda0eab89ccf scsi: megaraid_sas: replace is_ventura with adapter_type checks
   90229163fa6c scsi: megaraid_sas: replace instance->ctrl_context checks with instance->adapter_type
   d7e6dcdaa3ea scsi: megaraid_sas: use adapter_type for all gen controllers
   ef86f3a72adb genirq/affinity: assign vectors to all possible CPUs
   298243a5fb64 Fix up non-directory creation in SGID directories
   a6d26649fda0 devpts: resolve devpts bind-mounts
   cd360be6488c devpts: hoist out check for DEVPTS_SUPER_MAGIC
   7499390b8ba5 xhci: xhci-mem: off by one in xhci_stream_id_to_ring()
   55f51e5b4cff usb: quirks: add delay quirks for Corsair Strafe
   82b9cb4d3f06 USB: serial: mos7840: fix status-register error handling
   90f2a76ccd37 USB: yurex: fix out-of-bounds uaccess in read handler
   f24b02c3a081 USB: serial: keyspan_pda: fix modem-status error handling
   7aa69d8f50be USB: serial: cp210x: add another USB ID for Qivicon ZigBee stick
   7ce4add980f5 USB: serial: ch341: fix type promotion bug in ch341_control_in()
   1fb3563fac7e ahci: Disable LPM on Lenovo 50 series laptops with a too old BIOS
   1e39eb1bb1c0 vmw_balloon: fix inflation with batching
   33b9257a64fe ata: Fix ZBC_OUT all bit handling
   aae31a169efb ata: Fix ZBC_OUT command block check
   a3bb42c1bc6c staging: r8822be: Fix RTL8822be can't find any wireless AP
   e5bb39faedd7 staging: rtl8723bs: Prevent an underflow in rtw_check_beacon_data().
   908bfe10dd14 ibmasm: don't write out of bounds in read handler
   ccb242ec5020 mmc: dw_mmc: fix card threshold control configuration
   2c9fa8ff7045 mmc: sdhci-esdhc-imx: allow 1.8V modes without 100/200MHz pinctrl states
   6fce06b68b44 MIPS: Fix ioremap() RAM check
   0818c44b8df7 MIPS: Use async IPIs for arch_trigger_cpumask_backtrace()
   14ab9902422c MIPS: Call dump_stack() from show_regs()
   77f738e84293 ASoC: mediatek: preallocate pages use platform device
   99ebaf4f43dd media: rc: mce_kbd decoder: fix stuck keys
   1e92e813554a Linux 4.14.55
   b3ef356a096e Revert mm/vmstat.c: fix vmstat_update() preemption BUG
   7cf346dfdea5 sched, tracing: Fix trace_sched_pi_setprio() for deboosting
   32199c810655 staging: comedi: quatech_daqp_cs: fix no-op loop daqp_ao_insn_write()
   6d2b458d3d14 netfilter: nf_log: don't hold nf_log_mutex during user access
   ac6bfe418e04 mtd: cfi_cmdset_0002: Change erase functions to check chip good only
   b76d8aa04240 mtd: cfi_cmdset_0002: Change erase functions to retry for error
   eb638a002274 mtd: cfi_cmdset_0002: Change definition naming to retry write operation
   74ec37d03a12 dm: prevent DAX mounts if not supported
   0605fa6daa66 dm: set QUEUE_FLAG_DAX accordingly in dm_table_set_restrictions()
   3729e5561e1e dax: check for QUEUE_FLAG_DAX in bdev_dax_supported()
   8214347c260b dax: change bdev_dax_supported() to support boolean returns
   a19385766b4f fs: allow per-device dax status checking for filesystems
   5941026fc7a5 mtd: rawnand: mxc: set spare area size register explicitly
   c4097c64d03a media: cx25840: Use subdev host data for PLL override
   e82885490a61 Kbuild: fix # escaping in .cmd files for future Make
   3bb6397ba643 Revert "dpaa_eth: fix error in dpaa_remove()"
   42dc2a7bb72e f2fs: truncate preallocated blocks in error case
   a2c7493c7f31 media: vb2: core: Finish buffers at the end of the stream
   b16a6af97461 mm: hwpoison: disable memory error handling on 1GB hugepage
   07a1c2d1131b irq/core: Fix boot crash when the irqaffinity= boot parameter is passed on CPUMASK_OFFSTACK=y kernels(v1)
   50b4d984f55e HID: debug: check length before copy_to_user()
   c1d21fe74c25 HID: hiddev: fix potential Spectre v1
   702027291bf5 HID: i2c-hid: Fix "incomplete report" noise
   c894755d1bc8 block: cope with WRITE ZEROES failing in blkdev_issue_zeroout()
   3e3f1310c606 block: factor out __blkdev_issue_zero_pages()
   fba3230595cb ext4: check superblock mapped prior to committing
   54bf664ae4fa ext4: add more mount time checks of the superblock
   c24aab6d8664 ext4: add more inode number paranoia checks
   02945e49dc20 ext4: avoid running out of journal credits when appending to an inline file
   8a9ef17c0dc9 ext4: never move the system.data xattr out of the inode body
   deb465ec750b ext4: clear i_data in ext4_inode_info when removing inline data
   64804502d0e9 ext4: include the illegal physical block in the bad map ext4_error msg
   d69a9df614fc ext4: verify the depth of extent tree in ext4_find_extent()
   44a4bc970bfa ext4: only look at the bg_flags field if it is valid
   ac48bb9bc0a3 ext4: always check block group bounds in ext4_init_block_bitmap()
   ac93c718365a ext4: make sure bitmaps and the inode table don't overlap with bg descriptors
   3150e8913b95 ext4: always verify the magic number in xattr blocks
   0dc148230f38 ext4: add corruption check in ext4_xattr_set_entry()
   0321e68838d7 jbd2: don't mark block as modified if the handle is out of credits
   b541f470d4bd drm/udl: fix display corruption of the last line
   3cb81bce2191 drm: Use kvzalloc for allocating blob property memory
   748144f35514 cifs: Fix slab-out-of-bounds in send_set_info() on SMB2 ACE setting
   28cada984c0e cifs: Fix infinite loop when using hard mount option
   f5f485d888d5 cifs: Fix memory leak in smb2_set_ea()
   ff533735af1d cifs: Fix use after free of a mid_q_entry
   5d8ddc819c84 vfio: Use get_user_pages_longterm correctly
   0ce6c4646371 drbd: fix access after free
   2b6eff5923ce s390: Correct register corruption in critical section cleanup
   e6cf7e687285 scsi: target: Fix truncated PR-in ReadKeys response
   6e51bfa95086 scsi: sg: mitigate read/write abuse
   54f1da1ff034 tracing: Fix missing return symbol in function_graph output
   48b019a51ab8 mm: hugetlb: yield when prepping struct pages
   6fe74fb8af89 userfaultfd: hugetlbfs: fix userfaultfd_huge_must_wait() pte access
   5893f4c3fb78 Linux 4.14.54
   88b01cac4add net: dsa: b53: Add BCM5389 support
   28b64cc7a846 net/sonic: Use dma_mapping_error()
   4888ced6b749 platform/x86: asus-wmi: Fix NULL pointer dereference
   0d5e04e239ad sched/core: Require cpu_active() in select_task_rq(), for user tasks
   e4c55e0e6a75 sched/core: Fix rules for running on online && !active CPUs
   93b84462eadf fs: clear writeback errors in inode_init_always
   ae14c044587e perf bpf: Fix NULL return handling in bpf__prepare_load()
   be5af6bec31a perf test: "Session topology" dumps core on s390
   d689ad5c91af net: qmi_wwan: Add Netgear Aircard 779S
   d20dcd2f1135 atm: zatm: fix memcmp casting
   3ee6bd9411a6 iwlwifi: pcie: compare with number of IRQs requested for, not number of CPUs
   4abab5dca723 ipvs: fix buffer overflow with sync daemon and service
   27aa533f24e9 netfilter: nft_limit: fix packet ratelimiting
   510e1e8020a8 s390/dasd: use blk_mq_rq_from_pdu for per request data
   db73501ebc3a netfilter: ebtables: handle string from userspace with care
   e36bc9930d85 afs: Fix directory permissions check
   4cf1fbcdef7f xfrm6: avoid potential infinite loop in _decode_session6()
   693d06dffb43 mtd: rawnand: fix return value check for bad block status
   0ed70f206449 ARM: dts: imx6q: Use correct SDMA script for SPI5 core
   259cc05cce43 netfilter: nf_tables: use WARN_ON_ONCE instead of BUG_ON in nft_do_chain()
   5acd64888e02 netfilter: ip6t_rpfilter: provide input interface for route lookup
   3f8e85fbbaa5 netfilter: don't set F_IFACE on ipv6 fib lookups
   2fc45ef96287 md: remove special meaning of ->quiesce(.., 2)
   ce57466d323b md: allow metadata update while suspending.
   7c435e224530 md: use mddev_suspend/resume instead of ->quiesce()
   feabea216559 md: move suspend_hi/lo handling into core md code
   cc091f3fbbdb md: don't call bitmap_create() while array is quiesced.
   e44e4cf3a8db md: always hold reconfig_mutex when calling mddev_suspend()
   b8d8cde449fd netfilter: nf_tables: fix NULL-ptr in nf_tables_dump_obj()
   44956f98fd8b netfilter: nf_tables: add missing netlink attrs to policies
   082711fa3178 netfilter: nf_tables: fix memory leak on error exit return
   174757e28b7b netfilter: nf_tables: increase nft_counters_enabled in nft_chain_stats_replace()
   d3a9b8a51181 netfilter: nf_tables: disable preemption in nft_update_chain_stats()
   491b1a866e4a netfilter: nft_meta: fix wrong value dereference in nft_meta_set_eval
   2b93cb2861de netfilter: nf_tables: bogus EBUSY in chain deletions
   4ae6a7afae53 netfilter: nf_tables: don't assume chain stats are set when jumplabel is set
   365e73e07fba netfilter: nft_compat: fix handling of large matchinfo size
   ea200cdd6056 netfilter: nft_compat: prepare for indirect info storage
   1ea5ed0cadca netfilter: nf_tables: nft_compat: fix refcount leak on xt module
   1d795d1241d3 drm/i915: Enable provoking vertex fix on Gen9 systems.
   78e7000fe63f drm/amdgpu: Refactor amdgpu_vram_mgr_bo_invisible_size helper
   a1bf87cfb6ea drm/amdgpu: Use kvmalloc_array for allocating VRAM manager nodes array
   af597bb61370 drm/atmel-hlcdc: check stride values in the first plane
   7d0ed747bc56 drm/qxl: Call qxl_bo_unref outside atomic context
   dd19ea36f596 drm/amdgpu: fix the missed vcn fw version report
   40e2064b8fc7 drm/amdgpu: Add APU support in vi_set_vce_clocks
   ce686c42476e drm/amdgpu: Add APU support in vi_set_uvd_clocks
   b141de45e2dc vt: prevent leaking uninitialized data to userspace via /dev/vcs*
   b124a1c182fa serdev: fix memleak on module unload
   3ff8e558ba7b serial: 8250_pci: Remove stalled entries in blacklist
   2a7a8556b3b4 staging: android: ion: Return an ERR_PTR in ion_map_kernel
   c034d161fa63 n_tty: Access echo_* variables carefully.
   d105fb8c8894 n_tty: Fix stall at n_tty_receive_char_special().
   716382f1c1ea xhci: Fix kernel oops in trace_xhci_free_virt_device
   0a7db82ed9cc usb: typec: ucsi: Fix for incorrect status data issue
   47adbb26373f usb: typec: ucsi: acpi: Workaround for cache mode issue
   f2e9a38558d8 acpi: Add helper for deactivating memory region
   447294efb995 usb: dwc2: fix the incorrect bitmaps for the ports of multi_tt hub
   e80add5223dd USB: serial: cp210x: add Silicon Labs IDs for Windows Update
   15e449969537 USB: serial: cp210x: add CESINEL device ids
   874f2a7d412e usb: cdc_acm: Add quirk for Uniden UBC125 scanner
   fa745a1bd983 Linux 4.14.53
   4798e96b7646 xhci: Fix use-after-free in xhci_free_virt_device
   0b19825ffa28 dm thin: handle running out of data space vs concurrent discard
   fb4d8744a8f9 dm zoned: avoid triggering reclaim from inside dmz_map()
   0cfb151b9352 x86/efi: Fix efi_call_phys_epilog() with CONFIG_X86_5LEVEL=y
   251141340fd8 block: Fix cloning of requests with a special payload
   29413e068b2b block: Fix transfer when chunk sectors exceeds max
   804a0db743e0 slub: fix failure when we delete and create a slab cache
   cd41a8fac35a ALSA: hda/realtek - Fix the problem of two front mics on more machines
   c75f047560cb ALSA: hda/realtek - Add a quirk for FSC ESPRIMO U9210
   59bcd69457c7 ALSA: hda/realtek - Fix pop noise on Lenovo P50 & co
   69f96e9b570a ALSA: timer: Fix UBSAN warning at SNDRV_TIMER_IOCTL_NEXT_DEVICE ioctl
   3d1de95138fb Input: elantech - fix V4 report decoding for module with middle key
   524a0c6f2efd Input: elantech - enable middle button of touchpads on ThinkPad P52
   ade767642cc7 Input: elan_i2c_smbus - fix more potential stack buffer overflows
   8fa052853d48 Input: xpad - fix GPD Win 2 controller name
   1b241aa840df udf: Detect incorrect directory size
   d08dfdeaf49d xen: Remove unnecessary BUG_ON from __unbind_from_irq()
   fff76ff5e2b0 mm: fix devmem_is_allowed() for sub-page System RAM intersections
   6f23028480c4 mm/ksm.c: ignore STABLE_FLAG of rmap_item->address in rmap_walk_ksm()
   76022230aa64 rbd: flush rbd_dev->watch_dwork after watch is unregistered
   3c718460f5a3 pwm: lpss: platform: Save/restore the ctrl register over a suspend/resume
   24ab6e6858e7 Input: elan_i2c - add ELAN0618 (Lenovo v330 15IKB) ACPI ID
   a7f3c0abac1d ACPI / LPSS: Add missing prv_offset setting for byt/cht PWM devices
   9aa818d42bf5 video: uvesafb: Fix integer overflow in allocation
   fb7fecb4d90f NFSv4: Fix a typo in nfs41_sequence_process
   63715ead82c5 NFSv4: Revert commit 5f83d86cf531d ("NFSv4.x: Fix wraparound issues..")
   c92d800fc9c4 NFSv4: Fix possible 1-byte stack overflow in nfs_idmap_read_and_verify_message
   89864c2e7506 nfsd: restrict rd_maxcount to svc_max_payload in nfsd_encode_readdir
   c508ed236c8b media: dvb_frontend: fix locking issues at dvb_frontend_get_event()
   2c40fa51428b media: cx231xx: Add support for AverMedia DVD EZMaker 7
   06b846486668 media: v4l2-compat-ioctl32: prevent go past max size
   b28f53169c0f media: vsp1: Release buffers for each video node
   3564366d5509 perf/x86/intel/uncore: Add event constraint for BDX PCU
   5cb6105d2211 perf vendor events: Add Goldmont Plus V1 event file
   c3382e70a043 perf intel-pt: Fix packet decoding of CYC packets
   4e7b3632eafa perf intel-pt: Fix "Unexpected indirect branch" error
   65a163984abe perf intel-pt: Fix MTC timing after overflow
   e1587f178eb1 perf intel-pt: Fix decoding to accept CBR between FUP and corresponding TIP
   9e9db211cfb9 perf intel-pt: Fix sync_switch INTEL_PT_SS_NOT_TRACING
   5009bd5b9321 perf tools: Fix symbol and object code resolution for vdso32 and vdsox32
   f810961e06c6 arm: dts: mt7623: fix invalid memory node being generated
   18be8bd3aceb mfd: intel-lpss: Fix Intel Cannon Lake LPSS I2C input clock
   f79c97198b55 mfd: intel-lpss: Program REMAP register in PIO mode
   779d5f71c232 backlight: tps65217_bl: Fix Device Tree node lookup
   f893fca0a4b5 backlight: max8925_bl: Fix Device Tree node lookup
   3db7c40093f6 backlight: as3711_bl: Fix Device Tree node lookup
   b7261fc5f574 UBIFS: Fix potential integer overflow in allocation
   a23cf10d9abb ubi: fastmap: Correctly handle interrupted erasures in EBA
   b24d90f4d66d ubi: fastmap: Cancel work upon detach
   db04f92b6580 rpmsg: smd: do not use mananged resources for endpoints and channels
   dfeb333b590c md: fix two problems with setting the "re-add" device state.
   88896a963b4e rtc: sun6i: Fix bit_idx value for clk_register_gate
   b90f3eccf8aa clk: at91: PLL recalc_rate() now using cached MUL and DIV values
   a98f1946ea58 linvdimm, pmem: Preserve read-only setting for pmem devices
   a64be479ef08 scsi: zfcp: fix missing REC trigger trace on enqueue without ERP thread
   beadcfcca257 scsi: zfcp: fix missing REC trigger trace for all objects in ERP_FAILED
   60ed2673986f scsi: zfcp: fix missing REC trigger trace on terminate_rport_io for ERP_FAILED
   071f23266c30 scsi: zfcp: fix missing REC trigger trace on terminate_rport_io early return
   3d0d31e512f2 scsi: zfcp: fix misleading REC trigger trace where erp_action setup failed
   941e8bee351e scsi: zfcp: fix missing SCSI trace for retry of abort / scsi_eh TMF
   74da693a03ce scsi: zfcp: fix missing SCSI trace for result of eh_host_reset_handler
   9db2ad79b8f0 scsi: qla2xxx: Mask off Scope bits in retry delay
   9224583a5ee2 scsi: qla2xxx: Fix setting lower transfer speed if GPSC fails
   2829829c3e61 scsi: hpsa: disable device during shutdown
   2d329968a883 mm: fix __gup_device_huge vs unmap
   5d6ad5a03067 iio: sca3000: Fix an error handling path in 'sca3000_probe()'
   d55209eeb121 iio: adc: ad7791: remove sample freq sysfs attributes
   6101eea47bf3 Btrfs: fix return value on rename exchange failure
   af20e4eccc2d X.509: unpack RSA signatureValue field from BIT STRING
   7dfc81992a3e irqchip/gic-v3-its: Don't bind LPI to unavailable NUMA node
   88c4318d3633 time: Make sure jiffies_to_msecs() preserves non-zero time periods
   0fe95015fb93 MIPS: io: Add barrier after register read in inX()
   93e1297f9edc cpufreq: intel_pstate: Fix scaling max/min limits with Turbo 3.0
   55be2e6f50ac pinctrl: devicetree: Fix pctldev pointer overwrite
   7cc7ae5ce018 pinctrl: samsung: Correct EINTG banks order
   9e838b2e5a3c auxdisplay: fix broken menu
   226ffbf6135c PCI: pciehp: Clear Presence Detect and Data Link Layer Status Changed on resume
   fc0096bceae9 PCI: Add ACS quirk for Intel 300 series
   78923ba96779 PCI: Add ACS quirk for Intel 7th & 8th Gen mobile
   e4a424c550b6 PCI: hv: Make sure the bus domain is really unique
   43f6a09c8c5b MIPS: BCM47XX: Enable 74K Core ExternalSync for PCIe erratum
   c375d0bd6684 mtd: cfi_cmdset_0002: Avoid walking all chips when unlocking.
   fbbde9343c3e mtd: cfi_cmdset_0002: Fix unlocking requests crossing a chip boudary
   2f11a0c8c23a mtd: cfi_cmdset_0002: fix SEGV unlocking multiple chips
   80349943d56c mtd: cfi_cmdset_0002: Use right chip in do_ppb_xxlock()
   746c1362c434 mtd: cfi_cmdset_0002: Change write buffer to check correct value
   d097e5b5a1bc xprtrdma: Return -ENOBUFS when no pages are available
   786c8d79f34f RDMA/mlx4: Discard unknown SQP work requests
   a33699925122 IB/hfi1: Fix user context tail allocation for DMA_RTAIL
   964705c4a691 IB/hfi1: Optimize kthread pointer locking when queuing CQ entries
   2bd28cba43bd IB/hfi1: Reorder incorrect send context disable
   9e81f9a2cef1 IB/hfi1: Fix fault injection init/exit issues
   c32951862c1a IB/isert: fix T10-pi check mask setting
   7d4aaca8d093 IB/isert: Fix for lib/dma_debug check_sync warning
   c06f8c2173b2 IB/mlx5: Fetch soft WQE's on fatal error state
   96fb9b88385f IB/core: Make testing MR flags for writability a static inline function
   1c82abc1b26a IB/mlx4: Mark user MR as writable if actual virtual memory is writable
   49e1083214c6 IB/{hfi1, qib}: Add handling of kernel restart
   e884ed82995a IB/qib: Fix DMA api warning with debug kernel
   c41cb9cb5611 tpm: fix race condition in tpm_common_write()
   1bf1a5e21798 tpm: fix use after free in tpm2_load_context()
   1ed6871464b8 of: platform: stop accessing invalid dev in of_platform_device_destroy
   6ba51909693c of: unittest: for strings, account for trailing \0 in property length field
   4910cc250b4d of: overlay: validate offset from property fixups
   728ea2302acc ARM64: dts: meson: disable sd-uhs modes on the libretech-cc
   64df84dcf1e4 arm64: mm: Ensure writes to swapper are ordered wrt subsequent cache maintenance
   ee6ae5ac75ab arm64: kpti: Use early_param for kpti= command-line option
   cdfa28c29ad4 arm64: Fix syscall restarting around signal suppressed by tracer
   14ca7d344e27 ARM: dts: socfpga: Fix NAND controller node compatible for Arria10
   ae6647c78ff8 ARM: dts: socfpga: Fix NAND controller clock supply
   3482130d8d1e ARM: dts: socfpga: Fix NAND controller node compatible
   3db24d2e192f ARM: dts: Fix SPI node for Arria10
   eda170a9fe51 ARM: 8764/1: kgdb: fix NUMREGBYTES so that gdb_regs[] is the correct size
   c9debbd1a5b8 cxl: Disable prefault_mode in Radix mode
   971a55574b47 soc: rockchip: power-domain: Fix wrong value when power up pd with writemask
   56fbab60aa47 powerpc/fadump: Unregister fadump on kexec down path.
   3b185e667b52 cpuidle: powernv: Fix promotion from snooze if next state disabled
   a5d49dfb20c9 powerpc/powernv/cpuidle: Init all present cpus for deep states
   134e70c22eb0 powerpc/powernv: copy/paste - Mask SO bit in CR
   0e8bb91c6dd6 powerpc/powernv/ioda2: Remove redundant free of TCE pages
   919c9b8187bc powerpc/ptrace: Fix enforcement of DAWR constraints
   1ab9092356a1 powerpc/perf: Fix memory allocation for core-imc based on num_possible_cpus()
   c12d24161611 powerpc/ptrace: Fix setting 512B aligned breakpoints with PTRACE_SET_DEBUGREG
   5fefd9a5d97a powerpc/mm/hash: Add missing isync prior to kernel stack SLB switch
   69829f749a43 fuse: fix control dir setup and teardown
   3a37d85a90da fuse: don't keep dead fuse_conn at fuse_fill_super().
   2f7bf369b5f8 fuse: atomic_o_trunc should truncate pagecache
   02832578eb9d fuse: fix congested state leak on aborted connections
   a47c3c48769a printk: fix possible reuse of va_list variable
   affd84024cbe Bluetooth: hci_qca: Avoid missing rampatch failure with userspace fw loader
   3ffecef63d09 ipmi:bt: Set the timeout before doing a capabilities check
   26e03f8dcd34 branch-check: fix long->int truncation when profiling branches
   5eff5dbf3108 mips: ftrace: fix static function graph tracing
   5f7a15af646d ftrace/selftest: Have the reset_trigger code be a bit more careful
   ea0ac01f68aa lib/vsprintf: Remove atomic-unsafe support for %pCr
   9fcc267de242 clk: renesas: cpg-mssr: Stop using printk format %pCr
   0cf93821e34d thermal: bcm2835: Stop using printk format %pCr
   b2291a435c29 ASoC: cirrus: i2s: Fix {TX|RX}LinCtrlData setup
   b5e8118779e5 ASoC: cirrus: i2s: Fix LRCLK configuration
   7a1d79de77f5 ASoC: cs35l35: Add use_single_rw to regmap config
   040fecfd714a ASoC: dapm: delete dapm_kcontrol_data paths list before freeing it
   4e0ce7053a12 1wire: family module autoload fails because of upper/lower case mismatch.
   3c22218ed869 usb: do not reset if a low-speed or full-speed device timed out
   8b03376580c9 PM / OPP: Update voltage in case freq == old_freq
   ba0be5973f9e PM / core: Fix supplier device runtime PM usage counter imbalance
   b7ac0389770a PM / Domains: Fix error path during attach in genpd
   8ae5d476a3b7 signal/xtensa: Consistenly use SIGBUS in do_unaligned_user
   980899da5dc9 serial: sh-sci: Use spin_{try}lock_irqsave instead of open coding version
   60711b27c5f5 m68k/mac: Fix SWIM memory resource end address
   da9ad89c72d5 m68k/mm: Adjust VM area to be unmapped by gap size for __iounmap()
   ab693cc665ca x86: Call fixup_exception() before notify_die() in math_error()
   64d44661e220 x86/mce: Do not overwrite MCi_STATUS in mce_no_way_out()
   5b8e086891b0 x86/mce: Fix incorrect "Machine check from unknown source" message
   d292f33b7494 x86/mce: Check for alternate indication of machine check recovery on Skylake
   1d1dd2011adc x86/mce: Improve error message when kernel cannot recover
   dbb37d98b93d x86/xen: Add call of speculative_store_bypass_ht_init() to PV paths
   3ce79716a9ff x86/spectre_v1: Disable compiler optimizations over array_index_mask_nospec()
   a26899e0baa4 Linux 4.14.52
   1d26c112959f mm, page_alloc: do not break __GFP_THISNODE by zonelist reset
   250edf9580f7 fs/binfmt_misc.c: do not allow offset overflow
   7446344baafb vhost: fix info leak due to uninitialized memory
   d37c95f52911 HID: wacom: Correct logical maximum Y for 2nd-gen Intuos Pro large
   ab17de60ceaa HID: intel_ish-hid: ipc: register more pm callbacks to support hibernation
   e3e6bd6a1476 orangefs: report attributes_mask and attributes for statx
   f7e4328c3700 orangefs: set i_size on new symlink
   b8511dbff263 iwlwifi: fw: harden page loading code
   2d58a9ac892a x86/intel_rdt: Enable CMT and MBM on new Skylake stepping
   e6ef46cb8f01 w1: mxc_w1: Enable clock before calling clk_get_rate() on it
   0667483adeee libata: Drop SanDisk SD7UB3Q*G1001 NOLPM quirk
   27c0f1e5d94d libata: zpodd: small read overflow in eject_tray()
   1404d2e5dd36 cpufreq: governors: Fix long idle detection logic in load calculation
   c3c77b5db393 cpufreq: Fix new policy initialization during limits updates via sysfs
   67b46304b92b bdi: Move cgroup bdi_writeback to a dedicated low concurrency workqueue
   ba502bf2be45 blk-mq: reinit q->tag_set_list entry only after grace period
   00946218ffe3 nbd: use bd_set_size when updating disk size
   a477d00557f5 nbd: update size when connected
   edee2e826640 nbd: fix nbd device deletion
   ffb179cfbcf6 cifs: For SMB2 security informaion query, check for minimum sized security descriptor instead of sizeof FileAllInformation class
   2a8737336dbd CIFS: 511c54a2f69195b28afb9dd119f03787b1625bb4 adds a check for session expiry
   ae62f35def75 smb3: on reconnect set PreviousSessionId field
   dcde75924f25 smb3: fix various xid leaks
   e0b510a4170e x86/MCE: Fix stack out-of-bounds write in mce-inject.c: Flags_read()
   c5c00990f75d ALSA: hda: add dock and led support for HP ProBook 640 G4
   e6c9fd8cf7d0 ALSA: hda: add dock and led support for HP EliteBook 830 G5
   a3eb20df0e23 ALSA: hda - Handle kzalloc() failure in snd_hda_attach_pcm_stream()
   03701e42cc19 ALSA: hda/conexant - Add fixup for HP Z2 G4 workstation
   ff7eb857eeca ALSA: hda/realtek - Enable mic-mute hotkey for several Lenovo AIOs
   b1cf23c2c8db btrfs: scrub: Don't use inode pages for device replace
   4cb8942042bd btrfs: return error value if create_io_em failed in cow_file_range
   5f7e3b5b96f8 Btrfs: fix memory and mount leak in btrfs_ioctl_rm_dev_v2()
   55d29ff48222 Btrfs: fix clone vs chattr NODATASUM race
   c81a6be9da6d driver core: Don't ignore class_dir_create_and_add() failure.
   f3233cb2485c ext4: fix fencepost error in check for inode count overflow during resize
   21542545990c ext4: correctly handle a zero-length xattr with a non-zero e_value_offs
   02d45ec6e770 ext4: bubble errors from ext4_find_inline_data_nolock() up to ext4_iget()
   e81d371dac30 ext4: do not allow external inodes for inline data
   bd713edfc85d ext4: update mtime in ext4_punch_hole even if no blocks are released
   f70af46a52b3 ext4: fix hole length detection in ext4_ind_map_blocks()
   84f4d2c6dabe NFSv4.1: Fix up replays of interrupted requests
   5e8a5c30546f tls: fix use-after-free in tls_push_record
   244c10f9bfa3 hv_netvsc: Fix a network regression after ifdown/ifup
   5320e035d7bb net: in virtio_net_hdr only add VLAN_HLEN to csum_start if payload holds vlan
   2e5d3168821d udp: fix rx queue len reported by diag and proc interface
   91717ffc9057 socket: close race condition between sock_close() and sockfs_setattr()
   39f4ae01c1d6 tcp: verify the checksum of the first data segment in a new connection
   81d159444da5 net/sched: act_simple: fix parsing of TCA_DEF_DATA
   73c0eab8d215 net: dsa: add error handling for pskb_trim_rcsum
   6bcc27abfa62 ipv6: allow PMTU exceptions to local routes
   6e48ee025dc9 cdc_ncm: avoid padding beyond end of skb
   584b975af0d2 bonding: re-evaluate force_primary when the primary slave name changes
   33445c07cd45 Linux 4.14.51
   40c809774c69 tcp: do not overshoot window_clamp in tcp_rcv_space_adjust()
   7ab8fc065fff Btrfs: make raid6 rebuild retry more
   6bf89b7c6b31 Btrfs: fix scrub to repair raid6 corruption
   db5f02cc70a8 Revert "Btrfs: fix scrub to repair raid6 corruption"
   5e4b5b7194d3 ARM: kexec: fix kdump register saving on panic()
   bb7a554ae745 ARM: 8758/1: decompressor: restore r1 and r2 just before jumping to the kernel
   c7d7e3f62dbe ARM: 8753/1: decompressor: add a missing parameter to the addruart macro
   823e02ea7be5 efi/libstub/arm64: Handle randomized TEXT_OFFSET
   3f5c7add0d0f parisc: Move setup_profiling_timer() out of init section
   588977742078 sched/deadline: Make the grub_reclaim() function static
   fb49d19ed9da sched/debug: Move the print_rt_rq() and print_dl_rq() declarations to kernel/sched/sched.h
   96ef5c441494 drm/dumb-buffers: Integer overflow in drm_mode_create_ioctl()
   77a60e752ec8 locking/percpu-rwsem: Annotate rwsem ownership transfer by setting RWSEM_OWNER_UNKNOWN
   b3f84e48786d locking/rwsem: Add a new RWSEM_ANONYMOUSLY_OWNED flag
   c5746752bdbe clk: imx6ull: use OSC clock during AXI rate change
   0c5dfa51caf7 ARM: davinci: board-dm646x-evm: set VPIF capture card name
   eb6b0d6987fc ARM: davinci: board-dm646x-evm: pass correct I2C adapter id for VPIF
   ae7418dd09f9 ARM: davinci: dm646x: fix timer interrupt generation
   daf6bdb29d55 i2c: viperboard: return message count on master_xfer success
   cbfe697cdba9 i2c: pmcmsp: fix error return from master_xfer
   0c1885743a9b i2c: pmcmsp: return message count on master_xfer success
   7416dd78ad9a ARM: keystone: fix platform_domain_notifier array overrun
   a187b9c72d0c usb: musb: fix remote wakeup racing with suspend
   634b9e0aabd9 afs: Fix the non-encryption of calls
   a92a28636157 mtd: Fix comparison in map_word_andequal()
   9b9ac282bad9 x86/pkeys/selftests: Add a test for pkey 0
   b1f192a9e0cd x86/pkeys/selftests: Save off 'prot' for allocations
   cdfdffcaa8f9 x86/pkeys/selftests: Fix pointer math
   2dd0e5d62a6b x86/pkeys/selftests: Fix pkey exhaustion test off-by-one
   63bdea73bd52 x86/pkeys/selftests: Add PROT_EXEC test
   1fcd226878b3 x86/pkeys/selftests: Factor out "instruction page"
   777d513aaaf6 x86/pkeys/selftests: Allow faults on unknown keys
   9545530701c9 x86/pkeys/selftests: Remove dead debugging code, fix dprint_in_signal
   8b9f3a7404d7 x86/pkeys/selftests: Stop using assert()
   477c024fb33a x86/pkeys/selftests: Give better unexpected fault error messages
   4824a6473b85 x86/selftests: Add mov_to_ss test
   c25b160c8da6 x86/mpx/selftests: Adjust the self-test to fresh distros that export the MPX ABI
   2361f1f4fff2 x86/pkeys/selftests: Adjust the self-test to fresh distros that export the pkeys ABI
   847f0cacf21e objtool, kprobes/x86: Sync the latest <asm/insn.h> header with tools/objtool/arch/x86/include/asm/insn.h
   5aaee3e9ef32 uprobes/x86: Prohibit probing on MOV SS instruction
   ba202cd5a1f0 kprobes/x86: Prohibit probing on exception masking instructions
   12ddc2639e31 ocfs2: take inode cluster lock before moving reflinked inode from orphan dir
   553495752c82 proc/kcore: don't bounds check against address 0
   20e557fb26ca init: fix false positives in W+X checking
   86900754306e net sched actions: fix invalid pointer dereferencing if skbedit flags missing
   55e95f9ad712 ixgbe: return error on unsupported SFP module when resetting
   33d1c29e935e x86: Delay skip of emulated hypercall instruction
   ce44a4d5db63 KVM: Extend MAX_IRQ_ROUTES to 4096 for all archs
   29475c404b56 rxrpc: Fix the min security level for kernel calls
   b2abd2b98afc rxrpc: Fix error reception on AF_INET6 sockets
   b5b3188098b3 qede: Fix gfp flags sent to rdma event node allocation
   6618d064baca qed: Fix l2 initializations over iWARP personality
   dc5af7b0de98 tipc: eliminate KMSAN uninit-value in strcmp complaint
   6ca2fa569d65 agp: uninorth: make two functions static
   8223298c5075 cifs: smb2ops: Fix listxattr() when there are no EAs
   fcc0315abc95 arm64: Add MIDR encoding for NVIDIA CPUs
   56068475a7f0 can: dev: increase bus-off message severity
   4dc2437cdd6b net: aquantia: driver should correctly declare vlan_features bits
   a951cf4da896 x86/xen: Reset VCPU0 info pointer after shared_info remap
   ba29f3738e86 mac80211: use timeout from the AddBA response instead of the request
   e4bd54eb87c8 ARM: dts: cygnus: fix irq type for arm global timer
   36166445a922 driver core: add __printf verification to __ata_ehi_pushv_desc
   bc707b2d950b drm/omap: handle alloc failures in omap_connector
   771f573cc158 drm/omap: check return value from soc_device_match
   a490d0570df2 drm/omap: fix possible NULL ref issue in tiler_reserve_2d
   9631f32b61dc drm/omap: fix uninitialized ret variable
   ca3c09a74945 drm/omap: silence unititialized variable warning
   6ad69952d50d mac80211: Adjust SAE authentication timeout
   46d6ee12fa9d tee: check shm references are consistent in offset/size
   d40e177f29ab sh: fix build failure for J2 cpu with SMP disabled
   0742396317a0 sched/core: Introduce set_special_state()
   a614eaa465f7 spi: bcm2835aux: ensure interrupts are enabled for shared handler
   373a625cb3c4 RDMA/cma: Do not query GID during QP state transition to RTR
   3c54e919bd4f IB/hfi1: Fix memory leak in exception path in get_irq_affinity()
   77662d35b8c5 IB/hfi1 Use correct type for num_user_context
   194feed06bce smc: fix sendpage() call
   9c0f528f6bf0 ARM: OMAP1: ams-delta: fix deferred_fiq handler
   ac5e86401fea nvme: Set integrity flag for user passthrough commands
   b19122a48f01 nvme: fix potential memory leak in option parsing
   665d3c7f1e50 iommu/vt-d: fix shift-out-of-bounds in bug checking
   d98905c00c4c arm64: tegra: Make BCM89610 PHY interrupt as active low
   61ca60932d52 kthread, sched/wait: Fix kthread_parkme() wait-loop
   e7a65e899d52 stop_machine, sched: Fix migrate_swap() vs. active_balance() deadlock
   a814d1101042 parisc: drivers.c: Fix section mismatches
   609377d79e75 bpf, x64: fix memleak when not converging after image
   666776d5f45d scsi: vmw-pvscsi: return DID_BUS_BUSY for adapter-initated aborts
   09e12b91d12c hexagon: export csum_partial_copy_nocheck
   8794fff6f4d9 hexagon: add memset_io() helper
   960fe000b1d3 Input: atmel_mxt_ts - fix the firmware update
   f8d7147cb60f ARM: dts: logicpd-som-lv: Fix Audio Mute
   8c4511032ac1 ARM: dts: logicpd-som-lv: Fix WL127x Startup Issues
   691f0a6b3b09 ARM: OMAP2+: powerdomain: use raw_smp_processor_id() for trace
   061a560f3293 dt-bindings: panel: lvds: Fix path to display timing bindings
   b1ac1ca7352d ARM: davinci: board-dm355-evm: fix broken networking
   034a9e9b235e ARM: davinci: board-omapl138-hawk: fix GPIO numbers for MMC/SD lookup
   0bf4a2db2964 ARM: davinci: board-da850-evm: fix GPIO lookup for MMC/SD
   38ffd4d581ff ARM: davinci: board-da830-evm: fix GPIO lookup for MMC/SD
   13e4a2083d2b IB/core: Make ib_mad_client_id atomic
   5cb0ba254fee <linux/stringhash.h>: fix end_name_hash() for 64bit long
   3fbbdb44cead IB/rxe: avoid double kfree_skb
   b4f6e28c801a IB/rxe: add RXE_START_MASK for rxe_opcode IB_OPCODE_RC_SEND_ONLY_INV
   d2be557eef15 RDMA/iwpm: fix memory leak on map_info
   019ce25a4ee0 RDMA/cma: Fix use after destroy access to net namespace for IPoIB
   84f66378da20 IB/uverbs: Fix validating mandatory attributes
   fb019834bf8e IB: make INFINIBAND_ADDR_TRANS configurable
   b8500e6e8eb5 ib_srp: depend on INFINIBAND_ADDR_TRANS
   08088b8a0793 ib_srpt: depend on INFINIBAND_ADDR_TRANS
   4e2b7d1687c4 nvmet-rdma: depend on INFINIBAND_ADDR_TRANS
   8e6dba9166ed nvme: depend on INFINIBAND_ADDR_TRANS
   5d33c9d0fbd8 tipc: fix bug in function tipc_nl_node_dump_monitor
   f1e5bbe86ec1 i2c: sprd: Fix the i2c count issue
   201dc1345bfe i2c: sprd: Prevent i2c accesses after suspend is called
   40d526e67212 bpf: fix uninitialized variable in bpf tools
   09daf2df8db8 x86/cpu/intel: Add missing TLB cpuid values
   75b0436b24d6 ata: ahci: mvebu: override ahci_stop_engine for mvebu AHCI
   48c0bf9af161 libahci: Allow drivers to override stop_engine
   81d27c6ed637 KVM: arm/arm64: vgic: fix possible spectre-v1 in vgic_mmio_read_apr()
   e3d1002e14ce arm64: fix possible spectre-v1 in ptrace_hbp_get_event()
   06beec871640 blk-mq: fix sysfs inflight counter
   11ac08bd73eb HID: intel-ish-hid: use put_device() instead of kfree()
   d803d94a3fcd rpmsg: added MODULE_ALIAS for rpmsg_char
   bb7894391aad remoteproc: qcom: Fix potential device node leaks
   af22d1b7705a perf/x86/intel: Don't enable freeze-on-smi for PerfMon V1
   3958294c661e rds: ib: Fix missing call to rds_ib_dev_put in rds_ib_setup_qp
   9079946f612b selftests: ftrace: Add a testcase for multiple actions on trigger
   27e13b330dd2 HID: wacom: Release device resource data obtained by devres_alloc()
   2f3ca3908fc0 HID: lenovo: Add support for IBM/Lenovo Scrollpoint mice
   e6ec885f5f4c arm64: ptrace: remove addr_limit manipulation
   ef0fa5e6f52b net: ethtool: Add missing kernel doc for FEC parameters
   b1d0907c6fed thermal: int3403_thermal: Fix NULL pointer deref on module load / probe
   56dfe52e04a2 drm/amdkfd: fix clock counter retrieval for node without GPU
   73ea96beb771 ACPI / watchdog: Prefer iTCO_wdt on Lenovo Z50-70
   00a85086e51f ARM: dts: da850: fix W=1 warnings with pinmux node
   9148e21d7624 net: phy: marvell: clear wol event before setting it
   b0471926ceb5 powerpc/powernv/memtrace: Let the arch hotunplug code flush cache
   a4fa9189d608 dt-bindings: meson-uart: DT fix s/clocks-names/clock-names/
   71c8e7432a2e ACPI / PM: Blacklist Low Power S0 Idle _DSM for ThinkPad X1 Tablet(2016)
   d3bd4954286b usb: typec: ucsi: fix tracepoint related build error
   6d2707f26892 mm: memcg: add __GFP_NOWARN in __memcg_schedule_kmem_cache_create()
   cd2cc6d13170 kexec_file: do not add extra alignment to efi memmap
   d497efd805fe proc: revalidate kernel thread inodes to root:root
   a20600762300 mm, pagemap: fix swap offset value for PMD migration entry
   6385f2da8b3b scsi: isci: Fix infinite loop in while loop
   12f9bb1a273e scsi: storvsc: Set up correct queue depth values for IDE devices
   fc0d99fde0d2 parisc: time: Convert read_persistent_clock() to read_persistent_clock64()
   6bf379f26a54 vfs: Undo an overly zealous MS_RDONLY -> SB_RDONLY conversion
   bd595dbfcbd6 net: hns: Avoid action name truncation
   ea7246c25892 blkcg: init root blkcg_gq under lock
   b6126afd64d0 drm/msm: don't deref error pointer in the msm_fbdev_create error path
   5151a0c8d730 drm/msm/dsi: use correct enum in dsi_get_cmd_fmt
   be04f7301d8d drm/msm: Fix possible null dereference on failure of get_pages()
   625b5b8c76d4 ASoC: msm8916-wcd-analog: use threaded context for mbhc events
   705fd605237b netfilter: nf_tables: fix out-of-bounds in nft_chain_commit_update
   d11b04c34894 netfilter: nf_tables: NAT chain and extensions require NF_TABLES
   348288a2699c scsi: target: fix crash with iscsi target and dvd
   4fb7926bba58 scsi: megaraid_sas: Do not log an error if FW successfully initializes.
   af2cc1d2e75c scsi: iscsi: respond to netlink with unicast when appropriate
   3f64c0c502ef tipc: fix infinite loop when dumping link monitor summary
   9d5e2d69705f blkcg: don't hold blkcg lock when deactivating policy
   c5b6316c3f51 spi: cadence: Add usleep_range() for cdns_spi_fill_tx_fifo()
   5f4bf078e779 ASoC: topology: Check widget kcontrols before deref.
   ff3080bab10d xen: xenbus_dev_frontend: Really return response string
   d5cf1ed8d3ae ASoC: topology: Fix bugs of freeing soc topology
   bd8acfd77dd3 PCI: kirin: Fix reset gpio name
   150efd30c3a0 soc: bcm2835: Make !RASPBERRYPI_FIRMWARE dummies return failure
   305043739272 soc: bcm: raspberrypi-power: Fix use of __packed
   d066fd9d7e9b eCryptfs: don't pass up plaintext names when using filename encryption
   3f54483edea2 ASoC: rt5514: Add the missing register in the readable table
   9d33f89c40e9 clk: honor CLK_MUX_ROUND_CLOSEST in generic clk mux
   dccf9862a7f5 dt-bindings: dmaengine: rcar-dmac: document R8A77965 support
   20d681359337 dt-bindings: serial: sh-sci: Add support for r8a77965 (H)SCIF
   20d3d7fa75b2 dt-bindings: pinctrl: sunxi: Fix reference to driver
   5eeb26c58c0a doc: Add vendor prefix for Kieback & Peter GmbH
   3ca7dddaa13f spi: sh-msiof: Fix bit field overflow writes to TSCR/RSCR
   b3ccb8a77ed1 MIPS: dts: Boston: Fix PCI bus dtc warnings:
   ba041775a9a8 isofs: fix potential memory leak in mount option parsing
   d27cd5cb9b38 s390/smsgiucv: disable SMSG on module unload
   e7b720ef94d8 MIPS: io: Add barrier after register read in readX()
   dc94ac5fc410 fsnotify: fix ignore mask logic in send_to_group()
   025e42a5e7a3 perf report: Fix switching to another perf.data file
   7bb0c4bd79ab nfp: ignore signals when communicating with management FW
   d96da2acac5d MIPS: io: Prevent compiler reordering writeX()
   df5524e5483b x86: Add check for APIC access address for vmentry of L2 guests
   9b78e9ddc47a KVM: X86: fix incorrect reference of trace_kvm_pi_irte_update
   176ebf4df971 Input: synaptics-rmi4 - fix an unchecked out of memory error path
   65783949c813 clocksource/drivers/imx-tpm: Correct some registers operation flow
   cda6fd4d9382 Linux 4.14.50
   87883c89b405 crypto: omap-sham - fix memleak
   efc67e746b27 crypto: vmx - Remove overly verbose printk from AES XTS init
   1bc36d12a6ed crypto: vmx - Remove overly verbose printk from AES init routines
   b9705796e44b crypto: cavium - Limit result reading attempts
   072e8b1f58d5 crypto: cavium - Fix fallout from CONFIG_VMAP_STACK
   4854c879107c crypto: caam - fix size of RSA prime factor q
   f535e1c3b394 crypto: caam/qi - fix IV DMA mapping and updating
   9ed3135cab14 crypto: caam - fix IV DMA mapping and updating
   635ac89ea764 crypto: caam - fix DMA mapping dir for generated IV
   ed0a79561189 crypto: caam - strip input zeros from RSA input buffer
   3c42aa03cd6a Input: elan_i2c - add ELAN0612 (Lenovo v330 14IKB) ACPI ID
   c4168f192057 Input: goodix - add new ACPI id for GPD Win 2 touch screen
   53e4b19fcd0c kvm: x86: use correct privilege level for sgdt/sidt/fxsave/fxrstor access
   739ac8f4a516 tty: pl011: Avoid spuriously stuck-off interrupts
   5ee296fde55e vmw_balloon: fixing double free when batching mode is off
   a64ff0bea051 serial: 8250: omap: Fix idling of clocks for unused uarts
   804f09011069 serial: samsung: fix maxburst parameter for DMA transactions
   db30b8eb960a tty/serial: atmel: use port->name as name in request_irq()
   95b8204b4491 serial: sh-sci: Stop using printk format %pCr
   d6a9e699a3c2 usb: gadget: udc: renesas_usb3: disable the controller's irqs for reconnecting
   262af4fe6dff usb: gadget: function: printer: avoid wrong list handling in printer_write()
   874cb201d511 phy: qcom-qusb2: Fix crash if nvmem cell not specified
   cb6b5869658b Input: xpad - add GPD Win 2 Controller USB IDs
   5c2e9e9bf444 usb-storage: Add compatibility quirk flags for G-Technologies G-Drive
   c839680e8cbf usb-storage: Add support for FL_ALWAYS_SYNC flag in the UAS driver
   f31eb7298ba4 usbip: vhci_sysfs: fix potential Spectre v1
   1caeb5022449 NFC: pn533: don't send USB data off of the stack
   f1769a9ba4bf staging: android: ion: Switch to pr_warn_once in ion_buffer_destroy
   bd2742e83660 KVM: x86: pass kvm_vcpu to kvm_read_guest_virt and kvm_write_guest_virt_system
   b1bd9caf5e98 kvm: nVMX: Enforce cpl=0 for VMX instructions
   3d2f03393267 KVM: x86: introduce linear_{read,write}_system
   9791d9d7e2ac KVM: X86: Fix reserved bits check for MOV to CR3
   c7a372ddc3db gpio: No NULL owner
   7d970250cb8d af_key: Always verify length of provided sadb_key
   1cbd5ece0527 blkdev_report_zones_ioctl(): Use vmalloc() to allocate large buffers
   d02ae00ab6d0 netfilter: nf_tables: fix NULL pointer dereference on nft_ct_helper_obj_dump()
   70d7bbd9b504 Linux 4.14.49
   2abd4c3ed20d drm: set FMODE_UNSIGNED_OFFSET for drm files
   3fe4b0cf9383 PCI: hv: Do not wait forever on a device that has disappeared
   dd4be396b8c5 cls_flower: Fix incorrect idr release when failing to modify rule
   c931c9aee2f3 rtnetlink: validate attributes in do_setlink()
   fa11d992533b virtio-net: fix leaking page for gso packet during mergeable XDP
   2b8b2b26c378 net/mlx5e: When RXFCS is set, add FCS data into checksum calculation
   155cd575588b virtio-net: correctly check num_buf during err path
   e2d47fa107f9 tun: Fix NULL pointer dereference in XDP redirect
   43153f090165 net/mlx4: Fix irq-unsafe spinlock usage
   31c1e078e3ca virtio-net: correctly transmit XDP buff after linearizing
   0dbd822f6440 net-sysfs: Fix memory leak in XPS configuration
   900679988fdf net: phy: broadcom: Fix auxiliary control register reads
   8d80a839c179 ipv6: sr: fix memory OOB access in seg6_do_srh_encap/inline
   c5e1541ef6fe vrf: check the original netdevice for generating redirect
   6d431f6e6880 vhost: synchronize IOTLB message with dev cleanup
   f2bb94069f3e team: use netdev_features_t instead of u32
   60473d7034ee sctp: not allow transport timeout value less than HZ/5 for hb_timer
   0a3608662ff6 qed: Fix mask for physical address in ILT entry
   0d751192afde packet: fix reserve calculation
   1c2c7767e876 net: usb: cdc_mbim: add flag FLAG_SEND_ZLP
   8acb0708ab6d net: phy: broadcom: Fix bcm_write_exp()
   c85df6eb6e86 net/packet: refine check for priv area size
   95159ad9635a net: metrics: add proper netlink validation
   341c03313a9a net: ipv4: add missing RTA_TABLE to rtm_ipv4_policy
   be1f1827a89a netdev-FAQ: clarify DaveM's position for stable backports
   c6fae49a447c kcm: Fix use-after-free caused by clonned sockets
   ebe79f9cf44f isdn: eicon: fix a missing-check bug
   3f8f52c5f200 ipv6: omit traffic class when calculating flow hash
   ff33a32949c8 ipv4: remove warning in ip_recv_error
   f1409a73b6f4 ipmr: properly check rhltable_init() return value
   f200de49dff8 ip6_tunnel: remove magic mtu value 0xFFF8
   989986db8f66 ip6mr: only set ip6mr_table from setsockopt when ip6mr_new_table succeeds
   cbf561634db3 enic: set DMA mask to 47 bit
   0d2eb422fe35 dccp: don't free ccid2_hc_tx_sock struct in dccp_disconnect()
   d591263c7947 bnx2x: use the right constant
   128f0d700569 be2net: Fix error detection logic for BE3
   d58cf41924e8 kconfig: Avoid format overflow warning from GCC 8.1
   058dd233b559 btrfs: define SUPER_FLAG_METADUMP_V2
   af760b568ef1 mmap: relax file size limit for regular files
   16d7ceb04b55 mmap: introduce sane default mmap limits
   7cb10a4ce724 scsi: sd_zbc: Avoid that resetting a zone fails sporadically
   1110636ed2d9 scsi: sd_zbc: Fix potential memory leak
   2c6025ebc7fd Linux 4.14.48
   1dd9566d9542 powerpc/mm/slice: Fix hugepage allocation at hint address on 8xx
   399e039634a4 powerpc/mm/slice: Enhance for supporting PPC32
   b8b23e8926b3 powerpc/mm/slice: create header files dedicated to slices
   e14db4feb035 powerpc/mm/slice: Remove intermediate bitmap copy
   c95c5f419e57 drm/i915: Disable LVDS on Radiant P845
   72571f26757e drm/i915/lvds: Move acpi lid notification registration to registration phase
   ffedc7ade784 drm/psr: Fix missed entry in PSR setup time table.
   5890358c60e5 intel_th: Use correct device when freeing buffers
   792be048cf9c Revert "rt2800: use TXOP_BACKOFF for probe frames"
   a7027b7d698e mm/huge_memory.c: __split_huge_page() use atomic ClearPageDirty()
   4a1b66bcec03 IB/core: Fix error code for invalid GID entry
   bdf1daba5f62 hwtracing: stm: fix build error on some arches
   1f8c4ed2dba5 stm class: Use vmalloc for the master map
   a70f19b29560 scsi: scsi_transport_srp: Fix shost to rport translation
   8a6576219da8 MIPS: prctl: Disallow FRE without FR with PR_SET_FP_MODE requests
   f7a36d7ac838 MIPS: ptrace: Fix PTRACE_PEEKUSR requests for 64-bit FGRs
   ed5bd13bec35 MIPS: lantiq: gphy: Drop reboot/remove reset asserts
   6d67a723ef37 iio: adc: select buffer for at91-sama5d2_adc
   838f25e3d9f2 iio:kfifo_buf: check for uint overflow
   30ab9366f763 iio:buffer: make length types match kfifo types
   d30819abd1c4 iio: ad7793: implement IIO_CHAN_INFO_SAMP_FREQ
   a6f81fcb2c39 tcp: avoid integer overflows in tcp_rcv_space_adjust()
   96b086a7bfe5 kbuild: clang: disable unused variable warnings only when constant
   9b6eda5797b1 platform/chrome: cros_ec_lpc: remove redundant pointer request
   a81920c73eb0 ASoC: Intel: sst: remove redundant variable dma_dev_name
   bcc9c6f03201 rtlwifi: rtl8192cu: Remove variable self-assignment in rf.c
   8524af02d132 drm/amd/powerplay: Fix enum mismatch
   074e30a3fc09 dma-buf: remove redundant initialization of sg_table
   5a92c6e3e2f3 drm/i915: Always sanity check engine state upon idling
   151b144bc602 kbuild: clang: remove crufty HOSTCFLAGS
   bc342bc02954 cfg80211: further limit wiphy names to 64 bytes
   9808c97d3cb4 selinux: KASAN: slab-out-of-bounds in xattr_getsecurity
   c6a95f37d3a0 tracing: Make the snapshot trigger work with instances
   8441a0014a29 tracing: Fix crash when freeing instances with event triggers
   2be683020be4 Input: elan_i2c_smbus - fix corrupted stack
   9a85abc79483 Input: synaptics - add Lenovo 80 series ids to SMBus
   9c707c93e179 Input: synaptics - add Intertouch support on X1 Carbon 6th and X280
   af504c5a88b3 Input: synaptics - Lenovo Thinkpad X1 Carbon G5 (2017) with Elantech trackpoints should use RMI
   88859f6cc5c4 Input: synaptics - Lenovo Carbon X1 Gen5 (2017) devices should use RMI
   d1db300b8ffc xfs: detect agfl count corruption and reset agfl
   d9a59eac3fd6 xfs: convert XFS_AGFL_SIZE to a helper function
   54978daa9dc5 PCI: hv: Fix 2 hang issues in hv_compose_msi_msg()
   085fc1967b56 Revert "pinctrl: msm: Use dynamic GPIO numbering"
   4cbe6caa4c6c x86/MCE/AMD: Cache SMCA MISC block addresses
   5df3a1b9f87b x86/mce/AMD: Carve out SMCA get_block_address() code
   6bcf3b066c69 objtool: Fix "noreturn" detection for recursive sibling calls
   806a730c0b0b objtool: Detect RIP-relative switch table references, part 2
   afb5e5c8a125 objtool: Detect RIP-relative switch table references
   2c26d5784e71 objtool: Support GCC 8 switch tables
   1bea53df12c4 objtool: Support GCC 8's cold subfunctions
   b968dd7650c8 mm: fix the NULL mapping case in __isolate_lru_page()
   6a19487d5a93 fix io_destroy()/aio_complete() race

(From OE-Core rev: a08dac36a04e7fa1c14c9a770cabe1a0d9386b1a)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-28 10:30:28 +01:00
Bruce Ashfield
98d584a1c8 linux-yocto/4.12: update to v4.12.28
Integrating Paul Gortmaker's -stable updates to 4.12 that comprise the
following changes:

    f4fd7580487d Linux 4.12.28
    d15dfc7d192f net: mvneta: eliminate wrong call to handle rx descriptor error
    c7a79cbd2b44 net: mvneta: use proper rxq_number in loop on rx queues
    f65f1aed2ef2 net: mvneta: clear interface link status on port disable
    402f4ea26693 tcp: add tcp_ooo_try_coalesce() helper
    035eddf502ef tcp: call tcp_drop() from tcp_data_queue_ofo()
    c224a5920d55 tcp: detect malicious patterns in tcp_collapse_ofo_queue()
    7c5d21c36cec tcp: avoid collapses in tcp_prune_queue() if possible
    f999a5cfc3eb tcp: free batches of packets in tcp_prune_ofo_queue()
    3471d76b1128 net: add rb_to_skb() and other rb tree helpers
    fcd212157f50 libnvdimm, pfn: fix start_pad handling for aligned namespaces
    d90d61722843 libnvdimm, dax: fix 1GB-aligned namespaces vs physical misalignment
    df6a2110169e drm/sun4i: Fix error path handling
    d2d90272068d drm/i915: Flush pending GTT writes before unbinding
    55e3ba836aee powerpc/perf: Dereference BHRB entries safely
    32c5b092ac7e clk: sunxi: sun9i-mmc: Implement reset callback for reset controls
    a472f9b5c546 pinctrl: cherryview: Mask all interrupts on Intel_Strago based systems
    32f9f01a1b49 spi: a3700: Fix clk prescaling for coefficient over 15
    39e2376e2774 spi: xilinx: Detect stall with Unknown commands
    104bf43e4653 Revert "parisc: Re-enable interrupts early"
    2c6a864363b5 parisc: Hide Diva-built-in serial aux and graphics card
    4e92abc4d371 parisc: Align os_hpmc_size on word boundary
    8df2ad333664 ALSA: usb-audio: Add native DSD support for Esoteric D-05X
    2d7184d7f8b1 ALSA: rawmidi: Avoid racy info ioctl via ctl device
    425708ccc413 mfd: twl6040: Fix child-node lookup
    d99aacab316b mfd: twl4030-audio: Fix sibling-node lookup
    cd2ca561cdd7 mfd: cros ec: spi: Don't send first message too soon
    f5d153b69e6a crypto: mcryptd - protect the per-CPU queue with a lock
    01b2634b17f4 acpi, nfit: fix health event notification
    1170a37d5339 ACPI: APEI / ERST: Fix missing error handling in erst_reader()
    0cf5d1f5ce10 bpf: fix incorrect sign extension in check_alu_op()
    39cc58874bfc bpf, sparc: fix usage of wrong reg for load_skb_regs after call
    8c570303798e bpf, ppc64: do not reload skb pointers in non-skb context
    05bd23b36b88 bpf, s390x: do not reload skb pointers in non-skb context
    da92e092ffa7 platform/x86: asus-wireless: send an EV_SYN/SYN_REPORT between state changes
    ab3980511fa0 thermal/drivers/hisi: Fix multiple alarm interrupts firing
    ed7ec377cb05 thermal/drivers/hisi: Simplify the temperature/step computation
    b4322338048d thermal/drivers/hisi: Fix kernel panic on alarm interrupt
    e9b4b6019cc2 thermal/drivers/hisi: Fix missing interrupt enablement
    01f1870f5aa8 IB/opa_vnic: Properly return the total MACs in UC MAC list
    59522364dab2 IB/opa_vnic: Properly clear Mac Table Digest
    84cf0ea1cb2a cpuidle: fix broadcast control when broadcast can not be entered
    fdb28a72dafa rtc: set the alarm to the next expiring timer
    245a952509f6 tcp: fix under-evaluated ssthresh in TCP Vegas
    ebe28298b759 clk: sunxi-ng: sun6i: Rename HDMI DDC clock to avoid name collision
    c31c122f7744 staging: greybus: light: Release memory obtained by kasprintf
    7900ee86e495 net: ipv6: send NS for DAD when link operationally up
    0c8d7ea9c7db ibmvnic: Set state UP
    eb3237c59a98 fm10k: ensure we process SM mbx when processing VF mbx
    a076534d71b3 vfio/pci: Virtualize Maximum Payload Size
    0e8c3cf3f83e i40e: fix client notify of VF reset
    2e3bad157461 scsi: lpfc: PLOGI failures during NPIV testing
    022e3fe9ac98 scsi: lpfc: Fix secure firmware updates
    9e7341570bf9 fm10k: fix mis-ordered parameters in declaration for .ndo_set_vf_bw
    af88451b2676 ASoC: codecs: msm8916-wcd-analog: fix module autoload
    2fc38deb5bed ASoC: img-parallel-out: Add pm_runtime_get/put to set_fmt callback
    4529e660bc83 tracing: Exclude 'generic fields' from histograms
    3485fd44f243 PCI/AER: Report non-fatal errors only to the affected endpoint
    64e367610786 Bluetooth: BT_HCIUART now depends on SERIAL_DEV_BUS
    47663fe61367 Bluetooth: hci_uart_set_flow_control: Fix NULL deref when using serdev
    58adf4fe65f8 md: always set THREAD_WAKEUP and wake up wqueue if thread existed
    e9f7be0e550e block,bfq: Disable writeback throttling
    c09fcc304541 IB/rxe: put the pool on allocation failure
    392f4c00adca IB/rxe: check for allocation failure on elem
    179099ba0d69 ixgbe: fix use of uninitialized padding
    e2e131da3b6b i40e: use the safe hash table iterator when deleting mac filters
    757ad831c703 igb: check memory allocation failure
    e156a3afb676 PM / OPP: Move error message to debug level
    9bd17b3b4bb6 PCI: Create SR-IOV virtfn/physfn links before attaching driver
    54da833e63b0 scsi: mpt3sas: Fix IO error occurs on pulling out a drive from RAID1 volume created on two SATA drive
    929cc7c94e3b scsi: cxgb4i: fix Tx skb leak
    84aa72a81de3 PCI: Avoid bus reset if bridge itself is broken
    3932edaebc65 net: phy: at803x: Change error to EINVAL for invalid MAC
    e9bd07539e3f rtc: pl031: make interrupt optional
    9f77ab2f562c crypto: lrw - Fix an error handling path in 'create()'
    59e5a2e7eec9 crypto: crypto4xx - increase context and scatter ring buffer elements
    13c0df6a379d clk: sunxi-ng: sun5i: Fix bit offset of audio PLL post-divider
    68e13e506d6e clk: sunxi-ng: nm: Check if requested rate is supported by fractional clock
    3996734fc715 drm: Add retries for lspcon mode detection
    77190a6d2d57 backlight: pwm_bl: Fix overflow condition
    d3b4b8043ff7 optee: fix invalid of_node_put() in optee_driver_init()
    752218b19686 posix-timer: Properly check sigevent->sigev_notify
    16c39a33a5c6 ACPI / APEI: adjust a local variable type in ghes_ioremap_pfn_irq()
    ba0b2e6cbb82 Linux 4.12.27
    feea4d492d73 usb: musb: da8xx: fix babble condition handling
    6d8d83c4ec67 ath10k: fix build errors with !CONFIG_PM
    00e875f83a3c ath9k: fix tx99 potential info leak
    01cf18e17476 lightnvm: pblk: fix min size for page mempool
    4413575d48be lightnvm: pblk: initialize debug stat counter
    87135620a06a lightnvm: pblk: fix changing GC group list for a line
    3b1abf7d20f6 icmp: don't fail on fragment reassembly time exceeded
    4be8ae2da97b IB/ipoib: Fix lockdep issue found on ipoib_ib_dev_heavy_flush
    7d284754ed54 IB/ipoib: Grab rtnl lock on heavy flush when calling ndo_open/stop
    634b3e0fefd7 RDMA/cma: Avoid triggering undefined behavior
    f9f24086ba42 macvlan: Only deliver one copy of the frame to the macvlan interface
    aba3745fc9b0 udf: Avoid overflow when session starts at large offset
    4a9bf3983ef9 md-cluster: fix wrong condition check in raid1_write_request
    e08da1a3d9d5 raid5-ppl: check recovery_offset when performing ppl recovery
    a6b9b60622b0 scsi: bfa: integer overflow in debugfs
    a6adc19ff5a4 scsi: sd: change allow_restart to bool in sysfs interface
    d23a6641b217 scsi: sd: change manage_start_stop to bool in sysfs interface
    be59ef05ed52 rtl8188eu: Fix a possible sleep-in-atomic bug in rtw_disassoc_cmd
    9257df5ece69 vt6655: Fix a possible sleep-in-atomic bug in vt6655_suspend
    5d0d0b750520 IB/core: Fix calculation of maximum RoCE MTU
    950215a22a7a scsi: scsi_devinfo: Add REPORTLUN2 to EMC SYMMETRIX blacklist entry
    40dd3da9911d raid5: Set R5_Expanded on parity devices as well as data.
    d63147f7712f pinctrl: adi2: Fix Kconfig build problem
    b25a34c20291 dev/dax: fix uninitialized variable build warning
    3b928d69ed7c tty fix oops when rmmod 8250
    6fd73bd5acc5 ipv4: ipv4_default_advmss() should use route mtu
    e8552a24db2a soc: mediatek: pwrap: fix compiler errors
    023499e5fff8 powerpc/xmon: Check before calling xive functions
    7092b9c569ee powerpc/perf/hv-24x7: Fix incorrect comparison in memord
    d85bb8676f60 serdev: ttyport: enforce tty-driver open() requirement
    dcc2d9b7db19 mfd: mxs-lradc: Fix error handling in mxs_lradc_probe()
    d7630ac47698 scsi: hpsa: destroy sas transport properties before scsi_host
    a2133c918746 scsi: hpsa: cleanup sas_phy structures in sysfs when unloading
    37686080a0c8 PCI: Detach driver before procfs & sysfs teardown on device remove
    585eb66776b7 RDMA/cxgb4: Declare stag as __be32
    06a21042a540 xfs: fix incorrect extent state in xfs_bmap_add_extent_unwritten_real
    98da748f2c95 xfs: fix log block underflow during recovery cycle verification
    9aaebfb38490 l2tp: cleanup l2tp_tunnel_delete calls
    4fd806e81bcb nvme: use kref_get_unless_zero in nvme_find_get_ns
    377d9449f868 platform/x86: hp_accel: Add quirk for HP ProBook 440 G4
    89e9f0fce2a4 liquidio: fix kernel panic in VF driver
    85aad298ecc2 samples/bpf: adjust rlimit RLIMIT_MEMLOCK for xdp1
    767f9da42096 ARM64: dts: meson-gxbb-odroidc2: fix usb1 power supply
    65743dd02181 mtd: spi-nor: stm32-quadspi: Fix uninitialized error return code
    0501313aa697 btrfs: tests: Fix a memory leak in error handling path in 'run_test()'
    563e097ec448 btrfs: avoid null pointer dereference on fs_info when calling btrfs_crit
    3faadbbe68b1 btrfs: undo writable superblocke when sprouting fails
    7028f26c6034 btrfs: Explicitly handle btrfs_update_root failure
    3f0a4dfc8eb9 Bluetooth: hci_ldisc: Fix another race when closing the tty.
    abb921b20fa0 Ib/hfi1: Return actual operational VLs in port info query
    879b18ebb8f4 bcache: fix wrong cache_misses statistics
    744eb7bd3386 bcache: explicitly destroy mutex while exiting
    653aad5c1702 media: usbtv: fix brightness and contrast controls
    c4d5c7940953 GFS2: Take inode off order_write list when setting jdata flag
    2e510357e1a6 scsi: scsi_debug: write_same: fix error report
    56c755841ee6 misc: pci_endpoint_test: Avoid triggering a BUG()
    b55d52393e28 misc: pci_endpoint_test: Fix failure path return values in probe
    aeac8e4c0c15 thermal/drivers/step_wise: Fix temperature regulation misbehavior
    aaca414203c4 ASoC: rsnd: rsnd_ssi_run_mods() needs to care ssi_parent_mod
    0587e5a36d00 ppp: Destroy the mutex when cleanup
    4a7735ca4455 clk: tegra: Fix cclk_lp divisor register
    0006385aadd0 clk: tegra: Use readl_relaxed_poll_timeout_atomic() in tegra210_clock_init()
    6ae2754d991b blk-mq-sched: dispatch from scheduler IFF progress is made in ->dispatch
    ec4585cdc959 clk: hi6220: mark clock cs_atb_syspll as critical
    f203d6193f5c clk: imx6: refine hdmi_isfr's parent to make HDMI work on i.MX6 SoCs w/o VPU
    c9ce9a4d1734 clk: imx: imx7d: Fix parent clock for OCRAM_CLK
    5f200f317929 clk: mediatek: add the option for determining PLL source clock
    6f7955a0aa2a crypto: tcrypt - fix buffer lengths in test_aead_speed()
    40734099baaa xfs: truncate pagecache before writeback in xfs_setattr_size()
    165b974bd72a iommu/amd: Limit the IOVA page range to the specified addresses
    a2e1fcc04fb6 badblocks: fix wrong return value in badblocks_set if badblocks are disabled
    75920b77b802 target/file: Do not return error for UNMAP if length is zero
    ca73c042292d target:fix condition return in core_pr_dump_initiator_port()
    8e2ee3f5ff33 iscsi-target: fix memory leak in lio_target_tiqn_addtpg()
    f1ae60da96df target/iscsi: Fix a race condition in iscsit_add_reject_from_cmd()
    d5adfbee09dc target/iscsi: Detect conn_cmd_list corruption early
    edd7fdf83184 platform/x86: intel_punit_ipc: Fix resource ioremap warning
    da2aa58cb07b powerpc/pseries/vio: Dispose of virq mapping on vdevice unregister
    2ae1d60028ab powerpc/ipic: Fix status get and status clear
    1d0cfd6df447 powerpc/opal: Fix EBUSY bug in acquiring tokens
    88189efa7ee7 netfilter: ipvs: Fix inappropriate output of procfs
    39254860365c iommu/mediatek: Fix driver name
    c82f9ea385ab PCI: dwc: Fix enumeration end when reaching root subordinate
    5dad0dfd17df PCI: Do not allocate more buses than available in parent
    4a917030981d powerpc: Don't preempt_disable() in show_cpuinfo()
    0bc0d339ff6c powerpc/powernv/cpufreq: Fix the frequency read by /proc/cpuinfo
    7842177fdc43 PCI/PME: Handle invalid data when reading Root Status
    301c44edb5a1 dmaengine: ti-dma-crossbar: Correct am335x/am43xx mux value type
    2761bc37b1c2 ASoC: Intel: Skylake: Fix uuid_module memory leak in failure case
    c42830902147 PM / s2idle: Clear the events_check_enabled flag
    9c70ec2c413d scsi: aacraid: address UBSAN warning regression
    3819c3c756b0 scsi: aacraid: use timespec64 instead of timeval
    e262d43729be rtc: pcf8563: fix output clock rate
    3ecf1bdeb61e video: fbdev: au1200fb: Return an error code if a memory allocation fails
    d56242baba22 video: fbdev: au1200fb: Release some resources if a memory allocation fails
    3b53b4e4c0ab video: udlfb: Fix read EDID timeout
    f50c8ab6dc0d fbdev: controlfb: Add missing modes to fix out of bounds access
    bfbfacb318cd sfc: don't warn on successful change of MAC
    ae058bf77e63 HID: cp2112: fix broken gpio_direction_input callback
    91590951dec1 ext4: fix crash when a directory's i_size is too small
    4fae0491c35c ext4: fix fdatasync(2) after fallocate(2) operation
    df19eb58d7be dmaengine: dmatest: fix container_of member in dmatest_callback
    100cb4506fb4 dmaengine: dmatest: move callback wait queue to thread context
    4d873e954ac0 eeprom: at24: change nvmem stride to 1
    b90737b239b0 iw_cxgb4: only insert drain cqes if wq is flushed
    6b1f48a27656 dm: fix various targets to dm_register_target after module __init resources created
    26c2e6fc10f1 scsi: core: Fix a scsi_show_rq() NULL pointer dereference
    04039227baf7 nfsd: auth: Fix gid sorting when rootsquash enabled
    143fdc512ac6 NFS: Fix unstable write completion
    7482c56f758c NFS: Use an atomic_long_t to count the number of commits
    3ef4a32040bf nfs: don't wait on commit in nfs_commit_inode() if there were no commit requests
    4a70dd38f444 xhci: Don't add a virt_dev to the devs array before it's fully allocated
    fa7944fd5601 usb: xhci: fix TDS for MTK xHCI1.1
    80aa2eb9b51b ceph: drop negative child dentries before try pruning inode's alias
    b9db0ab47687 mmc: core: apply NO_CMD23 quirk to some specific cards
    ff1b82c5314c usbip: fix stub_send_ret_submit() vulnerability to null transfer_buffer
    cea2ad71f37b usbip: fix stub_rx: harden CMD_SUBMIT path to handle malicious input
    1e5edda8ccd3 usbip: fix stub_rx: get_pipe() to validate endpoint number
    3ac1e4089c48 USB: core: prevent malicious bNumInterfaces overflow
    2479ee21bf60 USB: uas and storage: Add US_FL_BROKEN_FUA for another JMicron JMS567 ID
    b3fd05a19818 tracing: Allocate mask_str buffer dynamically
    5eb37713e296 kernel: make groups_sort calling a responsibility group_info allocators
    d87a616735d8 cifs: fix NULL deref in SMB2_read
    d22121ce1210 crypto: rsa - fix buffer overread when stripping leading zeroes
    0ad02bd37731 mfd: fsl-imx25: Clean up irq settings during removal

(From OE-Core rev: 408daaa6d0fb2147a541b0f14d73b362bd848d3c)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-28 10:30:28 +01:00
Bruce Ashfield
71d02e915f linux-yocto: add qemuarm64 preempt-rt BSP definition
Adding the preempt-rt BSP definition for qemuarm64 to allow -rt testing
on this ARCH.

(From OE-Core rev: 320f77b6648b9289ce1170a46a956cf8752bf63a)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-28 10:30:28 +01:00
Bruce Ashfield
c8bc6f29a7 kernel-yocto: restore BSP audit visibility
During the re-working of kernel fragments and status output cleanup the
visibility for BSP level errors was dropped/removed.

The audit phase can detect errors, redefinition and invalid
configuration fragments. We control the visibility of these reports via
the existing KCONF_BSP_AUDIT_LEVEL variable.

By default, errors and invalid configuration values will be displayed as
a warning. If redefinition values are to be shown the audit level must
be raised above the deafult value of '2'. We inhibit these by default,
since there are many valid reasons why a BSP will change a default /
base config .. and showing them offers no value to the BSP user.

(From OE-Core rev: 4933b686b0f75d6841630917a2d90832df41cac7)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-28 10:30:28 +01:00
Joshua Watt
f13ff77f4d classes/kernel-yocto: Cleanup getstatusoutput usage
Replace usage of os.utils.getstatusoutput() with direct subprocess
calls. Pass a modified environment and working directory where necessary
to bypass the need to execute in a shell.

(From OE-Core rev: 21de5cc43cfedc703e5bc0515507a6dae36afb74)

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-28 10:30:28 +01:00
Bruce Ashfield
0b3dabc5aa linux-yocto/standard: enable bpf configs in standard kernel
Enabling the bpf feature for the standard kernel configurations
by default. Systemd (and other) userspace applications are looking
for BPF more often, and we get warnings such as this:

  [   12.810554] systemd[1]: File
    /lib/systemd/system/systemd-journald.service:36 configures an IP
    firewall (IPAddressDeny=any), but the local system does not support
    BPF/cgroup based firewalling.

The configs don't add much overhead to the kernel, so we enable them
by default.

(From OE-Core rev: 2f43139e7e0db2522c88b41875c32949f66ca1e8)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-28 10:30:28 +01:00
Bruce Ashfield
51742a36c5 linux-yocto/4.14: rt: Revert mm/vmstat.c: fix vmstat_update() preemption BUG
Reverting mm/vmstat.c: fix vmstat_update() preemption BUG, to fix
failures in the 4.14 -rt kernel.

(From OE-Core rev: 2f06c9eadc17e4d2b4d81b0a4088e9f0e8556217)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-28 10:30:28 +01:00
Andre McCurdy
826ca01dfa cairo: merge cairo.inc into cairo recipe
Remove SUMMARY_${PN} and DESCRIPTION_${PN}, which duplicate the
default SUMMARY and DESCRIPTION.

(From OE-Core rev: f668491275ac0ba30366652b6747f87776e92120)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-28 10:30:28 +01:00
Andre McCurdy
4304d0bfd8 cairo: merge cairo-fpu.inc into cairo.inc
(From OE-Core rev: 88cc5d488d5e187852fc10086a1afce6dcfc4cd6)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-28 10:30:28 +01:00
Kai Kang
cd28f5fbf7 sstate.bbclass: make SSTATE_PRUNE_OBSOLETEWORKDIR could be overwritten
Define variable SSTATE_PRUNE_OBSOLETEWORKDIR with '?=' in sstate.bbclass,
then it could be overwritten by user configuration.

(From OE-Core rev: 22af59c9bfec31b31027ebd2a4da162f481aa6b5)

Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-28 10:30:28 +01:00
Mingli Yu
0ff014926f bluez5: Fix ptest hang
The below test hangs infinitely
$ ./run-ptest

Actually it stuck at test-gatt unit test and
the detailed test output as below:
$ unit/test-gatt -p  /robustness/unkown-request -d
/robustness/unkown-request - init
/robustness/unkown-request - setup
/robustness/unkown-request - setup complete
/robustness/unkown-request - run
GATT: < 02 17 00                                         ...
bt_gatt_server:MTU exchange complete, with MTU: 23
GATT: > 03 00 02                                         ...
PDU: = 03 00 02                                         ...
GATT: < bf 00

Considering the /robustness/unkown-request test
actually does no action, update to raw_pdu() to
fix the hang issue.

(From OE-Core rev: b6801f95800bf37f4b960123ba649322fc5cd5d3)

Signed-off-by: Mingli Yu <Mingli.Yu@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-28 10:30:28 +01:00
Hongxu Jia
b7fb4aee25 terminal.bbclass: use var-SHELL as the shebang of wrapper script
The devshell.bbclass set var-SHELL to var-DEVSHELL, and terminal.bbclass
initial var-SHELL with `bash'. Keep sync with it, use var-SHELL rather
than hardcoded `/bin/sh' as the shebang of wrapper script.

On Ubuntu host, default shell is dash (/bin/sh -> dash), even though
we assign var-SHELL with `/bin/bash', the wrapper script is still dashism.

(From OE-Core rev: 27e2ede65f1193e49f9483b08a55495d88740a65)

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-28 10:30:28 +01:00
Mike Looijmans
f3f4a5f29b busybox/mdev-mount.sh: Fix partition detect and cleanup mountpoint on fail
This fixes issues mainly seen when mounting eMMC devices:

The wildcard /sys/block/${DEVBASE}/${DEVBASE}*1 matches both "mmcblk0p1"
and "mmcblk0boot1" for example, and this results in syntax errors. Fix this
by searching for a "partition" file instead, which only exists for real
partitions and not 'fakes' like the eMMC extra's.

When mount fails, the mountpoint file is left behind, causing later attempts
at auto-mounting it to fail. If mount fails, remove the mountpoint, leaving
the system in the state as it was before the mount attempt.

(From OE-Core rev: 8645c0419456c1bd3ae15a9a7dd2b2e9a960eaf4)

Signed-off-by: Mike Looijmans <mike.looijmans@topic.nl>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-28 10:30:28 +01:00
Yi Zhao
62917950b7 blktrace: Security fix CVE-2018-10689
CVE-2018-10689: blktrace (aka Block IO Tracing) 1.2.0, as used with the
Linux kernel and Android, has a buffer overflow in the dev_map_read
function in btt/devmap.c because the device and devno arrays are too
small, as demonstrated by an invalid free when using the btt program
with a crafted file.

References:
https://nvd.nist.gov/vuln/detail/CVE-2018-10689

Patch from:
https://git.kernel.org/pub/scm/linux/kernel/git/axboe/blktrace.git/commit/?id=d61ff409cb4dda31386373d706ea0cfb1aaac5b7

(From OE-Core rev: 6a7ed8b1db10abd38bdd20c77a8f27427d381156)

Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-28 10:30:28 +01:00
Hongxu Jia
c0abc412bc package.bbclass: only one hardlink of separated debug info file in each directory
While multiple hardlinks of binary located in different dirs,
there are also multiple hardlinks of separated debug info file
with the same binary name in same debug dirs. But in each dir,
only one debug file with original name works. Because all of
binary hardlinks have one `.gnu_debuglink' which is added in
`splitdebuginfo'. It caused gdb could not find debugging
symbols.

[Before the patch]
$ find .
./usr/bin/foo
./usr/bin/foo-hd1
./usr/bin/.debug
./usr/bin/.debug/foo
./usr/bin/.debug/foo-hd1
./usr/libexec/foo-hd2
./usr/libexec/.debug
./usr/libexec/.debug/foo-hd2

$ readelf --debug-dump usr/libexec/foo-hd2
Contents of the .gnu_debuglink section:
  Separate debug info file: foo

$ gdb usr/libexec/foo-hd2
Reading symbols from usr/libexec/foo-hd2...(no debugging symbols found)...done.
[Before the patch]

[Apply the patch]
$ find .
./usr/bin/foo
./usr/bin/foo-hd1
./usr/bin/.debug
./usr/bin/.debug/foo
./usr/libexec/foo-hd2
./usr/libexec/.debug
./usr/libexec/.debug/foo

$ gdb usr/libexec/foo-hd2
Reading symbols from usr/libexec/foo-hd2...Reading symbols from usr/libexec/.debug/foo...done.
[Apply the patch]

(From OE-Core rev: d4eaf42f7708f8d3a31a04d958bd7420dd7dd6b9)

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-28 10:30:28 +01:00
Paul Eggleton
87d3a9685d bitbake: parse/ast: ensure saved event handlers really do get restored
In finalize() we save event handlers, register the ones relevant to the
recipe being finalised, trigger events, and then restore the handlers so
that one recipe's custom handlers (actually implemented within a class
inherited by the recipe) do not affect other recipes. However, if an
exception occurs during parsing, the saved handlers were not being
restored. Use a try...finally block to ensure that the handlers are
always restored.

This issue became apparent since in OpenEmbedded-Core we have recently
introduced a find_intercepts() handler for the
bb.event.RecipePreFinalise event in image-postinst-intercepts.bbclass
that images and old-style SDK recipes will end up inheriting. So far it
doesn't seem that the the error has manifested itself in normal builds,
but when parsing OE-Core recipes in the OE layer index it has:
core-image-rt-* image recipes were parsed which in the default
configuration raise SkipRecipe. The next non-image recipe that is parsed
will trigger a real exception, because the find_intercepts() handler is
still registered and gets fired, but in the context of the new recipe
the POSTINST_INTERCEPTS_PATHS variable is not set, and the code in
find_intercepts() is written with the reasonable assumption that that
isn't possible given that the class itself sets a default, and thus it
fails.

(Bitbake rev: e5f1f8fa201774e0c3c554d59b277baa2128708f)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-24 07:53:14 +01:00
Chen Qi
34ec08dc28 utils.bbclass: fix KeyError exception
The following statement was accidently removed. Add it back.

  values['ml'] = ['']

This patch fixes the following error.

  Exception: KeyError: 'ml'

(From OE-Core rev: 0791c4d39edbedaa493a9fc6aa6e7415f14980bb)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-24 07:53:14 +01:00
Mingli Yu
950d863a6e mingetty: fix usrmerge install path
Update /sbin to $base_sbindir to fix the
below warning when usrmerge enabled in
DISTRO_FEATURES.

WARNING: mingetty-1.08-r3 do_package: mingetty: NOT adding alternative provide /usr/sbin/getty: /usr/sbin/mingetty does not exist
WARNING: mingetty-1.08-r3 do_package: QA Issue: mingetty: Files/directories were installed but not shipped in any package:
  /sbin
  /usr/sbin

(From OE-Core rev: 35b92053c5bc0f4ae4b92ca75456535ff78797a2)

Signed-off-by: Mingli Yu <Mingli.Yu@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-24 07:53:14 +01:00
Mingli Yu
238e027f20 mdadm: fix usrmerge install path
Update /lib to $nonarch_base_libdir to fix
the below error when usrmerge enabled in
DISTRO_FEATURES.

ERROR: mdadm-4.0-r0 do_package_qa: QA Issue: mdadm package is not obeying usrmerge distro feature. /lib should be relocated to /usr. [usrmerge]

(From OE-Core rev: 4b2c86ff0031effd4cfdb477f67bc213d39ae0fd)

Signed-off-by: Mingli Yu <Mingli.Yu@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-24 07:53:14 +01:00
Joshua Watt
409c8a3265 swig: Remove superfluous python dependency
The actual dependency on native Python and is handled by inheriting
python3native

(From OE-Core rev: 115a6dea664c9b18fd19b79659029afb52b1a660)

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-24 07:53:14 +01:00
Richard Purdie
317bf10d4d scripts: Add autobuilder worker test script
Add a script which can be run on new autobuilder workers to check all needed configuration
is present. Designed to be run in a repo where bitbake/oe-core are already present.

This means when we add new autobuilder workers, we can quickly test whether all the needed
funcationality to support the standard yocto project autobuilder (ie. the standard
OE-Core tests) are present.

It uses images prebuilt in a previous release to cut build/testing time.

(From OE-Core rev: c9dd81fe9c88d8d9881686e60c17e6fab4b230f1)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-24 07:53:14 +01:00
Chen Qi
bd37421604 util-linux: upgrade 2.32 -> 2.32.1
(From OE-Core rev: 711f867b1d036aba04e839e955e0fa9d81d3c794)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-23 18:02:23 +01:00
Robert Yang
d32da706eb distcc: 3.3 -> 3.3.2
(From OE-Core rev: 3e9fd6ebd1a22885688908d32bddf21ebafb4d30)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-23 18:02:23 +01:00
Robert Yang
11f58843df elfutils: 0.172 -> 0.173
(From OE-Core rev: ab3f8e58485d0e90da3a0255d771737852ba345b)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-23 18:02:23 +01:00
Robert Yang
5306acd218 dbus-test: 1.12.8 -> 1.12.10
(From OE-Core rev: de09efcfac778cbdc5b2c582d16fc75206e96111)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-23 18:02:23 +01:00
Robert Yang
cf3d05f378 dbus: 1.12.8 -> 1.12.10
(From OE-Core rev: 35104cc5899faf3b39cd44c1c6192f8adeaf7cab)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-23 18:02:23 +01:00
Robert Yang
632836de27 pciutils: 3.6.1 -> 3.6.2
(From OE-Core rev: 3347b7e5641646348e06a6f4c603d83c6be867c9)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-23 18:02:23 +01:00
Robert Yang
66452579a1 diffstat: 1.61 -> 1.62
Refresh avoid-check-user-break-cc.patch to fix fuzz warning.

(From OE-Core rev: 6d9ab12ac113f0f33289200ca3c9df24d9fc1cc2)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-23 18:02:23 +01:00
Robert Yang
6b1f822445 strace: 4.23 -> 4.24
Remove backported patch 0001-tests-fix-build-with-fresh-glibc.patch.

(From OE-Core rev: 20b45274681892cc761bbef87360dc1088d040a1)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-23 18:02:23 +01:00
Richard Leitner
a0de8a6fb8 oeqa/core/decorator: add skipIfInDataVar
skipIfInDataVar will skip a test if a value is in a certain variable.

(From OE-Core rev: 10b935c713748346aea6c36c2f41e0ae6c320821)

Signed-off-by: Richard Leitner <richard.leitner@skidata.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-23 18:02:23 +01:00
He Zhe
6185e3d23c ltp: Fix ftest06 too small file path string
The name string is too small to contain normal full path names and causes
the following failure.

"ftest06     2  TFAIL  :  ftest06.c:223: Can't chdir(): errno=ENOENT(2): No such file or directory"

(From OE-Core rev: 24faf8b9bbee82033d5f636f254e59b8d3d31ea5)

Signed-off-by: He Zhe <zhe.he@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-23 18:02:23 +01:00
Andre McCurdy
f54806852b openssl: remove dependency on relative_symlinks class
Although the relative_symlinks class converts any absolute symlinks
in ${D} into relative symlinks automatically, it's a little clearer
to create relative symlinks directly where possible.

(From OE-Core rev: 959b4d30b5b11e4a098654b0d4469bbdf01b3812)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-23 18:02:23 +01:00
Robert Yang
9b0bc119b7 compress_doc.bbclass: Clean up getstatusoutput usage
Replace usage of oe.utils.getstatusoutput() with direct subprocess calls.

(From OE-Core rev: f1a1b31add242380490023c2ee7eec1b4fbcd85b)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-23 18:02:23 +01:00
Robert Yang
1ad6e2cd04 psplash: Clean up getstatusoutput usage
Replace usage of oe.utils.getstatusoutput() with direct subprocess calls.

(From OE-Core rev: 2a06abb258768504a3ad97f61c987709227d7109)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-23 18:02:23 +01:00
Robert Yang
37b1ed066d lib/oe/patch.py: Clean up getstatusoutput usage
We can't use subprocess.check_output() or subprocess.call() here since the one
who invokes runcmd() needs handle CmdError() exception (error out or ignore
it).

(From OE-Core rev: c3e7739987d804f7865428442479d5bece5ff2dd)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-23 18:02:23 +01:00
Robert Yang
7cb2ece8b5 lib/oe/gpg_sign.py: Clean up getstatusoutput usage
Replace usage of oe.utils.getstatusoutput() with direct subprocess calls.

(From OE-Core rev: 90c730a898f11adb2ecd377cdd913af83123bcb7)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-23 18:02:23 +01:00
Richard Purdie
00b360c75b utils: Fix patch merging error
The previous patch has duplicate split calls and one needs to be removed
to avoid failures

(From OE-Core rev: 02c8d048cbab38a48f698504d0f5e912d3d24a36)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-23 17:58:59 +01:00
Richard Purdie
99d40ac092 utils: Rely on get_multilib_datastore() to get the original datastore
get_multilib_datastore() should be able to handle the original datastore
correctly now so rely upon this rather than custom coding.

(From OE-Core rev: 2ae85af480066e252fca01f3005ecac2ff37a8d4)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-23 17:58:59 +01:00
Richard Purdie
2988d730a3 glibc-ld: Simplify/cleanup multilib handling to use library functions
We have library functions to handle multilib variables/datastores, lets
use them so we have good common functions.

(From OE-Core rev: 774219567987956fb7bbb50e64eb6cebef1efe5b)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-23 17:58:59 +01:00
Richard Purdie
5875571f03 lib/oe/utils: Fix get_multilib_datastore to work for original tune
Currently the original datastore returned by this function doesn't
always work as the tune isn't set back to the original. Fix it
to work like all_multilib_tune_list() in utils.bbclass and correct
the data returned.

(From OE-Core rev: 4e1dc858fbf671ef27089a2b9bcdc965fe19d698)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-23 17:58:59 +01:00
Richard Purdie
14dfb7ea59 glibc: Improve ldd loader specification
Currently if a tune isn't specified in the table, the loader defaults for the
architecture are used which may or may not match our path specification. This
leads to general confusion.

Change the code to use the linuxloader class which works of architecture, not
tune.

This still isn't perfect as n32/x32 aren't covered but its an improvement
to listing all tunes here.

(From OE-Core rev: 46a6da24b51426bedd9af8a2d63b2992b9d3fa5a)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-23 17:58:59 +01:00
Richard Purdie
516697bed6 linuxloader: Convert to python function
We could do with one decent general purpose python function to query the
path to the dynamic loader. Convert the shell code into python.

Also correct baremetal to return "None", not musl loaders.

(From OE-Core rev: 73fab4ede12d8ae31be72b5cb4ab29d7ef7dae17)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-23 17:58:59 +01:00
Rasmus Villemoes
7b23f6124b lib/oe/package.py: use bb.utils.break_hardlinks helper
This does the same thing, but is more efficient in case st_nlinks
is (already) 1.

Depends on bitbake commit 7ae93cf40ab91965147055100432961436bce46c .

(From OE-Core rev: a09f8e32044c8daec2d2fb3ff0e830c21402df6e)

Signed-off-by: Rasmus Villemoes <rv@rasmusvillemoes.dk>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-23 09:04:29 +01:00
Rasmus Villemoes
9873b21e89 package.bbclass: use bb.utils.break_hardlinks helper
This does the same thing, but is more efficient in case st_nlinks
is (already) 1.

Depends on bitbake commit 7ae93cf40ab91965147055100432961436bce46c .

(From OE-Core rev: 38180b5c1044be13458fb927ad1babae61e4c51f)

Signed-off-by: Rasmus Villemoes <rv@rasmusvillemoes.dk>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-23 09:04:29 +01:00
Richard Purdie
04d2f75b4a sanity.conf: Update minimum bitbake version to 1.39.1
We need this for the new break_hardlinks helper function.

(From OE-Core rev: d6ccefd347bf31acf8d31996d796717acb4da74f)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-23 09:04:29 +01:00
Richard Purdie
d2ef693c9a bitbake: bitbake: Bump version 1.39.0 -> 1.39.1
(Bitbake rev: 49c3fd2489867c09dec6919a25b53d935a8204bb)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-23 09:02:54 +01:00
Joshua Watt
cbe2d3cb0a bitbake: daemonize: Flush stdio on exit
In spite of a comment suggesting otherwise, os._exit() does not flush
buffered output from file descriptors before exiting the process like
os.exit() does. This means that any un-flushed output is lost in the
daemon process, in particular the traceback from any thrown exceptions,
making debugging exceptions in the daemon quite difficult.

The solution is to flush stdout and stderr before exiting.

(Bitbake rev: fcc8e1ff53696f78dd64b4ee32f3c433b7a47df0)

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-23 08:50:23 +01:00
Karsten Strand
b6bc5f068a bitbake: toaster: Fix comparison in recipe template
Use == instead of = when comparing task outcome to OUTCOME_FAILED.

Prior to this fix the recipe template would cause a TemplateSyntaxError
exception.

(Bitbake rev: a53ffec4ed3d0f9221bca398e20e8f480fb2b325)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-23 08:50:23 +01:00
Hongxu Jia
a11008a90d patch: fix CVE-2018-6952
(From OE-Core rev: 1314a6953aa647706107557faaba8574e307d2bd)

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-23 07:50:01 +01:00
Jagadeesh Krishnanjanappa
227a6c1acb perl: CVE-2018-12015
Remove existing files before overwriting them

Archive should extract only the latest same-named entry.
Extracted regular file should not be writtent into existing block
device (or any other one).

https://rt.cpan.org/Ticket/Display.html?id=125523

Affects perl <= 5.26.2

(From OE-Core rev: 037b205e89ae4c7d638a5c15d64f60e16facbaa2)

Signed-off-by: Jagadeesh Krishnanjanappa <jkrishnanjanappa@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-23 07:50:01 +01:00
Jagadeesh Krishnanjanappa
79c8c36471 libarchive: CVE-2017-14503
Reject LHA archive entries with negative size.

Affects libarchive = 3.3.2

(From OE-Core rev: d6479f5d2e6de17bac8662f5057d87176524c6fa)

Signed-off-by: Jagadeesh Krishnanjanappa <jkrishnanjanappa@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-23 07:50:01 +01:00
Jagadeesh Krishnanjanappa
2128c21a0c libsndfile1: CVE-2017-14634
double64_init: Check psf->sf.channels against upper bound

This prevents division by zero later in the code.

While the trivial case to catch this (i.e. sf.channels < 1) has already
been covered, a crafted file may report a number of channels that is
so high (i.e. > INT_MAX/sizeof(double)) that it "somehow" gets
miscalculated to zero (if this makes sense) in the determination of the
blockwidth. Since we only support a limited number of channels anyway,
make sure to check here as well.

CVE-2017-14634

Closes: #318

Affects libsndfile1 = 1.0.28

(From OE-Core rev: eee93149a49274dc3deed7d89754ee4bda240575)

Signed-off-by: Jagadeesh Krishnanjanappa <jkrishnanjanappa@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-23 07:50:01 +01:00
Jagadeesh Krishnanjanappa
ae3da5fa84 libsndfile1: CVE-2017-14245 CVE-2017-14246
sfe_copy_data_fp: check value of "max" variable for being normal
and check elements of the data[] array for being finite.

Both checks use functions provided by the <math.h> header as declared
by the C99 standard.

Fixes #317
CVE-2017-14245
CVE-2017-14246

Affects libsndfile1 = 1.0.28

(From OE-Core rev: ad842a3a0e6ef78fb9449362753ae3592c775192)

Signed-off-by: Jagadeesh Krishnanjanappa <jkrishnanjanappa@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-23 07:50:01 +01:00
Andre McCurdy
5bd9e094ec gnutls: drop PACKAGECONFIG options for SSL v3 and TLS v1.3
By including PACKAGECONFIG options, the recipe takes responsibility
for defining the default state of these options. Although the recipe
currently aligns with the gnutls defaults (ie both disabled) tracking
new gnutls releases will be a maintenance effort. Unless there's a
clear reason to do otherwise, it seems safer to leave the choice of
which SSL/TLS versions to enable by default up to the gnutls
developers.

(From OE-Core rev: 4c1d03eb226aa838622852b70a87260ab1ac9d91)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-23 07:50:01 +01:00
Andre McCurdy
57191c57c2 gnutls: drop obsolete configure.ac patch
>From gnutls 3.5.8 onwards, the code in configure.ac has been passing
"basename $i" to sed, rather than "echo $i". Since the full ${srcdir}
path is not being processed, there's no risk of unexpected matches.

  478179316b

(From OE-Core rev: bce938174d1207685c67c40e341a36ab1158e6eb)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-23 07:50:01 +01:00
Andre McCurdy
48e3b5fa99 gnutls: merge gnutls.inc into the gnutls recipe
(From OE-Core rev: 0119335af368dffa42d9cda673e7aaafbc6f657f)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-23 07:50:00 +01:00
Richard Purdie
652d25c09d oeqa/runtime/ldd: Clean up test
* Merge the two tests together as having them separate is pointless
* Test that ldd runs correctly
* Add in a dependency on the "ldd" package being installed instead of
  the sdk tools feature

(From OE-Core rev: 80db456387fb63ee74d53a9719ab3997432f4c80)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-23 07:50:00 +01:00
Changqing Li
f99a77a2db u-boot: patch for CVE-2018-1000205
(From OE-Core rev: a8db39548d9985962e4f8764b10856af5226d210)

Signed-off-by: Changqing Li <changqing.li@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-23 07:50:00 +01:00
Andre McCurdy
fa3529e117 perl: avoid using += with an over-ride
Using += with an over-ride can be a source of confusion so try to
avoid the construct in core recipes.

(From OE-Core rev: 2588c2aae11b7b480022dc11575295fdc792bf3f)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-23 07:50:00 +01:00
Changqing Li
a3928b3463 freetype: Upgrade 2.9 -> 2.9.1
The -config script can now be disabled from configure.

Drop backported patch now merged.

(From OE-Core rev: f2c1d7109014ef9d804c3a6967b96143834ff7bd)

Signed-off-by: Changqing Li <changqing.li@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-23 07:50:00 +01:00
Jens Rehsack
292471701b libxml-parser-perl: fix "...contains bad RPATH"
The perl distribution "XML-Parser" relies for configuration
on the tooling of Devel::CheckLib - which is not aware of
sysroot locations nor of reasonable compiler/link definitions
from outside.

This causes

    ERROR: libxml-parser-perl-2.44-r0 do_package_qa: QA Issue: package libxml-parser-perl contains bad RPATH ${BUILDDIR}/tmp/work/core2-64-poky-linux/libxml-parser-perl/2.44-r0/recipe-sysroot/usr/lib in file ${BUILDDIR}/tmp/work/core2-64-poky-linux/libxml-parser-perl/2.44-r0/packages-split/libxml-parser-perl/usr/lib/perl/vendor_perl/5.24.4/auto/XML/Parser/Expat/Expat.so
    package libxml-parser-perl contains bad RPATH ${BUILDDIR}/tmp/work/core2-64-poky-linux/libxml-parser-perl/2.44-r0/recipe-sysroot/usr/lib in file ${BUILDDIR}/tmp/work/core2-64-poky-linux/libxml-parser-perl/2.44-r0/packages-split/libxml-parser-perl/usr/lib/perl/vendor_perl/5.24.4/auto/XML/Parser/Expat/Expat.so [rpaths]
    ERROR: libxml-parser-perl-2.44-r0 do_package_qa: QA run found fatal errors. Please consider fixing them.
    ERROR: libxml-parser-perl-2.44-r0 do_package_qa: Function failed: do_package_qa

It's strongly encouraged to the maintainer @toddr to rework the
toolchain for up to date environments.

[RP: Added fix for nativesdk RPATH issues too]

(From OE-Core rev: b103bb9426c0e5e3ef0fe0c34274ad3a06af8b6a)

Signed-off-by: Jens Rehsack <sno@netbsd.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-23 07:50:00 +01:00
Jens Rehsack
454443647a cpan.bbclass: adopt to recent EU::MM
The modern the time, the improvements in ExtUtils::MakeMaker.

Nowadays, .packlist and perllocal.pod aren't touched anymore when appropriate
flags set during configure stage. Controlling the flags globally avoids
dual-life recipes need share patching.

Further: remove prepending ${PERL_ARCHLIB} in PERL5LIB - it's wrong (search
order is site_lib, vendor_lib, core) - and ${PERL_ARCHLIB} contains core
libpath only ...

(From OE-Core rev: 2e61533e7c1b1cfd49dc771e907207f11a15c44f)

Signed-off-by: Jens Rehsack <sno@netbsd.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-23 07:50:00 +01:00
Hongzhi.Song
01f70f0265 cryptodev-linux: Fixes a kernel crash observed with cipher-gcm test
The crypto API for AEAD ciphers changed in recent kernels, so that
associated data is now part of both source and destination scatter
gathers. The source, destination and associated data buffers need
to be stiched accordingly for the operations to succeed.

(From OE-Core rev: 76da04571b8cb2241b3f46dec4935ff299639b7d)

Signed-off-by: Hongzhi.Song <hongzhi.song@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-23 07:50:00 +01:00
Alexander Hedges
744b059191 u-boot: Fix inconsistent indentation
This removes some extra spaces.

(From OE-Core rev: 146ebbc71183e432905b17a127162aba0b464b50)

Signed-off-by: Alexander Hedges <ahedges@ethz.ch>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-23 07:50:00 +01:00
Maxin B. John
c83bb1c30e libinput: upgrade 1.11.2 -> 1.11.3
(From OE-Core rev: 0f431d315209ef782c759ac0c70eb6562dc9c92c)

Signed-off-by: Maxin B. John <maxin.john@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-23 07:50:00 +01:00
Maxin B. John
6b7fef0d7c acpid: upgrade 2.0.29 -> 2.0.30
(From OE-Core rev: 125b5e2db55900c939ecdcd7d38cd8c9f40a41a2)

Signed-off-by: Maxin B. John <maxin.john@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-23 07:50:00 +01:00
Maxin B. John
3b847972b8 libpng: upgrade 1.6.34 -> 1.6.35
License-Update: copyright years updated

(From OE-Core rev: 2c245d0ddc230360be949b96fb123698541753ac)

Signed-off-by: Maxin B. John <maxin.john@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-23 07:50:00 +01:00
Maxin B. John
13fbb96a8d libatomic-ops: upgrade 7.6.4 -> 7.6.6
License-Update: updated address of Free Software Foundation

(From OE-Core rev: 9aa8061f2e9f1e66b4ef4d63ae2932bf0c6a2c41)

Signed-off-by: Maxin B. John <maxin.john@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-23 07:50:00 +01:00
Maxin B. John
8f88c6eaee pkgconf: upgrade 1.4.2 -> 1.5.3
(From OE-Core rev: cadbea143d9ff3737195865c91573f40e2fdba9d)

Signed-off-by: Maxin B. John <maxin.john@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-23 07:50:00 +01:00
Maxin B. John
3626244620 harfbuzz: upgrade 1.8.4 -> 1.8.8
(From OE-Core rev: 04b1fdece4b98a50e5a9103bce08804cc2a2f60d)

Signed-off-by: Maxin B. John <maxin.john@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-23 07:50:00 +01:00
Yongxin Liu
4a95d573c3 sstate: add intel-microcode to SSTATE_DUPWHITELIST
intel-microcode multilib recipes can generate identical overlapping
files: microcode.cpio.

(From OE-Core rev: 4b27da3334aff7f9f03ae934bbab7e7af07df3f6)

Signed-off-by: Yongxin Liu <yongxin.liu@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-23 07:50:00 +01:00
Hongxu Jia
4253bded02 mtools: fix race issue while mtools invoked frequently
While invoking mtools frequently, the unblocking request
caused race issue. Here is an example of syslinux
[snip]
dd if=/dev/zero of=floppy.img bs=1024 count=144
losetup /dev/loop1 floppy.img
mkdosfs /dev/loop1
syslinux -i /dev/loop1
|plain floppy: device "/proc/6351/fd/3" busy (Resource temporarily unavailable):
|Cannot initialize 'S:'
|Bad target s:/ldlinux.sys
[snip]

The idea is from:
https://bugzilla.redhat.com/show_bug.cgi?id=1235016
https://groups.google.com/a/chromium.org/forum/#!msg/chromium-os-dev/bRPUCFHoBTQ/ZjB8kjjx1vUJ

(From OE-Core rev: 927fad7881841a58e1d88f3a6ce070eaa66ba1a5)

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-23 07:50:00 +01:00
Joshua Watt
a24081dd28 classes/package: Clean up getstatusoutput
Replaces usage of the deprecated oe.utils.getstatusoutput() with Python
subprocess calls.

(From OE-Core rev: 7f9d2d16b8cdff9cbba2b3965c74d1c5b8ab1106)

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-23 07:50:00 +01:00
Jagadeesh Krishnanjanappa
e8934a29c3 oe-run-native: Add *-native directories under STAGING_BINDIR_NATIVE to PATH environment
It helps to find/use native tools under ${STAGING_BINDIR_NATIVE}/*-native.

Solving below error:

$ oe-run-native python3-native python3
Running bitbake -e python3-native
Error: Unable to find 'python3' in .../tmp/work/x86_64-linux/python3-native/3.5.5-r1.0/recipe-sysroot-native/usr/bin:.../tmp/work/x86_64-linux/python3-native/3.5.5-r1.0/recipe-sysroot-native/bin:.../tmp/work/x86_64-linux/python3-native/3.5.5-r1.0/recipe-sysroot-native/usr/sbin:.../tmp/work/x86_64-linux/python3-native/3.5.5-r1.0/recipe-sysroot-native/sbin
Error: Have you run 'bitbake python3-native -caddto_recipe_sysroot'?
-- snip --

After this change we have native python3 to be found:

$ oe-run-native python3-native python3
Running bitbake -e python3-native
Python 3.5.5 (default, Aug  8 2018, 17:45:49)
[GCC 4.8.5 20150623 (Red Hat 4.8.5-28)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>>
-- snip --

[YOCTO #12889]

(From OE-Core rev: a3e9b2224b31cfd836519d0b609f8064adb67cca)

Signed-off-by: Jagadeesh Krishnanjanappa <jkrishnanjanappa@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-23 07:50:00 +01:00
Chen Qi
b92717ae48 cmake-native: fix to function correctly in case of eSDK
Our eSDK is expected to provide traditional SDK's functionality. But
for cmake, it could not function well in eSDK.

This problem is discovered by the assimp.py test case. The error message
is as below.

  testsdkext/tmp/sysroots/x86_64/usr/lib/libz.so: error adding symbols: file in wrong format
  collect2: error: ld returned 1 exit status

The problem is about cmake-native being unable to find the correct lib.
nativesdk-cmake has solved this problem. So make use of the solution to
solve the eSDK problem.

(From OE-Core rev: c0561e930e688890eb5feb4521b2de196137227a)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-23 07:50:00 +01:00
Changqing Li
68b5efe8b5 flac: patch for CVE-2017-6888
(From OE-Core rev: 82edd652860a2a1430692af402f0df639161b767)

Signed-off-by: Changqing Li <changqing.li@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-23 07:50:00 +01:00
Hongxu Jia
8e66763b1c nasm: fix CVE-2018-8883 & CVE-2018-8882 & CVE-2018-10316
(From OE-Core rev: 10a52e436d2f9a40c04271bc8aeb04c75fb11383)

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-23 07:50:00 +01:00
Richard Purdie
b45f3ecc00 oeqa/runner: Print any errors/failures early
Its a pain to have to wait until oe-selftest finishes to see the
failures for example.

(From OE-Core rev: 4c499a1b10a0c2647b6a753b8f9cd934ae4ad0da)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-23 07:50:00 +01:00
Richard Purdie
af87cc83cf oeqa/runner: Use the proper logger functions instead of print()
(From OE-Core rev: 5ccd2284e5dd994230e9e229b7931d049c9f46c0)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-23 07:50:00 +01:00
Richard Purdie
f2288adb57 oeqa/context: Only set buffer mode for non-concurrent tests
Periodically we'd see:

NOTE: core-image-sato-1.0-r0 do_testsdk: ======================================================================
NOTE: core-image-sato-1.0-r0 do_testsdk: ERROR: broken-runner
NOTE: core-image-sato-1.0-r0 do_testsdk: ----------------------------------------------------------------------
NOTE: core-image-sato-1.0-r0 do_testsdk: testtools.testresult.real._StringException: Traceback (most recent call last):
  File "/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-mips/build/meta/lib/oeqa/core/utils/concurrencytest.py", line 122, in _run_test
    test.run(process_result)
  File "/usr/lib/python3.6/site-packages/subunit/__init__.py", line 1194, in run
    protocol = TestProtocolServer(result, self._passthrough, self._forward)
  File "/usr/lib/python3.6/site-packages/subunit/__init__.py", line 514, in __init__
    stream = stream.buffer
AttributeError: '_io.StringIO' object has no attribute 'buffer'

which seems to occur if a result arrives before all the runner threads
have started. The runner's result handling changes sys.stdout to a buffer
temporarily which can be seen in other threads and it can sometimes fail.

Since the tests are running in a separate process we don't need this buffer
handling in the concurrent case so only set when not parallelising. The
concurrent class handle setting buffer mode internally.

(From OE-Core rev: e2c66aa0f74d19fbc7e56af1fb440ad6473d3a8e)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-23 07:50:00 +01:00
Richard Purdie
c2e589ee0d oeqa/concurrencytest: Ensure subunit streams are flushed at exit
Without this, error output such as that in the teardown can be lost
and processes may recieve signals they're not expecting causing other
strange errors.

(From OE-Core rev: 1e3f44737a15feb3128ba7fc0dbe896dd8782e07)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-23 07:50:00 +01:00
Khem Raj
491082c56c poky.conf: Enable security flags+pie by defaultEnable security flags+pie by default
This has been an opt-in for so long, some distributions e.g.
poky-lsb uses it by default however, since most of linux
distros have started to default to these settings for security
enhancements, time has come for OE to make it default too

(From meta-yocto rev: 81bf1019c8601da952242fbcc827e0bef1ff25d7)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-21 14:52:52 +01:00
Khem Raj
29d76b37c8 poky-lsb: Remove including security_flags.inc
This is in  default distro config now

(From meta-yocto rev: c85fa6a397d7ed97779ce347d4013cd1ea99d53f)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-21 14:52:52 +01:00
Hongxu Jia
a64630aecf python/python3: add virtual/crypt to DEPENDS
Since  `6146b8c glibc: Disable crypt support in glibc' in oe-core,
python2/3 could not find symbol crypt which caused import crypt failed.
[snip]
>>> import crypt
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/lib64/python3.5/crypt.py", line 3, in <module>
    import _crypt
ImportError: /usr/lib64/python3.5/lib-dynload/_crypt.cpython-35m-x86_64-linux-gnu.so: undefined symbol: crypt
[snip]

Add virtual/crypt to DEPENDS, and python's build system (setup.py)
will search libcrypt.so in recipe-sysroot and add `-lcrypt' if it
exists.

(From OE-Core rev: d2a929d932900f753af1a06a8cb98d953369e3b4)

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-21 14:49:42 +01:00
Changqing Li
7db9a28d20 sstate: Avoid indirect autoconf-archive-native dependencies
remove the indirect dependcy of autoconf-archive-native via
SSTATE_EXCLUDEDEPS_SYSROOT to avoid not needed .m4 installed
into sysroot, which may cause compile problem.

(From OE-Core rev: d23156460e2b8f6684bd3005d7fa09b2c73e522e)

Signed-off-by: Changqing Li <changqing.li@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-21 14:49:42 +01:00
Andre McCurdy
4cdbea3747 openssl: fix hardcoded paths in native for openssl 1.1
Relying on hardcoded built-in paths causes openssl-native to not be
relocateable from sstate.

Solution for openssl 1.1, based on the existing solution from
openssl 1.0:

  http://git.openembedded.org/openembedded-core/commit/?id=771d3123331fbfab1eb9ce47e3013eabcb2248f5

(From OE-Core rev: c226820183f44a2830b5172cac5888b17872c5c8)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-21 14:49:42 +01:00
Chen Qi
920e9a4ac4 assimp.py: fix AttributeError in tearDownClass
When running this test case, we will see the following error.

  AttributeError: type object 'BuildAssimp' has no attribute 'project'

assimp.py test case does not make use of SDKBuildProject, so remove
the import statement and the tearDownClass.

(From OE-Core rev: ca0a40a852abed981d54503ef2d86708471c821e)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-21 14:49:42 +01:00
Khem Raj
e2170f22ed llvm: Enable AMDGPU backend for native/native-sdk builds too
(From OE-Core rev: 0053740c01f3ae49292a03686f2a6bad298d3af9)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-21 14:49:42 +01:00
Khem Raj
959fcc8129 llvm: Use HOST_ARCH in LLVM_TARGETS_TO_BUILD for builds
LLVM_TARGETS_TO_BUILD is needed to represent HOST_ARCH for
builds and target specific additions should use class-target
override

(From OE-Core rev: 5e6e08512e130951e66376ea43e4e6a98941b950)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-21 14:49:42 +01:00
Khem Raj
de1ba75423 dos2unix: Move to oe-core
- Import from meta-oe layer

- This is useful for many packages where CR-LF
  needs to be adjusted, many recipes depend on it
  e.g. meta-multimedia libebml and so on.

- Add myself as maintainer for now

(From OE-Core rev: d8c075d9ac8792726be162da02f2325cbb3aeaaa)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-21 14:49:42 +01:00
Khem Raj
d48a572793 gdb: Alias rpl_stat to stat() on musl
Use CPPFLAGS instead of CFLAGS since there is C++ compiler being used for somefiles

Fixes
gdb/gdbserver/../../../gdb-8.1.1/gdb/gdbserver/../common/common-utils.c:419: undefined reference to `rpl_stat'
| collect2: error: ld returned 1 exit status
| make[4]: *** [Makefile:414: libinproctrace.so] Error 1

(From OE-Core rev: d6806b449ba8b44fd74dfb05c65b9233b6f3ace5)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-21 14:49:42 +01:00
Khem Raj
9cdf8be1b8 gdb: Upgrade to 8.1.1
(From OE-Core rev: 793a15af9f5d522673693ccb22addf76bec1060c)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-21 14:49:42 +01:00
Khem Raj
9e7bed80f7 mesa: Enable gallium-llvm on x86 and x86_64
(From OE-Core rev: f8270871c34a5f36d3c8f76f528186002b0dc0bd)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-21 14:49:42 +01:00
Martin Jansa
2a72190ba7 kernel.bbclass: rename type variable to imageType
* to avoid confusion with "type" command in shell

(From OE-Core rev: 8d454ea754c96561257b1cc011fa638ceaa771db)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-21 14:49:42 +01:00
Martin Jansa
0fb0eea041 kernel-artifact-names.bbclass: Add 2 more variables to make it easier to change all names with one variable
* some people don't like the ${MACHINE} in the symlink, because now the DEPLOYDIR already
  contains ${MACHINE} subdirectory, add KERNEL_ARTIFACT_LINK_NAME variable to change it
  in one place without the need to list all variables for various artifacts

(From OE-Core rev: 416b58d84f1124212f114198d2fcb1f3a9bbd223)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-21 14:49:42 +01:00
Martin Jansa
b7d0d0b44f kernel-artifact-names.bbclass, kernel.bbclass: remove prefix and extension from MODULE_TARBALL_* variables
* for consistency with other artifacts variables, include only the version string, not the actual name or extension
* changing .tgz to something else in the MODULE_TARBALL_NAME variable only wouldn't make much sense
  because then kernel.bbclass still calls "tar -cvzf" to create it

(From OE-Core rev: 43bd7f39157da49f7fb0c2d6d9751059471c8d53)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-21 14:49:42 +01:00
Martin Jansa
f09947586c kernel*.bbclass: rename *_SYMLINK_NAME variables to *_LINK_NAME and *_BASE_NAME to *_NAME
* for consistency with IMAGE_NAME and IMAGE_LINK_NAME
  and to avoid confusion with IMAGE_BASENAME (which is the
  actual name of the artifact, e.g. PN while KERNEL_IMAGE_BASE_NAME
  was only the version suffix)

(From OE-Core rev: f952c8e08b4798aa0f8bf764cfd70bda0eae9b8b)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-21 14:49:42 +01:00
Martin Jansa
d0a8532abb kernel-artifact-names, kernel-fitimage: add KERNEL_FIT_BASE_NAME, KERNEL_FIT_SYMLINK_NAME variables
* use the same naming scheme for fitImage files like all other deployed artifacts
* remove unnecessary cd to DEPLOYDIR
* remove unnecessary cd to B

(From OE-Core rev: fd69f8b2d7dd950cee9e820ef91ea90521c95ace)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-21 14:49:42 +01:00
Martin Jansa
a65c1216d7 bitbake.conf, kernel-artifact-names.bbclass: introduce IMAGE_VERSION_SUFFIX instead of using DATETIME directly
* this makes it easier to use different version string than DATETIME, e.g. set from jenkins job
  while keeping the suffix consistent across all artifacts stored in DEPLOYDIR

(From OE-Core rev: 1245935b9bf32e0321d8ff12492983ba8506190a)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-21 14:49:42 +01:00
André Draszik
8f16469e97 rootfs-postcommands: put image testdata under sstate control
The testdata.json is being written to DEPLOY_DIR_IMAGE directly,
thus bypassing sstate, which results in an ever growing list
of files.

Write them to IMGDEPLOYDIR instead, so as to benefit from the
automatic management via sstate.

(From OE-Core rev: 1f7399a5e5d12b7ca3faf399a70c1613d522c28d)

Signed-off-by: André Draszik <andre.draszik@jci.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-21 14:49:42 +01:00
Mikko Rapeli
09a2975e72 autoconf: update runtime perl module dependencies
Test in SDK was failing to execute:

$ autoreconf --install --force

due to missing perl modules. Add the needed perl modules
for target build:

perl-module-bytes
perl-module-thread-queue
perl-module-threads

Duplicate the perl module dependencies for SDK as well.

Now autoreconf runs with a trivial example.

(From OE-Core rev: 71764105510e2a98150f63aae0ada1600ad33041)

Signed-off-by: Mikko Rapeli <mikko.rapeli@bmw.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-21 14:49:42 +01:00
Kevin Hao
42643285cd wic: bootimg-partition: Select a preferred type if multi kernel images are installed
Automatically select one kernel type image based on a predefined
precedence list if there are multi kernel images installed.

(From OE-Core rev: d1d80566681d4cdc00aa3d4b5e4bcf5edb7132b7)

Signed-off-by: Kevin Hao <kexin.hao@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-21 14:49:42 +01:00
Kevin Hao
511b7a565d wic: bootimg-partition: Add support to specify a custom extlinux.conf
Add support to specify a custom extlinux.conf via something like:
    bootloader --configfile="extlinux.conf"

(From OE-Core rev: 33f85c8bf80d70f00eeccd9ab3dfa417c0fc7df1)

Signed-off-by: Kevin Hao <kexin.hao@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-21 14:49:42 +01:00
Wang Quanyang
99506b0017 weston-init: run login before start weston.service
When systemd start the weston.service, the script "weston-start" will
check if the dir "XDG_RUNTIME_DIR" (usually is /run/user/0) exits and
create it. Then weston will create a socket file "wayland-0" for communications
with clients in this dir.

If systemd is built with enabling "pam" feature, the login will call "run-user-0.mount"
to mount tmpfs at the dir "/run/user/0", then the socket file "wayland-0" will be
missing since it is created in the old "/run/user/0".

So add "PAMName=login" to let weston.service call login first, once tmpfs is mounted at
"/run/user/0", then call weston-start to create a socket file in it.

(From OE-Core rev: 3cb303ffee8610d41c9a0745d366556c24066bc3)

Signed-off-by: Quanyang Wang <quanyang.wang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-20 17:38:23 +01:00
Changqing Li
dac65465fb unzip: fix CVE-2018-1000035
(From OE-Core rev: f75289b9215580030540245cd0b5f945bfb05ffa)

Signed-off-by: Changqing Li <changqing.li@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-20 17:38:23 +01:00
Hongxu Jia
e18f891394 libxml2: fix CVE-2018-9251 and CVE-2018-14567
(From OE-Core rev: b91b276696fb5e0b633b73be408bd750ac4e28ce)

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-20 17:38:23 +01:00
Yi Zhao
bd1e1aaf1d expat: upgrade 2.2.5 -> 2.2.6
(From OE-Core rev: e6264f433d93b658624d26dfe2403b27d2b41556)

Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-20 17:38:23 +01:00
Andre McCurdy
37f376f702 openssl: drop obsolete no-afalgeng workaround for aarch64
The aarch64 build issue in the afalg engine appears to have been
fixed upstream since openssl 1.1.0g:

  a0c262644e

(From OE-Core rev: 3184de7f57c05f32682d0c00baf797074b137422)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-20 17:38:23 +01:00
Andre McCurdy
42da5e8664 openssl: fix path in nativesdk environment-setup script
A single version of the openssl.sh environment-setup script is
currently shared by both the openssl 1.0 and 1.1 recipes. The libdir
path in the script needs to be tweaked for openssl 1.1.

(From OE-Core rev: 950f89a5eb98edbd734247b4141e18e635ef4f91)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-20 17:38:23 +01:00
Andre McCurdy
13e0be4efc openssl: move the libdir openssl.cnf symlink into the openssl package
The openssl 1.0 recipe puts the libdir symlink to /etc/ssl/openssl.cnf
in the base openssl package (along with the libdir symlinks to
/etc/ssl/certs and /etc/ssl/private). Keep the openssl 1.1 recipe
aligned with that approach until there's a clear reason to do
something else. For more background, see comments in the following
thread:

  http://lists.openembedded.org/pipermail/openembedded-core/2017-April/135176.html

(From OE-Core rev: 480335803928c95e7948f8c949127ccb5cbc7dbe)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-20 17:38:23 +01:00
Andre McCurdy
b4570537ca openssl: openssl-misc dependency on perl should be unconditional
The openssl 1.1 recipe doesn't have a PACKAGECONFIG option for perl,
so the RDEPENDS for openssl-misc shouldn't be conditional on it.

(From OE-Core rev: 6c6c3809b9db3a08eefabe06d3f35cee5f400d92)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-20 17:38:23 +01:00
Andre McCurdy
7e850872d3 openssl: minor reformatting to align the 1.0 and 1.1 recipes
Formatting and comment tweaks only, no functional changes.

(From OE-Core rev: 06da559b5becee1b5fcc2263f6edd95f6d305fc2)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-20 17:38:23 +01:00
Andre McCurdy
c64eec1e67 openssl: update 32bit x86 target from linux-elf -> linux-x86
According to comments in Configurations/10-main.conf, the linux-elf
target is "... to be used on older Linux machines where gcc doesn't
understand -m32 and -m64".

The linux-x86 target appears to be the newer replacement (currently
the only difference between the two is that linux-x86 adds -m32 to
cflags).

(From OE-Core rev: 9e9d0045caa62f3dba2760460de4e6eac38b4628)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-20 17:38:23 +01:00
Andre McCurdy
440cc5bd8d openssl: consolidate target name mapping rules
Merge duplicates + minor reformatting (no functional changes).

Note that the openssl 1.1 recipe still needs to be updated to handle
MIPS Release 6 ISA targets (e.g. linux-mipsisa32r6, etc).

(From OE-Core rev: bdc9e773c240716c2e2a60ca5d4313cfaa6188b1)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-20 17:38:22 +01:00
Derek Straka
5afc46a9a9 python3-git: update to version 2.1.11
Update to the latest stable release

(From OE-Core rev: d916de84060f41e3a2e98a695b48d0ea52e9bfd9)

Signed-off-by: Derek Straka <derek@asterius.io>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-20 17:38:22 +01:00
Derek Straka
12ab44f932 python3-gitdb: update to version 2.0.4
Update to the latest stable release

(From OE-Core rev: 7f5225b97498a6ac5ee501682a77a5aed0aa044c)

Signed-off-by: Derek Straka <derek@asterius.io>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-20 17:38:22 +01:00
Derek Straka
40fce4ea02 python3-pip: update to version 18.0
License-Update: Update checksum for copyright year changes

Update to the latest stable version

(From OE-Core rev: 30d0e8e895813bc422d60bd00076a7f16035feeb)

Signed-off-by: Derek Straka <derek@asterius.io>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-20 17:38:22 +01:00
Armin Kuster
81506803a1 gnutls: Update to 3.6.3
[v2]
Fix new config options form with to disable.

[v1]
release notes: https://lists.gnupg.org/pipermail/gnutls-devel/2018-July/008584.html

add ssl3 and tls1.3 config options now supported.

(From OE-Core rev: d39bf67b8c6d80562d35fc8d8f72d26f77cc451e)

Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-20 17:38:22 +01:00
Khem Raj
e87b501659 libidn2: Fix libunistring detection
libunistring is one such library which many autotooled packages
mistake to use from build system if its installed on it. This
is specifically toxic when build host arch is same as target arch
since we only see the problem during runtime but thankfully OE
has build time QA which warns about it.

QA Issue: libidn2: The compile log indicates that host include and/or library paths were used.

Using --with-libunistring-prefix nudges the autoconf system for the
component to first look into target sysroot before going on to search
on the build host

(From OE-Core rev: 9a4ea4ff856e2379888ea5cdcc0e761956e1f53b)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-20 17:38:22 +01:00
Khem Raj
0b57d37132 binutils: Update past 2.31.1 release
list of changes in this rev bump

* a69de9c7cf ld-x86-64/pr23486b.d: Swap pr23486a.s and pr23486a.s
* 28a27bdbb9 x86: Properly add X86_ISA_1_NEEDED property
* d692290444 x86: Replace evex-no-scale.s with evex-no-scale-[32|64].s
* d55c3e3609 x86: Properly merge GNU_PROPERTY_X86_ISA_1_USED
* 381c1eb6ec x86: Update assembler tests for non-ELF targets
* 9b075c7167 x32: Align the .note.gnu.property section to 4 bytes
* 4aa5eb02fd __tls_get_addr_opt stubs and tocsave optimization
* 95fbde6791 Re: PowerPC64 __tls_get_addr_opt stub .eh_frame fix
* 079a6882b5 PowerPC64 __tls_get_addr_opt stub .eh_frame fix
* 1d8f56a971 Updated Bulgarian translation for the ld/ directory
* b7991db94c Add --warn-drop-version option; by default, do not warn when discarding version info.
* dbf924a63a Fix type checking errors.
* 60b3b24ca1 Fix spurious check-ld failures on aarch64-elf
* feaed90494 [PATCH, LD, AArch64] Fix ifunc testisms
* 2069ccaf8d x86: don't mistakenly scale non-8-bit displacements
* 254ade2586 Fix unwind offset for call_info->start_symbol.
* 29153520a8 S/390: Set the htm flag on PPA
* 6737a6b34f x86: Add a GNU_PROPERTY_X86_ISA_1_USED note if needed
* 01683b308a x86: Split vcvtps2{,u}qq and vcvttps2{,u}qq
* be8a252e18 Set the development flag back to true.
* 0860693812 (tag: binutils-2_31_1) Regenerate files and add changelog entries for 2.31.1 release
* 4afd6a72e3 Fix typo in src-release.sh script.  Update French translation for gold and Spanish translation for ld.

(From OE-Core rev: 6902d807d3ce13ea7abffebf349d66100ac023db)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-20 17:38:22 +01:00
Khem Raj
a6331406f7 mesa: Define YOCTO_ALTERNATE_MULTILIB_NAME to consider multilib names
(From OE-Core rev: c5a27bd4d450911afa38846bc00ef762e4414eda)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-20 17:38:22 +01:00
Khem Raj
8884da4822 llvm: Use YOCTO_ALTERNATE_MULTILIB_NAME environment variable in llvm-config
llvm-config is a tool on similar veins as pkg-config but provides a lot
more information and packages which use llvm e.g. mesa use this tool to
poke for llvm related informaiton e.g. version, libpath, includepaths
to name a few, this has few challanges in cross build environments where
llvm-config is supposed to be build for buildhost but provide information
about target llvm which is addressed by building native llvm-config along
with target llvm build, but this is frowned upon by OE build system since
it detects that host paths are being used so we have to build it as part
of llvm-native but then it means install paths for llvm and llvm-native
are different and wrong paths get reported when llvm-config is used.
This is solved by providing YOCTO_ALTERNATE_EXE_PATH variable to let
llvm-config use that path instead of self-relative path to report back

Second problem is when building multi-lib packages base_libdir is different
for target packages but native llvm-config does not know about it so
it reports non-multilibbed paths as libdir and packages can not find
llvm in sysroot. This is fixed by adding another environment variable
YOCTO_ALTERNATE_MULTILIB_NAME which can be set from recipes to set
proper multilib path

(From OE-Core rev: 865eb1c1400e60d09c8f413504123fdfc116a71b)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-20 17:38:22 +01:00
Khem Raj
f98f7baa83 dos2unix.bbclass: Move to oe-core
- Import from meta-oe layer

- This is useful for many packages where CR-LF
  needs to be adjusted, many recipes depend on it
  e.g. meta-multimedia libebml and so on.

(From OE-Core rev: bd4a02d8d3cfb476a2da0f4616605c92604266c0)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-20 17:38:22 +01:00
Khem Raj
e0d395a046 llvm: Point llvm-config to one built with llvm-native
If not defined, llvm build system tries to build one
which then confuses the OE QA system since its building
native tool and target packages in same package build
moreover it is not required since we already have it via
llvm-native

Fixes
ERROR: llvm-6.0-r0 do_package_qa: QA Issue: llvm: The compile log indicates that host include and/or library paths were used.

(From OE-Core rev: 7153a17166d9a94fd0ddc36d597a0140979d58ff)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-20 17:38:22 +01:00
Khem Raj
d0b2393ce7 powerpc: Remove pie flags from compiler cmdline
Original approach to add -no-<pie> flags cause link time behavior changes
where packages start to lose the -fPIC -DPIC in compiler cmdline and this
list keeps growing as we build more and more packages,

Instead lets just remove the options we dont need from SECURITY_CFLAGS
this makes it more robust and less intrusive

This also means we do not need to re-add pic options as we started to do
for affected packages

(From OE-Core rev: 1520f5a345fd03d46f33f0efaf76191e96344bec)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-20 17:38:22 +01:00
David Reyna
08fbdc02e3 bitbake: Toaster: Implement the project-specific feature and releated enhancements and defects.
Here is the primary driving enhancement:

*  Bug 12785 - Support Project Specific configuration for external
   tools (e.g. ISS, Eclipse)

  -  Isolated project-specific configuration page (full Toaster context
     hidden)
  -  Support for new project, reconfigure existing project, and import
     existing command line project
  -  Ability to define variables (e.g. image recipe) and pass them back
     to external GUI
  -  Ability to execute the cloning phase, so that external GUI receive
     a buildable project
  -  Ability to call back to the external GUI when updates are completed
     and ready
  -  Compatibility of above projects with the normal full Toaster interface
  -  Ability to pass to a 'complete' or 'cancel' web page so that the
     external GUI can immediately stop that Toaster instance, and not
     leave dangling servers nor edit sessions open

Here are the supporting enhancements, where at least the
back end is implemented:

*  Bug 12821 - Make Toaster conf changes compatible with command line usage
*  Bug 12822 - Support importing user changes to conf files into Toaster
*  Bug 12823 - Support importing user build directories into Toaster
*  Bug 12824 - Scan imported layers for content so that they are
               immediately available
*  Bug 12825 - show layer clone item in progress bar

Here are defects fixed:

*  Bug 12817 - builddelete.py requires explicit 'add_arguments'
*  Bug 12818 - Remove orphaned imported layers when project is deleted
*  Bug 12826 - fix imported layer management
*  Bug 12819 - build using selected bitbake env, not Toaster's env
*  Bug 12820 - Toaster randomizes the layer order in toaster_bblayers.conf

[YOCTO #12785]

(Bitbake rev: 985d6cec290bdd80998a63483561a73c75d82d65)

Signed-off-by: David Reyna <David.Reyna@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-20 10:20:51 +01:00
Bruce Ashfield
9af0f1a46b kernel-devsrc: restructure for out of tree (and on target) module builds
The existing kernel-devsrc package starts with a full copy of the kernel
source and then starts to strip out elements that are not required.

This results in extra time (I/O) and extra space being taken up in the
final package. The main purpose of the kernel-devsrc package has been to
build modules against the running kernel, not to include a full copy of
the source code for re-building the kernel. The end result was a
600M kernel-devsrc package.

This restructuring of the package uses an approach similar to other
distros, where the kernel-devsrc package is for building against the
running kernel and uses a curated set of copied infrastructure, versus
a mass copy of the entire kernel.

The differences in this approach versus other is largely due to the
architecture support and the split build/source directory of the
kernel.

The result is a kernel-devsrc package of about 10M, which is capable
of running "make scripts" and compiling kernel modules against the
running kernel.

Along with the changes to the copying of the infrascture, we also
have the following changes:

 - a better/more explicit listing of dependencies for on-target
   builds of "make scripts" or "make modules_prepare"

 - The kernel source is installed into /lib/modules/<version>/build
   and a symlink created from /usr/src/kernel to the new location.
   This aligns with the standard location for module support
   code

 - There is also a symlink from /lib/modules/<version>/source -> build
   to reserve a spot for a new package that is simply the kernel
   source. That package is not part of this update.

(From OE-Core rev: 007ef1f468110b2698a27ea9a6d43fed5a0a9fc2)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-19 16:35:22 +01:00
Andrej Valek
47a73c5228 openssl: update 1.1.0h -> 1.1.0i
Please see this security advisory:
https://www.openssl.org/news/secadv/20180612.txt

Remove obsolete patch.

(From OE-Core rev: 0d19caefeeca14f44c80ccb716c30b17f14255a5)

Signed-off-by: Andrej Valek <andrej.valek@siemens.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-19 16:35:22 +01:00
Andrej Valek
06b5355b9d openssl: update 1.0.2o -> 1.0.2p
Please see this security advisory:
https://www.openssl.org/news/secadv/20180612.txt

Refresh patches

(From OE-Core rev: ff3db93e53c4f9d56807d3755c799459944e9a87)

Signed-off-by: Andrej Valek <andrej.valek@siemens.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-19 16:35:22 +01:00
Maxin B. John
4c8780f6de vala: refresh patch
Refresh the following patch:
"disable-graphviz.patch" to fix this warning:

Some of the context lines in patches were ignored. This can lead to
incorrectly applied patches.
The context lines in the patches can be updated with devtool:

    devtool modify <recipe>
    devtool finish --force-patch-refresh <recipe> <layer_path>

Then the updated patches and the source tree (in devtool's workspace)
should be reviewed to make sure the patches apply in the correct place
and don't introduce duplicate lines (which can, and does happen
when some of the context is ignored). Further information:
http://lists.openembedded.org/pipermail/openembedded-core/2018-March/148675.html
https://bugzilla.yoctoproject.org/show_bug.cgi?id=10450
Details:
        checking file configure.ac
        checking file libvaladoc/Makefile.am
        checking file libvaladoc/html/basicdoclet.vala
        checking file libvaladoc/html/htmlmarkupwriter.vala
        Hunk #1 succeeded at 51 with fuzz 1 (offset 8 lines).

(From OE-Core rev: dfbbff39cfd413510abbd60930232a9c6b35d765)

Signed-off-by: Maxin B. John <maxin.john@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-19 16:35:22 +01:00
Chen Qi
72844f5431 glibc: re-package for libnss-db
On other distros like ubuntu/centos, libnss-db usually provides:
- The libraries
- The Makefile to create database
  (in /var/db for centos, /var/lib/misc/ for ubuntu)
- The makedb command (it's in glibc-common for centos7)

What we had is:
- The libraries are in glibc-extra-nss
- The Makefile is removed
- The makedb command is in glibc-utils (lack of dependency)

So when glibc-extra-nss is installed but glibc-utils is not,
we see error like:
nscd[165]: 165 checking for monitored file `/var/db/group.db': No such file or directory
nscd[165]: 165 checking for monitored file `/var/db/passwd.db': No such file or directory

And there is not an easy way to create these databases.

To fix the issue:
- Re-package the libraries into libnss-db
- Don't remove the Makefile and add it in libnss-db
- Add RDEPENDS for libnss-db on glibc-utils
- Provide a shell script, makedbs.sh, to generate the db files.
  This is to avoid dependency on 'make'.

Notes:
1. For external toolchain, an extra package 'libnss-db' need to be provided
   If replacing glibc from core.
2. I've check the git history of nss/db-Makefile, the last two functionality
   fix is as below.
   - fix non-portable `echo -n` usage   --  Date:   Thu Aug 6 04:14:20 2015 -0400
   - Fix db makefile rule for group.db  --  Date:   Fri Nov 11 14:43:36 2011 +0100
   So I think this file is stable enough. And using makedbs.sh which is crafted according
   to that file is not likely to cause maintanence problem.

(From OE-Core rev: 13cf502fce8956f95fdc8ac0c7a37d741223bcc9)

Signed-off-by: Jackie Huang <jackie.huang@windriver.com>
Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-19 16:35:22 +01:00
Hongzhi.Song
704e725bba runtime selftest: limit kernel hw bp arches
1. So far, only qemux86[-64] support hw breakpoint, no matter whether or
not with kvm.

qemuppc: The oe-core configuration uses a PPC G4 system as the
default cpu but qemu doesn't simulate the hw breakpoint register for G4.

qemuarm: The arch more than v7 supports hw breakpoint, however arm use
v5 as default.

qemuarm64: We temporarily drop qemuarm64 for the moment. Normally it
will print debug info once, but endlessly when we trigger the break
point. Now it is hard to located the issue, but we will confirm it
later.

qemumips*: Kernel dosen't support hw bp for mips.

2. Syslog maybe not started, so we use dmesg to confirm.

3. Running 'ls' to trigger the hardware breakpoint test.

(From OE-Core rev: 176e50fb177dc40e439700d5f3f838dd7eaaa427)

Signed-off-by: Hongzhi.Song <hongzhi.song@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-16 22:40:28 +01:00
Hongzhi.Song
742a801536 runtime selftest: test_trace_events_sample of ksample.py
The debug info can not be written to trace buffer immediately
by thread. So we should sleep some seconds.

(From OE-Core rev: 5ccf8150b4c65f2feac16cc2881188f14d9e5390)

Signed-off-by: Hongzhi.Song <hongzhi.song@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-16 22:40:28 +01:00
Anuj Mittal
371283df2e python3: enable profile optimized builds
Enable profile guided optimization (pgo) for python3. Enabling pgo in
python is generally as simple as invoking the target profile-opt which:

- builds python binaries with profile instrumentation enabled,
- runs a specific profile task using that python to get the profile
data and,
- feeds the compiler with this profile data and rebuilds python.

This change invokes qemu-user for the second step of running a profile
task using target python. Depending on how long profile task takes to
run, this might add a significant time to compilation (which would be
true for native builds too). The default profile task can be changed by
the users depending on what makes sense for their use case (or can be
left empty). In case qemu-user isn't supported, profile task won't be run.

(From OE-Core rev: 05a2a53f9cc7e75b4a3838ab9368cadf0f15ba1b)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-16 22:40:28 +01:00
Alistair Francis
e00b461779 qemu: Upgrade QEMU 2.12 -> 3.0
(From OE-Core rev: 4e37ca369205dccfaf730d6ac4d33c23fb995b5f)

Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-16 22:40:28 +01:00
Khem Raj
f7de037dca piglit: Upgrade to version from 2018-08-13
(From OE-Core rev: 04e485fbab38c73768d6c40bb601e566fa12a898)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-16 22:40:28 +01:00
Khem Raj
d4bc49d3d5 llvm: Update to 6.0.1
Drop upstreamed patch

(From OE-Core rev: b0783b713e0ad766797d20e0d1f3187effb08a71)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-16 22:40:28 +01:00
Joe Slater
7204e57262 libvorbis: 3 CVE fixes
CVE-2017-14160, CVE-2018-10393 (same as 14160), and CVE-2018-10392.
These fixes should be in libvorbis 1.3.7.

(From OE-Core rev: 45ff20f325a51fe0ed12d58160c08e04781ce341)

Signed-off-by: Joe Slater <joe.slater@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-16 22:40:28 +01:00
Khem Raj
c8ac784b8f re2c: Update to 1.0.1
Drop upstreamed patch

(From OE-Core rev: d3cfbee2c85c5fa5e131ed8b2be50cc088f5154f)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-16 22:40:28 +01:00
Khem Raj
470327eb1f mpfr: Upgrade to 4.0.1
Drop patch present in 4.0.1 already
Depend on autoconf-archive to fix

| configure:14652: error: possibly undefined macro: AX_PTHREAD

(From OE-Core rev: 118eccfa2ae199f22c7b2702211de1b4691c184f)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-16 22:40:27 +01:00
André Draszik
78bef0898c sstate: Avoid indirect bison-native dependencies (via SSTATE_EXCLUDEDEPS_SYSROOT)
Avoid adding bison-native to the sysroot without a specific
dependency in the recipe. This means indirect dependencies
(e.g. X -> Y -> binutils-cross -> bison-native) no longer meet the
dependency incidentally. This improves determinism and avoids build
failures when people switch to external toolchains.

Based on an idea by Richard Purdie:
    http://lists.openembedded.org/pipermail/openembedded-core/2018-January/146324.html

(From OE-Core rev: b7edc20cc2dd82989bd9561f860cb25478a40f69)

Signed-off-by: André Draszik <andre.draszik@jci.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-16 22:40:27 +01:00
Richard Purdie
066c2221f0 glibc-initial: Add missing bison-native dependency
(From OE-Core rev: 11e7dc96e7bc9d1cbf1f3bd10caeb65190c41a2f)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-16 22:40:27 +01:00
Robert Yang
1faa551931 elfutils: check data_list.data.d.d_buf before free it
[YOCTO #12791]

The one which actually saves the data is data_list.data.d.d_buf, so check it
before free rawdata_base.

This can fix a segmentation fault when prelink libqb_1.0.3:
prelink: /usr/lib/libqb.so.0.18.2: Symbol section index outside of section numbers

The segmentation fault happens when prelink call elf_end().

Fixed:
MACHINE="qemux86-64"
IMAGE_INSTALL_append = " libqb" #libqp is from meta-openembedded
$ bitbake core-image-minimal
Segmention fault

(From OE-Core rev: 560154e8525dce4beb8199ffc0d7c964da9d665a)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-16 22:40:27 +01:00
Robert Yang
0f327c393f prelink: use ehdr.e_shstrndx as index rather than ehdr.e_shnum
[YOCTO #12791]

According to struct elf32_hd, the e_shnum is section header number, and the
index is e_shstrndx, not e_shnum.

This can fix segmention fault when handle libqb.so.0.18.2 from libqb_1.0.3.
It fails to handle libqb.so.0.18.2 and get errors:
Symbol section index outside of section numbers

Then segmentation fault, this is because the e_shnum is 34, while e_shstrndx is
27 (it would be 33 when no errors), I've checked several elf files to confirm
that the ones after e_shstrndx is NULL, so use e_shstrndx should be correct.

Fixed:
MACHINE="qemux86-64"
IMAGE_INSTALL_append = " libqb" #libqp is from meta-openembedded
$ bitbake core-image-minimal
Segmention fault

(From OE-Core rev: b7c291ee6532cba845ee6bfbbaa21076a2b2cbe5)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-16 22:40:27 +01:00
Robert Yang
c66512c2d5 binutils: Improve check for input file matching output file
When the assembler reports that the input and output are the same, report the
file names involved, in order to help debugging.  Also do not equate two files
are the same if the have the same inode value but reside on different file
systems.

(From OE-Core rev: 83cb0938b90bab9ba727f883b8955b0b40d49a01)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-16 22:40:27 +01:00
Rasmus Villemoes
d4011ce0a3 bitbake: bb/utils.py: add break_hardlinks helper
bb.utils.copyfile is called in a few places with identical src and dst
in order to create an st_nlinks==1 version of the file. That that even
works relies on an implementation detail of copyfile (namely, that it
creates a temporary file and then does a rename). Moreover, it's a waste
of time if the file already has st_nlinks==1.

So create a helper that optimizes away the copy in the st_nlinks==1
case. Of course, this helper relies on the same implementation detail,
but that's now contained within bb.utils itself.

To test that we do at least sometimes hit the no-copy path, I tested
locally with

     if sstat[stat.ST_NLINK] == 1:
+        bb.note("Woohoo, 2*%d bytes I/O avoided" % sstat[stat.ST_SIZE])
         return True

(and the obvious places in oe-core patched), and the do_package log files
are indeed filled with woohoo notes.

(Bitbake rev: 7ae93cf40ab91965147055100432961436bce46c)

Signed-off-by: Rasmus Villemoes <rasmus.villemoes@prevas.dk>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-16 09:50:42 +01:00
Christopher Larson
762e6b7b45 populate_sdk_base.bbclass: inherit and use image-postinst-intercepts
(From OE-Core rev: fb83997ded3789c7447402a9fda03b1669cecae0)

Signed-off-by: Christopher Larson <chris_larson@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-16 09:49:39 +01:00
Christopher Larson
aa9d8e73bb image.bbclass: inherit and use image-postinst-intercepts
(From OE-Core rev: 73cccdb6942404961415e5939263686719b24061)

Signed-off-by: Christopher Larson <chris_larson@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-16 09:49:39 +01:00
Christopher Larson
bb3a1321cd image-postinst-intercepts.bbclass: add class
This class sets POSTINST_INTERCEPTS and POSTINST_INTERCEPTS_CHECKSUMS,
to allow us to pull intercepts from BBPATH. This is kept as a separate
class, as it's needed by both image construction and sdk construction,
the latter to support meta-toolchain & similar recipes.

(From OE-Core rev: 7a2044df4ae8d80cf25a6bfd9b71978ffefbfa33)

Signed-off-by: Christopher Larson <chris_larson@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-16 09:49:39 +01:00
Christopher Larson
85518a2001 oe.package_manager: support loading intercepts from multiple paths
- if POSTINST_INTERCEPTS is set, use the listed intercept files, or
- if POSTINST_INTERCEPTS_PATH is set, load from the listed paths, or
- if POSTINST_INTERCEPTS_DIR is set, load from it (for compatibility), or
- load from ${COREBASE}/meta/postinst-intercepts

(From OE-Core rev: 9ba2f2b1df277b2b881f68166d9cd1c19db66e23)

Signed-off-by: Christopher Larson <chris_larson@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-16 09:49:39 +01:00
Richard Purdie
9897d02e13 acpica: Add missing DEPENDS on bison-native
(From OE-Core rev: e7c0ad5d3eff6b1d7170e7e0a539d1807a2bb452)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-16 09:49:39 +01:00
Richard Purdie
59acf118fc sstate: Optimise SSTATE_EXCLUDEDEPS_SYSROOT handling
Using re.compile() is around six times faster than recompiling the regexp
each time so maintain a cache.

(From OE-Core rev: 41eb382737706e245f2b7104e313c8dfaa370945)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-16 09:49:39 +01:00
André Draszik
6e362580a6 sstate: use SSTATE_EXCLUDEDEPS_SYSROOT for skipping base-passwd|shadow-sysroot recipes
Use the newly introduced SSTATE_EXCLUDEDEPS_SYSROOT for specifying
the base-passwd|shadow-sysroot recipes to be excluded from a recipe sysroot.

(From OE-Core rev: 68e502e9063a88532fe0154f152ba408f0091900)

Signed-off-by: André Draszik <andre.draszik@jci.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-16 09:49:39 +01:00
André Draszik
e02176b5e6 sstate: use SSTATE_EXCLUDEDEPS_SYSROOT for skipping *-initial recipes
Use the newly introduced SSTATE_EXCLUDEDEPS_SYSROOT for specifying
the *-initial recipes to be excluded from a recipe sysroot.

(From OE-Core rev: 6706bad52f9311ea79c534ee90014c3216992999)

Signed-off-by: André Draszik <andre.draszik@jci.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-16 09:49:39 +01:00
André Draszik
7b7aa56548 sstate: allow specifying indirect dependencies to exclude from sysroot
Currently, a dependency on any -native recipe will pull in
all dependencies of that -native recipe in the recipe
sysroot. This behaviour might not always be wanted, e.g.
when that -native recipe depends on build-tools that are
not relevant for the current recipe.

This change adds a SSTATE_EXCLUDEDEPS_SYSROOT variable,
which will be evaluated for such recursive dependencies to
be excluded. The idea is similar to
   http://lists.openembedded.org/pipermail/openembedded-core/2018-January/146324.html
except that the list is not hard-coded anymore.

SSTATE_EXCLUDEDEPS_SYSROOT is evaluated as two regular
expressions of recipe and dependency to ignore, e.g. in
the above flex-native / bison-native use-case, one would
specify

    SSTATE_EXCLUDEDEPS_SYSROOT = ".*->(flex|bison)-native"

in layer.conf.

The existing special handling of "-initial" as well as
"base-passwd" and "shadow-sysroot" could also be
streamlined:

    SSTATE_EXCLUDEDEPS_SYSROOT += "\
        .*->.*-initial.* \
        .*(base-passwd|shadow-sysroot)->.* \
    "

Another anticipated user is meta-java, where certain newer
JDKs can only be bootstrapped (built) using older JDKs,
but it doesn't make much sense to copy all those older
JDKs and their own build tools (ant, etc.) into the
sysroot of recipes wanting to be built using the newer JDK
(only), e.g.:

    SSTATE_EXCLUDEDEPS_SYSROOT += "\
        openjdk-8-native->(ant-native|attr-native|coreutils-native|icedtea7-native|libxslt-native|make-native|openssl-native|zip-native|unzip-native) \
    "

(From OE-Core rev: 92c5131a2feae2036c71a36c18bb9175bb2856dc)

Signed-off-by: André Draszik <andre.draszik@jci.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-16 09:49:39 +01:00
Khem Raj
6870d10637 security_flags: Add PIC to cflags for some recipes on ppc
Fixes issues related out of range R_PPC_REL24
e.g.
/usr/lib/xorg/modules/input/libinput_drv.so: /usr/lib/libinput.so.10: R_PPC_REL24 relocation at 0x0e8602c4 for symbol `libevdev_has_event_code' out of range

(From OE-Core rev: 48c8d13a9bdcacb64a330074588f7c6bb5cae90d)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-16 09:49:38 +01:00
Khem Raj
7e174f3682 libdrm: Upgrade to 2.4.93
(From OE-Core rev: c855d485204e7674db6c660c868fbc3cf28ef308)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-16 09:49:38 +01:00
Andrej Valek
b4376c92ee openssl-1.1: /etc/ssl location compatibility
Some packages have hard-coded path to /etc/ssl location.
Create a symlinks to correct location.

(From OE-Core rev: 87ae1f2de1b033172560e3c89caa06bd9e10d071)

Signed-off-by: Andrej Valek <andrej.valek@siemens.com>
Signed-off-by: Marko Peter <peter.marko@siemens.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-16 09:49:38 +01:00
Andrej Valek
97901ab120 openssl-1.1: rework packaging
The main idea is to have libssl and libcrypto in separate packages.
This saves space if only single library is needed and also some recipes
(in other layers) depend on these library packages.
Together with this other packages like in 1.0.x were created.
The only difference is that openssl 1.1 has additional package openssl-bin.

Add missing dependency to perl for openssl-bin pkg, c_rehash requires it.

(From OE-Core rev: b729cae26de23ac6df10cbf74bab0105580cc43d)

Signed-off-by: Andrej Valek <andrej.valek@siemens.com>
Signed-off-by: Marko Peter <peter.marko@siemens.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-16 09:49:38 +01:00
Andrej Valek
82108b6755 openssl-1.1: fix c_rehash perl errors
Patch original c_rehash script with Debian patch instead
of overriding it with own version.

Error output from c_reshah without patching:
  Unknown regexp modifier "/b" at ./c_rehash line 15, at end of line
  Unknown regexp modifier "/W" at ./c_rehash line 28, at end of line
  Unknown regexp modifier "/3" at ./c_rehash line 28, at end of line
  Unknown regexp modifier "/2" at ./c_rehash line 28, at end of line
  No such class installdir at ./c_rehash line 63, near "Prefix our
  installdir"
    (Might be a runaway multi-line // string starting on line 28)
  syntax error at ./c_rehash line 63, near "Prefix our installdir"
  Can't redeclare "my" in "my" at ./c_rehash line 68, near ""
  Execution of ./c_rehash aborted due to compilation errors.

(From OE-Core rev: f8a826f497073533a3e4c390255ae197d65d6ef3)

Signed-off-by: Andrej Valek <andrej.valek@siemens.com>
Signed-off-by: Marko Peter <peter.marko@siemens.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-16 09:49:38 +01:00
Maciej Pijanowski
38125456ff machine configs: replace deprecated "SERIAL_CONSOLE"
SERIAL_CONSOLE was already deprecated in 2013, yet still some
machine configuration files were using it. This patch replaces
it with SERIAL_CONSOLES, which is the successor.

The default value in systemd-serialgetty.bb can also be safely
transitioned from SERIAL_CONSOLE to SERIAL_CONSOLES, as this
recipe already uses SERIAL_CONSOLES within do_install().

The documentation seems to be already up do date.
beaglebone-yocto.conf in the bsp-guide already uses
SERIAL_CONSOLES. The ref-manual redirects from SERIAL_CONSOLE
to SERIAL_CONSOLES.

[YOCTO #12653]

(From meta-yocto rev: a0c5332aefe75cf314e78284f578b17c51b8ab27)

Signed-off-by: Maciej Pijanowski <maciej.pijanowski@3mdeb.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 21:45:58 +01:00
Kevin Hao
b6660c301c meta-yocto-bsp: beaglebone: Use the uuid for the block device naming in wic image
(From meta-yocto rev: b713626dda68d4f03632da2ecbb1e073397e0c7a)

Signed-off-by: Kevin Hao <kexin.hao@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 21:45:58 +01:00
Kevin Hao
21a2aec457 meta-yocto-bsp: beaglebone: Add the u-boot boot config file for the wic image
(From meta-yocto rev: 800fc3ea87add6a7205ecfa3b088701ed635082f)

Signed-off-by: Kevin Hao <kexin.hao@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 21:45:58 +01:00
Andreas Müller
331463011f bitbake: runqueue: Move decision if a task can be started to one common place
(Bitbake rev: 99d9e4389e1f1d78d17a23ee078fe3f4a12cb31d)

Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 21:45:58 +01:00
Konstantin Shemyak
f7e24cc377 cve-check.bbclass: do not download the CVE DB in package-specific tasks
Disable downloading of the vulnerability DB in do_check_cves() task.

When invoked in this task, cve-check-tool attempts re-download of the CVE DB
if the latter is older than certain threshold. While reasonable for a
stand-alone CVE checker, this behavior can cause errors in parallel builds
if the build time is longer than this threshold:
* Other tasks might be using the DB.
* Several packages can start the download of the same file at the same time.

This check is not really needed, as the DB has been downloaded by
cve_check_tool:do_populate_cve_db() which is a prerequisite of any do_build().
The DB will be at most (threshold + build_time) old.

(From OE-Core rev: 125789b6ee6d47ab84192230f63971c4e22418ba)

Signed-off-by: Konstantin Shemyak <konstantin.shemyak@ge.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 21:45:58 +01:00
Alex Kiernan
7f93c8bc4a image: Use ${COREBASE}/meta for timestamp, fallback to bitbake.conf
To handle the case where ${COREBASE} isn't the git directory, avoid
erroring out when the git command fails. If we don't have a timestamp
after this, fall back to the timestamp from conf/bitbake.conf.

(From OE-Core rev: 97b439469a45a089431ca9c31893288c855045f4)

Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 21:45:58 +01:00
Rasmus Villemoes
f163fd8ec4 package.bbclass: improve -dbg and -src package ordering
nativesdk-gpgme fails package_qa when setting PACKAGE_DEBUG_SPLIT_STYLE
= "debug-with-srcpkg".

ERROR: nativesdk-gpgme-1.10.0-r0 do_package_qa: QA Issue: non debug package contains .debug directory: nativesdk-python3-gpg path /work/x86_64-nativesdk-oesdk-linux/nativesdk-gpgme/1.10.0-r0/packages-split/nativesdk-python3-gpg/usr/local/oecore-x86_64/sysroots/x86_64-oesdk-linux/usr/lib/python3.5/site-packages/gpg/.debug/_gpgme.cpython-35m-x86_64-linux-gnu.so [debug-files]

This turns out to be because the automatic moving of the -dbg package to
the beginning of the package list is disabled in that case, so the
python3-gpg packages that the recipe prepends to PACKAGES ends up before
the -dbg package.

It's not clear why the "and not split_source_package" was added when
debug-with-srcpkg was introduced. Presumably the intention was to
prevent the -dbg package to end up before the -src package, which we of
course need to. But at the same time, we still need -dbg packages to end
up before all other packages.

Using list.insert(0, ...) also means that if there happens to more than
one -dbg package, their relative ordering gets inverted in the new list.

This tries to fix these issues by sorting the packages by (priority,
original position), where priority is 10 for -src, 30 for -dbg and 50
for everything else. That guarantees that packages of the same "type"
preserve their relative ordering, while also ensuring that -dbg always
preceed other packages. This scheme is also quite extensible, and,
should the need arise, one could even expose the priorities as a knob
the recipe author could use to ensure specific orderings of packages
instead of the somewhat fragile and coarse-grained method of "prepend or
append, and ensure you do that in a proper order".

Probably the autodebug condition needs to stay, but I think the
split_source_package condition in the preceding elif should be removed,
so that that logic applies to all packages called -src, not just the one
we might have created a few lines above.

(From OE-Core rev: 805edbc7dc9ceae00d991f9b4e185bbbe1d3ba45)

Signed-off-by: Rasmus Villemoes <rasmus.villemoes@prevas.dk>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 21:45:58 +01:00
Martin Jansa
c5435fa1c2 weston: add dependency on virtual/libgbm for kms PACKAGECONFIG
* gbm is checked in configure.ac:

AC_ARG_ENABLE(drm-compositor, [  --enable-drm-compositor],,
              enable_drm_compositor=yes)
AM_CONDITIONAL(ENABLE_DRM_COMPOSITOR, test x$enable_drm_compositor = xyes)
if test x$enable_drm_compositor = xyes; then
  AC_DEFINE([BUILD_DRM_COMPOSITOR], [1], [Build the DRM compositor])
  PKG_CHECK_MODULES(DRM_COMPOSITOR, [libudev >= 136 libdrm >= 2.4.30 gbm mtdev >= 1.1.0])
  PKG_CHECK_MODULES(DRM_COMPOSITOR_GBM, [gbm >= 10.2],
                    [AC_DEFINE([HAVE_GBM_FD_IMPORT], 1, [gbm supports dmabuf import])],
                    [AC_MSG_WARN([gbm does not support dmabuf import, will omit that capability])])
fi

(From OE-Core rev: 73e9a5fc3234acda561f26cb915f4b636982ad63)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 21:45:58 +01:00
Yi Zhao
2a040ba8ed swig: fix gcc8 warnings for cast between incompatible function types
We got an error when building setools in meta-selinux:
setools/policyrep/qpol_wrap.c:1819:23:
error: cast between incompatible function types from 'PyObject * (*)(PyObject *)'
{aka 'struct _object * (*)(struct _object *)'} to 'PyObject * (*)(PyObject *, PyObject *)'
{aka 'struct _object * (*)(struct _object *, struct _object *)'} [-Werror=cast-function-type]
{(char *)"disown", (PyCFunction)SwigPyObject_disown, METH_NOARGS, (char *)"releases ownership of the pointer"},

This is a swig issue. See: https://github.com/swig/swig/issues/1259
Backport a patch from upstream to fix it.

(From OE-Core rev: f0f8ee668de34ad30ca16f5300966a3470018940)

Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 21:45:58 +01:00
Kevin Hao
bce531d503 wic: bootimg-partition: Add support to create the u-boot boot config file
By leveraging the distro boot command feature in the u-boot, we can
compose the corresponding extlinux.conf when creating the wic image,
and let u-boot boot the kernel automatically. For more detail about
the u-boot distro boot command feature, please see doc/README.distro
in u-boot source files.

(From OE-Core rev: bdf8ae540af12ecc9ad60efd3651b0f71d12d3bd)

Signed-off-by: Kevin Hao <kexin.hao@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 21:45:58 +01:00
Kevin Hao
cb78ff423e wic: bootimg-partition: Add do_configure_partition() method
We want to add some u-boot specific config file. Before doing this,
we need know what files will be installed into this partition. So
move the codes about parsing the IMAGE_BOOT_FILES into
do_configure_partition(). No function change.

(From OE-Core rev: 3203037471c761f635d1f1c512cb623ff6977a41)

Signed-off-by: Kevin Hao <kexin.hao@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 21:45:58 +01:00
Kevin Hao
9f66ec6cb8 wic: bootimg-partition: Use the relative path in the install_task
(From OE-Core rev: 3a85df7bde1e82cd508da8a78b930fa361a0e720)

Signed-off-by: Kevin Hao <kexin.hao@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 21:45:58 +01:00
Kevin Hao
b5648a0319 wic: Remove the unused variable Partition.sourceparams_dict
We choose to pass the source parameters to the source plugins' hooks
via a local variable srcparams_dict. So the Partition.sourceparams_dict
is not used by anyone and seems pretty confused. So drop it.

(From OE-Core rev: d7130a7d0e61021f71fec1d7ae7d37ebb27f0e03)

Signed-off-by: Kevin Hao <kexin.hao@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 21:45:58 +01:00
Richard Purdie
0bccf1dab1 package_manager: Add definitions for riscv machines
Add definitions to the locale table for riscv architecture.

(From OE-Core rev: 624f6fd50da764cde71eb24e40742a48fa65d13c)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 21:45:58 +01:00
Yevgeny Popovych
e0e333b485 ref-manual: Removed misleading paragraph in siteinfo.bbclass
The section on the siteinfo.bbclass file had a paragraph indicating
base.bbclass included siteinfo.class.  This is not true since
2010.  I removed the paragraph.

(From yocto-docs rev: 5d39220baddc9db5c1182cea8447e5c4a2e42bd8)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:28:44 +01:00
Scott Rifenbark
e7a5c98b5f dev-manual: Updated the section on CROPS
Final edits to this section.  The procedure is more complete now.

(From yocto-docs rev: 5dcc32917c360e32475851b2b580d3d8bc988d7e)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:28:44 +01:00
Scott Rifenbark
46fea20b45 dev-manual: Updated link to "CROPS" to be to the GitHub area.
The original link was to a deprecated site.

(From yocto-docs rev: 067094d10a8d02d0873deb87508377e896e4f3c7)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:28:44 +01:00
Paulo Neves
c610d310e7 dev-manual, ref-manual: Updated available names for TEST_TARGET
The documentation of available names for TEST_TARGET has been
updated to match the convention of using the class names of
controllers.

This commit was modified some to make it work.  Fixed some
formatting errors and isolated and changed missed instances.

(From yocto-docs rev: 1bec1dc38cdd1746ce6dd539f9c3e5665d12ab8e)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:28:44 +01:00
Scott Rifenbark
3d96c5ef26 dev-manual: Edits to section on setting up CROPS
Performed some edits to bring things in line for the "build host"
terminology.

(From yocto-docs rev: 4fedbdac437691b8a0f8d56931fcaad461c7463a)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:28:43 +01:00
Scott Rifenbark
324d3ad00a documentation: Changed section title for required packages.
The title needs to use the terminology "Build Host" to be consistent
with the manual set.  I updated the title and the many links into that
section.

(From yocto-docs rev: 930030433e58e6180ee4f95e559d079c3899defc)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:28:43 +01:00
Scott Rifenbark
534586c571 dev-manual: Updates to "Setting Up a Native Linux Host"
I made some terminology changes to be consistent with the
"build host" term.

(From yocto-docs rev: 8e00f6453cbc470c7572f2c18e23e44ce18a7336)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:28:43 +01:00
Scott Rifenbark
2fcca2d645 dev-manual: Adjusted "build host" wording.
Fixed the "Preparing the Build Host" section to consistently use
the terminolgy "build host".

(From yocto-docs rev: 6199dde0611b4f077dfb2ad1ebdcc1414c4a081a)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:28:43 +01:00
Scott Rifenbark
84331dc67e dev-manual: Added "recommended" for choosing native linux build host.
(From yocto-docs rev: cddc649590fc6cea74a0b78a584e00e22088541c)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:28:43 +01:00
Scott Rifenbark
7a4d6b011f documentation: Fixed bad target ID for the dev-manual.
This fix involved a few other manuals.

(From yocto-docs rev: d2659951a458a8db773e8c1b2b86a7b109d667fa)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:28:43 +01:00
Scott Rifenbark
ddf18f727d dev-manual: Fixed typo in id anchor for a section heading.
(From yocto-docs rev: 05e6520843fda764f3090c7d681f8fdad5f80311)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:28:43 +01:00
Scott Rifenbark
3904413fcc dev-manual: Updated team development environment section.
Found several areas that needed improvement.  Made these
modifications.

(From yocto-docs rev: e2125363d39b9a54a371fc737cc9b55d66c9be59)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:28:43 +01:00
Scott Rifenbark
299f2e8efb dev-manual: Updates to intro chapter.
(From yocto-docs rev: a991415c8645a3ad31bf2dd20f932d7f3b4ebe18)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:28:43 +01:00
Scott Rifenbark
3e3f6d55b1 ref-manual: UPdates to the PNBLACKLIST variable description
(From yocto-docs rev: c8a606dbce01132e95250c33270ff729cadc2c0e)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:28:43 +01:00
Scott Rifenbark
720baedefc sdk-manual: Minor intro wording change
(From yocto-docs rev: 953db3d0b5fe14411e944b021a2f6f50a5bdeabd)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:28:43 +01:00
Scott Rifenbark
601e84c204 ref-manual: Removed non-existant variable from PACKAGE_WRITE_DEPS description
Took out an occurrence of PACKAGE_WRITE_DEPENDS

(From yocto-docs rev: f7b2c7c08f3f504e14943a01e7fc0a73c96e9636)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:28:43 +01:00
Scott Rifenbark
f4d1317d8f sdk-manual: Fixed bad anchor string.
Broken link fixed.

(From yocto-docs rev: 420bc55ceac1d8c89f9153a70c8b4e3ca38d747d)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:28:43 +01:00
Scott Rifenbark
880c15fe31 sdk-manual: Updated section on minimizing eSDK installer size
I made some re-writes for clearity.

(From yocto-docs rev: a68619a2ba8b7877cde6c9ef7dbb726adc75b0cd)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:28:43 +01:00
Scott Rifenbark
bfe4fef098 sdk-manual: Converted bullet list to ordered list
On second thought, the list I turned into a bullet list from the
previous commit was a bit hasty.  That list is order dependent.
Reverted the list.

(From yocto-docs rev: 9ea640ffea2a2c9827f18070a5b287453c8653e9)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:28:43 +01:00
Scott Rifenbark
5cdf2e8b2c sdk-manual: Updated "Providing Additional Installable Extensible SDK Content"
The list appears to be not a numbered list.  Fixed that.  Also, provided
better wording around "exposing" the sstate-cache.

(From yocto-docs rev: 15c65db41c9e6eddf7d12e138f6c63755e845beb)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:28:43 +01:00
Scott Rifenbark
c89427bebe sdk-manual: Provided better wording for sharing HTTP or HTTPS server
Step 1 of the "Providing Updates to the Extensible SDK After Installation"
section really did not do much for the reader regarding setting up a
HTTP or HTTPS directory.  I added more detail on how to generally do
that.

(From yocto-docs rev: ff250cea239668db5fe26aa912942c0d142833fa)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:28:43 +01:00
Scott Rifenbark
bf5e8e860c sdk-manual: Edits to the section that changes the sdk title
Made some suggestions on how and where to edit the SDK_TITLE
variable.

(From yocto-docs rev: 4a4393e00c7108eefaaeaa3951a75524589bf360)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:28:43 +01:00
Scott Rifenbark
9af1d60bcc sdk-manual: Updated section on changing SDK installer title.
I added more detail to this section.

(From yocto-docs rev: 15beb33eadd03391a1af0c9bad0620cefad2a0e2)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:28:43 +01:00
Scott Rifenbark
9fc6304bf8 ref-manual: Updated the SDK_TITLE variable description
Provided more detail and a cross-reference into the SDK manual
where you can change the title through the variable.

(From yocto-docs rev: 9617fa70caef48328455a02d5260e536fac19c53)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:28:43 +01:00
Scott Rifenbark
55d5355b84 sdk-manual: Added section on changing the default ext. SDK install directory
(From yocto-docs rev: d3f0c7b9e2ddea3fec6f42fc9a3c8806b02119f3)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:28:43 +01:00
Scott Rifenbark
0efdd1d4da ref-manual: Added SDKEXTPATH variable description.
This variable is the default installation directory for the
Extensible SDK.  By default, it is "poky_sdk".  You can override
this variable so it needed to be documented.  The ideal place to
override it is in the distribution configuration file.

(From yocto-docs rev: 67eca50fa973073ce6e7975ab66b89b9706c25c0)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:28:43 +01:00
Scott Rifenbark
3b374b09df sdk-manual: Updates to sections for updating installed Ext SDKs
There are two sections that deal with this topic.  One is from the
standpoint of a user using a 3rd party published and installed
extensible SDK ("Applying Updates to an Installed Extensible SDK").
The other is from the standpoint of a person providing Extensible
SDKs for consumption ("Providing Updates to the Extensible SDK
After Installation").  These sections needed some closer examination
regarding fully describing what was going on.  I provided some
re-writes to both.

(From yocto-docs rev: 1c60b13b5f1813d6e3688e1efce32b7f31422e86)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:28:43 +01:00
Scott Rifenbark
6cb9fddcab sdk-manual: Changed title to updating the SDK after install
The title for the section on how to effect changes to an installed
extensible SDK is better suited as "Providing Updates to the
Extensible SDK AFter Installation."

(From yocto-docs rev: 2120ba194abada1769be28ae2737ac12a16adebc)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:28:43 +01:00
Scott Rifenbark
67654c6100 sdk-manual: Fixed grammar error
In "Providing Updates After Installing the Extensible SDK" section,
Step 1 had a bit of a grammar error.  Not technically, but it
could have been written better.  I fixed that.

(From yocto-docs rev: 20f1cad5a813697afd99837699bf52a6586893bb)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:28:43 +01:00
Scott Rifenbark
5e1a56eca6 sdk-manual: Updated section on changing title of extensible SDK installer
I added more information on how this is done.  Still could use a bit
of detail on how you actually do it.

(From yocto-docs rev: 007bbe40fd11a5f880adf7ad8137d1535f08c815)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:28:43 +01:00
Scott Rifenbark
895feaac61 ref-manual: Updated DISTRO_NAME variable description.
I provided some real detail on this variable.  It was woefully brief.

(From yocto-docs rev: 4282fabddc81bf4c0fbd0a641ec4f1e9754660c2)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:28:43 +01:00
Scott Rifenbark
91c70cf4a0 ref-manual: Updated the DISTRO variable description
I added a cross-reference to the "DISTRO_NAME" variable as it is
the long version of the distribution name.

(From yocto-docs rev: bb5638409faadb9c6a5fbca729e4e6b8a220433d)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:28:43 +01:00
Scott Rifenbark
059d5e6e57 sdk-manual: Grammar fix
(From yocto-docs rev: b850e0d520401a52fbba083975f05f529b2b554d)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:28:43 +01:00
Scott Rifenbark
16eddf2be6 sdk-manual: Updates to "Adjusting the Extensible SDK to Suit Build Host"
I updated this section with clearer text.

(From yocto-docs rev: 433388ff37297d905c465a5f05d93953dfe062c5)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:28:43 +01:00
Scott Rifenbark
450a3d75f8 sdk-manual: Updates to "Configuring the Extensible SDK" section
Made improvements to this section and tied the variables together
for the explanation.

(From yocto-docs rev: de882b81ed8525dee5e10f247cc6f5c8f15e0f72)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:28:42 +01:00
Scott Rifenbark
eabfa9f398 ref-manual: Fixed cross-reference wording in SDK_LOCAL_CONF_WHITELIST
Wording did not match that of similar SDK variables.

(From yocto-docs rev: 696eb9ff0b89222dc696adc0bd28247c0a0c731a)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:28:42 +01:00
Scott Rifenbark
f0fe442143 ref-manual: Fixed grammar error in SDK_INHERIT_BLACKLIST description
(From yocto-docs rev: 0a5775f7ad3e0b6531fcfd1d328d8e0da8727400)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:28:42 +01:00
Scott Rifenbark
4d1feb55fa ref-manual: Added cross-reference to SDK_LOCAL_CONF_BLACKLIST var
Put in a cross-reference to the section in the sdk-manual where it
talks about customizing the configuration of the extensible SDK.

(From yocto-docs rev: 062db19dd56cc1827ebd7614eb8a54660421df62)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:28:42 +01:00
Scott Rifenbark
701e9c3fe5 ref-manual: Updated the SDK_INHERIT_BLACKLIST variable description
Added information on the class in which the default is set.  Also,
put in a reference for more information on customizing the
extensible SDK configuration.

(From yocto-docs rev: a0145996aeac1bb45fea9f613789b00327f92d1e)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:28:42 +01:00
Scott Rifenbark
e9fd884751 ref-manual: Updated the SDK_LOCAL_CONF_WHITELIST variable description
Enhanced this description by indicating the class that it is set in
and by including a pointer back into the sdk-manual where filters
are described for extending the extensible SDK.

(From yocto-docs rev: 355b05366aadc337ec3337c0a3c918a23027923b)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:28:42 +01:00
Scott Rifenbark
267aa12a2c ref-manual: Updated the SDK_LOCAL_CONF_BLACKLIST variable description
Added more detail including the class that sets the default variables
for exclusion and the list of actual variables that are excluded by
default.

(From yocto-docs rev: f24287851998d554575c6aaf9dcc50d198931e48)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:28:42 +01:00
Scott Rifenbark
2c8cc82b3e sdk-manual, mega-manual: Updated the fig for installed ext. SDK
This figure had changed.  I updated the file and folder hierarchy.

Also fixed some wording.

(From yocto-docs rev: 359292397781f9f5eac2fb693d89ec286ddf9940)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:28:42 +01:00
Scott Rifenbark
7bdb9a7bcc sdk-manual, mega-manual: Updated standard SDK install directory figure
The figure was incorrect for the installed file and folder hierarchy
for a standard SDK.  I updated it.  This figure goes in both the sdk-manual
and the mega-manual.

(From yocto-docs rev: a0dc11ce74bba0a18f385d9800f93524340ed033)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:28:42 +01:00
Scott Rifenbark
5c6ce7e467 sdk-manual: Final edits to the extracting root filesystem section
Verified a good example and updated the text to match that example.

(From yocto-docs rev: 053467557ef22ce37762222a2997ff9c10be87e8)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:28:42 +01:00
Scott Rifenbark
f6bf56a17e sdk-manual: Added note in step to set SDKMACHINE
The value of SDKMACHINE must match the architecture of the machine
on which the SDK installer is being built if you are building an
installer for an extensible SDK.  I added a note to this effect.

(From yocto-docs rev: ffdd9a9d00cccf270b5aa236279e6eeea0ff47ed)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:28:42 +01:00
Ross Burton
beb93fff65 bitbake: utils/md5_file: don't iterate line-by-line
Opening a file in binary mode and iterating it seems like the simple solution
but will still break on newlines, which for binary files isn't really useful as
the size of the chunks could be huge or tiny.

Instead, let's be a bit more clever: we'll be MD5ing lots of files, but we don't
want to fill up memory: use mmap() to open the file and read the file in 8k
blocks.

(Bitbake rev: a0ac8d67f1471a0c611d691b856fede67efb53f6)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 09:45:02 +01:00
Andrej Valek
956278f4ec systemd: fixes for the compatibility interface
Use a heap allocated string to set arg_ifname, since a stack allocated
one would be lost after the function returns. (This last one broke the
case where an interface name was suffixed with a dot, such as in
`resolvconf -a tap0.dhcp`.)

(From OE-Core rev: 48775d2f02d6d4024403796b81d6398f3028b965)

Signed-off-by: Andrej Valek <andrej.valek@siemens.com>
Signed-off-by: Simon Ausserlechner <simon.ausserlechner@siemens.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 09:44:34 +01:00
Joshua Watt
04b474d53f linux-firmware: package Marvel usb 8997 firmware
Add package for the firmware required by the Marvell 8997 chipset when
connected over USB.

(From OE-Core rev: 650a33d88abfa42936b61465d2a4d42da53d4018)

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 09:44:33 +01:00
Khem Raj
95eb15f997 libunwind: Fix build with musl+security flags
Fixes
src/os-linux.c:63: undefined reference to `__stack_chk_fail_local'

(From OE-Core rev: 43894faa45884dcc3b6111ed67e1a96fbec019a8)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 09:44:33 +01:00
Peter Kjellerstedt
7bdfa2cc6e meson: Support building allarch recipes again
This registers "allarch" as a known CPU family.

(From OE-Core rev: f12b64e9332e3988953f87d8cea39ca309be5046)

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 09:44:33 +01:00
Peter Kjellerstedt
9f24972d79 meson: Split validate-cpu.patch in three
This makes it more suitable to work with, e.g., devtool. It also
prepares for the update to 0.47.0 when the first patch will no longer be
needed (as it is a backport).

(From OE-Core rev: e1297f9a951b1dbafd0e211be63b348f06b1f3cd)

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 09:44:33 +01:00
Khem Raj
d5ad78e5da eglinfo: Fix build with raspberrypi with userland graphics driver
Let pkgconfig figure out headers and libraries instead of manually
forcing waf to do it.

(From OE-Core rev: 283026adda7c184e213dacd7f4e42678c304866a)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 09:44:33 +01:00
Khem Raj
7b5cfa730e musl: Fix dirent struct alignment issue seen on armv5te
- its a general problem however observed on armv5te based boards in OE
  other arches either have ways to compensate for misaligned access in hardware
  or compiler does not use 8byte alignment

- fix internal linux headers

Full logs
https://git.musl-libc.org/cgit/musl/log/?qt=range&q=9cad27a3dc1a4eb349b6591e4dc8cc89dce32277..1ad8138819ced49851e618c9c063aa0ffc86718c

(From OE-Core rev: 5fb668482e06ecd5de70a860d1bb9cef1019c4e8)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 09:44:33 +01:00
Jagadeesh Krishnanjanappa
138637e2b8 runqemu: exit gracefully with an error message if qemu system is not evaluated
It solves below error:
-- snip --
return 'qemu-system-%s' % qbsys
UnboundLocalError: local variable 'qbsys' referenced before assignment
-- snip --

[YOCTO #12846]

(From OE-Core rev: 519273f54c0b8a6fff36afeb7646d8e37717be22)

Signed-off-by: Jagadeesh Krishnanjanappa <jkrishnanjanappa@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 09:44:33 +01:00
Ross Burton
6c5d4f989d pcmciautils: remove from oe-core
PCMCIA is pretty rare these days, so now that the recipe is in meta-oe we can
remove it from oe-core.

(From OE-Core rev: 0f8dcb9c717201c4b1edf4fa55880b432bfb7723)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 09:44:33 +01:00
Khem Raj
aa5987c943 mesa: Disble TLS for musl
See https://bugs.freedesktop.org/show_bug.cgi?id=35268
mesa should infact stop using __attribute__((tls_model("initial-exec")))
until then we disale TLS in glx for musl
The problem could happen even on glibc if static TLS sizes are large enough
which would mean that additional space the glibc leaves for such rogue libraries
get consumed and then same problems show up there as well

Fixes errors seen in xorg logs e.g.

(EE) Failed to load /usr/lib/xorg/modules/extensions/libglx.so: Error relocating /usr/lib/libGL.so.1: _ITM_deregisterTMCloneTable: initial-exec TLS resolves to dynamic definition in /usr/lib/libGL.so.1

enable readonly text segment on x86 for musl

(From OE-Core rev: f3a59540d0d1f7ab42ba7cb5ff1a26ac3a8a9f68)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 09:44:33 +01:00
Richard Purdie
79d72d9045 selftest/package: Improve test to cover sparseness and hardlinking from sstate
The sparseness test was sometimes working and sometimes failing depending
on whether sstate was valid. This adds an explict test of sstate
to the test for both hardlinking and sparseness. Tweak the test name to
cover the fact its tests sparseness too.

(From OE-Core rev: fe5b37c07b6d07c350516ab6bf849d6d86a84004)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 09:44:33 +01:00
Richard Purdie
a1b4b7c0b4 sstate/lib.oe.path: Ensure file sparseness is preserved
Files when restored from sstate were missing their sparseness. Fix up various
functions to preserve this and make things more deterministic.

(From OE-Core rev: 055402e5504f041c346571e243c7cf0894955cad)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 09:44:33 +01:00
Richard Purdie
899a3694de selftest: Replace bitbake -p with bitbake -e
Parsing all the recipes is annoying when trying to re-execute oe-selftest
and also unnecessary as its really just a sanity check. When the tests were
originally being developed the guard was useful but less so now.

Replace it with bitbake -e which is fast and checks the basic configuration
is valid.

(From OE-Core rev: acec5180b8d2731002979179e08439b615631e70)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 09:44:33 +01:00
Richard Purdie
8ae762ada1 sstate: Ensure a given machine only removes things which it created
Currently if you build qemux86 and then generic86, the latter will
remove all of the former from deploy and workdir. This is because
qemux86 is i586, genericx86 is i686 and the architctures are compatible
therefore the sstate 'cleaup' code kicks in.

There was a valid reason for this to ensure i586 packages didn't get into
an i686 rootfs for example. With the rootfs creation being filtered now, this
is no longer necessary.

Instead, save out a list of stamps which a give machine has ever seen in
a given build and only clean up these things if they're no longer
"reachable".

In particular this means the autobuilder should no longer spend a load of time
deleting files when switching MACHINE, improving build times.

(From OE-Core rev: 5634f2fb1740732056d2c1a22717184ef94405bf)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 09:44:33 +01:00
Richard Purdie
26a786f869 package_manager/sdk: Use filtered copies of the deploy ipk/deb directories
Similar to rpm, use copies of the ipk/deb directories for rootfs construction.
This means the image creation code can no longer "see" recipes wich aren't in its
dependency chain which is good for a variety of reasons including determinism,
incompatible recipe (e.g. systemd/sysvinit) package conflicts and locking
performance.

(From OE-Core rev: c7c5f4065c102fde4e11d138fb0b6e25bffe0379)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 09:44:33 +01:00
Richard Purdie
ad6b737029 package_manager: Remove rpm specific pieces of create_packages_dir()
This function is generic, tweak the variable names and move out the rpm specific
directory name to make it truly generic and reusable for deb/ipk.

(From OE-Core rev: dba876639b1fb8ea3ccb182c91e19966c4052115)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 09:44:33 +01:00
Richard Purdie
71d87cce85 glibc: Fix locale archive path patch
The locale code uses the archive location in two places, ensure both are
corrected to use the environment variable which avoids nasty build
failures when archiving locales in images.

(From OE-Core rev: 3ab1249a2ac92a0fcb008e92cc9ee272441408f4)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 09:44:33 +01:00
Richard Purdie
65c8154f21 image: Add locale archive optimisation
Refactor the locale archive function from the SDK to also make it work during
general image creation. This reduces the size of the locales from 900MB to 220MB
in core-image-lsb-sdk.

The exception handling around subprocess was dropped as the standard subprocess
exception printing is better handled than the catchall exception.

(From OE-Core rev: 8ffd93bdb09b0a4a84b27dafcd684c6abba392ed)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 09:44:33 +01:00
Richard Purdie
20c8be711f selftest/package: Add test to ensure sparse files are preserved
Add a new element to the hardlink test to check we also preseve file
sparseness during the packing process. This should ensure we don't regress this
issue again.

(From OE-Core rev: 0a4e6974b49bf68c4a4098d339b5d655e202a3fd)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 09:44:33 +01:00
Richard Purdie
5f8a152513 xf86-video-intel: Fix for glibc
It fails to build wi9th glibc 2.28, add the missing required header inclusion.

(From OE-Core rev: 8f5f23a5a985f5d48973f27c143b0d5edb8ca797)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 09:44:33 +01:00
Richard Purdie
96b4362ce2 screen: Add virtual/crypt dependency
screen uses crypt() so add the missing DEPENDS triggered by glibc 2.28.

(From OE-Core rev: 77ca6be2bcac35a54546b0b468a4d68e8cc8b894)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 09:44:33 +01:00
Richard Purdie
06bc404124 glibc: Add make-native depends
glibc needs make >= 4 yet some of our build workers have older versions of
make. Add a make-native dependency to work around this until all our supported
distros have a recent version of make.

(From OE-Core rev: 0cd89e4af625941f8ab8c033f72f900a2979b304)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 09:44:33 +01:00
Khem Raj
650cc7003e sysvinit: Fix build with glibc 2.28 + libxcrypt
(From OE-Core rev: 87f2683ca19182dbffe48dc70a1f2628658fc08d)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 09:44:33 +01:00
Khem Raj
562210c8a0 ppp, libpam: Add missing dep on virtual/crypt
(From OE-Core rev: 0842bd7093040d1f99ffa0523b993341653b1c87)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 09:44:33 +01:00
Khem Raj
fddb23c310 glibc: Disable crypt support in glibc
Drop packaging libcrypt from 2.28+ onwards
We have independent crypt implementation coming from libxcrypt

(From OE-Core rev: 6146b8c4216daf56a69f4e3531861302df6a63a2)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 09:44:33 +01:00
Khem Raj
5601ae14d1 libxcrypt: Upgrade to 4.1.1
license update: Remove CDDL code with Public Domain pieces

c76847e3be (diff-fdcb2380ff1eeea2e5795ec115ba1c0d)

inherit pkgconfig as it uses pkg-config during build

(From OE-Core rev: 600b1f7da1bc308a52b566b77c994a90ed744b7e)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 09:44:33 +01:00
Khem Raj
a66052b364 libxcrypt: Provide virtual/crypt for target and native as well
virtual/crypt for musl will come from libc itself

(From OE-Core rev: e0ed7d74e61294a986f72a531b23f7e67922de29)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 09:44:33 +01:00
Khem Raj
0762ba7189 cross-localedef-native: Update to build with glibc 2.28
(From OE-Core rev: d1e02516dcce977a06320fcca968613466e43f29)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 09:44:33 +01:00
Khem Raj
fb535ac046 glibc: Upgrade to 2.28
License-Update: libidn is dropped from glibc and a testcase that was a particular contributor copyrighted

see

https://sourceware.org/git/?p=glibc.git;a=blobdiff;f=LICENSES;h=0e3a9fe39b26e97038d92f904508a4c3aa1bb43b;hp=b29efe01084af28cc40953d7317f22927c0ee3b7;hb=5a357506659f9a00fcf5bc9c5d8fc676175c89a7;hpb=7279af007c420a9d5f88a6909d11e7cb712c16a4
https://sourceware.org/git/?p=glibc.git;a=blobdiff;f=LICENSES;h=b29efe01084af28cc40953d7317f22927c0ee3b7;hp=80f7f1487947f57815b9fe076fadc8c7f94eeb8e;hb=7f9f1ecb710eac4d65bb02785ddf288cac098323;hpb=5f7b841d3aebdccc2baed27cb4b22ddb08cd7c0c

Drop upstreamed and backported patches

(From OE-Core rev: da8bf414922ce7af865fadc4a86fd96ab6262506)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 09:44:33 +01:00
Martin Jansa
19ee0f26cb dropbear.inc: add dependency on virtual/crypt to fix build with glibc-2.28
configure tests crypt() existence with:

dnl We test for crypt() specially. On Linux (and others?) it resides in libcrypt
dnl but we don't want link all binaries to -lcrypt, just dropbear server.
dnl OS X doesn't need -lcrypt
AC_CHECK_FUNC(crypt, found_crypt_func=here)
AC_CHECK_LIB(crypt, crypt,
        [
        CRYPTLIB="-lcrypt"
        found_crypt_func=here
        ])
AC_SUBST(CRYPTLIB)
if test "t$found_crypt_func" = there; then
AC_DEFINE(HAVE_CRYPT, 1, [crypt() function])
fi

but that silently fails with glibc-2.28 and a bit later do_compile fails with;
http://errors.yoctoproject.org/Errors/Details/185895/

../dropbear-2018.76/sysoptions.h:237:3: error: #error "DROPBEAR_SVR_PASSWORD_AUTH requires `crypt()'."
  #error "DROPBEAR_SVR_PASSWORD_AUTH requires `crypt()'."
   ^~~~~

Add dependency on virtual/crypt so that do_configure detects it correctly.

(From OE-Core rev: d04703aef55e01c59329fc54660724e053f3f66c)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 09:44:33 +01:00
Martin Jansa
ec855fd0a3 glide: add INSANE_SKIP for textrel
* I'm not using glide, so I'm not going to fix it proplerly,
  it was just bothering me in world builds
* this is reproducible only with ptest in DISTRO_FEATUREs (for aarch64
  issue) and included security_flags.inc, more specifically with the PIE
  flags, so alternative work around is:
  SECURITY_CFLAGS_pn-glide = "${SECURITY_NOPIE_CFLAGS}"

(From OE-Core rev: a6295bc505df635ab3b66100d4ee7567c49f907e)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 09:44:33 +01:00
Martin Jansa
b0206bd90b go(-dep): add INSANE_SKIP for textrel
* I'm not using go or go-dep, so I'm not going to fix it proplerly,
  it was just bothering me in world builds
* this is reproducible only with ptest in DISTRO_FEATUREs (for aarch64
  issue) and included security_flags.inc, more specifically with the PIE
  flags, so alternative work around is:
  SECURITY_CFLAGS_pn-go = "${SECURITY_NOPIE_CFLAGS}"
  SECURITY_CFLAGS_pn-go-dep = "${SECURITY_NOPIE_CFLAGS}"

(From OE-Core rev: b689c72ad2dc84b8bb55ecbf72d95701707b9bb3)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 09:44:33 +01:00
Ross Burton
63a4ff7cf5 bitbake: checksum: sanity check path when recursively checksumming
In case something goes tragically wrong, catch a request to checksum / and
refuse.

(Bitbake rev: e7cd4c86ef8a2c2bbf068e84c83fdc9e052b6e3d)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-14 16:32:48 +01:00
Kai Kang
5581b374b9 bitbake: event.py: fix typo
(Bitbake rev: d49483eb733ee27325349246fa37a84140c0941d)

Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-14 16:32:48 +01:00
Ross Burton
a316be88cd classes: sanity-check LIC_FILES_CHKSUM
We assume that LIC_FILES_CHKSUM is a file: URI but don't actually verify this,
which can lead to problems if you have a URI that resolves to a path of / as
Bitbake will then dutifully checksum / recursively.

[ YOCTO #12883 ]

(From OE-Core rev: e2b8a3d5a10868f9c0dec8d7b9f5f89fdd100fc8)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-14 11:36:31 +01:00
Ross Burton
4b2513defa bzip2: use Yocto Project mirror for SRC_URI
The bzip.org domain expired and is now a holding site for adverts, so we can't
trust a tarball that appears on that site (luckily we have source checksums to
detect this).

For now, point SRC_URI at the tarball in the Yocto Project source mirror, but
set HOMEPAGE and UPSTREAM_CHECK_URI to the sourceware.org/bzip2/ page which
apparently will be resurrected as the new canonical home page.

(From OE-Core rev: 9e291d9923efc988abe8689c64bafbb29da06339)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-14 11:36:31 +01:00
Richard Purdie
5784b20d13 package: Fix file copying to preserve sparse files
We want to preserve sparse files when building the system, add the option
to tar to ensure we do this when copying files.

(From OE-Core rev: d86da5ae386a8129a966a53901de160823f4d250)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-14 11:36:31 +01:00
Khem Raj
735f139471 devtool: Use ConfigParser instead of SafeConfigParser
The SafeConfigParser class has been renamed to ConfigParser in Python
3.2+ see

http://bugs.python.org/issue10627

This alias will be removed in future versions.So we can use
ConfigParser directly instead.

(From OE-Core rev: 3c05c8fff779bd190b31fa8aa16b7a1b24420a60)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-14 11:36:31 +01:00
Mikko Rapeli
8d959ad31a perf: fail if src path does not exist
A missing src directory from a broken kernel recipe resulted
only in a warning:

WARNING: copyfile: stat of /home/builder/src/tmp-glibc/work-shared/target/kernel-source/tools/arch failed ([Errno 2] No such file or directory: '/home/builder/src/tmp-glibc/work-shared/target/kernel-source/tools/arch')

and the build failed horribly.

With this change it's an error which can not be missed:

ERROR: perf-1.0-r9 do_configure: Path does not exist: /home/builder/src/tmp-glibc/work-shared/target/kernel-source/tools/arch. Maybe PERF_SRC does not match the kernel version.
ERROR: perf-1.0-r9 do_configure: Function failed: copy_perf_source_from_kernel
ERROR: Logfile of failure stored in: /home/builder/src/tmp-glibc/work/target-linux/perf/1.0-r9/temp/log.do_configure.21083
NOTE: recipe perf-1.0-r9: task do_configure: Failed
ERROR: Task (/home/builder/src/poky/meta/recipes-kernel/perf/perf.bb:do_configure) failed with exit code '1'

To get get perf compiling from a custom kernel, a perf.bbappend can be
created which defines PERF_SRC as list of files and directories needed
from kernel source tree to compile perf. This varies between kernel
versions.

(From OE-Core rev: c392dabefc431dbfb31d6a1465c75ba9cc765804)

Signed-off-by: Mikko Rapeli <mikko.rapeli@bmw.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-14 11:36:31 +01:00
Chen Qi
fd85436b04 parselogs.py: output correct log location
The log entry in results is altered to remove 'target_logs'. This
causes wrong log location in output.

e.g.
   AssertionError: 1 != 0 : Log: /path/to/image/1.0-r0/postinstall.log

But when user wants to check the log, the user will find the log is
not present. The actual log file is /path/to/image/1.0-r0/target_logs/postinstall.log.

So fix to use the correct log location.

(From OE-Core rev: df3a2e21648d6b649ebda7e6032afbd63c939f2b)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-14 11:36:31 +01:00
Chen Qi
efd3d0debb man-db: rdepend on base-passwd to ensure installation order
Make man-db rdepend on base-passwd to ensure that base-passwd is
installed before man-db at rootfs time. This is to avoid the following
warning at rootfs time.

  warning: user man does not exist - using root

(From OE-Core rev: 95162276b169b84d61eaa73416cf0838a0a8a8bd)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-14 11:36:31 +01:00
Chen Qi
2da3314fa5 man-db: add volatile configuration file for sysvinit
Add volatile configuraiton file for man-db so that in sysvinit systems
we don't get failure when running `mandb'. The error message is like
below.

  mandb: can't create index cache /var/cache/man/579: No such file or
  directory

[YOCTO #12872]

(From OE-Core rev: 2c480b363ae80dcc55ec0228f8af0311e023fbf4)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-14 11:36:31 +01:00
Zhixiong Chi
4bd37c66f2 mobile-broadband-provider-info: fix .pc file conflict
Issue: LIN10-4485

Error: Transaction check error:
  file /usr/share/pkgconfig/mobile-broadband-provider-info.pc from install of \
  lib32-mobile-broadband-provider-info-dev.core2_32 conflicts with file from package \
  mobile-broadband-provider-info-dev.core2_64

(From OE-Core rev: fbb2df435140eafc3fe1ca7419398e3b5ef273c8)

Signed-off-by: Zhixiong Chi <zhixiong.chi@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-14 11:36:31 +01:00
Zhixiong Chi
70eb6be9b1 nspr: fix script conflict for multilib
Stop the nspr-config scripts conflicting in a multilib case.

(From OE-Core rev: b13fa9bf966bb6f132e82b94bf1ecf4b2e095dbe)

Signed-off-by: Zhixiong Chi <zhixiong.chi@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-14 11:36:31 +01:00
Zhixiong Chi
4e479cee5d libevent: fix the multilib header conflict
Error: Transaction check error:
  file /usr/include/event2/event-config.h conflicts between attempted installs of libevent-dev-2.1.8-r0.skylake_64 and lib32-libevent-dev-2.1.8-r0.x86

The conflict is the size macro definition between 32bit and 64bit
such as:
< #define EVENT__SIZEOF_LONG 8
> #define EVENT__SIZEOF_LONG 4
< #define EVENT__SIZEOF_PTHREAD_T 8
> #define EVENT__SIZEOF_PTHREAD_T 4

(From OE-Core rev: 49f979b13f1bc6ece0f343d41421aba43f8d9e21)

Signed-off-by: Zhixiong Chi <zhixiong.chi@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-14 11:36:31 +01:00
Chen Qi
96eb506b5b base-files: fix handling of resize
The current handling of resize is incorrect. Using `resize > /dev/null
2>&1 && resize > /dev/null' will cause the second resize command to not
execute because 'resize > /dev/null 2>&1' will fail for resize utility
from busybox.

What we really should do is just to check whether ${bindir}/resize
is executable and execute it if so. Using '-x' is sufficient.

(From OE-Core rev: 41688279cba3a5afc4fdc65fd245b9bb6ada695e)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-14 11:36:31 +01:00
Chen Qi
b6fbb3f3d4 busybox: move init related configs to init.cfg
Move init related configs to init.cfg.

These config items do not make much sense unless busybox is selected
as the init manager. They should belong to init.cfg.

(From OE-Core rev: 4af10fe67a31368163bb5d468ee2c5a85ce0fff3)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-14 11:36:31 +01:00
Andrej Valek
6b5b26b458 libxml2: Fix CVE-2018-14404
Fix nullptr deref with XPath logic ops

If the XPath stack is corrupted, for example by a misbehaving extension
function, the "and" and "or" XPath operators could dereference NULL
pointers. Check that the XPath stack isn't empty and optimize the
logic operators slightly.

CVE: CVE-2018-14404
(From OE-Core rev: 69315177732a1d260a3315fe8c4c4c44653ae0c8)

Signed-off-by: Andrej Valek <andrej.valek@siemens.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-14 11:36:31 +01:00
Changqing Li
a3d58c40ff curl: support multilib installation of curl-config
(From OE-Core rev: b3fe71af20997921360b6ac7d100b5baf9708d53)

Signed-off-by: Changqing Li <changqing.li@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-14 11:36:31 +01:00
Zhixiong Chi
ecd4ac1962 multilib-script: Fix ALTERNATIVE_${PN} overwrite issue
If multilib scripts handle more than one file per package, the variable
ALTERNATIVE_${PN} will be overwritten and there will be only one symbol
link file. Append to the variable to avoid this.

(From OE-Core rev: f474a7ed02acaffe5d0fcc67e06dde17fc8e4d0e)

Signed-off-by: Zhixiong Chi <zhixiong.chi@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-14 11:36:31 +01:00
Christopher Clark
e02e5c52fd libjpeg-turbo: fix timezone of reproducible build timestamp
Avoids producing different build results in different timezones.
Uses UTC with SOURCE_DATE_EPOCH.

(From OE-Core rev: b159cb615feb7f27f8d2afc71f547742bb19cde0)

Signed-off-by: Christopher Clark <christopher.clark6@baesystems.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-14 11:36:31 +01:00
Jaewon Lee
c0f9caeda5 kernel-yocto.bbclass: Adds oe-local-files path (devtool) to include directives
The devtool-source class moves all local files specified in SRC_URI to
an oe-local-files directory. When using devtool and a recipe space kernel-meta,
devtool modify throws an error because the paths the kernel-yocto class
is looking for feature directories in, don't include the oe-local-files
directory which devtool is using.

This patch checks for feature directories in oe-local-files,
and if present, adds that path to include directives.

[YOCTO #12855]

(From OE-Core rev: 4eceae7e3e6dab935e2cf49b75148139192fc6e7)

Signed-off-by: Jaewon Lee <jaewon.lee@xilinx.com>
Signed-off-by: Alejandro Enedino Hernandez Samaniego <alejandr@xilinx.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-14 11:36:31 +01:00
Jaewon Lee
97684b24b3 devtool-source.bbclass: Support kernel-fragments/patch not in SRC_URI
When using a recipe space kernel-meta, scc files are added through
SRC_URI, but they may include corresponding kernel fragments or patches
that are not necessarily in SRC_URI.

For bitbake, this is not a problem because the kernel-yocto class adds
the path where the .scc file was found to includes which consequentially
makes the .cfg, .patch file available to the kernel build.

However, when using devtool, only files specified in SRC_URI are copied
to oe-local-files in devtool's workspace. So if the cfg/patch file is not in
SRC_URI, it won't be copied, causing a kernel build failure when trying
to find it.

This fix parses local .scc files in SRC_URI, copies the corresponding
.cfg/.patch file to devtool's workdir, and also adds it to local_files
so it is available when doing a devtool build for the kernel.

[YOCTO #12858]

v2: also supporting patch not in SRC_URI
v3: fix spacing issues

(From OE-Core rev: 5dffd5403664dfcc9e8e42fd3581d5cb70823d7e)

Signed-off-by: Jaewon Lee <jaewon.lee@xilinx.com>
Signed-off-by: Alejandro Enedino Hernandez Samaniego <alejandr@xilinx.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-14 11:36:31 +01:00
Richard Purdie
0472cc2368 libtool-cross: Handle ccache sstate 'infection' issues
On a system without ccache, f you:

INHERIT += "ccache"
bitbake libtool-cross
<remove INHERIT>
bitbake apmd

then it fails due to being unable to find ccache. The references to ccache are
coded into libtool-cross but the sstate checksum doesn't reflect this due to the
way the class is coded (output should be the same regardless).

The simplest solution is to remove references to ccache from the libtool script.
The output then works regardless of whether ccache is present or not. The
libtool-cross script is only used in a handful of cases (most of the time its
dynamically generated by autoconf) so any performance issue is minor.

(From OE-Core rev: ed550a49d2114c56e5bc033ecd0e83073d2d4067)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-14 11:36:31 +01:00
Richard Purdie
79457a3e2b sstate: Remove DEPLOY_DIR_IMAGE from SSTATE_DUPWHITELIST
Replace the generic whitelist entry with entries for the three specific
'problem' cases in OE-Core. This means the general DEPLOY_DIR_IMAGE entry
doesn't mask problems for others as was recently encoutered by users
reported on irc. In the whitelisted cases they occur only in multilib builds
and the files are identical.

(From OE-Core rev: 05f6042a40bb772f7ce8d6819c5b2937d8c9808d)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-14 11:36:31 +01:00
Richard Purdie
b5970ab651 oeqa/esdk/devtool: Drop OETestDepends usage
OETestDepends doesn't work with parallelism and in this case we don't
really need this dependency, it would just short out some tests quickly
in the rare case the esdk environment was broken.

Currently this is masking tests which is a much worse problem and we
can't make OETestDepends work reliably with parallelism so drop the
dependencies.

(From OE-Core rev: b3b1e1881240b8e2a32dd5c1dc3b7387f0819576)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-14 11:36:31 +01:00
Urs Fässler
483143a38e cmake: fix compiling some C++ projects with Yocto SDK and GCC
Setting CMAKE_SYSROOT in the toolchain file allows CMake to correctly
remove user-provided system include directories pointing to
<sysroot>/usr/include. The mentioned projects failed with "stdlib.h:
No such file or directory #include_next <stdlib.h>".

(From OE-Core rev: cb42802f2fe1760f894a435b07286bca3a220364)

Signed-off-by: Urs Fässler <urs.fassler@bbv.ch>
Signed-off-by: Raphael Freudiger <raphael.freudiger@siemens.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-14 11:36:31 +01:00
Andre McCurdy
c1e8a02609 openssl_1.0: drop unnecessary call to perlpath.pl from do_configure()
The perlpath.pl script is used to patch the #! lines in all perl
scripts in the utils directory. However, as these scripts are run via
e.g. "perl foo.pl", they don't actually rely on the #! path to be
correct (which can be confirmed by the observation that the path is
currently being set to ${STAGING_BINDIR_NATIVE}/perl, which doesn't
exist).

(From OE-Core rev: ba88fe46d47846042518a5a1017d782ba548202c)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-14 11:36:31 +01:00
Maciej Pijanowski
23a9cdba16 meta: replace deprecated "SERIAL_CONSOLE"
SERIAL_CONSOLE was already deprecated in 2013, yet still some
machine configuration files were using it. This patch replaces
it with SERIAL_CONSOLES, which is the successor.

The default value in systemd-serialgetty.bb can also be safely
transitioned from SERIAL_CONSOLE to SERIAL_CONSOLES, as this
recipe already uses SERIAL_CONSOLES within do_install().

The documentation seems to be already up do date.
beaglebone-yocto.conf in the bsp-guide already uses
SERIAL_CONSOLES. The ref-manual redirects from SERIAL_CONSOLE
to SERIAL_CONSOLES.

[YOCTO #12653]

(From OE-Core rev: e5bde3d466869df9fce559e49842ac245153d045)

Signed-off-by: Maciej Pijanowski <maciej.pijanowski@3mdeb.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-14 11:36:31 +01:00
Daniel Díaz
c870856a2d multilib_header: recognize BPF as a target
When building with `clang -target bpf` using the
multilib_header, a recursion was unavoidable because
bits/wordsize.h would #include itself, still lacking
a definition for __MHWORDSIZE or __WORDSIZE.

(From OE-Core rev: 70b41b3c335a80b4ac243f468f22331d261299db)

Signed-off-by: Daniel Díaz <daniel.diaz@linaro.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-14 11:36:31 +01:00
Daniel Díaz
bb2db47876 glibc: Make bits/wordsize.h multilibbed again
As reported by ChenQi, leaving bits/wordsize.h out of being
multilibbed introduced a problem in building the SDK for
arm64:
  Error: Transaction check error:
    file /usr/include/bits/wordsize.h conflicts between attempted installs of lib32-libc6-dev-2.27-r0.armv7vet2hf_vfp and libc6-dev-2.27-r0.aarch64

This effectively reverts commit a74c77d6.

(From OE-Core rev: 90ad502bf8faa233e25cf297c1eeefcb0367aea3)

Signed-off-by: Daniel Díaz <daniel.diaz@linaro.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-14 11:36:31 +01:00
Martin Jansa
70576a5049 man-pages: respect api-documentation
* let manpages.bbclass to enable manpages PACKAGECONFIG based on
  api-documentation DISTRO_FEATURES
  PACKAGECONFIG_append_class-target = " ${@bb.utils.contains('DISTRO_FEATURES', 'api-documentation', 'manpages','', d)}"
* it's true that building man-pages without manpages being enabled
  doesn't make much sense, but it's included through couple
  packagegroups:
  meta/recipes-core/packagegroups/packagegroup-self-hosted.bb:    man-pages \
  meta/recipes-extended/packagegroups/packagegroup-core-lsb.bb:    man-pages \
  or in world even for people who might not be interested
  in man-pages

(From OE-Core rev: dc13bf30b54855f1db07b415fa4395f7e0bfc4db)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-14 11:36:31 +01:00
Martin Jansa
e45986743e perf: inherit manpages instead of adding man to RDEPENDS_${PN}-doc
(From OE-Core rev: 92c79abfdedb4b9f16191e253cf2dcec9e2f0cfb)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-14 11:36:31 +01:00
Khem Raj
13028bd6e6 lib/oe: Fix collections ABCs DeprecationWarning in Python 3.7+
- Prefer collections.abc (new in Python 3.3) over collections for abstract base classes

- In Python 3.8, the abstract base classes in collections.abc will no longer be exposed in
  the regular collections module. This will help create a clearer distinction between
  the concrete classes and the abstract base classes."

- https://docs.python.org/3.7/whatsnew/3.7.html#deprecated

- see c66f9f8d39

(From OE-Core rev: e763151e1f7cfe9ea56de06f41769f8a3d74d219)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-14 11:36:31 +01:00
Ross Burton
37c4f89d71 oeqa/sdk/buildgalculator: check for nativesdk-gettext-dev
We don't need target gettext to build, but nativesdk-gettext-dev (for nls.m4).

(From OE-Core rev: 0474326d79b7675dabe63f691733e8c6b24b2fb0)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-14 11:36:31 +01:00
Christopher Clark
028a292001 binutils: enable x86_64-pep for producing EFI binaries on x86-64
Add x86_64-pep emulation support to the set enabled for x86_64 targets
to enable the linker to produce Portable Executables for EFI binaries.

Enables building the x86-64 EFI variant of the Xen hypervisor for
the OpenXT Project.

(From OE-Core rev: 3d493838f0284948a09693ad65656cb7afbb21cc)

Signed-off-by: Christopher Clark <christopher.clark6@baesystems.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-09 23:47:56 +01:00
Maksym Kokhan via Openembedded-core
a15cad08de libusb: Add ptest
The run-ptest script was added to run existing libusb1 tests and libusb1
recipe was changed to add ptest support to that package.

(From OE-Core rev: 3f0106bf2e41197def3bf0a5b184b73a9802fb91)

Signed-off-by: Maksym Kokhan <maksym.kokhan@globallogic.com>
Reviewed-by: Andrii Bordunov <andrii.bordunov@globallogic.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-09 23:47:56 +01:00
Lei Maohui
b9aaae417a sysprof: Enable for aarch64.
It can be compiled for aarch64, so deleted the limit for aarch64.

(From OE-Core rev: a80d1c97eb51c6f0bf3e81afed23a2be403ad559)

Signed-off-by: Lei Maohui <leimaohui@cn.fujitsu.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-09 23:47:56 +01:00
foocampo
8fc56faa5d package: skip strip on signed kernel modules
Executing strip action on kernel modules removes the signature.
Is not possible to strip and keep the signature, therefore avoid
strip signed kernel modules.

(From OE-Core rev: 4c47e5f171fa2603355e2f9183065ce8137a18c7)

Signed-off-by: Omar Ocampo <omar.ocampo.coronado@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-09 23:47:56 +01:00
Anuj Mittal
3a1e44dea1 gst-validate: 1.14.1 -> 1.14.2
(From OE-Core rev: b8d5811b7306025bb8b2b7efd42eddb864584ba6)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-09 23:47:55 +01:00
Anuj Mittal
83a9651fbf gstreamer1.0-python: upgrade 1.14.1 -> 1.14.2
(From OE-Core rev: b204a2156dd89154796885c2ab36942dd8a14baf)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-09 23:47:55 +01:00
Anuj Mittal
77caf9a208 gstreamer1.0-omx: upgrade 1.14.1 -> 1.14.2
(From OE-Core rev: 326c2d2eae13a824b3269378d52d53c26a483aa6)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-09 23:47:55 +01:00
Anuj Mittal
fdc0516d01 gstreamer1.0-libav: upgrade 1.14.1 -> 1.14.2
(From OE-Core rev: 822d1a74a9e2d624dad1c233ac6bf11fc8f147b0)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-09 23:47:55 +01:00
Anuj Mittal
c69d36b9bf gstreamer1.0-rtsp-server: upgrade 1.14.1 -> 1.14.2
(From OE-Core rev: 5994c6ab9e31139397d429761bf5baeedcc4369b)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-09 23:47:55 +01:00
Anuj Mittal
0220b25bc9 gstreamer1.0-vaapi: upgrade 1.14.1 -> 1.14.2
(From OE-Core rev: 0b5e60a1201385bfac518760a3f6bafdd5da6157)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-09 23:47:55 +01:00
Anuj Mittal
e97c3e60c2 gstreamer1.0-plugins-ugly: upgrade 1.14.1 -> 1.14.2
(From OE-Core rev: b110d58bdee847aae1555416f0e0639914fbfd95)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-09 23:47:55 +01:00
Anuj Mittal
04e713b349 gstreamer1.0-plugins-bad: 1.14.1 -> 1.14.2
(From OE-Core rev: 92619c2444df4297d515fa58ff65cc270c3711b3)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-09 23:47:55 +01:00
Anuj Mittal
165143f324 gstreamer1.0-plugins-good: upgrade 1.14.1 -> 1.14.2
(From OE-Core rev: db7036bbab8da7e3fe4cd254529767c6e8413d41)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-09 23:47:55 +01:00
Anuj Mittal
0f644c05dc gstreamer1.0-plugins-base: upgrade 1.14.1 -> 1.14.2
(From OE-Core rev: 132950e13753b037f30dc92157e80b57d988da3a)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-09 23:47:55 +01:00
Anuj Mittal
517b65ec07 gstreamer1.0: upgrade 1.14.1 -> 1.14.2
(From OE-Core rev: 55ec53ebcc4b97dee7ec764e3fb3151f8b769b19)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-09 23:47:55 +01:00
Anders Roxell
c1c24bb0c5 conf/machine-sdk: Add aarch64 SDK machine
(From OE-Core rev: fb7a9318211d95d60da848d970f9bef27a7cecf9)

Signed-off-by: Anders Roxell <anders.roxell@linaro.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-09 23:47:55 +01:00
Khem Raj
7aa8658d05 ppp: Use openssl for the DES instead of the libcrypt / glibc
(From OE-Core rev: bdf443c8fce628a93f1ad5100dcaeb3c0f3a70ad)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-09 23:47:55 +01:00
Richard Purdie
dbda297fd9 bitbake: runqueue: Allow the hash validate function to have an idea of build completion
There is an oversight in the current hash validation API in that the
function can't know how many setscene tasks already completed. Rather
than trying to add additional parameters to the function, causing
incompatibilities, store the value in the datastore.

This is useful to allow build status reporting to the user for
figures on sstate reusage and build completion.

(Bitbake rev: ec037d3e49264037b81212f498d98e292ae7c334)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-08 10:52:00 +01:00
Richard Purdie
6bb9ac9c65 sstate: Add sstate usage summary to the build
Currently the user has no indication of how much sstate was already present
or that would be used by the build. This change adds some summary information
so that the user can see how much reuse is occurring. To fully work it
needs some extra information from a recent bitbake commit but this is
optional.

When combined with bitbake --dry-run this feature can be used to check
if sstate would be reused in a build.

[YOCTO #12749]

(From OE-Core rev: 596f76029ccb6f87c3b049552bd08f5034c41d9c)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-08 10:52:00 +01:00
Andre McCurdy
e9ec9bfdb7 openssl_1.0: drop unnecessary dependency on makedepend-native
The openssl Configure script will only select standalone makedepend
(vs running "$CC -M") when building with gcc < 3.x or with an Apple
Xcode version which predates the switch to clang (in approx 2010?).
Neither of these cases are possible when building under OE, therefore
the dependency on makedepend-native can be dropped (ie align the
openssl 1.0 recipe with the 1.1 recipe, which has dropped the
makedepend-native dependency already).

(From OE-Core rev: 4c5bd69e5cb203c8a4c2f3716c941661c0afc830)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-08 10:52:00 +01:00
Khem Raj
97067e175b libidn2: Fix charset.alias issue with musl
Fixes
ERROR: libidn2-2.0.5-r0 do_package: QA Issue: libidn2: Files/directories were installed but not shipped in any packag
e:
  /usr/lib/charset.alias
Please set FILES such that these items are packaged. Alternatively if they are unneeded, avoid installing them or del
ete them within do_install.

(From OE-Core rev: 3f3899e9e68aae2d43cd41e2f0760ac9da6e86e5)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-08 10:52:00 +01:00
Joshua Watt
033fca1671 classes/sanity: Clean up getstatusoutput usage
Replace usage of oe.utils.getstatusoutput() with direct subprocess
calls.

(From OE-Core rev: 2f44b9b5babf8c95340b141917c1142081f1e594)

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-08 10:52:00 +01:00
Paulo Neves
4a127a70a2 context.py: Do not mask exceptions needlessly.
There were a lot of assumptions in the controller import
code of context.py which were not true anymore.  These
assumptions reflected themselves by catching exceptions and
re-raising them with unhelpful error messages in other parts
of the code.

This commit does not fix the classes controller classes that
became broken after the refactor but at least it allows for
the exceptions to be thrown where the imports fail, thus
actually showing what exactly went wrong with the import.

An example of such an improvement is that before if the
controller class failed during it's init contructor the
controller would just be skipped and the task would just
complain it could not find the controller.  Now for example,
if there is a NamerError due to a variable not being
declared, the user will get that report.

(From OE-Core rev: 719b0e88b875b067551067874778061f99b8c4b4)

Signed-off-by: Paulo Neves <ptsneves@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-08 10:52:00 +01:00
Martin Jansa
8ecf87ec1d libjpeg-turbo: add -fomit-frame-pointer to DEBUG_OPTIMIZATION for armv[45] with thumb enabled
with thumb and debug enabled libjpeg-turbo gets stuck forever
when building for qemuarm.

libjpeg-turbo gets stuck in:
libjpeg-turbo/1_1.5.3-r0/build$ arm-webos-linux-gnueabi-gcc -march=armv5te -mthumb -fstack-protector-strong -Wformat -Wformat-security -Werror=format-security --sysroot=libjpeg-turbo/1_1.5.3-r0/recipe-sysroot -DHAVE_CONFIG_H -I. -I../libjpeg-turbo-1.5.3 -Wall -O -fno-omit-frame-pointer -g -feliminate-unused-debug-types -pipe -c ../libjpeg-turbo-1.5.3/turbojpeg.c  -fPIC -DPIC -o .libs/libturbojpeg_la-turbojpeg.o

when -mthumb, -fstack-protector-strong, -fno-omit-frame-pointer appear
together, removing one of them is enough for successful build.

similar to:
http://lists.openembedded.org/pipermail/openembedded-core/2018-May/150654.html
but in this case the build gets stuck instead of failure

(From OE-Core rev: 70af5f22f7a52fb4cbe64486948bcb2425a56d9e)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-08 10:52:00 +01:00
Martin Jansa
3f43492390 bash: add -fomit-frame-pointer to DEBUG_OPTIMIZATION for armv[45] with thumb enabled
with thumb and debug enabled bash gets stuck forever when building for qemuarm.

bash/4.4.18-r0/build/builtins$ arm-webos-linux-gnueabi-gcc  -march=armv5te -mthumb -fstack-protector-strong   --sysroot=bash/4.4.18-r0/recipe-sysroot -c  -DHAVE_CONFIG_H -DSHELL  -I. -I..  -I../../bash-4.4.18 -I../../bash-4.4.18/include -I../../bash-4.4.18/lib -I../../bash-4.4.18/builtins    -O -fno-omit-frame-pointer -g -DNON_INTERACTIVE_LOGIN_SHELLS read.c

when -mthumb, -fstack-protector-strong, -fno-omit-frame-pointer appear
together, removing one of them is enough for successful build.

similar to:
http://lists.openembedded.org/pipermail/openembedded-core/2018-May/150654.html
but in this case the build gets stuck instead of failure

(From OE-Core rev: ae41e1f263d20d5d83b2a7ca95dc955840d793e1)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-08 10:52:00 +01:00
Chen Qi
e77d45609a oe_syslog.py: fix for syslog-ng
When using syslog-ng as the syslog provider, oe_syslog test case fails
because it cannot find the syslog daemon. This is because it greps for
'syslogd' but syslog-ng's daemon is 'syslog-ng'. So fix it to check both
'syslogd' and 'syslog-ng'.

Also, when the test case fails, what I get is:
| AssertionError: 1 != 0 : No syslogd process; ps output:
<empty here>

This does not help user. The output is actually from the 'PS | GREP' command.
And when the 'PS | GREP' command fails, the output is always empty. So also fix
this problem. After the change, it looks like:
| AssertionError: False is not true : No syslog daemon process; ps output:
|   PID USER       VSZ STAT COMMAND
|     1 root     16476 S    {systemd} /sbin/init
|     2 root         0 SW   [kthreadd]
|     3 root         0 IW   [kworker/0:0]
...

(From OE-Core rev: b180fbd9d93db1c6351e183fbc08fc81cdc240c0)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-08 10:51:59 +01:00
Joshua Watt
24e9ed8bee classes/reproducible_build: Avoid dereferencing symlinks
Using os.path.getmtime() will dereference symbolic links in an attempt
to get the last modified time. This can cause errors if the target
doesn't exist, or worse map to some absolute build host path which would
make a build not reproducible.

(From OE-Core rev: fae23c72288068f90e2f357a8abf1384850c02ed)

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-08 10:51:59 +01:00
Khem Raj
d1870c9903 file: Update to 5.34
Distros which have glibc 2.28 on them otherwsise fail
to build due to some syscall mismatches

(From OE-Core rev: 990a9c944375146bb3f0208b30e8b7f50239cef5)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-08 10:51:59 +01:00
Khem Raj
41171c6c62 blktool: Fix build with glibc 2.28
(From OE-Core rev: 1c279929b87fda0eb2598e9e9f218dd38cfeb1a1)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-08 10:51:59 +01:00
Khem Raj
e803b9567a strace: Fix build with glibc 2.28
(From OE-Core rev: 2a37692d591411b05bfd9f0745ae00678b587b67)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-08 10:51:59 +01:00
Khem Raj
5e441f3f8a bison: Fix build break with glibc 2.28
(From OE-Core rev: 741415c58b3565764000028c26efd081212eb989)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-08 10:51:59 +01:00
Khem Raj
fd977a604a gzip: Fix build with glibc 2.28
(From OE-Core rev: 224500314aa76bf70cbe5dce2c7736e94b9a2ceb)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-08 10:51:59 +01:00
Khem Raj
56464dd396 bootchart2: Update to master-tip
This has several fixes to get it building with glibc 2.28+
remove backported patch which is not needed now

(From OE-Core rev: f1dc6b5eebf455c46036e200c1eaff34ebd50db1)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-08 10:51:59 +01:00
Khem Raj
ac8f224a9d findutils: Fix build with glibc 2.28
Fix foe gnulib bug and makedev header move in glibc 2.25+

(From OE-Core rev: 790cbe479804dfc37767da76d1ef235396038aae)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-08 10:51:59 +01:00
Khem Raj
95ca077ab8 m4: Workaround gnulib's fseeko.c implementation
exposed by glibc 2.28 for details see
https://lists.gnu.org/r/bug-gnulib/2018-03/msg00000.html

(From OE-Core rev: acca7f964bf9c21f3777085563a7928b8246f17f)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-08 10:51:59 +01:00
Khem Raj
f13c32446f systemd: Detect if statx struct is defined in sys/stat.h
Fixed build with glibc 2.28+

(From OE-Core rev: 776d14db9589eb2e2bca35da862ad0e260e3584c)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-08 10:51:59 +01:00
Nathan Rossi
4ffc885788 devicetree.bbclass: User/BSP device tree source compilation class
This bbclass implements the device tree compilation for user provided
device trees. In order to use this class, it should be inherited in a
BSP recipe which provides the sources. The default setup enables
inclusion of kernel device tree sources (though can be disabled by the
recipe by overriding DT_INCLUDE or KERNEL_INCLUDE).

This provides an additional mechanism for BSPs to provide device trees
and device tree overlays for their target machines. Whilst still
enabling access to the kernel device trees for base SoC includes and
headers.

This approach to providing device trees has benefits for certain use
cases over patching the device trees into the kernel source.

* device trees are separated from kernel source, allows for selection of
kernel and or kernel versions without needing to explicitly patch the
kernel (or appending to the kernel recipes).

* providing device trees from separate sources, from the layer,
generated by the recipe or other recipes.

This class also implements some additional features that are not
available in the kernel-devicetree flow. This includes population of
device tree blobs into the sysroot which allows for other recipes to
consume built dtbs (e.g. U-Boot with EXT_DTB compilation), device tree
overlay compilation and customizing DTC compilation args (boot
cpu/padding/etc.).

(From OE-Core rev: 3874c3859c3515fc8440fa9e776a02ad6ff3135c)

Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
Acked-by: Martin Hundebøll <mnhu@prevas.dk>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-08 10:51:59 +01:00
Hong Liu
a0b2bb6a9d icu:61.1 -> 62.1
1.Upgrade icu from 61.1 to 62.1.

2.0001-i18n-Drop-include-xlocale.h.patch has been merged.

(From OE-Core rev: 8be6cfb97ea8d5a7938c1ccbf8218a7bfa5e86a2)

Signed-off-by: Hong Liu <hongl.fnst@cn.fujitsu.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-08 10:51:59 +01:00
Hong Liu
2e7ecb8a44 vala:0.40.4 -> 0.40.8
Upgrade vala from 0.40.4 to 0.40.8

(From OE-Core rev: 34f9391ad7ccb8a4d5333bb8300bb65633b75999)

Signed-off-by: Hong Liu <hongl.fnst@cn.fujitsu.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-08 10:51:59 +01:00
Hong Liu
72f7af1b81 createrepo-c:0.10.0 -> 0.11.0
Upgrade createrepo-c from 0.10.0 to 0.11.0

(From OE-Core rev: f6634581fa0a81c4d68dc9179a755ad7b9d99357)

Signed-off-by: Hong Liu <hongl.fnst@cn.fujitsu.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-08 10:51:59 +01:00
Hong Liu
38feebf501 npth:1.5 -> 1.6
Upgrade npth from 1.5 to 1.6

(From OE-Core rev: df6a8760657b8aa256258046bad6b3be7df70650)

Signed-off-by: Hong Liu <hongl.fnst@cn.fujitsu.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-08 10:51:59 +01:00
Richard Purdie
e54754a9ac oeqa/systemdboot: Cleanup/improve the test
The second test is designed only to run after the first so we may as
well merge these together into one.

Also, use DEPLOY_DIR_IMAGE rather than constructing paths by hand. Drop
the misleading comment which was likely due to the original code reading
DEPLOY_DIR_IMAGE before setting MACHINE. Only read the variable once
which reduces bitbake -e calls.

Merge the setup/build functions into the main test as there is no other
use of them.

Also ensure the main second test pieces aren't masked out by a missing
file without showing test failures.

(From meta-yocto rev: 1b46e2c1acd2c0cd557740220bbc3ccb77dae127)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-07 12:13:14 +01:00
Richard Purdie
fc77dc63fe selftest/package: Fix hardlink test when using sstate
The build target won't cause the package task to run if things were already
built and in sstate. Ensure we run the package task explicitly to ensure
the test works as intended.

(From OE-Core rev: be20eb4f4ad77d9444028ca9632b74d5866d96b8)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-07 12:13:03 +01:00
Ross Burton
e931d910ed packagegroup-core-lsb: use new name for libasound
(From OE-Core rev: 4688ae93a74610513f4f52115339e24022e97a24)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-07 12:13:03 +01:00
Khem Raj
606ba474d9 Revert "gnutls: rationalise libunistring arguments"
This causes regression on build machines where libunistring is installed
on host. It is also because gnuts is using non standard AC macro called
AC_LIB_HAVE_LINKFLAGS to detect this library and it confusing cross builds.

This reverts commit 60fef4940de7f0440f1216eb2ea0ea683b3e8fdd.

(From OE-Core rev: d8d32b5a58eea161711e3539c4530682de551ede)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-07 12:13:03 +01:00
Alex Kiernan
422c756e0b net-tools: Ensure quilt only operates on local patches
When net-tools is built and the local patches haven't been applied, then
`quilt pop -a` will climb parent directories attempting to find a
{patches/.pc} directory; if this succeeds then we end up popping off
some completely unrelated patches from a parent directory.

Ensure that we do have a local patches directory and then turn off the
directory climbing so that we avoid this problem.

(From OE-Core rev: 61522645a1ccc8342706960efe90896001e94a8b)

Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-07 12:13:03 +01:00
Khem Raj
471c3387d4 meson: Add risc-v to known architectures
(From OE-Core rev: 65e0b318b8521c3213249693cc898374effcf531)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-07 12:13:03 +01:00
Joshua Watt
30352f3d84 alsa-lib: Cleanup packaging
Cleans up the packaging by moving libasound.so.2 back into the alsa-lib
package which was previously empty.

Previously, it was difficult to create an image that had libasound.so.2,
then create an SDK from that image that had the proper development
files, because the only way to get libasound.so.2 was to do:

 IMAGE_INSTALL += "libasound"

This however caused a problem because all of the development files that
would be desired in the SDK were located in alsa-lib-dev, which wouldn't
be included because alsa-lib wasn't included, and it was impossible to
include alsa-lib because it was an empty package that was culled.

(From OE-Core rev: c2fc6f87f8bbf4bc28f9adc45f116b2a692ea804)

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-07 12:13:03 +01:00
Ross Burton
8239a8b12a desktop-file-utils: allow target/nativesdk build, not just native
Also fix the license, as this is GPLv2+ not just v2.

(From OE-Core rev: c372bb230640e76af13795433adc76f506e12cc6)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-07 12:13:03 +01:00
Ross Burton
b152f84a73 oeqa/sdk: add test that CMake works
Add a new SDK testcase that builds assimp, a project that uses cmake.

Using TARGET_ARCH and TARGET_OS which is now exported into the environment,
check that the generated binaries match the ELF headers we expect.

(From OE-Core rev: b4acfa11b35b47c86d2d83d7b0693284a8dc7495)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-07 12:13:03 +01:00
Ross Burton
481833a693 toolchain-scripts: put TARGET_ARCH and TARGET_OS into environment
It's useful for the SDK to know exactly what TARGET_ARCH and TARGET_OS are,
specifically for SDK QA.

(From OE-Core rev: 0b5f1b0430efac8129bca330370d8818ea93bb39)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-07 12:13:03 +01:00
Ross Burton
05f2bf7970 cmake: fix linking in multilib SDKs
CMake, in it's infinite wisdom, when searching for libraries (using
find_library) will look inside the libraries PREFIX/lib, PREFIX/lib32, and
PREFIX/lib64.  In a multilib SDK more than one of these will exist (potentially
all three) and obviously for a given build configuration only one of those is
valid.  This search path is hard-coded deep inside CMake but by setting
CMAKE_FIND_LIBRARY_CUSTOM_LIB_SUFFIX we can bypass it and set an explicit
lib<SUFFIX> to use.

Do this by writing ${baselib} into the environment file, and then stripping
"lib" from this to obtain the suffix in the cmake-specific environment script,
which is then read in the CMake toolchain.

(From OE-Core rev: 47160a8c51310f2b40cabf4c1910b5df6e0a15d6)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-07 12:13:03 +01:00
Chen Qi
bf02f255de man-db: remove '--disable-cache-owner' option
The following error appeared at boot.

  systemd-tmpfiles[115]: [/usr/lib/tmpfiles.d/man-db.conf:1] Unknown user '1w'

By default cache owner is enabled and defaults to 'man'. Users could
supply '--enable-cache-owner=[ARG]' to change the default cache owner.
Using '--disable-cache-owner' leaves the ownership of system-wide
cache files unconstrained, and users will allowed to modify them.

We'd better keep the default behavior, just like other distros do.

I can guess that we used '--disable-cache-owner' to bypass the following
error at do_install.

  | chown: invalid user: ‘man:man’

The 'man' user is provided by base-passwd recipe, so add it to DEPENDS.

(From OE-Core rev: 7080df4b6bc50440eed600e81f2c6fa76a80623d)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-07 12:13:02 +01:00
Mingli Yu
47aa941e62 ffmpeg: Upgrade to 4.0.2
(From OE-Core rev: d0881e7401173e012e197c7371a30e8219c81cf6)

Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-07 12:13:02 +01:00
Mark Hatle
da24071e92 bitbake: toaster/orm/management/commands/lsupdates.py: Use new layerindexlib module
Change lsupdates.py to use the new layerindexlib module to load the data from
the public layer index.  It still does all of the manual parsing.  This
is intended to be a stop gap until the toaster can use the module itself to
manage the data.

Everything else is functionally equivalent to the prior version.

(Bitbake rev: 8e482342c652e298b5f5ea58eda72c5eb14ce2bd)

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-02 10:18:27 +01:00
Mark Hatle
cbf41cbe55 bitbake: bitbake-layers: disable parsing for layerindex commands
These don't need to access recipe information, so let's not waste the
user's time parsing all recipes.

(Bitbake rev: 6a242a399ae93393c3fc60eda541c1f8f77fed57)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-02 10:18:27 +01:00
Mark Hatle
ddfcda7ec3 bitbake: bblayers/layerindex.py: Switch to use the new layerindexlib class
Display changes:
The output will now include references to the layers that the user already
has on their system.  It does this by querying the cooker derived index.

The code that enables this behavior is labeled as 'TODO' currently.  As
part of the work we need to make a final determination if this is the
desired output.

Also changed the default branch to no longer define itself as 'master'.

When the user does NOT set a branch, the default is now the
'LAYERSERIES_CORENAMES', and if that doesn't exist 'master'.  This is
subtly different in behavior, but more consistent with user expectations.

(Bitbake rev: 478c4b5489943f756ae03d6b6d3b5d665cedbce0)

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-02 10:18:27 +01:00
Mark Hatle
1ac19d1bf1 bitbake: layerindexlib: Initial layer index processing module implementation
The layer index module is expected to be used by various parts of the system
in order to access a layerindex-web (such as layers.openembedded.org) and
perform basic processing on the information, such as dependency scanning.

Along with the layerindex implementation are associated tests.  The tests
properly honor BB_SKIP_NETTESTS='yes' to prevent test failures.

Tests Implemented:
   - Branch, LayerItem, LayerBranch, LayerDependency, Recipe, Machine and
      Distro objects
   - LayerIndex setup using the layers.openembedded.org restapi
   - LayerIndex storing and retrieving from a file
   - LayerIndex verify dependency resolution ordering
   - LayerIndex setup using simulated cooker data

(Bitbake rev: fd0ee6c10dbb5592731e56f4c592fe687682a3e6)

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-02 10:18:27 +01:00
Mark Hatle
0dea950931 bitbake: bblayers/layerindex.py: Fix addition of layers
When a layer is added it needs to be in a list, otherwise the system will
error such as:

    Specified layer directory / doesn't contain a conf/layer.conf file

Additionally, instead of calling the add layer function over and over, it
is better to add all of the new content in one command.  Otherwise the
order is important as the system now checks if the layer can be added.  For
instance, trying to add meta-python:

   Layer                Required by          Git repository                                          Subdirectory
   ===================================================================================================================
   meta-python          -                    git://git.openembedded.org/meta-openembedded            meta-python
   meta-oe              meta-python          git://git.openembedded.org/meta-openembedded            meta-oe
   openembedded-core    meta-python          git://git.openembedded.org/openembedded-core            meta
   Adding layer "meta-python" (.../oe-core/meta-openembedded/meta-python) to conf/bblayers.conf
   ERROR: Layer 'meta-python' depends on layer 'openembedded-layer', but this layer is not enabled in your configuration

The system would try to add meta-python before the dependent meta-oe.  Adding
them both at the same time resolves this issue.

(Bitbake rev: 8aeaabf13db645f33495e00b82117327e153d70a)

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-02 10:18:27 +01:00
Anuj Mittal
bb3228cc19 genericx86-common.inc: add kernel-modules to RRECOMMENDS
Now that kernel-modules are not included in x86-base.inc because of
changes done for YOCTO #12384, add them to RRECOMMENDS explicitly for
genericx86*.

(From meta-yocto rev: 0b78254b373c23f2c1a2bf7db0108a350266ab85)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-02 09:30:49 +01:00
Maxin B. John
fae1ccdcf5 machine: remove kernel-modules from RRECOMMENDS
qemumips,qemumips64 and x86 based machines include kernel-modules by
default. Remove the kernel modules from RRECOMMENDS to make it consistent
across the machines.

Tested using core-image-sato on qemumips, qemumips64, qemux86 and
qemux86-64

[YOCTO #12383]

(From OE-Core rev: 1c4d9f46d5d94ea15d0c0d68c412ec05b9f51820)

Signed-off-by: Maxin B. John <maxin.john@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-02 09:30:11 +01:00
Joshua Watt
581a2cb7f8 u-boot: Fix pylibfdt generation
u-boot attempts to build a Python library called pylibfdt. By default,
u-boot would attempt to use the build host's Python interpreter, which
causes numerous problems, not least of which is that it fails if the
host doesn't have the Python development package installed (complaining
about not being able to find Python.h)

Rectify this situation by including the proper build time dependencies
for pylibfdt and passing the proper arguments to make.

[YOCTO #12867]

(From OE-Core rev: 3b0b16300b351878790729d6270cd113bca73eff)

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-02 09:30:11 +01:00
Ross Burton
1dccb37d89 python[3]native: allow use of both native Python 2 and 3
Instead of both classes using ${PYTHON_PN} (which is set by python-dir and
python3-dir), hardcode the right values so that it is possible to inherit both
pythonnative and python3native at the same time.

If both are inherited then both native Pythons are available, but the last to be
inherited will be the one to set PYTHON.

(From OE-Core rev: 96ccdadb8473daa3c9c2e1cb42fbdff1edd270d6)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-02 09:30:11 +01:00
Ross Burton
1b52a28de8 meson: don't dump full error log on failure
If the configure fails then we don't really want to see hundreds of lines of
test output (this would be similar to dumping out autoconf's config.log).  The
error includes the path of the full log if further debugging is required.

(From OE-Core rev: 09917f582aa1a7b752fa96303e06f9f4712a1d86)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-02 09:30:11 +01:00
Andre McCurdy
4306ed5f8f openssl: fix missing dependency on hostperl-runtime-native
Openssl 1.1 requires perl in order to build (just as openssl 1.0
does). The missing dependency has gone unnoticed up to now since
hostperl-runtime-native is included in ASSUME_PROVIDED.

(From OE-Core rev: ed5f8bb582453e7d8a1636ad1463380076209bd2)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-02 09:30:11 +01:00
Anuj Mittal
f0977aa7c5 wic/qemux86: don't pass ip parameter to kernel in wks
Images that rely on dhcp being used won't have network setup properly
otherwise.

Fixes [YOCTO #12804]

(From OE-Core rev: fb4dd04f65ea78890c1102424765056d93e6ca65)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-02 09:30:11 +01:00
Robert Yang
6954a0f55a e2fsprogs: 1.44.2 -> 1.44.3
Rebased ptest.patch.

(From OE-Core rev: 59dfd8246358f32bc5e43fc845c0c685aa4cd428)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-02 09:30:11 +01:00
Robert Yang
4fa55a22ca python3-testtools: 2.2.0 -> 2.3.0
(From OE-Core rev: 114e23298420df3bdac48c6a2b628164f1d825f8)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-02 09:30:11 +01:00
Robert Yang
2f214b2e17 python3-subunit: 1.1.0 -> 1.3.0
The license file changes from README to README.rst, and the lines which
contains license info is from 1 to 20. The license is still Apache-2.0.

(From OE-Core rev: ef60510204013957d3aea3108ccd5fee72825293)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-02 09:30:11 +01:00
Robert Yang
ea43e554c2 python-pbr: 3.1.1 -> 4.2.0
(From OE-Core rev: e0172634638cea57ffa5e6d1eb211954bb174e02)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-02 09:30:11 +01:00
Yi Zhao
482d34825d sudo: add PACKAGECONFIG for pam-wheel
The pam_wheel PAM module is used to enforce the so-called wheel group.
By default it permits root access to the system if the applicant user is
a member of the wheel group.
Add PACKAGECONFIG to enable pam_wheel module for sudo.

(From OE-Core rev: 7a46ca79b18527a56de470fcaaf95c870c097cf6)

Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-02 09:30:11 +01:00
Changqing Li
67892cc112 libxml2: fix libxml2 ptest fails
for core-image-minimal image,  missing these two dependency
will cause below warning and error:

warning: setlocale: LC_ALL: cannot change locale (en_US.UTF-8)
./test/icu_parse_test.xml generated an error

(From OE-Core rev: 848031cf0b89b752c6fedcb63fc6938642a87fd8)

Signed-off-by: Changqing Li <changqing.li@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-02 09:30:11 +01:00
Richard Purdie
2b2dfec80b libtool: Fix patch status tag
(From OE-Core rev: 28fc470e5e10ee9cce893d037ed5e518bc5612f5)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-01 10:28:05 +01:00
Richard Purdie
9571101105 bitbake: bblayers: Don't parse all recipes when calling add-layer
When adding multiple layers in a chain of commands, reparsing all recipes
each time can be painfully slow. Instead just parse the base configuration
which gives some confidence things worked out correctly without as much
overhead.

(Bitbake rev: cfd1302031f3cca96300a0e445a47b1614ecd00c)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-01 10:07:22 +01:00
Alejandro Enedino Hernandez Samaniego
b8730f68d2 bitbake: bitbake: Add support for multiconfig dependencies
This patch adds the capability for tasks from different
multiconfigs to depend on one another.

These dependencies can be enabled using the following format:

task[mcdepends] = "multiconfig:FROM-MC:TO-MC:PN:task-to-depend-on"

For the sake of simplicity consider the following example:

Assuming we have set up multiconfig builds, one for qemux86 and one for
qemuarm, named x86 and arm respectively.

Adding the following line to an image recipe (core-image-sato):
do_image[mcdepends] = "multiconfig:x86:arm:core-image-minimal:do_rootfs"

Would state that core-image-sato:do_image from x86 will depend on
core-image-minimal:do_rootfs from arm so it can be executed.

This patch makes modifications to:
- cooker: To glue both multiconfigs in one place and make sure
  the dependencies can be provided.
- taskdata: To parse and add a new kind of dependency (mcdepends) to
  the taskdata object.
- runqueue: To differentiate tasks from different multiconfigs,
  add the specified dependencies to the corresponding tasks, and
  create a working runqueue that contains tasks from both multiconfigs.
- siggen: To avoid looking for tasks from different multiconfigs on
  objects where they dont belong.

The taskdata objects are still not aware of the concept of multiconfig,
so each object doesnt know which multiconfig its building, hence why
the mcdepends are added to all taskdata objects equally (we really
dont expect many of these), but the actual dependencies are added only
to the required tasks by the runqueue.

(Bitbake rev: da8cb8633504bdc815bdcefc538340b9bce5065d)

Signed-off-by: Alejandro Enedino Hernandez Samaniego <alejandr@xilinx.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-01 10:07:22 +01:00
Richard Purdie
7df8a4f834 util-linux: Enable fallocate for native/nativesdk
fallocate was disabled for native/nativesdk in:

http://git.openembedded.org/openembedded-core/commit/?id=17f3c548caf4adec37c3bbb139aa6b3900419794

We have since added uninative support and better glibc handling for SDKs
so this difference can be dropped now.

(From OE-Core rev: 07a4557ae5954897c87749443b9262819bc9c579)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-01 10:07:22 +01:00
Maxin B. John
6049b9b19b vulkan-demos: upgrade to latest commit
Remove upstreamed patches:
        1. 0001-Fix-build-on-x86.patch
        2. 0001-Support-installing-demos-support-out-of-tree-builds.patch

Updated the following patch:
        1. 0001-Don-t-build-demos-with-questionably-licensed-data.patch

Update subcomponents gli and glm based on the new structure of
repository.

License-Update: Update in location of file. No change in checksum

(From OE-Core rev: c9e12bc8872710ca7f788d3709c42425872fd033)

Signed-off-by: Maxin B. John <maxin.john@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-01 10:07:22 +01:00
Maxin B. John
b5dbf20ce6 vulkan: upgrade to version 1.1.73.0
Refresh the patch:
        demos-Don-t-build-tri-or-cube.patch

License-Update: Updates in copyright information.

(From OE-Core rev: 4f6652e9b8a4fad7d650e1f88aa830fd7f88ea49)

Signed-off-by: Maxin B. John <maxin.john@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-01 10:07:22 +01:00
Ioan-Adrian Ratiu
cf434065b3 util-linux.inc: add fallocate only for class-target
Because the util-linux_2.32.bb recipe explicitely disables fallocate
for nativesdk triggering build warnings:

WARNING: nativesdk-util-linux-2.32-r0 do_package: util-linux:
alternative target (sdk/usr/bin/fallocate or sdk/usr/bin/fallocate.util-linux)
does not exist, skipping...
WARNING: nativesdk-util-linux-2.32-r0 do_package: util-linux: NOT adding
alternative provide sdk/usr/bin/fallocate: sdk/usr/bin/fallocate.util-linux
does not exist
WARNING: nativesdk-util-linux-2.32-r0 do_package: util-linux: alt_link ==
alt_target: sdk/usr/bin/fallocate == sdk/usr/bin/fallocate

(From OE-Core rev: 469ab3c7f129b90e9dd5e6427b5b617b9dedde47)

Signed-off-by: Ioan-Adrian Ratiu <adrian.ratiu@ni.com>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-01 10:07:22 +01:00
Alejandro Enedino Hernandez Samaniego
b7c2c78580 multiconfig: Enable multiconfig dependencies on oe-core
This patch enables multiconfig dependencies (mcdepends) to be used on
recipes using the following format:

task[mcdepends] = "multiconfig:FROM-MC:TO-MC:PN:task-to-depend-on"

For the sake of simplicity consider the following example:

Assuming we have set up multiconfig builds, one for qemux86 and one for
qemuarm, named x86 and arm respectively.

Adding the following line to an image recipe (core-image-sato):
do_image[mcdepends] = "multiconfig:x86:arm:core-image-minimal:do_rootfs"

Would state that core-image-sato:do_image from x86 will depend on
core-image-minimal:do_rootfs from arm so it can be executed.

This patch makes modifications to bitbake.conf to enable mcdepends, and
to sstatesig and staging.bbclass to avoid conflicts between packages from
different multiconfigs.

[YOCTO #10681]

(From OE-Core rev: f71bfe833c657244d2fd07b3b71e86081d7d1c04)

Signed-off-by: Alejandro Enedino Hernandez Samaniego <alejandr@xilinx.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-01 10:07:22 +01:00
Joel Stanley
666e078352 gcc-7.3: Backport fixes for std::pair high memory usage
C++ applications that contain a specfic use of std::pair with tempates
cause the build to require many gigabytes of RAM to build.

This is a fix that was applied to the upstream GCC 7 branch.

Change-Id: I213f96d1d6332e2dce5765482ff3413f1abd7ff8
(From OE-Core rev: 51a09ba2729a840a9f2f87b68c7f50a3e6ac0d04)

Signed-off-by: Joel Stanley <joel@jms.id.au>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-31 22:55:35 +01:00
Joel Stanley
b1585dde96 gcc-7.3: Fix build on ppc64le hosts
When building on ppc64le hosts that have GCC 8 (such as Ubuntu 18.10)
the GCC build bootstrap fails.

 https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86162

This is a fix that was applied to the upstream GCC 7 branch.

Change-Id: I7796d2a999ec420805dd1c6cf0a1ecba1de5a897
(From OE-Core rev: c17f5e7e954487ad3e97e26c3e0d31443d658d5a)

Signed-off-by: Joel Stanley <joel@jms.id.au>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-31 22:55:35 +01:00
Paul Eggleton
d9a9a2d80e oe-selftest: devtool: avoid parallel races by using temporary copy of core
Some of the devtool tests make changes to files under meta/ -
legitimately since we want these tests to be working with real recipes
and associated files. Unfortunately with the new oe-selftest
parallelisation this can break other tests if files go missing at the
wrong time (among other scenarios). To avoid this issue, simply take a
copy of the core repository and use that for these tests. (We copy the
entire repository since changing the path of meta/ influences COREBASE
and thus we need to have things like scripts/ alongside as well).

(From OE-Core rev: 2457cd57b4195924ef127f497efa2f34f411e660)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-31 22:47:36 +01:00
Markus Lehtonen
ef6941fa56 python3: fix depends of python3-tests
Make the tests subpackage depend on all modules as test.regrtest uses most (if
not all) of them.

(From OE-Core rev: f03f3edc211b3e03cf1a6b2655ba664af7fbd12f)

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-31 22:47:36 +01:00
Yongxin Liu
5e880407ea kdump: start kdump.service after basic.target
If kdump.service is set to run on boot and dump-capture kernel isn't
placed in /dev/root, kdump.service will fail to load the kernel,
since other partitions are not mounted yet. Starting kdump.service
after basic.target guarantees dump-capture kernel can be loaded in
this situation.

(From OE-Core rev: ac9a54fc617ff5f1eb75fa8500187c5ed3effe46)

Signed-off-by: Yongxin Liu <yongxin.liu@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-31 22:47:36 +01:00
Chen Qi
e8143566cc systemd.py: increase default bus timeout
Use SYSTEMD_BUS_TIMEOUT to set default timeout to 240s to avoid
timeout problem on slow qemu machines.

(From OE-Core rev: a5b1dcabdd84915eb0527be4e7bd64ab46860d9d)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-31 22:47:36 +01:00
Chen Qi
983c24aa23 systemd: backport patch to allow setting dbus calls timeout
Backport 0001-sd-bus-make-BUS_DEFAULT_TIMEOUT-configurable.patch
which allows setting dbus calls timeout via SYSTEMD_BUS_TIMEOUT
environment variable.

This is needed as we are meeting timeout failures from the oeqa
runtime test case systemd.py.

(From OE-Core rev: caa4fa5e6ce7d50bdcd04e199d61401b3e8b9ff7)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-31 22:47:36 +01:00
Chen Qi
fc2eea3d28 parselogs.py: ignore network interface name changing failure
The following error from systemd-udevd is not harmful. It's just
because our qemu targets are using eth0.

  Error changing net interface name 'eth0' to 'enp0s3': Device or resource busy

Note that systemd is using a different network interface naming scheme
from traditional ethX naming scheme. To make this error message go away,
we could symlink /etc/udev/rules.d/80-net-setup-link.rules to /dev/null
to recover traditional naming scheme. But I'm not sure if this will
cause regression in user experience for systemd users of OE.

So just ignore this error message so that parselogs.py test case does not
fail.

(From OE-Core rev: f1735fed088ddda6517fa4ff6fbd6ef683b14878)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-31 22:47:36 +01:00
Chen Qi
b195bff204 oe_syslog.py: fix settings in OEHasPackage decorator
1. For test_syslog_running, we should not restrict it to run for
   only busybox-syslog and sysklogd. So extend it to all syslog
   providers in oe-core and meta-openembedded.

2. For test_syslog_startup_config, fix to make it depend on the
   existence of busybox-syslog. The previous condition "!sysklogd
   && busybox" is incorrect, because busybox may be compiled without
   syslog support, and sysklogd and busybox-syslog conflict with
   each other.

(From OE-Core rev: 119c22342d446e4f638b8d4c81480ebc7b444245)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-31 22:47:35 +01:00
Richard Purdie
318595754b oeqa/selftest: Add package hardlink test
We keep breaking the preservation of hardlinks during the packaging process.
Add a selftest which tests this to try and prevent this breaking again.

(From OE-Core rev: 751fc7802f57a836a0be5fc6a8d5fdf8b1769c39)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-31 22:47:35 +01:00
Richard Purdie
099625aacf package.bbclass: Fix hardlink preservation issue
Recent changes broke the preservation of hardlinks during processing due to a missing index.
Fix this, reducing the size of the git recipe packages in particular (it contains many hardlinks).

(From OE-Core rev: 28eeada955762f38ccbd1d26c53768364dbd1a5e)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-31 22:47:35 +01:00
Adriana Kobylak
ffb7fd233c mtd-utils: Revert "Return correct error number in ubi_get_vol_in"
Add mtd-utils upstream patch that fixes a regression on the
mtd-utils tools such as ubinfo.

Details of the issue which affects mtd-utils 2.0.1 and 2.0.2:
http://lists.infradead.org/pipermail/linux-mtd/2018-June/081562.html

Upstream-Status: Accepted [http://git.infradead.org/mtd-utils.git/commit/0f833ac73ad631248826386e2918d8571ecf0347]

(From OE-Core rev: 41356d2c86d85b199962c3024f25361a709d9180)

Signed-off-by: Adriana Kobylak <anoo@linux.ibm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-31 22:47:35 +01:00
Richard Purdie
9fe21b8dd7 libtool: Fix problem with libtoolize in multilib installations
Without this patch /usr/bin/libtoolize is different for each multilib
since their host-triplets are different, despite there being no difference in
the functionality of libtoolize itself.

This change just patches out the problematic line since its just a comment for the user
in help text. Ugly but solves the problem. This fixes issues where libtool and
libXX-libtool couldn't be installed into the same system.

(From OE-Core rev: f70040fd3ca3508d33ed24c749c0b8095b020dab)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-31 22:47:35 +01:00
Richard Purdie
e3497cc22b multilib_script: Add support for multilib scripts
Whilst the package managers handle multilib ELF binaries well, they don't
handle scripts in the *bindir directories well. This adds support for
marking these up so that they can be handled using update-alternatives.

Its done this way so that non-multilib systems don't see any changes and
there is standardisation amongst the multilibs on how the alternatives are
named and prioritiesd. The priotitisation code needs to be added but this
change means there is somewhere to add it.

Recipe needs to set MULTILIB_SCRIPTS in the form <pkgname>:<scriptname>, e.g.
MULTILIB_SCRIPTS = "${PN}-dev:${bindir}/file1 ${PN}:${base_bindir}/file2"
to indicate which script files to process from which packages.

libtool is used a as a reference to stop the libtool scripts conflicting
in a multilib case and allows the kernel-devsrc change to be merged.

(From OE-Core rev: 18e837433d07cfdce4019c13f682c6676425a2ad)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-31 22:47:35 +01:00
Martin Jansa
9c419271b5 bitbake: codeparser: Track oe.utils.conditional usage
* base_conditional was already removed from oe-core:
  http://git.openembedded.org/openembedded-core/commit/?id=0391fcad9103abca0796a068f957d0df63ab4776
  after the usage was migrated to oe.utils.conditional:
  http://git.openembedded.org/openembedded-core/commit/?id=c97acbd034532895ce57c6717ed1b3ccc7900b0d
  so we can handle just ".conditional" version

* add 1st parameter to variable dependencies, that way when you use
  FOO = "${@oe.utils.conditional('VAR', 'VALUE', 'true', 'false')"
  FOO variable will have dependency on VAR variable and you don't need
  to add FOO[vardeps] += "VAR" manually every time you use
  oe.utils.conditional

* this is similar to contains tracking from:
  https://bugzilla.yoctoproject.org/show_bug.cgi?id=3890
  http://git.openembedded.org/bitbake/commit/?id=ed2d0a22a80299de0cfd377999950cf4b26c512e
  http://git.openembedded.org/bitbake/commit/?id=0b9d117631ce909312d53b93289e61defc6be01c
  but conditional is simpler, we don't need to handle the first
  parameter as a set

(Bitbake rev: 5156b4bb6876dac636be9726df22c8ee792714dd)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-30 12:45:15 +01:00
Paul Eggleton
6ed781e071 bitbake: utils: add optional callback to edit_bblayers_conf()
Add a callback that lets you modify or remove items in addition to the
current scheme where you can only add or remove. This enables you to for
example replace a layer with a temporary copy (which is what we will use
this for first in OE's oe-selftest).

(Bitbake rev: bfedb4e85a84e817dbe5d8694b8f8fcdd6f2f22a)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-30 12:45:15 +01:00
Richard Purdie
2a1f7ad842 maintainers.inc: Update after recent additions/changes
(From OE-Core rev: db48261c7111758ed29251bc979ed811fd8d90ab)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-30 12:44:35 +01:00
Andre McCurdy
db1bed6452 openssl_1.0: squash whitespace in CC_INFO
Squash whitespace in CC_INFO to avoid recipe whitespace changes to
CFLAG affecting the final openssl binaries (the value of CC_INFO gets
embedded in libcrypto, via buildinf.h).

(From OE-Core rev: 2227c51896d4399daac9d85f40d7510b7c8ae03f)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-30 12:44:35 +01:00
Andre McCurdy
e0058efd4b openssl_1.0: add PACKAGECONFIG option to control manpages
Creating the openssl manpages, which happens as part of do_install(),
can take a significant amount of time (e.g. ~50 seconds on a quad
core laptop). Provide a PACKAGECONFIG option to allow creation of the
manpages to be skipped completely if not required and inherit the
manpages class to automatically control the PACKAGECONFIG option
(based on the "api-documentation" distro feature).

(From OE-Core rev: 1ddca1872f64c566fd812a6ec44f2d4e4d84f58f)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-30 12:44:35 +01:00
Andre McCurdy
9abe887150 openssl_1.0: drop unmaintained darwin support
The fact that the darwin support only appears to consider x86 (and
not x86_64) suggests that it's not maintained or tested. In general
oe-core doesn't support building on darwin.

(From OE-Core rev: 9c7f37bb1345c38211acd137c00b9d07f92601a7)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-30 12:44:35 +01:00
Andre McCurdy
f23546ed3e openssl_1.0: drop obsolete exporting of AS, EX_LIBS and DIRS
Previously (when EXTRA_OEMAKE contained -e) exporting these variables
over-rode default values in the top-level openssl Makefile. However,
since -e was removed from EXTRA_OEMAKE as part of:

  http://git.openembedded.org/openembedded-core/commit/?id=537a404cfbb811fcb526cdb5f2e059257de6ef13

exporting these variables does nothing. The comment from that commit
that only AR is affected by removing -e wasn't correct, but the
effects of letting the openssl Makefile also control AS, EX_LIBS and
DIRS seem to be either benign or beneficial.

Since without -e make ignores DIRS from the environment and always
runs for all subdirs (including "test"), adding "test" to DIRS and
calling "make depend" again from do_compile_ptest() can be dropped.

(From OE-Core rev: b3e81e3cf86dd8736b62a6b88d6a6dbe518c9e5e)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-30 12:44:35 +01:00
Andre McCurdy
7efdc276a9 openssl_1.0: drop obsolete ca.patch
This patch adds a second line to the -help output of the CA.pl script
(which lists almost the same command line options as the line above
it but in a slightly different order). Although it's tagged as a
Debian backport, there's no patch like it in recent Debian patch sets
for openssl 1.0.2.

(From OE-Core rev: 9b3af406747a3d565d12d948400d44fb12ab0d96)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-30 12:44:35 +01:00
Anuj Mittal
9f7923c7e0 oeqa/selftest: check if rm_work is enabled
rm_work if enabled leads to some tests failing that rely on artifacts
being present. Check if rm_work.bbclass is included and show an error
and exit if it is.

Fixes [YOCTO #12694]

(From OE-Core rev: dde7e2f590834aa8034f1371954f9b4fbc7a60b7)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-30 12:44:35 +01:00
Khem Raj
418b9261b3 glibc-locale: Fix host-user-contaminated QA errors
Fixes

ERROR: glibc-locale-2.27-r0 do_package_qa: QA Issue: glibc-locale: /glibc-binary-localedata-hy-am/usr/lib/locale/hy_AM/LC_MEASUREMENT.tmp is owned by uid 3004, which is the same as the user running bitbake. This may be due to host contamination [host-user-contaminated]

(From OE-Core rev: 06d831d12fe2a2366480c79f4c018942937b753a)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-30 12:44:35 +01:00
Peter Kjellerstedt
4fb55aaaf7 iptables: Split the iptables modules into separate packages
By splitting the iptables modules into separate packages it is
possible to pick and choose the modules to install and thereby reduce
the total size of the installed modules.

Backwards compatibility is maintained by adding a recommendation of
iptables-modules, which is a meta package that depends on all the
generated packages.

(From OE-Core rev: 2e99caca64704d1ec51f4f65048d945e5ff1384f)

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-30 12:44:35 +01:00
Hongxu Jia
a5f2b5c4c3 webkitgtk: fix compile failure on beaglebone
Since the following patch applied in upstream webkitgtk
...
commit 1a55d8c685b3e5b4dbeda202009e7527aa59eadd
Author: simon.fraser@apple.com <simon.fraser@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date:   Thu Nov 23 22:20:09 2017 +0000

    FELighting cleanup and optimization
    https://bugs.webkit.org/show_bug.cgi?id=179933
...

It missed to tweak `paintingData.lightVector' which caused
PaintingData' has no member named 'lightVector' on ARM_NEON
(beaglebone)

(From OE-Core rev: 39b75d73aa5fce178c1577b0a5dfb8a694eff31d)

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-30 12:44:35 +01:00
Hongxu Jia
ce31c498f8 distutils/distutils3: do not try to fetch code during do_configure
For distutils3, any setup.py invoking will cause setup_requires
argument to trigger a code fetching. Since the following commit
applied in oe-core, code fetching occurs during do_confugire
before the do_compile.
...
b805cef distutils: clean the build tree in do_configure
...

Refer what do_compile did, add var-NO_FETCH_BUILD to do_configure.

Sync with distutils3, add do_configure to distutils also.

[YOCTO #12084]

(From OE-Core rev: 9d556092fcc6f04c487afd126d52935bac133165)

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-30 12:44:35 +01:00
Hongxu Jia
c40f535fbf valgrind: fix compile ptest failure on mips32
- Pass mips32's CFLAGS to tests

- Fix broken inline asm in tests on mips32-linux

- Build mips n32 successfully, support it.

(From OE-Core rev: 23d9eba99d1180a0b859aadc23a10b391b8f6440)

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-30 12:44:35 +01:00
Robert Yang
c06cd35deb buildtools-tarball: add python3-testtools and python3-subunit
They are required by oeqa.

(From OE-Core rev: 033459894d368652bc9127dcb3bb1bcc8d6f055e)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-30 12:44:35 +01:00
Robert Yang
76f2003bae python3-subunit: add it for oeqa
- It is required by oeqa, add it so that we can add nativesdk-python3-subunit
  to buildtools-tarball.
- The original one is python-subunit_1.1.0.bb which is from meta-openstack
  layer, I divided it into python-subunit.inc and python3-subunit_1.1.0.bb
  and extended to nativesdk.

(From OE-Core rev: f55d5a8022dda18f3e9aa4138dc1961d9ef979c4)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-30 12:44:35 +01:00
Robert Yang
c9224cc637 python3-testtools: add it for oeqa
- It is required by oeqa, add it so that we can add nativesdk-python3-testtools
  to buildtools-tarball.
- The original one is python-testtools_2.3.0.bb which is from meta-openstack
  layer, I divided it into python-testtools.inc and python3-testtools_2.2.0.bb,
  and extended to nativesdk.

(From OE-Core rev: 50864df5b0eb3d1704e8fe75c06e957af0b41c38)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-30 12:44:35 +01:00
Robert Yang
288af6c687 python3-pbr: add it for python3-testtools
- The python3-testtools RDEPENDS on it.
- It is from meta-python, I extended it to nativesdk.

(From OE-Core rev: 4cc30de57dd70571005a1f31f9465d745c92aad2)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-30 12:44:35 +01:00
Robert Yang
76fbee5937 python3-extras: add it for python3-testtools
- The python3-testtools RDEPENDS on it.
- The original one is python-extras_1.0.0.bb which is from meta-openstack
  layer, I divided it into python-extras.inc and python3-extras_1.0.0.bb, and
  extended to nativesdk.

(From OE-Core rev: 0176e798364689774bed4ac4bd0e345c32ea3078)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-30 12:44:35 +01:00
Robert Yang
ac134ce9be testsdk.bbclass: check python module testtools and subunit
The testtools or subunit is not part of python's standard library, so check them
before use.

Fixed when they are not installed on host:
$ bitbake core-image-minimal -ctestsdk
Exception: ImportError: No module named 'testtools'

Now it can run with a warning:
WARNING: core-image-minimal-1.0-r0 do_testsdk: Failed to import testtools or subunit, the testcases will run serially

(From OE-Core rev: ae53461608c4e71533378369b3f623b4c9002e39)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-30 12:44:35 +01:00
Ross Burton
3bbe1ec7d5 pax-utils: remove
This was packaged originally to perform QA tests on binaries (text relocations
and RPATHs), but we perform those tests at build-time now.

(From OE-Core rev: d1c56454b2d374f96c810f684a15dbefebead067)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-30 12:44:35 +01:00
Ross Burton
9de268dd60 oeqa/runtime/scanelf: remove
These tests are intended to search for bad RPATHs and text relocations, but we
do these tests at buildtime and as pax-utils is never installed in any default
images the tests are never executed.

(From OE-Core rev: ff81b58d5f322ea4a24c1b9ed40377c742459149)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-30 12:44:35 +01:00
Ross Burton
6c7709edfc icon-naming-utils: remove
The last user of this was the sato theme, removed in 2016.

(From OE-Core rev: 6df1f6cf05e21dad1646803a411e52ff85e33435)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-30 12:44:35 +01:00
Ross Burton
5330986f32 gccmakedep: remove
Nothing uses this in oe-core or meta-oe, so drop it.

(From OE-Core rev: 69b0305ea5a263837fb57ede3133bee6e2f74a93)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-30 12:44:35 +01:00
Ross Burton
d0404f538b libusb-compat: remove
Nothing in oe-core or meta-oe links to this now, so the recipe can finally be
removed.

(From OE-Core rev: be9d9b7d6f5917b63660fe5561078851d4a42a9c)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-30 12:44:35 +01:00
Ross Burton
5e12e440fd cups: depend on libusb1
There is no need to depend on the compatibility library libusb-compat, as CUPS
links directly to libusb1.

(From OE-Core rev: feead64ac6df31d9b9499b232631aeb0edad3af0)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-30 12:44:35 +01:00
Ross Burton
e36e17edee usbutils: upgrade to 010
Upgrade to 010.

usbutils uses libusb1 not the older libusb-compat library.

Refresh (and submit upstream) the bashism removal for usb-devices.

Fix LICENSE as lsusb.py is GPLv2 or v3, and set per-package LICENSE fields as
appropriate.  The actual license texts are missing from the 010 tarball (fixed
in git) so point at the SPDX statements in the source files instead.

Remove FILES_${PN}-dev as usbutils.pc doesn't exist anymore.

Remove lsusb.py hashbang change as this doesn't cause any problems now
(installed hashbang is /usr/bin/env python3).

Remove spurious zlib build dependency that isn't required.

Remove spurious RDEPENDS_${PN}-ptest, which doesn't exist.

(From OE-Core rev: 889a86d8c044c0a9c6064a542f25e7fecef48234)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-30 12:44:35 +01:00
Ross Burton
ebe85aa978 unzip: fix symlink problem
Large zip files can cause unzip to crash, take a patch from Fedora to fix it.

(From OE-Core rev: a001833b7c7a0a6eef88e053fe65e2a0c91ca7bc)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-30 12:44:35 +01:00
Ross Burton
119a860e0f update-rc.d: move to git.yoctoproject.org
The update-rc.d repository is now on git.yoctoproject.org, and has merged all of
the patches we were carrying.

(From OE-Core rev: 531e363db08711b5390af16f5491ca8a71a0610c)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-30 12:44:35 +01:00
Ross Burton
06a8d8d615 dbus-glib: merge bb and inc
(From OE-Core rev: 29fc6fff32b05900526bf2426ba69a9a2d1f24f2)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-30 12:44:35 +01:00
Ross Burton
03282a8f5b ossp-uuid: remove
This project is dead (upstream website doesn't respond anymore) and can mostly
be replaced with the uuid.h in util-linux.

(From OE-Core rev: e187e3da4b72bc667c8badfb5f2de01717d5ea09)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-30 12:44:35 +01:00
Ross Burton
25392f7ed1 ovmf: remove ossp-util from DEPENDS
This was added back in the meta-luv days[1] presumably under the impression that
it needs ossp-uuid but in reality we rename ossp-uuid's library and uuid.h comes
from util-linux.

[1] e08817342b

(From OE-Core rev: 2a2da0fb7b42c92864f39dcdaf949a5c34ef4eda)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-30 12:44:35 +01:00
Ross Burton
9ef1538fae curl: enable libidn
Now that oe-core has libidn2 we can enable it by default in target curl builds.

(From OE-Core rev: aae20d0277feb768ca290492ccfad30962bb8706)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-30 12:44:35 +01:00
Ross Burton
b05eda5fc8 gnutls: fix libidn dependencies
gnutls only works with libidn2, so update the build dependency.

(From OE-Core rev: d2397d1fbe97eb92ff9aeb03155f98e24e95c97d)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-30 12:44:35 +01:00
Ross Burton
99eff38c6e libidn2: add new version
libidn 1.x is deprecated, add the parallel-installable libidn2.

(From OE-Core rev: 2a747138a2945dc12e6f35b2cf64d0e2aad7094f)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-30 12:44:35 +01:00
Chen Qi
ffb63803ea shadow: upgrade 4.2.1 -> 4.6
The following patches are removed because problems have been fixed in this version.
  0001-shadow-CVE-2017-12424
  fix-installation-failure-with-subids-disabled.patch
  usermod-fix-compilation-failure-with-subids-disabled.patch
  CVE-2017-2616.patch
  check_size_of_uid_t_and_gid_t_using_AC_CHECK_SIZEOF.patch
  0001-Do-not-read-login.defs-before-doing-chroot.patch

The following patches are rebased.
  0001-Disable-use-of-syslog-for-sysroot.patch
  0001-useradd-copy-extended-attributes-of-home.patch
  0001-useradd.c-create-parent-directories-when-necessary.patch
  allow-for-setting-password-in-clear-text.patch

(From OE-Core rev: 79dd22729d5b8a2f2cf4294ff6b261c9d6ecd977)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-30 12:44:35 +01:00
Chen Qi
96f011e628 coreutils: upgrade 8.29 -> 8.30
License-Update: Checksum for src/ls.c is changed but the license remains
the same. The change is only about year change.

Remove 0001-Unset-need_charset_alias-when-building-for-musl.patch as the
target this patches modifies no long exists.

(From OE-Core rev: c3f67a19f9393540443bf14b2dbde151d5d01b3d)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-30 12:44:34 +01:00
Chen Qi
74cab3a907 cups: upgrade 2.2.6 -> 2.2.8
(From OE-Core rev: 2846cdf6f87f071e06aee0c9a67390b326098f65)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-30 12:44:34 +01:00
Andrej Valek
17054a283c freetype: fix potential numeric overflow
bug: 54023
(From OE-Core rev: 4082ac63cfe38d2e7bc953ff3446ab1db95443be)

Signed-off-by: Andrej Valek <andrej.valek@siemens.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-30 12:44:34 +01:00
Ovidiu Panait
ad02cb7f82 lsof: upgrade 4.89 -> 4.91
(From OE-Core rev: 784f993f52c8e591d96efadfec486a736b6f1ff5)

Signed-off-by: Ovidiu Panait <ovidiu.panait@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-30 12:44:34 +01:00
Alistair Francis
ebc0069b36 dbus: Enable user-session package config
If targeting a X11 or Wayland session the user will want user-session
enabled. To target both of these just enable user-session all the time.

(From OE-Core rev: 6440e89770878d73c3467a30322f87eb29bdaa6d)

Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-30 12:44:34 +01:00
Khem Raj
8ad5f4f208 gcc-8: Upgrade to 8.2 release
(From OE-Core rev: e3f7e684cd619b5fe072179dffd573889e8ba470)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-30 12:44:34 +01:00
Martin Jansa
b521ee42e8 package.bbclass: append to FILERPROVIDES_*/FILERDEPENDS_* variables instead of setting them
* this allows to work around some of the issues with file-rdeps
* e.g. in my case I have /usr/lib/libmali.so.0.1 which according to rpmdeps
  provides only following libmali*
  libmali.so(LIBMALI_1.0)
  libmali.so.0.1
  but many users of this link with libmali.so directly and according to
  rpmdeps require libmali.so which causes file-rdeps for a lot of
  recipes
* I was using simple work around to just set:
  RPROVIDES_${PN} = "libmali.so libGLESv2.so libEGL.so"
  but that doesn't work well with multilib, because the value gets
  expanded with MLPREFIX and
  RPROVIDES_${PN} = "lib32-libmali.so lib32-libGLESv2.so lib32-libEGL.so"
  doesn't help at all.

[YOCTO #9217] Many unsolveable QA warnings from build-deps and file-rdeps

(From OE-Core rev: 01b9810ff1cea53ae321f6fbe760b83573ed78c0)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-30 12:44:34 +01:00
Hongxu Jia
c65d565e23 automake: fix race in parallel builds
While native building, there is a parallel failure
[snip]
|: && mkdir -p doc && ./pre-inst-env /usr/bin/env perl
../automake-1.16.1/doc/help2man --output=doc/aclocal-1.16.1
aclocal-1.16
|help2man: can't get `--help' info from aclocal-1.16
|Try `--no-discard-stderr' if option outputs to stderr
Makefile:3693: recipe for target 'doc/aclocal-1.16.1' failed
[snip]

Correct Makefile rule to fix the issue

(From OE-Core rev: ef4907f311e3ddedfa3eb8a111cc1d146c19851a)

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-30 12:44:34 +01:00
Richard Purdie
d9087c7c47 selftest/wic: Fix/cleanup class setup code
The code was using Wic instead of WicTestCase for image_is_ready and
native_sysroot which was confusing some tests. Fix image_is_ready.

For native_sysroot, convert the only user to just run the call itself
as there is no point in executing this for all the other tests which
don't use the value.

Whilst here, move _get_image_env_path to the base class alongside
its parent variabe and fix it to use WicTestCase.

(From OE-Core rev: 3e83364ed7031d53f281216214b04c7acace844a)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-30 12:44:34 +01:00
Paul Eggleton
1b56227d77 classes/package: fix variable name in comment
The variable is PACKAGE_WRITE_DEPS as seen in the default below the
comment.

(From OE-Core rev: 364449251ffe4ff2c11acaa258edcec244c38818)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-26 17:14:42 +01:00
Richard Purdie
1d4760a47f oeqa/loader: Ensure invalid test names don't trigger a traceback
oe-selftest -r <invalid test name>

currently triggers a traceback. Ensure this doesn't happen and the user gets a
sensible error message.

(From OE-Core rev: f2042bf3638ed4edfb167e7f7d4be6da60997ead)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-26 17:14:42 +01:00
Robert Yang
c467bc8569 qemurunner.py: fix is_alive() to avoid confusing with recycled pid
[YOCTO #12493]

Fixed:
- qemu started with pid 10000
- qemu exited unexpectedly
- The pid 10000 is re-used by another different process.

The is_alive() returned True in such a case because both qemu_pidfile and
/proc/10000 exist, but it's another process, this patch fixed the problem.

(From OE-Core rev: 78033af85698b4e112ae78e3140b241b1b3c06a3)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-26 13:16:41 +01:00
Daniel Díaz
18225a16a4 glibc: Avoid multilibbing on wordsize.h
Once another header #includes <bits/wordsize.h>, there is a
potential recursion going on because the
multilib_header_wrapper.h #includes <bits/wordsize.h> again!

This should not happen because an __arm__ (32-bits) or an
__aarch64__ (64-bits) environment guarantees that we will
be getting the correct definition, but when building against
a different target (like BPF), recursion is what happens.

This can be seen, for instance, when building eBPF programs
from the kernel with `clang -target bpf', such as the ones
located in linux/tools/testing/selftests/bpf/.

(From OE-Core rev: a74c77d6168101e88c3a3bce7130f4f52cfab95d)

Signed-off-by: Daniel Díaz <daniel.diaz@linaro.org>
Signed-off-by: Aníbal Limón <anibal.limon@linaro.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-26 13:16:41 +01:00
Andre McCurdy
9386aa39c2 openssl: minor indent fixes
Fix inconsistent indent (and also make the openssl 1.1 recipe more
consistent and consistent with the openssl 1.0 recipe).

(From OE-Core rev: 69844643aa1b829c27f144db634c8223c18c783f)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-26 13:16:41 +01:00
Andre McCurdy
858af1a3a6 openssl: support musl-x32 build
Align the openssl 1.1 recipe with changes made to openssl 1.0:

  http://git.openembedded.org/openembedded-core/commit/?id=a072d4620db462c5d3459441d5684cfd99938400

(From OE-Core rev: 24e745aaa2354432a9112879450263cab742c85b)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-26 13:16:41 +01:00
Andre McCurdy
1181a37e31 openssl: remove uclibc remnants
Align the openssl 1.1 recipe with changes made to openssl 1.0:

  http://git.openembedded.org/openembedded-core/commit/?id=e01e7c543a559c8926d72159b5cd55db0c661434

(From OE-Core rev: 35cf2c1266927b609e0022be2c7bd8e08410a456)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-26 13:16:41 +01:00
Andre McCurdy
46d81915f7 openssl_1.0: avoid running make twice for target do_compile()
Currently target builds call make twice as part of do_compile(). It
appears to be an accidental side effect of needing to only pass
CC_INFO on the make command line for target builds, since CC_INFO is
only referenced by the reproducible build patches.

(From OE-Core rev: 6c4942b5c771876ad0e62e56923f59cc71776157)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-26 13:16:41 +01:00
Andre McCurdy
1d7a9db53f openssl_1.0: drop leading "-" from no-ssl3 config option
Although passing -no-ssl3 works, comments in the openssl Configure
script suggest doing so isn't really correct:

  s /^-no-/no-/; # some people just can't read the instructions

The documented way to pass no-<cipher> config options is without a
leading "-"

  https://github.com/openssl/openssl/blob/OpenSSL_1_0_2-stable/INSTALL

(From OE-Core rev: 369927de1d94a295671d3750c95b70a497b13425)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-26 13:16:41 +01:00
Andre McCurdy
474076a826 openssl_1.0: fix cryptodev-linux PACKAGECONFIG support
Since openssl isn't an autotools recipe, defining cryptodev-linux
related config options via PACKAGECONFIG hasn't worked correctly
since PACKAGECONFIG_CONFARGS stopped being automatically appended to
EXTRA_OECONF in 2016:

  http://git.openembedded.org/openembedded-core/commit/?id=c98fb5f5129e71829ffab4449b3d28082bc95ab4

The issue appears to have been hidden as the flags are also hardcoded
in CFLAG - and therefore always enabled, regardless of the state of
the PACKAGECONFIG option. Fix by passing both EXTRA_OECONF and
PACKAGECONFIG_CONFARGS when running the openssl Configure script.
Although the openssl 1.1 recipe doesn't contain any PACKAGECONFIG
options yet, pre-emptively make the same fix there too.

Also only enable cryptodev-linux by default for target builds (based
on the historical comments in the recipe, that seems to have been the
original intention).

(From OE-Core rev: 6fee11b04b979a5b3237902d947db7118cafca2b)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-26 13:16:41 +01:00
Andre McCurdy
d0278a1991 openssl_1.0: drop curly brackets from shell local variables
Make clear distinction between local variables and bitbake variables.

(From OE-Core rev: d1e441db511faf9c170733c01ded8c56faac9ab6)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-26 13:16:41 +01:00
Andre McCurdy
85b477ba36 openssl_1.0: minor recipe formatting tweaks etc
Drop redundant setting of S to its default value, fix inconsistent
indent and re-order variables to align more closely to the OE
style-guide.

(From OE-Core rev: c36637a0304551bf2736bb15796947d9aaf00076)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-26 13:16:41 +01:00
Andre McCurdy
cfbe08fba2 openssl_1.0: merge openssl10.inc into the openssl_1.0.2o.bb recipe
The openssl10.inc include file only has one user, so we can improve
maintainability by merging the include file into the recipe which
uses it.

(From OE-Core rev: f5568740d5ff72090c3ca894ddfdc3078169da25)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-26 13:16:41 +01:00
Andrej Valek
b22e18b7a0 shadow: fix CVE-2017-2616
(From OE-Core rev: 94a1e2794df15f0f2cb62ae030cd81e6c0798b1f)

Signed-off-by: Andrej Valek <andrej.valek@siemens.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-26 13:16:41 +01:00
Carlos Rafael Giani
3a6ccf5227 gstreamer1.0-vaapi: Add patch for EGL CFLAGS for proper EGL support
(From OE-Core rev: 9a453c2ca6f7521f59f1ee0194b7c429c88fa403)

Signed-off-by: Carlos Rafael Giani <dv@pseudoterminal.org>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-26 13:16:41 +01:00
Carlos Rafael Giani
45a72f701e gstreamer1.0-vaapi: Remove unnecessary FILESPATH modification
(From OE-Core rev: 00cc1ed032b0f93b1c966dc4406aee9aa2ae7510)

Signed-off-by: Carlos Rafael Giani <dv@pseudoterminal.org>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-26 13:16:41 +01:00
Carlos Rafael Giani
4e914f760b gstreamer1.0-plugin-bad: Update packageconfigs
* Add packageconfigs for gl, libde265, lcms2, openh264, tinyalsa, ttml,
  webrtc, webrtcdsp
* Remove unnecessary gstglconfig.h line, since that file is no longer
  part of -bad (it is in -base now)
* Update EXTRA_OECONF flags, since new plugins got added to -bad
* Add ttml to the default packageconfigs since its dependencies are
  all in oe-core

(From OE-Core rev: e0f2a1f3e7f8eb6ce0d98fbc43acd8a4da641866)

Signed-off-by: Carlos Rafael Giani <dv@pseudoterminal.org>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-26 13:16:41 +01:00
Carlos Rafael Giani
6f690acbcc gstreamer1.0-plugin-good: Update packageconfigs
* There is no twolame recipe in oe-core or in meta-openembedded, so
  disable it
* Reorder the packageconfigs alphabetically

(From OE-Core rev: b2c5fe9bf9432e9a72be73c22e4db1af90a20b01)

Signed-off-by: Carlos Rafael Giani <dv@pseudoterminal.org>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-26 13:16:41 +01:00
Carlos Rafael Giani
e484aee1b9 gstreamer1.0-plugin-base: Update packageconfigs
* Add patches for gbm, libpng, libjpeg to conditionally enable/disable
  them in the configure script
* Reorder the packageconfigs alphabetically

(From OE-Core rev: 6e915c47b9626e706e6d0e96399d46ea28f318c6)

Signed-off-by: Carlos Rafael Giani <dv@pseudoterminal.org>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-26 13:16:41 +01:00
Andre McCurdy
fe258fb84a autotools.bbclass: fix autoreconf bbnote commandline arguments
Leaving -Wcross out of the bbnote version of the autoreconf command
seems to be a long standing inconsistency (dating back to the very
first commit in oe-core) but there's no obvious reason to do so.

(From OE-Core rev: 40644b2b33db6332293543bb39e8d4da07cf8c54)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-26 13:16:41 +01:00
Ross Burton
ed067ac7dc packagegroup-core-full-cmdline: clean up system-services dependencies
The 'system services' packagegroup depends on a number of packages which are not
system services, so remove them from the list.

(From OE-Core rev: 308e402a710dd7e6bb521517dde11a2e2b5fda22)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-26 13:16:41 +01:00
Mingli Yu
29537ac86a grub2.inc: set GRUBPLATFORM_arm to efi
* grub-efi support on arm is enabled as below
  commit:
  commit 65f9fb788371a9a08e3b0e6febecb9cc2aaeefe7
  Author: Kristian Amlie <kristian.amlie@northern.tech>
  Date:   Tue Jul 10 16:07:12 2018 +0200

     grub-efi: Provide target architecture for 32-bit ARM.

* But it fails on arm as below:
  | grub-mkimage: error: cannot open `./grub-core//serial.mod': No such file or directory.

  Set GRUBPLATFORM_arm = "efi" to fix the above error

(From OE-Core rev: 6ad431974d96aec29d12079be8b94c479b91c446)

Signed-off-by: Mingli Yu <Mingli.Yu@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-26 13:16:41 +01:00
Changqing Li
fa23fa907b apr: fix ptest hangs since enter non-terminating loop
ptest hangs in teststr since enter non-terminating loop,
fixed by a backport patch

(From OE-Core rev: daa496e7104e3f06bc5192bb4ec7d894b22dba5d)

Signed-off-by: Changqing Li <changqing.li@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-26 13:16:41 +01:00
Khem Raj
ae1dbbbfb5 systemd: Explicitly add hidden attribute to __start_BUS_ERROR_MAP and __stop_BUS_ERROR_MAP
These symbols appear in dynsyms of libsystemd.so and musl loader
doesnt like it

Error relocating /mnt/a/oe/build/tmp/work/i586-bec-linux-musl/avahi/0.7-r0/recipe-sysroot//lib/libsystemd.so.0: __start_BUS_ERROR_MAP: symbol not found
Error relocating /mnt/a/oe/build/tmp/work/i586-bec-linux-musl/avahi/0.7-r0/recipe-sysroot//lib/libsystemd.so.0: __stop_BUS_ERROR_MAP: symbol not found

[YOCTO #12577]

(From OE-Core rev: a13d3314cd4ddc812c3ac2904c8f563f7462878a)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-26 13:16:41 +01:00
Hongxu Jia
1994b4f92d no-static-libs.inc: use `?=' to set a default DISABLE_STATIC
It could be overrided by basic variable setting `='.

(From OE-Core rev: fc47018b02a9b96e88735e1b8a0536f9fb268c62)

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-26 13:16:41 +01:00
Victor Kamensky via Openembedded-core
e40faa1dca systemtap: fix unintialized memory accesses in dwflpp::function_entrypc
Observed failure in SystemTap v3.3 unit testing, It was tracked down
to unintialized memory access in dwflpp::function_entrypc method.

Upstream-Status: Backport
(From OE-Core rev: 7e465c75e317718ed81a76a6c3e487668e7db1ab)

Signed-off-by: Victor Kamensky <kamensky@cisco.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-26 13:16:41 +01:00
Victor Kamensky via Openembedded-core
941da957f9 systemtap: 3.2 -> 3.3
Upgrade systemtap from 3.2 to 3.3: Removed all backported patches.
Removed "remove quotes around -I include" pending patch since 3.3
got similar fix already. Resolved merge conflict in and
regenerated monitor-option.patch patch.

(From OE-Core rev: d8a60b324c340bf88e2e8650f4771030490709c5)

Signed-off-by: Victor Kamensky <kamensky@cisco.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-26 13:16:41 +01:00
Joe Slater
201cfa33fe ruby: security fix CVE 2018-1000073
Directory traversal vulnerability as described by
https://nvd.nist.gov/vuln/detail/CVE-2018-1000073.

(From OE-Core rev: 1a0a1785766c12003e3f8848852af84cae203e6b)

Signed-off-by: Joe Slater <joe.slater@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-26 13:16:40 +01:00
Ioan-Adrian Ratiu
62f5f01b5b lsb: fix usrmerge install paths
${base_prefix} is set in bitbake.conf to empty. This makes lsb_release
always install under /bin which is a problem if usrmerge is in
DISTRO_FEATURES, because it needs to be installed under /usr/bin.

By using ${root_prefix} instead, we fix the usrmerge install path and
the following QA warning goes away while keeping the non-usrmerge path
identical.

WARNING: lsb-5.0-r0 do_package: QA Issue: lsb: Files/directories were
installed but not shipped in any package:
  /bin
  /bin/lsb_release
Please set FILES such that these items are packaged. Alternatively
if they are unneeded, avoid installing them or delete them within do_install.
lsb: 2 installed and not shipped files. [installed-vs-shipped]

Also if usrmerge is defined don't try to create the lib64 symlink
because base-files handles it to avoid the do_rootfs error

Collected errors:
 * check_data_file_clashes: Package lsb wants to install file
 tmp-glibc/work/x64-nilrt-linux/test-image/1.0-r0/rootfs/lib64
         But that file is already provided by package  * base-files

(From OE-Core rev: 852c9498ae365bc8c149b5e6df0c8667bd885c79)

Signed-off-by: Ioan-Adrian Ratiu <adrian.ratiu@ni.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-26 13:16:40 +01:00
Martin Jansa
594c3d9a42 linux-firmware: add separate packages for all brcm files
* no changes in the content of previously existing packages

* include some silly commands I've used to "parse" WHENCE file to
  generate these, some manual changes are still needed, like separating
  cypress licensed files, removing duplicates when 2 files are included
  in the same package (bcm4356-pcie is exception because sdio and pcie
  files have different license).

(From OE-Core rev: 20532131201a39eb6415cdf34fb1f8b837e52436)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-26 13:16:40 +01:00
Martin Jansa
07b594c6bd linux-firmware: update LICENSE for bcm43* packages according to WHENCE file
* the license was updated
  brcm/brcmfmac43430-sdio.bin:
  https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/commit/?id=ec734a30
  brcm/brcmfmac43340-sdio.bin:
  https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/commit/?id=5ac5ad5c
  brcm/brcmfmac43362-sdio.bin:
  https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/commit/?id=be1c535e
  brcm/brcmfmac4354-sdio.bin:
  https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/commit/?id=a2921812

* this shows that with every upgrade the changes in WHENCE file should
  checked carefully

(From OE-Core rev: 2f87dc21d9b305589f6a01fb4d1809bfa04b4a34)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-26 13:16:40 +01:00
Martin Jansa
d25a6780c6 linux-firmware: add ${PN}-cypress-license handling from meta-raspberrypi
* this will break meta-raspberrypi once more, by including
  ${PN}-cypress-license package twice in PACKAGES
  I've sent fix here:
  https://github.com/agherzan/meta-raspberrypi/pull/295

(From OE-Core rev: 37e06a68e30a0ff619344d6e8fd8462e9fdb32e2)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-26 13:16:40 +01:00
Hongxu Jia
077ad46934 systemtap: improve reproducibility
- Fix build path issue of .pyc files:
  Supply "--root" directory to the "install" command.

- Fix build path issue of c++ object files:
  Use relative dir to include header string_ref.

- Fix build path issue of c library generated by distutils:
  Add OE's CFLAGS which contains `-fdebug-prefix-map' options
  to setup.py

[YOCTO #12528]

(From OE-Core rev: 806a8626c3fb5020666152b295f12541f5f61ffd)

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-26 13:16:40 +01:00
Anuj Mittal
b7b203d8ea wic/engine: improve error reporting when using rm with wic
When trying to delete something from an ext partition using debugfs, we
don't show any error to the user when that operation fails.

Change this behavior to show the error generated by debugfs. Also,
fallback to use rmdir in case we are trying to delete a directory. However,
unlike mdeltree that is used for a FAT partition, there's no easy way to
delete a non empty directory. Show an error instead when that happens so
user can take appropriate action.

(From OE-Core rev: a405383e63c35d7b56108f192ca74755b122a639)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-26 13:16:40 +01:00
Peter Kjellerstedt
866e437f21 logrotate: Improve configurability of the installed systemd service files
This makes it possible to add extra options to the logrotate
application (via ${LOGROTATE_OPTIONS}), and it allows the Persistent
option in logrotate.timer to be configured via
${LOGROTATE_SYSTEMD_TIMER_PERSISTENT}.

It also changes the sed expressions to allow for
${LOGROTATE_SYSTEMD_TIMER_BASIS} to contain commas without having to
prefix them with backslahes, e.g.:
LOGROTATE_SYSTEMD_TIMER_BASIS = "*-*-* *:00,30:00"

(From OE-Core rev: ca3f2f6b49edee7052ef941228dc477d9060bdd9)

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-26 13:16:40 +01:00
Ross Burton
b30285ca8f iputils: upgrade to s20190629
License-Update: change license checksums to check the License files themselves (BSD3 and GPL2),
and the tool-to-license file (LICENSE).  Changes to LICENSE will now be
detected.

Backport a patch to fix the build with musl.

Drop upstreamed patch.

Update libidn build-dependency to libidn2.

Patch in an install target and use that to install binaries, to avoid upstream
adding binaries that we don't ship.  Also ship all binaries that are installed.

(From OE-Core rev: d227122d929330ff71a550689aaedc5d8299d859)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-26 13:16:40 +01:00
Ross Burton
ce56cf5353 gnutls: rationalise libunistring arguments
No need to pass --without-libunistring-prefix, and it looks a lot like we're
trying to disable it.

(From OE-Core rev: 60fef4940de7f0440f1216eb2ea0ea683b3e8fdd)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-26 13:16:40 +01:00
Ross Burton
4f67aef1bf lib/oe: split out machine to ELF data dictionary
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-26 13:16:40 +01:00
Khem Raj
26810bc160 binutils: Upgrade to 2.31 release branch
(From OE-Core rev: 7eeec2ad91eca6ba44ea7b761d47082f4ebb04cc)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-26 13:16:40 +01:00
Ross Burton
9245162e8b grub: fix build with new binutils
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-26 13:16:40 +01:00
Peter Kjellerstedt
543dd8e171 base-files: profile: Avoid using "command" to determine if programs exist
Since the existence of "command" in itself is not guaranteed, using it
to determine if other executables exist is moot. Instead just run the
executables and let the shell determine if they exist. By piping stderr
to /dev/null we avoid unnecessary warnings in case they do not exist.

(From OE-Core rev: ba8510deb73e07f17be051fa15a91731ec10382f)

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-26 13:16:40 +01:00
Hongxu Jia
f931b6fbcb python3-pip: clean up obsolete
Since unify var-DISTUTILS_INSTALL_ARGS in distutils and setuptools,
- The local DISTUTILS_INSTALL_ARGS assignment is obsolete;
- The site.py is not be generated any more;
- The layout is in a standard pip dir (such as /usr/lib/python3.5/site-
  packages/pip rather than /lib/python3.5/site-packages/pip-10.0.1-
  py3.5.egg/pip), the pth file is not required;

`#!/usr/bin/env python3' is already used, do not manually sed.

[YOCTO #8446]

(From OE-Core rev: 5797631dc7a68e10c848ef06dd9eed011bc06e34)

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-26 13:16:40 +01:00
Hongxu Jia
892d38c5de python-setuptools.inc: clean up useless local var-DISTUTILS_INSTALL_ARGS
Since unify var-DISTUTILS_INSTALL_ARGS in distutils and setuptools,
The local var-DISTUTILS_INSTALL_ARGS broke do_install
...
error: option --script-dir not recognized
ERROR: python3 setup.py install execution failed.
...

[YOCTO #8446]

(From OE-Core rev: 1d205a107260d3f60c2af4aa6af0ba983a45c76d)

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-26 13:16:40 +01:00
Hongxu Jia
896b360746 distutils/setuptools, distutils3/setuptools3: improve reproducibility
- Unify var-DISTUTILS_INSTALL_ARGS in distutils and setuptools

- Supply "--root" directory to the "install" command, and use
  it as a prefix to strip off the purported filename encoded
  in bytecode files. (It strips build path prefix from .pyc files)

[YOCTO #8446]
[YOCTO #12084]

(From OE-Core rev: 21f0c5a50e00ac34975d79fd48f08730d8f19b15)

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-26 13:16:40 +01:00
Ross Burton
5b6fbaf727 oeqa/sdk/sdkbuildproject: use os.path.join
Instead of mushing two paths together and hoping that the slashes line up
correctly, use os.path.join.

(From OE-Core rev: ed0413babaf10ccf729472f603bbe32d84ba1931)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-26 13:16:40 +01:00
Ross Burton
19905c78e7 oeqa: rationalise Perl tests
As with the Python test, this can be both better and faster.  No need to copy a
file, just run a one-liner.

(From OE-Core rev: c6eef46747fe58bb2310be4f06d2fa9b67901d72)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-26 13:16:40 +01:00
Betacentauri
f6a00e0695 libnss-mdns: Fix search path for avahi socket file
Since v0.7 avahi uses /run/avahi-daemon/socket.
libnss searches in $(localstatedir)/run/avahi-daemon/.
Set localstatedir to / to fix mdns resolving.

(From OE-Core rev: 4feb586ba9fa0255d8f83bc1bec11f697dc26a33)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-26 13:16:40 +01:00
Chen Qi
869e501544 logging: use warning instead warn
The warn method is deprecated. We should use the documented warning instead.

Quoting from the python's official doc:
"""
Note: There is an obsolete method warn which is functionally identical to warning.
      As warn is deprecated, please do not use it - use warning instead.
"""

(From OE-Core rev: f467fd277eb77336097cfc0f5f329bdc8d0f70cb)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-26 13:16:40 +01:00
Armin Kuster
53b50b5d11 bind: update to 9.11.4
include:
CVE-2018-5738

(From OE-Core rev: fcf45459bc32d833740e3bb237ea0b8f8845f308)

Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-26 13:16:40 +01:00
Joe Slater
8a2b440f87 tiff: security fix CVE-2018-7456
NULL pointer use as described at nvd.nist.gov/vuln/detail/CVE-2018-7456.

(From OE-Core rev: 122da5cec495fc8ddfd880327e7c3ed0dc70e04f)

Signed-off-by: Joe Slater <joe.slater@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-26 13:16:40 +01:00
Joe Slater
d85feee51c tiff: security fix CVE-2018-8905
Buffer overflow described at nvd.nits.gov/vuln/detail/CVE-2018-8905.

(From OE-Core rev: 3f6f2a0619b4e243e6a9e52cee2cdd625ebf6769)

Signed-off-by: Joe Slater <joe.slater@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-26 13:16:40 +01:00
Ross Burton
b55f69e980 libx11: remove redundant siteinfo inherit
The recipe doesn't use the variables, and autotools inherits this already.

(From OE-Core rev: 270fc40c9365a2ad968203ecc0c985f53b574bee)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-26 13:16:40 +01:00
Ross Burton
264950e807 gnu-config: update to 2018-07-13
License checksum updated as URL changed.

(From OE-Core rev: 99f97350127ae2760614ad5b829e159d8b2747ee)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-26 13:16:40 +01:00
Ross Burton
e7d06361ba gnu-config: remove obsolete version
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-26 13:16:40 +01:00
Andre McCurdy
f8ad479c16 curl: disable C source code generator
The --libcurl command line option causes curl to generate C source
code which, when compiled and linked with libcurl, creates a binary
which behaves in the same way as curl when run with the other options
passed on the curl command line.

  https://curl.haxx.se/docs/manpage.html#--libcurl

It's a development tool and not generally useful on the target,
especially if the target doesn't contain a toolchain etc.

(From OE-Core rev: a1cda48761f70b5989bb8b9c91d71c0b3a03466e)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-26 13:16:40 +01:00
Hongxu Jia
8fdbb0381d distutils/setuptools-native, distutils3/setuptools3-native: do not try to fetch code during do_compile
If a python recipe is using setuptools and the setup_requires argument, where
setuptools will use easy_install to fetch the module if it isn't
present.

The build failed on a machine where a proxy was required, but succeeded on a
machine which had direct access to the internet

Add var-NO_FETCH_BUILD, and set it in distutils_do_compile which does not
allow to fetch code from internet during do_compile.

Example result:
...
ERROR: Do not try to fetch `pytest-runner1' for building. Please add its native recipe to DEPENDS.
Traceback (most recent call last):
  File "setup.py", line 56, in <module>
...

The improvement is flexible for test_requirements argument (used at
`setup.py test'), where use easy_install also.

[YOCTO #12084]
(From OE-Core rev: 57414f4a1c549e6faaa110e6e95ff601b05b7361)

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-26 13:16:40 +01:00
Ross Burton
206f8102a4 cmake: put cmake.m4 and toolchain file in PN
Previously cmake-dev held some files which should be in cmake.

- cmake.m4 should be in installed in cmake so it can be used out of the box
- nativesdk-specific OEToolchainConfig.cmake file used to be in cmake, but the
  change of default packaging rules move it into cmake-dev.  This recipe is the
  exception and it should be moved back.

Add the extra paths to cmake, and clear FILES for cmake-dev to ensure nothing
else slips in.

(From OE-Core rev: a6ce79b87d3db57033a3d1710cb3292366a0a8f7)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-26 13:16:40 +01:00
Cody P Schafer
034ee07ed9 cmake: in SDK use OE env var to set default toolchain
Patch the location in cmake where the toolchain file is loaded
to use the (new) OE_CMAKE_TOOLCHAIN_FILE variable to select a default
toolchain if no toolchain has been specified. The cmake alias is
removed.

The alternatives:

 - shell alias fails when cmake is called indirectly (ex: a makefile
   managing several projects which calls cmake for some of them)
   because aliases are not inherited

 - wrapper script that unconditionally adds "-D..." breaks cmake's
   build tests and many other things as it causes cmake to believe it
   should be configuring things when it should not be. For example,
   `cmake -DCMAKE_TOOLCHAIN_FILE=... --build .` does not work (note
   that this also breaks people directly using `cmake --build .` with
   the current alias).

(From OE-Core rev: da60be3768e7183794d63548166d107dbd0a4973)

Signed-off-by: Cody P Schafer <dev@codyps.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-26 13:16:40 +01:00
Richard Purdie
24bb79155b yocto-uninative: Upgrade to version 2.2
This version adds nativesdk-libnss-nis to resolve glibc symbol issues

We need this to avoid symbol mismatch issues for binaries that use this
on newer systems which then won't run on older ones where it isn't present.

(From OE-Core rev: 98c7ab9cf32765d604c35dc69bc7bd90e94fc8f3)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-26 13:16:40 +01:00
Richard Purdie
d854f1b6dc bitbake: server/process: Always place the server logfile in the build directory
Currently the bitbake-cookerdaemon.log is placed into cwd. This seems like a
bad idea, we can place it in the build directory alongside the lockfile that
represents the server instead.

(Bitbake rev: 1620dbc48ffb2a882371cf9174a7b12648befc8a)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-25 16:48:27 +01:00
Richard Purdie
1b7eccff64 selftest/bbtests: Add test for bitbake execution outside the build directory
Also fix a related test's error message to match what it does.

(From OE-Core rev: 662be652ed39f32c3c7bee6539a9e91af191557e)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-25 16:48:27 +01:00
Richard Purdie
ce76b71666 selftest/bblayers: Place the test layer directory in builddir
Placing the layer in meta means the directory is in an unclean state
which may influence other tests. Use our build directory instead
since we 'own' that. This helps keep oe-selftest parallelisation
clean.

(From OE-Core rev: f2d32bdf3f27a9ef62fe3abb7fdd2e04ab84b5f3)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-25 16:48:27 +01:00
Richard Purdie
ce5cd33a8a license_image: Fix race
The current code pokes into do_deploy manifests from do_image_complete when the
do_image_complete task may or may not depend upon the do_deploy tasks in question.
Often it gets lucky, sometimes it results in build failures.

To fix this, split the functionality to its own task which can have the correct
task dependencies. This means the data in BB_TASKDEPDATA is definitive, the other
code can be dropped, as can the IMAGE_EXTRATYPES do_populate_lic dependencies
from image.bbclass.

This fixes bugs which show up as:

NOTE: recipe linux-yocto-4.14.48+gitAUTOINC+d64aec9793_97c8063d2d-r0: task do_deploy: Started
ERROR: core-image-minimal-1.0-r0 do_image_complete: Error executing a python function in exec_python_func() autogenerated:

The stack trace of python calls that resulted in this exception/failure was:
File: 'exec_python_func() autogenerated', lineno: 2, function: <module>
     0001:
 *** 0002:write_deploy_manifest(d)
     0003:
File: '/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-oe-selftest/build/meta/classes/license.bbclass', lineno: 33, function: write_deploy_manifest
     0029:        'w+').write(output)
     0030:}
     0031:
     0032:python write_deploy_manifest() {
 *** 0033:    license_deployed_manifest(d)
     0034:}
     0035:
     0036:python license_create_manifest() {
     0037:    import oe.packagedata
File: '/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-oe-selftest/build/meta/classes/license.bbclass', lineno: 191, function: license_deployed_manifest
     0187:        # It is necessary to mark this will be used for image manifest
     0188:        man_dic[dep]["IMAGE_MANIFEST"] = True
     0189:        man_dic[dep]["PN"] = dep
     0190:        man_dic[dep]["FILES"] = \
 *** 0191:            " ".join(get_deployed_files(dep_dic[dep]))
     0192:        with open(os.path.join(lic_dir, dep, "recipeinfo"), "r") as f:
     0193:            for line in f.readlines():
     0194:                key,val = line.split(": ", 1)
     0195:                man_dic[dep][key] = val[:-1]
File: '/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-oe-selftest/build/meta/classes/license.bbclass', lineno: 289, function: get_deployed_files
     0285:    """
     0286:
     0287:    dep_files = []
     0288:    excluded_files = []
 *** 0289:    with open(man_file, "r") as manifest:
     0290:        all_files = manifest.read()
     0291:    for f in all_files.splitlines():
     0292:        if ((not (os.path.islink(f) or os.path.isdir(f))) and
     0293:                not os.path.basename(f) in excluded_files):
Exception: FileNotFoundError: [Errno 2] No such file or directory: '/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-oe-selftest/build/build-st-730/tmp/sstate-control/manifest-qemux86_64-linux-yocto.deploy'

ERROR: core-image-minimal-1.0-r0 do_image_complete: Function failed: write_deploy_manifest
ERROR: Logfile of failure stored in: /home/pokybuild/yocto-autobuilder/yocto-worker/nightly-oe-selftest/build/build-st-730/tmp/work/qemux86_64-poky-linux/core-image-minimal/1.0-r0/temp/log.do_image_complete.50537
NOTE: recipe core-image-minimal-1.0-r0: task do_image_complete: Failed
ERROR: Task (/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-oe-selftest/build/meta/recipes-core/images/core-image-minimal.bb:do_image_complete) failed with exit code '1'
NOTE: recipe linux-yocto-4.14.48+gitAUTOINC+d64aec9793_97c8063d2d-r0: task do_deploy: Succeeded

(From OE-Core rev: b54cdaea7844ee3bf0c39eb97cc7c4c17ed5818c)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-25 16:48:27 +01:00
Richard Purdie
a6a865ba93 license: Split image license functions to a separate class
This means the image code is only included in image recipes through
the IMAGE_CLASSES variable.

This sets things up to allow us to fix image deploy dependency problems.

(From OE-Core rev: fd44b8b4b2484f2d35c7a0e749e7dc316d601989)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-25 16:48:27 +01:00
Richard Purdie
2dda838683 package: Use subprocess to be consistent with the rest of the class
Using 'sub' in one function just confuses things, standardise and fix
formatting of the parameters too.

(From OE-Core rev: a740c638148ed7236c49eed55ae9a15b94e55b9f)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-25 16:48:27 +01:00
Richard Purdie
b84b073396 selftest/wic: clean up runCmd error code handling
runCmd handles checking exit 0 internally unless specified otherwise and its
error messages are much more useful including the failed command output.

Clean up the unneeded 0 exit code checks in the wic tests.

(From OE-Core rev: 394f7d4efe80e390e2c9b0be5e6d10954395a82b)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-25 16:48:27 +01:00
Richard Purdie
e3dcd61337 selftest/wic: Improve error message for test_fixed_size
Currently this can fail with a message like 127 != 0 which is unhelpful.

If we remove the ignore_status=False, the debugging from runCmd is much
more helpful printing status.output.

Also remove the now unneeded exit code check.

(From OE-Core rev: 1aa7471b11aedc68de5116c461fe73152e3985fd)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-25 16:48:27 +01:00
Richard Purdie
d8762a1ea7 Revert "relocate_sdk.py: remove hardcoded SDK path"
This reverts commit 6671a4d980c8bef8f402780a308f6c43a25044aa.

This breaks uninative tarball since the call of relocate_sdk.py from uninative.bbclass
wasn't updated to account for this change. It isn't clear what value that code could
pass in and this isn't simple to fix so revert until a better fix can be found
that doesn't break uninative.

(From OE-Core rev: b247392b4ced57cfe694656032f6a6723740a9e8)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-25 16:46:56 +01:00
Richard Purdie
dafacf0453 uninative-tarball: Add nativesdk-libnss-nis to resolve glibc symbol issues
We need this to avoid symbol mismatch issues for binaries that use this
on newer systems which then won't run on older ones where it isn't present.

(From OE-Core rev: 39c1719a32ed5567e3bf2df5c4f9068d0f5a9400)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-24 17:03:45 +01:00
Paul Eggleton
5aef7cd919 oe-selftest: fix for changes to buildhistory-diff
Now we're not reporting the related fields (as of openembedded-core
8658b3677b9f7cb70806061c41570c709086ef05) we shouldn't expect to see
PR reported here since it's not monitored by buildhistory-diff. However,
with a bit of messing about we can check for the exact output that we
should now see as a result of the test changing PR to go backwards.

(From OE-Core rev: f9c233908e6ada208d7abfdfe3ff98c6b278f405)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-24 11:52:27 +01:00
Richard Purdie
34c2bd84ee lib/oe/utils: Drop now unused multiprocess_exec
(From OE-Core rev: f3b30def2cd1c9ede7630489c3949a45b6eba6ed)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-24 11:52:27 +01:00
Richard Purdie
adea90740d package/package_manager: multiprocess_exec -> multiprocess_launch
After this replacement, the parent exception handling works so we don't
need subprocess wrapping with bb.error in the underlying functions.

The underlying contexts also have better module handling so the imports
can be cleaned up.

(From OE-Core rev: aa8260adf53139d776a2affe6118d28b295c1fab)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-24 11:52:27 +01:00
Richard Purdie
1d8924f172 package: Clean up getstatusoutput usage
Replace usage of oe.utils.getstatusoutput() with direct subprocess calls. The
call is just a wraper to the subprocess call of the same name and requires
the caller to handle exceptions themselves. We usually do this badly, failing
to show the output or the command or the return code.

Its much safer to rely on a call like subprocess.check_output() instead.

This also makes it easier to spot and remove cases where shell=True isn't
needed in a later cleanup.

(From OE-Core rev: 9f058857fb692f1251deb43bcaa7ed0120140093)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-24 11:52:27 +01:00
Richard Purdie
9928614e94 sstate/bitbake.conf: Use pigz if available
Currently the compression of sstate objects is single threaded. In the case
of ltp, this takes around 33s. If we add pigz into the list of non-fatal
HOSTTOOLS and then use if it available when building the sstate object,
this time drops to around 6s.

Since pigz is now widely available this is an optimisation we should
utilise.

(From OE-Core rev: 2de56aa0792ec93445130d801936a8ea643fad27)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-24 11:52:27 +01:00
Richard Purdie
e1ba46109e package: Call file to determine elf status in parallel
This allows the calls to is_elf (which calls file) to happen in parallel
allowing a speedup of do_package and do_populate_sysroot for native
recipes.

(From OE-Core rev: bbe0d3e26484f3f347262d40a8a9d415ce21fb43)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-24 11:52:27 +01:00
Richard Purdie
069a1c4a15 package: Refactor to remove isElf/is_elf function duplication
There are probably further cleanups needed here but this at least removes
the major code duplication between these two similar funcitons, keeping the
kernel module ".ko" extension check for efficiency to avoid opening and
reading file contents in the general case.

(From OE-Core rev: 7ad0c0d6ab12bebeac097fc0f5210c876dcfe9be)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-24 11:52:27 +01:00
Richard Purdie
e0ea2c7378 package: Allow parallel processing of shlib analysis
This function is a bit more invasive to add parallelism to but
allows the shlibs analysis to happen in multiple threads. In order
to return values correctly/safely the data types needed tweaking
to avoid lists and use immutable objects.

(From OE-Core rev: b5788fb1f795f2f35d1788d8311e12984ffb2122)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-24 11:52:27 +01:00
Richard Purdie
bc6b668e60 package: Allow parallel processing of debug splitting
Adjust the code so that the splitting of debug symbols from files happens
in parallel. To to this we need to move some path handling code into the
main function and pass more parameters in.

(From OE-Core rev: 9f0c2ed5d44a16e8268ac521236c4752f930f26a)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-24 11:52:27 +01:00
Richard Purdie
0e6a662ba2 package: Don't use subshell to execute file
We don't need any functionality from the shell here, its just extra fork
overhead. Therefore remove it and use subprocess directly.

(From OE-Core rev: bcc03ea19e103f6aa93bada2f49fcc5cc7bc0790)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-24 11:52:27 +01:00
Richard Purdie
29482de968 package: Drop subshell usage for dwarfsrcfile generation.
The command for running dwarfsrcfiles is simple and does not need a subshell
for each execution. By expanding out this function to use check_output()
from subprocess and a list of arguments, the shell overhead can be dropped.

For recipes with lots of files this gives a significant saving.

(From OE-Core rev: 6334129dfbe266602fab70ce445641053a05be6c)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-24 11:52:27 +01:00
Richard Purdie
3fa835d9bc package_ipk|deb: Use oe.utils.multiprocess_launch
The current code had broken exception handling due to the use of a
"traceback" variable as well as an import. Use the new library code
for this instead which reduces code duplication and has fixed/improved
exception handling.

The chdir code can be dropped since any directory changes are in other
processes now so there is no need for it here and the code no longer
changes directory.

(From OE-Core rev: bcd47389f4b1fc69d2bb4da01933bfa1fdcae092)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-24 11:52:27 +01:00
Richard Purdie
2245a94bb8 package: Rework PACKAGELOCK based upon sstate for do_packagedata
I think this lock dates from before we had sstate for do_packagedata.

Since WORKDIR is recipe specific and we write into WORKDIR, we no longer need
any write locks in the do_packagedata code itself, its handled by the sstate
task lock for the final copy in at the end. The final write lock can be simply
removed.

The only time we need read locking is when actually reading data from the
shared directory. We can therefore reduce the window the lock is held
significantly as well, hence improving the speed of packagedata tasks running
in parallel.

(From OE-Core rev: f7106cdf2190d9ec59132a1cb2bb431d653cd9c5)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-24 11:52:27 +01:00
Richard Purdie
6d66b57409 utils: Add multiprocess_launch API and testcase
The current methods of spawning processes for parallel execution have
issues around collection of results or exceptions.

Take the code from package_ipk/deb, make it generic, add a results
collection mechanism, fix the exception handling and for it into a
standard library function.

Also add a test case which tests both the success and failure modes
of operation to stop this functionality regressiing again.

In particular, compared to multiprocess_exec, this fork off the parent
approach means we can pass in the datastore and functions work in the
same scope as the parent. This removes some of the complexities
found trying to scale multiprocess_exec to wider use.

(From OE-Core rev: 88f0c214e593a45566df5131bda4c946f5ccc8c2)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-24 11:52:27 +01:00
Richard Purdie
4c67ffef2e scripts/contrib/mkefidisk.sh: Remove
This has been printing a deprecation warning for a while, now remove it
in favour of wic's efi functionality.

(From OE-Core rev: 1f279cf1ad2f0a20495780b210a987416650f40f)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-24 11:52:27 +01:00
Devarsh Thakkar
6cdfd77806 matchbox-terminal: Upgrade to 0.2
New version adds support for command line options
(-e and -- command) which can be used for launching
programs or running commands through matchbox-terminal.

(From OE-Core rev: e33ca806d34facad035fa387b17f56918648d80b)

Signed-off-by: Devarsh Thakkar <devarsht@xilinx.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-24 11:52:27 +01:00
Ruslan Bilovol
bf5b43495a relocate_sdk.py: remove hardcoded SDK path
This patch removes hardcodes added to relocate_sdk.py
during SDK build, making it flexible and reusable.
Now default SDK path is passed to the script as
parameter rather then harcoded inside it.

This allows to reuse this script for multiple
relocations, and adds possibility to relocate
SDK multiple times

(From OE-Core rev: 6671a4d980c8bef8f402780a308f6c43a25044aa)

Signed-off-by: Ruslan Bilovol <rbilovol@cisco.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-24 11:52:27 +01:00
Paul Eggleton
2019f78260 oe-find-native-sysroot: drop message if pseudo is not found
pseudo won't always be in the native sysroot for a recipe, so we
shouldn't be complaining if it isn't there.

(From OE-Core rev: 11efc94742088ec6fbf2a86000e98286b0b529ef)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-24 11:52:26 +01:00
Paul Eggleton
9c20b0df5f oe-run-native: ensure arguments get quoted
If you pass quoted arguments to oe-run-native, they need to be passed
as-is to the underlying tool. Putting quotes around $@ ensures each
argument is quoted individually.

(From OE-Core rev: a8758653500a2458cd91bf1aa5eb666ad2b45df4)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-24 11:52:26 +01:00
Ross Burton
b4317d0ead xf86-input-libinput: upgrade 0.27.1 -> 0.28.0
(From OE-Core rev: afa7aa4c8742c8573d59e80625bd736e5ab56906)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-24 11:52:26 +01:00
Ross Burton
44bc1ba5f5 shared-mime-info: upgrade 1.9 -> 1.10
(From OE-Core rev: bd14918a01af2d88511443b03edf4efe99a61fe6)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-24 11:52:26 +01:00
Ross Burton
79f916d92c harfbuzz: upgrade 1.7.5 -> 1.8.4
(From OE-Core rev: a5b52a8d78821eee489f90b0cf4bfa5db7801018)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-24 11:52:26 +01:00
Ross Burton
8056a3dcd2 libinput: upgrade 1.11.0 -> 1.11.2
(From OE-Core rev: 0af305129d7c482fdc0a0312166ef4b1af8a2405)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-24 11:52:26 +01:00
Ross Burton
ad79b00257 pciutils: upgrade 3.5.6 -> 3.6.1
(From OE-Core rev: 2ed00ce1acb19f351149c02f25267b111991e8f7)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-24 11:52:26 +01:00
Ross Burton
fde3ca8b73 strace: upgrade 4.22 -> 4.23
(From OE-Core rev: 71994715714076e7f4dfb29c91da0a4e293b7e53)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-24 11:52:26 +01:00
Ross Burton
6494ab4ab3 xz: upgrade 5.2.3 -> 5.2.4
(From OE-Core rev: 0529b8c88a2cd6c21737023d757f44eebc5a0547)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-24 11:52:26 +01:00
Ross Burton
437a5ace77 sysstat: upgrade 11.7.3 -> 11.7.4
(From OE-Core rev: 8a50ab1ebf1b9b274521c194662d9144f99304fc)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-24 11:52:26 +01:00
Ross Burton
2f4009dd57 libgpg-error: upgrade 1.31 -> 1.32
(From OE-Core rev: 9437450e451fe30c7d6ee8c37f1ce804153c31c4)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-24 11:52:26 +01:00
Ross Burton
a42ec88902 gnupg: upgrade 2.2.8 -> 2.2.9
(From OE-Core rev: b7da8d50ebc2f44376d352d001371e03f465e3be)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-24 11:52:26 +01:00
Ross Burton
1d1d96e75f btrfs-tools: upgrade 4.16.1 -> 4.17
(From OE-Core rev: 90755fd4ec0303bbf237520dc5237926f70bc3bf)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-24 11:52:26 +01:00
Ross Burton
c441b34e42 libyaml: upgrade to 0.2.1
License changed due to copyright dates being added.

(From OE-Core rev: 079df0021b0819f4b88e20ac8f3350a0f153c6bc)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-24 11:52:26 +01:00
Ross Burton
b865fb4fcb tcf-agent: upgrade to 1.7.0
Remove 0001-canonicalize_file_name-is-specific-to-glibc.patch as upstream has
integrated musl support.

(From OE-Core rev: 4c243b71a0a05acc3b2a8bd327a8c97dcc08d3c5)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-24 11:52:26 +01:00
Ross Burton
e3af86e98d bc: upgrade to 1.07.1
Relicensed to just GPLv3+, update LICENSE and checksums.

The build dependency for flex should be flex-native.

libmath.h is missing from the tarball (it was present in 1.06) and the
generation rules are not cross-friendly, so delete the rules and copy in a
pre-generated libmath.h.

Remove fix-segment-fault.patch as the fixes are now upstream.

Add PACKAGECONFIG for readline and libedit, defaulting to readline.

(From OE-Core rev: 9862849ba883c110e4d2c57c39ab2c58e9b2d216)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-24 11:52:26 +01:00
Oleksii Konoplitskyi
1d8c7fa369 package.bbclass: exclude packages as shlib providers
Some packages containing shared libraries might be registered
as shlib providers when they shouldn't (for example, the lib is for
their private use and must not generate any dependency).

EXCLUDE_FROM_SHLIBS is targeted at that, but it could be set
for entire recipe only.

This patch allows to set list of packages that are not candidates
for shlib providers.

Variable EXCLUDE_PACKAGES_FROM_SHLIBS is used, e.g.:
EXCLUDE_PACKAGES_FROM_SHLIBS = "glibc-ptest glibc-mtest"

Cc: Andrii Bordunov <aborduno@cisco.com>
(From OE-Core rev: 43be374a6deceeaf105794f034957c65bb6bec72)

Signed-off-by: Oleksii Konoplitskyi <okonopli@cisco.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-24 11:52:26 +01:00
Chen Qi
b0f2f690a3 systemd-boot: upgrade to 239
Upgrade systemd-boot to 239.

The following patch is removed due to recent fix about meson's cpu family
mapping and validation.

  0001-Also-check-i386-i586-and-i686-for-ia32.patch

(From OE-Core rev: ff0b682b807959521c85716296de7a1d26d7d18f)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-18 10:18:42 +01:00
Chen Qi
ada8a5d917 systemd: upgrade to 239
Upgrade systemd to 239.

1. Patch Changes
* Rebased Patches
  0002-binfmt-Don-t-install-dependency-links-at-install-tim.patch
  0003-use-lnr-wrapper-instead-of-looking-for-relative-opti.patch
  0006-Make-root-s-home-directory-configurable.patch
  0027-remove-nobody-user-group-checking.patch
  0011-socket-util-don-t-fail-if-libc-doesn-t-support-IDN.patch
  0013-add-fallback-parse_printf_format-implementation.patch
  0014-src-basic-missing.h-check-for-missing-strndupa.patch
  0015-don-t-fail-if-GLOB_BRACE-and-GLOB_ALTDIRFUNC-is-not-.patch
  0016-src-basic-missing.h-check-for-missing-__compar_fn_t-.patch
  0017-Include-netinet-if_ether.h.patch
  0019-Do-not-enable-nss-tests-if-nss-systemd-is-not-enable.patch
  0022-don-t-use-glibc-specific-qsort_r.patch
  0024-comparison_fn_t-is-glibc-specific-use-raw-signature-.patch
  0026-Use-uintmax_t-for-handling-rlim_t.patch
  0030-fix-missing-of-__register_atfork-for-non-glibc-build.patch
  0031-fix-missing-ULONG_LONG_MAX-definition-in-case-of-mus.patch
  0001-core-device.c-Change-the-default-device-timeout-to-2.patch
  0001-Remove-fstack-protector-flags-to-workaround-musl-bui.patch

* Dropped Patches and Reasons
  0001-Hide-__start_BUS_ERROR_MAP-and-__stop_BUS_ERROR_MAP.patch
    This patch is dropped because the problem has been fixed by
    binutils upstream. And this workaround could be dropped.
    https://sourceware.org/bugzilla/show_bug.cgi?id=18548

  0007-Revert-rules-remove-firmware-loading-rules.patch
  0008-Revert-udev-remove-userspace-firmware-loading-suppor.patch
    These two patches are dropped because they are for kernel < 3.7.
    But the current minimal requirement of kernel to build systemd
    is as below.
    REQUIREMENTS:
        Linux kernel >= 3.13
        Linux kernel >= 4.2 for unified cgroup hierarchy support
    So these two patches no long make any sense.
    Also remove non-exist firmware-path option

  0009-remove-duplicate-include-uchar.h.patch
  0010-check-for-uchar.h-in-meson.build.patch
    These two patches are dropped because musl has implemented
    uchar.h. See commit below from musl repo.
    """
    ab9672ae73248f51e30f4553c4b8878525e46383
    implement uchar.h (C11 UTF-16/32 conversion) interfaces
    """

  0018-check-for-missing-canonicalize_file_name.patch
    The above patch is dropped because current systemd does not need
    canonicalize_file_name.

  0025-Define-_PATH_WTMPX-and-_PATH_UTMPX-if-not-defined.patch
    The above patch is dropped because utmp makes no sense in musl.
    Check code below from musl.
    include/utmp.h:#define _PATH_UTMP "/dev/null/utmp"
    And utmp PACKAGECONFIG has been explicitly disabled for musl.
    So we don't need this patch.

  0032-memfd.patch
  0033-basic-macros-rename-noreturn-into-_noreturn_-8456.patch
  libmount.patch
  0034-Fix-format-truncation-compile-failure-by-typecasting.patch
    The above patches are dropped because they are backported patches.
    And current systemd has contained these patches.

  0036-time-util-fix-build-with-gcc8-Werror-format-truncati.patch
    The above patch is dropped because it has been merged and is now
    in new version.

* Newly Added Patch
  0005-include-gshadow-only-if-ENABLE_GSHADOW-is-1.patch
    This patch is added to fix build for musl.

  0019-Do-not-disable-buffering-when-writing-to-oom_score_a.patch
    This patch is added to fix the following error which caused system
    unable to boot up.
      systemd-udevd.service: Failed to adjust OOM setting: Invalid argument
      dbus.service: Failed to adjust OOM setting: Invalid argument

  0020-distinguish-XSI-compliant-strerror_r-from-GNU-specif.patch
    This patch is added to fix segment fault error on musl systems.

  0001-login-use-parse_uid-when-unmounting-user-runtime-dir.patch
    This patch is backported to solve a race condition between
    user-runtime-dir@xxx.service stop and user deletion.

2. PACKAGECONFIG and Dependency Changes
* Add a new PACKAGECONFIG item 'gshadow'. Enable it by default for glibc
  but disable it by default for musl. This is because musl does not provide
  gshadow.h.

* Add a new PACKAGECONFIG item 'portabled'. Default to disable it because
  it's still experimental, according to the announcement letter.
  """
  Currently, the support is still experimental, but this is expected to
  change soon. Reflecting this experimental state, the "portablectl" binary
  is not installed into /usr/bin yet.
  """

* Change 'kmod' from a hard dependency to a PACKAGECONFIG item. Default
  to enable it.

* Change 'acl' from a hard dependency to a PACKAGECONFIG item. Default
  to enable it.

* Remove 'readline' from DEPENDS. systemd does not need it.

* Remove 'libcgroup' from DEPENDS. The dependency on libcgroup has been
  removed from systemd a long time ago. We now remove this unnecessary
  dependency from DEPENDS.

3. update-alternatives changes
  The utilities like shutdown, poweroff, etc. are now created as symlinks
  at do_install. So there's no need to use update-alternatives mechanism
  anymore to create the symlinks now. In addtion, I don't think we now
  support multiple init systems at one running system, so there's really
  no need to use update-alternatives mechanism here.

  Also update the FILES_${PN} to include these files to avoid QA issue.

(From OE-Core rev: 597f4645faf61486eb1d2ab73f3d974460ab9466)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-18 10:18:42 +01:00
Khem Raj
219eed186d musl: Update to latest master
General bug fixes

Full logs
https://git.musl-libc.org/cgit/musl/log/?qt=range&q=193338e619de7c993efa2c0e1a87240bd732c181..9cad27a3dc1a4eb349b6591e4dc8cc89dce32277

(From OE-Core rev: 8a7db51308d62f75fbb2937ae4c79deb592070ba)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-18 10:18:42 +01:00
Khem Raj
b297c1aa4b recipes: Enforce ARM ISA just for arm arches <= armv5
armv7+ used thumb2 ISA and it compiles fine with thumb2
issues are only when using thumb1 ISA

(From OE-Core rev: c0ef8a91f671f30acd92e2734144f7ddf1acda53)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-18 10:18:42 +01:00
Andre McCurdy
a8ffa4a02c curl: add PACKAGECONFIG options for brotli, built-in manpages, etc
- Add PACKAGECONFIG option for brotli (disable by default)
 - Add PACKAGECONFIG option for built-in manpages (disabled by
   default). Embedding a copy of the manpages within the curl binary
   adds approx 60k of gzipped data and duplicates the contents of the
   curl-doc package.
 - Add PACKAGECONFIG option for verbose error messages (enabled by
   default)
 - Disable legacy NTLM http authentication via delegation to the
   external winbind ntlm_auth helper (which isn't going to work
   without a runtime dependency on samba).

(From OE-Core rev: 0bf3637a07228576d78cf4c71de92781ec143d7f)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-18 10:18:42 +01:00
Andre McCurdy
732a2d05fd curl: update 7.60.0 -> 7.61.0
https://curl.haxx.se/changes.html#7_61_0

(From OE-Core rev: b26ca91574a88745910d44777bb17ac0616baf3e)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-18 10:18:42 +01:00
Ross Burton
164785f81a atk: add explicit gettext-native dependency
In native builds we attempt to turn off i18n but this doesn't work in Meson
yet[1] but as the gettext class reduces dependencies in native builds we need to
add gettext-native to DEPENDS explicitly.

[1] https://github.com/mesonbuild/meson/issues/821

(From OE-Core rev: 964ea8bfc455f6017dc834104d96b8f5aa40a5bc)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-18 10:18:42 +01:00
Khem Raj
ea9d7095a6 mesa: Fix build with wayland and egl
When wayland and egl both are on then it enables the wayland
plugin which actually fails to build because its not finding wayland-protocol
xml templates in proper location which is recipe sysroot since
we are cross compiling

Fixes build errors e.g.
make[4]: *** No rule to make target `//usr/share/wayland-protocols/unstable/linux-dmabuf/linux-dmabuf-unstable-v1.xml', needed by `drivers/dri2/linux-dmabuf-unstable-v1-client-protocol.h'.  Stop.
make[4]: *** Waiting for unfinished jobs....

(From OE-Core rev: ff4762e94faa095abd7175810d1053fdd361058f)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-18 10:18:42 +01:00
Olof Johansson
a24e8944e7 spdx.bbclass: Encode strings before passing to hashlib
In python3, passing a unicode object to hashlib will result in an
exception that encourages you to encode it first.

(From OE-Core rev: b06a44f1081ea422a365e80bc79b2aeb2783d23f)

Signed-off-by: Olof Johansson <olofjn@axis.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-18 10:18:42 +01:00
Olof Johansson
83b3e1463a spdx.bbclass: Make use of bb.utils' sha1_file()
The same functionality already exists within bitbake, so avoid
duplicating.

(From OE-Core rev: 978f5a8f16bf5942aad73d761df2a00aeb36339d)

Signed-off-by: Olof Johansson <olofjn@axis.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-18 10:18:42 +01:00
Olof Johansson
ae7d14ab44 spdx.bbclass: Fix undefined variable error
The path variable is used in an error message a few lines later, but was
never defined.

(From OE-Core rev: 863ff90b788f66241860e27e1fd3a791b00984cc)

Signed-off-by: Olof Johansson <olofjn@axis.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-18 10:18:42 +01:00
Olof Johansson
a60a3c11f4 spdx.bbclass: Replace deprecated string.replace with str.replace
The string.replace function is removed in python3. Instead, the str
method "replace" should be used instead.

(From OE-Core rev: 8538aabf62d866f36764b4b136ee8575308df690)

Signed-off-by: Olof Johansson <olofjn@axis.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-18 10:18:42 +01:00
Andrej Valek
c24db0fd6e perl: update to 5.24.4
- fix CVE-2018-6797, CVE-2018-6798, CVE-2018-6913
 - remove patches, which are now included in update
 - refresh patches

(From OE-Core rev: c0dac0d600e81054104f7b377f7c266aa83df371)

Signed-off-by: Andrej Valek <andrej.valek@siemens.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-18 10:18:42 +01:00
Rui Wang
566e2de017 bash: fix wrong exit status offset
In Linux,8 bits of the return code and 8 bits of the number of
the killing signal are mixed into a single value on the exit code,
so the exit status offset should be 8. But the autoconf checker
can not determine it while cross compiling, and then it is set to
the default value 0, which will cause generating the wrong exit
code if program exit with an error code.

(From OE-Core rev: e2dea46607a24620d6d2c250efc9b2e95bfd5ad8)

Signed-off-by: Rui Wang <rui.wang@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-18 10:18:42 +01:00
Khem Raj
9d1323af45 packagegroups: Disable unbuildable dependencies for riscv64
This helps with cleaner world build parsing logs

(From OE-Core rev: ab6f5ea9c15e1e928a5a529813a241daafab2036)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-18 10:18:42 +01:00
Changqing Li
b3f188d541 epiphany: fix epiphany cannot start problem
Add RDEPEND of gsettings-desktop-schemas to fix below error:
Error: GLib-GIO-ERROR: Settings schema 'org.gnome.desktop.background'
is not installed

This depend was setted in gnome-desktop before, but dropped when we
drop gnome-desktop after upgrade epiphany to 3.28.1.1.

(From OE-Core rev: e81db90870ee373c12849bb41e619a3ac6068d6d)

Signed-off-by: Changqing Li <changqing.li@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-18 10:18:42 +01:00
Ross Burton
ebad780985 oeqa/sdk/python: clean up Python test
For the same reasons as the runtime Python test, clean up the SDK test.

Also port from Python 2 to Python 3, as that's what is supported now.

(From OE-Core rev: bead742a3ffc0a53162fb0c36610d74a1422e7b3)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-18 10:18:42 +01:00
Ross Burton
731ce8c760 oeqa/runtime/python: clean up Python test
Currently this is three test cases:

1) test_python_exists.  Fail if python3 isn't in PATH.
2) test_python_stdout.  Run a Python script and check the output is as expected
3) test_python_testfile.  Check that a file test_python_stdout wrote to exists.

(1) should be a setup and skip the test module if it isn't present.
(2) and (3) should be merged, there's no point copying over a two line Python
file, and the test doesn't verify that the file doesn't exist in the first
place.

Rewrite the test to check that Python is present in a class setup so the entire
test is skipped if it isn't and do some simple rot13 to verify that bytecode is
being executed correctly.

(From OE-Core rev: a35be5f32b4fe70b18ac1e2eccfd94558cecfbba)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-18 10:18:42 +01:00
Ross Burton
c093b40727 gnutls: use HTTP instead of FTP
HTTP is in general more reliable so use that in the SRC_URI.

(From OE-Core rev: 4f3378e0763a94a5daac7169f498177fc6ef4e75)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-18 10:18:42 +01:00
Anuj Mittal
81fd206d5b gstreamer1.0-plugins-good: disable gtk plugin
gtk-play example assumes that GTK's GL support always works if it is
compiled in and first tries to use gtkglsink element which leads to
problems if there are errors while instantiating GL context at a much
later stage. This failure isn't detected and there is no fallback at
this point.

gtkglsink works on wayland though using poky defaults with gtk+3 since
the gdk backend does support egl with wayland but it doesn't with x11.

Disable the gtk plugin to ensure gtk-play just moves on when gtkglsink
isn't present. This was the default when gtk was part of -plugins-bad
before upgrade to 1.14.0.

Fixes [YOCTO #12832]

(From OE-Core rev: cf321fa1f96be789e1e7c8704175f88fb5857576)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-18 10:18:42 +01:00
Anuj Mittal
e0934aa83b libva-utils: upgrade 2.1.0 -> 2.2.0
* Add vainfo support in Android
* Remove driver specific test cases

(From OE-Core rev: fb7070bdaa87c1b4c3a4330b9fc116354bc81e8a)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-18 10:18:42 +01:00
Anuj Mittal
ad76eb195b libva: upgrade 2.1.0 -> 2.2.0
* Bump VA-API version to 1.2.0
* Add support for hevc range extension decoding
* Add support for fast intra prediction in HEVC FEI
* Add 10/12-bit YUV render target formats
* Add fourcc code for Y210/Y216/Y410/Y416/RGB565/BGR565
* Add VA_STATUS_ERROR_NOT_ENOUGH_BUFFER
* Add VA_SURFACE_ATTRIB_USAGE_HINT_EXPORT
* Improve documentation

Tested with Intel vaapi driver. There is support for meson available but
its not being packaged as part of release tarball yet.

(From OE-Core rev: d61d417750d4eadf5a00760e9859cb4c3b233cdc)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-18 10:18:42 +01:00
Joe Slater
90a06269df tiff: security fix CVE-2018-10963
Denial of service described at https://nvd.nist.gov/vuln/detail/CVE-2018-10963.

(From OE-Core rev: d19a9b41d3b2dcba3b102a8289b7787b4b131e96)

Signed-off-by: Joe Slater <joe.slater@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-18 10:18:42 +01:00
Ross Burton
d3c639f5c9 python-setuptools: rationalise dependencies
There's no need to do native- and nativesdk-specific DEPENDS as the
BBCLASSEXTENDs handles those renames for us.

There's no need to have a subset of RDEPENDS for class-native as all with the
new manifest the python-native PROVIDES are complete.

(From OE-Core rev: 3e3c5cc579482041f0233e3e03ace736b62fb364)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-18 10:18:42 +01:00
Andre McCurdy
30ea610d04 python-setuptools.inc: avoid using += with an over-ride
An over-ride replaces the original value regardless of whether or
not it's set up with +=. As replacing the original value seems to be
the intention here, drop the += to make it more explicit. Also some
minor recipe formatting tweaks.

(From OE-Core rev: bda531e65bb6cc9f654c333e2f71283eccd17f27)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-18 10:18:42 +01:00
Ross Burton
8df7480d1c insane: optimise buildpath search
Instead of decoding every file we open as UTF-8 (with many errors as machine
code isn't UTF-8), convert the build path to the UTF-8 byte representation and
search for that instead.

(From OE-Core rev: ffb52d383bfe413cf31fef13663fe9937a146c76)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-18 10:18:42 +01:00
Yi Zhao
f92cd3aad0 file: fix regression for determining DB file type
The version 5.33 introduced a regression bug for determining the DB file
type. Backport a patch from upstream to fix it.

Before apply the patch:
$ file aliases.db
aliases.db: created: Thu Jan  1 00:38:24 1970, modified: Thu Jan  1 00:00:00 1970

After apply the patch:
$ file aliases.db
aliases.db: Berkeley DB (Btree, version 9, native byte-order)

(From OE-Core rev: 99e50d9e53ab23fc643c46378fa8c36190995335)

Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-18 10:18:42 +01:00
Anuj Mittal
bf7ed1d046 wic/engine: use up all free space when expanding partitions
Currently we just divide up the free space by the number of partitions
that need to be re-sized. This leads to problems when a user has
explicitly specified a subset of partitions (but not all) that need
to re-sized along with the sizes. As an example, for an image with 3
partitions, if we use:

wic write image.wic /dev/sdb --expand 1:10G

This would lead to paritions 2 and 3 each being re-sized to one thirds
of the free space instead of half.

Change the behavior to use up all the free space.

(From OE-Core rev: a88f1b5d88dbc5fb28be24b9787d73b9e0cdf183)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-18 10:18:42 +01:00
Anuj Mittal
82756dcac0 wic/engine: fix errors when expanding partitions
The UEFI spec implies that GPT partitions should be assumed to be on a 2048
sector boundary (for a 512 byte sector) and the current logic just
divides the free sectors available by the number of partitions that need
re-sizing, which may or may not align and the final result might
overshoot the limits imposed after alignment.

Since we are expanding already aligned partitions, just divide up the
free space in multiples of 2048. Also use the exec_cmd wrapper instead
of the subprocess call directly.

Fixes [YOCTO #12840]

(From OE-Core rev: 5eef63f5afdfbab8e30748cb1bf42bf2e6524759)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-18 10:18:42 +01:00
Ross Burton
f7792e58a2 mesa: remove hardware float patch
We don't need the texture float patches anymore, as the relevant patents have
expired so this defaults to on now.

(From OE-Core rev: db86b271c98dd50c641374ab6806b47a40ed134b)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-18 10:18:42 +01:00
Marek Vasut
48d10a0a91 qemux86*: Add U-Boot machine configuration
Add U-Boot machine configuration for the qemux86 and qemux86-64
to allow building U-Boot on those targets. This in turn allows
the auto-updater to update the U-Boot recipe.

(From OE-Core rev: c9bd7f71b59e1c8e7436d65cd8ad6bfb29051c93)

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Cc: Otavio Salvador <otavio@ossystems.com.br>
Cc: Richard Purdie <richard.purdie@linuxfoundation.org>
Cc: Ross Burton <ross.burton@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-18 10:18:42 +01:00
Marek Vasut
9911015b34 u-boot: Upgrade to 2018.07 release
This upgrades the U-Boot from 2018.05 to 2018.07 release.

(From OE-Core rev: ac269c7378e8f98bc433e76cb94a6729407a97b6)

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Cc: Otavio Salvador <otavio@ossystems.com.br>
Cc: Richard Purdie <richard.purdie@linuxfoundation.org>
Cc: Ross Burton <ross.burton@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-18 10:18:42 +01:00
Marek Vasut
c7b45c8cdd u-boot: Add missing dependency on flex and bison native
The U-Boot build, in particular the Kconfig, depends on bison and
flex native. Add the missing dependencies.

(From OE-Core rev: 71309a5c91209d4afaee874889fa7eefb266185f)

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Cc: Otavio Salvador <otavio@ossystems.com.br>
Cc: Richard Purdie <richard.purdie@linuxfoundation.org>
Cc: Ross Burton <ross.burton@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-18 10:18:41 +01:00
Paul Eggleton
8274ccae0d classes/buildhistory: properly process escaped chars from pkgdata
All values written out to pkgdata are escaped (see write_if_exists() in
package.bbclass). In practice there tend not to be characters that need
escaping except in the scriptlets (pkg_preinst, pkg_postinst, pkg_prerm
and pkg_postrm) where currently we still see the escape codes in the
corresponding files within buildhistory (e.g. \n and \t) and thus also
in the output of buildhistory-diff, hindering proper diffing of changes.
To fix this, when we read values from pkgdata and write them out to
buildhistory, we need to interpret the escape codes by doing the exact
reverse of what we do in package.bbclass.

(From OE-Core rev: c258379181a438cb01728d223b3d05e0ab205941)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-18 10:18:41 +01:00
Paul Eggleton
2e8787593f classes/buildhistory: handle packaged files with names containing spaces
The FILELIST field of the package info file in the buildhistory
repository is a space-separated list of all of the files in the package.
If a name of a file packaged by a recipe contains a space character then
of course the result was that we didn't handle its name properly. To fix
that, use quotes around any filename containing spaces and at the other
end use these quotes to extract the proper entries.

Fixes [YOCTO #12742].

(From OE-Core rev: 801b705957dc683030d11393f43407d0b3506b6a)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-18 10:18:41 +01:00
Paul Eggleton
0bbb80d381 lib/oe/buildhistory_analysis: drop related field feature
The original idea here was that changes to certain fields might be able
to be explained if there was a change to another field, for example if
RDEPENDS changed it might be because DEPENDS changed. Thus we were
printing this kind of thing out with each change. Unfortunately in
practice this turned out to be noisy and not particularly useful, so we
might as well remove it.

Fixes [YOCTO #7336].

(From OE-Core rev: 8658b3677b9f7cb70806061c41570c709086ef05)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-18 10:18:41 +01:00
Martin Jansa
12a3de5689 libdrm: allow to build native and nativesdk
(From OE-Core rev: 8eb5fa3b994be450d43b3d4ff505dec32de1fe3d)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-18 10:18:41 +01:00
He Zhe
0594089706 lttng-modules: Fix do_compile failure for btrfs related tracepoints
Building lttng-modules with linux-yocto-dev will cause do_compile
failure:

lttng-modules/2.10.6-r0/lttng-modules-2.10.6/probes/../probes/lttng-tracepoint-event-impl.h:143:6: error: conflicting types for 'trace_btrfs_reserve_extent'
 void trace_##_name(_proto);
      ^~~~~~

The following commit from latest mainline kernel changes some btrfs
functions' prototype.

3dca5c942dac60164e6a6e89172f25b86af07ce7
"btrfs: trace: Remove unnecessary fs_info parameter for btrfs__reserve_extent event class"

This patch backports a commit from upstream to meet the above changes.

51ab0b1da29354375a19f865abcd233dd2178295
"Fix: btrfs: Remove unnecessary fs_info parameter"

(From OE-Core rev: c1daa5c0b89cdfab15d2fa093b021b2ce0937dad)

Signed-off-by: He Zhe <zhe.he@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-18 10:18:41 +01:00
Anuj Mittal
ba598c7db3 oeqa/parselogs: remove references to BSPs that no longer exist
These platform specifc BSPs were removed from meta-intel and superseded by
intel-core* BSPs.

(From OE-Core rev: a6fd20fc57da3e1910e775f5994bd71bf79934ea)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-18 10:18:41 +01:00
Richard Purdie
dd31a246aa populate_sdk_base: Use default value assignment for SDK_TITLE/SDKEXTPATH
This allows the user mode flexibility about centrally overriding these
rather than needing to do it on a per recipe basis.

(From OE-Core rev: b0fb5bbd5f62857c32b2e071bcac841f856b1f1b)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-18 10:18:41 +01:00
Richard Purdie
928d6159ed oeqa/decorator: Improve reliability
Checking if the dependency had any failure is unreliable, for example
if the underlying data doesn't get transferred and the list is empty,
success of the dependency is assumed.

Since we now have success data available, change the code to use it.

(From OE-Core rev: 4abba4c30d5a6163a968a119395a679e5e281ab4)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-18 10:18:41 +01:00
Richard Purdie
da596a2ad6 testsdk: Enable multiprocess execution
This uses the new concurrenttest code to enable parallel test execution
if specified.

(From OE-Core rev: 07d19fb3adab7a8d83ba83d9a16395f70d7b7a47)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-18 10:18:41 +01:00
Richard Purdie
f5975278e3 oeqa: Remove xmlrunner
This isn't present on modern distros by default and doesn't work with
testtools, needing multiple code paths in the code. Remove it in favour
of finding a better replacement for results collection/analysis.

(From OE-Core rev: 8001d933a8dc86004db014777f094d718086687d)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-18 10:18:41 +01:00
Richard Purdie
d9de34ce99 oeqa/runner: Simplify code
There doesn't appear to be any reason we need this _results indirection
any more so remove it.

(From OE-Core rev: b618261811c48ff3b98eab1b340a8cd09ef183c6)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-18 10:18:41 +01:00
Richard Purdie
4e4958cba2 oeqa/core/threaded: Remove in favour of using concurrenttests
We have several options for parallel processing in oeqa, parallel
execution of modules, threading and mulitple processes for the runners.

After much experimentation is appears the most scalable and least
invasive approach is multiple processes using concurrenttestsuite
from testtools. This means we can drop the current threading code
which is only used by the sdk test execution.

oeqa/decorator/depends: Remove threading code

Revert "oeqa/sdk: Enable usage of OEQA thread mode"
This reverts commit adc434c063.

Revert "oeqa/core/tests: Add tests of OEQA Threaded mode"
This reverts commit a4eef558c9.

Revert "oeqa/core/decorator/oetimeout: Add support for OEQA threaded mode"
This reverts commit d3d4ba902d.

(From OE-Core rev: a98ab5e560e73b6988512fbae5cefe9e42ceed53)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-18 10:18:41 +01:00
Richard Purdie
ebd97e728a oeqa: Add selftest parallelisation support
This allows oe-selftest to take a -j option which specifies how much test
parallelisation to use. Currently this is "module" based with each module
being split and run in a separate build directory. Further splitting could
be done but this seems a good compromise between test setup and parallelism.

You need python-testtools and python-subunit installed to use this but only
when the -j option is specified.

See notes posted to the openedmbedded-architecture list for more details
about the design choices here.

Some of this functionality may make more sense in the oeqa core ultimately.

(From OE-Core rev: 326ababfd620ae5ea29bf486b9d68ba3d60cad30)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-18 10:18:41 +01:00
Richard Purdie
05c32d2de1 oeqa/selftest/wic: Split tests into two class groups
This improves test parallelism.

(From OE-Core rev: 26e04b23ba1b6942aa7c7df478d41dfe7b73e6e0)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-16 13:21:35 +01:00
Richard Purdie
b3c379d93e oeqa/sdkbuildproject: Capture output to quieten selftest logs
Only show the output in the failure case.

(From OE-Core rev: 324785a99e3f2449cb443233e7ce224598c02a3b)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-16 13:21:35 +01:00
Richard Purdie
a85015b109 devtool: Split tests into multiple classes
This allows better parallelism between the different tests as currently
this block takes the longest time to execute. devtool tests are still
all grouped into the "devtool" module for ease of exection.

This also makes it easier to execute some subset of devtool tests for
testing devtool changes.

(From OE-Core rev: 75148c190dd4823947557e9a07f1722e817c1fea)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-16 13:21:35 +01:00
Richard Purdie
6b219f64c4 oeqa: Default to buffer mode for tests
Currently some tests run in buffer mode and some don't. Those that don't can
corrupt stdout/stderr. Switch to using buffer mode everywhere so we're consistent.

If there is useful output on stdout/stderr, it will be displayed if the test
fails.

(From OE-Core rev: 978548c0abde2cb94c2782538552f39bdf2bf630)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-16 13:21:35 +01:00
Richard Purdie
eacc12c2ec oeqa/selftest/wic: Ensure initramfs exists for test_iso_image
AssertionError: Command 'wic create mkhybridiso --image-name core-image-minimal -o /var/tmp/wic.oe-selftest/' returned non-zero exit status 1:

ERROR: _exec_cmd: gzip -f -9 -c /var/tmp/wic.oe-selftest/tmp.wic.drhn6edm/initrd.cpio > /var/tmp/wic.oe-selftest/tmp.wic.drhn6edm/initrd.cpio.gz returned '1' instead of 0
output: gzip: /var/tmp/wic.oe-selftest/tmp.wic.drhn6edm/initrd.cpio: No such file or directory

This is because in a clean build directory, the initramfs may not be rebuilt.
Add a call to ensure it is built to avoid the error.

(From OE-Core rev: 2a80fa234d31992691a157425e8990db30158fd1)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-16 13:21:35 +01:00
Richard Purdie
5e8367e17f oeqa/selftest/wic: Use a subdir of builddir, not /var/
Using /var/ leave wic open to races with other processes on the system, use
a subdir of builddir instead to avoid this.

(From OE-Core rev: e07ec908ce7f26143a7bdf0a07a1230c0fd6ac87)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-16 13:21:34 +01:00
Richard Purdie
5456a9261d oeqa/selftest/devtool: Ensure dbus is built befoe running test
If dbus isn't build first the dbus dependency of dbus-wait can't be detected
through pkgconfig and the test fails:

AssertionError: {'DEPENDS': {'dbus'}} != {}
- {'DEPENDS': {'dbus'}}
+ {} : Some expected variables not found in recipe: {'DEPENDS': {'dbus'}}

Ensure dbus is built and present in the sysroot.

(From OE-Core rev: 28699b4257436fb6079eafe50ca8cab09a2fdd90)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-16 13:21:34 +01:00
Richard Purdie
9a53d315ef oeqa/selftest/package: Use setUpLocal, not setUp
The main setUp function needs to be called and tests are meant to
define setUpLocal. For some reason this one didn't leading to errors
with recent code changes. Fix it.

(From OE-Core rev: aef07f09e224485539d8bc66ddac8bf394e4092a)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-16 13:21:34 +01:00
Richard Purdie
75d5d0e873 oeqa/runner: Ensure we don't print misleading results output
The current code assumes if something isn't a failure of some
kind, it was a pass. When test case IDs weren't matching, this lead
to very confusing output where things would fail, then be listed as
passing.

This adds code to track successes, ensuring we don't end up in this
position again with unmatched entries being listed as UNKNOWN.

(From OE-Core rev: 4374c296d8963e4f6a1aa7bef7983ad0a1c2fcff)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-16 13:21:34 +01:00
Richard Purdie
66b0348000 oqqa/selftest/lic_checksum: Avoid cache reparse
By having a consistent config for the test, a second reparse is avoided
and the test runs slightly faster.

(From OE-Core rev: a910d90dc18f9bc63142ccae2eeadc1feefc756b)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-16 13:21:34 +01:00
Richard Purdie
62865578bf oeqa/selftest/image_tyypedep: Avoid undefined variable failure
If something goes wrong with the test, dep can be undefined. Avoid a
traceback for this and handle it more gracefully.

(From OE-Core rev: 0b74cb42aefe5c1b812fd155784e4c6581e26ce2)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-16 13:21:34 +01:00
Richard Purdie
754cf58700 oeqa/core/runner: Improve test case comparision
We can directly compare the test case IDs rather than representations,
then if we're using subunit to split the tests, the comparisions still
work as intended.

(From OE-Core rev: 72e5f46f75454ba4c445c65c1cbc616a9e72fc6e)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-16 13:21:34 +01:00
Richard Purdie
e6f7c57b55 oeqa/selftest/systemd_boot: Never use cleansstate in QA tests without special handling of SSTATE_DIR
Removing things straight from the live sstate directory is prone to issues
since other builds may be relying on the artefact presence.

Also, cleansstate is very slow on the huge sstate that the autobuilder has
on slow NFS drives. This may well be causing long buildtimes in oe-selftest
as the time taken to remove the artefact by be long.

(From meta-yocto rev: 1ed60bfb46569a8b8c29f24187390ba79686486a)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-15 16:19:05 +01:00
Yi Zhao
69dfa029f1 file: Security fix CVE-2018-10360
CVE-2018-10360: The do_core_note function in readelf.c in libmagic.a in
file 5.33 allows remote attackers to cause a denial of service
(out-of-bounds read and application crash) via a crafted ELF file.

References:
https://nvd.nist.gov/vuln/detail/CVE-2018-10360

Patch from:
a642587a9c

(From OE-Core rev: 22886cf6f37d9a5c6ff90e10e0c17ed7f6321305)

Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-15 16:16:16 +01:00
Denys Dmytriyenko
f8b0a5786e wayland-protocols: upgrade 1.14 -> 1.15
(From OE-Core rev: 064455bc88f50d633f2ffe6a74c439d8a87c4fdc)

Signed-off-by: Denys Dmytriyenko <denys@ti.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-15 16:16:16 +01:00
Derek Straka
703812a3f8 python3-pygobject: update to 3.28.3
Update the python3-pygobject package to the latest stable version

Tested on the qemu with core-image-minimal

(From OE-Core rev: 3c22f2080ece178b0cc68ae0b74310f81945ea52)

Signed-off-by: Derek Straka <derek@asterius.io>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-15 16:16:16 +01:00
Derek Straka
3021db034d python*-setuptools: update to 40.0.0
Update the python{3}-setuptools to the latest stable version

Tested on the qemu with core-image-minimal

(From OE-Core rev: 96971531e0d17a05bfd2b14c95d366f9c499edf9)

Signed-off-by: Derek Straka <derek@asterius.io>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-15 16:16:16 +01:00
Alistair Francis
6b029c68c8 xorg-xserver: Enable systemd-logind if using systemd
Enable the systemd-logind on xserver if the user set systemd as a
DISTRO_CONFIG. If a user is buildling Xorg with systemd then they most
likley want the systemd-logind PACKAGECONFIG set.

(From OE-Core rev: 358c237e2adf5449e33d99ebbdc12670f4bd465e)

Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-15 16:16:16 +01:00
Kristian Amlie
c7443c85c3 grub-efi: Provide target architecture for 32-bit ARM.
(From OE-Core rev: 65f9fb788371a9a08e3b0e6febecb9cc2aaeefe7)

Signed-off-by: Kristian Amlie <kristian.amlie@northern.tech>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-15 16:16:16 +01:00
Anuj Mittal
ebbd1e4a94 image-live: fix check for rootfs size with hddimg images
Currently we check if the rootfs.img size is greater than 4 GB and use
mcopy to copy it over to a hddimg, a FAT32 volume.

This results in problems when IMAGE_ROOTFS_SIZE is set to be exact 4 GB
(4294967296 bytes). mcopy uses the max offset/file size to be 4294967295
and as a result, it errors out without any warning to the user.

Change the 4 GB check to '-ge' to catch these cases. Since we allow
IMAGE_ROOTFS_SIZE to be in KBs, the maximum allowed is 4194303 KB. Also,
tweaked the error message to refer to wic too.

Fixes [YOCTO #12776]

(From OE-Core rev: 16956dacd4be2c64e5816ccb2b222b5b128838c9)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-15 16:16:16 +01:00
Alistair Francis
a9b91031ec liburcu: Add RISC-V support
(From OE-Core rev: eade50afbc267f2e4c6065745cd786e48332086b)

Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-15 16:16:16 +01:00
Ross Burton
7aff75bcc3 nfs-utils: remove libnfsidmap
As of nfs-utils 2.2.1 libnfsidmap has been integrated and isn't an external
requirement anymore.

Also consolidate nfs-utils patches into a single directory.

(From OE-Core rev: 98e8146553c912e869c174674c53e96d8ff01e57)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-15 16:16:16 +01:00
Anuj Mittal
6ebeeab6a6 perf: add dwarf to PACKAGECONFIG
Enable perf to be built with DWARF support.

Fixes [YOCTO #3359]

(From OE-Core rev: bed3a67932a85d7528179b0a35c21e1b595b6ce7)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-15 16:16:16 +01:00
Hong Liu
08c2f0581f psmisc:23.0 -> 23.1
Upgrade psmisc from 23.0 to 23.1

(From OE-Core rev: cbaa7fd39a0f64611321077d48d47046f5228fbb)

Signed-off-by: Hong Liu <hongl.fnst@cn.fujitsu.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-15 16:16:16 +01:00
Hong Liu
eec5f3378f procps:3.3.14 -> 3.3.15
Upgrade procps from 3.3.14 to 3.3.15.

(From OE-Core rev: 19bd5ea331344c213c6d8ecdb47f78cf021c00ca)

Signed-off-by: Hong Liu <hongl.fnst@cn.fujitsu.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-15 16:16:16 +01:00
Hong Liu
46ac750de6 ethtool:4.16 -> 4.17
Upgrade ethtool from 4.16 to 4.17

(From OE-Core rev: 11dc07b0d2f3b3c0ff9edc5e6aac3da100cbf588)

Signed-off-by: Hong Liu <hongl.fnst@cn.fujitsu.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-15 16:16:16 +01:00
Martin Jansa
3c16339f73 libdrm: Add PACKAGECONFIG support for all meson options
* Use the same defaults as meson does, with few modifications based on
  previous EXTRA_OEMESON
* move libpciaccess dependency to new intel PACKAGECONFIG

(From OE-Core rev: dc7d3b2ff79ae324b96a51ec1be557a432ed351d)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-15 16:16:16 +01:00
Rasmus Villemoes
8e3fb6ff24 perf: disable parallelism for 'make clean'
Whenever perf got rebuilt, I was consistently getting errors such as

| find: '[...]/perf/1.0-r9/perf-1.0/plugin_mac80211.so': No such file or directory
| find: '[...]/perf/1.0-r9/perf-1.0/plugin_mac80211.so': No such file or directory
| find: find: '[...]/perf/1.0-r9/perf-1.0/libtraceevent.a''[...]/perf/1.0-r9/perf-1.0/libtraceevent.a': No such file or directory: No such file or directory
|
[...]
| find: cannot delete '/mnt/xfs/devel/pil/yocto/tmp-glibc/work/wandboard-oe-linux-gnueabi/perf/1.0-r9/perf-1.0/util/.pstack.o.cmd': No such file or directory

breaking the whole build. The root cause seems to be that the implicit
'make clean' done during do_configure ends up running in parallel, and
thus multiple find commands attempt to stat and/or delete the same
file.

A patch disabling parallelism for the clean target has been ack'ed
upstream (lkml.kernel.org/r/20180705134955.GB3686@krava), but it should
be harmless to pass JOBS=1 even with a fixed kernel. This can be removed
if and when all relevant -stable kernels have that patch.

(From OE-Core rev: bb58203b668df42fd08c2e5fa4a172cf63e37369)

Signed-off-by: Rasmus Villemoes <rasmus.villemoes@prevas.dk>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-15 16:16:16 +01:00
Martin Jansa
ce192a5cdc meta-yocto-bsp: mpc8315e-rdb.conf: use mpc8315erdb.dtb without the KERNEL_IMAGETYPE_FOR_MAKE as a prefix
* fix the issue with newer kernel-devicetree.bbclass as reported by RP in
  http://lists.openembedded.org/pipermail/openembedded-core/2018-July/152594.html
  with changes from
  http://lists.openembedded.org/pipermail/openembedded-core/2018-July/152560.html
  the bbclass no longer creates the dtb files prefixed with
  KERNEL_IMAGETYPE_FOR_MAKE:
  deploy/images/mpc8315e-rdb/uImage-mpc8315erdb.dtb
  use the version less symlink:
  -rw-r--r-- 2 bitbake bitbake 9.3K Jul  9 13:30 deploy/images/mpc8315e-rdb/mpc8315erdb--4.15.18+git0+45c256a5ca_0b32edc46d-r0.2-mpc8315e-rdb-20180709125726.dtb
  lrwxrwxrwx 2 bitbake bitbake   84 Jul  9 13:30 deploy/images/mpc8315e-rdb/mpc8315erdb.dtb -> mpc8315erdb--4.15.18+git0+45c256a5ca_0b32edc46d-r0.2-mpc8315e-rdb-20180709125726.dtb
  lrwxrwxrwx 2 bitbake bitbake   84 Jul  9 13:30 deploy/images/mpc8315e-rdb/mpc8315erdb-mpc8315e-rdb.dtb -> mpc8315erdb--4.15.18+git0+45c256a5ca_0b32edc46d-r0.2-mpc8315e-rdb-20180709125726.dtb

(From meta-yocto rev: 1f8b8d266a3e8dbe7c447d074446c9f27526991e)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-10 17:33:29 +01:00
Ross Burton
6fbddd24f4 distutils3: pass build arguments when doing a clean
We should pass the build arguments to setup.py when doing a clean, because
sometimes the arguments are required for setup.py get started.

(From OE-Core rev: f9324af88a99eca28b160fa31aa4516fd397e44b)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-10 17:33:00 +01:00
Armin Kuster
ab879ec1cf libxxf86misc: update to 1.0.4
(From OE-Core rev: 326f484ff8c1985baf8a70dfe7139857ec43b289)

Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-10 17:33:00 +01:00
Armin Kuster
4e1f9fd4dd libxinerama: update to 1.1.4
(From OE-Core rev: bc7a84643c93a8989f95c4673ea3f8dbf8ad274b)

Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-10 17:33:00 +01:00
Armin Kuster
00164cbd81 libxscrnsaver: update to 1.2.3
(From OE-Core rev: ab1a8048f8d6295a7c5b04a50c526f19c7399294)

Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-10 17:33:00 +01:00
Armin Kuster
cdbed97897 xf86-input-mouse: update to 1.9.3
drop patch now included in update

(From OE-Core rev: 197fda706d3ac48da7cfa8fe49565bf89ee3034f)

Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-10 17:33:00 +01:00
Robert Yang
a1c299df71 dwarfsrcfiles: fix typo: debig -> debug
(From OE-Core rev: ba777487e7d26f5a57f7eb2681caad13e19ac931)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-10 17:33:00 +01:00
He Zhe
c68e4c6e3e scripts/runqemu: fix qemumips qemumips64 memory detection kernel panic
$ runqemu qemumips64 core-image-minimal nographic qemuparams="-m 512"
...
[    0.000000] Call Trace:
[    0.000000] [<ffffffff801268c0>] clear_page+0x0/0x128
[    0.000000] [<ffffffff80238158>] get_page_from_freelist+0xab8/0xc00
[    0.000000] [<ffffffff80238964>] __alloc_pages_nodemask+0xdc/0xf68
[    0.000000] [<ffffffff80239808>] __get_free_pages+0x18/0x70
[    0.000000] [<ffffffff80122a4c>] setup_zero_pages+0x1c/0xb8
[    0.000000] [<ffffffff80c7c998>] mem_init+0x54/0xa0
[    0.000000] [<ffffffff80c74904>] start_kernel+0x204/0x4d8
[    0.000000] [<ffffffff8091dfb0>] kernel_entry+0x0/0x40
[    0.000000] Code: 02002025  1000f8d9  8e634d7c <34860f80> cc9e0000
cc9e0020  cc9e0040  cc9e0060  cc9e0080
[    0.000000]
[    0.000000] ---[ end trace 0000000000000000 ]---
[    0.000000] Kernel panic - not syncing: Attempted to kill the idle task!
[    0.000000] ---[ end Kernel panic - not syncing: Attempted to kill the idle task!
...

OE uses qemumips to simulate a Malta board by default.

As upstream qemu introduced:
https://git.qemu.org/?p=qemu.git;a=commit;h=94c2b6aff43cdfcfdfb552773a6b6b973a72ef0b

The Malta board can support up to 2GiB of RAM which should
be able to boot a Linux kernel built with CONFIG_HIGHMEM
enabled and passing "-m 2048" to QEMU and appending the
following kernel parameters:
...
mem=256M@0x0 mem=256M@0x90000000 mem=1536M@0x20000000
...

But the following commit in kernel broke above mem=X@Y setting
which added the memory as reserved memory area.
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=73fbc1eba7ffa3bf0ad12486232a8a1edb4e4411
...
commit 73fbc1eba7ffa3bf0ad12486232a8a1edb4e4411
Author: Marcin Nowakowski <marcin.nowakowski@imgtec.com>
Date:   Wed Nov 23 14:43:49 2016 +0100

    MIPS: fix mem=X@Y commandline processing
...

So remove `mem=*' to disable user-defined physical RAM map
which let kernel itself caculates memory ranges.

Author: Hongxu Jia <hongxu.jia@windriver.com>
[ Merge the two fixes for qemumips32 and qemumips64 into one patch,
  and make it support all mips cases ]
(From OE-Core rev: 0220cb34a91658ecc3782ec1a4700dcb5ece37d8)

Signed-off-by: He Zhe <zhe.he@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-10 17:33:00 +01:00
Andre McCurdy
78fae8676d openssl_1.1: minor recipe formatting tweaks etc
Drop redundant setting of S to its default value and re-order
variables to align more closely to the OE style-guide.

(From OE-Core rev: 4871481e66449dd2b054119b37d0baedb166b72c)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-10 17:33:00 +01:00
Ross Burton
7af5e3bad3 meson: improve code style
Use elif for consistency.

(From OE-Core rev: 2ad89f12c9819326b29588a8a6c642aaae990f18)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-10 17:33:00 +01:00
Martin Jansa
d0389bf1cd kernel.bbclass: move variables for kernel artifacts names to separate bbclass
* this makes it easier to access these variables from some other bbclass
  e.g. sdcard_image-rpi.bbclass in meta-raspberry where we need to know
  how some files in deploy are named, but we cannot inherit kernel.bbclass
  as it's used in image recipe not kernel recipe
* alternatively we can move these to bitbake.conf like similar image variables are:
  meta/conf/bitbake.conf:IMAGE_BASENAME = "${PN}"
  meta/conf/bitbake.conf:IMAGE_NAME = "${IMAGE_BASENAME}-${MACHINE}-${DATETIME}"
  meta/conf/bitbake.conf:IMAGE_LINK_NAME = "${IMAGE_BASENAME}-${MACHINE}"

(From OE-Core rev: 7d0ef0eaa1bfe97015a774c26f5791622e7e8b12)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-10 17:33:00 +01:00
Martin Jansa
c159b6249a kernel.bbclass: use the consistent naming schema for initramfs
* use INITRAMFS_BASE_NAME and INITRAMFS_SYMLINK_NAME variables, like
  other kernel artifacts are using
* use "${PKGE}-${PKGV}-${PKGR}-${MACHINE}-${DATETIME}" instead of
  "${PV}-${PR}-${MACHINE}-${DATETIME}" to be consistent with other files
* allow to modify default symlink name with INITRAMFS_SYMLINK_NAME
  instead of currently used:
  initramfs_symlink_name=${type}-initramfs-${MACHINE}

(From OE-Core rev: 935b9d5a2bd12effad65f69a631ecff96b8bb553)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-10 17:33:00 +01:00
Martin Jansa
c5b70d7155 kernel-devicetree.bbclass: Fix and simplify instalation of DTB files
* add 2 new variables:
  KERNEL_DTB_BASE_NAME
  KERNEL_DTB_SYMLINK_NAME
  instead of reusing KERNEL_IMAGE_SYMLINK_NAME and than expecting that
  default value ${MACHINE} was being used in e.g.:
  DTB_SYMLINK_NAME=`echo ${symlink_name} | sed "s/${MACHINE}/${DTB_BASE_NAME}/g"`

* install normal DTB files only once even if there is multiple entries
  in KERNEL_IMAGETYPE_FOR_MAKE and don't prefix them with the type of
  the kernel image, use the KERNEL_IMAGETYPE_FOR_MAKE as a prefix only
  when installing them bundled with kernel or initramfs image.

* deploy the files from ${D}/${KERNEL_IMAGEDEST}/ instead of kernel
  build directory, so that we don't need to call
  DTB_PATH=`get_real_dtb_path_in_kernel "${DTB}"`
  again in do_deploy

* create all links in do_deploy task, because default KERNEL_DTB_BASE_NAME
  like KERNEL_IMAGE_BASE_NAME contains PKGR and PKGR is different in
  do_install and do_deploy, because kernel.bbclass calls
  meta/classes/kernel.bbclass:do_install[prefuncs] += "package_get_auto_pr"
  meta/classes/kernel.bbclass:do_deploy[prefuncs] += "package_get_auto_pr"

* the filenames are a bit different, but with separate variable it
  should be easier for other bbclasses which use these DTB files to
  find them correctly, just use either the cannonical name
  $dtb_base_name.$dtb_ext or $dtb_base_name-${KERNEL_DTB_SYMLINK_NAME}.$dtb_ext
  because PKGR (and other PKG* variables) might be different in your
  task and kernel.do_deploy task.

* fix DTB files being deployed with incorrect filenames when
  KERNEL_IMAGE_SYMLINK_NAME isn't set to ${MACHINE}, e.g. instead of
  the default:
-rw-r--r-- 2 bitbake bitbake 1.4K Nov 20 07:41 deploy/images/raspberrypi3-64/Image-1-4.9.59+git0+e7976b2aff-r0.2-lirc-rpi-20171120043031.dtbo
lrwxrwxrwx 2 bitbake bitbake   64 Nov 20 07:41 deploy/images/raspberrypi3-64/Image-lirc-rpi.dtbo -> Image-1-4.9.59+git0+e7976b2aff-r0.2-lirc-rpi-20171120043031.dtbo
lrwxrwxrwx 2 bitbake bitbake   64 Nov 20 07:41 deploy/images/raspberrypi3-64/lirc-rpi.dtbo -> Image-1-4.9.59+git0+e7976b2aff-r0.2-lirc-rpi-20171120043031.dtbo
  I was getting:
-rw-r--r-- 2 bitbake bitbake 1348 Nov 20 10:28 deploy/images/raspberrypi3-64/Image-linux-raspberrypi-lirc-rpi.dtbo
lrwxrwxrwx 2 bitbake bitbake   37 Nov 20 10:28 deploy/images/raspberrypi3-64/Image-linux-raspberrypi-lirc-rpi-master-20171120102653.dtbo -> Image-linux-raspberrypi-lirc-rpi.dtbo
lrwxrwxrwx 2 bitbake bitbake   37 Nov 20 10:28 deploy/images/raspberrypi3-64/lirc-rpi.dtbo -> Image-linux-raspberrypi-lirc-rpi.dtbo
  and e.g. sdcard_image-rpi.bbclass from meta-raspberrypi:
  37e4e18f4a/classes/sdcard_image-rpi.bbclass
  was failing in:
  mcopy -i ${WORKDIR}/boot.img -s ${DEPLOY_DIR_IMAGE}/${KERNEL_IMAGETYPE}-${DTB_BASE_NAME}.dtb ::${DTB_BASE_NAME}.dtb
  because ${KERNEL_IMAGETYPE}-${DTB_BASE_NAME}.dtb doesn't exist in my
  build, due to
  DTB_SYMLINK_NAME=`echo ${symlink_name} | sed "s/${MACHINE}/${DTB_BASE_NAME}/g"`
  not replacing whole "${KERNEL_IMAGE_SYMLINK_NAME}" (read ${MACHINE})
  with just ${DTB_BASE_NAME}

* with this change applied the deploy dir looks like this:
-rw-r--r-- 2 bitbake bitbake 1.4K Nov 20 15:49 deploy/images/raspberrypi3-64/lirc-rpi-1-4.9.59+git0+e7976b2aff-r0.8-raspberrypi3-64-20171120154716.dtbo
lrwxrwxrwx 2 bitbake bitbake   74 Nov 20 15:49 deploy/images/raspberrypi3-64/lirc-rpi.dtbo -> lirc-rpi-1-4.9.59+git0+e7976b2aff-r0.8-raspberrypi3-64-20171120154716.dtbo
lrwxrwxrwx 2 bitbake bitbake   74 Nov 20 15:49 deploy/images/raspberrypi3-64/lirc-rpi-raspberrypi3-64.dtbo -> lirc-rpi-1-4.9.59+git0+e7976b2aff-r0.8-raspberrypi3-64-20171120154716.dtbo
  and works correctly even with DISTRO using different naming scheme

* the sdcard_image-rpi.bbclass still needs to be modified, I've provided
  updated version here:
  https://github.com/agherzan/meta-raspberrypi/pull/159
* mpc8315e-rdb.conf MACHINE in meta-yocto-bsp also needs small fix:
  https://lists.yoctoproject.org/pipermail/poky/2018-July/011436.html

(From OE-Core rev: 1860d9d3c62e2e94cd68a809385873ffd8270b6d)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-10 17:32:59 +01:00
Martin Jansa
85d1f532f3 kernel-devicetree.bbclass: Use lowercase names for shell variables
* just to make it more clear what is local shell variable and what is
  replaced by bitbake from the metadata and also to prevent the variable
  to be incorrectly expanded by bitbake if someone happens to define
  e.g. DTB_BASE_NAME

(From OE-Core rev: 98b0f13f0650d970aac7441e7fcfc1089570785f)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-10 17:32:59 +01:00
Bruce Ashfield
ea676cbdb8 linux-yocto/4.12: update to v4.12.26
Integrating Paul Gortmaker's -stable 4.12 release, which comprises
the following commits:

b0f63e84c132 Linux 4.12.26
61be5424616e usbnet: fix alignment for frames with no ethernet header
6d0519e75609 tipc: fix memory leak in tipc_accept_from_sock()
8560506d5b7a tipc: call tipc_rcv() only if bearer is up in tipc_udp_recv()
5ceba73f1c24 tcp: remove buggy call to tcp_v6_restore_cb()
450a839e54a6 tcp/dccp: block bh before arming time_wait timer
872d246eaed9 stmmac: reset last TSO segment size after device open
74386d6ee7bf sit: update frag_off info
3df033244a42 s390/qeth: fix GSO throughput regression
b7bd0107008f s390/qeth: fix early exit from error path
7f02573318ba s390/qeth: build max size GSO skbs on L2 devices
3c8a527e0496 rds: Fix NULL pointer dereference in __rds_rdma_map
00c0600c0a35 net: remove hlist_nulls_add_tail_rcu()
193d9a02e802 net: realtek: r8169: implement set_link_ksettings()
8fb1c5e220ee net: qmi_wwan: add Quectel BG96 2c7c:0296
0c2ba29a13d9 net/packet: fix a race in packet_bind() and packet_notifier()
bb06331e9156 net: openvswitch: datapath: fix data type in queue_gso_packets
ea15a664c5b8 usb: gadget: ffs: Forbid usb_ep_alloc_request from sleeping
7f11deffc177 ipmi: Stop timers before cleaning up the module
fb006a18929e fix kcm_clone()
ee82eaf439cc RDMA/cxgb4: Annotate r2 and stag as __be32
b71be191d4ed md: free unused memory after bitmap resize
6d24efc56915 dm raid: fix panic when attempting to force a raid to sync
490fc05683b4 blk-mq: Avoid that request queue removal can trigger list corruption
d9e8cb49aaf1 ide: ide-atapi: fix compile error with defining macro DEBUG
115978628b54 ipvlan: fix ipv6 outbound device
ee2ce344ee06 powerpc/powernv/idle: Round up latency and residency values
0fe4d3f9fb5b afs: Connect up the CB.ProbeUuid
94bdd552d7b1 IB/mlx5: Assign send CQ and recv CQ of UMR QP
aa02d85e4d08 IB/mlx4: Increase maximal message size under UD QP
dd955bcce383 bnxt_re: changing the ip address shouldn't affect new connections
a4b3e59bcb04 f2fs: fix to clear FI_NO_PREALLOC
78f9d39a2735 xfrm: Copy policy family in clone_policy
4577662b6010 atm: horizon: Fix irq release error
d7241b40fe6d kbuild: rpm-pkg: fix jobserver unavailable warning
bffb011d5446 mailbox: mailbox-test: don't rely on rx_buffer content to signal data ready
849ef7edfa4c clk: hi3660: fix incorrect uart3 clock freqency
d561354fe15d clk: uniphier: fix DAPLL2 clock rate of Pro5
eada5db0be6e clk: qcom: common: fix legacy board-clock registration
11ea07285eb4 geneve: fix fill_info when link down
4e0b53bd177a sctp: return error if the asoc has been peeled off in sctp_wait_for_sndbuf
be7cba326d33 sctp: use the right sk after waking up from wait_buf sleep
2c485f6fa3be sctp: do not free asoc when it is already dead in sctp_sendmsg
6e2b427a32da slub: fix sysfs duplicate filename creation when slub_debug=O
e66ebbc23607 zsmalloc: calling zs_map_object() from irq is a bug
dc423eda615d sparc64/mm: set fields in deferred pages
956c73ca6664 block: wake up all tasks blocked in get_request()
1f35bda74d1a dt-bindings: usb: fix reg-property port-number range
412c76f0f9b8 sunrpc: Fix rpc_task_begin trace point
09f79313b317 NFS: Fix a typo in nfs_rename()
a550f7b43f63 dynamic-debug-howto: fix optional/omitted ending line number to be LARGE instead of 0
80f443550f8f lib/genalloc.c: make the avail variable an atomic_long_t
1dfea0e03917 drivers/rapidio/devices/rio_mport_cdev.c: fix resource leak in error handling path in 'rio_dma_transfer()'
4add25bf3dff route: update fnhe_expires for redirect when the fnhe exists
c53ad6cb2f86 route: also update fnhe_genid when updating a route cache
d09b814cd2aa gre6: use log_ecn_error module parameter in ip6_tnl_rcv()
f9ef4cd05462 mac80211_hwsim: Fix memory leak in hwsim_new_radio_nl()
a95269b0e4e5 x86/mpx/selftests: Fix up weird arrays
76e5bd0ae30a coccinelle: fix parallel build with CHECK=scripts/coccicheck
59f2aa43a314 kbuild: pkg: use --transform option to prefix paths in tar
50ce05457e39 irqchip/qcom: Fix u32 comparison with value less than zero
e3fec500f619 ARM: avoid faulting on qemu
602f85aeefb7 crypto: talitos - fix ctr-aes-talitos
73e76cb0ca1f crypto: talitos - fix use of sg_link_tbl_len
f17fe30404de crypto: talitos - fix AEAD for sha224 on non sha224 capable chips
f5fa317606b7 crypto: talitos - fix setkey to check key weakness
519619ec114a crypto: talitos - fix memory corruption on SEC2
e7984cca5abc crypto: talitos - fix AEAD test failures
64d05b5d1d86 bus: arm-ccn: fix module unloading Error: Removing state 147 which has instances left.
e14e213dfd51 bus: arm-ccn: Fix use of smp_processor_id() in preemptible context
63efd55a2c6b bus: arm-ccn: Check memory allocation failure
fd30c25b5596 bus: arm-cci: Fix use of smp_processor_id() in preemptible context
d358187f050b media: dvb: i2c transfers over usb cannot be done from stack
2ae277ebe31f drm/exynos: gem: Drop NONCONTIG flag for buffers allocated without IOMMU
0792a5a27074 drm/bridge: analogix dp: Fix runtime PM state in get_modes() callback
fdc899328ff3 kdb: Fix handling of kallsyms_symbol_next() return value
08f22e2251fd brcmfmac: change driver unbind order of the sdio function devices
f9a77013fa02 powerpc/64s: Initialize ISAv3 MMU registers before setting partition table
9c6dfd696e5a KVM: s390: Fix skey emulation permission check
092937ce1aae s390: fix compat system call table
4f4b2e279816 s390: always save and restore all registers on context switch
8c54b7d880d4 smp/hotplug: Move step CPUHP_AP_SMPCFD_DYING to the correct place
a2ec325c7d20 iommu/vt-d: Fix scatterlist offset handling
743ac71ece80 ALSA: usb-audio: Fix the missing ctl name suffix at parsing SU
1df6e988ae39 ALSA: usb-audio: Add check return value for usb_string()
974394e57a05 ALSA: usb-audio: Fix out-of-bound error
f4753360efda ALSA: seq: Remove spurious WARN_ON() at timer check
478c2ed7ca1c ALSA: pcm: prevent UAF in snd_pcm_info
b12060cae8c2 btrfs: handle errors while updating refcounts in update_ref_for_cow
ecfc013c7f23 btrfs: fix missing error return in btrfs_drop_snapshot
45822ea3d1bf X.509: fix comparisons of ->pkey_algo
19057ced2699 X.509: reject invalid BIT STRING for subjectPublicKey
a3ad8e49bc26 KEYS: reject NULL restriction string when type is specified
7c2ccfe13faa KEYS: add missing permission check for request_key() destination
664879ff9aef ASN.1: check for error from ASN1_OP_END__ACT actions
4c0e7ec3072d ASN.1: fix out-of-bounds read when parsing indefinite length item
17a6f363daf9 efi/esrt: Use memunmap() instead of kfree() to free the remapping
8dd372dd8845 efi: Move some sysfs files to be read-only by root
97c6b857262f scsi: libsas: align sata_device's rps_resp on a cacheline
eb78a8b8f172 scsi: use dma_get_cache_alignment() as minimum DMA alignment
db4a32fa5cf2 scsi: dma-mapping: always provide dma_get_cache_alignment
1f55442d0992 isa: Prevent NULL dereference in isa_bus driver callbacks
93fdb7dc713e hv: kvp: Avoid reading past allocated blocks from KVP file
d745d533737a pinctrl: armada-37xx: Fix direction_output() callback behavior
ae6add36f3ce iio: adc: meson-saradc: fix the bit_idx of the adc_en clock
50c87ecdb250 iio: adc: cpcap: fix incorrect validation
657257ba13ae iio: health: max30102: Temperature should be in milli Celsius
3da92b4ab2cc virtio: release virtio index when fail to device_register
f6fe0d2777b2 can: peak/pcie_fd: fix potential bug in restarting tx queue
654babccd437 can: usb_8dev: cancel urb on -EPIPE and -EPROTO
bda1dccdda47 can: esd_usb2: cancel urb on -EPIPE and -EPROTO
9ff8eb7ef05b can: ems_usb: cancel urb on -EPIPE and -EPROTO
51e5de2b036b can: mcba_usb: cancel urb on -EPROTO
c94c94a367ef can: kvaser_usb: cancel urb on -EPIPE and -EPROTO
c8474d8798ab can: kvaser_usb: ratelimit errors if incomplete messages are received
1936ba2b0b40 can: kvaser_usb: Fix comparison bug in kvaser_usb_read_bulk_callback()
bc86162fa81a can: kvaser_usb: free buf in error paths
4a879f2d1636 can: ti_hecc: Fix napi poll return value for repoll
09b06e3f7b1d can: flexcan: fix VF610 state transition issue
f81db8e7d0cb can: peak/pci: fix potential bug when probe() fails
7b747f65c553 can: mcba_usb: fix device disconnect bug
0a3964b0a8d3 usb: f_fs: Force Reserved1=1 in OS_DESC_EXT_COMPAT
d1c24d05d7ec serdev: ttyport: fix tty locking in close
541fbaaf6db7 serdev: ttyport: fix NULL-deref on hangup
a6d00d0df9e5 serdev: ttyport: add missing receive_buf sanity checks
b30e0bedb66b usb: gadget: udc: renesas_usb3: fix number of the pipes

(From OE-Core rev: 5fddf0226efc996f7eeba76f15e3335c9e60c2f3)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-10 17:32:59 +01:00
Bruce Ashfield
c800e6dbd2 linux-yocto-dev: bump to 4.18+
Bumping the -dev kernel to 4.18 in preparation for the next
release kernel.

(From OE-Core rev: 3d7da5d8083b38a9b08fc187a41f8b6691f19091)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-10 17:32:59 +01:00
Bruce Ashfield
53177e644f linux-yocto/4.12: bump to v4.12.25
Integrating Paul Gortmaker's v4.12.25 -stable queue, which comprises the
following commits:

  e61748ef5db0 Linux 4.12.25
  c34553e3e8af x86/bugs: Rename SSBD_NO to SSB_NO
  4aa9e65a91b9 x86/bugs: Remove x86_spec_ctrl_set()
  7283d22a40c4 x86/bugs: Expose x86_spec_ctrl_base directly
  60fb8f1bbd46 x86/speculation: Rework speculative_store_bypass_update()
  cc8a65725832 x86/cpufeatures: Disentangle SSBD enumeration
  4cadf648f802 x86/cpufeatures: Disentangle MSR_SPEC_CTRL enumeration from IBRS
  14476a34b4d0 x86/speculation: Use synthetic bits for IBRS/IBPB/STIBP
  e66dd0595eac x86/cpu: Make alternative_msr_write work for 32-bit code
  32e38eda9958 x86/bugs: Fix the parameters alignment and missing void
  5593194735ea x86/bugs: Make cpu_show_common() static
  86e7eb199990 x86/bugs: Fix __ssb_select_mitigation() return type
  4efd9170a722 Documentation/spec_ctrl: Do some minor cleanups
  e074092d9d0a proc: Use underscores for SSBD in 'status'
  f57b4be9a391 x86/bugs: Rename _RDS to _SSBD
  f395cafed558 x86/speculation: Make "seccomp" the default mode for Speculative Store Bypass
  9599751872de seccomp: Move speculation migitation control to arch code
  647fb2d84f05 seccomp: Add filter flag to opt-out of SSB mitigation
  44d5a1d9fe07 seccomp: Use PR_SPEC_FORCE_DISABLE
  9490e71c3074 prctl: Add force disable speculation
  ad5b97fe1ab6 x86/bugs: Make boot modes __ro_after_init
  cfc00a7877b6 seccomp: Enable speculation flaw mitigations
  bc4bf81c64b0 proc: Provide details on speculation flaw mitigations
  a41d2136a447 nospec: Allow getting/setting on non-current task
  7e17279e72b9 x86/speculation: Add prctl for Speculative Store Bypass mitigation
  eea6b1abc91e x86/process: Allow runtime control of Speculative Store Bypass
  c8630c28cd28 prctl: Add speculation control prctls
  ecefae5ca101 x86/speculation: Create spec-ctrl.h to avoid include hell
  4bcdf54612aa x86/bugs/AMD: Add support to disable RDS on Fam[15,16,17]h if requested
  6ce1317929a3 x86/bugs: Whitelist allowed SPEC_CTRL MSR values
  cd5e5e6f2e39 x86/bugs/intel: Set proper CPU features and setup RDS
  d97584229d85 x86/bugs: Provide boot parameters for the spec_store_bypass_disable mitigation
  793b7453cfc5 x86/cpufeatures: Add X86_FEATURE_RDS
  c6c3cd47ccbb x86/bugs: Expose /sys/../spec_store_bypass
  2d92a521bda7 x86/bugs: Read SPEC_CTRL MSR during boot and re-use reserved bits
  81865e325abe x86/bugs: Concentrate bug reporting into a separate function
  45245a5b9dc4 x86/bugs: Concentrate bug detection into a separate function
  05e82d536970 x86/nospec: Simplify alternative_msr_write()
  effb0dfecfa2 x86/cpu_entry_area: Sync cpu_entry_area to initial_page_table
  89fffee9d555 x86/xen: Zero MSR_IA32_SPEC_CTRL before suspend
  76199d7beb0b x86/speculation: Move firmware_restrict_branch_speculation_*() from C to CPP
  426210b00b02 x86/speculation: Use IBRS if available before calling into firmware
  63904f8a6d41 x86/entry/64: Fix CR3 restore in paranoid_exit()
  35cf6a9daf5f x86/cpu: Change type of x86_cache_size variable to unsigned int
  7fded60b2cb7 x86/spectre: Fix an error message
  343945a16727 x86/speculation: Add <asm/msr-index.h> dependency
  eb0f059ee2de nospec: Move array_index_nospec() parameter checking into separate macro
  31951a39de73 x86/speculation: Fix up array_index_nospec_mask() asm constraint
  344711f16fec x86/entry/64: Remove the unused 'icebp' macro
  d4324affaf05 x86/entry/64: Fix paranoid_entry() frame pointer warning
  3cadbc9228b4 x86/entry/64: Indent PUSH_AND_CLEAR_REGS and POP_REGS properly
  0d561147160c x86/entry/64: Get rid of the ALLOC_PT_GPREGS_ON_STACK and SAVE_AND_CLEAR_REGS macros
  22c1269eefa9 x86/entry/64: Use PUSH_AND_CLEAN_REGS in more cases
  ac897d25b1d3 x86/entry/64: Introduce the PUSH_AND_CLEAN_REGS macro
  226eea037fa6 x86/entry/64: Interleave XOR register clearing with PUSH instructions
  120d889cac9f x86/entry/64: Merge the POP_C_REGS and POP_EXTRA_REGS macros into a single POP_REGS macro
  2d5eb3888f24 x86/entry/64: Merge SAVE_C_REGS and SAVE_EXTRA_REGS, remove unused extensions
  797a6f4444f1 x86/speculation: Clean up various Spectre related details
  ff032faca431 KVM/nVMX: Set the CPU_BASED_USE_MSR_BITMAPS if we have a valid L02 MSR bitmap
  1aaab2d1a1fd KVM/x86: Reduce retpoline performance impact in slot_handle_level_range(), by always inlining iterator helper methods
  dd17c0f5a114 Revert "x86/speculation: Simplify indirect_branch_prediction_barrier()"
  add7dd4f1f81 x86/speculation: Correct Speculation Control microcode blacklist again
  358f03a9395f x86/speculation: Update Speculation Control microcode blacklist
  0307861327c7 x86/mm/pti: Fix PTI comment in entry_SYSCALL_64()
  a612b987b028 x86/entry/64/compat: Clear registers for compat syscalls, to reduce speculation attack surface
  1b8b432f6dee x86/entry/64: Clear registers for exceptions/interrupts, to reduce speculation attack surface
  513e4bbfc32c x86/entry/64: Clear extra registers beyond syscall arguments, to reduce speculation attack surface

(From OE-Core rev: 400c1bd54c0191b96bccfe0d2755995bdfc04fc1)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-10 17:32:59 +01:00
Bruce Ashfield
de8a8cf537 linux-yocto: igb.cfg: change igb config from m to y
Yocto Project reference board such as Minnowboard need IGB module to
enable ethernet networking. It need to bundle together with kernel when
use NFS boot without initramfs.

(From OE-Core rev: f1b97a29a1918d4ae81cf71b026d6f2b82dfeb96)

Signed-off-by: Mohamad Noor Alim Hussin <mohamad.noor.alim.hussin@intel.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-10 17:32:59 +01:00
Bruce Ashfield
2f13188922 linux-yocto: add qemuarm -tiny support
Adding a BSP definition to the kernel-cache, creating a tiny branch for
board specific patches and finally setting the machine compatibility in
the linux-yocto-tiny recipe.

This is only the BSP definition and kernel configuration side of things,
more changes are necessary for full tiny distro support on qemumarm.

(From OE-Core rev: 9e88c4923a337ca8279feaa773884a9c26a092f3)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-10 17:32:59 +01:00
Lei Maohui
be497feac1 linux-libc-headers: To fix build error when enable mutilib on aarch64 Big endian.
(From OE-Core rev: 1c31fa6929fc97e2fb0c4fbfcc66c789c39c1117)

Signed-off-by: Lei Maohui <leimaohui@cn.fujitsu.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-10 17:32:59 +01:00
He Zhe
3e610d7e20 lttng-tools: Allow reconnect to relayd
If relayd is started after connection attempt from consumerd it will
leave the session in disconnected state and causes the following
inconvenience. This is covered by an upstream feature, see
https://bugs.lttng.org/issues/883. Before it's done, this patches
allows users to reconnect to relayd.

root@localhost:~# lttng enable-event --userspace --all
Error: Events: UST create channel failed (channel channel0, session trace_session)
root@localhost:~# lttng-relayd -b
Warning: No tracing group detected
root@localhost:~# lttng enable-event --userspace --all
Error: Events: UST create channel failed (channel channel0, session trace_session)

(From OE-Core rev: 6f0079a6c3cc8926423cff3a927a78dcecede90d)

Signed-off-by: He Zhe <zhe.he@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-09 22:48:39 +01:00
Oleksii Konoplitskyi
f94c0c8e6f initramfs-framework: add nfsrootfs module
nfsrootfs module mounts rootfs via nfs parsing "nfsroot" and "ip" cmdline options.

(From OE-Core rev: d1737f2dabac5e338061863c78a91b4c115365c7)

Signed-off-by: Oleksii Konoplitskyi <okonopli@cisco.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-09 22:48:39 +01:00
Andre McCurdy
cfd0c39fbf gobject-introspection: minor recipe formatting tweaks
Re-order variables to align more closely to the OE style-guide.

(From OE-Core rev: 5c9c61250bb23fd5fd1c18e243cab0d80573b749)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-09 22:48:39 +01:00
Andre McCurdy
5f033859e2 gobject-introspection: avoid using += with an over-ride
Using += with an over-ride can be a source of confusion so try to
avoid the construct in core recipes.

The current usage functions correctly (it over-rides the default, ie
empty, value of EXTRA_OECONF and then PACKAGECONFIG derived options
are subsequently appended), however the += is unnecessary and can be
dropped.

(From OE-Core rev: e255d1aebd0e019f42c2110873ef4779bbbb5974)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-09 22:48:39 +01:00
Andre McCurdy
c4aa9678a8 openssl_1.1: avoid using += with an over-ride
Using += with an over-ride can be a source of confusion so try to
avoid the construct in core recipes.

The current usage is incorrect and prevents the aarch64 and musl
specific config options from being active together.

(From OE-Core rev: 2a30a9ecab6465892698f7fc9d14a430d8a26f0c)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-09 22:48:39 +01:00
Ovidiu Panait
f9ad66da9f openssl-nativesdk: Fix "can't open config file" warning
When SDK is not installed in the default location, openssl will not be
able to find the the openssl.cnf config file:

"WARNING: can't open config file: XXXX/usr/lib/ssl/openssl.cnf"

To fix this, we need to provide the environment variable $OPENSSL_CONF
pointing to the correct config file location.

(From OE-Core rev: b3f148333515efdb746b78c57d62cfbf3321b21e)

Signed-off-by: Ovidiu Panait <ovidiu.panait@windriver.com>
Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-09 22:48:39 +01:00
Jackie Huang
fbf465c07d dropbear: add default config file to disable root login
root login is disabled by default for openssh and we can
enable it through IMAGE_FEATURES 'debug-tweaks' or
'allow-empty-password', so change to the same default
behavior for dropbear.

(From OE-Core rev: d3e69fa2fef83015658aa5fa1442bab5a8c3edaa)

Signed-off-by: Jackie Huang <jackie.huang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-09 22:48:38 +01:00
Jackie Huang
7c1adcc6d7 rootfs-postcommands: split ssh_allow_empty_password
"allow root login" should not be bundled in ssh_allow_empty_password,
because some distro may want only one of "allow root login" and "allow
empty password", so split it out into ssh_allow_root_login and add new
imagefeature allow-root-login so they can be controlled separately,
debug-tweaks will still include both of them.

(From OE-Core rev: 1ab494f06a12548a902298afabd0a842161ef10d)

Signed-off-by: Jackie Huang <jackie.huang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-09 22:48:38 +01:00
Robert Yang
be73d2bf15 oe/copy_buildsystem.py: add SDK_LAYERS_EXCLUDE_PATTERN
It is helpful when exclude a lot of layers. It uses python re, and
supports multiple patterns (separated by space).

(From OE-Core rev: b5170882feb0f3bc2dddc213b6d115dfa87b7cc1)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-09 22:48:38 +01:00
Yadi.hu
53ba34d143 busybox: handle syslog
If CONFIG_KLOGD is not enabled, then the related service file should
not be installed, The error message is below:

    Cannot add dependency job for unit busybox-klogd.service,
    ignoring: Unit busybox-klogd.service failed to load:
    No such file or directory.

So we should first check the configuration before we install these
service files.

(From OE-Core rev: c3cc402df996654bf6f838b1e79e16a8bdd6d4d7)

Signed-off-by: Yadi.hu <yadi.hu@windriver.com>
Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-09 22:48:38 +01:00
Joshua Watt
9b034e9a83 bitbake: runqueue: Stop on first unsatisfied dependency
(Bitbake rev: 9876b5da1c65bf09a790542cb4057f2d93868cf7)

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-09 11:26:56 +01:00
Joshua Watt
53d1027625 bitbake: runqueue: Remove unused variable
(Bitbake rev: 91e5540f53aca93e3489255cfd95feaa0afd0498)

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-09 11:26:56 +01:00
Joshua Watt
6b66f22686 bitbake: siggen: Delete trailing whitespace
(Bitbake rev: b2fd783fa23403e8f08d998951b05bcabb458af1)

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-09 11:26:56 +01:00
Joshua Watt
714f2f5bae bitbake: runqueue: Remove trailing whitespace
(Bitbake rev: 9b9aecbbb1a3fa67f7d3b1669186c9f4ced3a590)

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-09 11:26:56 +01:00
Scott Rifenbark
c7d9010a07 sdk-manual: Updates to section on obtaining the SDK
Updated the example to more current information.

(From yocto-docs rev: 6952824473f820cbe6d02cba9523c023652f68e3)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-07 10:59:38 +01:00
Ross Burton
b44e88c09b minicom: remove dead URL from UPSTREAM_CHECK_URI
(From OE-Core rev: f57363d307d573554a84443dd774df9549587b94)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-06 22:59:33 +01:00
Joshua Watt
a4c1720eb3 classes/sstate: Remove unused argument
Removes an unused argument to pstaging_fetch()

(From OE-Core rev: ab0eb2bf0db6e7da7c9b9bb4d46621dbf76dcc2a)

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-06 22:59:33 +01:00
Joshua Watt
660374adb6 classes/sstate: Remove trailing whitespace
(From OE-Core rev: dc7c181f231db1290ea7d7d5e42476e70a488d73)

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-06 22:59:33 +01:00
Joshua Watt
c07d1447a9 sstatesig: Remove trailing whitespace
(From OE-Core rev: 2067172e2e5f90cb321ca124f4f9065ae8ad680f)

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-06 22:59:33 +01:00
Ross Burton
c015c70bc2 distro_alias: remove obsolete python-distribute entry
(From OE-Core rev: 2af01bb4c41b3058f4f5e23c1e4ec94e2773e5ad)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-06 22:55:02 +01:00
Ross Burton
b11fc28a1c setuptools.bbclass: depend on python-setuptools
python-distribute is obsolete and is now simply a PROVIDES of python-setuptools,
so use the right name.

The identical change for setuptools3.bbclass was done in 2015 in 8922e60.

(From OE-Core rev: 87e38f0306400609aeac92bc13fd6f41d61e6271)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-06 22:55:02 +01:00
Ross Burton
1276f1755b meson: map mipsel TARGET_ARCH to mips for the cross file
Meson uses 'mips' for both big- and little-endian MIPS machines, so map mipsel
to mips.

(From OE-Core rev: 23734432a24da77aa838ad4bdcbcc294cde08348)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-06 22:55:02 +01:00
Ross Burton
23899a254e meson: send user to our wiki instead of Meson bug system
If a CPU family isn't recognised the first step should be to verify the mapping.
Send the user to a wiki page explaining what to do, instead of directly to the
Meson bug tracker.

(From OE-Core rev: 6c1e880a2bf4799cf451ff20c7ab93c55a755751)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-06 22:55:02 +01:00
Chen Qi
ef98f64b71 testsdk.bbclass: set PREMIRRORS for kernel to speed up test
Currently if we do a testsdkext task for the image, it would take
very long time to finish. The time is mostly spent fetching kernel
source via network.

We have done some configuration in auto.conf, trying to make use
of own-mirrors.bbclass to avoid fetching kernel via network.

However, the solution normally does not work. Below is some log
from log.do_fetch.

  DEBUG: Fetcher failure: Unable to find file \
  file:///path/to/downloads/git2_git.yoctoproject.org.linux-yocto.git.tar.gz \
  anywhere.

The tar.gz file is not available. It is generated only if
BB_GENERATE_MIRROR_TARBALLS is set to "1". The default value of
BB_GENERATE_MIRROR_TARBALLS is "0", and according to the manual, users
need choose to set it to "1" only if they are trying to make a source
mirror. So generally, this var's value is "0".

Anyway, we do need to avoid fetching kernel source from network when
doing testsdkext. So set PREMIRRORS in auto.conf to achieve this.

After this change, the time reduces from 4209.131s to 1399.436s on
my local machine.

[YOCTO #12729]

(From OE-Core rev: fd18ddb0664f69d77681590774b0123251a98728)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-06 22:55:02 +01:00
Andre McCurdy
bf669ec97f quilt.inc: minor recipe formatting tweaks
Minor comment update and re-order variables to align more closely to
the OE style-guide.

(From OE-Core rev: 0b0c294ed3a9f901b9a6afaf984ff4958c327c0e)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-06 22:55:02 +01:00
Andre McCurdy
5fc11ac170 quilt.inc: avoid using += with an over-ride (drop unmaintained darwin support)
Using += with an over-ride can be a source of confusion so try to
avoid the construct in core recipes.

In this case, the _darwin over-ride seems to be unmaintained. It was
added in early 2013 but has not been accounted for in subsequent
updates to the recipe and (from inspection) now appears to be broken.
Remove the _darwin over-ride rather than try to debug or fix it.

(From OE-Core rev: 74e87700f4eb8c96aa7db3c722dd122c7e6f4bd6)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-06 22:55:02 +01:00
Andre McCurdy
616075eca3 ca-certificates: avoid using += with an over-ride
Using += with an over-ride can be a source of confusion so try to
avoid the construct in core recipes.

In this case, the commit which added the over-ride seems to have been
buggy - the commit message mentions "add to SYSROOT_DIRS" rather than
a correct description of what the change actually did, ie "over-ride
SYSROOT_DIRS":

  http://git.openembedded.org/openembedded-core/commit/?id=355e49e19abb3e729c82a6de46ada8da8a257f58

The commit also appears to have been unnecessary as ${sysconfdir} is
appended to SYSROOT_DIRS for -native recipes by default from within
staging.bbclass.

To workaround the bug introduced by the first commit, a subsequent
commit later added ${datadir}/ca-certificates to the over-ride value
(which would not normally be necessary as ${datadir} is included in
the default value of SYSROOT_DIRS - ie the value which was lost due
to being over-ridden):

  http://git.openembedded.org/openembedded-core/commit/?id=09bb7718d74573be9a5db4d0737fb14126f6489c

Therefore the fix seem to be to remove the SYSROOT_DIRS over-ride
entirely - the default value of SYSROOT_DIRS set by staging.bbclass
includes both ${datadir} and ${sysconfdir} when building for -native.

(From OE-Core rev: c1f18efda0280644b4a4ce6f2988fb7ada71faf6)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-06 22:55:02 +01:00
Khem Raj
750835fa1b musl: Upgrade to latest
add kernel 4.17 inferfaces and wire additional syscalls and dladdr fixes

complete change log
https://git.musl-libc.org/cgit/musl/log/?qt=range&q=d5e55ba3320c30310ca1d8938925d5424a652422..193338e619de7c993efa2c0e1a87240bd732c181

(From OE-Core rev: 5646516dafbd2536e30d5f01c9e30fd34fcc7da1)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-06 22:55:02 +01:00
Chen Qi
c2ccd089b2 buildtools-tarball: add nativesdk-libnss-nis
Recent glibc change removed libnss-nis module from glibc and a new
recipe libnss-nis.bb was added.

After this change, we need to make sure nativesdk-libnss-nis is also
included in buildtools-tarball, otherwise, we may encounter the following
error when using 'tar' command from buildtools-tarball.

  tar: relocation error: /lib/x86_64-linux-gnu/libnss_nis.so.2: \
       symbol _nsl_default_nss version GLIBC_PRIVATE not defined \
       in file libnsl.so.1 with link time reference

This error occured on my ubuntu16.04 host with 'nis' configured in
/etc/nssswitch.conf.

So add nativesdk-libnss-nis to buildtools-tarball to fix this problem.

(From OE-Core rev: f7c703dd43e112b6cd63c7512645a1d418569ad7)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-06 22:55:02 +01:00
Pablo Saavedra
303fb675f2 patch: Jail patch_task_patch_prefunc in classes/patch into the workdir
With PATCHTOOL=git patches the changes in the patch_task_postfunc
of the classes/patch. This works OK when the S dir is a Git repo
but doesn't if the source is a tarball.

The while condition in the patch_task_patch_prefunc must be
jailed into the WORKDIR. In the opposite, when you are executing
the recipe out of a Git subtree the function simply fails but when
your recipes are into a Git repo the patch_task_postfunc execute a
commit over your BSP local Git repo adding the changes in an
arbitrary Git repo found in the path from the SOURCE directory to
the '/'. This situation is highly probable in  cases like ~home
directories under the control of a .git repo or Yocto BSP which
manage the meta layers as git submodules.

This patch fix the changes introduced in

  classes/patch: when PATCHTOOL = "git" double-check the repository
  commit: 86ab56b551
  Author: Paul Eggleton <paul.eggleton@linux.intel.com>
  Date:   Tue Dec 5 14:36:58 2017 +1300

  classes/patch: when PATCHTOOL = "git" double-check the repository

  If a bug is present or the user has set PATCHTOOL = "git" on a source
  tree that isn't git, if we try to perform git operations (such as
  committing or changing branches) when extracting source, then we might
  in fact be running those operations on the metadata repository if the
  build directory is underneath, say, poky or OE-Core, and that could
  make a mess. Check if the source tree is a git repository and refuse
  to continue if it isn't.

(From OE-Core rev: db6ce9d8838b1f9064604654ab579da3e237f361)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-06 22:55:02 +01:00
Otavio Salvador
87b9992ae7 cmake: Update 3.10.3 -> 3.11.4
This updates CMake to the current stable release and drop many
backported patches in the process.

(From OE-Core rev: d942ec4ff649782d22afe49fd48839dbbfedc871)

Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-06 22:55:02 +01:00
Armin Kuster
93e9729569 nss: update to 3.38
remove patch now included in release.
includes: CVE-2018-0495

(From OE-Core rev: f0ad38d02da0bbcc1534dcc99d10436675932ed9)

Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-06 22:55:02 +01:00
Binghua Guan
2ca8eeeaef curl: support mbedtls in PACKAGECONFIG
(From OE-Core rev: 65b86e87a693fc7a76e163734cd2da56494302c8)

Signed-off-by: Binghua Guan <freebendy@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-06 22:55:02 +01:00
Ross Burton
2d28e8370e distutils: clean the build tree in do_configure
base_do_configure() tries to do "make clean" if there is a Makefile present.
For most recipes using distutils there is not a Makefile, but we do know that
"setup.py clean" will work so call that instead.

(From OE-Core rev: b805cefb24566772a2beb5d02036266e45370913)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-06 22:55:02 +01:00
Ross Burton
780565b368 python-numpy: set CLEANBROKEN
The distutils class is about to do a clean via "setup.py clean", but numpy
doesn't support this and errors.

(From OE-Core rev: 67ae24ddb2bebbf8b1c455b8968f8c69844afb9d)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-06 22:55:02 +01:00
Ioan-Adrian Ratiu
78a2bdae65 util-linux.inc: add fallocate & unshare to alternatives
These binaries can be provided by busybox triggering a conflict in
do_rootfs so update-alternatives needs to know about them to properly
create the symlinks.

(From OE-Core rev: 147da8fe7458a38598845958cb358bb094eba57b)

Signed-off-by: Ioan-Adrian Ratiu <adrian.ratiu@ni.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-06 22:55:01 +01:00
Zhang Xiao
9b7e107140 diffutils-ptest: add runtime dependency on make
(From OE-Core rev: 0ab4fc861cff69acc42446c22f7a7ed2e6128849)

Signed-off-by: Zhang Xiao <xiao.zhang@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-06 22:55:01 +01:00
Ross Burton
e3e8e1f125 mesa: patch cleanup
0001-Makefile.vulkan.am-explictly-add-lib-expat-to-intel-.patch was fixed a
different way upstream so remove.

0007-dri-i965-Add-missing-time.h-include.patch is now accepted upstream so mark
as backport.

(From OE-Core rev: 8fb143fe69147c32e945e798662d78e606bfe0a0)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-06 22:55:01 +01:00
Robert Yang
5fef9fcd58 git: 2.16.1 -> 2.18.0
* Removed code for "${D}${exec_prefix}/lib/perl-native/perl" since there is no
  such a directory now.
* Fixed perl related code.

(From OE-Core rev: 416a8c241aff0dca6b8b123e52cf8e2d40c74c8d)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-05 11:39:06 +01:00
Khem Raj
27e886edbe bind: Disable lmdb support
with bind 9.11.2+ when the build host has lmdb installed, bind configure looks into
host headers and wrongly interprets that it should be enabling lmdb

disable lmdb to fix

| configure: error: found lmdb include but not library.

(From OE-Core rev: 8c00b32211f25e38c1601ec8de47e6d4729dd49e)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-05 11:39:06 +01:00
Martin Jansa
8b92648246 Revert "kernel-devicetree: Corrected normalize_dtb"
This reverts commit 2e7f3b2b9318d1e5395ad58131eafb873f614326.

It was breaking quite common use case that the dtb files are in
some subdirectory and then kernel build fails to build them.

As reported by khem:
http://lists.openembedded.org/pipermail/openembedded-core/2018-July/152578.html
me:
http://lists.openembedded.org/pipermail/openembedded-core/2018-July/152579.html
on raspberrypi3 build:

make[3]: *** No rule to make target 'arch/arm/boot/dts/dwc2.dtbo'.  Stop.
arch/arm/Makefile:345: recipe for target 'dwc2.dtbo' failed
make[2]: *** [dwc2.dtbo] Error 2
Makefile:146: recipe for target 'sub-make' failed

and trevor on the IRC:
20:35:49 < tlwoerner> the recent 2e7f3b2b9318d1e5395ad58131eafb873f614326 commit in oe-core seems to cause dragonboard-410c's kernel to fail to build
20:36:26 < tlwoerner> for the dragonboard-410c, KERNEL_DEVICETREE is set to "qcom/apq8016-sbc.dtb" but the build failure is:
20:36:37 < tlwoerner> *** No rule to make target 'arch/arm64/boot/dts/dts/qcom/apq8016-sbc.dtb'.  Stop.
20:36:44 < tlwoerner> i.e. the "qcom/" is getting removed
20:37:08 < tlwoerner> oops!!
20:37:33 < tlwoerner> wrong copy&paste, the actual error is:
20:37:36 < tlwoerner> *** No rule to make target 'arch/arm64/boot/dts/apq8016-sbc.dtb'.  Stop.
20:37:53 < tlwoerner> i.e., the "qcom/" is being stripped out

(From OE-Core rev: 0d725c76c113dec441a7319a6ee997e4ae8c4c88)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-05 11:39:06 +01:00
Chen Qi
946a48be9e oeqa/runtime/cases/parselog.py: ignore a message from weston
The following error message when starting core-image-weston is not
critical as long as the image could start up correctly. So extend
the common_errors list for parselog.py test case to ignore this
message.

  logind: cannot setup systemd-logind helper (-61), using legacy fallback

[YOCTO #12835]

(From OE-Core rev: edc244b2f346ad2eb3c90664ec17c904b356b992)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-05 11:39:06 +01:00
Khem Raj
fbfacebaa9 libnss-nis: Limit parse skip only for target recipe on musl
on the host side we are glibc based therefore some native and nativesdk
recipes might need this package even when we target musl based systems

(From OE-Core rev: c939255a88d367d19497184ed64b828f021e5ef4)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-05 11:39:06 +01:00
Hongxu Jia
956ddcc9d4 libxml2: fix CVE-2017-8872
The htmlParseTryOrFinish function in HTMLparser.c in libxml2 2.9.4
allows attackers to cause a denial of service (buffer over-read) or
information disclosure.

https://bugzilla.gnome.org/show_bug.cgi?id=775200

(From OE-Core rev: dac867dc63af70ae992c50697d2be95c3e7b58bb)

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-05 11:39:06 +01:00
Chunrong Guo
b6bb7e1345 kernel-fitimage: add support for ext2.gz initramfs files
(From OE-Core rev: e2e0c91c2c8229d9ed0958de98b5a9b14c6805d1)

Signed-off-by: Chunrong Guo <chunrong.guo@nxp.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-05 11:39:06 +01:00
Robert Yang
6a51dbf9bb nfs-utils: 2.1.1 -> 2.3.1
* Removed 001-configure-Allow-to-explicitly-disable-nfsidmap.patch,
  the nfsidmap is enabled when --enable-nfsv4, so I added a
  PACKAGECONFIG[nfsv4], and default is no since keyutils is not in oe-core by
  default.

* Removed 0001-include-stdint.h-for-UINT16_MAX-definition.patch and
  nfs-utils-1.2.3-sm-notify-res_init.patch since they are already in the
  source.

* Taken two patches from git://git.alpinelinux.org/aports to fix build
  with musl, and the nfs-utils-musl-res_querydomain.patch is for musl only.

(From OE-Core rev: 0b51ed606b2e7543b50dadae7c0822b0f0de77ef)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-05 11:39:06 +01:00
Binghua Guan
0996eecb21 oe.types.boolean: treat None as False
It is better to return False for None. E.g. checking an undefined
variable returned d.getVar().

(From OE-Core rev: 3048e9fa0df6b1edf79bd1723e0fc022c3332af1)

Signed-off-by: Binghua Guan <freebendy@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-05 11:39:06 +01:00
Derek Straka
ec9ad3648b python3-dbus: update to latest stable version of 1.2.8
Remove the PACKAGECONFIG for documentation as it now requires python3-sphinx which is not
provided in any existing recipe.

(From OE-Core rev: 32dded1bd2f6c5cf6437330830399b72f15096c4)

Signed-off-by: Derek Straka <derek@asterius.io>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-05 11:39:06 +01:00
Alex Kiernan
280239af32 bmap-tools: Add python3-fcntl dependency
Add missing python3-fcntl dependency

(From OE-Core rev: 5821db83e5c21a7a85b8675951e4e9c1893e4b26)

Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-05 11:39:06 +01:00
Derek Straka
e0cbfaedc4 python: update to version 2.7.15
Update to the latest stable version

License-Update: Copyright year updated to include 2018

Remove the alignment patch that is included upstream

(From OE-Core rev: 855020053906478cea164ed254c08bedce48479d)

Signed-off-by: Derek Straka <derek@asterius.io>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-05 11:39:06 +01:00
Derek Straka
1855f7c7b7 python-numpy: update to 1.14.5
Update to the latest stable release

(From OE-Core rev: 3e667be761daaa83e16f67a89f9414620bbe2726)

Signed-off-by: Derek Straka <derek@asterius.io>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-05 11:39:06 +01:00
Derek Straka
3a94936470 python3-pip: update to version 10.0.1
License-Update: Update checksum for whitespace (CRLF) changes

Update to the latest stable version

(From OE-Core rev: 467321703315f6e50aa8bc0e28cfe56f86c5fab7)

Signed-off-by: Derek Straka <derek@asterius.io>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-05 11:39:06 +01:00
Derek Straka
ea71b6d909 python3-git: update to 2.1.10
python3-git was updated to the latest stable version

Tested on qemux86-64 using core-image-minimal

(From OE-Core rev: 6aa6f57c4d42d45ce1d3dbdca0e8f38ae31c0fbe)

Signed-off-by: Derek Straka <derek@asterius.io>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-05 11:39:06 +01:00
Ross Burton
611013a23a mesa: add lost Upstream-Status tag
(From OE-Core rev: 4cb6e5c734341b9d1240814ffecd01f574e3c347)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-05 00:22:08 +01:00
Ross Burton
740b931d39 elfutils: clean up patches
In the upgrade a large number of Upstream-Status tags were dropped, so add them
back.  I'm taking the stand that copying a patch Debian is carrying doesn't
count as a backport.

Remove two Debian-specific patches (one for Hurd, one for kfreebsd) so
we're not carrying useless patches.

Remove two patches that are no longer applied.

(From OE-Core rev: b039b26958655aab496b588f4e41a5dea1bfaac1)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-05 00:22:08 +01:00
Fabio Berton
3232070931 busybox: Add patch to ignore -c on umount command
Fix error when umounting filesystem on shutdown with a systemd distro.

See more datails here: [https://github.com/systemd/systemd/issues/7786]

(From OE-Core rev: ae23367c85d1a6c84c25736ac3c9a059acbc8dbe)

(From OE-Core rev: 29b1555481a30f9a7eda43f67f3e8ceb5da1b0aa)

Signed-off-by: Fabio Berton <fabio.berton@ossystems.com.br>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-05 00:22:08 +01:00
Rasmus Villemoes
a77a6dad43 util-linux: alternatify fstrim
I hit

update-alternatives: Error: not linking [...]/rootfs/sbin/fstrim to /bin/busybox.nosuid since [...]/rootfs/sbin/fstrim exists and is not a link

The solution seems to be to tell the alternatives system that util-linux
can also provide fstrim.

(From OE-Core rev: 7b317343a74bb0c31515b28879127972d50d1896)

Signed-off-by: Rasmus Villemoes <rasmus.villemoes@prevas.dk>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-05 00:22:08 +01:00
Otavio Salvador
66aefd4811 go: Update 1.10.2 -> 1.10.3
go1.10.3 (released 2018/06/05) includes fixes to the go command, and
the crypto/tls, crypto/x509, and strings packages. In particular, it
adds minimal support to the go command for the vgo transition.

(From OE-Core rev: 37f288d783257cb9e6c035aaab1b661b1016b4c3)

Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-05 00:22:08 +01:00
Otavio Salvador
74f0f46360 go: Update 1.9.6 -> 1.9.7
go1.9.7 (released 2018/06/05) includes fixes to the go command, and
the crypto/x509, and strings packages. In particular, it adds minimal
support to the go command for the vgo transition.

(From OE-Core rev: 98d3ec92e8953304db51c73aff7a4e81b97f668c)

Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-05 00:22:08 +01:00
Olof Johansson
6d3617d0f6 rpm: Avoid leaking temporary scriplet files
RPM writes each package scriptlet (post-/preinstall) to
/var/tmp/rpm-tmp.XXXXXX --- a lot of files potentially gets created.
When debugging is enabled, these temporary scriptlet files aren't
cleaned up at all and after a while this results in the filesystem
resources are eaten up (like running out of available inodes).

Normally, the temporary files would have been written to the tmp
directory of the target sysroot (which we can easily clean up), but in
this tree, you can't necessarily run the scriptlets.

Fixes [YOCTO #12792]

(From OE-Core rev: ffb0ece83e74797f4c3da3866bb3d691c388a5e5)

Signed-off-by: Olof Johansson <olofjn@axis.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-05 00:22:08 +01:00
Ross Burton
846193422c fstests: remove
These tests are very old and there are better benchmarking systems available
now.

(From OE-Core rev: 516c1d5c2b2875ac103d4b5e8e482f852477dc8f)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-05 00:22:08 +01:00
Robert Yang
7647d7a019 ccache: 3.3.5 -> 3.4.2
* The license file is changed to LICENSE.adoc, it is still GPLv3+.
* Removed Revert-Create-man-page-in-the-make-install-from-git-.patch, it was
  used for fixing a build failure of no asciidoc, but now there is no such a
  failure, so remove it.
* Refreshed 0002-dev.mk.in-fix-file-name-too-long.patch

(From OE-Core rev: b137af6c2dc3d6c21808ecc872fbebbac5f96295)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-05 00:22:08 +01:00
Robert Yang
63b40c9008 e2fsprogs: 1.43.8 -> 1.44.2
- Rebased Revert-mke2fs-enable-the-metadata_csum-and-64bit-fea.patch
- Removed backport patch 0001-libext2fs-fix-build-failure-in-swapfs.c-on-big-endia.patch
- The LIC_FILES_CHKSUM changed because it updated the address, others are the same

(From OE-Core rev: 2577fbed729ddc8deb7a657dbaa695d5bd7ef20d)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-05 00:22:08 +01:00
Robert Yang
4604255985 automake: 1.15.1 -> 1.16.1
* Refreshed the following patches:
  - 0001-automake-Add-default-libtool_tag-to-cppasm.patch
  - automake-replace-w-option-in-shebangs-with-modern-use-warnings.patch
  - buildtest.patch
  - new_rt_path_for_test-driver.patch
  - performance.patch
  - python-libdir.patch

(From OE-Core rev: f63a493298de7d0cac36a65dafba5dae06c06a05)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-05 00:22:08 +01:00
Ross Burton
bf760b5d9d mesa: enable surfaceless platform
This platform is enabled by default but as we override the platform list doesn't
get enabled.

(From OE-Core rev: bff79adccf3b6d7e07abc965af96f9c1d499d309)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-05 00:22:08 +01:00
Ross Burton
0c1437563b libdrm: port to Meson
Drop the patch to install tests as the Meson build allows this.

Drop the patch to disable cunit as this predates recipe-specific-sysroots and
isn't required anymore.

As Meson always builds the test suite (instead of building before running it),
add a patch to fix compilation with musl.

(From OE-Core rev: 8dcebad54ded4fa9b3455b674be37ad0b10190d8)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-05 00:22:08 +01:00
Ross Burton
e03660f46e meson: validate cpu_family
Meson has a defined list of known CPU families but these are not currently
validated, so mistakes in cross files or new architectures are not noticed.

Backport a patch from upstream which warns on unknown architectures, but tweak
it to fatally error instead.  When we upgrade to Meson 0.47 the first half of
this patch can be dropped.

(From OE-Core rev: be194a459944dfcc41bae7315643a5d284683efc)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-05 00:22:08 +01:00
Ross Burton
5193aedb45 meson: map architecture to correct values in cross file
The cross file specifies the host/target cpu_family, which should be one of a
defined set of values[1] but if it isn't Meson won't complain and instead
recipes may behave unexpectedly.

[1] http://mesonbuild.com/Reference-tables.html#cpu-families

(From OE-Core rev: e33b902a1dc4294dac148715f4d3ca5b0a6ee1b7)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-05 00:22:08 +01:00
Ross Burton
c2ba7177f1 meson: various class improvements
- Ensure that the PACKAGECONFIG arguments are always in EXTRA_OEMESON

- Log the arguments that are being passed in do_configure.

- Do verbose builds so the compile logs are useful for debugging build problems

(From OE-Core rev: 3112ff268d095a65ecb893dd6ca88a85b0f70446)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-05 00:22:08 +01:00
Richard Purdie
f2c04b450f send-error-report: Fix test for name > 50 chars
A name > 50 chars causes a 500 internal server error and should be warned
to the user but the code to do so currently doesn't work. Fix the logic.

(From OE-Core rev: 844f8d46f522a994dbff00245c4ffb07452577a8)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-04 12:19:13 +01:00
Richard Purdie
83b0109149 send-error-report: Fix dubious error reporting
Currently this code prints things like:

ERROR: OK

which is unhelpful at best. After this change it would print:

ERROR: HTTP Error 500

which at least gives us something to work on.

(From OE-Core rev: 06079240e4eb0a3e1f528f6c8d6f3ea20754afee)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-04 12:19:13 +01:00
Richard Purdie
0118f01787 multilib: Tweak previous cross-canadian multilib fix
As well as setting RECIPE_SYSROOT we also need to set STAGING_DIR_HOST/TARGET.

(From OE-Core rev: 59a0a05235d80c86251cf45d7142bfc57f2e70d2)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-04 00:02:17 +01:00
Richard Purdie
f755066a00 staging: Always use the default sysroot for allarch recipes
Without this, recipes can't find allarch data files like autoconf-archive.

(From OE-Core rev: 8ae70703f68853a8714a4fb8fa5d959b5e21a02d)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-04 00:02:17 +01:00
Armin Kuster
e9f8826681 bind: update to ESV version 9.11.3
LIC_FILES_CHKSUM changed do to updated year

removed:
dont-test-on-host.patch, no longer implemented
drop use-python3-and-fix-install-lib-path.patch, they added the ability to pass in lib dir loctions
drop bind-confgen-build-unix.o-once.patch, fix included in update

Refresh other patches:
add python3 flag for PACKAGECONFIG to pull in python
add new config option --with-eddsa=no (needs openssl support not released)

Python support is disaled by default now.

Acked-by: Martin Hundebøll <mnhu@prevas.dk>
(From OE-Core rev: c37207d0aca5ad1ec2b45813274931be458ee7ed)

Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-04 00:02:17 +01:00
Armin Kuster
c026c365eb dhcp: update 4.4.1
include several CVE fixes.
CVE: CVE-2018-5733
CVE: CVE-2018-5732

LIC_CHKSUM_FILE updated to SPFX format

https://kb.isc.org/article/AA-01571

remove several patches now included in update.
Shared libarary support is now enabled in configure+lt, use it
and revert to autotools-brokensep
Refresh patches

Aligns support with bind 9.11.x

Add libxml2 support to configure.ac+lt

(From OE-Core rev: 7cb42ae87ef929bf7e08c559f09dc224c6e3d314)

Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-04 00:02:17 +01:00
Paulo Neves
396e269c5c kernel-devicetree: Corrected normalize_dtb
The normalize_dtb function was buggy because
it only converted from .dts suffix to .dtb
suffix if the user passed a full source path to
KERNEL_DEVICETREE containing the /dts/ path.
The problem is that if the user did that there
would be a warning.

On the othet hand if user just set the variable
KERNEL_DEVICETREE="file.dts" the bbclass translation
to the respective .dtb target did not occur and
make would fail saying it has no rule to make target
file.dts

This patch decouples the logic of having /dts/ in the
path from the target translation.

(From OE-Core rev: 2e7f3b2b9318d1e5395ad58131eafb873f614326)

Signed-off-by: Paulo Neves <ptsneves@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-04 00:02:17 +01:00
Kai Kang
9267988e30 webkitgtk: 2.20.2 -> 2.20.3
Upgrade webkitgtk from 2.20.2 to 2.20.3.
* update context of 0001-WebKitMacros-Append-to-I-and-not-to-isystem.patch
* remove detect-atomics-during-configure.patch that webkitgtk 2.20.3
  contains the commit of better solution, see
  https://bugs.webkit.org/show_bug.cgi?id=161900#c9

(From OE-Core rev: 069426b0a7a6848a9290cd2e8cdce941d7e3c08c)

Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-04 00:02:16 +01:00
Hongxu Jia
8342cc7d2f ghostscript: fix CVE-2018-10194
https://nvd.nist.gov/vuln/detail/CVE-2018-10194

(From OE-Core rev: 4b56d6a61bfe4ca28d1301ae83898a979d3df73a)

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-04 00:02:16 +01:00
Hongxu Jia
2e6e9c02f9 ncurses: 6.1 -> 6.1+20180630
(From OE-Core rev: 397410d6ca6864c9a956b8a1e602b97f57d0031f)

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-04 00:02:16 +01:00
Hongxu Jia
eece28c5a1 libgcrypt: 1.8.2 -> 1.8.3
(From OE-Core rev: c15a7f739a929c3f43f17387c5a950c9d6a02203)

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-04 00:02:16 +01:00
Hongxu Jia
08b3432e9f help2man-native: 1.47.5 -> 1.47.6
(From OE-Core rev: 93b0a04d77b0b513fefaa80fb3fb9334c549a76f)

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-04 00:02:16 +01:00
Hongxu Jia
13542a824b man-pages: 4.14 -> 4.16
(From OE-Core rev: 5d84441e148a43f42697dc7493d6c37c713fe397)

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-04 00:02:16 +01:00
Hongxu Jia
60857bd2d4 elfutils: 0.170 -> 0.172
- Update debian 0.170 patches and rebase them for 0.172;

- Drop 0001-Use-fallthrough-attribute.patch which was
  accepted by upstream;

- Drop 0001-Ensure-that-packed-structs-follow-the-gcc-memory-lay.patch
  which was backported from upstream;

(From OE-Core rev: dbbe9c1d1f822cf13a4c16b79bccf6bf5c4b91e4)

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-04 00:02:16 +01:00
Hongxu Jia
b07db23759 man-db: 2.8.2 -> 2.8.3
(From OE-Core rev: 3e48ac4a65efca1653d6cd69434b0164af4ef39a)

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-04 00:02:16 +01:00
Hongxu Jia
b68ea8b7fe gpgme: 1.10.0 -> 1.11.1
License-Update: copyright years updated 2001-2017 -> 2001-2018

(From OE-Core rev: 82b2a087e4f0f9ff9e602e7b507be94498a7a73b)

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-04 00:02:16 +01:00
Hongxu Jia
29687df30a gnupg: 2.2.5 -> 2.2.8
(From OE-Core rev: 4d09b6a411504be78379dff172ef12620204b89a)

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-04 00:02:16 +01:00
Christopher Larson
c9812c91fe recipetool: add 'edit' subcommand
This edits the recipe and any bbappends for the specified target.

(From OE-Core rev: 7aece42c6b4744c54a8eb05ff90bd3bf4fbb14a3)

Signed-off-by: Christopher Larson <chris_larson@mentor.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-04 00:02:16 +01:00
Alex Kiernan
bba7c19eeb kernel-fitimage: Make DTB key insertion optional
If UBOOT_DTB_BINARY is empty, then don't try inserting the U-Boot
signing keys into the DTB. In this configuration the keys are expected
to be already present in U-Boot's DTB.

(From OE-Core rev: a0d74767f7bd18c853df6b0be162363076d8f965)

Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-04 00:02:16 +01:00
Alistair Francis
b2a13cef91 nspr: Add RISC-V support
(From OE-Core rev: 47b76dd02007e96fc95099524d43d517daf2aa6e)

Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-04 00:02:16 +01:00
Alistair Francis
c33c20733d qemu: Add RISC-V support
(From OE-Core rev: 188f4d258587a8bed9c91922ed8d141dbea4232d)

Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-04 00:02:16 +01:00
Christopher Larson
b0527c08d4 oe.path: add which_wild function
This is a function much like shutil.which or bb.utils.which, retaining
shutil.which-like function semantics, bb.utils.which's support for
returning available candidates for signatures, and most importantly,
supports wildcards, returning only the first occurrance of each found
pathname in the search path.

(From OE-Core rev: ca276fe139129eec383d77768ba91b808c462b04)

Signed-off-by: Christopher Larson <chris_larson@mentor.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-04 00:02:16 +01:00
Ming Liu
7cb125d7ee bitbake: runqueue.py: Fix a virtual class extension stamps issue
The file_name parameter passed to bb.parse.siggen.invalidate_task
should be a virtual file name instead of a real file name, or else you
will encounter a following error, for instance, when you run:

$ bitbake nativesdk-lzip -c unpack -f

the error arise:
| ERROR: An uncaught exception occurred in runqueue
| if file_name:
|    > taintfn = d.stamp[file_name] + '.' + task + '.taint'
| else:
| KeyError: 'virtual:nativesdk:/opt/poky/meta/recipes-extended/lzip/lzip_1.19.bb'

when multilib builds are used on OE.

(Bitbake rev: da37bdad46e11e7ce93ba7a59d58757b769dc16b)

Signed-off-by: Ming Liu <liu.ming50@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-02 21:38:06 +01:00
Richard Purdie
9fff2b5a75 multilib: Fix issues with some cross-canadian toolchain sysroots
MACHINE = "qemumips64"
MULTILIBS = "multilib:lib64 multilib:lib32"
DEFAULTTUNE = "mips64-n32"
DEFAULTTUNE_virtclass-multilib-lib64 = "mips64"
DEFAULTTUNE_virtclass-multilib-lib32 = "mips32r2"

bitbake core-image-minimal -c populate_sdk

Results in gcc-cross-canadian-mips failing to build due to the use
of an incorrect sysroot, fix this. All nativesdk pieces should be in
the same sysroot (unprefixed).

(From OE-Core rev: ae48ee6627e6c1c4f1fcc4ead40edc968e64f7fe)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-02 21:37:47 +01:00
Richard Purdie
6ca693f284 staging: Improve fixup processing code
With the fixes to other parts of multilib, it was found that the fixup code's
assumptions about the recipe sysroot were incorrect. We need to use the value
calculated earlier in the function.

It turns out there is a rather neat way to do this which cleans up the code
as an added bonus.

(From OE-Core rev: 2c1978fe1a5b72167c49010fbdd39a9e2eefdef8)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-02 21:37:47 +01:00
Richard Purdie
522d422498 lib/oe/sstatesig: Fix task mappings from multilib<->non-multilib contexts
If we're in a multilib context already and want a non-multilib context
this function returned incorrect values.

Try and retain optimisations for the common case not needing to request
a datastore but allow the different multilib/non-multilib combinations
to work too.

This fixes bugs where rootfs generation of a multilib image would
write into incorrect locations, or be unable to find sstate manifest
files due to incorrect data stores being used to expand data.

(From OE-Core rev: af7cd7823a8cc95c9f849498b2416cdb0d4d103e)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-02 21:37:47 +01:00
Richard Purdie
29353297b5 classes/utils: Improve all_multilib_tune_values
Currently there is duplication in the code, we can clean this up
by extending the multilib variants list.

This code also currently fails its its called from an existing multilib
context since its assumes the data store passed in is the non-multilib
case. When building an image, say lib32-core-image-sato, this leads to
incorrect PATH values.

To fix this, we also request a data store for the "" variant allowing
this corner case to be fixed and for the function to correctly return
values for each multilib even when a multilib is already selected.

(From OE-Core rev: cc1c481560b81c223170230430308c7e2f08c812)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-02 21:37:47 +01:00
Richard Purdie
f1079cd193 staging/image: Fix multilib recipe sysroot issues
Currently if you enable multilib, then build an image, the multilib
recipe sysroot is build in the wrong WORKDIR. If you then clean and
rebuild the image you see "file exists" errors.

This patch ensures the real WORKDIR is used consistently and then
cleans/rebuilds also work correctly.

(From OE-Core rev: c013ae59a158378d06ecf8eb123df0a10bf986b4)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-02 21:37:47 +01:00
Richard Purdie
e9e1107c61 lib/oe/utils: Improve get_multilib_datastore
Currently this function assumes that no multilib is applied and that
we're applying a multilib. This means if we're in multilib context
and want the non-multilib context we can't obtain it (and no other
function exists for this either).

Improve the function to allow this to be requested.

(From OE-Core rev: 295c5a3d19834a2fac255346d0a373449cfdd776)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-02 21:37:47 +01:00
Joshua Watt
9086a55d25 oe-selftest: Add bitbake-layer create-layer test
Adds a test that creates a layer, adds it to bblayers.conf, then ensure
that it appears properly in bitbake-layers show-layers.

(From OE-Core rev: 828462d2c39fe6f4d188b5eb129f7b2969e1ee18)

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-02 21:37:47 +01:00
Joe Slater
058119da17 postinst-intercepts: do not execute any variant of delay_to_first_boot
As of commit 2c5c6e3ff we create multilib variants of intercept
hooks but we did not account for delay_to_first_boot variants.
This was covered up until commit a335e7867, but will now cause
an error.

(From OE-Core rev: 77f7c75481dceec36b7373f277c3bac811de9ef2)

Signed-off-by: Joe Slater <joe.slater@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-02 21:37:47 +01:00
Alp Özmert
42b3761274 license: Fix and extend recommendations for license packages.
Changed package recommendations so that the license package of a
recipe is recommended for all packages of a recipe instead of for one
package given by the recipe name.

Pre-patch behaviour results in a missing recommendation when a recipe
does not have a package with the same name.

(From OE-Core rev: 07343ff6282dd18432ecee5d9b80ad1fb86217f1)

Signed-off-by: Alp Özmert <info@ib-oezmert.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-02 21:37:47 +01:00
Alistair Francis
830880a688 recipes-kernel/linux: Enable NUMA Kconfig from MACHINE_FEATURES
If the user has set numa in their MACHINE_FEATURES we should enable
NUMA support in the kernel config.

(From OE-Core rev: e999816fec19750c4885e99930113bac21c225c0)

Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
Acked-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-02 21:37:47 +01:00
Derek Straka
9f3eca4c80 python*-setuptools: update to 39.2.0
Update the python{3}-setuptools to the latest stable version

Tested on the qemu with core-image-minimal

(From OE-Core rev: 920dc165abe2484c240b76f95123f5a28f48f9ce)

Signed-off-by: Derek Straka <derek@asterius.io>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-02 21:37:47 +01:00
Otavio Salvador
9018bea0d1 mesa: Upgrade 18.1.2 -> 18.1.3
This upgrades mesa to the 18.1.3 stable release.

The changes can be found at:

https://www.mesa3d.org/relnotes/18.1.3.html

(From OE-Core rev: 4acdeb1529f5355b2849556e9f4ef302e35d3b0c)

Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-02 21:37:47 +01:00
Hongzhi.Song
ec2bb22965 oeqa/runtime: Add testcases for kernel sample
We are going to let runtime test support kernel tests. Now we just add
kernel self-contained sample tests. And we plan to add overall kernel
tests in the future.

This patch is just add kernel samples test which contains about 13 tests
enabled by kernel-sample.scc. So it needs statement,
KERNEL_FEATURES_append += " features/kernel-sample/kernel-sample.scc" in
local.conf.

(From OE-Core rev: be6ef728fd36049ea3822a54909a995bdecf6dd0)

Signed-off-by: Hongzhi.Song <hongzhi.song@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-02 21:37:47 +01:00
Hongzhi.Song
28a1f5cd95 linux-yocto: Enable kernel-sample features for runtime tests
Enable kernel-sample features by default with the machine of qemu.

(From OE-Core rev: df7213e4799f9147560f61bbd466367ba02fd470)

Signed-off-by: Hongzhi.Song <hongzhi.song@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-02 21:37:47 +01:00
Richard Purdie
0609f4fee3 xtrans: Fix multilib .pc file conflict
Error: Transaction check error:
  file /usr/share/pkgconfig/xtrans.pc from install of lib32-xtrans-dev-1:1.3.5-r0.core2_32 conflicts with file from package xtrans-dev-1:1.3.5-r0.core2_64

[YOCTO #12511]

(From OE-Core rev: e20da6dec99c4d2e6b803b07f8f79af0c54d1396)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-02 21:37:47 +01:00
Zhang Xiao
69b588ea2a python3: fix file conflict when multilib enabled
Config file python3.5m-config conflicts between 32 and 64 bit packages.
Use update-alternatives to add base_libdir as suffix to avoid it.

[YOCTO #12511]

(From OE-Core rev: bbb5e55abd0e628a5b0dae90d5eace0a2483f1fc)

Signed-off-by: Zhang Xiao <xiao.zhang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-02 21:37:47 +01:00
Arsalan H. Awan
960ab9ef8c initrdscripts/init-live.sh: fix mounts w/ spaces fail to move to real rootfs
When there are spaces in the mount points of devices e.g.:

 a partition mounted at "/run/media/My Root Partition-sda1",

the initrd fails to move such mount points over to the
corresponding directories at /media under the real root filesystem,
and the mount points would appear at the same location as they were
mounted on when detected by initrd, for example:
 here: "/run/media/My Root Partition-sda1"
 instead of here: "/media/My Root Partition-sda1"

This causes issues such as:

  * The disks/partitions cannot be formated with any filesystem
    using e.g. mkfs.ext4 or mke2fs in general. When tried to do so
    by making sure the device is not mounted, it failed with
    errors such as:

    > /dev/sda1 is apparently in use by the system; will not make a
      filesystem here!
    > /dev/sda1: Device or resource busy while setting up superblock

  * The read/write operations become extremely slow. e.g. Under testing,
    it took approx. 2 hours just to copy 700 MB of data to the partition,
    and it took more than 40 minutes to delete that data from it.
    Same operations took under 5 minutes on a partition that had no
    spaces in its mount point (or that was successfully moved to real
    root by initrd and appeared under /media instead of /run/media).

This commit fixes such issues by quoting the arguments of failing mount
move commands and by parsing OCT or HEX encoded special characters
such as spaces to ASCII charecters in the mount points as kernel
populates the procfs like so.

(From OE-Core rev: 6f8f984ba363f764e83290b972ec31a90aad1603)

Signed-off-by: Arsalan H. Awan <Arsalan_Awan@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-29 11:07:45 +01:00
Joshua Watt
44b1fe43b0 bitbake-bblayers/create: Fix layer name generation
The path to where the layer was being created was taken verbatim as the
name of the layer when generating the layer.conf and README files from
templates. This causes problems in the layer.conf file because it would
result in strangely named variables like

 BBFILE_PATTERN_../my-layer = "..."

Instead of blindly taking the path, use the name of the last component
of the path as the layer name.

Additionally, rework the template files to use python format strings
with named parameters so that the same argument doesn't have to be
repeated multiple times.

[YOCTO #12808]

(From OE-Core rev: 01071c5d524a878d9de4814196cba2f15739796e)

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-29 11:07:45 +01:00
Ross Burton
1dec2101f9 libsdl2: fix build race
There's an occasional build race from headers being generated in parallel with
other files which include the headers being compiled.  Solve this by adding more
dependencies.

[ YOCTO #12815 ]

(From OE-Core rev: 177f4782e1ffca1eed3c9b102d910239a3dceea4)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-29 11:07:45 +01:00
Ross Burton
4205e87a77 libsoup: fix CVE-2018-12910
(From OE-Core rev: 112683815ed1f63a96e845f264a2fd3390c6d01b)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-29 11:07:45 +01:00
Ross Burton
0c09b20036 openssl: disable ccache usage
ccache and openssl don't get on:

| make[1]: Entering directory '/home/prj/yocto/build/tmp/work/core2-64-poky-linux/openssl/1.0.2o-r0/openssl-1.0.2o/crypto'
| ccache: invalid option -- 'D'

Disable the use of ccache in the openssl recipe until someone root-causes this.

[ YOCTO #12810 ]

(From OE-Core rev: 8f9ceebb197dba10f2d08449de2dd64584de06bb)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-29 11:07:45 +01:00
Ioan-Adrian Ratiu
870fbbd5c0 wic: isoimage-isohybrid: debloat image of redundant rootfs
There's no reason to have that rootfs.img filesystem in the image:
it's not used for anything because both the EFI and legacy boot paths
use the /initrd which contains the same contents as the rootfs.img,
only compressed. It was probably forgotten in there :)

My iso went down from 224 to 94 mb.

Tested using UEFI/legacy boots on CD-roms, usb dongle and qemu VM's.

(From OE-Core rev: 4c784379524cb12807ef87a02ef1514ed45c1cc3)

Signed-off-by: Ioan-Adrian Ratiu <adrian.ratiu@ni.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-29 11:07:45 +01:00
Ioan-Adrian Ratiu
b591fb889b wic: isoimage-isohybrid: fix UEFI spec breakage
It's really good that OE supports multiple EFI_PROVIDERs and that
commit 9a1709278de87 ("wic: isoimage-isohybrid: use grub-efi from
deploy dir") makes re-use of the grub-efi built image, but we should
still respect the standard otherwise the ISO will not boot, so install
grub images as boot[x64|ia32].efi not ${PN}-boot[x64|ia32].efi.

(From OE-Core rev: 1608129692d92c239b5fb9244b649a32b9009254)

Signed-off-by: Ioan-Adrian Ratiu <adrian.ratiu@ni.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-29 11:07:44 +01:00
Daniel Díaz
417a9b8baa kmscube: Update to master from 2018-06-17
Changes from 0d8de4ce:
  c2d4ba8 drm-legacy: fix poll for flip event, actually exit on user input
  56c3917 formats: use weston's egl config matching logic, centralize format
  aac3788 Rework default modifier handling
  4f7cec0 Use weak functions to handle lack of gbm modifiers
  98f31bf cube-tex: make use of modifiers
  063ce5c gbm: fix fallback for drivers that don't support modifiers
  9dcce71 add MSAA

Also refresh gbm_bo_map/_unmap patch.

(From OE-Core rev: 4cc150f31f84d1cbc82df7d7f8fe045a06a9859e)

Signed-off-by: Daniel Díaz <daniel.diaz@linaro.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-29 11:07:44 +01:00
Richard Purdie
d2d84b1f96 mesa: Fix parallel make race
Builds keep failing with a race over the generated header file, fix it!

[YOCTO #12828]

(From OE-Core rev: 3db0b1e798797013e3c553c1ce599191da2c3daa)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-29 11:07:44 +01:00
Yi Zhao
f15587a6f4 gnu-efi: update to 3.0.8
(From OE-Core rev: 91dad340e32271d5db681bae34ed5599310e8703)

Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-29 11:07:44 +01:00
Yi Zhao
01d7d97d2a debianutils: update to 4.8.6
(From OE-Core rev: 706686da448c10071ba7b3f209127f3d19bebfd5)

Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-29 11:07:44 +01:00
Yi Zhao
4d412d63b2 libbsd: update to 0.9.1
License-Update: update COPYING file format

Drop 0001-Replace-__BEGIN_DECLS-and-__END_DECLS.patch and
0002-Remove-funopen.patch since they are already fixed upstream.

Backport 0001-flopen-Add-missing-fcntl.h-include.patch to fix build with
musl.

(From OE-Core rev: 62981e79de16a2352744c4b275f0549b1dafd17a)

Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-29 11:07:44 +01:00
Yi Zhao
65da09ad88 file: update to 5.33
Drop 0001-Add-P-prompt-into-Usage-info.patch since it is already fixed
upstream.

(From OE-Core rev: 02f8aff020762e77bf49587115f6b8fbc96296c9)

Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-29 11:07:44 +01:00
Richard Purdie
c7c64baa41 bitbake.conf: Allow BBINCLUDED to be unset
For some reason the layer index is expanding HOSTTOOLS before BBINCLUDED is
set so recent changes break it. This adds in a simple workaround to stop it b
reaking allowing the index to function correctly again.

(From OE-Core rev: 40a904bf8bc1279c3da0893c003f740f1d2066c2)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-28 12:26:54 +01:00
Yi Zhao
7cf964d611 maintainers.inc: recipes cleanup
Cleanup the recipes which had been removed from oe-core.

(From OE-Core rev: 2dfbff215f3567252fdfbd5704e6740a30ad41b4)

Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-28 12:26:54 +01:00
Andre McCurdy
3fcec2cfa2 bitbake.conf: handle cmake -dev files packaging with default rules
Move packaging rules for cmake -dev files from cmake.bbclass into
bitbake.conf to handle recipes (e.g. harfbuzz 1.8.1) which build with
autotools but also install cmake -dev files.

(From OE-Core rev: 543e39ad5e2baa0f1ece013a89483783e6b15dd9)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-28 12:26:54 +01:00
Kristi Rifenbark
25d3577a61 ref-manual: Removed the do_rm_work_all Task
(From yocto-docs rev: 74a90f766a38c425a6ceb8a50ad24b23460f9640)

Signed-off-by: Kristi Rifenbark <kristi@buzzcollectivemarketing.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-28 09:22:58 +01:00
Kristi Rifenbark
2a74e8fb94 dev-manual, ref-manual: Documented NO_GENERIC_LICENSE
FIXES [YOCTO #12734]
Added a new variable description and created a new
section in the dev-manual.

(From yocto-docs rev: 854e641482171585c96ee5b9387b3e64146072b9)

Signed-off-by: Kristi Rifenbark <kristi@buzzcollectivemarketing.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-28 09:22:57 +01:00
Scott Rifenbark
293183961e sdk-manual: Updates to "Building an SDK Installer" section.
Updated some links.  Also, rewrote the note about the libraries.
It was inaccurate.

(From yocto-docs rev: a0fce0ed36f3d0668e2d211433e7d93fb8833319)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-28 09:22:57 +01:00
Scott Rifenbark
3658816dec sdk-manual: Updates to the section for locating SDK installers
I corrected some wrong information.  Provided the correct terminology
for the build host, and provided quotations for supplied values to
be in line with manual writing conventions.

(From yocto-docs rev: 420a7e96e7145dbef31d706cd257059619f71e12)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-28 09:22:57 +01:00
Scott Rifenbark
9e5a745d98 sdk-manual: Updates to Depolying and Debugging
Made several formatting changes for selections.  These should
be using quotes and not being formatted in Courier.

(From yocto-docs rev: ec0a2d7e3cfd78fa4e508d5672f1c8265a3600a4)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-28 09:22:57 +01:00
Scott Rifenbark
bb02c59e0b sdk-manual: Updates to neon section building the project
Rendered a menu correctly instead of in formatting mode.

(From yocto-docs rev: 7c7da68171dfee037d02fa683c5cba047237fd52)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-28 09:22:57 +01:00
Scott Rifenbark
0e870635f7 sdk-manual: Updates to configuring the cross-toolchains section.
The step that describes how Eclipse runs the Autotools is too
detailed and can run into problems as Autotools workflow changes.
I made it more general.

(From yocto-docs rev: 5d378a48f7237c620b7fc781b43ee86ea7522432)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-28 09:22:57 +01:00
Scott Rifenbark
197ff097f7 sdk-manual: Updated Neon creating the project section
Needed to render fields and items from the dialog in normal
text, not in formatted text.

(From yocto-docs rev: 204750e3e2a2e777207d5f2044e38d5482254c46)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-28 09:22:57 +01:00
Scott Rifenbark
48372e1bcc sdk-manual: Updates to configuring targe options sections
Both Neon and Oxygen needed some changes for correct use of the
way we refer to menus and fields.

(From yocto-docs rev: 1cb20243194e61b925df6b0a3b136233f1da8a57)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-28 09:22:57 +01:00
Scott Rifenbark
74f4f81f62 sdk-manual: Updates to configuring the cross compiler options
Used correct formatting for menu items and items fromt the
dialog screens.

(From yocto-docs rev: 9f9d4d65036dc23d193961efb4ae3f236fc8935c)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-28 09:22:57 +01:00
Scott Rifenbark
736e1d7916 sdk-manual: Fixed section capitalization problem.
(From yocto-docs rev: caf927123da995378116a3653232859992e8f8ec)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-28 09:22:57 +01:00
Scott Rifenbark
fa3643f2f5 sdk-manual: Used ordered list for sequence-dependent items.
The list in the "Configuring the Neon Eclipse Yocto Plug-In
section should be an ordered list and not a bulleted list.

(From yocto-docs rev: 87926b1fb62f3678bd328af3f018f1b17a982092)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-28 09:22:57 +01:00
Scott Rifenbark
ad26f668c2 sdk-manual: Updates to Neon intalling YP plug-in from latest source
I provided similar wordings in places in this section as were provided
in the parallel "oxygen" section.

(From yocto-docs rev: f4fd33d10363ab84f1f76d3e4bf115df45aef77c)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-28 09:22:57 +01:00
Scott Rifenbark
6ee788433d sdk-manual: Updated the step to install the pre-build YP plug-in
Needed to consolidate a couple steps here.  When you add in the
location for the YP Plug-in, it auto-populates the options.
Updated the prose to reflect that.

(From yocto-docs rev: b16963844cd573e5f52289f8948b38a5d4a0f7f1)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-28 09:22:57 +01:00
Scott Rifenbark
ec9606df06 sdk-manual: Updated steps to configure Neon Eclipse IDE
The "Configuring the Neon Eclipse IDE" section needed a bit more
information in the note.  Telling the users that if some options
are already installed they will not appear in the list.

(From yocto-docs rev: fbee757f102ee51e4db9fb6bdfd516775de8b5e0)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-28 09:22:57 +01:00
Scott Rifenbark
1110ef2a9b sdk-manual: Updated the Neon step to unpack the tarball
Steps indicated you had to be in a clean directory to unpack the
tarball.  This is false.  You can be in any directory and unpack the
file.  Unpacking it puts all the files into a directory named
"eclipse".

(From yocto-docs rev: 3e2fc8d013b51c1a90a44cf32a6cd69e2ef80a22)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-28 09:22:57 +01:00
Scott Rifenbark
f9bfbc700a sdk-manual: Updates to step to download Neon Eclipse.
Fixed this step to be more accurate.

(From yocto-docs rev: 1a5c25c57a8f5829a8c3302520661def856adb58)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-28 09:22:57 +01:00
Scott Rifenbark
9079fee0d2 sdk-manual: Fixed link in the intro section for Neon
The link was pointing to the Chapter 5 as if it were in a different
manual.  The link worked but should have been pointing to the actual
section of the Eclipse flow overview.  Fixed it.

(From yocto-docs rev: 4cc906bf383af837855f4c40fc107c77ff6d3ff9)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-28 09:22:57 +01:00
Samuli Piippo
9dce78ba8f glib: remove unnecessary dependency to DISTRO_FEATURES
Since DISTRO_FEATURES was expanded in the comments, it created
task dependency to the full content of DISTRO_FEATURES, instead
of just the x11 used below. This prevented reuse of sstate-cache
when unrelated feature flags were changed.

(From OE-Core rev: a39830b77f567e2361f1ced49bfdce52591e220c)

Signed-off-by: Samuli Piippo <samuli.piippo@qt.io>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-28 09:22:35 +01:00
Andre McCurdy
3e7d26e31a arch-armv7a.inc: default to Thumb2 instruction set for armv7a and above
Although there may still be specific cases which can benefit from the
ARM instruction set, the Thumb2 instruction set is generally a better
default for armv7a class CPUs. Distros such as Debian and Fedora have
been targeting Thumb2 by default for some time.

Note that setting ARM_INSTRUCTION_SET has no effect unless
TUNE_FEATURES contains "thumb" (which is controlled by the "t" suffix
in DEFAULTTUNE, e.g. armv7vehf-neon -vs- armv7vethf-neon, etc) so out
of tree machine configs may need to update their DEFAULTTUNE to take
advantage of this change.

(From OE-Core rev: c88304a78e528596ca481cabe273749c286c352a)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-28 09:22:35 +01:00
Olof Johansson
16f060c56f insane.bbclass: Don't let warnings make previous errors non-fatal
package_qa_handle_error() returns True on non-fatal issues and False on
fatal issues. But the current usage has been to do

  sane = package_qa_handle_error(...)

which would always reset sanity status to be that of the last issue
identified. This change the assignments to use the &= operator instead:

  sane &= package_qa_handle_error(...)

As far as I can tell, this is not a real problem in practice, because
warnings of different levels (WARN_QA, ERROR_QA) does not seem to have
been mixed in a way that triggered this issue.

(From OE-Core rev: 21d015f6c9927598d64c48c925638619b25cf232)

Signed-off-by: Olof Johansson <olofjn@axis.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-28 09:22:35 +01:00
Olof Johansson
fed27b0945 insane.bbclass: Make missing license file fatal
If a license file referenced from LIC_FILES_CHKSUM doesn't exist,
insane.bbclass would output an error message, but would continue the
build. This change makes this error fatal (as I suspect has been the
intention).

(From OE-Core rev: da29440633706fb7a346391d97894d6f2cbb0d01)

Signed-off-by: Olof Johansson <olofjn@axis.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-28 09:22:35 +01:00
Zheng Ruoqin
1d2e5eed40 glibc: fix CVE-2018-11237
glibc: fix CVE-2018-11237

(From OE-Core rev: b9b254da08c1db94ac9ded5f67d7e2e82e3b9be7)

Signed-off-by: Zheng Ruoqin <zhengrq.fnst@cn.fujitsu.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-28 09:22:35 +01:00
Ricardo Salveti
ef143b3f16 gcc-8: define GLIBC_DYNAMIC_LINKER relative to SYSTEMLIBS_DIR on riscv
Refresh 0014-Define-GLIBC_DYNAMIC_LINKER-and-UCLIBC_DYNAMIC_LINKE.patch
to also define GLIBC_DYNAMIC_LINKER relative to SYSTEMLIBS_DIR on riscv.

(From OE-Core rev: 12e859dfb70f8aae40edfd88b143b6c771f4e1a6)

Signed-off-by: Ricardo Salveti <ricardo@opensourcefoundries.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-28 09:22:35 +01:00
Ross Burton
aa4f9c3cd6 maintainers: assign systemtap to Victor Kanensky
(From OE-Core rev: ec957a03010949a93fbebd3e7b8b924ebc055ef7)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-28 09:22:35 +01:00
Alex Kiernan
8d33b69ed0 kernel: Set SOURCE_DATE_EPOCH to kernel git timestamp if not set
If SOURCE_DATE_EPOCH is unset (in addition to the existing "0" behaviour)
parse out the top most commit timestamp from the kernel tree to use as the
timestamp.

(From OE-Core rev: 2f0dd67a5a8d4269f5155004d532d8fa972b3223)

Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-28 09:22:35 +01:00
Alex Kiernan
3c46673100 image: Set COREBASE as the git directory for timestamp
When REPRODUCIBLE_TIMESTAMP_ROOTFS is unset and we want to parse one
from git, use COREBASE as the base for the git command so we have a
known repository which we're using. Without this the build may fail
if the current directory is not part of a git repository.

(From OE-Core rev: 1c2197f96d69547e10b74dc722d9a569d9a2b2b6)

Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-28 09:22:35 +01:00
Andre McCurdy
9fa6e7d487 db: drop legacy ARM specific SWP based mutex optimisation
Although the ARM SWP instruction may exist for ARMv6 and above, it's
not guaranteed to work, especially on SMP systems where it's use may
lead to instability at runtime, etc:

  https://community.arm.com/processors/b/blog/posts/locks-swps-and-two-smoking-barriers

Keeping the optimisation for architecture levels which pre-date SMP
(ie <= ARMv5) may be safe, however other distros (Buildroot, Debian,
Fedora, etc) are not doing so and mutex contention is likely to be
less of an issue on uniprocessor systems anyway, so the benefits of
this micro optimisations are not clear. Since OE uses ARMv5 qemu as
a proxy for testing all 32bit ARM architecture levels, it's desirable
to keep the ARMv5 builds aligned with later ARM architecture levels
wherever possible.

(From OE-Core rev: 7aa94abac09be6beb7ce14a2b9a409e934465706)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-28 09:22:35 +01:00
Martin Jansa
3f5b5c59e7 mdadm: fix one more issue when building with gcc8
(From OE-Core rev: 1a0ee6b0f194807b9eac1207c43ba3fae4d1f94c)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-27 13:55:22 +01:00
Damien Riegel
cd928d3a98 systemd: escape paths passed to shell
Systemd mount configuration file must have a name that match the mount
point directory they control. So for instance, if a mount file contains

    [Mount]
    ...
    Where=/mnt/my-data

The file must be named `mnt-my\x2ddata.mount`, or systemd will refuse to
honour it.

If this config file contains an [Install] section, it will silently fail
because the unit file is not escaped properly when systemctl is called.
To fix that, make sure paths are escaped through `shlex.quote`.

(From OE-Core rev: bbd9524256461f1bcafd4103edd575e668de76f8)

Signed-off-by: Damien Riegel <damien.riegel@savoirfairelinux.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-27 13:55:22 +01:00
Otavio Salvador
1ad7165f7e util-linux: Enable unshare utility
It allows to run program with some namespaces unshared from parent.

(From OE-Core rev: 68e0080a924654245f04cf92c2579abd9e5bc658)

Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-27 13:55:22 +01:00
Armin Kuster
1e36258c5a nss: update to 3.37.1
remove Fix-compilation-for-X32.patch as a solution simular is included in update.

notable changes:
The TLS 1.3 implementation was updated to Draft 28.
The CA certificates list was updated to version 2.24.

refresh patches
fix 32 bit build error nss bug: https://bugzilla.mozilla.org/show_bug.cgi?format=default&id=1459739

(From OE-Core rev: 1ed072515f2a23de75ee56b86d8607c85b42605c)

Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-27 13:55:21 +01:00
Khem Raj
0507645e3b findutils: Refresh patches with devtool
We get fuzz warnings when applying these patches and devtool
reports it

(From OE-Core rev: cb3c0343becc8bb2ebf4e9c12782c509a3d7754d)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-27 13:55:21 +01:00
Zheng Ruoqin
f7b03cebfe update-rc.d: Add nativesdk
Add nativesdk for update-rc.d.

(From OE-Core rev: 94793d08b0087b7f579b2ca5adae3343864e5f66)

Signed-off-by: Zheng Ruoqin <zhengrq.fnst@cn.fujitsu.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-27 13:55:21 +01:00
Zheng Ruoqin
bca21299ab createrepo-c: Add nativesdk
Add nativesdk for createrepo-c.

(From OE-Core rev: 802c4029f90cee3027b6bc62c5201e8b29f02557)

Signed-off-by: Zheng Ruoqin <zhengrq.fnst@cn.fujitsu.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-27 13:55:21 +01:00
Zheng Ruoqin
c8a038a3e6 libnewt-python: Add nativesdk
Add nativesdk for libnewt-python.

(From OE-Core rev: b992be195821e110691434e4a743b753bc04b3c4)

Signed-off-by: Zheng Ruoqin <zhengrq.fnst@cn.fujitsu.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-27 13:55:21 +01:00
Zheng Ruoqin
3a71b8396a libnewt: Add nativesdk
Add nativesdk for libnewt.

(From OE-Core rev: 6414d23cd23fc6ed2d31a7b55fce1be82a09ae67)

Signed-off-by: Zheng Ruoqin <zhengrq.fnst@cn.fujitsu.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-27 13:55:21 +01:00
Zheng Ruoqin
0ad86147b9 slang: add nativesdk
Add nativesdk for slang.

(From OE-Core rev: 458c835fe05279467ab781aab811498ab80f6904)

Signed-off-by: Zheng Ruoqin <zhengrq.fnst@cn.fujitsu.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-27 13:55:21 +01:00
Christopher Larson
7cb64b9fe1 rng-tools: start earlier in the boot process
Entropy is needed earlier in the boot process in some cases, for example
connman can require it, and rgd doesn't require much, so move it earlier
in the boot process, 03 for sysvinit, and before sysinit for systemd.

(From OE-Core rev: 31c9b42aaeef3ad66e05e51b8209e87f2a22f091)

Signed-off-by: Christopher Larson <chris_larson@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-27 13:55:21 +01:00
Christopher Larson
a060ff2871 rng-tools: drop unnecessary INHIBIT_UPDATERCD_BBCLASS
This was added as the recipe didn't inherit systemd, but it does inherit
systemd now.

(From OE-Core rev: c70b70f045a5ccf62b19060f3438b38d9914e9a2)

Signed-off-by: Christopher Larson <chris_larson@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-27 13:55:21 +01:00
Christopher Larson
3cda7c73a9 dmidecode: correct docdir
Without this, the package clutters up the root of /usr/share/doc.

(From OE-Core rev: af4f0d44acef328245dfe1bd102bb5e61293ee2d)

Signed-off-by: Christopher Larson <chris_larson@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-27 13:55:21 +01:00
Christopher Larson
653c96d8e1 ovmf: set PARALLEL_MAKE for target as well
This can fail for target, not just native.

(From OE-Core rev: 747c7dc8702d2241475894876d06a2f1f2b29fed)

Signed-off-by: Christopher Larson <chris_larson@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-27 13:55:21 +01:00
Christopher Larson
6ba3abd76f console-tools: add missing flex/bison deps
(From OE-Core rev: 369bbf393438ae4a76ab0d1817463c6f735816ea)

Signed-off-by: Christopher Larson <chris_larson@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-27 13:55:21 +01:00
Christopher Larson
f4c174a580 pcmciautils: depend on bison-native
pcmciautils needs yacc as well as lex.

(From OE-Core rev: dd5208ae22d47504443785daece4bff6331d8904)

Signed-off-by: Christopher Larson <chris_larson@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-27 13:55:21 +01:00
Christopher Larson
2fe9a05666 oe.scriptutils.run_editor: ditch the error-prone argument quoting
Rather than trying to construct a string by quoting the files in an
error-prone way, parse $EDITOR to pass a list to subprocess rather than
a string.

(From OE-Core rev: c9fdf3d046606a0becb2e6b566a481c483b9021a)

Signed-off-by: Christopher Larson <chris_larson@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-27 13:55:21 +01:00
Ross Burton
ea4318b78e oeqa: add Git mirror test
Add an automated test to exercise that fetching a git: recipe...
1) works over git without mirrors
2) fails without git connectivity or mirrors
3) works without git connectivity but with a mirror

(2) is done by setting GIT_PROXY_COMMAND to 'false' which should break any git
network operations.

[ YOCTO #12805 ]

(From OE-Core rev: 13269dfbbc62faef32595343dc78250fdb2a2946)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-27 13:55:21 +01:00
He Zhe
c568e89c3d cryptodev: Fix build errors with v4.17+
Backport from upstream to update internal syscall function usage.
https://github.com/cryptodev-linux/cryptodev-linux
f60aa08c63fc02780554a0a12180a478ca27d49f

(From OE-Core rev: 270a1e9bcf26a43f5cbdc5b901c4c6f79495311d)

Signed-off-by: He Zhe <zhe.he@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-27 13:55:21 +01:00
Maxin B. John
b5d848199e piglit: upgrade to latest revision
(From OE-Core rev: 15e876ada73fe8e98284d14dec166007b5767f19)

Signed-off-by: Maxin B. John <maxin.john@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-27 13:55:21 +01:00
Chen Qi
de8563dcec avahi: fix error at boot time for avahi-daemon.service
The following error messages appear now and then at boot time.

  avahi-daemon/chroot.c: open() failed: No such file or directory
  Failed to open /etc/resolv.conf: Invalid argument

The problem is about /etc/resolv.conf. In Yocto's systemd based
systems, it's a symlink to /etc/resolv-conf.systemd which in turn
is a symlink to /run/systemd/resolve/resolv.conf. The systemd-resolved
service handles creation of /run/systemd/resolve/resolv.conf file.

So if avahi-daemon is started before systemd-resolved, the error messages
appear.

Fix this problem by making avahi-daemon start after systemd-resolved.

(From OE-Core rev: 647db1d9eb65b225ffbb6953f796232026bfa935)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-27 13:55:21 +01:00
Chen Qi
2b152d3658 avahi: reorganize codes
This patch does nothing but reorganizing codes.

avahi.inc is shared by avahi and avahi-ui recipes. Move common things
into it, and move uncommon things out of it.

(From OE-Core rev: 75529d384bfeaf52befccb892cf41f22dc02668b)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-27 13:55:21 +01:00
Maxin B. John
19c22fc08a libepoxy: upgrade 1.5.0 -> 1.5.2
Remove upstreamed patch:
        no-tests.patch

(From OE-Core rev: ec9fcdf14d3e2aefc5af1e53a69f056db6ea83f5)

Signed-off-by: Maxin B. John <maxin.john@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-27 13:55:21 +01:00
Maxin B. John
42dde16a5c ofono: upgrade 1.23 -> 1.24
(From OE-Core rev: 84980150ff4a2c27acd1f27123f200e03bee8c4b)

Signed-off-by: Maxin B. John <maxin.john@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-27 13:55:21 +01:00
Anders Roxell
851c5c197f iproute2: upgrade to release 4.17
(From OE-Core rev: c93dc7dd18a752d9523e11c6c4dce1908b5970b4)

Signed-off-by: Anders Roxell <anders.roxell@linaro.org>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-27 13:55:21 +01:00
Lei Maohui
caed345be3 nss: Fix build error for aarch64be.
(From OE-Core rev: 2d9a8a5539342faa1827f4902b1095a9f3448c66)

Signed-off-by: Lei Maohui <leimaohui@cn.fujitsu.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-27 13:55:21 +01:00
Denys Dmytriyenko
8ea511ec30 mtd-utils: upgrade 2.0.1 -> 2.0.2
(From OE-Core rev: b2cd021887e12d9f5b8ba48d9be3c2f2119c8e2a)

Signed-off-by: Denys Dmytriyenko <denys@ti.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-27 13:55:21 +01:00
Hannu Lounento
8c81752681 systemd: remove the group 'lock'
The upstream commit 61f32bff6130a44d077886d38cff89ad161bf177 included in
the release v229 removed the use of the group:

    commit 61f32bff6130a44d077886d38cff89ad161bf177
    Author: Martin Pitt <martin.pitt@ubuntu.com>
    Date:   Mon Feb 1 12:09:34 2016 +0100

        tmpfiles: drop /run/lock/lockdev

        Hardly any software uses that any more, and better locking mechanisms like
        flock() have been available for many years.

        Also drop the corresponding "lock" group from sysusers.d/basic.conf.in, as
        nothing else is using this.

    [...]
    diff --git a/sysusers.d/basic.conf.in b/sysusers.d/basic.conf.in
    index 823d6cb20..b2dc5ebd4 100644
    --- a/sysusers.d/basic.conf.in
    +++ b/sysusers.d/basic.conf.in
    @@ -19,7 +19,6 @@ g wheel   -     -            -

     # Access to certain kernel and userspace facilities
     g kmem    -     -            -
    -g lock    -     -            -
     g tty     @TTY_GID@     -            -
     g utmp    -     -            -
    [...]

The upstream documentation doc/UIDS-GIDS.md says that basic.conf.in is "the
precise list of the currently defined groups":

    ## Special `systemd` GIDs

    `systemd` defines no special UIDs beyond what Linux already defines (see
    above). However, it does define some special group/GID assignments, which are
    primarily used for `systemd-udevd`'s device management. The precise list of the
    currently defined groups is found in this `sysusers.d` snippet:
    [basic.conf](https://raw.githubusercontent.com/systemd/systemd/master/sysusers.d/basic.conf.in)

    It's strongly recommended that downstream distributions include these groups in
    their default group databases.

Removing the creation of the group also avoids the need to define a GID
for it when using static ids.

(From OE-Core rev: da3659155cd1825a4a8d3d7c5288b4273714de15)

Signed-off-by: Hannu Lounento <hannu.lounento@vaisala.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-27 13:55:21 +01:00
Ross Burton
eb45228a00 packagegroup-full-cmdline: remove popt
popt is a library, so it makes no sense for this to be in a "command line"
packagegroup.

(From OE-Core rev: 4af90876914e5f2ccc5b7f833cd43c239c2dac55)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-27 13:55:21 +01:00
Ross Burton
e7fba1e655 lsbinitscripts: remove spurious build dependencies
A recipe that doesn't configure, doesn't compile, and just ships a single shell
script certainly does not need to build depend on popt and glib-2.0.

(From OE-Core rev: 8a771f22980f766b71f3ea0825568fc5c669e444)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-27 13:55:21 +01:00
Ross Burton
e4628cd1dc minicom: change SRC_URI to use Debian mirrors
Alioth is dead and the minicom project on Salsa (the replacement for Alioth)
doesn't actually have any files in, so just use the Debian mirror instead.

(From OE-Core rev: b0338efcdabeec79c568c74b6888d7d523e8e9dc)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-27 13:55:21 +01:00
Ross Burton
a947ebce96 mirrors: add Debian snapshot mirror for 2018
Add a Debian snapshot mirror from 2018 (specifically, 10th March, the date 9.4
was released) to DEBIAN_MIRRORS.

(From OE-Core rev: f3f394913b4e4a7c601ad1158faaf8b9d493e1c7)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-27 13:55:21 +01:00
Ross Burton
9aba67124f shadow: update SRC_URI now Alioth is down
Alioth is dead so we can't use it for SRC_URI anymore.  There is a shadow
repository on GitHub which is the new upstream, but for some reason it is
missing the 4.2.1 tag and tarball that we use.  Also 4.2.1 was never uploaded
into Debian itself, so we can't use their mirror network either.

For now point SRC_URI at the Yocto Project source mirror and set
UPSTREAM_CHECK_URI so that we get nagged to upgrade to 4.6.

(From OE-Core rev: b3e246fef166030f327b5a852718ea907ada1759)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-27 13:55:21 +01:00
Ross Burton
40e0f186b9 chrpath: Alioth is dead, use DEBIAN_MIRROR
The previous host of chrpath, Alioth, is dead.  chrpath hasn't yet moved to
Salsa, so download the tarball from the Debian mirrors.

(From OE-Core rev: a8a2c5ec891286a1e7fd5ebdd33565f9ae3965c2)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-27 13:55:21 +01:00
Oleksandr Kravchuk
fce36d3b94 iso-codes: update to 3.79 and fix SRC_URI
Updated package to version 3.79.

The original FTP server, alioth.debian.org has been permanently taken
down by the Debian Project and replaced with salsa.debian.org.

Source: https://wiki.debian.org/Alioth

Also added HOMEPAGE, and BUGTRACKER.

[ tweak URL to work with checkpkg - RB ]

(From OE-Core rev: ee48cb68e5d91ba108cccdabce003233290ba816)

Signed-off-by: Oleksandr Kravchuk <dev@sashko.rv.ua>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-27 13:55:21 +01:00
Jeremy Puhlman
5269e832c2 atk: Correct multilib conflict in header.
(From OE-Core rev: 088814ef79015d9df0c8c8bc61219507cfe52ad5)

Signed-off-by: Jeremy Puhlman <jpuhlman@mvista.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-27 13:55:21 +01:00
Jeremy Puhlman
e1ea678e0b qemu: CVE-2018-11806 slirp heap buffer overflow
(From OE-Core rev: c03cef42e079e4ed3d1e4f401722778157158bd6)

Signed-off-by: Jeremy Puhlman <jpuhlman@mvista.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-27 13:55:21 +01:00
Ross Burton
faa46ac06b trace-cmd: remove
Perf is superior in most ways and is preferred.

(From OE-Core rev: bcdaa93dc70411da8876364ae67d0bf2456a3611)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-27 13:55:21 +01:00
Maxin B. John
bfd866d47f libunistring: upgrade to 0.9.10
License-Update: Checksum changed due to updation in documentation. There
are no changes in the license terms.

(From OE-Core rev: e8dfe9799e473e0ba911a0670aa23e8e8d700223)

Signed-off-by: Maxin B. John <maxin.john@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-27 13:55:21 +01:00
Alejandro Enedino Hernandez Samaniego
85367c093e maintainers: Assign ownership of newlib and libgloss to Alejandro Hernandez
(From OE-Core rev: e38e56e28f2090e2b8013546f4dd76da8d59f766)

Signed-off-by: Alejandro Enedino Hernandez Samaniego <alejandr@xilinx.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-27 12:22:18 +01:00
Kevin Hao
a5d1288804 meta-yocto-bsp: Workaround the Ethernet malfunction on edgerouter when building with gcc8
Update the kernel for v4.14 and v4.15 to include a workaround of
the Ethernet malfunction on edgerouter board when building with gcc8.

(From meta-yocto rev: a503919e72fad9556ab0f51a78b92ef3e0075e97)

Signed-off-by: Kevin Hao <kexin.hao@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-21 09:59:26 +01:00
He Zhe
93c8c17d58 meta-yocto-bsp: mpc8315e-rdb: Change kernel provider assignment to a weaker one
Currently mpc8315e-rdb.conf comes after local.conf during parsing. We should
give local.conf a chance to overwrite the kernel provider assignment, like
other BSPs.

(From meta-yocto rev: c5c70afb0306d96ae63d7a67d658524ed6d91e88)

Signed-off-by: He Zhe <zhe.he@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-21 09:34:40 +01:00
He Zhe
b2bdf63fa6 meta-yocto-bsp: Let yocto BSPs be able to build with linux-yocto-dev
(From meta-yocto rev: 28f141bc0015664c05c2cd33155fefd58def3b59)

Signed-off-by: He Zhe <zhe.he@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-21 09:34:40 +01:00
Nikolai Merinov
070a06ec53 bitbake: fetch2: Use correct check in parameter handling in uri_replace()
If uri_find contain parameters then original URI parameters should
be checked against parameters from uri_find instead of parameters
from uri_replace.

(Bitbake rev: 8efa7826a61501589afa33eb698c0ab3a622bf2e)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-21 09:34:40 +01:00
Khem Raj
d3139c29e3 gcc-8: Enable fp arch extention when fpu is available
This is especially needed when defaulting to hard-float ABI
Fixes errors e.g.
cc1: error: -mfloat-abi=hard: selected processor lacks an FPU

Fixes [YOCTO #12795]

(From OE-Core rev: 85981cbbf0ce48a6d82bc39248afa9540ca858d8)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Cc: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-21 09:34:40 +01:00
Richard Purdie
6cf9204d3b oe/types: Allow boolean to accept an existing boolean
Exception: TypeError: boolean accepts a string, not '<class 'bool'>

is a bit annoying if you pass in True/False. Tweak the function
to make it forgive that situation.

(From OE-Core rev: 147f5a665fe5073027d92e4acac631f15f08f79f)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-21 09:34:40 +01:00
Ross Burton
160477e043 maintainers: update Intel owners
(From OE-Core rev: b503b1fe9a71f70726c92f46a71fc49615256fce)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-21 09:34:40 +01:00
Ross Burton
2393054565 mesa: add lost Upstream-Status
(From OE-Core rev: 4972faf1bf20f07a1c1f608bc421c6fd05651594)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-21 09:34:40 +01:00
Richard Purdie
1bbcc5931e bitbake.conf/testimage: Add in compatiblity hacks
The testimage changes break the autobuilder. The plan is to revert these hacks
but due to various changes happening with the autobuilder, we need these for now
to keep things working until we can move to the new autobuilder codebase.

(From OE-Core rev: 309a02931779f32d1139cc1169a039cbe4638706)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-21 09:34:40 +01:00
Richard Purdie
e8a8359641 subversion: Update HOMEPAGE
(From OE-Core rev: 5da1b9c29afc249d5ff7e9514bf996227dc28c7a)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-21 09:34:40 +01:00
Ross Burton
674cd5111b mktemp: remove
Both busybox and coreutils provide mktemp, and the only difference between those
(and standalone mktemp) is that coreutils supports --suffix.

Also mktemp.org has disappeared, so it's fair to assume that the standalone
mktemp (last released in 2010) is dead.

(From OE-Core rev: 59a825ca1e08a7e47fcbc807606103d463280e6c)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-21 09:34:40 +01:00
Otavio Salvador
2e42ded224 mesa: Update 18.1.1 -> 18.1.2
This includes bug fixes for 18.1.x series. For list of changes check:

https://www.mesa3d.org/relnotes/18.1.2.html

(From OE-Core rev: 0cfc7488d67346bdc3975767366220e65f8de7d7)

Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-21 09:34:40 +01:00
Otavio Salvador
e3bec3951b linux-firmware: upgrade to d114732 revision
Following changes are applied:

d114732 Merge branch 'for-upstreaming-v1.7.2-vsw' of https://github.com/felix-cavium/linux-firmware
fe4a9d4 brcm: update firmware for bcm4356 pcie
a292181 brcm: update firmware for bcm4354 sdio
be1c535 brcm: update firmware for bcm43362 sdio
5ac5ad5 brcm: update firmware for bcm43340 sdio
ec734a3 brcm: update firmware for bcm43430 sdio
ba51e86 Update Cypress license termination clause
1fa9ce3 amdgpu: update vega10 VCE firmware to version 55.3
9489f55 linux-firmware: Update firmware patch for Intel Bluetooth 7265 (D0)
6be4747 linux-firmware:Update firmware patch for Intel Bluetooth 7265 (D1)
4949d88 Merge branch 'master' of https://github.com/vgarodia/linux-firmware
7602644 qcom: add venus firmware files for v5.2
7518922 Update AMD cpu microcode for family 15h
3f8243c linux-firmware: Update firmware patch for Intel Bluetooth 8260
2c4f7c1 qed: Add firmware 8.37.2.0
0e193ca linux-firmware: liquidio: update vswitch firmware to v1.7.2
2a9b2cf Merge branch 'for-upstreaming-v1.7.2' of https://github.com/felix-cavium/linux-firmware
112d300 linux-firmware: Update firmware file for Intel Bluetooth,8265
629a5e0 linux-firmware: Update firmware patch for Intel Bluetooth 7260 (B5/B6)
7035335 linux-firmware: Update firmware patch for Intel Bluetooth 7260 (B3/B4)
c84bd66 linux-firmware: Update firmware file for Intel Bluetooth,9260
897330f linux-firmware:Update firmware patch for Intel Bluetooth 7265 (D1)
e94352c linux-firmware: Update firmware file for Intel Bluetooth,9560
7710151 linux-firmware: Update AMD cpu microcode
be1e8c5 Merge commit 'a6327c5a5f74c3d11da76d0dcb51c6f5db7f8a35' of https://github.com/Netronome/linux-firmware
86d39f8 amdgpu: sync up polaris12 firmware with 18.10 release
b5320a9 amdgpu: sync up polaris11 firmware with 18.10 release
152c924 amdgpu: sync up polaris10 firmware with 18.10 release
0d672f7 amdgpu: sync up vega10 firmware with 18.10 release
30447b1 amdgpu: sync up carrizo firmware with 18.10 release
dd6f936 amdgpu: sync up topaz firmware with 18.10 release
de9c175 amdgpu: sync up stoney firmware with 18.10 release
5e22609 amdgpu: sync up tonga firmware with 18.10 release
499042e amdgpu: sync up fiji firmware with 18.10 release
1db3eec amdgpu: sync up raven firmware with 18.10 release
a6327c5 nfp: Add symlink for Agilio CX 1x40GbE flower firmware
8b78780 nfp: update Agilio SmartNIC flower firmware to rev AOTC-2.9.A.16
d3b6941 linux-firmware: liquidio: update firmware to v1.7.2

License-Update: copyright years updated and filelist updated.
(From OE-Core rev: 6be8744d1b8ee35eb47acd517cfa29b2a7f455d5)

Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-21 09:34:40 +01:00
Zhixiong Chi
ac6f587692 findutils: make -delete honour the -ignore_readdir_race option
the '-delete' action no longer complains about disappeared files
when the '-ignore_readdir_race' option is given, too. That action
will also returns true in such a case now.

(From OE-Core rev: f0808ee03a244be1fb485e0046983a05193b23b6)

Signed-off-by: Zhixiong Chi <zhixiong.chi@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-21 09:34:40 +01:00
Armin Kuster
4623554463 xkbcomp: update to 1.4.2
(From OE-Core rev: ed26f8ffaf47dccd6fa0f9f1e0421b856e3555f3)

Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-21 09:34:40 +01:00
Armin Kuster
dde8c03212 xf86-video-vmware: update to 13.3.0
(From OE-Core rev: cdc00f912f3af54d14f3225801bde7b5d0982bb3)

Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-21 09:34:40 +01:00
Armin Kuster
e6956ca909 xf86-input-evdev: update 2.10.6
(From OE-Core rev: 61f72d40e44ad7f4629623eb4e0f2bbfe0534d53)

Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-21 09:34:40 +01:00
Armin Kuster
b1b6677fb4 xkeyboard-config: update to 2.24
(From OE-Core rev: 64a3e9c783bba5e26994a4d5c4a753ee4eb0a142)

Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-21 09:34:40 +01:00
Richard Purdie
dc4d7bb8f7 subversion: 1.9.7 -> 1.10.0
License changed since licenses for the bundled linenoise and lz4 codebases
were added. We don't build either of them. Add MIT since utf8proc is MIT
licensed.

Configure to use the internal utf8proc codebase since we have no copy of that in
OE-Core, nor any need to add one.

Add a dependency on lz4 which is now required rather than using the internal
codebase within subversion.

Drop a patch merged upstream.

(From OE-Core rev: 5bb47984af79fe2e8c3ba5bc6895741131f03bcd)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-21 09:34:40 +01:00
Richard Purdie
5f12e1841a lttng-modules: upgrade 2.10.5 -> 2.10.6
(From OE-Core rev: 3ba2701c2cb837c4c8590604021c4a6c50bf894b)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-21 09:34:40 +01:00
Richard Purdie
fae0a9a439 image/testimage: Rework auto image test execution
The TEST_IMAGE interface has never particularly worked and image testing currently
gets configured manually.

This reworks the interface to better serve the needs of its users, replacing it
with TESTIMAGE_AUTO.

This does away with the need for the separate class due to better bitbake APIs for
changing tasks.

TESTIMAGE_AUTO will automatically boot under qemu any image that is built. It
also adds in dependencies so that any SDK for which testing is requested will
automatically be built first.

The code in bitbake.conf was error prone (e.g. testsdk wasn't considered), this
improves it to standardise on IMAGE_CLASSES as the standard configuration mechanism.

(From OE-Core rev: b34d44f3dfea8254826a46701a4fe3769a900434)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-21 09:34:40 +01:00
Richard Purdie
83d791089f image/image-live: Improve handling of live/iso/hddimg types (drop NOISO/NOHDD)
The logic can be improved and the historical NOISO/NOHDD variables
moved into the class and out of common code.

The variables are also then removed in favour of directly controlling
the behaviour from IMAGE_FSTYPES in line with all the other image types.

(From OE-Core rev: a052caed563a09a01f5a3ea1f0477f379c05bee0)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-21 09:34:40 +01:00
Richard Purdie
25a2244265 image: Combine all the class handling code into a single section
Right now the code handling class inherits is spread all over and
its hard to get an idea of what is happening overall. Combine all
the code together to make it clearer. There shoould be no functionality
changes.

(From OE-Core rev: 9b6cda7ff443eebfc5a5a8c9442c93a881807dab)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-21 09:34:40 +01:00
Richard Purdie
52b11deeb9 rm_work: Simplify looping code
The current looping structure is confusing, simplify it a bit
to improve readability. Should be no functionality changes.

(From OE-Core rev: 498065b51b205b43d7dae1008014eba85a8f138c)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-21 09:34:40 +01:00
Richard Purdie
79f6fa34ae rm_work: Improve code comments
This function is a little obtuse, add more comments about what its
doing and why. Also combine some of the statements where possible
to improve clarity.

(From OE-Core rev: 3e0c22e9bd9757cd458a073a3f043a48184d7bab)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-21 09:34:40 +01:00
Richard Purdie
3b78eebd09 rm_work: The do_setscene task has not existed for years
Once, there were do_setscene tasks but this hasn't been the case for years,
drop the old code.

(From OE-Core rev: b13a691f1cfc0d68a0f94c343fa3a1b987dbe117)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-21 09:34:40 +01:00
Richard Purdie
80443c42fd rm_work: Stop appending _setscene to do_image_complete_setscene stamps
This is a reworked version of the issue which 5479654eea
attempted to fix.

"""
Each time I build my image after the first, I end up with a
do_image_complete_setscene stamp file with an extra _setscene appended to
the name. Eventually, the filenames end up being so long that mv complains
and the build fails.

It looks like this behaviour was introduced when the special handling was
added for do_image_complete in 2ff9d40dc88d43567472218cf3d3faf414398c71.
"""

Instead of the original approach which broke do_package_setscene, add
an entry to explictly stop the stacking _setscene pieces on do_image_complete.

It's not straightforward to just move *do_image_complete* after the
*_setscene* pattern because do_image_complete stamps would then match
do_image*.

(From OE-Core rev: 0f4e734e0ef40076351ed7ff795aac36197e4949)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-21 09:34:40 +01:00
Richard Purdie
2869b56efa Revert "rm_work: Stop appending _setscene to do_image_complete_setscene stamps"
Whilst this fixes the do_image_complete_setscene append problem, it creates a
new problem since the code can no longer reach the *do_package_setscene.*
code block below it. This breaks builds as per [YOCTO #12765]. Revert this
change in search of a better fix.

This reverts commit 5479654eea.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-21 09:34:40 +01:00
Ross Burton
dbe48de0a5 xf86-video-intel: update dependencies for the tools
(From OE-Core rev: 76a701e71029fb3685f2939ee9066e7f8653f0c2)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-21 09:34:40 +01:00
Ross Burton
33d336626d xf86-video-intel: disable DRI 1, enable DRI 3
DRI 1 is only needed for UMS on i810[1], and modern X servers (1.20 onwards)
don't support DRI 1, so disable DRI 1.

However, DRI 3 isn't new and unreliable anymore, so enable support for it.

Also, now that the *proto packages are all part of xorgproto which is a required
DEPENDS, we don't need to mention it over and over.

[1] https://cgit.freedesktop.org/xorg/driver/xf86-video-intel/commit/?id=359477215092ac1b602ad1e2f17a28963d9224c2

(From OE-Core rev: 329364b3b33b1d769bfa6917a51131c64ef77ddf)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-21 09:34:40 +01:00
Ross Burton
f8df11d290 xf86-video-intel: patch cleanup
always_include_xorg_server.h.patch is merged upstream, so drop it.

disable-x11-dri3.patch was purely to solve determinism issues with the shared sysroot, which
we don't have anymore.

Also remove redundant tarball checksums as this recipe fetches from git.

(From OE-Core rev: a40c5dcdd3f5b05d1a1bb348753a1d9101ef5152)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-21 09:34:40 +01:00
Ross Burton
55dfcf5808 xf86-video-omapfb: remove
We were shipping the Debian fork of the original code, but that has disappeared
now that Alioth is down.  The driver didn't provide anything better than the
kernel and xserver's modesetting driver, so remove it.

(From OE-Core rev: 0e0b5e8abff3b0c30676bcfb76c60388ad2cfafe)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-21 09:34:40 +01:00
Ross Burton
ebdaf83e01 xf86-video-omap: remove
This driver is dead upstream and doesn't appear to provide any advantage over
upstream kernel drivers and xserver's modesetting support.

(From OE-Core rev: 61611dec98e5b13e95bb42500d6b261cdb95feb1)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-21 09:34:40 +01:00
Scott Rifenbark
d05a268c50 bitbake: bitbake-user-manual: Added "number_threads" varflag
You can now limit on a task-specific basis the number of threads
a task will use.  This is useful for machines that have high
numbers of cores and need to be rate-limited due to various
resource constraints.

(Bitbake rev: 4937ed392fdc4442dd91f644f329dda29f27242c)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-19 17:09:17 +01:00
Khem Raj
53dfa673d7 musl: Upgrade to latest
Changelog:
https://git.musl-libc.org/cgit/musl/log/?qt=range&q=941bd884cc0221d051840ce6d21650339e711863..d5e55ba3320c30310ca1d8938925d5424a652422

(From OE-Core rev: b34e86b4ee13d53f09d558e613d5b66c845edde6)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-18 11:07:58 +01:00
Otavio Salvador
b77d478b3d mesa: Update 18.0.2 -> 18.1.1
This includes all bugfixes of 18.0.x series and major new
features. For list of changes check:

https://www.mesa3d.org/relnotes/18.1.0.html
https://www.mesa3d.org/relnotes/18.1.1.html

(From OE-Core rev: 8803a6e31a4b64eb9d3c146567375c98972074df)

Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-18 11:07:58 +01:00
Chen Qi
559f4951e2 runqemu-ifdown: ensure to clean up TAP
In runqemu-ifup, ip command is used to add TAP; in runqemu-ifdown,
we should do the reversed logic, using ip command to delete TAP, to
make sure TAP is cleaned up by ourselves.

I can see that in runqemu-ifdown script, 'tunctl -d' and 'iptables'
commands are used to deal with TAP, but these two commands cannot
make sure that the TAP is cleaned up.

runqemu-ifup uses 'ip' to set up TAP, we really need to do the opposite
in runqemu-ifdown.

(From OE-Core rev: 322e41de7f4fb21315bf75f1038314c31ac4754b)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-18 11:07:58 +01:00
Chen Qi
27061a274f runqemu: add SIGTERM handler to make sure things are cleaned up
Add SIGTERM handler so that runqemu could clean things up correctly
when receving such signal.

This problem was originally observed when running testimage. On
some hosts, after running testimage task, the user has to manually
operate on the tap interface (e.g. `sudo ip link del tap0') in order
for the next runqemu command to launch successfully.

The problem is about runqemu, SIGTERM and network manager on the host.

In testimage task, the runqemu process will receive SIGTERM. In such
situation, its cleanup() function is not run, resulting in tap interface
not cleaned up. On some hosts, the network manager will bring down the
tap interface automatically, thus this problem. I saw this problem on
Fedora21.

I think we'd better just clean up the tap interface ourselves.

So this patch adds to runqemu a SIGTERM handler, in which the actual
qemu process is terminated and other things cleaned up.

(From OE-Core rev: 02709d4709c56f9b9095e3555da35b659b03a8a3)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-18 11:07:58 +01:00
Anuj Mittal
ffeb85ab80 bitbake-layers/create: add LAYERSERIES_COMPAT
Derive the value for template layer.conf from core layer and add
dependendency on it too.

Fixes [YOCTO #12767]

(From OE-Core rev: 461c305078c40fca8b5382e393e3e8513d4abfa4)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-18 11:07:58 +01:00
Alexander Kanavin
4699d29ac2 package_manager.py: rework postinst_intercept failures
Previously a warning was printed regardless of context and nature
of the failure, and because it was only a warning, it was mostly ignored.

Now, the following is considered when a failure happens:
1) whether we are installing packages into a target image, or populating
a SDK with host or target packages.
2) whether the failure was due to qemu not supporting the target machine.

Accordingly, warnings, notes, and failures are printed, and postponing
to first boot happens if possible.

(From OE-Core rev: a335e78672b1e1ae3ea6427f6a805218e513bb52)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-18 11:07:58 +01:00
Alexander Kanavin
bdfca89b80 image.bbclass, populate_sdk_base.bbclass: make all variants of qemuwrapper-cross available in sysroots
The variants are needed in particular when executing postinst_intercepts as
those may require running binaries built for different architectures and
against different sets of library paths, when multilib is in use (or nativesdk host
packages are installed), so a single global variant of the script was not working.

I do understand expanding PATH and DEPENDS in this manner is hackish, however
every other approach I could think of is worse.

(From OE-Core rev: 2f31eecc40ea4d0865aa28d65a0ba7d5a629393a)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-18 11:07:58 +01:00
Alexander Kanavin
87631af640 qemuwrapper-cross: enable multilib and nativesdk variants of the script
Previously only one global variant of the script was created,
which caused numerous issues:

1) multilib was not properly supported due to multilib variants each
needing their own version of the qemu binary and library paths to be set
2) nativesdk was not properly supported for the same reason

This patch also moves setting LD_LIBRARY_PATH directly into the
recipe, as passing it down from other recipes did not work when
said recipes were allarch, and adjusts calls to qemuwrapper from
postinst-intercepts, so that its correct variant is selected.

Also, the various qemu fallbacks in qemuwrapper script are all removed,
as they are no longer necessary.

(From OE-Core rev: d10fd6ae3fe46290c6e3a5250878966d9f12ca3f)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-18 11:07:58 +01:00
Alexander Kanavin
e67551e80e udev: only run qemu from postinst scripts if qemu usermode is supported
Otherwise, there would be a failure at image creation time; avoid
that by postponing to first boot explicitly.

(From OE-Core rev: f3247720dc4b1c49e8fad734e20b17ba55843b97)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-18 11:07:58 +01:00
Alexander Kanavin
4f3b7477a3 gtk-immodules-cache.bbclass: convert cache creation to postinst_intercept mechanism
This has the following benefits:
- consistent with how the other caches are created into target rootfs
- only runs once per package manager transaction, instead of once per every immodule package
- correctly postpones to first boot if qemu is not working; from postinst itself
this would've required special arrangements to avoid what is now a do_rootfs failure.

(From OE-Core rev: cca3c084b6c9bf600d7306e3fe12c4f236b78656)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-18 11:07:58 +01:00
Andre McCurdy
76b414c3cd gcc-target.inc: configure gcc for armv7ve targets to default to armv7ve
Originally these ARM specific EXTRA_OECONF options were applied to
both gcc for the target and gcc-cross. That lead to a compromise
being made: gcc on the target was configured to default to an ARM
architecture which was at least compatible with the target (but not
necessarily an exact match) and gcc-cross was configured default to
armv7a for both armv7a and armv7ve (to avoid gcc-cross rebuilds when
switching between the two).

However, when these ARM specific EXTRA_OECONF options were moved from
gcc-configure-common.inc into gcc-target.inc (ie they were made to
apply only to gcc on the target) the compromise no longer needed to
be made.

  http://git.openembedded.org/openembedded-core/commit/?id=851937dde81de2a9ef54c5f19a78fb12fb82afd4

(From OE-Core rev: 3c368282741e9de1f96988e127b86a6a01b6a26f)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-18 11:07:58 +01:00
Sascha Silbe
9a855aa403 gobject-introspection: relocate typelib repository for native builds
gobject-introspection hard-codes the install path in the search path
for the typelib repository, pretty much the same way glib behaves for
the gio modules directory. Like for glib, this causes problems when
gobject-introspection-native is restored from sstate with a different
build directory.

Based on the glib fix by Ross Burton <ross.burton@intel.com>.

(From OE-Core rev: e4cee788056133ce0a49bc96e54399bdd7825aa3)

Signed-off-by: Sascha Silbe <x-yo17@se-silbe.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-18 11:07:58 +01:00
Stefan Agner
261ee18968 rootfs.py: for dpkg/opkg, don't install postinsts if package management is present
If package management is present opkg/dpkg will bring the original
copy of the postinsts scripts with the metadata and will be able to
handle postinsts just fine. In fact, it is preferred to let package
management handle the postinsts scripts in this case since it will
keep the package managers database up-to-date too. The run-postinsts
scripts will make sure the package manager gets invoked instead of
the scripts directly.

Note: Before commit 5aae19959a44 ("rootfs.py: Change logic to
unistall packages") rootfs.py did not install /etc/$pm-postinsts
too. It is not clear whether that change was intentionally or just
a bug. This commit fixes/reverts that aspect of the commit.

(From OE-Core rev: 4b571c59e3e6bd8b22a63f547a95757aeba5b638)

Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-18 11:07:58 +01:00
Stefan Agner
a7d0346825 run-postinsts: for dpkg/opkg, do not rely on /etc/*-postinsts
Start opkg/dpkg as soon as the respective package managers status
file is present, no matter whether /etc/$pm-postinsts exists. This
decouples the implicit link between postinsts scripts in /etc and
the package manager: Currently the package manager is only started
if those scripts are present, although the package manager does not
use those scripts at all! Package managers install their own set of
postinst scripts.

The behavior when using rpm packages stays the same.

Note that using the package managers capability to execute postinst
scripts is preferred for good reasons: It makes sure that the
package managers database reflects that the packages have been
completely installed and configured.

This change allows to drop installation of the postinsts scripts
when package management is present. This will be done in a separate
change.

Note: Before commit 5aae19959a44 ("rootfs.py: Change logic to
unistall packages") rootfs.py did not install /etc/$pm-postinsts
when package management is installed! The change caused YOCTO #8235
which lead to the behavior change of run-postinsts in first place.

(From OE-Core rev: 1af421fcf05457223bf271f3951599b6c150cdff)

Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-18 11:07:58 +01:00
Stefan Agner
dcef944e33 opkg: avoid running postinst scripts twice when using systemd
OpenEmbedded has a built-in mechanism to run postinst scripts offline
at build time or, if necessary, on first boot (delayed execution). If
the latter is the case and systemd is in use, two services end up
doing the same thing:
- opkg-configure.service starts "opkg configure" directly.
- run-postinsts.service starts "/usr/sbin/run-postinsts" which runs
  postinst scripts stored in /etc/ipk-postinsts/ or "opkg configure"
  if package management is installed.

Since the run-postinsts.service is also used in cases where no
package management is in use, it is the primary means of handling
postinsts.

Get rid of the opkg-configure.service to avoid duplicate opkg
configure execution.

(From OE-Core rev: 23dcf7ea3af84721fac126a2b2f0f100f7266368)

Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-18 11:07:58 +01:00
Anuj Mittal
917282c41b gst-validate: upgrade 1.14.0 -> 1.14.1
Bugfixes only. Please see:

https://gstreamer.freedesktop.org/releases/1.14/#1.14.1

(From OE-Core rev: c4cdfc0507bba6edbdd361fd61a95eef8c76bb87)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-18 11:07:58 +01:00
Anuj Mittal
a5402ba7dd gstreamer1.0-rtsp-server: upgrade 1.14.0 -> 1.14.1
Bugfixes only. Please see:

https://gstreamer.freedesktop.org/releases/1.14/#1.14.1

(From OE-Core rev: 62d0d19173532fe4f6e6c3c87774d5c66cab6bfb)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-18 11:07:58 +01:00
Anuj Mittal
181fefbed2 gstreamer1.0-omx: upgrade 1.14.0 -> 1.14.1
Bugfixes only. Please see:

https://gstreamer.freedesktop.org/releases/1.14/#1.14.1

(From OE-Core rev: bfabe0672fce7ba9309dd9bc9c77f592777834cc)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-18 11:07:58 +01:00
Anuj Mittal
12da5ee245 gstreamer1.0-python: upgrade 1.14.0 -> 1.14.1
Bugfixes only. Please see:

https://gstreamer.freedesktop.org/releases/1.14/#1.14.1

(From OE-Core rev: 8a57c84ca4c66140e35e21b3ed43d29b13990928)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-18 11:07:58 +01:00
Anuj Mittal
9c51f290bc gstreamer1.0-libav: upgrade 1.14.0 -> 1.14.1
Bugfixes only. Please see:

https://gstreamer.freedesktop.org/releases/1.14/#1.14.1

(From OE-Core rev: 77fe0eea15730792ece3474828e83b35cbe2a108)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-18 11:07:58 +01:00
Anuj Mittal
99ba6772ae gstreamer1.0-vaapi: upgrade 1.14.0 -> 1.14.1
Bugfixes only. Please see:

https://gstreamer.freedesktop.org/releases/1.14/#1.14.1

(From OE-Core rev: 6f8330d0142b5ecd59c189938117937f667ef1ce)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-18 11:07:58 +01:00
Anuj Mittal
74f7629cf9 gstreamer1.0-plugins-ugly: upgrade 1.14.0 -> 1.14.1
Bugfixes only. Please see:

https://gstreamer.freedesktop.org/releases/1.14/#1.14.1

(From OE-Core rev: 23d2fbc5d525b01f426a64055ff86ddc4f3c0026)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-18 11:07:58 +01:00
Anuj Mittal
0bdb926225 gstreamer1.0-plugins-bad: upgrade 1.14.0 -> 1.14.1
Bugfixes only. Please see:

https://gstreamer.freedesktop.org/releases/1.14/#1.14.1

(From OE-Core rev: 12ff23f94b43b190ea4f9392f7ba9592362a9c50)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-18 11:07:58 +01:00
Anuj Mittal
f0aa326844 gstreamer1.0-plugins-good: upgrade 1.14.0 -> 1.14.1
Bugfixes only. Please see:

https://gstreamer.freedesktop.org/releases/1.14/#1.14.1

(From OE-Core rev: 308a5be3dcd0373bd09db253c15dc39d39b6e48f)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-18 11:07:58 +01:00
Anuj Mittal
ae6734b1f4 gstreamer1.0-plugins-base: upgrade 1.14.0 -> 1.14.1
Bugfixes only. Please see:

https://gstreamer.freedesktop.org/releases/1.14/#1.14.1

Remove a backport patch and rebase one other patch.

(From OE-Core rev: aea86b875ebf9fbc767d231f87bd33aa9ab18efa)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-18 11:07:58 +01:00
Anuj Mittal
c9bd85d503 gstreamer1.0: upgrade 1.14.0 -> 1.14.1
(From OE-Core rev: 82e2deb1eee76c10cf5f2785a8b0198276e0d854)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-18 11:07:57 +01:00
Anuj Mittal
760127420c gstreamer: enable ptest support
Make sure that the tests are packaged and can be executed
when ptest is enabled. Also, remove build host specific references
from Makefile.

(From OE-Core rev: d283b0eb909c78b020794ba78e7ec64c3fbee86f)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-18 11:07:57 +01:00
Chen Qi
c7fbb0251b oeqa/runtime/cases/rpm.py: change to use base-passwd-doc
The test cases assume that rpm-doc is built out, as it says it its
comment. This is not always true. And it sometimes results in
following error.

  |     cls.tc.target.copyTo(test_file, dst)
  | UnboundLocalError: local variable 'test_file' referenced before assignment

Change to use base-passwd-doc, as this package is more likely to be
built out than rpm-doc.

(From OE-Core rev: 2e23543b48921182307065c1fa9e8b9d7fbb3cdc)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-18 11:07:57 +01:00
Maxin B. John
fa62280e45 xdg-utils: upgrade to 1.1.3
1.1.2 -> 1.1.3

(From OE-Core rev: 749253756a376428a4e1d89ba7c441c947a8fde7)

Signed-off-by: Maxin B. John <maxin.john@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-18 11:07:57 +01:00
Maxin B. John
1ddec43ce1 bluez5: upgrade to 5.50
Refresh the following patch:
        0001-Allow-using-obexd-without-systemd-in-the-user-sessio.patch

(From OE-Core rev: 4032fd3ae640da8076617403152a30841507db4f)

Signed-off-by: Maxin B. John <maxin.john@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-18 11:07:57 +01:00
Maxin B. John
9ac26a8773 mc: upgrade to 4.8.21
4.8.20 -> 4.8.21

(From OE-Core rev: e1d16cd44630a14e91ff792f4e97d788bb0f2740)

Signed-off-by: Maxin B. John <maxin.john@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-18 11:07:57 +01:00
Maxin B. John
54cf04b608 vte: upgrade to 0.52.2
0.52.0 -> 0.52.2

(From OE-Core rev: 6054ac4d5924bb8ebf4df929f4d689764df5f38f)

Signed-off-by: Maxin B. John <maxin.john@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-18 11:07:57 +01:00
Maxin B. John
10cba7cbe0 gtk+3: upgrade to 3.22.30
3.22.29 -> 3.22.30

(From OE-Core rev: a9625b7b2e061c5be869040af41944908d4642ca)

Signed-off-by: Maxin B. John <maxin.john@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-18 11:07:57 +01:00
Maxin B. John
84cc647832 gtk-icon-utils-native: upgrade to 3.22.30
3.22.29 -> 3.22.30

(From OE-Core rev: 08a67f0b4eb07a006c30c7ba9a52fc453739e63e)

Signed-off-by: Maxin B. John <maxin.john@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-18 11:07:57 +01:00
Maxin B. John
bf5f7191e9 cronie: upgrade to 1.5.2
1.5.1 -> 1.5.2

(From OE-Core rev: ed376ab653dd7c0500184c7527085120b51448a9)

Signed-off-by: Maxin B. John <maxin.john@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-18 11:07:57 +01:00
Maxin B. John
2250ba3d1a libsoup-2.4: upgrade to 2.62.2
2.62.0 -> 2.62.2

(From OE-Core rev: a0717d16d89ffc19c5ed5998a3b876fc023eb086)

Signed-off-by: Maxin B. John <maxin.john@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-18 11:07:57 +01:00
Maxin B. John
54104d06ee libinput: upgrade to 1.11.0
1.9.4 -> 1.11.0

(From OE-Core rev: c17869ee01c423a089dfaef8895bb7ffec6a7d74)

Signed-off-by: Maxin B. John <maxin.john@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-18 11:07:57 +01:00
Maxin B. John
cfb203eb22 acpid: upgrade to 2.0.29
2.0.28 -> 2.0.29

(From OE-Core rev: 6dc9857562b87b690ffa4e4d9ff57a4e5de4b4be)

Signed-off-by: Maxin B. John <maxin.john@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-18 11:07:57 +01:00
Jeremy Puhlman
90d6d998ce Only add uninative and checksum if inherited uninative class
The checksum value is only calculated if the uninative class is
inherited, so check for inherit before adding it to local.conf

(From OE-Core rev: 3b5b832589d943700b273e3a4d83561be0c47f36)

Signed-off-by: Jeremy Puhlman <jpuhlman@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-18 11:07:57 +01:00
Jeremy Puhlman
cc9a768192 Remove libdir specification from xorgproto .pc files
(From OE-Core rev: 8b8eaac3ec9e6f12d78a0be5fa6300c4e58294b7)

Signed-off-by: Jeremy Puhlman <jpuhlman@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-18 11:07:57 +01:00
Dennis Menschel
81c5374751 runqemu-extract-sdk: fix whitespace errors
Indentation using a mix of whitespaces and tabs has been unified in
favor of tabs.

(From OE-Core rev: 3827f1aa4a2bb433e445802c48e32f72932950e6)

Signed-off-by: Dennis Menschel <menschel-d@posteo.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-18 11:07:57 +01:00
Dennis Menschel
959aae0c2b runqemu-extract-sdk: support tar.xz format
As the format "tar.xz" is included in the IMAGE_TYPES bitbake variable
as defined in meta/classes/image_types.bbclass, it should also be
possible to extract a rootfs that has been built using that format.

(From OE-Core rev: f813ca7b085c7ddf76a34932e2b3f5bc3372b239)

Signed-off-by: Dennis Menschel <menschel-d@posteo.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-18 11:07:57 +01:00
Stefan Stanacar
37ae135dc0 default-versions.inc: use weak assignments to allow overwrite
default-versions.inc is included by defaultsetup.conf which in bitbake.conf
is included after local/machine/distro.conf.
If these are hard assignments distros can's overwrite them.

(From OE-Core rev: b9fb89fb7189e631b615868d567e1eab504ee3c2)

Signed-off-by: Stefan Stanacar <sstncr@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-18 11:07:57 +01:00
Jeremy Puhlman
927c2669c5 Multilibize the UPDATERCPN variable
The audit package specifies the following:
UPDATERCPN = "auditd"

However because it is not multilibized, the value "auditd" is used to
search for the package to add the post install script too. In the mutlilib
alternate abi case, that package does not exist. It ends up assigning
the post install script to the lib32-audit-lic package, which
subsequently failes to execute the script due to the initscript it is
trying to turn on is not installed.

(From OE-Core rev: ce99653e1af50d9e8f070ca6ae810908c4c138c6)

Signed-off-by: Jeremy Puhlman <jpuhlman@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-18 11:07:57 +01:00
Ross Burton
c76ca2c65b meson: only use lists of commands in cross file if required
There's a bug in Meson[1] where it find_program("foo") will fail if foo is
defined in the cross file as a list.

This is causing the Meson build of libdrm to fail, but for this instance we can
work around the problem by only using lists in the cross file if there are
arguments, and just using a string if there are not.

[1] https://github.com/mesonbuild/meson/issues/3737

(From OE-Core rev: 7fd8bc469c2caacc1c2021bd0aa83dd6da7fe1e7)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-18 11:07:57 +01:00
Chen Qi
0de9ceeafc dnf: default to disable systemd units
The services and timers are not useful if a repo is not configured.
In OE, we default to have no repo configured. So we default to disable
these units.

The problem was found by the test_systemd_failed runtime test case.
dnf-makecache.service is found to fail. This is due to lack of repo.
Note that as this service is started by the dnf-makecache.timer, it's
possible that test_systemd_failed passes in case the timer is not started
yet.

(From OE-Core rev: c017f5528d1ae6316c9434ffd8702665bfe069f9)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-18 11:07:57 +01:00
Chen Qi
a77b860335 oeqa/runtime/cases/parselogs.py: ignore a message from watchdog
The following message from watchdog is not an error.

  "error retry time-out = 60 seconds"

Checking watchdog's source codes, we have:

  src/watchdog.c: log_message(LOG_INFO, "error retry time-out = %d seconds", retry_timeout);

It's clear this is an info message, so parselogs should ignore it.

(From OE-Core rev: c90dff78310ab1517555c4df39b3e2d2f59ff06d)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-18 11:07:57 +01:00
Chen Qi
d200e3196d watchdog: fix init script for sysvinit
The current init script is installed from source with redhat style.
It does not get configuration from /etc/default/watchdog. We should use
debian style init script.

Write our own script just like what wd_keepalive does.
Also, in the init script, we check the existence of /dev/watchdog to
determine whether to start the daemon or not.

(From OE-Core rev: a31f8dd34e8ea34dfb087ed464575aa390ece09b)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-18 11:07:57 +01:00
Chen Qi
8aee3cce93 watchdog: make init script start after syslog
We need to make sure logs are not lost. As long as there's no
strong and vaild reason, we should make daemons start after syslog.

As a side effect, we could check the logs to see if there are
some potential problem. In OE, the 'parselogs' test case could
do it automatically.

(From OE-Core rev: 41e4d728ef92586e2714fa0c136b838c3fda051e)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-18 11:07:57 +01:00
Chen Qi
459d92e98d watchdog: disable systemd services by default
systemd has internal support for watchdog. See the RuntimeWatchdogSec
in /etc/systemd/system.conf.

We'd better just disable this service by default. If users want to use
watchdog, consider using the systemd one.

(From OE-Core rev: 183c9125e78ae1035894600a66b4ea1fa6a3a532)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-18 11:07:57 +01:00
Chen Qi
1e703e1b05 watchdog: remove the useless watchdog-conf.patch
This patch modifies watchdog.conf file. But this file is deliberately
deleted in do_install. The current mechanism in OE is to use another
recipe watchdog-conf to handle watchdog configuration. So the patch
is really useless.

(From OE-Core rev: 80638247143b15a5643f9fcc116d7bc7dcbf3496)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-18 11:07:57 +01:00
Chen Qi
d3f4363223 oeqa/runtime/cases/parselogs.py: extend common_errors list
Add the following line to common_errors list.

  Failed to read /var/lib/nfs/statd/state: Success

This message is not harmful, it does not result in rpc.statd starting
failure.

(From OE-Core rev: 0f2c39149941d95fa979ec675f9dc25655886e2c)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-18 11:07:57 +01:00
Mikko Rapeli
ad85e224a4 openssh: add nativesdk support
And use bitbake variables for install paths to fix nativesdk-openssh
compilation.

(From OE-Core rev: 70470dfa88338cae06670195bb7009cb13098ac2)

Signed-off-by: Mikko Rapeli <mikko.rapeli@bmw.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-18 11:07:57 +01:00
Damien Riegel
7d3ad1405c populate_sdk_ext.bbclass: fix corebase identification
When generating the extended SDK, there is a copy step where this class
goes through the layers and other stuff that have been copied to
generate the SDK. The corebase; ie. the folder that contains the core
layer 'meta' is treated in a special way. Unfortunately in our tree, we
have:

  sources/meta/meta
           |     `- core layer
           `------- corebase

In populate_sdk_ext's copy_buildsystem, the heuristic to determine which
element of the list returned by copy_bitbake_and_layers is corebase is
fooled by such layout.

In copy_bitbake_and_layers, corebase is already handled specifically and
reliably, so we should let that function tell us which folder is
corebase instead of trying to determine it.

To do so, change the return type of copy_bitbake_and_layers to a tuple
that contains (corebase, copied_layers). It also simplifies the code on
the caller side.

(From OE-Core rev: 5368bc5d0d3606198b93e877bcafcd77bb5f4fd1)

Signed-off-by: Damien Riegel <damien.riegel@savoirfairelinux.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-18 11:07:57 +01:00
Andre McCurdy
1ecb384c11 rsync: merge rsync.inc into the rsync recipe
There's only one user of rsync.inc (meta-gplv2 has its own copy), so
merge the .inc file into the rsync recipe.

(From OE-Core rev: 4e42ad44f1df510a527d199b6ec41541f8939654)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-18 11:07:57 +01:00
Richard Purdie
44b185581d sqlite3: Merge/simplify CFLAGS
An earlier version of a change was merged from S. Lockwood-Childs
<sjl@vctlabs.com> which made the CFLAGS consistent across native,
nativesdk and target cases. This syncs with a later verison of the
patch to remove duplicate CFLAGS settings and simplify the recipe.

(From OE-Core rev: 604777acfc54d285f315b622bd147ed02d55d6fd)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-18 11:07:57 +01:00
Alex Kiernan
4957ec32c2 kernel-fitimage: Add DTBO support for configurations
When generating overlay DTB configuration sections, U-Boot doesn't want
the kernel specified again as we already have that in our base DTB. Add
support for this to allow bootm to process overlay configuration sections.

(From OE-Core rev: c0db9776beb4f519079a554a733353c368739dcf)

Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-18 11:07:57 +01:00
Alex Kiernan
430774e459 kernel-fitimage: Allow setting of DTB/DTBO relocation address
Introduce UBOOT_DTB_LOADADDRESS and UBOOT_DTBO_LOADADDRESS so that you
can set where U-Boot loads full and overlay DTBs. This is required when
using bootm's overlay support to construct the final DTB.

(From OE-Core rev: 05d2230db1d7379494814407fc0d79d7e755d89e)

Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-18 11:07:57 +01:00
Khem Raj
3c3545ec78 gcc-8: Fix spurious mcpu/march conflict for xscale
(From OE-Core rev: 00808545041750698f710ef4e0345c80221373b8)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-18 11:07:57 +01:00
Andre McCurdy
21c0898d8e gcc8: drop stray uClibc specific patch
The patch was previously removed for gcc7 but came back with gcc8.

  http://git.openembedded.org/openembedded-core/commit/?id=f71bc69e5b7581c53071055b694bb0dbfe4b4a87

(From OE-Core rev: 5f1b9128bd8693b2309c07cfc2de7b8f77c34da1)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-18 11:07:57 +01:00
Leonardo Sandoval
0beae3326a site.conf.sample: document oe-git-proxy required tools for HOSTTOOLS
The script oe-git-proxy uses some tools that may not be included
on HOSTTOOLS, thus add the proper documentation.

(From meta-yocto rev: 737702c175691db679d513a05b1800a14da35c74)

Signed-off-by: Leonardo Sandoval <leonardo.sandoval.gonzalez@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 17:57:30 +01:00
Mark Hatle
a0cb1021c0 bitbake: runqueue.py: Initial implementation of per task process limits
On high core machines, in do_fetch, it is possible to DDoS your own machine.
A method to limit any arbitrary task type to a certain number of simultaneous
threads is needed.  (Similar to how BB_NUMBER_THREADS works in the general
case.)  The format of this new limitation is:

    do_fetch[number_threads] = "2"

This should be set globally.  If it is set in individual recipes it could
result in unpredictable behavior.

Note: a value for number_threads > BB_NUMBER_THREADS will have no effect.

(Bitbake rev: 055865047c63b9c3b213b47a1884924ce0adeda0)

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 17:57:30 +01:00
Mark Hatle
27101e647f bitbake: runqueue.py: Minor cleanup for RunQueueStats and users
The RunQueueStats:taskCompleted and RunQueueStats:taskSkipped can take
multiple arguments.  However, nowehere in bitbake are multiple arguments used.
Change this to match the behavior of the other APIs where it needs to be
called once for each task.

Additionally, these two functions were usually called in tandem, however in
the wrong order.  It really doesn't matter as there is no specific preemption
point between the calls.  But the taskSkipped should be called first to
increment the 'active' count, and then taskCompleted called to decrement it.

(Bitbake rev: 26d5ea9bb892bd6a2e1fd29a9023e0b0644edc16)

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 17:57:30 +01:00
Andre McCurdy
7838294271 bitbake: fetch2: unify the way fetchers determine DL_DIR and FETCHCMD
Currently there is quite some variation between the fetchers in terms
of how they determine the subdirectory within DL_DIR and the base
fetch command to run. Some rely on variables being set externally
(e.g. from bitbake.conf in oe-core), some respect these external
variables but provide fallback defaults and some use only hardcoded
internal values. Try to unify the approach used across the various
fetchers.

(Bitbake rev: efd5e35af4b08501c67e8b30f30d9457f6fdf610)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 17:57:30 +01:00
Ross Burton
b054015357 alsa-tools: rewrite packaging
alsa-tools is actually a collection of 20 separate tools, each with their own
configure scripts.  The dependencies are varied, old, and estoric (FLTK, GTK+ 1, 2,
and 3, PyGTK 2, Qt3).

Instead of maintaining patches to try and pick a subset that builds, use
PACKAGECONFIG and some magic to build what the user requests.

By default we build all the tools which have no dependencies, and the tools
which need GTK+ 2 or GTK+ 3 if the relevant DISTRO_FEATURES are enabled.

Add a patch to fix the build of ld10k1 with musl.

The ncurses build dependency doesn't seem to be checked for, so remove that.

(From OE-Core rev: 83c9405df5748744ef673ac8757bb89d7050ad8d)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 17:56:25 +01:00
Andre McCurdy
89cbaca359 rootfs-postcommands.bbclass: drop obsolete sshd UseDNS rootfs postprocessing
The sshd UseDNS option has defaulted to "no" since openssh 6.8p1,
so it's no longer necessary to postprocess the rootfs to force the
option:

  https://www.openssh.com/txt/release-6.8

(From OE-Core rev: 0cb4f11614bd3b17db8e6b3516761193cd45d082)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 17:56:25 +01:00
Andre McCurdy
05881bbf35 openssh: only create sshd host keys which have been enabled
Previously sshd_check_keys would create a full set of all possible
sshd host keys, even if sshd_config has been set to only enable
certain key types.

Update sshd_check_keys to only create keys which have been enabled in
sshd_config (with a fallback to creating a full set of key types if
no HostKey options are defined, as before).

(From OE-Core rev: 2303d795ae96f1a60caf145a0ddf100e89c4b5b0)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 17:56:25 +01:00
Andre McCurdy
958fd9e6f9 openssh: sync local ssh_config + sshd_config files with upstream 7.7p1
Changes are mostly related to the removal of support for SSH v.1
protocol, which was dropped from openssh sshd in 7.4p1:

  https://www.openssh.com/txt/release-7.4

(From OE-Core rev: b81389c50e0d191e31f71af82d86bfbb37b83acc)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 17:56:25 +01:00
Andre McCurdy
6c13d5d8d0 openssh: minor indent cleanup for sshd init script
The openssh sshd init script contains a mix of indent styles, mostly
inherited from the Debian script from which it is derived. Leave the
indent from Debian as-is, but for lines which are OE specific (e.g.
where Debian's log_daemon_msg helper has been replaced with echo)
make the indent consistent with surrounding lines.

(From OE-Core rev: 68fb7d3b06887e0db3eef0ab231ced37cfa4894c)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 17:56:25 +01:00
Andre McCurdy
897971dc73 openssh: drop RCONFLICTS for openssh-keygen
The "ssh-keygen" package no longer seems to be provided by any recipe
in oe-core or meta-oe, so there's no clear reason for the
openssh-keygen package to conflict with it.

(From OE-Core rev: 0c5567847edba6b5ab24ae505d16375397cf4b40)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 17:56:24 +01:00
Andre McCurdy
72b5d5bb8e openssh: stop adding -D__FILE_OFFSET_BITS=64 to CFLAGS
Openssh takes care of enabling large-file support automatically via
the AC_SYS_LARGEFILE in the configure.ac, so additional help from the
recipe is not required.

Even if it were once required, defining __FILE_OFFSET_BITS (ie with
double leading underscores) looks like a typo and probably never had
any effect anyway?

(From OE-Core rev: 37b1a7bada267b89094ce0c3eb81b1de9f04df8e)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 17:56:24 +01:00
Kai Kang
95a8753766 goarch.bbclass: set SECURITY_CFLAGS for mips64
When include conf/distro/include/security_flags.inc, NOPIE flags are
still required for mips64 target builds. Otherwise it fails to build
packages such as glide which inherit go.bbclass:

| .../tmp-glibc/work/mips64-wrs-linux/glide/0.13.1-r0/recipe-sysroot-native/usr/bin/mips64-wrs-linux/../../libexec/mips64-wrs-linux/
| gcc/mips64-wrs-linux/7.3.0/ld: .../tmp-glibc/work/mips64-wrs-linux/glide/0.13.1-r0/go-tmp/go-link-518447869/go.o:
| relocation r_mips_26 against `a local symbol' can not be used when making a shared object; recompile with -fPIC`

Use override 'mipsarch' to set SECURITY_CFLAGS for both mips and mips64.

(From OE-Core rev: 98b24e9268dc444356ce8bd9ddfec6adcce5e02a)

Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 17:56:24 +01:00
Richard Purdie
69fd500156 gcc-8: enable build-id in gcc-cross-initial
Apply patch from Taras Kondratiuk <takondra@cisco.com> to gcc 8.x too.

Normal gcc-cross has build-id feature enabled by default, so most of
target binaries has build-id. But libc (glibc, musl) doesn't have
build-id, because it is built with gcc-cross-initial.

Build-id is a useful feature, so enable it for gcc-cross-initial too.

(From OE-Core rev: f24308c95853bec5cfc9f0794b111c6afecbe768)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 17:56:24 +01:00
Taras Kondratiuk
78ab901b1e gcc: enable build-id in gcc-cross-initial
Normal gcc-cross has build-id feature enabled by default, so most of
target binaries has build-id. But libc (glibc, musl) doesn't have
build-id, because it is built with gcc-cross-initial.

Build-id is a useful feature, so enable it for gcc-cross-initial too.

(From OE-Core rev: ba69701dac785a220feffd6118718b1c9e733548)

Signed-off-by: Taras Kondratiuk <takondra@cisco.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 17:56:24 +01:00
Ross Burton
0b8d09b2df libdrm: drop uclibc-specific patch
This patch isn't needed for musl or glibc, so drop it.

(From OE-Core rev: 46275ed3de30e6095b0d7ef71aad842e5ea9fe30)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 17:56:24 +01:00
Robert Yang
e4bacbf94a send-error-report: decode response from server
Fixed:
b'Your entry can be found here: http://<snip>'

Now looks like:
Your entry can be found here: http://<snip>

(From OE-Core rev: 4510973fe12a61c21e12b46b8315c56f91eff5b7)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 17:56:24 +01:00
Naresh Kamboju
951fa62bab ltp: fix CVE-2017-5669 test case
Adding CVE-2017-5669 test fix patch which is accepted upstream in LTP repo.

Ref:
cve-2017-5669: shmat() for 0 (or <PAGESIZE with RND flag) has to fail with REMAPs
https://github.com/linux-test-project/ltp/pull/324

Upstream-Status: Accepted [https://github.com/linux-test-project/ltp/pull/324]
(From OE-Core rev: e356cb7e7bfb407c2f3a1bd0f28b5f14beaff882)

Signed-off-by: Naresh Kamboju <naresh.kamboju@linaro.org>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 17:56:24 +01:00
Tim Orling
5b0a32a5a7 liberror-perl: upgrade 0.17025 -> 0.17026
* Upstream release notes:
"
May 23 2018 <shlomif@shlomifish.org> (Shlomi Fish)

  Error.pm #0.17026
  - Convert to Dist-Zilla.
"

* Tested on qemux86: all tests pass

(From OE-Core rev: 8a5d5a8422239d45aba73595ee2a2120adf93c84)

Signed-off-by: Tim Orling <timothy.t.orling@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 17:56:24 +01:00
Ross Burton
f706c89ca1 maintainers: add Andrej Valek as busybox maintainer
Andrej has kindly stepped up as the busybox maintainer.

(From OE-Core rev: 9102319b85ed097fc63c0b56e3b9242be28ec5ab)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 17:56:24 +01:00
Armin Kuster
9ca68a7db6 busybox: remove myself as maintainer.
(From OE-Core rev: ee4ebba0b4fc1e5c65509170794f79715bc0652f)

Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 17:56:24 +01:00
Armin Kuster
50804c0663 popt: update SRC_URI
It appears the rpm5.org has been down for some time, switch to fossies

WARNING: popt-native-1.16-r3 do_fetch: Failed to fetch URL http://rpm5.org/files/popt/popt-1.16.tar.gz, attempting MIRRORS if available

(From OE-Core rev: 347ee336dcc94e6fa4e4788117013615b90abd70)

Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 17:56:24 +01:00
Ricardo Ribalda Delgado
e4b365eb76 xinetd: Fix systemd service for systemd>237
SystemD 237 implements a stricted PIDfile handling that breaks several
daemons [1].

Change the way we start xinetd, mimicing other distros [2].

Fixes:
root@qt5122:~# journalctl -u xinetd
-- Logs begin at Fri 2018-05-25 14:33:29 UTC, end at Mon 2018-06-11 07:33:08 UTC. --
May 25 14:33:31 qt5122 systemd[1]: Starting Xinetd A Powerful Replacement For Inetd...
May 25 14:33:31 qt5122 systemd[1]: xinetd.service: Permission denied while opening PID file or unsafe symlink chain: /var/run/xinetd.pid
Jun 11 07:27:24 qt5122 systemd[1]: xinetd.service: Start operation timed out. Terminating.
Jun 11 07:27:24 qt5122 systemd[1]: xinetd.service: Failed with result 'timeout'.
Jun 11 07:27:24 qt5122 systemd[1]: Failed to start Xinetd A Powerful Replacement For Inetd.
Jun 11 07:31:38 qt5122 systemd[1]: Starting Xinetd A Powerful Replacement For Inetd...
Jun 11 07:31:38 qt5122 systemd[1]: xinetd.service: Permission denied while opening PID file or unsafe symlink chain: /var/run/xinetd.pid
Jun 11 07:33:08 qt5122 systemd[1]: xinetd.service: Start operation timed out. Terminating.
Jun 11 07:33:08 qt5122 systemd[1]: xinetd.service: Failed with result 'timeout'.
Jun 11 07:33:08 qt5122 systemd[1]: Failed to start Xinetd A Powerful Replacement For Inetd.

[1]: https://github.com/systemd/systemd/issues/8085
[2]: e490406367

(From OE-Core rev: eea25f03e4c46cfe0d05df46f8f50e1389179c80)

Signed-off-by: Ricardo Ribalda Delgado <ricardo.ribalda@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 17:56:24 +01:00
Anuj Mittal
425af487a3 bitbake-blayers/create: add version for example recipe
Add version field in recipe name for example recipe created by
bitbake-layers.

Fixes [YOCTO #12767]

(From OE-Core rev: c62f6b9643d31b465ea0e919882e411a5ed35c56)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 17:56:24 +01:00
Otavio Salvador
2138f47802 uboot-extlinux-config.bbclass: Add baudrate in console bootparam
By default, we ought to use console="${console},${baudrate}" as
console bootparam as commonly it is left to be passed with the
bootargs.

(From OE-Core rev: 2ce3534b2011cf5516780c9fd7e00bd107619adc)

Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 17:56:24 +01:00
Dengke Du
05a2e21c82 trace-cmd: add PACKAGECONFIG for audit
(From OE-Core rev: f7d62fff09b033b6eee7251a133d05c24c55769e)

Signed-off-by: Dengke Du <dengke.du@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 17:56:24 +01:00
Zhixiong Chi
d2efd1f20e glibc: fix CVE-2017-18269 and CVE-2018-11236
Backport two CVE patches from the upstream
https://sourceware.org/git/gitweb.cgi?p=glibc.git;a=summary
commit 5460617d1567657621107d895ee2dd83bc1f88f2
commit cd66c0e584c6d692bc8347b5e72723d02b8a8ada

(From OE-Core rev: 398ac946745bbfad55deb382aeafec0be3298819)

Signed-off-by: Zhixiong Chi <zhixiong.chi@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 17:56:24 +01:00
Kai Kang
15b3b32407 man-pages: inherit manpages
Inherit manpages to update manual file index caches after installation
for man-pages.

(From OE-Core rev: 72e5e124e565c5a72771c7325a783011aedcab96)

Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 17:56:24 +01:00
Kai Kang
8c103176e2 manpages.bbclass: Update RDEPENDS and post install scripts
If a package installs manual files, it should update manual index cache
after its installation. Add package 'man-db' to RDEPENDS which contains
command 'mandb' to update the cache. And do the update in the post
install scripts.

(From OE-Core rev: 078900f2416202b677471b10b69c8defb0f14c8d)

Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 17:56:24 +01:00
Andre McCurdy
31a87d4d1d cpio: fix CVE-2016-2037
"The cpio_safer_name_suffix function in util.c in cpio 2.11 allows
remote attackers to cause a denial of service (out-of-bounds write)
via a crafted cpio file."

  https://nvd.nist.gov/vuln/detail/CVE-2016-2037

Note that there appear to be two versions of this fix. The original
patch posted to the bug-cpio mailing list [1] is used by Debian [2],
but apparently causes regression [3]. The patch accepted to the
upstream git repo [4] seems to be the most complete fix.

  [1] https://lists.gnu.org/archive/html/bug-cpio/2016-01/msg00005.html
  [2] https://security-tracker.debian.org/tracker/CVE-2016-2037
  [3] https://www.mail-archive.com/bug-cpio@gnu.org/msg00584.html
  [4] http://git.savannah.gnu.org/cgit/cpio.git/commit/?id=d36ec5f4e93130efb24fb9678aafd88e8070095b

(From OE-Core rev: f170288ac706126e69a504a14d564b2e5c3513e4)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 17:56:24 +01:00
Andre McCurdy
a0a395a8c6 cpio: rely on texinfo.bbclass for texinfo-native dependency
(From OE-Core rev: 7dad119dd0ee82b14a82b2a0b5a89f790e3bc007)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 17:56:24 +01:00
Andre McCurdy
b177ee9244 cpio: move contents of cpio_v2.inc into the cpio recipe
Merge contents of cpio_v2.inc into the only recipe which uses it.

(From OE-Core rev: 162ff3871779d646dadc7e7287f4667641d6e612)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 17:56:24 +01:00
Ross Burton
d7c5ae6ea9 qemu: don't inherit autotools
qemu doesn't use autotools, so don't inherit it and just call 'make install'
directly.

No need to alter makefiles anymore, as they appear to respect CFLAGS now.

Remove a chmod of beginend_funcs.sh (a file we patched in, and removed,
many years ago).

(From OE-Core rev: b52a9d108d72ebdf93f2dc51aa6f26ccc890d451)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 17:56:24 +01:00
Ross Burton
041041609e wayland: fix upstream release checking
Wayland has moved to GitLab with the result that /releases/ no longer returns a
directory listing, so the upgrade detection doesn't work.

The upgrade detection can scan releases.html just as well, so tell it to look
there.

(From OE-Core rev: 8befb09eb28bb6d8884d2052cd63c2c319eceed1)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 17:56:24 +01:00
Joshua Watt
2e81bf1b9d icecc-toolchain: Remove environment setup
The handling of the environment setup was moved to the post-relocate
script handler, and so is no longer necessary in the setup script

(From OE-Core rev: 710b93a24df6372abd6d7aa0ede8750cf4bf88b4)

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 17:56:24 +01:00
Dan McGregor
927db5db26 systemd: allow setting time-epoch to epoch
systemd by default sets the system time at boot to the date of its NEWS
file. It provides the option to change that at build time, and some
projects need to come up at a particular date if no RTC is present.

Provide the option to set the time at boot to the epoch instead of the
date of the NEWS file.

(From OE-Core rev: bf1847cd369fe72b8f8e04e2661bb7d2d3524ea2)

Signed-off-by: Dan McGregor <dan.mcgregor@usask.ca>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 17:56:24 +01:00
Nicola Lunghi
72f2b9d6c7 Add license file EPL-2.0
it is from:

https://www.eclipse.org/org/documents/epl-2.0/EPL-2.0.txt

And add 'EPL-2.0' to SRC_DISTRIBUTE_LICENSES.

(From OE-Core rev: f045b3d2c62c70a87277596d20bdb8830faa2963)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 17:56:24 +01:00
Li Wang
c7786c5bb8 rpcbind: add option to make user able to use fixed port number
Add option "-p" to specify fixed port number

(From OE-Core rev: f6f3f7388cefb2833b4240c2c9ddbf8bd201bc61)

Signed-off-by: Li Wang <li.wang@windriver.com>
Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 17:56:24 +01:00
Hong Liu
61e587b32d wpa-supplicant: fix the bug for PATCHTOOL = "patch"
When switch PATCHTOOL to patch, applying 'key-replay-cve-multiple.patch' failed:

checking file src/ap/ieee802_11.c
checking file src/ap/wpa_auth.c
checking file src/ap/wpa_auth.h
checking file src/ap/wpa_auth_ft.c
checking file src/ap/wpa_auth_i.h
checking file src/common/wpa_common.h
checking file src/rsn_supp/wpa.c
checking file src/rsn_supp/wpa_i.h
checking file src/rsn_supp/wpa.c
Hunk #1 FAILED at 709.
Hunk #2 FAILED at 757.
Hunk #3 succeeded at 840 (offset -12 lines).
Hunk #4 FAILED at 868.
Hunk #5 FAILED at 900.
Hunk #6 FAILED at 924.
Hunk #7 succeeded at 1536 (offset -38 lines).
Hunk #8 FAILED at 2386.
Hunk #9 FAILED at 2920.
Hunk #10 succeeded at 2940 (offset -46 lines).
Hunk #11 FAILED at 2998.
8 out of 11 hunks FAILED
checking file src/rsn_supp/wpa_i.h
Hunk #1 FAILED at 32.
1 out of 1 hunk FAILED
checking file src/common/wpa_common.h
Hunk #1 succeeded at 215 with fuzz 1.
checking file src/rsn_supp/wpa.c
checking file src/rsn_supp/wpa_i.h
checking file src/ap/wpa_auth.c
Hunk #1 succeeded at 1898 (offset -3 lines).
Hunk #2 succeeded at 2470 (offset -3 lines).
checking file src/rsn_supp/tdls.c
checking file wpa_supplicant/wnm_sta.c
checking file src/rsn_supp/wpa.c
Hunk #1 succeeded at 2378 (offset -62 lines).
checking file src/rsn_supp/wpa_ft.c
checking file src/rsn_supp/wpa_i.h
Hunk #1 succeeded at 123 (offset -5 lines).

So split the wpa-supplicant/key-replay-cve-multiple to 8 patches.

(From OE-Core rev: 4e9bc513c22b9a52c48588ef276e2ab7f7781526)

Signed-off-by: Hong Liu <hongl.fnst@cn.fujitsu.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 17:56:24 +01:00
Changqing Li
c8a1e372f3 nettle: do the multilib_header magic for nettle-stdint.h and version.h
add multilib support for this receipe, or it will conflicts in mutlilib setting

(From OE-Core rev: ea618e061fa190e4ae647da6466d074b49940395)

Signed-off-by: Changqing Li <changqing.li@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 17:56:24 +01:00
Jens Rehsack
a34850f703 cpan_build.bbclass: tell Module::Build the replacement
Instead of patching Module::Build, maybe Module::Build::Tiny and all other
similar tools, use the official way to tell them which is the target perl
on target.

(From OE-Core rev: f3925216b06ff7fbe21989210f8eb11e16be6631)

(From OE-Core rev: 306435507c4790ec44f30cd3c7fa7d340b441ec4)

Signed-off-by: Jens Rehsack <sno@netbsd.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 17:56:24 +01:00
Ross Burton
73daeda22d cmake: fix Upstream-Status tag spelling
(From OE-Core rev: a734431a7ce36a679dff81822c2fba6f07a09e88)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 17:56:24 +01:00
Ross Burton
bd0d7c7ed5 attr/acl: disable make clean
These packages use hand-grown makefiles which don't handle cleans as they can
invoke /usr/bin/gmake directly which may not exist.  Until new upstream releases
are made (which have ported to automake) set CLEANBROKEN to work around this.

[ YOCTO #12775 ]

(From OE-Core rev: eb924bc684f92fc2d806715872667f241e54b365)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 17:56:24 +01:00
Ross Burton
0e4d2a7ce5 glib: add PACKAGECONFIG for libelf
gresource-tool has optional support for using libelf to extract resources from
ELF files, so add a PACKAGECONFIG in case someone wants this.

(From OE-Core rev: 93f08a036343d4df1aefe9793a7a9ab5b296f5b5)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 17:56:24 +01:00
Chen Qi
ae49d379b7 sysklogd: fix typo in RCONFLICTS
It should be RCONFLICTS_${PN} instead of RCONFLICTS_${PN}-syslog.
There's no ${PN}-syslog package.

(From OE-Core rev: 840d04182bc71ae3f6f562f668b9900c5625e1aa)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 17:56:24 +01:00
Mingli Yu
b4a4cf6122 boost: Improve reproducibility
Set .file section explicitly for .S files to avoid
the linker introduces the host path in symbols for
object files whose source file is .S
Otherwise, there is a host path in the symbols as
below:
$ readelf --wide --symbols /my-build/boost/1.67.0-r0/boost_1_67_0/x86_64-poky-linux/boost/bin.v2/libs/context/build/aca09349fdb84d131321425f6c3a38ed/libboost_context.so.1.67.0
42: 0000000000000000 0 FILE LOCAL DEFAULT ABS /my-build/boost/1.67.0-r0/boost_1_67_0/x86_64-poky-linux/boost/bin.v2/libs/context/build/aca09349fdb84d131321425f6c3a38ed/asm/make_x86_64_sysv_elf_gas.o

[YOCTO #12708]

(From OE-Core rev: 5d785dadf2bd35f4ae7304ab927fda10368377ce)

Signed-off-by: Mingli Yu <Mingli.Yu@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 17:56:24 +01:00
S. Lockwood-Childs
086610faf0 sqlite3: consistent set of features for nativesdk
Enable use of pread() and enable column metadata API for nativesdk builds.
This brings nativesdk in line with target and native builds.

(From OE-Core rev: 7c8b85e1c3d852975cd5961a297aa939bf4c7fe7)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 17:56:24 +01:00
S. Lockwood-Childs
5f3a3d4063 coreutils: fix nativesdk install failure
The change "fix hostname conflict with other packages" moved the
hostname util to the list of base_bindir_progs, so do_install_append()
now expects hostname to have been built.

coreutils do_install_append() is shared between target and nativesdk
builds (though not used by native build, see comment) so hostname should
be enabled to build on both of them.

(From OE-Core rev: 57f1f5708306a6121b1172c5163c6566d5bcb89c)

Signed-off-by: S. Lockwood-Childs <sjl@vctlabs.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 17:56:24 +01:00
Mingli Yu
834b24d507 ltp: set -fomit-frame-pointer explicitly for x86-64
Since ltp contains x86-64 assembler which uses the
frame-pointer register, it will trigger below error
when build ltp with -fno-omit-frame-pointer on
x86-64.
| cve-2015-3290.c: In function 'child_thread':
| cve-2015-3290.c:416:1: error: bp cannot be used in asm here

And there is also some comment as below in the source
file ltp/20180515-r0/git/testcases/cve/cve-2015-3290.c
* Build with -O2.  Don't use -fno-omit-frame-pointer.

So explicitly set -fomit-frame-pointer on x86-64 for
compiler to fix the above build error.

(From OE-Core rev: 3084ff86d61b54011e0647ee17cbba521bafc9df)

Signed-off-by: Mingli Yu <Mingli.Yu@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 17:56:24 +01:00
Alejandro Enedino Hernandez Samaniego
073dbcedf5 tclibc-newlib: Adds a new TCLIBC variant to build with newlib as C library
This patch adds the posibility to build using TCLIBC=newlib.

It allows users to build baremetal applications with the use of a
C library.

Newlib is a lightweight C library meant to be used on embedded systems,
it is meant to be easily portable for new platforms and to provide
basic functionality on them, by design, it provides stubs for some of
these core functions declared as weak, so they can be built correctly
and then linked against some other library which provides specifics
about the platform being used if need be, libgloss takes care of these
in some cases, but it can also be extended, this patch also allows the
user to easily add other libraries to it by adding them to
NEWLIB_EXTENDED for this specific reason.

(From OE-Core rev: 9f0570351a7b0877aa50efff5fe9a9ef368cb38f)

Signed-off-by: Alejandro Enedino Hernandez Samaniego <alejandr@xilinx.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 17:56:24 +01:00
Alejandro Enedino Hernandez Samaniego
361f7a902d insane.bbclass: Adds powerpc to elf headers machine dictionary
This patch adds makes it possible to build elf for powerpc by adding
this combination to the elf headers machine dictionary, this can be
useful when trying to build baremetal applications where the TARGET_OS=elf

(From OE-Core rev: 6f7ef4f6049fa8f2a8e17abfcf53ccbc22394088)

Signed-off-by: Alejandro Enedino Hernandez Samaniego <alejandr@xilinx.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 17:56:24 +01:00
Alejandro Enedino Hernandez Samaniego
ae5e33ddc4 newlib: Adds newlib and libgloss recipes
Newlib is a C library that is intended to be used on embedded systems.
It is a conglomeration of several library parts, all under free software
licenses that make them easily usable on embedded products.

Newlib provides a C library alternative that can run on baremetal, mainly
for resource constrained devices.

Libgloss is the BSP part of the C library, which can be easily modified
to port for new hardware platforms.

(From OE-Core rev: fe490ff829440b94124317759d856e2e2daf5047)

Signed-off-by: Alejandro Enedino Hernandez Samaniego <alejandr@xilinx.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 17:56:24 +01:00
Richard Purdie
b6dbfabbad yocto-uninative: Update to version 2.1
This fixes issues with fontforge-native.

(From OE-Core rev: cec85a6fcadc24fd266fa34631cb095e0a773c1a)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 17:56:24 +01:00
Scott Rifenbark
73e10835b7 sdk-manual: Updated the note in Eclipse configuration section
Using consistent wording.

(From yocto-docs rev: fad0230d99259aa94ef3d8db30bc81394b8da4ac)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 11:26:47 +01:00
Scott Rifenbark
6e8b019531 sdk-manual: Updated step to install Oxygen
The step describes the installation process and the intial launch
process.  No information exists for describing how you launch
Oxygen from outside the install process.  I added a note that
tells where the "eclipse" binary is installed and an example
line to invoke it.

(From yocto-docs rev: dc59410caf18e36497d70ea3c877b4f82f620e2c)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 11:26:47 +01:00
Scott Rifenbark
ad675cd6a6 sdk-manual: Removed superfluous text from Step 5 of the flow.
(From yocto-docs rev: 3df35b5f313da7d2394c75ac6924f1add7f2af71)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 11:26:47 +01:00
Scott Rifenbark
190702642b sdk-manual: Updated workflow step on getting the image
Provided better instructions and accounted for the fact that it
is just this workflow here that is assuming the need for a
YP-built image.

(From yocto-docs rev: a05091768c914817ed262b15d39e7c9b54a5b863)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 11:26:47 +01:00
Scott Rifenbark
79081fa07c sdk-manual: Updates to Eclipse Workflow section
Updated the "Workflow Using Eclipse" section head to not match so
closely the "Working With Eclipse" section heading.  TOC appeared
funny.

Also, updated the step 1 to be more accurate regarding the real
need of having a YP build host and where to go to get information
on setting it up.

(From yocto-docs rev: 1cbca098a2f793bd86b6f73d3d35ce79bdf639f0)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 11:26:47 +01:00
Scott Rifenbark
6caba4afb8 sdk-manual: Small edits correcting bits and pieces in Eclipse chapter.
(From yocto-docs rev: 3ef3a4c7f424d0f16ab3e8093372210fa2c58be0)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 11:26:47 +01:00
Scott Rifenbark
052c49367b sdk-manual: Edits to the Oxygen section
Found several items that were slightly off after working through the
procedure.  Updates to bring it into line with reality.

(From yocto-docs rev: 0f34afe3c37dedda28a1a5714703787a5dfe649d)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 11:26:47 +01:00
Scott Rifenbark
402b7ce9df sdk-manual: Updated the "Makefile-Based Projects" section.
Expanded this section to contain a figure of the flow and an
example that showcases the ways to override and use SDK
environment and Makefile variables.

(From yocto-docs rev: 834c059c1df4e8328248ea86fa23ca9a397351fa)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 11:26:47 +01:00
Scott Rifenbark
0f3aece52d sdk-manual: Created a new Makefile flow diagram
The Makefile-Based Projects section was expanded to add a useful
example and figure.  Added this figure to the sdk-manual and
mega-manual figures folders.

Updated the Makefile to include the new figure as part of the
tar files for each manual.

(From yocto-docs rev: 6261cb55b6393e0d5dce91cdb7c8e6e83849ec0c)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 11:26:47 +01:00
Scott Rifenbark
0a764481ed sdk-manual: Review edits to the "Autotools-Based Projects" section.
Autotools is simpler now as it uses "autoreconf" to one-step a bunch
of the existing tools such as aclocal and autoconf.  I updated the
figure to reflect the simpler flow and also the steps that accompany
the figure.

(From yocto-docs rev: 380cb1bb89003229befb4715e875586c798d6735)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 11:26:47 +01:00
Scott Rifenbark
b15903d61b sdk-manual: Updates to the "Makefile-Based Projects" section.
I wrote the section to include a flow diagram using "make" and
provided a working example highlighting how to override environment
variables.

(From yocto-docs rev: 00e8e09a51a1f0305317f38975a9d7695c92bdb5)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 11:26:47 +01:00
Scott Rifenbark
e8127d4fc4 sdk-manual: Added cross-reference to Makefile section. Fixed syntax
Two changes here.  One was a note to the "make" step of the
Autotools-based section.  I cross-referenced the Makefile section
for information on how SDK installation environment variables
are respected and or overridden when using make variables.

Also, fixed the quotation syntax of the four environment variable
examples used in the "Makefile-Based Projects" section.

(From yocto-docs rev: 5bd4e056496ff3478e213ccd9e49adfe1fac67ab)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 11:26:47 +01:00
Scott Rifenbark
31b2696c90 sdk-manual, mega-manual: Added Autotools flow figure
New figure for the section on Autotools workflow.  The figure
goes in the folders for both the sdk-manual and the
mega-manual.

Updated the Makefile to include the new figure in the tarball
when creating both manuals.

(From yocto-docs rev: ccb2c4b9ebd0b0aaa55b5790eb6a916701e10af4)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 11:26:47 +01:00
Scott Rifenbark
61a7ab26ee sdk-manual: Updated the Autotools workflow example.
Did a re-write of this section with better explanations.
I also pulled the bit about passing parameters to the
configure script into the step that talks about that.

(From yocto-docs rev: 79432ba0eb0cc2f6bdb3410fbf99f227fb666b2c)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 11:26:46 +01:00
Scott Rifenbark
9da094bb75 sdk-manual: Changed "configure.ac" file in the autotools-based example
The line used to be "AC_PROG_INSTALL".  I did some digging and can't
really figure out why the example is not following the standard
"helloworld" stuff out there all over the internet.  So, I have the
user create a configure.in file as follows now:

   AC_INIT(hello,0.1)
   AM_INIT_AUTOMAKE([foreign])
   AC_PROG_CC
   AC_CONFIG_FILES(makefile)
   AC_OUTPUT

The original was as follows:

   AC_INIT(HELLO,0.1)
   AM_INIT_AUTOMAKE([foreign])
   AC_PROG_CC
   AC_PROG_INSTALL
   AC_OUTPUT(Makefile)

(From yocto-docs rev: ed86d61178f86df3248b34d52602121c39bd56b5)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 11:26:46 +01:00
Scott Rifenbark
8ac16cc0a4 sdk-manual: Updated link to variables set for cross-toolchain script
The link was going to a spot from which another link was suggested.
Too many redirections for the reader.  Linked to the original place
instead.

(From yocto-docs rev: 9fc383a99ae0a7ff8cae761c0c31b27030f765cf)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 11:26:46 +01:00
Scott Rifenbark
15728cd041 sdk-manual: Updated formatting for "configure" script
Formatting used for the "configure" script created using the
"autoconf" command in the example.

(From yocto-docs rev: dd55ceb2c19f9e013c13e776acf7201c25501ff7)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 11:26:46 +01:00
Scott Rifenbark
ca3f701a98 sdk-manual: Replaced "configure.in" with "configure.ac"
The Autotools example called for a "configure.in" file as part
of the "hello-world" example.  When working through the example,
a warning occurs saying that the file needs to be "configure.ac".
I changed the example.

(From yocto-docs rev: 7f677e3bbf0331228ed5aed1ace7c55d523d3121)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 11:26:46 +01:00
Scott Rifenbark
5b804813fc sdk-manual: Added cross-referencing to "Autotools-Based Projects"
Needed to reference a couple terms for first use: "cross-development
toolchain" and "OpenEmbedded build system".

(From yocto-docs rev: 2370c3508574efe05e768f4515fec5b17f0ca177)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 11:26:46 +01:00
Scott Rifenbark
0f622b6d64 sdk-manual: Edits to "Running the SDK Environment Setup Script"
Minor edits to this section.

(From yocto-docs rev: 68a6e4cac6cecd14e87d4f05f558d79165761d4d)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 11:26:46 +01:00
Scott Rifenbark
3a6a32df97 sdk-manual: Edits to standard SDK intro and install sections
Changed the output to reflect the real command's output.  Updated
prose to match (mostly) that used in the similar extensible SDK
sections.

(From yocto-docs rev: fb6c8895f2afda0c43bbaa49870c425e25841ec4)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 11:26:46 +01:00
Scott Rifenbark
4d586da108 sdk-manual: Edits to "Creating a Derivative SDK With Additional Components"
Fixed some poor writing in this section.

(From yocto-docs rev: 5709c2c2c1c37166ec5df1193b58ff82bb10b4c3)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 11:26:46 +01:00
Scott Rifenbark
bf2a7a31ca sdk-manual: Edits to "Installing Additional Items Into the Extensible SDK"
Minor edits.

(From yocto-docs rev: 3ed2c1026bf03feb03001e00daec55b94d7dc35b)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 11:26:46 +01:00
Scott Rifenbark
73d00d17fb sdk-manual: Edits to "Restoring the Target Device to its Original State"
Fixed a grammar error and made a few other corrections.

(From yocto-docs rev: 369a22ffe3780fd00514344f1b3b8a944305e320)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 11:26:46 +01:00
Scott Rifenbark
d527a5f7ab sdk-manual: Edits to "Packaging" section.
Edits to improve writing.

(From yocto-docs rev: 04d2df37ad718508c7f78a204d0d5e5fff431ce8)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 11:26:46 +01:00
Scott Rifenbark
c0d1ff66ee sdk-manual: Edits to "Sharing Files Between Recipes"
Added a cross-reference to the term "build host".  Corrected
a subject/verb grammar error.

(From yocto-docs rev: 8763e333867d0039315f0ca0aa96fdadea676783)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 11:26:46 +01:00
Scott Rifenbark
130038674a sdk-manual: Edits to "Finding Logs and Work Files"
This section was poorly organized with a mile long sentence as
the opener.  Fixed it.

(From yocto-docs rev: c7624244e40c807d1c3cea80d2eced3cd9948019)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 11:26:46 +01:00
Scott Rifenbark
815d829600 sdk-manual: Added links to sample tasks to "Working With Recipes"
(From yocto-docs rev: 6dd62a3f97dc4e70a532faae0055ef7937f40afc)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 11:26:46 +01:00
Scott Rifenbark
6068e017e8 sdk-manual: Edits to "Adding Node.js Modules"
Fixed a few sentences up by providing clearer text.

(From yocto-docs rev: e81984d73c05f2d722bc082a100d01c3cc0173ab)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 11:26:46 +01:00
Scott Rifenbark
54e3cdcc27 sdk-manual: Edits to "Adding Native Tools"
Added a cross-reference link to the term "bulid host" and removed
the redundant word "system".

(From yocto-docs rev: 205d6fb6030cecb02301ec9cdc92ac908d250160)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 11:26:46 +01:00
Scott Rifenbark
54609b038f sdk-manual: Edits to "Adding Makefile-Only Software"
Fixed some prose in various places.

(From yocto-docs rev: f754969eff4c314d9f4c489cca2b3c2f8fd87fff)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 11:26:46 +01:00
Scott Rifenbark
73c7e9d229 sdk-manual: Edits to "License Detection"
Updates to prose for better understanding.

(From yocto-docs rev: 44a07560845c973a0da4c27969c740d3d712d323)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 11:26:46 +01:00
Scott Rifenbark
290809334a sdk-manual: Edits to "Dependency Detection and Mapping"
Updated various prose for better understanding.

(From yocto-docs rev: ddbd66d7732bbc8b4940c660f8a8c941a5cc4ea2)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 11:26:46 +01:00
Scott Rifenbark
5a9e1870db sdk-manual: Edits to "Name and Version"
Poor writing left over in here.  Updated some of the prose.

(From yocto-docs rev: 8f71cd997c86610dd62780f74f39dad811098540)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 11:26:46 +01:00
Scott Rifenbark
34f381ee26 sdk-manual: Edits to "A Closer look at devtool add" section.
Corrected some prose to be clearer.

(From yocto-docs rev: c73f3d486fab555e6c6ac3dd1f5fbaf4d531ab29)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 11:26:46 +01:00
Scott Rifenbark
11e0ec39fd sdk-manual, mega-manual: Updated devtool add and upgrade figures
Took out the $TMPDIR part for the output and left more generically
as "Build Output".

(From yocto-docs rev: 4b0375e3293d67e4b5be433cd6c468532fee5a30)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 11:26:46 +01:00
Scott Rifenbark
779f47897d sdk-manual: Changes to the devtool upgrade section.
Edits to improve this section.

(From yocto-docs rev: f062882b3b3cf9c454466fa9d243284d97592bdc)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 11:26:46 +01:00
Scott Rifenbark
d0373e0834 sdk-manual, mega-manual: Updated the devtool upgrade flow diagram.
Added more detail at the top for how the local recipe interacts
with the Upstream Source.

(From yocto-docs rev: c1d49a7c00c458b55396c0efc7a329acd870be6c)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 11:26:46 +01:00
Scott Rifenbark
f633c4294b sdk-manual: Edits to the devtool add workflow section.
Minor edits from the read-through.

(From yocto-docs rev: d165438d3d02f3154fc59197d75ab1cb6a285320)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 11:26:46 +01:00
Scott Rifenbark
ef0fdb9e27 sdk-manual, mega-manual: Updated devtool add flow diagram
Added more detail on how the upstream source or files from
srctree are located.

(From yocto-docs rev: 5eff4b1b68c232071814969b6367188352639f17)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 11:26:46 +01:00
1477 changed files with 35466 additions and 27285 deletions

View File

@@ -38,7 +38,7 @@ from bb.main import bitbake_main, BitBakeConfigParameters, BBMainException
if sys.getfilesystemencoding() != "utf-8":
sys.exit("Please use a locale setting which supports UTF-8 (such as LANG=en_US.UTF-8).\nPython can't change the filesystem locale after loading so we need a UTF-8 when Python starts or things won't work.")
__version__ = "1.39.0"
__version__ = "1.39.1"
if __name__ == "__main__":
if __version__ != bb.__version__:

View File

@@ -22,16 +22,21 @@ sys.path.insert(0, os.path.join(os.path.dirname(os.path.dirname(__file__)), 'lib
import unittest
try:
import bb
import layerindexlib
except RuntimeError as exc:
sys.exit(str(exc))
tests = ["bb.tests.codeparser",
"bb.tests.cooker",
"bb.tests.cow",
"bb.tests.data",
"bb.tests.event",
"bb.tests.fetch",
"bb.tests.parse",
"bb.tests.utils"]
"bb.tests.utils",
"layerindexlib.tests.layerindexobj",
"layerindexlib.tests.restapi",
"layerindexlib.tests.cooker"]
for t in tests:
t = '.'.join(t.split('.')[:3])

View File

@@ -18,11 +18,12 @@
# along with this program. If not, see http://www.gnu.org/licenses/.
HELP="
Usage: source toaster start|stop [webport=<address:port>] [noweb] [nobuild]
Usage: source toaster start|stop [webport=<address:port>] [noweb] [nobuild] [toasterdir]
Optional arguments:
[nobuild] Setup the environment for capturing builds with toaster but disable managed builds
[noweb] Setup the environment for capturing builds with toaster but don't start the web server
[webport] Set the development server (default: localhost:8000)
[toasterdir] Set absolute path to be used as TOASTER_DIR (default: BUILDDIR/../)
"
custom_extention()
@@ -186,6 +187,7 @@ unset OE_ROOT
WEBSERVER=1
export TOASTER_BUILDSERVER=1
ADDR_PORT="localhost:8000"
TOASTERDIR=`dirname $BUILDDIR`
unset CMD
for param in $*; do
case $param in
@@ -211,6 +213,9 @@ for param in $*; do
ADDR_PORT="localhost:$PORT"
fi
;;
toasterdir=*)
TOASTERDIR="${param#*=}"
;;
--help)
echo "$HELP"
return 0
@@ -241,7 +246,7 @@ fi
# 2) the build dir (in build)
# 3) the sqlite db if that is being used.
# 4) pid's we need to clean up on exit/shutdown
export TOASTER_DIR=`dirname $BUILDDIR`
export TOASTER_DIR=$TOASTERDIR
export BB_ENV_EXTRAWHITE="$BB_ENV_EXTRAWHITE TOASTER_DIR"
# Determine the action. If specified by arguments, fine, if not, toggle it

View File

@@ -1929,6 +1929,38 @@
not careful.
</note>
</para></listitem>
<listitem><para><emphasis><filename>[number_threads]</filename>:</emphasis>
Limits tasks to a specific number of simultaneous threads
during execution.
This varflag is useful when your build host has a large number
of cores but certain tasks need to be rate-limited due to various
kinds of resource constraints (e.g. to avoid network throttling).
<filename>number_threads</filename> works similarly to the
<link linkend='var-BB_NUMBER_THREADS'><filename>BB_NUMBER_THREADS</filename></link>
variable but is task-specific.</para>
<para>Set the value globally.
For example, the following makes sure the
<filename>do_fetch</filename> task uses no more than two
simultaneous execution threads:
<literallayout class='monospaced'>
do_fetch[number_threads] = "2"
</literallayout>
<note><title>Warnings</title>
<itemizedlist>
<listitem><para>
Setting the varflag in individual recipes rather
than globally can result in unpredictable behavior.
</para></listitem>
<listitem><para>
Setting the varflag to a value greater than the
value used in the <filename>BB_NUMBER_THREADS</filename>
variable causes <filename>number_threads</filename>
to have no effect.
</para></listitem>
</itemizedlist>
</note>
</para></listitem>
<listitem><para><emphasis><filename>[postfuncs]</filename>:</emphasis>
List of functions to call after the completion of the task.
</para></listitem>

View File

@@ -150,7 +150,7 @@ class COWDictMeta(COWMeta):
yield value
if type == "items":
yield (key, value)
raise StopIteration()
return
def iterkeys(cls):
return cls.iter("keys")

View File

@@ -21,7 +21,7 @@
# with this program; if not, write to the Free Software Foundation, Inc.,
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
__version__ = "1.39.0"
__version__ = "1.39.1"
import sys
if sys.version_info < (3, 4, 0):
@@ -63,6 +63,10 @@ class BBLogger(Logger):
def verbose(self, msg, *args, **kwargs):
return self.log(logging.INFO - 1, msg, *args, **kwargs)
def verbnote(self, msg, *args, **kwargs):
return self.log(logging.INFO + 2, msg, *args, **kwargs)
logging.raiseExceptions = False
logging.setLoggerClass(BBLogger)
@@ -93,6 +97,18 @@ def debug(lvl, *args):
def note(*args):
mainlogger.info(''.join(args))
#
# A higher prioity note which will show on the console but isn't a warning
#
# Something is happening the user should be aware of but they probably did
# something to make it happen
#
def verbnote(*args):
mainlogger.verbnote(''.join(args))
#
# Warnings - things the user likely needs to pay attention to and fix
#
def warn(*args):
mainlogger.warning(''.join(args))

View File

@@ -41,8 +41,6 @@ from bb import data, event, utils
bblogger = logging.getLogger('BitBake')
logger = logging.getLogger('BitBake.Build')
NULL = open(os.devnull, 'r+')
__mtime_cache = {}
def cached_mtime_noerror(f):
@@ -533,7 +531,6 @@ def _exec_task(fn, task, d, quieterr):
self.triggered = True
# Handle logfiles
si = open('/dev/null', 'r')
try:
bb.utils.mkdirhier(os.path.dirname(logfn))
logfile = open(logfn, 'w')
@@ -547,7 +544,8 @@ def _exec_task(fn, task, d, quieterr):
ose = [os.dup(sys.stderr.fileno()), sys.stderr.fileno()]
# Replace those fds with our own
os.dup2(si.fileno(), osi[1])
with open('/dev/null', 'r') as si:
os.dup2(si.fileno(), osi[1])
os.dup2(logfile.fileno(), oso[1])
os.dup2(logfile.fileno(), ose[1])
@@ -608,7 +606,6 @@ def _exec_task(fn, task, d, quieterr):
os.close(osi[0])
os.close(oso[0])
os.close(ose[0])
si.close()
logfile.close()
if os.path.exists(logfn) and os.path.getsize(logfn) == 0:
@@ -803,6 +800,7 @@ def add_tasks(tasklist, d):
if name in flags:
deptask = d.expand(flags[name])
task_deps[name][task] = deptask
getTask('mcdepends')
getTask('depends')
getTask('rdepends')
getTask('deptask')

View File

@@ -37,7 +37,7 @@ import bb.utils
logger = logging.getLogger("BitBake.Cache")
__cache_version__ = "151"
__cache_version__ = "152"
def getCacheFile(path, filename, data_hash):
return os.path.join(path, filename + "." + data_hash)

View File

@@ -97,6 +97,8 @@ class FileChecksumCache(MultiProcessCache):
def checksum_dir(pth):
# Handle directories recursively
if pth == "/":
bb.fatal("Refusing to checksum /")
dirchecksums = []
for root, dirs, files in os.walk(pth):
for name in files:

View File

@@ -140,7 +140,7 @@ class CodeParserCache(MultiProcessCache):
# so that an existing cache gets invalidated. Additionally you'll need
# to increment __cache_version__ in cache.py in order to ensure that old
# recipe caches don't trigger "Taskhash mismatch" errors.
CACHE_VERSION = 9
CACHE_VERSION = 10
def __init__(self):
MultiProcessCache.__init__(self)
@@ -214,7 +214,7 @@ class BufferedLogger(Logger):
self.buffer = []
class PythonParser():
getvars = (".getVar", ".appendVar", ".prependVar")
getvars = (".getVar", ".appendVar", ".prependVar", "oe.utils.conditional")
getvarflags = (".getVarFlag", ".appendVarFlag", ".prependVarFlag")
containsfuncs = ("bb.utils.contains", "base_contains")
containsanyfuncs = ("bb.utils.contains_any", "bb.utils.filter")

View File

@@ -609,7 +609,14 @@ class BBCooker:
k2 = k.split(":do_")
k = k2[0]
ktask = k2[1]
taskdata[mc].add_provider(localdata[mc], self.recipecaches[mc], k)
if mc:
# Provider might be from another mc
for mcavailable in self.multiconfigs:
# The first element is empty
if mcavailable:
taskdata[mcavailable].add_provider(localdata[mcavailable], self.recipecaches[mcavailable], k)
else:
taskdata[mc].add_provider(localdata[mc], self.recipecaches[mc], k)
current += 1
if not ktask.startswith("do_"):
ktask = "do_%s" % ktask
@@ -620,6 +627,27 @@ class BBCooker:
runlist.append([mc, k, ktask, fn])
bb.event.fire(bb.event.TreeDataPreparationProgress(current, len(fulltargetlist)), self.data)
mcdeps = taskdata[mc].get_mcdepends()
# No need to do check providers if there are no mcdeps or not an mc build
if mcdeps and mc:
# Make sure we can provide the multiconfig dependency
seen = set()
new = True
while new:
new = False
for mc in self.multiconfigs:
for k in mcdeps:
if k in seen:
continue
l = k.split(':')
depmc = l[2]
if depmc not in self.multiconfigs:
bb.fatal("Multiconfig dependency %s depends on nonexistent mc configuration %s" % (k,depmc))
else:
logger.debug(1, "Adding providers for multiconfig dependency %s" % l[3])
taskdata[depmc].add_provider(localdata[depmc], self.recipecaches[depmc], l[3])
seen.add(k)
new = True
for mc in self.multiconfigs:
taskdata[mc].add_unresolved(localdata[mc], self.recipecaches[mc])
@@ -706,8 +734,8 @@ class BBCooker:
if not dotname in depend_tree["tdepends"]:
depend_tree["tdepends"][dotname] = []
for dep in rq.rqdata.runtaskentries[tid].depends:
(depmc, depfn, deptaskname, deptaskfn) = bb.runqueue.split_tid_mcfn(dep)
deppn = self.recipecaches[mc].pkg_fn[deptaskfn]
(depmc, depfn, _, deptaskfn) = bb.runqueue.split_tid_mcfn(dep)
deppn = self.recipecaches[depmc].pkg_fn[deptaskfn]
depend_tree["tdepends"][dotname].append("%s.%s" % (deppn, bb.runqueue.taskname_from_tid(dep)))
if taskfn not in seen_fns:
seen_fns.append(taskfn)
@@ -1566,7 +1594,7 @@ class BBCooker:
pkgs_to_build.append(t)
if 'universe' in pkgs_to_build:
parselog.warning("The \"universe\" target is only intended for testing and may produce errors.")
parselog.verbnote("The \"universe\" target is only intended for testing and may produce errors.")
parselog.debug(1, "collating packages for \"universe\"")
pkgs_to_build.remove('universe')
for mc in self.multiconfigs:
@@ -1633,7 +1661,10 @@ class CookerExit(bb.event.Event):
class CookerCollectFiles(object):
def __init__(self, priorities):
self.bbappends = []
self.bbfile_config_priorities = priorities
# Priorities is a list of tupples, with the second element as the pattern.
# We need to sort the list with the longest pattern first, and so on to
# the shortest. This allows nested layers to be properly evaluated.
self.bbfile_config_priorities = sorted(priorities, key=lambda tup: tup[1], reverse=True)
def calc_bbfile_priority( self, filename, matched = None ):
for _, _, regex, pri in self.bbfile_config_priorities:

View File

@@ -16,6 +16,10 @@ def createDaemon(function, logfile):
background as a daemon, returning control to the caller.
"""
# Ensure stdout/stderror are flushed before forking to avoid duplicate output
sys.stdout.flush()
sys.stderr.flush()
try:
# Fork a child process so the parent can exit. This returns control to
# the command-line or shell. It also guarantees that the child will not
@@ -49,8 +53,8 @@ def createDaemon(function, logfile):
# exit() or _exit()?
# _exit is like exit(), but it doesn't call any functions registered
# with atexit (and on_exit) or any registered signal handlers. It also
# closes any open file descriptors. Using exit() may cause all stdio
# streams to be flushed twice and any temporary files may be unexpectedly
# closes any open file descriptors, but doesn't flush any buffered output.
# Using exit() may cause all any temporary files to be unexpectedly
# removed. It's therefore recommended that child branches of a fork()
# and the parent branch(es) of a daemon use _exit().
os._exit(0)
@@ -61,17 +65,19 @@ def createDaemon(function, logfile):
# The second child.
# Replace standard fds with our own
si = open('/dev/null', 'r')
os.dup2(si.fileno(), sys.stdin.fileno())
with open('/dev/null', 'r') as si:
os.dup2(si.fileno(), sys.stdin.fileno())
try:
so = open(logfile, 'a+')
se = so
os.dup2(so.fileno(), sys.stdout.fileno())
os.dup2(se.fileno(), sys.stderr.fileno())
os.dup2(so.fileno(), sys.stderr.fileno())
except io.UnsupportedOperation:
sys.stdout = open(logfile, 'a+')
sys.stderr = sys.stdout
# Have stdout and stderr be the same so log output matches chronologically
# and there aren't two seperate buffers
sys.stderr = sys.stdout
try:
function()
@@ -79,4 +85,9 @@ def createDaemon(function, logfile):
traceback.print_exc()
finally:
bb.event.print_ui_queue()
# os._exit() doesn't flush open files like os.exit() does. Manually flush
# stdout and stderr so that any logging output will be seen, particularly
# exception tracebacks.
sys.stdout.flush()
sys.stderr.flush()
os._exit(0)

View File

@@ -141,6 +141,9 @@ def print_ui_queue():
logger = logging.getLogger("BitBake")
if not _uiready:
from bb.msg import BBLogFormatter
# Flush any existing buffered content
sys.stdout.flush()
sys.stderr.flush()
stdout = logging.StreamHandler(sys.stdout)
stderr = logging.StreamHandler(sys.stderr)
formatter = BBLogFormatter("%(levelname)s: %(message)s")
@@ -395,7 +398,7 @@ class RecipeEvent(Event):
Event.__init__(self)
class RecipePreFinalise(RecipeEvent):
""" Recipe Parsing Complete but not yet finialised"""
""" Recipe Parsing Complete but not yet finalised"""
class RecipeTaskPreProcess(RecipeEvent):
"""

View File

@@ -452,8 +452,8 @@ def uri_replace(ud, uri_find, uri_replace, replacements, d, mirrortarball=None):
# Handle URL parameters
if i:
# Any specified URL parameters must match
for k in uri_replace_decoded[loc]:
if uri_decoded[loc][k] != uri_replace_decoded[loc][k]:
for k in uri_find_decoded[loc]:
if uri_decoded[loc][k] != uri_find_decoded[loc][k]:
return None
# Overwrite any specified replacement parameters
for k in uri_replace_decoded[loc]:

View File

@@ -41,8 +41,9 @@ class Bzr(FetchMethod):
init bzr specific variable within url data
"""
# Create paths to bzr checkouts
bzrdir = d.getVar("BZRDIR") or (d.getVar("DL_DIR") + "/bzr")
relpath = self._strip_leading_slashes(ud.path)
ud.pkgdir = os.path.join(d.expand('${BZRDIR}'), ud.host, relpath)
ud.pkgdir = os.path.join(bzrdir, ud.host, relpath)
ud.setup_revisions(d)
@@ -57,7 +58,7 @@ class Bzr(FetchMethod):
command is "fetch", "update", "revno"
"""
basecmd = d.expand('${FETCHCMD_bzr}')
basecmd = d.getVar("FETCHCMD_bzr") or "/usr/bin/env bzr"
proto = ud.parm.get('protocol', 'http')

View File

@@ -110,7 +110,7 @@ class Cvs(FetchMethod):
if ud.tag:
options.append("-r %s" % ud.tag)
cvsbasecmd = d.getVar("FETCHCMD_cvs")
cvsbasecmd = d.getVar("FETCHCMD_cvs") or "/usr/bin/env cvs"
cvscmd = cvsbasecmd + " '-d" + cvsroot + "' co " + " ".join(options) + " " + ud.module
cvsupdatecmd = cvsbasecmd + " '-d" + cvsroot + "' update -d -P " + " ".join(options)
@@ -121,7 +121,8 @@ class Cvs(FetchMethod):
# create module directory
logger.debug(2, "Fetch: checking for module directory")
pkg = d.getVar('PN')
pkgdir = os.path.join(d.getVar('CVSDIR'), pkg)
cvsdir = d.getVar("CVSDIR") or (d.getVar("DL_DIR") + "/cvs")
pkgdir = os.path.join(cvsdir, pkg)
moddir = os.path.join(pkgdir, localdir)
workdir = None
if os.access(os.path.join(moddir, 'CVS'), os.R_OK):

View File

@@ -261,7 +261,7 @@ class Git(FetchMethod):
gitsrcname = gitsrcname + '_' + ud.revisions[name]
dl_dir = d.getVar("DL_DIR")
gitdir = d.getVar("GITDIR") or (dl_dir + "/git2/")
gitdir = d.getVar("GITDIR") or (dl_dir + "/git2")
ud.clonedir = os.path.join(gitdir, gitsrcname)
ud.localfile = ud.clonedir
@@ -353,10 +353,9 @@ class Git(FetchMethod):
break
if needupdate:
try:
runfetchcmd("%s remote rm origin" % ud.basecmd, d, workdir=ud.clonedir)
except bb.fetch2.FetchError:
logger.debug(1, "No Origin")
output = runfetchcmd("%s remote" % ud.basecmd, d, quiet=True, workdir=ud.clonedir)
if "origin" in output:
runfetchcmd("%s remote rm origin" % ud.basecmd, d, workdir=ud.clonedir)
runfetchcmd("%s remote add --mirror=fetch origin %s" % (ud.basecmd, repourl), d, workdir=ud.clonedir)
fetch_cmd = "LANG=C %s fetch -f --prune --progress %s refs/*:refs/*" % (ud.basecmd, repourl)

View File

@@ -80,7 +80,7 @@ class Hg(FetchMethod):
ud.fullmirror = os.path.join(d.getVar("DL_DIR"), mirrortarball)
ud.mirrortarballs = [mirrortarball]
hgdir = d.getVar("HGDIR") or (d.getVar("DL_DIR") + "/hg/")
hgdir = d.getVar("HGDIR") or (d.getVar("DL_DIR") + "/hg")
ud.pkgdir = os.path.join(hgdir, hgsrcname)
ud.moddir = os.path.join(ud.pkgdir, ud.module)
ud.localfile = ud.moddir

View File

@@ -32,8 +32,9 @@ class Osc(FetchMethod):
ud.module = ud.parm["module"]
# Create paths to osc checkouts
oscdir = d.getVar("OSCDIR") or (d.getVar("DL_DIR") + "/osc")
relpath = self._strip_leading_slashes(ud.path)
ud.pkgdir = os.path.join(d.getVar('OSCDIR'), ud.host)
ud.pkgdir = os.path.join(oscdir, ud.host)
ud.moddir = os.path.join(ud.pkgdir, relpath, ud.module)
if 'rev' in ud.parm:
@@ -54,7 +55,7 @@ class Osc(FetchMethod):
command is "fetch", "update", "info"
"""
basecmd = d.expand('${FETCHCMD_osc}')
basecmd = d.getVar("FETCHCMD_osc") or "/usr/bin/env osc"
proto = ud.parm.get('protocol', 'ocs')

View File

@@ -43,13 +43,9 @@ class Perforce(FetchMethod):
provided by the env, use it. If P4PORT is specified by the recipe, use
its values, which may override the settings in P4CONFIG.
"""
ud.basecmd = d.getVar('FETCHCMD_p4')
if not ud.basecmd:
ud.basecmd = "/usr/bin/env p4"
ud.basecmd = d.getVar("FETCHCMD_p4") or "/usr/bin/env p4"
ud.dldir = d.getVar('P4DIR')
if not ud.dldir:
ud.dldir = '%s/%s' % (d.getVar('DL_DIR'), 'p4')
ud.dldir = d.getVar("P4DIR") or (d.getVar("DL_DIR") + "/p4")
path = ud.url.split('://')[1]
path = path.split(';')[0]

View File

@@ -45,6 +45,8 @@ class Repo(FetchMethod):
"master".
"""
ud.basecmd = d.getVar("FETCHCMD_repo") or "/usr/bin/env repo"
ud.proto = ud.parm.get('protocol', 'git')
ud.branch = ud.parm.get('branch', 'master')
ud.manifest = ud.parm.get('manifest', 'default.xml')
@@ -60,8 +62,8 @@ class Repo(FetchMethod):
logger.debug(1, "%s already exists (or was stashed). Skipping repo init / sync.", ud.localpath)
return
repodir = d.getVar("REPODIR") or (d.getVar("DL_DIR") + "/repo")
gitsrcname = "%s%s" % (ud.host, ud.path.replace("/", "."))
repodir = d.getVar("REPODIR") or os.path.join(d.getVar("DL_DIR"), "repo")
codir = os.path.join(repodir, gitsrcname, ud.manifest)
if ud.user:
@@ -72,11 +74,11 @@ class Repo(FetchMethod):
repodir = os.path.join(codir, "repo")
bb.utils.mkdirhier(repodir)
if not os.path.exists(os.path.join(repodir, ".repo")):
bb.fetch2.check_network_access(d, "repo init -m %s -b %s -u %s://%s%s%s" % (ud.manifest, ud.branch, ud.proto, username, ud.host, ud.path), ud.url)
runfetchcmd("repo init -m %s -b %s -u %s://%s%s%s" % (ud.manifest, ud.branch, ud.proto, username, ud.host, ud.path), d, workdir=repodir)
bb.fetch2.check_network_access(d, "%s init -m %s -b %s -u %s://%s%s%s" % (ud.basecmd, ud.manifest, ud.branch, ud.proto, username, ud.host, ud.path), ud.url)
runfetchcmd("%s init -m %s -b %s -u %s://%s%s%s" % (ud.basecmd, ud.manifest, ud.branch, ud.proto, username, ud.host, ud.path), d, workdir=repodir)
bb.fetch2.check_network_access(d, "repo sync %s" % ud.url, ud.url)
runfetchcmd("repo sync", d, workdir=repodir)
bb.fetch2.check_network_access(d, "%s sync %s" % (ud.basecmd, ud.url), ud.url)
runfetchcmd("%s sync" % ud.basecmd, d, workdir=repodir)
scmdata = ud.parm.get("scmdata", "")
if scmdata == "keep":

View File

@@ -49,7 +49,7 @@ class Svn(FetchMethod):
if not "module" in ud.parm:
raise MissingParameterError('module', ud.url)
ud.basecmd = d.getVar('FETCHCMD_svn')
ud.basecmd = d.getVar("FETCHCMD_svn") or "/usr/bin/env svn --non-interactive --trust-server-cert"
ud.module = ud.parm["module"]
@@ -59,8 +59,9 @@ class Svn(FetchMethod):
ud.path_spec = ud.parm["path_spec"]
# Create paths to svn checkouts
svndir = d.getVar("SVNDIR") or (d.getVar("DL_DIR") + "/svn")
relpath = self._strip_leading_slashes(ud.path)
ud.pkgdir = os.path.join(d.expand('${SVNDIR}'), ud.host, relpath)
ud.pkgdir = os.path.join(svndir, ud.host, relpath)
ud.moddir = os.path.join(ud.pkgdir, ud.module)
ud.setup_revisions(d)

View File

@@ -40,6 +40,7 @@ class BBLogFormatter(logging.Formatter):
VERBOSE = logging.INFO - 1
NOTE = logging.INFO
PLAIN = logging.INFO + 1
VERBNOTE = logging.INFO + 2
ERROR = logging.ERROR
WARNING = logging.WARNING
CRITICAL = logging.CRITICAL
@@ -51,6 +52,7 @@ class BBLogFormatter(logging.Formatter):
VERBOSE: 'NOTE',
NOTE : 'NOTE',
PLAIN : '',
VERBNOTE: 'NOTE',
WARNING : 'WARNING',
ERROR : 'ERROR',
CRITICAL: 'ERROR',
@@ -66,6 +68,7 @@ class BBLogFormatter(logging.Formatter):
VERBOSE : BASECOLOR,
NOTE : BASECOLOR,
PLAIN : BASECOLOR,
VERBNOTE: BASECOLOR,
WARNING : YELLOW,
ERROR : RED,
CRITICAL: RED,

View File

@@ -343,30 +343,31 @@ def runAnonFuncs(d):
def finalize(fn, d, variant = None):
saved_handlers = bb.event.get_handlers().copy()
try:
for var in d.getVar('__BBHANDLERS', False) or []:
# try to add the handler
handlerfn = d.getVarFlag(var, "filename", False)
if not handlerfn:
bb.fatal("Undefined event handler function '%s'" % var)
handlerln = int(d.getVarFlag(var, "lineno", False))
bb.event.register(var, d.getVar(var, False), (d.getVarFlag(var, "eventmask") or "").split(), handlerfn, handlerln)
for var in d.getVar('__BBHANDLERS', False) or []:
# try to add the handler
handlerfn = d.getVarFlag(var, "filename", False)
if not handlerfn:
bb.fatal("Undefined event handler function '%s'" % var)
handlerln = int(d.getVarFlag(var, "lineno", False))
bb.event.register(var, d.getVar(var, False), (d.getVarFlag(var, "eventmask") or "").split(), handlerfn, handlerln)
bb.event.fire(bb.event.RecipePreFinalise(fn), d)
bb.event.fire(bb.event.RecipePreFinalise(fn), d)
bb.data.expandKeys(d)
runAnonFuncs(d)
bb.data.expandKeys(d)
runAnonFuncs(d)
tasklist = d.getVar('__BBTASKS', False) or []
bb.event.fire(bb.event.RecipeTaskPreProcess(fn, list(tasklist)), d)
bb.build.add_tasks(tasklist, d)
tasklist = d.getVar('__BBTASKS', False) or []
bb.event.fire(bb.event.RecipeTaskPreProcess(fn, list(tasklist)), d)
bb.build.add_tasks(tasklist, d)
bb.parse.siggen.finalise(fn, d, variant)
bb.parse.siggen.finalise(fn, d, variant)
d.setVar('BBINCLUDED', bb.parse.get_file_depends(d))
d.setVar('BBINCLUDED', bb.parse.get_file_depends(d))
bb.event.fire(bb.event.RecipeParsed(fn), d)
bb.event.set_handlers(saved_handlers)
bb.event.fire(bb.event.RecipeParsed(fn), d)
finally:
bb.event.set_handlers(saved_handlers)
def _create_variants(datastores, names, function, onlyfinalise):
def create_variant(name, orig_d, arg = None):

View File

@@ -94,13 +94,13 @@ class RunQueueStats:
self.active = self.active - 1
self.failed = self.failed + 1
def taskCompleted(self, number = 1):
self.active = self.active - number
self.completed = self.completed + number
def taskCompleted(self):
self.active = self.active - 1
self.completed = self.completed + 1
def taskSkipped(self, number = 1):
self.active = self.active + number
self.skipped = self.skipped + number
def taskSkipped(self):
self.active = self.active + 1
self.skipped = self.skipped + 1
def taskActive(self):
self.active = self.active + 1
@@ -134,6 +134,7 @@ class RunQueueScheduler(object):
self.prio_map = [self.rqdata.runtaskentries.keys()]
self.buildable = []
self.skip_maxthread = {}
self.stamps = {}
for tid in self.rqdata.runtaskentries:
(mc, fn, taskname, taskfn) = split_tid_mcfn(tid)
@@ -150,8 +151,25 @@ class RunQueueScheduler(object):
self.buildable = [x for x in self.buildable if x not in self.rq.runq_running]
if not self.buildable:
return None
# Filter out tasks that have a max number of threads that have been exceeded
skip_buildable = {}
for running in self.rq.runq_running.difference(self.rq.runq_complete):
rtaskname = taskname_from_tid(running)
if rtaskname not in self.skip_maxthread:
self.skip_maxthread[rtaskname] = self.rq.cfgData.getVarFlag(rtaskname, "number_threads")
if not self.skip_maxthread[rtaskname]:
continue
if rtaskname in skip_buildable:
skip_buildable[rtaskname] += 1
else:
skip_buildable[rtaskname] = 1
if len(self.buildable) == 1:
tid = self.buildable[0]
taskname = taskname_from_tid(tid)
if taskname in skip_buildable and skip_buildable[taskname] >= int(self.skip_maxthread[taskname]):
return None
stamp = self.stamps[tid]
if stamp not in self.rq.build_stamps.values():
return tid
@@ -164,6 +182,9 @@ class RunQueueScheduler(object):
best = None
bestprio = None
for tid in self.buildable:
taskname = taskname_from_tid(tid)
if taskname in skip_buildable and skip_buildable[taskname] >= int(self.skip_maxthread[taskname]):
continue
prio = self.rev_prio_map[tid]
if bestprio is None or bestprio > prio:
stamp = self.stamps[tid]
@@ -178,7 +199,7 @@ class RunQueueScheduler(object):
"""
Return the id of the task we should build next
"""
if self.rq.stats.active < self.rq.number_tasks:
if self.rq.can_start_task():
return self.next_buildable_task()
def newbuildable(self, task):
@@ -581,6 +602,19 @@ class RunQueueData:
if t in taskData[mc].taskentries:
depends.add(t)
def add_mc_dependencies(mc, tid):
mcdeps = taskData[mc].get_mcdepends()
for dep in mcdeps:
mcdependency = dep.split(':')
pn = mcdependency[3]
frommc = mcdependency[1]
mcdep = mcdependency[2]
deptask = mcdependency[4]
if mc == frommc:
fn = taskData[mcdep].build_targets[pn][0]
newdep = '%s:%s' % (fn,deptask)
taskData[mc].taskentries[tid].tdepends.append(newdep)
for mc in taskData:
for tid in taskData[mc].taskentries:
@@ -597,12 +631,16 @@ class RunQueueData:
if fn in taskData[mc].failed_fns:
continue
# We add multiconfig dependencies before processing internal task deps (tdepends)
if 'mcdepends' in task_deps and taskname in task_deps['mcdepends']:
add_mc_dependencies(mc, tid)
# Resolve task internal dependencies
#
# e.g. addtask before X after Y
for t in taskData[mc].taskentries[tid].tdepends:
(_, depfn, deptaskname, _) = split_tid_mcfn(t)
depends.add(build_tid(mc, depfn, deptaskname))
(depmc, depfn, deptaskname, _) = split_tid_mcfn(t)
depends.add(build_tid(depmc, depfn, deptaskname))
# Resolve 'deptask' dependencies
#
@@ -1032,7 +1070,7 @@ class RunQueueData:
msg += "\n%s has unique rprovides:\n %s" % (provfn, "\n ".join(rprovide_results[provfn] - commonrprovs))
if self.warn_multi_bb:
logger.warning(msg)
logger.verbnote(msg)
else:
logger.error(msg)
@@ -1040,7 +1078,7 @@ class RunQueueData:
# Create a whitelist usable by the stamp checks
self.stampfnwhitelist = {}
for mc in self.taskData:
for mc in self.taskData:
self.stampfnwhitelist[mc] = []
for entry in self.stampwhitelist.split():
if entry not in self.taskData[mc].build_targets:
@@ -1072,7 +1110,7 @@ class RunQueueData:
bb.debug(1, "Task %s is marked nostamp, cannot invalidate this task" % taskname)
else:
logger.verbose("Invalidate task %s, %s", taskname, fn)
bb.parse.siggen.invalidate_task(taskname, self.dataCaches[mc], fn)
bb.parse.siggen.invalidate_task(taskname, self.dataCaches[mc], taskfn)
self.init_progress_reporter.next_stage()
@@ -1716,6 +1754,10 @@ class RunQueueExecute:
valid = bb.utils.better_eval(call, locs)
return valid
def can_start_task(self):
can_start = self.stats.active < self.number_tasks
return can_start
class RunQueueExecuteDummy(RunQueueExecute):
def __init__(self, rq):
self.rq = rq
@@ -1789,13 +1831,14 @@ class RunQueueExecuteTasks(RunQueueExecute):
bb.build.del_stamp(taskname, self.rqdata.dataCaches[mc], taskfn)
self.rq.scenequeue_covered.remove(tid)
toremove = covered_remove
toremove = covered_remove | self.rq.scenequeue_notcovered
for task in toremove:
logger.debug(1, 'Not skipping task %s due to setsceneverify', task)
while toremove:
covered_remove = []
for task in toremove:
removecoveredtask(task)
if task in self.rq.scenequeue_covered:
removecoveredtask(task)
for deptask in self.rqdata.runtaskentries[task].depends:
if deptask not in self.rq.scenequeue_covered:
continue
@@ -1865,14 +1908,13 @@ class RunQueueExecuteTasks(RunQueueExecute):
continue
if revdep in self.runq_buildable:
continue
alldeps = 1
alldeps = True
for dep in self.rqdata.runtaskentries[revdep].depends:
if dep not in self.runq_complete:
alldeps = 0
if alldeps == 1:
alldeps = False
break
if alldeps:
self.setbuildable(revdep)
fn = fn_from_tid(revdep)
taskname = taskname_from_tid(revdep)
logger.debug(1, "Marking task %s as buildable", revdep)
def task_complete(self, task):
@@ -1896,8 +1938,8 @@ class RunQueueExecuteTasks(RunQueueExecute):
self.setbuildable(task)
bb.event.fire(runQueueTaskSkipped(task, self.stats, self.rq, reason), self.cfgData)
self.task_completeoutright(task)
self.stats.taskCompleted()
self.stats.taskSkipped()
self.stats.taskCompleted()
def execute(self):
"""
@@ -2007,7 +2049,7 @@ class RunQueueExecuteTasks(RunQueueExecute):
self.build_stamps2.append(self.build_stamps[task])
self.runq_running.add(task)
self.stats.taskActive()
if self.stats.active < self.number_tasks:
if self.can_start_task():
return True
if self.stats.active > 0:
@@ -2062,6 +2104,7 @@ class RunQueueExecuteScenequeue(RunQueueExecute):
# If we don't have any setscene functions, skip this step
if len(self.rqdata.runq_setscene_tids) == 0:
rq.scenequeue_covered = set()
rq.scenequeue_notcovered = set()
rq.state = runQueueRunInit
return
@@ -2277,10 +2320,15 @@ class RunQueueExecuteScenequeue(RunQueueExecute):
sq_hash.append(self.rqdata.runtaskentries[tid].hash)
sq_taskname.append(taskname)
sq_task.append(tid)
self.cooker.data.setVar("BB_SETSCENE_STAMPCURRENT_COUNT", len(stamppresent))
call = self.rq.hashvalidate + "(sq_fn, sq_task, sq_hash, sq_hashfn, d)"
locs = { "sq_fn" : sq_fn, "sq_task" : sq_taskname, "sq_hash" : sq_hash, "sq_hashfn" : sq_hashfn, "d" : self.cooker.data }
valid = bb.utils.better_eval(call, locs)
self.cooker.data.delVar("BB_SETSCENE_STAMPCURRENT_COUNT")
valid_new = stamppresent
for v in valid:
valid_new.append(sq_task[v])
@@ -2342,8 +2390,8 @@ class RunQueueExecuteScenequeue(RunQueueExecute):
def task_failoutright(self, task):
self.runq_running.add(task)
self.runq_buildable.add(task)
self.stats.taskCompleted()
self.stats.taskSkipped()
self.stats.taskCompleted()
self.scenequeue_notcovered.add(task)
self.scenequeue_updatecounters(task, True)
@@ -2351,8 +2399,8 @@ class RunQueueExecuteScenequeue(RunQueueExecute):
self.runq_running.add(task)
self.runq_buildable.add(task)
self.task_completeoutright(task)
self.stats.taskCompleted()
self.stats.taskSkipped()
self.stats.taskCompleted()
def execute(self):
"""
@@ -2362,7 +2410,7 @@ class RunQueueExecuteScenequeue(RunQueueExecute):
self.rq.read_workers()
task = None
if self.stats.active < self.number_tasks:
if self.can_start_task():
# Find the next setscene to run
for nexttask in self.rqdata.runq_setscene_tids:
if nexttask in self.runq_buildable and nexttask not in self.runq_running and self.stamps[nexttask] not in self.build_stamps.values():
@@ -2421,7 +2469,7 @@ class RunQueueExecuteScenequeue(RunQueueExecute):
self.build_stamps2.append(self.build_stamps[task])
self.runq_running.add(task)
self.stats.taskActive()
if self.stats.active < self.number_tasks:
if self.can_start_task():
return True
if self.stats.active > 0:

View File

@@ -377,11 +377,12 @@ class BitBakeServer(object):
if os.path.exists(sockname):
os.unlink(sockname)
# Place the log in the builddirectory alongside the lock file
logfile = os.path.join(os.path.dirname(self.bitbake_lock.name), "bitbake-cookerdaemon.log")
self.sock = socket.socket(socket.AF_UNIX, socket.SOCK_STREAM)
# AF_UNIX has path length issues so chdir here to workaround
cwd = os.getcwd()
logfile = os.path.join(cwd, "bitbake-cookerdaemon.log")
try:
os.chdir(os.path.dirname(sockname))
self.sock.bind(os.path.basename(sockname))
@@ -394,11 +395,16 @@ class BitBakeServer(object):
bb.daemonize.createDaemon(self._startServer, logfile)
self.sock.close()
self.bitbake_lock.close()
os.close(self.readypipein)
ready = ConnectionReader(self.readypipe)
r = ready.poll(30)
if r:
r = ready.get()
try:
r = ready.get()
except EOFError:
# Trap the child exitting/closing the pipe and error out
r = None
if not r or r != "ready":
ready.close()
bb.error("Unable to start bitbake server")
@@ -424,21 +430,16 @@ class BitBakeServer(object):
bb.error("Server log for this session (%s):\n%s" % (logfile, "".join(lines)))
raise SystemExit(1)
ready.close()
os.close(self.readypipein)
def _startServer(self):
print(self.start_log_format % (os.getpid(), datetime.datetime.now().strftime(self.start_log_datetime_format)))
server = ProcessServer(self.bitbake_lock, self.sock, self.sockname)
self.configuration.setServerRegIdleCallback(server.register_idle_function)
os.close(self.readypipe)
writer = ConnectionWriter(self.readypipein)
try:
self.cooker = bb.cooker.BBCooker(self.configuration, self.featureset)
writer.send("ready")
except:
writer.send("fail")
raise
finally:
os.close(self.readypipein)
self.cooker = bb.cooker.BBCooker(self.configuration, self.featureset)
writer.send("ready")
writer.close()
server.cooker = self.cooker
server.server_timeout = self.configuration.server_timeout
server.xmlrpcinterface = self.configuration.xmlrpcinterface

View File

@@ -193,15 +193,24 @@ class SignatureGeneratorBasic(SignatureGenerator):
return taint
def get_taskhash(self, fn, task, deps, dataCache):
mc = ''
if fn.startswith('multiconfig:'):
mc = fn.split(':')[1]
k = fn + "." + task
data = dataCache.basetaskhash[k]
self.basehash[k] = data
self.runtaskdeps[k] = []
self.file_checksum_values[k] = []
recipename = dataCache.pkg_fn[fn]
for dep in sorted(deps, key=clean_basepath):
depname = dataCache.pkg_fn[self.pkgnameextract.search(dep).group('fn')]
pkgname = self.pkgnameextract.search(dep).group('fn')
if mc:
depmc = pkgname.split(':')[1]
if mc != depmc:
continue
depname = dataCache.pkg_fn[pkgname]
if not self.rundep_check(fn, recipename, task, dep, depname, dataCache):
continue
if dep not in self.taskhash:
@@ -347,7 +356,7 @@ class SignatureGeneratorBasicHash(SignatureGeneratorBasic):
def stampcleanmask(self, stampbase, fn, taskname, extrainfo):
return self.stampfile(stampbase, fn, taskname, extrainfo, clean=True)
def invalidate_task(self, task, d, fn):
bb.note("Tainting hash to force rebuild of task %s, %s" % (fn, task))
bb.build.write_taint(task, d, fn)
@@ -636,7 +645,7 @@ def compare_sigfiles(a, b, recursecb=None, color=False, collapsed=False):
if collapsed:
output.extend(recout)
else:
# If a dependent hash changed, might as well print the line above and then defer to the changes in
# If a dependent hash changed, might as well print the line above and then defer to the changes in
# that hash since in all likelyhood, they're the same changes this task also saw.
output = [output[-1]] + recout

View File

@@ -70,6 +70,8 @@ class TaskData:
self.skiplist = skiplist
self.mcdepends = []
def add_tasks(self, fn, dataCache):
"""
Add tasks for a given fn to the database
@@ -88,6 +90,13 @@ class TaskData:
self.add_extra_deps(fn, dataCache)
def add_mcdepends(task):
for dep in task_deps['mcdepends'][task].split():
if len(dep.split(':')) != 5:
bb.msg.fatal("TaskData", "Error for %s:%s[%s], multiconfig dependency %s does not contain exactly four ':' characters.\n Task '%s' should be specified in the form 'multiconfig:fromMC:toMC:packagename:task'" % (fn, task, 'mcdepends', dep, 'mcdepends'))
if dep not in self.mcdepends:
self.mcdepends.append(dep)
# Common code for dep_name/depends = 'depends'/idepends and 'rdepends'/irdepends
def handle_deps(task, dep_name, depends, seen):
if dep_name in task_deps and task in task_deps[dep_name]:
@@ -110,16 +119,20 @@ class TaskData:
parentids = []
for dep in task_deps['parents'][task]:
if dep not in task_deps['tasks']:
bb.debug(2, "Not adding dependeny of %s on %s since %s does not exist" % (task, dep, dep))
bb.debug(2, "Not adding dependency of %s on %s since %s does not exist" % (task, dep, dep))
continue
parentid = "%s:%s" % (fn, dep)
parentids.append(parentid)
self.taskentries[tid].tdepends.extend(parentids)
# Touch all intertask dependencies
handle_deps(task, 'depends', self.taskentries[tid].idepends, self.seen_build_target)
handle_deps(task, 'rdepends', self.taskentries[tid].irdepends, self.seen_run_target)
if 'mcdepends' in task_deps and task in task_deps['mcdepends']:
add_mcdepends(task)
# Work out build dependencies
if not fn in self.depids:
dependids = set()
@@ -537,6 +550,9 @@ class TaskData:
provmap[name] = provider[0]
return provmap
def get_mcdepends(self):
return self.mcdepends
def dump_data(self):
"""
Dump some debug information on the internal data structures

View File

@@ -0,0 +1,83 @@
# ex:ts=4:sw=4:sts=4:et
# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
#
# BitBake Tests for cooker.py
#
# 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 unittest
import tempfile
import os
import bb, bb.cooker
import re
import logging
# Cooker tests
class CookerTest(unittest.TestCase):
def setUp(self):
# At least one variable needs to be set
self.d = bb.data.init()
topdir = os.path.join(os.path.dirname(os.path.realpath(__file__)), "testdata/cooker")
self.d.setVar('TOPDIR', topdir)
def test_CookerCollectFiles_sublayers(self):
'''Test that a sublayer of an existing layer does not trigger
No bb files matched ...'''
def append_collection(topdir, path, d):
collection = path.split('/')[-1]
pattern = "^" + topdir + "/" + path + "/"
regex = re.compile(pattern)
priority = 5
d.setVar('BBFILE_COLLECTIONS', (d.getVar('BBFILE_COLLECTIONS') or "") + " " + collection)
d.setVar('BBFILE_PATTERN_%s' % (collection), pattern)
d.setVar('BBFILE_PRIORITY_%s' % (collection), priority)
return (collection, pattern, regex, priority)
topdir = self.d.getVar("TOPDIR")
# Priorities: list of (collection, pattern, regex, priority)
bbfile_config_priorities = []
# Order is important for this test, shortest to longest is typical failure case
bbfile_config_priorities.append( append_collection(topdir, 'first', self.d) )
bbfile_config_priorities.append( append_collection(topdir, 'second', self.d) )
bbfile_config_priorities.append( append_collection(topdir, 'second/third', self.d) )
pkgfns = [ topdir + '/first/recipes/sample1_1.0.bb',
topdir + '/second/recipes/sample2_1.0.bb',
topdir + '/second/third/recipes/sample3_1.0.bb' ]
class LogHandler(logging.Handler):
def __init__(self):
logging.Handler.__init__(self)
self.logdata = []
def emit(self, record):
self.logdata.append(record.getMessage())
# Move cooker to use my special logging
logger = bb.cooker.logger
log_handler = LogHandler()
logger.addHandler(log_handler)
collection = bb.cooker.CookerCollectFiles(bbfile_config_priorities)
collection.collection_priorities(pkgfns, self.d)
logger.removeHandler(log_handler)
# Should be empty (no generated messages)
expected = []
self.assertEqual(log_handler.logdata, expected)

View File

@@ -406,6 +406,8 @@ class MirrorUriTest(FetcherTest):
: "http://somewhere2.org/somefile_1.2.3.tar.gz",
("http://somewhere.org/somedir1/somedir2/somefile_1.2.3.tar.gz", "http://.*/.*", "http://somewhere2.org/")
: "http://somewhere2.org/somefile_1.2.3.tar.gz",
("git://someserver.org/bitbake;tag=1234567890123456789012345678901234567890;branch=master", "git://someserver.org/bitbake;branch=master", "git://git.openembedded.org/bitbake;protocol=http")
: "git://git.openembedded.org/bitbake;tag=1234567890123456789012345678901234567890;branch=master;protocol=http",
#Renaming files doesn't work
#("http://somewhere.org/somedir1/somefile_1.2.3.tar.gz", "http://somewhere.org/somedir1/somefile_1.2.3.tar.gz", "http://somewhere2.org/somedir3/somefile_2.3.4.tar.gz") : "http://somewhere2.org/somedir3/somefile_2.3.4.tar.gz"
@@ -865,12 +867,12 @@ class FetchLatestVersionTest(FetcherTest):
("dtc", "git://git.qemu.org/dtc.git", "65cc4d2748a2c2e6f27f1cf39e07a5dbabd80ebf", "")
: "1.4.0",
# combination version pattern
("sysprof", "git://git.gnome.org/sysprof", "cd44ee6644c3641507fb53b8a2a69137f2971219", "")
("sysprof", "git://gitlab.gnome.org/GNOME/sysprof;protocol=https", "cd44ee6644c3641507fb53b8a2a69137f2971219", "")
: "1.2.0",
("u-boot-mkimage", "git://git.denx.de/u-boot.git;branch=master;protocol=git", "62c175fbb8a0f9a926c88294ea9f7e88eb898f6c", "")
: "2014.01",
# version pattern "yyyymmdd"
("mobile-broadband-provider-info", "git://git.gnome.org/mobile-broadband-provider-info", "4ed19e11c2975105b71b956440acdb25d46a347d", "")
("mobile-broadband-provider-info", "git://gitlab.gnome.org/GNOME/mobile-broadband-provider-info;protocol=https", "4ed19e11c2975105b71b956440acdb25d46a347d", "")
: "20120614",
# packages with a valid UPSTREAM_CHECK_GITTAGREGEX
("xf86-video-omap", "git://anongit.freedesktop.org/xorg/driver/xf86-video-omap", "ae0394e687f1a77e966cf72f895da91840dffb8f", "(?P<pver>(\d+\.(\d\.?)*))")

View File

@@ -524,12 +524,17 @@ def md5_file(filename):
"""
Return the hex string representation of the MD5 checksum of filename.
"""
import hashlib
m = hashlib.md5()
import hashlib, mmap
with open(filename, "rb") as f:
for line in f:
m.update(line)
m = hashlib.md5()
try:
with mmap.mmap(f.fileno(), 0, access=mmap.ACCESS_READ) as mm:
for chunk in iter(lambda: mm.read(8192), b''):
m.update(chunk)
except ValueError:
# You can't mmap() an empty file so silence this exception
pass
return m.hexdigest()
def sha256_file(filename):
@@ -901,6 +906,23 @@ def copyfile(src, dest, newmtime = None, sstat = None):
newmtime = sstat[stat.ST_MTIME]
return newmtime
def break_hardlinks(src, sstat = None):
"""
Ensures src is the only hardlink to this file. Other hardlinks,
if any, are not affected (other than in their st_nlink value, of
course). Returns true on success and false on failure.
"""
try:
if not sstat:
sstat = os.lstat(src)
except Exception as e:
logger.warning("break_hardlinks: stat of %s failed (%s)" % (src, e))
return False
if sstat[stat.ST_NLINK] == 1:
return True
return copyfile(src, src, sstat=sstat)
def which(path, item, direction = 0, history = False, executable=False):
"""
Locate `item` in the list of paths `path` (colon separated string like $PATH).
@@ -1285,7 +1307,7 @@ def edit_metadata_file(meta_file, variables, varfunc):
return updated
def edit_bblayers_conf(bblayers_conf, add, remove):
def edit_bblayers_conf(bblayers_conf, add, remove, edit_cb=None):
"""Edit bblayers.conf, adding and/or removing layers
Parameters:
bblayers_conf: path to bblayers.conf file to edit
@@ -1293,6 +1315,8 @@ def edit_bblayers_conf(bblayers_conf, add, remove):
list to add nothing
remove: layer path (or list of layer paths) to remove; None or
empty list to remove nothing
edit_cb: optional callback function that will be called after
processing adds/removes once per existing entry.
Returns a tuple:
notadded: list of layers specified to be added but weren't
(because they were already in the list)
@@ -1356,6 +1380,17 @@ def edit_bblayers_conf(bblayers_conf, add, remove):
bblayers.append(addlayer)
del addlayers[:]
if edit_cb:
newlist = []
for layer in bblayers:
res = edit_cb(layer, canonicalise_path(layer))
if res != layer:
newlist.append(res)
updated = True
else:
newlist.append(layer)
bblayers = newlist
if updated:
if op == '+=' and not bblayers:
bblayers = None

View File

@@ -45,7 +45,7 @@ class ActionPlugin(LayerPlugin):
notadded, _ = bb.utils.edit_bblayers_conf(bblayers_conf, layerdirs, None)
if not (args.force or notadded):
try:
self.tinfoil.parseRecipes()
self.tinfoil.run_command('parseConfiguration')
except bb.tinfoil.TinfoilUIException:
# Restore the back up copy of bblayers.conf
shutil.copy2(backup, bblayers_conf)

View File

@@ -1,10 +1,9 @@
import layerindexlib
import argparse
import http.client
import json
import logging
import os
import subprocess
import urllib.parse
from bblayers.action import ActionPlugin
@@ -21,110 +20,6 @@ class LayerIndexPlugin(ActionPlugin):
This class inherits ActionPlugin to get do_add_layer.
"""
def get_json_data(self, apiurl):
proxy_settings = os.environ.get("http_proxy", None)
conn = None
_parsedurl = urllib.parse.urlparse(apiurl)
path = _parsedurl.path
query = _parsedurl.query
def parse_url(url):
parsedurl = urllib.parse.urlparse(url)
if parsedurl.netloc[0] == '[':
host, port = parsedurl.netloc[1:].split(']', 1)
if ':' in port:
port = port.rsplit(':', 1)[1]
else:
port = None
else:
if parsedurl.netloc.count(':') == 1:
(host, port) = parsedurl.netloc.split(":")
else:
host = parsedurl.netloc
port = None
return (host, 80 if port is None else int(port))
if proxy_settings is None:
host, port = parse_url(apiurl)
conn = http.client.HTTPConnection(host, port)
conn.request("GET", path + "?" + query)
else:
host, port = parse_url(proxy_settings)
conn = http.client.HTTPConnection(host, port)
conn.request("GET", apiurl)
r = conn.getresponse()
if r.status != 200:
raise Exception("Failed to read " + path + ": %d %s" % (r.status, r.reason))
return json.loads(r.read().decode())
def get_layer_deps(self, layername, layeritems, layerbranches, layerdependencies, branchnum, selfname=False):
def layeritems_info_id(items_name, layeritems):
litems_id = None
for li in layeritems:
if li['name'] == items_name:
litems_id = li['id']
break
return litems_id
def layerbranches_info(items_id, layerbranches):
lbranch = {}
for lb in layerbranches:
if lb['layer'] == items_id and lb['branch'] == branchnum:
lbranch['id'] = lb['id']
lbranch['vcs_subdir'] = lb['vcs_subdir']
break
return lbranch
def layerdependencies_info(lb_id, layerdependencies):
ld_deps = []
for ld in layerdependencies:
if ld['layerbranch'] == lb_id and not ld['dependency'] in ld_deps:
ld_deps.append(ld['dependency'])
if not ld_deps:
logger.error("The dependency of layerDependencies is not found.")
return ld_deps
def layeritems_info_name_subdir(items_id, layeritems):
litems = {}
for li in layeritems:
if li['id'] == items_id:
litems['vcs_url'] = li['vcs_url']
litems['name'] = li['name']
break
return litems
if selfname:
selfid = layeritems_info_id(layername, layeritems)
lbinfo = layerbranches_info(selfid, layerbranches)
if lbinfo:
selfsubdir = lbinfo['vcs_subdir']
else:
logger.error("%s is not found in the specified branch" % layername)
return
selfurl = layeritems_info_name_subdir(selfid, layeritems)['vcs_url']
if selfurl:
return selfurl, selfsubdir
else:
logger.error("Cannot get layer %s git repo and subdir" % layername)
return
ldict = {}
itemsid = layeritems_info_id(layername, layeritems)
if not itemsid:
return layername, None
lbid = layerbranches_info(itemsid, layerbranches)
if lbid:
lbid = layerbranches_info(itemsid, layerbranches)['id']
else:
logger.error("%s is not found in the specified branch" % layername)
return None, None
for dependency in layerdependencies_info(lbid, layerdependencies):
lname = layeritems_info_name_subdir(dependency, layeritems)['name']
lurl = layeritems_info_name_subdir(dependency, layeritems)['vcs_url']
lsubdir = layerbranches_info(dependency, layerbranches)['vcs_subdir']
ldict[lname] = lurl, lsubdir
return None, ldict
def get_fetch_layer(self, fetchdir, url, subdir, fetch_layer):
layername = self.get_layer_name(url)
if os.path.splitext(layername)[1] == '.git':
@@ -136,95 +31,124 @@ class LayerIndexPlugin(ActionPlugin):
result = subprocess.call('git clone %s %s' % (url, repodir), shell = True)
if result:
logger.error("Failed to download %s" % url)
return None, None
return None, None, None
else:
return layername, layerdir
return subdir, layername, layerdir
else:
logger.plain("Repository %s needs to be fetched" % url)
return layername, layerdir
return subdir, layername, layerdir
elif os.path.exists(layerdir):
return layername, layerdir
return subdir, layername, layerdir
else:
logger.error("%s is not in %s" % (url, subdir))
return None, None
return None, None, None
def do_layerindex_fetch(self, args):
"""Fetches a layer from a layer index along with its dependent layers, and adds them to conf/bblayers.conf.
"""
apiurl = self.tinfoil.config_data.getVar('BBLAYERS_LAYERINDEX_URL')
if not apiurl:
logger.error("Cannot get BBLAYERS_LAYERINDEX_URL")
return 1
else:
if apiurl[-1] != '/':
apiurl += '/'
apiurl += "api/"
apilinks = self.get_json_data(apiurl)
branches = self.get_json_data(apilinks['branches'])
branchnum = 0
for branch in branches:
if branch['name'] == args.branch:
branchnum = branch['id']
break
if branchnum == 0:
validbranches = ', '.join([branch['name'] for branch in branches])
logger.error('Invalid layer branch name "%s". Valid branches: %s' % (args.branch, validbranches))
return 1
def _construct_url(baseurls, branches):
urls = []
for baseurl in baseurls:
if baseurl[-1] != '/':
baseurl += '/'
if not baseurl.startswith('cooker'):
baseurl += "api/"
if branches:
baseurl += ";branch=%s" % ','.join(branches)
urls.append(baseurl)
return urls
# Set the default...
if args.branch:
branches = [args.branch]
else:
branches = (self.tinfoil.config_data.getVar('LAYERSERIES_CORENAMES') or 'master').split()
logger.debug(1, 'Trying branches: %s' % branches)
ignore_layers = []
for collection in self.tinfoil.config_data.getVar('BBFILE_COLLECTIONS').split():
lname = self.tinfoil.config_data.getVar('BBLAYERS_LAYERINDEX_NAME_%s' % collection)
if lname:
ignore_layers.append(lname)
if args.ignore:
ignore_layers.extend(args.ignore.split(','))
layeritems = self.get_json_data(apilinks['layerItems'])
layerbranches = self.get_json_data(apilinks['layerBranches'])
layerdependencies = self.get_json_data(apilinks['layerDependencies'])
invaluenames = []
repourls = {}
printlayers = []
# Load the cooker DB
cookerIndex = layerindexlib.LayerIndex(self.tinfoil.config_data)
cookerIndex.load_layerindex('cooker://', load='layerDependencies')
def query_dependencies(layers, layeritems, layerbranches, layerdependencies, branchnum):
depslayer = []
for layername in layers:
invaluename, layerdict = self.get_layer_deps(layername, layeritems, layerbranches, layerdependencies, branchnum)
if layerdict:
repourls[layername] = self.get_layer_deps(layername, layeritems, layerbranches, layerdependencies, branchnum, selfname=True)
for layer in layerdict:
if not layer in ignore_layers:
depslayer.append(layer)
printlayers.append((layername, layer, layerdict[layer][0], layerdict[layer][1]))
if not layer in ignore_layers and not layer in repourls:
repourls[layer] = (layerdict[layer][0], layerdict[layer][1])
if invaluename and not invaluename in invaluenames:
invaluenames.append(invaluename)
return depslayer
# Fast path, check if we already have what has been requested!
(dependencies, invalidnames) = cookerIndex.find_dependencies(names=args.layername, ignores=ignore_layers)
if not args.show_only and not invalidnames:
logger.plain("You already have the requested layer(s): %s" % args.layername)
return 0
depslayers = query_dependencies(args.layername, layeritems, layerbranches, layerdependencies, branchnum)
while depslayers:
depslayer = query_dependencies(depslayers, layeritems, layerbranches, layerdependencies, branchnum)
depslayers = depslayer
if invaluenames:
for invaluename in invaluenames:
logger.error('Layer "%s" not found in layer index' % invaluename)
return 1
logger.plain("%s %s %s %s" % ("Layer".ljust(19), "Required by".ljust(19), "Git repository".ljust(54), "Subdirectory"))
logger.plain('=' * 115)
for layername in args.layername:
layerurl = repourls[layername]
logger.plain("%s %s %s %s" % (layername.ljust(20), '-'.ljust(20), layerurl[0].ljust(55), layerurl[1]))
printedlayers = []
for layer, dependency, gitrepo, subdirectory in printlayers:
if dependency in printedlayers:
continue
logger.plain("%s %s %s %s" % (dependency.ljust(20), layer.ljust(20), gitrepo.ljust(55), subdirectory))
printedlayers.append(dependency)
# The information to show is already in the cookerIndex
if invalidnames:
# General URL to use to access the layer index
# While there is ONE right now, we're expect users could enter several
apiurl = self.tinfoil.config_data.getVar('BBLAYERS_LAYERINDEX_URL').split()
if not apiurl:
logger.error("Cannot get BBLAYERS_LAYERINDEX_URL")
return 1
if repourls:
remoteIndex = layerindexlib.LayerIndex(self.tinfoil.config_data)
for remoteurl in _construct_url(apiurl, branches):
logger.plain("Loading %s..." % remoteurl)
remoteIndex.load_layerindex(remoteurl)
if remoteIndex.is_empty():
logger.error("Remote layer index %s is empty for branches %s" % (apiurl, branches))
return 1
lIndex = cookerIndex + remoteIndex
(dependencies, invalidnames) = lIndex.find_dependencies(names=args.layername, ignores=ignore_layers)
if invalidnames:
for invaluename in invalidnames:
logger.error('Layer "%s" not found in layer index' % invaluename)
return 1
logger.plain("%s %s %s" % ("Layer".ljust(49), "Git repository (branch)".ljust(54), "Subdirectory"))
logger.plain('=' * 125)
for deplayerbranch in dependencies:
layerBranch = dependencies[deplayerbranch][0]
# TODO: Determine display behavior
# This is the local content, uncomment to hide local
# layers from the display.
#if layerBranch.index.config['TYPE'] == 'cooker':
# continue
layerDeps = dependencies[deplayerbranch][1:]
requiredby = []
recommendedby = []
for dep in layerDeps:
if dep.required:
requiredby.append(dep.layer.name)
else:
recommendedby.append(dep.layer.name)
logger.plain('%s %s %s' % (("%s:%s:%s" %
(layerBranch.index.config['DESCRIPTION'],
layerBranch.branch.name,
layerBranch.layer.name)).ljust(50),
("%s (%s)" % (layerBranch.layer.vcs_url,
layerBranch.actual_branch)).ljust(55),
layerBranch.vcs_subdir
))
if requiredby:
logger.plain(' required by: %s' % ' '.join(requiredby))
if recommendedby:
logger.plain(' recommended by: %s' % ' '.join(recommendedby))
if dependencies:
fetchdir = self.tinfoil.config_data.getVar('BBLAYERS_FETCH_DIR')
if not fetchdir:
logger.error("Cannot get BBLAYERS_FETCH_DIR")
@@ -232,26 +156,39 @@ class LayerIndexPlugin(ActionPlugin):
if not os.path.exists(fetchdir):
os.makedirs(fetchdir)
addlayers = []
for repourl, subdir in repourls.values():
name, layerdir = self.get_fetch_layer(fetchdir, repourl, subdir, not args.show_only)
for deplayerbranch in dependencies:
layerBranch = dependencies[deplayerbranch][0]
if layerBranch.index.config['TYPE'] == 'cooker':
# Anything loaded via cooker is already local, skip it
continue
subdir, name, layerdir = self.get_fetch_layer(fetchdir,
layerBranch.layer.vcs_url,
layerBranch.vcs_subdir,
not args.show_only)
if not name:
# Error already shown
return 1
addlayers.append((subdir, name, layerdir))
if not args.show_only:
for subdir, name, layerdir in set(addlayers):
localargs = argparse.Namespace()
localargs.layerdir = []
localargs.force = args.force
for subdir, name, layerdir in addlayers:
if os.path.exists(layerdir):
if subdir:
logger.plain("Adding layer \"%s\" to conf/bblayers.conf" % subdir)
logger.plain("Adding layer \"%s\" (%s) to conf/bblayers.conf" % (subdir, layerdir))
else:
logger.plain("Adding layer \"%s\" to conf/bblayers.conf" % name)
localargs = argparse.Namespace()
localargs.layerdir = layerdir
localargs.force = args.force
self.do_add_layer(localargs)
logger.plain("Adding layer \"%s\" (%s) to conf/bblayers.conf" % (name, layerdir))
localargs.layerdir.append(layerdir)
else:
break
if localargs.layerdir:
self.do_add_layer(localargs)
def do_layerindex_show_depends(self, args):
"""Find layer dependencies from layer index.
"""
@@ -260,12 +197,12 @@ class LayerIndexPlugin(ActionPlugin):
self.do_layerindex_fetch(args)
def register_commands(self, sp):
parser_layerindex_fetch = self.add_command(sp, 'layerindex-fetch', self.do_layerindex_fetch)
parser_layerindex_fetch = self.add_command(sp, 'layerindex-fetch', self.do_layerindex_fetch, parserecipes=False)
parser_layerindex_fetch.add_argument('-n', '--show-only', help='show dependencies and do nothing else', action='store_true')
parser_layerindex_fetch.add_argument('-b', '--branch', help='branch name to fetch (default %(default)s)', default='master')
parser_layerindex_fetch.add_argument('-b', '--branch', help='branch name to fetch')
parser_layerindex_fetch.add_argument('-i', '--ignore', help='assume the specified layers do not need to be fetched/added (separate multiple layers with commas, no spaces)', metavar='LAYER')
parser_layerindex_fetch.add_argument('layername', nargs='+', help='layer to fetch')
parser_layerindex_show_depends = self.add_command(sp, 'layerindex-show-depends', self.do_layerindex_show_depends)
parser_layerindex_show_depends.add_argument('-b', '--branch', help='branch name to fetch (default %(default)s)', default='master')
parser_layerindex_show_depends = self.add_command(sp, 'layerindex-show-depends', self.do_layerindex_show_depends, parserecipes=False)
parser_layerindex_show_depends.add_argument('-b', '--branch', help='branch name to fetch')
parser_layerindex_show_depends.add_argument('layername', nargs='+', help='layer to query')

View File

@@ -0,0 +1,28 @@
The layerindexlib module is designed to permit programs to work directly
with layer index information. (See layers.openembedded.org...)
The layerindexlib module includes a plugin interface that is used to extend
the basic functionality. There are two primary plugins available: restapi
and cooker.
The restapi plugin works with a web based REST Api compatible with the
layerindex-web project, as well as the ability to store and retried a
the information for one or more files on the disk.
The cooker plugin works by reading the information from the current build
project and processing it as if it were a layer index.
TODO:
__init__.py:
Implement local on-disk caching (using the rest api store/load)
Implement layer index style query operations on a combined index
common.py:
Stop network access if BB_NO_NETWORK or allowed hosts is restricted
cooker.py:
Cooker - Implement recipe parsing

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,341 @@
# Copyright (C) 2016-2018 Wind River Systems, Inc.
#
# 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
import logging
import json
from collections import OrderedDict, defaultdict
from urllib.parse import unquote, urlparse
import layerindexlib
import layerindexlib.plugin
logger = logging.getLogger('BitBake.layerindexlib.cooker')
import bb.utils
def plugin_init(plugins):
return CookerPlugin()
class CookerPlugin(layerindexlib.plugin.IndexPlugin):
def __init__(self):
self.type = "cooker"
self.server_connection = None
self.ui_module = None
self.server = None
def _run_command(self, command, path, default=None):
try:
result, _ = bb.process.run(command, cwd=path)
result = result.strip()
except bb.process.ExecutionError:
result = default
return result
def _handle_git_remote(self, remote):
if "://" not in remote:
if ':' in remote:
# This is assumed to be ssh
remote = "ssh://" + remote
else:
# This is assumed to be a file path
remote = "file://" + remote
return remote
def _get_bitbake_info(self):
"""Return a tuple of bitbake information"""
# Our path SHOULD be .../bitbake/lib/layerindex/cooker.py
bb_path = os.path.dirname(__file__) # .../bitbake/lib/layerindex/cooker.py
bb_path = os.path.dirname(bb_path) # .../bitbake/lib/layerindex
bb_path = os.path.dirname(bb_path) # .../bitbake/lib
bb_path = os.path.dirname(bb_path) # .../bitbake
bb_path = self._run_command('git rev-parse --show-toplevel', os.path.dirname(__file__), default=bb_path)
bb_branch = self._run_command('git rev-parse --abbrev-ref HEAD', bb_path, default="<unknown>")
bb_rev = self._run_command('git rev-parse HEAD', bb_path, default="<unknown>")
for remotes in self._run_command('git remote -v', bb_path, default="").split("\n"):
remote = remotes.split("\t")[1].split(" ")[0]
if "(fetch)" == remotes.split("\t")[1].split(" ")[1]:
bb_remote = self._handle_git_remote(remote)
break
else:
bb_remote = self._handle_git_remote(bb_path)
return (bb_remote, bb_branch, bb_rev, bb_path)
def _load_bblayers(self, branches=None):
"""Load the BBLAYERS and related collection information"""
d = self.layerindex.data
if not branches:
raise LayerIndexFetchError("No branches specified for _load_bblayers!")
index = layerindexlib.LayerIndexObj()
branchId = 0
index.branches = {}
layerItemId = 0
index.layerItems = {}
layerBranchId = 0
index.layerBranches = {}
bblayers = d.getVar('BBLAYERS').split()
if not bblayers:
# It's blank! Nothing to process...
return index
collections = d.getVar('BBFILE_COLLECTIONS')
layerconfs = d.varhistory.get_variable_items_files('BBFILE_COLLECTIONS', d)
bbfile_collections = {layer: os.path.dirname(os.path.dirname(path)) for layer, path in layerconfs.items()}
(_, bb_branch, _, _) = self._get_bitbake_info()
for branch in branches:
branchId += 1
index.branches[branchId] = layerindexlib.Branch(index, None)
index.branches[branchId].define_data(branchId, branch, bb_branch)
for entry in collections.split():
layerpath = entry
if entry in bbfile_collections:
layerpath = bbfile_collections[entry]
layername = d.getVar('BBLAYERS_LAYERINDEX_NAME_%s' % entry) or os.path.basename(layerpath)
layerversion = d.getVar('LAYERVERSION_%s' % entry) or ""
layerurl = self._handle_git_remote(layerpath)
layersubdir = ""
layerrev = "<unknown>"
layerbranch = "<unknown>"
if os.path.isdir(layerpath):
layerbasepath = self._run_command('git rev-parse --show-toplevel', layerpath, default=layerpath)
if os.path.abspath(layerpath) != os.path.abspath(layerbasepath):
layersubdir = os.path.abspath(layerpath)[len(layerbasepath) + 1:]
layerbranch = self._run_command('git rev-parse --abbrev-ref HEAD', layerpath, default="<unknown>")
layerrev = self._run_command('git rev-parse HEAD', layerpath, default="<unknown>")
for remotes in self._run_command('git remote -v', layerpath, default="").split("\n"):
remote = remotes.split("\t")[1].split(" ")[0]
if "(fetch)" == remotes.split("\t")[1].split(" ")[1]:
layerurl = self._handle_git_remote(remote)
break
layerItemId += 1
index.layerItems[layerItemId] = layerindexlib.LayerItem(index, None)
index.layerItems[layerItemId].define_data(layerItemId, layername, description=layerpath, vcs_url=layerurl)
for branchId in index.branches:
layerBranchId += 1
index.layerBranches[layerBranchId] = layerindexlib.LayerBranch(index, None)
index.layerBranches[layerBranchId].define_data(layerBranchId, entry, layerversion, layerItemId, branchId,
vcs_subdir=layersubdir, vcs_last_rev=layerrev, actual_branch=layerbranch)
return index
def load_index(self, url, load):
"""
Fetches layer information from a build configuration.
The return value is a dictionary containing API,
layer, branch, dependency, recipe, machine, distro, information.
url type should be 'cooker'.
url path is ignored
"""
up = urlparse(url)
if up.scheme != 'cooker':
raise layerindexlib.plugin.LayerIndexPluginUrlError(self.type, url)
d = self.layerindex.data
params = self.layerindex._parse_params(up.params)
# Only reason to pass a branch is to emulate them...
if 'branch' in params:
branches = params['branch'].split(',')
else:
branches = ['HEAD']
logger.debug(1, "Loading cooker data branches %s" % branches)
index = self._load_bblayers(branches=branches)
index.config = {}
index.config['TYPE'] = self.type
index.config['URL'] = url
if 'desc' in params:
index.config['DESCRIPTION'] = unquote(params['desc'])
else:
index.config['DESCRIPTION'] = 'local'
if 'cache' in params:
index.config['CACHE'] = params['cache']
index.config['BRANCH'] = branches
# ("layerDependencies", layerindexlib.LayerDependency)
layerDependencyId = 0
if "layerDependencies" in load:
index.layerDependencies = {}
for layerBranchId in index.layerBranches:
branchName = index.layerBranches[layerBranchId].branch.name
collection = index.layerBranches[layerBranchId].collection
def add_dependency(layerDependencyId, index, deps, required):
try:
depDict = bb.utils.explode_dep_versions2(deps)
except bb.utils.VersionStringException as vse:
bb.fatal('Error parsing LAYERDEPENDS_%s: %s' % (c, str(vse)))
for dep, oplist in list(depDict.items()):
# We need to search ourselves, so use the _ version...
depLayerBranch = index.find_collection(dep, branches=[branchName])
if not depLayerBranch:
# Missing dependency?!
logger.error('Missing dependency %s (%s)' % (dep, branchName))
continue
# We assume that the oplist matches...
layerDependencyId += 1
layerDependency = layerindexlib.LayerDependency(index, None)
layerDependency.define_data(id=layerDependencyId,
required=required, layerbranch=layerBranchId,
dependency=depLayerBranch.layer_id)
logger.debug(1, '%s requires %s' % (layerDependency.layer.name, layerDependency.dependency.name))
index.add_element("layerDependencies", [layerDependency])
return layerDependencyId
deps = d.getVar("LAYERDEPENDS_%s" % collection)
if deps:
layerDependencyId = add_dependency(layerDependencyId, index, deps, True)
deps = d.getVar("LAYERRECOMMENDS_%s" % collection)
if deps:
layerDependencyId = add_dependency(layerDependencyId, index, deps, False)
# Need to load recipes here (requires cooker access)
recipeId = 0
## TODO: NOT IMPLEMENTED
# The code following this is an example of what needs to be
# implemented. However, it does not work as-is.
if False and 'recipes' in load:
index.recipes = {}
ret = self.ui_module.main(self.server_connection.connection, self.server_connection.events, config_params)
all_versions = self._run_command('allProviders')
all_versions_list = defaultdict(list, all_versions)
for pn in all_versions_list:
for ((pe, pv, pr), fpath) in all_versions_list[pn]:
realfn = bb.cache.virtualfn2realfn(fpath)
filepath = os.path.dirname(realfn[0])
filename = os.path.basename(realfn[0])
# This is all HORRIBLY slow, and likely unnecessary
#dscon = self._run_command('parseRecipeFile', fpath, False, [])
#connector = myDataStoreConnector(self, dscon.dsindex)
#recipe_data = bb.data.init()
#recipe_data.setVar('_remote_data', connector)
#summary = recipe_data.getVar('SUMMARY')
#description = recipe_data.getVar('DESCRIPTION')
#section = recipe_data.getVar('SECTION')
#license = recipe_data.getVar('LICENSE')
#homepage = recipe_data.getVar('HOMEPAGE')
#bugtracker = recipe_data.getVar('BUGTRACKER')
#provides = recipe_data.getVar('PROVIDES')
layer = bb.utils.get_file_layer(realfn[0], self.config_data)
depBranchId = collection_layerbranch[layer]
recipeId += 1
recipe = layerindexlib.Recipe(index, None)
recipe.define_data(id=recipeId,
filename=filename, filepath=filepath,
pn=pn, pv=pv,
summary=pn, description=pn, section='?',
license='?', homepage='?', bugtracker='?',
provides='?', bbclassextend='?', inherits='?',
blacklisted='?', layerbranch=depBranchId)
index = addElement("recipes", [recipe], index)
# ("machines", layerindexlib.Machine)
machineId = 0
if 'machines' in load:
index.machines = {}
for layerBranchId in index.layerBranches:
# load_bblayers uses the description to cache the actual path...
machine_path = index.layerBranches[layerBranchId].getDescription()
machine_path = os.path.join(machine_path, 'conf/machine')
if os.path.isdir(machine_path):
for (dirpath, _, filenames) in os.walk(machine_path):
# Ignore subdirs...
if not dirpath.endswith('conf/machine'):
continue
for fname in filenames:
if fname.endswith('.conf'):
machineId += 1
machine = layerindexlib.Machine(index, None)
machine.define_data(id=machineId, name=fname[:-5],
description=fname[:-5],
layerbranch=collection_layerbranch[entry])
index.add_element("machines", [machine])
# ("distros", layerindexlib.Distro)
distroId = 0
if 'distros' in load:
index.distros = {}
for layerBranchId in index.layerBranches:
# load_bblayers uses the description to cache the actual path...
distro_path = index.layerBranches[layerBranchId].getDescription()
distro_path = os.path.join(distro_path, 'conf/distro')
if os.path.isdir(distro_path):
for (dirpath, _, filenames) in os.walk(distro_path):
# Ignore subdirs...
if not dirpath.endswith('conf/distro'):
continue
for fname in filenames:
if fname.endswith('.conf'):
distroId += 1
distro = layerindexlib.Distro(index, None)
distro.define_data(id=distroId, name=fname[:-5],
description=fname[:-5],
layerbranch=collection_layerbranch[entry])
index.add_element("distros", [distro])
return index

View File

@@ -0,0 +1,60 @@
# Copyright (C) 2016-2018 Wind River Systems, Inc.
#
# 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
# The file contains:
# LayerIndex exceptions
# Plugin base class
# Utility Functions for working on layerindex data
import argparse
import logging
import os
import bb.msg
logger = logging.getLogger('BitBake.layerindexlib.plugin')
class LayerIndexPluginException(Exception):
"""LayerIndex Generic Exception"""
def __init__(self, message):
self.msg = message
Exception.__init__(self, message)
def __str__(self):
return self.msg
class LayerIndexPluginUrlError(LayerIndexPluginException):
"""Exception raised when a plugin does not support a given URL type"""
def __init__(self, plugin, url):
msg = "%s does not support %s:" % (plugin, url)
self.plugin = plugin
self.url = url
LayerIndexPluginException.__init__(self, msg)
class IndexPlugin():
def __init__(self):
self.type = None
def init(self, layerindex):
self.layerindex = layerindex
def plugin_type(self):
return self.type
def load_index(self, uri):
raise NotImplementedError('load_index is not implemented')
def store_index(self, uri, index):
raise NotImplementedError('store_index is not implemented')

View File

@@ -0,0 +1,398 @@
# Copyright (C) 2016-2018 Wind River Systems, Inc.
#
# 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
import logging
import json
from urllib.parse import unquote
from urllib.parse import urlparse
import layerindexlib
import layerindexlib.plugin
logger = logging.getLogger('BitBake.layerindexlib.restapi')
def plugin_init(plugins):
return RestApiPlugin()
class RestApiPlugin(layerindexlib.plugin.IndexPlugin):
def __init__(self):
self.type = "restapi"
def load_index(self, url, load):
"""
Fetches layer information from a local or remote layer index.
The return value is a LayerIndexObj.
url is the url to the rest api of the layer index, such as:
http://layers.openembedded.org/layerindex/api/
Or a local file...
"""
up = urlparse(url)
if up.scheme == 'file':
return self.load_index_file(up, url, load)
if up.scheme == 'http' or up.scheme == 'https':
return self.load_index_web(up, url, load)
raise layerindexlib.plugin.LayerIndexPluginUrlError(self.type, url)
def load_index_file(self, up, url, load):
"""
Fetches layer information from a local file or directory.
The return value is a LayerIndexObj.
ud is the parsed url to the local file or directory.
"""
if not os.path.exists(up.path):
raise FileNotFoundError(up.path)
index = layerindexlib.LayerIndexObj()
index.config = {}
index.config['TYPE'] = self.type
index.config['URL'] = url
params = self.layerindex._parse_params(up.params)
if 'desc' in params:
index.config['DESCRIPTION'] = unquote(params['desc'])
else:
index.config['DESCRIPTION'] = up.path
if 'cache' in params:
index.config['CACHE'] = params['cache']
if 'branch' in params:
branches = params['branch'].split(',')
index.config['BRANCH'] = branches
else:
branches = ['*']
def load_cache(path, index, branches=[]):
logger.debug(1, 'Loading json file %s' % path)
with open(path, 'rt', encoding='utf-8') as f:
pindex = json.load(f)
# Filter the branches on loaded files...
newpBranch = []
for branch in branches:
if branch != '*':
if 'branches' in pindex:
for br in pindex['branches']:
if br['name'] == branch:
newpBranch.append(br)
else:
if 'branches' in pindex:
for br in pindex['branches']:
newpBranch.append(br)
if newpBranch:
index.add_raw_element('branches', layerindexlib.Branch, newpBranch)
else:
logger.debug(1, 'No matching branches (%s) in index file(s)' % branches)
# No matching branches.. return nothing...
return
for (lName, lType) in [("layerItems", layerindexlib.LayerItem),
("layerBranches", layerindexlib.LayerBranch),
("layerDependencies", layerindexlib.LayerDependency),
("recipes", layerindexlib.Recipe),
("machines", layerindexlib.Machine),
("distros", layerindexlib.Distro)]:
if lName in pindex:
index.add_raw_element(lName, lType, pindex[lName])
if not os.path.isdir(up.path):
load_cache(up.path, index, branches)
return index
logger.debug(1, 'Loading from dir %s...' % (up.path))
for (dirpath, _, filenames) in os.walk(up.path):
for filename in filenames:
if not filename.endswith('.json'):
continue
fpath = os.path.join(dirpath, filename)
load_cache(fpath, index, branches)
return index
def load_index_web(self, up, url, load):
"""
Fetches layer information from a remote layer index.
The return value is a LayerIndexObj.
ud is the parsed url to the rest api of the layer index, such as:
http://layers.openembedded.org/layerindex/api/
"""
def _get_json_response(apiurl=None, username=None, password=None, retry=True):
assert apiurl is not None
logger.debug(1, "fetching %s" % apiurl)
up = urlparse(apiurl)
username=up.username
password=up.password
# Strip username/password and params
if up.port:
up_stripped = up._replace(params="", netloc="%s:%s" % (up.hostname, up.port))
else:
up_stripped = up._replace(params="", netloc=up.hostname)
res = self.layerindex._fetch_url(up_stripped.geturl(), username=username, password=password)
try:
parsed = json.loads(res.read().decode('utf-8'))
except ConnectionResetError:
if retry:
logger.debug(1, "%s: Connection reset by peer. Retrying..." % url)
parsed = _get_json_response(apiurl=up_stripped.geturl(), username=username, password=password, retry=False)
logger.debug(1, "%s: retry successful.")
else:
raise LayerIndexFetchError('%s: Connection reset by peer. Is there a firewall blocking your connection?' % apiurl)
return parsed
index = layerindexlib.LayerIndexObj()
index.config = {}
index.config['TYPE'] = self.type
index.config['URL'] = url
params = self.layerindex._parse_params(up.params)
if 'desc' in params:
index.config['DESCRIPTION'] = unquote(params['desc'])
else:
index.config['DESCRIPTION'] = up.hostname
if 'cache' in params:
index.config['CACHE'] = params['cache']
if 'branch' in params:
branches = params['branch'].split(',')
index.config['BRANCH'] = branches
else:
branches = ['*']
try:
index.apilinks = _get_json_response(apiurl=url, username=up.username, password=up.password)
except Exception as e:
raise layerindexlib.LayerIndexFetchError(url, e)
# Local raw index set...
pindex = {}
# Load all the requested branches at the same time time,
# a special branch of '*' means load all branches
filter = ""
if "*" not in branches:
filter = "?filter=name:%s" % "OR".join(branches)
logger.debug(1, "Loading %s from %s" % (branches, index.apilinks['branches']))
# The link won't include username/password, so pull it from the original url
pindex['branches'] = _get_json_response(index.apilinks['branches'] + filter,
username=up.username, password=up.password)
if not pindex['branches']:
logger.debug(1, "No valid branches (%s) found at url %s." % (branch, url))
return index
index.add_raw_element("branches", layerindexlib.Branch, pindex['branches'])
# Load all of the layerItems (these can not be easily filtered)
logger.debug(1, "Loading %s from %s" % ('layerItems', index.apilinks['layerItems']))
# The link won't include username/password, so pull it from the original url
pindex['layerItems'] = _get_json_response(index.apilinks['layerItems'],
username=up.username, password=up.password)
if not pindex['layerItems']:
logger.debug(1, "No layers were found at url %s." % (url))
return index
index.add_raw_element("layerItems", layerindexlib.LayerItem, pindex['layerItems'])
# From this point on load the contents for each branch. Otherwise we
# could run into a timeout.
for branch in index.branches:
filter = "?filter=branch__name:%s" % index.branches[branch].name
logger.debug(1, "Loading %s from %s" % ('layerBranches', index.apilinks['layerBranches']))
# The link won't include username/password, so pull it from the original url
pindex['layerBranches'] = _get_json_response(index.apilinks['layerBranches'] + filter,
username=up.username, password=up.password)
if not pindex['layerBranches']:
logger.debug(1, "No valid layer branches (%s) found at url %s." % (branches or "*", url))
return index
index.add_raw_element("layerBranches", layerindexlib.LayerBranch, pindex['layerBranches'])
# Load the rest, they all have a similar format
# Note: the layer index has a few more items, we can add them if necessary
# in the future.
filter = "?filter=layerbranch__branch__name:%s" % index.branches[branch].name
for (lName, lType) in [("layerDependencies", layerindexlib.LayerDependency),
("recipes", layerindexlib.Recipe),
("machines", layerindexlib.Machine),
("distros", layerindexlib.Distro)]:
if lName not in load:
continue
logger.debug(1, "Loading %s from %s" % (lName, index.apilinks[lName]))
# The link won't include username/password, so pull it from the original url
pindex[lName] = _get_json_response(index.apilinks[lName] + filter,
username=up.username, password=up.password)
index.add_raw_element(lName, lType, pindex[lName])
return index
def store_index(self, url, index):
"""
Store layer information into a local file/dir.
The return value is a dictionary containing API,
layer, branch, dependency, recipe, machine, distro, information.
ud is a parsed url to a directory or file. If the path is a
directory, we will split the files into one file per layer.
If the path is to a file (exists or not) the entire DB will be
dumped into that one file.
"""
up = urlparse(url)
if up.scheme != 'file':
raise layerindexlib.plugin.LayerIndexPluginUrlError(self.type, url)
logger.debug(1, "Storing to %s..." % up.path)
try:
layerbranches = index.layerBranches
except KeyError:
logger.error('No layerBranches to write.')
return
def filter_item(layerbranchid, objects):
filtered = []
for obj in getattr(index, objects, None):
try:
if getattr(index, objects)[obj].layerbranch_id == layerbranchid:
filtered.append(getattr(index, objects)[obj]._data)
except AttributeError:
logger.debug(1, 'No obj.layerbranch_id: %s' % objects)
# No simple filter method, just include it...
try:
filtered.append(getattr(index, objects)[obj]._data)
except AttributeError:
logger.debug(1, 'No obj._data: %s %s' % (objects, type(obj)))
filtered.append(obj)
return filtered
# Write out to a single file.
# Filter out unnecessary items, then sort as we write for determinism
if not os.path.isdir(up.path):
pindex = {}
pindex['branches'] = []
pindex['layerItems'] = []
pindex['layerBranches'] = []
for layerbranchid in layerbranches:
if layerbranches[layerbranchid].branch._data not in pindex['branches']:
pindex['branches'].append(layerbranches[layerbranchid].branch._data)
if layerbranches[layerbranchid].layer._data not in pindex['layerItems']:
pindex['layerItems'].append(layerbranches[layerbranchid].layer._data)
if layerbranches[layerbranchid]._data not in pindex['layerBranches']:
pindex['layerBranches'].append(layerbranches[layerbranchid]._data)
for entry in index._index:
# Skip local items, apilinks and items already processed
if entry in index.config['local'] or \
entry == 'apilinks' or \
entry == 'branches' or \
entry == 'layerBranches' or \
entry == 'layerItems':
continue
if entry not in pindex:
pindex[entry] = []
pindex[entry].extend(filter_item(layerbranchid, entry))
bb.debug(1, 'Writing index to %s' % up.path)
with open(up.path, 'wt') as f:
json.dump(layerindexlib.sort_entry(pindex), f, indent=4)
return
# Write out to a directory one file per layerBranch
# Prepare all layer related items, to create a minimal file.
# We have to sort the entries as we write so they are deterministic
for layerbranchid in layerbranches:
pindex = {}
for entry in index._index:
# Skip local items, apilinks and items already processed
if entry in index.config['local'] or \
entry == 'apilinks' or \
entry == 'branches' or \
entry == 'layerBranches' or \
entry == 'layerItems':
continue
pindex[entry] = filter_item(layerbranchid, entry)
# Add the layer we're processing as the first one...
pindex['branches'] = [layerbranches[layerbranchid].branch._data]
pindex['layerItems'] = [layerbranches[layerbranchid].layer._data]
pindex['layerBranches'] = [layerbranches[layerbranchid]._data]
# We also need to include the layerbranch for any dependencies...
for layerdep in pindex['layerDependencies']:
layerdependency = layerindexlib.LayerDependency(index, layerdep)
layeritem = layerdependency.dependency
layerbranch = layerdependency.dependency_layerBranch
# We need to avoid duplicates...
if layeritem._data not in pindex['layerItems']:
pindex['layerItems'].append(layeritem._data)
if layerbranch._data not in pindex['layerBranches']:
pindex['layerBranches'].append(layerbranch._data)
# apply mirroring adjustments here....
fname = index.config['DESCRIPTION'] + '__' + pindex['branches'][0]['name'] + '__' + pindex['layerItems'][0]['name']
fname = fname.translate(str.maketrans('/ ', '__'))
fpath = os.path.join(up.path, fname)
bb.debug(1, 'Writing index to %s' % fpath + '.json')
with open(fpath + '.json', 'wt') as f:
json.dump(layerindexlib.sort_entry(pindex), f, indent=4)

View File

@@ -0,0 +1,43 @@
# Copyright (C) 2017-2018 Wind River Systems, Inc.
#
# 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
import unittest
import tempfile
import os
import bb
import logging
class LayersTest(unittest.TestCase):
def setUp(self):
self.origdir = os.getcwd()
self.d = bb.data.init()
# At least one variable needs to be set
self.d.setVar('DL_DIR', os.getcwd())
if os.environ.get("BB_SKIP_NETTESTS") == "yes":
self.d.setVar('BB_NO_NETWORK', '1')
self.tempdir = tempfile.mkdtemp()
self.logger = logging.getLogger("BitBake")
def tearDown(self):
os.chdir(self.origdir)
if os.environ.get("BB_TMPDIR_NOCLEAN") == "yes":
print("Not cleaning up %s. Please remove manually." % self.tempdir)
else:
bb.utils.prunedir(self.tempdir)

View File

@@ -0,0 +1,123 @@
# Copyright (C) 2018 Wind River Systems, Inc.
#
# 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
import unittest
import tempfile
import os
import bb
import layerindexlib
from layerindexlib.tests.common import LayersTest
import logging
class LayerIndexCookerTest(LayersTest):
def setUp(self):
LayersTest.setUp(self)
# Note this is NOT a comprehensive test of cooker, as we can't easily
# configure the test data. But we can emulate the basics of the layer.conf
# files, so that is what we will do.
new_topdir = os.path.join(os.path.dirname(__file__), "testdata")
new_bbpath = os.path.join(new_topdir, "build")
self.d.setVar('TOPDIR', new_topdir)
self.d.setVar('BBPATH', new_bbpath)
self.d = bb.parse.handle("%s/conf/bblayers.conf" % new_bbpath, self.d, True)
for layer in self.d.getVar('BBLAYERS').split():
self.d = bb.parse.handle("%s/conf/layer.conf" % layer, self.d, True)
self.layerindex = layerindexlib.LayerIndex(self.d)
self.layerindex.load_layerindex('cooker://', load=['layerDependencies'])
def test_layerindex_is_empty(self):
self.assertFalse(self.layerindex.is_empty(), msg="Layerindex is not empty!")
def test_dependency_resolution(self):
# Verify depth first searching...
(dependencies, invalidnames) = self.layerindex.find_dependencies(names=['meta-python'])
first = True
for deplayerbranch in dependencies:
layerBranch = dependencies[deplayerbranch][0]
layerDeps = dependencies[deplayerbranch][1:]
if not first:
continue
first = False
# Top of the deps should be openembedded-core, since everything depends on it.
self.assertEqual(layerBranch.layer.name, "openembedded-core", msg='Top dependency not openembedded-core')
# meta-python should cause an openembedded-core dependency, if not assert!
for dep in layerDeps:
if dep.layer.name == 'meta-python':
break
else:
self.assertTrue(False, msg='meta-python was not found')
# Only check the first element...
break
else:
if first:
# Empty list, this is bad.
self.assertTrue(False, msg='Empty list of dependencies')
# Last dep should be the requested item
layerBranch = dependencies[deplayerbranch][0]
self.assertEqual(layerBranch.layer.name, "meta-python", msg='Last dependency not meta-python')
def test_find_collection(self):
def _check(collection, expected):
self.logger.debug(1, "Looking for collection %s..." % collection)
result = self.layerindex.find_collection(collection)
if expected:
self.assertIsNotNone(result, msg="Did not find %s when it shouldn't be there" % collection)
else:
self.assertIsNone(result, msg="Found %s when it should be there" % collection)
tests = [ ('core', True),
('openembedded-core', False),
('networking-layer', True),
('meta-python', True),
('openembedded-layer', True),
('notpresent', False) ]
for collection,result in tests:
_check(collection, result)
def test_find_layerbranch(self):
def _check(name, expected):
self.logger.debug(1, "Looking for layerbranch %s..." % name)
result = self.layerindex.find_layerbranch(name)
if expected:
self.assertIsNotNone(result, msg="Did not find %s when it shouldn't be there" % collection)
else:
self.assertIsNone(result, msg="Found %s when it should be there" % collection)
tests = [ ('openembedded-core', True),
('core', False),
('networking-layer', True),
('meta-python', True),
('openembedded-layer', True),
('notpresent', False) ]
for collection,result in tests:
_check(collection, result)

View File

@@ -0,0 +1,226 @@
# Copyright (C) 2017-2018 Wind River Systems, Inc.
#
# 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
import unittest
import tempfile
import os
import bb
from layerindexlib.tests.common import LayersTest
import logging
class LayerIndexObjectsTest(LayersTest):
def setUp(self):
from layerindexlib import LayerIndexObj, Branch, LayerItem, LayerBranch, LayerDependency, Recipe, Machine, Distro
LayersTest.setUp(self)
self.index = LayerIndexObj()
branchId = 0
layerItemId = 0
layerBranchId = 0
layerDependencyId = 0
recipeId = 0
machineId = 0
distroId = 0
self.index.branches = {}
self.index.layerItems = {}
self.index.layerBranches = {}
self.index.layerDependencies = {}
self.index.recipes = {}
self.index.machines = {}
self.index.distros = {}
branchId += 1
self.index.branches[branchId] = Branch(self.index)
self.index.branches[branchId].define_data(branchId,
'test_branch', 'bb_test_branch')
self.index.branches[branchId].lockData()
layerItemId +=1
self.index.layerItems[layerItemId] = LayerItem(self.index)
self.index.layerItems[layerItemId].define_data(layerItemId,
'test_layerItem', vcs_url='git://git_test_url/test_layerItem')
self.index.layerItems[layerItemId].lockData()
layerBranchId +=1
self.index.layerBranches[layerBranchId] = LayerBranch(self.index)
self.index.layerBranches[layerBranchId].define_data(layerBranchId,
'test_collection', '99', layerItemId,
branchId)
recipeId += 1
self.index.recipes[recipeId] = Recipe(self.index)
self.index.recipes[recipeId].define_data(recipeId, 'test_git.bb',
'recipes-test', 'test', 'git',
layerBranchId)
machineId += 1
self.index.machines[machineId] = Machine(self.index)
self.index.machines[machineId].define_data(machineId,
'test_machine', 'test_machine',
layerBranchId)
distroId += 1
self.index.distros[distroId] = Distro(self.index)
self.index.distros[distroId].define_data(distroId,
'test_distro', 'test_distro',
layerBranchId)
layerItemId +=1
self.index.layerItems[layerItemId] = LayerItem(self.index)
self.index.layerItems[layerItemId].define_data(layerItemId, 'test_layerItem 2',
vcs_url='git://git_test_url/test_layerItem')
layerBranchId +=1
self.index.layerBranches[layerBranchId] = LayerBranch(self.index)
self.index.layerBranches[layerBranchId].define_data(layerBranchId,
'test_collection_2', '72', layerItemId,
branchId, actual_branch='some_other_branch')
layerDependencyId += 1
self.index.layerDependencies[layerDependencyId] = LayerDependency(self.index)
self.index.layerDependencies[layerDependencyId].define_data(layerDependencyId,
layerBranchId, 1)
layerDependencyId += 1
self.index.layerDependencies[layerDependencyId] = LayerDependency(self.index)
self.index.layerDependencies[layerDependencyId].define_data(layerDependencyId,
layerBranchId, 1, required=False)
def test_branch(self):
branch = self.index.branches[1]
self.assertEqual(branch.id, 1)
self.assertEqual(branch.name, 'test_branch')
self.assertEqual(branch.short_description, 'test_branch')
self.assertEqual(branch.bitbake_branch, 'bb_test_branch')
def test_layerItem(self):
layerItem = self.index.layerItems[1]
self.assertEqual(layerItem.id, 1)
self.assertEqual(layerItem.name, 'test_layerItem')
self.assertEqual(layerItem.summary, 'test_layerItem')
self.assertEqual(layerItem.description, 'test_layerItem')
self.assertEqual(layerItem.vcs_url, 'git://git_test_url/test_layerItem')
self.assertEqual(layerItem.vcs_web_url, None)
self.assertIsNone(layerItem.vcs_web_tree_base_url)
self.assertIsNone(layerItem.vcs_web_file_base_url)
self.assertIsNotNone(layerItem.updated)
layerItem = self.index.layerItems[2]
self.assertEqual(layerItem.id, 2)
self.assertEqual(layerItem.name, 'test_layerItem 2')
self.assertEqual(layerItem.summary, 'test_layerItem 2')
self.assertEqual(layerItem.description, 'test_layerItem 2')
self.assertEqual(layerItem.vcs_url, 'git://git_test_url/test_layerItem')
self.assertIsNone(layerItem.vcs_web_url)
self.assertIsNone(layerItem.vcs_web_tree_base_url)
self.assertIsNone(layerItem.vcs_web_file_base_url)
self.assertIsNotNone(layerItem.updated)
def test_layerBranch(self):
layerBranch = self.index.layerBranches[1]
self.assertEqual(layerBranch.id, 1)
self.assertEqual(layerBranch.collection, 'test_collection')
self.assertEqual(layerBranch.version, '99')
self.assertEqual(layerBranch.vcs_subdir, '')
self.assertEqual(layerBranch.actual_branch, 'test_branch')
self.assertIsNotNone(layerBranch.updated)
self.assertEqual(layerBranch.layer_id, 1)
self.assertEqual(layerBranch.branch_id, 1)
self.assertEqual(layerBranch.layer, self.index.layerItems[1])
self.assertEqual(layerBranch.branch, self.index.branches[1])
layerBranch = self.index.layerBranches[2]
self.assertEqual(layerBranch.id, 2)
self.assertEqual(layerBranch.collection, 'test_collection_2')
self.assertEqual(layerBranch.version, '72')
self.assertEqual(layerBranch.vcs_subdir, '')
self.assertEqual(layerBranch.actual_branch, 'some_other_branch')
self.assertIsNotNone(layerBranch.updated)
self.assertEqual(layerBranch.layer_id, 2)
self.assertEqual(layerBranch.branch_id, 1)
self.assertEqual(layerBranch.layer, self.index.layerItems[2])
self.assertEqual(layerBranch.branch, self.index.branches[1])
def test_layerDependency(self):
layerDependency = self.index.layerDependencies[1]
self.assertEqual(layerDependency.id, 1)
self.assertEqual(layerDependency.layerbranch_id, 2)
self.assertEqual(layerDependency.layerbranch, self.index.layerBranches[2])
self.assertEqual(layerDependency.layer_id, 2)
self.assertEqual(layerDependency.layer, self.index.layerItems[2])
self.assertTrue(layerDependency.required)
self.assertEqual(layerDependency.dependency_id, 1)
self.assertEqual(layerDependency.dependency, self.index.layerItems[1])
self.assertEqual(layerDependency.dependency_layerBranch, self.index.layerBranches[1])
layerDependency = self.index.layerDependencies[2]
self.assertEqual(layerDependency.id, 2)
self.assertEqual(layerDependency.layerbranch_id, 2)
self.assertEqual(layerDependency.layerbranch, self.index.layerBranches[2])
self.assertEqual(layerDependency.layer_id, 2)
self.assertEqual(layerDependency.layer, self.index.layerItems[2])
self.assertFalse(layerDependency.required)
self.assertEqual(layerDependency.dependency_id, 1)
self.assertEqual(layerDependency.dependency, self.index.layerItems[1])
self.assertEqual(layerDependency.dependency_layerBranch, self.index.layerBranches[1])
def test_recipe(self):
recipe = self.index.recipes[1]
self.assertEqual(recipe.id, 1)
self.assertEqual(recipe.layerbranch_id, 1)
self.assertEqual(recipe.layerbranch, self.index.layerBranches[1])
self.assertEqual(recipe.layer_id, 1)
self.assertEqual(recipe.layer, self.index.layerItems[1])
self.assertEqual(recipe.filename, 'test_git.bb')
self.assertEqual(recipe.filepath, 'recipes-test')
self.assertEqual(recipe.fullpath, 'recipes-test/test_git.bb')
self.assertEqual(recipe.summary, "")
self.assertEqual(recipe.description, "")
self.assertEqual(recipe.section, "")
self.assertEqual(recipe.pn, 'test')
self.assertEqual(recipe.pv, 'git')
self.assertEqual(recipe.license, "")
self.assertEqual(recipe.homepage, "")
self.assertEqual(recipe.bugtracker, "")
self.assertEqual(recipe.provides, "")
self.assertIsNotNone(recipe.updated)
self.assertEqual(recipe.inherits, "")
def test_machine(self):
machine = self.index.machines[1]
self.assertEqual(machine.id, 1)
self.assertEqual(machine.layerbranch_id, 1)
self.assertEqual(machine.layerbranch, self.index.layerBranches[1])
self.assertEqual(machine.layer_id, 1)
self.assertEqual(machine.layer, self.index.layerItems[1])
self.assertEqual(machine.name, 'test_machine')
self.assertEqual(machine.description, 'test_machine')
self.assertIsNotNone(machine.updated)
def test_distro(self):
distro = self.index.distros[1]
self.assertEqual(distro.id, 1)
self.assertEqual(distro.layerbranch_id, 1)
self.assertEqual(distro.layerbranch, self.index.layerBranches[1])
self.assertEqual(distro.layer_id, 1)
self.assertEqual(distro.layer, self.index.layerItems[1])
self.assertEqual(distro.name, 'test_distro')
self.assertEqual(distro.description, 'test_distro')
self.assertIsNotNone(distro.updated)

View File

@@ -0,0 +1,174 @@
# Copyright (C) 2017-2018 Wind River Systems, Inc.
#
# 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
import unittest
import tempfile
import os
import bb
import layerindexlib
from layerindexlib.tests.common import LayersTest
import logging
class LayerIndexWebRestApiTest(LayersTest):
if os.environ.get("BB_SKIP_NETTESTS") == "yes":
print("Unset BB_SKIP_NETTESTS to run network tests")
else:
def setUp(self):
LayersTest.setUp(self)
self.layerindex = layerindexlib.LayerIndex(self.d)
self.layerindex.load_layerindex('http://layers.openembedded.org/layerindex/api/;branch=sumo', load=['layerDependencies'])
def test_layerindex_is_empty(self):
self.assertFalse(self.layerindex.is_empty(), msg="Layerindex is empty")
def test_layerindex_store_file(self):
self.layerindex.store_layerindex('file://%s/file.json' % self.tempdir, self.layerindex.indexes[0])
self.assertTrue(os.path.isfile('%s/file.json' % self.tempdir), msg="Temporary file was not created by store_layerindex")
reload = layerindexlib.LayerIndex(self.d)
reload.load_layerindex('file://%s/file.json' % self.tempdir)
self.assertFalse(reload.is_empty(), msg="Layerindex is empty")
# Calculate layerItems in original index that should NOT be in reload
layerItemNames = []
for itemId in self.layerindex.indexes[0].layerItems:
layerItemNames.append(self.layerindex.indexes[0].layerItems[itemId].name)
for layerBranchId in self.layerindex.indexes[0].layerBranches:
layerItemNames.remove(self.layerindex.indexes[0].layerBranches[layerBranchId].layer.name)
for itemId in reload.indexes[0].layerItems:
self.assertFalse(reload.indexes[0].layerItems[itemId].name in layerItemNames, msg="Item reloaded when it shouldn't have been")
# Compare the original to what we wrote...
for type in self.layerindex.indexes[0]._index:
if type == 'apilinks' or \
type == 'layerItems' or \
type in self.layerindex.indexes[0].config['local']:
continue
for id in getattr(self.layerindex.indexes[0], type):
self.logger.debug(1, "type %s" % (type))
self.assertTrue(id in getattr(reload.indexes[0], type), msg="Id number not in reloaded index")
self.logger.debug(1, "%s ? %s" % (getattr(self.layerindex.indexes[0], type)[id], getattr(reload.indexes[0], type)[id]))
self.assertEqual(getattr(self.layerindex.indexes[0], type)[id], getattr(reload.indexes[0], type)[id], msg="Reloaded contents different")
def test_layerindex_store_split(self):
self.layerindex.store_layerindex('file://%s' % self.tempdir, self.layerindex.indexes[0])
reload = layerindexlib.LayerIndex(self.d)
reload.load_layerindex('file://%s' % self.tempdir)
self.assertFalse(reload.is_empty(), msg="Layer index is empty")
for type in self.layerindex.indexes[0]._index:
if type == 'apilinks' or \
type == 'layerItems' or \
type in self.layerindex.indexes[0].config['local']:
continue
for id in getattr(self.layerindex.indexes[0] ,type):
self.logger.debug(1, "type %s" % (type))
self.assertTrue(id in getattr(reload.indexes[0], type), msg="Id number missing from reloaded data")
self.logger.debug(1, "%s ? %s" % (getattr(self.layerindex.indexes[0] ,type)[id], getattr(reload.indexes[0], type)[id]))
self.assertEqual(getattr(self.layerindex.indexes[0] ,type)[id], getattr(reload.indexes[0], type)[id], msg="reloaded data does not match original")
def test_dependency_resolution(self):
# Verify depth first searching...
(dependencies, invalidnames) = self.layerindex.find_dependencies(names=['meta-python'])
first = True
for deplayerbranch in dependencies:
layerBranch = dependencies[deplayerbranch][0]
layerDeps = dependencies[deplayerbranch][1:]
if not first:
continue
first = False
# Top of the deps should be openembedded-core, since everything depends on it.
self.assertEqual(layerBranch.layer.name, "openembedded-core", msg='OpenEmbedded-Core is no the first dependency')
# meta-python should cause an openembedded-core dependency, if not assert!
for dep in layerDeps:
if dep.layer.name == 'meta-python':
break
else:
self.logger.debug(1, "meta-python was not found")
self.assetTrue(False)
# Only check the first element...
break
else:
# Empty list, this is bad.
self.logger.debug(1, "Empty list of dependencies")
self.assertIsNotNone(first, msg="Empty list of dependencies")
# Last dep should be the requested item
layerBranch = dependencies[deplayerbranch][0]
self.assertEqual(layerBranch.layer.name, "meta-python", msg="Last dependency not meta-python")
def test_find_collection(self):
def _check(collection, expected):
self.logger.debug(1, "Looking for collection %s..." % collection)
result = self.layerindex.find_collection(collection)
if expected:
self.assertIsNotNone(result, msg="Did not find %s when it should be there" % collection)
else:
self.assertIsNone(result, msg="Found %s when it shouldn't be there" % collection)
tests = [ ('core', True),
('openembedded-core', False),
('networking-layer', True),
('meta-python', True),
('openembedded-layer', True),
('notpresent', False) ]
for collection,result in tests:
_check(collection, result)
def test_find_layerbranch(self):
def _check(name, expected):
self.logger.debug(1, "Looking for layerbranch %s..." % name)
for index in self.layerindex.indexes:
for layerbranchid in index.layerBranches:
self.logger.debug(1, "Present: %s" % index.layerBranches[layerbranchid].layer.name)
result = self.layerindex.find_layerbranch(name)
if expected:
self.assertIsNotNone(result, msg="Did not find %s when it should be there" % collection)
else:
self.assertIsNone(result, msg="Found %s when it shouldn't be there" % collection)
tests = [ ('openembedded-core', True),
('core', False),
('meta-networking', True),
('meta-python', True),
('meta-oe', True),
('notpresent', False) ]
for collection,result in tests:
_check(collection, result)

View File

@@ -0,0 +1,11 @@
This test data is used to verify the 'cooker' module of the layerindex.
The module consists of a faux project bblayers.conf with four layers defined.
layer1 - openembedded-core
layer2 - networking-layer
layer3 - meta-python
layer4 - openembedded-layer (meta-oe)
Since we do not have a fully populated cooker, we use this to test the
basic index generation, and not any deep recipe based contents.

View File

@@ -0,0 +1,15 @@
LAYERSERIES_CORENAMES = "sumo"
# LAYER_CONF_VERSION is increased each time build/conf/bblayers.conf
# changes incompatibly
LCONF_VERSION = "7"
BBPATH = "${TOPDIR}"
BBFILES ?= ""
BBLAYERS ?= " \
${TOPDIR}/layer1 \
${TOPDIR}/layer2 \
${TOPDIR}/layer3 \
${TOPDIR}/layer4 \
"

View File

@@ -0,0 +1,17 @@
# We have a conf and classes directory, add to BBPATH
BBPATH .= ":${LAYERDIR}"
# We have recipes-* directories, add to BBFILES
BBFILES += "${LAYERDIR}/recipes-*/*/*.bb"
BBFILE_COLLECTIONS += "core"
BBFILE_PATTERN_core = "^${LAYERDIR}/"
BBFILE_PRIORITY_core = "5"
LAYERSERIES_CORENAMES = "sumo"
# This should only be incremented on significant changes that will
# cause compatibility issues with other layers
LAYERVERSION_core = "11"
LAYERSERIES_COMPAT_core = "sumo"
BBLAYERS_LAYERINDEX_NAME_core = "openembedded-core"

View File

@@ -0,0 +1,20 @@
# We have a conf and classes directory, add to BBPATH
BBPATH .= ":${LAYERDIR}"
# We have a packages directory, add to BBFILES
BBFILES += "${LAYERDIR}/recipes-*/*/*.bb \
${LAYERDIR}/recipes-*/*/*.bbappend"
BBFILE_COLLECTIONS += "networking-layer"
BBFILE_PATTERN_networking-layer := "^${LAYERDIR}/"
BBFILE_PRIORITY_networking-layer = "5"
# This should only be incremented on significant changes that will
# cause compatibility issues with other layers
LAYERVERSION_networking-layer = "1"
LAYERDEPENDS_networking-layer = "core"
LAYERDEPENDS_networking-layer += "openembedded-layer"
LAYERDEPENDS_networking-layer += "meta-python"
LAYERSERIES_COMPAT_networking-layer = "sumo"

View File

@@ -0,0 +1,19 @@
# We might have a conf and classes directory, append to BBPATH
BBPATH .= ":${LAYERDIR}"
# We have recipes directories, add to BBFILES
BBFILES += "${LAYERDIR}/recipes*/*/*.bb ${LAYERDIR}/recipes*/*/*.bbappend"
BBFILE_COLLECTIONS += "meta-python"
BBFILE_PATTERN_meta-python := "^${LAYERDIR}/"
BBFILE_PRIORITY_meta-python = "7"
# This should only be incremented on significant changes that will
# cause compatibility issues with other layers
LAYERVERSION_meta-python = "1"
LAYERDEPENDS_meta-python = "core openembedded-layer"
LAYERSERIES_COMPAT_meta-python = "sumo"
LICENSE_PATH += "${LAYERDIR}/licenses"

View File

@@ -0,0 +1,22 @@
# We have a conf and classes directory, append to BBPATH
BBPATH .= ":${LAYERDIR}"
# We have a recipes directory, add to BBFILES
BBFILES += "${LAYERDIR}/recipes-*/*/*.bb ${LAYERDIR}/recipes-*/*/*.bbappend"
BBFILE_COLLECTIONS += "openembedded-layer"
BBFILE_PATTERN_openembedded-layer := "^${LAYERDIR}/"
# Define the priority for recipes (.bb files) from this layer,
# choosing carefully how this layer interacts with all of the
# other layers.
BBFILE_PRIORITY_openembedded-layer = "6"
# This should only be incremented on significant changes that will
# cause compatibility issues with other layers
LAYERVERSION_openembedded-layer = "1"
LAYERDEPENDS_openembedded-layer = "core"
LAYERSERIES_COMPAT_openembedded-layer = "sumo"

View File

@@ -27,8 +27,9 @@ import shutil
import time
from django.db import transaction
from django.db.models import Q
from bldcontrol.models import BuildEnvironment, BRLayer, BRVariable, BRTarget, BRBitbake
from orm.models import CustomImageRecipe, Layer, Layer_Version, ProjectLayer, ToasterSetting
from bldcontrol.models import BuildEnvironment, BuildRequest, BRLayer, BRVariable, BRTarget, BRBitbake, Build
from orm.models import CustomImageRecipe, Layer, Layer_Version, Project, ProjectLayer, ToasterSetting
from orm.models import signal_runbuilds
import subprocess
from toastermain import settings
@@ -38,6 +39,8 @@ from bldcontrol.bbcontroller import BuildEnvironmentController, ShellCmdExceptio
import logging
logger = logging.getLogger("toaster")
install_dir = os.environ.get('TOASTER_DIR')
from pprint import pprint, pformat
class LocalhostBEController(BuildEnvironmentController):
@@ -87,10 +90,10 @@ class LocalhostBEController(BuildEnvironmentController):
#logger.debug("localhostbecontroller: using HEAD checkout in %s" % local_checkout_path)
return local_checkout_path
def setCloneStatus(self,bitbake,status,total,current):
def setCloneStatus(self,bitbake,status,total,current,repo_name):
bitbake.req.build.repos_cloned=current
bitbake.req.build.repos_to_clone=total
bitbake.req.build.progress_item=repo_name
bitbake.req.build.save()
def setLayers(self, bitbake, layers, targets):
@@ -100,6 +103,7 @@ class LocalhostBEController(BuildEnvironmentController):
layerlist = []
nongitlayerlist = []
layer_index = 0
git_env = os.environ.copy()
# (note: add custom environment settings here)
@@ -113,7 +117,7 @@ class LocalhostBEController(BuildEnvironmentController):
if bitbake.giturl and bitbake.commit:
gitrepos[(bitbake.giturl, bitbake.commit)] = []
gitrepos[(bitbake.giturl, bitbake.commit)].append(
("bitbake", bitbake.dirpath))
("bitbake", bitbake.dirpath, 0))
for layer in layers:
# We don't need to git clone the layer for the CustomImageRecipe
@@ -124,12 +128,13 @@ class LocalhostBEController(BuildEnvironmentController):
# If we have local layers then we don't need clone them
# For local layers giturl will be empty
if not layer.giturl:
nongitlayerlist.append(layer.layer_version.layer.local_source_dir)
nongitlayerlist.append( "%03d:%s" % (layer_index,layer.local_source_dir) )
continue
if not (layer.giturl, layer.commit) in gitrepos:
gitrepos[(layer.giturl, layer.commit)] = []
gitrepos[(layer.giturl, layer.commit)].append( (layer.name, layer.dirpath) )
gitrepos[(layer.giturl, layer.commit)].append( (layer.name,layer.dirpath,layer_index) )
layer_index += 1
logger.debug("localhostbecontroller, our git repos are %s" % pformat(gitrepos))
@@ -159,9 +164,9 @@ class LocalhostBEController(BuildEnvironmentController):
# 3. checkout the repositories
clone_count=0
clone_total=len(gitrepos.keys())
self.setCloneStatus(bitbake,'Started',clone_total,clone_count)
self.setCloneStatus(bitbake,'Started',clone_total,clone_count,'')
for giturl, commit in gitrepos.keys():
self.setCloneStatus(bitbake,'progress',clone_total,clone_count)
self.setCloneStatus(bitbake,'progress',clone_total,clone_count,gitrepos[(giturl, commit)][0][0])
clone_count += 1
localdirname = os.path.join(self.be.sourcedir, self.getGitCloneDirectory(giturl, commit))
@@ -205,21 +210,33 @@ class LocalhostBEController(BuildEnvironmentController):
self._shellcmd("git clone -b \"%s\" \"%s\" \"%s\" " % (bitbake.commit, bitbake.giturl, os.path.join(self.pokydirname, 'bitbake')),env=git_env)
# verify our repositories
for name, dirpath in gitrepos[(giturl, commit)]:
for name, dirpath, index in gitrepos[(giturl, commit)]:
localdirpath = os.path.join(localdirname, dirpath)
logger.debug("localhostbecontroller: localdirpath expected '%s'" % localdirpath)
logger.debug("localhostbecontroller: localdirpath expects '%s'" % localdirpath)
if not os.path.exists(localdirpath):
raise BuildSetupException("Cannot find layer git path '%s' in checked out repository '%s:%s'. Aborting." % (localdirpath, giturl, commit))
if name != "bitbake":
layerlist.append(localdirpath.rstrip("/"))
layerlist.append("%03d:%s" % (index,localdirpath.rstrip("/")))
self.setCloneStatus(bitbake,'complete',clone_total,clone_count)
self.setCloneStatus(bitbake,'complete',clone_total,clone_count,'')
logger.debug("localhostbecontroller: current layer list %s " % pformat(layerlist))
if self.pokydirname is None and os.path.exists(os.path.join(self.be.sourcedir, "oe-init-build-env")):
logger.debug("localhostbecontroller: selected poky dir name %s" % self.be.sourcedir)
self.pokydirname = self.be.sourcedir
# Resolve self.pokydirname if not resolved yet, consider the scenario
# where all layers are local, that's the else clause
if self.pokydirname is None:
if os.path.exists(os.path.join(self.be.sourcedir, "oe-init-build-env")):
logger.debug("localhostbecontroller: selected poky dir name %s" % self.be.sourcedir)
self.pokydirname = self.be.sourcedir
else:
# Alternatively, scan local layers for relative "oe-init-build-env" location
for layer in layers:
if os.path.exists(os.path.join(layer.layer_version.layer.local_source_dir,"..","oe-init-build-env")):
logger.debug("localhostbecontroller, setting pokydirname to %s" % (layer.layer_version.layer.local_source_dir))
self.pokydirname = os.path.join(layer.layer_version.layer.local_source_dir,"..")
break
else:
logger.error("pokydirname is not set, you will run into trouble!")
# 5. create custom layer and add custom recipes to it
for target in targets:
@@ -232,7 +249,7 @@ class LocalhostBEController(BuildEnvironmentController):
customrecipe, layers)
if os.path.isdir(custom_layer_path):
layerlist.append(custom_layer_path)
layerlist.append("%03d:%s" % (layer_index,custom_layer_path))
except CustomImageRecipe.DoesNotExist:
continue # not a custom recipe, skip
@@ -240,7 +257,11 @@ class LocalhostBEController(BuildEnvironmentController):
layerlist.extend(nongitlayerlist)
logger.debug("\n\nset layers gives this list %s" % pformat(layerlist))
self.islayerset = True
return layerlist
# restore the order of layer list for bblayers.conf
layerlist.sort()
sorted_layerlist = [l[4:] for l in layerlist]
return sorted_layerlist
def setup_custom_image_recipe(self, customrecipe, layers):
""" Set up toaster-custom-images layer and recipe files """
@@ -310,41 +331,141 @@ class LocalhostBEController(BuildEnvironmentController):
def triggerBuild(self, bitbake, layers, variables, targets, brbe):
layers = self.setLayers(bitbake, layers, targets)
is_merged_attr = bitbake.req.project.merged_attr
git_env = os.environ.copy()
# (note: add custom environment settings here)
try:
# insure that the project init/build uses the selected bitbake, and not Toaster's
del git_env['TEMPLATECONF']
del git_env['BBBASEDIR']
del git_env['BUILDDIR']
except KeyError:
pass
# init build environment from the clone
builddir = '%s-toaster-%d' % (self.be.builddir, bitbake.req.project.id)
if bitbake.req.project.builddir:
builddir = bitbake.req.project.builddir
else:
builddir = '%s-toaster-%d' % (self.be.builddir, bitbake.req.project.id)
oe_init = os.path.join(self.pokydirname, 'oe-init-build-env')
# init build environment
try:
custom_script = ToasterSetting.objects.get(name="CUSTOM_BUILD_INIT_SCRIPT").value
custom_script = custom_script.replace("%BUILDDIR%" ,builddir)
self._shellcmd("bash -c 'source %s'" % (custom_script))
self._shellcmd("bash -c 'source %s'" % (custom_script),env=git_env)
except ToasterSetting.DoesNotExist:
self._shellcmd("bash -c 'source %s %s'" % (oe_init, builddir),
self.be.sourcedir)
self.be.sourcedir,env=git_env)
# update bblayers.conf
bblconfpath = os.path.join(builddir, "conf/toaster-bblayers.conf")
with open(bblconfpath, 'w') as bblayers:
bblayers.write('# line added by toaster build control\n'
'BBLAYERS = "%s"' % ' '.join(layers))
if not is_merged_attr:
bblconfpath = os.path.join(builddir, "conf/toaster-bblayers.conf")
with open(bblconfpath, 'w') as bblayers:
bblayers.write('# line added by toaster build control\n'
'BBLAYERS = "%s"' % ' '.join(layers))
# write configuration file
confpath = os.path.join(builddir, 'conf/toaster.conf')
with open(confpath, 'w') as conf:
for var in variables:
conf.write('%s="%s"\n' % (var.name, var.value))
conf.write('INHERIT+="toaster buildhistory"')
# write configuration file
confpath = os.path.join(builddir, 'conf/toaster.conf')
with open(confpath, 'w') as conf:
for var in variables:
conf.write('%s="%s"\n' % (var.name, var.value))
conf.write('INHERIT+="toaster buildhistory"')
else:
# Append the Toaster-specific values directly to the bblayers.conf
bblconfpath = os.path.join(builddir, "conf/bblayers.conf")
bblconfpath_save = os.path.join(builddir, "conf/bblayers.conf.save")
shutil.copyfile(bblconfpath, bblconfpath_save)
with open(bblconfpath) as bblayers:
content = bblayers.readlines()
do_write = True
was_toaster = False
with open(bblconfpath,'w') as bblayers:
for line in content:
#line = line.strip('\n')
if 'TOASTER_CONFIG_PROLOG' in line:
do_write = False
was_toaster = True
elif 'TOASTER_CONFIG_EPILOG' in line:
do_write = True
elif do_write:
bblayers.write(line)
if not was_toaster:
bblayers.write('\n')
bblayers.write('#=== TOASTER_CONFIG_PROLOG ===\n')
bblayers.write('BBLAYERS = "\\\n')
for layer in layers:
bblayers.write(' %s \\\n' % layer)
bblayers.write(' "\n')
bblayers.write('#=== TOASTER_CONFIG_EPILOG ===\n')
# Append the Toaster-specific values directly to the local.conf
bbconfpath = os.path.join(builddir, "conf/local.conf")
bbconfpath_save = os.path.join(builddir, "conf/local.conf.save")
shutil.copyfile(bbconfpath, bbconfpath_save)
with open(bbconfpath) as f:
content = f.readlines()
do_write = True
was_toaster = False
with open(bbconfpath,'w') as conf:
for line in content:
#line = line.strip('\n')
if 'TOASTER_CONFIG_PROLOG' in line:
do_write = False
was_toaster = True
elif 'TOASTER_CONFIG_EPILOG' in line:
do_write = True
elif do_write:
conf.write(line)
if not was_toaster:
conf.write('\n')
conf.write('#=== TOASTER_CONFIG_PROLOG ===\n')
for var in variables:
if (not var.name.startswith("INTERNAL_")) and (not var.name == "BBLAYERS"):
conf.write('%s="%s"\n' % (var.name, var.value))
conf.write('#=== TOASTER_CONFIG_EPILOG ===\n')
# If 'target' is just the project preparation target, then we are done
for target in targets:
if "_PROJECT_PREPARE_" == target.target:
logger.debug('localhostbecontroller: Project has been prepared. Done.')
# Update the Build Request and release the build environment
bitbake.req.state = BuildRequest.REQ_COMPLETED
bitbake.req.save()
self.be.lock = BuildEnvironment.LOCK_FREE
self.be.save()
# Close the project build and progress bar
bitbake.req.build.outcome = Build.SUCCEEDED
bitbake.req.build.save()
# Update the project status
bitbake.req.project.set_variable(Project.PROJECT_SPECIFIC_STATUS,Project.PROJECT_SPECIFIC_CLONING_SUCCESS)
signal_runbuilds()
return
# clean the Toaster to build environment
env_clean = 'unset BBPATH;' # clean BBPATH for <= YP-2.4.0
# run bitbake server from the clone
# run bitbake server from the clone if available
# otherwise pick it from the PATH
bitbake = os.path.join(self.pokydirname, 'bitbake', 'bin', 'bitbake')
if not os.path.exists(bitbake):
logger.info("Bitbake not available under %s, will try to use it from PATH" %
self.pokydirname)
for path in os.environ["PATH"].split(os.pathsep):
if os.path.exists(os.path.join(path, 'bitbake')):
bitbake = os.path.join(path, 'bitbake')
break
else:
logger.error("Looks like Bitbake is not available, please fix your environment")
toasterlayers = os.path.join(builddir,"conf/toaster-bblayers.conf")
self._shellcmd('%s bash -c \"source %s %s; BITBAKE_UI="knotty" %s --read %s --read %s '
'--server-only -B 0.0.0.0:0\"' % (env_clean, oe_init,
builddir, bitbake, confpath, toasterlayers), self.be.sourcedir)
if not is_merged_attr:
self._shellcmd('%s bash -c \"source %s %s; BITBAKE_UI="knotty" %s --read %s --read %s '
'--server-only -B 0.0.0.0:0\"' % (env_clean, oe_init,
builddir, bitbake, confpath, toasterlayers), self.be.sourcedir)
else:
self._shellcmd('%s bash -c \"source %s %s; BITBAKE_UI="knotty" %s '
'--server-only -B 0.0.0.0:0\"' % (env_clean, oe_init,
builddir, bitbake), self.be.sourcedir)
# read port number from bitbake.lock
self.be.bbport = -1
@@ -390,12 +511,20 @@ class LocalhostBEController(BuildEnvironmentController):
log = os.path.join(builddir, 'toaster_ui.log')
local_bitbake = os.path.join(os.path.dirname(os.getenv('BBBASEDIR')),
'bitbake')
self._shellcmd(['%s bash -c \"(TOASTER_BRBE="%s" BBSERVER="0.0.0.0:%s" '
if not is_merged_attr:
self._shellcmd(['%s bash -c \"(TOASTER_BRBE="%s" BBSERVER="0.0.0.0:%s" '
'%s %s -u toasterui --read %s --read %s --token="" >>%s 2>&1;'
'BITBAKE_UI="knotty" BBSERVER=0.0.0.0:%s %s -m)&\"' \
% (env_clean, brbe, self.be.bbport, local_bitbake, bbtargets, confpath, toasterlayers, log,
self.be.bbport, bitbake,)],
builddir, nowait=True)
else:
self._shellcmd(['%s bash -c \"(TOASTER_BRBE="%s" BBSERVER="0.0.0.0:%s" '
'%s %s -u toasterui --token="" >>%s 2>&1;'
'BITBAKE_UI="knotty" BBSERVER=0.0.0.0:%s %s -m)&\"' \
% (env_clean, brbe, self.be.bbport, local_bitbake, bbtargets, log,
self.be.bbport, bitbake,)],
builddir, nowait=True)
logger.debug('localhostbecontroller: Build launched, exiting. '
'Follow build logs at %s' % log)

View File

@@ -74,8 +74,9 @@ class Command(BaseCommand):
print("Loading default settings")
call_command("loaddata", "settings")
template_conf = os.environ.get("TEMPLATECONF", "")
custom_xml_only = os.environ.get("CUSTOM_XML_ONLY")
if ToasterSetting.objects.filter(name='CUSTOM_XML_ONLY').count() > 0:
if ToasterSetting.objects.filter(name='CUSTOM_XML_ONLY').count() > 0 or (not custom_xml_only == None):
# only use the custom settings
pass
elif "poky" in template_conf:

View File

@@ -49,7 +49,7 @@ class Command(BaseCommand):
# we could not find a BEC; postpone the BR
br.state = BuildRequest.REQ_QUEUED
br.save()
logger.debug("runbuilds: No build env")
logger.debug("runbuilds: No build env (%s)" % e)
return
logger.info("runbuilds: starting build %s, environment %s" %

View File

@@ -29,7 +29,6 @@ from orm.models import ToasterSetting
import os
import sys
import json
import logging
import threading
import time
@@ -37,6 +36,18 @@ logger = logging.getLogger("toaster")
DEFAULT_LAYERINDEX_SERVER = "http://layers.openembedded.org/layerindex/api/"
# Add path to bitbake modules for layerindexlib
# lib/toaster/orm/management/commands/lsupdates.py (abspath)
# lib/toaster/orm/management/commands (dirname)
# lib/toaster/orm/management (dirname)
# lib/toaster/orm (dirname)
# lib/toaster/ (dirname)
# lib/ (dirname)
path = os.path.dirname(os.path.dirname(os.path.dirname(os.path.dirname(os.path.dirname(os.path.abspath(__file__))))))
sys.path.insert(0, path)
import layerindexlib
class Spinner(threading.Thread):
""" A simple progress spinner to indicate download/parsing is happening"""
@@ -86,45 +97,6 @@ class Command(BaseCommand):
self.apiurl = ToasterSetting.objects.get(name = 'CUSTOM_LAYERINDEX_SERVER').value
assert self.apiurl is not None
try:
from urllib.request import urlopen, URLError
from urllib.parse import urlparse
except ImportError:
from urllib2 import urlopen, URLError
from urlparse import urlparse
proxy_settings = os.environ.get("http_proxy", None)
def _get_json_response(apiurl=None):
if None == apiurl:
apiurl=self.apiurl
http_progress = Spinner()
http_progress.start()
_parsedurl = urlparse(apiurl)
path = _parsedurl.path
# logger.debug("Fetching %s", apiurl)
try:
res = urlopen(apiurl)
except URLError as e:
raise Exception("Failed to read %s: %s" % (path, e.reason))
parsed = json.loads(res.read().decode('utf-8'))
http_progress.stop()
return parsed
# verify we can get the basic api
try:
apilinks = _get_json_response()
except Exception as e:
import traceback
if proxy_settings is not None:
logger.info("EE: Using proxy %s" % proxy_settings)
logger.warning("EE: could not connect to %s, skipping update:"
"%s\n%s" % (self.apiurl, e, traceback.format_exc()))
return
# update branches; only those that we already have names listed in the
# Releases table
@@ -133,112 +105,118 @@ class Command(BaseCommand):
if len(whitelist_branch_names) == 0:
raise Exception("Failed to make list of branches to fetch")
logger.info("Fetching metadata releases for %s",
logger.info("Fetching metadata for %s",
" ".join(whitelist_branch_names))
branches_info = _get_json_response(apilinks['branches'] +
"?filter=name:%s"
% "OR".join(whitelist_branch_names))
# We require a non-empty bb.data, but we can fake it with a dictionary
layerindex = layerindexlib.LayerIndex({"DUMMY" : "VALUE"})
http_progress = Spinner()
http_progress.start()
if whitelist_branch_names:
url_branches = ";branch=%s" % ','.join(whitelist_branch_names)
else:
url_branches = ""
layerindex.load_layerindex("%s%s" % (self.apiurl, url_branches))
http_progress.stop()
# We know we're only processing one entry, so we reference it here
# (this is cheating...)
index = layerindex.indexes[0]
# Map the layer index branches to toaster releases
li_branch_id_to_toaster_release = {}
total = len(branches_info)
for i, branch in enumerate(branches_info):
li_branch_id_to_toaster_release[branch['id']] = \
Release.objects.get(name=branch['name'])
logger.info("Processing releases")
total = len(index.branches)
for i, id in enumerate(index.branches):
li_branch_id_to_toaster_release[id] = \
Release.objects.get(name=index.branches[id].name)
self.mini_progress("Releases", i, total)
# keep a track of the layerindex (li) id mappings so that
# layer_versions can be created for these layers later on
li_layer_id_to_toaster_layer_id = {}
logger.info("Fetching layers")
logger.info("Processing layers")
layers_info = _get_json_response(apilinks['layerItems'])
total = len(layers_info)
for i, li in enumerate(layers_info):
total = len(index.layerItems)
for i, id in enumerate(index.layerItems):
try:
l, created = Layer.objects.get_or_create(name=li['name'])
l.up_date = li['updated']
l.summary = li['summary']
l.description = li['description']
l, created = Layer.objects.get_or_create(name=index.layerItems[id].name)
l.up_date = index.layerItems[id].updated
l.summary = index.layerItems[id].summary
l.description = index.layerItems[id].description
if created:
# predefined layers in the fixtures (for example poky.xml)
# always preempt the Layer Index for these values
l.vcs_url = li['vcs_url']
l.vcs_web_url = li['vcs_web_url']
l.vcs_web_tree_base_url = li['vcs_web_tree_base_url']
l.vcs_web_file_base_url = li['vcs_web_file_base_url']
l.vcs_url = index.layerItems[id].vcs_url
l.vcs_web_url = index.layerItems[id].vcs_web_url
l.vcs_web_tree_base_url = index.layerItems[id].vcs_web_tree_base_url
l.vcs_web_file_base_url = index.layerItems[id].vcs_web_file_base_url
l.save()
except Layer.MultipleObjectsReturned:
logger.info("Skipped %s as we found multiple layers and "
"don't know which to update" %
li['name'])
index.layerItems[id].name)
li_layer_id_to_toaster_layer_id[li['id']] = l.pk
li_layer_id_to_toaster_layer_id[id] = l.pk
self.mini_progress("layers", i, total)
# update layer_versions
logger.info("Fetching layer versions")
layerbranches_info = _get_json_response(
apilinks['layerBranches'] + "?filter=branch__name:%s" %
"OR".join(whitelist_branch_names))
logger.info("Processing layer versions")
# Map Layer index layer_branch object id to
# layer_version toaster object id
li_layer_branch_id_to_toaster_lv_id = {}
total = len(layerbranches_info)
for i, lbi in enumerate(layerbranches_info):
total = len(index.layerBranches)
for i, id in enumerate(index.layerBranches):
# release as defined by toaster map to layerindex branch
release = li_branch_id_to_toaster_release[lbi['branch']]
release = li_branch_id_to_toaster_release[index.layerBranches[id].branch_id]
try:
lv, created = Layer_Version.objects.get_or_create(
layer=Layer.objects.get(
pk=li_layer_id_to_toaster_layer_id[lbi['layer']]),
pk=li_layer_id_to_toaster_layer_id[index.layerBranches[id].layer_id]),
release=release
)
except KeyError:
logger.warning(
"No such layerindex layer referenced by layerbranch %d" %
lbi['layer'])
index.layerBranches[id].layer_id)
continue
if created:
lv.release = li_branch_id_to_toaster_release[lbi['branch']]
lv.up_date = lbi['updated']
lv.commit = lbi['actual_branch']
lv.dirpath = lbi['vcs_subdir']
lv.release = li_branch_id_to_toaster_release[index.layerBranches[id].branch_id]
lv.up_date = index.layerBranches[id].updated
lv.commit = index.layerBranches[id].actual_branch
lv.dirpath = index.layerBranches[id].vcs_subdir
lv.save()
li_layer_branch_id_to_toaster_lv_id[lbi['id']] =\
li_layer_branch_id_to_toaster_lv_id[index.layerBranches[id].id] =\
lv.pk
self.mini_progress("layer versions", i, total)
logger.info("Fetching layer version dependencies")
# update layer dependencies
layerdependencies_info = _get_json_response(
apilinks['layerDependencies'] +
"?filter=layerbranch__branch__name:%s" %
"OR".join(whitelist_branch_names))
logger.info("Processing layer version dependencies")
dependlist = {}
for ldi in layerdependencies_info:
for id in index.layerDependencies:
try:
lv = Layer_Version.objects.get(
pk=li_layer_branch_id_to_toaster_lv_id[ldi['layerbranch']])
pk=li_layer_branch_id_to_toaster_lv_id[index.layerDependencies[id].layerbranch_id])
except Layer_Version.DoesNotExist as e:
continue
if lv not in dependlist:
dependlist[lv] = []
try:
layer_id = li_layer_id_to_toaster_layer_id[ldi['dependency']]
layer_id = li_layer_id_to_toaster_layer_id[index.layerDependencies[id].dependency_id]
dependlist[lv].append(
Layer_Version.objects.get(layer__pk=layer_id,
@@ -247,7 +225,7 @@ class Command(BaseCommand):
except Layer_Version.DoesNotExist:
logger.warning("Cannot find layer version (ls:%s),"
"up_id:%s lv:%s" %
(self, ldi['dependency'], lv))
(self, index.layerDependencies[id].dependency_id, lv))
total = len(dependlist)
for i, lv in enumerate(dependlist):
@@ -258,73 +236,61 @@ class Command(BaseCommand):
self.mini_progress("Layer version dependencies", i, total)
# update Distros
logger.info("Fetching distro information")
distros_info = _get_json_response(
apilinks['distros'] + "?filter=layerbranch__branch__name:%s" %
"OR".join(whitelist_branch_names))
logger.info("Processing distro information")
total = len(distros_info)
for i, di in enumerate(distros_info):
total = len(index.distros)
for i, id in enumerate(index.distros):
distro, created = Distro.objects.get_or_create(
name=di['name'],
name=index.distros[id].name,
layer_version=Layer_Version.objects.get(
pk=li_layer_branch_id_to_toaster_lv_id[di['layerbranch']]))
distro.up_date = di['updated']
distro.name = di['name']
distro.description = di['description']
pk=li_layer_branch_id_to_toaster_lv_id[index.distros[id].layerbranch_id]))
distro.up_date = index.distros[id].updated
distro.name = index.distros[id].name
distro.description = index.distros[id].description
distro.save()
self.mini_progress("distros", i, total)
# update machines
logger.info("Fetching machine information")
machines_info = _get_json_response(
apilinks['machines'] + "?filter=layerbranch__branch__name:%s" %
"OR".join(whitelist_branch_names))
logger.info("Processing machine information")
total = len(machines_info)
for i, mi in enumerate(machines_info):
total = len(index.machines)
for i, id in enumerate(index.machines):
mo, created = Machine.objects.get_or_create(
name=mi['name'],
name=index.machines[id].name,
layer_version=Layer_Version.objects.get(
pk=li_layer_branch_id_to_toaster_lv_id[mi['layerbranch']]))
mo.up_date = mi['updated']
mo.name = mi['name']
mo.description = mi['description']
pk=li_layer_branch_id_to_toaster_lv_id[index.machines[id].layerbranch_id]))
mo.up_date = index.machines[id].updated
mo.name = index.machines[id].name
mo.description = index.machines[id].description
mo.save()
self.mini_progress("machines", i, total)
# update recipes; paginate by layer version / layer branch
logger.info("Fetching recipe information")
recipes_info = _get_json_response(
apilinks['recipes'] + "?filter=layerbranch__branch__name:%s" %
"OR".join(whitelist_branch_names))
logger.info("Processing recipe information")
total = len(recipes_info)
for i, ri in enumerate(recipes_info):
total = len(index.recipes)
for i, id in enumerate(index.recipes):
try:
lv_id = li_layer_branch_id_to_toaster_lv_id[ri['layerbranch']]
lv_id = li_layer_branch_id_to_toaster_lv_id[index.recipes[id].layerbranch_id]
lv = Layer_Version.objects.get(pk=lv_id)
ro, created = Recipe.objects.get_or_create(
layer_version=lv,
name=ri['pn']
name=index.recipes[id].pn
)
ro.layer_version = lv
ro.up_date = ri['updated']
ro.name = ri['pn']
ro.version = ri['pv']
ro.summary = ri['summary']
ro.description = ri['description']
ro.section = ri['section']
ro.license = ri['license']
ro.homepage = ri['homepage']
ro.bugtracker = ri['bugtracker']
ro.file_path = ri['filepath'] + "/" + ri['filename']
if 'inherits' in ri:
ro.is_image = 'image' in ri['inherits'].split()
else: # workaround for old style layer index
ro.is_image = "-image-" in ri['pn']
ro.up_date = index.recipes[id].updated
ro.name = index.recipes[id].pn
ro.version = index.recipes[id].pv
ro.summary = index.recipes[id].summary
ro.description = index.recipes[id].description
ro.section = index.recipes[id].section
ro.license = index.recipes[id].license
ro.homepage = index.recipes[id].homepage
ro.bugtracker = index.recipes[id].bugtracker
ro.file_path = index.recipes[id].fullpath
ro.is_image = 'image' in index.recipes[id].inherits.split()
ro.save()
except Exception as e:
logger.warning("Failed saving recipe %s", e)

View File

@@ -0,0 +1,28 @@
# -*- coding: utf-8 -*-
from __future__ import unicode_literals
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('orm', '0017_distro_clone'),
]
operations = [
migrations.AddField(
model_name='Project',
name='builddir',
field=models.TextField(),
),
migrations.AddField(
model_name='Project',
name='merged_attr',
field=models.BooleanField(default=False)
),
migrations.AddField(
model_name='Build',
name='progress_item',
field=models.CharField(max_length=40)
),
]

View File

@@ -121,8 +121,15 @@ class ToasterSetting(models.Model):
class ProjectManager(models.Manager):
def create_project(self, name, release):
if release is not None:
def create_project(self, name, release, existing_project=None):
if existing_project and (release is not None):
prj = existing_project
prj.bitbake_version = release.bitbake_version
prj.release = release
# Delete the previous ProjectLayer mappings
for pl in ProjectLayer.objects.filter(project=prj):
pl.delete()
elif release is not None:
prj = self.model(name=name,
bitbake_version=release.bitbake_version,
release=release)
@@ -130,15 +137,14 @@ class ProjectManager(models.Manager):
prj = self.model(name=name,
bitbake_version=None,
release=None)
prj.save()
for defaultconf in ToasterSetting.objects.filter(
name__startswith="DEFCONF_"):
name = defaultconf.name[8:]
ProjectVariable.objects.create(project=prj,
name=name,
value=defaultconf.value)
pv,create = ProjectVariable.objects.get_or_create(project=prj,name=name)
pv.value = defaultconf.value
pv.save()
if release is None:
return prj
@@ -197,6 +203,11 @@ class Project(models.Model):
user_id = models.IntegerField(null=True)
objects = ProjectManager()
# build directory override (e.g. imported)
builddir = models.TextField()
# merge the Toaster configure attributes directly into the standard conf files
merged_attr = models.BooleanField(default=False)
# set to True for the project which is the default container
# for builds initiated by the command line etc.
is_default= models.BooleanField(default=False)
@@ -305,6 +316,15 @@ class Project(models.Model):
return layer_versions
def get_default_image_recipe(self):
try:
return self.projectvariable_set.get(name="DEFAULT_IMAGE").value
except (ProjectVariable.DoesNotExist,IndexError):
return None;
def get_is_new(self):
return self.get_variable(Project.PROJECT_SPECIFIC_ISNEW)
def get_available_machines(self):
""" Returns QuerySet of all Machines which are provided by the
Layers currently added to the Project """
@@ -353,6 +373,32 @@ class Project(models.Model):
return queryset
# Project Specific status management
PROJECT_SPECIFIC_STATUS = 'INTERNAL_PROJECT_SPECIFIC_STATUS'
PROJECT_SPECIFIC_CALLBACK = 'INTERNAL_PROJECT_SPECIFIC_CALLBACK'
PROJECT_SPECIFIC_ISNEW = 'INTERNAL_PROJECT_SPECIFIC_ISNEW'
PROJECT_SPECIFIC_DEFAULTIMAGE = 'PROJECT_SPECIFIC_DEFAULTIMAGE'
PROJECT_SPECIFIC_NONE = ''
PROJECT_SPECIFIC_NEW = '1'
PROJECT_SPECIFIC_EDIT = '2'
PROJECT_SPECIFIC_CLONING = '3'
PROJECT_SPECIFIC_CLONING_SUCCESS = '4'
PROJECT_SPECIFIC_CLONING_FAIL = '5'
def get_variable(self,variable,default_value = ''):
try:
return self.projectvariable_set.get(name=variable).value
except (ProjectVariable.DoesNotExist,IndexError):
return default_value
def set_variable(self,variable,value):
pv,create = ProjectVariable.objects.get_or_create(project = self, name = variable)
pv.value = value
pv.save()
def get_default_image(self):
return self.get_variable(Project.PROJECT_SPECIFIC_DEFAULTIMAGE)
def schedule_build(self):
from bldcontrol.models import BuildRequest, BRTarget, BRLayer
@@ -459,6 +505,9 @@ class Build(models.Model):
# number of repos cloned so far for this build (default off)
repos_cloned = models.IntegerField(default=1)
# Hint on current progress item
progress_item = models.CharField(max_length=40)
@staticmethod
def get_recent(project=None):
"""
@@ -1663,6 +1712,9 @@ class CustomImageRecipe(Recipe):
path_schema_two = self.base_recipe.file_path
path_schema_three = "%s/%s" % (self.base_recipe.layer_version.layer.local_source_dir,
self.base_recipe.file_path)
if os.path.exists(path_schema_one):
return path_schema_one
@@ -1670,6 +1722,10 @@ class CustomImageRecipe(Recipe):
if os.path.exists(path_schema_two):
return path_schema_two
# Or a local path if all layers are local
if os.path.exists(path_schema_three):
return path_schema_three
return None
def generate_recipe_file_contents(self):

View File

@@ -22,7 +22,9 @@ import os
import re
import logging
import json
import subprocess
from collections import Counter
from shutil import copyfile
from orm.models import Project, ProjectTarget, Build, Layer_Version
from orm.models import LayerVersionDependency, LayerSource, ProjectLayer
@@ -38,6 +40,18 @@ from django.core.urlresolvers import reverse
from django.db.models import Q, F
from django.db import Error
from toastergui.templatetags.projecttags import filtered_filesizeformat
from django.utils import timezone
import pytz
# development/debugging support
verbose = 2
def _log(msg):
if 1 == verbose:
print(msg)
elif 2 == verbose:
f1=open('/tmp/toaster.log', 'a')
f1.write("|" + msg + "|\n" )
f1.close()
logger = logging.getLogger("toaster")
@@ -137,6 +151,130 @@ class XhrBuildRequest(View):
return response
class XhrProjectUpdate(View):
def get(self, request, *args, **kwargs):
return HttpResponse()
def post(self, request, *args, **kwargs):
"""
Project Update
Entry point: /xhr_projectupdate/<project_id>
Method: POST
Args:
pid: pid of project to update
Returns:
{"error": "ok"}
or
{"error": <error message>}
"""
project = Project.objects.get(pk=kwargs['pid'])
logger.debug("ProjectUpdateCallback:project.pk=%d,project.builddir=%s" % (project.pk,project.builddir))
if 'do_update' in request.POST:
# Extract any default image recipe
if 'default_image' in request.POST:
project.set_variable(Project.PROJECT_SPECIFIC_DEFAULTIMAGE,str(request.POST['default_image']))
else:
project.set_variable(Project.PROJECT_SPECIFIC_DEFAULTIMAGE,'')
logger.debug("ProjectUpdateCallback:Chain to the build request")
# Chain to the build request
xhrBuildRequest = XhrBuildRequest()
return xhrBuildRequest.post(request, *args, **kwargs)
logger.warning("ERROR:XhrProjectUpdate")
response = HttpResponse()
response.status_code = 500
return response
class XhrSetDefaultImageUrl(View):
def get(self, request, *args, **kwargs):
return HttpResponse()
def post(self, request, *args, **kwargs):
"""
Project Update
Entry point: /xhr_setdefaultimage/<project_id>
Method: POST
Args:
pid: pid of project to update default image
Returns:
{"error": "ok"}
or
{"error": <error message>}
"""
project = Project.objects.get(pk=kwargs['pid'])
logger.debug("XhrSetDefaultImageUrl:project.pk=%d" % (project.pk))
# set any default image recipe
if 'targets' in request.POST:
default_target = str(request.POST['targets'])
project.set_variable(Project.PROJECT_SPECIFIC_DEFAULTIMAGE,default_target)
logger.debug("XhrSetDefaultImageUrl,project.pk=%d,project.builddir=%s" % (project.pk,project.builddir))
return error_response('ok')
logger.warning("ERROR:XhrSetDefaultImageUrl")
response = HttpResponse()
response.status_code = 500
return response
#
# Layer Management
#
# Rules for 'local_source_dir' layers
# * Layers must have a unique name in the Layers table
# * A 'local_source_dir' layer is supposed to be shared
# by all projects that use it, so that it can have the
# same logical name
# * Each project that uses a layer will have its own
# LayerVersion and Project Layer for it
# * During the Paroject delete process, when the last
# LayerVersion for a 'local_source_dir' layer is deleted
# then the Layer record is deleted to remove orphans
#
def scan_layer_content(layer,layer_version):
# if this is a local layer directory, we can immediately scan its content
if layer.local_source_dir:
try:
# recipes-*/*/*.bb
cmd = '%s %s' % ('ls', os.path.join(layer.local_source_dir,'recipes-*/*/*.bb'))
recipes_list = subprocess.Popen(cmd, shell=True, stdout=subprocess.PIPE,stderr=subprocess.STDOUT).stdout.read()
recipes_list = recipes_list.decode("utf-8").strip()
if recipes_list and 'No such' not in recipes_list:
for recipe in recipes_list.split('\n'):
recipe_path = recipe[recipe.rfind('recipes-'):]
recipe_name = recipe[recipe.rfind('/')+1:].replace('.bb','')
recipe_ver = recipe_name.rfind('_')
if recipe_ver > 0:
recipe_name = recipe_name[0:recipe_ver]
if recipe_name:
ro, created = Recipe.objects.get_or_create(
layer_version=layer_version,
name=recipe_name
)
if created:
ro.file_path = recipe_path
ro.summary = 'Recipe %s from layer %s' % (recipe_name,layer.name)
ro.description = ro.summary
ro.save()
except Exception as e:
logger.warning("ERROR:scan_layer_content: %s" % e)
class XhrLayer(View):
""" Delete, Get, Add and Update Layer information
@@ -265,6 +403,7 @@ class XhrLayer(View):
(csv)]
"""
try:
project = Project.objects.get(pk=kwargs['pid'])
@@ -285,7 +424,13 @@ class XhrLayer(View):
if layer_data['name'] in existing_layers:
return JsonResponse({"error": "layer-name-exists"})
layer = Layer.objects.create(name=layer_data['name'])
if ('local_source_dir' in layer_data):
# Local layer can be shared across projects. They have no 'release'
# and are not included in get_all_compatible_layer_versions() above
layer,created = Layer.objects.get_or_create(name=layer_data['name'])
_log("Local Layer created=%s" % created)
else:
layer = Layer.objects.create(name=layer_data['name'])
layer_version = Layer_Version.objects.create(
layer=layer,
@@ -293,7 +438,7 @@ class XhrLayer(View):
layer_source=LayerSource.TYPE_IMPORTED)
# Local layer
if ('local_source_dir' in layer_data) and layer.local_source_dir:
if ('local_source_dir' in layer_data): ### and layer.local_source_dir:
layer.local_source_dir = layer_data['local_source_dir']
# git layer
elif 'vcs_url' in layer_data:
@@ -325,6 +470,9 @@ class XhrLayer(View):
'layerdetailurl':
layer_dep.get_detailspage_url(project.pk)})
# Scan the layer's content and update components
scan_layer_content(layer,layer_version)
except Layer_Version.DoesNotExist:
return error_response("layer-dep-not-found")
except Project.DoesNotExist:
@@ -1014,8 +1162,24 @@ class XhrProject(View):
state=BuildRequest.REQ_INPROGRESS):
XhrBuildRequest.cancel_build(br)
# gather potential orphaned local layers attached to this project
project_local_layer_list = []
for pl in ProjectLayer.objects.filter(project=project):
if pl.layercommit.layer_source == LayerSource.TYPE_IMPORTED:
project_local_layer_list.append(pl.layercommit.layer)
# deep delete the project and its dependencies
project.delete()
# delete any local layers now orphaned
_log("LAYER_ORPHAN_CHECK:Check for orphaned layers")
for layer in project_local_layer_list:
layer_refs = Layer_Version.objects.filter(layer=layer)
_log("LAYER_ORPHAN_CHECK:Ref Count for '%s' = %d" % (layer.name,len(layer_refs)))
if 0 == len(layer_refs):
_log("LAYER_ORPHAN_CHECK:DELETE orpahned '%s'" % (layer.name))
Layer.objects.filter(pk=layer.id).delete()
except Project.DoesNotExist:
return error_response("Project %s does not exist" %
kwargs['project_id'])

View File

@@ -67,6 +67,18 @@ function layerBtnsInit() {
});
});
$("td .set-default-recipe-btn").unbind('click');
$("td .set-default-recipe-btn").click(function(e){
e.preventDefault();
var recipe = $(this).data('recipe-name');
libtoaster.setDefaultImage(null, recipe,
function(){
/* Success */
window.location.replace(libtoaster.ctx.projectSpecificPageUrl);
});
});
$(".customise-btn").unbind('click');
$(".customise-btn").click(function(e){

View File

@@ -359,7 +359,8 @@ function layerDetailsPageInit (ctx) {
if ($(this).is("dt")) {
var dd = $(this).next("dd");
if (!dd.children("form:visible")|| !dd.find(".current-value").html()){
if (ctx.layerVersion.layer_source == ctx.layerSourceTypes.TYPE_IMPORTED){
if (ctx.layerVersion.layer_source == ctx.layerSourceTypes.TYPE_IMPORTED ||
ctx.layerVersion.layer_source == ctx.layerSourceTypes.TYPE_LOCAL) {
/* There's no current value and the layer is editable
* so show the "Not set" and hide the delete icon
*/

View File

@@ -465,6 +465,108 @@ var libtoaster = (function () {
$.cookie('toaster-notification', JSON.stringify(data), { path: '/'});
}
/* _updateProject:
* url: xhrProjectUpdateUrl or null for current project
* onsuccess: callback for successful execution
* onfail: callback for failed execution
*/
function _updateProject (url, targets, default_image, onsuccess, onfail) {
if (!url)
url = libtoaster.ctx.xhrProjectUpdateUrl;
/* Flatten the array of targets into a space spearated list */
if (targets instanceof Array){
targets = targets.reduce(function(prevV, nextV){
return prev + ' ' + next;
});
}
$.ajax( {
type: "POST",
url: url,
data: { 'do_update' : 'True' , 'targets' : targets , 'default_image' : default_image , },
headers: { 'X-CSRFToken' : $.cookie('csrftoken')},
success: function (_data) {
if (_data.error !== "ok") {
console.warn(_data.error);
} else {
if (onsuccess !== undefined) onsuccess(_data);
}
},
error: function (_data) {
console.warn("Call failed");
console.warn(_data);
if (onfail) onfail(data);
} });
}
/* _cancelProject:
* url: xhrProjectUpdateUrl or null for current project
* onsuccess: callback for successful execution
* onfail: callback for failed execution
*/
function _cancelProject (url, onsuccess, onfail) {
if (!url)
url = libtoaster.ctx.xhrProjectCancelUrl;
$.ajax( {
type: "POST",
url: url,
data: { 'do_cancel' : 'True' },
headers: { 'X-CSRFToken' : $.cookie('csrftoken')},
success: function (_data) {
if (_data.error !== "ok") {
console.warn(_data.error);
} else {
if (onsuccess !== undefined) onsuccess(_data);
}
},
error: function (_data) {
console.warn("Call failed");
console.warn(_data);
if (onfail) onfail(data);
} });
}
/* _setDefaultImage:
* url: xhrSetDefaultImageUrl or null for current project
* targets: an array or space separated list of targets to set as default
* onsuccess: callback for successful execution
* onfail: callback for failed execution
*/
function _setDefaultImage (url, targets, onsuccess, onfail) {
if (!url)
url = libtoaster.ctx.xhrSetDefaultImageUrl;
/* Flatten the array of targets into a space spearated list */
if (targets instanceof Array){
targets = targets.reduce(function(prevV, nextV){
return prev + ' ' + next;
});
}
$.ajax( {
type: "POST",
url: url,
data: { 'targets' : targets },
headers: { 'X-CSRFToken' : $.cookie('csrftoken')},
success: function (_data) {
if (_data.error !== "ok") {
console.warn(_data.error);
} else {
if (onsuccess !== undefined) onsuccess(_data);
}
},
error: function (_data) {
console.warn("Call failed");
console.warn(_data);
if (onfail) onfail(data);
} });
}
return {
enableAjaxLoadingTimer: _enableAjaxLoadingTimer,
disableAjaxLoadingTimer: _disableAjaxLoadingTimer,
@@ -485,6 +587,9 @@ var libtoaster = (function () {
createCustomRecipe: _createCustomRecipe,
makeProjectNameValidation: _makeProjectNameValidation,
setNotification: _setNotification,
updateProject : _updateProject,
cancelProject : _cancelProject,
setDefaultImage : _setDefaultImage,
};
})();

View File

@@ -86,7 +86,7 @@ function mrbSectionInit(ctx){
if (buildFinished(build)) {
// a build finished: reload the whole page so that the build
// shows up in the builds table
window.location.reload();
window.location.reload(true);
}
else if (stateChanged(build)) {
// update the whole template
@@ -110,6 +110,8 @@ function mrbSectionInit(ctx){
// update the clone progress text
selector = '#repos-cloned-percentage-' + build.id;
$(selector).html(build.repos_cloned_percentage);
selector = '#repos-cloned-progressitem-' + build.id;
$(selector).html('('+build.progress_item+')');
// update the recipe progress bar
selector = '#repos-cloned-percentage-bar-' + build.id;

View File

@@ -14,6 +14,9 @@ function projectTopBarInit(ctx) {
var newBuildTargetBuildBtn = $("#build-button");
var selectedTarget;
var updateProjectBtn = $("#update-project-button");
var cancelProjectBtn = $("#cancel-project-button");
/* Project name change functionality */
projectNameFormToggle.click(function(e){
e.preventDefault();
@@ -89,6 +92,25 @@ function projectTopBarInit(ctx) {
}, null);
});
updateProjectBtn.click(function (e) {
e.preventDefault();
selectedTarget = { name: "_PROJECT_PREPARE_" };
/* Save current default build image, fire off the build */
libtoaster.updateProject(null, selectedTarget.name, newBuildTargetInput.val().trim(),
function(){
window.location.replace(libtoaster.ctx.projectSpecificPageUrl);
}, null);
});
cancelProjectBtn.click(function (e) {
e.preventDefault();
/* redirect to 'done/canceled' landing page */
window.location.replace(libtoaster.ctx.landingSpecificCancelURL);
});
/* Call makeProjectNameValidation function */
libtoaster.makeProjectNameValidation($("#project-name-change-input"),
$("#hint-error-project-name"), $("#validate-project-name"),

View File

@@ -35,6 +35,8 @@ from toastergui.tablefilter import TableFilterActionToggle
from toastergui.tablefilter import TableFilterActionDateRange
from toastergui.tablefilter import TableFilterActionDay
import os
class ProjectFilters(object):
@staticmethod
def in_project(project_layers):
@@ -339,6 +341,8 @@ class RecipesTable(ToasterTable):
'filter_name' : "in_current_project",
'static_data_name' : "add-del-layers",
'static_data_template' : '{% include "recipe_btn.html" %}'}
if '1' == os.environ.get('TOASTER_PROJECTSPECIFIC'):
build_col['static_data_template'] = '{% include "recipe_add_btn.html" %}'
def get_context_data(self, **kwargs):
project = Project.objects.get(pk=kwargs['pid'])

View File

@@ -0,0 +1,128 @@
<!DOCTYPE html>
{% load static %}
{% load projecttags %}
{% load project_url_tag %}
<html lang="en">
<head>
<title>
{% block title %} Toaster {% endblock %}
</title>
<link rel="stylesheet" href="{% static 'css/bootstrap.min.css' %}" type="text/css"/>
<!--link rel="stylesheet" href="{% static 'css/bootstrap-theme.css' %}" type="text/css"/-->
<link rel="stylesheet" href="{% static 'css/font-awesome.min.css' %}" type='text/css'/>
<link rel="stylesheet" href="{% static 'css/default.css' %}" type='text/css'/>
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8" />
<script src="{% static 'js/jquery-2.0.3.min.js' %}">
</script>
<script src="{% static 'js/jquery.cookie.js' %}">
</script>
<script src="{% static 'js/bootstrap.min.js' %}">
</script>
<script src="{% static 'js/typeahead.jquery.js' %}">
</script>
<script src="{% static 'js/jsrender.min.js' %}">
</script>
<script src="{% static 'js/highlight.pack.js' %}">
</script>
<script src="{% static 'js/libtoaster.js' %}">
</script>
{% if DEBUG %}
<script>
libtoaster.debug = true;
</script>
{% endif %}
<script>
/* Set JsRender delimiters (mrb_section.html) different than Django's */
$.views.settings.delimiters("<%", "%>");
/* This table allows Django substitutions to be passed to libtoaster.js */
libtoaster.ctx = {
jsUrl : "{% static 'js/' %}",
htmlUrl : "{% static 'html/' %}",
projectsUrl : "{% url 'all-projects' %}",
projectsTypeAheadUrl: {% url 'xhr_projectstypeahead' as prjurl%}{{prjurl|json}},
{% if project.id %}
landingSpecificURL : "{% url 'landing_specific' project.id %}",
landingSpecificCancelURL : "{% url 'landing_specific_cancel' project.id %}",
projectId : {{project.id}},
projectPageUrl : {% url 'project' project.id as purl %}{{purl|json}},
projectSpecificPageUrl : {% url 'project_specific' project.id as purl %}{{purl|json}},
xhrProjectUrl : {% url 'xhr_project' project.id as pxurl %}{{pxurl|json}},
projectName : {{project.name|json}},
recipesTypeAheadUrl: {% url 'xhr_recipestypeahead' project.id as paturl%}{{paturl|json}},
layersTypeAheadUrl: {% url 'xhr_layerstypeahead' project.id as paturl%}{{paturl|json}},
machinesTypeAheadUrl: {% url 'xhr_machinestypeahead' project.id as paturl%}{{paturl|json}},
distrosTypeAheadUrl: {% url 'xhr_distrostypeahead' project.id as paturl%}{{paturl|json}},
projectBuildsUrl: {% url 'projectbuilds' project.id as pburl %}{{pburl|json}},
xhrCustomRecipeUrl : "{% url 'xhr_customrecipe' %}",
projectId : {{project.id}},
xhrBuildRequestUrl: "{% url 'xhr_buildrequest' project.id %}",
mostRecentBuildsUrl: "{% url 'most_recent_builds' %}?project_id={{project.id}}",
xhrProjectUpdateUrl: "{% url 'xhr_projectupdate' project.id %}",
xhrProjectCancelUrl: "{% url 'landing_specific_cancel' project.id %}",
xhrSetDefaultImageUrl: "{% url 'xhr_setdefaultimage' project.id %}",
{% else %}
mostRecentBuildsUrl: "{% url 'most_recent_builds' %}",
projectId : undefined,
projectPageUrl : undefined,
projectName : undefined,
{% endif %}
};
</script>
{% block extraheadcontent %}
{% endblock %}
</head>
<body>
{% csrf_token %}
<div id="loading-notification" class="alert alert-warning lead text-center" style="display:none">
Loading <i class="fa-pulse icon-spinner"></i>
</div>
<div id="change-notification" class="alert alert-info alert-dismissible change-notification" style="display:none">
<button type="button" class="close" id="hide-alert" data-toggle="alert">&times;</button>
<span id="change-notification-msg"></span>
</div>
<nav class="navbar navbar-default navbar-fixed-top">
<div class="container-fluid">
<div class="navbar-header">
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#global-nav" aria-expanded="false">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<div class="toaster-navbar-brand">
{% if project_specific %}
<img class="logo" src="{% static 'img/logo.png' %}" class="" alt="Yocto Project logo"/>
Toaster
{% else %}
<a href="/">
</a>
<a href="/">
<img class="logo" src="{% static 'img/logo.png' %}" class="" alt="Yocto Project logo"/>
</a>
<a class="brand" href="/">Toaster</a>
{% endif %}
{% if DEBUG %}
<span class="glyphicon glyphicon-info-sign" title="<strong>Toaster version information</strong>" data-content="<dl><dt>Git branch</dt><dd>{{TOASTER_BRANCH}}</dd><dt>Git revision</dt><dd>{{TOASTER_REVISION}}</dd></dl>"></i>
{% endif %}
</div>
</div>
<div class="collapse navbar-collapse" id="global-nav">
<ul class="nav navbar-nav">
<h3> Project Configuration Page </h3>
</div>
</div>
</nav>
<div class="container-fluid">
{% block pagecontent %}
{% endblock %}
</div>
</body>
</html>

View File

@@ -0,0 +1,48 @@
{% extends "base_specific.html" %}
{% load projecttags %}
{% load humanize %}
{% block title %} {{title}} - {{project.name}} - Toaster {% endblock %}
{% block pagecontent %}
<div class="row">
{% include "project_specific_topbar.html" %}
<script type="text/javascript">
$(document).ready(function(){
$("#config-nav .nav li a").each(function(){
if (window.location.pathname === $(this).attr('href'))
$(this).parent().addClass('active');
else
$(this).parent().removeClass('active');
});
$("#topbar-configuration-tab").addClass("active")
});
</script>
<!-- only on config pages -->
<div id="config-nav" class="col-md-2">
<ul class="nav nav-pills nav-stacked">
<li><a class="nav-parent" href="{% url 'project' project.id %}">Configuration</a></li>
<li class="nav-header">Compatible metadata</li>
<li><a href="{% url 'projectcustomimages' project.id %}">Custom images</a></li>
<li><a href="{% url 'projectimagerecipes' project.id %}">Image recipes</a></li>
<li><a href="{% url 'projectsoftwarerecipes' project.id %}">Software recipes</a></li>
<li><a href="{% url 'projectmachines' project.id %}">Machines</a></li>
<li><a href="{% url 'projectlayers' project.id %}">Layers</a></li>
<li><a href="{% url 'projectdistros' project.id %}">Distros</a></li>
<li class="nav-header">Extra configuration</li>
<li><a href="{% url 'projectconf' project.id %}">BitBake variables</a></li>
<li class="nav-header">Actions</li>
</ul>
</div>
<div class="col-md-10">
{% block projectinfomain %}{% endblock %}
</div>
</div>
{% endblock %}

View File

@@ -1,4 +1,4 @@
{% extends "baseprojectpage.html" %}
{% extends project_specific|yesno:"baseprojectspecificpage.html,baseprojectpage.html" %}
{% load projecttags %}
{% load humanize %}
{% load static %}

View File

@@ -1,4 +1,4 @@
{% extends "base.html" %}
{% extends project_specific|yesno:"baseprojectspecificpage.html,base.html" %}
{% load projecttags %}
{% load humanize %}
{% load static %}
@@ -6,7 +6,7 @@
{% block pagecontent %}
<div class="row">
{% include "projecttopbar.html" %}
{% include project_specific|yesno:"project_specific_topbar.html,projecttopbar.html" %}
{% if project and project.release %}
<script src="{% static 'js/layerDepsModal.js' %}"></script>
<script src="{% static 'js/importlayer.js' %}"></script>

View File

@@ -0,0 +1,50 @@
{% extends "base_specific.html" %}
{% load static %}
{% load projecttags %}
{% load humanize %}
{% block title %} Welcome to Toaster {% endblock %}
{% block pagecontent %}
<div class="container">
<div class="row">
<!-- Empty - no build module -->
<div class="page-header top-air">
<h1>
Configuration {% if status == "cancel" %}Canceled{% else %}Completed{% endif %}! You can now close this window.
</h1>
</div>
<div class="alert alert-info lead">
<p>
Your project configuration {% if status == "cancel" %}changes have been canceled{% else %}has completed!{% endif %}
<br>
<br>
<ul>
<li>
The Toaster instance for project configuration has been shut down
</li>
<li>
You can start Toaster independently for advanced project management and analysis:
<pre><code>
Set up bitbake environment:
$ cd {{install_dir}}
$ . oe-init-build-env [toaster_server]
Option 1: Start a local Toaster server, open local browser to "localhost:8000"
$ . toaster start webport=8000
Option 2: Start a shared Toaster server, open any browser to "[host_ip]:8000"
$ . toaster start webport=0.0.0.0:8000
To stop the Toaster server:
$ . toaster stop
</code></pre>
</li>
</ul>
</p>
</div>
</div>
{% endblock %}

View File

@@ -1,4 +1,4 @@
{% extends "base.html" %}
{% extends project_specific|yesno:"baseprojectspecificpage.html,base.html" %}
{% load projecttags %}
{% load humanize %}
{% load static %}
@@ -310,6 +310,7 @@
{% endwith %}
{% endwith %}
</div>
</div> <!-- end tab content -->
</div> <!-- end tabable -->

View File

@@ -119,7 +119,7 @@
title="Toaster is cloning the repos required for your build">
</span>
Cloning <span id="repos-cloned-percentage-<%:id%>"><%:repos_cloned_percentage%></span>% complete
Cloning <span id="repos-cloned-percentage-<%:id%>"><%:repos_cloned_percentage%></span>% complete <span id="repos-cloned-progressitem-<%:id%>">(<%:progress_item%>)</span>
<%include tmpl='#cancel-template'/%>
</div>

View File

@@ -1,4 +1,4 @@
{% extends "base.html" %}
{% extends project_specific|yesno:"baseprojectspecificpage.html,base.html" %}
{% load projecttags %}
{% load humanize %}
{% load static %}
@@ -8,7 +8,7 @@
<div class="row">
{% include "projecttopbar.html" %}
{% include project_specific|yesno:"project_specific_topbar.html,projecttopbar.html" %}
<div class="col-md-12">
{% url table_name project.id as xhr_table_url %}

View File

@@ -20,23 +20,19 @@
<input type="text" class="form-control" required id="new-project-name" name="projectname">
</div>
<p class="help-block text-danger" style="display: none;" id="hint-error-project-name">A project with this name exists. Project names must be unique.</p>
<!--
<fieldset>
<label class="project-form">Project type</label>
<label class="project-form radio"><input type="radio" name="ptype" value="analysis" checked/> Analysis Project</label>
<label class="project-form">Project type:</label>
{% if releases.count > 0 %}
<label class="project-form radio"><input type="radio" name="ptype" value="build" checked /> Build Project</label>
<label class="project-form radio" style="padding-left: 35px;"><input id='type-new' type="radio" name="ptype" value="new"/> New project</label>
{% endif %}
</fieldset> -->
<input type="hidden" name="ptype" value="build" />
<label class="project-form radio" style="padding-left: 35px;"><input id='type-import' type="radio" name="ptype" value="import"/> Import command line project</label>
{% if releases.count > 0 %}
<div class="release form-group">
<div class="release form-group">
{% if releases.count > 1 %}
<label class="control-label">
Release
<span class="glyphicon glyphicon-question-sign get-help" title="The version of the build system you want to use"></span>
<span class="glyphicon glyphicon-question-sign get-help" title="The version of the build system you want to use for this project"></span>
</label>
<select name="projectversion" id="projectversion" class="form-control">
{% for release in releases %}
@@ -54,33 +50,31 @@
<span class="help-block">{{release.helptext|safe}}</span>
</div>
{% endfor %}
</div>
</div>
{% else %}
<input type="hidden" name="projectversion" value="{{releases.0.id}}"/>
{% endif %}
</div>
</div>
</fieldset>
<input type="checkbox" class="checkbox-mergeattr" name="mergeattr" value="mergeattr"> Merged Toaster settings (Command line user compatibility)
<span class="glyphicon glyphicon-question-sign get-help" title="Place the Toaster settings into the standard 'local.conf' and 'bblayers.conf' instead of 'toaster_bblayers.conf' and 'toaster.conf'"></span>
</div>
{% endif %}
<div class="build-import form-group" id="import-project">
<label class="control-label">Import existing project directory
<span class="glyphicon glyphicon-question-sign get-help" title="Enter a path to an existing build directory, import the existing settings, and create a Toaster Project for it."></span>
</label>
<input style="width: 33%;"type="text" class="form-control" required id="import-project-dir" name="importdir">
</div>
<div class="top-air">
<input type="submit" id="create-project-button" class="btn btn-primary btn-lg" value="Create project"/>
<span class="help-inline" style="vertical-align:middle;">To create a project, you need to enter a project name</span>
</div>
</form>
<!--
<div class="col-md-5 well">
<span class="help-block">
<h4>Toaster project types</h4>
<p>With a <strong>build project</strong> you configure and run your builds from Toaster.</p>
<p>With an <strong>analysis project</strong>, the builds are configured and run by another tool
(something like Buildbot or Jenkins), and the project only collects the information about the
builds (packages, recipes, dependencies, logs, etc). </p>
<p>You can read more on <a href="#">how to set up an analysis project</a>
in the Toaster manual.</p>
<h4>Release</h4>
<p>If you create a <strong>build project</strong>, you will need to select a <strong>release</strong>,
which is the version of the build system you want to use to run your builds.</p>
</div> -->
</div>
</div>
@@ -89,6 +83,7 @@
// hide the new project button
$("#new-project-button").hide();
$('.btn-primary').attr('disabled', 'disabled');
$('#type-new').attr('checked', 'checked');
// enable submit button when all required fields are populated
$("input#new-project-name").on('input', function() {
@@ -118,20 +113,24 @@
$(".btn-primary"));
/* // Hide the project release when you select an analysis project
// Hide the project release when you select an analysis project
function projectType() {
if ($("input[type='radio']:checked").val() == 'build') {
if ($("input[type='radio']:checked").val() == 'new') {
$('.build-import').fadeOut();
$('.release').fadeIn();
$('#import-project-dir').removeAttr('required');
}
else {
$('.release').fadeOut();
$('.build-import').fadeIn();
$('#import-project-dir').attr('required', 'required');
}
}
projectType();
$('input:radio').change(function(){
projectType();
}); */
});
});
</script>

View File

@@ -0,0 +1,95 @@
{% extends "base.html" %}
{% load projecttags %}
{% load humanize %}
{% block title %} Create a new project - Toaster {% endblock %}
{% block pagecontent %}
<div class="row">
<div class="col-md-12">
<div class="page-header">
<h1>Create a new project</h1>
</div>
{% if alert %}
<div class="alert alert-danger" role="alert">{{alert}}</div>
{% endif %}
<form method="POST" action="{%url "newproject_specific" project_pk %}">{% csrf_token %}
<div class="form-group" id="validate-project-name">
<label class="control-label">Project name <span class="text-muted">(required)</span></label>
<input type="text" class="form-control" required id="new-project-name" name="display_projectname" value="{{projectname}}" disabled>
</div>
<p class="help-block text-danger" style="display: none;" id="hint-error-project-name">A project with this name exists. Project names must be unique.</p>
<input type="hidden" name="ptype" value="build" />
<input type="hidden" name="projectname" value="{{projectname}}" />
{% if releases.count > 0 %}
<div class="release form-group">
{% if releases.count > 1 %}
<label class="control-label">
Release
<span class="glyphicon glyphicon-question-sign get-help" title="The version of the build system you want to use"></span>
</label>
<select name="projectversion" id="projectversion" class="form-control">
{% for release in releases %}
<option value="{{release.id}}"
{%if defaultbranch == release.name %}
selected
{%endif%}
>{{release.description}}</option>
{% endfor %}
</select>
<div class="row">
<div class="col-md-4">
{% for release in releases %}
<div class="helptext" id="description-{{release.id}}" style="display: none">
<span class="help-block">{{release.helptext|safe}}</span>
</div>
{% endfor %}
{% else %}
<input type="hidden" name="projectversion" value="{{releases.0.id}}"/>
{% endif %}
</div>
</div>
</fieldset>
{% endif %}
<div class="top-air">
<input type="submit" id="create-project-button" class="btn btn-primary btn-lg" value="Create project"/>
<span class="help-inline" style="vertical-align:middle;">To create a project, you need to specify the release</span>
</div>
</form>
</div>
</div>
<script type="text/javascript">
$(document).ready(function () {
// hide the new project button, name is preset
$("#new-project-button").hide();
// enable submit button when all required fields are populated
$("input#new-project-name").on('input', function() {
if ($("input#new-project-name").val().length > 0 ){
$('.btn-primary').removeAttr('disabled');
$(".help-inline").css('visibility','hidden');
}
else {
$('.btn-primary').attr('disabled', 'disabled');
$(".help-inline").css('visibility','visible');
}
});
// show relevant help text for the selected release
var selected_release = $('select').val();
$("#description-" + selected_release).show();
$('select').change(function(){
var new_release = $('select').val();
$(".helptext").hide();
$('#description-' + new_release).fadeIn();
});
});
</script>
{% endblock %}

View File

@@ -1,4 +1,4 @@
{% extends "baseprojectpage.html" %}
{% extends project_specific|yesno:"baseprojectspecificpage.html,baseprojectpage.html" %}
{% load projecttags %}
{% load humanize %}
@@ -18,7 +18,7 @@
try {
projectPageInit(ctx);
} catch (e) {
document.write("Sorry, An error has occurred loading this page");
document.write("Sorry, An error has occurred loading this page (project):"+e);
console.warn(e);
}
});
@@ -93,6 +93,7 @@
</form>
</div>
{% if not project_specific %}
<div class="well well-transparent">
<h3>Most built recipes</h3>
@@ -105,6 +106,7 @@
</ul>
<button class="btn btn-primary" id="freq-build-btn" disabled="disabled">Build selected recipes</button>
</div>
{% endif %}
<div class="well well-transparent">
<h3>Project release</h3>
@@ -157,5 +159,6 @@
<ul class="list-unstyled lead" id="layers-in-project-list">
</ul>
</div>
</div>
{% endblock %}

View File

@@ -0,0 +1,162 @@
{% extends "baseprojectspecificpage.html" %}
{% load projecttags %}
{% load humanize %}
{% load static %}
{% block title %} Configuration - {{project.name}} - Toaster {% endblock %}
{% block projectinfomain %}
<script src="{% static 'js/layerDepsModal.js' %}"></script>
<script src="{% static 'js/projectpage.js' %}"></script>
<script>
$(document).ready(function (){
var ctx = {
testReleaseChangeUrl: "{% url 'xhr_testreleasechange' project.id %}",
};
try {
projectPageInit(ctx);
} catch (e) {
document.write("Sorry, An error has occurred loading this page");
console.warn(e);
}
});
</script>
<div id="delete-project-modal" class="modal fade" tabindex="-1" role="dialog" data-backdrop="static" data-keyboard="false">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<h4>Are you sure you want to delete this project?</h4>
</div>
<div class="modal-body">
<p>Deleting the <strong class="project-name"></strong> project
will:</p>
<ul>
<li>Cancel its builds currently in progress</li>
<li>Remove its configuration information</li>
<li>Remove its imported layers</li>
<li>Remove its custom images</li>
<li>Remove all its build information</li>
</ul>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-primary" id="delete-project-confirmed">
<span data-role="submit-state">Delete project</span>
<span data-role="loading-state" style="display:none">
<span class="fa-pulse">
<i class="fa-pulse icon-spinner"></i>
</span>
&nbsp;Deleting project...
</span>
</button>
<button type="button" class="btn btn-link" data-dismiss="modal">Cancel</button>
</div>
</div><!-- /.modal-content -->
</div><!-- /.modal-dialog -->
</div>
<div class="row" id="project-page" style="display:none">
<div class="col-md-6">
<div class="well well-transparent" id="machine-section">
<h3>Machine</h3>
<p class="lead"><span id="project-machine-name"></span> <span class="glyphicon glyphicon-edit" id="change-machine-toggle"></span></p>
<form id="select-machine-form" style="display:none;" class="form-inline">
<span class="help-block">Machine suggestions come from the list of layers added to your project. If you don't see the machine you are looking for, <a href="{% url 'projectmachines' project.id %}">check the full list of machines</a></span>
<div class="form-group" id="machine-input-form">
<input class="form-control" id="machine-change-input" autocomplete="off" value="" data-provide="typeahead" data-minlength="1" data-autocomplete="off" type="text">
</div>
<button id="machine-change-btn" class="btn btn-default" type="button">Save</button>
<a href="#" id="cancel-machine-change" class="btn btn-link">Cancel</a>
<span class="help-block text-danger" id="invalid-machine-name-help" style="display:none">A valid machine name cannot include spaces.</span>
<p class="form-link"><a href="{% url 'projectmachines' project.id %}">View compatible machines</a></p>
</form>
</div>
<div class="well well-transparent" id="distro-section">
<h3>Distro</h3>
<p class="lead"><span id="project-distro-name"></span> <span class="glyphicon glyphicon-edit" id="change-distro-toggle"></span></p>
<form id="select-distro-form" style="display:none;" class="form-inline">
<span class="help-block">Distro suggestions come from the Layer Index</a></span>
<div class="form-group">
<input class="form-control" id="distro-change-input" autocomplete="off" value="" data-provide="typeahead" data-minlength="1" data-autocomplete="off" type="text">
</div>
<button id="distro-change-btn" class="btn btn-default" type="button">Save</button>
<a href="#" id="cancel-distro-change" class="btn btn-link">Cancel</a>
<p class="form-link"><a href="{% url 'projectdistros' project.id %}">View compatible distros</a></p>
</form>
</div>
<div class="well well-transparent">
<h3>Most built recipes</h3>
<div class="alert alert-info" style="display:none" id="no-most-built">
<h4>You haven't built any recipes yet</h4>
<p class="form-link"><a href="{% url 'projectimagerecipes' project.id %}">Choose a recipe to build</a></p>
</div>
<ul class="list-unstyled lead" id="freq-build-list">
</ul>
<button class="btn btn-primary" id="freq-build-btn" disabled="disabled">Build selected recipes</button>
</div>
<div class="well well-transparent">
<h3>Project release</h3>
<p class="lead"><span id="project-release-title"></span>
<!-- Comment out the ability to change the project release, until we decide what to do with this functionality -->
<!--i title="" data-original-title="" id="release-change-toggle" class="icon-pencil"></i-->
</p>
<!-- Comment out the ability to change the project release, until we decide what to do with this functionality -->
<!--form class="form-inline" id="change-release-form" style="display:none;">
<select></select>
<button class="btn" style="margin-left:5px;" id="change-release-btn">Change</button> <a href="#" id="cancel-release-change" class="btn btn-link">Cancel</a>
</form-->
</div>
</div>
<div class="col-md-6">
<div class="well well-transparent" id="layer-container">
<h3>Layers <span class="counter">(<span id="project-layers-count"></span>)</span>
<span title="OpenEmbedded organises recipes and machines into thematic groups called <strong>layers</strong>. Click on a layer name to see the recipes and machines it includes." class="glyphicon glyphicon-question-sign get-help"></span>
</h3>
<div class="alert alert-warning" id="no-layers-in-project" style="display:none">
<h4>This project has no layers</h4>
In order to build this project you need to add some layers first. For that you can:
<ul>
<li><a href="{% url 'projectlayers' project.id %}">Choose from the layers compatible with this project</a></li>
<li><a href="{% url 'importlayer' project.id %}">Import a layer</a></li>
<li><a href="http://www.yoctoproject.org/docs/current/dev-manual/dev-manual.html#understanding-and-creating-layers" target="_blank">Read about layers in the documentation</a></li>
<li>Or type a layer name below</li>
</ul>
</div>
<form class="form-inline">
<div class="form-group">
<input id="layer-add-input" class="form-control" autocomplete="off" placeholder="Type a layer name" data-minlength="1" data-autocomplete="off" data-provide="typeahead" data-source="" type="text">
</div>
<button id="add-layer-btn" class="btn btn-default" disabled>Add layer</button>
<p class="form-link">
<a href="{% url 'projectlayers' project.id %}" id="view-compatible-layers">View compatible layers</a>
<span class="text-muted">|</span>
<a href="{% url 'importlayer' project.id %}">Import layer</a>
</p>
</form>
<ul class="list-unstyled lead" id="layers-in-project-list">
</ul>
</div>
</div>
{% endblock %}

View File

@@ -0,0 +1,80 @@
{% load static %}
<script src="{% static 'js/projecttopbar.js' %}"></script>
<script>
$(document).ready(function () {
var ctx = {
numProjectLayers : {{project.get_project_layer_versions.count}},
machine : "{{project.get_current_machine_name|default_if_none:""}}",
}
try {
projectTopBarInit(ctx);
} catch (e) {
document.write("Sorry, An error has occurred loading this page (pstb):"+e);
console.warn(e);
}
});
</script>
<div class="col-md-12">
<div class="alert alert-success alert-dismissible change-notification" id="project-created-notification" style="display:none">
<button type="button" class="close" data-dismiss="alert">&times;</button>
<p>Your project <strong>{{project.name}}</strong> has been created. You can now <a class="alert-link" href="{% url 'projectmachines' project.id %}">select your target machine</a> and <a class="alert-link" href="{% url 'projectimagerecipes' project.id %}">choose image recipes</a> to build.</p>
</div>
<!-- project name -->
<div class="page-header">
<h1 id="project-name-container">
<span class="project-name">{{project.name}}</span>
{% if project.is_default %}
<span class="glyphicon glyphicon-question-sign get-help" title="This project shows information about the builds you start from the command line while Toaster is running"></span>
{% endif %}
</h1>
<form id="project-name-change-form" class="form-inline" style="display: none;">
<div class="form-group">
<input class="form-control input-lg" type="text" id="project-name-change-input" autocomplete="off" value="{{project.name}}">
</div>
<button id="project-name-change-btn" class="btn btn-default btn-lg" type="button">Save</button>
<a href="#" id="project-name-change-cancel" class="btn btn-lg btn-link">Cancel</a>
</form>
</div>
{% with mrb_type='project' %}
{% include "mrb_section.html" %}
{% endwith %}
{% if not project.is_default %}
<div id="project-topbar">
<ul class="nav nav-tabs">
<li id="topbar-configuration-tab">
<a href="{% url 'project_specific' project.id %}">
Configuration
</a>
</li>
<li>
<a href="{% url 'importlayer' project.id %}">
Import layer
</a>
</li>
<li>
<a href="{% url 'newcustomimage' project.id %}">
New custom image
</a>
</li>
<li class="pull-right">
<form class="form-inline">
<div class="form-group">
<span class="glyphicon glyphicon-question-sign get-help" data-placement="left" title="Type the name of one or more recipes you want to build, separated by a space. You can also specify a task by appending a colon and a task name to the recipe name, like so: <code>busybox:clean</code>"></span>
<input id="build-input" type="text" class="form-control input-lg" placeholder="Select the default image recipe" autocomplete="off" disabled value="{{project.get_default_image}}">
</div>
{% if project.get_is_new %}
<button id="update-project-button" class="btn btn-primary btn-lg" data-project-id="{{project.id}}">Prepare Project</button>
{% else %}
<button id="cancel-project-button" class="btn info btn-lg" data-project-id="{{project.id}}">Cancel</button>
<button id="update-project-button" class="btn btn-primary btn-lg" data-project-id="{{project.id}}">Update</button>
{% endif %}
</form>
</li>
</ul>
</div>
{% endif %}
</div>

View File

@@ -1,4 +1,4 @@
{% extends "baseprojectpage.html" %}
{% extends project_specific|yesno:"baseprojectspecificpage.html,baseprojectpage.html" %}
{% load projecttags %}
{% load humanize %}
@@ -438,8 +438,11 @@ function onEditPageUpdate(data) {
var_context='m';
}
}
if (configvars_sorted[i][0].startsWith("INTERNAL_")) {
var_context='m';
}
if (var_context == undefined) {
orightml += '<dt><span id="config_var_entry_'+configvars_sorted[i][2]+'" class="js-config-var-name"></span><span class="glyphicon glyphicon-trash js-icon-trash-config_var" id="config_var_trash_'+configvars_sorted[i][2]+'" x-data="'+configvars_sorted[i][2]+'"></span> </dt>'
orightml += '<dt><span id="config_var_entry_'+configvars_sorted[i][2]+'" class="js-config-var-name"></span><span class="glyphicon glyphicon-trash js-icon-trash-config_var" id="config_var_trash_'+configvars_sorted[i][2]+'" x-data="'+configvars_sorted[i][2]+'"></span> </dt>'
orightml += '<dd class="variable-list">'
orightml += ' <span class="lead" id="config_var_value_'+configvars_sorted[i][2]+'"></span>'
orightml += ' <span class="glyphicon glyphicon-edit js-icon-pencil-config_var" x-data="'+configvars_sorted[i][2]+'"></span>'

View File

@@ -176,7 +176,7 @@
<td>{{task.get_executed_display}}</td>
<td>{{task.get_outcome_display}}
{% if task.outcome = task.OUTCOME_FAILED %}
{% if task.outcome == task.OUTCOME_FAILED %}
<a href="{% url 'build_artifact' build.pk "tasklogfile" task.pk %}">
<span class="glyphicon glyphicon-download-alt
get-help" title="Download task log

View File

@@ -0,0 +1,23 @@
<a data-recipe-name="{{data.name}}" class="btn btn-default btn-block layer-exists-{{data.layer_version.pk}} set-default-recipe-btn" style="margin-top: 5px;
{% if data.layer_version.pk not in extra.current_layers %}
display:none;
{% endif %}"
>
Set recipe
</a>
<a class="btn btn-default btn-block layerbtn layer-add-{{data.layer_version.pk}}"
data-layer='{
"id": {{data.layer_version.pk}},
"name": "{{data.layer_version.layer.name}}",
"layerdetailurl": "{%url "layerdetails" extra.pid data.layer_version.pk%}",
"xhrLayerUrl": "{% url "xhr_layer" extra.pid data.layer_version.pk %}"
}' data-directive="add"
{% if data.layer_version.pk in extra.current_layers %}
style="display:none;"
{% endif %}
>
<span class="glyphicon glyphicon-plus"></span>
Add layer
<span class="glyphicon glyphicon-question-sign get-help" title="To set this
recipe you must first add the {{data.layer_version.layer.name}} layer to your project"></i>
</a>

View File

@@ -116,6 +116,11 @@ urlpatterns = [
tables.ProjectBuildsTable.as_view(template_name="projectbuilds-toastertable.html"),
name='projectbuilds'),
url(r'^newproject_specific/(?P<pid>\d+)/$', views.newproject_specific, name='newproject_specific'),
url(r'^project_specific/(?P<pid>\d+)/$', views.project_specific, name='project_specific'),
url(r'^landing_specific/(?P<pid>\d+)/$', views.landing_specific, name='landing_specific'),
url(r'^landing_specific_cancel/(?P<pid>\d+)/$', views.landing_specific_cancel, name='landing_specific_cancel'),
# the import layer is a project-specific functionality;
url(r'^project/(?P<pid>\d+)/importlayer$', views.importlayer, name='importlayer'),
@@ -233,6 +238,14 @@ urlpatterns = [
api.XhrBuildRequest.as_view(),
name='xhr_buildrequest'),
url(r'^xhr_projectupdate/project/(?P<pid>\d+)$',
api.XhrProjectUpdate.as_view(),
name='xhr_projectupdate'),
url(r'^xhr_setdefaultimage/project/(?P<pid>\d+)$',
api.XhrSetDefaultImageUrl.as_view(),
name='xhr_setdefaultimage'),
url(r'xhr_project/(?P<project_id>\d+)$',
api.XhrProject.as_view(),
name='xhr_project'),

165
bitbake/lib/toaster/toastergui/views.py Executable file → Normal file
View File

@@ -25,6 +25,7 @@ import re
from django.db.models import F, Q, Sum
from django.db import IntegrityError
from django.shortcuts import render, redirect, get_object_or_404
from django.utils.http import urlencode
from orm.models import Build, Target, Task, Layer, Layer_Version, Recipe
from orm.models import LogMessage, Variable, Package_Dependency, Package
from orm.models import Task_Dependency, Package_File
@@ -51,6 +52,7 @@ logger = logging.getLogger("toaster")
# Project creation and managed build enable
project_enable = ('1' == os.environ.get('TOASTER_BUILDSERVER'))
is_project_specific = ('1' == os.environ.get('TOASTER_PROJECTSPECIFIC'))
class MimeTypeFinder(object):
# setting this to False enables additional non-standard mimetypes
@@ -70,6 +72,7 @@ class MimeTypeFinder(object):
# single point to add global values into the context before rendering
def toaster_render(request, page, context):
context['project_enable'] = project_enable
context['project_specific'] = is_project_specific
return render(request, page, context)
@@ -1383,6 +1386,86 @@ if True:
'releases': Release.objects.order_by("description"),
}
try:
context['defaultbranch'] = ToasterSetting.objects.get(name = "DEFAULT_RELEASE").value
except ToasterSetting.DoesNotExist:
pass
if request.method == "GET":
# render new project page
return toaster_render(request, template, context)
elif request.method == "POST":
mandatory_fields = ['projectname', 'ptype']
try:
ptype = request.POST.get('ptype')
if ptype == "import":
mandatory_fields.append('importdir')
else:
mandatory_fields.append('projectversion')
# make sure we have values for all mandatory_fields
missing = [field for field in mandatory_fields if len(request.POST.get(field, '')) == 0]
if missing:
# set alert for missing fields
raise BadParameterException("Fields missing: %s" % ", ".join(missing))
if not request.user.is_authenticated():
user = authenticate(username = request.POST.get('username', '_anonuser'), password = 'nopass')
if user is None:
user = User.objects.create_user(username = request.POST.get('username', '_anonuser'), email = request.POST.get('email', ''), password = "nopass")
user = authenticate(username = user.username, password = 'nopass')
login(request, user)
# save the project
if ptype == "import":
if not os.path.isdir('%s/conf' % request.POST['importdir']):
raise BadParameterException("Bad path or missing 'conf' directory (%s)" % request.POST['importdir'])
from django.core import management
management.call_command('buildimport', '--command=import', '--name=%s' % request.POST['projectname'], '--path=%s' % request.POST['importdir'], interactive=False)
prj = Project.objects.get(name = request.POST['projectname'])
prj.merged_attr = True
prj.save()
else:
release = Release.objects.get(pk = request.POST.get('projectversion', None ))
prj = Project.objects.create_project(name = request.POST['projectname'], release = release)
prj.user_id = request.user.pk
if 'mergeattr' == request.POST.get('mergeattr', ''):
prj.merged_attr = True
prj.save()
return redirect(reverse(project, args=(prj.pk,)) + "?notify=new-project")
except (IntegrityError, BadParameterException) as e:
# fill in page with previously submitted values
for field in mandatory_fields:
context.__setitem__(field, request.POST.get(field, "-- missing"))
if isinstance(e, IntegrityError) and "username" in str(e):
context['alert'] = "Your chosen username is already used"
else:
context['alert'] = str(e)
return toaster_render(request, template, context)
raise Exception("Invalid HTTP method for this page")
# new project
def newproject_specific(request, pid):
if not project_enable:
return redirect( landing )
project = Project.objects.get(pk=pid)
template = "newproject_specific.html"
context = {
'email': request.user.email if request.user.is_authenticated() else '',
'username': request.user.username if request.user.is_authenticated() else '',
'releases': Release.objects.order_by("description"),
'projectname': project.name,
'project_pk': project.pk,
}
# WORKAROUND: if we already know release, redirect 'newproject_specific' to 'project_specific'
if '1' == project.get_variable('INTERNAL_PROJECT_SPECIFIC_SKIPRELEASE'):
return redirect(reverse(project_specific, args=(project.pk,)))
try:
context['defaultbranch'] = ToasterSetting.objects.get(name = "DEFAULT_RELEASE").value
except ToasterSetting.DoesNotExist:
@@ -1417,10 +1500,10 @@ if True:
else:
release = Release.objects.get(pk = request.POST.get('projectversion', None ))
prj = Project.objects.create_project(name = request.POST['projectname'], release = release)
prj = Project.objects.create_project(name = request.POST['projectname'], release = release, existing_project = project)
prj.user_id = request.user.pk
prj.save()
return redirect(reverse(project, args=(prj.pk,)) + "?notify=new-project")
return redirect(reverse(project_specific, args=(prj.pk,)) + "?notify=new-project")
except (IntegrityError, BadParameterException) as e:
# fill in page with previously submitted values
@@ -1437,9 +1520,87 @@ if True:
# Shows the edit project page
def project(request, pid):
project = Project.objects.get(pk=pid)
if '1' == os.environ.get('TOASTER_PROJECTSPECIFIC'):
if request.GET:
#Example:request.GET=<QueryDict: {'setMachine': ['qemuarm']}>
params = urlencode(request.GET).replace('%5B%27','').replace('%27%5D','')
return redirect("%s?%s" % (reverse(project_specific, args=(project.pk,)),params))
else:
return redirect(reverse(project_specific, args=(project.pk,)))
context = {"project": project}
return toaster_render(request, "project.html", context)
# Shows the edit project-specific page
def project_specific(request, pid):
project = Project.objects.get(pk=pid)
# Are we refreshing from a successful project specific update clone?
if Project.PROJECT_SPECIFIC_CLONING_SUCCESS == project.get_variable(Project.PROJECT_SPECIFIC_STATUS):
return redirect(reverse(landing_specific,args=(project.pk,)))
context = {
"project": project,
"is_new" : project.get_variable(Project.PROJECT_SPECIFIC_ISNEW),
"default_image_recipe" : project.get_variable(Project.PROJECT_SPECIFIC_DEFAULTIMAGE),
"mru" : Build.objects.all().filter(project=project,outcome=Build.IN_PROGRESS),
}
if project.build_set.filter(outcome=Build.IN_PROGRESS).count() > 0:
context['build_in_progress_none_completed'] = True
else:
context['build_in_progress_none_completed'] = False
return toaster_render(request, "project.html", context)
# perform the final actions for the project specific page
def project_specific_finalize(cmnd, pid):
project = Project.objects.get(pk=pid)
callback = project.get_variable(Project.PROJECT_SPECIFIC_CALLBACK)
if "update" == cmnd:
# Delete all '_PROJECT_PREPARE_' builds
for b in Build.objects.all().filter(project=project):
delete_build = False
for t in b.target_set.all():
if '_PROJECT_PREPARE_' == t.target:
delete_build = True
if delete_build:
from django.core import management
management.call_command('builddelete', str(b.id), interactive=False)
# perform callback at this last moment if defined, in case Toaster gets shutdown next
default_target = project.get_variable(Project.PROJECT_SPECIFIC_DEFAULTIMAGE)
if callback:
callback = callback.replace("<IMAGE>",default_target)
if "cancel" == cmnd:
if callback:
callback = callback.replace("<IMAGE>","none")
callback = callback.replace("--update","--cancel")
# perform callback at this last moment if defined, in case this Toaster gets shutdown next
ret = ''
if callback:
ret = os.system('bash -c "%s"' % callback)
project.set_variable(Project.PROJECT_SPECIFIC_CALLBACK,'')
# Delete the temp project specific variables
project.set_variable(Project.PROJECT_SPECIFIC_ISNEW,'')
project.set_variable(Project.PROJECT_SPECIFIC_STATUS,Project.PROJECT_SPECIFIC_NONE)
# WORKAROUND: Release this workaround flag
project.set_variable('INTERNAL_PROJECT_SPECIFIC_SKIPRELEASE','')
# Shows the final landing page for project specific update
def landing_specific(request, pid):
project_specific_finalize("update", pid)
context = {
"install_dir": os.environ['TOASTER_DIR'],
}
return toaster_render(request, "landing_specific.html", context)
# Shows the related landing-specific page
def landing_specific_cancel(request, pid):
project_specific_finalize("cancel", pid)
context = {
"install_dir": os.environ['TOASTER_DIR'],
"status": "cancel",
}
return toaster_render(request, "landing_specific.html", context)
def jsunittests(request):
""" Provides a page for the js unit tests """
bbv = BitbakeVersion.objects.filter(branch="master").first()

View File

@@ -89,6 +89,10 @@ class ToasterTable(TemplateView):
# global variables
context['project_enable'] = ('1' == os.environ.get('TOASTER_BUILDSERVER'))
try:
context['project_specific'] = ('1' == os.environ.get('TOASTER_PROJECTSPECIFIC'))
except:
context['project_specific'] = ''
return context
@@ -511,13 +515,20 @@ class MostRecentBuildsView(View):
buildrequest_id = build_obj.buildrequest.pk
build['buildrequest_id'] = buildrequest_id
build['recipes_parsed_percentage'] = \
int((build_obj.recipes_parsed /
build_obj.recipes_to_parse) * 100)
if build_obj.recipes_to_parse > 0:
build['recipes_parsed_percentage'] = \
int((build_obj.recipes_parsed /
build_obj.recipes_to_parse) * 100)
else:
build['recipes_parsed_percentage'] = 0
if build_obj.repos_to_clone > 0:
build['repos_cloned_percentage'] = \
int((build_obj.repos_cloned /
build_obj.repos_to_clone) * 100)
else:
build['repos_cloned_percentage'] = 0
build['repos_cloned_percentage'] = \
int((build_obj.repos_cloned /
build_obj.repos_to_clone) * 100)
build['progress_item'] = build_obj.progress_item
tasks_complete_percentage = 0
if build_obj.outcome in (Build.SUCCEEDED, Build.FAILED):

View File

@@ -10,8 +10,12 @@ class Command(BaseCommand):
args = '<buildID1 buildID2 .....>'
help = "Deletes selected build(s)"
def add_arguments(self, parser):
parser.add_argument('buildids', metavar='N', type=int, nargs='+',
help="Build ID's to delete")
def handle(self, *args, **options):
for bid in args:
for bid in options['buildids']:
try:
b = Build.objects.get(pk = bid)
except ObjectDoesNotExist:

View File

@@ -0,0 +1,583 @@
#
# ex:ts=4:sw=4:sts=4:et
# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
#
# BitBake Toaster Implementation
#
# Copyright (C) 2018 Wind River Systems
#
# 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.
# buildimport: import a project for project specific configuration
#
# Usage:
# (a) Set up Toaster environent
#
# (b) Call buildimport
# $ /path/to/bitbake/lib/toaster/manage.py buildimport \
# --name=$PROJECTNAME \
# --path=$BUILD_DIRECTORY \
# --callback="$CALLBACK_SCRIPT" \
# --command="configure|reconfigure|import"
#
# (c) Return is "|Default_image=%s|Project_id=%d"
#
# (d) Open Toaster to this project using for example:
# $ xdg-open http://localhost:$toaster_port/toastergui/project_specific/$project_id
#
# (e) To delete a project:
# $ /path/to/bitbake/lib/toaster/manage.py buildimport \
# --name=$PROJECTNAME --delete-project
#
# ../bitbake/lib/toaster/manage.py buildimport --name=test --path=`pwd` --callback="" --command=import
from django.core.management.base import BaseCommand, CommandError
from django.core.exceptions import ObjectDoesNotExist
from orm.models import ProjectManager, Project, Release, ProjectVariable
from orm.models import Layer, Layer_Version, LayerSource, ProjectLayer
from toastergui.api import scan_layer_content
from django.db import OperationalError
import os
import re
import os.path
import subprocess
# Toaster variable section delimiters
TOASTER_PROLOG = '#=== TOASTER_CONFIG_PROLOG ==='
TOASTER_EPILOG = '#=== TOASTER_CONFIG_EPILOG ==='
# quick development/debugging support
verbose = 2
def _log(msg):
if 1 == verbose:
print(msg)
elif 2 == verbose:
f1=open('/tmp/toaster.log', 'a')
f1.write("|" + msg + "|\n" )
f1.close()
__config_regexp__ = re.compile( r"""
^
(?P<exp>export\s+)?
(?P<var>[a-zA-Z0-9\-_+.${}/~]+?)
(\[(?P<flag>[a-zA-Z0-9\-_+.]+)\])?
\s* (
(?P<colon>:=) |
(?P<lazyques>\?\?=) |
(?P<ques>\?=) |
(?P<append>\+=) |
(?P<prepend>=\+) |
(?P<predot>=\.) |
(?P<postdot>\.=) |
=
) \s*
(?!'[^']*'[^']*'$)
(?!\"[^\"]*\"[^\"]*\"$)
(?P<apo>['\"])
(?P<value>.*)
(?P=apo)
$
""", re.X)
class Command(BaseCommand):
args = "<name> <path> <release>"
help = "Import a command line build directory"
vars = {}
toaster_vars = {}
def add_arguments(self, parser):
parser.add_argument(
'--name', dest='name', required=True,
help='name of the project',
)
parser.add_argument(
'--path', dest='path', required=True,
help='path to the project',
)
parser.add_argument(
'--release', dest='release', required=False,
help='release for the project',
)
parser.add_argument(
'--callback', dest='callback', required=False,
help='callback for project config update',
)
parser.add_argument(
'--delete-project', dest='delete_project', required=False,
help='delete this project from the database',
)
parser.add_argument(
'--command', dest='command', required=False,
help='command (configure,reconfigure,import)',
)
# Extract the bb variables from a conf file
def scan_conf(self,fn):
vars = self.vars
toaster_vars = self.toaster_vars
#_log("scan_conf:%s" % fn)
if not os.path.isfile(fn):
return
f = open(fn, 'r')
#statements = ast.StatementGroup()
lineno = 0
is_toaster_section = False
while True:
lineno = lineno + 1
s = f.readline()
if not s:
break
w = s.strip()
# skip empty lines
if not w:
continue
# evaluate Toaster sections
if w.startswith(TOASTER_PROLOG):
is_toaster_section = True
continue
if w.startswith(TOASTER_EPILOG):
is_toaster_section = False
continue
s = s.rstrip()
while s[-1] == '\\':
s2 = f.readline().strip()
lineno = lineno + 1
if (not s2 or s2 and s2[0] != "#") and s[0] == "#" :
echo("There is a confusing multiline, partially commented expression on line %s of file %s (%s).\nPlease clarify whether this is all a comment or should be parsed." % (lineno, fn, s))
s = s[:-1] + s2
# skip comments
if s[0] == '#':
continue
# process the line for just assignments
m = __config_regexp__.match(s)
if m:
groupd = m.groupdict()
var = groupd['var']
value = groupd['value']
if groupd['lazyques']:
if not var in vars:
vars[var] = value
continue
if groupd['ques']:
if not var in vars:
vars[var] = value
continue
# preset empty blank for remaining operators
if not var in vars:
vars[var] = ''
if groupd['append']:
vars[var] += value
elif groupd['prepend']:
vars[var] = "%s%s" % (value,vars[var])
elif groupd['predot']:
vars[var] = "%s %s" % (value,vars[var])
elif groupd['postdot']:
vars[var] = "%s %s" % (vars[var],value)
else:
vars[var] = "%s" % (value)
# capture vars in a Toaster section
if is_toaster_section:
toaster_vars[var] = vars[var]
# DONE WITH PARSING
f.close()
self.vars = vars
self.toaster_vars = toaster_vars
# Update the scanned project variables
def update_project_vars(self,project,name):
pv, create = ProjectVariable.objects.get_or_create(project = project, name = name)
if (not name in self.vars.keys()) or (not self.vars[name]):
self.vars[name] = pv.value
else:
if pv.value != self.vars[name]:
pv.value = self.vars[name]
pv.save()
# Find the git version of the installation
def find_layer_dir_version(self,path):
# * rocko ...
install_version = ''
cwd = os.getcwd()
os.chdir(path)
p = subprocess.Popen(['git', 'branch', '-av'], stdout=subprocess.PIPE,
stderr=subprocess.PIPE)
out, err = p.communicate()
out = out.decode("utf-8")
for branch in out.split('\n'):
if ('*' == branch[0:1]) and ('no branch' not in branch):
install_version = re.sub(' .*','',branch[2:])
break
if 'remotes/m/master' in branch:
install_version = re.sub('.*base/','',branch)
break
os.chdir(cwd)
return install_version
# Compute table of the installation's registered layer versions (branch or commit)
def find_layer_dir_versions(self,INSTALL_URL_PREFIX):
lv_dict = {}
layer_versions = Layer_Version.objects.all()
for lv in layer_versions:
layer = Layer.objects.filter(pk=lv.layer.pk)[0]
if layer.vcs_url:
url_short = layer.vcs_url.replace(INSTALL_URL_PREFIX,'')
else:
url_short = ''
# register the core, branch, and the version variations
lv_dict["%s,%s,%s" % (url_short,lv.dirpath,'')] = (lv.id,layer.name)
lv_dict["%s,%s,%s" % (url_short,lv.dirpath,lv.branch)] = (lv.id,layer.name)
lv_dict["%s,%s,%s" % (url_short,lv.dirpath,lv.commit)] = (lv.id,layer.name)
#_log(" (%s,%s,%s|%s) = (%s,%s)" % (url_short,lv.dirpath,lv.branch,lv.commit,lv.id,layer.name))
return lv_dict
# Apply table of all layer versions
def extract_bblayers(self):
# set up the constants
bblayer_str = self.vars['BBLAYERS']
TOASTER_DIR = os.environ.get('TOASTER_DIR')
INSTALL_CLONE_PREFIX = os.path.dirname(TOASTER_DIR) + "/"
TOASTER_CLONE_PREFIX = TOASTER_DIR + "/_toaster_clones/"
INSTALL_URL_PREFIX = ''
layers = Layer.objects.filter(name='openembedded-core')
for layer in layers:
if layer.vcs_url:
INSTALL_URL_PREFIX = layer.vcs_url
break
INSTALL_URL_PREFIX = INSTALL_URL_PREFIX.replace("/poky","/")
INSTALL_VERSION_DIR = TOASTER_DIR
INSTALL_URL_POSTFIX = INSTALL_URL_PREFIX.replace(':','_')
INSTALL_URL_POSTFIX = INSTALL_URL_POSTFIX.replace('/','_')
INSTALL_URL_POSTFIX = "%s_%s" % (TOASTER_CLONE_PREFIX,INSTALL_URL_POSTFIX)
# get the set of available layer:layer_versions
lv_dict = self.find_layer_dir_versions(INSTALL_URL_PREFIX)
# compute the layer matches
layers_list = []
for line in bblayer_str.split(' '):
if not line:
continue
if line.endswith('/local'):
continue
# isolate the repo
layer_path = line
line = line.replace(INSTALL_URL_POSTFIX,'').replace(INSTALL_CLONE_PREFIX,'').replace('/layers/','/').replace('/poky/','/')
# isolate the sub-path
path_index = line.rfind('/')
if path_index > 0:
sub_path = line[path_index+1:]
line = line[0:path_index]
else:
sub_path = ''
# isolate the version
if TOASTER_CLONE_PREFIX in layer_path:
is_toaster_clone = True
# extract version from name syntax
version_index = line.find('_')
if version_index > 0:
version = line[version_index+1:]
line = line[0:version_index]
else:
version = ''
_log("TOASTER_CLONE(%s/%s), version=%s" % (line,sub_path,version))
else:
is_toaster_clone = False
# version is from the installation
version = self.find_layer_dir_version(layer_path)
_log("LOCAL_CLONE(%s/%s), version=%s" % (line,sub_path,version))
# capture the layer information into layers_list
layers_list.append( (line,sub_path,version,layer_path,is_toaster_clone) )
return layers_list,lv_dict
#
def find_import_release(self,layers_list,lv_dict,default_release):
# poky,meta,rocko => 4;openembedded-core
release = default_release
for line,path,version,layer_path,is_toaster_clone in layers_list:
key = "%s,%s,%s" % (line,path,version)
if key in lv_dict:
lv_id = lv_dict[key]
if 'openembedded-core' == lv_id[1]:
_log("Find_import_release(%s):version=%s,Toaster=%s" % (lv_id[1],version,is_toaster_clone))
# only versions in Toaster managed layers are accepted
if not is_toaster_clone:
break
try:
release = Release.objects.get(name=version)
except:
pass
break
_log("Find_import_release:RELEASE=%s" % release.name)
return release
# Apply the found conf layers
def apply_conf_bblayers(self,layers_list,lv_dict,project,release=None):
for line,path,version,layer_path,is_toaster_clone in layers_list:
# Assert release promote if present
if release:
version = release
# try to match the key to a layer_version
key = "%s,%s,%s" % (line,path,version)
key_short = "%s,%s,%s" % (line,path,'')
lv_id = ''
if key in lv_dict:
lv_id = lv_dict[key]
lv = Layer_Version.objects.get(pk=int(lv_id[0]))
pl,created = ProjectLayer.objects.get_or_create(project=project,
layercommit=lv)
pl.optional=False
pl.save()
_log(" %s => %s;%s" % (key,lv_id[0],lv_id[1]))
elif key_short in lv_dict:
lv_id = lv_dict[key_short]
lv = Layer_Version.objects.get(pk=int(lv_id[0]))
pl,created = ProjectLayer.objects.get_or_create(project=project,
layercommit=lv)
pl.optional=False
pl.save()
_log(" %s ?> %s" % (key,lv_dict[key_short]))
else:
_log("%s <= %s" % (key,layer_path))
found = False
# does local layer already exist in this project?
try:
for pl in ProjectLayer.objects.filter(project=project):
if pl.layercommit.layer.local_source_dir == layer_path:
found = True
_log(" Project Local Layer found!")
except Exception as e:
_log("ERROR: Local Layer '%s'" % e)
pass
if not found:
# Does Layer name+path already exist?
try:
layer_name_base = os.path.basename(layer_path)
_log("Layer_lookup: try '%s','%s'" % (layer_name_base,layer_path))
layer = Layer.objects.get(name=layer_name_base,local_source_dir = layer_path)
# Found! Attach layer_version and ProjectLayer
layer_version = Layer_Version.objects.create(
layer=layer,
project=project,
layer_source=LayerSource.TYPE_IMPORTED)
layer_version.save()
pl,created = ProjectLayer.objects.get_or_create(project=project,
layercommit=layer_version)
pl.optional=False
pl.save()
found = True
# add layer contents to this layer version
scan_layer_content(layer,layer_version)
_log(" Parent Local Layer found in db!")
except Exception as e:
_log("Layer_exists_test_failed: Local Layer '%s'" % e)
pass
if not found:
# Insure that layer path exists, in case of user typo
if not os.path.isdir(layer_path):
_log("ERROR:Layer path '%s' not found" % layer_path)
continue
# Add layer to db and attach project to it
layer_name_base = os.path.basename(layer_path)
# generate a unique layer name
layer_name_matches = {}
for layer in Layer.objects.filter(name__contains=layer_name_base):
layer_name_matches[layer.name] = '1'
layer_name_idx = 0
layer_name_test = layer_name_base
while layer_name_test in layer_name_matches.keys():
layer_name_idx += 1
layer_name_test = "%s_%d" % (layer_name_base,layer_name_idx)
# create the layer and layer_verion objects
layer = Layer.objects.create(name=layer_name_test)
layer.local_source_dir = layer_path
layer_version = Layer_Version.objects.create(
layer=layer,
project=project,
layer_source=LayerSource.TYPE_IMPORTED)
layer.save()
layer_version.save()
pl,created = ProjectLayer.objects.get_or_create(project=project,
layercommit=layer_version)
pl.optional=False
pl.save()
# register the layer's content
_log(" Local Layer Add content")
scan_layer_content(layer,layer_version)
_log(" Local Layer Added '%s'!" % layer_name_test)
# Scan the project's conf files (if any)
def scan_conf_variables(self,project_path):
# scan the project's settings, add any new layers or variables
if os.path.isfile("%s/conf/local.conf" % project_path):
self.scan_conf("%s/conf/local.conf" % project_path)
self.scan_conf("%s/conf/bblayers.conf" % project_path)
# Import then disable old style Toaster conf files (before 'merged_attr')
old_toaster_local = "%s/conf/toaster.conf" % project_path
if os.path.isfile(old_toaster_local):
self.scan_conf(old_toaster_local)
shutil.move(old_toaster_local, old_toaster_local+"_old")
old_toaster_layer = "%s/conf/toaster-bblayers.conf" % project_path
if os.path.isfile(old_toaster_layer):
self.scan_conf(old_toaster_layer)
shutil.move(old_toaster_layer, old_toaster_layer+"_old")
# Scan the found conf variables (if any)
def apply_conf_variables(self,project,layers_list,lv_dict,release=None):
if self.vars:
# Catch vars relevant to Toaster (in case no Toaster section)
self.update_project_vars(project,'DISTRO')
self.update_project_vars(project,'MACHINE')
self.update_project_vars(project,'IMAGE_INSTALL_append')
self.update_project_vars(project,'IMAGE_FSTYPES')
self.update_project_vars(project,'PACKAGE_CLASSES')
# These vars are typically only assigned by Toaster
#self.update_project_vars(project,'DL_DIR')
#self.update_project_vars(project,'SSTATE_DIR')
# Assert found Toaster vars
for var in self.toaster_vars.keys():
pv, create = ProjectVariable.objects.get_or_create(project = project, name = var)
pv.value = self.toaster_vars[var]
_log("* Add/update Toaster var '%s' = '%s'" % (pv.name,pv.value))
pv.save()
# Assert found BBLAYERS
if 0 < verbose:
for pl in ProjectLayer.objects.filter(project=project):
release_name = 'None' if not pl.layercommit.release else pl.layercommit.release.name
print(" BEFORE:ProjectLayer=%s,%s,%s,%s" % (pl.layercommit.layer.name,release_name,pl.layercommit.branch,pl.layercommit.commit))
self.apply_conf_bblayers(layers_list,lv_dict,project,release)
if 0 < verbose:
for pl in ProjectLayer.objects.filter(project=project):
release_name = 'None' if not pl.layercommit.release else pl.layercommit.release.name
print(" AFTER :ProjectLayer=%s,%s,%s,%s" % (pl.layercommit.layer.name,release_name,pl.layercommit.branch,pl.layercommit.commit))
def handle(self, *args, **options):
project_name = options['name']
project_path = options['path']
project_callback = options['callback'] if options['callback'] else ''
release_name = options['release'] if options['release'] else ''
#
# Delete project
#
if options['delete_project']:
try:
print("Project '%s' delete from Toaster database" % (project_name))
project = Project.objects.get(name=project_name)
# TODO: deep project delete
project.delete()
print("Project '%s' Deleted" % (project_name))
return
except Exception as e:
print("Project '%s' not found, not deleted (%s)" % (project_name,e))
return
#
# Create/Update/Import project
#
# See if project (by name) exists
project = None
try:
# Project already exists
project = Project.objects.get(name=project_name)
except Exception as e:
pass
# Find the installation's default release
default_release = Release.objects.get(id=1)
# SANITY: if 'reconfig' but project does not exist (deleted externally), switch to 'import'
if ("reconfigure" == options['command']) and (None == project):
options['command'] = 'import'
# 'Configure':
if "configure" == options['command']:
# Note: ignore any existing conf files
# create project, SANITY: reuse any project of same name
project = Project.objects.create_project(project_name,default_release,project)
# 'Re-configure':
if "reconfigure" == options['command']:
# Scan the directory's conf files
self.scan_conf_variables(project_path)
# Scan the layer list
layers_list,lv_dict = self.extract_bblayers()
# Apply any new layers or variables
self.apply_conf_variables(project,layers_list,lv_dict)
# 'Import':
if "import" == options['command']:
# Scan the directory's conf files
self.scan_conf_variables(project_path)
# Remove these Toaster controlled variables
for var in ('DL_DIR','SSTATE_DIR'):
self.vars.pop(var, None)
self.toaster_vars.pop(var, None)
# Scan the layer list
layers_list,lv_dict = self.extract_bblayers()
# Find the directory's release, and promote to default_release if local paths
release = self.find_import_release(layers_list,lv_dict,default_release)
# create project, SANITY: reuse any project of same name
project = Project.objects.create_project(project_name,release,project)
# Apply any new layers or variables
self.apply_conf_variables(project,layers_list,lv_dict,release)
# WORKAROUND: since we now derive the release, redirect 'newproject_specific' to 'project_specific'
project.set_variable('INTERNAL_PROJECT_SPECIFIC_SKIPRELEASE','1')
# Set up the project's meta data
project.builddir = project_path
project.merged_attr = True
project.set_variable(Project.PROJECT_SPECIFIC_CALLBACK,project_callback)
project.set_variable(Project.PROJECT_SPECIFIC_STATUS,Project.PROJECT_SPECIFIC_EDIT)
if ("configure" == options['command']) or ("import" == options['command']):
# preset the mode and default image recipe
project.set_variable(Project.PROJECT_SPECIFIC_ISNEW,Project.PROJECT_SPECIFIC_NEW)
project.set_variable(Project.PROJECT_SPECIFIC_DEFAULTIMAGE,"core-image-minimal")
# Assert any extended/custom actions or variables for new non-Toaster projects
if not len(self.toaster_vars):
pass
else:
project.set_variable(Project.PROJECT_SPECIFIC_ISNEW,Project.PROJECT_SPECIFIC_NONE)
# Save the updated Project
project.save()
_log("Buildimport:project='%s' at '%d'" % (project_name,project.id))
if ('DEFAULT_IMAGE' in self.vars) and (self.vars['DEFAULT_IMAGE']):
print("|Default_image=%s|Project_id=%d" % (self.vars['DEFAULT_IMAGE'],project.id))
else:
print("|Project_id=%d" % (project.id))

View File

@@ -165,6 +165,7 @@ TARFILES = dev-style.css dev-manual.html \
TARFILES = dev-style.css dev-manual.html figures/buildhistory-web.png \
figures/dev-title.png figures/buildhistory.png \
figures/recipe-workflow.png figures/bitbake-build-flow.png \
figures/multiconfig_files.png \
eclipse
endif
@@ -261,14 +262,14 @@ TARFILES = mega-manual.html mega-style.css \
figures/image-generation.png figures/key-dev-elements.png\
figures/sdk-generation.png figures/recipe-workflow.png \
figures/build-workspace-directory.png figures/mega-title.png \
figures/toaster-title.png figures/hosted-service.png \
figures/toaster-title.png figures/hosted-service.png figures/multiconfig_files.png \
figures/simple-configuration.png figures/poky-reference-distribution.png \
figures/compatible-layers.png figures/import-layer.png figures/new-project.png \
figures/sdk-environment.png figures/sdk-installed-standard-sdk-directory.png \
figures/sdk-devtool-add-flow.png figures/sdk-installed-extensible-sdk-directory.png \
figures/sdk-devtool-modify-flow.png figures/sdk-eclipse-dev-flow.png \
figures/sdk-devtool-upgrade-flow.png figures/bitbake-build-flow.png figures/bypqs-title.png \
figures/overview-manual-title.png
figures/overview-manual-title.png figures/sdk-autotools-flow.png figures/sdk-makefile-flow.png
endif
MANUALS = $(DOC)/$(DOC).html
@@ -295,7 +296,7 @@ TARFILES = sdk-manual.html sdk-style.css figures/sdk-title.png \
figures/sdk-environment.png figures/sdk-installed-standard-sdk-directory.png \
figures/sdk-installed-extensible-sdk-directory.png figures/sdk-devtool-add-flow.png \
figures/sdk-devtool-modify-flow.png figures/sdk-eclipse-dev-flow.png \
figures/sdk-devtool-upgrade-flow.png \
figures/sdk-devtool-upgrade-flow.png figures/sdk-autotools-flow.png figures/sdk-makefile-flow.png \
eclipse
MANUALS = $(DOC)/$(DOC).html $(DOC)/eclipse
FIGURES = figures

View File

@@ -110,7 +110,7 @@
<note>
For host package requirements on all supported Linux
distributions, see the
"<ulink url='&YOCTO_DOCS_REF_URL;#required-packages-for-the-host-development-system'>Required Packages for the Host Development System</ulink>"
"<ulink url='&YOCTO_DOCS_REF_URL;#required-packages-for-the-build-host'>Required Packages for the Build Host</ulink>"
section in the Yocto Project Reference Manual.
</note>
<literallayout class='monospaced'>

View File

@@ -187,7 +187,7 @@
<emphasis>Set Up the Build Environment:</emphasis>
Be sure you are set up to use BitBake in a shell.
See the
"<ulink url='&YOCTO_DOCS_DEV_URL;#setting-up-the-development-host-to-use-the-yocto-project'>Preparing the Build Host</ulink>"
"<ulink url='&YOCTO_DOCS_DEV_URL;#dev-preparing-the-build-host'>Preparing the Build Host</ulink>"
section in the Yocto Project Development Tasks Manual for information
on how to get a build host ready that is either a native
Linux machine or a machine that uses CROPS.
@@ -1012,7 +1012,7 @@
to Support Development Using the Yocto
Project</emphasis>:
See the
"<ulink url='&YOCTO_DOCS_DEV_URL;#setting-up-the-development-host-to-use-the-yocto-project'>Preparing the Build Host</ulink>"
"<ulink url='&YOCTO_DOCS_DEV_URL;#dev-preparing-the-build-host'>Preparing the Build Host</ulink>"
section in the Yocto Project Development Tasks
Manual for options on how to get a system ready
to use the Yocto Project.

View File

@@ -4264,7 +4264,7 @@
You need to be sure that your development host is
set up to use the Yocto Project.
For information on how to set up your host, see the
"<link linkend='setting-up-the-development-host-to-use-the-yocto-project'>Preparing the Build Host</link>"
"<link linkend='dev-preparing-the-build-host'>Preparing the Build Host</link>"
section.
</para></listitem>
<listitem><para>
@@ -5321,104 +5321,215 @@
</para>
</section>
<section id='platdev-building-targets-with-multiple-configurations'>
<title>Building Targets with Multiple Configurations</title>
<section id='dev-building-images-for-multiple-targets-using-multiple-configurations'>
<title>Building Images for Multiple Targets Using Multiple Configurations</title>
<para>
Bitbake also has functionality that allows you to build
multiple targets at the same time, where each target uses
a different configuration.
You can use a single <filename>bitbake</filename> command
to build multiple images or packages for different targets
where each image or package requires a different configuration
(multiple configuration builds).
The builds, in this scenario, are sometimes referred to as
"multiconfigs", and this section uses that term throughout.
</para>
<para>
In order to accomplish this, you setup each of the configurations
you need to use in parallel by placing the configuration files in
your current build directory alongside the usual
<filename>local.conf</filename> file.
This section describes how to set up for multiple
configuration builds and how to account for cross-build
dependencies between the multiconfigs.
</para>
<para>
Follow these guidelines to create an environment that supports
multiple configurations:
<itemizedlist>
<listitem><para>
<emphasis>Create Configuration Files</emphasis>:
You need to create a single configuration file for each
configuration for which you want to add support.
These files would contain lines such as the following:
<literallayout class='monospaced'>
MACHINE = "A"
</literallayout>
The files would contain any other variables that can
be set and built in the same directory.
<note>
You can change the
<ulink url='&YOCTO_DOCS_REF_URL;#var-TMPDIR'><filename>TMPDIR</filename></ulink>
to not conflict.
</note></para>
<section id='dev-setting-up-and-running-a-multiple-configuration-build'>
<title>Setting Up and Running a Multiple Configuration Build</title>
<para>
Furthermore, the configuration file must be located in the
current build directory in a directory named
<filename>multiconfig</filename> under the build's
<filename>conf</filename> directory where
<filename>local.conf</filename> resides.
The reason for this restriction is because the
<filename>BBPATH</filename> variable is not constructed
until the layers are parsed.
Consequently, using the configuration file as a
pre-configuration file is not possible unless it is
located in the current working directory.
</para></listitem>
<listitem><para>
<emphasis>Add the BitBake Multi-Config Variable to you Local Configuration File</emphasis>:
Use the
<filename>BBMULTICONFIG</filename>
variable in your <filename>conf/local.conf</filename>
configuration file to specify each separate configuration.
For example, the following line tells BitBake it should load
<filename>conf/multiconfig/configA.conf</filename>,
<filename>conf/multiconfig/configB.conf</filename>, and
<filename>conf/multiconfig/configC.conf</filename>.
<literallayout class='monospaced'>
BBMULTICONFIG = "configA configB configC"
</literallayout>
</para></listitem>
<listitem><para>
<emphasis>Launch BitBake</emphasis>:
Use the following BitBake command form to launch the
build:
<literallayout class='monospaced'>
<para>
To accomplish a multiple configuration build, you must
define each target's configuration separately using
a parallel configuration file in the
<ulink url='&YOCTO_DOCS_REF_URL;#build-directory'>Build Directory</ulink>,
and you must follow a required file hierarchy.
Additionally, you must enable the multiple configuration
builds in your <filename>local.conf</filename> file.
</para>
<para>
Follow these steps to set up and execute multiple
configuration builds:
<itemizedlist>
<listitem><para>
<emphasis>Create Separate Configuration Files</emphasis>:
You need to create a single configuration file for
each build target (each multiconfig).
Minimally, each configuration file must define the
machine and the temporary directory BitBake uses
for the build.
Suggested practice dictates that you do not
overlap the temporary directories
used during the builds.
However, it is possible that you can share the
temporary directory
(<ulink url='&YOCTO_DOCS_REF_URL;#var-TMPDIR'><filename>TMPDIR</filename></ulink>).
For example, consider a scenario with two
different multiconfigs for the same
<ulink url='&YOCTO_DOCS_REF_URL;#var-MACHINE'><filename>MACHINE</filename></ulink>: "qemux86" built for
two distributions such as "poky" and "poky-lsb".
In this case, you might want to use the same
<filename>TMPDIR</filename>.</para>
<para>Here is an example showing the minimal
statements needed in a configuration file for
a "qemux86" target whose temporary build directory
is <filename>tmpmultix86</filename>:
<literallayout class='monospaced'>
MACHINE="qemux86"
TMPDIR="${TOPDIR}/tmpmultix86"
</literallayout></para>
<para>The location for these multiconfig
configuration files is specific.
They must reside in the current build directory in
a sub-directory of <filename>conf</filename> named
<filename>multiconfig</filename>.
Following is an example that defines two
configuration files for the "x86" and "arm"
multiconfigs:
<imagedata fileref="figures/multiconfig_files.png" align="center" width="4in" depth="3in" />
</para>
<para>The reason for this required file hierarchy
is because the <filename>BBPATH</filename> variable
is not constructed until the layers are parsed.
Consequently, using the configuration file as a
pre-configuration file is not possible unless it is
located in the current working directory.
</para></listitem>
<listitem><para>
<emphasis>Add the BitBake Multi-configuration Variable to the Local Configuration File</emphasis>:
Use the
<ulink url='&YOCTO_DOCS_REF_URL;#var-BBMULTICONFIG'><filename>BBMULTICONFIG</filename></ulink>
variable in your
<filename>conf/local.conf</filename> configuration
file to specify each multiconfig.
Continuing with the example from the previous
figure, the <filename>BBMULTICONFIG</filename>
variable needs to enable two multiconfigs: "x86"
and "arm" by specifying each configuration file:
<literallayout class='monospaced'>
BBMULTICONFIG = "x86 arm"
</literallayout>
</para></listitem>
<listitem><para>
<emphasis>Launch BitBake</emphasis>:
Use the following BitBake command form to launch the
multiple configuration build:
<literallayout class='monospaced'>
$ bitbake [multiconfig:<replaceable>multiconfigname</replaceable>:]<replaceable>target</replaceable> [[[multiconfig:<replaceable>multiconfigname</replaceable>:]<replaceable>target</replaceable>] ... ]
</literallayout>
Following is an example that supports building a minimal
image for configuration A alongside a standard
<filename>core-image-sato</filename>, which takes its
configuration from <filename>local.conf</filename>:
<literallayout class='monospaced'>
$ bitbake multiconfig:configA:core-image-minimal core-image-sato
</literallayout>
</para></listitem>
</itemizedlist>
</para>
<para>
Support for multiple configurations in this current release of
the Yocto Project (&DISTRO_NAME; &DISTRO;) has some known issues:
<itemizedlist>
<listitem><para>
No inter-multi-configuration dependencies exist.
</para></listitem>
<listitem><para>
Shared State (sstate) optimizations do not exist.
Consequently, if the build uses the same object twice
</literallayout>
For the example in this section, the following
command applies:
<literallayout class='monospaced'>
$ bitbake multiconfig:x86:core-image-minimal multiconfig:arm:core-image-sato
</literallayout>
The previous BitBake command builds a
<filename>core-image-minimal</filename> image that
is configured through the
<filename>x86.conf</filename> configuration file
and builds a <filename>core-image-sato</filename>
image that is configured through the
<filename>arm.conf</filename> configuration file.
</para></listitem>
</itemizedlist>
<note>
Support for multiple configuration builds in the
Yocto Project &DISTRO; (&DISTRO_NAME;) Release does
not include Shared State (sstate) optimizations.
Consequently, if a build uses the same object twice
in, for example, two different
<filename>TMPDIR</filename> directories, the build
will either load from an existing sstate cache at the
start or build the object twice.
</para></listitem>
</itemizedlist>
</para>
either loads from an existing sstate cache for that
build at the start or builds the object fresh.
</note>
</para>
</section>
<section id='dev-enabling-multiple-configuration-build-dependencies'>
<title>Enabling Multiple Configuration Build Dependencies</title>
<para>
Sometimes dependencies can exist between targets
(multiconfigs) in a multiple configuration build.
For example, suppose that in order to build a
<filename>core-image-sato</filename> image for an "x86"
multiconfig, the root filesystem of an "arm"
multiconfig must exist.
This dependency is essentially that the
<ulink url='&YOCTO_DOCS_REF_URL;#ref-tasks-image'><filename>do_image</filename></ulink>
task in the <filename>core-image-sato</filename> recipe
depends on the completion of the
<ulink url='&YOCTO_DOCS_REF_URL;#ref-tasks-rootfs'><filename>do_rootfs</filename></ulink>
task of the <filename>core-image-minimal</filename>
recipe.
</para>
<para>
To enable dependencies in a multiple configuration
build, you must declare the dependencies in the recipe
using the following statement form:
<literallayout class='monospaced'>
<replaceable>task_or_package</replaceable>[mcdepends] = "multiconfig:<replaceable>from_multiconfig</replaceable>:<replaceable>to_multiconfig</replaceable>:<replaceable>recipe_name</replaceable>:<replaceable>task_on_which_to_depend</replaceable>"
</literallayout>
To better show how to use this statement, consider the
example scenario from the first paragraph of this section.
The following statement needs to be added to the recipe
that builds the <filename>core-image-sato</filename>
image:
<literallayout class='monospaced'>
do_image[mcdepends] = "multiconfig:x86:arm:core-image-minimal:do_rootfs"
</literallayout>
In this example, the
<replaceable>from_multiconfig</replaceable> is "x86".
The <replaceable>to_multiconfig</replaceable> is "arm".
The task on which the <filename>do_image</filename> task
in the recipe depends is the <filename>do_rootfs</filename>
task from the <filename>core-image-minimal</filename>
recipe associated with the "arm" multiconfig.
</para>
<para>
Once you set up this dependency, you can build the
"x86" multiconfig using a BitBake command as follows:
<literallayout class='monospaced'>
$ bitbake multiconfig:x86:core-image-sato
</literallayout>
This command executes all the tasks needed to create
the <filename>core-image-sato</filename> image for the
"x86" multiconfig.
Because of the dependency, BitBake also executes through
the <filename>do_rootfs</filename> task for the "arm"
multiconfig build.
</para>
<para>
Having a recipe depend on the root filesystem of another
build might not seem that useful.
Consider this change to the statement in the
<filename>core-image-sato</filename> recipe:
<literallayout class='monospaced'>
do_image[mcdepends] = "multiconfig:x86:arm:core-image-minimal:do_image"
</literallayout>
In this case, BitBake must create the
<filename>core-image-minimal</filename> image for the
"arm" build since the "x86" build depends on it.
</para>
<para>
Because "x86" and "arm" are enabled for multiple
configuration builds and have separate configuration
files, BitBake places the artifacts for each build in the
respective temporary build directories (i.e.
<ulink url='&YOCTO_DOCS_REF_URL;#var-TMPDIR'><filename>TMPDIR</filename></ulink>).
</para>
</section>
</section>
<section id='building-an-initramfs-image'>
@@ -11400,8 +11511,8 @@
within a separately started QEMU or any
other virtual machine manager.
</para></listitem>
<listitem><para><emphasis>"Systemd-bootTarget":</emphasis>
Choose "Systemd-bootTarget" if your hardware is
<listitem><para><emphasis>"SystemdbootTarget":</emphasis>
Choose "SystemdbootTarget" if your hardware is
an EFI-based machine with
<filename>systemd-boot</filename> as bootloader and
<filename>core-image-testmaster</filename>
@@ -11409,10 +11520,10 @@
Also, your hardware under test must be in a
DHCP-enabled network that gives it the same IP
address for each reboot.</para>
<para>If you choose "Systemd-bootTarget", there are
<para>If you choose "SystemdbootTarget", there are
additional requirements and considerations.
See the
"<link linkend='selecting-systemd-boottarget'>Selecting Systemd-bootTarget</link>"
"<link linkend='selecting-systemdboottarget'>Selecting SystemdbootTarget</link>"
section, which follows, for more information.
</para></listitem>
<listitem><para><emphasis>"BeagleBoneTarget":</emphasis>
@@ -11458,12 +11569,12 @@
</para>
</section>
<section id='selecting-systemd-boottarget'>
<title>Selecting Systemd-bootTarget</title>
<section id='selecting-systemdboottarget'>
<title>Selecting SystemdbootTarget</title>
<para>
If you did not set <filename>TEST_TARGET</filename> to
"Systemd-bootTarget", then you do not need any information
"SystemdbootTarget", then you do not need any information
in this section.
You can skip down to the
"<link linkend='qemu-image-running-tests'>Running Tests</link>"
@@ -11472,7 +11583,7 @@
<para>
If you did set <filename>TEST_TARGET</filename> to
"Systemd-bootTarget", you also need to perform a one-time
"SystemdbootTarget", you also need to perform a one-time
setup of your master image by doing the following:
<orderedlist>
<listitem><para><emphasis>Set <filename>EFI_PROVIDER</filename>:</emphasis>
@@ -11543,7 +11654,7 @@
<para>
The final thing you need to do when setting
<filename>TEST_TARGET</filename> to "Systemd-bootTarget" is
<filename>TEST_TARGET</filename> to "SystemdbootTarget" is
to set up the test image:
<orderedlist>
<listitem><para><emphasis>Set up your <filename>local.conf</filename> file:</emphasis>
@@ -11552,7 +11663,7 @@
<literallayout class='monospaced'>
IMAGE_FSTYPES += "tar.gz"
INHERIT += "testimage"
TEST_TARGET = "Systemd-bootTarget"
TEST_TARGET = "SystemdbootTarget"
TEST_TARGET_IP = "192.168.2.3"
</literallayout>
</para></listitem>
@@ -11969,7 +12080,7 @@
The target controller object used to deploy
and start an image on a particular target
(e.g. QemuTarget, SimpleRemote, and
Systemd-bootTarget).
SystemdbootTarget).
Tests usually use the following:
<itemizedlist>
<listitem><para><emphasis><filename>ip</filename>:</emphasis>
@@ -15072,6 +15183,31 @@
</para>
</section>
</section>
<section id='copying-licenses-that-do-not-exist'>
<title>Copying Licenses that Do Not Exist</title>
<para>
Some packages, such as the linux-firmware package, have many
licenses that are not in any way common.
You can avoid adding a lot of these types of common license
files, which are only applicable to a specific package, by using
the
<ulink url='&YOCTO_DOCS_REF_URL;#var-NO_GENERIC_LICENSE'><filename>NO_GENERIC_LICENSE</filename></ulink>
variable.
Using this variable also avoids QA errors when you use a
non-common, non-CLOSED license in a recipe.
</para>
<para>
The following is an example that uses the
<filename>LICENSE.Abilis.txt</filename>
file as the license from the fetched source:
<literallayout class='monospaced'>
NO_GENERIC_LICENSE[Firmware-Abilis] = "LICENSE.Abilis.txt"
</literallayout>
</para>
</section>
</section>
<section id='using-the-error-reporting-tool'>

View File

@@ -19,7 +19,7 @@
</para>
<para>
The following list describes what you can get from this manual:
This manual provides the following:
<itemizedlist>
<listitem><para>
Procedures that help you get going with the Yocto Project.
@@ -44,7 +44,7 @@
</para>
<para>
This manual will not give you the following:
This manual does not provide the following:
<itemizedlist>
<listitem><para>
Redundant Step-by-step Instructions:

View File

@@ -10,8 +10,10 @@
This chapter provides procedures related to getting set up to use the
Yocto Project.
You can learn about creating a team environment that develops using the
Yocto Project, how to set up a build host, how to locate Yocto Project
source repositories, and how to create local Git repositories.
Yocto Project, how to set up a
<ulink url='&YOCTO_DOCS_REF_URL;#hardware-build-system-term'>build host</ulink>,
how to locate Yocto Project source repositories, and how to create local
Git repositories.
</para>
<section id="usingpoky-changes-collaborate">
@@ -19,69 +21,71 @@
<para>
It might not be immediately clear how you can use the Yocto
Project in a team development environment, or scale it for a large
team of developers.
Project in a team development environment, or how to scale it for a
large team of developers.
One of the strengths of the Yocto Project is that it is extremely
flexible.
Thus, you can adapt it to many different use cases and scenarios.
However, these characteristics can cause a struggle if you are trying
However, this flexibility could cause difficulties if you are trying
to create a working setup that scales across a large team.
</para>
<para>
To help you understand how to set up this type of environment,
this section presents a procedure that gives you the information
to learn how to get the results you want.
this section presents a procedure that gives you information
that can help you get the results you want.
The procedure is high-level and presents some of the project's most
successful experiences, practices, solutions, and available
technologies that work well.
technologies that have proved to work well in the past.
Keep in mind, the procedure here is a starting point.
You can build off it and customize it to fit any
You can build off these steps and customize the procedure to fit any
particular working environment and set of practices.
<orderedlist>
<listitem><para>
<emphasis>Determine Who is Going to be Developing:</emphasis>
You need to understand who is going to be doing anything
related to the Yocto Project and what their roles would be.
Making this determination is essential to completing the
Making this determination is essential to completing
steps two and three, which are to get your equipment together
and set up your development environment's hardware topology.
</para>
<para>The following roles exist:
<itemizedlist>
<listitem><para>
<emphasis>Application Development:</emphasis>
These types of developers do application level work
on top of an existing software stack.
</para></listitem>
<listitem><para>
<emphasis>Core System Development:</emphasis>
These types of developers work on the contents of the
operating system image itself.
</para></listitem>
<listitem><para>
<emphasis>Build Engineer:</emphasis>
This type of developer manages Autobuilders and
releases.
Not all environments need a Build Engineer.
</para></listitem>
<listitem><para>
<emphasis>Test Engineer:</emphasis>
This type of developer creates and manages automated
tests needed to ensure all application and core
system development meets desired quality standards.
</para></listitem>
</itemizedlist>
<itemizedlist>
<listitem><para>
<emphasis>Application Developer:</emphasis>
This type of developer does application level work
on top of an existing software stack.
</para></listitem>
<listitem><para>
<emphasis>Core System Developer:</emphasis>
This type of developer works on the contents of the
operating system image itself.
</para></listitem>
<listitem><para>
<emphasis>Build Engineer:</emphasis>
This type of developer manages Autobuilders and
releases.
Not all environments need a Build Engineer.
</para></listitem>
<listitem><para>
<emphasis>Test Engineer:</emphasis>
This type of developer creates and manages automated
tests that are used to ensure all application and
core system development meets desired quality
standards.
</para></listitem>
</itemizedlist>
</para></listitem>
<listitem><para>
<emphasis>Gather the Hardware:</emphasis>
Based on the size and make-up of the team, get the hardware
together.
Any development, build, or test engineer should be using
a system that is running a supported Linux distribution.
Systems, in general, should be high performance (e.g. dual,
six-core Xeons with 24 Gbytes of RAM and plenty of disk space).
Ideally, any development, build, or test engineer uses
a system that runs a supported Linux distribution.
These systems, in general, should be high performance
(e.g. dual, six-core Xeons with 24 Gbytes of RAM and plenty
of disk space).
You can help ensure efficiency by having any machines used
for testing or that run Autobuilders be as high performance
as possible.
@@ -107,11 +111,12 @@
<emphasis>Use Git as Your Source Control Manager (SCM):</emphasis>
Keeping your
<ulink url='&YOCTO_DOCS_REF_URL;#metadata'>Metadata</ulink>
and any software you are developing under the
control of an SCM system that is compatible
with the OpenEmbedded build system is advisable.
Of the SCMs BitBake supports, the
Yocto Project team strongly recommends using
(i.e. recipes, configuration files, classes, and so forth)
and any software you are developing under the control of an SCM
system that is compatible with the OpenEmbedded build system
is advisable.
Of the SCMs BitBake supports, the Yocto Project team strongly
recommends using
<ulink url='&YOCTO_DOCS_OM_URL;#git'>Git</ulink>.
Git is a distributed system that is easy to backup,
allows you to work remotely, and then connects back to the
@@ -129,20 +134,19 @@
being used to generate the web interface that lets you view the
repositories.
The <filename>gitolite</filename> software identifies users
using SSH keys and allows branch-based
access controls to repositories that you can control as little
or as much as necessary.
using SSH keys and allows branch-based access controls to
repositories that you can control as little or as much as
necessary.
<note>
The setup of these services is beyond the scope of this
manual.
However, sites such as these exist that describe how to
perform setup:
However, sites such as the following exist that describe
how to perform setup:
<itemizedlist>
<listitem><para>
<ulink url='http://git-scm.com/book/ch4-8.html'>Git documentation</ulink>:
Describes how to install <filename>gitolite</filename>
on the server.
Describes how to install
<filename>gitolite</filename> on the server.
</para></listitem>
<listitem><para>
<ulink url='http://gitolite.com'>Gitolite</ulink>:
@@ -150,8 +154,8 @@
</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.
Documentation on how to create interfaces and
frontends for Git.
</para></listitem>
</itemizedlist>
</note>
@@ -161,23 +165,22 @@
As mentioned earlier, application developers are creating
applications on top of existing software stacks.
Following are some best practices for setting up machines
that do application development:
used for application development:
<itemizedlist>
<listitem><para>
Use a pre-built toolchain that
contains the software stack itself.
Use a pre-built toolchain that contains the software
stack itself.
Then, develop the application code on top of the
stack.
This method works well for small numbers of relatively
isolated applications.
</para></listitem>
<listitem><para>
When possible, use the Yocto Project
plug-in for the
When possible, use the Yocto Project plug-in for the
<trademark class='trade'>Eclipse</trademark> IDE
and SDK development practices.
For more information, see the
"<ulink url='&YOCTO_DOCS_SDK_URL;'>Yocto Project Application Development and the Extensible Software Development Kit (eSDK)</ulink>"
<ulink url='&YOCTO_DOCS_SDK_URL;'>Yocto Project Application Development and the Extensible Software Development Kit (eSDK)</ulink>
manual.
</para></listitem>
<listitem><para>
@@ -186,27 +189,29 @@
toolchain downloads or as updates through a package
update mechanism using <filename>opkg</filename>
to provide updates to an existing toolchain.
The exact mechanics of how and when to do this are a
question for local policy.
The exact mechanics of how and when to do this depend
on local policy.
</para></listitem>
<listitem><para>
Use multiple toolchains installed locally
into different locations to allow development across
Use multiple toolchains installed locally into
different locations to allow development across
versions.
</para></listitem>
</itemizedlist>
</para></listitem>
<listitem><para>
<emphasis>Set up the Core Development Machines:</emphasis>
As mentioned earlier, these types of developers work on the
contents of the operating system itself.
As mentioned earlier, core developers work on the contents of
the operating system itself.
Following are some best practices for setting up machines
used for developing images:
<itemizedlist>
<listitem><para>
Have the Yocto Project build system itself available on
the developer workstations so developers can run their own
builds and directly rebuild the software stack.
Have the
<ulink url='&YOCTO_DOCS_REF_URL;#build-system-term'>OpenEmbedded build system</ulink>
available on the developer workstations so developers
can run their own builds and directly rebuild the
software stack.
</para></listitem>
<listitem><para>
Keep the core system unchanged as much as
@@ -228,8 +233,9 @@
Autobuilders are often the core of the development
environment.
It is here that changes from individual developers are brought
together and centrally tested and subsequent decisions about
releases can be made.
together and centrally tested.
Based on this automated build and test environment, subsequent
decisions about releases can be made.
Autobuilders also allow for "continuous integration" style
testing of software components and regression identification
and tracking.</para>
@@ -239,22 +245,23 @@
The Yocto Project team has found this implementation
works well in this role.
A public example of this is the Yocto Project
Autobuilders, which we use to test the overall health of the
project.</para>
Autobuilders, which the Yocto Project team uses to test the
overall health of the project.</para>
<para>The features of this system are:
<itemizedlist>
<listitem><para>
Highlights when commits break the build.
</para></listitem>
<listitem><para>
Populates an sstate cache from which
developers can pull rather than requiring local
builds.
Highlights when commits break the build.
</para></listitem>
<listitem><para>
Allows commit hook triggers,
which trigger builds when commits are made.
Populates an
<ulink url='&YOCTO_DOCS_OM_URL;#shared-state-cache'>sstate cache</ulink>
from which developers can pull rather than requiring
local builds.
</para></listitem>
<listitem><para>
Allows commit hook triggers, which trigger builds when
commits are made.
</para></listitem>
<listitem><para>
Allows triggering of automated image booting
@@ -275,19 +282,19 @@
Allows scheduling of builds so that resources
can be used efficiently.
</para></listitem>
</itemizedlist>
</para></listitem>
<listitem><para>
<emphasis>Set up Test Machines:</emphasis>
Use a small number of shared, high performance systems
for testing purposes.
Developers can use these systems for wider, more
extensive testing while they continue to develop
locally using their primary development system.
</para></listitem>
<listitem><para>
<emphasis>Document Policies and Change Flow:</emphasis>
The Yocto Project itself uses a hierarchical structure and a
</itemizedlist>
</para></listitem>
<listitem><para>
<emphasis>Set up Test Machines:</emphasis>
Use a small number of shared, high performance systems
for testing purposes.
Developers can use these systems for wider, more
extensive testing while they continue to develop
locally using their primary development system.
</para></listitem>
<listitem><para>
<emphasis>Document Policies and Change Flow:</emphasis>
The Yocto Project uses a hierarchical structure and a
pull model.
Scripts exist to create and send pull requests
(i.e. <filename>create-pull-request</filename> and
@@ -330,16 +337,20 @@
<listitem><para>
Maintain your Metadata in layers that make sense
for your situation.
See the "<link linkend='understanding-and-creating-layers'>Understanding
and Creating Layers</link>" section for more information on
layers.
See the
"<ulink url='&YOCTO_DOCS_OM_URL;#the-yocto-project-layer-model'>The Yocto Project Layer Model</ulink>"
section in the Yocto Project Overview and Concepts
Manual and the
"<link linkend='understanding-and-creating-layers'>Understanding and Creating Layers</link>"
section for more information on layers.
</para></listitem>
<listitem><para>
Separate the project's Metadata and code by using
separate Git repositories.
See the
"<ulink url='&YOCTO_DOCS_OM_URL;#yocto-project-repositories'>Yocto Project Source Repositories</ulink>"
section for information on these repositories.
section in the Yocto Project Overview and Concepts
Manual for information on these repositories.
See the
"<link linkend='locating-yocto-project-source-files'>Locating Yocto Project Source Files</link>"
section for information on how to set up local Git
@@ -360,7 +371,8 @@
</para></listitem>
<listitem><para>
The Yocto Project community encourages you
to send patches to the project to fix bugs or add features.
to send patches to the project to fix bugs or add
features.
If you do submit patches, follow the project commit
guidelines for writing good commit messages.
See the "<link linkend='how-to-submit-a-change'>Submitting a Change to the Yocto Project</link>"
@@ -369,10 +381,12 @@
<listitem><para>
Send changes to the core sooner than later
as others are likely to run into the same issues.
For some guidance on mailing lists to use, see the list in the
For some guidance on mailing lists to use, see the list
in the
"<link linkend='how-to-submit-a-change'>Submitting a Change to the Yocto Project</link>"
section.
For a description of the available mailing lists, see the
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>
@@ -382,22 +396,22 @@
</para>
</section>
<section id='setting-up-the-development-host-to-use-the-yocto-project'>
<section id='dev-preparing-the-build-host'>
<title>Preparing the Build Host</title>
<para>
This section provides procedures to set up your development host to
use the Yocto Project.
You can use the Yocto Project on a native Linux development host or
you can use
This section provides procedures to set up a system to be used as your
<ulink url='&YOCTO_DOCS_REF_URL;#hardware-build-system-term'>build host</ulink>
for development using the Yocto Project.
Your build host can be a native Linux machine (recommended) or it can
be a machine (Linux, Mac, or Windows) that uses
<ulink url='https://git.yoctoproject.org/cgit/cgit.cgi/crops/about/'>CROPS</ulink>,
which leverages
<ulink url='https://www.docker.com/'>Docker Containers</ulink>,
to prepare any Linux, Mac, or Windows development host.
<ulink url='https://www.docker.com/'>Docker Containers</ulink>.
</para>
<para>
Once your development host is set up to use the Yocto Project,
Once your build host is set up to use the Yocto Project,
further steps are necessary depending on what you want to
accomplish.
See the following references for information on how to prepare for
@@ -432,7 +446,7 @@
<para>
Follow these steps to prepare a native Linux machine as your
Yocto Project development host:
Yocto Project Build Host:
<orderedlist>
<listitem><para>
<emphasis>Use a Supported Linux Distribution:</emphasis>
@@ -450,8 +464,8 @@
</para></listitem>
<listitem><para>
<emphasis>Have Enough Free Memory:</emphasis>
You should have at least 50 Gbytes of free disk space
for building images.
Your system should have at least 50 Gbytes of free disk
space for building images.
</para></listitem>
<listitem><para>
<emphasis>Meet Minimal Version Requirements:</emphasis>
@@ -480,14 +494,14 @@
<listitem><para>
<emphasis>Install Development Host Packages:</emphasis>
Required development host packages vary depending on your
build machine and what you want to do with the Yocto
build host and what you want to do with the Yocto
Project.
Collectively, the number of required packages is large
if you want to be able to cover all cases.</para>
<para>For lists of required packages for all scenarios,
see the
"<ulink url='&YOCTO_DOCS_REF_URL;#required-packages-for-the-host-development-system'>Required Packages for the Host Development System</ulink>"
"<ulink url='&YOCTO_DOCS_REF_URL;#required-packages-for-the-build-host'>Required Packages for the Build Host</ulink>"
section in the Yocto Project Reference Manual.
</para></listitem>
</orderedlist>
@@ -514,7 +528,7 @@
<para>
With
<ulink url='https://git.yoctoproject.org/cgit/cgit.cgi/crops/about/'>CROPS</ulink>,
<ulink url='https://github.com/crops/crops/blob/master/README.md'>CROPS</ulink>,
which leverages
<ulink url='https://www.docker.com/'>Docker Containers</ulink>,
you can create a Yocto Project development environment that
@@ -525,66 +539,101 @@
<para>
Follow these general steps to prepare a Windows, Mac, or Linux
machine as your Yocto Project development host:
machine as your Yocto Project build host:
<orderedlist>
<listitem><para>
<emphasis>Go to the Docker Installation Site:</emphasis>
<emphasis>Determine What Your Build Host Needs:</emphasis>
<ulink url='https://www.docker.com/what-docker'>Docker</ulink>
is a software container platform that you need to install
on the host development machine.
To start the installation process, see the
<ulink url='https://docs.docker.com/engine/installation/'>Docker Installation</ulink>
site.
on the build host.
Depending on your build host, you might have to install
different software to support Docker containers.
Go to the Docker installation page and read about the
platform requirements in
"<ulink url='https://docs.docker.com/install/#supported-platforms'>Supported Platforms</ulink>"
your build host needs to run containers.
</para></listitem>
<listitem><para>
<emphasis>Choose Your Docker Edition:</emphasis>
Docker comes in several editions.
For the Yocto Project, the stable community edition
(i.e. "Docker CE Stable") is adequate.
You can learn more about the Docker editions from the
site.
<emphasis>Choose What To Install:</emphasis>
Depending on whether or not your build host meets system
requirements, you need to install "Docker CE Stable" or
the "Docker Toolbox".
Most situations call for Docker CE.
However, if you have a build host that does not meet
requirements (e.g. Pre-Windows 10 or Windows 10 "Home"
version), you must install Docker Toolbox instead.
</para></listitem>
<listitem><para>
<emphasis>Go to the Install Site for Your Platform:</emphasis>
Click the link for the Docker edition associated with
your development host machine's native software.
For example, if your machine is running Microsoft
your build host's native software.
For example, if your build host is running Microsoft
Windows Version 10 and you want the Docker CE Stable
edition, click that link under "Supported Platforms".
</para></listitem>
<listitem><para>
<emphasis>Understand What You Need:</emphasis>
The install page has pre-requisites your machine must
meet.
Be sure you read through this page and make sure your
machine meets the requirements to run Docker.
If your machine does not meet the requirements, the page
has instructions to handle exceptions.
For example, to run Docker on Windows 10, you must have
the pro version of the operating system.
If you have the home version, you need to install the
<ulink url='https://docs.docker.com/toolbox/overview/#ready-to-get-started'>Docker Toolbox</ulink>.
</para>
<para>Another example is that a Windows machine needs to
have Microsoft Hyper-V.
If you have a legacy version of the the Microsoft
operating system or for any other reason you do not have
Microsoft Hyper-V, you would have to enter the BIOS and
enable virtualization.
</para></listitem>
<listitem><para>
<emphasis>Install the Software:</emphasis>
Once you have understood all the pre-requisites, you can
download and install the appropriate software.
Follow the instructions for your specific machine and
the type of the software you need to install.
the type of the software you need to install:
<itemizedlist>
<listitem><para>
Install
<ulink url='https://docs.docker.com/docker-for-windows/install/#install-docker-for-windows-desktop-app'>Docker CE for Windows</ulink>
for Windows build hosts that meet requirements.
</para></listitem>
<listitem><para>
Install
<ulink url='https://docs.docker.com/docker-for-mac/install/#install-and-run-docker-for-mac'>Docker CE for Macs</ulink>
for Mac build hosts that meet requirements.
</para></listitem>
<listitem><para>
Install
<ulink url='https://docs.docker.com/toolbox/toolbox_install_windows/'>Docker Toolbox for Windows</ulink>
for Windows build hosts that do not meet Docker
requirements.
</para></listitem>
<listitem><para>
Install
<ulink url='https://docs.docker.com/toolbox/toolbox_install_mac/'>Docker Toolbox for MacOS</ulink>
for Mac build hosts that do not meet Docker
requirements.
</para></listitem>
<listitem><para>
Install
<ulink url='https://docs.docker.com/install/linux/docker-ce/centos/'>Docker CE for CentOS</ulink>
for Linux build hosts running the CentOS
distribution.
</para></listitem>
<listitem><para>
Install
<ulink url='https://docs.docker.com/install/linux/docker-ce/debian/'>Docker CE for Debian</ulink>
for Linux build hosts running the Debian
distribution.
</para></listitem>
<listitem><para>
Install
<ulink url='https://docs.docker.com/install/linux/docker-ce/fedora/'>Docker CE for Fedora</ulink>
for Linux build hosts running the Fedora
distribution.
</para></listitem>
<listitem><para>
Install
<ulink url='https://docs.docker.com/install/linux/docker-ce/ubuntu/'>Docker CE for Ubuntu</ulink>
for Linux build hosts running the Ubuntu
distribution.
</para></listitem>
</itemizedlist>
</para></listitem>
<listitem><para>
<emphasis>Optionally Orient Yourself With Docker:</emphasis>
If you are unfamiliar with Docker and the container
concept, you can learn more here -
<ulink url='https://docs.docker.com/get-started/'></ulink>.
</para></listitem>
<listitem><para>
<emphasis>Launch Docker or Docker Toolbox:</emphasis>
You should be able to launch Docker or the Docker Toolbox
and have a terminal shell on your development host.
</para></listitem>
@@ -593,7 +642,7 @@
Go to
<ulink url='https://github.com/crops/docker-win-mac-docs/wiki'></ulink>
and follow the directions for your particular
development host (i.e. Linux, Mac, or Windows).</para>
build host (i.e. Linux, Mac, or Windows).</para>
<para>Once you complete the setup instructions for your
machine, you have the Poky, Extensible SDK, and Toaster
@@ -622,8 +671,8 @@
<title>Locating Yocto Project Source Files</title>
<para>
This section contains procedures related to locating Yocto Project
files.
This section shows you how to locate and access the
source files that ship with the Yocto Project.
You establish and use these local files to work on projects.
<note><title>Notes</title>
<itemizedlist>
@@ -670,7 +719,7 @@
</para></listitem>
<listitem><para>
<emphasis>Select the Repository:</emphasis>
Click on the repository in which you are interested (i.e.
Click on the repository in which you are interested (e.g.
<filename>poky</filename>).
</para></listitem>
<listitem><para>
@@ -704,6 +753,7 @@
The procedure in this section exists should you desire a
tarball snapshot of any given component.
</note>
Follow these steps to locate and download a particular tarball:
<orderedlist>
<listitem><para>
<emphasis>Access the Index of Releases:</emphasis>
@@ -753,7 +803,10 @@
uses a "DOWNLOADS" page from which you can locate and download
tarballs of any Yocto Project release.
Rather than Git repositories, these files represent snapshot
tarballs.
tarballs similar to the tarballs located in the Index of Releases
described in the
"<link linkend='accessing-index-of-releases'>Accessing Index of Releases</link>"
section.
<note><title>Tip</title>
The recommended method for accessing Yocto Project
components is to use Git to clone a repository and work from
@@ -771,18 +824,23 @@
<listitem><para>
<emphasis>Get to the Downloads Area:</emphasis>
Select the "DOWNLOADS" item from the pull-down
"SOFTWARE" tab menu.
"SOFTWARE" tab menu near the top of the page.
</para></listitem>
<listitem><para>
<emphasis>Select a Yocto Project Release:</emphasis>
Use the menu next to "RELEASE" to display and choose
a Yocto Project release (e.g. sumo, rocko, pyro, and
so forth.
For a "map" of Yocto Project releases to version numbers,
see the
<ulink url='https://wiki.yoctoproject.org/wiki/Releases'>Releases</ulink>
wiki page.
</para></listitem>
a recent or past supported Yocto Project release
(e.g. &DISTRO_NAME_NO_CAP;,
&DISTRO_NAME_NO_CAP_MINUS_ONE;, and so forth).
<note><title>Tip</title>
For a "map" of Yocto Project releases to version
numbers, see the
<ulink url='https://wiki.yoctoproject.org/wiki/Releases'>Releases</ulink>
wiki page.
</note>
You can use the "RELEASE ARCHIVE" link to reveal a menu of
all Yocto Project releases.
</para></listitem>
<listitem><para>
<emphasis>Download Tools or Board Support Packages (BSPs):</emphasis>
From the "DOWNLOADS" page, you can download tools or
@@ -799,8 +857,9 @@
<para>
Yocto Project maintains an area for nightly builds that contains
tarball releases at <ulink url='&YOCTO_AB_NIGHTLY_URL;'/>.
These builds include Yocto Project releases, SDK installation
scripts, and experimental builds.
These builds include Yocto Project releases ("poky"),
toolchains, Yocto Project plugins for Eclipse, and builds for
supported machines.
</para>
<para>
@@ -808,14 +867,21 @@
Yocto Project component, use the following procedure:
<orderedlist>
<listitem><para>
<emphasis>Access the Nightly Builds:</emphasis>
<emphasis>Locate the Index of Nightly Builds:</emphasis>
Open a browser and go to
<ulink url='&YOCTO_AB_NIGHTLY_URL;'/> to access the
Nightly Builds.
</para></listitem>
<listitem><para>
<emphasis>Select a Date:</emphasis>
Click on the date in which you are interested.
If you want the latest builds, use "CURRENT".
</para></listitem>
<listitem><para>
<emphasis>Select a Build:</emphasis>
Click on any build by date in which you are interested.
Choose the area in which you are interested.
For example, if you are looking for the most recent
toolchains, select the "toolchain" link.
</para></listitem>
<listitem><para>
<emphasis>Find the Tarball:</emphasis>
@@ -831,27 +897,23 @@
</section>
</section>
<section id='cloning-and-checking-out-branchs'>
<section id='cloning-and-checking-out-branches'>
<title>Cloning and Checking Out Branches</title>
<para>
To use the Yocto Project, you need a release of the Yocto Project
locally installed on your development system.
The locally installed set of files is referred to as the
To use the Yocto Project for development, you need a release locally
installed on your development system.
This locally installed set of files is referred to as the
<ulink url='&YOCTO_DOCS_REF_URL;#source-directory'>Source Directory</ulink>
in the Yocto Project documentation.
</para>
<para>
You create your Source Directory by using
The preferred method of creating your Source Directory is by using
<ulink url='&YOCTO_DOCS_OM_URL;#git'>Git</ulink> to clone a local
copy of the upstream <filename>poky</filename> repository.
<note><title>Tip</title>
The preferred method of getting the Yocto Project Source
Directory set up is to clone the repository.
</note>
Working from a copy of the upstream repository allows you
to contribute back into the Yocto Project or simply work with
Working from a cloned copy of the upstream repository allows you
to contribute back into the Yocto Project or to simply work with
the latest software on a development branch.
Because Git maintains and creates an upstream repository with
a complete history of changes and you are working with a local
@@ -871,21 +933,23 @@
<orderedlist>
<listitem><para>
<emphasis>Set Your Directory:</emphasis>
Be in the directory where you want to create your local
copy of poky.
Change your working directory to where you want to
create your local copy of
<filename>poky</filename>.
</para></listitem>
<listitem><para>
<emphasis>Clone the Repository:</emphasis>
The following command clones the repository and uses
The following example command clones the
<filename>poky</filename> repository and uses
the default name "poky" for your local repository:
<literallayout class='monospaced'>
$ git clone git://git.yoctoproject.org/poky
Cloning into 'poky'...
remote: Counting objects: 367178, done.
remote: Compressing objects: 100% (88161/88161), done.
remote: Total 367178 (delta 272761), reused 366942 (delta 272525)
Receiving objects: 100% (367178/367178), 133.26 MiB | 6.40 MiB/s, done.
Resolving deltas: 100% (272761/272761), done.
remote: Counting objects: 416542, done.
remote: Compressing objects: 100% (98611/98611), done.
remote: Total 416542 (delta 311104), reused 416377 (delta 310939)
Receiving objects: 100% (416542/416542), 150.39 MiB | 15.77 MiB/s, done.
Resolving deltas: 100% (311104/311104), done.
Checking connectivity... done.
</literallayout>
Unless you specify a specific development branch or
@@ -900,8 +964,8 @@
<link linkend='checkout-out-by-tag-in-poky'>Checking Out By Tag in Poky</link>"
sections, respectively.</para>
<para>Once the repository is created, you can change to
that directory and check its status.
<para>Once the local repository is created, you can
change to that directory and check its status.
Here, the single "master" branch exists on your system
and by default, it is checked out:
<literallayout class='monospaced'>
@@ -916,6 +980,10 @@
Your local repository of poky is identical to the
upstream poky repository at the time from which it was
cloned.
As you work with the local branch, you can periodically
use the <filename>git pull &dash;&dash;rebase</filename>
command to be sure you are up-to-date with the upstream
branch.
</para></listitem>
</orderedlist>
</para>

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

View File

@@ -25,7 +25,7 @@
Before you can do any kernel development, you need to be
sure your build host is set up to use the Yocto Project.
For information on how to get set up, see the
"<ulink url='&YOCTO_DOCS_DEV_URL;#setting-up-the-development-host-to-use-the-yocto-project'>Preparing the Build Host</ulink>"
"<ulink url='&YOCTO_DOCS_DEV_URL;#dev-preparing-the-build-host'>Preparing the Build Host</ulink>"
section in the Yocto Project Development Tasks Manual.
Part of preparing the system is creating a local Git
repository of the

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 49 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 176 KiB

After

Width:  |  Height:  |  Size: 177 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 136 KiB

After

Width:  |  Height:  |  Size: 136 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 42 KiB

After

Width:  |  Height:  |  Size: 65 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 55 KiB

After

Width:  |  Height:  |  Size: 38 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 46 KiB

View File

@@ -1296,7 +1296,7 @@
<para>It is worth noting that the term "package" can,
in general, have subtle meanings.
For example, the packages referred to in the
"<ulink url='&YOCTO_DOCS_REF_URL;#required-packages-for-the-host-development-system'>Required Packages for the Host Development System</ulink>"
"<ulink url='&YOCTO_DOCS_REF_URL;#required-packages-for-the-build-host'>Required Packages for the Build Host</ulink>"
section in the Yocto Project Reference Manual are compiled
binaries that, when installed, add functionality to your
Linux distribution.</para>

View File

@@ -3145,12 +3145,6 @@ This check was removed for YP 2.3 release
and <filename><link linkend='var-SITEINFO_BITS'>SITEINFO_BITS</link></filename>
that can be used elsewhere in the metadata.
</para>
<para>
Because the
<link linkend='ref-classes-base'><filename>base</filename></link> class
includes the <filename>siteinfo</filename> class, it is always active.
</para>
</section>
<section id='ref-classes-spdx'>

Some files were not shown because too many files have changed in this diff Show More