1
- # Maps of system pkg references from
2
- # cabal file to nixpkgs pkgs.
3
- # See ../docs/dev/pkg-map.md
1
+ # Maps of system pkg references from cabal file to nixpkgs pkgs.
2
+ # library name (from `extra-libraries` field of `.cabal` file) -> nixpkgs package(s) mapping.
3
+ # This mapping is used to construct the `libs` component attribute.
4
+ # See ../docs/tutorials/pkg-map.md
4
5
pkgs :
5
- # fetchgit should always come from the evalPackages
6
- # if it comes from the targetPackages we won't even
7
- # be able to execute it.
8
- { fetchgit = pkgs . evalPackages . fetchgit ; }
9
- # haskell lib -> nix lib mapping
6
+
7
+ with pkgs ;
8
+
10
9
# -- linux
11
- // { crypto = pkgs . openssl ;
12
- "c++" = null ; # no libc++
13
- "stdc++" = null ; "stdc++-6" = null ;
14
- ssl = pkgs . openssl ;
15
- z = pkgs . zlib ;
16
- pthread = null ; # available by default
17
- GL = pkgs . libGL ;
18
- GLU = pkgs . libGLU ;
19
- alut = pkgs . freealut ;
20
- X11 = pkgs . xorg . libX11 ;
21
- Xrandr = pkgs . xorg . libXrandr ;
22
- Xext = pkgs . xorg . libXext ;
23
- Xi = pkgs . xorg . libXi ;
24
- Xxf86vm = pkgs . xorg . libXxf86vm ;
25
- Xcursor = pkgs . xorg . libXcursor ;
26
- Xinerama = pkgs . xorg . libXinerama ;
27
- mysqlclient = pkgs . mysql ;
28
- Imlib2 = pkgs . imlib2 ;
29
- asound = pkgs . alsaLib ;
30
- ffi = null ;
31
- bz2 = pkgs . bzip2 ;
32
- util = pkgs . utillinux ;
33
- magic = pkgs . file ;
34
- pq = pkgs . postgresql ;
35
- iconv = pkgs . libiconv ;
36
- lapack = pkgs . liblapack ;
37
- boost_atomic = pkgs . boost ;
38
- boost_chrono = pkgs . boost ;
39
- boost_container = pkgs . boost ;
40
- boost_context = pkgs . boost ;
41
- boost_contract = pkgs . boost ;
42
- boost_coroutine = pkgs . boost ;
43
- boost_date_time = pkgs . boost ;
44
- boost_fiber = pkgs . boost ;
45
- boost_filesystem = pkgs . boost ;
46
- boost_graph = pkgs . boost ;
47
- boost_iostreams = pkgs . boost ;
48
- boost_locale = pkgs . boost ;
49
- boost_log_setup = pkgs . boost ;
50
- boost_log = pkgs . boost ;
51
- boost_math_c99f = pkgs . boost ;
52
- boost_math_c99l = pkgs . boost ;
53
- boost_math_c99 = pkgs . boost ;
54
- boost_math_tr1f = pkgs . boost ;
55
- boost_math_tr1l = pkgs . boost ;
56
- boost_math_tr1 = pkgs . boost ;
57
- boost_prg_exec_monitor = pkgs . boost ;
58
- boost_program_options = pkgs . boost ;
59
- boost_random = pkgs . boost ;
60
- boost_regex = pkgs . boost ;
61
- boost_serialization = pkgs . boost ;
62
- boost_signals = pkgs . boost ;
63
- boost_stacktrace_addr2line = pkgs . boost ;
64
- boost_stacktrace_basic = pkgs . boost ;
65
- boost_stacktrace_noop = pkgs . boost ;
66
- boost_system = pkgs . boost ;
67
- boost_thread = pkgs . boost ;
68
- boost_timer = pkgs . boost ;
69
- boost_type_erasure = pkgs . boost ;
70
- boost_unit_test_framework = pkgs . boost ;
71
- boost_wave = pkgs . boost ;
72
- boost_wserialization = pkgs . boost ;
73
- tensorflow = pkgs . libtensorflow ;
74
- opencv = pkgs . opencv3 ;
75
- icuuc = pkgs . icu ;
76
- icui18n = pkgs . icu ;
77
- icudata = pkgs . icu ;
78
- vulkan = pkgs . vulkan-loader ;
79
- sodium = pkgs . libsodium ;
80
- gfortran = pkgs . gfortran . cc . lib ;
81
- }
10
+ { crypto = [ openssl ] ;
11
+ "c++" = null ; # no libc++
12
+ "stdc++" = null ;
13
+ "stdc++-6" = null ;
14
+ ssl = [ openssl ] ;
15
+ z = [ zlib ] ;
16
+ pthread = null ; # available by default
17
+ GL = [ libGL ] ;
18
+ GLU = [ libGLU ] ;
19
+ alut = [ freealut ] ;
20
+ X11 = with xorg ; [ libX11 ] ;
21
+ Xrandr = [ xorg . libXrandr ] ;
22
+ Xrender = [ xorg . libXrender ] ;
23
+ Xss = [ xorg . libXScrnSaver ] ;
24
+ Xext = [ xorg . libXext ] ;
25
+ Xi = [ xorg . libXi ] ;
26
+ Xxf86vm = [ xorg . libXxf86vm ] ;
27
+ Xcursor = [ xorg . libXcursor ] ;
28
+ Xinerama = [ xorg . libXinerama ] ;
29
+ mysqlclient = [ mysql ] ;
30
+ Imlib2 = [ imlib2 ] ;
31
+ asound = [ alsaLib ] ;
32
+ ffi = null ;
33
+ bz2 = [ bzip2 ] ;
34
+ util = [ utillinux ] ;
35
+ magic = [ file ] ;
36
+ pq = [ postgresql ] ;
37
+ iconv = [ libiconv ] ;
38
+ lapack = [ liblapack ] ;
39
+ boost_atomic = [ boost ] ;
40
+ boost_chrono = [ boost ] ;
41
+ boost_container = [ boost ] ;
42
+ boost_context = [ boost ] ;
43
+ boost_contract = [ boost ] ;
44
+ boost_coroutine = [ boost ] ;
45
+ boost_date_time = [ boost ] ;
46
+ boost_fiber = [ boost ] ;
47
+ boost_filesystem = [ boost ] ;
48
+ boost_graph = [ boost ] ;
49
+ boost_iostreams = [ boost ] ;
50
+ boost_locale = [ boost ] ;
51
+ boost_log_setup = [ boost ] ;
52
+ boost_log = [ boost ] ;
53
+ boost_math_c99f = [ boost ] ;
54
+ boost_math_c99l = [ boost ] ;
55
+ boost_math_c99 = [ boost ] ;
56
+ boost_math_tr1f = [ boost ] ;
57
+ boost_math_tr1l = [ boost ] ;
58
+ boost_math_tr1 = [ boost ] ;
59
+ boost_prg_exec_monitor = [ boost ] ;
60
+ boost_program_options = [ boost ] ;
61
+ boost_random = [ boost ] ;
62
+ boost_regex = [ boost ] ;
63
+ boost_serialization = [ boost ] ;
64
+ boost_signals = [ boost ] ;
65
+ boost_stacktrace_addr2line = [ boost ] ;
66
+ boost_stacktrace_basic = [ boost ] ;
67
+ boost_stacktrace_noop = [ boost ] ;
68
+ boost_system = [ boost ] ;
69
+ boost_thread = [ boost ] ;
70
+ boost_timer = [ boost ] ;
71
+ boost_type_erasure = [ boost ] ;
72
+ boost_unit_test_framework = [ boost ] ;
73
+ boost_wave = [ boost ] ;
74
+ boost_wserialization = [ boost ] ;
75
+ tensorflow = [ libtensorflow ] ;
76
+ opencv = [ opencv3 ] ;
77
+ icuuc = [ icu ] ;
78
+ icui18n = [ icu ] ;
79
+ icudata = [ icu ] ;
80
+ vulkan = [ vulkan-loader ] ;
81
+ sodium = [ libsodium ] ;
82
+ gfortran = [ gfortran . cc . lib ] ;
83
+ }
82
84
# -- windows
83
85
// { advapi32 = null ; gdi32 = null ; imm32 = null ; msimg32 = null ;
84
86
shell32 = null ; shfolder = null ; shlwapi = null ; user32 = null ;
@@ -88,12 +90,12 @@ pkgs:
88
90
# if it's not we have more severe
89
91
# issues anyway.
90
92
gcc_s_seh-1 = null ;
91
- ssl32 = null ; eay32 = pkgs . openssl ;
93
+ ssl32 = null ; eay32 = [ openssl ] ;
92
94
iphlpapi = null ; # IP Help API
93
95
msvcrt = null ; # this is the libc
94
96
Crypt32 = null ;
95
97
mswsock = null ;
96
98
}
97
99
# -- os x
98
100
# NB: these map almost 1:1 to the framework names
99
- // pkgs . darwin . apple_sdk . frameworks
101
+ // darwin . apple_sdk . frameworks
0 commit comments