Re: potential future proofing fix for aicasm build.

2013-05-02 Thread Dimitry Andric
On May 1, 2013, at 18:44, Alfred Perlstein  wrote:
> I took a shot at fixing this issue with building aicasm as part of 
> "buildkernel" of an older 9.0 src on a machine running HEAD.
> 
> aicasm.o: In function `__getCurrentRuneLocale': > /usr/include/runetype.h:96: 
> undefined reference to `_ThreadRuneLocale'

I don't understand this error message... It seems like a linker error, but it 
also seems to refer to an incorrect include file?  Is this during linking or 
compiling?


> The issue seems to be two-fold:
> 
> 1) Paths are not fully set to pick up the bootstrap tools needed to build.

What do you mean, exactly?  In r230622 I explicitly set the PATH to 
${BPATH}:${PATH}, which should be enough to pick up the bootstrap tools.  This 
is exactly the same path used to build the bootstrap-tools stage itself.  The 
kernel bootstrap tools (only aicasm, really) should be built by the host 
compiler, not the cross-tools compiler.


> 2) include files use the host's instead of the build trees.
> 
> The first problem is fixed by changing setting of PATH from 
> "${BPATH}:${PATH}" to ${TMPPATH}.
> 
> The second is fixed by using -nostdinc and setting strict include paths using 
> -I directives to the compiler:
> 
> CFLAGS="-nostdinc -I${WORLDTMP}/usr/include -I. 
> -I${KERNSRCDIR}/dev/aic7xxx/aicasm"

I don't think this is correct, as aicasm should be compiled by the host 
compiler, and linked with the host libc.  So if you start including headers 
from the source directory, there will be a mismatch between what those headers 
declare, and what is available in the host libc.

___
freebsd-hackers@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
To unsubscribe, send any mail to "freebsd-hackers-unsubscr...@freebsd.org"


Re: potential future proofing fix for aicasm build.

2013-05-02 Thread Steven Hartland

I just remembered I had an issue with aicasm when compiling our kernel that 
didn't
have ahc or ahd on an 8.3 box. The fix was to manually delete the kernel obj
directory before compiling after doing a full make buildworld.

For some reason there was some cruft left in there that running make buildkernel
wasn't cleaning out, could you be suffering from a similar issue?

- Original Message - 
From: "Dimitry Andric" 

To: "Alfred Perlstein" 
Cc: 
Sent: Thursday, May 02, 2013 8:19 AM
Subject: Re: potential future proofing fix for aicasm build.



On May 1, 2013, at 18:44, Alfred Perlstein  wrote:

I took a shot at fixing this issue with building aicasm as part of 
"buildkernel" of an older 9.0 src on a machine running HEAD.

aicasm.o: In function `__getCurrentRuneLocale': > /usr/include/runetype.h:96: 
undefined reference to `_ThreadRuneLocale'


I don't understand this error message... It seems like a linker error, but it also seems to refer to an incorrect include file? 
Is this during linking or compiling?




The issue seems to be two-fold:

1) Paths are not fully set to pick up the bootstrap tools needed to build.


What do you mean, exactly?  In r230622 I explicitly set the PATH to ${BPATH}:${PATH}, which should be enough to pick up the 
bootstrap tools.  This is exactly the same path used to build the bootstrap-tools stage itself.  The kernel bootstrap tools 
(only aicasm, really) should be built by the host compiler, not the cross-tools compiler.




2) include files use the host's instead of the build trees.

The first problem is fixed by changing setting of PATH from "${BPATH}:${PATH}" 
to ${TMPPATH}.

The second is fixed by using -nostdinc and setting strict include paths using 
-I directives to the compiler:

CFLAGS="-nostdinc -I${WORLDTMP}/usr/include -I. 
-I${KERNSRCDIR}/dev/aic7xxx/aicasm"


I don't think this is correct, as aicasm should be compiled by the host compiler, and linked with the host libc.  So if you 
start including headers from the source directory, there will be a mismatch between what those headers declare, and what is 
available in the host libc.


___
freebsd-hackers@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
To unsubscribe, send any mail to "freebsd-hackers-unsubscr...@freebsd.org"





