diff --git a/pkgs/by-name/bc/bcu/darwin-install.patch b/pkgs/by-name/bc/bcu/darwin-install.patch new file mode 100644 index 000000000000..4d0e7bd35bf6 --- /dev/null +++ b/pkgs/by-name/bc/bcu/darwin-install.patch @@ -0,0 +1,10 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 0d6b915..0a004f7 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -32,4 +32,5 @@ elseif (MACOS) + link_directories(${LIBUSB_LIBRARY_DIRS} ${LIBFTDI_LIBRARY_DIRS} ${LIBYAML_LIBRARY_DIRS}) + target_link_libraries (bcu_mac ${LIBUSB_LIBDIR}/lib${LIBUSB_LIBRARIES}.dylib ${LIBFTDI_LIBDIR}/${LIBFTDI_MODULE_NAME}.dylib ${LIBYAML_LIBDIR}/lib${LIBYAML_LIBRARIES}.dylib -lpthread -lm) + execute_process( COMMAND sh ${PROJECT_SOURCE_DIR}/create_version_h.sh ${PROJECT_SOURCE_DIR} ) ++ install(TARGETS bcu_mac DESTINATION bin) + endif () diff --git a/pkgs/by-name/bc/bcu/package.nix b/pkgs/by-name/bc/bcu/package.nix new file mode 100644 index 000000000000..5f6c6449c7cb --- /dev/null +++ b/pkgs/by-name/bc/bcu/package.nix @@ -0,0 +1,63 @@ +{ + cmake, + fetchFromGitHub, + lib, + libftdi1, + libusb1, + libyaml, + ncurses, + nix-update-script, + pkg-config, + stdenv, +}: + +stdenv.mkDerivation (finalAttrs: { + pname = "bcu"; + version = "1.1.119"; + + src = fetchFromGitHub { + owner = "nxp-imx"; + repo = "bcu"; + tag = "bcu_${finalAttrs.version}"; + hash = "sha256-GVnUkIoqHED/9c3Tr4M29DB+t6Q8OPDcxVWKNn/lU/8="; + }; + + patches = [ ./darwin-install.patch ]; + + postPatch = '' + substituteInPlace create_version_h.sh \ + --replace-fail "version=\`git describe --tags --long\`" "version=${finalAttrs.src.tag}" + ''; + + enableParallelBuilding = true; + strictDeps = true; + + nativeBuildInputs = [ + cmake + pkg-config + ]; + + buildInputs = [ + libftdi1 + libusb1 + libyaml + ncurses + ]; + + passthru.updateScript = nix-update-script { }; + + env.NIX_CFLAGS_COMPILE = "-Wno-pointer-sign -Wno-deprecated-declarations -Wno-switch"; + + preFixup = lib.optionalString stdenv.hostPlatform.isDarwin '' + ln -sf $out/bin/bcu_mac $out/bin/bcu + ''; + + meta = { + description = "NXP i.MX remote control and power measurement tools"; + homepage = "https://github.com/nxp-imx/bcu"; + license = lib.licenses.bsd3; + mainProgram = "bcu"; + maintainers = [ lib.maintainers.jmbaur ]; + platforms = lib.platforms.linux ++ lib.platforms.darwin; + }; +})