libffcall
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Libffcall] new clisp/libffcall/libsigsegv for testing


From: Bruno Haible
Subject: Re: [Libffcall] new clisp/libffcall/libsigsegv for testing
Date: Tue, 18 Apr 2017 10:19:59 +0200
User-agent: KMail/5.1.3 (Linux/4.4.0-72-generic; KDE/5.18.0; x86_64; ; )

Hi Mojca,

> > I checked libffcall and I only found one such test. The libsigsegv
> > library contains more, but in the context of cross-compilation on
> > Darwin that should not really be an issue since cross-compiled
> > binaries can be executed.
> 
> I just looked at libffcall-1.13-20170225.
> 
> I checked
>     avcall/config.log
> which contains:
> 
> configure:3531: checking build system type
> configure:3545: result: x86_64-apple-darwin10.8.0
> configure:3565: checking host system type
> configure:3578: result: x86_64-apple-darwin10.8.0
> configure:3623: checking host CPU and C ABI
> configure:3862: result: x86_64

There are also these tests:

checking for working shared memory... no
checking whether code in malloc()ed memory is executable... yes
checking whether mprotect can make malloc()ed memory executable... yes

checking for pcc non-reentrant struct return convention... no
checking whether small structs are returned in registers... no
checking whether floats are returned in integer registers... no

which you can't guess when cross-compiling.

> But I guess that "guessing yes/no" results from compier refusing to
> run some tests then? All those tests could easily run:
> 
> checking for working shared memory... guessing no
> checking whether code in malloc()ed memory is executable... guessing yes

When configure says "guessing yes/no" is means that you are cross-compiling,
that is, binaries created by the specified compiler cannot be run on the build
machine.

> Make then fails with
> 
> libtool: compile:  /usr/bin/gcc -x none -c avcall-powerpc.s -o 
> avcall-powerpc.o
> avcall-powerpc.s:5:no such instruction: `mflr r0'
> avcall-powerpc.s:6:no such instruction: `stmw r29,-12(r1)'
> avcall-powerpc.s:7:no such instruction: `stw r0,8(r1)'
> avcall-powerpc.s:8:no such instruction: `mr r29,r3'
> avcall-powerpc.s:9:no such instruction: `stwu r1,-1104(r1)'
> ...
> but that's because CFLAGS are missing. If I manually run that same
> command with "-arch ppc" added, then that single build instruction
> succeeds.

If you want to provide patches for cross-compilation ONLY for
Mac OS X x86_64 -> Mac OS X powerpc (for libffcall and libsigsegv -
for clisp you won't succeed), I might accept these if they are
limited in size.

I'm not categorically opposed to cross-compilation; it's a question of
amount of work.

Bruno




reply via email to

[Prev in Thread] Current Thread [Next in Thread]