This e.mail is private and confidential between Multiplay (UK) Ltd. and the person or entity to whom it is addressed. In the event of misdirection, the recipient is prohibited from using, copying, printing or otherwise disseminating it or any information contained in it. 


In the event of misdirection, illegible or incomplete transmission please 
telephone +44 845 868 1337
or return the E.mail to postmas...@multiplay.co.uk.

___
freebsd-hackers@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
To unsubscribe, send any mail to "freebsd-hackers-unsubscr...@freebsd.org"


Re: My GSOC proposal for review

2013-05-02 Thread Amit Rawat
Hi,


Here is some data I collected
https://www.dropbox.com/sh/3ff3x34iq4cm2lu/RDFmXuO2xj.

Thanks,
Amit Rawat


On Thu, May 2, 2013 at 12:58 PM, Amit Rawat  wrote:

> Hi,
>
> I am attaching my gsoc proposal with this mail for review. If any body
> want any extra thing in it they can mail.
>
> Thanks,
> Amit Rawat
>
___
freebsd-hackers@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
To unsubscribe, send any mail to "freebsd-hackers-unsubscr...@freebsd.org"


Re: potential future proofing fix for aicasm build.

2013-05-02 Thread Dimitry Andric

On 2013-05-02 09:47, Steven Hartland wrote:

I just remembered I had an issue with aicasm when compiling our kernel that 
didn't
have ahc or ahd on an 8.3 box. The fix was to manually delete the kernel obj
directory before compiling after doing a full make buildworld.

For some reason there was some cruft left in there that running make buildkernel
wasn't cleaning out, could you be suffering from a similar issue?


Well, a way to reproduce the problem would be nice.  I tried running
"make buildkernel" in a stable/9 tree on a 10.0 machine, and building
aicasm went just fine.  So it works for me...
___
freebsd-hackers@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
To unsubscribe, send any mail to "freebsd-hackers-unsubscr...@freebsd.org"


Re: potential future proofing fix for aicasm build.

2013-05-02 Thread Steven Hartland
- Original Message - 
From: "Dimitry Andric" 




On 2013-05-02 09:47, Steven Hartland wrote:

I just remembered I had an issue with aicasm when compiling our kernel that 
didn't
have ahc or ahd on an 8.3 box. The fix was to manually delete the kernel obj
directory before compiling after doing a full make buildworld.

For some reason there was some cruft left in there that running make buildkernel
wasn't cleaning out, could you be suffering from a similar issue?


Well, a way to reproduce the problem would be nice.  I tried running
"make buildkernel" in a stable/9 tree on a 10.0 machine, and building
aicasm went just fine.  So it works for me...


I think what I did was the following:-
1. make buildkernel KERNCONF=MYCONF -j10 # failed due to aicasm
2. make buildworld -j10 # Realised I'd forgotten to build world
3. make buildkernel -j10 # still failed due to aicasm
4. rm -rf /usr/obj/usr/src/sys/MYCONF
5. make buildkernel -j10 # worked

So I think the mistake that triggered it was I didn't build world before
building kernel, however I've not tried reproducing.

   Regards
   Steve


This e.mail is private and confidential between Multiplay (UK) Ltd. and the person or entity to whom it is addressed. In the event of misdirection, the recipient is prohibited from using, copying, printing or otherwise disseminating it or any information contained in it. 


In the event of misdirection, illegible or incomplete transmission please 
telephone +44 845 868 1337
or return the E.mail to postmas...@multiplay.co.uk.

___
freebsd-hackers@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
To unsubscribe, send any mail to "freebsd-hackers-unsubscr...@freebsd.org"


Re: potential future proofing fix for aicasm build.

2013-05-02 Thread Dimitry Andric

On 2013-05-02 11:54, Steven Hartland wrote:

From: "Dimitry Andric" 

...

Well, a way to reproduce the problem would be nice.  I tried running
"make buildkernel" in a stable/9 tree on a 10.0 machine, and building
aicasm went just fine.  So it works for me...


I think what I did was the following:-
1. make buildkernel KERNCONF=MYCONF -j10 # failed due to aicasm


And this is what I cannot reproduce.  Works just fine, either with or without 
-j.

