Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [ptp-dev] Problems building sdm on AIX

Greg
This appears to work.  I had to make similar changes in the libmi directory to not build test_mi on AIX. In order to run autoconf and automake I had to run autoreconf first due to version differences.

When I commit these changes. I'm using the list of files with new dates as a guide for what to commit. I see

-rw-rw-r-- 1 wootton users    915 Jan  2 11:25 Makefile.am
-rw-rw-r-- 1 wootton users   1003 Jan  2 11:26 configure.in
-rw-rw-r-- 1 wootton users  35863 Jan  2 11:27 aclocal.m4
drwxr-sr-x 2 wootton users    256 Jan  2 11:27 autom4te.cache
-rw-rw-r-- 1 wootton users 188100 Jan  2 11:28 configure
-rw-rw-r-- 1 wootton users  76949 Jan  2 11:28 Makefile.in
-rwxrwxr-x 1 wootton users  34017 Jan  2 11:30 config.status
-rw-r--r-- 1 wootton users  66213 Jan  2 11:30 Makefile
-rw-rw-r-- 1 wootton users   1976 Jan  2 11:30 config.h.in
-rw-r--r-- 1 wootton users     23 Jan  2 11:30 stamp-h1
-rw-rw-r-- 1 wootton users 570577 Jan  2 11:30 config.log

where I think I exclude autom4te.cache, config.status and config.log but commit the rest. Does that look right?
Dave



From:        Greg Watson <g.watson@xxxxxxxxxxxx>
To:        Parallel Tools Platform general developers <ptp-dev@xxxxxxxxxxx>
Date:        12/12/2012 01:03 PM
Subject:        Re: [ptp-dev] Problems building sdm  on AIX
Sent by:        ptp-dev-bounces@xxxxxxxxxxx




Dave,

libaif is a stand-alone library, so adding a dependency on utils is not an option. Instead, I'd suggest disabling generating the testaif executable for AIX.

To do this, modify the libaif/configure.in as follows. Change:

os=`uname -s`
if test "x$os" = "xAIX" ; then
        CFLAGS="$CFLAGS -qinfo=gen -qcpluscmt"
else
        CFLAGS="$CFLAGS -Wall"
fi

to:

os=`uname -s`
if test "x$os" = "xAIX" ; then
        CFLAGS="$CFLAGS -qinfo=gen -qcpluscmt"
        AIX=1
else
        CFLAGS="$CFLAGS -Wall"
        AIX=0
fi
AM_CONDITIONAL([AIX], [test "$AIX" = 1])

Next, add conditionals to the libaif/Makefile.am as follows:

if !AIX
noinst_PROGRAMS = testaif
endif

and:

if !AIX
testaif_SOURCES = testaif.c
testaif_CFLAGS = -I. $(AM_CFLAGS) -g
testaif_LDFLAGS = -g
testaif_LDADD = libaif.a
endif

Then re-run autoconf followed by automake. Hopefully the library should still build, but the testaif executable won't be built any more.

Regards,
Greg

On Dec 12, 2012, at 8:00 AM, Dave Wootton <dwootton@xxxxxxxxxx> wrote:

Greg
Running autoconf and autolocal solved my problems running automake but didn't solve the problem I have getting the timestamp that is part of the directory name for org.eclipse.ptp.utils.


I looked at the configure.in for org.eclipse.ptp.rm.ibm.pe.proxy where the build also requires libutils and copied part of that into the configure.in in the SDM libaif subdirectory and discared my Makefile.am changes.


The fragment I copied into configure.in is

VERSION="_$PACKAGE_VERSION"

if test `expr "$VERSION" : "_@@<:@^@@:>@*@"` -gt 0 ; then

   VERSION=

fi


UTILS="`echo ../org.eclipse.ptp.utils${VERSION}`"

if test ! -d $UTILS; then

   UTILS="`echo ../../core/org.eclipse.ptp.utils${VERSION}`"

fi


echo "=====> VERSION " $VERSION

echo "=====? UTILS " $UTILS

LIBS="-L$UTILS -lutils"


I ran autoconf then ran the BUILD script. The log file for libaif shows that VERSION is set to _2.1.0 but I'm not sure where _$PACKAGE_VERSION gets it's value from or oif this is what I should be doing to get the timestamp.


The link for libaif fails because the path to libutils is improperly constructed.
 
Dave




From:        
Greg Watson <g.watson@xxxxxxxxxxxx>
To:        
Parallel Tools Platform general developers <ptp-dev@xxxxxxxxxxx>
Date:        
12/09/2012 09:24 PM
Subject:        
Re: [ptp-dev] Problems building sdb  on AIX
Sent by:        
ptp-dev-bounces@xxxxxxxxxxx




Dave,

You probably need to run autoconf (and possibly aclocal) before automake in order to bring everything up to the correct version.

Greg

On Dec 4, 2012, at 12:26 PM, Dave Wootton <
dwootton@xxxxxxxxxx> wrote:

I'm trying to build the sdm module on AIX and am running into problems.


The first problem, which I can fix, is that org.eclipse.ptp.utils/src/compat.c has a function definition

vasprintf(char **strp, const char *fmt, va_list ap)

that needs to change to

vasprintf(char **ret, const char *fmt, va_list ap)


Once I change that and run the BUILD script for AIX, the build for the sdm fails in libaif with an unresolved reference to asprintf, which is only available in libutils.a for AIX. The asprintf function is not implemented by standard AIX libraries.


I tried to fix this by changing the Makefile.am file in org.eclipse.ptp.drbug.sdm/libaif to add -lutils to testaif_LDFLAGS, but when I tried to run automake I got an error telling me the configuration files were built using autoconf 2.61 while I have version 2.63. So I can't rebuild the files.


I'm also not sure how to specify the -L flag to point to the org.eclipse.ptp.utils directory since the directory hs a timestamp as part of its name, and I'm not sure libaif is teh only directory where I need to change the Makefiles.

Dave
_______________________________________________
ptp-dev mailing list

ptp-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/ptp-dev
_______________________________________________
ptp-dev mailing list

ptp-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/ptp-dev

_______________________________________________
ptp-dev mailing list

ptp-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/ptp-dev
_______________________________________________
ptp-dev mailing list
ptp-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/ptp-dev


Back to the top