Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 906019

Summary: app-editors/neovim-0.9.0-r1 - hardcoded usage of ccache
Product: Gentoo Linux Reporter: Bogdan <bogdan.pylypenko107>
Component: Current packagesAssignee: Brahmajit Das <brahmajit.xyz>
Status: CONFIRMED ---    
Severity: normal CC: brahmajit.xyz, fkobi, floppym, gentoo, hololeap, mattst88, proxy-maint, vim, w12101111
Priority: Normal    
Version: unspecified   
Hardware: All   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---
Attachments: emerge --info neovim
build log
Patch to disable forced ccache

Description Bogdan 2023-05-09 12:19:03 UTC
I disable usage of ccache.
app-editors/neovim-0.9.0-r1 build process use ccache forcibly.

Reproducible: Always

Actual Results:  
Build failed.
ccache: error: Failed to create temporary file for /???/ccache/7/8/215ba950u5mjkt7qsh6ja0mkpovs18sR.tmp.XXXXXX.tmp: Permission denied

Expected Results:  
Build process MUST NOT USE ccache, if ccache is switched off.
Comment 1 Bogdan 2023-05-09 12:20:58 UTC
Created attachment 861388 [details]
emerge --info neovim
Comment 2 Bogdan 2023-05-09 12:23:46 UTC
Created attachment 861389 [details]
build log
Comment 3 Brahmajit Das 2023-09-01 02:12:15 UTC
@Bogdan, can you please share how you disabled usage of ccache/what changes did you make?
Comment 4 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2023-09-01 02:20:27 UTC
(In reply to listout from comment #3)
> @Bogdan, can you please share how you disabled usage of ccache/what changes
> did you make?

FEATURES="-ccache" I think, then they saw neovim try to use it because ccache is simply installed.
Comment 5 Bogdan 2023-09-05 17:34:06 UTC
ccache-config --remove-link
FEATURES="-ccache" CCACHE_USE="NO" USE="-ccache" emerge -1 app-editors/neovim
Comment 6 Bogdan 2023-09-05 17:39:21 UTC
I do  a trick: remove ccache binary from system.
Than neovim rebuilds success.

Example:
1) mv /usr/bin/ccache /usr/bin/ccache1
2) emerge -1 neovim
3) --- success

Next Example:
1) mv /usr/bin/ccache1 /usr/bin/ccache
2) FEATURES="-ccache" USE="-ccache" emerge -1 neovim
3) --- fail
Comment 7 Matt Turner gentoo-dev 2024-05-25 01:48:24 UTC
Adding `-DCACHE_PRG=""` to `mycmakeargs` disables ccache.
Comment 8 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2024-10-15 06:39:30 UTC
ping!
Comment 9 hololeap 2024-10-15 07:01:08 UTC
Created attachment 905877 [details, diff]
Patch to disable forced ccache

I was hitting the same issue with neovim using ccache installed on the system, even if it wasn't configured to do so. This patch removes the code that makes cmake use ccache if it's installed.
Comment 10 Filip Kobierski 2024-11-06 10:07:55 UTC
I think patching out the ccache code it might be too much.
The upstream has a way to disable it:
https://github.com/neovim/neovim/blob/master/BUILD.md?plain=1#L21
Comment 11 Filip Kobierski 2024-11-06 10:09:51 UTC
Also I would change the title to "automagic ccache use".
Comment 12 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2024-11-06 10:14:01 UTC
(In reply to Filip Kobierski from comment #10)
> I think patching out the ccache code it might be too much.
> The upstream has a way to disable it:
> https://github.com/neovim/neovim/blob/master/BUILD.md?plain=1#L21

No, that variable is from ccache itself.
Comment 13 Brahmajit Das 2025-01-01 13:50:16 UTC
I'm closing this issue as neovim 0.9.0 doesn't exist in our tree anymore. But if you are able to reproduce it with newer neovim's feel free to reopen.
Comment 14 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2025-01-01 13:52:07 UTC
(In reply to Brahmajit Das from comment #13)
> I'm closing this issue as neovim 0.9.0 doesn't exist in our tree anymore.
> But if you are able to reproduce it with newer neovim's feel free to reopen.

Please don't close just because an old version is referenced. The automagic ccache use is clearly still there: https://github.com/neovim/neovim/blob/9d114b720514b0bde96dbdd9b6ef328d232a1589/cmake/Deps.cmake#L21.