Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
name = 'Bazel'
version = '7.4.1'
versionsuffix = '-Java-%(javaver)s'

homepage = 'https://bazel.io/'
description = """Bazel is a build tool that builds code quickly and reliably.
It is used to build the majority of Google's software."""

toolchain = {'name': 'GCCcore', 'version': '14.2.0'}

source_urls = ['https://github.com/bazelbuild/%(namelower)s/releases/download/%(version)s']
sources = ['%(namelower)s-%(version)s-dist.zip']
checksums = ['83386618bc489f4da36266ef2620ec64a526c686cf07041332caff7c953afaf5']

builddependencies = [
('binutils', '2.42'),
('Python', '3.13.1'),
('Zip', '3.0'),
]
dependencies = [
('Java', '21', '', SYSTEM),
]

runtest = True
testopts = "--sandbox_add_mount_pair=$TMPDIR "
testopts += "-- //examples/cpp:hello-success_test //examples/py/... //examples/py_native:test //examples/shell/..."

moduleclass = 'devel'
47 changes: 47 additions & 0 deletions easybuild/easyconfigs/z/Zip/Zip-3.0-GCCcore-14.2.0.eb
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
easyblock = 'ConfigureMake'

name = 'Zip'
version = '3.0'

homepage = 'http://www.info-zip.org/Zip.html'
description = """Zip is a compression and file packaging/archive utility.
Although highly compatible both with PKWARE's PKZIP and PKUNZIP
utilities for MS-DOS and with Info-ZIP's own UnZip, our primary objectives
have been portability and other-than-MSDOS functionality"""

toolchain = {'name': 'GCCcore', 'version': '14.2.0'}

source_urls = ['https://download.sourceforge.net/infozip']
sources = ['%(namelower)s%(version_major)s%(version_minor)s.tar.gz']
patches = ['%(name)s-%(version)s_gcc-14-compability.patch']
checksums = [
{'zip30.tar.gz': 'f0e8bb1f9b7eb0b01285495a2699df3a4b766784c1765a8f1aeedf63c0806369'},
{'Zip-3.0_gcc-14-compability.patch': '5bf576105aaaa944b514337465835f03210151e8d5fe4fe037bb83f289ad9df1'},
]

builddependencies = [
('binutils', '2.42'),
]
dependencies = [
('bzip2', '1.0.8'),
]

skipsteps = ['configure']

buildopts = '-f unix/Makefile CC="$CC" IZ_OUR_BZIP2_DIR=$EBROOTBZIP2 '
buildopts += 'CFLAGS="$CFLAGS -I. -DUNIX -DBZIP2_SUPPORT -DUNICODE_SUPPORT -DLARGE_FILE_SUPPORT '
buildopts += '-DHAVE_DIRENT_H -DHAVE_TERMIOS_H" '
buildopts += 'LFLAGS2="$LDFLAGS -L$EBROOTBZIP2/lib -lbz2" '
buildopts += 'OCRCU8="crc32_.o" OCRCTB="" '
buildopts += 'zips'

installopts = '-f unix/Makefile prefix=%(installdir)s '

sanity_check_paths = {
'files': ['bin/zip', 'bin/zipcloak', 'bin/zipnote', 'bin/zipsplit'],
'dirs': ['man/man1']
}

sanity_check_commands = ["zip --version"]

moduleclass = 'tools'
111 changes: 111 additions & 0 deletions easybuild/easyconfigs/z/Zip/Zip-3.0_gcc-14-compability.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,111 @@
Fix build of Zip 3.0 on modern Linux systems with GCC 14+
- Remove legacy memset, memcpy, memcmp from fileio.c
- Add missing <time.h> include to timezone.c for struct tm/localtime
- Remove legacy ZMEM redeclarations from zip.h, include <string.h>
Author: Pavel Tomanek (Inuits)
--- zip.h.orig 2025-07-01 18:19:39.457327000 +0200
+++ zip.h 2025-07-01 18:21:12.657206000 +0200
@@ -87,6 +87,8 @@
/* Set up portability */
#include "tailor.h"

+#include <string.h>
+
#ifdef USE_ZLIB
# include "zlib.h"
#endif
@@ -722,12 +724,6 @@

int fcopy OF((FILE *, FILE *, uzoff_t));

-#ifdef ZMEM
- char *memset OF((char *, int, unsigned int));
- char *memcpy OF((char *, char *, unsigned int));
- int memcmp OF((char *, char *, unsigned int));
-#endif /* ZMEM */
-
/* in system dependent fileio code (<system>.c) */
#ifndef UTIL
# ifdef PROCNAME
--- fileio.c.orig 2025-07-01 18:41:04.603858000 +0200
+++ fileio.c 2025-07-01 18:41:12.394749000 +0200
@@ -1944,69 +1944,6 @@
#endif /* NO_RENAME */


-#ifdef ZMEM
-
-/************************/
-/* Function memset() */
-/************************/
-
-/*
- * memset - for systems without it
- * bill davidsen - March 1990
- */
-
-char *
-memset(buf, init, len)
-register char *buf; /* buffer loc */
-register int init; /* initializer */
-register unsigned int len; /* length of the buffer */
-{
- char *start;
-
- start = buf;
- while (len--) *(buf++) = init;
- return(start);
-}
-
-
-/************************/
-/* Function memcpy() */
-/************************/
-
-char *
-memcpy(dst,src,len) /* v2.0f */
-register char *dst, *src;
-register unsigned int len;
-{
- char *start;
-
- start = dst;
- while (len--)
- *dst++ = *src++;
- return(start);
-}
-
-
-/************************/
-/* Function memcmp() */
-/************************/
-
-int
-memcmp(b1,b2,len) /* jpd@usl.edu -- 11/16/90 */
-register char *b1, *b2;
-register unsigned int len;
-{
-
- if (len) do { /* examine each byte (if any) */
- if (*b1++ != *b2++)
- return (*((uch *)b1-1) - *((uch *)b2-1)); /* exit when miscompare */
- } while (--len);
-
- return(0); /* no miscompares, yield 0 result */
-}
-
-#endif /* ZMEM */
-

/*------------------------------------------------------------------
* Split archives
--- timezone.c.orig 2025-07-01 18:30:30.464756000 +0200
+++ timezone.c 2025-07-01 18:30:46.550872000 +0200
@@ -41,6 +41,7 @@
#include "timezone.h"
#include <ctype.h>
#include <errno.h>
+#include <time.h>

#ifdef IZTZ_DEFINESTDGLOBALS
long timezone = 0;