Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
fastest boot
View unanswered posts
View posts from last 24 hours

Goto page Previous  1, 2  
Reply to topic    Gentoo Forums Forum Index Other Things Gentoo
View previous topic :: View next topic  
Author Message
steveL
Watchman
Watchman


Joined: 13 Sep 2006
Posts: 5153
Location: The Peanut Gallery

PostPosted: Tue May 07, 2013 5:32 am    Post subject: Reply with quote

mv wrote:
As I said: In theory, this shouldn't be the case. But in practice it is. It is not that I "think" there are build failures: I experienced them even when changing /bin/sh to dash.

Ah ok good: before you just said there "probably will be failures" which is different to "I have experienced build failures." And like I said, I haven't experienced any so far, but that doesn't mean there aren't issues, just like I had issues with initscripts: the whole point of discussing this is to get things fixed.
Quote:
Here are some lines from my package.cflags (maybe some of these packages have been fixed in newer version, I haven't checked since quite a while):

Did you file bugs for any of them?
Quote:
The problem is that while automake/autoconf itself is of course compatible, nobody prevents developers from using all sorts of bashisms in the code they add manually - they wouldn't realize on most systems since automake/autoconf defaults to SHELL=/bin/sh which is bash on most systems. Yes, these are bugs in the code, but if even just for bash->dash there are so many packages failing, I would expect even more problems with busybox, because then even all tools (find, install) have limited features very likely not expected by most developers.

That would be the case if busybox did not use external commands when it doesn't support the features, though that clearly does not happen for everything, or we wouldn't have the initscript issue, nor what you've seen with find. I just know that its ed does that, at least from scripts, since I've had stuff fail in the terminal that worked from script (which was quite a shock, and led to a nice discussion in #ed.)

install is a standard autoconf program, AC_PROG_INSTALL, fwtw, though installation of the install-sh helper can cause issues (see 'Trying out configure' at the site that became the nostarch autotools book if you're interested.)

Also, dash is known to be quite limited in its support for some POSIX constructs: it's actually more restrictive to script for than busybox, as a shell. Its echo as well is a trap for the unwary, though anyone with any sense doesn't use echo at all, in this domain (except for the occasional literal.)

In any event, I'm not arguing with the point that some "developers" don't know shell script very well, or at all in many cases (which makes me at least wonder about their suitability as developers.) Nor indeed that they might not need some help with their autotools-fu, or sticking to portable utilities and options. I just think it's better to try and get those things fixed: most often people are quite happy to take patches that make their software build in more places. "Most systems" only applies to Linux, and most developers are usually interested in working elsewhere too.

After all, even things like cmake work perfectly well under busybox (I know this as I started trying out the kate git sources a couple of months after I switched the symlink.)
Back to top
View user's profile Send private message
mv
Watchman
Watchman


Joined: 20 Apr 2005
Posts: 6747

PostPosted: Wed May 08, 2013 12:46 pm    Post subject: Reply with quote

steveL wrote:
before you just said there "probably will be failures" which is different to "I have experienced build failures."

From a user's perspective it is perhaps "probably", because it depends on the packages which he has. But let's skip this useless discussion about the word "probably".
Quote:
Quote:
Here are some lines from my package.cflags (maybe some of these packages have been fixed in newer version, I haven't checked since quite a while):

Did you file bugs for any of them?

No. If I would file bugs for any such small fix I ever made, I would not be doing much else.
Quote:
That would be the case if busybox did not use external commands when it doesn't support the features

I do not understand what you mean here: You mean busybox detects automatically whether a built-in recognizes certain options and if not it tries an external program? AFAIK you have to explicitly call the program with its path if you want the external solution - which is again bad, because it is probably cleaner to rely on the PATH already set (e.g. to support a prefix-portage installation). AFAIK there is not a way to say to busybox "use find, but the external one from the path": Obvious attempts like "command find" failed.
Quote:
install is a standard autoconf program

You are right; I expected it is also a busybox built-in, but did not check (and my conjecture was false).
Quote:
Also, dash is known to be quite limited in its support for some POSIX construct

It supports crucial extensions like local, test ... -nt ... but it seems busybox does as well. However, I recall that concerning unusual symbols in pattern matching busybox was somewhat more restrictive. I forgot details, however (it was probably releated with ${...##...} and some combination in use of variables, quotes, or jokers on the right-hand side).
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Other Things Gentoo All times are GMT
Goto page Previous  1, 2
Page 2 of 2

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum