pkgs/mcuxpresso: attempt to fix make
This commit is contained in:
parent
209dba67ae
commit
018704ce15
3 changed files with 88 additions and 1 deletions
49
pkgs/mcuxpresso/config-tools.nix
Normal file
49
pkgs/mcuxpresso/config-tools.nix
Normal file
|
@ -0,0 +1,49 @@
|
||||||
|
{
|
||||||
|
eclipses,
|
||||||
|
stdenv,
|
||||||
|
requireFile,
|
||||||
|
...
|
||||||
|
}: let
|
||||||
|
name = "mcuxpressotools";
|
||||||
|
version = "v16-1";
|
||||||
|
description = "MCUXpresso Config Tools";
|
||||||
|
filename = "mcuxpresso-config-tools-${version}_amd64.deb";
|
||||||
|
|
||||||
|
src = stdenv.mkDerivation {
|
||||||
|
inherit version description;
|
||||||
|
name = "${name}-src";
|
||||||
|
src = requireFile {
|
||||||
|
url = "https://www.nxp.com/design/software/development-software/mcuxpresso-config-tools-pins-clocks-and-peripherals:MCUXpresso-Config-Tools";
|
||||||
|
name = "${filename}.bin";
|
||||||
|
sha256 = "sha256-BbEwxm1urV2IrgUiTiMBEAPvonQGwdL4fpqFftGgRxI=";
|
||||||
|
};
|
||||||
|
|
||||||
|
buildCommand = ''
|
||||||
|
# Unpack tarball.
|
||||||
|
mkdir -p deb
|
||||||
|
sh $src --target deb || true
|
||||||
|
ar -xv deb/${filename}
|
||||||
|
tar xfvz data.tar.gz -C .
|
||||||
|
|
||||||
|
mkdir -p ./final/eclipse
|
||||||
|
mv ./opt/nxp/MCUX_CFG_v13/bin/.* final/eclipse
|
||||||
|
mv ./usr final/
|
||||||
|
mv final/eclipse/tools final/eclipse/eclipse
|
||||||
|
mv final/eclipse/tools.ini final/eclipse/eclipse.ini
|
||||||
|
|
||||||
|
# Create custom .eclipseproduct file
|
||||||
|
echo "name=${name}
|
||||||
|
id=com.nxp.${name}
|
||||||
|
version=${version}
|
||||||
|
" > final/eclipse/.eclipseproduct
|
||||||
|
|
||||||
|
# Additional files
|
||||||
|
mkdir -p final/usr/share/mime
|
||||||
|
mv ./opt/nxp/MCUX_CFG_v13/mcu_data final/mcu_data
|
||||||
|
|
||||||
|
cd ./final
|
||||||
|
tar -czf $out ./
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
in
|
||||||
|
eclipses.buildEclipse {inherit description name src;}
|
|
@ -19,6 +19,7 @@
|
||||||
ar -xv deb/${filename}
|
ar -xv deb/${filename}
|
||||||
tar xfvz data.tar.gz -C .
|
tar xfvz data.tar.gz -C .
|
||||||
mkdir -p ./final/eclipse
|
mkdir -p ./final/eclipse
|
||||||
|
find . -type f -iname "*mcuxpresso*" -o -iname "*.png" -o -iname "*.svg"
|
||||||
mv ./usr/local/${name}-${version}/ide/* ./usr/local/${name}-${version}/ide/.* final/eclipse
|
mv ./usr/local/${name}-${version}/ide/* ./usr/local/${name}-${version}/ide/.* final/eclipse
|
||||||
mv final/eclipse/mcuxpressoide final/eclipse/eclipse
|
mv final/eclipse/mcuxpressoide final/eclipse/eclipse
|
||||||
mv final/eclipse/mcuxpressoide.ini final/eclipse/eclipse.ini
|
mv final/eclipse/mcuxpressoide.ini final/eclipse/eclipse.ini
|
||||||
|
@ -41,6 +42,40 @@
|
||||||
name = "${name}-eclipse";
|
name = "${name}-eclipse";
|
||||||
inherit description src;
|
inherit description src;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
patchedMcuxpressoide = pkgs.stdenv.mkDerivation {
|
||||||
|
name = "${name}-patched";
|
||||||
|
src = mcuxpressoide;
|
||||||
|
nativeBuildInputs = [
|
||||||
|
pkgs.stdenv.cc.cc.lib
|
||||||
|
pkgs.gcc
|
||||||
|
pkgs.libgcc
|
||||||
|
pkgs.libstdcxx5
|
||||||
|
pkgs.xorg.libXext
|
||||||
|
pkgs.xorg.libX11
|
||||||
|
pkgs.xorg.libXrender
|
||||||
|
pkgs.xorg.libXtst
|
||||||
|
pkgs.xorg.libXi
|
||||||
|
pkgs.freetype
|
||||||
|
pkgs.alsa-lib
|
||||||
|
pkgs.ncurses
|
||||||
|
pkgs.ncurses5
|
||||||
|
pkgs.libusb1
|
||||||
|
pkgs.readline
|
||||||
|
pkgs.libffi
|
||||||
|
pkgs.zlib
|
||||||
|
pkgs.tcl
|
||||||
|
pkgs.libxcrypt
|
||||||
|
pkgs.libxcrypt-legacy
|
||||||
|
pkgs.libusb-compat-0_1
|
||||||
|
pkgs.autoPatchelfHook
|
||||||
|
];
|
||||||
|
|
||||||
|
installPhase = ''
|
||||||
|
mkdir -p $out
|
||||||
|
cp -r $src/* $out
|
||||||
|
'';
|
||||||
|
};
|
||||||
in
|
in
|
||||||
pkgs.stdenv.mkDerivation {
|
pkgs.stdenv.mkDerivation {
|
||||||
inherit name version description;
|
inherit name version description;
|
||||||
|
@ -59,7 +94,7 @@ in
|
||||||
installPhase = ''
|
installPhase = ''
|
||||||
runHook preInstall
|
runHook preInstall
|
||||||
mkdir -p $out/bin
|
mkdir -p $out/bin
|
||||||
ln -s ${mcuxpressoide}/bin/eclipse $out/bin/mcuxpresso
|
ln -s ${patchedMcuxpressoide}/bin/eclipse $out/bin/mcuxpresso
|
||||||
runHook postInstall
|
runHook postInstall
|
||||||
'';
|
'';
|
||||||
}
|
}
|
||||||
|
|
|
@ -5,4 +5,7 @@
|
||||||
}: {
|
}: {
|
||||||
imports = [./docker.nix ./gnupg.nix ./pipewire.nix ./kmscon.nix];
|
imports = [./docker.nix ./gnupg.nix ./pipewire.nix ./kmscon.nix];
|
||||||
services.udev.packages = [pkgs.segger-jlink inputs.self.packages.${pkgs.system}.mcuxpresso.ide];
|
services.udev.packages = [pkgs.segger-jlink inputs.self.packages.${pkgs.system}.mcuxpresso.ide];
|
||||||
|
services.udev.extraRules = ''
|
||||||
|
SUBSYSTEM=="usb", ATTR{idVendor}=="1fc9", ATTR{idProduct}=="0132", MODE="0666"
|
||||||
|
'';
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue