Package Details: amdvlk-git v.2020.Q1.3.r2.bd57537-1

Git Clone URL: https://aur.archlinux.org/amdvlk-git.git (read-only, click to copy)
Package Base: amdvlk-git
Description: AMD's standalone Vulkan driver
Upstream URL: https://github.com/GPUOpen-Drivers
Licenses: MIT
Conflicts: vulkan-amdvlk
Provides: vulkan-amdvlk, vulkan-driver
Submitter: haagch
Maintainer: haagch (lordheavy, ssorgatem, mcoffin)
Last Packager: haagch
Votes: 22
Popularity: 0.000000
First Submitted: 2017-12-22 13:02 (UTC)
Last Updated: 2020-03-24 14:57 (UTC)

Required by (33)

Sources (0)

Latest Comments

ErikR commented on 2022-04-27 20:14 (UTC)

amdvlk-git/src/drivers/pal/shared/gpuopen/cmake/AMD.cmake should be changed to amdvlk-git/src/drivers/pal/shared/devdriver/cmake/AMD.cmake right?

TheK0tYaRa commented on 2021-02-06 10:34 (UTC) (edited on 2021-02-06 10:34 (UTC) by TheK0tYaRa)

The package has issues with replacing amdvlk so I made a light change in it and checked if the latest git release works.

# Maintainer: haagch
# Contributor: TheK0tYaRa

pkgname=amdvlk-git
pkgver=v.2021.Q1.1.r7.e77387b
pkgrel=1
pkgdesc="AMD's standalone Vulkan driver"
arch=(x86_64)
url="https://github.com/GPUOpen-Drivers"
license=('MIT')
depends=('vulkan-icd-loader')
provides=('vulkan-amdvlk' 'vulkan-driver')
conflicts=('vulkan-amdvlk' 'amdvlk')
replaces=('amdvlk')
makedepends=('xorgproto' 'xorg-server-devel' 'libxrandr' 'cmake' 'python' 'libxml2' 'wayland' 'libdrm' 'git' 'ninja' 'repo')
source=()
sha512sums=()

pkgver() {
  pushd drivers/AMDVLK > /dev/null
  AMDVLK_VER=$(printf "%s" "$(git describe --long | sed 's/\([^-]*-\)g/r\1/;s/-/./g')")
  popd > /dev/null
  if [ -z "$AMDVLK_VER" ]; then
    pushd drivers/xgl > /dev/null
    XGL_VER=$(printf "r%s.%s" "$(git rev-list --count HEAD)" "$(git rev-parse --short HEAD)")
    popd > /dev/null
  else
    XGL_VER=$AMDVLK_VER
  fi
  #PAL_VER=$(cd pal; printf "r%s.%s" "$(git rev-list --count HEAD)" "$(git rev-parse --short HEAD)")
  echo "$XGL_VER"
}

prepare() {
  cd "$srcdir"
  repo init -u 'https://github.com/GPUOpen-Drivers/AMDVLK.git' -b master
  repo sync
  # fix building with commit f609020
  # sed -i "s/<drm/<libdrm/g" pal/src/core/os/lnx/display/displayWindowSystem.h
  # pushd "$srcdir/pal"
  # patch -p1 < ../0001-pal-clang.patch
  # popd
  # pushd "$srcdir/xgl"
  # patch -p1 < ../0002-xgl-clang.patch
  # popd

  # Don't turn Werror on for people will build with more recent compilers than you have. Just don't.
  for i in drivers/pal/shared/gpuopen/cmake/AMD.cmake #drivers/llpc/llpc/CMakeLists.txt
  do
    #sed -i "s/-Werror=unused-variable//g" "$srcdir"/$i
    #sed -i "s/-Werror=unused-function//g" "$srcdir"/$i
    sed -i "s/-Werror//g" "$srcdir"/$i
  done

  msg 'No patches to apply...'
}

build() {
  # /usr/lib/amdvlk64.so: undefined symbol: _ZN3Pal5Linux19DisplayWindowSystem30DeterminePresentationSupportedEPNS0_6DeviceEPvl
  # msg "Changing flags..."
  # msg2 "before: CFLAGS=$CFLAGS"
  export CFLAGS=${CFLAGS/-fno-plt}
  # msg2 "after: CFLAGS=$CFLAGS"
  # msg2 "before: CXXFLAGS=$CXXFLAGS"
  export CXXFLAGS="${CXXFLAGS/-fno-plt}"
  # msg2 "after: CXXFLAGS=${CXXFLAGS}"
  # msg2 "before: LDFLAGS=$LDFLAGS"
  export LDFLAGS=${LDFLAGS/,-z,now}
  # msg2 "after: LDFLAGS=${LDFLAGS}"
  # export CPPFLAGS="$CXXFLAGS"

  msg "building xgl..."
  pushd drivers/xgl > /dev/null
  cmake \
    -G Ninja \
    -H. \
    -B builds/Release64 \
    -DBUILD_WAYLAND_SUPPORT=On \
    -DCMAKE_BUILD_TYPE=Release
    -DBUILD_XLIB_XRANDR_SUPPORT=On \
    || true

  cd builds/Release64
  ninja
  msg "building xgl finished!"

  msg "building spvgen"
  pushd ../../../spvgen/external > /dev/null
  python2 fetch_external_sources.py
  popd > /dev/null
  ninja spvgen
  msg "building spvgen finished!"
  popd > /dev/null

  #msg "building spvgen"
  #pushd drivers/spvgen > /dev/null
  #cmake \
  #  -G Ninja \
  #  -B builds/Release64 \
  #  -DCMAKE_BUILD_TYPE=Release \
  #  .
  #cd builds/Release64
  #ninja
  #msg "building spvgen finished!"
}

package() {
  install -m755 -d "${pkgdir}"/usr/lib
  install -m755 -d "${pkgdir}"/usr/share/licenses/amdvlk-git
  install -m755 -d "${pkgdir}"/etc/amd

  install -D -t "$pkgdir/usr/lib" drivers/xgl/builds/Release64/icd/amdvlk64.so drivers/xgl/builds/Release64/spvgen/spvgen.so
  install -D -m644 -t "${pkgdir}/usr/share/vulkan/icd.d" drivers/AMDVLK/json/Redhat/amd_icd64.json
  install -D -m644 -t "${pkgdir}/usr/share/licenses/amdvlk-git" drivers/AMDVLK/LICENSE.txt

  sed -i "s/\/lib64/\/lib/g" "${pkgdir}"/usr/share/vulkan/icd.d/amd_icd64.json
}

lucasrizzini commented on 2020-07-12 09:41 (UTC)

Weirdly, this git version is older than repo's.

Sinistar commented on 2020-05-09 23:45 (UTC) (edited on 2020-05-09 23:48 (UTC) by Sinistar)

Just for the hell of it I am posting the PKGBUILD that I use. Feel free to use any part you want.

# Maintainer: Unknown

