Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

archive binutils-2.29-GCCcore-system.eb and related easyconfigs #9

Open
wants to merge 38 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
38 commits
Select commit Hold shift + click to select a range
790b886
adding easyconfigs: OpenMPI-system-GCC-system-2.27.eb, GCC-system-2.2…
Feb 15, 2017
1fda3f0
Fix comments, update to binutils 2.29, be more conservative with buil…
Sep 25, 2017
9ee3277
Add Bison updates
Sep 25, 2017
64eb073
Add flex update for not using arch opts
Sep 25, 2017
1e898f3
Update M4-1.4.18-GCCcore-system.eb
Sep 26, 2017
961add3
Update M4-1.4.18-GCCcore-system.eb
Sep 27, 2017
dcf0999
Fix M4 configure option
geimer Jan 8, 2018
929c5ac
Merge pull request #5650 from easybuilders/develop
wpoely86 Jan 17, 2018
c5014a7
also consider lib64 in sanity_check_paths for Bison 3.0.4
boegel Apr 17, 2018
4f6cd7c
Merge pull request #6170 from boegel/Bison_lib64
vanzod Apr 17, 2018
b3dbe0e
Merge pull request #6238 from easybuilders/3.6.x
boegel Apr 26, 2018
9f731d3
Merge pull request #6240 from boegel/develop
vanzod Apr 26, 2018
373e06c
Merge pull request #6383 from easybuilders/3.6.x
boegel May 28, 2018
09efc48
Consistently use -D_GNU_SOURCE in flex-2.6.4*.eb
crubb Aug 28, 2018
910454c
Merge pull request #6904 from easybuilders/3.7.x
boegel Sep 25, 2018
9df94c3
fix for all M4-1.4.18
robertschade Jan 10, 2019
73440ff
bump up build dependency of flex-2.6.4 from Bison-3.0.4 to Bison-3.0.…
robertschade Jan 11, 2019
841755c
added different versions of Bison-3.0.5 as dependencies of flex-2.6.4
robertschade Jan 14, 2019
bb2fc3d
Merge pull request #7414 from robertschade/bump_flex-2.6.4_from_Bison…
boegel Jan 14, 2019
d5d6cd0
Merge pull request #7509 from easybuilders/3.8.x
boegel Jan 29, 2019
65f0f0b
Make `zlib` a real dependency rather than a build dep
geimer May 16, 2019
cf37810
Adjust format of specifying checksums
geimer May 16, 2019
573cadd
Add comment referencing https://github.com/easybuilders/easybuild-eas…
geimer May 17, 2019
3ca8318
Clarify comment
geimer May 17, 2019
7bf9f47
Merge pull request #8349 from easybuilders/3.9.x
boegel May 20, 2019
8ef7589
add patch for Bison 3.0.4 to fix installation on top of glibc 2.28
boegel Aug 3, 2019
4c4b774
consistently add patch to Bison 3.0.4 easyconfigs
boegel Aug 6, 2019
81ab4f3
Merge pull request #8819 from easybuilders/3.9.x
boegel Aug 23, 2019
83d214c
Merge pull request #16 from boegel/sources_from_git_xgboost
mboisson Dec 11, 2020
9896e7a
Merge pull request #6880 from ComputeCanada/sources_from_git_xgboost
boegel Jun 8, 2021
2f675c4
Merge pull request #13343 from easybuilders/4.4.x
migueldiascosta Jul 6, 2021
1d4f8c4
Merge pull request #13346 from migueldiascosta/develop
boegel Jul 6, 2021
f1e0f71
Merge pull request #13916 from easybuilders/4.4.x
migueldiascosta Sep 7, 2021
160f1b4
Backport glibc-2.34 SIGSTKSZ patch
Oct 25, 2022
fd0d9cc
Fix mixed spaces/tabs
Oct 25, 2022
4c963a4
Merge pull request #17064 from easybuilders/4.7.x
Jan 9, 2023
a36f407
archive binutils-2.29-GCCcore-system.eb and related easyconfigs
lexming Jan 17, 2025
c3e1adf
Archive commit history of 8 files in easybuild-easyconfigs
lexming Jan 17, 2025
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,32 @@
easyblock = 'ConfigureMake'

name = 'Bison'
version = '3.0.4'

homepage = 'http://www.gnu.org/software/bison'
description = """Bison is a general-purpose parser generator that converts an annotated context-free grammar
into a deterministic LR or generalized LR (GLR) parser employing LALR(1) parser tables."""

toolchain = {'name': 'GCCcore', 'version': 'system'}
# Can't rely on binutils in this case (since this is a dep) so switch off architecture optimisations
toolchainopts = {'optarch': False}

source_urls = [GNU_SOURCE]
sources = [SOURCELOWER_TAR_GZ]
patches = ['Bison-%(version)s_glibc_2.28.patch']
checksums = [
'b67fd2daae7a64b5ba862c66c07c1addb9e6b1b05c5f2049392cfd8a2172952e', # bison-3.0.4.tar.gz
'bdceb534ef7717bdbbd272bbdf154d5a41e8073cd8d49fe0b02540bbdba68a57', # Bison-3.0.4_glibc_2.28.patch
]

builddependencies = [
('M4', '1.4.18'),
]


sanity_check_paths = {
'files': ['bin/%s' % x for x in ['bison', 'yacc']] + [('lib/liby.a', 'lib64/liby.a')],
'dirs': [],
}

moduleclass = 'lang'
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
patch to avoid problems on systems using glibc 2.28 (or newer)
author: Esteban Vohringer-Martinezi (Universidad de Concepción)
diff -ru bison-3.0.4_orig/lib/fseterr.c bison-3.0.4/lib/fseterr.c
--- bison-3.0.4_orig/lib/fseterr.c 2019-06-19 15:56:23.552533933 -0400
+++ bison-3.0.4/lib/fseterr.c 2019-06-19 15:58:32.757469045 -0400
@@ -29,7 +29,7 @@
/* Most systems provide FILE as a struct and the necessary bitmask in
<stdio.h>, because they need it for implementing getc() and putc() as
fast macros. */
-#if defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
+#if defined _IO_EOF_SEEN || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
fp->_flags |= _IO_ERR_SEEN;
#elif defined __sferror || defined __DragonFly__ /* FreeBSD, NetBSD, OpenBSD, DragonFly, Mac OS X, Cygwin */
fp_->_flags |= __SERR;
diff -ru bison-3.0.4_orig/lib/stdio-impl.h bison-3.0.4/lib/stdio-impl.h
--- bison-3.0.4_orig/lib/stdio-impl.h 2019-06-19 15:56:23.556533962 -0400
+++ bison-3.0.4/lib/stdio-impl.h 2019-06-19 15:57:44.497120445 -0400
@@ -19,6 +19,13 @@
have different naming conventions, or their access requires some casts. */


+/* Glibc 2.28 made _IO_IN_BACKUP private. For now, work around this
+ problem by defining it ourselves. FIXME: Do not rely on glibc
+ internals. */
+#if !defined _IO_IN_BACKUP && defined _IO_EOF_SEEN
+# define _IO_IN_BACKUP 0x100
+#endif
+
/* BSD stdio derived implementations. */

#if defined __NetBSD__ /* NetBSD */
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
easyblock = 'ConfigureMake'

name = 'Bison'
version = '3.0.5'

homepage = 'http://www.gnu.org/software/bison'
description = """Bison is a general-purpose parser generator that converts an annotated context-free grammar
into a deterministic LR or generalized LR (GLR) parser employing LALR(1) parser tables."""

toolchain = {'name': 'GCCcore', 'version': 'system'}
# Can't rely on binutils in this case (since this is a dep) so switch off architecture optimisations
toolchainopts = {'optarch': False}

sources = [SOURCELOWER_TAR_GZ]
source_urls = [GNU_SOURCE]
checksums = ['cd399d2bee33afa712bac4b1f4434e20379e9b4099bce47189e09a7675a2d566']

builddependencies = [
('M4', '1.4.18'),
]


sanity_check_paths = {
'files': ['bin/%s' % x for x in ['bison', 'yacc']] + [('lib/liby.a', 'lib64/liby.a')],
'dirs': [],
}

moduleclass = 'lang'
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
name = 'binutils'
version = '2.29'

homepage = 'http://directory.fsf.org/project/binutils/'
description = "binutils: GNU binary utilities"

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

source_urls = [GNU_SOURCE]
sources = [SOURCE_TAR_GZ]
checksums = ['172e8c89472cf52712fd23a9f14e9bca6182727fb45b0f8f482652a83d5a11b4']

builddependencies = [
('flex', '2.6.4'),
('Bison', '3.0.4'),
]

dependencies = [
# zlib is a runtime dep to avoid that it gets embedded in libbfd.so,
# see https://github.com/easybuilders/easybuild-easyblocks/issues/1350
('zlib', '1.2.11'),
]

moduleclass = 'tools'
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
name = 'flex'
version = '2.6.4'

homepage = 'http://flex.sourceforge.net/'

description = """
Flex (Fast Lexical Analyzer) is a tool for generating scanners. A scanner,
sometimes called a tokenizer, is a program which recognizes lexical patterns
in text.
"""

