Hi Chuck,

On 2009/05/16 14:21, Chuck Robey wrote:
> 
> Actually, I've been working to get the most basic extra services up.  I'm
> working on my 4th port, first were cvsup, zip and unzip, now it's seamonkey.  
> I
> happen to have that make listing, just that it's a bit more than a PITA to get
> it out to a pastebin service without any webserver.

You can upload (not just paste) text files to pastebin.ca, this works fine
with lynx (in the base OS).

> The rest, well, I've made
> no changes to mk.conf at all, the only things I've done are use cvsup to get 
> the
> cvs archive, and from that set up both the latest ports, and also the latest
> src.  I built/installed the latest version of OpenBSD, mostly because of all 
> the
> warnings I received that my ports would be out of sync with my very new 4.5
> install.  Well, if everything is at current, that can't any longer be a 
> problem,
> can it?
> 
> Far as the build, I'll get a listing when things are a little bit further 
> along.
>  Until then, if you have seen no problem in that part of the build (after
> building all the libs and executables, while it's trying to generate a locale
> file, zip tosses an error trying to access a file, en-US.jar, that doesn't 
> exist
> in my build directory anywhere) then just let it go.  I have no other 
> variables
> set up either in my environment, nothing whatever that wasn't originally in 
> the
> 4.5 install (as modified by the current install).

I notice some warnings in a normal seamonkey build along these lines,
but they aren't errors, and the build continues. If you can get a log
somewhere I can diff that against a good build and maybe that'll give
clues.

Ideally if possible, make clean, then

make 2>&1 | /usr/ports/infrastructure/build/portslogger /tmp

and you'll have a build log in a file under /tmp (more than one file if
dependencies are built as part of the process). Then it should be a
pretty direct comparison with what I have access to.

> I can't figure out what you might want from the pkg_info command, because I'm
> working with no package.  If maybe you could make that more clear to me, I'll 
> be
> happy to furnish the info.  If you still need the build listing, it's gonna 
> have
> to wait until I get some kind of browser up.

On OpenBSD, even when you use the ports tree to install, you are *always*
working with packages. So this will give a list of what's been pulled in
by the ports tree as dependencies.

When you "make install" in an port directory on OpenBSD, this happens: 

1. patch
2. configure
3. build
4. package (created in /usr/ports/packages)
5. install (just calls pkg_add) 

Note that this means packages aren't an after-thought; producing a good
package is a requirement otherwise "make install" will give incorrect
results too.

Last time I used FreeBSD, when you "make install" this happens:

1. patch
2. configure
3. build
4. install (there is no package created for this)

then if you "make package" there's an optional extra stage:

5. package 

I don't think this has changed since then. OpenBSD and FreeBSD
ports systems have diverged quite a lot.

FreeBSD has more advanced tools for users who work with the ports
tree (e.g. portupgrade, portsnap) that we don't have. But because we
can rely on having pretty good packages, we can have good end-user
tools for working with them; in particular "pkg_add -ui".

> Thanks anyway.
> 
> > 
> >> I'm not setting any other variables in doing this port, should I
> >> be?  I just do a 'make clean' and then a 'make'.  I would really
> >> appreciate a hint if you happen to have one, because I have no
> >> browser at all under OpenBSD yet, and I'm going to have to have one
> >> on call while doing my real project under OpenBSD.
> > 
> > You shouldn't have to do anything other than "make install",
> > that should pretty much always build a useful package and install
> > it for you.
> > 
> > If you need a browser now, I'd very strongly recommend this:
> > 
> > PKG_PATH=ftp://some.mirror/pub/OpenBSD/snapshots/packages/`arch -s`/ \
> >   pkg_add -i seamonkey
> 
> Maybe I'm working on an incorrect assumption, from my FreeBSD experience.  I
> would normally only rely upon things I build myself; is that very different in
> OpenBSD?  It's a longtime bias, so if it's not true about OpenBSD, I guess 
> I'll
> have to consider changing.  It bothers me a bit, that's all.

It is very different; and many decisions are made based around the fact
we're recommending that people use packages. For example rather than
having a lot of choices the user can make, we'll often have a port build
all the possible options (i.e. pull in a lot of build dependencies), and
then split up at the packaging stage (saving a lot of repeated compiling
in bulk builds, while keeping things pretty easy for the user and saving
them from installing too many dependencies).

We make quite frequent full builds of all the packages on many
architectures in the "hacking" phase of the release cycle (i386 very
often, amd64 fairly often, powerpc and sparc64 get quite regular
full builds but they're a bit less frequent - I build the arm packages
on a Thecus which takes about 3 months for a full build so I normally
build a set of about 700 or so cherry-picked packages most of the 
time <requests considered :)> then, for the release, as many as
there's time for between ports lock and the release date.. I don't
know offhand about other arch).

With pkg-add -ui it's pretty easy to take advantage of this and
save a lot of trouble and many cpu cycles. And the whole design of
the ports/packaging/fake-install system means that there _should_
not be any difference between the packages you make yourself from
ports, and the ones produced in the bulk build.

Does this make things any clearer?

Reply via email to