Skip to content
Snippets Groups Projects
Commit 4f9fef50 authored by Alexandre Strube's avatar Alexandre Strube
Browse files

Graphviz

parent 73f28f81
No related branches found
No related tags found
No related merge requests found
easyblock = 'ConfigureMake'
name = 'Graphviz'
version = '5.0.0'
local_pyver_major = '3'
homepage = 'https://www.graphviz.org/'
description = """Graphviz is open source graph visualization software. Graph visualization
is a way of representing structural information as diagrams of
abstract graphs and networks. It has important applications in networking,
bioinformatics, software engineering, database and web design, machine learning,
and in visual interfaces for other technical domains."""
toolchain = {'name': 'GCCcore', 'version': '11.3.0'}
toolchainopts = {'cstd': 'c++11'}
source_urls = ['https://gitlab.com/graphviz/graphviz/-/archive/%(version)s']
sources = [SOURCELOWER_TAR_GZ]
patches = ['%(name)s-%(version)s_skip-install-data-hook.patch']
checksums = [
'f8cc576694ae93659f453b6b4a4c2f04572a90cfccdca2d4271f2e7c60bb3d60', # graphviz-5.0.0.tar.gz
'4cafb6eac6f59fa4e90cef6e83c276ad5e4e24b10992b18d4b51c6d28dfe4ca1', # Graphviz-5.0.0_skip-install-data-hook.patch
]
builddependencies = [
('Autotools', '20220317'),
('binutils', '2.38'),
('Bison', '3.8.2'),
('flex', '2.6.4'),
('SWIG', '4.0.2'),
('pkgconf', '1.8.0'),
]
dependencies = [
('Java', '11', '', SYSTEM),
('Python', '3.10.4'),
('FriBidi', '1.0.12'),
('Gdk-Pixbuf', '2.42.8'),
('Ghostscript', '9.56.1'),
('GTS', '0.7.6'),
('libgd', '2.3.3'),
('Pango', '1.50.7'),
('Perl', '5.34.1'),
('Qt5', '5.15.5'),
('Tcl', '8.6.12'),
('zlib', '1.2.12'),
('bzip2', '1.0.8'),
('libjpeg-turbo', '2.1.3'),
('expat', '2.4.8'),
]
preconfigopts = './autogen.sh NOCONFIG && '
configopts = '--enable-python%s=yes ' % local_pyver_major
configopts += '--enable-guile=no --enable-lua=no --enable-ocaml=no '
configopts += '--enable-r=no --enable-ruby=no --enable-php=no '
# Use ltdl from libtool in EB
configopts += '--enable-ltdl --without-included-ltdl --disable-ltdl-install '
configopts += '--with-ltdl-include=$EBROOTLIBTOOL/include --with-ltdl-lib=$EBROOTLIBTOOL/lib '
# Override the hardcoded paths to Java libraries
configopts += '--with-javaincludedir=$JAVA_HOME/include --with-javaincludedir=$JAVA_HOME/include/linux '
configopts += '--with-javalibdir=$JAVA_HOME/lib'
configopts += '--with-expatincludedir=$EBROOTEXPAT/include --with-expatlibdir=$EBROOTEXPAT/lib'
configopts += '--with-zincludedir=$EBROOTZLIB/include --with-zlibdir=$EBROOTZLIB/lib'
prebuildopts = 'qmake -o cmd/gvedit/qMakefile cmd/gvedit/gvedit.pro && '
postinstallcmds = ['%(installdir)s/bin/dot -c'] # Writes plugin configuration
sanity_check_paths = {
'files': ['bin/%s' % x for x in ['acyclic', 'bcomps', 'ccomps', 'cluster', 'diffimg', 'dijkstra', 'dot',
'dot_builtins', 'edgepaint', 'gc', 'gml2gv', 'graphml2gv', 'gv2gml',
'gvcolor', 'gvedit', 'gvgen', 'gvmap', 'gvmap.sh', 'gvpack', 'gvpr', 'gxl2gv',
'neato', 'mm2gv', 'nop', 'prune', 'sccmap', 'tred', 'unflatten',
'vimdot']] +
['lib/%s.%s' % (x, SHLIB_EXT) for x in ['libcdt', 'libcgraph', 'libgvc', 'libgvpr', 'liblab_gamut',
'libpathplan', 'libxdot']],
'dirs': ['include', 'lib/graphviz', 'lib/graphviz/java', 'lib/graphviz/python%s' % local_pyver_major,
'lib/pkgconfig', 'share']
}
sanity_check_commands = [
("test ! -d $EBROOTTCL/lib/*/graphviz", ''),
("test ! -d $EBROOTTCL/lib64/*/graphviz", ''),
('python', '-c "import gv"'),
]
modextrapaths = {
'CLASSPATH': 'lib/graphviz/java',
'LD_LIBRARY_PATH': 'lib/graphviz/java',
'PYTHONPATH': 'lib/graphviz/python%s' % local_pyver_major,
'TCLLIBPATH': 'lib/graphviz/tcl',
}
moduleclass = 'vis'
don't create directories and install language bindings in non-owned directories
author: Kenneth Hoste (HPC-UGent)
update version 2.42.2: Alex Domingo (VUB)
update version 5.0.0: Simon Pinches
diff -Nru graphviz-5.0.0-orig/tclpkg/Makefile.am graphviz-5.0.0/tclpkg/Makefile.am
--- graphviz-5.0.0-orig/tclpkg/Makefile.am 2022-07-07 17:40:57.000000000 +0200
+++ graphviz-5.0.0/tclpkg/Makefile.am 2022-08-09 11:38:18.162458502 +0200
@@ -33,87 +33,7 @@
# ./configure --prefix=$HOME/graphviz; make; make install
# without root privileges.
install-data-hook:
-if WITH_LUA
- -mkdir -p $(DESTDIR)$(LUA_INSTALL_DIR);
- if test -w $(DESTDIR)$(LUA_INSTALL_DIR); then \
- (cd $(DESTDIR)$(LUA_INSTALL_DIR); \
- cp -f $(DESTDIR)$(pkgluadir)/libgv_lua.so gv.so;) \
- else \
- echo "Warning: $(LUA_INSTALL_DIR) is not writable."; \
- echo "Skipping system installation of lua binding."; \
- fi
-endif
-if WITH_PERL
- -mkdir -p $(DESTDIR)$(PERL_INSTALL_DIR);
- if test -w $(DESTDIR)$(PERL_INSTALL_DIR); then \
- (cd $(DESTDIR)$(PERL_INSTALL_DIR); \
- cp -f $(DESTDIR)$(pkgperldir)/libgv_perl.so gv.so; \
- cp -f $(DESTDIR)$(pkgperldir)/gv.pm gv.pm;) \
- else \
- echo "Warning: $(PERL_INSTALL_DIR) is not writable."; \
- echo "Skipping system installation of perl binding."; \
- fi
-endif
-if WITH_PHP
- -mkdir -p $(DESTDIR)$(PHP_INSTALL_DIR);
- if test -w $(DESTDIR)$(PHP_INSTALL_DIR); then \
- (cd $(DESTDIR)$(PHP_INSTALL_DIR); \
- cp -f $(DESTDIR)$(pkgphpdir)/libgv_php.so gv.so;) \
- else \
- echo "Warning: $(PHP_INSTALL_DIR) is not writable."; \
- echo "Skipping system installation of php binding."; \
- fi
- -mkdir -p $(DESTDIR)$(PHP_INSTALL_DATADIR);
- if test -w $(DESTDIR)$(PHP_INSTALL_DATADIR); then \
- (cd $(DESTDIR)$(PHP_INSTALL_DATADIR); \
- cp -f $(DESTDIR)$(pkgphpdir)/gv.php gv.php;) \
- else \
- echo "Warning: $(PHP_INSTALL_DATADIR) is not writable."; \
- echo "Skipping system installation of php binding."; \
- fi
-endif
-if WITH_PYTHON
- -mkdir -p $(DESTDIR)$(PYTHON_INSTALL_DIR);
- if test -w $(DESTDIR)$(PYTHON_INSTALL_DIR); then \
- (cd $(DESTDIR)$(PYTHON_INSTALL_DIR); \
- cp -f $(DESTDIR)$(pkgpythondir)/libgv_python.so _gv.so; \
- cp -f $(DESTDIR)$(pkgpythondir)/gv.py gv.py;) \
- else \
- echo "Warning: $(PYTHON_INSTALL_DIR) is not writable."; \
- echo "Skipping system installation of python binding."; \
- fi
-endif
-if WITH_PYTHON3
- -mkdir -p $(DESTDIR)$(PYTHON3_INSTALL_DIR);
- if test -w $(DESTDIR)$(PYTHON3_INSTALL_DIR); then \
- (cd $(DESTDIR)$(PYTHON3_INSTALL_DIR); \
- cp -f $(DESTDIR)$(pkgpython3dir)/libgv_python3.so _gv.so; \
- cp -f $(DESTDIR)$(pkgpython3dir)/gv.py gv.py;) \
- else \
- echo "Warning: $(PYTHON3_INSTALL_DIR) is not writable."; \
- echo "Skipping system installation of python3 binding."; \
- fi
-endif
-if WITH_RUBY
- -mkdir -p $(DESTDIR)$(RUBY_INSTALL_DIR);
- if test -w $(DESTDIR)$(RUBY_INSTALL_DIR); then \
- (cd $(DESTDIR)$(RUBY_INSTALL_DIR); \
- cp -f $(DESTDIR)$(pkgrubydir)/libgv_ruby.so gv.so;) \
- else \
- echo "Warning: $(RUBY_INSTALL_DIR) is not writable."; \
- echo "Skipping system installation of ruby binding."; \
- fi
-endif
-if WITH_TCL
- -mkdir -p $(DESTDIR)$(TCL_INSTALL_DIR);
- if test -w $(DESTDIR)$(TCL_INSTALL_DIR)/; then \
- (cd $(DESTDIR)$(TCL_INSTALL_DIR); \
- cp -rf $(DESTDIR)$(pkgtcldir) $(PACKAGE_NAME);) \
- else \
- echo "Warning: $(TCL_INSTALL_DIR) is not writable."; \
- echo "Skipping system installation of tcl bindings."; \
- fi
-endif
+ echo "(installing in non-owned directories has been patched out)"
endif
# removal of installs into $(xxx_INSTALL_DIR) fail if root
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment