Skip to content
Snippets Groups Projects
Commit 339e5d35 authored by Jens Henrik Goebbert's avatar Jens Henrik Goebbert
Browse files

Merge branch '2023' into OpenCV

parents c8a4f030 c6cc6b8f
Branches
Tags
No related merge requests found
Showing
with 840 additions and 0 deletions
easyblock = 'MakeCp'
name = 'ACTC'
version = '1.1'
homepage = 'https://sourceforge.net/projects/actc'
description = "ACTC converts independent triangles into triangle strips or fans."
toolchain = {'name': 'GCCcore', 'version': '11.3.0'}
toolchainopts = {'pic': True}
source_urls = [SOURCEFORGE_SOURCE]
sources = [SOURCELOWER_TAR_GZ]
checksums = ['3a1303291629b9de6008c3c9d7b020a4b854802408fb3f8222ec492808c8b44d']
builddependencies = [('binutils', '2.38')]
buildopts = 'CC="$CC" CFLAGS="$CFLAGS"'
files_to_copy = [
(['tcsample', 'tctest', 'tctest2'], 'bin'),
(['tc.h'], 'include/ac'),
(['libactc.a'], 'lib'),
'COPYRIGHT', 'manual.html', 'prims.gif', 'README',
]
sanity_check_paths = {
'files': ['bin/tctest', 'bin/tctest2', 'bin/tcsample', 'include/ac/tc.h', 'lib/libactc.a',
'COPYRIGHT', 'manual.html', 'prims.gif', 'README'],
'dirs': [],
}
modextrapaths = {'CPATH': 'include/ac'}
moduleclass = 'lib'
easyblock = 'PackedBinary'
name = 'ant'
version = '1.10.13'
versionsuffix = '-Java-%(javaver)s'
homepage = 'https://ant.apache.org/'
description = """Apache Ant is a Java library and command-line tool whose mission is to drive processes described in
build files as targets and extension points dependent upon each other. The main known usage of Ant is the build of
Java applications."""
toolchain = SYSTEM
source_urls = ['https://archive.apache.org/dist/ant/binaries/']
sources = ['apache-%(name)s-%(version)s-bin.tar.gz']
checksums = ['776be4a5704158f00ef3f23c0327546e38159389bc8f39abbfe114913f88bab1']
dependencies = [('Java', '11')]
sanity_check_paths = {
'files': ['bin/ant', 'lib/ant.jar'],
'dirs': [],
}
modextravars = {'ANT_HOME': '%(installdir)s'}
moduleclass = 'devel'
easyblock = 'PackedBinary'
name = 'Blender'
version = '3.4.1'
versionsuffix = '-binary'
homepage = 'https://www.blender.org'
description = """
Blender is the free and open source 3D creation suite. It supports the entirety of the 3D pipeline,
modeling, rigging, animation, simulation, rendering, compositing and motion tracking, even video
editing and game creation.
"""
toolchain = {'name': 'GCCcore', 'version': '11.3.0'}
source_urls = ['http://ftp.nluug.nl/pub/graphics/%(namelower)s/release/%(name)s%(version_major_minor)s/']
sources = ['%(namelower)s-%(version)s-linux-x64.tar.xz']
checksums = ['1497f83f93e9bbbde745422c795ed10fe15f92f5622b4421768f149fbe776981']
dependencies = [
('X11', '20220504'),
('OpenGL', '2022a'),
('CUDA', '11.7', '', SYSTEM),
]
postinstallcmds = [
# remove Blenders OpenGL libs
'rm -rf %(installdir)s/lib/mesa',
]
sanity_check_paths = {
'files': ['%(namelower)s'],
'dirs': ['%(version_major_minor)s'],
}
modaliases = {
'blender': 'blender -- --cycles-device CUDA',
}
moduleclass = 'vis'
easyblock = 'CMakeMake'
name = 'Blosc'
version = '1.21.3'
homepage = 'https://www.blosc.org/'
description = "Blosc, an extremely fast, multi-threaded, meta-compressor library"
toolchain = {'name': 'GCCcore', 'version': '11.3.0'}
toolchainopts = {'pic': True, 'cstd': 'c++11'}
source_urls = ['https://github.com/Blosc/c-blosc/archive/']
sources = ['v%(version)s.tar.gz']
checksums = ['941016c4564bca662080bb01aea74f06630bd665e598c6f6967fd91b2e2e0bb6']
builddependencies = [
('binutils', '2.38'),
('CMake', '3.23.1'),
]
sanity_check_paths = {
'files': ['include/blosc-export.h', 'include/blosc.h', 'lib/libblosc.a',
'lib/libblosc.%s' % SHLIB_EXT],
'dirs': [],
}
moduleclass = 'lib'
# Patches the setup.py to use EB settings for BLAS/LAPACK, FFTW, etc
# original by wpoely86@gmail.com, ported to v1.2.1 by Kenneth Hoste (HPC-UGent)
--- cvxopt-1.2.1/setup.py.orig 2018-08-30 19:54:12.000000000 +0200
+++ cvxopt-1.2.1/setup.py 2018-10-02 16:28:57.252340779 +0200
@@ -91,9 +91,11 @@
LAPACK_LIB = os.environ.get("CVXOPT_LAPACK_LIB",LAPACK_LIB)
BLAS_LIB_DIR = os.environ.get("CVXOPT_BLAS_LIB_DIR",BLAS_LIB_DIR)
BLAS_EXTRA_LINK_ARGS = os.environ.get("CVXOPT_BLAS_EXTRA_LINK_ARGS",BLAS_EXTRA_LINK_ARGS)
+FFTW_EXTRA_LINK_ARGS = os.environ.get("CVXOPT_FFTW_EXTRA_LINK_ARGS",'')
if type(BLAS_LIB) is str: BLAS_LIB = BLAS_LIB.strip().split(';')
if type(LAPACK_LIB) is str: LAPACK_LIB = LAPACK_LIB.strip().split(';')
-if type(BLAS_EXTRA_LINK_ARGS) is str: BLAS_EXTRA_LINK_ARGS = BLAS_EXTRA_LINK_ARGS.strip().split(';')
+if type(BLAS_EXTRA_LINK_ARGS) is str: BLAS_EXTRA_LINK_ARGS = BLAS_EXTRA_LINK_ARGS.strip().split(' ')
+if type(FFTW_EXTRA_LINK_ARGS) is str: FFTW_EXTRA_LINK_ARGS = FFTW_EXTRA_LINK_ARGS.strip().split(' ')
BUILD_GSL = int(os.environ.get("CVXOPT_BUILD_GSL",BUILD_GSL))
GSL_LIB_DIR = os.environ.get("CVXOPT_GSL_LIB_DIR",GSL_LIB_DIR)
GSL_INC_DIR = os.environ.get("CVXOPT_GSL_INC_DIR",GSL_INC_DIR)
@@ -126,7 +128,7 @@
# optional modules
if BUILD_GSL:
- gsl = Extension('gsl', libraries = M_LIB + ['gsl'] + BLAS_LIB,
+ gsl = Extension('gsl', libraries = M_LIB + ['gsl'],
include_dirs = [ GSL_INC_DIR ],
library_dirs = [ GSL_LIB_DIR, BLAS_LIB_DIR ],
define_macros = GSL_MACROS,
@@ -135,11 +137,11 @@
extmods += [gsl];
if BUILD_FFTW:
- fftw = Extension('fftw', libraries = ['fftw3'] + BLAS_LIB,
+ fftw = Extension('fftw',
include_dirs = [ FFTW_INC_DIR ],
library_dirs = [ FFTW_LIB_DIR, BLAS_LIB_DIR ],
define_macros = FFTW_MACROS,
- extra_link_args = BLAS_EXTRA_LINK_ARGS,
+ extra_link_args = BLAS_EXTRA_LINK_ARGS + FFTW_EXTRA_LINK_ARGS,
sources = ['src/C/fftw.c'] )
extmods += [fftw];
@@ -151,7 +153,7 @@
extmods += [glpk];
if BUILD_DSDP:
- dsdp = Extension('dsdp', libraries = ['dsdp'] + LAPACK_LIB + BLAS_LIB,
+ dsdp = Extension('dsdp', libraries = ['dsdp'],
include_dirs = [ DSDP_INC_DIR ],
library_dirs = [ DSDP_LIB_DIR, BLAS_LIB_DIR ],
extra_link_args = BLAS_EXTRA_LINK_ARGS,
@@ -160,19 +162,19 @@
# Required modules
-base = Extension('base', libraries = M_LIB + LAPACK_LIB + BLAS_LIB,
+base = Extension('base',
library_dirs = [ BLAS_LIB_DIR ],
define_macros = MACROS,
extra_link_args = BLAS_EXTRA_LINK_ARGS,
sources = ['src/C/base.c','src/C/dense.c','src/C/sparse.c'])
-blas = Extension('blas', libraries = BLAS_LIB,
+blas = Extension('blas',
library_dirs = [ BLAS_LIB_DIR ],
define_macros = MACROS,
extra_link_args = BLAS_EXTRA_LINK_ARGS,
sources = ['src/C/blas.c'] )
-lapack = Extension('lapack', libraries = LAPACK_LIB + BLAS_LIB,
+lapack = Extension('lapack',
library_dirs = [ BLAS_LIB_DIR ],
define_macros = MACROS,
extra_link_args = BLAS_EXTRA_LINK_ARGS,
@@ -180,9 +182,10 @@
if not SUITESPARSE_SRC_DIR:
umfpack = Extension('umfpack',
- libraries = ['umfpack','cholmod','amd','colamd','suitesparseconfig'] + LAPACK_LIB + BLAS_LIB + RT_LIB,
+ libraries = ['umfpack','cholmod','amd','colamd','suitesparseconfig'] + RT_LIB,
include_dirs = [SUITESPARSE_INC_DIR],
library_dirs = [SUITESPARSE_LIB_DIR, BLAS_LIB_DIR],
+ extra_link_args = BLAS_EXTRA_LINK_ARGS,
sources = ['src/C/umfpack.c'])
else:
umfpack = Extension('umfpack',
@@ -193,7 +196,6 @@
SUITESPARSE_SRC_DIR + '/SuiteSparse_config' ],
library_dirs = [ BLAS_LIB_DIR ],
define_macros = MACROS + [('NTIMER', '1'), ('NCHOLMOD', '1')],
- libraries = LAPACK_LIB + BLAS_LIB,
extra_compile_args = UMFPACK_EXTRA_COMPILE_ARGS,
extra_link_args = BLAS_EXTRA_LINK_ARGS,
sources = [ 'src/C/umfpack.c',
@@ -206,14 +208,13 @@
if not SUITESPARSE_SRC_DIR:
cholmod = Extension('cholmod',
- libraries = ['cholmod','colamd','amd','suitesparseconfig'] + LAPACK_LIB + BLAS_LIB + RT_LIB,
+ libraries = ['cholmod','colamd','amd','suitesparseconfig'] + RT_LIB,
include_dirs = [SUITESPARSE_INC_DIR],
library_dirs = [SUITESPARSE_LIB_DIR, BLAS_LIB_DIR],
sources = [ 'src/C/cholmod.c' ])
else:
cholmod = Extension('cholmod',
library_dirs = [ BLAS_LIB_DIR ],
- libraries = LAPACK_LIB + BLAS_LIB,
include_dirs = [ SUITESPARSE_SRC_DIR + '/CHOLMOD/Include',
SUITESPARSE_SRC_DIR + '/COLAMD',
SUITESPARSE_SRC_DIR + '/AMD/Include',
@@ -235,17 +236,18 @@
libraries = ['amd','suitesparseconfig'] + RT_LIB,
include_dirs = [SUITESPARSE_INC_DIR],
library_dirs = [SUITESPARSE_LIB_DIR],
+ extra_link_args = BLAS_EXTRA_LINK_ARGS,
sources = ['src/C/amd.c'])
else:
amd = Extension('amd',
include_dirs = [SUITESPARSE_SRC_DIR + '/AMD/Include',
SUITESPARSE_SRC_DIR + '/SuiteSparse_config' ],
define_macros = MACROS + [('NTIMER', '1')],
+ extra_link_args = BLAS_EXTRA_LINK_ARGS,
sources = [ 'src/C/amd.c', SUITESPARSE_SRC_DIR + '/SuiteSparse_config/SuiteSparse_config.c'] +
glob(SUITESPARSE_SRC_DIR + '/AMD/Source/*.c') )
misc_solvers = Extension('misc_solvers',
- libraries = LAPACK_LIB + BLAS_LIB,
library_dirs = [ BLAS_LIB_DIR ],
define_macros = MACROS,
extra_link_args = BLAS_EXTRA_LINK_ARGS,
easyblock = 'PythonPackage'
name = 'CVXOPT'
version = '1.3.0'
homepage = 'http://cvxopt.org'
description = """CVXOPT is a free software package for convex optimization based on the Python programming language.
Its main purpose is to make the development of software for convex optimization applications straightforward by
building on Python's extensive standard library and on the strengths of Python as a high-level programming language.
"""
toolchain = {'name': 'gpsmkl', 'version': '2022a'}
toolchainopts = {'pic': True, 'usempi': True}
source_urls = [PYPI_LOWER_SOURCE]
sources = [SOURCELOWER_TAR_GZ]
patches = ['CVXOPT-1.2.1-fix-setup-py.patch']
checksums = [
'00b1b232f9d1f902d578a9d75814b67fa020758d5ae422e28ca8cef6269fa5c6', # cvxopt-1.3.0.tar.gz
'85d8475098895e9af45f330489a712b5b944489c5fb4a6c67f59bef8fed4303d', # CVXOPT-1.2.1-fix-setup-py.patch
]
builddependencies = [
('binutils', '2.38'),
]
dependencies = [
('Python', '3.10.4'),
('SuiteSparse', '5.13.0'),
('GSL', '2.7'),
]
download_dep_fail = True
use_pip = True
preinstallopts = 'CVXOPT_BUILD_FFTW=1 CVXOPT_BUILD_GSL=1 CVXOPT_BLAS_EXTRA_LINK_ARGS="$LIBLAPACK" '
preinstallopts += 'CVXOPT_FFTW_EXTRA_LINK_ARGS="$LIBFFT" CVXOPT_SUITESPARSE_SRC_DIR=$EBROOTSUITESPARSE'
moduleclass = 'math'
easyblock = 'CMakeMake'
name = 'Cling'
version = '20230205'
local_commit = '1d93ee8d5855a82bbff2aab31515760630e8c1a4'
homepage = "https://root.cern/cling/"
description = """Cling is an interactive C++ interpreter, built on the top of LLVM and Clang libraries.
Its advantages over the standard interpreters are that it has command line prompt
and uses just-in-time (JIT) compiler for compilation.
"""
toolchain = {'name': 'GCCcore', 'version': '11.3.0'}
toolchainopts = {'pic': True}
source_urls = ['https://github.com/root-project/cling/archive/']
sources = ['%s.tar.gz' % local_commit]
patches = [
('disable_demo.patch'),
]
checksums = [
{'1d93ee8d5855a82bbff2aab31515760630e8c1a4.tar.gz':
'5cbdac0a8a5229dd2613d3f83af7e38d9e44fba1e5c1e801a4d4349fa277688a'},
{'disable_demo.patch': '44c74ffd74f0c1d308c68001fa87d9a95d5274a07ea797a284b3b21e6da1c712'},
]
builddependencies = [
('CMake', '3.23.1'),
('binutils', '2.38',),
]
separate_build_dir = True
srcdir = "%(builddir)s/src"
# get source
preconfigopts = (
# get compatible LLVM version id
'pushd %%(builddir)s/cling-%s && '
'LLVM_RELEASE=$(cat LastKnownGoodLLVMSVNRevision.txt) && '
# clone compatible LLVM branch
'cd .. && '
'git clone http://root.cern.ch/git/llvm.git src && '
'cd src && '
'git checkout cling-patches-r${LLVM_RELEASE} && '
# clone compatible Clang branch to the correct position in LLVM src
'cd tools && '
'git clone http://root.cern.ch/git/clang.git && '
'cd clang && '
'git checkout cling-patches-r${LLVM_RELEASE} && '
# add cling src to the correct position LLVM src
'cd .. && '
'ln -s ../../cling-%s cling && '
# cd to easybuild standard build directory
'popd && '
) % (local_commit, local_commit)
# copy jupyter kernel files
postinstallcmds = [
# copy Jupyter kernel install files
# https://cdn.rawgit.com/root-project/cling/master/www/jupyter.html
'mkdir -p %(installdir)s/share/cling/ ',
'cp -a %%(builddir)s/cling-%s/tools/Jupyter %%(installdir)s/share/cling ' % local_commit,
]
sanity_check_paths = {
'files': ['bin/cling'],
'dirs': ['bin', 'include', 'lib', 'share'],
}
moduleclass = 'tools'
diff -Naur cling-1d93ee8d5855a82bbff2aab31515760630e8c1a4.orig/tools/CMakeLists.txt cling-1d93ee8d5855a82bbff2aab31515760630e8c1a4/tools/CMakeLists.txt
--- cling-1d93ee8d5855a82bbff2aab31515760630e8c1a4.orig/tools/CMakeLists.txt 2023-02-05 16:02:08.108301585 +0100
+++ cling-1d93ee8d5855a82bbff2aab31515760630e8c1a4/tools/CMakeLists.txt 2023-02-05 15:59:53.711904401 +0100
@@ -11,7 +11,6 @@
add_subdirectory(driver)
add_subdirectory(Jupyter)
add_subdirectory(libcling)
- add_subdirectory(demo)
endif()
add_subdirectory(plugins)
easyblock = 'CMakeMake'
name = 'ceres-solver'
version = '2.1.0'
homepage = 'http://ceres-solver.org'
description = """
Ceres Solver is an open source C++ library for modeling and solving large, complicated optimization problems.
"""
toolchain = {'name': 'gcccoremkl', 'version': '11.3.0-2022.1.0'}
toolchainopts = {'pic': True}
source_urls = ['http://ceres-solver.org/']
sources = ['%(name)s-%(version)s.tar.gz']
checksums = ['f7d74eecde0aed75bfc51ec48c91d01fe16a6bf16bce1987a7073286701e2fc6']
builddependencies = [
('binutils', '2.38'),
('CMake', '3.23.1')
]
dependencies = [
('Eigen', '3.4.0'),
('SuiteSparse', '5.13.0', '-nompi'), # ('gcccoremkl', '11.3.0-2022.1.0')),
('gflags', '2.2.2'),
('glog', '0.6.0'),
]
configopts = '-DBUILD_TESTING=OFF -DBUILD_EXAMPLES=OFF '
configopts += '-DBUILD_SHARED_LIBS=on '
sanity_check_paths = {
'files': ['lib/libceres.so', 'include/ceres/ceres.h'],
'dirs': [],
}
moduleclass = 'tools'
easyblock = 'ConfigureMake'
name = 'eudev'
version = '3.2.11'
homepage = 'https://wiki.gentoo.org/wiki/Project:Eudev'
description = """
eudev is a fork of systemd-udev with the goal of obtaining better
compatibility with existing software such as OpenRC and Upstart,
older kernels, various toolchains and anything else required by
users and various distributions.
"""
toolchain = {'name': 'GCCcore', 'version': '11.3.0'}
source_urls = [('https://github.com/eudev-project/eudev/archive')]
sources = ['v%(version)s.tar.gz']
patches = ['%(name)s-%(version)s_python3.patch']
checksums = [
{'v3.2.11.tar.gz': 'dcfc482099f3fdfcfdb9aeabbc4d609877cf4d2d0407f50ab0c59d43fff44f92'},
{'eudev-3.2.11_python3.patch': '846b1e72e12853c4146d3a4e312301001bbfb13110ce76de2afdf860f4d085a8'},
]
builddependencies = [
('binutils', '2.38'),
('gperf', '3.1'),
('Python', '3.10.4'),
('Autotools', '20220317'),
('pkgconf', '1.8.0'),
]
osdependencies = [('kernel-headers', 'linux-libc-dev')]
preconfigopts = "./autogen.sh && "
configopts = '--disable-blkid --disable-selinux --disable-manpages '
runtest = 'check'
sanity_check_paths = {
'files': ['bin/udevadm', 'include/libudev.h', 'include/udev.h',
'lib/libudev.so.1'],
'dirs': [],
}
moduleclass = 'system'
diff -ruN eudev-3.2.9.orig/test/rule-syntax-check.py eudev-3.2.9/test/rule-syntax-check.py
--- eudev-3.2.9.orig/test/rule-syntax-check.py 2016-11-17 22:14:19.000000000 +0100
+++ eudev-3.2.9/test/rule-syntax-check.py 2020-11-06 15:22:12.238868994 +0100
@@ -1,4 +1,4 @@
-#!/usr/bin/python
+#!/usr/bin/env python3
# Simple udev rules syntax checker
#
# (C) 2010 Canonical Ltd.
name = 'FFTW'
version = '3.3.10'
homepage = 'https://www.fftw.org'
description = """FFTW is a C subroutine library for computing the discrete Fourier transform (DFT)
in one or more dimensions, of arbitrary input size, and of both real and complex data."""
toolchain = {'name': 'GCCcore', 'version': '11.3.0'}
toolchainopts = {'pic': True}
source_urls = [homepage]
sources = [SOURCELOWER_TAR_GZ]
checksums = ['56c932549852cddcfafdab3820b0200c7742675be92179e59e6215b340e26467']
builddependencies = [('binutils', '2.38')]
# We hide it here since this should be used just for Jupyter and the MPI version should be preferred for normal cases
hidden = True
runtest = 'check'
moduleclass = 'numlib'
name = 'FFTW'
version = '3.3.10'
homepage = 'http://www.fftw.org'
description = """FFTW is a C subroutine library for computing the discrete
Fourier transform (DFT) in one or more dimensions, of arbitrary input size,
and of both real and complex data."""
toolchain = {'name': 'ipsmpi', 'version': '2022a'}
toolchainopts = {'pic': True}
source_urls = [homepage]
sources = ['fftw-3.3.10.tar.gz']
checksums = ['56c932549852cddcfafdab3820b0200c7742675be92179e59e6215b340e26467']
# no quad precision, requires GCC v4.6 or higher
# see also
# http://www.fftw.org/doc/Extended-and-quadruple-precision-in-Fortran.html
with_quad_prec = False
# compilation fails on AMD systems when configuring with --enable-avx-128-fma,
# because Intel compilers do not support FMA4 instructions
use_fma4 = False
# can't find mpirun/mpiexec and fails
# runtest = 'check'
modextravars = {
'FFTW_ROOT': '%(installdir)s',
'FFTW_INCLUDE': '%(installdir)s/include',
'FFTW_LIB': '%(installdir)s/lib',
}
moduleclass = 'numlib'
easyblock = 'ConfigureMake'
name = 'FreeImage'
version = '3.18.0'
homepage = 'http://freeimage.sourceforge.net'
description = """FreeImage is an Open Source library project for developers who would like to support popular graphics
image formats like PNG, BMP, JPEG, TIFF and others as needed by today's multimedia applications. FreeImage is easy to
use, fast, multithreading safe."""
toolchain = {'name': 'GCCcore', 'version': '11.3.0'}
toolchainopts = {'pic': True, 'cstd': 'c++11'}
source_urls = [SOURCEFORGE_SOURCE]
sources = ['%%(name)s%s.zip' % ''.join(version.split('.'))]
patches = ['%(name)s-%(version)s-fix-makefile.patch']
checksums = [
'f41379682f9ada94ea7b34fe86bf9ee00935a3147be41b6569c9605a53e438fd', # FreeImage3180.zip
'3eaa1eb9562ccfd0cb95a37879bb7e3e8c745166596d75af529478181ef006a0', # FreeImage-3.18.0-fix-makefile.patch
]
builddependencies = [('binutils', '2.38')]
skipsteps = ['configure']
buildopts = ['', '-f Makefile.fip']
installopts = [
'INCDIR=%(installdir)s/include INSTALLDIR=%(installdir)s/lib',
'-f Makefile.fip INCDIR=%(installdir)s/include INSTALLDIR=%(installdir)s/lib'
]
dependencies = [('zlib', '1.2.12')]
sanity_check_paths = {
'files': ['include/FreeImage.h', 'include/FreeImagePlus.h', 'lib/libfreeimage.a', 'lib/libfreeimage.%s' % SHLIB_EXT,
'lib/libfreeimageplus.a', 'lib/libfreeimageplus.%s' % SHLIB_EXT],
'dirs': []
}
moduleclass = 'vis'
# Do not install files to root user
# wpoely86@gmail.com
diff -ur FreeImage.orig/Makefile.fip FreeImage/Makefile.fip
--- FreeImage.orig/Makefile.fip 2015-03-10 09:03:56.000000000 +0100
+++ FreeImage/Makefile.fip 2019-04-09 10:32:42.052332853 +0200
@@ -11,7 +11,7 @@
# Converts cr/lf to just lf
DOS2UNIX = dos2unix
-LIBRARIES = -lstdc++
+LIBRARIES = -lstdc++ $(LIBS)
MODULES = $(SRCS:.c=.o)
MODULES := $(MODULES:.cpp=.o)
@@ -72,10 +72,10 @@
install:
install -d $(INCDIR) $(INSTALLDIR)
- install -m 644 -o root -g root $(HEADER) $(INCDIR)
- install -m 644 -o root -g root $(HEADERFIP) $(INCDIR)
- install -m 644 -o root -g root $(STATICLIB) $(INSTALLDIR)
- install -m 755 -o root -g root $(SHAREDLIB) $(INSTALLDIR)
+ install -m 644 $(HEADER) $(INCDIR)
+ install -m 644 $(HEADERFIP) $(INCDIR)
+ install -m 644 $(STATICLIB) $(INSTALLDIR)
+ install -m 755 $(SHAREDLIB) $(INSTALLDIR)
ln -sf $(SHAREDLIB) $(INSTALLDIR)/$(VERLIBNAME)
ln -sf $(VERLIBNAME) $(INSTALLDIR)/$(LIBNAME)
diff -ur FreeImage.orig/Makefile.gnu FreeImage/Makefile.gnu
--- FreeImage.orig/Makefile.gnu 2015-03-10 09:04:00.000000000 +0100
+++ FreeImage/Makefile.gnu 2019-04-09 10:31:59.066052732 +0200
@@ -11,7 +11,7 @@
# Converts cr/lf to just lf
DOS2UNIX = dos2unix
-LIBRARIES = -lstdc++
+LIBRARIES = -lstdc++ $(LIBS)
MODULES = $(SRCS:.c=.o)
MODULES := $(MODULES:.cpp=.o)
@@ -71,9 +71,9 @@
install:
install -d $(INCDIR) $(INSTALLDIR)
- install -m 644 -o root -g root $(HEADER) $(INCDIR)
- install -m 644 -o root -g root $(STATICLIB) $(INSTALLDIR)
- install -m 755 -o root -g root $(SHAREDLIB) $(INSTALLDIR)
+ install -m 644 $(HEADER) $(INCDIR)
+ install -m 644 $(STATICLIB) $(INSTALLDIR)
+ install -m 755 $(SHAREDLIB) $(INSTALLDIR)
ln -sf $(SHAREDLIB) $(INSTALLDIR)/$(VERLIBNAME)
ln -sf $(VERLIBNAME) $(INSTALLDIR)/$(LIBNAME)
# ldconfig
easyblock = 'ConfigureMake'
name = 'GPicView'
version = '0.2.5'
homepage = 'http://lxde.sourceforge.net/gpicview'
description = """GPicView - A Simple and Fast Image Viewer for X"""
toolchain = {'name': 'GCCcore', 'version': '11.3.0'}
source_urls = [
'https://sourceforge.net/projects/lxde/files/GPicView%20%28image%20Viewer%29/0.2.x/']
sources = [SOURCELOWER_TAR_XZ]
checksums = ['38466058e53702450e5899193c4b264339959b563dd5cd81f6f690de32d82942']
builddependencies = [
('binutils', '2.38'),
('pkgconf', '1.8.0'),
('Perl', '5.34.1'),
]
dependencies = [
('X11', '20220504'),
('GTK+', '3.24.34'),
('libjpeg-turbo', '2.1.3'),
]
configopts = '--enable-gtk3 '
sanity_check_paths = {
'files': ['bin/gpicview'],
'dirs': [],
}
moduleclass = 'vis'
Do NOT make files setuid or try to do setcap.
That's a recipe for disaster.
Åke Sandgren, 20221031
diff -ru gstreamer-1.20.2.orig/libs/gst/helpers/ptp_helper_post_install.sh gstreamer-1.20.2/libs/gst/helpers/ptp_helper_post_install.sh
--- gstreamer-1.20.2.orig/libs/gst/helpers/ptp_helper_post_install.sh 2022-05-03 00:29:29.000000000 +0200
+++ gstreamer-1.20.2/libs/gst/helpers/ptp_helper_post_install.sh 2022-10-31 16:39:11.959435316 +0100
@@ -11,14 +11,10 @@
setuid-root)
echo "$0: permissions before: "
ls -l "$ptp_helper"
- chown root "$ptp_helper" || true
- chmod u+s "$ptp_helper" || true
echo "$0: permissions after: "
ls -l "$ptp_helper"
;;
capabilities)
- echo "Calling $setcap cap_net_bind_service,cap_net_admin+ep $ptp_helper"
- $setcap cap_net_bind_service,cap_net_admin+ep "$ptp_helper" || true
;;
none)
echo "No perms/caps to set for $ptp_helper"
easyblock = 'Bundle'
name = 'GStreamer'
version = '1.20.2'
homepage = 'https://gstreamer.freedesktop.org/'
description = """GStreamer is a library for constructing graphs of media-handling
components. The applications it supports range from simple
Ogg/Vorbis playback, audio/video streaming to complex audio
(mixing) and video (non-linear editing) processing."""
toolchain = {'name': 'GCCcore', 'version': '11.3.0'}
builddependencies = [
('binutils', '2.38'),
('Meson', '0.62.1'),
('Ninja', '1.10.2'),
('Bison', '3.8.2'),
('flex', '2.6.4'),
('GObject-Introspection', '1.72.0'),
('gettext', '0.21'),
('pkgconf', '1.8.0'),
('CMake', '3.23.1'),
('git', '2.36.0', '-nodocs'),
]
dependencies = [
('Python', '3.10.4'),
('zlib', '1.2.12'),
('GMP', '6.2.1'),
('GSL', '2.7'),
('GLib', '2.72.1'),
('GTK+', '3.24.34'),
('libunwind', '1.6.2'),
('double-conversion', '3.2.0'),
('elfutils', '0.187'),
]
default_easyblock = 'MesonNinja'
default_component_specs = {
'sources': [SOURCELOWER_TAR_XZ],
'start_dir': '%(namelower)s-%(version)s',
}
components = [
(name, version, {
'source_urls': ['https://gstreamer.freedesktop.org/src/%(namelower)s'],
'patches': ['GStreamer-1.18_fix_bad_suid.patch'],
'checksums': [
'df24e8792691a02dfe003b3833a51f1dbc6c3331ae625d143b17da939ceb5e0a',
'3d963ffdaf157ed92f46a071c4ef46f548c0b19186427e8404cb066705bbb61a',
],
'configopts': "-Dlibdw=disabled ",
}),
('GST-plugins-base', version, {
'source_urls': ['https://gstreamer.freedesktop.org/src/%(namelower)s'],
'checksums': ['ab0656f2ad4d38292a803e0cb4ca090943a9b43c8063f650b4d3e3606c317f17'],
'preconfigopts': 'export PKG_CONFIG_PATH="%(installdir)s/lib/pkgconfig:${PKG_CONFIG_PATH}" && ',
}),
('GST-plugins-good', version, {
'source_urls': ['https://gstreamer.freedesktop.org/src/%(namelower)s'],
'checksums': ['83589007bf002b8f9ef627718f308c16d83351905f0db8e85c3060f304143aae'],
'preconfigopts': 'export PKG_CONFIG_PATH="%(installdir)s/lib/pkgconfig:${PKG_CONFIG_PATH}" && ',
}),
('GST-plugins-bad', version, {
'source_urls': ['https://gstreamer.freedesktop.org/src/%(namelower)s'],
'checksums': ['4adc4c05f41051f8136b80cda99b0d049a34e777832f9fea7c5a70347658745b'],
'preconfigopts': 'export PKG_CONFIG_PATH="%(installdir)s/lib/pkgconfig:${PKG_CONFIG_PATH}" && ',
}),
]
modextrapaths = {'PKG_CONFIG_PATH': 'lib/pkgconfig'} # required!
sanity_check_paths = {
'files': ['bin/gst-%s-1.0' % x for x in ['discoverer', 'play', 'device-monitor']] +
['lib/libgst%s-1.0.%s' % (x, SHLIB_EXT) for x in ['app', 'audio', 'video']],
'dirs': ['include', 'share']
}
moduleclass = 'vis'
easyblock = 'CMakeMake'
name = 'glog'
version = '0.6.0'
homepage = 'https://github.com/google/glog'
description = "A C++ implementation of the Google logging module."
toolchain = {'name': 'GCCcore', 'version': '11.3.0'}
toolchainopts = {'cstd': 'c++11'}
source_urls = ['https://github.com/google/glog/archive/']
sources = ['v%(version)s.tar.gz']
checksums = ['8a83bf982f37bb70825df71a9709fa90ea9f4447fb3c099e1d720a439d88bad6']
builddependencies = [
('binutils', '2.38'),
('CMake', '3.23.1')
]
dependencies = [
('gflags', '2.2.2'),
('libunwind', '1.6.2'),
]
configopts = '-DBUILD_SHARED_LIBS=ON '
sanity_check_paths = {
'files': ['include/glog/logging.h', 'include/glog/raw_logging.h', 'lib/libglog.%s' % SHLIB_EXT],
'dirs': [],
}
moduleclass = 'devel'
easyblock = "PythonPackage"
name = 'h5py'
version = '3.7.0'
versionsuffix = '-serial'
homepage = 'http://www.h5py.org/'
description = """HDF5 for Python (h5py) is a general-purpose Python interface to the Hierarchical Data Format library,
version 5. HDF5 is a versatile, mature scientific software library designed for the fast, flexible storage of enormous
amounts of data.
"""
toolchain = {'name': 'GCCcore', 'version': '11.3.0'}
sources = [SOURCE_TAR_GZ]
checksums = ['3fcf37884383c5da64846ab510190720027dca0768def34dd8dcb659dbe5cbf3']
builddependencies = [
('binutils', '2.38'),
('pkgconfig', '1.5.5', '-python')]
dependencies = [
('Python', '3.10.4'),
('SciPy-bundle', '2022.05', '', ('gcccoremkl', '11.3.0-2022.1.0')),
('HDF5', '1.12.2', '-serial'),
]
use_pip = True
sanity_pip_check = True
download_dep_fail = True
# h5py's setup.py will disable setup_requires if H5PY_SETUP_REQUIRES is set to 0
# without this environment variable, pip will fetch the minimum numpy version h5py supports during install,
# even though SciPy-bundle provides a newer version that satisfies h5py's install_requires dependency.
preinstallopts = 'HDF5_MPI=OFF HDF5_DIR="$EBROOTHDF5" H5PY_SETUP_REQUIRES=0 '
moduleclass = 'data'
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment