-
Notifications
You must be signed in to change notification settings - Fork 1
/
dune
51 lines (49 loc) · 1.36 KB
/
dune
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
46
47
48
49
50
51
(data_only_dirs vendor)
(rule
(targets libmpg123.a dllmpg123%{ext_dll})
(deps
(source_tree vendor))
(action
(no-infer
(progn
(chdir
vendor/mpg123-1.29.2
(progn
(bash
"sh configure --with-pic=yes --with-audio=dummy --enable-static=yes --enable-silent-rules")
(bash "make")
; MacOS X hack: make insists on creating a .dylib file but %{ext_dll}
; evaluates to .so on this platform, so just copy it
(bash
"test -e src/libmpg123/.libs/libmpg123.dylib && cp -f src/libmpg123/.libs/libmpg123.dylib src/libmpg123/.libs/libmpg123.so")))
(copy vendor/mpg123-1.29.2/src/libmpg123/.libs/libmpg123.a libmpg123.a)
(copy
vendor/mpg123-1.29.2/src/libmpg123/.libs/libmpg123%{ext_dll}
dllmpg123%{ext_dll})))))
(library
(name mpg123)
(public_name mpg123)
(flags
(:standard -w -9-27))
(foreign_archives mpg123)
(ctypes
(external_library_name mpg123)
(build_flags_resolver
(vendored
(c_flags
(-fPIC -I vendor/mpg123-1.29.2/src/libmpg123/))
(c_library_flags ())))
(headers
(include "mpg123.h"))
(type_description
(instance Types)
(functor Type_description))
(function_description
(concurrency unlocked)
(instance Functions)
(functor Function_description))
(generated_types Types_generated)
(generated_entry_point C))
(inline_tests)
(preprocess
(pps ppx_inline_test)))