* [Buildroot] [PATCH] gcc-final: hard link TARGET-cc -> TARGET-gcc
@ 2015-11-04 7:34 Steven Noonan
2015-11-04 21:39 ` Arnout Vandecappelle
2015-11-08 14:01 ` Thomas Petazzoni
0 siblings, 2 replies; 4+ messages in thread
From: Steven Noonan @ 2015-11-04 7:34 UTC (permalink / raw)
To: buildroot
Doing a symlink results in incorrect behavior:
$ x86_64-buildroot-linux-gnux32-cc
--version
ccache: error: execv of [...]/x86_64-buildroot-linux-gnux32-cc.br_real.br_real failed: No such file or directory
$ x86_64-buildroot-linux-gnux32-gcc --version
x86_64-buildroot-linux-gnux32-gcc.br_real (Buildroot 2015.11-git-00965-g8d89653-dirty) 5.2.0
Copyright (C) 2015 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
Note the double .br_real on the invocation by toolchain-wrapper.
Signed-off-by: Steven Noonan <steven@uplinklabs.net>
---
package/gcc/gcc-final/gcc-final.mk | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/package/gcc/gcc-final/gcc-final.mk b/package/gcc/gcc-final/gcc-final.mk
index 8ac2968..7ccc533 100644
--- a/package/gcc/gcc-final/gcc-final.mk
+++ b/package/gcc/gcc-final/gcc-final.mk
@@ -91,7 +91,7 @@ HOST_GCC_FINAL_MAKE_OPTS += $(HOST_GCC_COMMON_MAKE_OPTS)
# Make sure we have 'cc'
define HOST_GCC_FINAL_CREATE_CC_SYMLINKS
if [ ! -e $(HOST_DIR)/usr/bin/$(GNU_TARGET_NAME)-cc ]; then \
- ln -snf $(GNU_TARGET_NAME)-gcc \
+ cp -l $(HOST_DIR)/usr/bin/$(GNU_TARGET_NAME)-gcc \
$(HOST_DIR)/usr/bin/$(GNU_TARGET_NAME)-cc; \
fi
endef
--
2.6.2
^ permalink raw reply related [flat|nested] 4+ messages in thread
* [Buildroot] [PATCH] gcc-final: hard link TARGET-cc -> TARGET-gcc
2015-11-04 7:34 [Buildroot] [PATCH] gcc-final: hard link TARGET-cc -> TARGET-gcc Steven Noonan
@ 2015-11-04 21:39 ` Arnout Vandecappelle
2015-11-04 23:05 ` Steven Noonan
2015-11-08 14:01 ` Thomas Petazzoni
1 sibling, 1 reply; 4+ messages in thread
From: Arnout Vandecappelle @ 2015-11-04 21:39 UTC (permalink / raw)
To: buildroot
On 04-11-15 08:34, Steven Noonan wrote:
> Doing a symlink results in incorrect behavior:
>
> $ x86_64-buildroot-linux-gnux32-cc
> --version
> ccache: error: execv of [...]/x86_64-buildroot-linux-gnux32-cc.br_real.br_real failed: No such file or directory
>
> $ x86_64-buildroot-linux-gnux32-gcc --version
> x86_64-buildroot-linux-gnux32-gcc.br_real (Buildroot 2015.11-git-00965-g8d89653-dirty) 5.2.0
> Copyright (C) 2015 Free Software Foundation, Inc.
> This is free software; see the source for copying conditions. There is NO
> warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
>
> Note the double .br_real on the invocation by toolchain-wrapper.
>
> Signed-off-by: Steven Noonan <steven@uplinklabs.net>
Acked-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
However...
> ---
> package/gcc/gcc-final/gcc-final.mk | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/package/gcc/gcc-final/gcc-final.mk b/package/gcc/gcc-final/gcc-final.mk
> index 8ac2968..7ccc533 100644
> --- a/package/gcc/gcc-final/gcc-final.mk
> +++ b/package/gcc/gcc-final/gcc-final.mk
> @@ -91,7 +91,7 @@ HOST_GCC_FINAL_MAKE_OPTS += $(HOST_GCC_COMMON_MAKE_OPTS)
> # Make sure we have 'cc'
> define HOST_GCC_FINAL_CREATE_CC_SYMLINKS
> if [ ! -e $(HOST_DIR)/usr/bin/$(GNU_TARGET_NAME)-cc ]; then \
> - ln -snf $(GNU_TARGET_NAME)-gcc \
> + cp -l $(HOST_DIR)/usr/bin/$(GNU_TARGET_NAME)-gcc \
Why not ln -f instead of cp -l?
Regards,
Arnout
> $(HOST_DIR)/usr/bin/$(GNU_TARGET_NAME)-cc; \
> fi
> endef
>
--
Arnout Vandecappelle arnout at mind be
Senior Embedded Software Architect +32-16-286500
Essensium/Mind http://www.mind.be
G.Geenslaan 9, 3001 Leuven, Belgium BE 872 984 063 RPR Leuven
LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle
GPG fingerprint: 7493 020B C7E3 8618 8DEC 222C 82EB F404 F9AC 0DDF
^ permalink raw reply [flat|nested] 4+ messages in thread
* [Buildroot] [PATCH] gcc-final: hard link TARGET-cc -> TARGET-gcc
2015-11-04 21:39 ` Arnout Vandecappelle
@ 2015-11-04 23:05 ` Steven Noonan
0 siblings, 0 replies; 4+ messages in thread
From: Steven Noonan @ 2015-11-04 23:05 UTC (permalink / raw)
To: buildroot
On Wed, Nov 4, 2015 at 1:39 PM, Arnout Vandecappelle <arnout@mind.be> wrote:
> On 04-11-15 08:34, Steven Noonan wrote:
>> Doing a symlink results in incorrect behavior:
>>
>> $ x86_64-buildroot-linux-gnux32-cc
>> --version
>> ccache: error: execv of [...]/x86_64-buildroot-linux-gnux32-cc.br_real.br_real failed: No such file or directory
>>
>> $ x86_64-buildroot-linux-gnux32-gcc --version
>> x86_64-buildroot-linux-gnux32-gcc.br_real (Buildroot 2015.11-git-00965-g8d89653-dirty) 5.2.0
>> Copyright (C) 2015 Free Software Foundation, Inc.
>> This is free software; see the source for copying conditions. There is NO
>> warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
>>
>> Note the double .br_real on the invocation by toolchain-wrapper.
>>
>> Signed-off-by: Steven Noonan <steven@uplinklabs.net>
>
> Acked-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
>
> However...
>
>> ---
>> package/gcc/gcc-final/gcc-final.mk | 2 +-
>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/package/gcc/gcc-final/gcc-final.mk b/package/gcc/gcc-final/gcc-final.mk
>> index 8ac2968..7ccc533 100644
>> --- a/package/gcc/gcc-final/gcc-final.mk
>> +++ b/package/gcc/gcc-final/gcc-final.mk
>> @@ -91,7 +91,7 @@ HOST_GCC_FINAL_MAKE_OPTS += $(HOST_GCC_COMMON_MAKE_OPTS)
>> # Make sure we have 'cc'
>> define HOST_GCC_FINAL_CREATE_CC_SYMLINKS
>> if [ ! -e $(HOST_DIR)/usr/bin/$(GNU_TARGET_NAME)-cc ]; then \
>> - ln -snf $(GNU_TARGET_NAME)-gcc \
>> + cp -l $(HOST_DIR)/usr/bin/$(GNU_TARGET_NAME)-gcc \
>
> Why not ln -f instead of cp -l?
Could do that too. It just didn't occur to me because I've always used
the 'cp' command for the job.
> Regards,
> Arnout
>
>> $(HOST_DIR)/usr/bin/$(GNU_TARGET_NAME)-cc; \
>> fi
>> endef
>>
>
>
> --
> Arnout Vandecappelle arnout at mind be
> Senior Embedded Software Architect +32-16-286500
> Essensium/Mind http://www.mind.be
> G.Geenslaan 9, 3001 Leuven, Belgium BE 872 984 063 RPR Leuven
> LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle
> GPG fingerprint: 7493 020B C7E3 8618 8DEC 222C 82EB F404 F9AC 0DDF
^ permalink raw reply [flat|nested] 4+ messages in thread
* [Buildroot] [PATCH] gcc-final: hard link TARGET-cc -> TARGET-gcc
2015-11-04 7:34 [Buildroot] [PATCH] gcc-final: hard link TARGET-cc -> TARGET-gcc Steven Noonan
2015-11-04 21:39 ` Arnout Vandecappelle
@ 2015-11-08 14:01 ` Thomas Petazzoni
1 sibling, 0 replies; 4+ messages in thread
From: Thomas Petazzoni @ 2015-11-08 14:01 UTC (permalink / raw)
To: buildroot
Dear Steven Noonan,
On Tue, 3 Nov 2015 23:34:27 -0800, Steven Noonan wrote:
> Doing a symlink results in incorrect behavior:
>
> $ x86_64-buildroot-linux-gnux32-cc
> --version
> ccache: error: execv of [...]/x86_64-buildroot-linux-gnux32-cc.br_real.br_real failed: No such file or directory
>
> $ x86_64-buildroot-linux-gnux32-gcc --version
> x86_64-buildroot-linux-gnux32-gcc.br_real (Buildroot 2015.11-git-00965-g8d89653-dirty) 5.2.0
> Copyright (C) 2015 Free Software Foundation, Inc.
> This is free software; see the source for copying conditions. There is NO
> warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
>
> Note the double .br_real on the invocation by toolchain-wrapper.
>
> Signed-off-by: Steven Noonan <steven@uplinklabs.net>
> ---
> package/gcc/gcc-final/gcc-final.mk | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
Applied after changing to use 'ln -f' instead of 'cp -l', as
suggested by Arnout. Thanks!
Thomas
--
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2015-11-08 14:01 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-11-04 7:34 [Buildroot] [PATCH] gcc-final: hard link TARGET-cc -> TARGET-gcc Steven Noonan
2015-11-04 21:39 ` Arnout Vandecappelle
2015-11-04 23:05 ` Steven Noonan
2015-11-08 14:01 ` Thomas Petazzoni
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox