Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 20 Apr 2010 20:44:47 -0400
From:      Mehmet Erol Sanliturk <m.e.sanliturk@gmail.com>
To:        Roman Divacky <rdivacky@freebsd.org>
Cc:        current@freebsd.org
Subject:   Re: [CFT]: ClangBSD is selfhosting, we need testers now
Message-ID:  <u2la333b2be1004201744x77f2c444nae7dfe1b454221df@mail.gmail.com>
In-Reply-To: <20100416160818.GA69460@freebsd.org>
References:  <20100416160818.GA69460@freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Fri, Apr 16, 2010 at 12:08 PM, Roman Divacky <rdivacky@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 . )



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?u2la333b2be1004201744x77f2c444nae7dfe1b454221df>