Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 663818 - dev-libs/beignet-1.3.2-r1 install phase fails
Summary: dev-libs/beignet-1.3.2-r1 install phase fails
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Marek Szuba
URL:
Whiteboard:
Keywords: PATCH
Depends on:
Blocks:
 
Reported: 2018-08-16 20:49 UTC by Reinhard Biegel
Modified: 2018-08-31 13:09 UTC (History)
3 users (show)

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


Attachments
patch to fix current ebuild (beignet-1.3.2-r1-destdir.patch,484 bytes, patch)
2018-08-16 20:49 UTC, Reinhard Biegel
Details | Diff
emerge --info (emerge-info.txt,7.04 KB, text/plain)
2018-08-16 20:50 UTC, Reinhard Biegel
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Reinhard Biegel 2018-08-16 20:49:30 UTC
Created attachment 543740 [details, diff]
patch to fix current ebuild

emerging beignet fails with the following error message

--- snip ---
>>> Source compiled.
>>> Test phase [not enabled]: dev-libs/beignet-1.3.2-r1

>>> Install beignet-1.3.2-r1 into /tmp/portage/dev-libs/beignet-1.3.2-r1/image/ category dev-libs
 * abi_x86_64.amd64: running multilib-minimal_abi_src_install
>>> Working in BUILD_DIR: "/tmp/portage/dev-libs/beignet-1.3.2-r1/work/Beignet-1.3.2-Source-abi_x86_64.amd64"
make -j8 install 
[  0%] Built target gbeinterp
[ 29%] Built target beignet_bitcode
[ 29%] Built target git_sha1.h
[ 51%] Built target gbe
[ 54%] Built target gbe_bin_generater
[100%] Built target cl
Install the project...
-- Install configuration: "Release"
CMake Error at include/cmake_install.cmake:41 (file):
  file called with network path DESTINATION.  This does not make sense when
  using DESTDIR.  Specify local absolute path or remove DESTDIR environment
  variable.

  DESTINATION=

  //usr/lib64/OpenCL/vendors/beignet/include/CL
Call Stack (most recent call first):
  cmake_install.cmake:42 (include)


make: *** [Makefile:108: install] Error 1
--- snip ---

Install fails due to the double slash at the beginning of the DESTDIR. Ebuild patch attached.
Comment 1 Reinhard Biegel 2018-08-16 20:50:25 UTC
Created attachment 543742 [details]
emerge --info
Comment 2 Larry the Git Cow gentoo-dev 2018-08-31 13:08:02 UTC
The bug has been closed via the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ac97e59f85ca6a8b87ac7ebbe50b53630731402e

commit ac97e59f85ca6a8b87ac7ebbe50b53630731402e
Author:     Marek Szuba <marecki@gentoo.org>
AuthorDate: 2018-08-31 13:07:36 +0000
Commit:     Marek Szuba <marecki@gentoo.org>
CommitDate: 2018-08-31 13:07:55 +0000

    dev-libs/beignet: fix broken prefix support
    
    With VENDOR_DIR as set in the ebuild beginning with a slash,
    ${EPREFIX%/}/${VENDOR_DIR} ends up containing // regardless of the
    value of EPREFIX. On a less serious note, it isn't necessary to strip
    the trailing slash from EPREFIX because according to specifications
    there shouldn't be one; it seems the author of the patch confused it
    with e.g. ED.
    
    Closes: https://bugs.gentoo.org/663818
    Package-Manager: Portage-2.3.40, Repoman-2.3.9

 dev-libs/beignet/beignet-1.3.2-r1.ebuild | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
Comment 3 Marek Szuba archtester gentoo-dev 2018-08-31 13:09:12 UTC
The problem was caused by commit a48bd78754f68235376af0d11b25c0dade398eef, which attempted to introduce prefix support to this ebuild. It resulted in Beignet installation directory being set to ${EPREFIX%/}/${VENDOR_DIR}, which is wrong for two reasons:
 - according to specifications EPREFIX never contains a trailing slash so it is not needed to strip it. This is redundant but harmless, however
 - VENDOR_DIR as set in the ebuild does begin with a slash so regardless of what EPREFIX has been set to, one does end with a // in the installation directory, causing the observed installation error.

It would appear the prefix-support patch has not in fact been build-tested.