lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Thu, 1 Jul 2010 22:14:18 +0200
From:	Borislav Petkov <bp@...64.org>
To:	Arnaldo Carvalho de Melo <acme@...radead.org>
Cc:	Steven Rostedt <rostedt@...dmis.org>,
	Peter Zijlstra <peterz@...radead.org>,
	Ingo Molnar <mingo@...e.hu>,
	Frederic Weisbecker <fweisbec@...il.com>,
	LKML <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH 05/21] perf: rewire generic library stuff, p1

From: Arnaldo Carvalho de Melo <acme@...radead.org>
Date: Thu, Jul 01, 2010 at 01:14:49PM -0400

> > > Needs the patch below for "make O=~/build/perf tools" to continue
> > > working. Needs some more polishing so as not to break the non O= case.
> > > 
> > > After lunch will investigate why my usual way to build the tools isn't working
> > > anymore, some missing -I probably:
> > > 
> > > [acme@...lia linux-2.6-tip]$ make O=~/git/build/perf -C tools/perf install
> > > make: Entering directory `/home/acme/git/linux-2.6-tip/tools/perf'
> > >     CC /home/acme/git/build/perf/builtin-record.o
> > > builtin-record.c:24:23: error: lk/cpumap.h: No such file or directory
> > > cc1: warnings being treated as errors
> 
> The patch below fixes it.
> 
> But we have one other problem:
> 
> [acme@...lia linux-2.6-tip]$ make O=~/git/build/perf -C tools/
> make: Entering directory `/home/acme/git/linux-2.6-tip/tools'
> make[1]: Entering directory `/home/acme/git/linux-2.6-tip/tools/lib'
> make[1]: `lklib.a' is up to date.
> make[1]: Leaving directory `/home/acme/git/linux-2.6-tip/tools/lib'
> make[1]: Entering directory `/home/acme/git/linux-2.6-tip/tools/perf'
>     GEN perf-archive
> make[1]: Leaving directory `/home/acme/git/linux-2.6-tip/tools/perf'
> make: Leaving directory `/home/acme/git/linux-2.6-tip/tools'
> [acme@...lia linux-2.6-tip]$ make O=~/git/build/perf -C tools/perf/
> make: Entering directory `/home/acme/git/linux-2.6-tip/tools/perf'
>     * new build flags or prefix
>     CC /home/acme/git/build/perf/perf.o
>     CC /home/acme/git/build/perf/builtin-annotate.o
>     CC /home/acme/git/build/perf/builtin-bench.o
> 
> The logic that detects "new build flags or prefix" gets confused when we
> alternate between tools/ and tools/perf/, checking that.

This might need an up-to-date check for the lklib.a archive first and
not do "new build flags or prefix" if it is. Yeah, this is a different
library and the logic doesn't know about it.

> - Arnaldo
> 
> diff --git a/tools/perf/Makefile b/tools/perf/Makefile
> index 200fc13..72ccd17 100644
> --- a/tools/perf/Makefile
> +++ b/tools/perf/Makefile
> @@ -268,7 +268,7 @@ endif
>  # Those must not be GNU-specific; they are shared with perl/ which may
>  # be built by a different compiler. (Note that this is an artifact now
>  # but it still might be nice to keep that distinction.)
> -BASIC_CFLAGS += -Iutil/include -Iarch/$(ARCH)/include
> +BASIC_CFLAGS += -Iutil/include -Iarch/$(ARCH)/include -I../lib/
>  BASIC_LDFLAGS =

Right, the whole scheme with the include paths is kinda shaky. I have
the -I$(CURDIR)/lib BASIC_CFLAGS in the top Makefile for the case where
we're in tools/ but this doesn't help with the -C switch as you show
above.

Maybe we should add more logic later to make the include path guessing
more robust no matter from which directory you execute make instead of
polluting BASIC_CFLAGS with duplicated path entries ... Hmmm...

-- 
Regards/Gruss,
Boris.

Advanced Micro Devices GmbH
Einsteinring 24, 85609 Dornach
General Managers: Alberto Bozzo, Andrew Bowd
Registration: Dornach, Gemeinde Aschheim, Landkreis Muenchen
Registergericht Muenchen, HRB Nr. 43632
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