From: robert DOT van DOT der DOT boon AT nl DOT pwcglobal DOT com Date: Tue, 25 May 1999 10:45:10 +0200 Subject: Re: SFN patches To: "Mark E. _" , djgpp-workers AT delorie DOT com Message-id: <8025677C.002FB9EA.00@intleursmtp10.uk.pw.com> MIME-version: 1.0 Content-type: text/plain; charset=us-ascii Content-disposition: inline X-Lotus-FromDomain: C&L NL AT C&L INT AT INTL Reply-To: djgpp-workers AT delorie DOT com >Have you seen the SFN patches for bash posted to djgpp-workers? Just today (tuesday). Have been away for 4 days. Unbelievable what you miss in such a short time [1]-). >From what you've noted, I was thinking it would be a lot of work to make >Bash SFN buildable. That was not quite it. It were a couple of issues, not too much work... The only change that is hard to do right is the y.tab /y_tab problem. Other changes are merely changing a . to a _ in the right places and renaming some files. Most has already been done. >But the changes posted to djgpp-workers don't >seem too bad. If you have any comments about them, send me or the >group your thoughts. Some points of thought (some also pointed out by Eli) - config.h:config.h-in in configure.in, instead of the workaround by Martin. (This should be done anyway, IMHO.) Also apply this change to support/missing. - There are still occurances of .distribution / .pacthlevel in support/mkclone - y.tab is also mentioned in support/missing, support/mkclone, support/xenix-link.sh - The examples directory is not SFN-clean. Do we want to fix that? - '-o outputilename' is not a standard option. (SunOS-yacc on our uni silently ignores it, and still creates y.tab.c) For this problem, I think there are 2 options (your votes please): 1) An autoconf macro that checks the output of yacc (I'll send a working example to the group this afternoon) + propagating this to the makefiles and support/missing, support/mkclone. In the c-files ifdef on DJGPP, before including y[_.]tab.h [note: when we want a fully automatic, always working, exotic version: a define in config.h for the root of y.tab (Something like Y_TAB_UNDERSCORED) and use this result: #ifdef Y_TAB_UNDERSCORED #include #else #include #endif But I have not implemented such a feature yet. And I guess never will ;-] 2) patch the source to include (for example) y-tab.h and use the following rule in the makefile (other rules patched accordingly, of course. Just a workaround for the lack of '-o' on the yacc of some systems): y-tab.c y-tab.h: parse.y # -if test -f y-tab.h; then mv -f y-tab.h old-y-tab.h; fi $(YACC) -d $(srcdir)/parse.y -mv y.tab.c y-tab.c -mv y_tab.c y-tab.c -mv y.tab.h y-tab.h -mv y_tab.h y-tab.h # -if cmp -s old-y-tab.h y-tab.h; then mv old-y-tab.h y-tab.h; else cp -p y-tab.h ${GRAM_H}; fi Any comments, better solutions? And by the way, what are the chances of getting all our changes into the official distribution? bye now, Robert PS A side note: why are there so many empty directories in the source distribution? PS2 Sorry if my mail-prog (lotus notes) messed up this message, but I don't have another choice here. [1] But I finally got to see metallica live ;-) ---------------------------------------------------------------- The information transmitted is intended only for the person or entity to which it is addressed and may contain confidential and/or privileged material. Any review, retransmission, dissemination or other use of, or taking of any action in reliance upon, this information by persons or entities other than the intended recipient is prohibited. If you received this in error, please contact the sender and delete the material from any computer.