NetBSD-Users archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Few notes&questions on NetBSD building and on wedges included by default
Hi, NetBSD mailing lists.
I'm intending to cross-build NetBSD to try it out. I very much liked project
goals, as well as emphasis on code clarity and portability.
Minimalism and perfectionism are attractive.
However, i have one practical question (which is 2.) and a few
suggestions\fixes on building process.
1. I'm actually do cross-building because installer fails with "wd0: device
busy" (googling for further info i found out that it's because of some thing
called wedges.).
Then why to include this unnecessary whistle by default? The goal of defaults
is by definition to fit to most users. Either fix sysinst, or kernel config!
2. The only value for x86 architecture is i386. Which obviously means that new
features from >i486 are not included, sse is (i guess) not included, amd k8 &
opteron optimizations are not included... It is possible to fine-tune these
settings in FreeBSD (see:
http://svnweb.freebsd.org/base/head/share/mk/bsd.cpu.mk?view=co). Judging by
absence of such in /usr/share/mk of NetBSD, it is not possible to get this
without DIY there. Why not to implement and document this?
It is not even explained anywhere, what's the difference between MACHINE and
MACHINE_ARCH. BUILDING says that MACHINE_ARCH should always be an exact
architecture, MACHINE may be not. And it says that by saying that first is
"architecture", second is "type" Very straightforward.
3. I've also found a bug in BUILDING documentation file. It says that HOST_CXX
is a C++ compiler. Yet setting HOST_CXX to g++ makes build,sh fail with
messages like "C preprocessor fails sanity check". By setting HOST_CXX to c
preproc, i have no such messages.
4. There is no option to actually set c++ compiler then. Groff needs it and
fails without it. So i have a choice between hacking makefiles and setting
MKGROFF=no. I chose second - nobody loves to hack makefiles. Especially those
makefiles that are written by other people.
I suggest you to implement HOST_CPLUS feature.
CPLUS, not CPP. So that nobody'll be confused with cpp\cxx.
5. mk.conf is somewhat badly documented. E.g. i've found new mk.conf options in
makefiles, which are not listed in documentation. Some options listed in
mk.conf(5) are not listed in BUILDING or handbook, and vice versa.
6. libc fails to build with MKPICLIB=no, saying that '-lgcc is not found'. Even
though i've found that i actually need MKPICLIB set to yes, seem as a bug.
(This happened when i tried to crossbuild it on both FreeBSD and on an
unpopular Ubuntu Linux derivative.)
Home |
Main Index |
Thread Index |
Old Index