pkgname=amdvlk-git
pkgver=v.2020.Q2.2.r0.7b51aa7
pkgrel=1
pkgdesc="AMD's standalone Vulkan driver"
arch=(x86_64)
url="https://github.com/GPUOpen-Drivers"
license=('MIT')
depends=('vulkan-icd-loader')
provides=('vulkan-amdvlk' 'vulkan-driver')
conflicts=('vulkan-amdvlk')
makedepends=('xorgproto' 'xorg-server-devel' 'libxrandr' 'cmake' 'python' 'python2' 'libxml2' 'wayland' 'libdrm' 'git' 'ninja')
source=('llvm::git+https://github.com/GPUOpen-Drivers/llvm- 
project.git#branch=amd-gfx-gpuopen-master'
'git+https://github.com/GPUOpen-Drivers/xgl.git#branch=master'
'git+https://github.com/GPUOpen-Drivers/pal.git#branch=master'
'git+https://github.com/GPUOpen-Drivers/AMDVLK.git#branch=master'
'git+https://github.com/GPUOpen-Drivers/llpc.git#branch=master'
'git+https://github.com/GPUOpen-Drivers/spvgen.git#branch=master'
'git+https://github.com/GPUOpen-Drivers/metrohash.git#branch=amd-master'
'git+https://github.com/GPUOpen-Drivers/cwpack.git#branch=amd-master'
)
sha256sums=('SKIP'
            'SKIP'
            'SKIP'
            'SKIP'
            'SKIP'
        'SKIP'
        'SKIP'
            'SKIP')

pkgver() {
  pushd AMDVLK > /dev/null
  AMDVLK_VER=$(printf "%s" "$(git describe --long | sed 's/\([^-]*-\)g/r\1/;s/-/./g')")
  popd > /dev/null
  if [ -z "$AMDVLK_VER" ]; then
    pushd xgl > /dev/null
    XGL_VER=$(printf "r%s.%s" "$(git rev-list --count HEAD)" "$(git rev-parse --short HEAD)")
    popd > /dev/null
  else
    XGL_VER=$AMDVLK_VER
  fi
  #PAL_VER=$(cd pal; printf "r%s.%s" "$(git rev-list --count HEAD)" "$(git rev-parse --short HEAD)")
  echo "$XGL_VER"
}

prepare() {
  # placed llvm-project in llvm directory as to not conflict with my llvm-project source directory
  # rename llvm directory to llvm-project in $srcdir
  mv $srcdir/llvm $srcdir/llvm-project

  #remove -Werror to build with gcc9 
  sed -i "s/-Werror//g" $srcdir/pal/shared/gpuopen/cmake/AMD.cmake

  # download spvgen
  (cd spvgen/external && python2.7 fetch_external_sources.py)

}

build() {
  export CFLAGS=${CFLAGS/-fno-plt}
  export CXXFLAGS=${CXXFLAGS/-fno-plt}
  export LDFLAGS=${LDFLAGS/,-z,now}

  cd xgl
  cmake -H. -Bbuilds/Release64 \
    -DCMAKE_BUILD_TYPE=Release \
    -DBUILD_WAYLAND_SUPPORT=On \
    -DBUILD_XLIB_XRANDR_SUPPORT=On \
    -DXGL_METROHASH_PATH=${srcdir}/metrohash \
    -DXGL_CWPACK_PATH=${srcdir}/cwpack \
    -G Ninja
  msg "Building amdvlk64..."
  ninja -C builds/Release64
  msg "Finished building amdvlk64..."
  msg "Building spvgen..."
  ninja -C builds/Release64 spvgen
  msg "Finished building spvgen..."
}

package() {
  install -m755 -d "${pkgdir}"/usr/lib
  install -m755 -d "${pkgdir}"/usr/share/vulkan/icd.d
  install -m755 -d "${pkgdir}"/usr/share/licenses/amdvlk-git
  install -m755 -d "${pkgdir}"/etc/amd

  install xgl/builds/Release64/icd/amdvlk64.so "${pkgdir}"/usr/lib/
  install xgl/builds/Release64/spvgen/spvgen.so "${pkgdir}"/usr/lib/
  install AMDVLK/json/Redhat/amd_icd64.json "${pkgdir}"/usr/share/vulkan/icd.d/
  install AMDVLK/LICENSE.txt "${pkgdir}"/usr/share/licenses/amdvlk-git/

  sed -i "s/\/lib64/\/lib/g" 
"${pkgdir}"/usr/share/vulkan/icd.d/amd_icd64.json
}

gardotd426 commented on 2020-03-24 15:38 (UTC)

@haagch that must be something to do with the PKGBUILD or if nothing else the way you're choosing to build it in the PKGBUILD, instead of building it according to the repo instructions. I just manually built it with the regular commands (cmake -H blah blah blah), and it's working for me. I just ran VK_ICD_FILENAMES=/usr/share/vulkan/icd.d/amd_icd64.json vkcubepp and got no such segfault, it launched perfectly ffine

haagch commented on 2020-03-24 15:33 (UTC)

I just updated the PKGBUILD before writing my comment. :) Every vulkan application segfaults on start because every vulkan application needs to create a VkInstance...

gardotd426 commented on 2020-03-24 15:11 (UTC)

@haagch what do you mean it builds? Like it builds without manual intervention? Because I just tested it and one of the included patches fails.

And where does it segfault? When trying to launch a game or something?

I just manually built AMDVLK according to the repo's instructions and it built fine.

haagch commented on 2020-03-24 15:06 (UTC)

Well it builds but vkCreateInstance() segfaults. This doesn't seem to be the fault of the package though.

haagch commented on 2020-03-24 15:00 (UTC)

One of the comaintainers moved the build over to using repo. The wsa repo apparently was unused anyway so I cleaned it up a little. Took relatively long because Telekom has terrible connection to AWS/Github again and apparently they don't care about negotiating for actual acceptable peering.

gardotd426 commented on 2020-03-24 14:29 (UTC) (edited on 2020-03-24 14:39 (UTC) by gardotd426)

@haagch After diving into the PKGBUILD a little more, I'm more confused than when I started, haha. So, for some reason, you're using https://github.com/GPUOpen-Drivers/wsa as the git repo, which has not been updated in two years. But later on down in the repo, you do a repo-init of the CORRECT repository, which is at https://github.com/GPUOpen-Drivers/AMDVLK. Why are you building this in such a convoluted way? Not only that, but there's yet another issue with the PKGBUILD, and that's the included patch. It doesn't work, and manual intervention is required (which I'm sure you're aware is against policy, manual intervention should never be required in a PKGBUILD). Here's the relevant output during the build:


Cloning into 'wsa'...
done.
Switched to a new branch 'makepkg'
==> Starting prepare()...
repo: Updating release signing keys to keyset ver 2.3
Downloading Repo source from https://gerrit.googlesource.com/git-repo
remote: Counting objects: 2, done
remote: Finding sources: 100% (135/135)
remote: Total 135 (delta 53), reused 135 (delta 53)
Receiving objects: 100% (135/135), 275.34 KiB | 2.75 MiB/s, done.
Resolving deltas: 100% (53/53), completed with 7 local objects.
From https://gerrit.googlesource.com/git-repo
   d38300c..cfc8111  master     -> origin/master
   0b57eed..d957ec6  stable     -> origin/stable
 * [new tag]         v2.4       -> v2.4
 * [new tag]         v2.4.1     -> v2.4.1
