From c11c62de9310cc48f01a2c37563a6b3a69ef9dbd Mon Sep 17 00:00:00 2001 From: Kyle Benesch <4b796c65+github@gmail.com> Date: Sun, 11 Jul 2021 13:46:00 -0700 Subject: [PATCH] Modify rpath wheel to add a recursive dependency. --- ...1-1.0-cp36-abi3-macosx_10_9_universal2.whl | Bin 5376 -> 5358 bytes .../tests/data/fakepkg2-1.0-py3-none-any.whl | Bin 2223 -> 2223 bytes ...h-1.0-cp36-abi3-macosx_10_9_universal2.whl | Bin 3404 -> 3392 bytes delocate/tests/data/libextfunc2_rpath.dylib | Bin 0 -> 100752 bytes delocate/tests/data/libextfunc_rpath.dylib | Bin 100752 -> 150448 bytes delocate/tests/data/wheel_build_path.txt | 2 +- delocate/tests/test_scripts.py | 9 ++++++-- delocate/tests/test_wheelies.py | 16 +++++++++----- wheel_makers/fakepkg_rpath/libs/extfunc.c | 4 +++- wheel_makers/fakepkg_rpath/libs/extfunc2.c | 4 ++++ wheel_makers/fakepkg_rpath/setup.py | 20 ++++++++++++++++-- 11 files changed, 44 insertions(+), 11 deletions(-) create mode 100644 delocate/tests/data/libextfunc2_rpath.dylib create mode 100644 wheel_makers/fakepkg_rpath/libs/extfunc2.c diff --git a/delocate/tests/data/fakepkg1-1.0-cp36-abi3-macosx_10_9_universal2.whl b/delocate/tests/data/fakepkg1-1.0-cp36-abi3-macosx_10_9_universal2.whl index ed427badee07977180db2920b5c642a73a6f65f3..957c0f426cc9fcd6cd4f642aa9bafbfbca405156 100644 GIT binary patch delta 3493 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 Igto8z3nhpIivR!s delta 3502 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 QQZ>}5?Eby6(m&h&16a2S#{d8T diff --git a/delocate/tests/data/fakepkg2-1.0-py3-none-any.whl b/delocate/tests/data/fakepkg2-1.0-py3-none-any.whl index 8b3d4e6c5451bafc5319064e0d0a2d0823d9f167..976048880c458e7cee81fbf8cbad1fae7327b911 100644 GIT binary patch delta 183 zcmZ24xL%Miz?+#xgn@y9gW>&}*Fh8c3|PRlQyhd|Vh*A2=YZ+S{*1m5#sbD2%=~L# zPmX4q4yL~{O$O85%w8aR^9|;Yj1ZM)S?wSUel}YOBY@2n!kEeC0%1IaF*Mmdz{ZrY UgN>Pdklh{3=jQMS)3F>u0Ag293IG5A delta 183 zcmZ24xL%Miz?+#xgn@y9gQ0u1x8FoQ1D0Ql-ULi^iemxumzYEN_jADf$^MMKV1daC z7~eq6mN5h9({9 zEh0@oKm;Va+)LBN1yA%qePF}jF%XLshlGtZo7eqY|_!5?g~Ewrx|KHs#=@Zfh1Oqa{F)8~^i->Ks!&~U3G&x4psPr_bzJyH|YRQO#& zwxa&5t)f~^tn}3UZKpF?3R>jXobb!)OrL8%pG&j|zhG%}q4lGvk&BkM`mH%=$1{OD zdQ!Kc5ke=#4K~+^QwxOeUC+opC@wKJ*?dXlU5~v+nKs#6XVDR61Npgr=>b-!G{zR8 z{)py$T(u?F**|?VCzRFLj7=Yiw^S8cx<(mdknUec!;G9E}himKSf59j2$fK zrQdNiUed2GOugYQ78nMEZLJjQzj9~AV|~-}a~C4@8~?y4&3o%Tu6=>^gkNAmF}SSV zj-$K_M~+LaS{>c2(7?-eQ=?=a=b-CmezG^So}LKPaUJDhAg+n76qQw}XfGMrPx4K1ljMyr%bsF{WNmRVX^D{UQI zS4E1s>Aoe7m)7---i_lX1ikOULnl6ReIMXw;Q$-_1MVZM)8pgv(z9MvMrb-_`#&iy zZ)T2?yQ>g!obaX3)NJ>zt^|8;uL_)*mgj#rF4lGHmthzd(R_t2tZJj|%B8ta95Rg(K~su-MwzK<`p=z3z1t>+Zh<_rI#M*v%ri?t1hGgk;IVm z$Z{I@RGx=-Zh)^5LA5E)-jdPv+hB-Dgk{#!+KYJQoV?k?I=7fmFqdMO+x4ro^3Qg)m#NgFQrJdyFAv@QRc2f>#_3GUj zqL1On%l-o~Z@Dp~2Iu5EYjI5cHfIpdgj@$Z@yr=;-;rcF|8&2RVq~*IB$Bz){YE7o-Es*ZU{Cm zTlVZh3AU(ARm)=R+F5FB{bHg<$%QRg1ByBJ2~N=_+azkqme>s|lcuxT)@oQ&*^*@m zD_;Eu*3(6qmHND3i~(zR9Flw=H?r_kMi#HyW%o?IiFls>%qe^k(V@ES&yxF<5ejck zj#B7-Xan4KQ#ny&#S1W<6;B@F`9+%rBvb1j&g0F;>06p4QbOs1yD#?Dw&6xqKzD#2 zJ?yHR#yEp84}s-OqlZSul+_UE=b1s2i`rj8mt5Ql6N#7Jti(6C$MPE<K<6( z=3~5*yr%r&qg?`QDl7b+ClcvpT~IhDMA|7X6Ev{eJ)RO*1nB&N&wS=F zg8Pl*l`%9wS5Sj)WDG3duQ7pj_6}y(n4X{we=+!T4YSR*mst`_)|LP^HPJoq_%AMw z!|Eo7t9ygRoTX+4-eiy7Ks7w#pP&XZoo~vwZM;&1N`Gp4sb53r5m8WUbLH$MJO}I$d{92v?Vb$1b=dx1RC$J?7P;ryD>W3FD5~U6 zIH%{5Isb%8UZmVoTyY+KpdKgIzc8TqkV=B(8=JQ;M-*U;{=jxf<#~ZQb{!^%H_NqK zR2BOcsa0!@u(Ws{%*jqbPzL-@8v!U0vv01*7cu>|Oo~|kQ%HcK=-F@hs^~F+G$2(} z1@X1LLgdmylJ+|7!`^(qH-Ep18&d#LRAb*)d{MYy4g|OaJr2+yP~fzf*gkd?gA1M# r-p5J82Y`(K;o?2a_=Yv1F!g^Q`hTwc`?o!97dQz>!VDlLB46QO#z&>v delta 1951 zcmZ8ic{J2(A6H`wQl%Gk??w(H%KURs(ws#lF>1QluIcoFj#OXhgxZo4YD zE2ay5#~WJ4UN(J5ZrP3(B8@eFO&=Ieo2OC%QMt|CV)x;@`7eXf zrSl#Q^H+D|a80In9EUtkNbGqv(U{n<&>MF67T-lA-Ncdv{%?^nrOfj?>{`aXOx$ft zI&qw3K`M*v&)AM6c^l5=%Fxc#L9JjBO6Xse-TGOY21+L_J)_0tinJE(-|jI3{- z-4dIavt5R1{BFpW$S}FxGG#~T?ln;qAH#dVzFz2}-;=l9jo5)sonfn*s*>V5FcObe zi+i#$eQNF^D&|pRU20ykiDT!7$)eI2>+LS#Zj;6P1=H2&Cwd#NVRWi}dtCKuuVq#r zu!tZdH!pv8sp6Wg(Kp9N*s9%Yk+>RF?&`N+=pu>C?}8CV{Jo56T{X*Udz{$Q0x=Mk z-hS0*ULoyJ6B=faAiP|2@%?LNA-~v4P-7N7)+umr3J?OF!gG-E1C6v~l4w&gqDnBF zJ|HDm{ng_S&v(ZSo{zTegYA{PLS%fYuv(_{jsN*=)s0+|d8ZSl*NzkQCZVY3n4vNs zm5c148P_Ios|K$9${4$4Z24OeyKxdmw=lIiluD&G)H~9$zj%VXi{ScH&E}#{%lcBvMJz?18ZIh<@+! zH`UY?y}1_bt6$s-(%PHMRCwBZp$Sp;uP0Ty3m}6hLF4I*9#h`h!46?pv;cubu;)^c zkgb-6cGhVLO)d#~?xl`5T!D?8=8H(w~A?~!oL#D_ZKWobyF#Xl%k=T6`Gep5cEhW(elYycKl&}1@ zC}T+sQyO-Y9c3cw33zU*BZdoHV@U{3z6|WDVv9;Hd+AkeyIQQ?dJ0RxD%O|2iHjX; zm>`sUu7f4Hp2MEy%;t{TGoV+;qbqLJuDtW(c{u04<-+K}N$Cn9o@VcZSDZ@c-Ld{J zqxv;_aWN6w42iEhk(BC5pZm4}(c3lAhI)yS+jguLJ$qI+enPJaB|p1{mOu1hFfC8Bf(=T;Z`h)G8gQWDNzd;?>2=o)rux z+j{Z{a^BQ@YIM!$!nzTNRyRE<*;rQgJpGc+t7An>15>UJ({1Ub+l7Ft|B^+cherPI zxML-uFE*8qjHE3Ldb>UHxID{WsgdZT??!3ILtA4W=}Dk?o7 z4J}Hd#T|RbJ)rb+rhFmSzX1~MI+Q=M#X#On{!}{L72CquNZfTpeWnH>w=%Pr6OswC zvAZeyb-LP z%v*>lHg^$i6!(!(LCwNSa1z2n3K4tL*hhRGWEUtT8|dPmjvfuF?QEXvK9yS$I#ZSX zGH;3dCrRSxN~5reFP4GfuY7;Tx~R`tNrRSR+(ia&1qh&Wcyd?8{bgLAPwU)+Ez~zr zC!5`+3^HvM8E}$X!1cYP{n0mj=DTR++;AKPcUyUn28fAIGz?gu* XKgh}y5It(bd$>g&EXHkqFwXHO6Ah7& diff --git a/delocate/tests/data/libextfunc2_rpath.dylib b/delocate/tests/data/libextfunc2_rpath.dylib new file mode 100644 index 0000000000000000000000000000000000000000..7336c14da8165bf52753dc4084ef5b938ea53587 GIT binary patch literal 100752 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 AC;$Ke literal 0 HcmV?d00001 diff --git a/delocate/tests/data/libextfunc_rpath.dylib b/delocate/tests/data/libextfunc_rpath.dylib index 07c561f3d19691772e67686b486ba160333ba2e9..161bfaf12db64b492535d7940e862cafbb7dd7df 100755 GIT binary patch delta 3325 zcmc&$Yfw{H5I%W`K@bxqN>Jc}k789!pdv*rH>gPQg^Cra?d^?;qDH_FTO13CRvjHI z1}=(PZSm0=WvGSPTAww*bVix_sH4`=s_1mA)^=)J-wNsOy*Uw4JNTTnzzLDDFal~o3aT}nND@3rns5zhx0Hk|Cu)!g(ZN^= zD>yD=bY@1Wp__2t*-047YGq1+XJ64clSDVtSz^Q~Y+xfhXe(VVY-We~*LW?dYfEJzr6amHF!cm6 z^-;zQqt_o9>y=-?6=0?VJvlDN%H=PbZ_2fDd3GD<&yS}dN9i{K z*{i$Lghb=C;h7e5_F5uC^F=K>GUTWys!3nAoD~U-~ zh1Ud5zkInq@n-G)Zg0;WG03kE_=}b2-w7^FNJ)+o-ZSbVV>w$MZ_kb~FS5=tN%flm zo^&_aaA9t8znor>Fay(A-mIm-GIODwH(4zlF2(D3%5Kf&%@&)_24>O^25z3}ln&b8 ztK&hC!eF4??SxNSt-+QkR63LcYshsx<~t28Pu~wg8253Q1(Hhjp9YaWk> z5TV-9t1~{D*I*7uNyU{US-4DAY6y{UPr`Rt%0@Uek?Kjfsw)d8HcM~9G$#iVCX*JZ zTx5Y-!*Z4a`>cgIGh>Mhu8L|TP(hr&+M^QwBwe5e>2nPL9aLXcY9*akm4jMXoIx*! z_%@(IEO{n3aP-o{OM!0q_0vIBdZz{ghj21@)_94sB54yvD){1j3XzNXfZUywfrnmN zK>Q(Zcd(2E3O_p|8IxW=bI9xFS>{$z+(7V2B%His$3Zv1Wa|5VoX$@aXEP z>YnPnHMV8F&Yl`jXy2q7xK+qn5*^*evOecZ)$T2xp*J5EYn`6Lz)`JvXBmeXCe4|c`;1PNoNSZ2hVeB+bk zNfk^#l{+JEZ|-B38kx#Xo120%EsfiXs;4iXpd)4W{&8EgPV@V>?)j+ht38i|9ZOj@ z=H#x`S-WkMAAQp^MbM^dudlj!rl{p$Wuw7yrZVr7v^IS;mA@Z`benZYRcxy4tp2Krz-B%x161)^VcjZ96Y43V`6>% z(eV#21>jj#SednKgeCgDl^%9we#Vaw8{Bn35rySn*593pl=Q9C!^_xX*9j&&H$O7USZ2 zAgL#}#RCMY>oD5l0Dx(zG2B7-r?>I^c8}q`U3_j06E1k^hSx-j77wl0UEAS0moiViE&F;sRvGbIP!GR zv0YRGPXLZ>DjfzAUOyd}zKA6*x0s5ECHl&`ap(2@M-*>A%4eAaoiVZC#lXN-Vk}vJ zD2tb&;^jhWGV_0+i(9%BAG&~!MA4nM4$xP_(o8O=duEia>}$!Rziv{Tfs9 zV_D+5igUfy{!4$`KkqJeNLBgYt^Twmef*(`7x!|Sgk^lg?6_wkN}ks0Agv)vJP7kr z5Y_1(``y=vwKpd|4mt4UUt#r!{+V$)b5~SOe8t_ehTR{0f#|}l-4eWK)GrtHH~fEB z#~(d%;@YZV@0Lt()qhg3`ph49GQOt}gfPTZRNZL#Hu(0S9}K4!9dDXEV)eNyt|8VC z)ZH{RyEtkLOP!-{qzqb9nVD0(#9h`ke{QBLyteeMK9Q;@_f`4frg7UEpT?^ze*Xe? CV9XK# delta 1635 zcmdlmopZuuwh3ZVof8-s82A_&75Kkco!ElN}x88JQ+0I;e{-um`DNVBm&O3?M$sWLrmT(KS#R52y@? z&ot3cdb)-)qvZ5NCq{9m37*rVoEgI>nkvXRFfd2}6#{Jq(+WU7i0uHR6(%ormS<#~ zXlOj$!G)1SF8^rj7N>{CvOC?QHGA1=KdAuKfgQ@p#lXNkS@74sDP^1qQhOl**ix z_~Me%r1+%Fyp+@;usOf(@f-k#zy%OB8&_?6Ajgv92h329a2;7}j(?8`p9PBG(^yfFP8Ba=qVrppCaz2>d7 z)>v^l>8NX;S7}w3)PqfDmesKD2>6?PEv<4NbDr!3rgcDaDTx$lLh=6ZkrVRIVJ7!NcP}P!)J>$g(hZvs;Vh=v9FOQR93tGvutEt8QV9yjz%T23`&7N3WzmW3UaenshdkT?}M_o@pDGi<` zCG0UVd+Dyf&m(@_;|6(z1C&QLIxyN!b6^wz=aUV<&?X|EaBhI+29C*%juO*79T}6S z>o_xtQjiY}WY^!d19IL%Jc8tAMQDNS?zLN-HbrLy|RqF7Pnr_uh?T^ zmb<44oG0$xT5wrmmC(G|X-jUj{A2yFeeD^?vcUJn@jL-Bp*=a}XEkR|Oz66nxp%e} fZ?pZQpkIeKrSS-Osf(W3@u}qFuYA-zF_8@bwc(d2 diff --git a/delocate/tests/data/wheel_build_path.txt b/delocate/tests/data/wheel_build_path.txt index c262ec78..1f85f8bf 100644 --- a/delocate/tests/data/wheel_build_path.txt +++ b/delocate/tests/data/wheel_build_path.txt @@ -1 +1 @@ -/Users/brettmz-admin/dev_trees/delocate/wheel_makers +/Users/runner/work/delocate/delocate/wheel_makers diff --git a/delocate/tests/test_scripts.py b/delocate/tests/test_scripts.py index a54c9648..6399cbde 100644 --- a/delocate/tests/test_scripts.py +++ b/delocate/tests/test_scripts.py @@ -62,10 +62,15 @@ def _proc_lines(in_str): def test_listdeps(): # smokey tests of list dependencies command - local_libs = set(['liba.dylib', 'libb.dylib', 'libc.dylib']) + local_libs = { + 'liba.dylib', + 'libb.dylib', + 'libc.dylib', + 'libextfunc2_rpath.dylib', + } # single path, with libs code, stdout, stderr = run_command(['delocate-listdeps', DATA_PATH]) - assert_equal(set(stdout), local_libs) + assert set(stdout) == local_libs assert_equal(code, 0) # single path, no libs with InTemporaryDirectory(): diff --git a/delocate/tests/test_wheelies.py b/delocate/tests/test_wheelies.py index d4daf6a7..fc8a13ac 100644 --- a/delocate/tests/test_wheelies.py +++ b/delocate/tests/test_wheelies.py @@ -302,17 +302,23 @@ def test_fix_rpath(): # The module was set to expect its dependency in the libs/ directory os.symlink(DATA_PATH, 'libs') - stray_lib = realpath('libs/libextfunc_rpath.dylib') with InWheel(RPATH_WHEEL): # dep_mod can vary depending the Python version used to build # the test wheel dep_mod = 'fakepkg/subpkg/module2.abi3.so' dep_path = '@rpath/libextfunc_rpath.dylib' - assert_equal( - delocate_wheel(RPATH_WHEEL, 'tmp.whl'), - {stray_lib: {dep_mod: dep_path}}, - ) + stray_libs = { + realpath('libs/libextfunc_rpath.dylib'): {dep_mod: dep_path}, + realpath('libs/libextfunc2_rpath.dylib'): { + realpath( + 'libs/libextfunc_rpath.dylib' + ): '@rpath/libextfunc2_rpath.dylib' + }, + } + + assert delocate_wheel(RPATH_WHEEL, 'tmp.whl') == stray_libs + with InWheel('tmp.whl'): check_call(['codesign', '--verify', 'fakepkg/.dylibs/libextfunc_rpath.dylib']) diff --git a/wheel_makers/fakepkg_rpath/libs/extfunc.c b/wheel_makers/fakepkg_rpath/libs/extfunc.c index 2de5e72f..8c9dbd0b 100644 --- a/wheel_makers/fakepkg_rpath/libs/extfunc.c +++ b/wheel_makers/fakepkg_rpath/libs/extfunc.c @@ -1,4 +1,6 @@ +int extfunc2(); + int extfunc() { - return 3; + return extfunc2(); } diff --git a/wheel_makers/fakepkg_rpath/libs/extfunc2.c b/wheel_makers/fakepkg_rpath/libs/extfunc2.c new file mode 100644 index 00000000..e1e4287f --- /dev/null +++ b/wheel_makers/fakepkg_rpath/libs/extfunc2.c @@ -0,0 +1,4 @@ +int extfunc2() +{ + return 3; +} diff --git a/wheel_makers/fakepkg_rpath/setup.py b/wheel_makers/fakepkg_rpath/setup.py index f7549435..ed8cfdf9 100644 --- a/wheel_makers/fakepkg_rpath/setup.py +++ b/wheel_makers/fakepkg_rpath/setup.py @@ -9,17 +9,33 @@ HERE = abspath(dirname(__file__)) LIBS = pjoin(HERE, 'libs') -EXTLIB = pjoin(LIBS, 'libextfunc_rpath.dylib') -INSTALL_NAME = '@rpath/libextfunc_rpath.dylib' arch_flags = ['-arch', 'arm64', '-arch', 'x86_64'] # dual arch + +EXTLIB2 = pjoin(LIBS, 'libextfunc2_rpath.dylib') +INSTALL_NAME2 = '@rpath/libextfunc2_rpath.dylib' +check_call([ + 'cc', pjoin(LIBS, 'extfunc2.c'), + '-dynamiclib', + '-install_name', INSTALL_NAME2, + '-o', EXTLIB2, +] + arch_flags) + +EXTLIB = pjoin(LIBS, 'libextfunc_rpath.dylib') +INSTALL_NAME = '@rpath/libextfunc_rpath.dylib' check_call([ 'cc', pjoin(LIBS, 'extfunc.c'), '-dynamiclib', '-install_name', INSTALL_NAME, + '-L', LIBS, + '-l', 'extfunc2_rpath', + '-rpath', "@executable_path/", + '-rpath', "@loader_path/", '-o', EXTLIB, ] + arch_flags) + check_call(['codesign', '--sign', '-', EXTLIB]) +check_call(['codesign', '--sign', '-', EXTLIB2]) exts = [ Extension(