generated from GrayJack/rust-janet-module-template
-
Notifications
You must be signed in to change notification settings - Fork 0
/
project.janet
45 lines (38 loc) · 1.67 KB
/
project.janet
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
(declare-project
:name "str-ext"
:description "Janet library with functions to extend the available API for string and buffers in the langauge"
:author "GrayJack"
:license "MIT or Apache 2.0"
:url "https://grayjack.github.io/janet-str-ext/"
:repo "git+https://github.com/GrayJack/janet-str-ext.git")
(post-deps
(declare-native
:name "template"
:source [])
(phony "build-release" []
(os/execute ["mkdir" "-p" "build"] :p)
(os/execute ["cargo" "build" "--release" "--target-dir" "target" "--quiet"] :p)
(os/execute ["cp" "target/release/libstr_ext.a" "build/str_ext.a"] :p)
(let [os (os/which)]
(if (= os :linux)
(os/execute ["cp" "target/release/libstr_ext.so" "build/str_ext.so"] :p))
(if (= os :macos)
(os/execute ["cp" "target/release/libstr_ext.dylib" "build/str_ext.dylib"] :p))
(if (= os :windows)
(os/execute ["cp" "target/release/libstr_ext.dll" "build/str_ext.dll"] :p))))
(phony "build-debug" []
(os/execute ["cargo" "build" "--debug" "--target-dir" "target" "--quiet"] :p)
(os/execute ["mkdir" "-p" "build"] :p)
(os/execute ["cp" "target/debug/libstr_ext.a" "build/str_ext.a"] :p)
(let [os (os/which)]
(if (= os :linux)
(os/execute ["cp" "target/debug/libstr_ext.so" "build/str_ext.so"] :p))
(if (= os :macos)
(os/execute ["cp" "target/debug/libstr_ext.dylib" "build/str_ext.dylib"] :p))
(if (= os :windows)
(os/execute ["cp" "target/debug/libstr_ext.dll" "build/str_ext.dll"] :p))))
(phony "all" ["build-release"])
(add-dep "build" "all")
(phony "clean-target" []
(os/execute ["rm" "-rf" "target"] :p))
(add-dep "clean" "clean-target"))