___
freebsd-hackers@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
To unsubscribe, send any mail to "freebsd-hackers-unsubscr...@freebsd.org"


Re: potential future proofing fix for aicasm build.

2013-05-02 Thread Steven Hartland
- Original Message - 
From: "Dimitry Andric" 




On 2013-05-02 11:54, Steven Hartland wrote:

From: "Dimitry Andric" 

...

Well, a way to reproduce the problem would be nice.  I tried running
"make buildkernel" in a stable/9 tree on a 10.0 machine, and building
aicasm went just fine.  So it works for me...


I think what I did was the following:-
1. make buildkernel KERNCONF=MYCONF -j10 # failed due to aicasm


And this is what I cannot reproduce.  Works just fine, either with or without 
-j.


Have just confirmed this reproduces the issue with a recent head source on 
8.3-RELEASE
machine.

1. rm -rf /usr/obj
2. make buildkernel KERNCONF=MYCONF -j10 # Fails with:-
cc1: warnings being treated as errors
aicasm_gram.c:1539: warning: no previous prototype for 'yyparse'
3. make buildworld
4. make buildkernel KERNCONF=MYCONF -j10 # Still fails with:-
cc1: warnings being treated as errors
aicasm_gram.c:1539: warning: no previous prototype for 'yyparse'

Fix is:
1. rm -rf /usr/obj/usr/src/sys/MYCONF
2. make buildkernel KERNCONF=MYCONF -j10 # Now works

   Regards
   Steve


This e.mail is private and confidential between Multiplay (UK) Ltd. and the person or entity to whom it is addressed. In the event of misdirection, the recipient is prohibited from using, copying, printing or otherwise disseminating it or any information contained in it. 


In the event of misdirection, illegible or incomplete transmission please 
telephone +44 845 868 1337
or return the E.mail to postmas...@multiplay.co.uk.

___
freebsd-hackers@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
To unsubscribe, send any mail to "freebsd-hackers-unsubscr...@freebsd.org"


Re: potential future proofing fix for aicasm build.

2013-05-02 Thread Dimitry Andric

On 2013-05-02 13:55, Steven Hartland wrote:

From: "Dimitry Andric" 

On 2013-05-02 11:54, Steven Hartland wrote:

From: "Dimitry Andric" 

...

I think what I did was the following:-
1. make buildkernel KERNCONF=MYCONF -j10 # failed due to aicasm


And this is what I cannot reproduce.  Works just fine, either with or without 
-j.


Have just confirmed this reproduces the issue with a recent head source on 
8.3-RELEASE
machine.


Note this is the other way around; the original poster was talking about
building "an older 9.0 src on a machine running HEAD".



1. rm -rf /usr/obj
2. make buildkernel KERNCONF=MYCONF -j10 # Fails with:-
cc1: warnings being treated as errors
aicasm_gram.c:1539: warning: no previous prototype for 'yyparse'


Yes, this is because r243906 removed the prototype, since newer versions
of yacc generate the prototype for yyparse themselves.

Here, lex and yacc should really be (also) built as part of the kernel's
bootstrap tools.  Currently, they are only part of the bootstrap tools
for buildworld, which explains the events below.



3. make buildworld


So here the correct versions of lex and yacc are built...



4. make buildkernel KERNCONF=MYCONF -j10 # Still fails with:-
cc1: warnings being treated as errors
aicasm_gram.c:1539: warning: no previous prototype for 'yyparse'


However, since the .c file is newer than the .y file, it does not get
regenerated...



Fix is:
1. rm -rf /usr/obj/usr/src/sys/MYCONF
2. make buildkernel KERNCONF=MYCONF -j10 # Now works


And with this, you have forced regeneration of the aicasm_gram.c file,
so now it builds correctly.

E.g., I think you might get away with just rm'ing all the generated
aicasm*.c files.
___
freebsd-hackers@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
To unsubscribe, send any mail to "freebsd-hackers-unsubscr...@freebsd.org"


Google Summer of Code 2013

2013-05-02 Thread Gavin Atkinson
Hi all,

A reminder: The deadline for applications is 19:00 UTC Friday May 3rd
(tomorrow).

