mirror of
https://github.com/home-assistant/operating-system.git
synced 2025-07-24 13:36:31 +00:00
Update buildroot 2018.05.1 / u-boot (#150)
* Update buildroot 2018.05.1 / u-boot * Cleanup * Fix bl
This commit is contained in:
parent
bbe4c47574
commit
9ef96373a9
@ -1,409 +0,0 @@
|
||||
From patchwork Wed May 23 20:24:51 2018
|
||||
Content-Type: text/plain; charset="utf-8"
|
||||
MIME-Version: 1.0
|
||||
Content-Transfer-Encoding: 7bit
|
||||
Subject: [U-Boot] mmc: Unirqify bcm2835_sdhost and fix writes
|
||||
X-Patchwork-Submitter: Alexander Graf <agraf@suse.de>
|
||||
X-Patchwork-Id: 919394
|
||||
X-Patchwork-Delegate: agraf@suse.de
|
||||
Message-Id: <20180523202451.68781-1-agraf@suse.de>
|
||||
To: u-boot@lists.denx.de
|
||||
Date: Wed, 23 May 2018 22:24:51 +0200
|
||||
From: Alexander Graf <agraf@suse.de>
|
||||
List-Id: U-Boot discussion <u-boot.lists.denx.de>
|
||||
|
||||
The bcm2835 sdhost driver has a problem with "write multiple" commands.
|
||||
It seems to boil down to the fact that the controller dislikes its FIFO
|
||||
to get drained at the end of a block when a write multiple blocks command
|
||||
is in flight.
|
||||
|
||||
The easy fix is to simply get rid of all the IRQ driven logic and make
|
||||
the driver push as much data into the FIFO as it can. That way we never
|
||||
drain and we never run into the problem.
|
||||
|
||||
Reported-by: Jan Leonhardt <jan@cyberdesigner.net>
|
||||
Signed-off-by: Alexander Graf <agraf@suse.de>
|
||||
---
|
||||
drivers/mmc/bcm2835_sdhost.c | 265 ++++++++-----------------------------------
|
||||
1 file changed, 47 insertions(+), 218 deletions(-)
|
||||
|
||||
diff --git a/drivers/mmc/bcm2835_sdhost.c b/drivers/mmc/bcm2835_sdhost.c
|
||||
index 96428333b0..1ce019af57 100644
|
||||
--- a/drivers/mmc/bcm2835_sdhost.c
|
||||
+++ b/drivers/mmc/bcm2835_sdhost.c
|
||||
@@ -163,7 +163,6 @@ struct bcm2835_host {
|
||||
int clock; /* Current clock speed */
|
||||
unsigned int max_clk; /* Max possible freq */
|
||||
unsigned int blocks; /* remaining PIO blocks */
|
||||
- int irq; /* Device IRQ */
|
||||
|
||||
u32 ns_per_fifo_word;
|
||||
|
||||
@@ -173,14 +172,7 @@ struct bcm2835_host {
|
||||
|
||||
struct mmc_cmd *cmd; /* Current command */
|
||||
struct mmc_data *data; /* Current data request */
|
||||
- bool data_complete:1;/* Data finished before cmd */
|
||||
bool use_busy:1; /* Wait for busy interrupt */
|
||||
- bool wait_data_complete:1; /* Wait for data */
|
||||
-
|
||||
- /* for threaded irq handler */
|
||||
- bool irq_block;
|
||||
- bool irq_busy;
|
||||
- bool irq_data;
|
||||
|
||||
struct udevice *dev;
|
||||
struct mmc *mmc;
|
||||
@@ -240,17 +232,9 @@ static void bcm2835_reset_internal(struct bcm2835_host *host)
|
||||
writel(host->cdiv, host->ioaddr + SDCDIV);
|
||||
}
|
||||
|
||||
-static int bcm2835_finish_command(struct bcm2835_host *host);
|
||||
-
|
||||
-static void bcm2835_wait_transfer_complete(struct bcm2835_host *host)
|
||||
+static int bcm2835_wait_transfer_complete(struct bcm2835_host *host)
|
||||
{
|
||||
- int timediff;
|
||||
- u32 alternate_idle;
|
||||
-
|
||||
- alternate_idle = (host->data->flags & MMC_DATA_READ) ?
|
||||
- SDEDM_FSM_READWAIT : SDEDM_FSM_WRITESTART1;
|
||||
-
|
||||
- timediff = 0;
|
||||
+ int timediff = 0;
|
||||
|
||||
while (1) {
|
||||
u32 edm, fsm;
|
||||
@@ -261,7 +245,10 @@ static void bcm2835_wait_transfer_complete(struct bcm2835_host *host)
|
||||
if ((fsm == SDEDM_FSM_IDENTMODE) ||
|
||||
(fsm == SDEDM_FSM_DATAMODE))
|
||||
break;
|
||||
- if (fsm == alternate_idle) {
|
||||
+
|
||||
+ if ((fsm == SDEDM_FSM_READWAIT) ||
|
||||
+ (fsm == SDEDM_FSM_WRITESTART1) ||
|
||||
+ (fsm == SDEDM_FSM_READDATA)) {
|
||||
writel(edm | SDEDM_FORCE_DATA_MODE,
|
||||
host->ioaddr + SDEDM);
|
||||
break;
|
||||
@@ -273,9 +260,11 @@ static void bcm2835_wait_transfer_complete(struct bcm2835_host *host)
|
||||
"wait_transfer_complete - still waiting after %d retries\n",
|
||||
timediff);
|
||||
bcm2835_dumpregs(host);
|
||||
- return;
|
||||
+ return -ETIMEDOUT;
|
||||
}
|
||||
}
|
||||
+
|
||||
+ return 0;
|
||||
}
|
||||
|
||||
static int bcm2835_transfer_block_pio(struct bcm2835_host *host, bool is_read)
|
||||
@@ -322,6 +311,9 @@ static int bcm2835_transfer_block_pio(struct bcm2835_host *host, bool is_read)
|
||||
fsm_state != SDEDM_FSM_READCRC)) ||
|
||||
(!is_read &&
|
||||
(fsm_state != SDEDM_FSM_WRITEDATA &&
|
||||
+ fsm_state != SDEDM_FSM_WRITEWAIT1 &&
|
||||
+ fsm_state != SDEDM_FSM_WRITEWAIT2 &&
|
||||
+ fsm_state != SDEDM_FSM_WRITECRC &&
|
||||
fsm_state != SDEDM_FSM_WRITESTART1 &&
|
||||
fsm_state != SDEDM_FSM_WRITESTART2))) {
|
||||
hsts = readl(host->ioaddr + SDHSTS);
|
||||
@@ -358,9 +350,8 @@ static int bcm2835_transfer_pio(struct bcm2835_host *host)
|
||||
|
||||
is_read = (host->data->flags & MMC_DATA_READ) != 0;
|
||||
ret = bcm2835_transfer_block_pio(host, is_read);
|
||||
-
|
||||
- if (host->wait_data_complete)
|
||||
- bcm2835_wait_transfer_complete(host);
|
||||
+ if (ret)
|
||||
+ return ret;
|
||||
|
||||
sdhsts = readl(host->ioaddr + SDHSTS);
|
||||
if (sdhsts & (SDHSTS_CRC16_ERROR |
|
||||
@@ -379,21 +370,8 @@ static int bcm2835_transfer_pio(struct bcm2835_host *host)
|
||||
return ret;
|
||||
}
|
||||
|
||||
-static void bcm2835_set_transfer_irqs(struct bcm2835_host *host)
|
||||
-{
|
||||
- u32 all_irqs = SDHCFG_DATA_IRPT_EN | SDHCFG_BLOCK_IRPT_EN |
|
||||
- SDHCFG_BUSY_IRPT_EN;
|
||||
-
|
||||
- host->hcfg = (host->hcfg & ~all_irqs) |
|
||||
- SDHCFG_DATA_IRPT_EN |
|
||||
- SDHCFG_BUSY_IRPT_EN;
|
||||
-
|
||||
- writel(host->hcfg, host->ioaddr + SDHCFG);
|
||||
-}
|
||||
-
|
||||
-static
|
||||
-void bcm2835_prepare_data(struct bcm2835_host *host, struct mmc_cmd *cmd,
|
||||
- struct mmc_data *data)
|
||||
+static void bcm2835_prepare_data(struct bcm2835_host *host, struct mmc_cmd *cmd,
|
||||
+ struct mmc_data *data)
|
||||
{
|
||||
WARN_ON(host->data);
|
||||
|
||||
@@ -401,14 +379,9 @@ void bcm2835_prepare_data(struct bcm2835_host *host, struct mmc_cmd *cmd,
|
||||
if (!data)
|
||||
return;
|
||||
|
||||
- host->wait_data_complete = cmd->cmdidx != MMC_CMD_READ_MULTIPLE_BLOCK;
|
||||
- host->data_complete = false;
|
||||
-
|
||||
/* Use PIO */
|
||||
host->blocks = data->blocks;
|
||||
|
||||
- bcm2835_set_transfer_irqs(host);
|
||||
-
|
||||
writel(data->blocksize, host->ioaddr + SDHBCT);
|
||||
writel(data->blocks, host->ioaddr + SDHBLC);
|
||||
}
|
||||
@@ -483,36 +456,6 @@ static int bcm2835_send_command(struct bcm2835_host *host, struct mmc_cmd *cmd,
|
||||
return 0;
|
||||
}
|
||||
|
||||
-static int bcm2835_transfer_complete(struct bcm2835_host *host)
|
||||
-{
|
||||
- int ret = 0;
|
||||
-
|
||||
- WARN_ON(!host->data_complete);
|
||||
-
|
||||
- host->data = NULL;
|
||||
-
|
||||
- return ret;
|
||||
-}
|
||||
-
|
||||
-static void bcm2835_finish_data(struct bcm2835_host *host)
|
||||
-{
|
||||
- host->hcfg &= ~(SDHCFG_DATA_IRPT_EN | SDHCFG_BLOCK_IRPT_EN);
|
||||
- writel(host->hcfg, host->ioaddr + SDHCFG);
|
||||
-
|
||||
- host->data_complete = true;
|
||||
-
|
||||
- if (host->cmd) {
|
||||
- /* Data managed to finish before the
|
||||
- * command completed. Make sure we do
|
||||
- * things in the proper order.
|
||||
- */
|
||||
- dev_dbg(dev, "Finished early - HSTS %08x\n",
|
||||
- readl(host->ioaddr + SDHSTS));
|
||||
- } else {
|
||||
- bcm2835_transfer_complete(host);
|
||||
- }
|
||||
-}
|
||||
-
|
||||
static int bcm2835_finish_command(struct bcm2835_host *host)
|
||||
{
|
||||
struct mmc_cmd *cmd = host->cmd;
|
||||
@@ -562,8 +505,6 @@ static int bcm2835_finish_command(struct bcm2835_host *host)
|
||||
|
||||
/* Processed actual command. */
|
||||
host->cmd = NULL;
|
||||
- if (host->data && host->data_complete)
|
||||
- ret = bcm2835_transfer_complete(host);
|
||||
|
||||
return ret;
|
||||
}
|
||||
@@ -608,159 +549,44 @@ static int bcm2835_check_data_error(struct bcm2835_host *host, u32 intmask)
|
||||
return ret;
|
||||
}
|
||||
|
||||
-static void bcm2835_busy_irq(struct bcm2835_host *host)
|
||||
-{
|
||||
- if (WARN_ON(!host->cmd)) {
|
||||
- bcm2835_dumpregs(host);
|
||||
- return;
|
||||
- }
|
||||
-
|
||||
- if (WARN_ON(!host->use_busy)) {
|
||||
- bcm2835_dumpregs(host);
|
||||
- return;
|
||||
- }
|
||||
- host->use_busy = false;
|
||||
-
|
||||
- bcm2835_finish_command(host);
|
||||
-}
|
||||
-
|
||||
-static void bcm2835_data_irq(struct bcm2835_host *host, u32 intmask)
|
||||
+static int bcm2835_transmit(struct bcm2835_host *host)
|
||||
{
|
||||
+ u32 intmask = readl(host->ioaddr + SDHSTS);
|
||||
int ret;
|
||||
|
||||
- /*
|
||||
- * There are no dedicated data/space available interrupt
|
||||
- * status bits, so it is necessary to use the single shared
|
||||
- * data/space available FIFO status bits. It is therefore not
|
||||
- * an error to get here when there is no data transfer in
|
||||
- * progress.
|
||||
- */
|
||||
- if (!host->data)
|
||||
- return;
|
||||
-
|
||||
+ /* Check for errors */
|
||||
ret = bcm2835_check_data_error(host, intmask);
|
||||
if (ret)
|
||||
- goto finished;
|
||||
-
|
||||
- if (host->data->flags & MMC_DATA_WRITE) {
|
||||
- /* Use the block interrupt for writes after the first block */
|
||||
- host->hcfg &= ~(SDHCFG_DATA_IRPT_EN);
|
||||
- host->hcfg |= SDHCFG_BLOCK_IRPT_EN;
|
||||
- writel(host->hcfg, host->ioaddr + SDHCFG);
|
||||
- bcm2835_transfer_pio(host);
|
||||
- } else {
|
||||
- bcm2835_transfer_pio(host);
|
||||
- host->blocks--;
|
||||
- if ((host->blocks == 0))
|
||||
- goto finished;
|
||||
- }
|
||||
- return;
|
||||
+ return ret;
|
||||
|
||||
-finished:
|
||||
- host->hcfg &= ~(SDHCFG_DATA_IRPT_EN | SDHCFG_BLOCK_IRPT_EN);
|
||||
- writel(host->hcfg, host->ioaddr + SDHCFG);
|
||||
-}
|
||||
-
|
||||
-static void bcm2835_data_threaded_irq(struct bcm2835_host *host)
|
||||
-{
|
||||
- if (!host->data)
|
||||
- return;
|
||||
- if ((host->blocks == 0))
|
||||
- bcm2835_finish_data(host);
|
||||
-}
|
||||
-
|
||||
-static void bcm2835_block_irq(struct bcm2835_host *host)
|
||||
-{
|
||||
- if (WARN_ON(!host->data)) {
|
||||
- bcm2835_dumpregs(host);
|
||||
- return;
|
||||
- }
|
||||
-
|
||||
- WARN_ON(!host->blocks);
|
||||
- if ((--host->blocks == 0))
|
||||
- bcm2835_finish_data(host);
|
||||
- else
|
||||
- bcm2835_transfer_pio(host);
|
||||
-}
|
||||
+ ret = bcm2835_check_cmd_error(host, intmask);
|
||||
+ if (ret)
|
||||
+ return ret;
|
||||
|
||||
-static irqreturn_t bcm2835_irq(int irq, void *dev_id)
|
||||
-{
|
||||
- irqreturn_t result = IRQ_NONE;
|
||||
- struct bcm2835_host *host = dev_id;
|
||||
- u32 intmask;
|
||||
-
|
||||
- intmask = readl(host->ioaddr + SDHSTS);
|
||||
-
|
||||
- writel(SDHSTS_BUSY_IRPT |
|
||||
- SDHSTS_BLOCK_IRPT |
|
||||
- SDHSTS_SDIO_IRPT |
|
||||
- SDHSTS_DATA_FLAG,
|
||||
- host->ioaddr + SDHSTS);
|
||||
-
|
||||
- if (intmask & SDHSTS_BLOCK_IRPT) {
|
||||
- bcm2835_check_data_error(host, intmask);
|
||||
- host->irq_block = true;
|
||||
- result = IRQ_WAKE_THREAD;
|
||||
+ /* Handle wait for busy end */
|
||||
+ if (host->use_busy && (intmask & SDHSTS_BUSY_IRPT)) {
|
||||
+ writel(SDHSTS_BUSY_IRPT, host->ioaddr + SDHSTS);
|
||||
+ host->use_busy = false;
|
||||
+ bcm2835_finish_command(host);
|
||||
}
|
||||
|
||||
- if (intmask & SDHSTS_BUSY_IRPT) {
|
||||
- if (!bcm2835_check_cmd_error(host, intmask)) {
|
||||
- host->irq_busy = true;
|
||||
- result = IRQ_WAKE_THREAD;
|
||||
- } else {
|
||||
- result = IRQ_HANDLED;
|
||||
+ /* Handle PIO data transfer */
|
||||
+ if (host->data) {
|
||||
+ ret = bcm2835_transfer_pio(host);
|
||||
+ if (ret)
|
||||
+ return ret;
|
||||
+ host->blocks--;
|
||||
+ if (host->blocks == 0) {
|
||||
+ /* Wait for command to complete for real */
|
||||
+ ret = bcm2835_wait_transfer_complete(host);
|
||||
+ if (ret)
|
||||
+ return ret;
|
||||
+ /* Transfer complete */
|
||||
+ host->data = NULL;
|
||||
}
|
||||
}
|
||||
|
||||
- /* There is no true data interrupt status bit, so it is
|
||||
- * necessary to qualify the data flag with the interrupt
|
||||
- * enable bit.
|
||||
- */
|
||||
- if ((intmask & SDHSTS_DATA_FLAG) &&
|
||||
- (host->hcfg & SDHCFG_DATA_IRPT_EN)) {
|
||||
- bcm2835_data_irq(host, intmask);
|
||||
- host->irq_data = true;
|
||||
- result = IRQ_WAKE_THREAD;
|
||||
- }
|
||||
-
|
||||
- return result;
|
||||
-}
|
||||
-
|
||||
-static irqreturn_t bcm2835_threaded_irq(int irq, void *dev_id)
|
||||
-{
|
||||
- struct bcm2835_host *host = dev_id;
|
||||
-
|
||||
- if (host->irq_block) {
|
||||
- host->irq_block = false;
|
||||
- bcm2835_block_irq(host);
|
||||
- }
|
||||
-
|
||||
- if (host->irq_busy) {
|
||||
- host->irq_busy = false;
|
||||
- bcm2835_busy_irq(host);
|
||||
- }
|
||||
-
|
||||
- if (host->irq_data) {
|
||||
- host->irq_data = false;
|
||||
- bcm2835_data_threaded_irq(host);
|
||||
- }
|
||||
-
|
||||
- return IRQ_HANDLED;
|
||||
-}
|
||||
-
|
||||
-static void bcm2835_irq_poll(struct bcm2835_host *host)
|
||||
-{
|
||||
- u32 intmask;
|
||||
-
|
||||
- while (1) {
|
||||
- intmask = readl(host->ioaddr + SDHSTS);
|
||||
- if (intmask & (SDHSTS_BUSY_IRPT | SDHSTS_BLOCK_IRPT |
|
||||
- SDHSTS_SDIO_IRPT | SDHSTS_DATA_FLAG)) {
|
||||
- bcm2835_irq(0, host);
|
||||
- bcm2835_threaded_irq(0, host);
|
||||
- return;
|
||||
- }
|
||||
- }
|
||||
+ return 0;
|
||||
}
|
||||
|
||||
static void bcm2835_set_clock(struct bcm2835_host *host, unsigned int clock)
|
||||
@@ -864,8 +690,11 @@ static int bcm2835_send_cmd(struct udevice *dev, struct mmc_cmd *cmd,
|
||||
}
|
||||
|
||||
/* Wait for completion of busy signal or data transfer */
|
||||
- while (host->use_busy || host->data)
|
||||
- bcm2835_irq_poll(host);
|
||||
+ while (host->use_busy || host->data) {
|
||||
+ ret = bcm2835_transmit(host);
|
||||
+ if (ret)
|
||||
+ break;
|
||||
+ }
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
@ -3,6 +3,7 @@ CONFIG_DISTRO_DEFAULTS=y
|
||||
# CONFIG_EXPERT is not set
|
||||
# CONFIG_DISPLAY_CPUINFO is not set
|
||||
# CONFIG_DISPLAY_BOARDINFO is not set
|
||||
CONFIG_BOOTDELAY=2
|
||||
CONFIG_SYS_PROMPT="HassOS> "
|
||||
# CONFIG_DOS_PARTITION is not set
|
||||
# CONFIG_ISO_PARTITION is not set
|
||||
|
@ -73,11 +73,9 @@ BR2_TARGET_ROOTFS_SQUASHFS4_LZ4=y
|
||||
BR2_TARGET_UBOOT=y
|
||||
BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y
|
||||
BR2_TARGET_UBOOT_CUSTOM_VERSION=y
|
||||
BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2018.05"
|
||||
BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2018.07"
|
||||
BR2_TARGET_UBOOT_BOARD_DEFCONFIG="rpi_0_w"
|
||||
BR2_TARGET_UBOOT_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_HASSOS_PATH)/bootloader/uboot.config $(BR2_EXTERNAL_HASSOS_PATH)/board/raspberrypi/uboot.config"
|
||||
BR2_TARGET_UBOOT_NEEDS_DTC=y
|
||||
BR2_TARGET_UBOOT_NEEDS_OPENSSL=y
|
||||
BR2_TARGET_UBOOT_BOOT_SCRIPT=y
|
||||
BR2_TARGET_UBOOT_BOOT_SCRIPT_SOURCE="$(BR2_EXTERNAL_HASSOS_PATH)/board/raspberrypi/uboot-boot.sh"
|
||||
BR2_PACKAGE_HOST_DOSFSTOOLS=y
|
||||
|
@ -72,11 +72,9 @@ BR2_TARGET_ROOTFS_SQUASHFS4_LZ4=y
|
||||
BR2_TARGET_UBOOT=y
|
||||
BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y
|
||||
BR2_TARGET_UBOOT_CUSTOM_VERSION=y
|
||||
BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2018.05"
|
||||
BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2018.07"
|
||||
BR2_TARGET_UBOOT_BOARD_DEFCONFIG="rpi_2"
|
||||
BR2_TARGET_UBOOT_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_HASSOS_PATH)/bootloader/uboot.config $(BR2_EXTERNAL_HASSOS_PATH)/board/raspberrypi/uboot.config"
|
||||
BR2_TARGET_UBOOT_NEEDS_DTC=y
|
||||
BR2_TARGET_UBOOT_NEEDS_OPENSSL=y
|
||||
BR2_TARGET_UBOOT_BOOT_SCRIPT=y
|
||||
BR2_TARGET_UBOOT_BOOT_SCRIPT_SOURCE="$(BR2_EXTERNAL_HASSOS_PATH)/board/raspberrypi/uboot-boot.sh"
|
||||
BR2_PACKAGE_HOST_DOSFSTOOLS=y
|
||||
|
@ -73,11 +73,9 @@ BR2_TARGET_ROOTFS_SQUASHFS4_LZ4=y
|
||||
BR2_TARGET_UBOOT=y
|
||||
BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y
|
||||
BR2_TARGET_UBOOT_CUSTOM_VERSION=y
|
||||
BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2018.05"
|
||||
BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2018.07"
|
||||
BR2_TARGET_UBOOT_BOARD_DEFCONFIG="rpi_3"
|
||||
BR2_TARGET_UBOOT_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_HASSOS_PATH)/bootloader/uboot.config $(BR2_EXTERNAL_HASSOS_PATH)/board/raspberrypi/uboot.config"
|
||||
BR2_TARGET_UBOOT_NEEDS_DTC=y
|
||||
BR2_TARGET_UBOOT_NEEDS_OPENSSL=y
|
||||
BR2_TARGET_UBOOT_BOOT_SCRIPT=y
|
||||
BR2_TARGET_UBOOT_BOOT_SCRIPT_SOURCE="$(BR2_EXTERNAL_HASSOS_PATH)/board/raspberrypi/rpi3-64/uboot-boot.sh"
|
||||
BR2_PACKAGE_HOST_DOSFSTOOLS=y
|
||||
|
@ -73,11 +73,9 @@ BR2_TARGET_ROOTFS_SQUASHFS4_LZ4=y
|
||||
BR2_TARGET_UBOOT=y
|
||||
BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y
|
||||
BR2_TARGET_UBOOT_CUSTOM_VERSION=y
|
||||
BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2018.05"
|
||||
BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2018.07"
|
||||
BR2_TARGET_UBOOT_BOARD_DEFCONFIG="rpi_3_32b"
|
||||
BR2_TARGET_UBOOT_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_HASSOS_PATH)/bootloader/uboot.config $(BR2_EXTERNAL_HASSOS_PATH)/board/raspberrypi/uboot.config"
|
||||
BR2_TARGET_UBOOT_NEEDS_DTC=y
|
||||
BR2_TARGET_UBOOT_NEEDS_OPENSSL=y
|
||||
BR2_TARGET_UBOOT_BOOT_SCRIPT=y
|
||||
BR2_TARGET_UBOOT_BOOT_SCRIPT_SOURCE="$(BR2_EXTERNAL_HASSOS_PATH)/board/raspberrypi/uboot-boot.sh"
|
||||
BR2_PACKAGE_HOST_DOSFSTOOLS=y
|
||||
|
@ -72,11 +72,9 @@ BR2_TARGET_ROOTFS_SQUASHFS4_LZ4=y
|
||||
BR2_TARGET_UBOOT=y
|
||||
BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y
|
||||
BR2_TARGET_UBOOT_CUSTOM_VERSION=y
|
||||
BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2018.05"
|
||||
BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2018.07"
|
||||
BR2_TARGET_UBOOT_BOARD_DEFCONFIG="rpi"
|
||||
BR2_TARGET_UBOOT_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_HASSOS_PATH)/bootloader/uboot.config $(BR2_EXTERNAL_HASSOS_PATH)/board/raspberrypi/uboot.config"
|
||||
BR2_TARGET_UBOOT_NEEDS_DTC=y
|
||||
BR2_TARGET_UBOOT_NEEDS_OPENSSL=y
|
||||
BR2_TARGET_UBOOT_BOOT_SCRIPT=y
|
||||
BR2_TARGET_UBOOT_BOOT_SCRIPT_SOURCE="$(BR2_EXTERNAL_HASSOS_PATH)/board/raspberrypi/uboot-boot.sh"
|
||||
BR2_PACKAGE_HOST_DOSFSTOOLS=y
|
||||
|
@ -76,8 +76,6 @@ BR2_TARGET_UBOOT_CUSTOM_VERSION=y
|
||||
BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2018.07"
|
||||
BR2_TARGET_UBOOT_BOARD_DEFCONFIG="tinker-rk3288"
|
||||
BR2_TARGET_UBOOT_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_HASSOS_PATH)/bootloader/uboot.config $(BR2_EXTERNAL_HASSOS_PATH)/board/tinker/uboot.config"
|
||||
BR2_TARGET_UBOOT_NEEDS_DTC=y
|
||||
BR2_TARGET_UBOOT_NEEDS_OPENSSL=y
|
||||
BR2_TARGET_UBOOT_FORMAT_DTB_BIN=y
|
||||
BR2_TARGET_UBOOT_FORMAT_DTB_IMG=y
|
||||
BR2_TARGET_UBOOT_SPL=y
|
||||
@ -86,7 +84,6 @@ BR2_TARGET_UBOOT_BOOT_SCRIPT=y
|
||||
BR2_TARGET_UBOOT_BOOT_SCRIPT_SOURCE="$(BR2_EXTERNAL_HASSOS_PATH)/board/tinker/uboot-boot.sh"
|
||||
BR2_PACKAGE_HOST_DOSFSTOOLS=y
|
||||
BR2_PACKAGE_HOST_E2FSPROGS=y
|
||||
BR2_PACKAGE_HOST_GENIMAGE=y
|
||||
BR2_PACKAGE_HOST_GPTFDISK=y
|
||||
BR2_PACKAGE_HOST_MTOOLS=y
|
||||
BR2_PACKAGE_HOST_RAUC=y
|
||||
|
@ -1 +1 @@
|
||||
/dev/disk/by-partlabel/hassos-bootstate 0x00 0x4000
|
||||
/dev/disk/by-partlabel/hassos-bootstate 0x00 0x400000
|
||||
|
@ -13,8 +13,8 @@ BLUETOOTH_RTL8723_SITE_METHOD = local
|
||||
define BLUETOOTH_RTL8723_BUILD_CMDS
|
||||
curl -L -o $(@D)/rtk_hciattach https://raw.githubusercontent.com/armbian/build/dee62df8bb2fe8611fd41ddf02063fa15533298c/packages/bsp/rockchip/rtk_hciattach
|
||||
|
||||
curl -L -o $(@D)/rtl8723b_config.bin https://raw.githubusercontent.com/armbian/firmware/4723bbb3d1ef70b5fbe7d2599c47d078ab125c47/rtl_bt/rtl8723b_config.bin
|
||||
curl -L -o $(@D)/rtl8723b_fw.bin https://raw.githubusercontent.com/armbian/firmware/4723bbb3d1ef70b5fbe7d2599c47d078ab125c47/rtl_bt/rtl8723b_fw.bin
|
||||
curl -L -o $(@D)/rtl8723b_config https://raw.githubusercontent.com/armbian/firmware/4723bbb3d1ef70b5fbe7d2599c47d078ab125c47/rtl_bt/rtl8723b_config.bin
|
||||
curl -L -o $(@D)/rtl8723b_fw https://raw.githubusercontent.com/armbian/firmware/4723bbb3d1ef70b5fbe7d2599c47d078ab125c47/rtl_bt/rtl8723b_fw.bin
|
||||
endef
|
||||
|
||||
define BLUETOOTH_RTL8723_INSTALL_TARGET_CMDS
|
||||
@ -24,7 +24,7 @@ define BLUETOOTH_RTL8723_INSTALL_TARGET_CMDS
|
||||
ln -fs /usr/lib/systemd/system/bluetooth-rtl8723.service $(TARGET_DIR)/etc/systemd/system/hassos-hardware.target.wants/
|
||||
|
||||
$(INSTALL) -d $(TARGET_DIR)/lib/firmware/rtlbt
|
||||
$(INSTALL) -m 0644 $(@D)/*.bin $(TARGET_DIR)/lib/firmware/rtlbt/
|
||||
$(INSTALL) -m 0644 $(@D)/rtl8723b_* $(TARGET_DIR)/lib/firmware/rtlbt/
|
||||
$(INSTALL) -m 0755 $(@D)/rtk_hciattach $(TARGET_DIR)/usr/sbin/
|
||||
endef
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 57051bdfadcd27f405d05716c8d568b69fec575a Mon Sep 17 00:00:00 2001
|
||||
From e22e7b8bf6eca98af102dd27991c089b8f3de65b Mon Sep 17 00:00:00 2001
|
||||
From: Pascal Vizeli <pvizeli@syshack.ch>
|
||||
Date: Sun, 5 Aug 2018 20:43:03 +0000
|
||||
Subject: [PATCH 1/1] CMD: read string from fileinto env
|
||||
@ -7,8 +7,8 @@ Signed-off-by: Pascal Vizeli <pvizeli@syshack.ch>
|
||||
---
|
||||
cmd/Kconfig | 5 +++++
|
||||
cmd/Makefile | 1 +
|
||||
cmd/fileenv.c | 44 ++++++++++++++++++++++++++++++++++++++++++++
|
||||
3 files changed, 50 insertions(+)
|
||||
cmd/fileenv.c | 45 +++++++++++++++++++++++++++++++++++++++++++++
|
||||
3 files changed, 51 insertions(+)
|
||||
create mode 100644 cmd/fileenv.c
|
||||
|
||||
diff --git a/cmd/Kconfig b/cmd/Kconfig
|
||||
@ -41,13 +41,14 @@ index 323f1fd2c77..0d721dc5a72 100644
|
||||
obj-$(CONFIG_CMD_SMC) += smccc.o
|
||||
diff --git a/cmd/fileenv.c b/cmd/fileenv.c
|
||||
new file mode 100644
|
||||
index 00000000000..ea7428723a5
|
||||
index 00000000000..ddfc5dcdbc0
|
||||
--- /dev/null
|
||||
+++ b/cmd/fileenv.c
|
||||
@@ -0,0 +1,44 @@
|
||||
@@ -0,0 +1,45 @@
|
||||
+#include <config.h>
|
||||
+#include <common.h>
|
||||
+#include <command.h>
|
||||
+#include <linux/ctype.h>
|
||||
+
|
||||
+static char *fs_argv[5];
|
||||
+
|
||||
@ -69,14 +70,14 @@ index 00000000000..ea7428723a5
|
||||
+ size_t size = env_get_hex("filesize", 0);
|
||||
+
|
||||
+ // Prepare string
|
||||
+ addr[size +1] = 0x00;
|
||||
+ addr[size] = 0x00;
|
||||
+ char *s = addr;
|
||||
+ while(*s != 0x00) {
|
||||
+ if (*s == 0x0a || *s == 0x0d) {
|
||||
+ *s = 0x00;
|
||||
+ if (isprint(*s)) {
|
||||
+ s++;
|
||||
+ }
|
||||
+ else {
|
||||
+ s++;
|
||||
+ *s = 0x00;
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
|
@ -0,0 +1,35 @@
|
||||
From d57b9c5b5b553b3caead6eb64b816f74c2e523f6 Mon Sep 17 00:00:00 2001
|
||||
From: Pascal Vizeli <pvizeli@syshack.ch>
|
||||
Date: Tue, 7 Aug 2018 08:45:35 +0000
|
||||
Subject: [PATCH 1/1] uboot-tools: Update tools to 2018.07
|
||||
|
||||
Signed-off-by: Pascal Vizeli <pvizeli@syshack.ch>
|
||||
---
|
||||
package/uboot-tools/uboot-tools.hash | 2 +-
|
||||
package/uboot-tools/uboot-tools.mk | 2 +-
|
||||
2 files changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/package/uboot-tools/uboot-tools.hash b/package/uboot-tools/uboot-tools.hash
|
||||
index 788c1696f8..97d0bd0b5f 100644
|
||||
--- a/package/uboot-tools/uboot-tools.hash
|
||||
+++ b/package/uboot-tools/uboot-tools.hash
|
||||
@@ -1,2 +1,2 @@
|
||||
# Locally computed:
|
||||
-sha256 7e7477534409d5368eb1371ffde6820f0f79780a1a1f676161c48442cb303dfd u-boot-2018.03.tar.bz2
|
||||
+sha256 9f10df88bc91b35642e461217f73256bbaeeca9ae2db8db56197ba5e89e1f6d4 u-boot-2018.07.tar.bz2
|
||||
diff --git a/package/uboot-tools/uboot-tools.mk b/package/uboot-tools/uboot-tools.mk
|
||||
index 882576d2d5..f5027d2da3 100644
|
||||
--- a/package/uboot-tools/uboot-tools.mk
|
||||
+++ b/package/uboot-tools/uboot-tools.mk
|
||||
@@ -4,7 +4,7 @@
|
||||
#
|
||||
################################################################################
|
||||
|
||||
-UBOOT_TOOLS_VERSION = 2018.03
|
||||
+UBOOT_TOOLS_VERSION = 2018.07
|
||||
UBOOT_TOOLS_SOURCE = u-boot-$(UBOOT_TOOLS_VERSION).tar.bz2
|
||||
UBOOT_TOOLS_SITE = ftp://ftp.denx.de/pub/u-boot
|
||||
UBOOT_TOOLS_LICENSE = GPL-2.0+
|
||||
--
|
||||
2.17.1
|
||||
|
@ -1,3 +1,35 @@
|
||||
2018.05.1, Released July 20th, 2018
|
||||
|
||||
Important / security related fixes.
|
||||
|
||||
U-Boot: Ensure host version of ncurses is picked up and not
|
||||
host-ncurses built by buildroot, as that otherwise causes
|
||||
widechar/non-widechar conflicts and corrupted menuconfig
|
||||
menus.
|
||||
|
||||
Linux: Enable CONFIG_PERF_EVENTS when perf is enabled.
|
||||
|
||||
Toolchain: ARC tools updated to arc-2018.03.
|
||||
|
||||
pkg-stats: Fix python 3.x compatibility.
|
||||
|
||||
dl-wrapper: Fix support for URIs containing '+', fix
|
||||
no-check-hash for inferred site method.
|
||||
|
||||
Defconfigs: Raspberrypi3: Bump rootfs size, Minnowboard-max:
|
||||
Support ethernet on Turbot variant.
|
||||
|
||||
Updated/fixed packages: audit, bind, btrfs-progs, cifs-utils,
|
||||
clamav, collectd, coreutils, docker-containerd, dos2unix,
|
||||
edid-decode, file, gcc, gdb, gnupg, gnupg2, heimdal, hidapi,
|
||||
imagemagick, libcurl, libgcrypt, libglib2, liblogging,
|
||||
libostree, libressl, libsoup, libv4l, libvncserver, libvorbis,
|
||||
libwebsockets, libxslt, lm-sensors, mariadb, mpg123, ncurses,
|
||||
network-manager, nodejs, patchelf, perl, php-amqp, pinentry,
|
||||
pixiewps, qpdf, qt53d, qt5base, qt5charts, qt5script, redis,
|
||||
systemd, triggerhappy, uboot, wireguard, wireless-regdb,
|
||||
wireshark
|
||||
|
||||
2018.05, Released June 1st, 2018
|
||||
|
||||
Minor fixes.
|
||||
|
@ -87,9 +87,9 @@ all:
|
||||
.PHONY: all
|
||||
|
||||
# Set and export the version string
|
||||
export BR2_VERSION := 2018.05
|
||||
export BR2_VERSION := 2018.05.1
|
||||
# Actual time the release is cut (for reproducible builds)
|
||||
BR2_VERSION_EPOCH = 1527884000
|
||||
BR2_VERSION_EPOCH = 1532040000
|
||||
|
||||
# Save running make version since it's clobbered by the make package
|
||||
RUNNING_MAKE_VERSION := $(MAKE_VERSION)
|
||||
|
@ -21,6 +21,7 @@ CONFIG_SATA_AHCI=y
|
||||
CONFIG_ATA_PIIX=y
|
||||
CONFIG_NETDEVICES=y
|
||||
CONFIG_R8169=y
|
||||
CONFIG_IGB=y
|
||||
CONFIG_INPUT_EVDEV=y
|
||||
CONFIG_SERIAL_8250=y
|
||||
CONFIG_SERIAL_8250_CONSOLE=y
|
||||
|
@ -211,7 +211,15 @@ endif # BR2_TARGET_UBOOT_USE_DEFCONFIG
|
||||
|
||||
UBOOT_KCONFIG_FRAGMENT_FILES = $(call qstrip,$(BR2_TARGET_UBOOT_CONFIG_FRAGMENT_FILES))
|
||||
UBOOT_KCONFIG_EDITORS = menuconfig xconfig gconfig nconfig
|
||||
UBOOT_KCONFIG_OPTS = $(UBOOT_MAKE_OPTS)
|
||||
|
||||
# UBOOT_MAKE_OPTS overrides HOSTCC / HOSTLDFLAGS to allow the build to
|
||||
# find our host-openssl. However, this triggers a bug in the kconfig
|
||||
# build script that causes it to build with /usr/include/ncurses.h
|
||||
# (which is typically wchar) but link with
|
||||
# $(HOST_DIR)/lib/libncurses.so (which is not). We don't actually
|
||||
# need any host-package for kconfig, so remove the HOSTCC/HOSTLDFLAGS
|
||||
# override again.
|
||||
UBOOT_KCONFIG_OPTS = $(UBOOT_MAKE_OPTS) HOSTCC="$(HOSTCC)" HOSTLDFLAGS=""
|
||||
define UBOOT_HELP_CMDS
|
||||
@echo ' uboot-menuconfig - Run U-Boot menuconfig'
|
||||
@echo ' uboot-savedefconfig - Run U-Boot savedefconfig'
|
||||
|
@ -28,6 +28,7 @@ BR2_PACKAGE_HOST_MTOOLS=y
|
||||
# Filesystem / image
|
||||
BR2_TARGET_ROOTFS_EXT2=y
|
||||
BR2_TARGET_ROOTFS_EXT2_4=y
|
||||
BR2_TARGET_ROOTFS_EXT2_SIZE="120M"
|
||||
# BR2_TARGET_ROOTFS_TAR is not set
|
||||
BR2_ROOTFS_POST_BUILD_SCRIPT="board/raspberrypi3/post-build.sh"
|
||||
BR2_ROOTFS_POST_IMAGE_SCRIPT="board/raspberrypi3/post-image.sh"
|
||||
|
@ -13,7 +13,7 @@ BR2_SYSTEM_DHCP="eth0"
|
||||
# Kernel
|
||||
BR2_LINUX_KERNEL=y
|
||||
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
|
||||
BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.14.4"
|
||||
BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.14.47"
|
||||
BR2_LINUX_KERNEL_DEFCONFIG="hsdk"
|
||||
BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="board/synopsys/hsdk/linux.fragment"
|
||||
|
||||
|
@ -46,7 +46,7 @@ built.
|
||||
|
||||
Most of these data can be retrieved from https://metacpan.org/.
|
||||
So, this file and the Config.in can be generated by running
|
||||
the script +supports/scripts/scancpan Foo-Bar+ in the Buildroot directory
|
||||
the script +utils/scancpan Foo-Bar+ in the Buildroot directory
|
||||
(or in a br2-external tree).
|
||||
This script creates a Config.in file and foo-bar.mk file for the
|
||||
requested package, and also recursively for all dependencies specified by
|
||||
|
File diff suppressed because one or more lines are too long
Binary file not shown.
@ -161,8 +161,8 @@ List of Examples
|
||||
|
||||
---------------------------------------------------------------------
|
||||
|
||||
Buildroot 2018.05 manual generated on 2018-06-01 20:24:17 UTC from
|
||||
git revision f3d114a1ef
|
||||
Buildroot 2018.05.1 manual generated on 2018-07-19 22:46:17 UTC from
|
||||
git revision ef26ffddde
|
||||
|
||||
The Buildroot manual is written by the Buildroot developers. It is
|
||||
licensed under the GNU General Public License, version 2. Refer to
|
||||
@ -5096,7 +5096,7 @@ all the Makefile rules that actually allow the package to be built.
|
||||
|
||||
Most of these data can be retrieved from https://metacpan.org/. So,
|
||||
this file and the Config.in can be generated by running the script
|
||||
supports/scripts/scancpan Foo-Bar in the Buildroot directory (or in a
|
||||
utils/scancpan Foo-Bar in the Buildroot directory (or in a
|
||||
br2-external tree). This script creates a Config.in file and
|
||||
foo-bar.mk file for the requested package, and also recursively for
|
||||
all dependencies specified by CPAN. You should still manually edit
|
||||
|
@ -292,6 +292,8 @@ define LINUX_KCONFIG_FIXUP_CMDS
|
||||
$(call KCONFIG_ENABLE_OPT,CONFIG_ENABLE_DEFAULT_TRACERS,$(@D)/.config)
|
||||
$(call KCONFIG_ENABLE_OPT,CONFIG_PERF_EVENTS,$(@D)/.config)
|
||||
$(call KCONFIG_ENABLE_OPT,CONFIG_FUNCTION_TRACER,$(@D)/.config))
|
||||
$(if $(BR2_PACKAGE_LINUX_TOOLS_PERF),
|
||||
$(call KCONFIG_ENABLE_OPT,CONFIG_PERF_EVENTS,$(@D)/.config))
|
||||
$(if $(BR2_PACKAGE_SYSTEMD),
|
||||
$(call KCONFIG_ENABLE_OPT,CONFIG_CGROUPS,$(@D)/.config)
|
||||
$(call KCONFIG_ENABLE_OPT,CONFIG_INOTIFY_USER,$(@D)/.config)
|
||||
|
@ -239,7 +239,7 @@ HOST_LDFLAGS += -L$(HOST_DIR)/lib -Wl,-rpath,$(HOST_DIR)/lib
|
||||
# Exit code chooses option. "$$TMP" is can be used as temporary file and
|
||||
# is automatically cleaned up.
|
||||
try-run = $(shell set -e; \
|
||||
TMP="$$(tempfile)"; \
|
||||
TMP="$$(mktemp)"; \
|
||||
if ($(1)) >/dev/null 2>&1; \
|
||||
then echo "$(2)"; \
|
||||
else echo "$(3)"; \
|
||||
|
@ -51,8 +51,8 @@ define AUDIT_INSTALL_INIT_SYSTEMD
|
||||
endef
|
||||
|
||||
define AUDIT_INSTALL_CLEANUP
|
||||
$(RM) -rf $(TARGET_DIR)/etc/rc.d
|
||||
$(RM) -rf $(TARGET_DIR)/etc/sysconfig
|
||||
$(RM) $(TARGET_DIR)/etc/rc.d/init.d/auditd
|
||||
$(RM) $(TARGET_DIR)/etc/sysconfig/auditd
|
||||
endef
|
||||
AUDIT_POST_INSTALL_TARGET_HOOKS += AUDIT_INSTALL_CLEANUP
|
||||
|
||||
|
@ -1,3 +1,4 @@
|
||||
# Verified from http://ftp.isc.org/isc/bind9/9.11.2-P1/bind-9.11.2-P1.tar.gz.sha256.asc
|
||||
sha256 cec31548832fca3f85d95178d4019b7d702039e8595d4c93914feba337df1212 bind-9.11.2-P1.tar.gz
|
||||
sha256 d3906dfe153e2c48440d3ca1d5319f5e89b4b820cdfc5d0779c23d7ac2b175e9 COPYRIGHT
|
||||
# Verified from https://ftp.isc.org/isc/bind9/9.11.4/bind-9.11.4.tar.gz.asc
|
||||
# with key BE0E9748B718253A28BB89FFF1B11BF05CF02E57
|
||||
sha256 595070b031f869f8939656b5a5d11b121211967f15f6afeafa895df745279617 bind-9.11.4.tar.gz
|
||||
sha256 336f3c40e37a1a13690efb4c63e20908faa4c40498cc02f3579fb67d3a1933a5 COPYRIGHT
|
||||
|
@ -4,7 +4,7 @@
|
||||
#
|
||||
################################################################################
|
||||
|
||||
BIND_VERSION = 9.11.2-P1
|
||||
BIND_VERSION = 9.11.4
|
||||
BIND_SITE = http://ftp.isc.org/isc/bind9/$(BIND_VERSION)
|
||||
# bind does not support parallel builds.
|
||||
BIND_MAKE = $(MAKE1)
|
||||
@ -33,7 +33,7 @@ BIND_CONF_OPTS = \
|
||||
--enable-filter-aaaa
|
||||
|
||||
ifeq ($(BR2_PACKAGE_ZLIB),y)
|
||||
BIND_CONF_OPTS += --with-zlib=$(STAGING_DIR)/usr/include
|
||||
BIND_CONF_OPTS += --with-zlib=$(STAGING_DIR)/usr
|
||||
BIND_DEPENDENCIES += zlib
|
||||
else
|
||||
BIND_CONF_OPTS += --without-zlib
|
||||
@ -61,7 +61,9 @@ BIND_CONF_ENV += \
|
||||
ac_cv_func_EVP_sha512=yes
|
||||
BIND_CONF_OPTS += \
|
||||
--with-openssl=$(STAGING_DIR)/usr LIBS="-lz" \
|
||||
--with-ecdsa=yes
|
||||
--with-ecdsa=yes \
|
||||
--with-eddsa=no \
|
||||
--with-aes=yes
|
||||
# GOST cipher support requires openssl extra engines
|
||||
ifeq ($(BR2_PACKAGE_OPENSSL_ENGINES),y)
|
||||
BIND_CONF_OPTS += --with-gost=yes
|
||||
|
@ -26,7 +26,7 @@ endchoice
|
||||
|
||||
config BR2_BINUTILS_VERSION
|
||||
string
|
||||
default "arc-2018.03-rc2" if BR2_BINUTILS_VERSION_ARC
|
||||
default "arc-2018.03" if BR2_BINUTILS_VERSION_ARC
|
||||
default "2.28.1" if BR2_BINUTILS_VERSION_2_28_X
|
||||
default "2.29.1" if BR2_BINUTILS_VERSION_2_29_X
|
||||
default "2.30" if BR2_BINUTILS_VERSION_2_30_X
|
||||
|
@ -4,4 +4,4 @@ sha512 d748d22306477d60d921078804d21943248c23fca0707aac9b016a352c01c75ca69e8262
|
||||
sha512 e747ea20d8d79fcd21b9d9f6695059caa7189d60f19256da398e34b789fea9a133c32b192e9693b5828d27683739b0198431bf8b3e39fb3b04884cf89d9aa839 binutils-2.30.tar.xz
|
||||
|
||||
# Locally calculated (fetched from Github)
|
||||
sha512 c9d41001bd41d96f1cd78748c1e8df9715aab1158c0a1c9c90a2010e335c357d0d6816202b7fcf7c7d8d4a65e25920b0b35af6a59edd0d29fd9edddd8be95a48 binutils-arc-2018.03-rc2.tar.gz
|
||||
sha512 bea88164ed48733bad63393fe702e12e651efd113aa4f3fe2e253e05c4c1e5da20b5a99333f0b5528df6d32ce806f799211c568e1916845a87999901dde28817 binutils-arc-2018.03.tar.gz
|
||||
|
@ -9,13 +9,13 @@
|
||||
BINUTILS_VERSION = $(call qstrip,$(BR2_BINUTILS_VERSION))
|
||||
ifeq ($(BINUTILS_VERSION),)
|
||||
ifeq ($(BR2_arc),y)
|
||||
BINUTILS_VERSION = arc-2018.03-rc2
|
||||
BINUTILS_VERSION = arc-2018.03
|
||||
else
|
||||
BINUTILS_VERSION = 2.29.1
|
||||
endif
|
||||
endif # BINUTILS_VERSION
|
||||
|
||||
ifeq ($(BINUTILS_VERSION),arc-2018.03-rc2)
|
||||
ifeq ($(BINUTILS_VERSION),arc-2018.03)
|
||||
BINUTILS_SITE = $(call github,foss-for-synopsys-dwc-arc-processors,binutils-gdb,$(BINUTILS_VERSION))
|
||||
BINUTILS_SOURCE = binutils-$(BINUTILS_VERSION).tar.gz
|
||||
BINUTILS_FROM_GIT = y
|
||||
|
@ -41,8 +41,8 @@ index 67fbc48..d9e34be 100644
|
||||
$(LN_S) -f btrfs.static $(DESTDIR)$(bindir)/btrfsck.static
|
||||
+ $(INSTALL) -m755 -d $(DESTDIR)$(libdir)
|
||||
+ $(INSTALL) $(libs_static) $(DESTDIR)$(libdir)
|
||||
+ $(INSTALL) -m755 -d $(DESTDIR)$(incdir)
|
||||
+ $(INSTALL) -m644 $(libbtrfs_headers) $(DESTDIR)$(incdir)
|
||||
+ $(INSTALL) -m755 -d $(DESTDIR)$(incdir)/btrfs
|
||||
+ $(INSTALL) -m644 $(libbtrfs_headers) $(DESTDIR)$(incdir)/btrfs
|
||||
|
||||
$(INSTALLDIRS):
|
||||
@echo "Making install in $(patsubst install-%,%,$@)"
|
||||
|
@ -15,7 +15,7 @@ CIFS_UTILS_DEPENDENCIES = host-pkgconf
|
||||
|
||||
# Let's disable PIE unconditionally. We want PIE to be enabled only by
|
||||
# the global BR2_RELRO_FULL option.
|
||||
CIFS_UTILS_CONF_OPTS = --disable-pie
|
||||
CIFS_UTILS_CONF_OPTS = --disable-pie --disable-man
|
||||
|
||||
ifeq ($(BR2_PACKAGE_KEYUTILS),y)
|
||||
CIFS_UTILS_DEPENDENCIES += keyutils
|
||||
|
@ -1,5 +1,5 @@
|
||||
# Locally calculated
|
||||
sha256 c5c5edaf75a3c53ac0f271148fd6447310bce53f448ec7e6205124a25918f65c clamav-0.100.0.tar.gz
|
||||
sha256 84e026655152247de7237184ee13003701c40be030dd68e0316111049f58a59f clamav-0.100.1.tar.gz
|
||||
sha256 0c4fd2fa9733fc9122503797648710851e4ee6d9e4969dd33fcbd8c63cd2f584 COPYING
|
||||
sha256 d72a145c90918184a05ef65a04c9e6f7466faa59bc1b82c8f6a8ddc7ddcb9bed COPYING.bzip2
|
||||
sha256 dfb818a0d41411c6fb1c193c68b73018ceadd1994bda41ad541cbff292894bc6 COPYING.file
|
||||
|
@ -4,7 +4,7 @@
|
||||
#
|
||||
################################################################################
|
||||
|
||||
CLAMAV_VERSION = 0.100.0
|
||||
CLAMAV_VERSION = 0.100.1
|
||||
CLAMAV_SITE = https://www.clamav.net/downloads/production
|
||||
CLAMAV_LICENSE = GPL-2.0
|
||||
CLAMAV_LICENSE_FILES = COPYING COPYING.bzip2 COPYING.file COPYING.getopt \
|
||||
|
@ -1,2 +1,6 @@
|
||||
# From https://collectd.org/files/SHA256SUM
|
||||
sha256 7edd3643c0842215553b2421d5456f4e9a8a58b07e216b40a7e8e91026d8e501 collectd-5.7.1.tar.bz2
|
||||
|
||||
# Hash for license files
|
||||
sha256 ed0409b2b1c30566dab5fcdaf46ee70e140c99788e22f0267645a9357b476ae4 COPYING
|
||||
sha256 f18a0811fa0e220ccbc42f661545e77f0388631e209585ed582a1c693029c6aa libltdl/COPYING.LIB
|
||||
|
@ -9,8 +9,8 @@ COLLECTD_SITE = http://collectd.org/files
|
||||
COLLECTD_SOURCE = collectd-$(COLLECTD_VERSION).tar.bz2
|
||||
COLLECTD_CONF_ENV = ac_cv_lib_yajl_yajl_alloc=yes
|
||||
COLLECTD_INSTALL_STAGING = YES
|
||||
COLLECTD_LICENSE = GPL-2.0, LGPL-2.1
|
||||
COLLECTD_LICENSE_FILES = COPYING
|
||||
COLLECTD_LICENSE = MIT (daemon, plugins), GPL-2.0 (plugins), LGPL-2.1 (plugins)
|
||||
COLLECTD_LICENSE_FILES = COPYING libltdl/COPYING.LIB
|
||||
|
||||
# These require unmet dependencies, are fringe, pointless or deprecated
|
||||
COLLECTD_PLUGINS_DISABLE = \
|
||||
|
@ -120,7 +120,8 @@ define COREUTILS_CLEANUP
|
||||
# link for archaic shells
|
||||
ln -fs test $(TARGET_DIR)/usr/bin/[
|
||||
# gnu thinks chroot is in bin, debian thinks it's in sbin
|
||||
mv -f $(TARGET_DIR)/usr/bin/chroot $(TARGET_DIR)/usr/sbin/chroot
|
||||
rm -f $(TARGET_DIR)/usr/bin/chroot
|
||||
ln -sf ../bin/coreutils $(TARGET_DIR)/usr/sbin/chroot
|
||||
endef
|
||||
|
||||
COREUTILS_POST_INSTALL_TARGET_HOOKS += COREUTILS_CLEANUP
|
||||
|
@ -18,6 +18,7 @@ define DOCKER_CONTAINERD_INSTALL_SYMLINKS
|
||||
ln -fs runc $(TARGET_DIR)/usr/bin/docker-runc
|
||||
ln -fs containerd $(TARGET_DIR)/usr/bin/docker-containerd
|
||||
ln -fs containerd-shim $(TARGET_DIR)/usr/bin/docker-containerd-shim
|
||||
ln -fs containerd $(TARGET_DIR)/usr/bin/docker-containerd
|
||||
endef
|
||||
|
||||
DOCKER_CONTAINERD_POST_INSTALL_TARGET_HOOKS += DOCKER_CONTAINERD_INSTALL_SYMLINKS
|
||||
|
@ -24,6 +24,10 @@ ifeq ($(BR2_USE_WCHAR),)
|
||||
DOS2UNIX_MAKE_OPTS += UCS=
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_STATIC_LIBS),y)
|
||||
DOS2UNIX_MAKE_OPTS += LDFLAGS_USER=-static
|
||||
endif
|
||||
|
||||
define DOS2UNIX_BUILD_CMDS
|
||||
$(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D) $(DOS2UNIX_MAKE_OPTS)
|
||||
endef
|
||||
|
@ -3,4 +3,4 @@ config BR2_PACKAGE_EDID_DECODE
|
||||
help
|
||||
Decode EDID data in human-readable format.
|
||||
|
||||
http://cgit.freedesktop.org/xorg/app/edid-decode/
|
||||
https://git.linuxtv.org/edid-decode.git/
|
||||
|
@ -5,7 +5,7 @@
|
||||
################################################################################
|
||||
|
||||
EDID_DECODE_VERSION = f56f329ed23a25d002352dedba1e8f092a47286f
|
||||
EDID_DECODE_SITE = git://anongit.freedesktop.org/git/xorg/app/edid-decode.git
|
||||
EDID_DECODE_SITE = git://linuxtv.org/edid-decode.git
|
||||
EDID_DECODE_LICENSE = MIT
|
||||
EDID_DECODE_LICENSE_FILES = edid-decode.c
|
||||
|
||||
|
@ -0,0 +1,30 @@
|
||||
From a642587a9c9e2dd7feacdf513c3643ce26ad3c22 Mon Sep 17 00:00:00 2001
|
||||
From: Christos Zoulas <christos@zoulas.com>
|
||||
Date: Sat, 9 Jun 2018 16:00:06 +0000
|
||||
Subject: [PATCH] Avoid reading past the end of buffer (Rui Reis)
|
||||
|
||||
[baruch: drop file version string update hunk]
|
||||
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
|
||||
---
|
||||
Upstream status: commit a642587a9c9 in github mirror
|
||||
|
||||
src/readelf.c | 5 +++--
|
||||
1 file changed, 3 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/src/readelf.c b/src/readelf.c
|
||||
index 79c83f9f5048..1f41b46113c3 100644
|
||||
--- a/src/readelf.c
|
||||
+++ b/src/readelf.c
|
||||
@@ -842,7 +842,8 @@ do_core_note(struct magic_set *ms, unsigned char *nbuf, uint32_t type,
|
||||
|
||||
cname = (unsigned char *)
|
||||
&nbuf[doff + prpsoffsets(i)];
|
||||
- for (cp = cname; *cp && isprint(*cp); cp++)
|
||||
+ for (cp = cname; cp < nbuf + size && *cp
|
||||
+ && isprint(*cp); cp++)
|
||||
continue;
|
||||
/*
|
||||
* Linux apparently appends a space at the end
|
||||
--
|
||||
2.17.1
|
||||
|
@ -1,2 +1,5 @@
|
||||
# Locally calculated
|
||||
sha256 8639dc4d1b21e232285cd483604afc4a6ee810710e00e579dbe9591681722b50 file-5.32.tar.gz
|
||||
sha256 1c52c8c3d271cd898d5511c36a68059cda94036111ab293f01f83c3525b737c6 file-5.33.tar.gz
|
||||
sha256 3c0ad13c36f891a9b4f951e59eb2fc108065a46f849697cc6fd3cdb41cc23a3d COPYING
|
||||
sha256 d98ee4d8d95e7d021a5dfc41f137ecc3b624a7b98e8bd793130202d12a21ed57 src/mygetopt.h
|
||||
sha256 85e358d575ad4ac5b38b623a25b24246ccff3c7e680d930c0a9ff5228fe434b6 src/vasprintf.c
|
||||
|
@ -4,7 +4,7 @@
|
||||
#
|
||||
################################################################################
|
||||
|
||||
FILE_VERSION = 5.32
|
||||
FILE_VERSION = 5.33
|
||||
FILE_SITE = ftp://ftp.astron.com/pub/file
|
||||
FILE_DEPENDENCIES = host-file zlib
|
||||
HOST_FILE_DEPENDENCIES = host-zlib
|
||||
@ -13,5 +13,12 @@ FILE_INSTALL_STAGING = YES
|
||||
FILE_LICENSE = BSD-2-Clause, BSD-4-Clause (one file), BSD-3-Clause (one file)
|
||||
FILE_LICENSE_FILES = COPYING src/mygetopt.h src/vasprintf.c
|
||||
|
||||
ifeq ($(BR2_PACKAGE_LIBSECCOMP),y)
|
||||
FILE_CONF_OPTS += --enable-libseccomp
|
||||
FILE_DEPENDENCIES += libseccomp
|
||||
else
|
||||
FILE_CONF_OPTS += --disable-libseccomp
|
||||
endif
|
||||
|
||||
$(eval $(autotools-package))
|
||||
$(eval $(host-autotools-package))
|
||||
|
101
buildroot/package/gcc/6.4.0/871-xtensa-fix-PR-target-65416.patch
Normal file
101
buildroot/package/gcc/6.4.0/871-xtensa-fix-PR-target-65416.patch
Normal file
@ -0,0 +1,101 @@
|
||||
From 87fda0741d210727672cba5e54a37a189e8ac04e Mon Sep 17 00:00:00 2001
|
||||
From: Max Filippov <jcmvbkbc@gmail.com>
|
||||
Date: Sun, 17 Jun 2018 21:18:39 -0700
|
||||
Subject: [PATCH] xtensa: fix PR target/65416
|
||||
|
||||
The issue is caused by reordering of stack pointer update after stack
|
||||
space allocation with instructions that write to the allocated stack
|
||||
space. In windowed ABI register spill area for the previous call frame
|
||||
is located just below the stack pointer and may be reloaded back into
|
||||
the register file on movsp.
|
||||
Implement allocate_stack pattern for windowed ABI configuration and
|
||||
insert an instruction that prevents reordering of frame memory access
|
||||
and stack pointer update.
|
||||
|
||||
gcc/
|
||||
2018-06-19 Max Filippov <jcmvbkbc@gmail.com>
|
||||
|
||||
* config/xtensa/xtensa.md (UNSPEC_FRAME_BLOCKAGE): New unspec
|
||||
constant.
|
||||
(allocate_stack, frame_blockage, *frame_blockage): New patterns.
|
||||
|
||||
Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
|
||||
Backported from: r261755
|
||||
---
|
||||
gcc/config/xtensa/xtensa.md | 46 +++++++++++++++++++++++++++++++++++++++++++++
|
||||
1 file changed, 46 insertions(+)
|
||||
|
||||
diff --git a/gcc/config/xtensa/xtensa.md b/gcc/config/xtensa/xtensa.md
|
||||
index 84967dbedc08..209f839cfb0f 100644
|
||||
--- a/gcc/config/xtensa/xtensa.md
|
||||
+++ b/gcc/config/xtensa/xtensa.md
|
||||
@@ -38,6 +38,7 @@
|
||||
(UNSPEC_MEMW 11)
|
||||
(UNSPEC_LSETUP_START 12)
|
||||
(UNSPEC_LSETUP_END 13)
|
||||
+ (UNSPEC_FRAME_BLOCKAGE 14)
|
||||
|
||||
(UNSPECV_SET_FP 1)
|
||||
(UNSPECV_ENTRY 2)
|
||||
@@ -1676,6 +1677,32 @@
|
||||
|
||||
;; Miscellaneous instructions.
|
||||
|
||||
+;; In windowed ABI stack pointer adjustment must happen before any access
|
||||
+;; to the space allocated on stack is allowed, otherwise register spill
|
||||
+;; area may be clobbered. That's what frame blockage is supposed to enforce.
|
||||
+
|
||||
+(define_expand "allocate_stack"
|
||||
+ [(set (match_operand 0 "nonimmed_operand")
|
||||
+ (minus (reg A1_REG) (match_operand 1 "add_operand")))
|
||||
+ (set (reg A1_REG)
|
||||
+ (minus (reg A1_REG) (match_dup 1)))]
|
||||
+ "TARGET_WINDOWED_ABI"
|
||||
+{
|
||||
+ if (CONST_INT_P (operands[1]))
|
||||
+ {
|
||||
+ rtx neg_op0 = GEN_INT (-INTVAL (operands[1]));
|
||||
+ emit_insn (gen_addsi3 (stack_pointer_rtx, stack_pointer_rtx, neg_op0));
|
||||
+ }
|
||||
+ else
|
||||
+ {
|
||||
+ emit_insn (gen_subsi3 (stack_pointer_rtx, stack_pointer_rtx,
|
||||
+ operands[1]));
|
||||
+ }
|
||||
+ emit_move_insn (operands[0], virtual_stack_dynamic_rtx);
|
||||
+ emit_insn (gen_frame_blockage ());
|
||||
+ DONE;
|
||||
+})
|
||||
+
|
||||
(define_expand "prologue"
|
||||
[(const_int 0)]
|
||||
""
|
||||
@@ -1767,6 +1794,25 @@
|
||||
[(set_attr "length" "0")
|
||||
(set_attr "type" "nop")])
|
||||
|
||||
+;; Do not schedule instructions accessing memory before this point.
|
||||
+
|
||||
+(define_expand "frame_blockage"
|
||||
+ [(set (match_dup 0)
|
||||
+ (unspec:BLK [(match_dup 1)] UNSPEC_FRAME_BLOCKAGE))]
|
||||
+ ""
|
||||
+{
|
||||
+ operands[0] = gen_rtx_MEM (BLKmode, gen_rtx_SCRATCH (Pmode));
|
||||
+ MEM_VOLATILE_P (operands[0]) = 1;
|
||||
+ operands[1] = stack_pointer_rtx;
|
||||
+})
|
||||
+
|
||||
+(define_insn "*frame_blockage"
|
||||
+ [(set (match_operand:BLK 0 "" "")
|
||||
+ (unspec:BLK [(match_operand:SI 1 "" "")] UNSPEC_FRAME_BLOCKAGE))]
|
||||
+ ""
|
||||
+ ""
|
||||
+ [(set_attr "length" "0")])
|
||||
+
|
||||
(define_insn "trap"
|
||||
[(trap_if (const_int 1) (const_int 0))]
|
||||
""
|
||||
--
|
||||
2.11.0
|
||||
|
@ -0,0 +1,101 @@
|
||||
From 87fda0741d210727672cba5e54a37a189e8ac04e Mon Sep 17 00:00:00 2001
|
||||
From: Max Filippov <jcmvbkbc@gmail.com>
|
||||
Date: Sun, 17 Jun 2018 21:18:39 -0700
|
||||
Subject: [PATCH] xtensa: fix PR target/65416
|
||||
|
||||
The issue is caused by reordering of stack pointer update after stack
|
||||
space allocation with instructions that write to the allocated stack
|
||||
space. In windowed ABI register spill area for the previous call frame
|
||||
is located just below the stack pointer and may be reloaded back into
|
||||
the register file on movsp.
|
||||
Implement allocate_stack pattern for windowed ABI configuration and
|
||||
insert an instruction that prevents reordering of frame memory access
|
||||
and stack pointer update.
|
||||
|
||||
gcc/
|
||||
2018-06-19 Max Filippov <jcmvbkbc@gmail.com>
|
||||
|
||||
* config/xtensa/xtensa.md (UNSPEC_FRAME_BLOCKAGE): New unspec
|
||||
constant.
|
||||
(allocate_stack, frame_blockage, *frame_blockage): New patterns.
|
||||
|
||||
Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
|
||||
Backported from: r261755
|
||||
---
|
||||
gcc/config/xtensa/xtensa.md | 46 +++++++++++++++++++++++++++++++++++++++++++++
|
||||
1 file changed, 46 insertions(+)
|
||||
|
||||
diff --git a/gcc/config/xtensa/xtensa.md b/gcc/config/xtensa/xtensa.md
|
||||
index 84967dbedc08..209f839cfb0f 100644
|
||||
--- a/gcc/config/xtensa/xtensa.md
|
||||
+++ b/gcc/config/xtensa/xtensa.md
|
||||
@@ -38,6 +38,7 @@
|
||||
(UNSPEC_MEMW 11)
|
||||
(UNSPEC_LSETUP_START 12)
|
||||
(UNSPEC_LSETUP_END 13)
|
||||
+ (UNSPEC_FRAME_BLOCKAGE 14)
|
||||
|
||||
(UNSPECV_SET_FP 1)
|
||||
(UNSPECV_ENTRY 2)
|
||||
@@ -1676,6 +1677,32 @@
|
||||
|
||||
;; Miscellaneous instructions.
|
||||
|
||||
+;; In windowed ABI stack pointer adjustment must happen before any access
|
||||
+;; to the space allocated on stack is allowed, otherwise register spill
|
||||
+;; area may be clobbered. That's what frame blockage is supposed to enforce.
|
||||
+
|
||||
+(define_expand "allocate_stack"
|
||||
+ [(set (match_operand 0 "nonimmed_operand")
|
||||
+ (minus (reg A1_REG) (match_operand 1 "add_operand")))
|
||||
+ (set (reg A1_REG)
|
||||
+ (minus (reg A1_REG) (match_dup 1)))]
|
||||
+ "TARGET_WINDOWED_ABI"
|
||||
+{
|
||||
+ if (CONST_INT_P (operands[1]))
|
||||
+ {
|
||||
+ rtx neg_op0 = GEN_INT (-INTVAL (operands[1]));
|
||||
+ emit_insn (gen_addsi3 (stack_pointer_rtx, stack_pointer_rtx, neg_op0));
|
||||
+ }
|
||||
+ else
|
||||
+ {
|
||||
+ emit_insn (gen_subsi3 (stack_pointer_rtx, stack_pointer_rtx,
|
||||
+ operands[1]));
|
||||
+ }
|
||||
+ emit_move_insn (operands[0], virtual_stack_dynamic_rtx);
|
||||
+ emit_insn (gen_frame_blockage ());
|
||||
+ DONE;
|
||||
+})
|
||||
+
|
||||
(define_expand "prologue"
|
||||
[(const_int 0)]
|
||||
""
|
||||
@@ -1767,6 +1794,25 @@
|
||||
[(set_attr "length" "0")
|
||||
(set_attr "type" "nop")])
|
||||
|
||||
+;; Do not schedule instructions accessing memory before this point.
|
||||
+
|
||||
+(define_expand "frame_blockage"
|
||||
+ [(set (match_dup 0)
|
||||
+ (unspec:BLK [(match_dup 1)] UNSPEC_FRAME_BLOCKAGE))]
|
||||
+ ""
|
||||
+{
|
||||
+ operands[0] = gen_rtx_MEM (BLKmode, gen_rtx_SCRATCH (Pmode));
|
||||
+ MEM_VOLATILE_P (operands[0]) = 1;
|
||||
+ operands[1] = stack_pointer_rtx;
|
||||
+})
|
||||
+
|
||||
+(define_insn "*frame_blockage"
|
||||
+ [(set (match_operand:BLK 0 "" "")
|
||||
+ (unspec:BLK [(match_operand:SI 1 "" "")] UNSPEC_FRAME_BLOCKAGE))]
|
||||
+ ""
|
||||
+ ""
|
||||
+ [(set_attr "length" "0")])
|
||||
+
|
||||
(define_insn "trap"
|
||||
[(trap_if (const_int 1) (const_int 0))]
|
||||
""
|
||||
--
|
||||
2.11.0
|
||||
|
@ -0,0 +1,324 @@
|
||||
From 1a259ac3e39bf87e6e6a5eface8b0ebc6b2a0dfe Mon Sep 17 00:00:00 2001
|
||||
From: ktkachov <ktkachov@138bc75d-0d04-0410-961f-82ee72b054a4>
|
||||
Date: Tue, 5 Jun 2018 09:50:16 +0000
|
||||
Subject: [PATCH] [arm] PR target/81497: Fix arm_acle.h for C++
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=utf-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
When trying to compile something with arm_acle.h using G++ we get a number of nasty errors:
|
||||
arm_acle.h:48:49: error: invalid conversion from ‘const void*’ to ‘const int*’ [-fpermissive]
|
||||
return __builtin_arm_ldc (__coproc, __CRd, __p);
|
||||
|
||||
This is because the intrinsics that are supposed to be void return the "result" of their builtin,
|
||||
which is void. C lets that slide but C++ complains.
|
||||
|
||||
After fixing that we run into further errors:
|
||||
arm_acle.h:48:46: error: invalid conversion from 'const void*' to 'const int*' [-fpermissive]
|
||||
return __builtin_arm_ldc (__coproc, __CRd, __p);
|
||||
^~~
|
||||
Because the pointer arguments in these intrinsics are void pointers but the builtin
|
||||
expects int pointers. So this patch introduces new qualifiers for void pointers and their
|
||||
const-qualified versions and uses that in the specification of these intrinsics.
|
||||
|
||||
This gives us the opportunity of creating an arm subdirectory in g++.dg and inaugurates it
|
||||
with the first arm-specific C++ tests (in that directory).
|
||||
|
||||
|
||||
PR target/81497
|
||||
* config/arm/arm-builtins.c (arm_type_qualifiers): Add
|
||||
qualifier_void_pointer and qualifier_const_void_pointer.
|
||||
(arm_ldc_qualifiers, arm_stc_qualifiers): Use the above.
|
||||
(arm_init_builtins): Handle the above.
|
||||
* config/arm/arm_acle.h (__arm_cdp, __arm_ldc, __arm_ldcl, __arm_stc,
|
||||
__arm_stcl, __arm_mcr, __arm_cdp2, __arm_ldc2, __arm_ldcl2, __arm_stc2,
|
||||
__arm_stcl2,__arm_mcr2, __arm_mcrr, __arm_mcrr2): Remove return for
|
||||
void intrinsics.
|
||||
|
||||
* g++.target/arm/arm.exp: New file.
|
||||
* g++.target/arm/pr81497.C: Likewise.
|
||||
|
||||
|
||||
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@261191 138bc75d-0d04-0410-961f-82ee72b054a4
|
||||
Upstream-Status: Merged (gcc-8-branch)
|
||||
Signed-off-by: Gaël PORTAY <gael.portay@savoirfairelinux.com>
|
||||
[gportay: drop gcc/{,testsuite/}ChangeLog changes]
|
||||
---
|
||||
gcc/config/arm/arm-builtins.c | 42 +++++++++++++---------
|
||||
gcc/config/arm/arm_acle.h | 28 +++++++--------
|
||||
gcc/testsuite/g++.target/arm/arm.exp | 50 ++++++++++++++++++++++++++
|
||||
gcc/testsuite/g++.target/arm/pr81497.C | 9 +++++
|
||||
4 files changed, 99 insertions(+), 30 deletions(-)
|
||||
create mode 100644 gcc/testsuite/g++.target/arm/arm.exp
|
||||
create mode 100644 gcc/testsuite/g++.target/arm/pr81497.C
|
||||
|
||||
diff --git a/gcc/config/arm/arm-builtins.c b/gcc/config/arm/arm-builtins.c
|
||||
index 7fde7a04672..183a7b907f6 100644
|
||||
--- a/gcc/config/arm/arm-builtins.c
|
||||
+++ b/gcc/config/arm/arm-builtins.c
|
||||
@@ -78,7 +78,11 @@ enum arm_type_qualifiers
|
||||
/* Lane indices - must be within range of previous argument = a vector. */
|
||||
qualifier_lane_index = 0x200,
|
||||
/* Lane indices for single lane structure loads and stores. */
|
||||
- qualifier_struct_load_store_lane_index = 0x400
|
||||
+ qualifier_struct_load_store_lane_index = 0x400,
|
||||
+ /* A void pointer. */
|
||||
+ qualifier_void_pointer = 0x800,
|
||||
+ /* A const void pointer. */
|
||||
+ qualifier_const_void_pointer = 0x802
|
||||
};
|
||||
|
||||
/* The qualifier_internal allows generation of a unary builtin from
|
||||
@@ -202,7 +206,7 @@ arm_cdp_qualifiers[SIMD_MAX_BUILTIN_ARGS]
|
||||
static enum arm_type_qualifiers
|
||||
arm_ldc_qualifiers[SIMD_MAX_BUILTIN_ARGS]
|
||||
= { qualifier_void, qualifier_unsigned_immediate,
|
||||
- qualifier_unsigned_immediate, qualifier_const_pointer };
|
||||
+ qualifier_unsigned_immediate, qualifier_const_void_pointer };
|
||||
#define LDC_QUALIFIERS \
|
||||
(arm_ldc_qualifiers)
|
||||
|
||||
@@ -210,7 +214,7 @@ arm_ldc_qualifiers[SIMD_MAX_BUILTIN_ARGS]
|
||||
static enum arm_type_qualifiers
|
||||
arm_stc_qualifiers[SIMD_MAX_BUILTIN_ARGS]
|
||||
= { qualifier_void, qualifier_unsigned_immediate,
|
||||
- qualifier_unsigned_immediate, qualifier_pointer };
|
||||
+ qualifier_unsigned_immediate, qualifier_void_pointer };
|
||||
#define STC_QUALIFIERS \
|
||||
(arm_stc_qualifiers)
|
||||
|
||||
@@ -1095,19 +1099,25 @@ arm_init_builtin (unsigned int fcode, arm_builtin_datum *d,
|
||||
if (qualifiers & qualifier_pointer && VECTOR_MODE_P (op_mode))
|
||||
op_mode = GET_MODE_INNER (op_mode);
|
||||
|
||||
- eltype = arm_simd_builtin_type
|
||||
- (op_mode,
|
||||
- (qualifiers & qualifier_unsigned) != 0,
|
||||
- (qualifiers & qualifier_poly) != 0);
|
||||
- gcc_assert (eltype != NULL);
|
||||
-
|
||||
- /* Add qualifiers. */
|
||||
- if (qualifiers & qualifier_const)
|
||||
- eltype = build_qualified_type (eltype, TYPE_QUAL_CONST);
|
||||
-
|
||||
- if (qualifiers & qualifier_pointer)
|
||||
- eltype = build_pointer_type (eltype);
|
||||
-
|
||||
+ /* For void pointers we already have nodes constructed by the midend. */
|
||||
+ if (qualifiers & qualifier_void_pointer)
|
||||
+ eltype = qualifiers & qualifier_const
|
||||
+ ? const_ptr_type_node : ptr_type_node;
|
||||
+ else
|
||||
+ {
|
||||
+ eltype
|
||||
+ = arm_simd_builtin_type (op_mode,
|
||||
+ (qualifiers & qualifier_unsigned) != 0,
|
||||
+ (qualifiers & qualifier_poly) != 0);
|
||||
+ gcc_assert (eltype != NULL);
|
||||
+
|
||||
+ /* Add qualifiers. */
|
||||
+ if (qualifiers & qualifier_const)
|
||||
+ eltype = build_qualified_type (eltype, TYPE_QUAL_CONST);
|
||||
+
|
||||
+ if (qualifiers & qualifier_pointer)
|
||||
+ eltype = build_pointer_type (eltype);
|
||||
+ }
|
||||
/* If we have reached arg_num == 0, we are at a non-void
|
||||
return type. Otherwise, we are still processing
|
||||
arguments. */
|
||||
diff --git a/gcc/config/arm/arm_acle.h b/gcc/config/arm/arm_acle.h
|
||||
index 9a2f0ba30dc..c0f6ea2d156 100644
|
||||
--- a/gcc/config/arm/arm_acle.h
|
||||
+++ b/gcc/config/arm/arm_acle.h
|
||||
@@ -38,35 +38,35 @@ __arm_cdp (const unsigned int __coproc, const unsigned int __opc1,
|
||||
const unsigned int __CRd, const unsigned int __CRn,
|
||||
const unsigned int __CRm, const unsigned int __opc2)
|
||||
{
|
||||
- return __builtin_arm_cdp (__coproc, __opc1, __CRd, __CRn, __CRm, __opc2);
|
||||
+ __builtin_arm_cdp (__coproc, __opc1, __CRd, __CRn, __CRm, __opc2);
|
||||
}
|
||||
|
||||
__extension__ static __inline void __attribute__ ((__always_inline__))
|
||||
__arm_ldc (const unsigned int __coproc, const unsigned int __CRd,
|
||||
const void * __p)
|
||||
{
|
||||
- return __builtin_arm_ldc (__coproc, __CRd, __p);
|
||||
+ __builtin_arm_ldc (__coproc, __CRd, __p);
|
||||
}
|
||||
|
||||
__extension__ static __inline void __attribute__ ((__always_inline__))
|
||||
__arm_ldcl (const unsigned int __coproc, const unsigned int __CRd,
|
||||
const void * __p)
|
||||
{
|
||||
- return __builtin_arm_ldcl (__coproc, __CRd, __p);
|
||||
+ __builtin_arm_ldcl (__coproc, __CRd, __p);
|
||||
}
|
||||
|
||||
__extension__ static __inline void __attribute__ ((__always_inline__))
|
||||
__arm_stc (const unsigned int __coproc, const unsigned int __CRd,
|
||||
void * __p)
|
||||
{
|
||||
- return __builtin_arm_stc (__coproc, __CRd, __p);
|
||||
+ __builtin_arm_stc (__coproc, __CRd, __p);
|
||||
}
|
||||
|
||||
__extension__ static __inline void __attribute__ ((__always_inline__))
|
||||
__arm_stcl (const unsigned int __coproc, const unsigned int __CRd,
|
||||
void * __p)
|
||||
{
|
||||
- return __builtin_arm_stcl (__coproc, __CRd, __p);
|
||||
+ __builtin_arm_stcl (__coproc, __CRd, __p);
|
||||
}
|
||||
|
||||
__extension__ static __inline void __attribute__ ((__always_inline__))
|
||||
@@ -74,7 +74,7 @@ __arm_mcr (const unsigned int __coproc, const unsigned int __opc1,
|
||||
uint32_t __value, const unsigned int __CRn, const unsigned int __CRm,
|
||||
const unsigned int __opc2)
|
||||
{
|
||||
- return __builtin_arm_mcr (__coproc, __opc1, __value, __CRn, __CRm, __opc2);
|
||||
+ __builtin_arm_mcr (__coproc, __opc1, __value, __CRn, __CRm, __opc2);
|
||||
}
|
||||
|
||||
__extension__ static __inline uint32_t __attribute__ ((__always_inline__))
|
||||
@@ -90,35 +90,35 @@ __arm_cdp2 (const unsigned int __coproc, const unsigned int __opc1,
|
||||
const unsigned int __CRd, const unsigned int __CRn,
|
||||
const unsigned int __CRm, const unsigned int __opc2)
|
||||
{
|
||||
- return __builtin_arm_cdp2 (__coproc, __opc1, __CRd, __CRn, __CRm, __opc2);
|
||||
+ __builtin_arm_cdp2 (__coproc, __opc1, __CRd, __CRn, __CRm, __opc2);
|
||||
}
|
||||
|
||||
__extension__ static __inline void __attribute__ ((__always_inline__))
|
||||
__arm_ldc2 (const unsigned int __coproc, const unsigned int __CRd,
|
||||
const void * __p)
|
||||
{
|
||||
- return __builtin_arm_ldc2 (__coproc, __CRd, __p);
|
||||
+ __builtin_arm_ldc2 (__coproc, __CRd, __p);
|
||||
}
|
||||
|
||||
__extension__ static __inline void __attribute__ ((__always_inline__))
|
||||
__arm_ldc2l (const unsigned int __coproc, const unsigned int __CRd,
|
||||
const void * __p)
|
||||
{
|
||||
- return __builtin_arm_ldc2l (__coproc, __CRd, __p);
|
||||
+ __builtin_arm_ldc2l (__coproc, __CRd, __p);
|
||||
}
|
||||
|
||||
__extension__ static __inline void __attribute__ ((__always_inline__))
|
||||
__arm_stc2 (const unsigned int __coproc, const unsigned int __CRd,
|
||||
void * __p)
|
||||
{
|
||||
- return __builtin_arm_stc2 (__coproc, __CRd, __p);
|
||||
+ __builtin_arm_stc2 (__coproc, __CRd, __p);
|
||||
}
|
||||
|
||||
__extension__ static __inline void __attribute__ ((__always_inline__))
|
||||
__arm_stc2l (const unsigned int __coproc, const unsigned int __CRd,
|
||||
void * __p)
|
||||
{
|
||||
- return __builtin_arm_stc2l (__coproc, __CRd, __p);
|
||||
+ __builtin_arm_stc2l (__coproc, __CRd, __p);
|
||||
}
|
||||
|
||||
__extension__ static __inline void __attribute__ ((__always_inline__))
|
||||
@@ -126,7 +126,7 @@ __arm_mcr2 (const unsigned int __coproc, const unsigned int __opc1,
|
||||
uint32_t __value, const unsigned int __CRn,
|
||||
const unsigned int __CRm, const unsigned int __opc2)
|
||||
{
|
||||
- return __builtin_arm_mcr2 (__coproc, __opc1, __value, __CRn, __CRm, __opc2);
|
||||
+ __builtin_arm_mcr2 (__coproc, __opc1, __value, __CRn, __CRm, __opc2);
|
||||
}
|
||||
|
||||
__extension__ static __inline uint32_t __attribute__ ((__always_inline__))
|
||||
@@ -143,7 +143,7 @@ __extension__ static __inline void __attribute__ ((__always_inline__))
|
||||
__arm_mcrr (const unsigned int __coproc, const unsigned int __opc1,
|
||||
uint64_t __value, const unsigned int __CRm)
|
||||
{
|
||||
- return __builtin_arm_mcrr (__coproc, __opc1, __value, __CRm);
|
||||
+ __builtin_arm_mcrr (__coproc, __opc1, __value, __CRm);
|
||||
}
|
||||
|
||||
__extension__ static __inline uint64_t __attribute__ ((__always_inline__))
|
||||
@@ -159,7 +159,7 @@ __extension__ static __inline void __attribute__ ((__always_inline__))
|
||||
__arm_mcrr2 (const unsigned int __coproc, const unsigned int __opc1,
|
||||
uint64_t __value, const unsigned int __CRm)
|
||||
{
|
||||
- return __builtin_arm_mcrr2 (__coproc, __opc1, __value, __CRm);
|
||||
+ __builtin_arm_mcrr2 (__coproc, __opc1, __value, __CRm);
|
||||
}
|
||||
|
||||
__extension__ static __inline uint64_t __attribute__ ((__always_inline__))
|
||||
diff --git a/gcc/testsuite/g++.target/arm/arm.exp b/gcc/testsuite/g++.target/arm/arm.exp
|
||||
new file mode 100644
|
||||
index 00000000000..1a169d2f220
|
||||
--- /dev/null
|
||||
+++ b/gcc/testsuite/g++.target/arm/arm.exp
|
||||
@@ -0,0 +1,50 @@
|
||||
+# Specific regression driver for arm.
|
||||
+# Copyright (C) 2009-2018 Free Software Foundation, Inc.
|
||||
+#
|
||||
+# This file is part of GCC.
|
||||
+#
|
||||
+# GCC is free software; you can redistribute it and/or modify it
|
||||
+# under the terms of the GNU General Public License as published by
|
||||
+# the Free Software Foundation; either version 3, or (at your option)
|
||||
+# any later version.
|
||||
+#
|
||||
+# GCC 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 GCC; see the file COPYING3. If not see
|
||||
+# <http://www.gnu.org/licenses/>. */
|
||||
+
|
||||
+# GCC testsuite that uses the `dg.exp' driver.
|
||||
+
|
||||
+# Exit immediately if this isn't an arm target.
|
||||
+if {![istarget arm*-*-*] } then {
|
||||
+ return
|
||||
+}
|
||||
+
|
||||
+# Load support procs.
|
||||
+load_lib g++-dg.exp
|
||||
+
|
||||
+global DEFAULT_CXXFLAGS
|
||||
+if ![info exists DEFAULT_CXXFLAGS] then {
|
||||
+ set DEFAULT_CXXFLAGS " -pedantic-errors"
|
||||
+}
|
||||
+
|
||||
+
|
||||
+global dg_runtest_extra_prunes
|
||||
+set dg_runtest_extra_prunes ""
|
||||
+lappend dg_runtest_extra_prunes "warning: switch -m(cpu|arch)=.* conflicts with -m(cpu|arch)=.* switch"
|
||||
+
|
||||
+# Initialize `dg'.
|
||||
+dg-init
|
||||
+
|
||||
+# Main loop.
|
||||
+dg-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.C]] \
|
||||
+ "" $DEFAULT_CXXFLAGS
|
||||
+
|
||||
+# All done.
|
||||
+set dg_runtest_extra_prunes ""
|
||||
+dg-finish
|
||||
+
|
||||
diff --git a/gcc/testsuite/g++.target/arm/pr81497.C b/gcc/testsuite/g++.target/arm/pr81497.C
|
||||
new file mode 100644
|
||||
index 00000000000..0519a3a3045
|
||||
--- /dev/null
|
||||
+++ b/gcc/testsuite/g++.target/arm/pr81497.C
|
||||
@@ -0,0 +1,9 @@
|
||||
+/* { dg-do compile } */
|
||||
+/* { dg-require-effective-target arm_thumb2_ok } */
|
||||
+
|
||||
+#include <arm_acle.h>
|
||||
+
|
||||
+int main ()
|
||||
+{
|
||||
+ return 0;
|
||||
+}
|
||||
--
|
||||
2.17.1
|
||||
|
@ -73,7 +73,7 @@ config BR2_GCC_VERSION
|
||||
default "5.5.0" if BR2_GCC_VERSION_5_X
|
||||
default "6.4.0" if BR2_GCC_VERSION_6_X
|
||||
default "7.3.0" if BR2_GCC_VERSION_7_X
|
||||
default "arc-2018.03-rc2" if BR2_GCC_VERSION_ARC
|
||||
default "arc-2018.03" if BR2_GCC_VERSION_ARC
|
||||
default "or1k-musl-5.4.0-20170218" if BR2_GCC_VERSION_OR1K
|
||||
|
||||
config BR2_EXTRA_GCC_CONFIG_OPTIONS
|
||||
|
@ -8,6 +8,6 @@ sha512 02c60e54527c7adf584798d5251f8a0b80c93d5deafce82501b2c28e6692e0bd783927bb
|
||||
sha512 ad41a7e4584e40e92cdf860bc0288500fbaf5dfb7e8c3fcabe9eba809c87bcfa85b46c19c19921b0cdf6d05483faede8287bb9ea120c0d1559449a70e602c8d4 gcc-7.3.0.tar.xz
|
||||
|
||||
# Locally calculated (fetched from Github)
|
||||
sha512 a0faf2bb34f6c72b6460c6432639d89915cfc63456cfdf016896b3ef075655b2e9f26e745d841bbc38e776bc7a3729359cca88f1e4fb83489fa6775a3ccb55b8 gcc-arc-2018.03-rc2.tar.gz
|
||||
sha512 7c6555d629957d154c9c0524fc2c82301c9ab9192f5b9175c47b1f2dde298ac032e86360d91866c3c4d001cf8e191a90dc88f3c900ebfc367c5888ab7bf2ce79 gcc-arc-2018.03.tar.gz
|
||||
# Locally calculated (fetched from Github)
|
||||
sha512 2de7cf47333a4092b02d3bb98f4206f14966f1d139a724d09cf3b22f8a43ae0c704f33e6477d6367a03c29b265480dc900169e9d417006c5d46f0ae446b8c6f1 gcc-or1k-musl-5.4.0-20170218.tar.gz
|
||||
|
@ -0,0 +1,62 @@
|
||||
From 80c60ea9fb3634272a98ec526eabff25f5255bae Mon Sep 17 00:00:00 2001
|
||||
From: Romain Naour <romain.naour@gmail.com>
|
||||
Date: Fri, 22 Jun 2018 22:40:26 +0200
|
||||
Subject: [PATCH] gdbserver: fix build for m68k
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
As for strace [1], when <sys/reg.h> is included after <linux/ptrace.h>,
|
||||
the build fails on m68k with the following diagnostics:
|
||||
|
||||
In file included from ./../nat/linux-ptrace.h:28:0,
|
||||
from linux-low.h:27,
|
||||
from linux-m68k-low.c:20:
|
||||
[...]/usr/include/sys/reg.h:26:3: error: expected identifier before numeric constant
|
||||
PT_D1 = 0,
|
||||
^
|
||||
[...]usr/include/sys/reg.h:26:3: error: expected « } » before numeric constant
|
||||
[...]usr/include/sys/reg.h:26:3: error: expected unqualified-id before numeric constant
|
||||
In file included from linux-m68k-low.c:27:0:
|
||||
[...]usr/include/sys/reg.h:99:1: error: expected declaration before « } » token
|
||||
};
|
||||
^
|
||||
|
||||
Fix this by moving <sys/reg.h> on top of "linux-low.h".
|
||||
|
||||
[1] https://github.com/strace/strace/commit/6ebf6c4f9e5ebca123a5b5f24afe67cf0473cf92
|
||||
|
||||
Signed-off-by: Romain Naour <romain.naour@gmail.com>
|
||||
---
|
||||
gdb/gdbserver/linux-m68k-low.c | 9 +++++----
|
||||
1 file changed, 5 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/gdb/gdbserver/linux-m68k-low.c b/gdb/gdbserver/linux-m68k-low.c
|
||||
index 5594f10f927..19b4ef7b259 100644
|
||||
--- a/gdb/gdbserver/linux-m68k-low.c
|
||||
+++ b/gdb/gdbserver/linux-m68k-low.c
|
||||
@@ -17,16 +17,17 @@
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>. */
|
||||
|
||||
#include "server.h"
|
||||
+
|
||||
+#ifdef HAVE_SYS_REG_H
|
||||
+#include <sys/reg.h>
|
||||
+#endif
|
||||
+
|
||||
#include "linux-low.h"
|
||||
|
||||
/* Defined in auto-generated file reg-m68k.c. */
|
||||
void init_registers_m68k (void);
|
||||
extern const struct target_desc *tdesc_m68k;
|
||||
|
||||
-#ifdef HAVE_SYS_REG_H
|
||||
-#include <sys/reg.h>
|
||||
-#endif
|
||||
-
|
||||
#define m68k_num_regs 29
|
||||
#define m68k_num_gregs 18
|
||||
|
||||
--
|
||||
2.14.4
|
||||
|
@ -0,0 +1,62 @@
|
||||
From 80c60ea9fb3634272a98ec526eabff25f5255bae Mon Sep 17 00:00:00 2001
|
||||
From: Romain Naour <romain.naour@gmail.com>
|
||||
Date: Fri, 22 Jun 2018 22:40:26 +0200
|
||||
Subject: [PATCH] gdbserver: fix build for m68k
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
As for strace [1], when <sys/reg.h> is included after <linux/ptrace.h>,
|
||||
the build fails on m68k with the following diagnostics:
|
||||
|
||||
In file included from ./../nat/linux-ptrace.h:28:0,
|
||||
from linux-low.h:27,
|
||||
from linux-m68k-low.c:20:
|
||||
[...]/usr/include/sys/reg.h:26:3: error: expected identifier before numeric constant
|
||||
PT_D1 = 0,
|
||||
^
|
||||
[...]usr/include/sys/reg.h:26:3: error: expected « } » before numeric constant
|
||||
[...]usr/include/sys/reg.h:26:3: error: expected unqualified-id before numeric constant
|
||||
In file included from linux-m68k-low.c:27:0:
|
||||
[...]usr/include/sys/reg.h:99:1: error: expected declaration before « } » token
|
||||
};
|
||||
^
|
||||
|
||||
Fix this by moving <sys/reg.h> on top of "linux-low.h".
|
||||
|
||||
[1] https://github.com/strace/strace/commit/6ebf6c4f9e5ebca123a5b5f24afe67cf0473cf92
|
||||
|
||||
Signed-off-by: Romain Naour <romain.naour@gmail.com>
|
||||
---
|
||||
gdb/gdbserver/linux-m68k-low.c | 9 +++++----
|
||||
1 file changed, 5 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/gdb/gdbserver/linux-m68k-low.c b/gdb/gdbserver/linux-m68k-low.c
|
||||
index 5594f10f927..19b4ef7b259 100644
|
||||
--- a/gdb/gdbserver/linux-m68k-low.c
|
||||
+++ b/gdb/gdbserver/linux-m68k-low.c
|
||||
@@ -17,16 +17,17 @@
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>. */
|
||||
|
||||
#include "server.h"
|
||||
+
|
||||
+#ifdef HAVE_SYS_REG_H
|
||||
+#include <sys/reg.h>
|
||||
+#endif
|
||||
+
|
||||
#include "linux-low.h"
|
||||
|
||||
/* Defined in auto-generated file reg-m68k.c. */
|
||||
void init_registers_m68k (void);
|
||||
extern const struct target_desc *tdesc_m68k;
|
||||
|
||||
-#ifdef HAVE_SYS_REG_H
|
||||
-#include <sys/reg.h>
|
||||
-#endif
|
||||
-
|
||||
#define m68k_num_regs 29
|
||||
#define m68k_num_gregs 18
|
||||
|
||||
--
|
||||
2.14.4
|
||||
|
@ -10,10 +10,16 @@ comment "gdb/gdbserver needs a toolchain w/ threads, threads debug"
|
||||
depends on BR2_PACKAGE_GDB_ARCH_SUPPORTS
|
||||
depends on !BR2_TOOLCHAIN_HAS_THREADS || !BR2_TOOLCHAIN_HAS_THREADS_DEBUG
|
||||
|
||||
comment "gdb/gdbserver >= 8.x needs a toolchain w/ C++, gcc >= 4.8"
|
||||
depends on BR2_PACKAGE_GDB_NEEDS_CXX11
|
||||
depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_8
|
||||
|
||||
config BR2_PACKAGE_GDB
|
||||
bool "gdb"
|
||||
depends on BR2_TOOLCHAIN_HAS_THREADS && BR2_TOOLCHAIN_HAS_THREADS_DEBUG
|
||||
depends on BR2_PACKAGE_GDB_ARCH_SUPPORTS
|
||||
depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 || !BR2_PACKAGE_GDB_NEEDS_CXX11
|
||||
depends on BR2_INSTALL_LIBSTDCPP || !BR2_PACKAGE_GDB_NEEDS_CXX11
|
||||
# When the external toolchain gdbserver is copied to the
|
||||
# target, we don't allow building a separate gdbserver. The
|
||||
# one from the external toolchain should be used.
|
||||
|
@ -3,7 +3,6 @@ config BR2_PACKAGE_HOST_GDB_ARCH_SUPPORTS
|
||||
default y
|
||||
# The ARC version needs C++11, thus gcc >= 4.8, like gdb-8.0.x
|
||||
depends on BR2_HOST_GCC_AT_LEAST_4_8 || !BR2_arc
|
||||
depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 || !BR2_arc
|
||||
depends on !((BR2_arm || BR2_armeb) && BR2_BINFMT_FLAT)
|
||||
depends on !BR2_microblaze
|
||||
depends on !BR2_nios2
|
||||
@ -63,18 +62,29 @@ config BR2_GDB_VERSION_7_12
|
||||
config BR2_GDB_VERSION_8_0
|
||||
bool "gdb 8.0.x"
|
||||
# Needs a C++11 compiler
|
||||
depends on BR2_INSTALL_LIBSTDCPP
|
||||
depends on BR2_HOST_GCC_AT_LEAST_4_8
|
||||
depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8
|
||||
|
||||
endchoice
|
||||
|
||||
endif
|
||||
|
||||
# Tells whether the currently selected gdb version requires C++11
|
||||
# support in the toolchain. When host-gdb is not enabled, the target
|
||||
# gdb built is 7.11, which doesn't require C++11 support. So it's only
|
||||
# if host-gdb is built, with the version set to 8.0 that C++11 support
|
||||
# is needed in the toolchain to build gdb for the target.
|
||||
#
|
||||
# Even though this option is related to target gdb dependencies, we
|
||||
# keep it next to the BR2_GDB_VERSION so that they are kept in sync.
|
||||
config BR2_PACKAGE_GDB_NEEDS_CXX11
|
||||
bool
|
||||
default y if BR2_GDB_VERSION_8_0
|
||||
default y if BR2_arc
|
||||
|
||||
# If cross-gdb is not enabled, the latest working version is chosen.
|
||||
config BR2_GDB_VERSION
|
||||
string
|
||||
default "arc-2018.03-rc2-gdb" if BR2_arc
|
||||
default "arc-2018.03-gdb" if BR2_arc
|
||||
default "7.10.1" if BR2_GDB_VERSION_7_10
|
||||
default "7.11.1" if BR2_GDB_VERSION_7_11 || !BR2_PACKAGE_HOST_GDB
|
||||
default "7.12.1" if BR2_GDB_VERSION_7_12
|
||||
|
@ -5,4 +5,4 @@ sha512 0ac8d0a495103611ef41167a08313a010dce6ca4c6d827cbe8558a0c1a1a8a6bfa53f1b7
|
||||
sha512 5eb328910033f0918058be2f92caebf1e8dfc6caa3c730d99d621627e53de3c1b43761c2f683d53555893253c2f06768cbf56cdea051a3d291ffb6cfae87b5e1 gdb-8.0.1.tar.xz
|
||||
|
||||
# Locally calculated (fetched from Github)
|
||||
sha512 0c58dd3e8fff8b51a459aba78f4acd1beaa3427e00a63a7242827f22c6af157e4aea91ab754cdc021e0075a5bf2b70df903dba67dbff2415fd0f82c8aab99087 gdb-arc-2018.03-rc2-gdb.tar.gz
|
||||
sha512 b17e4066730491f6a75b00eab78012f67cc445fe95ecd82c06cda7c1255190e6c471ac89b92f2fcdba4790b0046756b9cecf1f827537afcb44e1e578345852ad gdb-arc-2018.03-gdb.tar.gz
|
||||
|
@ -1,7 +1,7 @@
|
||||
# Locally calculated (fetched from Github)
|
||||
sha256 33189b3f10c88730a1f686fac794bc01f31765f12ffd75bc5e8a0f2a690d217a glibc-glibc-2.27-57-g6c99e37f6fb640a50a3113b2dbee5d5389843c1e.tar.gz
|
||||
# Locally calculated (fetched from Github)
|
||||
sha256 ddc63360393ab88ab6a4a0c81d33481f34c5a9ebd758eec2e6bb35385058b4cb glibc-arc-2018.03-rc2.tar.gz
|
||||
sha256 e08ab67b2db2d0f0e8f3311d23c54fb8f6d4c1ef6fa0b4047fd5da400e3ce9de glibc-arc-2018.03-release.tar.gz
|
||||
|
||||
sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING
|
||||
sha256 dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551 COPYING.LIB
|
||||
|
@ -5,7 +5,7 @@
|
||||
################################################################################
|
||||
|
||||
ifeq ($(BR2_arc),y)
|
||||
GLIBC_VERSION = arc-2018.03-rc2
|
||||
GLIBC_VERSION = arc-2018.03-release
|
||||
GLIBC_SITE = $(call github,foss-for-synopsys-dwc-arc-processors,glibc,$(GLIBC_VERSION))
|
||||
else
|
||||
# Generate version string using:
|
||||
|
@ -1,3 +1,3 @@
|
||||
# Locally computed based on signature
|
||||
# https://gnupg.org/ftp/gcrypt/gnupg/gnupg-1.4.22.tar.bz2.sig
|
||||
sha256 9594a24bec63a21568424242e3f198b9d9828dea5ff0c335e47b06f835f930b4 gnupg-1.4.22.tar.bz2
|
||||
# https://gnupg.org/ftp/gcrypt/gnupg/gnupg-1.4.23.tar.bz2.sig
|
||||
sha256 c9462f17e651b6507848c08c430c791287cd75491f8b5a8b50c6ed46b12678ba gnupg-1.4.23.tar.bz2
|
||||
|
@ -4,7 +4,7 @@
|
||||
#
|
||||
################################################################################
|
||||
|
||||
GNUPG_VERSION = 1.4.22
|
||||
GNUPG_VERSION = 1.4.23
|
||||
GNUPG_SOURCE = gnupg-$(GNUPG_VERSION).tar.bz2
|
||||
GNUPG_SITE = https://gnupg.org/ftp/gcrypt/gnupg
|
||||
GNUPG_LICENSE = GPL-3.0+
|
||||
|
@ -1,6 +1,6 @@
|
||||
# From https://lists.gnupg.org/pipermail/gnupg-announce/2018q2/000424.html
|
||||
sha1 e222cda63409a86992369df8976f6c7511e10ea0 gnupg-2.2.7.tar.bz2
|
||||
# From https://lists.gnupg.org/pipermail/gnupg-announce/2018q2/000425.html
|
||||
sha1 d87553a125832ea90e8aeb3ceeecf24f88de56fb gnupg-2.2.8.tar.bz2
|
||||
# Calculated based on the hash above and signature
|
||||
# https://gnupg.org/ftp/gcrypt/gnupg/gnupg-2.2.7.tar.bz2.sig
|
||||
sha256 d95b361ee6ef7eff86af40c8c72bf9313736ac9f7010d6604d78bf83818e976e gnupg-2.2.7.tar.bz2
|
||||
# https://gnupg.org/ftp/gcrypt/gnupg/gnupg-2.2.8.tar.bz2.sig
|
||||
sha256 777b4cb8ced21965a5053d4fa20fe11484f0a478f3d011cef508a1a49db50dcd gnupg-2.2.8.tar.bz2
|
||||
sha256 bc2d6664f6276fa0a72d57633b3ae68dc7dcb677b71018bf08c8e93e509f1357 COPYING
|
||||
|
@ -4,7 +4,7 @@
|
||||
#
|
||||
################################################################################
|
||||
|
||||
GNUPG2_VERSION = 2.2.7
|
||||
GNUPG2_VERSION = 2.2.8
|
||||
GNUPG2_SOURCE = gnupg-$(GNUPG2_VERSION).tar.bz2
|
||||
GNUPG2_SITE = https://gnupg.org/ftp/gcrypt/gnupg
|
||||
GNUPG2_LICENSE = GPL-3.0+
|
||||
|
@ -24,7 +24,10 @@ HOST_HEIMDAL_CONF_OPTS = \
|
||||
--without-libedit \
|
||||
--without-hesiod \
|
||||
--without-x \
|
||||
--disable-mdb-db \
|
||||
--disable-ndbm-db \
|
||||
--disable-heimdal-documentation
|
||||
|
||||
HOST_HEIMDAL_CONF_ENV = MAKEINFO=true
|
||||
HEIMDAL_LICENSE = BSD-3-Clause
|
||||
HEIMDAL_LICENSE_FILES = LICENSE
|
||||
|
@ -5,6 +5,8 @@ config BR2_PACKAGE_HIDAPI
|
||||
select BR2_PACKAGE_LIBUSB
|
||||
select BR2_PACKAGE_LIBGUDEV
|
||||
select BR2_PACKAGE_LIBICONV if !BR2_ENABLE_LOCALE
|
||||
# runtime UTF conversion support
|
||||
select BR2_TOOLCHAIN_GLIBC_GCONV_LIBS_COPY if BR2_TOOLCHAIN_USES_GLIBC
|
||||
help
|
||||
HIDAPI is a multi-platform library which allows an application
|
||||
to interface with USB and Bluetooth HID-Class devices on
|
||||
|
@ -1,3 +1,3 @@
|
||||
# Locally computed
|
||||
sha256 723a28f9cbc5c6130f496065fc01c839083e97bf3e4930f940a03c0155046170 7.0.7-27.tar.gz
|
||||
sha256 ac957ef303fb870cb92331947ebcdcef5b553e80c7897c0aec866889f35e1a23 7.0.7-38.tar.gz
|
||||
sha256 2318cc05bbd2c25c1b2d13af1aadccc45b9cf6f94757421ae59a3c8ea9064f1c LICENSE
|
||||
|
@ -4,7 +4,7 @@
|
||||
#
|
||||
################################################################################
|
||||
|
||||
IMAGEMAGICK_VERSION = 7.0.7-27
|
||||
IMAGEMAGICK_VERSION = 7.0.7-38
|
||||
IMAGEMAGICK_SOURCE = $(IMAGEMAGICK_VERSION).tar.gz
|
||||
IMAGEMAGICK_SITE = https://github.com/ImageMagick/ImageMagick/archive
|
||||
IMAGEMAGICK_LICENSE = Apache-2.0
|
||||
|
@ -1,40 +0,0 @@
|
||||
From b5fbc486e805805efb8400373ccec2a3dee1c81b Mon Sep 17 00:00:00 2001
|
||||
From: Fabrice Fontaine <fontaine.fabrice@gmail.com>
|
||||
Date: Mon, 21 May 2018 12:07:00 +0200
|
||||
Subject: [PATCH 1/1] Fix link with ssh2 built with a static mbedtls
|
||||
|
||||
The ssh2 pkg-config file could contain the following lines when build
|
||||
with a static version of mbedtls:
|
||||
Libs: -L${libdir} -lssh2 /xxx/libmbedcrypto.a
|
||||
Libs.private: /xxx/libmbedcrypto.a
|
||||
|
||||
This static mbedtls library must be used to correctly detect ssh2
|
||||
support and this library must be copied in libcurl.pc otherwise
|
||||
compilation of any application (such as upmpdcli) with libcurl will fail
|
||||
when trying to found mbedtls functions included in libssh2.
|
||||
So, replace pkg-config --libs-only-l by pkg-config --libs.
|
||||
|
||||
Fixes:
|
||||
- http://autobuild.buildroot.net/results/43e24b22a77f616d6198c10435dcc23cc3b9088a
|
||||
|
||||
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
|
||||
---
|
||||
configure.ac | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 5569a26b4..9e2606885 100755
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -2766,7 +2766,7 @@ if test X"$OPT_LIBSSH2" != Xno; then
|
||||
CURL_CHECK_PKGCONFIG(libssh2)
|
||||
|
||||
if test "$PKGCONFIG" != "no" ; then
|
||||
- LIB_SSH2=`$PKGCONFIG --libs-only-l libssh2`
|
||||
+ LIB_SSH2=`$PKGCONFIG --libs libssh2`
|
||||
LD_SSH2=`$PKGCONFIG --libs-only-L libssh2`
|
||||
CPP_SSH2=`$PKGCONFIG --cflags-only-I libssh2`
|
||||
version=`$PKGCONFIG --modversion libssh2`
|
||||
--
|
||||
2.14.1
|
||||
|
@ -1,4 +1,5 @@
|
||||
# Locally calculated after checking pgp signature
|
||||
# https://curl.haxx.se/download/curl-7.60.0.tar.xz.asc
|
||||
sha256 8736ff8ded89ddf7e926eec7b16f82597d029fc1469f3a551f1fafaac164e6a0 curl-7.60.0.tar.xz
|
||||
# https://curl.haxx.se/download/curl-7.61.0.tar.xz.asc
|
||||
# with key 27EDEAF22F3ABCEB50DB9A125CC908FDB71E12C2
|
||||
sha256 ef6e55192d04713673b4409ccbcb4cb6cd723137d6e10ca45b0c593a454e1720 curl-7.61.0.tar.xz
|
||||
sha256 5f3849ec38ddb927e79f514bf948890c41b8d1407286a49609b8fb1585931095 COPYING
|
||||
|
@ -4,7 +4,7 @@
|
||||
#
|
||||
################################################################################
|
||||
|
||||
LIBCURL_VERSION = 7.60.0
|
||||
LIBCURL_VERSION = 7.61.0
|
||||
LIBCURL_SOURCE = curl-$(LIBCURL_VERSION).tar.xz
|
||||
LIBCURL_SITE = https://curl.haxx.se/download
|
||||
LIBCURL_DEPENDENCIES = host-pkgconf \
|
||||
@ -14,8 +14,6 @@ LIBCURL_DEPENDENCIES = host-pkgconf \
|
||||
LIBCURL_LICENSE = curl
|
||||
LIBCURL_LICENSE_FILES = COPYING
|
||||
LIBCURL_INSTALL_STAGING = YES
|
||||
# We're patching configure.ac
|
||||
LIBCURL_AUTORECONF = YES
|
||||
|
||||
# We disable NTLM support because it uses fork(), which doesn't work
|
||||
# on non-MMU platforms. Moreover, this authentication method is
|
||||
@ -40,7 +38,6 @@ LIBCURL_CONFIG_SCRIPTS = curl-config
|
||||
|
||||
ifeq ($(BR2_PACKAGE_OPENSSL),y)
|
||||
LIBCURL_DEPENDENCIES += openssl
|
||||
LIBCURL_CONF_ENV += ac_cv_lib_crypto_CRYPTO_lock=yes
|
||||
# configure adds the cross openssl dir to LD_LIBRARY_PATH which screws up
|
||||
# native stuff during the rest of configure when target == host.
|
||||
# Fix it by setting LD_LIBRARY_PATH to something sensible so those libs
|
||||
|
@ -1,6 +1,6 @@
|
||||
# From https://www.gnupg.org/download/integrity_check.html
|
||||
sha1 ab8aae5d7a68f8e0988f90e11e7f6a4805af5c8d libgcrypt-1.8.2.tar.bz2
|
||||
# From https://lists.gnupg.org/pipermail/gnupg-announce/2018q2/000426.html
|
||||
sha1 13bd2ce69e59ab538e959911dfae80ea309636e3 libgcrypt-1.8.3.tar.bz2
|
||||
# Locally calculated after checking signature
|
||||
# https://gnupg.org/ftp/gcrypt/libgcrypt/libgcrypt-1.8.2.tar.bz2.sig
|
||||
sha256 c8064cae7558144b13ef0eb87093412380efa16c4ee30ad12ecb54886a524c07 libgcrypt-1.8.2.tar.bz2
|
||||
# https://gnupg.org/ftp/gcrypt/libgcrypt/libgcrypt-1.8.3.tar.bz2.sig
|
||||
sha256 66ec90be036747602f2b48f98312361a9180c97c68a690a5f376fa0f67d0af7c libgcrypt-1.8.3.tar.bz2
|
||||
sha256 ca0061fc1381a3ab242310e4b3f56389f28e3d460eb2fd822ed7a21c6f030532 COPYING.LIB
|
||||
|
@ -4,7 +4,7 @@
|
||||
#
|
||||
################################################################################
|
||||
|
||||
LIBGCRYPT_VERSION = 1.8.2
|
||||
LIBGCRYPT_VERSION = 1.8.3
|
||||
LIBGCRYPT_SOURCE = libgcrypt-$(LIBGCRYPT_VERSION).tar.bz2
|
||||
LIBGCRYPT_LICENSE = LGPL-2.1+
|
||||
LIBGCRYPT_LICENSE_FILES = COPYING.LIB
|
||||
|
@ -0,0 +1,48 @@
|
||||
From b9160d951b9af647b97766c57295ca4f45cf9521 Mon Sep 17 00:00:00 2001
|
||||
From: Alexander Kanavin <alex.kanavin@gmail.com>
|
||||
Date: Tue, 3 Oct 2017 10:45:55 +0300
|
||||
Subject: [PATCH] Do not hardcode python path into various tools
|
||||
|
||||
Upstream-Status: Inappropriate [oe-core specific]
|
||||
Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
|
||||
Fetch from: http://cgit.openembedded.org/openembedded-core/tree/meta/recipes-core/glib-2.0/glib-2.0/0010-Do-not-hardcode-python-path-into-various-tools.patch?id=eef7883587acc933d6f34b559ec03ff84d18573b
|
||||
Signed-off-by: David Owens <david.owens@rockwellcollins.com>
|
||||
---
|
||||
gio/gdbus-2.0/codegen/gdbus-codegen.in | 2 +-
|
||||
gobject/glib-genmarshal.in | 2 +-
|
||||
gobject/glib-mkenums.in | 2 +-
|
||||
3 files changed, 3 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/gio/gdbus-2.0/codegen/gdbus-codegen.in b/gio/gdbus-2.0/codegen/gdbus-codegen.in
|
||||
index 8050981..e693ef3 100644
|
||||
--- a/gio/gdbus-2.0/codegen/gdbus-codegen.in
|
||||
+++ b/gio/gdbus-2.0/codegen/gdbus-codegen.in
|
||||
@@ -1,4 +1,4 @@
|
||||
-#!/usr/bin/env @PYTHON@
|
||||
+#!/usr/bin/env python
|
||||
|
||||
# GDBus - GLib D-Bus Library
|
||||
#
|
||||
diff --git a/gobject/glib-genmarshal.in b/gobject/glib-genmarshal.in
|
||||
index 09e8408..b2f9d99 100755
|
||||
--- a/gobject/glib-genmarshal.in
|
||||
+++ b/gobject/glib-genmarshal.in
|
||||
@@ -1,4 +1,4 @@
|
||||
-#!/usr/bin/env @PYTHON@
|
||||
+#!/usr/bin/env python
|
||||
|
||||
# pylint: disable=too-many-lines, missing-docstring, invalid-name
|
||||
|
||||
diff --git a/gobject/glib-mkenums.in b/gobject/glib-mkenums.in
|
||||
index d4bfd11..051fce4 100755
|
||||
--- a/gobject/glib-mkenums.in
|
||||
+++ b/gobject/glib-mkenums.in
|
||||
@@ -1,4 +1,4 @@
|
||||
-#!/usr/bin/env @PYTHON@
|
||||
+#!/usr/bin/env python
|
||||
|
||||
# If the code below looks horrible and unpythonic, do not panic.
|
||||
#
|
||||
--
|
||||
2.14.1
|
||||
|
@ -5,4 +5,4 @@ config BR2_PACKAGE_LIBLOGGING
|
||||
logging. It offers an enhanced replacement
|
||||
for the syslog() call, but retains its ease of use.
|
||||
|
||||
http://www.liblogging.org/
|
||||
https://www.rsyslog.com/liblogging/
|
||||
|
@ -40,7 +40,7 @@ endif
|
||||
|
||||
#cURL support depends on libsoup
|
||||
ifeq ($(BR2_PACKAGE_LIBSOUP),y)
|
||||
LIBOSTREE_CONF_OPTS += --with-libsoup
|
||||
LIBOSTREE_CONF_OPTS += --with-soup
|
||||
LIBOSTREE_DEPENDENCIES += libsoup
|
||||
ifeq ($(BR2_PACKAGE_LIBCURL),y)
|
||||
LIBOSTREE_CONF_OPTS += --with-curl
|
||||
@ -49,7 +49,7 @@ else
|
||||
LIBOSTREE_CONF_OPTS += --without-curl
|
||||
endif
|
||||
else
|
||||
LIBOSTREE_CONF_OPTS += --without-libsoup --without-curl
|
||||
LIBOSTREE_CONF_OPTS += --without-soup --without-curl
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_PACKAGE_LIBARCHIVE),y)
|
||||
|
@ -1,4 +1,4 @@
|
||||
# From https://ftp.openbsd.org/pub/OpenBSD/LibreSSL/SHA256
|
||||
sha256 917a8779c342177ff3751a2bf955d0262d1d8916a4b408930c45cef326700995 libressl-2.7.2.tar.gz
|
||||
sha256 1e3a9fada06c1c060011470ad0ff960de28f9a0515277d7336f7e09362517da6 libressl-2.7.4.tar.gz
|
||||
# Locally computed
|
||||
sha256 5c63613f008f16a9c0025c096bbd736cecf720494d121b5c5203e0ec6e5955b1 COPYING
|
||||
|
@ -4,7 +4,7 @@
|
||||
#
|
||||
################################################################################
|
||||
|
||||
LIBRESSL_VERSION = 2.7.2
|
||||
LIBRESSL_VERSION = 2.7.4
|
||||
LIBRESSL_SITE = https://ftp.openbsd.org/pub/OpenBSD/LibreSSL
|
||||
LIBRESSL_LICENSE = ISC (new additions), OpenSSL or SSLeay (original OpenSSL code)
|
||||
LIBRESSL_LICENSE_FILES = COPYING
|
||||
|
@ -11,7 +11,7 @@ config BR2_PACKAGE_LIBSOUP
|
||||
and the GLib main loop, to integrate well with GNOME
|
||||
applications.
|
||||
|
||||
http://live.gnome.org/LibSoup
|
||||
https://wiki.gnome.org/Projects/libsoup
|
||||
|
||||
if BR2_PACKAGE_LIBSOUP
|
||||
|
||||
|
@ -0,0 +1,31 @@
|
||||
From 5c407e130f8d0416f91f5a12bcdc2709f00dda65 Mon Sep 17 00:00:00 2001
|
||||
From: Fabrice Fontaine <fontaine.fabrice@gmail.com>
|
||||
Date: Fri, 29 Jun 2018 21:15:10 +0200
|
||||
Subject: [PATCH] Build sdlcam only if jpeg is enabled
|
||||
|
||||
Fixes:
|
||||
- http://autobuild.buildroot.net/results/1eded8b44cc369550566c6ce0b3c042f1aec8d44
|
||||
|
||||
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
|
||||
---
|
||||
contrib/test/Makefile.am | 2 ++
|
||||
1 file changed, 2 insertions(+)
|
||||
|
||||
diff --git a/contrib/test/Makefile.am b/contrib/test/Makefile.am
|
||||
index 0188fe21..c7c38e7a 100644
|
||||
--- a/contrib/test/Makefile.am
|
||||
+++ b/contrib/test/Makefile.am
|
||||
@@ -17,8 +17,10 @@ noinst_PROGRAMS += v4l2gl
|
||||
endif
|
||||
|
||||
if HAVE_SDL
|
||||
+if HAVE_JPEG
|
||||
noinst_PROGRAMS += sdlcam
|
||||
endif
|
||||
+endif
|
||||
|
||||
driver_test_SOURCES = driver-test.c
|
||||
driver_test_LDADD = ../../utils/libv4l2util/libv4l2util.la
|
||||
--
|
||||
2.14.1
|
||||
|
@ -10,6 +10,10 @@ LIBV4L_SITE = https://linuxtv.org/downloads/v4l-utils
|
||||
LIBV4L_INSTALL_STAGING = YES
|
||||
LIBV4L_DEPENDENCIES = host-pkgconf
|
||||
LIBV4L_CONF_OPTS = --disable-doxygen-doc
|
||||
# We're patching contrib/test/Makefile.am
|
||||
LIBV4L_AUTORECONF = YES
|
||||
# add host-gettext for AM_ICONV macro
|
||||
LIBV4L_DEPENDENCIES += host-gettext
|
||||
|
||||
# fix uclibc-ng configure/compile
|
||||
LIBV4L_CONF_ENV = ac_cv_prog_cc_c99='-std=gnu99'
|
||||
@ -73,6 +77,10 @@ else
|
||||
LIBV4L_CONF_OPTS += --disable-v4l-utils
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_PACKAGE_SDL2_IMAGE),y)
|
||||
LIBV4L_DEPENDENCIES += sdl2_image
|
||||
endif
|
||||
|
||||
LIBV4L_CONF_ENV += LIBS="$(LIBV4L_LIBS)"
|
||||
|
||||
$(eval $(autotools-package))
|
||||
|
@ -0,0 +1,65 @@
|
||||
From 28afb6c537dc82ba04d5f245b15ca7205c6dbb9c Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= <ppisar@redhat.com>
|
||||
Date: Mon, 26 Feb 2018 13:48:00 +0100
|
||||
Subject: [PATCH] Limit client cut text length to 1 MB
|
||||
|
||||
This patch constrains a client cut text length to 1 MB. Otherwise
|
||||
a client could make server allocate 2 GB of memory and that seems to
|
||||
be to much to classify it as a denial of service.
|
||||
|
||||
The limit also prevents from an integer overflow followed by copying
|
||||
an uninitilized memory when processing msg.cct.length value larger
|
||||
than SIZE_MAX or INT_MAX - sz_rfbClientCutTextMsg.
|
||||
|
||||
This patch also corrects accepting length value of zero (malloc(0) is
|
||||
interpreted on differnet systems differently).
|
||||
|
||||
CVE-2018-7225
|
||||
<https://github.com/LibVNC/libvncserver/issues/218>
|
||||
|
||||
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
|
||||
---
|
||||
libvncserver/rfbserver.c | 20 +++++++++++++++++++-
|
||||
1 file changed, 19 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/libvncserver/rfbserver.c b/libvncserver/rfbserver.c
|
||||
index 116c488..4fc4d9d 100644
|
||||
--- a/libvncserver/rfbserver.c
|
||||
+++ b/libvncserver/rfbserver.c
|
||||
@@ -88,6 +88,8 @@
|
||||
#include <errno.h>
|
||||
/* strftime() */
|
||||
#include <time.h>
|
||||
+/* PRIu32 */
|
||||
+#include <inttypes.h>
|
||||
|
||||
#ifdef LIBVNCSERVER_WITH_WEBSOCKETS
|
||||
#include "rfbssl.h"
|
||||
@@ -2575,7 +2577,23 @@ rfbProcessClientNormalMessage(rfbClientPtr cl)
|
||||
|
||||
msg.cct.length = Swap32IfLE(msg.cct.length);
|
||||
|
||||
- str = (char *)malloc(msg.cct.length);
|
||||
+ /* uint32_t input is passed to malloc()'s size_t argument,
|
||||
+ * to rfbReadExact()'s int argument, to rfbStatRecordMessageRcvd()'s int
|
||||
+ * argument increased of sz_rfbClientCutTextMsg, and to setXCutText()'s int
|
||||
+ * argument. Here we impose a limit of 1 MB so that the value fits
|
||||
+ * into all of the types to prevent from misinterpretation and thus
|
||||
+ * from accessing uninitialized memory (CVE-2018-7225) and also to
|
||||
+ * prevent from a denial-of-service by allocating to much memory in
|
||||
+ * the server. */
|
||||
+ if (msg.cct.length > 1<<20) {
|
||||
+ rfbLog("rfbClientCutText: too big cut text length requested: %" PRIu32 "\n",
|
||||
+ msg.cct.length);
|
||||
+ rfbCloseClient(cl);
|
||||
+ return;
|
||||
+ }
|
||||
+
|
||||
+ /* Allow zero-length client cut text. */
|
||||
+ str = (char *)calloc(msg.cct.length ? msg.cct.length : 1, 1);
|
||||
if (str == NULL) {
|
||||
rfbLogPerror("rfbProcessClientNormalMessage: not enough memory");
|
||||
rfbCloseClient(cl);
|
||||
--
|
||||
2.11.0
|
||||
|
@ -0,0 +1,28 @@
|
||||
From: Thomas Daede <daede003@umn.edu>
|
||||
Date: Wed, 9 May 2018 21:56:59 +0000 (-0700)
|
||||
Subject: CVE-2017-14160: fix bounds check on very low sample rates.
|
||||
X-Git-Url: https://git.xiph.org/?p=vorbis.git;a=commitdiff_plain;h=018ca26dece618457dd13585cad52941193c4a25
|
||||
|
||||
CVE-2017-14160: fix bounds check on very low sample rates.
|
||||
|
||||
Downloaded from upstream commit
|
||||
https://git.xiph.org/?p=vorbis.git;a=commitdiff;h=018ca26dece618457dd13585cad52941193c4a25
|
||||
|
||||
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
|
||||
---
|
||||
|
||||
diff --git a/lib/psy.c b/lib/psy.c
|
||||
index 422c6f1..1310123 100644
|
||||
--- a/lib/psy.c
|
||||
+++ b/lib/psy.c
|
||||
@@ -602,8 +602,9 @@ static void bark_noise_hybridmp(int n,const long *b,
|
||||
for (i = 0, x = 0.f;; i++, x += 1.f) {
|
||||
|
||||
lo = b[i] >> 16;
|
||||
- if( lo>=0 ) break;
|
||||
hi = b[i] & 0xffff;
|
||||
+ if( lo>=0 ) break;
|
||||
+ if( hi>=n ) break;
|
||||
|
||||
tN = N[hi] + N[-lo];
|
||||
tX = X[hi] - X[-lo];
|
@ -35,6 +35,13 @@ else
|
||||
LIBWEBSOCKETS_CONF_OPTS += -DLWS_WITH_LIBEV=OFF
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_PACKAGE_LIBEVENT),y)
|
||||
LIBWEBSOCKETS_DEPENDENCIES += libevent
|
||||
LIBWEBSOCKETS_CONF_OPTS += -DLWS_WITH_LIBEVENT=ON
|
||||
else
|
||||
LIBWEBSOCKETS_CONF_OPTS += -DLWS_WITH_LIBEVENT=OFF
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_PACKAGE_LIBUV),y)
|
||||
LIBWEBSOCKETS_DEPENDENCIES += libuv
|
||||
LIBWEBSOCKETS_CONF_OPTS += -DLWS_WITH_LIBUV=ON
|
||||
|
@ -1,35 +0,0 @@
|
||||
From eb1030de31165b68487f288308f9d1810fed6880 Mon Sep 17 00:00:00 2001
|
||||
From: Nick Wellnhofer <wellnhofer@aevum.de>
|
||||
Date: Fri, 10 Jun 2016 14:23:58 +0200
|
||||
Subject: [PATCH] Fix heap overread in xsltFormatNumberConversion
|
||||
|
||||
An empty decimal-separator could cause a heap overread. This can be
|
||||
exploited to leak a couple of bytes after the buffer that holds the
|
||||
pattern string.
|
||||
|
||||
Found with afl-fuzz and ASan.
|
||||
|
||||
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
|
||||
---
|
||||
Patch status: upstream commit eb1030de311
|
||||
|
||||
libxslt/numbers.c | 3 ++-
|
||||
1 file changed, 2 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/libxslt/numbers.c b/libxslt/numbers.c
|
||||
index d1549b46ca26..e78c46b6357b 100644
|
||||
--- a/libxslt/numbers.c
|
||||
+++ b/libxslt/numbers.c
|
||||
@@ -1090,7 +1090,8 @@ xsltFormatNumberConversion(xsltDecimalFormatPtr self,
|
||||
}
|
||||
|
||||
/* We have finished the integer part, now work on fraction */
|
||||
- if (xsltUTF8Charcmp(the_format, self->decimalPoint) == 0) {
|
||||
+ if ( (*the_format != 0) &&
|
||||
+ (xsltUTF8Charcmp(the_format, self->decimalPoint) == 0) ) {
|
||||
format_info.add_decimal = TRUE;
|
||||
the_format += xsltUTF8Size(the_format); /* Skip over the decimal */
|
||||
}
|
||||
--
|
||||
2.10.2
|
||||
|
@ -1,2 +1,5 @@
|
||||
# Locally calculated after checking pgp signature
|
||||
sha256 b5976e3857837e7617b29f2249ebb5eeac34e249208d31f1fbf7a6ba7a4090ce libxslt-1.1.29.tar.gz
|
||||
sha256 526ecd0abaf4a7789041622c3950c0e7f2c4c8835471515fd77eec684a355460 libxslt-1.1.32.tar.gz
|
||||
|
||||
# Hash for license file:
|
||||
sha256 7e48e290b6bfccc2ec1b297023a1d77f2fd87417f71fbb9f50aabef40a851819 COPYING
|
||||
|
@ -4,7 +4,7 @@
|
||||
#
|
||||
################################################################################
|
||||
|
||||
LIBXSLT_VERSION = 1.1.29
|
||||
LIBXSLT_VERSION = 1.1.32
|
||||
LIBXSLT_SITE = ftp://xmlsoft.org/libxslt
|
||||
LIBXSLT_INSTALL_STAGING = YES
|
||||
LIBXSLT_LICENSE = MIT
|
||||
@ -13,11 +13,9 @@ LIBXSLT_LICENSE_FILES = COPYING
|
||||
LIBXSLT_CONF_OPTS = \
|
||||
--with-gnu-ld \
|
||||
--without-debug \
|
||||
--without-python \
|
||||
--with-libxml-prefix=$(STAGING_DIR)/usr/ \
|
||||
--with-libxml-libs-prefix=$(STAGING_DIR)/usr/lib
|
||||
--without-python
|
||||
LIBXSLT_CONFIG_SCRIPTS = xslt-config
|
||||
LIBXSLT_DEPENDENCIES = libxml2
|
||||
LIBXSLT_DEPENDENCIES = host-pkgconf libxml2
|
||||
|
||||
# If we have enabled libgcrypt then use it, else disable crypto support.
|
||||
ifeq ($(BR2_PACKAGE_LIBGCRYPT),y)
|
||||
@ -29,7 +27,7 @@ endif
|
||||
|
||||
HOST_LIBXSLT_CONF_OPTS = --without-debug --without-python --without-crypto
|
||||
|
||||
HOST_LIBXSLT_DEPENDENCIES = host-libxml2
|
||||
HOST_LIBXSLT_DEPENDENCIES = host-pkgconf host-libxml2
|
||||
|
||||
$(eval $(autotools-package))
|
||||
$(eval $(host-autotools-package))
|
||||
|
@ -248,15 +248,15 @@ endchoice
|
||||
|
||||
config BR2_DEFAULT_KERNEL_HEADERS
|
||||
string
|
||||
default "3.2.101" if BR2_KERNEL_HEADERS_3_2
|
||||
default "3.2.102" if BR2_KERNEL_HEADERS_3_2
|
||||
default "4.1.52" if BR2_KERNEL_HEADERS_4_1
|
||||
default "4.4.134" if BR2_KERNEL_HEADERS_4_4
|
||||
default "4.9.104" if BR2_KERNEL_HEADERS_4_9
|
||||
default "4.4.142" if BR2_KERNEL_HEADERS_4_4
|
||||
default "4.9.113" if BR2_KERNEL_HEADERS_4_9
|
||||
default "4.10.17" if BR2_KERNEL_HEADERS_4_10
|
||||
default "4.11.12" if BR2_KERNEL_HEADERS_4_11
|
||||
default "4.12.14" if BR2_KERNEL_HEADERS_4_12
|
||||
default "4.13.16" if BR2_KERNEL_HEADERS_4_13
|
||||
default "4.14.46" if BR2_KERNEL_HEADERS_4_14
|
||||
default "4.14.56" if BR2_KERNEL_HEADERS_4_14
|
||||
default "4.15.18" if BR2_KERNEL_HEADERS_4_15
|
||||
default "4.16.13" if BR2_KERNEL_HEADERS_4_16
|
||||
default "4.16.17" if BR2_KERNEL_HEADERS_4_16
|
||||
default BR2_DEFAULT_KERNEL_VERSION if BR2_KERNEL_HEADERS_VERSION
|
||||
|
@ -47,9 +47,11 @@ config BR2_PACKAGE_LINUX_TOOLS_PERF
|
||||
code), single CPU or severals threads.
|
||||
|
||||
This will build and install the userspace 'perf'
|
||||
command. It is up to the user to ensure that the kernel
|
||||
configuration has all the suitable options enabled to allow a
|
||||
proper operation of 'perf'.
|
||||
command.
|
||||
|
||||
Your kernel must have CONFIG_PERF_EVENTS enabled to use perf
|
||||
profiling. Buildroot automatically enables this in the kernel
|
||||
configuration.
|
||||
|
||||
https://perf.wiki.kernel.org/
|
||||
|
||||
|
@ -26,7 +26,7 @@ LM_SENSORS_MAKE_OPTS = \
|
||||
PREFIX=/usr
|
||||
|
||||
ifeq ($(BR2_STATIC_LIBS),y)
|
||||
LM_SENSORS_MAKE_OPTS += BUILD_SHARED_LIB=0
|
||||
LM_SENSORS_MAKE_OPTS += BUILD_SHARED_LIB=0 EXLDFLAGS=-static
|
||||
else
|
||||
LM_SENSORS_MAKE_OPTS += BUILD_SHARED_LIB=1
|
||||
endif
|
||||
|
@ -1,5 +1,5 @@
|
||||
# From https://downloads.mariadb.org/mariadb/10.1.32/
|
||||
sha256 0e2aae6a6a190d07c8e36e87dd43377057fa82651ca3c583462563f3e9369096 mariadb-10.1.32.tar.gz
|
||||
# From https://downloads.mariadb.org/mariadb/10.1.33/
|
||||
sha256 94312c519f2c0c25e1964c64e22aff0036fb22dfb2685638f43a6b2211395d2d mariadb-10.1.33.tar.gz
|
||||
|
||||
# Hash for license files
|
||||
sha256 69ce89a0cadbe35a858398c258be93c388715e84fc0ca04e5a1fd1aa9770dd3a README
|
||||
|
@ -4,7 +4,7 @@
|
||||
#
|
||||
################################################################################
|
||||
|
||||
MARIADB_VERSION = 10.1.32
|
||||
MARIADB_VERSION = 10.1.33
|
||||
MARIADB_SITE = https://downloads.mariadb.org/interstitial/mariadb-$(MARIADB_VERSION)/source
|
||||
MARIADB_LICENSE = GPL-2.0 (server), GPL-2.0 with FLOSS exception (GPL client library), LGPL-2.0 (LGPL client library)
|
||||
# Tarball no longer contains LGPL license text
|
||||
|
@ -1,5 +1,7 @@
|
||||
# Locally calculated after checking pgp signature
|
||||
sha256 5314b0fb8ad291bfc79ff4c5c321b971916819a65233ec065434358fcf8aee38 mpg123-1.25.2.tar.bz2
|
||||
|
||||
# From https://sourceforge.net/projects/mpg123/files/mpg123/1.25.10/
|
||||
sha1 604784ddbcfe282bffdc595d1d45c677c7cf381f mpg123-1.25.10.tar.bz2
|
||||
md5 ea32caa61d41d8be797f0b04a1b43ad9 mpg123-1.25.10.tar.bz2
|
||||
# Locally calculated
|
||||
sha256 6c1337aee2e4bf993299851c70b7db11faec785303cfca3a5c3eb5f329ba7023 mpg123-1.25.10.tar.bz2
|
||||
# License file
|
||||
sha256 f40e0dd86b27b52e429b693a87b3ca63ae0a98a4d142e77207aa6bdf1db7a295 COPYING
|
||||
|
@ -4,7 +4,7 @@
|
||||
#
|
||||
################################################################################
|
||||
|
||||
MPG123_VERSION = 1.25.2
|
||||
MPG123_VERSION = 1.25.10
|
||||
MPG123_SOURCE = mpg123-$(MPG123_VERSION).tar.bz2
|
||||
MPG123_SITE = http://downloads.sourceforge.net/project/mpg123/mpg123/$(MPG123_VERSION)
|
||||
MPG123_CONF_OPTS = --disable-lfs-alias
|
||||
|
@ -153,6 +153,7 @@ HOST_NCURSES_CONF_OPTS = \
|
||||
--without-cxx \
|
||||
--without-cxx-binding \
|
||||
--without-ada \
|
||||
--with-default-terminfo-dir=/usr/share/terminfo \
|
||||
--without-normal
|
||||
|
||||
$(eval $(autotools-package))
|
||||
|
@ -65,8 +65,8 @@ config BR2_PACKAGE_NETWORK_MANAGER_OVS
|
||||
|
||||
endif
|
||||
|
||||
comment "NetworkManager needs udev /dev management and a glibc toolchain w/ headers >= 3.7, dynamic library"
|
||||
comment "NetworkManager needs udev /dev management and a glibc toolchain w/ headers >= 3.2, dynamic library"
|
||||
depends on BR2_USE_MMU
|
||||
depends on !BR2_PACKAGE_HAS_UDEV || \
|
||||
!BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_7 || \
|
||||
!BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_2 || \
|
||||
!BR2_TOOLCHAIN_USES_GLIBC || BR2_STATIC_LIBS
|
||||
|
@ -1,5 +1,5 @@
|
||||
# From http://nodejs.org/dist/v8.11.1/SHASUMS256.txt
|
||||
sha256 40a6eb51ea37fafcf0cfb58786b15b99152bec672cccf861c14d1cca0ad4758a node-v8.11.1.tar.xz
|
||||
# From http://nodejs.org/dist/v8.11.3/SHASUMS256.txt
|
||||
sha256 577c751fdca91c46c60ffd8352e5b465881373bfdde212c17c3a3c1bd2616ee0 node-v8.11.3.tar.xz
|
||||
|
||||
# Hash for license file
|
||||
sha256 b87be6c1479ed977481115869c2dd8b6d59e5ea55aa09939d6c898242121b2f5 LICENSE
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user