I have never built a uclibc based HLFS, but this is what I came up
with to get through the test suites without any unexpected failures on
my glibc build.

*cc1:
%(cc1_cpu) %{profile:-p} %{!-fPIE:-fno-PIE}
%{!-stack-protector:-fno-stack-protector}

*cc1plus:
%{!-fPIE:-fno-PIE} %{!-stack-protector:-fno-stack-protector}




On Mon, Jun 15, 2009 at 7:39 AM, Mwanguhya Daniel
Murungi<dmuru...@dicts.mak.ac.ug> wrote:
> I made the following change in the gcc spec file for cc1: from;
>
> *cc1:
> %(cc1_cpu) %{profile:-p} %{fno-pic|fpic|fPIC:;:-fPIC}
>
> to
>
> *cc1:
> %(cc1_cpu) %{profile:-p} %{fno-pic|fpic|fPIC:;:-fno-PIE -fno-stack-protector}

Well correct me if I am wrong (its been known to happen) but the above
line says if fno-pic and or fpic and or PIC is declared then use
-fno-PIE -fno-stack-protector. If that is indeed what it means then I
could see why you are still getting a few failures. Not all tests
necessarily pass those flags and so any tests that don't are still
lacking the -fno-PIE -fno-stack-protector flags. That is why I decided
to do %{!-fPIE:-fno-PIE} %{!-stack-protector:-fno-stack-protector}.
With this line (as I understand the specs file) we get both -fno-PIE
and -fno-stack-protector unless -PIE or -stack-protector is passed. I
figured if anything explicitly requires either of those flags it would
be best to allow it. Also it is probably better to declare -fno-PIE
and -fno-stack-protector separately so we can check for the opposite
flag for each rather than just expecting one to go along with the
other. Again I may be misunderstanding the specs file so forgive me if
that is the case, but the above amendments worked very well for my
build.

Robert Baker
-- 
http://linuxfromscratch.org/mailman/listinfo/hlfs-dev
FAQ: http://www.linuxfromscratch.org/faq/
Unsubscribe: See the above information page

Reply via email to