From 0745b176e4fefe20d068a2c8b79e0f899372b176 Mon Sep 17 00:00:00 2001 From: Cameron Gutman Date: Wed, 1 Jan 2014 15:13:30 -0600 Subject: [PATCH] Link the gamepad library to Xinput9_1_0.dll so the DirectX Runtime Installer isn't required for Vista and later --- jni/gamepad_jni/buildwin.sh | 5 ++--- jni/gamepad_jni/win32/libxinput9_1_0.a | Bin 0 -> 5322 bytes jni/gamepad_jni/win64/libxinput9_1_0.a | Bin 0 -> 5242 bytes libs/win32/gamepad_jni.dll | Bin 53056 -> 52356 bytes libs/win64/gamepad_jni.dll | Bin 108935 -> 108927 bytes 5 files changed, 2 insertions(+), 3 deletions(-) create mode 100644 jni/gamepad_jni/win32/libxinput9_1_0.a create mode 100644 jni/gamepad_jni/win64/libxinput9_1_0.a diff --git a/jni/gamepad_jni/buildwin.sh b/jni/gamepad_jni/buildwin.sh index 1e5b9e6..9ac9177 100644 --- a/jni/gamepad_jni/buildwin.sh +++ b/jni/gamepad_jni/buildwin.sh @@ -1,4 +1,3 @@ rm gamepad_jni.dll gamepad_jni64.dll -/C/MinGW/bin/gcc -shared -I"/C/Program Files (x86)/Java/jdk1.7.0_45/include" -I"/C/Program Files (x86)/Java/jdk1.7.0_45/include/win32" *.c -L./win32 -lstem_gamepad -lxinput1_3 -Wl,--no-undefined -Wl,--kill-at -o gamepad_jni.dll -/C/MinGW-w64/bin/gcc -shared -I"/C/Program Files (x86)/Java/jdk1.7.0_45/include" -I"/C/Program Files (x86)/Java/jdk1.7.0_45/include/win32" *.c -L./win64 -lstem_gamepad -lxinput1_3 -Wl,--no-undefined -Wl,--kill-at -o gamepad_jni64.dll - +/C/MinGW/bin/gcc -m32 -shared -Wall -I"/C/Program Files (x86)/Java/jdk1.7.0_45/include" -I"/C/Program Files (x86)/Java/jdk1.7.0_45/include/win32" *.c -L./win32 -lstem_gamepad -lxinput9_1_0 -Wl,--no-undefined -Wl,--kill-at -o gamepad_jni.dll +/C/MinGW-w64/bin/gcc -m64 -shared -Wall -I"/C/Program Files (x86)/Java/jdk1.7.0_45/include" -I"/C/Program Files (x86)/Java/jdk1.7.0_45/include/win32" *.c -L./win64 -lstem_gamepad -lxinput9_1_0 -Wl,--no-undefined -Wl,--kill-at -o gamepad_jni64.dll diff --git a/jni/gamepad_jni/win32/libxinput9_1_0.a b/jni/gamepad_jni/win32/libxinput9_1_0.a new file mode 100644 index 0000000000000000000000000000000000000000..d4bc6933a421bf99036709339172af3e8793ab9a GIT binary patch literal 5322 zcmeI0&2G~`5XZ+(N=sDnQ6bbrK?Z@u0R`ui6jfCa6%|ssP*nAV!wxXR6TI0 zICJPj@E|+^k3^Z-4|^Tkae8R03Rd!ZGyC^$JoEGH+D}&Oqn-Y0>6H;Lm0GLSG+R}( zZWt!(QftGgHLBu*P6+_!0koe0#TNjxOZ>R~8-R}aQ-0j-0noAVk`BxAz3z!OI2;Ab zR>d+c+wunXz6+MscWo!p3)c1r5^uV}W?%qo2FiSj1sreR56TB& zh_Yf+G0kSPX&8-GEsV{Eb_>G;u%w~)S!+fs2kuG0+S!!>W~c1fft@X3J#8?5mAk`X zjtovo=h1-A>QY<8MiKv)TG)78*N}G7&1LIeOWi$e%%|vNzk*xY@qH-wJl_?af6f8E zYCU^T8iZZ-6%Ab&8=qvVpY$w^;-f;AM)42bb3vmzUW5;sZ)UJ-f`<8pqF>O+Gsz-H zCyfq|u+DrcOT=LR0t_~n8wmzi(RT~%ZxpYa!K(De18fk3hKMW0CX2zvvDhoR7}NBu zsfBdX*U~=z`wn)@QW}N(ti@Pnt!XIjv($-qf>*GJLoeu$27BDXIDu;*nR%K1Q$Zs? zlW(JP0g{<_ImzRG-&0>Ky#MyxXktHPSFT zr44PCP5up8paqgBQzJl@IXqrs|7XDqos7%NyJ4OrFV%6fFUq_CCa4iX38Sfnntr-2 z#{3Fuj?#5a8jA`&`)#3N238qx{+t?TXOWHOj<5IBN0FufP9)&o0uSzE`mMH9Kht!D zWQGQH&0_gj-aYdY&4O1c>yUVclnl+EGofMkNdJK|PS;bR**T97*>3<m~F4iLFPJXddvv7_whw{pllsA$)iBpVx9_8B#9al+tSDAMb<$k&@LHTjI zE~I=BBR4JOT12_}-hHEU^J4-SOGNf6H?UfVEj&kLtGBIuVwmu`B8OsgN{TBp6<^skcQEoI(G6nD~f35s{qbs@#%hiNGW5MPAwnwz|Sf9 z5uf(pAGANgKf=GmdCtAL$xV~Hwl9^T7n0nZ`)%&c_kMD6(>qU`-Obk1(jy~XD%E=3 zs+iU4qG6bg8XzPPZI}Y&GPzAukAkX zx&F?wx94wqD?Q)srY?*>QmEpqyl^_sh9CH$?`3|QYFiG1RmX2f*B58*r~M!-@5JV- zT(6j>Wm$%?uvm#*cfU@e@c?rL^p({npd5PpA*-u*2COy8t`jv-v zhotlAf^#*Yy@-_}j!P~}U<%!Wh?8zwt$QqVSFkdZqZ94o$mfLtRd#~_%1uA;qQ>8+ z03QlXXG;X4xa=8qq4)JeGTARprIEbSRT{~sBGZrq=@NO#Jet5Jy`a=Ee~1FTKn`UK z^+AO+8r;IY^0_M!i>(n@v=(?qFpNe?uxO!od?dxc&Eh=WHNN6dwNQB=FcTo8-~snONuDR!e$zpVXN2P;t|G2%4xdEF%Zn$ z&Jl0_*w+ zO{A9^a+C6wBJ?ai#P)X)O>{8895SO~29&Y{T`#X3CYdtMfaFmPJ8Me)LZVA$)H-T9 z`MQ{5x{oE)e9qTdVqDj-@-oth7~b*8={-6-K2Bmut=Rvz#wMCy>XXm;6xKL1oDV#W z=+0#0Z0-fwLzZbF;)}UOJ?J8mWKj`e4y34L_ewL*N5n^n>luu2Dz9UW3O#K+a-W^^ zod(aa!rwe+uTK;#v&_qwt^Q}0Jmt8>tA(*Jt4A{!FBEYc{|2-19m{L#B$&S(Pnew_ zlG%DT&;G!P9+YQ;DEH7|oOyOn>i4WXdzi1wF#A1U7w6f#cz>hjSuJ5!@ttzM8J%TTEBt0P&yCdCAGic;&UQSRE(i(ieg# P8a%)%XH@)Nwd(x?2Bx_3 literal 0 HcmV?d00001 diff --git a/libs/win32/gamepad_jni.dll b/libs/win32/gamepad_jni.dll index 728c0e52274c301d23a549be0574ebdb226e6b67..fe93fbb81fe02ad19734c6b6eb7cb13277c3af8a 100644 GIT binary patch delta 4722 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 delta 5168 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 OC+VBCC-F3Wiv9-z#^jd(