Compare commits

..

No commits in common. "ef93147f22a72cf3a5ffc2db686626d75704024a" and "c28addbfc3c2d5b03f12d28078e59d79cb29fe95" have entirely different histories.

3 changed files with 35 additions and 4 deletions

31
Makefile Normal file
View file

@ -0,0 +1,31 @@
# Copyright 2022-2024 Vergara Technologies LLC
#
# This file is part of Zcash-Haskell.
#
# Zcash-Haskell is free software: you can redistribute it and/or modify it
# under the terms of the GNU Lesser General Public License as published by the Free
# Software Foundation, either version 3 of the License, or (at your option) any
# later version.
#
# Zcash-Haskell is distributed in the hope that it will be useful, but WITHOUT
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
# details.
# You should have received a copy of the GNU Lesser General Public License along with
# Zcash-Haskell. If not, see <https://www.gnu.org/licenses/>.
rustlib := librustzcash-wrapper/target/x86_64-unknown-linux-gnu/debug
.PHONY: all
all: haskell
test: test/Spec.hs haskell
stack test
haskell: src/ZcashHaskell/Orchard.hs src/ZcashHaskell/Sapling.hs src/ZcashHaskell/Types.hs src/ZcashHaskell/Utils.hs src/C/Zcash.chs package.yaml stack.yaml $(rustlib)/rustzcash_wrapper.h $(rustlib)/librustzcash_wrapper.a $(rustlib)/librustzcash_wrapper.so $(rustlib)/rustzcash_wrapper-uninstalled.pc
stack build
$(rustlib)/rustzcash_wrapper.h: librustzcash-wrapper/src/lib.rs librustzcash-wrapper/Cargo.toml
cd librustzcash-wrapper && cargo +nightly-2024-02-04 cbuild

View file

@ -17,10 +17,7 @@ A Haskell library to interact with the Zcash blockchain.
```
./configure
```
- Compile the Rust and Haskell portions:
```
cabal build
```
- Compile the Rust and Haskell portions: `make`
## Use

View file

@ -93,7 +93,10 @@ rsAddDirs lbi' = do
updateLibBi libBuild =
libBuild
{ includeDirs = rustIncludeDir : includeDirs libBuild
, extraLibs = "rustzcash_wrapper" : extraLibs libBuild
, extraLibDirs = rustLibDir : extraLibDirs libBuild
, extraBundledLibs = "rustzcash_wrapper" : extraBundledLibs libBuild
, ldOptions = ("-L" ++ localData) : ldOptions libBuild
}
copyDir rustLibDir localData
pure $ updateLbi lbi'