From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from [87.239.111.99] (localhost [127.0.0.1]) by dev.tarantool.org (Postfix) with ESMTP id 6A80FA653D6; Tue, 26 Mar 2024 11:34:53 +0300 (MSK) DKIM-Filter: OpenDKIM Filter v2.11.0 dev.tarantool.org 6A80FA653D6 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=tarantool.org; s=dev; t=1711442093; bh=0gPS6NYJBPK9K4VWyHrJ4tO+oTTQ+//HEu25/HAEtx8=; h=To:Date:In-Reply-To:References:Subject:List-Id:List-Unsubscribe: List-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To: From; b=wL8mSAWgIRgsmvBttZntdv1hPFvpQUEMivbbVHW4NoTF/bTR+GmR8vQUXpSsjpi9o bGTUX6rx2wsWCQk/vZvOr2Jzp8Je0ewXr/vZUYXLuc8zx0PU0DjaVJ9/WYI2QuABbg DrMaRwfCkcSjQzDE0BzJmPcEq43deQ/u3yNN7wOQ= Received: from mail-lf1-f49.google.com (mail-lf1-f49.google.com [209.85.167.49]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by dev.tarantool.org (Postfix) with ESMTPS id E4219A653D1 for ; Tue, 26 Mar 2024 11:34:25 +0300 (MSK) DKIM-Filter: OpenDKIM Filter v2.11.0 dev.tarantool.org E4219A653D1 Received: by mail-lf1-f49.google.com with SMTP id 2adb3069b0e04-515a81928faso2546902e87.1 for ; Tue, 26 Mar 2024 01:34:25 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1711442065; x=1712046865; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=6y7RIy4+jU11ztEq9mT6IL1v3FlR2nsLkX52cKT0N0A=; b=tLOWyzuX2+4ykT72ey2/2/CpMZ5xu+geQfqWzNwP+i8nYRFlKkuO2vyQtM9D05+hjl yNRTY+TZ/ZHUZV+NNcvFjFLmzI2xopdWdgzUAfIxVT6C/8tTaS7mJoc6QL4CMKDcMtPf kSMkK1VQGIyVjJ7WdTYMdeX2TJQcBv0P4mgR0UHALC6WCtglNLDsadVEMO4uNAPgCOR/ 8Yrlfd8frHwCTYaEN8qZX9NAas9iHKe0gq9pnoGlsdFj+eYoAh/S2NfEkvYrhPVEHYSX eeJBMUuXwJxBY1nhtpoFjcl3PsKOLSk28bWekoQ/X2TZotrjkRNPFySgx3felscDr0Ro whDA== X-Gm-Message-State: AOJu0YysQNh6IOHAkfARsRucoXXR+57/z62cGkoqUBXEog4NBSMuQhJo NHddR8iyH+BeD+BIcubZ4lW1rbEKwHQ9zCpRSP9BonqZS6yayBsDLxboDYz3gBc= X-Google-Smtp-Source: AGHT+IF77G09GAnmA+gZtZhKRbcRvbSPHXKkkMLWLwepojyxH4o46H/5J9tNqM2tqTy75YaQLh/mPA== X-Received: by 2002:a05:6512:11d2:b0:513:5eea:2942 with SMTP id h18-20020a05651211d200b005135eea2942mr396235lfr.37.1711442064566; Tue, 26 Mar 2024 01:34:24 -0700 (PDT) Received: from pony.. ([5.181.62.126]) by smtp.gmail.com with ESMTPSA id y11-20020a056512044b00b005159c7939basm1434099lfk.185.2024.03.26.01.34.23 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 26 Mar 2024 01:34:24 -0700 (PDT) To: tarantool-patches@dev.tarantool.org, Sergey Kaplun , Maxim Kokryashkin Date: Tue, 26 Mar 2024 11:33:27 +0300 Message-Id: X-Mailer: git-send-email 2.34.1 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Subject: [Tarantool-patches] [PATCH luajit 1/6] ci: execute LuaJIT tests with GCC 10 and ASAN X-BeenThere: tarantool-patches@dev.tarantool.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: Tarantool development patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , From: Sergey Bronnikov via Tarantool-patches Reply-To: Sergey Bronnikov Errors-To: tarantool-patches-bounces@dev.tarantool.org Sender: "Tarantool-patches" From: Sergey Bronnikov The commit fa8e9e9a721e ("test: enable LuaJIT test") brings a workaround to CMake for running tests with LuaJIT built by GCC with enabled AddressSanitizer. However, we have no such configuration in CI, which means that sooner or later it will be broken. The patch adds a job to GH Actions that builds LuaJIT with GCC 10 with enabled AddressSanitizer and runs LuaJIT tests. Linux builds are built by runners on Ubuntu Focal, where GCC 10 is the latest version [1] available in packages. Library libstdc++ is needed by the test for a workaround with AddressSanitizer. 1. https://packages.ubuntu.com/focal/gcc-10 Follows up tarantool/tarantool#9398 Relates to tarantool/tarantool#9656 --- .github/actions/setup-sanitizers/action.yml | 15 ++++++++++++--- .github/workflows/sanitizers-testing.yml | 4 ++++ 2 files changed, 16 insertions(+), 3 deletions(-) diff --git a/.github/actions/setup-sanitizers/action.yml b/.github/actions/setup-sanitizers/action.yml index 4b74f39d..8642d553 100644 --- a/.github/actions/setup-sanitizers/action.yml +++ b/.github/actions/setup-sanitizers/action.yml @@ -1,5 +1,10 @@ name: Setup CI environment for testing with sanitizers on Linux description: Common part to tweak Linux CI runner environment for sanitizers +inputs: + cc_name: + description: C compiler name (for example, gcc-12) + required: false + default: clang-11 runs: using: composite steps: @@ -15,9 +20,13 @@ runs: - name: Install build and test dependencies run: | apt -y update - apt -y install clang-11 cmake ninja-build make perl + apt -y install ${CC_NAME} libstdc++-10-dev cmake ninja-build make perl shell: bash - - name: Set Clang as a default toolchain + env: + CC_NAME: ${{ inputs.cc_name }} + - name: Set specific C compiler as a default toolchain run: | - echo CC=clang-11 | tee -a $GITHUB_ENV + echo CC=${CC_NAME} | tee -a $GITHUB_ENV shell: bash + env: + CC_NAME: ${{ inputs.cc_name }} diff --git a/.github/workflows/sanitizers-testing.yml b/.github/workflows/sanitizers-testing.yml index 4bccfcef..a06398ea 100644 --- a/.github/workflows/sanitizers-testing.yml +++ b/.github/workflows/sanitizers-testing.yml @@ -33,6 +33,7 @@ jobs: matrix: # XXX: Let's start with only Linux/x86_64 BUILDTYPE: [Debug, Release] + CC: [gcc-10, clang-11] include: - BUILDTYPE: Debug CMAKEFLAGS: -DCMAKE_BUILD_TYPE=Debug -DLUA_USE_ASSERT=ON -DLUA_USE_APICHECK=ON @@ -42,6 +43,7 @@ jobs: name: > LuaJIT with ASan (Linux/x86_64) ${{ matrix.BUILDTYPE }} + CC:${{ matrix.CC }} GC64:ON SYSMALLOC:ON steps: - uses: actions/checkout@v3 @@ -50,6 +52,8 @@ jobs: submodules: recursive - name: setup Linux for sanitizers uses: ./.github/actions/setup-sanitizers + with: + cc_name: ${{ matrix.CC }} - name: configure # XXX: LuaJIT configuration requires a couple of tweaks: # LUAJIT_USE_SYSMALLOC=ON: Unfortunately, internal LuaJIT -- 2.34.1