mirror of
https://github.com/NixOS/nixpkgs.git
synced 2024-11-18 11:40:45 +00:00
openocd-rp2040: override openocd package instead
This commit is contained in:
parent
22def17ea7
commit
75701e0b2f
|
@ -1,74 +0,0 @@
|
|||
{ lib
|
||||
, stdenv
|
||||
, fetchgit
|
||||
, pkg-config
|
||||
, hidapi
|
||||
, libftdi1
|
||||
, libusb1
|
||||
, which
|
||||
, libtool
|
||||
, autoconf
|
||||
, automake
|
||||
, texinfo
|
||||
, git
|
||||
, libgpiod_1
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
pname = "openocd-rp2040";
|
||||
version = "0.12.0";
|
||||
src = fetchgit {
|
||||
url = "https://github.com/raspberrypi/openocd";
|
||||
rev = "4d87f6dcae77d3cbcd8ac3f7dc887adf46ffa504";
|
||||
sha256 = "sha256-SYC0qqNx09yO/qeKDDN8dF/9d/dofJ5B1h/PofhG8Jw=";
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
pkg-config
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
hidapi
|
||||
libftdi1
|
||||
libusb1
|
||||
which
|
||||
libtool
|
||||
autoconf
|
||||
automake
|
||||
texinfo
|
||||
git
|
||||
]
|
||||
++
|
||||
# tracking issue for v2 api changes https://sourceforge.net/p/openocd/tickets/306/
|
||||
lib.optional stdenv.isLinux libgpiod_1;
|
||||
|
||||
configurePhase = ''
|
||||
SKIP_SUBMODULE=1 ./bootstrap
|
||||
./configure --prefix=$out
|
||||
'';
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
postInstall = lib.optionalString stdenv.isLinux ''
|
||||
mkdir -p "$out/etc/udev/rules.d"
|
||||
rules="$out/share/openocd/contrib/60-openocd.rules"
|
||||
if [ ! -f "$rules" ]; then
|
||||
echo "$rules is missing, must update the Nix file."
|
||||
exit 1
|
||||
fi
|
||||
ln -s "$rules" "$out/etc/udev/rules.d/"
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "OpenOCD fork for rp2040 microcontroller";
|
||||
longDescription = ''
|
||||
This is a fork of OpenOCD by Raspberry Pi,
|
||||
which brings support to the rp2040 microcontroller.
|
||||
'';
|
||||
homepage = "https://github.com/raspberrypi/openocd";
|
||||
license = licenses.gpl2Plus;
|
||||
maintainers = with maintainers; [ lu15w1r7h ];
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
}
|
|
@ -19708,7 +19708,21 @@ with pkgs;
|
|||
|
||||
openocd = callPackage ../development/embedded/openocd { };
|
||||
|
||||
openocd-rp2040 = callPackage ../development/embedded/openocd-rp2040 { };
|
||||
openocd-rp2040 = openocd.overrideAttrs (old: {
|
||||
pname = "openocd-rp2040";
|
||||
src = fetchFromGitHub {
|
||||
owner = "raspberrypi";
|
||||
repo = "openocd";
|
||||
rev = "4d87f6dcae77d3cbcd8ac3f7dc887adf46ffa504";
|
||||
hash = "sha256-bBqVoHsnNoaC2t8hqcduI8GGlO0VDMUovCB0HC+rxvc=";
|
||||
# openocd disables the vendored libraries that use submodules and replaces them with nix versions.
|
||||
# this works out as one of the submodule sources seems to be flakey.
|
||||
fetchSubmodules = false;
|
||||
};
|
||||
nativeBuildInputs = old.nativeBuildInputs ++ [
|
||||
autoreconfHook
|
||||
];
|
||||
});
|
||||
|
||||
oprofile = callPackage ../development/tools/profiling/oprofile {
|
||||
libiberty_static = libiberty.override { staticBuild = true; };
|
||||
|
|
Loading…
Reference in a new issue