diff mbox series

[bug#65059] gnu: Add csmith.

Message ID cccd5b0895b2e14d183a5e303f325e217365bffb.1691182734.git.olivier.dion@polymtl.ca
State New
Headers show
Series [bug#65059] gnu: Add csmith. | expand

Commit Message

Olivier Dion Aug. 4, 2023, 8:58 p.m. UTC
From: Olivier Dion <odion@efficios.com>

* gnu/packages/linux.scm (csmith): New variable.
---
 gnu/packages/linux.scm | 37 +++++++++++++++++++++++++++++++++++++
 1 file changed, 37 insertions(+)


base-commit: 17fadbb5ea3b35f962ab1bcd5b8cf4e1d699eb7e

Comments

Maxim Cournoyer Sept. 6, 2023, 4:54 a.m. UTC | #1
Hi there!

Olivier Dion <olivier.dion@polymtl.ca> writes:

> From: Olivier Dion <odion@efficios.com>
>
> * gnu/packages/linux.scm (csmith): New variable.
> ---
>  gnu/packages/linux.scm | 37 +++++++++++++++++++++++++++++++++++++
>  1 file changed, 37 insertions(+)
>
> diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm
> index 3aec03a3ec..84ccf5bb13 100644
> --- a/gnu/packages/linux.scm
> +++ b/gnu/packages/linux.scm
> @@ -139,6 +139,7 @@ (define-module (gnu packages linux)
>    #:use-module (gnu packages llvm)
>    #:use-module (gnu packages lsof)
>    #:use-module (gnu packages lua)
> +  #:use-module (gnu packages m4)
>    #:use-module (gnu packages man)
>    #:use-module (gnu packages maths)
>    #:use-module (gnu packages multiprecision)
> @@ -10418,3 +10419,39 @@ (define-public spectre-meltdown-checker
>  against the several transient execution CVEs that were published since early
>  2018, and gives guidance as to how to mitigate them.")
>      (license license:gpl3)))
> +
> +(define-public csmith
> +  (package
> +    (name "csmith")
> +    (version "2.3.0")
> +    (source (origin
> +              (method git-fetch)
> +              (uri (git-reference
> +                    (url "https://github.com/csmith-project/csmith")
> +                    (commit (string-append "csmith-" version))))
> +              (sha256
> +               (base32
> +                "0nhrsnv6cny14xz68qb1h30fbwc05adkisk51p3x63mydm60ddl3"))))
> +    (build-system gnu-build-system)
> +    (native-inputs
> +     (list autoconf automake libtool m4 perl))
> +    (arguments
> +     (list
> +      ;; There is no tests.
> +      #:tests? #f
> +      ;; Do not install headers under include/csmith-VERSION but in include/csmith

Please keep line width under 80 chars; end with trailing period.

> +      #:phases
> +      `(modify-phases %standard-phases
> +         (add-after 'unpack 'patch-includedir
> +           (lambda _
> +             (substitute* "runtime/Makefile.am"
> +               (("\\$\\(includedir\\)/\\$\\(PACKAGE\\)-\\$\\(VERSION\\)")
> +                "$(includedir)/$(PACKAGE)"))))
> +         (replace 'bootstrap
> +           (lambda _
> +             (invoke "autoreconf" "-vfi"))))))

Insteadof replacing bootstrap you can just (delete-file "configure") to
have it recreated.

> +    (home-page "https://github.com/csmith-project/csmith")
> +    (synopsis "Random generator of C programs")
> +    (description "Csmith primary purpose is to find compiler bugs with random
> +programs using differential testing.")

Csmith's or The primary purpose of

The rest LGTM.  Could you send a v2?
diff mbox series

Patch

diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm
index 3aec03a3ec..84ccf5bb13 100644
--- a/gnu/packages/linux.scm
+++ b/gnu/packages/linux.scm
@@ -139,6 +139,7 @@  (define-module (gnu packages linux)
   #:use-module (gnu packages llvm)
   #:use-module (gnu packages lsof)
   #:use-module (gnu packages lua)
+  #:use-module (gnu packages m4)
   #:use-module (gnu packages man)
   #:use-module (gnu packages maths)
   #:use-module (gnu packages multiprecision)
@@ -10418,3 +10419,39 @@  (define-public spectre-meltdown-checker
 against the several transient execution CVEs that were published since early
 2018, and gives guidance as to how to mitigate them.")
     (license license:gpl3)))
+
+(define-public csmith
+  (package
+    (name "csmith")
+    (version "2.3.0")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://github.com/csmith-project/csmith")
+                    (commit (string-append "csmith-" version))))
+              (sha256
+               (base32
+                "0nhrsnv6cny14xz68qb1h30fbwc05adkisk51p3x63mydm60ddl3"))))
+    (build-system gnu-build-system)
+    (native-inputs
+     (list autoconf automake libtool m4 perl))
+    (arguments
+     (list
+      ;; There is no tests.
+      #:tests? #f
+      ;; Do not install headers under include/csmith-VERSION but in include/csmith
+      #:phases
+      `(modify-phases %standard-phases
+         (add-after 'unpack 'patch-includedir
+           (lambda _
+             (substitute* "runtime/Makefile.am"
+               (("\\$\\(includedir\\)/\\$\\(PACKAGE\\)-\\$\\(VERSION\\)")
+                "$(includedir)/$(PACKAGE)"))))
+         (replace 'bootstrap
+           (lambda _
+             (invoke "autoreconf" "-vfi"))))))
+    (home-page "https://github.com/csmith-project/csmith")
+    (synopsis "Random generator of C programs")
+    (description "Csmith primary purpose is to find compiler bugs with random
+programs using differential testing.")
+    (license license:bsd-4)))