>Also, I didn't add the configure.ac line that set CFLAGS to empty string
that was in >the original patch. The current master branch has switched to
letting autoconf >initialize the CFLAGS directly. This worked fine with gcc
when I tried it, but I'd be >interested in seeing how it works with other
AIX compilers.

Looks like autoconf is broken then:

--- libressl-2.1.6.0/configure.ac       2015-03-19 05:40:26 +0000
+++ portable/configure.ac       2015-04-10 03:59:16 +0000
@@ -9,10 +9,22 @@

 m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])

-AC_SUBST([USER_CFLAGS], "$CFLAGS")
-CFLAGS="-Wall -std=gnu99 -g -O2"
+AC_PROG_CC
+AC_PROG_CC_STDC
+AM_PROG_CC_C_O
+AC_PROG_LIBTOOL
+LT_INIT
+
+CFLAGS="$CFLAGS -Wall -std=gnu99"

 case $host_os in
+       *aix*)
+               HOST_OS=aix
+               AC_SUBST([PLATFORM_LDADD], ['-lperfstat -lpthread'])
+               ;;
+       *cygwin*)
+               HOST_OS=cygwin
+               ;;
        *darwin*)

config.status: executing depfiles commands
config.status: executing libtool commands
root@x064:[/data/prj/openbsd/libressl/portable]make
Making all in crypto
make[1]: Entering directory `/data/prj/openbsd/libressl/portable/crypto'
  CC       aes/libcrypto_la-aes_cbc.lo
cc: 1501-210 (S) command option Wall contains an incorrect subargument

more verbose

root@x064:[/data/prj/openbsd/libressl/portable]make V=1
Making all in crypto
make[1]: Entering directory `/data/prj/openbsd/libressl/portable/crypto'
source='aes/aes_cbc.c' object='aes/libcrypto_la-aes_cbc.lo' libtool=yes \
DEPDIR=.deps depmode=xlc /bin/sh ../depcomp \
/bin/sh ../libtool  --tag=CC   --mode=compile cc -qlanglvl=extc89
-qlanglvl=extc99 -DPACKAGE_NAME=\"libressl\" -DPACKAGE_TARNAME=\"libressl\"
-DPACKAGE_VERSION=\"2.2.0\" -DPACKAGE_STRING=\"libressl\ 2.2.0\"
-DPACKAGE_BUGREPORT=\"\" -DPACKAGE_URL=\"\" -DPACKAGE=\"libressl\"
-DVERSION=\"2.2.0\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1
-DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1
-DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1
-DHAVE_DLFCN_H=1 -DLT_OBJDIR=\".libs/\" -I.  -DOPENSSL_NO_HW_PADLOCK
-I../include -I../crypto/asn1 -I../crypto/evp -I../crypto/modes -g -Wall
-std=gnu99    -DHAVE_GNU_STACK -c -o aes/libcrypto_la-aes_cbc.lo `test -f
'aes/aes_cbc.c' || echo './'`aes/aes_cbc.c
libtool: compile:  cc -qlanglvl=extc89 -qlanglvl=extc99
-DPACKAGE_NAME=\"libressl\" -DPACKAGE_TARNAME=\"libressl\"
-DPACKAGE_VERSION=\"2.2.0\" "-DPACKAGE_STRING=\"libressl 2.2.0\""
-DPACKAGE_BUGREPORT=\"\" -DPACKAGE_URL=\"\" -DPACKAGE=\"libressl\"
-DVERSION=\"2.2.0\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1
-DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1
-DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1
-DHAVE_DLFCN_H=1 -DLT_OBJDIR=\".libs/\" -I. -DOPENSSL_NO_HW_PADLOCK
-I../include -I../crypto/asn1 -I../crypto/evp -I../crypto/modes -g -Wall
-std=gnu99 -DHAVE_GNU_STACK -c aes/aes_cbc.c
-Wp,-qmakedep=gcc,-MFaes/.deps/libcrypto_la-aes_cbc.TPlo  -DPIC -o
aes/.libs/libcrypto_la-aes_cbc.o
cc: 1501-210 (S) command option Wall contains an incorrect subargument
make[1]: *** [aes/libcrypto_la-aes_cbc.lo] Error 1
make[1]: Leaving directory `/data/prj/openbsd/libressl/portable/crypto'
make: *** [all-recursive] Error 1

and when I change CC to xlc I get the same error (after rerunning configure)

config.status: executing depfiles commands
config.status: executing libtool commands
root@x064:[/data/prj/openbsd/libressl/portable]make V=1
Making all in crypto
make[1]: Entering directory `/data/prj/openbsd/libressl/portable/crypto'
source='aes/aes_cbc.c' object='aes/libcrypto_la-aes_cbc.lo' libtool=yes \
DEPDIR=.deps depmode=xlc /bin/sh ../depcomp \
/bin/sh ../libtool  --tag=CC   --mode=compile xlc
-DPACKAGE_NAME=\"libressl\" -DPACKAGE_TARNAME=\"libressl\"
-DPACKAGE_VERSION=\"2.2.0\" -DPACKAGE_STRING=\"libressl\ 2.2.0\"
-DPACKAGE_BUGREPORT=\"\" -DPACKAGE_URL=\"\" -DPACKAGE=\"libressl\"
-DVERSION=\"2.2.0\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1
-DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1
-DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1
-DHAVE_DLFCN_H=1 -DLT_OBJDIR=\".libs/\" -I.  -DOPENSSL_NO_HW_PADLOCK
-I../include -I../crypto/asn1 -I../crypto/evp -I../crypto/modes -g -Wall
-std=gnu99    -DHAVE_GNU_STACK -c -o aes/libcrypto_la-aes_cbc.lo `test -f
'aes/aes_cbc.c' || echo './'`aes/aes_cbc.c
libtool: compile:  xlc -DPACKAGE_NAME=\"libressl\"
-DPACKAGE_TARNAME=\"libressl\" -DPACKAGE_VERSION=\"2.2.0\"
"-DPACKAGE_STRING=\"libressl 2.2.0\"" -DPACKAGE_BUGREPORT=\"\"
-DPACKAGE_URL=\"\" -DPACKAGE=\"libressl\" -DVERSION=\"2.2.0\"
-DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1
-DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1
-DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\".libs/\"
-I. -DOPENSSL_NO_HW_PADLOCK -I../include -I../crypto/asn1 -I../crypto/evp
-I../crypto/modes -g -Wall -std=gnu99 -DHAVE_GNU_STACK -c aes/aes_cbc.c
-Wp,-qmakedep=gcc,-MFaes/.deps/libcrypto_la-aes_cbc.TPlo  -DPIC -o
aes/.libs/libcrypto_la-aes_cbc.o
xlc: 1501-210 (S) command option Wall contains an incorrect subargument
make[1]: *** [aes/libcrypto_la-aes_cbc.lo] Error 1
make[1]: Leaving directory `/data/prj/openbsd/libressl/portable/crypto'
make: *** [all-recursive] Error 1


On Wed, Apr 8, 2015 at 10:28 PM, Brent Cook <bust...@gmail.com> wrote:

> Thanks Michael,
>
> I have incorporated some initial AIX patches - can you please check out
> the latest tree?
>
>
> https://github.com/libressl-portable/portable/commit/fe3f7fc6365bfaac3418a72256b8c11603e80cbf
>
>
> https://github.com/libressl-portable/openbsd/commit/37d8e3c080e7c73158093f253d8e06fa1906dc03
>
> There are a few changes from your original patch set, but this should make
> it easier to move forward now that they are in-tree. You can just patch on
> top of that rather than sending the whole thing.
>
> I undid some of the formatting changes for the getentropy file so it
> matched the other files - the style is intentional between the files so its
> easy to diff between them to spot changes. The perfstat stuff moves into
> the inner loop like the other files as well. I added the network counters
> (we have network counters on OS X too), but also added wpar cpu stats.
>
> The issetugid currently short circuits to always return '1' because I
> think it still needs some work, as we discussed earlier. If we can't find a
> way to make it work, a failsafe version isn't really a bad thing for most
> uses.
>
> Also, I didn't add the configure.ac line that set CFLAGS to empty string
> that was in the original patch. The current master branch has switched to
> letting autoconf initialize the CFLAGS directly. This worked fine with gcc
> when I tried it, but I'd be interested in seeing how it works with other
> AIX compilers.
>
> One slightly annoying thing I found was the system library loader would
> find other versions of libcrypto.a / libssl.a under LIBPATH and try to load
> those when running binaries in-tree rather than the build versions. I don't
> know if that was just a misconfiguration with my system.
>
>  - Brent
>
> > On Apr 8, 2015, at 9:19 PM, Michael Felt <aixto...@gmail.com> wrote:
> >
> > I applied the patch I had sent in before, made one change (correction) -
> correcting a typo that brent had pointed out (netinfo that needs to be
> "diskinfo") in the getentrophy_aix.c
> >
> > If you need the patch again, I can send it again. I am curious about
> whether this is moving forward - and if there is anything extra I can do to
> assist.
> >
> >
> ============================================================================
> > Testsuite summary for libressl 2.1.6
> >
> ============================================================================
> > # TOTAL: 47
> > # PASS:  47
> > # SKIP:  0
> > # XFAIL: 0
> > # FAIL:  0
> > # XPASS: 0
> > # ERROR: 0
> >
> ============================================================================
> >
> > regards,
> > Michael
>
>

Reply via email to