Message279275
re: the blake issue - I have ignored it as in not run any tests. Assistance would be to tell me how to easily test "blake" working or not working - before I head upstream.
re: _POSIX_C_SOURCE and _XOPEN_SOURCE
This is the logic in standards.h (AIX 5.3)
+142 #if (!defined (_XOPEN_SOURCE)) && (!defined (_POSIX_SOURCE)) && (!defined (_ANSI_C_SOURCE))
+143 #define _XOPEN_SOURCE 600
+144 #define _XOPEN_SOURCE_EXTENDED 1
+145 #define _POSIX_SOURCE
+146 #ifndef _POSIX_C_SOURCE
+147 #define _POSIX_C_SOURCE 200112L
+148 #endif
And the same in AIX 6.1 (just different line numbers)
+151 #if (!defined (_XOPEN_SOURCE)) && (!defined (_POSIX_SOURCE)) && (!defined (_ANSI_C_SOURCE))
+152 #define _XOPEN_SOURCE 600
+153 #define _XOPEN_SOURCE_EXTENDED 1
+154 #define _POSIX_SOURCE
+155 #ifndef _POSIX_C_SOURCE
+156 #define _POSIX_C_SOURCE 200112L
+157 #endif
However, AIX 7.1 has the "new" values:
+160 #if (!defined (_XOPEN_SOURCE)) && (!defined (_POSIX_SOURCE)) && (!defined (_ANSI_C_SOURCE))
+161 #define _XOPEN_SOURCE 700
+162 #define _XOPEN_SOURCE_EXTENDED 1
+163 #define _POSIX_SOURCE
+164 #ifndef _POSIX_C_SOURCE
+165 #define _POSIX_C_SOURCE 200809L
+166 #endif
So, getting back to issue #17120 - and impact for AIX (and other older *nix platforms - is Python3 saying no support?)
As to the question about how the compiler is called ... Using, as much as possible - defaults documented below.
I use the invocation "xlc" generally - although I am thinking about changing to the "thread safe" invocation "xlc_r".
The differences are defined in /etc/vac.cfg.{53|61|71} (and I expect .72 for the latest compiler).
* -qlanglvl=extc99 C compiler with common extensions, UNIX headers
xlc: use = DEFLT_C
crt = /lib/crt0.o
mcrt = /lib/mcrt0.o
gcrt = /lib/gcrt0.o
libraries = -L/usr/vac/lib,-lxlopt,-lxlipa,-lxl,-lc
proflibs = -L/lib/profiled,-L/usr/lib/profiled
options = -qlanglvl=extc99,-qcpluscmt,-qkeyword=inline,-qalias=ansi
* standard c compiler aliased as xlc_r (53 Threads)
xlc_r: use = DEFLT_C
crt = /lib/crt0.o
mcrt = /lib/mcrt0.o
gcrt = /lib/gcrt0.o
libraries = -L/usr/vac/lib,-lxlopt,-lxlipa,-lxl,-lpthreads,-lc
proflibs = -L/lib/profiled,-L/usr/lib/profiled
hdlibs = -L/usr/vac/lib,-lhmd
options = -qlanglvl=extc99,-qcpluscmt,-qkeyword=inline,-qalias=ansi,-qthreaded,-D_THREAD_SAFE,-D__VACPP_MULTI__
As both have -qalias=ansi - that obviously does not define any of:
+142 #if (!defined (_XOPEN_SOURCE)) && (!defined (_POSIX_SOURCE)) && (!defined (_ANSI_C_SOURCE))
FYI: the other defaults are here:
DEFLT_C:
use =DEFLT
xlurt_cfg_path=/usr/vac/urt
xlurt_cfg_name=urt_client.cfg
DEFLT_CPP:
use =DEFLT
xlurt_cfg_path=/usr/vacpp/urt
xlurt_cfg_name=urt_client.cfg
DEFLT:
cppcomp = /usr/vacpp/exe/xlCentry
ccomp = /usr/vac/exe/xlcentry
code = /usr/vac/exe/xlCcode
cpp = /usr/vac/exe/xlCcpp
munch = /usr/vacpp/exe/munch
dis = /usr/vac/exe/dis
xlC = /usr/vac/bin/xlc
list = /usr/vac/exe/xllist
xslt = /usr/vac/exe/XALAN
transforms = /usr/vac/listings
listlibs = /usr/vac/lib
cppinc = /usr/vacpp/include
ipa = /usr/vac/exe/ipa
cppfilt = /usr/vacpp/bin/c++filt
bolt = /usr/vac/exe/bolt
as = /bin/as
ld = /bin/ld
artool = /bin/ar
options = -D_AIX,-D_AIX32,-D_AIX41,-D_AIX43,-D_AIX50,-D_AIX51,-D_AIX52,-D_AIX53,-D_IBMR2,-D_POWER
options32 = -bpT:0x10000000,-bpD:0x20000000
options32_bmaxdata = -bpT:0x10000000,-bpD:0x30000000
options64 = -bpT:0x100000000,-bpD:0x110000000
ldopt = "b:o:e:u:R:H:Y:Z:L:T:A:k:j:"
hdlibs = -L/usr/vac/lib,-lhmd
xlCcopt = -qlanglvl=extc99,-qcpluscmt,-qkeyword=inline,-qalias=ansi
crt_64 = /lib/crt0_64.o
mcrt_64 = /lib/mcrt0_64.o
gcrt_64 = /lib/gcrt0_64.o
smplibraries = -lxlsmp
palibraries = -L/usr/vatools/lib,-lpahooks
resexp = /usr/vacpp/lib/res.exp
genexports = /usr/vac/bin/CreateExportList
vac_path = /usr/vac
vacpp_path = /usr/vacpp
xlcmp_path = /usr/vac:/usr/vacpp
xlc_c_stdinc = /usr/vac/include:/usr/include
xlc_cpp_stdinc = /usr/vacpp/include:/usr/include
xlurt_msg_cat_name=vacumsg.cat
__GNUC_MINOR__ = 3
__GNUC_PATCHLEVEL__ = 4
__GNUC__ = 3
dfplibs = -ldecNumber
oslevel = 5.3
os_variant = aix
os_major = 5
os_minor = 3
inst_info = 5.3, 03 10 2015 16:09
I think the key "extra" is the default defines:
options = -D_AIX,-D_AIX32,-D_AIX41,-D_AIX43,-D_AIX50,-D_AIX51,-D_AIX52,-D_AIX53,-D_IBMR2,-D_POWER
Lastly,
re: pointer sizes - my expectation is that a pointer size is a pointer size (and that size being dependent on ABI 4 bytes, or 8 bytes) - but I will have to find or write again my little "sizeof" program. Will do that later. I think IBM "lint" is just being very strict. However, I have learned with working on a port of dovecat that gcc and xlc have different "rules" aka permissiveness when it comes to "dynamic" structs. |
|
Date |
User |
Action |
Args |
2016-10-23 19:26:35 | Michael.Felt | set | recipients:
+ Michael.Felt, christian.heimes, martin.panter |
2016-10-23 19:26:35 | Michael.Felt | set | messageid: <1477250795.29.0.694800350283.issue28290@psf.upfronthosting.co.za> |
2016-10-23 19:26:35 | Michael.Felt | link | issue28290 messages |
2016-10-23 19:26:33 | Michael.Felt | create | |
|