From debbugs-submit-bounces@debbugs.gnu.org Thu Aug 26 17:07:31 2021 Received: (at submit) by debbugs.gnu.org; 26 Aug 2021 21:07:31 +0000 Received: from localhost ([127.0.0.1]:50622 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mJMat-0000a3-4u for submit@debbugs.gnu.org; Thu, 26 Aug 2021 17:07:31 -0400 Received: from lists.gnu.org ([209.51.188.17]:37712) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mJMar-0000Zw-A1 for submit@debbugs.gnu.org; Thu, 26 Aug 2021 17:07:25 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:37408) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mJMar-0004dT-57 for guix-patches@gnu.org; Thu, 26 Aug 2021 17:07:25 -0400 Received: from mail-wm1-x332.google.com ([2a00:1450:4864:20::332]:34665) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1mJMap-0003Fg-8l for guix-patches@gnu.org; Thu, 26 Aug 2021 17:07:24 -0400 Received: by mail-wm1-x332.google.com with SMTP id v20-20020a1cf714000000b002e71f4d2026so6240486wmh.1 for ; Thu, 26 Aug 2021 14:07:21 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=muradm-net.20150623.gappssmtp.com; s=20150623; h=from:to:subject:date:message-id:mime-version :content-transfer-encoding; bh=lC82ne9/uG8crC2mtW3Bb7SFFd0IE6QxAoy+Nd+dmxM=; b=pOUPuS4FXS5ugzVZUu7IMj9jXcHilSJcx+G4Z9EjMO4te54UFJk50I9Yi/gR3RxR/A hC96ewc8Hg2W/YmtbRPRujlhM2EuISlMhEd97mDHFYKIgDykPZQxvVCq0Do7PpjvRoKJ kqPNbYmQLTIPrKKhSslfS4BqUS0nM0GkOlU+RRGYXtR0KWyp61V3cfWH6kjLqpj4Iiyr sNIywyoMguS1/nvnPRi6PcYwv7T5ncXNu2y1D6zMFlt+O6nE3lsopmTjO1EYFjIXKlUP 5NEfVquX9J8Enwnl9n1P1CUGwEKQ137oBNWCqP/x6QnbrsdLNQd+cXW7zOt3rQCLEQ5f OzZA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:subject:date:message-id:mime-version :content-transfer-encoding; bh=lC82ne9/uG8crC2mtW3Bb7SFFd0IE6QxAoy+Nd+dmxM=; b=pnF2SfUxZJp9h3DbmDGC30L+CCqkF+wXsWlXCuXqbNNZXjnQZSBHhRH5GhEcy7yjQ9 qcf+izGAohjs69qnkQ9M9653wiB62vPRSRgAiYsdYiZGKsTdHTvI1goOMUMwVvQH7lOk OSPr1J5CApXTpRJgFJPIbqJjsgfTwvwJOkz1GtZwFsLXzTm+YSP7NPXg3YEUn6wJ15T7 vS5tGwZAPNDXJf3B1RR829L9gPGST6vVnmh5eNjvvxF9APLqYBn4rhro5zsRSS7JHihx qLHybpweq6NqZZ8p0DfEI47kuOyNSOZFKUJrDLKXCNtUQC7qDZbj2/aiykxv8kDqEsm9 bOUA== X-Gm-Message-State: AOAM530im78NEr2ktoqqryBtbMrna47V++3UtFKZJKsPGUZZigbGc7HG qVdoV9qVIfXJEpIvS//orqTB49aEfOv2nQ== X-Google-Smtp-Source: ABdhPJxxtPmf6D6Z4cx9QWqtYdv28/gLXpjSKOqPNV0EZ7MN24wWnHRyWM5+IQ2IBvVqcH5NkPUd9A== X-Received: by 2002:a1c:27c5:: with SMTP id n188mr16263494wmn.126.1630012040452; Thu, 26 Aug 2021 14:07:20 -0700 (PDT) Received: from localhost.localdomain ([31.142.89.82]) by smtp.gmail.com with ESMTPSA id y11sm5308777wru.0.2021.08.26.14.07.18 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 26 Aug 2021 14:07:19 -0700 (PDT) From: muradm To: guix-patches@gnu.org Subject: [PATCH] gnu: Add c2ffi-11.0.0. Date: Fri, 27 Aug 2021 00:07:12 +0300 Message-Id: <20210826210712.31273-1-mail@muradm.net> X-Mailer: git-send-email 2.33.0 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Received-SPF: none client-ip=2a00:1450:4864:20::332; envelope-from=mail@muradm.net; helo=mail-wm1-x332.google.com X-Spam_score_int: -18 X-Spam_score: -1.9 X-Spam_bar: - X-Spam_report: (-1.9 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_NONE=0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: submit X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) * gnu/packages/cpp.scm (c2ffi): New variable. --- gnu/packages/cpp.scm | 41 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) diff --git a/gnu/packages/cpp.scm b/gnu/packages/cpp.scm index ba921fac11..f2663b7e6e 100644 --- a/gnu/packages/cpp.scm +++ b/gnu/packages/cpp.scm @@ -18,6 +18,7 @@ ;;; Copyright © 2020 Brett Gilio ;;; Copyright © 2020 Milkey Mouse ;;; Copyright © 2021 Raghav Gururajan +;;; Copyright © 2021 muradm ;;; ;;; This file is part of GNU Guix. @@ -1250,3 +1251,43 @@ of reading and writing XML.") (description "Jsonnet is a templating language extending JSON syntax with variables, conditions, functions and more.") (license license:asl2.0))) + +(define-public c2ffi + (package + (name "c2ffi") + (home-page "https://github.com/rpav/c2ffi") + (version "11.0.0") + (source (origin + (method git-fetch) + (uri (git-reference + (url home-page) + (commit (string-append "llvm-" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "17j73yb6v3lfvwwicl2f3yg141iz2dk1rf874qzqs5bkq64ldjsj")) + (modules '((guix build utils))) + (snippet + '(substitute* "CMakeLists.txt" + ;; cmake-build-system default cmake version + (("VERSION 3.17") "VERSION 3.16.5") + ;; guix seems to be packaging LLVM libs separately + ;; thus -lLLVM is not working, every used library should + ;; be specified explicitly + (("c2ffi PUBLIC clang-cpp LLVM") + "c2ffi PUBLIC clang-cpp LLVMCore LLVMSupport LLVMMCParser LLVMOption LLVMBitReader LLVMProfileData"))))) + (build-system cmake-build-system) + (arguments + '(;; llvm-11 at least seems to be built without RTTI + ;; llvm-12 on the other hand specifies -DLLVM_REQUIRES_RTTI=1 + ;; may fail with this flag when c2ffi for llvm-12 released + ;; https://stackoverflow.com/q/11904519 + #:configure-flags '("-DCMAKE_CXX_FLAGS=-fno-rtti") + #:tests? #f)) + (inputs + `(("clang" ,clang-11) + ("llvm" ,llvm-11))) + (synopsis "Clang-based FFI wrapper generator") + (description "tool for extracting definitions from C, C++, and +Objective C headers for use with foreign function call interfaces.") + (license license:gpl2))) -- 2.33.0