On 2018/04/13 14:22, s_g...@telus.net wrote: > cc -DHAVE_CONFIG_H -I. -I.. -I. -I../include -Iinclude -I../src -I. > -I../include -Iinclude -I../src -O2 -pipe -MT src/arm/sysv.lo -MD -MP -MF > src/arm/.deps/sysv.Tpo -c ../src/arm/sysv.S -fPIC -DPIC -o > src/arm/.libs/sysv.o > ../src/arm/sysv.S:363:2: error: invalid instruction, did you mean: fldmiax? > fldmiadgt ip, {d0-d7} > ^ > ../src/arm/sysv.S:412:2: error: invalid instruction, did you mean: fstmiax? > fstmiadeq r2, {d0-d3} > ^ > /tmp/sysv-897c4d.s:263:2: error: invalid instruction > fstmfdd sp!, {d0-d7} > ^ > /tmp/sysv-897c4d.s:313:2: error: invalid instruction, did you mean: fldmiax? > fldmiad sp, {d0-d1} > ^ > /tmp/sysv-897c4d.s:316:2: error: invalid instruction, did you mean: fldmiax? > fldmiad sp, {d0-d3} > ^ > Error while executing cc -DHAVE_CONFIG_H -I. -I.. -I. -I../include -Iinclude > -I../src -I. -I../include -Iinclude -I../src -O2 -pipe -MT src/arm/sysv.lo > -MD -MP -MF src/arm/.deps/sysv.Tpo -c ../src/arm/sysv.S -fPIC -DPIC -o > src/arm/.libs/sysv.o > *** Error 2 in arm-unknown-openbsd6.3 (Makefile:1337 'src/arm/sysv.lo') > *** Error 1 in arm-unknown-openbsd6.3 (Makefile:1621 'all-recursive') > *** Error 1 in arm-unknown-openbsd6.3 (Makefile:730 'all') > *** Error 1 in /usr/ports/pobj/libffi-3.2.1/libffi-3.2.1 (Makefile:616 'all')
Please apply this diff to ports/devel/libffi, clean and retry and report back whether you're able to successfully build libffi. (Don't wait until you have other pieces for php built before letting us know about libffi, please). jasper, ok with you if it works? (there is finally a 3.3.0 rc now but probably better to avoid going down that route for now just to fix this :) Index: patches/patch-src_arm_sysv_S =================================================================== RCS file: /cvs/ports/devel/libffi/patches/patch-src_arm_sysv_S,v retrieving revision 1.7 diff -u -p -r1.7 patch-src_arm_sysv_S --- patches/patch-src_arm_sysv_S 22 Jan 2018 06:28:00 -0000 1.7 +++ patches/patch-src_arm_sysv_S 13 Apr 2018 21:41:29 -0000 @@ -1,10 +1,24 @@ -$OpenBSD: patch-src_arm_sysv_S,v 1.7 2018/01/22 06:28:00 bcallah Exp $ +$OpenBSD$ +From FreeBSD, see also https://github.com/libffi/libffi/issues/162 +https://github.com/libffi/libffi/issues/191 + +This code is completely different in the 3.3 branch so can probably just +be removed straight off when a release has been from there. Index: src/arm/sysv.S --- src/arm/sysv.S.orig +++ src/arm/sysv.S +@@ -360,7 +360,7 @@ ARM_FUNC_START(ffi_call_VFP) + cmp r0, #3 + sub ip, fp, #64 + flddle d0, [ip] +- fldmiadgt ip, {d0-d7} ++ vldmiagt ip, {d0-d7} + + LSYM(Lbase_args): + @ move first 4 parameters in registers @@ -396,7 +396,7 @@ LSYM(Lbase_args): beq LSYM(Lepilogue_vfp) @@ -14,3 +28,34 @@ Index: src/arm/sysv.S beq LSYM(Lepilogue_vfp) cmp r3, #FFI_TYPE_FLOAT +@@ -409,7 +409,7 @@ LSYM(Lbase_args): + + cmp r3, #FFI_TYPE_STRUCT_VFP_FLOAT + cmpne r3, #FFI_TYPE_STRUCT_VFP_DOUBLE +- fstmiadeq r2, {d0-d3} ++ vstmiaeq r2, {d0-d3} + + LSYM(Lepilogue_vfp): + RETLDM "r0-r3,fp" +@@ -420,7 +420,7 @@ LSYM(Lepilogue_vfp): + + + ARM_FUNC_START(ffi_closure_VFP) +- fstmfdd sp!, {d0-d7} ++ vstmdb sp!, {d0-d7} + @ r0-r3, then d0-d7 + UNWIND .pad #80 + add ip, sp, #80 +@@ -470,10 +470,10 @@ ARM_FUNC_START(ffi_closure_VFP) + ldmia sp, {r0, r1} + b .Lclosure_epilogue_vfp + .Lretfloat_struct_vfp: +- fldmiad sp, {d0-d1} ++ vldmia sp, {d0-d1} + b .Lclosure_epilogue_vfp + .Lretdouble_struct_vfp: +- fldmiad sp, {d0-d3} ++ vldmia sp, {d0-d3} + b .Lclosure_epilogue_vfp + + .ffi_closure_VFP_end: