[CFT]: ClangBSD is selfhosting, we need testers now
Mehmet Erol Sanliturk
m.e.sanliturk at gmail.com
Wed Apr 21 00:44:51 UTC 2010
On Fri, Apr 16, 2010 at 12:08 PM, Roman Divacky <rdivacky at freebsd.org>wrote:
> Hi,
>
> ClangBSD is a branch of FreeBSD that aims at integrating clang (
> clang.llvm.org)
> into FreeBSD, replacing GCC as a system compiler.
>
> Recently, we've achieved the state when clang can compile all of FreeBSD
> world
> on i386/amd64 platforms (including all the C++ apps we have and itself)
> and a bootable kernel. Thus we feel that the time has come to ask the
> FreeBSD
> community for wider testing on i386/amd64 (you sure can help with other
> platforms too :)).
>
> How to setup ClangBSD:
>
> The default configuration of ClangBSD requires clang installed so you can
> either install fresh llvm-devel port (portinstall devel/llvm-devel) or
> change
> CC to "gcc" and CXX to "g++" in share/mk/sys.mk. I recommend the former.
>
>
> svn co http://svn.freebsd.org/base/projects/clangbsd/ clangbsd
>
> cd clangbsd && make buildworld
>
> echo NO_WERROR= >> /etc/make.conf
> echo WERROR= >> /etc/make.conf
>
> make DESTDIR=/clangbsd-chroot/ installworld
>
>
> now you have ClangBSD world installed and you can chroot into it. I don't
> recommend installing ClangBSD into real root as it is not tested enough.
>
> You can also start using clang compiled kernel - either build the kernel in
> the ClangBSD chroot (set NO_WERROR=yo and WERROR=yo in /etc/src.conf) or
> set
> CC to clang and build kernel the normal way.
>
> This information (and more) is also provided on:
>
> http://wiki.freebsd.org/BuildingFreeBSDWithClang
>
> We kindly ask you to setup ClangBSD chroot and/or use clang compiled kernel
> and
> use it as you would normally use FreeBSD. Please report back
>
> Thank you,
>
> Roman Divacky on behalf of the ClangBSD team
>
To participate in such tests would be very pleasing for many FreeBSD users ,
but for less experienced users that may be very difficult .
To help to less experienced users to participate to such tests , I have
prepared a
skeleton algorithm for application of such tests .
The skeleton algorithm needs to be completed to make it a usable algorithm .
I am NOT so much experienced to prepare it completely , and reason is that
for
preparing that skeleton . I do NOT have sufficient knowledge to complete
places specified by ... and to write scripts to apply some steps repeatedly
without re-keying the necessary statements over and over with possible
errors .
If that skeleton is re-worked and completed to be usable , it is likely that
more people will be able to apply such tests , including me .
It should be written in such a structure that a FreeBSD user having
knowledge to
. install FreeBSD ,
. add packages ,
. perform file operations ( cp , mv , etc. ) ,
. apply scripts ,
. and other minimal knowledge to apply steps explicitly specified in the
following algorithm ,
will be able to apply it .
The algorithm may be tested by less experienced users to report its
difficult to understand or apply parts .
( Similar algorithms may be generated and used to test other aspects . This
may be a starting template for them . )
If you find useful , the following text may be completed and incorporated
into a suitable page of wiki.freebsd.org or any other one ( by using already
present copyright of the attached page ) .
Thank you very much .
Mehmet Erol Sanliturk
To apply a complete test cycle about building FreeBSD from source by using
CLang and
LLVM compiling system , the following steps may be applied .
Some of them may be already completed with respect to installed parts , and
those steps may be skipped .
(A)
Install FreeBSD 8.0 Stable from
ftp://ftp4.freebsd.org/pub/FreeBSD/snapshots/201004/FreeBSD-8.0-STABLE-201004-amd64-dvd1.iso
OR
...
(B)
Login as root .
Add the following packages in the listed order :
pkg_add -rv llvm
pkg_add -rv clang
pkg_add -rv subversion-freebsd
.
.
.
The following script
...
may be downloaded to apply that step .
(C)
Login as root .
Check the versions of the following packages :
...
To ensure that the latest versions of the following packages are already
installed ,
apply the following statements :
...
The following script
...
may be downloaded to apply that step .
(D)
Study the following pages to apply required steps to build a bootable
FreeBSD operating system :
(E)
http://wiki.freebsd.org/SubversionPrimer
Apply the steps described in that page to construct a source tree in
your local computer .
The following script
...
may be downloaded to apply that step .
(F)
http://wiki.freebsd.org/Tinderbox
Apply the following steps to be able to build FreeBSD from sources with
CLang
by scripts :
...
The following script
...
may be downloaded to apply that step .
(G)
http://wiki.freebsd.org/BuildingFreeBSDWithClang
Download latest Makefile from
...
to compile FreeBSD sources by the CLang compiler by applying
the following steps :
...
by using scripts downloadable from :
...
Apply the scripts to compile FreeBSD sources .
(H)
If compilation fails , prepare a message containing the following
information
...
and send it to the following address :
...
( A sample message text may be downloaded from
....
)
Start from step ( ... ) .
(I)
After a successfull compilation , create a bootable CD or DVD or USB disk or
USB stick :
http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/creating-cds.html
Apply the following steps to create a bootable FreeBSD CD :
OR
http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/creating-dvds.html
Apply the following steps to create a bootable FreeBSD DVD :
OR
If the testing computer can boot from a USB port
( This can be checked from BIOS and set from BIOS if BIOS allows booting
from USB ) :
http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/usb-disks.html
Apply the following steps to create a bootable FreeBSD USB disk or stick :
(J)
On another computer , try to install the newly created FreeBSD operating
system .
If FreeBSD could not be booted successfully , prepare a message containing
the following information :
...
and send that message to the following address :
...
( A sample message text may be downloaded from
....
)
If FreeBSD could be booted and installed successfully ,
prepare a message having the following information
...
and attach dmesg file
...
to the message
and sent it to the following address
...
( A sample message text may be downloaded from
....
)
(K)
Execute the following programs in succession to test their workability :
.
.
.
(i)
Program name : ...
On successful completion ,send the message created from template
downloadable from ...
to the following address specified in template :
...
On failure of execution ,send the message created from template
downloadable from ...
by attaching the following information ( or files )
...
to the following address specified in template :
...
( End of the algorithm . )
More information about the freebsd-current
mailing list