On Fri, Apr 19, 2002 at 10:30:15AM -0400, Net Llama! wrote:
>Bill, i appreciate & value your input & suggestions, so please don't take
>this the wrong way.  I'm not criticizing you, just the overall basic
>problem.
>
>If i wanted to start screwing around with random config files, i'd just
>use the tarball, and not the SRPM.  That is supposed to be the beauty of
>SRPMs, in that you have a relatively brain-dead build process.  If i have
>to stat picking apart the package to 'fix' it, i might as well just go
>with the tarball, which i know build just fine, and installs just fine.  I
>just would prefer to have some kind of package management in place.

Of course this depends on the quality of the SRPM.  Writing portable
software and RPM spec files is somewhat of an art, and requires a fair
amount of experience (i.e. the writer has broken things in the past and
learned from it).  The biggest advantage of rpm that I see is that it
formalizes the process of building software from pristine sources, and the
spec file can make it fairly easy to fix some broken packages without
having to go deep into their code, say by either doing the install part in
the spec file, or moving things around that they've put in funny places
after doing a ``make install''.

It helps to have worked on a variety of Linux/Unix platforms to learn what
things to avoid.  People who's only experience is on Linux with bash tend
to write shell code that breaks under pure Bourne shell.  Inexperienced
people tend to think that they way it's done on their system is the only
way, and may tend to hard-code things they shouldn't.  It also helps to
have a fair amount of experience doing system administration to learn that
standards and documentation are a Good Thing(tm).

There's a pretty good section on writing portable shell programs in the GNU
autoconf documentation.  If you're going to be doing much porting and
development work, I would recommend getting this book.  I suggest looking
at www.bookpool.com as they have the best prices I've found on technical
books.
        GNU Autoconf, Automake, and Libtool
        ISBN 1-57870-190-2

I build a fair number of SRPMS on a variety of systems.  Given that I
learned rpm on Caldera linux systems, I've come to use some of their macros
(e.g. mkLists).  I've found that they work fine with Red Hat 7.1's 4.x RPM,
and the version of RPM I found for OS X (darwin) by copying their
/usr/lib/rpm-3.0.6 to the system, and putting their macros.OL in
/etc/rpm/macros.  I had to do some minor tweaks to the macros on darwin to
deal with their compiler and loader idiosyncrasies, but basically it's a
drop-in.

My goal with SRPMS is to be able to just do a rebuild on any target system
without modification of the SRPM.  The biggest change I usually make is to
change the hard-coded prefix=/usr to prefix=%{_prefix} because I really
don't like putting non-vendor packages into system directories.

BTW:  I just remembered a problem I had building the previous version of
xfce on OpenLinux 3.1 Workstation before I started on the Darwin project.
I had a similar problem that something was missing, and I traced it back to
the fact that Caldera's installation left out part of the audiofile
package.  It had the libraries, but not not the audiofile-config program.
It's beyond me why they have libaudiofile split into three packages,
particularly when the libaudiofile-devel package won't work with autoconf
without libaudiofile-utils.

...
>I'll also note, that the version of xfce that you built below appears to
>be the previous version, and not the one that was released 2 days ago.

Given that it took me two days from the time I started trying to compile
xfce for darwin that doesn't surprise me.  I just retrieved the src.rpm
from their site, tweaked the spec file with the changes that I made for
darwin, and am now rebuilding it.  It took me less than five minutes to
download the src.rpm, install it, and modify the spec file.  I wrote the
paragraph above on libaudiofile after that, and am now waiting for the
build to comlete on the Apple (a 400mhz G4 so not exactly a speed demon).
All told, I will have the Latest & Greatest version of xfce done with about
five minutes total time exclusive of unattended compile time.

Bill
--
INTERNET:   [EMAIL PROTECTED]  Bill Campbell; Celestial Software LLC
UUCP:               camco!bill  PO Box 820; 6641 E. Mercer Way
FAX:            (206) 232-9186  Mercer Island, WA 98040-0820; (206) 236-1676
URL: http://www.celestial.com/

If the Democrats had wanted Gore to be president, they should have
voted for impeachment.
_______________________________________________
Linux-users mailing list - http://linux-sxs.org/mailman/listinfo/linux-users
Subscribe/Unsubscribe info, Archives,and Digests are located at the above URL.

Reply via email to