Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 102032 - Don't symlink db headers in /usr/include
Summary: Don't symlink db headers in /usr/include
Status: RESOLVED FIXED
Alias: None
Product: Gentoo/Alt
Classification: Unclassified
Component: Other (show other bugs)
Hardware: All FreeBSD
: High normal (vote)
Assignee: Paul de Vrieze (RETIRED)
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2005-08-10 12:05 UTC by Diego Elio Pettenò (RETIRED)
Modified: 2006-05-02 06:46 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
Eclass patch (db-eclass.patch,1.27 KB, patch)
2005-08-10 12:05 UTC, Diego Elio Pettenò (RETIRED)
Details | Diff
New db.eclass (db.eclass,3.39 KB, text/plain)
2006-05-02 05:31 UTC, Paul de Vrieze (RETIRED)
Details
db.eclass (db.eclass,3.40 KB, text/plain)
2006-05-02 06:27 UTC, Diego Elio Pettenò (RETIRED)
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Diego Elio Pettenò (RETIRED) gentoo-dev 2005-08-10 12:05:29 UTC
As db.h is already present in FreeBSD's /usr/include, it shouldn't be changed 
with the portage's version as it can be something different. 
The attached patch applied over current eclass removes the symlinking. It 
shouldn't (hopefully) break anything, but probably needs tests before getting 
in portage. 
 
Thoughts? 
 
Diego
Comment 1 Diego Elio Pettenò (RETIRED) gentoo-dev 2005-08-10 12:05:48 UTC
Created attachment 65614 [details, diff]
Eclass patch
Comment 2 Paul de Vrieze (RETIRED) gentoo-dev 2005-08-25 07:29:19 UTC
I'd prefer one that would just conditionally not apply this for freebsd.
Something like adding "if use freebsd; then".... "fi"

I'm sure this will break enough packages, although a strict db installation
would probably not provide /usr/include/db.h nor /usr/lib/db.so
Comment 3 Christoph Brill (egore) (RESIGNED) 2005-08-25 08:40:21 UTC
how about symlinking only, if the file is not present? On Linux that would
happen once (the first time the eclass is used) and on FreeBSD never. Or am I
missing something?
Comment 4 Paul de Vrieze (RETIRED) gentoo-dev 2005-08-25 11:44:53 UTC
It's only symlinking anyway. However the symlinking happens everytime that any
db package is merged or unmerged. The eclass will maintain the links that are
shared between the different versions.
Comment 5 Diego Elio Pettenò (RETIRED) gentoo-dev 2005-08-28 03:57:36 UTC
Then just do a simple little trick: if ${ROOT}/usr/include/db.h does not 
exists or is a link, proceed as is now. If instead is a true file (as it 
happens on FreeBSD), don't touch it. 
Comment 6 Diego Elio Pettenò (RETIRED) gentoo-dev 2005-10-24 21:37:14 UTC
Paul can you say something about this? It's the only main issue remaining right now...
Comment 7 Diego Elio Pettenò (RETIRED) gentoo-dev 2006-05-01 14:20:43 UTC
Ping..
Comment 8 Paul de Vrieze (RETIRED) gentoo-dev 2006-05-02 05:31:39 UTC
Created attachment 85984 [details]
New db.eclass

Could you try out the attached db.eclass? It should work. It basically checks whether the files are symlinks or nonexistent. If so the symlinks will be created. Otherwise they will be left alone.
Comment 9 Diego Elio Pettenò (RETIRED) gentoo-dev 2006-05-02 06:27:24 UTC
Created attachment 85991 [details]
db.eclass

That triggets syntax errors, this one has the same logic but it's parsed correctly, and yes it works correctly, thanks Paul :)
Comment 10 Paul de Vrieze (RETIRED) gentoo-dev 2006-05-02 06:40:22 UTC
Thanks for testing it out for me. Feel free to commit it. (If you want me to do it, just say so).
Comment 11 Diego Elio Pettenò (RETIRED) gentoo-dev 2006-05-02 06:46:36 UTC
Thanks, I've committed it.