[SLOF] [PATCH slof] make: Define default rule for .c when V=1 or V=2
Alexey Kardashevskiy
aik at ozlabs.ru
Tue Aug 31 19:52:54 AEST 2021
On 31/08/2021 19:38, Thomas Huth wrote:
> On 31/08/2021 11.30, Alexey Kardashevskiy wrote:
>>
>>
>> On 31/08/2021 19:26, Thomas Huth wrote:
>>> On 11/03/2020 03.37, Alexey Kardashevskiy wrote:
>>>> The default .o:.c rule passes a short file name to gcc to when doing
>>>> "make -C <dir>", we do this a lot for all the libraries.
>>>> The file names printed in gcc errors are relative to <dir> and this
>>>> prevents vim from navigating through errors.
>>>>
>>>> This passes the full file name to gcc to make it print errors with
>>>> absolute path so vim can navigate through errors nicely.
>>>>
>>>> This makes it optional when V=1 or V=2 is passed.
>>>>
>>>> Signed-off-by: Alexey Kardashevskiy <aik at ozlabs.ru>
>>>> ---
>>>>
>>>> Or there is a better way of doing this?
>>>>
>>>> I find it very annoying to work with ./lib/xxxx as we chdir a lot
>>>> and gcc does not have a flag to print full file names.
>>>
>>> This patch broke the compilation of "make js2x" ... thus js2x does
>>> not compile anymore since more than a year now. Shall we fix it, or
>>> shall we maybe rather remove the js2x code from the repository?
>>
>> It does not compile for me neither way - upstream or upstream +
>> reverted "make: Define default rule for .c when V=1 or V=2". It should
>> not affect building with V=0 anyway, unless I missed something, did I?
>
> For me, js2x still compiles with some warnings if I revert the patch.
> What error do you get?
> (I'm getting some errors with version.h when running "make distclean"
> after building js2x though)
Many "multiple definition of" like this one:
[fstn1-p1 slof]$ make -j 100 js2x
******** Building js2x system ********
====== Building clients ======
====== Building common libraries ======
====== Building llfw ======
====== Building slof ======
====== Building rtas ======
ld: rtas_board.o:/home/aik/p/slof/board-js2x/include/bmc.h:27: multiple
definition of `bmc_get_blade_descr';
rtas_flash.o:/home/aik/p/slof/board-js2x/include/bmc
.h:27: first defined here
I did "make distclean".
Without revert, I am getting:
[CC] rtas_call.o
gcc: error:
/home/aik/p/slof/board-js2x/rtas//home/aik/p/slof/rtas/rtas_call.c: No
such file or directory
gcc: fatal error: no input files
which I'll try debugging. Or just remove js2x. Hm.
--
Alexey
More information about the SLOF
mailing list