Also missing "|| die" for emake statements. >>> Unpacking keyutils-1.1.tar.bz2 to /var/tmp/portage/sys-apps/keyutils-1.1/work >>> Source unpacked. >>> Compiling source in /var/tmp/portage/sys-apps/keyutils-1.1/work/keyutils-1.1 ... cc -Wall -O3 -march=pentium-m -fomit-frame-pointer -pipe -UNO_GLIBC_KEYERR -o keyutils.o -c keyutils.c cc -Wall -O3 -march=pentium-m -fomit-frame-pointer -pipe -fPIC -o keyutils.os -c keyutils.c cc -Wall -O3 -march=pentium-m -fomit-frame-pointer -pipe -o keyctl keyctl.c -L. -lkeyutils -Wl,-rpath, cc -Wall -O3 -march=pentium-m -fomit-frame-pointer -pipe -o request-key request-key.c -L. -lkeyutils -Wl,-rpath, /usr/lib/gcc/i686-pc-linux-gnu/4.1.2/../../../../i686-pc-linux-gnu/bin/ld: cannot find -lkeyutils collect2: ld returned 1 exit status make: *** [request-key] Error 1 make: *** Waiting for unfinished jobs.... /usr/lib/gcc/i686-pc-linux-gnu/4.1.2/../../../../i686-pc-linux-gnu/bin/ld: cannot find -lkeyutils collect2: ld returned 1 exit status make: *** [keyctl] Error 1 >>> Source compiled.
New version... Solves this one as well.
Created attachment 132680 [details, diff] keyutils-1.2.ebuild.diff
Created attachment 132690 [details, diff] keyutils-1.2.ebuild.diff
Comment on attachment 132690 [details, diff] keyutils-1.2.ebuild.diff you need to do /$(get_libdir)/, not /lib/ ...
actually, nuts to that ... use the gen_usr_ldscript function ... you should never symlink across the /usr boundary like that
Created attachment 132752 [details, diff] keyutils-1.2.ebuild.diff Thanks! I did not know the gen_usr_ldscript. Is this requirement is gentoo only, or I need to work with upstream to merge this solution?
ldscripts are not a Gentoo specific thing, so there isnt anything you need to send upstream if you delete the src_compile func, then you need to tweak the Makefile in src_unpack otherwise CFLAGS get ignored ive added 1.2 to the tree
Why have you removed the ld stuff?
the package takes care of installing the ugly symlink for us
I don't understand, I tried to solve: * QA Notice: Found an absolute symlink in a library directory: * usr/lib/libkeyutils.so -> /lib/libkeyutils.so.1 * It should be a relative symlink if in the same directory * or a linker script if it crosses the /usr boundary. And current committed ebuild has this. I think that relative symbolic link is better than this one...