FreeBSD is pleased to announce that once again we have been selected to
participate in the Google Summer of Code program.  This gives University
students the opportunity to earn a $5000 USD stipend in exchange for
working on Open Source software over their Summer break.  Students have
around 12 weeks to work on their project, and will be mentored by
existing FreeBSD committers.  Participating organisations will earn $500
USD per student mentored.  Over the past eight years we have hosted over
150 successful projects, and look forward to continuing this trend.

FreeBSD's organisation page may be found at
http://www.google-melange.com/gsoc/org/google/gsoc2013/freebsd and a
list of possible project ideas may be found at
https://wiki.freebsd.org/IdeasPage .  Please note that projects do not
have to come from the ideas list, and indeed students are encouraged to
produce their own project ideas - the majority of past projects have
been thought up by the particpants themselves.  We are encouraging
discussion of projects on the freebsd-hackers mailing list and the
#freebsd-soc IRC channel on EFNet.

Students are also encouraged to visit http://www.google-melange.com/ to
view more details of the program, including eligibility requirements,
and a list of other participating organisations.

If you have administrative questions you can contact the FreeBSD GSoC
administration team at soc-adm...@freebsd.org.

Thanks,

Gavin


signature.asc
Description: This is a digitally signed message part


Re: Google Summer of Code 2013

2013-05-02 Thread Luigi Rizzo
am i wrong or we are a bit short in terms of proposals ?

cheers
luigi


On Thu, May 2, 2013 at 3:05 PM, Gavin Atkinson  wrote:

> Hi all,
>
> A reminder: The deadline for applications is 19:00 UTC Friday May 3rd
> (tomorrow).
>
> FreeBSD is pleased to announce that once again we have been selected to
> participate in the Google Summer of Code program.  This gives University
> students the opportunity to earn a $5000 USD stipend in exchange for
> working on Open Source software over their Summer break.  Students have
> around 12 weeks to work on their project, and will be mentored by
> existing FreeBSD committers.  Participating organisations will earn $500
> USD per student mentored.  Over the past eight years we have hosted over
> 150 successful projects, and look forward to continuing this trend.
>
> FreeBSD's organisation page may be found at
> http://www.google-melange.com/gsoc/org/google/gsoc2013/freebsd and a
> list of possible project ideas may be found at
> https://wiki.freebsd.org/IdeasPage .  Please note that projects do not
> have to come from the ideas list, and indeed students are encouraged to
> produce their own project ideas - the majority of past projects have
> been thought up by the particpants themselves.  We are encouraging
> discussion of projects on the freebsd-hackers mailing list and the
> #freebsd-soc IRC channel on EFNet.
>
> Students are also encouraged to visit http://www.google-melange.com/ to
> view more details of the program, including eligibility requirements,
> and a list of other participating organisations.
>
> If you have administrative questions you can contact the FreeBSD GSoC
> administration team at soc-adm...@freebsd.org.
>
> Thanks,
>
> Gavin
>



-- 
-+---
 Prof. Luigi RIZZO, ri...@iet.unipi.it  . Dip. di Ing. dell'Informazione
 http://www.iet.unipi.it/~luigi/. Universita` di Pisa
 TEL  +39-050-2211611   . via Diotisalvi 2
 Mobile   +39-338-6809875   . 56122 PISA (Italy)
-+---
___
freebsd-hackers@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
To unsubscribe, send any mail to "freebsd-hackers-unsubscr...@freebsd.org"


Re: Google Summer of Code 2013

2013-05-02 Thread Gavin Atkinson
On Thu, 2 May 2013, Luigi Rizzo wrote:

> am i wrong or we are a bit short in terms of proposals ?

We're not doing badly at the moment (I think we are about where we were at 
this time last year), but more proposals are certainly welcome!  Many 
students seem to submit at the last moment unfortunately.

Thanks,

Gavin
___
freebsd-hackers@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
To unsubscribe, send any mail to "freebsd-hackers-unsubscr...@freebsd.org"


Re: potential future proofing fix for aicasm build.

2013-05-02 Thread Xin Li
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA512