Downloading manifest from https://github.com/GPUOpen-Drivers/AMDVLK.git
Server does not provide clone.bundle; ignoring.

Your identity is: Matt <gardotd426@gmail.com>
If you want to change this, please re-run 'repo init' with --config-name

repo has been initialized in /tmp/makepkg/amdvlk-git/src
Server does not provide clone.bundle; ignoring.
Server does not provide clone.bundle; ignoring.
Server does not provide clone.bundle; ignoring.
Server does not provide clone.bundle; ignoring.
Server does not provide clone.bundle; ignoring.
Server does not provide clone.bundle; ignoring.
Server does not provide clone.bundle; ignoring.
Server does not provide clone.bundle; ignoring.
Fetching projects: 100% (8/8), done.
Updating files: 100% (88717/88717), done.
Checking out projects: 100% (8/8), done.
repo sync has finished successfully.
/tmp/makepkg/amdvlk-git/src/drivers/llpc /tmp/makepkg/amdvlk-git/src
can't find file to patch at input line 14
Perhaps you used the wrong -p or --strip option?
The text leading up to this was:
--------------------------
|From b37631a8216051f4c5916f48570ff4ad3c1091c4 Mon Sep 17 00:00:00 2001
|From: Matt Coffin <mcoffin13@gmail.com>
|Date: Sat, 9 Nov 2019 10:50:55 -0700
|Subject: [PATCH] build: Remove forced -Werror option
|
|---
| CMakeLists.txt | 3 ---
| 1 file changed, 3 deletions(-)
|
|diff --git a/CMakeLists.txt b/CMakeLists.txt
|index fb44edb..5ec3b72 100644
|--- a/CMakeLists.txt
|+++ b/CMakeLists.txt
--------------------------
File to patch:

And like I said, the actual source repo in the PKGBUILD, the wsa repo, is 2 years old at this point. Is there some reason it's done this way instead of just cloning the AMDVLK repo and building the actual AMDVLK driver?

haagch commented on 2020-03-24 13:14 (UTC)

2 years? I could swear just a few months back when I updated it, it was still active. Let's see.

gardotd426 commented on 2020-03-24 01:22 (UTC)

What is going on with this? Is this orphaned? Why is this being built against a git that's not been updated in 2 years? The actual AMDVLK git at https://github.com/GPUOpen-Drivers/AMDVLK is updated constantly, there are updates from a few hours ago. The branch this PKGBUILD builds against is completely dead.

farnoy commented on 2019-11-12 08:39 (UTC)

Upstream has added a new dependency on CWPack

mcoffin commented on 2019-09-05 15:50 (UTC)

Per @lod's comments, I'm working on a fix for this, but it's a large change, so I will send out a patch for the PKGBUILD via email for those interested and all maintainers/co-maintainers of this package before we land it. It will also introduce the tagged version of the *-git package naming scheme (hopefully, if I get my way :) ). Thanks for the comments @lod.

lod commented on 2019-07-29 10:58 (UTC)

Doesn't -DBUILD_XLIB_XRANDR_SUPPORT=On depend on xrandr 1.6? So it should depend on libxrandr-git.

And you only need to remove Werror from pal/shared/gpuopen/cmake/AMD.cmake

And like mentioned before, wsa is deprecated and it is integrated into Pal already.

haagch commented on 2019-06-24 11:23 (UTC)

Apologies for not updating the PKGBUILD in a while. I was hoping one of the comaintainers would do it because I've been unable to build amdvlk for a while, always got something like /usr/include/c++/9.1.0/cstdlib:75:15: fatal error: stdlib.h: No such file or directory

Now I've been getting this with vanilla llvm and decided to spend some time tracking it down, and fix it in the PKGBUILD. Now I can finally build it again.

And yes, this is set to the dev branch intentionally to get the very latest changes. Someone made an amdvlk package for the stable releases.

Sinistar commented on 2019-06-21 23:54 (UTC)

wsa in not needed, it is now built into pal.

mcoffin commented on 2019-06-14 19:37 (UTC)

I've emailed a patch to the maintainers of this repo, fixing the dependency versioning problems.

For those interested, the patch is here: https://gist.github.com/mcoffin/4f17e2a0597e3e04aba0ef805fef6c72

Hopefully, we'll see them apply it to the AUR version soon.

Chryseus commented on 2019-06-12 17:25 (UTC)

@soredake remove the prepare() function in MAKEPKG. This package is in dire need of a new maintainer it seems.

commented on 2019-06-08 08:23 (UTC)

==> Запускается prepare()...
sed: невозможно прочитать pal/src/core/os/lnx/display/displayWindowSystem.h: Нет такого файла или каталога

Please change path to pal/src/core/os/amdgpu/display/displayWindowSystem.h

VikingGe commented on 2019-05-12 09:04 (UTC)

This needs an update since the changes that broke the dev branch now also break the master branch. Just adding this to the source array fixes the build:

git+https://github.com/GPUOpen-Drivers/spvgen.git#branch=master

GI_Jack commented on 2019-05-05 23:05 (UTC)

Not only is the only PKGBUILD for AMDVLK a -git, the maintainer things that setting dev/experimental branches is a good idea.

What the ever living fuck is wrong with some people.

james58899 commented on 2019-05-01 02:35 (UTC)

Success build when change target branch to master not dev

mcoffin commented on 2019-04-30 14:59 (UTC)

I was able to get the build "working" somewhat. The failure in the cmake scripts has to do with creating a regression test target, and it at least appears to write the rest of the build scripts successfully, despite it's error-like exit status. By appending || true to the cmake line in PKGBUILD, I was able to build successfully.

I had to also change the ICD JSON install line to install -D -m644 -t "${pkgdir}/usr/share/vulkan/icd.d" AMDVLK/json/Redhat/amd_icd64.json to fix the permissions on the installed JSON file. For some reason both it and the license were marked as executable.

I think the build system troubles are likely from a cmake version mismatch, but I didn't investigate too carefully. There may be a way to either get the missing dependencies or disable the problematic target, but I gave up on a pretty solution just due to time constraints.

robus commented on 2019-04-23 09:29 (UTC)

Build fails for me:

==> Making package: amdvlk-git r43.6d9d93a-1 (Tue Apr 23 16:22:42 2019)
==> Checking runtime dependencies...
==> Checking buildtime dependencies...
==> Retrieving sources...
  -> Cloning llvm git repo...
Cloning into bare repository '/tmp/amdvlk-git/llvm'...
remote: Enumerating objects: 1, done.
remote: Counting objects: 100% (1/1), done.
remote: Total 1681381 (delta 0), reused 0 (delta 0), pack-reused 1681380
Receiving objects: 100% (1681381/1681381), 367.77 MiB | 5.84 MiB/s, done.
Resolving deltas: 100% (1380575/1380575), done.
  -> Cloning xgl git repo...