toolchain = {'name': 'GCCcore', 'version': 'system'}
# Can't rely on binutils in this case (since this is a dep) so switch off architecture optimisations
toolchainopts = {'optarch': False, 'pic': True}

source_urls = ['https://github.com/westes/flex/releases/download/v%(version)s/']
sources = [SOURCELOWER_TAR_GZ]
checksums = ['e87aae032bf07c26f85ac0ed3250998c37621d95f8bd748b31f15b33c45ee995']

builddependencies = [
('Bison', '3.0.5'),
('help2man', '1.47.4'),
]

dependencies = [
('M4', '1.4.18'),
]

# glibc 2.26 requires _GNU_SOURCE defined to expose reallocarray in the correct
# header, see https://github.com/westes/flex/issues/241
preconfigopts = 'export CPPFLAGS="$CPPFLAGS -D_GNU_SOURCE" && '

moduleclass = 'lang'
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
easyblock = 'ConfigureMake'

name = 'help2man'
version = '1.47.4'

homepage = 'https://www.gnu.org/software/help2man/'
description = """help2man produces simple manual pages from the '--help' and '--version' output of other commands."""

toolchain = {'name': 'GCCcore', 'version': 'system'}
# Can't rely on binutils in this case (since help2man is an implied dep) so switch off architecture optimisations
toolchainopts = {'optarch': False}

source_urls = [GNU_SOURCE]
sources = [SOURCE_TAR_XZ]
checksums = ['d4ecf697d13f14dd1a78c5995f06459bff706fd1ce593d1c02d81667c0207753']

sanity_check_paths = {
'files': ['bin/help2man'],
'dirs': [],
}

moduleclass = 'tools'
38 changes: 38 additions & 0 deletions easybuild/easyconfigs/__archive__/m/M4/M4-1.4.18-GCCcore-system.eb
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
easyblock = 'ConfigureMake'

name = 'M4'
version = '1.4.18'

homepage = 'http://www.gnu.org/software/m4/m4.html'
description = """GNU M4 is an implementation of the traditional Unix macro processor. It is mostly SVR4 compatible
although it has some extensions (for example, handling more than 9 positional parameters to macros).
GNU M4 also has built-in functions for including files, running shell commands, doing arithmetic, etc."""

toolchain = {'name': 'GCCcore', 'version': 'system'}
# Can't rely on binutils in this case (since this is an implied dep) so switch off architecture optimisations
toolchainopts = {'optarch': False}

sources = [SOURCELOWER_TAR_GZ]
source_urls = [GNU_SOURCE]

patches = [
'M4-1.4.18_glibc_2.28.patch',
'M4-1.4.18_glibc_2.34.patch',
]

checksums = [
'ab2633921a5cd38e48797bf5521ad259bdc4b979078034a3b790d7fec5493fab', # m4-1.4.18.tar.gz
'a613c18f00b1a3caa46ae4b8b849a0f4f71095ad860f4fcd6c6bb4ae211681fa', # M4-1.4.18_glibc_2.28.patch
'75f0ccc981bf313f5eb4e203a9f8b1ef9e633d840064587405cf360107d4915a', # M4-1.4.18_glibc_2.34.patch
]

# '-fgnu89-inline' is required to avoid linking errors with older glibc's,
# see https://github.com/easybuilders/easybuild-easyconfigs/issues/529
configopts = "--enable-c++ CPPFLAGS=-fgnu89-inline"

sanity_check_paths = {
'files': ["bin/m4"],
'dirs': [],
}

moduleclass = 'devel'
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
easyblock = 'ConfigureMake'

name = 'zlib'
version = '1.2.11'

homepage = 'http://www.zlib.net/'
description = """zlib is designed to be a free, general-purpose, legally unencumbered -- that is,
not covered by any patents -- lossless data-compression library for use on virtually any
computer hardware and operating system."""

toolchain = {'name': 'GCCcore', 'version': 'system'}
# Can't rely on binutils in this case (since this is a dep) so switch off architecture optimisations
toolchainopts = {'optarch': False, 'pic': True}

source_urls = ['http://zlib.net/fossils']
sources = [SOURCELOWER_TAR_GZ]
checksums = ['c3e5e9fdd5004dcb542feda5ee4f0ff0744628baf8ed2dd5d66f8ca1197cb1a1']

sanity_check_paths = {
'files': ['include/zconf.h', 'include/zlib.h', 'lib/libz.a', 'lib/libz.%s' % SHLIB_EXT],
'dirs': [],
}

moduleclass = 'lib'