added: hexagon sdk #7

Open
doloro wants to merge 5 commits from hexagon-sdk into main
Showing only changes of commit cf667edfac - Show all commits
+51 -6
View File
@@ -1,5 +1,6 @@
{ {
lib, lib,
pkgs,
stdenvNoCC, stdenvNoCC,
stdenv, stdenv,
p7zip, p7zip,
@@ -14,24 +15,68 @@ let
url = "https://github.com/snapdragon-toolchain/hexagon-sdk/releases/download/v6.4.0.2/hexagon-sdk-v6.4.0.2-amd64-lnx.tar.xz"; url = "https://github.com/snapdragon-toolchain/hexagon-sdk/releases/download/v6.4.0.2/hexagon-sdk-v6.4.0.2-amd64-lnx.tar.xz";
sha256 = "0qadmn84sdqbqh3s837s0amdmln3akb1b01k8x5nha0lkw6a3jwc"; sha256 = "0qadmn84sdqbqh3s837s0amdmln3akb1b01k8x5nha0lkw6a3jwc";
}; };
gmp_override = pkgs.gmp.overrideAttrs (
final: prev: {
postInstall =
(prev.postInstall or "")
+ "
ls
cd $out
cd lib
ls
rm libgmp.so.10
cp libgmp.so.10.5.0 libgmp.so.10
cp libgmp.so.10.5.0 $out/libgmp.so.10
";
}
);
libs = [
pkgs.stdenv.cc.cc.lib
pkgs.libc
pkgs.libcxx
pkgs.gmp
pkgs.libz
pkgs.libgccjit
# pkgs.zlib
# pkgs.ncurses
];
# we get Nixpkgs to create the library paths for us, so we don't have to wrangle them by hand
libPath = pkgs.lib.makeLibraryPath libs;
in in
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "hexagon-sdk"; pname = "hexagon-sdk";
inherit version src; inherit version src;
dontUnpack = true; # dontUnpack = true;
dontBuild = true; # dontBuild = true;
nativeBuildInputs = [
];
buildInputs = [ pkgs.patchelf ];
runtimeDependencies = with pkgs; [ gmpxx ];
buildPhase = '' buildPhase = ''
runHook preBuild runHook preBuild
# cp $out/opt/tools/HEXAGON_Tools/19.0.04/Tools/lib/libLW.so.3 $out/opt/tools/HEXAGON_Tools/19.0.04/Tools/bin/
runHook postBuild runHook postBuild
''; '';
installPhase = '' installPhase = ''
runHook preInstall runHook preInstall
mkdir $out mkdir $out
cp -r ${src} $out/opt cp -r ${src} $out/opt
runHook postInstall runHook postInstall
chmod +w $out/opt/ipc/fastrpc/qaic/bin/qaic
chmod +w $out/opt/tools/HEXAGON_Tools/19.0.04/Tools/bin/hexagon-clang
chmod +w $out/opt/tools/HEXAGON_Tools/19.0.04/Tools/bin/hexagon-link
patchelf $out/opt/ipc/fastrpc/qaic/bin/qaic --set-interpreter ${pkgs.stdenv.cc.bintools.dynamicLinker} --set-rpath ${libPath}
patchelf $out/opt/tools/HEXAGON_Tools/19.0.04/Tools/bin/hexagon-clang --set-interpreter ${pkgs.stdenv.cc.bintools.dynamicLinker} --set-rpath ${libPath}
lib=${libPath}
lib=$lib:$out/opt/tools/HEXAGON_Tools/19.0.04/Tools/lib
echo $lib
patchelf $out/opt/tools/HEXAGON_Tools/19.0.04/Tools/bin/hexagon-link --set-interpreter ${pkgs.stdenv.cc.bintools.dynamicLinker} --set-rpath $lib
''; '';
meta = { meta = {