diff mbox

gnu: add asn1c

Message ID 1472741879-7459-2-git-send-email-h.goebel@crazy-compilers.com
State New
Headers show

Commit Message

Hartmut Goebel Sept. 1, 2016, 2:57 p.m. UTC
* gnu/packages/tsl.scm (asn1c): New variable.
---
 gnu/packages/tls.scm | 29 +++++++++++++++++++++++++++++
 1 file changed, 29 insertions(+)

Comments

Ricardo Wurmus Sept. 1, 2016, 3:09 p.m. UTC | #1
Hi Hartmut,

> * gnu/packages/tsl.scm (asn1c): New variable.

Thanks for the patch!  Below are some comments about style and customs :)

>  gnu/packages/tls.scm | 29 +++++++++++++++++++++++++++++
>  1 file changed, 29 insertions(+)
>
> diff --git a/gnu/packages/tls.scm b/gnu/packages/tls.scm
> index 4b87150..52136f6 100644
> --- a/gnu/packages/tls.scm
> +++ b/gnu/packages/tls.scm
> @@ -7,6 +7,7 @@
>  ;;; Copyright © 2015 Leo Famulari <leo@famulari.name>
>  ;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
>  ;;; Copyright © 2016 ng0 <ng0@we.make.ritual.n0.is>
> +;;; Copyright © 2016 Hartmut Goebel <h.goebel@crazy-compilers.com>
>  ;;;
>  ;;; This file is part of GNU Guix.
>  ;;;
> @@ -68,6 +69,34 @@ networking, allowing for formal validation of data according to some
>  specifications.")
>      (license license:lgpl2.0+)))
>  
> +(define-public asn1c
> +  (package
> +    (name "asn1c")
> +    (version "0.9.27")
> +    (source (origin
> +      (method url-fetch)
> +      (uri (string-append "https://lionet.info/soft/asn1c-" version ".tar.gz"))
> +      (sha256 (base32 "17nvn2kzvlryasr9dzqg6gs27b9lvqpval0k31pb64bjqbhn8pq2"))))

The indentation is off.  We would usually format like this:

(source
 (origin
   (method url-fetch)
   (uri (string-append "https://lionet.info/soft/asn1c-"
                       version ".tar.gz"))
   (sha256
    (base32
     "17nvn2kzvlryasr9dzqg6gs27b9lvqpval0k31pb64bjqbhn8pq2"))))

> +    (build-system gnu-build-system)
> +    (native-inputs
> +     `(("perl" ,perl)))
> +    (home-page "https://lionet.info/asn1c")
> +    (synopsis "ASN.1 to C  Compiler")

Please remove the extra space between “C” and “Compiler”, and use
lower-case for “Compiler”.

> +    (description "The ASN.1 to C compiler takes the ASN.1 module
> +files (example) and generates the C++ compatible C source code.  That code can
> +be used to serialize the native C structures into compact and unambiguous
> +BER/XER/PER-based data files, and deserialize the files back.
> +

“takes the ASN.1 module files ... generates the C++...” –> the “the”
should be removed in both cases.  What does “(example)” mean?

> +Various ASN.1 based formats are widely used in the industry, such as to encode
> +the X.509 certificates employed in the HTTPS handshake, to exchange control
> +data between mobile phones and cellular networks, to car-to-car communication
> +in intelligent transportation networks.
> +
> +The ASN.1 standard is large and complex and no open source compiler supports
> +it in its entirety.  The asn1c is arguably the most evolved open source ASN.1
> +compiler.")

I would remove the last paragraph.  If it were kept we would remove
the phrase “open source”.  “most evolved” sounds like an advertisement
statement, which we like to keep out of descriptions.

~~ Ricardo
Hartmut Goebel Sept. 1, 2016, 3:17 p.m. UTC | #2
Am 01.09.2016 um 17:09 schrieb Ricardo Wurmus:
>  What does “(example)” mean?

I don't know. I removed it.

The other points I've just fixed ans send an updated patch.
diff mbox

Patch

diff --git a/gnu/packages/tls.scm b/gnu/packages/tls.scm
index 4b87150..52136f6 100644
--- a/gnu/packages/tls.scm
+++ b/gnu/packages/tls.scm
@@ -7,6 +7,7 @@ 
 ;;; Copyright © 2015 Leo Famulari <leo@famulari.name>
 ;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2016 ng0 <ng0@we.make.ritual.n0.is>
+;;; Copyright © 2016 Hartmut Goebel <h.goebel@crazy-compilers.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -68,6 +69,34 @@  networking, allowing for formal validation of data according to some
 specifications.")
     (license license:lgpl2.0+)))
 
+(define-public asn1c
+  (package
+    (name "asn1c")
+    (version "0.9.27")
+    (source (origin
+      (method url-fetch)
+      (uri (string-append "https://lionet.info/soft/asn1c-" version ".tar.gz"))
+      (sha256 (base32 "17nvn2kzvlryasr9dzqg6gs27b9lvqpval0k31pb64bjqbhn8pq2"))))
+    (build-system gnu-build-system)
+    (native-inputs
+     `(("perl" ,perl)))
+    (home-page "https://lionet.info/asn1c")
+    (synopsis "ASN.1 to C  Compiler")
+    (description "The ASN.1 to C compiler takes the ASN.1 module
+files (example) and generates the C++ compatible C source code.  That code can
+be used to serialize the native C structures into compact and unambiguous
+BER/XER/PER-based data files, and deserialize the files back.
+
+Various ASN.1 based formats are widely used in the industry, such as to encode
+the X.509 certificates employed in the HTTPS handshake, to exchange control
+data between mobile phones and cellular networks, to car-to-car communication
+in intelligent transportation networks.
+
+The ASN.1 standard is large and complex and no open source compiler supports
+it in its entirety.  The asn1c is arguably the most evolved open source ASN.1
+compiler.")
+    (license license:bsd-2)))
+
 (define-public p11-kit
   (package
     (name "p11-kit")