On Sat, Jun 2, 2012 at 12:33 AM, Roland Mainz <roland.ma...@nrubsig.org> wrote:
> On Sat, Jun 2, 2012 at 12:03 AM, Glenn Fowler <g...@research.att.com> wrote:
>>
>> the AT&T Software Technology ast beta 2012-05-31 source release
>> has been posted to the download site
>>        http://www.research.att.com/sw/download/beta/
>> the package names and md5 checksums are
>>            INIT  190c689937c84978964cabf4b2d5555e
>>        ast-base  2131b55b82738c80888c26b319a98153
>>        ast-open  42a792f91e04daa58781e10ed79b79fd
>>         ast-ksh  707b6d2c338e64e9b6e1db5296e384f5
>>       ast-jmake  3fc2da59c872cdb81a2477b2472f3efd
>> the md5 sums should match the ones listed on the download page
>> if not then don't download
>>
>> the git source repository has also been updated
>>        http://www.research.att.com/sw/gitweb/
>
> I'm getting missing symbols if I compile with map-libc:
> -- snip --
> /opt/SUNWspro/bin/cc '-xc99=%all' '-D_XOPEN_SOURCE=600'
> '-D__EXTENSIONS__=1' -m64 -KPIC -D_TS_ERRNO -D_REENTRANT -KPIC -g -xs
> -xspace -Xa -xstrconst -z combreloc -xildoff -xcsi '-errtags=yes'
> '-DSHOPT_CMDLIB_BLTIN=0' '-DSH_CMDLIB_DIR=\"/usr/ast/bin\"'
> '-DSHOPT_CMDLIB_HDR=\"/home/test001/ksh93/ast_ksh_20120531/build_i386_64bit_debug/tmp_solaris_builtin_header.h\"'
> -DSHOPT_SYSRC '-D_map_libc=1' '-D_lib_socket=1' -lsocket -lnsl
> -L/home/test001/ksh93/ast_ksh_20120531/build_i386_64bit_debug/arch/sol11.i386/lib/
> -Bdirect -o ksh pmain.o -lshell -Bstatic -lcmd-g -Bdynamic -lsum
> -lcoshell -ldll -last -lm -lmd -lsecdb
> Undefined                       first referenced
>  symbol                             in file
> _ast_strgrpmatch
> /home/test001/ksh93/ast_ksh_20120531/build_i386_64bit_debug/arch/sol11.i386/lib//libshell.so
> _ast_regrexec
> /home/test001/ksh93/ast_ksh_20120531/build_i386_64bit_debug/arch/sol11.i386/lib//libshell.so
> _ast_regnexec
> /home/test001/ksh93/ast_ksh_20120531/build_i386_64bit_debug/arch/sol11.i386/lib//libshell.so
> ld: fatal: symbol referencing errors. No output written to ksh
> $ nm ./arch/sol11.i386/lib/libast.so | fgrep 'strgrpma'
> [6058]  |              355312|                1421|FUNC |GLOB |0
> |15     |_ast_strgrpmatch_20120528
> [5354]  |              355232|                  77|FUNC |GLOB |0
> |15     |strgrpmatch
> $ nm ./arch/sol11.i386/lib/libast.so | fgrep '_ast_regrexec'
> [5223]  |             1145632|                1981|FUNC |GLOB |0
> |15     |_ast_regrexec_20120528
> $ nm ./arch/sol11.i386/lib/libast.so | fgrep '_ast_regnexec'
> [5396]  |             1125984|                4611|FUNC |GLOB |0
> |15     |_ast_regnexec_20120528
> -- snip --

Attached (as "astopen20120531_gisburn_maplibc_patch20120601.diff") is
a fix for this problem...

----

Bye,
Roland

-- 
  __ .  . __
 (o.\ \/ /.o) roland.ma...@nrubsig.org
  \__\/\/__/  MPEG specialist, C&&JAVA&&Sun&&Unix programmer
  /O /==\ O\  TEL +49 641 3992797
 (;O/ \/ \O;)
diff -r -u src/lib/libast/regex/regnexec.c src/lib/libast/regex/regnexec.c
--- src/lib/libast/regex/regnexec.c	2012-05-29 11:52:10.000000000 +0200
+++ src/lib/libast/regex/regnexec.c	2012-06-02 03:39:49.840582433 +0200
@@ -2053,6 +2053,9 @@
 #endif
 
 #undef	regnexec
+#if _map_libc
+#define regnexec _ast_regnexec
+#endif
 
 extern int
 regnexec(const regex_t* p, const char* s, size_t len, size_t nmatch, oldregmatch_t* oldmatch, regflags_t flags)
diff -r -u src/lib/libast/regex/regrexec.c src/lib/libast/regex/regrexec.c
--- src/lib/libast/regex/regrexec.c	2012-05-29 11:52:39.000000000 +0200
+++ src/lib/libast/regex/regrexec.c	2012-06-02 03:39:33.021184757 +0200
@@ -153,6 +153,9 @@
 #endif
 
 #undef	regrexec
+#if _map_libc
+#define regrexec _ast_regrexec
+#endif
 
 extern int
 regrexec(const regex_t* p, const char* s, size_t len, size_t nmatch, oldregmatch_t* oldmatch, regflags_t flags, int sep, void* handle, regrecord_t record)
diff -r -u src/lib/libast/string/strmatch.c src/lib/libast/string/strmatch.c
--- src/lib/libast/string/strmatch.c	2012-05-30 23:48:16.000000000 +0200
+++ src/lib/libast/string/strmatch.c	2012-06-02 03:38:36.752855557 +0200
@@ -67,6 +67,9 @@
 #define STR_INT		040000
 
 #undef	strgrpmatch
+#if _map_libc
+#define strgrpmatch _ast_strgrpmatch
+#endif
 
 int
 strgrpmatch(const char* b, const char* p, int* sub, int n, int flags)
_______________________________________________
ast-developers mailing list
ast-developers@research.att.com
https://mailman.research.att.com/mailman/listinfo/ast-developers

Reply via email to