@@ -1,84 +1,86 @@
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
45pkgs:
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+
109# -- 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+}
8284# -- windows
8385// { advapi32 = null; gdi32 = null; imm32 = null; msimg32 = null;
8486 shell32 = null; shfolder = null; shlwapi = null; user32 = null;
@@ -88,7 +90,7 @@ pkgs:
8890 # if it's not we have more severe
8991 # issues anyway.
9092 gcc_s_seh-1 = null;
91− ssl32 = null; eay32 = pkgs.openssl;
93+ ssl32 = null; eay32 = [ openssl ];
9294 iphlpapi = null; # IP Help API
9395 msvcrt = null; # this is the libc
9496 Crypt32 = null;
@@ -96,4 +98,4 @@ pkgs:
9698 }
9799# -- os x
98100# NB: these map almost 1:1 to the framework names
99−// pkgs.darwin.apple_sdk.frameworks
101+// darwin.apple_sdk.frameworks