Cloning into bare repository '/tmp/amdvlk-git/xgl'...
remote: Enumerating objects: 2189, done.
remote: Counting objects: 100% (2189/2189), done.
remote: Compressing objects: 100% (1014/1014), done.
remote: Total 6412 (delta 1585), reused 1581 (delta 1140), pack-reused 4223
Receiving objects: 100% (6412/6412), 5.26 MiB | 7.29 MiB/s, done.
Resolving deltas: 100% (4341/4341), done.
  -> Cloning pal git repo...
Cloning into bare repository '/tmp/amdvlk-git/pal'...
remote: Enumerating objects: 5, done.
remote: Counting objects: 100% (5/5), done.
remote: Compressing objects: 100% (5/5), done.
remote: Total 9207 (delta 1), reused 0 (delta 0), pack-reused 9202
Receiving objects: 100% (9207/9207), 28.39 MiB | 7.13 MiB/s, done.
Resolving deltas: 100% (7205/7205), done.
  -> Cloning wsa git repo...
Cloning into bare repository '/tmp/amdvlk-git/wsa'...
remote: Enumerating objects: 69, done.
remote: Total 69 (delta 0), reused 0 (delta 0), pack-reused 69
Unpacking objects: 100% (69/69), done.
  -> Cloning AMDVLK git repo...
Cloning into bare repository '/tmp/amdvlk-git/AMDVLK'...
remote: Enumerating objects: 122, done.
remote: Counting objects: 100% (122/122), done.
remote: Compressing objects: 100% (62/62), done.
remote: Total 380 (delta 61), reused 121 (delta 60), pack-reused 258
Receiving objects: 100% (380/380), 94.81 KiB | 603.00 KiB/s, done.
Resolving deltas: 100% (195/195), done.
  -> Cloning llpc git repo...
Cloning into bare repository '/tmp/amdvlk-git/llpc'...
remote: Enumerating objects: 100, done.
remote: Counting objects: 100% (100/100), done.
remote: Compressing objects: 100% (74/74), done.
remote: Total 4342 (delta 55), reused 38 (delta 26), pack-reused 4242
Receiving objects: 100% (4342/4342), 3.70 MiB | 4.83 MiB/s, done.
Resolving deltas: 100% (3394/3394), done.
==> Validating source files with sha256sums...
    llvm ... Skipped
    xgl ... Skipped
    pal ... Skipped
    wsa ... Skipped
    AMDVLK ... Skipped
    llpc ... Skipped
==> Extracting sources...
  -> Creating working copy of llvm git repo...
Cloning into 'llvm'...
done.
Checking out files: 100% (36470/36470), done.
Switched to a new branch 'makepkg'
  -> Creating working copy of xgl git repo...
Cloning into 'xgl'...
done.
Switched to a new branch 'makepkg'
  -> Creating working copy of pal git repo...
Cloning into 'pal'...
done.
Switched to a new branch 'makepkg'
  -> Creating working copy of wsa git repo...
Cloning into 'wsa'...
done.
Switched to a new branch 'makepkg'
  -> Creating working copy of AMDVLK git repo...
Cloning into 'AMDVLK'...
done.
Switched to a new branch 'makepkg'
  -> Creating working copy of llpc git repo...
