aboutsummaryrefslogtreecommitdiff
path: root/gnu/packages/crates-apple.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/crates-apple.scm')
-rw-r--r--gnu/packages/crates-apple.scm261
1 files changed, 261 insertions, 0 deletions
diff --git a/gnu/packages/crates-apple.scm b/gnu/packages/crates-apple.scm
index c9032bfac2..2749fb9971 100644
--- a/gnu/packages/crates-apple.scm
+++ b/gnu/packages/crates-apple.scm
@@ -400,3 +400,264 @@ Central Dispatch.")
(base32
"019nzy993hxaiazcdnayx3csv2iki34i535asw11ki96hakkrs84"))))
(arguments '(#:tests? #f)))) ; Tests only run on Mac.
+
+(define-public rust-objc-0.2
+ (package
+ (name "rust-objc")
+ (version "0.2.7")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "objc" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1cbpf6kz8a244nn1qzl3xyhmp05gsg4n313c9m3567625d3innwi"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:tests? #f ; Tests require gcc-objc.
+ #:cargo-inputs
+ (("rust-malloc-buf" ,rust-malloc-buf-0.0)
+ ("rust-objc-exception" ,rust-objc-exception-0.1))))
+ (home-page "https://github.com/SSheldon/rust-objc")
+ (synopsis "Objective-C Runtime bindings and wrapper for Rust")
+ (description "This package provides an Objective-C Runtime bindings and
+wrapper for Rust.")
+ (license license:expat)))
+
+(define-public rust-objc-exception-0.1
+ (package
+ (name "rust-objc-exception")
+ (version "0.1.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "objc_exception" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "191cmdmlypp6piw67y4m8y5swlxf5w0ss8n1lk5xd2l1ans0z5xd"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:skip-build? #t
+ #:cargo-inputs
+ (("rust-cc" ,rust-cc-1))))
+ (home-page "https://github.com/SSheldon/rust-objc-exception")
+ (synopsis "Rust interface for Objective-C's throw and try/catch statements")
+ (description
+ "This package provides a Rust interface for Objective-C's throw and
+try/catch statements.")
+ (license license:expat)))
+
+(define-public rust-objc-foundation-0.1
+ (package
+ (name "rust-objc-foundation")
+ (version "0.1.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "objc-foundation" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1y9bwb3m5fdq7w7i4bnds067dhm4qxv4m1mbg9y61j9nkrjipp8s"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:skip-build? #t ; Only available on macOS.
+ #:cargo-inputs
+ (("rust-block" ,rust-block-0.1)
+ ("rust-objc" ,rust-objc-0.2)
+ ("rust-objc-id" ,rust-objc-id-0.1))))
+ (home-page "https://github.com/SSheldon/rust-objc-foundation")
+ (synopsis "Rust wrapper for Objective-C's Foundation framework")
+ (description "This package provides a rust wrapper for Objective-C's
+Foundation framework.")
+ (license license:expat)))
+
+(define-public rust-objc-id-0.1
+ (package
+ (name "rust-objc-id")
+ (version "0.1.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "objc_id" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0fq71hnp2sdblaighjc82yrac3adfmqzhpr11irhvdfp9gdlsbf9"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:tests? #f ; Tests require gcc-objc.
+ #:cargo-inputs (("rust-objc" ,rust-objc-0.2))))
+ (home-page "https://github.com/SSheldon/rust-objc-id")
+ (synopsis "Rust smart pointers for Objective-C reference counting")
+ (description
+ "This package provides Rust smart pointers for Objective-C reference counting.")
+ (license license:expat)))
+
+(define-public rust-objc-sys-0.3
+ (package
+ (name "rust-objc-sys")
+ (version "0.3.2")
+ (source (origin
+ (method url-fetch)
+ (uri (crate-uri "objc-sys" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0nbl4p4dmajhm0ji1z09jrlrxhqs4jfkvj1zjschh38qwhj17iy7"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:skip-build? #t ; Needs gcc-objc
+ #:cargo-inputs (("rust-cc" ,rust-cc-1))))
+ (home-page "https://github.com/madsmtm/objc2")
+ (synopsis "Raw bindings to the Objective-C runtime and ABI")
+ (description
+ "This package provides raw bindings to the Objective-C runtime and ABI.")
+ (license license:expat)))
+
+(define-public rust-objc-sys-0.2
+ (package
+ (inherit rust-objc-sys-0.3)
+ (name "rust-objc-sys")
+ (version "0.2.0-beta.2")
+ (source (origin
+ (method url-fetch)
+ (uri (crate-uri "objc-sys" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1msm1bwv69k12ikxm71mi1ifrbx2bzsmk2w2bah98mp9q4s9hfyz"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:skip-build? #t ; Needs gcc-objc
+ #:cargo-inputs (("rust-cc" ,rust-cc-1))))))
+
+(define-public rust-objc-test-utils-0.0
+ (package
+ (name "rust-objc-test-utils")
+ (version "0.0.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "objc_test_utils" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "09rckmp5h9bbns08xzicdlk7y5lxj2ygbg3yqk1cszfnzd5n8kzx"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:skip-build? #t
+ #:cargo-inputs
+ (("rust-gcc" ,rust-gcc-0.3))))
+ (home-page "https://github.com/SSheldon/rust-objc")
+ (synopsis "Utilities for testing Objective-C interop")
+ (description
+ "This package provides utilities for testing Objective-C interop.")
+ (license license:expat)))
+
+(define-public rust-objc2-0.4
+ (package
+ (name "rust-objc2")
+ (version "0.4.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "objc2" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32 "13gr3zqv8gzlylff5d4za91f50asb7vsrkpv8kiva3nkzm05m72m"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:skip-build? #t ; link kind `framework` is only supported on Apple targets
+ #:cargo-inputs (("rust-malloc-buf" ,rust-malloc-buf-1)
+ ("rust-objc-sys" ,rust-objc-sys-0.3)
+ ("rust-objc2-encode" ,rust-objc2-encode-3)
+ ("rust-objc2-proc-macros" ,rust-objc2-proc-macros-0.1))
+ #:cargo-development-inputs
+ (("rust-iai" ,rust-iai-0.1)
+ ("rust-static-assertions" ,rust-static-assertions-1))))
+ (home-page "https://github.com/madsmtm/objc2")
+ (synopsis
+ "Objective-C interface and bindings to the Cocoa Foundation framework")
+ (description "This package provides Objective-C interface and bindings to
+the Cocoa Foundation framework.")
+ (license license:expat)))
+
+(define-public rust-objc2-0.3
+ (package
+ (inherit rust-objc2-0.4)
+ (name "rust-objc2")
+ (version "0.3.0-beta.3")
+ (source (origin
+ (method url-fetch)
+ (uri (crate-uri "objc2" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0jfnrwmp6n2d6snlpcyfk9l41nhm50wj9h42b6hqj2rxbm1facgy"))))
+ (arguments
+ `(#:skip-build? #t
+ #:cargo-inputs
+ (("rust-block2" ,rust-block2-0.2) ; 0.2.0-alpha.6
+ ("rust-objc-sys" ,rust-objc-sys-0.2) ; 0.2.0-beta.2
+ ("rust-objc2-encode" ,rust-objc2-encode-2) ; 2.0.0-pre.2
+ ("rust-objc2-proc-macros" ,rust-objc2-proc-macros-0.1)
+ ("rust-uuid" ,rust-uuid-1))))))
+
+(define-public rust-objc2-encode-3
+ (package
+ (name "rust-objc2-encode")
+ (version "3.0.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "objc2-encode" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32 "0rknhkcnyj4qv1pzqp5j8l80726phz8fcxpsbpz9nhmg6xdq8yfh"))))
+ (build-system cargo-build-system)
+ (home-page "https://github.com/madsmtm/objc2")
+ (synopsis "Objective-C type-encoding representation and parsing")
+ (description "This package provides objective-C type-encoding
+representation and parsing.")
+ (license license:expat)))
+
+(define-public rust-objc2-encode-2
+ (package
+ (inherit rust-objc2-encode-3)
+ (name "rust-objc2-encode")
+ (version "2.0.0-pre.2")
+ (source (origin
+ (method url-fetch)
+ (uri (crate-uri "objc2-encode" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "04h5wns3hxmc9g652hr9xqzrijs4ij9sdnlgc0ha202v050srz5b"))))
+ (arguments
+ `(#:tests? #f ; Test suite wants gcc-objc
+ #:cargo-inputs (("rust-objc-sys" ,rust-objc-sys-0.2))))))
+
+(define-public rust-objc2-proc-macros-0.1
+ (package
+ (name "rust-objc2-proc-macros")
+ (version "0.1.1")
+ (source (origin
+ (method url-fetch)
+ (uri (crate-uri "objc2-proc-macros" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "07j3snswvj6532x32zgn4llc2xaf31rj4iw18n6dsrf2p0jvh1xr"))))
+ (build-system cargo-build-system)
+ (home-page "https://github.com/madsmtm/objc2")
+ (synopsis "Procedural macros for the objc2 project")
+ (description "This package provides procedural macros for the objc2 project.")
+ (license license:expat)))