Bruno, On Wed, Sep 29, 2010 at 12:33 PM, Bruno Haible <[email protected]> wrote: > Sam, > >> why is getdate built at all on the latest ubuntu? >> isn't glibc enough there?! > > Take a look at the module description (modules/getdate): > > 1) It says > > Include: > "getdate.h" > > Does glibc have a getdate.h include file?
posix does not require "getdate.h". gnulib shouldn't either. every time you replace some glibc functionality, it is a bug. either in gnulib, or in glibc. > 2) It says > > Makefile.am: > lib_SOURCES += getdate.y > > which means that getdate.y is compiled unconditionally. > Whereas platform-dependent compilations are usually triggered > through AC_LIBOBJ. this is a bug in gnulib. >> /bin/bash /home/sds/src/clisp/current/build-g//build-aux/ylwrap >> /home/sds/src/clisp/current/modules/syscalls/gllib/getdate.y \ >> y.tab.c getdate.c \ >> y.tab.h getdate.h \ >> y.output getdate.output \ >> -- byacc && \ >> mv getdate.c getdate.c-t && \ >> mv getdate.c-t >> /home/sds/src/clisp/current/modules/syscalls/gllib/getdate.c >> byacc: e - line 277 of >> "/home/sds/src/clisp/current/modules/syscalls/gllib/getdate.y", syntax error >> %pure-parser >> ^ >> make[2]: *** [getdate.c] Error 1 > > The getdate module comes with an autoconf macro gl_GETDATE, which requires > gl_BISON, found in m4/bison.m4. This macro has a comment > "# getdate.y works with bison only.", and sets the default value of YACC > to 'bison -y'. Probably you had YACC set by another macro, and it ended > up being 'byacc'. Since your package now includes getdate.y, it relies > on bison. So you can ditch your other macro that determined YACC in a > more relaxed way, and use bison.m4 instead. this is another gnulib bug: it should have detected bad YACC at configure time and failed then. the bottom line is: gnulib has no business requiring YACC on linux gnulib has no business replacing glibc functions on linux -- Sam Steingold <http://sds.podval.org>