Cloning into 'llpc'...
done.
Switched to a new branch 'makepkg'
==> Starting prepare()...
==> Starting pkgver()...
==> Updated version: amdvlk-git r71.54194f5-1
==> Starting build()...
==> building xgl...
-- The C compiler identification is GNU 8.3.0
-- The CXX compiler identification is GNU 8.3.0
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Check if the system is big endian
-- Searching 16 bit integer
-- Looking for sys/types.h
-- Looking for sys/types.h - found
-- Looking for stdint.h
-- Looking for stdint.h - found
-- Looking for stddef.h
-- Looking for stddef.h - found
-- Check size of unsigned short
-- Check size of unsigned short - done
-- Using unsigned short
-- Check if the system is big endian - little endian
-- Detected ICD_PAL_CLIENT_MAJOR_VERSION is 481
-- Detected ICD_LLPC_CLIENT_MAJOR_VERSION is 24
-- Detected ICD_GPUOPEN_CLIENT_MAJOR_VERSION is 38
-- Found PkgConfig: /usr/bin/pkg-config (found version "1.6.1") 
-- Checking for module 'wayland-client'
--   Found wayland-client, version 1.17.0
-- Found PythonInterp: /usr/bin/python3 (found suitable version "3.7.3", minimum required is "3") 
-- Found Perl: /usr/bin/perl (found suitable version "5.28.2", minimum required is "5") 
-- The ASM compiler identification is GNU
-- Found assembler: /usr/bin/cc
-- Could NOT find Z3: Found unsuitable version "0.0.0", but required is at least "4.7.1" (found Z3_LIBRARIES-NOTFOUND)
-- Looking for dlfcn.h
-- Looking for dlfcn.h - found
-- Looking for errno.h
-- Looking for errno.h - found
-- Looking for fcntl.h
-- Looking for fcntl.h - found
-- Looking for link.h
-- Looking for link.h - found
-- Looking for malloc/malloc.h
-- Looking for malloc/malloc.h - not found
-- Looking for pthread.h
-- Looking for pthread.h - found
-- Looking for signal.h
-- Looking for signal.h - found
-- Looking for sys/ioctl.h
-- Looking for sys/ioctl.h - found
-- Looking for sys/mman.h
-- Looking for sys/mman.h - found
-- Looking for sys/param.h
-- Looking for sys/param.h - found
-- Looking for sys/resource.h
-- Looking for sys/resource.h - found
-- Looking for sys/stat.h
-- Looking for sys/stat.h - found
-- Looking for sys/time.h
-- Looking for sys/time.h - found
-- Looking for termios.h
-- Looking for termios.h - found
-- Looking for unistd.h
-- Looking for unistd.h - found
-- Looking for valgrind/valgrind.h
-- Looking for valgrind/valgrind.h - found
-- Looking for zlib.h
-- Looking for zlib.h - found
-- Looking for fenv.h
-- Looking for fenv.h - found
-- Looking for FE_ALL_EXCEPT
-- Looking for FE_ALL_EXCEPT - found
-- Looking for FE_INEXACT
-- Looking for FE_INEXACT - found
-- Looking for mach/mach.h
-- Looking for mach/mach.h - not found
-- Looking for histedit.h
-- Looking for histedit.h - found
-- Looking for CrashReporterClient.h
-- Looking for CrashReporterClient.h - not found
-- Looking for linux/magic.h
-- Looking for linux/magic.h - found
-- Looking for pthread_create in pthread
-- Looking for pthread_create in pthread - found
-- Looking for pthread_getspecific in pthread
-- Looking for pthread_getspecific in pthread - found
-- Looking for pthread_rwlock_init in pthread
-- Looking for pthread_rwlock_init in pthread - found
-- Looking for pthread_mutex_lock in pthread
-- Looking for pthread_mutex_lock in pthread - found
-- Looking for dlopen in dl
-- Looking for dlopen in dl - found
-- Looking for clock_gettime in rt
-- Looking for clock_gettime in rt - found
-- Looking for pfm_initialize in pfm
-- Looking for pfm_initialize in pfm - not found
-- Looking for pthread.h
-- Looking for pthread.h - found
-- Looking for pthread_create
-- Looking for pthread_create - not found
-- Looking for pthread_create in pthreads
-- Looking for pthread_create in pthreads - not found
-- Looking for pthread_create in pthread
-- Looking for pthread_create in pthread - found
-- Found Threads: TRUE  
-- Looking for el_init in edit
-- Looking for el_init in edit - found
-- Found LibXml2: /usr/lib/libxml2.so (found version "2.9.9") 
-- Looking for xar_open in xar
-- Looking for xar_open in xar - not found
-- Looking for arc4random
-- Looking for arc4random - not found
-- Looking for backtrace
-- Looking for backtrace - found
-- backtrace facility detected in default set of libraries
-- Found Backtrace: /usr/include  
-- Performing Test C_SUPPORTS_WERROR_UNGUARDED_AVAILABILITY_NEW
-- Performing Test C_SUPPORTS_WERROR_UNGUARDED_AVAILABILITY_NEW - Failed
-- Looking for _Unwind_Backtrace
-- Looking for _Unwind_Backtrace - found
-- Looking for getpagesize
-- Looking for getpagesize - found
-- Looking for sysconf
-- Looking for sysconf - found
-- Looking for getrusage
-- Looking for getrusage - found
-- Looking for setrlimit
-- Looking for setrlimit - found
-- Looking for isatty
-- Looking for isatty - found
-- Looking for futimens
-- Looking for futimens - found
-- Looking for futimes
-- Looking for futimes - found
-- Looking for posix_fallocate
-- Looking for posix_fallocate - found
-- Looking for sigaltstack
-- Looking for sigaltstack - found
-- Looking for lseek64
-- Looking for lseek64 - found
-- Looking for mallctl
-- Looking for mallctl - not found
-- Looking for mallinfo
-- Looking for mallinfo - found
-- Looking for malloc_zone_statistics
-- Looking for malloc_zone_statistics - not found
-- Looking for getrlimit
-- Looking for getrlimit - found
-- Looking for posix_spawn
-- Looking for posix_spawn - found
-- Looking for pread
-- Looking for pread - found
-- Looking for sbrk
-- Looking for sbrk - found
-- Looking for strerror
-- Looking for strerror - found
-- Looking for strerror_r
-- Looking for strerror_r - found
-- Looking for strerror_s
-- Looking for strerror_s - not found
-- Looking for setenv
-- Looking for setenv - found
-- Looking for dlopen
-- Looking for dlopen - found
-- Looking for dladdr
-- Looking for dladdr - not found
-- Performing Test HAVE_STRUCT_STAT_ST_MTIMESPEC_TV_NSEC
-- Performing Test HAVE_STRUCT_STAT_ST_MTIMESPEC_TV_NSEC - Failed
-- Performing Test HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC
-- Performing Test HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC - Success
-- Looking for __GLIBC__
-- Looking for __GLIBC__ - found
-- Looking for sched_getaffinity
-- Looking for sched_getaffinity - found
-- Looking for CPU_COUNT
-- Looking for CPU_COUNT - found
-- Looking for pthread_getname_np
-- Looking for pthread_getname_np - found
-- Looking for pthread_setname_np
-- Looking for pthread_setname_np - found
-- Performing Test HAVE_STD_IS_TRIVIALLY_COPYABLE
-- Performing Test HAVE_STD_IS_TRIVIALLY_COPYABLE - Success
-- Performing Test HAVE_CXX_ATOMICS_WITHOUT_LIB
-- Performing Test HAVE_CXX_ATOMICS_WITHOUT_LIB - Success
-- Performing Test HAVE_CXX_ATOMICS64_WITHOUT_LIB
-- Performing Test HAVE_CXX_ATOMICS64_WITHOUT_LIB - Success
-- Performing Test LLVM_HAS_ATOMICS
-- Performing Test LLVM_HAS_ATOMICS - Success
-- Performing Test SUPPORTS_VARIADIC_MACROS_FLAG
-- Performing Test SUPPORTS_VARIADIC_MACROS_FLAG - Success
-- Performing Test SUPPORTS_GNU_ZERO_VARIADIC_MACRO_ARGUMENTS_FLAG
-- Performing Test SUPPORTS_GNU_ZERO_VARIADIC_MACRO_ARGUMENTS_FLAG - Failed
-- Performing Test HAS_MAYBE_UNINITIALIZED
-- Performing Test HAS_MAYBE_UNINITIALIZED - Success
-- Native target X86 is not selected; lli will not JIT code
-- Threads enabled.
-- Doxygen disabled.
-- Go bindings disabled.
-- Could NOT find OCaml (missing: OCAMLFIND OCAML_VERSION OCAML_STDLIB_PATH) 
-- Could NOT find OCaml (missing: OCAMLFIND OCAML_VERSION OCAML_STDLIB_PATH) 
-- OCaml bindings disabled.
-- Found Python module pygments
-- Found Python module pygments.lexers.c_cpp
-- Found Python module yaml
-- LLVM host triple: x86_64-unknown-linux-gnu
-- LLVM default target triple: x86_64-unknown-linux-gnu
-- Performing Test C_SUPPORTS_FPIC
-- Performing Test C_SUPPORTS_FPIC - Success
-- Performing Test CXX_SUPPORTS_FPIC
-- Performing Test CXX_SUPPORTS_FPIC - Success
-- Building with -fPIC
-- Performing Test SUPPORTS_FVISIBILITY_INLINES_HIDDEN_FLAG
-- Performing Test SUPPORTS_FVISIBILITY_INLINES_HIDDEN_FLAG - Success
-- Performing Test C_SUPPORTS_WERROR_DATE_TIME
-- Performing Test C_SUPPORTS_WERROR_DATE_TIME - Success
-- Performing Test CXX_SUPPORTS_WERROR_DATE_TIME
-- Performing Test CXX_SUPPORTS_WERROR_DATE_TIME - Success
-- Performing Test CXX_SUPPORTS_WERROR_UNGUARDED_AVAILABILITY_NEW
-- Performing Test CXX_SUPPORTS_WERROR_UNGUARDED_AVAILABILITY_NEW - Failed
-- Performing Test CXX_SUPPORTS_CXX11
-- Performing Test CXX_SUPPORTS_CXX11 - Success
-- Performing Test CXX_SUPPORTS_MISSING_FIELD_INITIALIZERS_FLAG
-- Performing Test CXX_SUPPORTS_MISSING_FIELD_INITIALIZERS_FLAG - Success
-- Performing Test C_SUPPORTS_IMPLICIT_FALLTHROUGH_FLAG
-- Performing Test C_SUPPORTS_IMPLICIT_FALLTHROUGH_FLAG - Success
-- Performing Test CXX_SUPPORTS_IMPLICIT_FALLTHROUGH_FLAG
-- Performing Test CXX_SUPPORTS_IMPLICIT_FALLTHROUGH_FLAG - Success
-- Performing Test C_SUPPORTS_COVERED_SWITCH_DEFAULT_FLAG
-- Performing Test C_SUPPORTS_COVERED_SWITCH_DEFAULT_FLAG - Failed
-- Performing Test CXX_SUPPORTS_COVERED_SWITCH_DEFAULT_FLAG
-- Performing Test CXX_SUPPORTS_COVERED_SWITCH_DEFAULT_FLAG - Failed
-- Performing Test CXX_SUPPORTS_CLASS_MEMACCESS_FLAG
-- Performing Test CXX_SUPPORTS_CLASS_MEMACCESS_FLAG - Success
-- Performing Test CXX_SUPPORTS_NOEXCEPT_TYPE_FLAG
-- Performing Test CXX_SUPPORTS_NOEXCEPT_TYPE_FLAG - Success
-- Performing Test C_SUPPORTS_DELETE_NON_VIRTUAL_DTOR_FLAG
-- Performing Test C_SUPPORTS_DELETE_NON_VIRTUAL_DTOR_FLAG - Failed
-- Performing Test CXX_SUPPORTS_DELETE_NON_VIRTUAL_DTOR_FLAG
-- Performing Test CXX_SUPPORTS_DELETE_NON_VIRTUAL_DTOR_FLAG - Success
-- Performing Test C_WCOMMENT_ALLOWS_LINE_WRAP
-- Performing Test C_WCOMMENT_ALLOWS_LINE_WRAP - Failed
-- Performing Test C_SUPPORTS_STRING_CONVERSION_FLAG
-- Performing Test C_SUPPORTS_STRING_CONVERSION_FLAG - Failed
-- Performing Test CXX_SUPPORTS_STRING_CONVERSION_FLAG
-- Performing Test CXX_SUPPORTS_STRING_CONVERSION_FLAG - Failed
-- Performing Test C_SUPPORTS_FNO_FUNCTION_SECTIONS
-- Performing Test C_SUPPORTS_FNO_FUNCTION_SECTIONS - Success
-- Performing Test C_SUPPORTS_FFUNCTION_SECTIONS
-- Performing Test C_SUPPORTS_FFUNCTION_SECTIONS - Success
-- Performing Test CXX_SUPPORTS_FFUNCTION_SECTIONS
-- Performing Test CXX_SUPPORTS_FFUNCTION_SECTIONS - Success
-- Performing Test C_SUPPORTS_FDATA_SECTIONS
-- Performing Test C_SUPPORTS_FDATA_SECTIONS - Success
-- Performing Test CXX_SUPPORTS_FDATA_SECTIONS
-- Performing Test CXX_SUPPORTS_FDATA_SECTIONS - Success
-- Looking for os_signpost_interval_begin
-- Looking for os_signpost_interval_begin - not found
-- Found PythonInterp: /usr/bin/python3 (found version "3.7.3") 
-- Constructing LLVMBuild project information
-- Found Git: /usr/bin/git (found version "2.21.0") 
-- Linker detection: GNU ld
-- Targeting AMDGPU
-- LLVM FileCheck Found: /usr/bin/FileCheck
-- git Version: v0.0.0
-- Version: 0.0.0
-- Performing Test HAVE_CXX_FLAG_STD_CXX11
-- Performing Test HAVE_CXX_FLAG_STD_CXX11 - Success
-- Performing Test HAVE_CXX_FLAG_WALL
-- Performing Test HAVE_CXX_FLAG_WALL - Success
-- Performing Test HAVE_CXX_FLAG_WEXTRA
-- Performing Test HAVE_CXX_FLAG_WEXTRA - Success
-- Performing Test HAVE_CXX_FLAG_WSHADOW
-- Performing Test HAVE_CXX_FLAG_WSHADOW - Success
-- Performing Test HAVE_CXX_FLAG_PEDANTIC
-- Performing Test HAVE_CXX_FLAG_PEDANTIC - Success
-- Performing Test HAVE_CXX_FLAG_PEDANTIC_ERRORS
-- Performing Test HAVE_CXX_FLAG_PEDANTIC_ERRORS - Success
-- Performing Test HAVE_CXX_FLAG_WSHORTEN_64_TO_32
-- Performing Test HAVE_CXX_FLAG_WSHORTEN_64_TO_32 - Failed
-- Performing Test HAVE_CXX_FLAG_WFLOAT_EQUAL
-- Performing Test HAVE_CXX_FLAG_WFLOAT_EQUAL - Success
-- Performing Test HAVE_CXX_FLAG_FSTRICT_ALIASING
-- Performing Test HAVE_CXX_FLAG_FSTRICT_ALIASING - Success
-- Performing Test HAVE_CXX_FLAG_FNO_EXCEPTIONS
-- Performing Test HAVE_CXX_FLAG_FNO_EXCEPTIONS - Success
-- Performing Test HAVE_CXX_FLAG_WSTRICT_ALIASING
-- Performing Test HAVE_CXX_FLAG_WSTRICT_ALIASING - Success
-- Performing Test HAVE_CXX_FLAG_WD654
-- Performing Test HAVE_CXX_FLAG_WD654 - Failed
-- Performing Test HAVE_CXX_FLAG_WTHREAD_SAFETY
-- Performing Test HAVE_CXX_FLAG_WTHREAD_SAFETY - Failed
-- Performing Test HAVE_CXX_FLAG_COVERAGE
-- Performing Test HAVE_CXX_FLAG_COVERAGE - Success
-- Performing Test HAVE_GNU_POSIX_REGEX
-- Performing Test HAVE_GNU_POSIX_REGEX
-- Performing Test HAVE_GNU_POSIX_REGEX -- failed to compile
-- Performing Test HAVE_POSIX_REGEX
-- Performing Test HAVE_POSIX_REGEX
-- Performing Test HAVE_POSIX_REGEX -- success
-- Performing Test HAVE_STEADY_CLOCK
-- Performing Test HAVE_STEADY_CLOCK
-- Performing Test HAVE_STEADY_CLOCK -- success
-- Configured LLPC compiler options for GCC.
-- LLVM execuables: /tmp/amdvlk-git/src/xgl/builds/Release64/llvm/./bin
-- LLVM libraries: /tmp/amdvlk-git/src/xgl/builds/Release64/llvm/./lib
-- LLVM link options:
-- Configured LLPC_CWPACK compiler options for GCC.
CMake Deprecation Warning at /tmp/amdvlk-git/src/pal/cmake/Modules/AmdCmakeHelper.cmake:119 (message):
  target_vs_filters is deprecated.  use 'target_find_headers' and
  'target_source_groups' instead.
Call Stack (most recent call first):
  /tmp/amdvlk-git/src/llpc/CMakeLists.txt:424 (target_vs_filters)


-- Configured LLPC compiler options for GCC.
-- Configured LLPC compiler options for GCC.
-- Linker detection: GNU ld
CMake Warning at icd/CMakeLists.txt:69 (message):
  LTO enabled for XGL


-- Found XCB: /usr/include;/usr/include;/usr/include;/usr/include;/usr/include
-- Client configured PAL_INTERFACE_MAJOR_VERSION as 481
-- Found PythonInterp: /usr/bin/python3 (found suitable version "3.7.3", minimum required is "3") 
CMake Warning at /tmp/amdvlk-git/src/pal/src/CMakeLists.txt:41 (message):
  LTO enabled for Pal


-- Configured PAL compiler options for GCC.
-- Found X11: /usr/include   
-- Looking for XOpenDisplay in /usr/lib/libX11.so;/usr/lib/libXext.so
-- Looking for XOpenDisplay in /usr/lib/libX11.so;/usr/lib/libXext.so - found
-- Looking for gethostbyname
-- Looking for gethostbyname - found
-- Looking for connect
-- Looking for connect - found
-- Looking for remove
-- Looking for remove - found
-- Looking for shmat
-- Looking for shmat - found
-- Looking for IceConnectionNumber in ICE
-- Looking for IceConnectionNumber in ICE - found
-- DK_X11 not set.  Defaulting to /usr/include
-- Found XCB: /usr/include;/usr/include;/usr/include;/usr/include;/usr/include
-- DK_XCB not set.  Defaulting to /usr/include;/usr/include;/usr/include;/usr/include;/usr/include
-- Check if the system is big endian
-- Searching 16 bit integer
-- Using unsigned short
-- Check if the system is big endian - little endian
CMake Warning at /tmp/amdvlk-git/src/pal/src/core/imported/addrlib/CMakeLists.txt:163 (message):
  LTO enabled for address lib


