tech-userlevel archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: individual software releases for third parties



>> I don't see the point of avoiding autotools - {cross,} compiling on
>> a variety of architectures is precisely what it is designed to do.
I wrote a rant about why I don't like the "just shut up and drink the
nice ./configure koolaid" paradigm;
http://ftp.rodents-montreal.org/mouse/blah/2009-11-20-1.html for those
who are interested.
Most briefly, (a) it may be designed to do that, but it does not
actually do it (except, possibly, in a set of particular cases it's
been tested to do it in, or maybe by chance), and (b) it's a security
disaster in at least two respects.
> The right way to approach portability has never been tried: to
> construct a database of alternatives, keyed approximately by os,
> libc, and compiler version.
That's odd, that's pretty much what I thought I did for a few of the
programs I install:
(case A)
v=`uname -m`-`uname -r`
if [ -d ../patches.vers/$v ]; then
 ( cd ../patches.vers/$v ; find . -type f -print ) | sed -e 's;^./;;' |
 while read fn
 do
 cat ../patches.vers/$v/$fn | sed -e 
"s;@@LOCALROOT@@;$LOCALROOT;g" | patch $fn
 rm -f $fn.orig
 done
fi
(case B)
r=`uname -s`-`uname -r`
...
(cd ..; find patches-$r -type f -print) |
 sed -e "s@/@ @" |
 while read d f; do
 patch $f < ../$d/$f
 done
(case C)
k="`uname -m`/`uname -s`/`uname -r`"
case "$k" in
 */NetBSD/1.4T) opt=-O;;
 */NetBSD/1.6) opt=-O;;
 */NetBSD/2.0) opt=-O;;
 */NetBSD/2.1) opt=-O;;
 */NetBSD/3.0.1) opt=-O;;
 */NetBSD/3.1) opt=-O;;
 i386/NetBSD/4.0.1) opt=-O2;;
 macppc/NetBSD/4.0.1) opt=-O2;;
 sparc/NetBSD/4.0.1) opt=-O2;;
 i686/Linux/2.6.28-18-generic) opt=-O2;;
 *) echo "Don't know optimization setting for $k" 1>&2
 exit 1
 ;;
esac
(case C needs customization, so far, in only that one respect).
Perhaps this doesn't count or something.
/~\ The ASCII Mouse
\ / Ribbon Campaign
 X Against HTML mouse%rodents-montreal.org@localhost
/ \ Email! 7D C8 61 52 5D E7 2D 39 4E F1 31 3E E8 B3 27 4B


Home | Main Index | Thread Index | Old Index

AltStyle によって変換されたページ (->オリジナル) /