From: Mark Rutland <mark.rutland@arm.com>
To: "Russell King (Oracle)" <linux@armlinux.org.uk>
Cc: Masahiro Yamada <masahiroy@kernel.org>,
linux-kbuild@vger.kernel.org,
linux-arm-kernel@lists.infradead.org
Subject: Re: Odd kbuild behaviour
Date: Thu, 11 Aug 2022 15:30:50 +0100 [thread overview]
Message-ID: <YvUSmt/LinmjCY+w@FVFF77S0Q05N> (raw)
In-Reply-To: <YvUQOwL6lD4/5/U6@shell.armlinux.org.uk>
On Thu, Aug 11, 2022 at 03:20:43PM +0100, Russell King (Oracle) wrote:
> Hi,
>
> Please can someone try to explain what is going on when I ask for a .S
> file to be built to an object with 5.19 and GNU make 4.3 from Debian
> Bullseye (although I don't think this is a make version issue):
>
> $ rm ../build/multi/arch/arm/lib/findbit.o
> $ make -j2 CROSS_COMPILE="arm-linux-gnueabihf-" ARCH="arm" O=../build/multi arch/arm/lib/findbit.o
> make[1]: Entering directory '/home/rmk/git/build/multi'
> GEN Makefile
> CALL /home/rmk/git/linux-rmk/scripts/atomic/check-atomics.sh
> CALL /home/rmk/git/linux-rmk/scripts/checksyscalls.sh
> make[3]: *** No rule to make target 'arch/arm/lib/findbit.o'. Stop.
> make[2]: *** [/home/rmk/git/linux-rmk/scripts/Makefile.build:441: __build] Error 2
> make[1]: *** [/home/rmk/git/linux-rmk/Makefile:1843: arch/arm] Error 2
> make[1]: *** Waiting for unfinished jobs....
> AS arch/arm/lib/findbit.o
> make[1]: Leaving directory '/home/rmk/git/build/multi'
> make: *** [Makefile:219: __sub-make] Error 2
FWIW, I think this is to do with lib-y directories rather than wheether the
object is C or assembly:
[mark@lakrids:~/src/linux]% ls arch/arm64/lib
clear_page.S copy_from_user.S copy_template.S crc32.S delay.c insn.c Makefile memcmp.S memset.S strchr.S strlen.S strnlen.S tishift.S xor-neon.c
clear_user.S copy_page.S copy_to_user.S csum.c error-inject.c kasan_sw_tags.S memchr.S memcpy.S mte.S strcmp.S strncmp.S strrchr.S uaccess_flushcache.c
[mark@lakrids:~/src/linux]% usekorg 12.1.0 make ARCH=arm64 CROSS_COMPILE=aarch64-linux- arch/arm64/lib/insn.o
CALL scripts/checksyscalls.sh
CALL scripts/atomic/check-atomics.sh
make[2]: *** No rule to make target 'arch/arm64/lib/insn.o'. Stop.
make[1]: *** [scripts/Makefile.build:441: __build] Error 2
make: *** [Makefile:1844: arch/arm64] Error 2
[mark@lakrids:~/src/linux]% usekorg 12.1.0 make ARCH=arm64 CROSS_COMPILE=aarch64-linux- arch/arm64/lib/copy_page.o
CALL scripts/checksyscalls.sh
CALL scripts/atomic/check-atomics.sh
make[2]: *** No rule to make target 'arch/arm64/lib/copy_page.o'. Stop.
make[1]: *** [scripts/Makefile.build:441: __build] Error 2
make: *** [Makefile:1844: arch/arm64] Error 2
[mark@lakrids:~/src/linux]% usekorg 12.1.0 make ARCH=arm64 CROSS_COMPILE=aarch64-linux- arch/arm64/lib
CALL scripts/checksyscalls.sh
CALL scripts/atomic/check-atomics.sh
AS arch/arm64/lib/clear_page.o
AS arch/arm64/lib/clear_user.o
AS arch/arm64/lib/copy_from_user.o
AS arch/arm64/lib/copy_page.o
AS arch/arm64/lib/copy_to_user.o
CC arch/arm64/lib/csum.o
CC arch/arm64/lib/delay.o
CC arch/arm64/lib/insn.o
AS arch/arm64/lib/memchr.o
AS arch/arm64/lib/memcmp.o
AS arch/arm64/lib/memcpy.o
AS arch/arm64/lib/memset.o
AS arch/arm64/lib/strchr.o
AS arch/arm64/lib/strcmp.o
AS arch/arm64/lib/strlen.o
AS arch/arm64/lib/strncmp.o
AS arch/arm64/lib/strnlen.o
AS arch/arm64/lib/strrchr.o
AS arch/arm64/lib/tishift.o
AR arch/arm64/lib/lib.a
AS arch/arm64/lib/crc32.o
AS arch/arm64/lib/mte.o
AR arch/arm64/lib/built-in.a
... clearly it figures how to build the directory as a whole, but can't figure
out how to build indiviual objects within that.
Thanks,
Mark
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
next prev parent reply other threads:[~2022-08-11 14:37 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-08-11 14:20 Odd kbuild behaviour Russell King (Oracle)
2022-08-11 14:30 ` Mark Rutland [this message]
2022-08-12 2:57 ` Masahiro Yamada
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=YvUSmt/LinmjCY+w@FVFF77S0Q05N \
--to=mark.rutland@arm.com \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kbuild@vger.kernel.org \
--cc=linux@armlinux.org.uk \
--cc=masahiroy@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox