From patchwork Mon Jul 2 14:30:01 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Alex_Benn=C3=A9e?= X-Patchwork-Id: 140777 Delivered-To: patch@linaro.org Received: by 2002:a2e:9754:0:0:0:0:0 with SMTP id f20-v6csp27192ljj; Mon, 2 Jul 2018 07:33:39 -0700 (PDT) X-Google-Smtp-Source: AAOMgpeyu8eKJ+fwGqLeOVnlY+Ns9+mVDLNqFBh6l1ezU/JakWJY4weU1TwYfELU2n57QP+r1Zt/ X-Received: by 2002:ac8:2b46:: with SMTP id 6-v6mr23405604qtv.302.1530542019046; Mon, 02 Jul 2018 07:33:39 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1530542019; cv=none; d=google.com; s=arc-20160816; b=zFgV0cO/0yyAeMyEVF5jPyzYGIzhZ1Ac8fomu92OpH7Dg0dsSGhGrub6nQy32QLDH9 h0eT4mBDZL1hstq4wYhC2a7NYJyQjAwaHWdK4BS8ddb3mj5Wu4m0wWChve4h7xfej5/e xCiHj1Ou9TJMA4cGw/1fDzSBZesdZnYQov2tkXpzhuMgoHawcRtb3YthoaFD6zlPynCP T1kUzKDlkKA2yNB+GIvKFwnToXGKHSEJ+O0nK54NSg2fr/mhzYkVgrrInGEZGQgFHnCV Ej8JUdeML7wXb8u55NloftKAU3+h9Q94eKib0oaI4UdnK+cmfUOVNWZ2pGTzq3hUsAE2 kpTg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:cc:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:subject :content-transfer-encoding:mime-version:message-id:date:to:from :dkim-signature:arc-authentication-results; bh=eyTy2ctZdFuncHzv/6ZTMAZ9B8u0dGm152b2D7IDV/M=; b=y33Jsc+5k3Tvwq4xfOke6WutXV4XZa1R2i5eU+emHbeuo8AuDoJnoP0GVK3LYAl4aK 823stue7eQRaWjYe/m9NC6tOZYQ7zzEWAC0qosA5YakAu9fgMBLowWflLoADdosW77mx /okfrqaX4NzR5ga2DNgbKp5+azE4BqxXd2otpfmSYaXA9vRiBPorSJjsTvVpw1Xh7ECH PZuCcUJ5Jv5SSvdqrlqNHDJxeZjX7qRs3OoQ0+Pbut6Jg1OygewmKsExMi1nDp2kOo8W 26WBGOJH1OahAkmK1wj3bxyr8zrh2JEJb45koNTEMruX3906lEd1QTEI1Vuc7alq76hs Lq8w== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=PIRRWNE2; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [2001:4830:134:3::11]) by mx.google.com with ESMTPS id y8-v6si2074873qtj.61.2018.07.02.07.33.38 for (version=TLS1 cipher=AES128-SHA bits=128/128); Mon, 02 Jul 2018 07:33:39 -0700 (PDT) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) client-ip=2001:4830:134:3::11; Authentication-Results: mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=PIRRWNE2; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from localhost ([::1]:33148 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fZzta-0006W1-Fq for patch@linaro.org; Mon, 02 Jul 2018 10:33:38 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:54272) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fZzqV-0005Lw-Lg for qemu-devel@nongnu.org; Mon, 02 Jul 2018 10:30:28 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fZzqS-0000Q8-Fr for qemu-devel@nongnu.org; Mon, 02 Jul 2018 10:30:27 -0400 Received: from mail-wm0-x231.google.com ([2a00:1450:400c:c09::231]:55013) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fZzqS-0000Pp-5E for qemu-devel@nongnu.org; Mon, 02 Jul 2018 10:30:24 -0400 Received: by mail-wm0-x231.google.com with SMTP id i139-v6so9260215wmf.4 for ; Mon, 02 Jul 2018 07:30:24 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=eyTy2ctZdFuncHzv/6ZTMAZ9B8u0dGm152b2D7IDV/M=; b=PIRRWNE2D6T69+BkcV83kVoh2CtVUEFyIyq5UWF+5pFro0dyxj8Ju49V/zynUGnuNI ypuE04mgiN4WVkoGV6U2Zs7Aau6eHDnlV0eiQoXxVrzYS/c/pH1W+c8nsQDoqPGx65JW YLObD0EGtcbsSnGGXBGx8f090YTuekgUuPtlc= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=eyTy2ctZdFuncHzv/6ZTMAZ9B8u0dGm152b2D7IDV/M=; b=swU/0ec16oK24w/rj5qeiqebVXcDd1WFFo94H0+hv0H3LiKC4VpjLYMmNbCIqKrUtJ fZtBithHwPVOqEEBricb/Mgjl6Xusw/kKSe8a+49Gh1xP5q31eWhlBd86uwJ++ti/mlZ bFJiUg51v6n4/4OO0LP23Jj/I1XWMn+tMp0WTEgUVAg6xD4Ol24LujMyfc7Lby09ZG1C TICqH0rYCc/Yn33ZoncYOw7nPWDAk8UMr+3Y0dPRNf+i1jMu3GAvYOEmtv26YddcaqGI GeZLjiVnKiUzQqKMK0NKNxKfdv63rnA7ouInA+Y2qLE4Woe3xueXi2JXZBk+pa8tUpCx wYXw== X-Gm-Message-State: APt69E3Tfsad4YADz/m7lDqPDwiLwK7ZjMT/fZEd5KGNcde/BX3rJ1pF m50FuMkIervmsRlKkgVv//KxjQ== X-Received: by 2002:a1c:2e90:: with SMTP id u138-v6mr7746715wmu.156.1530541822885; Mon, 02 Jul 2018 07:30:22 -0700 (PDT) Received: from zen.linaro.local ([81.128.185.34]) by smtp.gmail.com with ESMTPSA id e13-v6sm9371240wrd.9.2018.07.02.07.30.22 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Mon, 02 Jul 2018 07:30:22 -0700 (PDT) Received: from zen.linaroharston (localhost [127.0.0.1]) by zen.linaro.local (Postfix) with ESMTP id ABC463E0274; Mon, 2 Jul 2018 15:30:21 +0100 (BST) From: =?utf-8?q?Alex_Benn=C3=A9e?= To: cota@braap.org, famz@redhat.com, berrange@redhat.com, f4bug@amsat.org, richard.henderson@linaro.org, balrogg@gmail.com, aurelien@aurel32.net, agraf@suse.de Date: Mon, 2 Jul 2018 15:30:01 +0100 Message-Id: <20180702143021.18864-1-alex.bennee@linaro.org> X-Mailer: git-send-email 2.17.1 MIME-Version: 1.0 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:400c:c09::231 Subject: [Qemu-devel] [PATCH v3 00/20] Travis, Code Coverage and Cross Build updates X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: pbonzini@redhat.com, =?utf-8?q?Alex_Benn=C3=A9e?= , qemu-devel@nongnu.org Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: "Qemu-devel" Hi, Friday's code dump suffered a little from a rushed posting before the weekend so I spent this morning cleaning up a few of the rough edges. This version is much better for it: - Dropped .shippable changes In the end it looks like building the ppc image won't work in QEMU as it's pre-ci environment hasn't enough in it to build the qemu-ppc linux user we need. - Better boostrap rule naming The rule is now docker-binfmt-image-debian-% which means you can now build any arbitrarily named debian-% image. If we are going support similar binfmt bootstrapping for other distributions I suggest we follow a similar scheme. Does anyone know if anything as funky as debootstrap exists for anything else? With a minor tweak to the debootstrap helper script you can now boostrap Ubuntu images as well. - Dropped docker.py env hack (not needed) - Removed stray whitespace changes The rest works as I outlined in the v2 message: I've picked up some more of Philippe's fixes and in the process had another look at the problem of cross compiling powerpc. In the end the consensus seems to be a linux-user build was the best solution as there are still supported native powerpc toolchains in Jessie (until 2020). So I dusted off my old linux-user patches and tries to plumb them in a little better. Assuming you have ppc-linux-user in your target list and it's a --static you can just run: docker-test-build@debian-powerpc-user-cross TARGET_LIST=ppc-softmmu And it does the right thing. Once the debian-powerpc-user base image is created you can change your configuration and things will still work (until the debian-bootstrap recipe is changed and needs to be re-built). It would be great if I could get reviews for the final few patches: patch 0011/docker filter out linux user builds for mingw.patch patch 0016/docker drop QEMU build dep from bootstrap.patch patch 0017/docker debian bootstrap.pre allow customising of .patch patch 0018/docker add special handling for FROM debian user .patch patch 0019/docker add special rule for deboostrapped images.patch patch 0020/docker add linux user powered cross builder for Q.patch I'll send a pull request tomorrow for soft-freeze. Alex Bennée (14): build-system: remove per-test GCOV reporting .gitignore: add .gcov files docker: add gcovr to travis image travis: add gcovr summary for GCOV build build-system: add clean-coverage target build-system: add coverage-report target linux-user: introduce preexit_cleanup linux-user: add gcov support to preexit_cleanup docker: filter out linux-user builds for mingw docker: drop QEMU build-dep from bootstrap docker: debian-bootstrap.pre allow customising of variant/url docker: add special handling for FROM:debian-%-user targets docker: add special rule for deboostrapped images docker: add linux-user powered cross builder for QEMU Philippe Mathieu-Daudé (6): travis: do not waste time cloning unused submodules travis: test out-of-tree builds docker: ubuntu: Update the package list before installing new ones docker: ubuntu: Use SDL2 docker: Clean the MXE base image docker: Do not run tests in 'intermediate' images .gitignore | 1 + .travis.yml | 14 +++- MAINTAINERS | 1 + Makefile | 24 +++++++ docs/devel/testing.rst | 21 ++++-- linux-user/Makefile.objs | 2 +- linux-user/exit.c | 35 ++++++++++ linux-user/qemu.h | 8 +++ linux-user/syscall.c | 10 +-- scripts/travis/coverage-summary.sh | 27 +++++++ tests/Makefile.include | 10 --- tests/docker/Makefile.include | 70 +++++++++++++++++-- tests/docker/docker.py | 4 ++ .../dockerfiles/debian-bootstrap.docker | 2 - tests/docker/dockerfiles/debian-bootstrap.pre | 11 ++- .../debian-powerpc-user-cross.docker | 13 ++++ tests/docker/dockerfiles/debian8-mxe.docker | 2 +- tests/docker/dockerfiles/travis.docker | 2 +- tests/docker/dockerfiles/ubuntu.docker | 8 +-- 19 files changed, 222 insertions(+), 43 deletions(-) create mode 100644 linux-user/exit.c create mode 100755 scripts/travis/coverage-summary.sh create mode 100644 tests/docker/dockerfiles/debian-powerpc-user-cross.docker -- 2.17.1