1{ fetchurl, python, xar, cpio, cctools, insert_dylib }:
2assert python.pkgs.isPy27 && python.ucsEncoding == 2;
3python.pkgs.buildPythonPackage
4 { pname = "gurobipy";
5 version = "7.5.2";
6 src = fetchurl
7 { url = "http://packages.gurobi.com/7.5/gurobi7.5.2_mac64.pkg";
8 sha256 = "10zgn8741x48xjdiknj59x66mwj1azhihi1j5a1ajxi2n5fsak2h";
9 };
10 buildInputs = [ xar cpio cctools insert_dylib ];
11 unpackPhase =
12 ''
13 xar -xf $src
14 zcat gurobi*mac64tar.pkg/Payload | cpio -i
15 tar xf gurobi*_mac64.tar.gz
16 sourceRoot=$(echo gurobi*/*64)
17 runHook postUnpack
18 '';
19 patches = [ ./no-clever-setup.patch ];
20 postInstall = "mv lib/lib*.so $out/lib";
21 postFixup =
22 ''
23 install_name_tool -change \
24 /System/Library/Frameworks/Python.framework/Versions/2.7/Python \
25 ${python}/lib/libpython2.7.dylib \
26 $out/lib/python2.7/site-packages/gurobipy/gurobipy.so
27 install_name_tool -change /Library/gurobi752/mac64/lib/libgurobi75.so \
28 $out/lib/libgurobi75.so \
29 $out/lib/python2.7/site-packages/gurobipy/gurobipy.so
30 insert_dylib --inplace $out/lib/libaes75.so \
31 $out/lib/python2.7/site-packages/gurobipy/gurobipy.so
32 '';
33 }