* [PATCH v2] kbuild: fix ld-option function
@ 2013-04-03 14:42 Antony Pavlov
2013-04-08 9:59 ` Michal Marek
0 siblings, 1 reply; 2+ messages in thread
From: Antony Pavlov @ 2013-04-03 14:42 UTC (permalink / raw)
To: Michal Marek; +Cc: Sascha Hauer, linux-kbuild, Antony Pavlov
The kbuild's ld-option function is broken because
the command
$(CC) /dev/null -c -o "$$TMPO"
does not create object file!
I have used a relatively old mips gcc 3.4.6 cross-compiler
and a relatively new gcc 4.7.2 to check this fact
but the results are the same.
EXAMPLE:
$ rm /tmp/1.o
$ mips-linux-gcc /dev/null -c -o /tmp/1.o
mips-linux-gcc: /dev/null: linker input file unused because linking not done
$ ls -la /tmp/1.o
ls: cannot access /tmp/1.o: No such file or directory
We can easily fix the problem by adding
the '-x c' compiler option.
EXAMPLE:
$ rm /tmp/1.o
$ mips-linux-gcc -x c /dev/null -c -o /tmp/1.o
$ ls -la /tmp/1.o
-rw-r--r-- 1 antony antony 778 Apr 2 20:40 /tmp/1.o
Also fix wrong ld-option example.
Signed-off-by: Antony Pavlov <antonynpavlov@gmail.com>
---
Documentation/kbuild/makefiles.txt | 2 +-
scripts/Kbuild.include | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/Documentation/kbuild/makefiles.txt b/Documentation/kbuild/makefiles.txt
index 5198b74..5836294 100644
--- a/Documentation/kbuild/makefiles.txt
+++ b/Documentation/kbuild/makefiles.txt
@@ -593,7 +593,7 @@ more details, with real examples.
Example:
#Makefile
- LDFLAGS_vmlinux += $(call really-ld-option, -X)
+ LDFLAGS_vmlinux += $(call ld-option, -X)
=== 4 Host Program support
diff --git a/scripts/Kbuild.include b/scripts/Kbuild.include
index 978416d..547e15d 100644
--- a/scripts/Kbuild.include
+++ b/scripts/Kbuild.include
@@ -148,7 +148,7 @@ cc-ldoption = $(call try-run,\
# ld-option
# Usage: LDFLAGS += $(call ld-option, -X)
ld-option = $(call try-run,\
- $(CC) /dev/null -c -o "$$TMPO" ; $(LD) $(1) "$$TMPO" -o "$$TMP",$(1),$(2))
+ $(CC) -x c /dev/null -c -o "$$TMPO" ; $(LD) $(1) "$$TMPO" -o "$$TMP",$(1),$(2))
# ar-option
# Usage: KBUILD_ARFLAGS := $(call ar-option,D)
--
1.7.10.4
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [PATCH v2] kbuild: fix ld-option function
2013-04-03 14:42 [PATCH v2] kbuild: fix ld-option function Antony Pavlov
@ 2013-04-08 9:59 ` Michal Marek
0 siblings, 0 replies; 2+ messages in thread
From: Michal Marek @ 2013-04-08 9:59 UTC (permalink / raw)
To: Antony Pavlov; +Cc: Sascha Hauer, linux-kbuild
On 3.4.2013 16:42, Antony Pavlov wrote:
> The kbuild's ld-option function is broken because
> the command
> $(CC) /dev/null -c -o "$$TMPO"
> does not create object file!
>
> I have used a relatively old mips gcc 3.4.6 cross-compiler
> and a relatively new gcc 4.7.2 to check this fact
> but the results are the same.
>
> EXAMPLE:
> $ rm /tmp/1.o
> $ mips-linux-gcc /dev/null -c -o /tmp/1.o
> mips-linux-gcc: /dev/null: linker input file unused because linking not done
> $ ls -la /tmp/1.o
> ls: cannot access /tmp/1.o: No such file or directory
>
> We can easily fix the problem by adding
> the '-x c' compiler option.
>
> EXAMPLE:
> $ rm /tmp/1.o
> $ mips-linux-gcc -x c /dev/null -c -o /tmp/1.o
> $ ls -la /tmp/1.o
> -rw-r--r-- 1 antony antony 778 Apr 2 20:40 /tmp/1.o
>
> Also fix wrong ld-option example.
>
> Signed-off-by: Antony Pavlov <antonynpavlov@gmail.com>
> ---
> Documentation/kbuild/makefiles.txt | 2 +-
> scripts/Kbuild.include | 2 +-
> 2 files changed, 2 insertions(+), 2 deletions(-)
Applied to kbuild.git#kbuild, thanks.
Michal
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2013-04-08 9:59 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-04-03 14:42 [PATCH v2] kbuild: fix ld-option function Antony Pavlov
2013-04-08 9:59 ` Michal Marek
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).