chicken-hackers
[Top][All Lists]
Advanced

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

Re: [Chicken-hackers] [PATCH] Build/Test CHICKEN on AIX


From: Mario Domenech Goulart
Subject: Re: [Chicken-hackers] [PATCH] Build/Test CHICKEN on AIX
Date: Sun, 27 Oct 2013 12:22:22 +0000
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3.50 (gnu/linux)

On Sat, 26 Oct 2013 22:31:51 -0600 Erik Falor <address@hidden> wrote:

> This is a report on my latest efforts at porting CHICKEN to AIX.
>
> I finally gave up on supporting the -deploy option on AIX as AIX's
> XCOFF binaries just have nothing comparable to an ELF binary's $ORIGIN
> search path token:
>
> https://www.ibm.com/developerworks/community/forums/html/topic?id=77777777-0000-0000-0000-000014036328
> (no replies)
>
> http://mail.openjdk.java.net/pipermail/ppc-aix-port-dev/2012-September/000108.html
> (this thread bottoms out with 'I have been investigating and the
> answer does appear to be "no" :-(')
>
> The next-best thing that the AIX linker provides is the -L switch.
> Form the man page:
>
>     The -L '.' adds the current directory to the library search path
>     that the system loader uses to locate the shrsub.o shared object.
>     At run time, this program is loaded only if it is run from a
>     directory containing an instance of the shrsub.o file or if the
>     shrsub.o file is found in the /usr/lib standard library directory.
>     To allow the program to be run from anywhere, use the option -L
>     `pwd`.
>
> http://publib.boulder.ibm.com/infocenter/aix/v6r1/topic/com.ibm.aix.cmds/doc/aixcmds3/ld.htm?resultof=%22%6c%64%22%20
>
> Which would work so long as you kept the bundle in a path that exactly
> matches what `pwd` would have reported at build-time.
>
> I imagine that there are at least a few other platforms where -deploy
> doesn't work.  But I couldn't see any attempt made in csc.scm to
> remove this functionality or replace it with a warning on such
> platforms, so maybe this is a 1st time.
>
> I modified tests/runtests.sh to skip over the deployment tests on AIX.
>
> This patch builds CHICKEN using gcc.  It had been suggested to try
> using clang, but I don't get the impression that LLVM builds on AIX:
>
> http://llvm.org/bugs/buglist.cgi?quicksearch=aix
>
> I may try again later using IBM's XL C compiler.  It seems that using
> gcc on AIX is very common, especially amongst open-source
> aficionados, and so that effort might not reach our target audience
> anyway.
>
> More immediately, I'd like to use salmonella to test out all of the
> eggs and figure out what can be done to get more of those to build on
> AIX.  Building salmonella was a snap, so there are no worries there.
>
> I had previously mentioned that the html-tags and stty eggs don't
> work.  I also couldn't get the xlib egg to build.  I haven't run into
> any others yet.  But salmonella will find them!
>
> The attached patch was based against
>
> commit dc071fbae201f2b8db5539fd016c0d51be0bbe15
> Author: Peter Bex <address@hidden>
> Date:   Mon Oct 21 22:15:29 2013 +0200
>
> which is what 'master' is currently pointing to as of this writing.

Awesome job, Erik.  Thanks a lot.  I tested your patch on Linux x86-64
and it doesn't seem to affect that platform (as expected).

I'm totally for integrating your work into the official repo.  Even if
not all CHICKEN features work, it seems to me that we have a pretty
decent tool to work with on AIX (unless salmonella discovers some
critical problem).

With regard to deployment tests, I think it would be nice to modify that
conditional to print something indicating that deployment tests are not
supported on AIX.  Something like:

if test $OS_NAME = AIX; then
    echo "Disabling deployment tests, as they are not supported on AIX."
else
    # tests here
fi

Here are some additional things we should do to get support for AIX
properly integrated into CHICKEN:

* update NEWS

* update README, section 5 (Platform Issues).  We should add a note
  stating that deployment is not supported on AIX

* update manual/Deployment: add a note stating that deployment is not
  supported on AIX

Finally, none of the current maintainers have access to AIX systems, so
we cannot test CHICKEN on it.  Thus, testing CHICKEN on AIX will totally
rely on users who have access to AIX systems.

Best wishes.
Mario
-- 
http://parenteses.org/mario



reply via email to

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