From 67b412f2b01516aaa859e3af601446c34da51d06 Mon Sep 17 00:00:00 2001 From: David Elsing Date: Sat, 23 Mar 2024 22:04:48 +0000 Subject: gnu: Add miniz-for-pytorch. * gnu/packages/compression.scm (miniz-for-pytorch): New variable. * gnu/packages/patches/miniz-for-pytorch.patch: New file. * gnu/local.mk (dist_patch_DATA): Register it. --- gnu/packages/compression.scm | 21 +++++++++++++ gnu/packages/patches/miniz-for-pytorch.patch | 47 ++++++++++++++++++++++++++++ 2 files changed, 68 insertions(+) create mode 100644 gnu/packages/patches/miniz-for-pytorch.patch (limited to 'gnu/packages') diff --git a/gnu/packages/compression.scm b/gnu/packages/compression.scm index fa47006f83..ac025e0e3d 100644 --- a/gnu/packages/compression.scm +++ b/gnu/packages/compression.scm @@ -2968,3 +2968,24 @@ the zlib (RFC 1950) and Deflate (RFC 1951) compressed data format specification standards. It supports the most commonly used functions exported by the zlib library.") (license license:expat))) + +(define-public miniz-for-pytorch + (package + (inherit miniz) + (version "pytorch-2.2.0") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/richgel999/miniz") + (commit "2.2.0"))) + (file-name (git-file-name (package-name miniz) version)) + (sha256 + (base32 + "09j9ihigfsavgcmk8l36zmbjvdf1x1w7h2v4rkww1qk1sb43y5zf")) + (patches (search-patches "miniz-for-pytorch.patch")))) + (arguments + (substitute-keyword-arguments (package-arguments miniz) + ((#:configure-flags flags '()) + ;; The changes break the examples. + `(cons "-DBUILD_EXAMPLES=OFF" ,flags)))) + (properties '((hidden? . #t))))) diff --git a/gnu/packages/patches/miniz-for-pytorch.patch b/gnu/packages/patches/miniz-for-pytorch.patch new file mode 100644 index 0000000000..19fa705a31 --- /dev/null +++ b/gnu/packages/patches/miniz-for-pytorch.patch @@ -0,0 +1,47 @@ +Modifications from the internal fork of the python-pytorch package. + +diff --git a/miniz.h b/miniz.h +index 42e1ea2..5869ab9 100644 +--- a/miniz.h ++++ b/miniz.h +@@ -123,7 +123,7 @@ + /* If MINIZ_NO_TIME is specified then the ZIP archive functions will not be able to get the current time, or */ + /* get/set file times, and the C run-time funcs that get/set times won't be called. */ + /* The current downside is the times written to your archives will be from 1979. */ +-/*#define MINIZ_NO_TIME */ ++#define MINIZ_NO_TIME + + /* Define MINIZ_NO_ARCHIVE_APIS to disable all ZIP archive API's. */ + /*#define MINIZ_NO_ARCHIVE_APIS */ +@@ -135,7 +135,7 @@ + /*#define MINIZ_NO_ZLIB_APIS */ + + /* Define MINIZ_NO_ZLIB_COMPATIBLE_NAME to disable zlib names, to prevent conflicts against stock zlib. */ +-/*#define MINIZ_NO_ZLIB_COMPATIBLE_NAMES */ ++#define MINIZ_NO_ZLIB_COMPATIBLE_NAMES + + /* Define MINIZ_NO_MALLOC to disable all calls to malloc, free, and realloc. + Note if MINIZ_NO_MALLOC is defined then the user must always provide custom user alloc/free/realloc +@@ -172,8 +172,7 @@ + #if !defined(MINIZ_USE_UNALIGNED_LOADS_AND_STORES) + #if MINIZ_X86_OR_X64_CPU + /* Set MINIZ_USE_UNALIGNED_LOADS_AND_STORES to 1 on CPU's that permit efficient integer loads and stores from unaligned addresses. */ +-#define MINIZ_USE_UNALIGNED_LOADS_AND_STORES 1 +-#define MINIZ_UNALIGNED_USE_MEMCPY ++#define MINIZ_USE_UNALIGNED_LOADS_AND_STORES 0 + #else + #define MINIZ_USE_UNALIGNED_LOADS_AND_STORES 0 + #endif +diff --git a/miniz_zip.h b/miniz_zip.h +index 82502bd..3d92255 100644 +--- a/miniz_zip.h ++++ b/miniz_zip.h +@@ -150,7 +150,7 @@ typedef enum { + MZ_ZIP_TOTAL_ERRORS + } mz_zip_error; + +-typedef struct ++typedef struct mz_zip_archive + { + mz_uint64 m_archive_size; + mz_uint64 m_central_directory_file_ofs; -- cgit v1.2.3