Received: by 2002:a05:6a10:8c0a:0:0:0:0 with SMTP id go10csp3266969pxb; Tue, 19 Jan 2021 19:20:06 -0800 (PST) X-Google-Smtp-Source: ABdhPJyRM/8jg5hQ/XxT5R5NkWB1RJCLVVBhitlrPY1gwgkCHYGPI5JDiXgJaIUduMca6/OPSekL X-Received: by 2002:a17:906:d1cb:: with SMTP id bs11mr4599371ejb.535.1611112806280; Tue, 19 Jan 2021 19:20:06 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1611112806; cv=none; d=google.com; s=arc-20160816; b=eER4ZCRADbkz+VZ7RzHw2MvOWUaynGB4FAxi5w5L1m7+ShdYigkVzNRywupfzqFac9 JsK9a6CaFVluXfh37brcy88McF+IZ5h9Rtp5zb9q2TbWgiGeD+SgfwnKQewlAEZxrC+s 0tMDWTsas/+5gsE0hKpeP/xD4hdYsA9/amRMgaOgPlPLbqMMQ5VBRTxDhX+tFU6d5ebZ aB8ty/7dUoFGOfdlg6XeZ/M1r6lHvIB8hw4UznH3MlG6Kk07bWViugtIEJ/9S3aNqQsH uKFU2EHY76QHAtIf4KY+GPLhzjVVK1h2UnXvBo9vF8gDAr2ov/+zDj9ojCC/cXRRNbS0 pNHA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:subject:message-id:date:from:in-reply-to :references:mime-version:dkim-signature; bh=IoAS2iYBLHsRua0ToD9jNwcwJKOxvef2a5weUgRGbk0=; b=kMiVImVIzya24iBoPxIj00x4uHnQ17VXycjUPtVjdCMZFxV42k3SoxWEbSS67Bu6BC 1Z8xbrhitT7mI4ZjSqXinV/s6x6FUcKlQ7aFGBNAzU4I8uwRlG6HHGZstzb/VP6ZtLad XpbiWpctpcQ6bNejpjGoDleP+zGO/BaYyUZWVkwpESc3xf8meM29rAmhYJ3ZatDiYxee /v+sbclLmgaYJyNyMuHtDDkodD+cXd5rnjA6PhV6/1u5fiaLaNAjn14dbwTqA8tGGkxT 3PFUa3Zf0lamEOeN8wCv9/pzr7/BOspWptTKLhvcqOqwEJo+tB+kvyj+sfkL1RKDhw7c A6Vw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@google.com header.s=20161025 header.b=payUoMdP; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id d27si245143ejt.58.2021.01.19.19.19.34; Tue, 19 Jan 2021 19:20:06 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@google.com header.s=20161025 header.b=payUoMdP; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1729054AbhATDR3 (ORCPT + 99 others); Tue, 19 Jan 2021 22:17:29 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:42438 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1731541AbhATCoa (ORCPT ); Tue, 19 Jan 2021 21:44:30 -0500 Received: from mail-pf1-x42e.google.com (mail-pf1-x42e.google.com [IPv6:2607:f8b0:4864:20::42e]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 745F1C0613D6 for ; Tue, 19 Jan 2021 18:43:49 -0800 (PST) Received: by mail-pf1-x42e.google.com with SMTP id f63so5772302pfa.13 for ; Tue, 19 Jan 2021 18:43:49 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=IoAS2iYBLHsRua0ToD9jNwcwJKOxvef2a5weUgRGbk0=; b=payUoMdP99ddV95PcEbXHC19WExfJT6yZ/S4Ppoq/PLGAFbIoNn7Ocr9I+rvAyWbCp vl8P28OthlrC8/YP790veImXuigRJQ+FCsfMuvuUXkcuWlHIm3ORZYgnSOfFBWVqwrsx etQUHaMuNXSZiBSaJug8IAPdQ9Y3kmvOKMD0epVjkDWIzoTugBJ/UJsLq6QRvOCAMGks 52gEg7tfjfjS/5IPrbkLmpMxaXgQ8LA6lTT+oUp4pmz1yte+4ljxAX1G0rCyimsvXUrJ kSRn7OSiizNM1UAmaUFSCvMIBFfNTpucrCHH8toBTyzLLoxOk4H4/MXbBVrxQMm75Y9g le8w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=IoAS2iYBLHsRua0ToD9jNwcwJKOxvef2a5weUgRGbk0=; b=DmnjcWEECxsOLgLR8M0BZdEOrW/AjfwF4F0rZgg5aQ7Uu832JFYlzTLOrAemy3+8Qf tOMB1/1G+ZcwvMG2W9KJ/cuQCmobsyGF4w/muYehbC+kW6uA9w8HGBtxWQEi15oGgDUR 8g0y1ig+tewOn3WsiDwekmS/bjnYbNcEf62PHAWMwUkWohB4ex19efoSSBnmVv2kGmLr bGyA1NDrwLJFhk/MvbWbd9koZQTl8TDUNz+cgM2ssnbdk6BreXNk+hMfh9faI7poLbqJ kf0CWxg3cPd8MLkZFxWZ/8fDO/xBy2EOVleh5GkMstFave30t/vtWtlx2PdR3dycG/F1 O8iw== X-Gm-Message-State: AOAM532ujcSUQRL5UE6LFPPBpYQ9MPeWEfgjbSNQg1iY28TjV9MZOF/W JtfrucxR40KbUeLetShtkVyoqOscG/1jHU2tbdElLw== X-Received: by 2002:a63:1f47:: with SMTP id q7mr7252992pgm.10.1611110628633; Tue, 19 Jan 2021 18:43:48 -0800 (PST) MIME-Version: 1.0 References: <1611042978-21473-1-git-send-email-yangtiezhu@loongson.cn> In-Reply-To: <1611042978-21473-1-git-send-email-yangtiezhu@loongson.cn> From: Nick Desaulniers Date: Tue, 19 Jan 2021 18:43:36 -0800 Message-ID: Subject: Re: [PATCH bpf-next v2] samples/bpf: Update README.rst and Makefile for manually compiling LLVM and clang To: Tiezhu Yang Cc: Alexei Starovoitov , Daniel Borkmann , Andrii Nakryiko , Martin KaFai Lau , Song Liu , Yonghong Song , John Fastabend , KP Singh , Nathan Chancellor , Network Development , bpf , clang-built-linux , LKML , Xuefeng Li Content-Type: text/plain; charset="UTF-8" Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Mon, Jan 18, 2021 at 11:56 PM Tiezhu Yang wrote: > > The current llvm/clang build procedure in samples/bpf/README.rst is > out of date. See below that the links are not accessible any more. > > $ git clone http://llvm.org/git/llvm.git > Cloning into 'llvm'... > fatal: unable to access 'http://llvm.org/git/llvm.git/': Maximum (20) redirects followed > $ git clone --depth 1 http://llvm.org/git/clang.git > Cloning into 'clang'... > fatal: unable to access 'http://llvm.org/git/clang.git/': Maximum (20) redirects followed > > The llvm community has adopted new ways to build the compiler. There are > different ways to build llvm/clang, the Clang Getting Started page [1] has > one way. As Yonghong said, it is better to just copy the build procedure > in Documentation/bpf/bpf_devel_QA.rst to keep consistent. > > I verified the procedure and it is proved to be feasible, so we should > update README.rst to reflect the reality. At the same time, update the > related comment in Makefile. > > [1] https://clang.llvm.org/get_started.html There's also https://www.kernel.org/doc/html/latest/kbuild/llvm.html#getting-llvm (could cross link in rst/sphinx). > > Signed-off-by: Tiezhu Yang > Acked-by: Yonghong Song > --- > > v2: Update the commit message suggested by Yonghong, > thank you very much. > > samples/bpf/Makefile | 2 +- > samples/bpf/README.rst | 17 ++++++++++------- > 2 files changed, 11 insertions(+), 8 deletions(-) > > diff --git a/samples/bpf/Makefile b/samples/bpf/Makefile > index 26fc96c..d061446 100644 > --- a/samples/bpf/Makefile > +++ b/samples/bpf/Makefile > @@ -208,7 +208,7 @@ TPROGLDLIBS_xdpsock += -pthread -lcap > TPROGLDLIBS_xsk_fwd += -pthread > > # Allows pointing LLC/CLANG to a LLVM backend with bpf support, redefine on cmdline: > -# make M=samples/bpf/ LLC=~/git/llvm/build/bin/llc CLANG=~/git/llvm/build/bin/clang > +# make M=samples/bpf LLC=~/git/llvm-project/llvm/build/bin/llc CLANG=~/git/llvm-project/llvm/build/bin/clang > LLC ?= llc > CLANG ?= clang > OPT ?= opt > diff --git a/samples/bpf/README.rst b/samples/bpf/README.rst > index dd34b2d..d1be438 100644 > --- a/samples/bpf/README.rst > +++ b/samples/bpf/README.rst > @@ -65,17 +65,20 @@ To generate a smaller llc binary one can use:: > Quick sniplet for manually compiling LLVM and clang > (build dependencies are cmake and gcc-c++):: > > - $ git clone http://llvm.org/git/llvm.git > - $ cd llvm/tools > - $ git clone --depth 1 http://llvm.org/git/clang.git > - $ cd ..; mkdir build; cd build > - $ cmake .. -DLLVM_TARGETS_TO_BUILD="BPF;X86" Is the BPF target not yet on by default? I frown upon disabling other backends. > - $ make -j $(getconf _NPROCESSORS_ONLN) > + $ git clone https://github.com/llvm/llvm-project.git > + $ mkdir -p llvm-project/llvm/build/install > + $ cd llvm-project/llvm/build > + $ cmake .. -G "Ninja" -DLLVM_TARGETS_TO_BUILD="BPF;X86" \ > + -DLLVM_ENABLE_PROJECTS="clang" \ > + -DBUILD_SHARED_LIBS=OFF \ > + -DCMAKE_BUILD_TYPE=Release \ > + -DLLVM_BUILD_RUNTIME=OFF > + $ ninja > > It is also possible to point make to the newly compiled 'llc' or > 'clang' command via redefining LLC or CLANG on the make command line:: > > - make M=samples/bpf LLC=~/git/llvm/build/bin/llc CLANG=~/git/llvm/build/bin/clang > + make M=samples/bpf LLC=~/git/llvm-project/llvm/build/bin/llc CLANG=~/git/llvm-project/llvm/build/bin/clang > > Cross compiling samples > ----------------------- > -- > 2.1.0 > > -- > You received this message because you are subscribed to the Google Groups "Clang Built Linux" group. > To unsubscribe from this group and stop receiving emails from it, send an email to clang-built-linux+unsubscribe@googlegroups.com. > To view this discussion on the web visit https://groups.google.com/d/msgid/clang-built-linux/1611042978-21473-1-git-send-email-yangtiezhu%40loongson.cn. -- Thanks, ~Nick Desaulniers