-- Configured METROHASH compiler options for GCC.
-- Configured CWPACK compiler options for GCC.
-- Building gpuopen lib as gpuopen GPUOPEN_CLIENT_INTERFACE_MAJOR_VERSION=38
-- Check if compiler accepts -pthread
-- Check if compiler accepts -pthread - yes
-- PAL build with Wayland enabled
-- Wayland Client is detected
CMake Warning at icd/CMakeLists.txt:370 (message):
  LTO enabled for Linking


CMake Deprecation Warning at /tmp/amdvlk-git/src/pal/cmake/Modules/AmdCmakeHelper.cmake:119 (message):
  target_vs_filters is deprecated.  use 'target_find_headers' and
  'target_source_groups' instead.
Call Stack (most recent call first):
  icd/CMakeLists.txt:400 (target_vs_filters)


-- Configuring done
CMake Error at /tmp/amdvlk-git/src/xgl/builds/Release64/llvm/lib/cmake/llvm/AddLLVM.cmake:1385 (add_dependencies):
  The dependency target "FileCheck" of target "check-amdllpc" does not exist.
Call Stack (most recent call first):
  /tmp/amdvlk-git/src/xgl/builds/Release64/llvm/lib/cmake/llvm/AddLLVM.cmake:1406 (add_lit_target)
  /tmp/amdvlk-git/src/llpc/test/CMakeLists.txt:76 (add_lit_testsuite)


CMake Error at /tmp/amdvlk-git/src/xgl/builds/Release64/llvm/lib/cmake/llvm/AddLLVM.cmake:1385 (add_dependencies):
  The dependency target "count" of target "check-amdllpc" does not exist.
Call Stack (most recent call first):
  /tmp/amdvlk-git/src/xgl/builds/Release64/llvm/lib/cmake/llvm/AddLLVM.cmake:1406 (add_lit_target)
  /tmp/amdvlk-git/src/llpc/test/CMakeLists.txt:76 (add_lit_testsuite)


CMake Error at /tmp/amdvlk-git/src/xgl/builds/Release64/llvm/lib/cmake/llvm/AddLLVM.cmake:1385 (add_dependencies):
  The dependency target "not" of target "check-amdllpc" does not exist.
Call Stack (most recent call first):
  /tmp/amdvlk-git/src/xgl/builds/Release64/llvm/lib/cmake/llvm/AddLLVM.cmake:1406 (add_lit_target)
  /tmp/amdvlk-git/src/llpc/test/CMakeLists.txt:76 (add_lit_testsuite)


CMake Error at /tmp/amdvlk-git/src/xgl/builds/Release64/llvm/lib/cmake/llvm/AddLLVM.cmake:1385 (add_dependencies):
  The dependency target "spvgen" of target "check-amdllpc" does not exist.
Call Stack (most recent call first):
  /tmp/amdvlk-git/src/xgl/builds/Release64/llvm/lib/cmake/llvm/AddLLVM.cmake:1406 (add_lit_target)
  /tmp/amdvlk-git/src/llpc/test/CMakeLists.txt:76 (add_lit_testsuite)


-- Generating done
-- Build files have been written to: /tmp/amdvlk-git/src/xgl/builds/Release64
==> ERROR: A failure occurred in build().
    Aborting...

jamespharvey20 commented on 2019-03-25 08:35 (UTC)

+2 on libxrandr to makedepends. Please add. If you're building in a clean chroot (devtools), it fails without it. Using makepkg, it would only not fail if your system already has it installed.

ejrs commented on 2019-02-27 19:10 (UTC) (edited on 2019-02-27 19:10 (UTC) by ejrs)

avx definitely breaks builds when you compile using anything other than -march=generic, this is what I ended up using. the CFLAGS and CXXFLAGS variables were blank when I echoed them so I just threw it in the cmake arguments

-DCMAKE_C_FLAGS="-march=native -mtune=native -O3 -pipe -fstack-protector-strong -fno-plt -mno-avx" \

-DCMAKE_CXX_FLAGS="-march=native -mtune=native -O3 -pipe -fstack-protector-strong -fno-plt -mno-avx" \

a clean build is important. you need to remove the pkg directory otherwise it won't recompile using the new flags

Strunkenbold commented on 2018-12-02 18:22 (UTC)

Got my segfaults fixed by setting -mno-avx. Maybe some of you could test this so we can add this to the PKGBUILD if anyone can confirm.

aufkrawall commented on 2018-11-21 14:08 (UTC)

It segfaults for me also with 4.19. Unlike the now available precompiled builds by AMD.

FichteFoll commented on 2018-11-14 00:36 (UTC) (edited on 2018-11-14 20:35 (UTC) by FichteFoll)

+1 on libxrandr

Also getting segfaults for every vkCreateInstance call here and have for months. Going to investigate with upstream. Update: segfault fixed with 4.19 kernel.

Arvedui commented on 2018-11-04 10:04 (UTC)

Please add libxrandr to makedepends, it does not build without it.

aufkrawall commented on 2018-10-25 12:20 (UTC)