On 05/02/13 00:19, Dimitry Andric wrote:
> On May 1, 2013, at 18:44, Alfred Perlstein 
> wrote:
>> I took a shot at fixing this issue with building aicasm as part
>> of "buildkernel" of an older 9.0 src on a machine running HEAD.
>> 
>> aicasm.o: In function `__getCurrentRuneLocale': >
>> /usr/include/runetype.h:96: undefined reference to
>> `_ThreadRuneLocale'
> 
> I don't understand this error message... It seems like a linker
> error, but it also seems to refer to an incorrect include file?  Is
> this during linking or compiling?

This is because the locale code being a macro:

#if defined(__NO_TLS) || defined(__RUNETYPE_INTERNAL)
extern const _RuneLocale *__getCurrentRuneLocale(void);
#else
extern _Thread_local const _RuneLocale *_ThreadRuneLocale;
static __inline const _RuneLocale *__getCurrentRuneLocale(void)
{

if (_ThreadRuneLocale)
return _ThreadRuneLocale;
if (_CurrentRuneLocale)
return _CurrentRuneLocale;
return &_DefaultRuneLocale;
}
#endif /* __NO_TLS || __RUNETYPE_INTERNAL */

What really puzzles me is that why the build picks up headers from the
running system.

Cheers,
- -- 
Xin LI https://www.delphij.net/
FreeBSD - The Power to Serve!   Live free or die
-BEGIN PGP SIGNATURE-

iQEcBAEBCgAGBQJRgqkDAAoJEG80Jeu8UPuzwvUH/2M+HDzKA9neXXYb6SKzrNX2
DVqw66ygatDj6QqwmMvZvU4+kGLNR6KEOQGNF4f0mMJmfg+GLzDFE5s769J/Be+1
4WMr1luWwgwrYlYhMrA8/CXYUWI2O9mhNfhLQHD8z3lJ6yxJgPy3h9J3jwzmU/W8
p58Dp8raABgKcK9DKE47QSXiiEXHuJUdSJXBPCoEFg09s+PnhrduQ1Vd9vfK9As0
G1HUmn+S/LWxRCB2wzZAC3FjZQHblXEvmfZzxCqUZr5AP3jtlHTHDUtJTCxxclgg
sGLmdvqnn6/3BBXIhcxXVka3CKzbuCyIeGCBhTsSbLnuKB+FXbid9ibSrIlFA2s=
=vdoK
-END PGP SIGNATURE-
___
freebsd-hackers@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
To unsubscribe, send any mail to "freebsd-hackers-unsubscr...@freebsd.org"


Re: potential future proofing fix for aicasm build.

2013-05-02 Thread Konstantin Belousov
On Thu, May 02, 2013 at 10:57:23AM -0700, Xin Li wrote:
> -BEGIN PGP SIGNED MESSAGE-
> Hash: SHA512
> 
> On 05/02/13 00:19, Dimitry Andric wrote:
> > On May 1, 2013, at 18:44, Alfred Perlstein 
> > wrote:
> >> I took a shot at fixing this issue with building aicasm as part
> >> of "buildkernel" of an older 9.0 src on a machine running HEAD.
> >> 
> >> aicasm.o: In function `__getCurrentRuneLocale': >
> >> /usr/include/runetype.h:96: undefined reference to
> >> `_ThreadRuneLocale'
> > 
> > I don't understand this error message... It seems like a linker
> > error, but it also seems to refer to an incorrect include file?  Is
> > this during linking or compiling?
> 
> This is because the locale code being a macro:
> 
> #if defined(__NO_TLS) || defined(__RUNETYPE_INTERNAL)
> extern const _RuneLocale *__getCurrentRuneLocale(void);
> #else
> extern _Thread_local const _RuneLocale *_ThreadRuneLocale;
> static __inline const _RuneLocale *__getCurrentRuneLocale(void)
> {
> 
> if (_ThreadRuneLocale)
> return _ThreadRuneLocale;
> if (_CurrentRuneLocale)
> return _CurrentRuneLocale;
> return &_DefaultRuneLocale;
> }
> #endif /* __NO_TLS || __RUNETYPE_INTERNAL */
> 
> What really puzzles me is that why the build picks up headers from the
> running system.

Because the utitily being build is intended to be run on the running system.


pgpuuWI9Zum8E.pgp
Description: PGP signature