forked from M-Labs/artiq-zynq
38 lines
932 B
Nix
38 lines
932 B
Nix
|
{ pkgs, board ? "zc706" }:
|
||
|
let
|
||
|
gnutoolchain = import ./gnutoolchain.nix { inherit pkgs; };
|
||
|
in
|
||
|
pkgs.stdenv.mkDerivation {
|
||
|
name = "${board}-fsbl";
|
||
|
src = pkgs.fetchFromGitHub {
|
||
|
owner = "Xilinx";
|
||
|
repo = "embeddedsw";
|
||
|
rev = "65c849ed46c88c67457e1fc742744f96db968ff1";
|
||
|
sha256 = "1rvl06ha40dzd6s9aa4sylmksh4xb9dqaxq462lffv1fdk342pda";
|
||
|
};
|
||
|
patches = [ ./fsbl.patch ];
|
||
|
nativeBuildInputs = [
|
||
|
pkgs.gnumake
|
||
|
gnutoolchain.binutils
|
||
|
gnutoolchain.gcc
|
||
|
];
|
||
|
patchPhase =
|
||
|
''
|
||
|
patch -p1 -i ${./fsbl.patch}
|
||
|
patchShebangs lib/sw_apps/zynq_fsbl/misc/copy_bsp.sh
|
||
|
echo 'SEARCH_DIR("${gnutoolchain.newlib}/arm-none-eabi/lib");' >> lib/sw_apps/zynq_fsbl/src/lscript.ld
|
||
|
'';
|
||
|
buildPhase =
|
||
|
''
|
||
|
cd lib/sw_apps/zynq_fsbl/src
|
||
|
make BOARD=${board} "CFLAGS=-DFSBL_DEBUG_INFO -g"
|
||
|
'';
|
||
|
installPhase =
|
||
|
''
|
||
|
mkdir $out
|
||
|
cp fsbl.elf $out
|
||
|
'';
|
||
|
doCheck = false;
|
||
|
dontFixup = true;
|
||
|
}
|