Nope, still everything segfaults.

steamport commented on 2018-09-15 21:38 (UTC)

Is this working now?

scurrvy2020 commented on 2018-08-19 15:26 (UTC)

It builds fine, but I get a segmentation fault when I try vulkaninfo with the amdvlk driver.

farnoy commented on 2018-08-14 22:30 (UTC)

The MaxNumCmdStreamsPerSubmit,4 setting can be removed as Arch is shipping a recent-enough libdrm.

haagch commented on 2018-07-12 21:36 (UTC)

Compiling works, but running does not

ERROR: [Loader Message] Code 0 : /usr/lib/amdvlk64.so: undefined symbol: _ZN3Pal5Linux19DisplayWindowSystem30DeterminePresentationSupportedEPNS0_6DeviceEPvl

Happens with self compiled package and with package from mesa-git

lordheavy commented on 2018-07-12 06:31 (UTC)

@pouar Fixed

@RemoteAdmin Can't reproduce

RemoteAdmin commented on 2018-07-10 08:00 (UTC)

Current version fails for me in a clean chroot. There are errors like:

fatal error: malloc/malloc.h: No such file or directory
 #include <malloc/malloc.h>
          ^~~~~~~~~~~~~~~~~
compilation terminated
fatal error: valgrind/valgrind.h: No such file or directory
 #include <valgrind/valgrind.h>
          ^~~~~~~~~~~~~~~~~~~~~
compilation terminated

...

pouar commented on 2018-07-06 02:03 (UTC)

I think this repo also now needs to be added to $source in order to build this https://github.com/GPUOpen-Drivers/llpc.git

Themaister commented on 2018-03-31 14:09 (UTC)

Wayland and WSA support should be added: https://github.com/GPUOpen-Drivers/pal/issues/8

lordheavy commented on 2018-03-18 06:23 (UTC)

They don't conflict.

You can force which icd file to use with an environment variable; See https://github.com/KhronosGroup/Vulkan-LoaderAndValidationLayers/blob/master/loader/LoaderAndLayerInterface.md#table-of-debug-environment-variables

nesk_aur commented on 2018-03-18 06:00 (UTC)

Shouldn't this conflict with vulkan-radeon?

ssorgatem commented on 2018-03-07 17:26 (UTC)

Yes, I just noticed that. The Redhat one works, though. I'll update with it.

haagch commented on 2018-03-07 16:38 (UTC)

Sure, I added you.

The Ubuntu ICD file has

"library_path": "/usr/lib/x86_64-linux-gnu/amdvlk64.so",

that will probably not work on arch.

ssorgatem commented on 2018-03-07 15:17 (UTC)

Hey, I did some fixes, cleaned up some no longer needed files and set the PKGBUILD to use the upstream (updated) ICD. Here's a patch for the PKGBUILD: https://pastebin.com/bbtVJaA0

PS: I'm open to becoming a co-maintainer if you want yo.

ssorgatem commented on 2018-03-02 17:11 (UTC)

Shouldn't the JSON icd file be more like this? https://github.com/GPUOpen-Drivers/AMDVLK/blob/master/json/Ubuntu/amd_icd64.json

I mean, with the "api_version" line at least.

haagch commented on 2018-02-07 14:39 (UTC)

Almost forgot this. So they took the patch 0001-remove-linking-with-whole-archive-v2.patch from this AUR package and applied it upstream: https://github.com/GPUOpen-Drivers/xgl/commit/9cbbd7f87fa7d6d2775c60a3ab4209ef5a9720bf

TIL that it's only a problem on gcc 7+.

Anyway, commenting out applying this patch is all that's needed to get it to build.

I pushed an update without removing the patch file for now because the commit links to that file with no specific git revision and maybe we shouldn't just break the link.

winneon commented on 2018-02-07 14:29 (UTC)

The build still fails with the patch fail that @RemoteAdmin posted a day ago.

RemoteAdmin commented on 2018-02-06 03:52 (UTC)

Once again there is a patch reject

patching file icd/CMakeLists.txt
Reversed (or previously applied) patch detected!  Skipping patch.
1 out of 1 hunk ignored -- saving rejects to file icd/CMakeLists.txt.rej
==> ERROR: A failure occurred in prepare().
    Aborting...

davidmao commented on 2017-12-29 01:58 (UTC)

The patch failure should be caused by another drop pushed in 12/28. https://github.com/GPUOpen-Drivers/AMDVLK/wiki/Release-notes

lordheavy commented on 2017-12-28 13:05 (UTC)

@xDShot

Fixed

xDShot commented on 2017-12-28 08:54 (UTC) (edited on 2017-12-28 08:54 (UTC) by xDShot)

prepare()...<br> patching file icd/api/llpc/util/llpcDebug.cpp<br> Hunk #1 FAILED at 113.<br> 1 out of 1 hunk FAILED -- saving rejects to file icd/api/llpc/util/llpcDebug.cpp.rej

laichiaheng commented on 2017-12-27 13:26 (UTC)

This should be in Arch's official repository

lordheavy commented on 2017-12-23 18:07 (UTC)

@Strunkenbold

Fixed

Strunkenbold commented on 2017-12-23 14:28 (UTC)

Looks like you forgot something in prepare... ==> Beginne prepare()... fatal: Konnte '../0001-workaround-remove-invalid-constexpr-modifier.patch' nicht zum Lesen öffnen.: Datei oder Verzeichnis nicht gefunden

Frohes Fest!

haagch commented on 2017-12-23 13:06 (UTC)

@Linkoh Yea, there's some weirdness how they are linking. For some reason it pulls in all symbols from PAL twice and then every single symbol conflicts with itself.

I got it working with the included patch 0001-remove-linking-with-whole-archive.patch which removes lines like target_link_libraries(xgl PRIVATE -Wl,--whole-archive ${PROJECT_BINARY_DIR}/pal/src/libpal.a -Wl,--no-whole-archive)

I have no idea what this is supposed to be doing, but removing those lines makes it compile and work for me.

Linkoh commented on 2017-12-23 11:41 (UTC)

https://pastebin.com/mF9VCfEB I tried installing it but that's what I got while building. Not sure about what to do.

haagch commented on 2017-12-22 22:09 (UTC)

Hmm I did not get notifications for those comments.

Anyway, it's just crudely hacked together at the moment, the patches will surely become unnecessary soon. I haven't yet tested what dependencies it needs, so just try it and you'll see...

It did work without the settings file, but I added it anyway.

libcg commented on 2017-12-22 21:48 (UTC)

https://github.com/GPUOpen-Drivers/AMDVLK/blob/master/README.md#required-settings

/etc/amd/amdPalSettings.cfg needs to contain the line MaxNumCmdStreamsPerSubmit,4 to get the driver working with upstream AMDGPU stack. I can't test right now.

gcarq commented on 2017-12-22 20:57 (UTC) (edited on 2017-12-22 20:58 (UTC) by gcarq)

Thanks for maintaining this. Please add dri2proto as dependency