Commit 9b472b64 authored by Julien Muchembled's avatar Julien Muchembled

components: do not harcode version of wanted python/gcc when any one works

See merge request !720
parents dfb63db3 79e10cb2
Pipeline #9109 failed with stage
in 0 seconds
[buildout] [buildout]
extends = extends =
../gcc/buildout.cfg
../numpy/openblas.cfg ../numpy/openblas.cfg
../cython/buildout.cfg ../cython/buildout.cfg
../scipy/buildout.cfg ../scipy/buildout.cfg
...@@ -20,8 +19,6 @@ setup-eggs = ...@@ -20,8 +19,6 @@ setup-eggs =
${scipy:egg} ${scipy:egg}
${cython:egg} ${cython:egg}
rpath = rpath =
${gcc:location}/lib
${gcc:location}/lib64
${openblas:location}/lib ${openblas:location}/lib
[PyWavelets-repository] [PyWavelets-repository]
...@@ -42,6 +39,4 @@ setup-eggs = ...@@ -42,6 +39,4 @@ setup-eggs =
${numpy:egg} ${numpy:egg}
${scipy:egg} ${scipy:egg}
rpath = rpath =
${gcc:location}/lib
${gcc:location}/lib64
${openblas:location}/lib ${openblas:location}/lib
...@@ -105,15 +105,14 @@ toolchain { ...@@ -105,15 +105,14 @@ toolchain {
target_system_name: "local" target_system_name: "local"
toolchain_identifier: "local_linux" toolchain_identifier: "local_linux"
tool_path { name: "ar" path: "{{ binutils_path }}/ar" } tool_path { name: "ar" path: "{{ binutils_location }}/bin/ar" }
tool_path { name: "compat-ld" path: "{{ binutils_path }}/ld" } tool_path { name: "compat-ld" path: "{{ gcc_location }}/bin/ld" }
tool_path { name: "cpp" path: "{{ cpp_path }}" } tool_path { name: "cpp" path: "{{ gcc_location }}/bin/cpp" }
tool_path { name: "dwp" path: "/usr/bin/dwp" } tool_path { name: "dwp" path: "/usr/bin/dwp" }
tool_path { name: "gcc" path: "{{ gcc_path }}" } tool_path { name: "gcc" path: "{{ gcc_location }}/bin/gcc" }
cxx_flag: "-std=c++0x" cxx_flag: "-std=c++0x"
linker_flag: "-lstdc++" linker_flag: "-lstdc++"
linker_flag: "-B/usr/bin/" linker_flag: "-B/usr/bin/"
linker_flag: "-Wl,rpath={{ gcc_lib64_path }}"
# TODO(bazel-team): In theory, the path here ought to exactly match the path # TODO(bazel-team): In theory, the path here ought to exactly match the path
# used by gcc. That works because bazel currently doesn't track files at # used by gcc. That works because bazel currently doesn't track files at
...@@ -122,19 +121,19 @@ toolchain { ...@@ -122,19 +121,19 @@ toolchain {
cxx_builtin_include_directory: "/usr/lib/gcc/" cxx_builtin_include_directory: "/usr/lib/gcc/"
cxx_builtin_include_directory: "/usr/local/include" cxx_builtin_include_directory: "/usr/local/include"
cxx_builtin_include_directory: "/usr/include" cxx_builtin_include_directory: "/usr/include"
cxx_builtin_include_directory: "{{ include_path }}" cxx_builtin_include_directory: "{{ gcc_location }}/include"
tool_path { name: "gcov" path: "{{ gconv_path }}" } tool_path { name: "gcov" path: "{{ gcc_location }}/bin/gconv" }
# C(++) compiles invoke the compiler (as that is the one knowing where # C(++) compiles invoke the compiler (as that is the one knowing where
# to find libraries), but we provide LD so other rules can invoke the linker. # to find libraries), but we provide LD so other rules can invoke the linker.
tool_path { name: "ld" path: "{{ binutils_path }}/ld" } tool_path { name: "ld" path: "{{ gcc_location }}/bin/ld" }
tool_path { name: "nm" path: "{{ binutils_path }}/nm" } tool_path { name: "nm" path: "{{ binutils_location }}/bin/nm" }
tool_path { name: "objcopy" path: "{{ binutils_path }}/objcopy" } tool_path { name: "objcopy" path: "{{ binutils_location }}/bin/objcopy" }
objcopy_embed_flag: "-I" objcopy_embed_flag: "-I"
objcopy_embed_flag: "binary" objcopy_embed_flag: "binary"
tool_path { name: "objdump" path: "{{ binutils_path }}/objdump" } tool_path { name: "objdump" path: "{{ binutils_location }}/bin/objdump" }
tool_path { name: "strip" path: "{{ binutils_path }}/strip" } tool_path { name: "strip" path: "{{ binutils_location }}/bin/strip" }
# Anticipated future default. # Anticipated future default.
unfiltered_cxx_flag: "-no-canonical-prefixes" unfiltered_cxx_flag: "-no-canonical-prefixes"
......
[buildout] [buildout]
extends = extends =
../gcc/buildout.cfg ../defaults.cfg
../unzip/buildout.cfg ../unzip/buildout.cfg
../zip/buildout.cfg ../zip/buildout.cfg
parts = parts =
...@@ -22,19 +22,9 @@ mode = 640 ...@@ -22,19 +22,9 @@ mode = 640
filename = bazel_tools_cpp_CROSSTOOL filename = bazel_tools_cpp_CROSSTOOL
template = ${:_profile_base_location_}/${:filename}.in template = ${:_profile_base_location_}/${:filename}.in
rendered = ${:location}/${:filename} rendered = ${:location}/${:filename}
cpp_path = ${gcc:location}/bin/cpp
gcc_path = ${gcc:location}/bin/gcc
binutils_path = ${binutils:location}/bin
gconv_path = ${gcc:location}/bin/gconv
include_path = ${gcc:location}/include
gcc_lib64_path = ${gcc:location}/lib64
context = context =
key cpp_path template-bazel-crosstool:cpp_path key gcc_location gcc:prefix
key gcc_path template-bazel-crosstool:gcc_path key binutils_location binutils:location
key binutils_path template-bazel-crosstool:binutils_path
key gconv_path template-bazel-crosstool:gconv_path
key include_path template-bazel-crosstool:include_path
key gcc_lib64_path template-bazel-crosstool:gcc_lib64_path
[template-bazel-src-main-cpp-build] [template-bazel-src-main-cpp-build]
recipe = slapos.recipe.template:jinja2 recipe = slapos.recipe.template:jinja2
...@@ -43,9 +33,11 @@ mode = 640 ...@@ -43,9 +33,11 @@ mode = 640
filename = bazel_src_main_cpp_BUILD filename = bazel_src_main_cpp_BUILD
template = ${:_profile_base_location_}/${:filename}.in template = ${:_profile_base_location_}/${:filename}.in
rendered = ${:location}/${:filename} rendered = ${:location}/${:filename}
linkopts = -Wl,-rpath,${gcc:location}/lib64 # We previously passed an argument that we don't want anymore. Rather than
# changing templates, we pass a dummy argument that will have no effect.
linkopts = -DSLAPOS_DUMMY=
context = context =
key linkopts template-bazel-src-main-cpp-build:linkopts key linkopts :linkopts
[template-bazel-src-main-tools-build] [template-bazel-src-main-tools-build]
<= template-bazel-src-main-cpp-build <= template-bazel-src-main-cpp-build
...@@ -67,9 +59,6 @@ bazel-src-main-tools-build-path = ${template-bazel-src-main-tools-build:rendered ...@@ -67,9 +59,6 @@ bazel-src-main-tools-build-path = ${template-bazel-src-main-tools-build:rendered
bazel-src-tools-singlejar-build-path = ${template-bazel-src-tools-singlejar-build:rendered} bazel-src-tools-singlejar-build-path = ${template-bazel-src-tools-singlejar-build:rendered}
unzip-bin = ${unzip:location}/bin unzip-bin = ${unzip:location}/bin
zip-bin = ${zip:location}/bin zip-bin = ${zip:location}/bin
gcc-bin = ${gcc:location}/bin
gcc-lib = ${gcc:location}/lib
gcc-lib64 = ${gcc:location}/lib64
java_home = ${zulu:location} java_home = ${zulu:location}
bazelrc = ${:_profile_base_location_}/bazelrc bazelrc = ${:_profile_base_location_}/bazelrc
install = install =
...@@ -98,19 +87,10 @@ install = ...@@ -98,19 +87,10 @@ install =
path = ':'.join(( path = ':'.join((
options['unzip-bin'], options['unzip-bin'],
options['zip-bin'], options['zip-bin'],
options['gcc-bin'],
os.environ['PATH'] os.environ['PATH']
)) ))
env = {'JAVA_HOME':options['java_home'], env = {'JAVA_HOME':options['java_home'],
'PATH':path, 'PATH':path,
'LD_LIBRARY_PATH':':'.join((
options['gcc-lib'],
options['gcc-lib64'],
os.environ.get('LD_LIBRARY_PATH', '')
)),
'LDFLAGS':'-Wl,-rpath='+options['gcc-lib64'],
'CC':options['gcc-bin']+'/gcc',
'CXX':options['gcc-bin']+'/g++',
'BAZELRC':options['bazelrc'], 'BAZELRC':options['bazelrc'],
'VERBOSE':'yes', 'VERBOSE':'yes',
} }
......
...@@ -3,7 +3,6 @@ parts = ...@@ -3,7 +3,6 @@ parts =
boost-lib boost-lib
extends = extends =
../bzip2/buildout.cfg ../bzip2/buildout.cfg
../gcc/buildout.cfg
../zlib/buildout.cfg ../zlib/buildout.cfg
../xz-utils/buildout.cfg ../xz-utils/buildout.cfg
...@@ -13,13 +12,12 @@ shared = true ...@@ -13,13 +12,12 @@ shared = true
url = http://downloads.sourceforge.net/sourceforge/boost/boost_1_67_0.tar.bz2 url = http://downloads.sourceforge.net/sourceforge/boost/boost_1_67_0.tar.bz2
md5sum = ced776cb19428ab8488774e1415535ab md5sum = ced776cb19428ab8488774e1415535ab
location = @@LOCATION@@ location = @@LOCATION@@
configure-command = ./bootstrap.sh --prefix=${:location} --with-python=${python2.7:location}/bin/python2.7 --without-icu configure-command = ./bootstrap.sh --prefix=${:location} --without-icu
make-binary = make-binary =
make-options = make-options =
make-targets = for a in $MAKEFLAGS; do case $a in -j*) j=$a; break;; esac; done; make-targets = for a in $MAKEFLAGS; do case $a in -j*) j=$a; break;; esac; done;
./b2 $j link=shared dll-path=${:location}/lib:${bzip2:location}/lib:${gcc:location}/lib:${gcc:location}/lib64:${zlib:location}/lib:${xz-utils:location}/lib install ./b2 $j link=shared dll-path=${:location}/lib:${bzip2:location}/lib:${xz-utils:location}/lib:${zlib:location}/lib install
environment = environment =
PATH=${gcc:location}/bin:%(PATH)s
BZIP2_INCLUDE=${bzip2:location}/include BZIP2_INCLUDE=${bzip2:location}/include
BZIP2_LIBPATH=${bzip2:location}/lib BZIP2_LIBPATH=${bzip2:location}/lib
ZLIB_INCLUDE=${zlib:location}/include ZLIB_INCLUDE=${zlib:location}/include
......
...@@ -8,8 +8,6 @@ parts = ...@@ -8,8 +8,6 @@ parts =
[gowork] [gowork]
# Caddy 1.x+ uses go modules, for which gowork does not work yet # Caddy 1.x+ uses go modules, for which gowork does not work yet
golang = ${golang1.12:location} golang = ${golang1.12:location}
gcc-bin-directory = ${golang1.12:gcc-bin-directory}
install = install =
[gowork.goinstall] [gowork.goinstall]
......
[buildout]
extends =
python-2.7/buildout.cfg
python3/buildout.cfg
python = python
# Unless a software release needs several versions of either Python or GCC
# at the same time, the [pythonX.Y] & [gcc-X.Y] must not be referred directly,
# even if a component works only with specific versions.
# There may be exceptions in profiles that were written before this one.
[python]
recipe = slapos.recipe.build
part = python2.7
init =
python = self.buildout[options['part']]
for x in 'location', 'executable', 'version':
options[x] = python[x]
update =
import os
path, os.environ['PYTHON'] = os.path.split(options['executable'])
PATH = os.environ['PATH']
if path not in PATH.split(os.pathsep):
os.environ['PATH'] = path + os.pathsep + PATH
depends = ${gcc:recipe}
[gcc]
recipe = slapos.recipe.build
# Latest version provided by SlapOS.
part = gcc-8.2
# Minimum version for all components that might be required for
# slapos.rebootstrap (see https://bugs.python.org/issue34112 about Python 3.7+).
min_version = 5.4
init =
import os, subprocess
parse_version = lambda ver: tuple(map(int, ver.strip().split('.')))
try:
current = subprocess.check_output(('gcc', '-dumpfullversion'),
stderr=subprocess.STDOUT,
universal_newlines=True).strip()
except subprocess.CalledProcessError: # BBB: old GCC
current = subprocess.check_output(('gcc', '-dumpversion'),
universal_newlines=True).strip()
self.system_version = current
# If we're still going to use the same GCC,
# the conditions have no impact on the dependant parts.
min_version = options.pop('min_version', None)
max_version = options.pop('max_version', None)
###
if (parse_version(min_version or current)
<= parse_version(current)
<= parse_version(max_version or current)):
del options['part']
for path in os.getenv('PATH', '').split(os.pathsep): # PY3: shutil.which
gcc = os.path.join(path, 'gcc')
if os.access(gcc, os.X_OK) and not os.path.isdir(gcc):
options['prefix'] = os.path.dirname(path)
break
else:
options['prefix'] = self.buildout[options['part']]['location']
options.barrier()
update =
if 'part' in options:
import os
env = os.environ
env['PATH'] = os.pathsep.join((
os.path.join(options['prefix'], 'bin'),
env['PATH']
))
else:
print("Using system GCC (%s)" % self.system_version)
...@@ -3,28 +3,19 @@ parts = ...@@ -3,28 +3,19 @@ parts =
firewalld-patch firewalld-patch
extends = extends =
../pkgconfig/buildout.cfg ../defaults.cfg
../autoconf/buildout.cfg
../automake/buildout.cfg
../libtool/buildout.cfg ../libtool/buildout.cfg
../intltool/buildout.cfg ../intltool/buildout.cfg
../gettext/buildout.cfg
../glib/buildout.cfg ../glib/buildout.cfg
../m4/buildout.cfg
../python-slip/buildout.cfg ../python-slip/buildout.cfg
../dbus/buildout.cfg ../dbus/buildout.cfg
../python-2.7/buildout.cfg
../libffi/buildout.cfg
../flex/buildout.cfg ../flex/buildout.cfg
../bison/buildout.cfg
../xz-utils/buildout.cfg
../perl/buildout.cfg
[firewalld] [firewalld]
recipe = slapos.recipe.cmmi recipe = slapos.recipe.cmmi
url = https://github.com/t-woerner/firewalld/archive/v0.3.14.2.tar.gz url = https://github.com/t-woerner/firewalld/archive/v0.3.14.2.tar.gz
md5sum = b8f81b536ede502721f69300d374447b md5sum = b8f81b536ede502721f69300d374447b
python-egg = ${buildout:parts-directory}/${:_buildout_section_name_}/lib/python2.7/site-packages python-egg = ${buildout:parts-directory}/${:_buildout_section_name_}/lib/python${python:version}/site-packages
pre-configure = pre-configure =
sed -i -E 's,(^SUBDIRS *=.*) doc(\b.*),\1\2,' Makefile.am sed -i -E 's,(^SUBDIRS *=.*) doc(\b.*),\1\2,' Makefile.am
aclocal -I${pkgconfig:location}/share/aclocal -I${gettext:location}/share/aclocal -I${libtool:location}/share/aclocal aclocal -I${pkgconfig:location}/share/aclocal -I${gettext:location}/share/aclocal -I${libtool:location}/share/aclocal
...@@ -35,7 +26,6 @@ environment = ...@@ -35,7 +26,6 @@ environment =
PATH=${autoconf:location}/bin:${automake:location}/bin:${pkgconfig:location}/bin:${libtool:location}/bin:${intltool:location}/bin:${gettext:location}/bin:${glib:location}/bin:${perl:location}/bin:%(PATH)s PATH=${autoconf:location}/bin:${automake:location}/bin:${pkgconfig:location}/bin:${libtool:location}/bin:${intltool:location}/bin:${gettext:location}/bin:${glib:location}/bin:${perl:location}/bin:%(PATH)s
CPPFLAGS=-I${gettext:location}/include CPPFLAGS=-I${gettext:location}/include
LDFLAGS=-L${gettext:location}/lib -Wl,-rpath=${gettext:location}/lib LDFLAGS=-L${gettext:location}/lib -Wl,-rpath=${gettext:location}/lib
PYTHON=${python2.7:location}/bin/python2.7
M4=${m4:location}/bin/m4 M4=${m4:location}/bin/m4
ACLOCAL_PATH=${pkgconfig:location}/share/aclocal:${gettext:location}/share/aclocal:${libtool:location}/share/aclocal:${glib:location}/share/aclocal:${intltool:location}/share/aclocal ACLOCAL_PATH=${pkgconfig:location}/share/aclocal:${gettext:location}/share/aclocal:${libtool:location}/share/aclocal:${glib:location}/share/aclocal:${intltool:location}/share/aclocal
FIREWALLD_DEVEL_ENV=${buildout:parts-directory}/${:_buildout_section_name_}/src FIREWALLD_DEVEL_ENV=${buildout:parts-directory}/${:_buildout_section_name_}/src
...@@ -46,19 +36,16 @@ recipe = slapos.recipe.cmmi ...@@ -46,19 +36,16 @@ recipe = slapos.recipe.cmmi
version = 1.2.4 version = 1.2.4
url = http://dbus.freedesktop.org/releases/dbus-python/dbus-python-${:version}.tar.gz url = http://dbus.freedesktop.org/releases/dbus-python/dbus-python-${:version}.tar.gz
md5sum = 7372a588c83a7232b4e08159bfd48fe5 md5sum = 7372a588c83a7232b4e08159bfd48fe5
python-egg = ${buildout:parts-directory}/${:_buildout_section_name_}/lib/python2.7/site-packages python-egg = ${buildout:parts-directory}/${:_buildout_section_name_}/lib/python${python:version}/site-packages
environment = environment =
PKG_CONFIG_PATH=${dbus:location}/lib/pkgconfig:${dbus-glib:location}/lib/pkgconfig:${glib:location}/lib/pkgconfig:${pcre:location}/lib/pkgconfig PKG_CONFIG_PATH=${dbus:location}/lib/pkgconfig:${dbus-glib:location}/lib/pkgconfig:${glib:location}/lib/pkgconfig:${pcre:location}/lib/pkgconfig
PATH=${pkgconfig:location}/bin:${python2.7:location}/bin:%(PATH)s PATH=${pkgconfig:location}/bin:%(PATH)s
DBUS_CFLAGS=-I${dbus:location}/include/dbus-1.0 -I${dbus:location}/lib/dbus-1.0/include DBUS_CFLAGS=-I${dbus:location}/include/dbus-1.0 -I${dbus:location}/lib/dbus-1.0/include
DBUS_LIBS=-L${dbus:location}/lib -ldbus-1 DBUS_LIBS=-L${dbus:location}/lib -ldbus-1
DBUS_GLIB_CFLAGS=-I${dbus-glib:location}/include/dbus-1.0 DBUS_GLIB_CFLAGS=-I${dbus-glib:location}/include/dbus-1.0
DBUS_GLIB_LIBS=-L${dbus-glib:location}/lib -ldbus-glib-1 DBUS_GLIB_LIBS=-L${dbus-glib:location}/lib -ldbus-glib-1
CPPFLAGS=-I${glib:location}/include/glib-2.0 -I${glib:location}/lib/glib-2.0/include CPPFLAGS=-I${glib:location}/include/glib-2.0 -I${glib:location}/lib/glib-2.0/include
LDFLAGS=-L${glib:location}/lib -Wl,-rpath=${glib:location}/lib LDFLAGS=-L${glib:location}/lib -Wl,-rpath=${glib:location}/lib
PYTHON=${python2.7:location}/bin/python2.7
PYTHON_INCLUDES=-I${python2.7:location}/include/python2.7
PYTHON_LIBS=-L${python2.7:location}/lib -lpython2.7 -lpthread -ldl -lutil -lm
[gobject-introspection] [gobject-introspection]
recipe = slapos.recipe.cmmi recipe = slapos.recipe.cmmi
...@@ -72,7 +59,6 @@ environment = ...@@ -72,7 +59,6 @@ environment =
PKG_CONFIG_PATH=${glib:location}/lib/pkgconfig:${pcre:location}/lib/pkgconfig PKG_CONFIG_PATH=${glib:location}/lib/pkgconfig:${pcre:location}/lib/pkgconfig
CPPFLAGS=-I${glib:location}/include/glib-2.0 -I${glib:location}/lib/glib-2.0/include CPPFLAGS=-I${glib:location}/include/glib-2.0 -I${glib:location}/lib/glib-2.0/include
LDFLAGS=-L${glib:location}/lib -Wl,-rpath=${glib:location}/lib -L${libffi:location}/lib -Wl,-rpath=${libffi:location}/lib -lffi LDFLAGS=-L${glib:location}/lib -Wl,-rpath=${glib:location}/lib -L${libffi:location}/lib -Wl,-rpath=${libffi:location}/lib -lffi
PYTHON=${python2.7:location}/bin/python2.7
GLIB_CFLAGS=-I${glib:location}/include/glib-2.0 -I${glib:location}/lib/glib-2.0/include GLIB_CFLAGS=-I${glib:location}/include/glib-2.0 -I${glib:location}/lib/glib-2.0/include
GLIB_LIBS=-L${glib:location}/lib -lglib-2.0 -lintl -lgobject-2.0 GLIB_LIBS=-L${glib:location}/lib -lglib-2.0 -lintl -lgobject-2.0
FFI_CFLAGS=-I${libffi:location}/include FFI_CFLAGS=-I${libffi:location}/include
...@@ -82,19 +68,17 @@ environment = ...@@ -82,19 +68,17 @@ environment =
[pygobject3] [pygobject3]
recipe = slapos.recipe.cmmi recipe = slapos.recipe.cmmi
url = http://ftp.gnome.org/pub/gnome/core/3.22/3.22.2/sources/pygobject-3.22.0.tar.xz url = http://ftp.gnome.org/pub/gnome/core/3.22/3.22.2/sources/pygobject-3.22.0.tar.xz
python-egg = ${buildout:parts-directory}/${:_buildout_section_name_}/lib/python2.7/site-packages python-egg = ${buildout:parts-directory}/${:_buildout_section_name_}/lib/python${python:version}/site-packages
md5sum = ed4117ed5d554d25fd7718807fbf819f md5sum = ed4117ed5d554d25fd7718807fbf819f
pre-configure = pre-configure =
sed -i 's#/usr/local#${gobject-introspection:location}#g' ${gobject-introspection:location}/lib/pkgconfig/gobject-introspection-1.0.pc sed -i 's#/usr/local#${gobject-introspection:location}#g' ${gobject-introspection:location}/lib/pkgconfig/gobject-introspection-1.0.pc
configure-options = configure-options =
--disable-static --disable-static
--disable-cairo --disable-cairo
--with-python=${python2.7:location}/bin/python2.7
environment = environment =
PATH=${pkgconfig:location}/bin:${libtool:location}/bin:${glib:location}/bin:${xz-utils:location}/bin:%(PATH)s PATH=${pkgconfig:location}/bin:${libtool:location}/bin:${glib:location}/bin:${xz-utils:location}/bin:%(PATH)s
PKG_CONFIG_PATH=${glib:location}/lib/pkgconfig:${gobject-introspection:location}/lib/pkgconfig:${pcre:location}/lib/pkgconfig PKG_CONFIG_PATH=${glib:location}/lib/pkgconfig:${gobject-introspection:location}/lib/pkgconfig:${pcre:location}/lib/pkgconfig
PYTHON=${python2.7:location}/bin/python2.7
FFI_CFLAGS=-I${libffi:location}/include FFI_CFLAGS=-I${libffi:location}/include
FFI_LIBS=-L${libffi:location}/lib -Wl,-rpath=${libffi:location}/lib -lffi FFI_LIBS=-L${libffi:location}/lib -Wl,-rpath=${libffi:location}/lib -lffi
CPPFLAGS=-I${glib:location}/include/glib-2.0 -I${glib:location}/lib/glib-2.0/include -I${gettext:location}/include -I${libffi:location}/include CPPFLAGS=-I${glib:location}/include/glib-2.0 -I${glib:location}/lib/glib-2.0/include -I${gettext:location}/include -I${libffi:location}/include
...@@ -115,13 +99,13 @@ md5sum = 893752ba2e93a1e96334dfee19f884ad ...@@ -115,13 +99,13 @@ md5sum = 893752ba2e93a1e96334dfee19f884ad
[firewalld-patch] [firewalld-patch]
recipe = plone.recipe.command recipe = plone.recipe.command
python = ${buildout:directory}/bin/${firewalld-eggs:interpreter} python = ${buildout:bin-directory}/${firewalld-eggs:interpreter}
command = command =
sed -i 's#/usr/bin/python -Es#${:python}#' ${firewalld:location}/bin/firewall-cmd sed -i 's#/usr/bin/python -Es#${:python}#' ${firewalld:location}/bin/firewall-cmd
sed -i 's#/usr/bin/python -Es#${:python}#' ${firewalld:location}/sbin/firewalld sed -i 's#/usr/bin/python -Es#${:python}#' ${firewalld:location}/sbin/firewalld
sed -i 's#DefaultZone=public#DefaultZone=trusted#' ${firewalld:location}/etc/firewalld/firewalld.conf sed -i 's#DefaultZone=public#DefaultZone=trusted#' ${firewalld:location}/etc/firewalld/firewalld.conf
sed -i 's#/usr/lib/firewalld#${firewalld:location}/lib/firewalld#' ${firewalld:location}/lib/python2.7/site-packages/firewall/config/__init__.py sed -i 's#/usr/lib/firewalld#${firewalld:location}/lib/firewalld#' ${firewalld:python-egg}/firewall/config/__init__.py
sed -i 's#/usr/share/#${firewalld:location}/share#' ${firewalld:location}/lib/python2.7/site-packages/firewall/config/__init__.py sed -i 's#/usr/share/#${firewalld:location}/share#' ${firewalld:python-egg}/firewall/config/__init__.py
sed -i "s#import sys#import sys, os\n\nos.environ['GI_TYPELIB_PATH'] = '${gobject-introspection:location}/lib/girepository-1.0/'#" ${:python} sed -i "s#import sys#import sys, os\n\nos.environ['GI_TYPELIB_PATH'] = '${gobject-introspection:location}/lib/girepository-1.0/'#" ${:python}
sed -i 's#<syslog/>#<!-- no syslog -->#' ${dbus:location}/etc/dbus-1/system.conf sed -i 's#<syslog/>#<!-- no syslog -->#' ${dbus:location}/etc/dbus-1/system.conf
sed -i 's#<user>messagebus</user>#<user>slapsoft</user>#' ${dbus:location}/share/dbus-1/system.conf sed -i 's#<user>messagebus</user>#<user>slapsoft</user>#' ${dbus:location}/share/dbus-1/system.conf
......
...@@ -11,12 +11,16 @@ extends = ...@@ -11,12 +11,16 @@ extends =
../zlib/buildout.cfg ../zlib/buildout.cfg
parts = parts =
gcc gcc-8.2
[gcc-common] [gcc-common]
recipe = slapos.recipe.cmmi recipe = slapos.recipe.cmmi
shared = true shared = true
url = http://ftp.gnu.org/gnu/gcc/gcc-${:version}/gcc-${:version}.tar.xz url = http://ftp.gnu.org/gnu/gcc/gcc-${:version}/gcc-${:version}.tar.xz
pre-configure =
set %(location)s/bin
mkdir -p $1
ln -s ${binutils:location}/bin/ld $1/ld
configure-options = configure-options =
--disable-bootstrap --disable-bootstrap
--disable-multilib --disable-multilib
...@@ -25,17 +29,33 @@ configure-options = ...@@ -25,17 +29,33 @@ configure-options =
--with-mpc=${mpc:location} --with-mpc=${mpc:location}
--enable-languages="c,c++,fortran" --enable-languages="c,c++,fortran"
--with-isl=${isl:location} --with-isl=${isl:location}
--with-ld=${binutils:location}/bin/ld --with-ld=@@LOCATION@@/bin/ld
--with-as=${binutils:location}/bin/as --with-as=${binutils:location}/bin/as
post-install = post-install =
cd '@@LOCATION@@/bin' cd '%(location)s/bin'
ln -s gcc cc ln -s gcc cc
rm ld
for x in `for x in %(location)s/lib*/*.so; do echo $${x%%/*}; done |sort -u`
do set $1:$x "$2 -rpath=$x"
done
cat <<EOF >ld
#!/bin/sh -e
case \$#:\$1 in 0:|1:-*) ;; *)
if [ "\$LD_RUN_PATH" ]
then LD_RUN_PATH=\$LD_RUN_PATH$1
else set -- "\$@" $2
fi
;;
esac
exec ${binutils:location}/bin/ld "\$@"
EOF
chmod +x ld
environment = environment =
CPPFLAGS=-I${zlib:location}/include CPPFLAGS=-I${zlib:location}/include
LDFLAGS=-Wl,-rpath=${gmp:location}/lib -Wl,-rpath=${isl:location}/lib -Wl,-rpath=${mpc:location}/lib -Wl,-rpath=${mpfr:location}/lib -L${zlib:location}/lib -Wl,-rpath=${zlib:location}/lib LDFLAGS=-Wl,-rpath=${gmp:location}/lib -Wl,-rpath=${isl:location}/lib -Wl,-rpath=${mpc:location}/lib -Wl,-rpath=${mpfr:location}/lib -L${zlib:location}/lib -Wl,-rpath=${zlib:location}/lib
PATH=${binutils:location}/bin:${gettext:location}/bin:${perl:location}/bin:${tar:location}/bin:%(PATH)s PATH=${binutils:location}/bin:${gettext:location}/bin:${perl:location}/bin:${tar:location}/bin:%(PATH)s
[gcc] [gcc-5.5]
<= gcc-common <= gcc-common
version = 5.5.0 version = 5.5.0
md5sum = 0f70424213b4a1113c04ba66ddda0c1f md5sum = 0f70424213b4a1113c04ba66ddda0c1f
...@@ -52,7 +72,7 @@ version = 8.2.0 ...@@ -52,7 +72,7 @@ version = 8.2.0
md5sum = 4ab282f414676496483b3e1793d07862 md5sum = 4ab282f414676496483b3e1793d07862
[gcc-minimal] [gcc-minimal]
<= gcc <= gcc-5.5
configure-options = configure-options =
--disable-bootstrap --disable-bootstrap
--disable-multilib --disable-multilib
......
...@@ -6,18 +6,9 @@ extends = ...@@ -6,18 +6,9 @@ extends =
../perl/buildout.cfg ../perl/buildout.cfg
../xz-utils/buildout.cfg ../xz-utils/buildout.cfg
../zlib/buildout.cfg ../zlib/buildout.cfg
../python-2.7/buildout.cfg
parts = parts =
glib glib
# --with-python=${buildout:executable} is simpler but we may end up with
# scripts whose shebang exceeds the kernel limit.
# And ${buildout:executable}/.. is not a valid $PATH part.
[glib-python]
recipe = collective.recipe.shelloutput
commands =
bin-directory = dirname ${buildout:executable}
[glib] [glib]
recipe = slapos.recipe.cmmi recipe = slapos.recipe.cmmi
patches = patches =
...@@ -27,7 +18,6 @@ shared = true ...@@ -27,7 +18,6 @@ shared = true
url = https://ftp.gnome.org/pub/gnome/sources/glib/2.56/glib-2.56.4.tar.xz url = https://ftp.gnome.org/pub/gnome/sources/glib/2.56/glib-2.56.4.tar.xz
md5sum = 17c3dca43d99a4882384f1a7b530b80b md5sum = 17c3dca43d99a4882384f1a7b530b80b
configure-options = configure-options =
--with-python=python
--disable-libmount --disable-libmount
--disable-static --disable-static
--disable-selinux --disable-selinux
...@@ -35,7 +25,7 @@ configure-options = ...@@ -35,7 +25,7 @@ configure-options =
--disable-xattr --disable-xattr
--disable-man --disable-man
environment = environment =
PATH=${glib-python:bin-directory}:${gettext:location}/bin:${perl:location}/bin:${xz-utils:location}/bin:%(PATH)s PATH=${gettext:location}/bin:${perl:location}/bin:${xz-utils:location}/bin:%(PATH)s
CPPFLAGS=-I${gettext:location}/include -I${zlib:location}/include CPPFLAGS=-I${gettext:location}/include -I${zlib:location}/include
LDFLAGS=-L${gettext:location}/lib -Wl,-rpath=${gettext:location}/lib -L${zlib:location}/lib -Wl,-rpath=${zlib:location}/lib LDFLAGS=-L${gettext:location}/lib -Wl,-rpath=${gettext:location}/lib -L${zlib:location}/lib -Wl,-rpath=${zlib:location}/lib
LIBFFI_CFLAGS=-I${libffi:location}/include LIBFFI_CFLAGS=-I${libffi:location}/include
......
[buildout] [buildout]
extends = extends =
../gcc/buildout.cfg
../gettext/buildout.cfg ../gettext/buildout.cfg
../glib/buildout.cfg ../glib/buildout.cfg
../libsigc/buildout.cfg ../libsigc/buildout.cfg
...@@ -19,8 +18,7 @@ pkg_config_depends = ${glib:location}/lib/pkgconfig:${libsigc:location}/lib/pkgc ...@@ -19,8 +18,7 @@ pkg_config_depends = ${glib:location}/lib/pkgconfig:${libsigc:location}/lib/pkgc
configure-options = configure-options =
--disable-documentation --disable-documentation
environment = environment =
PATH=${gcc:location}/bin:${perl:location}/bin:${pkgconfig:location}/bin:${xz-utils:location}/bin:${glib:location}/bin:%(PATH)s PATH=${perl:location}/bin:${pkgconfig:location}/bin:${xz-utils:location}/bin:${glib:location}/bin:%(PATH)s
PKG_CONFIG_PATH=${:pkg_config_depends} PKG_CONFIG_PATH=${:pkg_config_depends}
CPPFLAGS=-I${gettext:location}/include CPPFLAGS=-I${gettext:location}/include
LD_LIBRARY_PATH=${gcc:location}/lib:${gcc:location}/lib64 LDFLAGS=-L${gettext:location}/lib -Wl,-rpath=${gettext:location}/lib
LDFLAGS=-Wl,-rpath=${gcc:location}/lib -Wl,-rpath=${gcc:location}/lib64 -L${gettext:location}/lib -Wl,-rpath=${gettext:location}/lib
...@@ -17,12 +17,9 @@ configure-command = : ...@@ -17,12 +17,9 @@ configure-command = :
location = @@LOCATION@@ location = @@LOCATION@@
make-binary = make-binary =
make-targets= cd src && ./all.bash && cp -alf .. ${:location} make-targets= cd src && ./all.bash && cp -alf .. ${:location}
# gcc version to use
gcc-bin-directory = ${gcc-8.2:location}/bin
# some testdata files have an issue with slapos.extension.strip. # some testdata files have an issue with slapos.extension.strip.
post-install = ${findutils:location}/bin/find ${:location}/src -type d -name testdata -exec rm -rf {} \; || true post-install = ${findutils:location}/bin/find ${:location}/src -type d -name testdata -exec rm -rf {} \; || true
environment = environment =
PATH=${:gcc-bin-directory}:%(PATH)s
GOROOT_FINAL=${:location} GOROOT_FINAL=${:location}
${:environment-extra} ${:environment-extra}
...@@ -106,9 +103,6 @@ depends = ${gowork.goinstall:recipe} ...@@ -106,9 +103,6 @@ depends = ${gowork.goinstall:recipe}
# go version used for the workspace (possible to override in applications) # go version used for the workspace (possible to override in applications)
golang = ${golang1.10:location} golang = ${golang1.10:location}
# gcc version must be compatible with go version selected
gcc-bin-directory = ${golang1.10:gcc-bin-directory}
# no special build flags by default # no special build flags by default
buildflags = buildflags =
...@@ -120,7 +114,6 @@ recipe = plone.recipe.command ...@@ -120,7 +114,6 @@ recipe = plone.recipe.command
command = : command = :
# env.sh for compiling and running go programs # env.sh for compiling and running go programs
[gowork]
env.sh = ${gowork-env.sh:output} env.sh = ${gowork-env.sh:output}
[gowork-env.sh] [gowork-env.sh]
...@@ -128,7 +121,7 @@ recipe = slapos.recipe.template ...@@ -128,7 +121,7 @@ recipe = slapos.recipe.template
url = ${:_profile_base_location_}/goenv.sh.in url = ${:_profile_base_location_}/goenv.sh.in
output = ${gowork:directory}/env.sh output = ${gowork:directory}/env.sh
depends = ${gowork.mkdir:recipe} depends = ${gowork.mkdir:recipe}
md5sum = 7eaad1f9aabd3cfad554975098c5d4c3 md5sum = 6bcf96cf18ea68ce6e378ed8d49346a3
[gowork.mkdir] [gowork.mkdir]
# NOTE do not use slapos.cookbook:mkdirectory here - if anything in software (not instance) # NOTE do not use slapos.cookbook:mkdirectory here - if anything in software (not instance)
......
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
# ---- 8< ---- (buildout substitution here) # ---- 8< ---- (buildout substitution here)
# PATH so that go & friends work out of the box # PATH so that go & friends work out of the box
export PATH=${gowork:golang}/bin:${git:location}/bin:${pkgconfig:location}/bin:${buildout:bin-directory}:${gowork:gcc-bin-directory}:$PATH export PATH=${gowork:golang}/bin:${git:location}/bin:${pkgconfig:location}/bin:${buildout:bin-directory}:${gcc:prefix}/bin:$PATH
X=${gowork:directory} X=${gowork:directory}
export PKG_CONFIG_PATH=$(echo -n "${gowork:cpkgpath}" |tr '\n' ':'):$PKG_CONFIG_PATH export PKG_CONFIG_PATH=$(echo -n "${gowork:cpkgpath}" |tr '\n' ':'):$PKG_CONFIG_PATH
......
...@@ -107,7 +107,6 @@ shared = true ...@@ -107,7 +107,6 @@ shared = true
url = https://download.gnome.org/sources/atk/2.28/atk-2.28.1.tar.xz url = https://download.gnome.org/sources/atk/2.28/atk-2.28.1.tar.xz
md5sum = dfb5e7474220afa3f4ca7e45af9f3a11 md5sum = dfb5e7474220afa3f4ca7e45af9f3a11
configure-options = configure-options =
--with-python=${python2.7:location}/bin/python2.7
--disable-gtk-doc-html --disable-gtk-doc-html
environment = environment =
PATH=${gettext:location}/bin:${glib:location}/bin:${pkgconfig:location}/bin:${xz-utils:location}/bin:%(PATH)s PATH=${gettext:location}/bin:${glib:location}/bin:${pkgconfig:location}/bin:${xz-utils:location}/bin:%(PATH)s
......
...@@ -2,7 +2,6 @@ ...@@ -2,7 +2,6 @@
extends = extends =
../bzip2/buildout.cfg ../bzip2/buildout.cfg
../freetype/buildout.cfg ../freetype/buildout.cfg
../gcc/buildout.cfg
../gettext/buildout.cfg ../gettext/buildout.cfg
../glibmm/buildout.cfg ../glibmm/buildout.cfg
../gtk-2/buildout.cfg ../gtk-2/buildout.cfg
...@@ -23,11 +22,10 @@ configure-options = ...@@ -23,11 +22,10 @@ configure-options =
--disable-static --disable-static
--disable-documentation --disable-documentation
environment = environment =
PATH=${freetype:location}/bin:${gcc:location}/bin:${perl:location}/bin:${pkgconfig:location}/bin:${xz-utils:location}/bin:%(PATH)s PATH=${freetype:location}/bin:${perl:location}/bin:${pkgconfig:location}/bin:${xz-utils:location}/bin:%(PATH)s
PKG_CONFIG_PATH=${:pkg_config_depends} PKG_CONFIG_PATH=${:pkg_config_depends}
CPPFLAGS=-I${libX11:location}/include -I${libXrender:location}/include -I${renderext:location}/include -I${xproto:location}/include CPPFLAGS=-I${libX11:location}/include -I${libXrender:location}/include -I${renderext:location}/include -I${xproto:location}/include
LD_LIBRARY_PATH=${gcc:location}/lib:${gcc:location}/lib64 LDFLAGS=-L${libX11:location}/lib -Wl,-rpath=${libX11:location}/lib -L${libXext:location}/lib -Wl,-rpath=${libXext:location}/lib -L${libXrender:location}/lib -Wl,-rpath=${libXrender:location}/lib -L${zlib:location}/lib -Wl,-rpath=${zlib:location}/lib
LDFLAGS=-Wl,-rpath=${gcc:location}/lib -Wl,-rpath=${gcc:location}/lib64 -L${libX11:location}/lib -Wl,-rpath=${libX11:location}/lib -L${libXext:location}/lib -Wl,-rpath=${libXext:location}/lib -L${libXrender:location}/lib -Wl,-rpath=${libXrender:location}/lib -L${zlib:location}/lib -Wl,-rpath=${zlib:location}/lib
[pangomm] [pangomm]
recipe = slapos.recipe.cmmi recipe = slapos.recipe.cmmi
...@@ -38,10 +36,9 @@ configure-options = ...@@ -38,10 +36,9 @@ configure-options =
--disable-static --disable-static
--disable-documentation --disable-documentation
environment = environment =
PATH=${gcc:location}/bin:${glib:location}/bin:${freetype:location}/bin:${perl:location}/bin:${pkgconfig:location}/bin:${xz-utils:location}/bin:%(PATH)s PATH=${glib:location}/bin:${freetype:location}/bin:${perl:location}/bin:${pkgconfig:location}/bin:${xz-utils:location}/bin:%(PATH)s
PKG_CONFIG_PATH=${:pkg_config_depends} PKG_CONFIG_PATH=${:pkg_config_depends}
LD_LIBRARY_PATH=${gcc:location}/lib:${gcc:location}/lib64 LDFLAGS=-L${gettext:location}/lib -Wl,-rpath=${gettext:location}/lib -L${harfbuzz:location}/lib -Wl,-rpath=${harfbuzz:location}/lib
LDFLAGS=-Wl,-rpath=${gcc:location}/lib -Wl,-rpath=${gcc:location}/lib64 -L${gettext:location}/lib -Wl,-rpath=${gettext:location}/lib -L${harfbuzz:location}/lib -Wl,-rpath=${harfbuzz:location}/lib
[atkmm] [atkmm]
recipe = slapos.recipe.cmmi recipe = slapos.recipe.cmmi
...@@ -52,10 +49,9 @@ configure-options = ...@@ -52,10 +49,9 @@ configure-options =
--disable-static --disable-static
--disable-documentation --disable-documentation
environment = environment =
PATH=${gcc:location}/bin:${glib:location}/bin:${perl:location}/bin:${pkgconfig:location}/bin:${xz-utils:location}/bin:%(PATH)s PATH=${glib:location}/bin:${perl:location}/bin:${pkgconfig:location}/bin:${xz-utils:location}/bin:%(PATH)s
PKG_CONFIG_PATH=${:pkg_config_depends} PKG_CONFIG_PATH=${:pkg_config_depends}
LD_LIBRARY_PATH=${gcc:location}/lib:${gcc:location}/lib64 LDFLAGS=-L${gettext:location}/lib -Wl,-rpath=${gettext:location}/lib
LDFLAGS=-Wl,-rpath=${gcc:location}/lib -Wl,-rpath=${gcc:location}/lib64 -L${gettext:location}/lib -Wl,-rpath=${gettext:location}/lib
[gtkmm] [gtkmm]
recipe = slapos.recipe.cmmi recipe = slapos.recipe.cmmi
...@@ -66,7 +62,6 @@ configure-options = ...@@ -66,7 +62,6 @@ configure-options =
--disable-static --disable-static
--disable-documentation --disable-documentation
environment = environment =
PATH=${gcc:location}/bin:${gdk-pixbuf:location}/bin:${glib:location}/bin:${gtk-2:location}/bin:${pango:location}/bin:${perl:location}/bin:${pkgconfig:location}/bin:${xz-utils:location}/bin:%(PATH)s PATH=${gdk-pixbuf:location}/bin:${glib:location}/bin:${gtk-2:location}/bin:${pango:location}/bin:${perl:location}/bin:${pkgconfig:location}/bin:${xz-utils:location}/bin:%(PATH)s
PKG_CONFIG_PATH=${:pkg_config_depends} PKG_CONFIG_PATH=${:pkg_config_depends}
LD_LIBRARY_PATH=${gcc:location}/lib:${gcc:location}/lib64 LDFLAGS=-L${bzip2:location}/lib -Wl,-rpath=${bzip2:location}/lib -L${gettext:location}/lib -Wl,-rpath=${gettext:location}/lib -L${zlib:location}/lib -Wl,-rpath=${zlib:location}/lib -L${harfbuzz:location}/lib -Wl,-rpath=${harfbuzz:location}/lib
LDFLAGS=-L${bzip2:location}/lib -Wl,-rpath=${bzip2:location}/lib -Wl,-rpath=${gcc:location}/lib -Wl,-rpath=${gcc:location}/lib64 -L${gettext:location}/lib -Wl,-rpath=${gettext:location}/lib -L${zlib:location}/lib -Wl,-rpath=${zlib:location}/lib -L${harfbuzz:location}/lib -Wl,-rpath=${harfbuzz:location}/lib
...@@ -26,7 +26,6 @@ install = ...@@ -26,7 +26,6 @@ install =
lab.nexedi.com/nexedi/helloweb/go/... lab.nexedi.com/nexedi/helloweb/go/...
golang = ${golang1.12:location} golang = ${golang1.12:location}
gcc-bin-directory = ${golang1.12:gcc-bin-directory}
# -*- go -*- # -*- go -*-
[helloweb-go] [helloweb-go]
......
[buildout] [buildout]
extends =
../gcc/buildout.cfg
parts = icu4c parts = icu4c
[icu4c] [icu4c]
...@@ -17,14 +15,6 @@ configure-options = ...@@ -17,14 +15,6 @@ configure-options =
patches = patches =
${:_profile_base_location_}/fix-glibc2.26-ftbfs.patch#f1622be16964029fc66a70b8f9e1693c ${:_profile_base_location_}/fix-glibc2.26-ftbfs.patch#f1622be16964029fc66a70b8f9e1693c
[icu4c-slaposgcc]
# need for onlyoffice-core
<= icu4c
environment =
PATH=${gcc:location}/bin:%(PATH)s
LD_LIBRARY_PATH=${gcc:location}/lib:${gcc:location}/lib64
LDFLAGS=-Wl,-rpath=${gcc:location}/lib -Wl,-rpath=${gcc:location}/lib64
[icu] [icu]
<= icu4c <= icu4c
......
...@@ -6,7 +6,6 @@ extends = ...@@ -6,7 +6,6 @@ extends =
../cmake/buildout.cfg ../cmake/buildout.cfg
../freetype/buildout.cfg ../freetype/buildout.cfg
../garbage-collector/buildout.cfg ../garbage-collector/buildout.cfg
../gcc/buildout.cfg
../gettext/buildout.cfg ../gettext/buildout.cfg
../glibmm/buildout.cfg ../glibmm/buildout.cfg
../gtk-2/buildout.cfg ../gtk-2/buildout.cfg
...@@ -32,10 +31,9 @@ md5sum = bda73a3dd5ff2f30b5956764399db6e7 ...@@ -32,10 +31,9 @@ md5sum = bda73a3dd5ff2f30b5956764399db6e7
configure-options = configure-options =
--disable-static --disable-static
environment = environment =
PATH=${gcc:location}/bin:${glib:location}/bin:${pkgconfig:location}/bin:%(PATH)s PATH=${glib:location}/bin:${pkgconfig:location}/bin:%(PATH)s
PKG_CONFIG_PATH=${atk:location}/lib/pkgconfig:${glib:location}/lib/pkgconfig:${glibmm:location}/lib/pkgconfig:${libsigc:location}/lib/pkgconfig:${pcre:location}/lib/pkgconfig PKG_CONFIG_PATH=${atk:location}/lib/pkgconfig:${glib:location}/lib/pkgconfig:${glibmm:location}/lib/pkgconfig:${libsigc:location}/lib/pkgconfig:${pcre:location}/lib/pkgconfig
LD_LIBRARY_PATH=${gcc:location}/lib:${gcc:location}/lib64 LDFLAGS=-L${gettext:location}/lib -Wl,-rpath=${gettext:location}/lib
LDFLAGS=-Wl,-rpath=${gcc:location}/lib -Wl,-rpath=${gcc:location}/lib64 -L${gettext:location}/lib -Wl,-rpath=${gettext:location}/lib
[inkscape] [inkscape]
recipe = slapos.recipe.cmmi recipe = slapos.recipe.cmmi
...@@ -53,8 +51,8 @@ configure-options = ...@@ -53,8 +51,8 @@ configure-options =
-DWITH_LIBVISIO=OFF -DWITH_LIBVISIO=OFF
-DWITH_LIBWPG=OFF -DWITH_LIBWPG=OFF
environment = environment =
PATH=${cmake:location}/bin:${freetype:location}/bin:${gcc:location}/bin:${gdk-pixbuf:location}/bin:${gettext:location}/bin:${glib:location}/bin:${intltool:location}/bin:${libxml2:location}/bin:${pango:location}/bin:${perl:location}/bin:${pkgconfig:location}/bin:%(PATH)s PATH=${cmake:location}/bin:${freetype:location}/bin:${gdk-pixbuf:location}/bin:${gettext:location}/bin:${glib:location}/bin:${intltool:location}/bin:${libxml2:location}/bin:${pango:location}/bin:${perl:location}/bin:${pkgconfig:location}/bin:%(PATH)s
PKG_CONFIG_PATH=${:pkg_config_depends} PKG_CONFIG_PATH=${:pkg_config_depends}
CMAKE_INCLUDE_PATH=${boost-lib:location}/include:${freetype:location}/include:${garbage-collector:location}/include:${libjpeg:location}/include:${lcms2:location}/include:${libpng:location}/include:${zlib:location}/include CMAKE_INCLUDE_PATH=${boost-lib:location}/include:${freetype:location}/include:${garbage-collector:location}/include:${libjpeg:location}/include:${lcms2:location}/include:${libpng:location}/include:${zlib:location}/include
CMAKE_LIBRARY_PATH=${boost-lib:location}/lib:${freetype:location}/lib:${garbage-collector:location}/lib:${gcc:location}/lib:${gcc:location}/lib64:${lcms2:location}/lib:${libjpeg:location}/lib:${libpng:location}/lib:${zlib:location}/lib CMAKE_LIBRARY_PATH=${boost-lib:location}/lib:${freetype:location}/lib:${garbage-collector:location}/lib:${lcms2:location}/lib:${libjpeg:location}/lib:${libpng:location}/lib:${zlib:location}/lib
LDFLAGS=-L${atk:location}/lib -Wl,-rpath=${atk:location}/lib -L${atkmm:location}/lib -Wl,-rpath=${atkmm:location}/lib -L${boost-lib:location}/lib -Wl,-rpath=${boost-lib:location}/lib -L${bzip2:location}/lib -Wl,-rpath=${bzip2:location}/lib -L${cairo:location}/lib -Wl,-rpath=${cairo:location}/lib -L${cairomm:location}/lib -Wl,-rpath=${cairomm:location}/lib -L${fontconfig:location}/lib -Wl,-rpath=${fontconfig:location}/lib -L${freetype:location}/lib -Wl,-rpath=${freetype:location}/lib -L${garbage-collector:location}/lib -Wl,-rpath=${garbage-collector:location}/lib -Wl,-rpath=${gcc:location}/lib -Wl,-rpath=${gcc:location}/lib64 -L${gdk-pixbuf:location}/lib -Wl,-rpath=${gdk-pixbuf:location}/lib -L${gettext:location}/lib -Wl,-rpath=${gettext:location}/lib -L${glib:location}/lib -Wl,-rpath=${glib:location}/lib -L${glibmm:location}/lib -Wl,-rpath=${glibmm:location}/lib -L${gsl:location}/lib -Wl,-rpath=${gsl:location}/lib -L${gtk-2:location}/lib -Wl,-rpath=${gtk-2:location}/lib -L${gtkmm:location}/lib -Wl,-rpath=${gtkmm:location}/lib -L${lcms2:location}/lib -Wl,-rpath=${lcms2:location}/lib -L${libX11:location}/lib -Wl,-rpath=${libX11:location}/lib -L${libXext:location}/lib -Wl,-rpath=${libXext:location}/lib -L${libjpeg:location}/lib -Wl,-rpath=${libjpeg:location}/lib -L${libpng:location}/lib -Wl,-rpath=${libpng:location}/lib -L${libsigc:location}/lib -Wl,-rpath=${libsigc:location}/lib -L${libxml2:location}/lib -Wl,-rpath=${libxml2:location}/lib -L${libxslt:location}/lib -Wl,-rpath=${libxslt:location}/lib -L${pango:location}/lib -Wl,-rpath=${pango:location}/lib -L${pangomm:location}/lib -Wl,-rpath=${pangomm:location}/lib -L${popt:location}/lib -Wl,-rpath=${popt:location}/lib -L${zlib:location}/lib -Wl,-rpath=${zlib:location}/lib LDFLAGS=-L${atk:location}/lib -Wl,-rpath=${atk:location}/lib -L${atkmm:location}/lib -Wl,-rpath=${atkmm:location}/lib -L${boost-lib:location}/lib -Wl,-rpath=${boost-lib:location}/lib -L${bzip2:location}/lib -Wl,-rpath=${bzip2:location}/lib -L${cairo:location}/lib -Wl,-rpath=${cairo:location}/lib -L${cairomm:location}/lib -Wl,-rpath=${cairomm:location}/lib -L${fontconfig:location}/lib -Wl,-rpath=${fontconfig:location}/lib -L${freetype:location}/lib -Wl,-rpath=${freetype:location}/lib -L${garbage-collector:location}/lib -Wl,-rpath=${garbage-collector:location}/lib -L${gdk-pixbuf:location}/lib -Wl,-rpath=${gdk-pixbuf:location}/lib -L${gettext:location}/lib -Wl,-rpath=${gettext:location}/lib -L${glib:location}/lib -Wl,-rpath=${glib:location}/lib -L${glibmm:location}/lib -Wl,-rpath=${glibmm:location}/lib -L${gsl:location}/lib -Wl,-rpath=${gsl:location}/lib -L${gtk-2:location}/lib -Wl,-rpath=${gtk-2:location}/lib -L${gtkmm:location}/lib -Wl,-rpath=${gtkmm:location}/lib -L${lcms2:location}/lib -Wl,-rpath=${lcms2:location}/lib -L${libX11:location}/lib -Wl,-rpath=${libX11:location}/lib -L${libXext:location}/lib -Wl,-rpath=${libXext:location}/lib -L${libjpeg:location}/lib -Wl,-rpath=${libjpeg:location}/lib -L${libpng:location}/lib -Wl,-rpath=${libpng:location}/lib -L${libsigc:location}/lib -Wl,-rpath=${libsigc:location}/lib -L${libxml2:location}/lib -Wl,-rpath=${libxml2:location}/lib -L${libxslt:location}/lib -Wl,-rpath=${libxslt:location}/lib -L${pango:location}/lib -Wl,-rpath=${pango:location}/lib -L${pangomm:location}/lib -Wl,-rpath=${pangomm:location}/lib -L${popt:location}/lib -Wl,-rpath=${popt:location}/lib -L${zlib:location}/lib -Wl,-rpath=${zlib:location}/lib
...@@ -8,6 +8,10 @@ parts = jsl ...@@ -8,6 +8,10 @@ parts = jsl
recipe = slapos.recipe.build recipe = slapos.recipe.build
url = http://www.javascriptlint.com/download/jsl-0.3.0-src.tar.gz url = http://www.javascriptlint.com/download/jsl-0.3.0-src.tar.gz
md5sum = 2b94ffa4fab07acabe0c5e73cd49bcdf md5sum = 2b94ffa4fab07acabe0c5e73cd49bcdf
init =
import os
# Bypass slapos gcc if any because slapos ld can't find -lm (why?).
self.path = os.environ['PATH']
install = install =
import os import os
import sys import sys
...@@ -15,5 +19,5 @@ install = ...@@ -15,5 +19,5 @@ install =
md5sum = options['md5sum'] md5sum = options['md5sum']
extract_dir = self.extract(self.download(url, md5sum)) extract_dir = self.extract(self.download(url, md5sum))
workdir = guessworkdir(extract_dir) workdir = guessworkdir(extract_dir)
os.chdir(os.path.join(workdir, 'src')) call(('make', '-f', 'Makefile.ref', '-j1', 'DIST=' + location, 'all', 'export'),
os.system("make -f Makefile.ref -j 1 DIST='%s' all export" % location) cwd=os.path.join(workdir, 'src'), env=dict(os.environ, PATH=self.path))
...@@ -4,7 +4,6 @@ extends = ...@@ -4,7 +4,6 @@ extends =
../matplotlib/buildout.cfg ../matplotlib/buildout.cfg
../ipython/buildout.cfg ../ipython/buildout.cfg
../python-pyzmq/buildout.cfg ../python-pyzmq/buildout.cfg
../python-2.7/buildout.cfg
../scipy/buildout.cfg ../scipy/buildout.cfg
../scikit-learn/buildout.cfg ../scikit-learn/buildout.cfg
../pandas/buildout.cfg ../pandas/buildout.cfg
......
...@@ -14,7 +14,7 @@ initialization = ...@@ -14,7 +14,7 @@ initialization =
eggs = eggs =
${scipy:egg} ${scipy:egg}
${numpy:egg} ${numpy:egg}
${tensorflow-build-install-egg:egg} ${tensorflow:egg}
${protobuf-python:egg} ${protobuf-python:egg}
${python-PyYAML:egg} ${python-PyYAML:egg}
six six
...@@ -25,6 +25,10 @@ interpreter = keras-python ...@@ -25,6 +25,10 @@ interpreter = keras-python
scripts = keras-python scripts = keras-python
[versions] [versions]
backports.weakref = 1.0.post1
futures = 3.2.0
Keras = 2.1.0 Keras = 2.1.0
tensorflow = 1.4.0 markdown = 3.1.1
protobuf = 3.11.3
h5py = 2.7.0rc2 h5py = 2.7.0rc2
wheel = 0.33.6
[buildout] [buildout]
extends = extends =
../gcc/buildout.cfg
../tokyocabinet/buildout.cfg ../tokyocabinet/buildout.cfg
../messagepack/buildout.cfg ../messagepack/buildout.cfg
../openssl/buildout.cfg ../openssl/buildout.cfg
...@@ -25,7 +24,5 @@ configure-options = ...@@ -25,7 +24,5 @@ configure-options =
environment = environment =
CPPFLAGS=-I${zlib:location}/include -I${openssl:location}/include CPPFLAGS=-I${zlib:location}/include -I${openssl:location}/include
LD_LIBRARY_PATH=${gcc:location}/lib:${gcc:location}/lib64 LDFLAGS=-L${zlib:location}/lib -L${openssl:location}/lib -Wl,-rpath=${tokyocabinet:location}/lib -Wl,-rpath=${messagepack:location}/lib -Wl,-rpath=${zlib:location}/lib -Wl,-rpath=${openssl:location}/lib
LDFLAGS=-Wl,-rpath=${gcc:location}/lib -Wl,-rpath=${gcc:location}/lib64 -L${zlib:location}/lib -L${openssl:location}/lib -Wl,-rpath=${tokyocabinet:location}/lib -Wl,-rpath=${messagepack:location}/lib -Wl,-rpath=${zlib:location}/lib -Wl,-rpath=${openssl:location}/lib PATH=${patch:location}/bin:%(PATH)s
PATH=${gcc:location}/bin:${patch:location}/bin:%(PATH)s
# KumoFS is known not to build with gcc>6, so we use our own gcc which is 5.5
\ No newline at end of file
...@@ -39,5 +39,4 @@ configure-options = ...@@ -39,5 +39,4 @@ configure-options =
make-options = make-options =
-C build -C build
environment = environment =
PATH=${gcc:location}/bin:${patch:location}/bin:%(PATH)s PATH=${patch:location}/bin:%(PATH)s
LD_LIBRARY_PATH=${gcc:location}/lib:${gcc:location}/lib64
[buildout] [buildout]
extends = extends =
../gcc/buildout.cfg
../m4/buildout.cfg ../m4/buildout.cfg
../perl/buildout.cfg ../perl/buildout.cfg
../xz-utils/buildout.cfg ../xz-utils/buildout.cfg
...@@ -16,6 +15,4 @@ md5sum = 70bcbde2c900e4925d6ef4bf50954195 ...@@ -16,6 +15,4 @@ md5sum = 70bcbde2c900e4925d6ef4bf50954195
configure-options = configure-options =
--disable-documentation --disable-documentation
environment = environment =
PATH=${gcc:location}/bin:${m4:location}/bin:${perl:location}/bin:${xz-utils:location}/bin:%(PATH)s PATH=${m4:location}/bin:${perl:location}/bin:${xz-utils:location}/bin:%(PATH)s
LD_LIBRARY_PATH=${gcc:location}/lib:${gcc:location}/lib64
LDFLAGS=-Wl,-rpath=${gcc:location}/lib -Wl,-rpath=${gcc:location}/lib64
...@@ -21,7 +21,6 @@ extends = ...@@ -21,7 +21,6 @@ extends =
../xz-utils/buildout.cfg ../xz-utils/buildout.cfg
../zlib/buildout.cfg ../zlib/buildout.cfg
../unixodbc/buildout.cfg ../unixodbc/buildout.cfg
../gcc/buildout.cfg
../zstd/buildout.cfg ../zstd/buildout.cfg
parts = parts =
...@@ -69,13 +68,13 @@ configure-options = ...@@ -69,13 +68,13 @@ configure-options =
-DCMAKE_INCLUDE_PATH=${unixodbc:location}/include -DCMAKE_INCLUDE_PATH=${unixodbc:location}/include
-DCMAKE_LIBRARY_PATH=${unixodbc:location}/lib -DCMAKE_LIBRARY_PATH=${unixodbc:location}/lib
CMAKE_CFLAGS = -I${bzip2:location}/include -I${jemalloc:location}/include -I${libaio:location}/include -I${libxml2:location}/include -I${ncurses:location}/include -I${openssl:location}/include -I${pcre:location}/include -I${readline5:location}/include -I${xz-utils:location}/include -I${zlib:location}/include -I${unixodbc:location}/include -I${lz4:location}/include -I${snappy:location}/include -I${zstd:location}/include CMAKE_CFLAGS = -I${bzip2:location}/include -I${jemalloc:location}/include -I${libaio:location}/include -I${libxml2:location}/include -I${ncurses:location}/include -I${openssl:location}/include -I${pcre:location}/include -I${readline5:location}/include -I${xz-utils:location}/include -I${zlib:location}/include -I${unixodbc:location}/include -I${lz4:location}/include -I${snappy:location}/include -I${zstd:location}/include
CMAKE_LIBRARY_PATH = ${bzip2:location}/lib:${jemalloc:location}/lib:${libaio:location}/lib:${libxml2:location}/lib:${ncurses:location}/lib:${openssl:location}/lib:${pcre:location}/lib:${readline5:location}/lib:${xz-utils:location}/lib:${zlib:location}/lib:${unixodbc:location}/lib:${lz4:location}/lib:${snappy:location}/lib:${zstd:location}/lib:${gcc:location}/lib:${gcc:location}/lib64 CMAKE_LIBRARY_PATH = ${bzip2:location}/lib:${jemalloc:location}/lib:${libaio:location}/lib:${libxml2:location}/lib:${ncurses:location}/lib:${openssl:location}/lib:${pcre:location}/lib:${readline5:location}/lib:${xz-utils:location}/lib:${zlib:location}/lib:${unixodbc:location}/lib:${lz4:location}/lib:${snappy:location}/lib:${zstd:location}/lib
environment = environment =
CMAKE_PROGRAM_PATH=${cmake:location}/bin CMAKE_PROGRAM_PATH=${cmake:location}/bin
CMAKE_INCLUDE_PATH=${bzip2:location}/include:${libaio:location}/include:${libaio:location}/include:${libxml2:location}/include:${ncurses:location}/include:${openssl:location}/include:${pcre:location}/include:${readline5:location}/include:${xz-utils:location}/include:${zlib:location}/include:${unixodbc:location}/include:${lz4:location}/include:${snappy:location}/include:${zstd:location}/include CMAKE_INCLUDE_PATH=${bzip2:location}/include:${libaio:location}/include:${libaio:location}/include:${libxml2:location}/include:${ncurses:location}/include:${openssl:location}/include:${pcre:location}/include:${readline5:location}/include:${xz-utils:location}/include:${zlib:location}/include:${unixodbc:location}/include:${lz4:location}/include:${snappy:location}/include:${zstd:location}/include
CMAKE_LIBRARY_PATH=${:CMAKE_LIBRARY_PATH} CMAKE_LIBRARY_PATH=${:CMAKE_LIBRARY_PATH}
LDFLAGS=-L${bzip2:location}/lib -L${jemalloc:location}/lib -L${libaio:location}/lib -L${pcre:location}/lib -L${xz-utils:location}/lib -L${zlib:location}/lib -L${unixodbc:location}/lib -L${lz4:location}/lib -L${snappy:location}/lib -L${zstd:location}/lib LDFLAGS=-L${bzip2:location}/lib -L${jemalloc:location}/lib -L${libaio:location}/lib -L${pcre:location}/lib -L${xz-utils:location}/lib -L${zlib:location}/lib -L${unixodbc:location}/lib -L${lz4:location}/lib -L${snappy:location}/lib -L${zstd:location}/lib
PATH=${gcc:location}/bin:${patch:location}/bin:%(PATH)s PATH=${patch:location}/bin:%(PATH)s
patch-options = -p1 patch-options = -p1
patches = patches =
https://sources.debian.org/data/main/m/mariadb-10.3/1:10.3.22-0+deb10u1/debian/patches/0024-Revert-to-using-system-pcre-library.patch#1c6a0f2634f5a56122299674b77b1131 https://sources.debian.org/data/main/m/mariadb-10.3/1:10.3.22-0+deb10u1/debian/patches/0024-Revert-to-using-system-pcre-library.patch#1c6a0f2634f5a56122299674b77b1131
......
[buildout] [buildout]
extends = extends =
../automake/buildout.cfg ../automake/buildout.cfg
../libtool/buildout.cfg ../libtool/buildout.cfg
../pkgconfig/buildout.cfg ../pkgconfig/buildout.cfg
../python-2.7/buildout.cfg
parts = parts =
nghttp2 nghttp2
...@@ -18,4 +17,4 @@ pre-configure = ...@@ -18,4 +17,4 @@ pre-configure =
automake automake
autoconf autoconf
environment = environment =
PATH=${autoconf:location}/bin:${automake:location}/bin:${libtool:location}/bin:${m4:location}/bin:${python2.7:location}/bin:%(PATH)s PATH=${autoconf:location}/bin:${automake:location}/bin:${libtool:location}/bin:${m4:location}/bin:%(PATH)s
...@@ -7,7 +7,6 @@ extends = ...@@ -7,7 +7,6 @@ extends =
../openssl/buildout.cfg ../openssl/buildout.cfg
../zlib/buildout.cfg ../zlib/buildout.cfg
../python-2.7/buildout.cfg ../python-2.7/buildout.cfg
../gcc/buildout.cfg
parts = parts =
nodejs nodejs
...@@ -57,10 +56,10 @@ configure-options = ...@@ -57,10 +56,10 @@ configure-options =
--shared-openssl-libpath=${:openssl_location}/lib --shared-openssl-libpath=${:openssl_location}/lib
environment = environment =
HOME=@@LOCATION@@ HOME=@@LOCATION@@
PATH=${gcc:location}/bin:${pkgconfig:location}/bin:${python2.7:location}/bin/:%(PATH)s PATH=${pkgconfig:location}/bin:%(PATH)s
PKG_CONFIG_PATH=${:openssl_location}/lib/pkgconfig/ PKG_CONFIG_PATH=${:openssl_location}/lib/pkgconfig/
CPPFLAGS=-I${zlib:location}/include CPPFLAGS=-I${zlib:location}/include
LDFLAGS=-Wl,-rpath=${gcc:location}/lib -Wl,-rpath=${gcc:location}/lib64 -Wl,-rpath=${:openssl_location}/lib -L${zlib:location}/lib -Wl,-rpath=${zlib:location}/lib LDFLAGS=-Wl,-rpath=${:openssl_location}/lib -L${zlib:location}/lib -Wl,-rpath=${zlib:location}/lib
LD_LIBRARY_PATH=${:openssl_location}/lib LD_LIBRARY_PATH=${:openssl_location}/lib
[nodejs-8.6.0-output] [nodejs-8.6.0-output]
......
[buildout] [buildout]
extends = extends =
buildout.cfg buildout.cfg
../gcc/buildout.cfg
../openblas/buildout.cfg ../openblas/buildout.cfg
[numpy-env] [numpy-env]
PATH = ${gcc:location}/bin:%(PATH)s
OPENBLAS = ${openblas:location}/lib/libopenblas.so OPENBLAS = ${openblas:location}/lib/libopenblas.so
LAPACK = ${openblas:location}/lib/libopenblas.so LAPACK = ${openblas:location}/lib/libopenblas.so
ATLAS = ${openblas:location}/lib/libopenblas.so ATLAS = ${openblas:location}/lib/libopenblas.so
...@@ -14,6 +11,4 @@ ATLAS = ${openblas:location}/lib/libopenblas.so ...@@ -14,6 +11,4 @@ ATLAS = ${openblas:location}/lib/libopenblas.so
[numpy] [numpy]
environment = numpy-env environment = numpy-env
rpath = rpath =
${gcc:location}/lib
${gcc:location}/lib64
${openblas:location}/lib ${openblas:location}/lib
[buildout] [buildout]
extends = extends =
../binutils/buildout.cfg ../binutils/buildout.cfg
../gcc/buildout.cfg
../libxml2/buildout.cfg ../libxml2/buildout.cfg
../zlib/buildout.cfg ../zlib/buildout.cfg
../icu/buildout.cfg ../icu/buildout.cfg
...@@ -21,9 +20,9 @@ md5sum = 9cd1cd731202511e475971eee58ba7b6 ...@@ -21,9 +20,9 @@ md5sum = 9cd1cd731202511e475971eee58ba7b6
configure-command = true configure-command = true
make-targets = lib bin make-targets = lib bin
environment = environment =
PATH=${binutils:location}/bin:${gcc:location}/bin:${qt5-qmake:location}/bin:%(PATH)s PATH=${binutils:location}/bin:${qt5-qmake:location}/bin:%(PATH)s
CXXFLAGS=-I${libxml2:location}/include -I${zlib:location}/include -I${icu4c-slaposgcc:location}/include -I${boost-lib:location}/include -Wno-comment -Wno-deprecated-declarations -Wno-endif-labels -Wno-parentheses -Wno-reorder -Wno-sign-compare -Wno-switch -Wno-unknown-pragmas -Wno-unused CXXFLAGS=-I${libxml2:location}/include -I${zlib:location}/include -I${icu4c:location}/include -I${boost-lib:location}/include -Wno-comment -Wno-deprecated-declarations -Wno-endif-labels -Wno-parentheses -Wno-reorder -Wno-sign-compare -Wno-switch -Wno-unknown-pragmas -Wno-unused
LDFLAGS=-L${gcc:location}/lib -Wl,-rpath=${gcc:location}/lib -L${gcc:location}/lib64 -Wl,-rpath=${gcc:location}/lib64 -L${libxml2:location}/lib -Wl,-rpath=${libxml2:location}/lib -L${zlib:location}/lib -Wl,-rpath=${zlib:location}/lib -L${icu4c-slaposgcc:location}/lib -Wl,-rpath=${icu4c-slaposgcc:location}/lib -L${boost-lib:location}/lib -Wl,-rpath=${boost-lib:location}/lib -Wl,-rpath=${:location}/lib LDFLAGS=-L${libxml2:location}/lib -Wl,-rpath=${libxml2:location}/lib -L${zlib:location}/lib -Wl,-rpath=${zlib:location}/lib -L${icu4c:location}/lib -Wl,-rpath=${icu4c:location}/lib -L${boost-lib:location}/lib -Wl,-rpath=${boost-lib:location}/lib -Wl,-rpath=${:location}/lib
post-install = post-install =
set -x set -x
mkdir -p ${:location}/bin ${:location}/lib mkdir -p ${:location}/bin ${:location}/lib
......
...@@ -6,9 +6,6 @@ extends = ...@@ -6,9 +6,6 @@ extends =
parts = parts =
openblas openblas
extends =
../gcc/buildout.cfg
[openblas] [openblas]
recipe = slapos.recipe.cmmi recipe = slapos.recipe.cmmi
shared = true shared = true
...@@ -29,6 +26,9 @@ build-common-options = BINARY="$(uname -m | grep -q x86_64 && echo 64 || echo 32 ...@@ -29,6 +26,9 @@ build-common-options = BINARY="$(uname -m | grep -q x86_64 && echo 64 || echo 32
# TARGET=HASWELL # TARGET=HASWELL
build-ext-options = build-ext-options =
# Fortran is required for LAPACK, which is required for matplotlib.
pre-configure = type gfortran
# First try with auto-detected target and if it fails try TARGET=GENERIC. # First try with auto-detected target and if it fails try TARGET=GENERIC.
configure-command = configure-command =
make ${:build-common-options} ${:build-ext-options} || (make -j1 clean && make ${:build-common-options} TARGET=GENERIC) make ${:build-common-options} ${:build-ext-options} || (make -j1 clean && make ${:build-common-options} TARGET=GENERIC)
...@@ -37,6 +37,4 @@ make-options = ...@@ -37,6 +37,4 @@ make-options =
make-targets = make-targets =
PREFIX="@@LOCATION@@" install PREFIX="@@LOCATION@@" install
environment = environment =
PATH=${gcc:location}/bin:${patch:location}/bin:${perl:location}/bin:%(PATH)s PATH=${patch:location}/bin:${perl:location}/bin:%(PATH)s
LD_LIBRARY_PATH=${gcc:location}/lib:${gcc:location}/lib64
LDFLAGS=-Wl,-rpath=${gcc:location}/lib -Wl,-rpath=${gcc:location}/lib64
[buildout]
# Note: Locally provided gcc with gcj is used, as there is high unstability
# in how gcj is functional on many operating systems.
# Because of this the only way to have portable pdftk profile it is required
# to provide working gcj and then have it used for pdftk compilation.
extends =
../fastjar/buildout.cfg
../gcc/buildout.cfg
parts = pdftk
[pdftk-1.44-Makefile.Base.patch]
recipe = hexagonit.recipe.download
ignore-existing = true
url = ${:_profile_base_location_}/${:filename}
download-only = true
md5sum = 04a3607213e4e638c1fd993321804499
filename = pdftk-1.44-Makefile.Base.patch
[pdftk-hooks-download]
recipe = hexagonit.recipe.download
ignore-existing = true
url = ${:_profile_base_location_}/${:filename}
filename = pdftk-hooks.py
md5sum = d2a067b98953ad30ba1230f87dfb8b92
download-only = true
[pdftk]
recipe = slapos.recipe.cmmi
url = http://www.pdflabs.com/tools/pdftk-the-pdf-toolkit/pdftk-1.44-src.zip
md5sum = 9eb50fffcd621a627d387750c60982b4
configure-command = true
patches =
${pdftk-1.44-Makefile.Base.patch:location}/${pdftk-1.44-Makefile.Base.patch:filename}
patch-options = -p1
# pdftk does not work correcly with parallel building
make-options =
-j1
-f Makefile.Redhat
DEST=${buildout:parts-directory}/${:_buildout_section_name_}
pre-make-hook = ${pdftk-hooks-download:location}/${pdftk-hooks-download:filename}:pre_make_hook
environment =
PATH=${gcc-java-minimal:location}/bin:${fastjar:location}/bin:%(PATH)s
LDFLAGS=-L${gcc-java-minimal:location}/lib -Wl,-rpath=${gcc-java-minimal:location}/lib -L${gcc-java-minimal:location}/lib64 -Wl,-rpath=${gcc-java-minimal:location}/lib64
LD_LIBRARY_PATH=${gcc-java-minimal:location}/lib:${gcc-java-minimal:location}/lib64
diff --git a/pdftk/Makefile.Base b/pdftk/Makefile.Base
index 0bedd04..36a439e 100644
--- a/pdftk/Makefile.Base
+++ b/pdftk/Makefile.Base
@@ -35,22 +35,24 @@ javalib :
$(MAKE) -f Makefile -iC $(JAVALIBPATH) all
attachments.o : attachments.cc attachments.h pdftk.h $(JAVALIB)
- $(CXX) $(CPPFLAGS) $(CXXFLAGS) -I$(JAVALIBPATH) attachments.cc -c
+ $(CXX) $(CPPFLAGS) $(LDFLAGS) $(CXXFLAGS) -I$(JAVALIBPATH) attachments.cc -c
report.o : report.cc report.h pdftk.h $(JAVALIB)
- $(CXX) $(CPPFLAGS) $(CXXFLAGS) -I$(JAVALIBPATH) report.cc -c
+ $(CXX) $(CPPFLAGS) $(LDFLAGS) $(CXXFLAGS) -I$(JAVALIBPATH) report.cc -c
pdftk.o : pdftk.cc pdftk.h attachments.h report.h $(JAVALIB) $(GCJ_LOCAL_LIB_FULL)
- $(CXX) $(CPPFLAGS) $(CXXFLAGS) -I$(JAVALIBPATH) pdftk.cc -c
+ $(CXX) $(CPPFLAGS) $(LDFLAGS) $(CXXFLAGS) -I$(JAVALIBPATH) pdftk.cc -c
pdftk : pdftk.o attachments.o report.o $(JAVALIB) $(GCJ_LOCAL_LIB_FULL)
- $(CXX) $(CXXFLAGS) attachments.o report.o pdftk.o $(JAVALIB) $(GCJ_LOCAL_LIB_FULL) $(LDLIBS) -o pdftk
+ $(CXX) $(CXXFLAGS) $(LDFLAGS) attachments.o report.o pdftk.o $(JAVALIB) $(GCJ_LOCAL_LIB_FULL) $(LDLIBS) -o pdftk
install:
- /usr/bin/install pdftk /usr/local/bin
+ mkdir -p ${DEST}/bin
+ install pdftk ${DEST}/bin
uninstall:
- $(RM) $(RMFLAGS) /usr/local/bin/pdftk
+ $(RM) $(RMFLAGS) ${DEST}/pdftk
+ rmdir ${DEST}
clean:
$(RM) $(RMFLAGS) *.o
import os
def pre_make_hook(options, buildout):
# change to pdftk directory, where built process shall be done
os.chdir('pdftk')
...@@ -4,7 +4,6 @@ extends = ...@@ -4,7 +4,6 @@ extends =
../automake/buildout.cfg ../automake/buildout.cfg
../bison/buildout.cfg ../bison/buildout.cfg
../flex/buildout.cfg ../flex/buildout.cfg
../gcc/buildout.cfg
../git/buildout.cfg ../git/buildout.cfg
../boost-lib/buildout.cfg ../boost-lib/buildout.cfg
../libtool/buildout.cfg ../libtool/buildout.cfg
...@@ -28,7 +27,7 @@ configure-options = ...@@ -28,7 +27,7 @@ configure-options =
--with-dynmodules="" --with-dynmodules=""
--without-lua --without-lua
environment = environment =
PATH=${gcc:location}/bin:${make:location}/bin:${libtool:location}/bin:${pkgconfig:location}/bin:${bison:location}/bin:${flex:location}/bin:${git:location}/bin:${ragel:location}/bin:%(PATH)s PATH=${make:location}/bin:${libtool:location}/bin:${pkgconfig:location}/bin:${bison:location}/bin:${flex:location}/bin:${git:location}/bin:${ragel:location}/bin:%(PATH)s
LDFLAGS=-L${boost-lib:location}/lib -Wl,-rpath=${boost-lib:location}/lib -L${zlib:location}/lib -Wl,-rpath -Wl,${zlib:location}/lib -lz LDFLAGS=-L${boost-lib:location}/lib -Wl,-rpath=${boost-lib:location}/lib -L${zlib:location}/lib -Wl,-rpath -Wl,${zlib:location}/lib -lz
CPPFLAGS=-I${boost-lib:location}/include CPPFLAGS=-I${boost-lib:location}/include
make-target = make-target =
......
...@@ -67,10 +67,9 @@ post-install = cd '${:prefix}' && ...@@ -67,10 +67,9 @@ post-install = cd '${:prefix}' &&
sed -n 's,:#! */usr/bin/env \+python2\?$,,p' | sed -n 's,:#! */usr/bin/env \+python2\?$,,p' |
xargs -d '\n' sed -i '1s,.*,#!${:executable},' xargs -d '\n' sed -i '1s,.*,#!${:executable},'
extra-ldflags =
# the entry "-Wl,-rpath=${file:location}/lib" below is needed by python-magic, # the entry "-Wl,-rpath=${file:location}/lib" below is needed by python-magic,
# which would otherwise load the system libmagic.so with ctypes # which would otherwise load the system libmagic.so with ctypes
environment = environment =
PATH=${patch:location}/bin:${xz-utils:location}/bin:%(PATH)s PATH=${patch:location}/bin:${xz-utils:location}/bin:%(PATH)s
CPPFLAGS=-I${zlib:location}/include -I${readline:location}/include -I${libexpat:location}/include -I${libffi:location}/include -I${ncurses:location}/include -I${ncurses:location}/include/ncursesw -I${bzip2:location}/include -I${gdbm:location}/include -I${openssl:location}/include -I${sqlite3:location}/include -I${gettext:location}/include CPPFLAGS=-I${zlib:location}/include -I${readline:location}/include -I${libexpat:location}/include -I${libffi:location}/include -I${ncurses:location}/include -I${ncurses:location}/include/ncursesw -I${bzip2:location}/include -I${gdbm:location}/include -I${openssl:location}/include -I${sqlite3:location}/include -I${gettext:location}/include
LDFLAGS=-L${zlib:location}/lib -L${readline:location}/lib -L${libexpat:location}/lib -L${libffi:location}/lib -L${ncurses:location}/lib -L${bzip2:location}/lib -L${gdbm:location}/lib -L${openssl:location}/lib -L${sqlite3:location}/lib -Wl,-rpath=${zlib:location}/lib -Wl,-rpath=${readline:location}/lib -Wl,-rpath=${libexpat:location}/lib -Wl,-rpath=${libffi:location}/lib -Wl,-rpath=${ncurses:location}/lib -Wl,-rpath=${bzip2:location}/lib -Wl,-rpath=${gdbm:location}/lib -Wl,-rpath=${openssl:location}/lib -Wl,-rpath=${sqlite3:location}/lib -L${gettext:location}/lib -Wl,-rpath=${gettext:location}/lib -Wl,-rpath=${file:location}/lib ${:extra-ldflags} LDFLAGS=-L${zlib:location}/lib -L${readline:location}/lib -L${libexpat:location}/lib -L${libffi:location}/lib -L${ncurses:location}/lib -L${bzip2:location}/lib -L${gdbm:location}/lib -L${openssl:location}/lib -L${sqlite3:location}/lib -Wl,-rpath=${zlib:location}/lib -Wl,-rpath=${readline:location}/lib -Wl,-rpath=${libexpat:location}/lib -Wl,-rpath=${libffi:location}/lib -Wl,-rpath=${ncurses:location}/lib -Wl,-rpath=${bzip2:location}/lib -Wl,-rpath=${gdbm:location}/lib -Wl,-rpath=${openssl:location}/lib -Wl,-rpath=${sqlite3:location}/lib -L${gettext:location}/lib -Wl,-rpath=${gettext:location}/lib -Wl,-rpath=${file:location}/lib
[buildout] [buildout]
extends = extends =
../../stack/slapos.cfg
../gcc/buildout.cfg
../cython/buildout.cfg ../cython/buildout.cfg
../scipy/buildout.cfg ../scipy/buildout.cfg
parts = parts =
python-cocoapi-build-install-egg pycocotools
[python-cocoapi-repository] [python-cocoapi-repository]
recipe = plone.recipe.command recipe = slapos.recipe.build:gitclone
stop-on-error = true
repository = https://github.com/cocodataset/cocoapi.git repository = https://github.com/cocodataset/cocoapi.git
tag = master git-executable = ${git:location}/bin/git
git-binary = ${git:location}/bin/git revision = 0d86027d941482ae9649fb9e6e871704efc48b06
patch-binary = ${patch:location}/bin/patch
location = ${buildout:parts-directory}/${:_buildout_section_name_}
command = export HOME=${:location}; (${:git-binary} clone --quiet -b ${:tag} ${:repository} ${:location}; cd ${:location}; ${:patch-binary} -p1 -d . < ${:_profile_base_location_}/setup.py.patch ) || (rm -fr ${:location}; exit 1)
[python-cocoapi-build-interpreter] [pycocotools]
recipe = zc.recipe.egg recipe = zc.recipe.egg:develop
initialization = egg = ${:_buildout_section_name_}
import scipy.spatial.ckdtree # load our own libstdc++ explicitly at the very beginning setup = ${python-cocoapi-repository:location}/PythonAPI
eggs = environment = scipy-env
setuptools setup-eggs =
${cython:egg} ${cython:egg}
${scipy:egg}
${numpy:egg} ${numpy:egg}
interpreter = python-cocoapi-build-interpreter ${scipy:egg}
scripts = python-cocoapi-build-interpreter
location = ${buildout:parts-directory}/${:_buildout_section_name_}
[python-cocoapi-build]
recipe = slapos.recipe.build
workdir = ${python-cocoapi-repository:location}/PythonAPI
python-bin = ${buildout:bin-directory}/${python-cocoapi-build-interpreter:interpreter}
gcc-location = ${gcc:location}
install =
import os
os.makedirs(location)
workdir = options['workdir']
python_bin = options['python-bin']
gcc_location = options['gcc-location']
env = {'PATH':':'.join([gcc_location+'/bin',
os.environ['PATH']]),
'CC':gcc_location+'/bin/gcc',
'CXX':gcc_location+'/bin/g++',
}
call([python_bin, 'setup.py', 'build_ext'], cwd=workdir, env=env)
call([python_bin, 'setup.py', 'bdist_egg'], cwd=workdir, env=env)
[python-cocoapi-build-install-egg]
# BUG: This section does FS changes outside location.
recipe = slapos.recipe.build
unzip-binary = ${unzip:location}/bin/unzip
python-cocoapi-repository-path = ${python-cocoapi-repository:location}
need-python-cocoapi-build = ${python-cocoapi-build:location}
egg = pycocotools
install =
import os
os.makedirs(location)
workdir = options['python-cocoapi-repository-path']+'/PythonAPI'
egg_name = 'pycocotools-2.0-py2.7-linux-x86_64.egg'
dist_dir = os.path.join(workdir, 'dist')
dest_dir = os.path.join(self.buildout['buildout']['eggs-directory'], egg_name)
call([options['unzip-binary'], '-o', os.path.join(dist_dir, egg_name), '-d', dest_dir])
diff --git a/PythonAPI/setup.py b/PythonAPI/setup.py
index eb3d508..d619b3c 100644
--- a/PythonAPI/setup.py
+++ b/PythonAPI/setup.py
@@ -1,4 +1,5 @@
-from distutils.core import setup
+#from distutils.core import setup
+from setuptools import setup
from Cython.Build import cythonize
from distutils.extension import Extension
import numpy as np
@@ -21,4 +22,4 @@ setup(name='pycocotools',
version='2.0',
ext_modules=
cythonize(ext_modules)
- )
\ No newline at end of file
+ )
...@@ -4,6 +4,7 @@ parts = ...@@ -4,6 +4,7 @@ parts =
python-slip-egg python-slip-egg
[python-slip] [python-slip]
# BUG: This section does FS changes outside location.
recipe = slapos.recipe.cmmi recipe = slapos.recipe.cmmi
url = https://github.com/nphilipp/python-slip/releases/download/python-slip-0.6.1/python-slip-0.6.1.tar.bz2 url = https://github.com/nphilipp/python-slip/releases/download/python-slip-0.6.1/python-slip-0.6.1.tar.bz2
md5sum = a6d8ee96245fc21785d4c1c062c85f2f md5sum = a6d8ee96245fc21785d4c1c062c85f2f
......
...@@ -54,20 +54,19 @@ environment = ...@@ -54,20 +54,19 @@ environment =
[python3.6] [python3.6]
<= python3-common <= python3-common
version = 3.6
package_version = 3.6.10 package_version = 3.6.10
md5sum = 986078f11b39074be22a199e56491d98 md5sum = 986078f11b39074be22a199e56491d98
# Python 3.7 have to use gcc 8(actually, gcc 4+)
# See https://bugs.python.org/issue34112
# I think gcc 5 may meet the requirement, use gcc 8 all in one step
[python3.7] [python3.7]
<= python3-common <= python3-common
version = 3.7
package_version = 3.7.2 package_version = 3.7.2
md5sum = df6ec36011808205beda239c72f947cb md5sum = df6ec36011808205beda239c72f947cb
patch-options = patch-options =
patches = patches =
environment = environment =
PATH=${gcc-8.2:location}/bin::${xz-utils:location}/bin:%(PATH)s PATH=${xz-utils:location}/bin:%(PATH)s
CPPFLAGS=-I${zlib:location}/include -I${xz-utils:location}/include -I${readline:location}/include -I${libexpat:location}/include -I${libffi:location}/include -I${ncurses:location}/include -I${ncurses:location}/include/ncursesw -I${bzip2:location}/include -I${gdbm:location}/include -I${openssl:location}/include -I${sqlite3:location}/include -I${gettext:location}/include CPPFLAGS=-I${zlib:location}/include -I${xz-utils:location}/include -I${readline:location}/include -I${libexpat:location}/include -I${libffi:location}/include -I${ncurses:location}/include -I${ncurses:location}/include/ncursesw -I${bzip2:location}/include -I${gdbm:location}/include -I${openssl:location}/include -I${sqlite3:location}/include -I${gettext:location}/include
LDFLAGS=-L${zlib:location}/lib -L${xz-utils:location}/lib -L${readline:location}/lib -L${libexpat:location}/lib -L${libffi:location}/lib -L${ncurses:location}/lib -L${bzip2:location}/lib -L${gdbm:location}/lib -L${openssl:location}/lib -L${sqlite3:location}/lib -Wl,-rpath=${zlib:location}/lib -Wl,-rpath=${xz-utils:location}/lib -Wl,-rpath=${readline:location}/lib -Wl,-rpath=${libexpat:location}/lib -Wl,-rpath=${libffi:location}/lib -Wl,-rpath=${ncurses:location}/lib -Wl,-rpath=${bzip2:location}/lib -Wl,-rpath=${gdbm:location}/lib -Wl,-rpath=${openssl:location}/lib -Wl,-rpath=${sqlite3:location}/lib -L${gettext:location}/lib -Wl,-rpath=${gettext:location}/lib -Wl,-rpath=${file:location}/lib LDFLAGS=-L${zlib:location}/lib -L${xz-utils:location}/lib -L${readline:location}/lib -L${libexpat:location}/lib -L${libffi:location}/lib -L${ncurses:location}/lib -L${bzip2:location}/lib -L${gdbm:location}/lib -L${openssl:location}/lib -L${sqlite3:location}/lib -Wl,-rpath=${zlib:location}/lib -Wl,-rpath=${xz-utils:location}/lib -Wl,-rpath=${readline:location}/lib -Wl,-rpath=${libexpat:location}/lib -Wl,-rpath=${libffi:location}/lib -Wl,-rpath=${ncurses:location}/lib -Wl,-rpath=${bzip2:location}/lib -Wl,-rpath=${gdbm:location}/lib -Wl,-rpath=${openssl:location}/lib -Wl,-rpath=${sqlite3:location}/lib -L${gettext:location}/lib -Wl,-rpath=${gettext:location}/lib -Wl,-rpath=${file:location}/lib
LD_LIBRARY_PATH=${libpng:location}/lib:${gcc-8.2:location}/lib:${gcc-8.2:location}/lib64 # LD_LIBRARY_PATH=${libpng:location}/lib
\ No newline at end of file
[buildout] [buildout]
extends = extends =
../../stack/slapos.cfg
../gcc/buildout.cfg
../openblas/buildout.cfg ../openblas/buildout.cfg
../cmake/buildout.cfg ../cmake/buildout.cfg
../python-cffi/buildout.cfg ../python-cffi/buildout.cfg
...@@ -10,20 +8,25 @@ extends = ...@@ -10,20 +8,25 @@ extends =
../pillow/buildout.cfg ../pillow/buildout.cfg
../scipy/buildout.cfg ../scipy/buildout.cfg
../matplotlib/buildout.cfg ../matplotlib/buildout.cfg
../unzip/buildout.cfg
parts = parts =
pytorch-egg torch
[pytorch-repository] [pytorch-repository]
recipe = plone.recipe.command recipe = plone.recipe.command
stop-on-error = true stop-on-error = true
repository = https://github.com/pytorch/pytorch repository = https://github.com/pytorch/pytorch
tag = master
commit = 4af66c43045a317b477918c503d105f565b4a66b commit = 4af66c43045a317b477918c503d105f565b4a66b
git-binary = ${git:location}/bin/git
patch-binary = ${patch:location}/bin/patch
location = ${buildout:parts-directory}/${:_buildout_section_name_} location = ${buildout:parts-directory}/${:_buildout_section_name_}
command = export HOME=${:location}; (${:git-binary} clone --recursive --quiet -b ${:tag} ${:repository} ${:location}; cd ${:location}; ${:git-binary} checkout ${:commit}; ${:patch-binary} -p1 -d . < ${:_profile_base_location_}/pytorch.4af66c4.patch ) || (rm -fr ${:location}; exit 1) command =
set -e
export PATH=${git:location}/bin:$PATH
( git clone --quiet -n ${:repository} ${:location}
cd ${:location}
git config submodule.recurse true
git reset --merge ${:commit}
git submodule update --init
git apply ${:_profile_base_location_}/pytorch.4af66c4.patch
) || { rm -fr ${:location}; exit 1; }
[pytorch-build-interpreter] [pytorch-build-interpreter]
recipe = zc.recipe.egg recipe = zc.recipe.egg
...@@ -42,69 +45,50 @@ interpreter = pytorch-build-interpreter ...@@ -42,69 +45,50 @@ interpreter = pytorch-build-interpreter
scripts = pytorch-build-interpreter scripts = pytorch-build-interpreter
location = ${buildout:parts-directory}/${:_buildout_section_name_} location = ${buildout:parts-directory}/${:_buildout_section_name_}
[pytorch-build] [torch]
recipe = slapos.recipe.build recipe = slapos.recipe.build
egg = ${:_buildout_section_name_}
workdir = ${pytorch-repository:location} workdir = ${pytorch-repository:location}
egg-name = ${:egg}-${versions:torch}-py${python:version}-linux-x86_64.egg
location = ${buildout:eggs-directory}/${:egg-name}
python-bin = ${buildout:bin-directory}/${pytorch-build-interpreter:interpreter} python-bin = ${buildout:bin-directory}/${pytorch-build-interpreter:interpreter}
no-cuda = 0 no-cuda = 0
cmake-bin = ${cmake:location}/bin cmake-bin = ${cmake:location}/bin
git-bin = ${git:location}/bin git-bin = ${git:location}/bin
binutils-location = ${binutils:location} binutils-location = ${binutils:location}
gcc-location = ${gcc:location}
openblas-location = ${openblas:location} openblas-location = ${openblas:location}
install = install =
import os import os, shutil
os.makedirs(location) from setuptools.archive_util import unpack_archive
workdir = options['workdir'] workdir = options['workdir']
python_bin = options['python-bin'] python_bin = options['python-bin']
binutils_location = options['binutils-location'] binutils_location = options['binutils-location']
gcc_location = options['gcc-location']
openblas_location = options['openblas-location'] openblas_location = options['openblas-location']
env = {'PYTHONPATH':workdir, env = {'PYTHONPATH':workdir,
'PATH':':'.join([options['cmake-bin'], 'PATH':':'.join([options['cmake-bin'],
options['git-bin'], options['git-bin'],
binutils_location+'/bin', binutils_location+'/bin',
gcc_location+'/bin',
os.environ['PATH']]), os.environ['PATH']]),
'CMAKE_INCLUDE_PATH':':'.join([gcc_location+'/include', 'CMAKE_INCLUDE_PATH':':'.join([binutils_location+'/include',
binutils_location+'/include',
openblas_location+'/include', openblas_location+'/include',
]), ]),
'CMAKE_LIBRARY_PATH':':'.join([gcc_location+'/lib', 'CMAKE_LIBRARY_PATH':':'.join([binutils_location+'/lib',
gcc_location+'/lib64',
binutils_location+'/lib',
openblas_location+'/lib', openblas_location+'/lib',
]), ]),
'CC':gcc_location+'/bin/gcc',
'CXX':gcc_location+'/bin/g++',
'PYTORCH_PYTHON':python_bin, 'PYTORCH_PYTHON':python_bin,
'SLAPOS_COMPILE_ARGS':' '.join(['-Wl,-rpath,'+gcc_location+'/lib', 'SLAPOS_COMPILE_ARGS':'-Wl,-rpath,'+openblas_location+'/lib',
'-Wl,-rpath,'+gcc_location+'/lib64',
'-Wl,-rpath,'+binutils_location+'/lib',
'-Wl,-rpath,'+openblas_location+'/lib',
])
} }
if options.get('no-cuda') == '1': if options.get('no-cuda') == '1':
env['NO_CUDA'] = '1' env['NO_CUDA'] = '1'
call([python_bin, 'setup.py', 'build'], cwd=workdir, env=env) os.chdir(workdir)
call([python_bin, 'setup.py', 'bdist_egg'], cwd=workdir, env=env) try:
call([python_bin, 'setup.py', 'build'], env=env)
[pytorch-build-install-egg] call([python_bin, 'setup.py', 'bdist_egg'], env=env)
# BUG: This section does FS changes outside location. unpack_archive(os.path.join('dist', options['egg-name']), location)
recipe = slapos.recipe.build finally:
unzip-binary = ${unzip:location}/bin/unzip for d in 'build', 'dist':
pytorch-repository-path = ${pytorch-repository:location} if os.path.exists(d):
location = ${buildout:parts-directory}/${:_buildout_section_name_} shutil.rmtree(d)
need-pytorch-build = ${pytorch-build:location}
egg = torch
install =
import os
os.makedirs(location)
workdir = options['pytorch-repository-path']
egg_name = 'torch-0.2.0+4af66c4-py2.7-linux-x86_64.egg'
dist_dir = os.path.join(workdir, 'dist')
dest_dir = os.path.join(self.buildout['buildout']['eggs-directory'], egg_name)
call([options['unzip-binary'], '-o', os.path.join(dist_dir, egg_name), '-d', dest_dir])
[pytorch-egg] [pytorch-egg]
recipe = zc.recipe.egg recipe = zc.recipe.egg
...@@ -114,9 +98,9 @@ eggs = ...@@ -114,9 +98,9 @@ eggs =
${scipy:egg} ${scipy:egg}
${numpy:egg} ${numpy:egg}
${python-PyYAML:egg} ${python-PyYAML:egg}
${pytorch-build-install-egg:egg} ${torch:egg}
${pillow-python:egg} ${pillow-python:egg}
${python-cocoapi-build-install-egg:egg} ${pycocotools:egg}
${matplotlib:egg} ${matplotlib:egg}
six six
torchvision torchvision
...@@ -125,3 +109,4 @@ scripts = pytorch-python ...@@ -125,3 +109,4 @@ scripts = pytorch-python
[versions] [versions]
torchvision = 0.1.6 torchvision = 0.1.6
torch = 0.2.0+4af66c4
[buildout] [buildout]
extends = extends =
../xorg/buildout.cfg ../xorg/buildout.cfg
../gcc/buildout.cfg
parts = parts =
qt4-qmake qt4-qmake
...@@ -23,9 +22,8 @@ configure-options = ...@@ -23,9 +22,8 @@ configure-options =
-no-opengl -no-opengl
-nomake examples -nomake examples
environment = environment =
PATH=${gcc:location}/bin:%(PATH)s
CPPFLAGS=-I${libX11:location}/include -I${xproto:location}/include -I${libXext:location}/include CPPFLAGS=-I${libX11:location}/include -I${xproto:location}/include -I${libXext:location}/include
LDFLAGS=-L${gcc:location}/lib -Wl,-rpath=${gcc:location}/lib -L${gcc:location}/lib64 -Wl,-rpath=${gcc:location}/lib64 -L${libX11:location}/lib -Wl,-rpath=${libX11:location}/lib -L${xproto:location}/lib -Wl,-rpath=${xproto:location}/lib -L${libXext:location}/lib -Wl,-rpath=${libXext:location}/lib LDFLAGS=-L${libX11:location}/lib -Wl,-rpath=${libX11:location}/lib -L${xproto:location}/lib -Wl,-rpath=${xproto:location}/lib -L${libXext:location}/lib -Wl,-rpath=${libXext:location}/lib
make-binary = true make-binary = true
post-install = post-install =
mkdir -p ${:location}/bin mkdir -p ${:location}/bin
......
[buildout] [buildout]
extends = extends =
../bzip2/buildout.cfg ../bzip2/buildout.cfg
../gcc/buildout.cfg
../openblas/buildout.cfg ../openblas/buildout.cfg
../pcre/buildout.cfg ../pcre/buildout.cfg
../readline/buildout.cfg ../readline/buildout.cfg
...@@ -32,6 +31,5 @@ configure-options = ...@@ -32,6 +31,5 @@ configure-options =
--without-ICU --without-ICU
--without-x --without-x
environment = environment =
PATH=${gcc:location}/bin:%(PATH)s
CPPFLAGS=-I${bzip2:location}/include -I${openblas:location}/include -I${pcre:location}/include -I${readline:location}/include -I${ncurses:location}/include -I${xz-utils:location}/include -I${zlib:location}/include CPPFLAGS=-I${bzip2:location}/include -I${openblas:location}/include -I${pcre:location}/include -I${readline:location}/include -I${ncurses:location}/include -I${xz-utils:location}/include -I${zlib:location}/include
LDFLAGS=-L${bzip2:location}/lib -Wl,-rpath=${bzip2:location}/lib -L${gcc:location}/lib -Wl,-rpath=${gcc:location}/lib -L${gcc:location}/lib64 -Wl,-rpath=${gcc:location}/lib64 -L${ncurses:location}/lib -Wl,-rpath=${ncurses:location}/lib -L${openblas:location}/lib -Wl,-rpath=${openblas:location}/lib -L${pcre:location}/lib -Wl,-rpath=${pcre:location}/lib -L${readline:location}/lib -Wl,-rpath=${readline:location}/lib -L${xz-utils:location}/lib -Wl,-rpath=${xz-utils:location}/lib -L${zlib:location}/lib -Wl,-rpath=${zlib:location}/lib LDFLAGS=-L${bzip2:location}/lib -Wl,-rpath=${bzip2:location}/lib -L${ncurses:location}/lib -Wl,-rpath=${ncurses:location}/lib -L${openblas:location}/lib -Wl,-rpath=${openblas:location}/lib -L${pcre:location}/lib -Wl,-rpath=${pcre:location}/lib -L${readline:location}/lib -Wl,-rpath=${readline:location}/lib -L${xz-utils:location}/lib -Wl,-rpath=${xz-utils:location}/lib -L${zlib:location}/lib -Wl,-rpath=${zlib:location}/lib
[buildout] [buildout]
extends = extends =
../../component/gcc/buildout.cfg ../make/buildout.cfg
../../component/make/buildout.cfg
parts = parts =
ragel ragel
...@@ -10,10 +9,5 @@ parts = ...@@ -10,10 +9,5 @@ parts =
recipe = slapos.recipe.cmmi recipe = slapos.recipe.cmmi
url = http://www.colm.net/files/ragel/ragel-6.8.tar.gz url = http://www.colm.net/files/ragel/ragel-6.8.tar.gz
md5sum = 1bb39745ac23da449019f9f2cb4b0d01 md5sum = 1bb39745ac23da449019f9f2cb4b0d01
configure-options =
--prefix=${buildout:parts-directory}/${:_buildout_section_name_}
environment = environment =
PATH=${make:location}/bin:${gcc:location}/bin:%(PATH)s PATH=${make:location}/bin:%(PATH)s
make-target =
install
[buildout] [buildout]
extends = extends =
../defaults.cfg
../babeld/buildout.cfg ../babeld/buildout.cfg
../geoip2/buildout.cfg ../geoip2/buildout.cfg
../openvpn/buildout.cfg ../openvpn/buildout.cfg
...@@ -22,4 +23,4 @@ eggs = ...@@ -22,4 +23,4 @@ eggs =
initialization = initialization =
import os import os
os.environ['GEOIP2_MMDB'] = "${geolite2-country:location}/GeoLite2-Country.mmdb" os.environ['GEOIP2_MMDB'] = "${geolite2-country:location}/GeoLite2-Country.mmdb"
os.environ['PATH'] = "${openvpn:location}/sbin:${babeld:location}/bin:${openssl:location}/bin:${python2.7:location}/bin:" + os.environ.get('PATH', '/usr/sbin:/usr/bin:/sbin:/bin') os.environ['PATH'] = "${openvpn:location}/sbin:${babeld:location}/bin:${openssl:location}/bin:${python:location}/bin:" + os.environ.get('PATH', '/usr/sbin:/usr/bin:/sbin:/bin')
[buildout] [buildout]
extends = extends =
../gcc/buildout.cfg
../pcre/buildout.cfg ../pcre/buildout.cfg
../r-language/buildout.cfg ../r-language/buildout.cfg
../xz-utils/buildout.cfg ../xz-utils/buildout.cfg
...@@ -10,7 +9,7 @@ extends = ...@@ -10,7 +9,7 @@ extends =
# see ../manpy/buildout.cfg as an example # see ../manpy/buildout.cfg as an example
[rpy2_env] [rpy2_env]
PATH = ${gcc:location}/bin:${r-language:location}/bin:%(PATH)s PATH = ${r-language:location}/bin:%(PATH)s
[rpy2] [rpy2]
recipe = zc.recipe.egg:custom recipe = zc.recipe.egg:custom
...@@ -21,8 +20,6 @@ initialization = ...@@ -21,8 +20,6 @@ initialization =
import os import os
os.environ['PATH'] = '${r-language:location}/bin' + os.pathsep + os.environ.get('PATH', '') os.environ['PATH'] = '${r-language:location}/bin' + os.pathsep + os.environ.get('PATH', '')
rpath = rpath =
${gcc:location}/lib
${gcc:location}/lib64
${pcre:location}/lib ${pcre:location}/lib
${readline:location}/lib ${readline:location}/lib
${xz-utils:location}/lib ${xz-utils:location}/lib
......
[buildout] [buildout]
extends = extends =
../gcc/buildout.cfg
../numpy/openblas.cfg ../numpy/openblas.cfg
../cython/buildout.cfg ../cython/buildout.cfg
../scipy/buildout.cfg ../scipy/buildout.cfg
...@@ -25,8 +24,6 @@ setup-eggs = ...@@ -25,8 +24,6 @@ setup-eggs =
${pillow-python:egg} ${pillow-python:egg}
networkx networkx
rpath = rpath =
${gcc:location}/lib
${gcc:location}/lib64
${openblas:location}/lib ${openblas:location}/lib
[scikit-image-repository] [scikit-image-repository]
...@@ -50,6 +47,4 @@ setup-eggs = ...@@ -50,6 +47,4 @@ setup-eggs =
${pillow-python:egg} ${pillow-python:egg}
networkx networkx
rpath = rpath =
${gcc:location}/lib
${gcc:location}/lib64
${openblas:location}/lib ${openblas:location}/lib
[buildout] [buildout]
extends = extends =
../gcc/buildout.cfg
../cython/buildout.cfg ../cython/buildout.cfg
../numpy/openblas.cfg ../numpy/openblas.cfg
../scipy/buildout.cfg ../scipy/buildout.cfg
...@@ -19,8 +18,6 @@ setup-eggs = ...@@ -19,8 +18,6 @@ setup-eggs =
${numpy:egg} ${numpy:egg}
${scipy:egg} ${scipy:egg}
rpath = rpath =
${gcc:location}/lib
${gcc:location}/lib64
${openblas:location}/lib ${openblas:location}/lib
[scikit-learn-repository] [scikit-learn-repository]
...@@ -41,6 +38,4 @@ setup-eggs = ...@@ -41,6 +38,4 @@ setup-eggs =
${numpy:egg} ${numpy:egg}
${scipy:egg} ${scipy:egg}
rpath = rpath =
${gcc:location}/lib
${gcc:location}/lib64
${openblas:location}/lib ${openblas:location}/lib
[buildout] [buildout]
extends = extends =
../zip/buildout.cfg
../bazel/buildout.cfg ../bazel/buildout.cfg
../git/buildout.cfg
parts = parts =
slapos-cookbook-develop tensorflow_tensorboard
slapos-cookbook
tensorboard-build-install-egg
[tensorboard-repository] [tensorboard-repository]
recipe = plone.recipe.command recipe = plone.recipe.command
stop-on-error = true stop-on-error = true
repository = https://github.com/tensorflow/tensorboard repository = https://github.com/tensorflow/tensorboard
tag = 0.4.0 commit = ${versions:tensorflow-tensorboard}
git-binary = ${git:location}/bin/git
patch-binary = ${patch:location}/bin/patch
location = ${buildout:parts-directory}/${:_buildout_section_name_} location = ${buildout:parts-directory}/${:_buildout_section_name_}
command = export HOME=${:location}; (${:git-binary} clone --quiet -b ${:tag} ${:repository} ${:location}; cd ${buildout:parts-directory} ; ${:patch-binary} -p1 -d ${:_buildout_section_name_} < ${:_profile_base_location_}/0.4.0.patch ) || (rm -fr ${:location}; exit 1) command =
set -e
export PATH=${git:location}/bin:$PATH
( git clone --quiet -n ${:repository} ${:location}
cd ${:location}
git reset --merge ${:commit}
git apply ${:_profile_base_location_}/0.4.0.patch
) || { rm -fr ${:location}; exit 1; }
[tensorboard-build] [tensorflow_tensorboard]
recipe = slapos.recipe.build recipe = slapos.recipe.build
egg = ${:_buildout_section_name_}
workdir = ${tensorboard-repository:location} workdir = ${tensorboard-repository:location}
gcc-bin = ${gcc:location}/bin egg-name = ${:egg}-${versions:tensorflow-tensorboard}-py${python:version}.egg
gcc-lib = ${gcc:location}/lib location = ${buildout:eggs-directory}/${:egg-name}
gcc-lib64 = ${gcc:location}/lib64
numpy-python-command = ${buildout:bin-directory}/${numpy-egg:interpreter} numpy-python-command = ${buildout:bin-directory}/${numpy-egg:interpreter}
python27-lib = ${python2.7:location}/lib python-lib = ${python:location}/lib
java_home_bin = ${bazel:java_home}/bin java_home_bin = ${bazel:java_home}/bin
bazel-bin = ${bazel:location}/bin bazel-bin = ${bazel:location}/bin
install = install =
import os import os, shutil
os.makedirs(location) from setuptools.archive_util import unpack_archive
workdir = options['workdir'] workdir = options['workdir']
env = {'PATH':':'.join([options['gcc-bin'], env = {'PATH':':'.join([options['java_home_bin'],
options['java_home_bin'],
options['bazel-bin'], options['bazel-bin'],
os.environ['PATH']]), os.environ['PATH']]),
'COMPILER_PATH':':'.join([options['gcc-bin'],
os.environ.get('COMPILER_PATH') or '']),
'LIBRARY_PATH':':'.join([options['gcc-lib'],
options['gcc-lib64'],
os.environ.get('LIBRARY_PATH') or '']),
'PYTHON_BIN_PATH':options['numpy-python-command'], 'PYTHON_BIN_PATH':options['numpy-python-command'],
'PYTHON_LIB_PATH':options['python27-lib'], 'PYTHON_LIB_PATH':options['python-lib'],
} }
env['LD_LIBRARY_PATH'] = env['LIBRARY_PATH']
bazel_command = ['bazel', 'build', '--spawn_strategy=standalone', '--verbose_failures', '--sandbox_debug', '//tensorboard/pip_package:build_pip_package'] bazel_command = ['bazel', 'build', '--spawn_strategy=standalone', '--verbose_failures', '--sandbox_debug', '//tensorboard/pip_package:build_pip_package']
call(bazel_command, cwd=workdir, env=env) os.chdir(workdir)
try:
[tensorboard-build-install-egg] call(bazel_command, env=env)
recipe = slapos.recipe.build call(('tensorboard/pip_package/build_pip_package.sh',
unzip-binary = ${unzip:location}/bin/unzip os.path.join(workdir, 'dist')), env=env)
tensorboard-repository-path = ${tensorboard-repository:location} unpack_archive(os.path.join('dist', options['egg-name']), location)
need-tensorboard-build = ${tensorboard-build:location} finally:
egg = tensorflow-tensorboard for d in 'dist',:
bazel-bin = ${bazel:location}/bin if os.path.exists(d):
java_home_bin = ${bazel:java_home}/bin shutil.rmtree(d)
numpy-python-command = ${buildout:bin-directory}/${numpy-egg:interpreter}
install =
import os
os.makedirs(location)
workdir = options['tensorboard-repository-path']
egg_name = 'tensorflow_tensorboard-0.4.0-py2.7.egg'
dist_dir = os.path.join(workdir, 'dist')
dest_dir = os.path.join(self.buildout['buildout']['eggs-directory'], egg_name)
env = {'PATH':':'.join([options['bazel-bin'],
options['java_home_bin'],
os.environ['PATH']]),
'PYTHON_BIN_PATH':options['numpy-python-command'],
}
call(['tensorboard/pip_package/build_pip_package.sh', dist_dir], cwd=workdir, env=env)
call([options['unzip-binary'], '-o', os.path.join(dist_dir, egg_name), '-d', dest_dir])
[versions] [versions]
tensorflow-tensorboard = 0.4.0
[buildout] [buildout]
extends = extends =
../../stack/slapos.cfg
../scipy/buildout.cfg ../scipy/buildout.cfg
../zip/buildout.cfg
../bazel/buildout.cfg
../protobuf-python/buildout.cfg ../protobuf-python/buildout.cfg
../tensorboard/buildout.cfg ../tensorboard/buildout.cfg
parts = parts =
slapos-cookbook-develop tensorflow
slapos-cookbook
tensorflow-build-install-egg
[numpy-egg] [numpy-egg]
recipe = zc.recipe.egg recipe = zc.recipe.egg
...@@ -21,17 +16,22 @@ eggs = ...@@ -21,17 +16,22 @@ eggs =
${numpy:egg} ${numpy:egg}
interpreter = numpy-python interpreter = numpy-python
scripts = numpy-python scripts = numpy-python
location = ${buildout:parts-directory}/${:_buildout_section_name_}
[tensorflow-repository] [tensorflow-repository]
recipe = plone.recipe.command recipe = plone.recipe.command
stop-on-error = true stop-on-error = true
repository = https://github.com/tensorflow/tensorflow repository = https://github.com/tensorflow/tensorflow
tag = v1.4.0 commit = v${versions:tensorflow}
git-binary = ${git:location}/bin/git
patch-binary = ${patch:location}/bin/patch
location = ${buildout:parts-directory}/${:_buildout_section_name_} location = ${buildout:parts-directory}/${:_buildout_section_name_}
command = export HOME=${:location}; (${:git-binary} clone --recurse-submodules --quiet -b ${:tag} ${:repository} ${:location}; cd ${buildout:parts-directory} ; ${:patch-binary} -p1 -d ${:_buildout_section_name_} < ${:_profile_base_location_}/tensorflow-r1.4.patch ) || (rm -fr ${:location}; exit 1) command =
set -e
export PATH=${git:location}/bin:$PATH
( git clone --quiet -n ${:repository} ${:location}
cd ${:location}
git reset --merge ${:commit}
git apply ${:_profile_base_location_}/tensorflow-r1.4.patch
) || { rm -fr ${:location}; exit 1; }
[cuda] [cuda]
tf_need_cuda = 1 tf_need_cuda = 1
...@@ -41,32 +41,29 @@ tf_cuda_compute_capabilities = 5.2,6.1 ...@@ -41,32 +41,29 @@ tf_cuda_compute_capabilities = 5.2,6.1
cuda_toolkit_path = /usr/local/cuda cuda_toolkit_path = /usr/local/cuda
cudnn_install_path = /usr/local/cuda cudnn_install_path = /usr/local/cuda
[tensorflow-build] [tensorflow]
recipe = slapos.recipe.build recipe = slapos.recipe.build
egg = ${:_buildout_section_name_}
workdir = ${tensorflow-repository:location} workdir = ${tensorflow-repository:location}
gcc-bin = ${gcc:location}/bin egg-name = ${:egg}-${versions:tensorflow}-py${python:version}-linux-x86_64.egg
gcc-lib = ${gcc:location}/lib location = ${buildout:eggs-directory}/${:egg-name}
gcc-lib64 = ${gcc:location}/lib64
numpy-python-command = ${buildout:bin-directory}/${numpy-egg:interpreter} numpy-python-command = ${buildout:bin-directory}/${numpy-egg:interpreter}
python27-lib = ${python2.7:location}/lib python-lib = ${python:location}/lib
java_home_bin = ${bazel:java_home}/bin java_home_bin = ${bazel:java_home}/bin
bazel_bin = ${bazel:location}/bin bazel_bin = ${bazel:location}/bin
need_cuda = ${cuda:cuda_toolkit_path} need_cuda = ${cuda:cuda_toolkit_path}
depends =
${tensorflow_tensorboard:recipe}
${protobuf-python:egg}
install = install =
import os import os, shutil
os.makedirs(location) from setuptools.archive_util import unpack_archive
workdir = options['workdir'] workdir = options['workdir']
env = {'PATH':':'.join([options['gcc-bin'], env = {'PATH':':'.join([options['java_home_bin'],
options['java_home_bin'],
options['bazel_bin'], options['bazel_bin'],
os.environ['PATH']]), os.environ['PATH']]),
'COMPILER_PATH':':'.join([options['gcc-bin'],
os.environ.get('COMPILER_PATH') or '']),
'LIBRARY_PATH':':'.join([options['gcc-lib'],
options['gcc-lib64'],
os.environ.get('LIBRARY_PATH') or '']),
'PYTHON_BIN_PATH':options['numpy-python-command'], 'PYTHON_BIN_PATH':options['numpy-python-command'],
'PYTHON_LIB_PATH':options['python27-lib'], 'PYTHON_LIB_PATH':options['python-lib'],
'CC_OPT_FLAGS':'-march=native', 'CC_OPT_FLAGS':'-march=native',
'TF_NEED_JEMALLOC':'1', 'TF_NEED_JEMALLOC':'1',
'TF_ENABLE_XLA':'0', 'TF_ENABLE_XLA':'0',
...@@ -79,7 +76,6 @@ install = ...@@ -79,7 +76,6 @@ install =
'TF_NEED_MPI':'0', 'TF_NEED_MPI':'0',
'TF_NEED_CUDA':self.buildout['cuda']['tf_need_cuda'], 'TF_NEED_CUDA':self.buildout['cuda']['tf_need_cuda'],
##### FOR CUDA ##### ##### FOR CUDA #####
'GCC_HOST_COMPILER_PATH':os.path.join(options['gcc-bin'], 'gcc'),
'TF_CUDA_VERSION':self.buildout['cuda']['tf_cuda_version'], 'TF_CUDA_VERSION':self.buildout['cuda']['tf_cuda_version'],
'CUDA_TOOLKIT_PATH':self.buildout['cuda']['cuda_toolkit_path'], 'CUDA_TOOLKIT_PATH':self.buildout['cuda']['cuda_toolkit_path'],
'TF_CUDNN_VERSION':self.buildout['cuda']['tf_cudnn_version'], 'TF_CUDNN_VERSION':self.buildout['cuda']['tf_cudnn_version'],
...@@ -88,30 +84,21 @@ install = ...@@ -88,30 +84,21 @@ install =
#################### ####################
} }
if not os.path.exists(env['CUDA_TOOLKIT_PATH']): env['TF_NEED_CUDA'] = '0' if not os.path.exists(env['CUDA_TOOLKIT_PATH']): env['TF_NEED_CUDA'] = '0'
env['LD_LIBRARY_PATH'] = env['LIBRARY_PATH']
env['LDFLAGS'] = '-lW,-rpath='+options['gcc-lib64']
call(['./configure'], cwd=workdir, env=env) call(['./configure'], cwd=workdir, env=env)
bazel_command = (env['TF_NEED_CUDA'] == '1' and bazel_command = (env['TF_NEED_CUDA'] == '1' and
['bazel', 'build', '-c', 'opt', '--copt', '-march=native', '--config', 'cuda', '-s', '--verbose_failures', '//tensorflow/tools/pip_package:build_pip_package'] ['bazel', 'build', '-c', 'opt', '--copt', '-march=native', '--config', 'cuda', '-s', '--verbose_failures', '//tensorflow/tools/pip_package:build_pip_package']
or or
['bazel', 'build', '-c', 'opt', '--copt', '-march=native', '-s', '--verbose_failures', '//tensorflow/tools/pip_package:build_pip_package']) ['bazel', 'build', '-c', 'opt', '--copt', '-march=native', '-s', '--verbose_failures', '//tensorflow/tools/pip_package:build_pip_package'])
call(bazel_command, cwd=workdir, env=env) os.chdir(workdir)
try:
call(bazel_command, env=env)
call(('bazel-bin/tensorflow/tools/pip_package/build_pip_package',
os.path.join(workdir, 'dist')))
unpack_archive(os.path.join('dist', options['egg-name']), location)
finally:
for d in 'dist',:
if os.path.exists(d):
shutil.rmtree(d)
[tensorflow-build-install-egg] [versions]
# BUG: This section does FS changes outside location. tensorflow = 1.4.0
recipe = slapos.recipe.build
unzip-binary = ${unzip:location}/bin/unzip
tensorflow-repository-path = ${tensorflow-repository:location}
need-tensorboard-build = ${tensorboard-build:location}
need-tensorflow-build = ${tensorflow-build:location}
need-protobuf-python = ${protobuf-python:egg}
egg = tensorflow
install =
import os
os.makedirs(location)
workdir = options['tensorflow-repository-path']
egg_name = 'tensorflow-1.4.0-py2.7-linux-x86_64.egg'
dist_dir = os.path.join(workdir, 'dist')
dest_dir = os.path.join(self.buildout['buildout']['eggs-directory'], egg_name)
call(['bazel-bin/tensorflow/tools/pip_package/build_pip_package', dist_dir], cwd=workdir)
call([options['unzip-binary'], '-o', os.path.join(dist_dir, egg_name), '-d', dest_dir])
...@@ -2,7 +2,6 @@ ...@@ -2,7 +2,6 @@
extends = extends =
../autoconf/buildout.cfg ../autoconf/buildout.cfg
../automake/buildout.cfg ../automake/buildout.cfg
../gcc/buildout.cfg
../jbigkit/buildout.cfg ../jbigkit/buildout.cfg
../leptonica/buildout.cfg ../leptonica/buildout.cfg
../libpng/buildout.cfg ../libpng/buildout.cfg
...@@ -33,10 +32,9 @@ configure-options = ...@@ -33,10 +32,9 @@ configure-options =
# its trained data, so we set its datarootdir above to a controlled location # its trained data, so we set its datarootdir above to a controlled location
environment = environment =
PATH=${pkgconfig:location}/bin:${autoconf:location}/bin:${automake:location}/bin:${gcc:location}/bin:${libtool:location}/bin:${m4:location}/bin:${patch:location}/bin:%(PATH)s PATH=${pkgconfig:location}/bin:${autoconf:location}/bin:${automake:location}/bin:${libtool:location}/bin:${m4:location}/bin:${patch:location}/bin:%(PATH)s
PKG_CONFIG_PATH=${:pkg_config_depends} PKG_CONFIG_PATH=${:pkg_config_depends}
LD_LIBRARY_PATH=${gcc:location}/lib:${gcc:location}/lib64 LDFLAGS=-L${leptonica:location}/lib -Wl,-rpath=${leptonica:location}/lib -L${jbigkit:location}/lib -Wl,-rpath=${jbigkit:location}/lib -L${zlib:location}/lib -Wl,-rpath=${zlib:location}/lib
LDFLAGS=-Wl,-rpath=${gcc:location}/lib -Wl,-rpath=${gcc:location}/lib64 -L${leptonica:location}/lib -Wl,-rpath=${leptonica:location}/lib -L${jbigkit:location}/lib -Wl,-rpath=${jbigkit:location}/lib -L${zlib:location}/lib -Wl,-rpath=${zlib:location}/lib
[tesseract-traineddata] [tesseract-traineddata]
location = ${buildout:parts-directory}/${:_buildout_section_name_} location = ${buildout:parts-directory}/${:_buildout_section_name_}
......
...@@ -26,6 +26,10 @@ configure-options = ...@@ -26,6 +26,10 @@ configure-options =
--with-zlib-lib=${zlib:location} --with-zlib-lib=${zlib:location}
environment = environment =
# Python 3 is used for things we don't need. This is an optional dependency,
# unless PYTHON is set (previously set by [python]): wget complains (rightly)
# if it points to Python 2.7 (which we may still use).
PYTHON=
PATH=${gettext:location}/bin:${lunzip:location}/bin:${patch:location}/bin:${perl:location}/bin:${pkgconfig:location}/bin:%(PATH)s PATH=${gettext:location}/bin:${lunzip:location}/bin:${patch:location}/bin:${perl:location}/bin:${pkgconfig:location}/bin:%(PATH)s
PKG_CONFIG_PATH=${openssl:location}/lib/pkgconfig PKG_CONFIG_PATH=${openssl:location}/lib/pkgconfig
LDFLAGS=-L${zlib:location}/lib -Wl,-rpath=${zlib:location}/lib -L${openssl:location}/lib -L${pcre:location}/lib -Wl,-rpath=${pcre:location}/lib -Wl,-rpath=${openssl:location}/lib LDFLAGS=-L${zlib:location}/lib -Wl,-rpath=${zlib:location}/lib -L${openssl:location}/lib -L${pcre:location}/lib -Wl,-rpath=${pcre:location}/lib -Wl,-rpath=${openssl:location}/lib
......
...@@ -7,6 +7,11 @@ extends = ...@@ -7,6 +7,11 @@ extends =
parts = parts =
${cloudooo-buildout:parts} ${cloudooo-buildout:parts}
[gcc]
# For old version of glibmm.
part = gcc-5.5
max_version = 6
[cloudooo-buildout] [cloudooo-buildout]
parts = parts =
${stack-cloudooo-buildout:parts} ${stack-cloudooo-buildout:parts}
......
...@@ -8,7 +8,6 @@ extends = ...@@ -8,7 +8,6 @@ extends =
../../component/dcron/buildout.cfg ../../component/dcron/buildout.cfg
../../component/logrotate/buildout.cfg ../../component/logrotate/buildout.cfg
../../component/lxml-python/buildout.cfg ../../component/lxml-python/buildout.cfg
../../component/python-2.7/buildout.cfg
../../component/gzip/buildout.cfg ../../component/gzip/buildout.cfg
parts = parts =
...@@ -24,7 +23,6 @@ module = davstorage ...@@ -24,7 +23,6 @@ module = davstorage
[instance-recipe-egg] [instance-recipe-egg]
recipe = zc.recipe.egg recipe = zc.recipe.egg
python = python2.7
eggs = ${instance-recipe:egg} eggs = ${instance-recipe:egg}
[application] [application]
......
...@@ -13,6 +13,10 @@ parts = ...@@ -13,6 +13,10 @@ parts =
npm_install npm_install
instance instance
[gcc]
# Always build GCC for Fortran (see openblas).
max_version = 0
[instance] [instance]
recipe = slapos.recipe.template recipe = slapos.recipe.template
url = ${:_profile_base_location_}/${:filename} url = ${:_profile_base_location_}/${:filename}
......
...@@ -11,7 +11,6 @@ extends = ...@@ -11,7 +11,6 @@ extends =
../../component/dcron/buildout.cfg ../../component/dcron/buildout.cfg
../../component/logrotate/buildout.cfg ../../component/logrotate/buildout.cfg
../../component/lxml-python/buildout.cfg ../../component/lxml-python/buildout.cfg
../../component/python-2.7/buildout.cfg
../../component/gzip/buildout.cfg ../../component/gzip/buildout.cfg
../../component/git/buildout.cfg ../../component/git/buildout.cfg
../../component/nodejs/buildout.cfg ../../component/nodejs/buildout.cfg
......
...@@ -11,7 +11,6 @@ extends = ...@@ -11,7 +11,6 @@ extends =
../../component/python-kerberos/buildout.cfg ../../component/python-kerberos/buildout.cfg
../../component/gateone/buildout.cfg ../../component/gateone/buildout.cfg
../../component/dtach/buildout.cfg ../../component/dtach/buildout.cfg
../../component/python-2.7/buildout.cfg
../../component/nginx/buildout.cfg ../../component/nginx/buildout.cfg
../../stack/slapos.cfg ../../stack/slapos.cfg
......
...@@ -232,7 +232,6 @@ command = bash -c ". ${gowork:env.sh} && CGO_CFLAGS=-I${:git2go}/include CGO_LDF ...@@ -232,7 +232,6 @@ command = bash -c ". ${gowork:env.sh} && CGO_CFLAGS=-I${:git2go}/include CGO_LDF
[gowork] [gowork]
golang = ${golang1.12:location} golang = ${golang1.12:location}
gcc-bin-directory = ${golang1.12:gcc-bin-directory}
# gitlab.com/gitlab-org/gitlab-workhorse # gitlab.com/gitlab-org/gitlab-workhorse
# gitlab.com/gitlab-org/gitlab-workhorse/cmd/gitlab-zip-cat # gitlab.com/gitlab-org/gitlab-workhorse/cmd/gitlab-zip-cat
# gitlab.com/gitlab-org/gitlab-workhorse/cmd/gitlab-zip-metadata # gitlab.com/gitlab-org/gitlab-workhorse/cmd/gitlab-zip-metadata
......
...@@ -50,7 +50,6 @@ promtail-bin = ${:bin}/promtail ...@@ -50,7 +50,6 @@ promtail-bin = ${:bin}/promtail
# use recent go # use recent go
golang = ${golang1.12:location} golang = ${golang1.12:location}
gcc-bin-directory = ${golang1.12:gcc-bin-directory}
[gowork.goinstall] [gowork.goinstall]
command = : command = :
......
...@@ -32,7 +32,7 @@ return = ...@@ -32,7 +32,7 @@ return =
[proxy] [proxy]
recipe = slapos.cookbook:wrapper recipe = slapos.cookbook:wrapper
command-line = {{ python_location }}/bin/python2.7 {{ rina_proxy }} ${server:instance-guid} ${:ipv6} ${:port} command-line = {{ python_executable }} {{ rina_proxy }} ${server:instance-guid} ${:ipv6} ${:port}
wrapper-path = ${directory:service}/proxy wrapper-path = ${directory:service}/proxy
environment = environment =
PATH={{ rina_tools_location }}/bin:%(PATH)s PATH={{ rina_tools_location }}/bin:%(PATH)s
......
...@@ -28,7 +28,7 @@ template = {{ instance_root }} ...@@ -28,7 +28,7 @@ template = {{ instance_root }}
extra-context = extra-context =
import urlparse urlparse import urlparse urlparse
key ipv6 slap-configuration:ipv6-random key ipv6 slap-configuration:ipv6-random
raw python_location {{ python_location }} raw python_executable {{ python_executable }}
raw rina_proxy {{ rina_proxy }} raw rina_proxy {{ rina_proxy }}
[server] [server]
......
...@@ -9,13 +9,13 @@ parts = ...@@ -9,13 +9,13 @@ parts =
[template] [template]
recipe = slapos.recipe.template:jinja2 recipe = slapos.recipe.template:jinja2
template = ${:_profile_base_location_}/instance.cfg.in template = ${:_profile_base_location_}/instance.cfg.in
md5sum = e513082329961dfbbcec94e817f1e3bc md5sum = f6c61225990986d94d0017b07b873aa7
# XXX: "template.cfg" is hardcoded in instanciation recipe # XXX: "template.cfg" is hardcoded in instanciation recipe
rendered = ${buildout:directory}/template.cfg rendered = ${buildout:directory}/template.cfg
context = context =
key develop_eggs_directory buildout:develop-eggs-directory key develop_eggs_directory buildout:develop-eggs-directory
key eggs_directory buildout:eggs-directory key eggs_directory buildout:eggs-directory
key python_location python2.7:location key python_executable python:executable
key rina_tools_location rina-tools:location key rina_tools_location rina-tools:location
key instance_root instance-root:target key instance_root instance-root:target
key instance_server instance-server:target key instance_server instance-server:target
...@@ -29,7 +29,7 @@ mode = 644 ...@@ -29,7 +29,7 @@ mode = 644
[instance-root] [instance-root]
<= download-base <= download-base
md5sum = 8ba6905c430e69a14db1be386f932c0f md5sum = f647054be67998f9eece174f106c4464
[instance-server] [instance-server]
<= download-base <= download-base
......
...@@ -12,6 +12,10 @@ parts += ...@@ -12,6 +12,10 @@ parts +=
jupyter-notebook-initialized-scripts jupyter-notebook-initialized-scripts
instance-jupyter-notebook instance-jupyter-notebook
[gcc]
# Always build GCC for Fortran (see openblas).
max_version = 0
[jupyter] [jupyter]
python_executable = ${buildout:bin-directory}/${:interpreter} python_executable = ${buildout:bin-directory}/${:interpreter}
......
[buildout] [buildout]
extends = extends =
../../component/python3/buildout.cfg
software.cfg software.cfg
python = python3
# Ignore these for now # Ignore these for now
common-parts -= common-parts -=
rdiff-backup rdiff-backup
[python]
part = python3
...@@ -8,8 +8,6 @@ extends = ...@@ -8,8 +8,6 @@ extends =
../../stack/slapos.cfg ../../stack/slapos.cfg
../../component/python3/buildout.cfg ../../component/python3/buildout.cfg
python = python3
parts = parts =
slapos-cookbook slapos-cookbook
network-bench-cfg network-bench-cfg
...@@ -19,6 +17,9 @@ parts = ...@@ -19,6 +17,9 @@ parts =
template-monitor template-monitor
monitor-collect-csv-dump monitor-collect-csv-dump
[python]
part = python3
[template] [template]
recipe = slapos.recipe.template recipe = slapos.recipe.template
url = ${:_profile_base_location_}/${:filename} url = ${:_profile_base_location_}/${:filename}
......
...@@ -14,7 +14,7 @@ ...@@ -14,7 +14,7 @@
# not need these here). # not need these here).
[neotest-env.sh] [neotest-env.sh]
filename = neotest-env.sh.in filename = neotest-env.sh.in
md5sum = 595eebbbcb56b6a8464d48833cfae57b md5sum = bd46e95f1cea62c3b0082fe8c0c9c90b
[neotest] [neotest]
filename = neotest.in filename = neotest.in
......
...@@ -9,7 +9,7 @@ PATH="${ioping:location}/bin:$PATH" ...@@ -9,7 +9,7 @@ PATH="${ioping:location}/bin:$PATH"
PATH="${lmbench:location}/bin:$PATH" PATH="${lmbench:location}/bin:$PATH"
PATH="${mariadb:location}/bin:$PATH" PATH="${mariadb:location}/bin:$PATH"
PATH="${mariadb:location}/scripts:$PATH" PATH="${mariadb:location}/scripts:$PATH"
PATH="${python2.7:location}/bin:$PATH" PATH="${python:location}/bin:$PATH"
# add all eggs and develop-eggs to py path # add all eggs and develop-eggs to py path
# #
......
...@@ -2,9 +2,13 @@ ...@@ -2,9 +2,13 @@
extends = extends =
buildout.hash.cfg buildout.hash.cfg
../../component/redis/buildout.cfg ../../component/redis/buildout.cfg
../../component/python3/buildout.cfg
../../stack/lamp/buildout.cfg ../../stack/lamp/buildout.cfg
[gcc]
# For old version of glibmm.
part = gcc-5.5
max_version = 6
[nc-download-base] [nc-download-base]
recipe = hexagonit.recipe.download recipe = hexagonit.recipe.download
ignore-existing = true ignore-existing = true
......
...@@ -10,6 +10,11 @@ parts = ...@@ -10,6 +10,11 @@ parts =
slapos-cookbook slapos-cookbook
eggs eggs
[gcc]
# For old version of PowerDNS and Ragel.
part = gcc-5.5
max_version = 6
[eggs] [eggs]
recipe = zc.recipe.egg recipe = zc.recipe.egg
eggs = eggs =
......
[buildout] [buildout]
extends = extends =
../../component/python3/buildout.cfg
software.cfg software.cfg
python = python3 [python]
part = python3
[eggs] [eggs]
eggs -= eggs -=
......
[buildout] [buildout]
extends = extends =
../../component/python3/buildout.cfg
software.cfg software.cfg
python = python3
[nghttp2] [python]
environment = part = python3
PATH=${autoconf:location}/bin:${automake:location}/bin:${libtool:location}/bin:${m4:location}/bin:${python3:location}/bin:%(PATH)s
[supervisor-repository] [supervisor-repository]
<= git-clone-repository <= git-clone-repository
......
...@@ -18,7 +18,7 @@ md5sum = 8d6878ff1d2e75010c50a1a2b0c13b24 ...@@ -18,7 +18,7 @@ md5sum = 8d6878ff1d2e75010c50a1a2b0c13b24
[template-runner] [template-runner]
filename = instance-runner.cfg filename = instance-runner.cfg
md5sum = f342daca2e87f8fa44fd7b6a2a1c22f8 md5sum = 7100c6678576c285322f1445029cd4f2
[template-runner-import-script] [template-runner-import-script]
filename = template/runner-import.sh.jinja2 filename = template/runner-import.sh.jinja2
......
...@@ -692,7 +692,7 @@ hash-existing-files = $${buildout:directory}/software_release/buildout.cfg ...@@ -692,7 +692,7 @@ hash-existing-files = $${buildout:directory}/software_release/buildout.cfg
[shell-environment] [shell-environment]
shell = ${bash:location}/bin/bash shell = ${bash:location}/bin/bash
path = ${nano:location}/bin:${vim:location}/bin:${screen:location}/bin:${tmux:location}/bin:${git:location}/bin:${curl:location}/bin:${python2.7:location}/bin:${tig:location}/bin:${zip:location}/bin:${mosh:location}/bin:${bash:location}/bin:${fish-shell:location}/bin:$${directory:bin}:/usr/bin:/bin/ path = ${nano:location}/bin:${vim:location}/bin:${screen:location}/bin:${tmux:location}/bin:${git:location}/bin:${curl:location}/bin:${python:location}/bin:${tig:location}/bin:${zip:location}/bin:${mosh:location}/bin:${bash:location}/bin:${fish-shell:location}/bin:$${directory:bin}:/usr/bin:/bin/
[prepare-software] [prepare-software]
recipe = slapos.cookbook:wrapper recipe = slapos.cookbook:wrapper
......
[buildout] [buildout]
extends = extends =
../../component/python3/buildout.cfg
software.cfg software.cfg
python = python3
# Ignore these for now # Ignore these for now
common-parts -= common-parts -=
rdiff-backup rdiff-backup
[python]
part = python3
[python-with-eggs] [python-with-eggs]
eggs -= eggs -=
# futures is a backport of Py3's concurrent.futures module # futures is a backport of Py3's concurrent.futures module
......
...@@ -18,7 +18,6 @@ extends = ...@@ -18,7 +18,6 @@ extends =
../../component/mosh/buildout.cfg ../../component/mosh/buildout.cfg
../../component/rsync/buildout.cfg ../../component/rsync/buildout.cfg
../../component/pycurl/buildout.cfg ../../component/pycurl/buildout.cfg
../../component/python-2.7/buildout.cfg
../../component/screen/buildout.cfg ../../component/screen/buildout.cfg
../../component/shellinabox/buildout.cfg ../../component/shellinabox/buildout.cfg
../../component/vim/buildout.cfg ../../component/vim/buildout.cfg
......
[buildout] [buildout]
extends = extends =
../../component/python3/buildout.cfg
../../component/python-2.7/buildout.cfg
../../component/nodejs/buildout.cfg ../../component/nodejs/buildout.cfg
../../component/caddy/buildout.cfg ../../component/caddy/buildout.cfg
../../component/git/buildout.cfg ../../component/git/buildout.cfg
...@@ -56,7 +54,7 @@ mode = 0644 ...@@ -56,7 +54,7 @@ mode = 0644
[theia] [theia]
recipe = plone.recipe.command recipe = plone.recipe.command
command = ${bash:location}/bin/bash -c " command = ${bash:location}/bin/bash -c "
export TMPDIR=${:location}/tmp PATH=${nodejs:location}/bin/:${python2.7:location}/bin/:$PATH && export TMPDIR=${:location}/tmp PATH=${nodejs:location}/bin:$PATH &&
mkdir -p ${:location} && \ mkdir -p ${:location} && \
mkdir -p \$TMPDIR && \ mkdir -p \$TMPDIR && \
mkdir -p ${:THEIA_DEFAULT_PLUGINS} && \ mkdir -p ${:THEIA_DEFAULT_PLUGINS} && \
......
...@@ -8,7 +8,6 @@ extends = ...@@ -8,7 +8,6 @@ extends =
../../component/gzip/buildout.cfg ../../component/gzip/buildout.cfg
../../component/logrotate/buildout.cfg ../../component/logrotate/buildout.cfg
../../component/pycurl/buildout.cfg ../../component/pycurl/buildout.cfg
../../component/python-2.7/buildout.cfg
../../component/stunnel/buildout.cfg ../../component/stunnel/buildout.cfg
../../component/varnish/buildout.cfg ../../component/varnish/buildout.cfg
../../component/wget/buildout.cfg ../../component/wget/buildout.cfg
......
...@@ -11,8 +11,8 @@ parts += ...@@ -11,8 +11,8 @@ parts +=
[eggs] [eggs]
eggs += eggs +=
${tensorboard-build-install-egg:egg} ${tensorflow_tensorboard:egg}
${tensorflow-build-install-egg:egg} ${tensorflow:egg}
${protobuf-python:egg} ${protobuf-python:egg}
${h5py:egg} ${h5py:egg}
${pillow-python:egg} ${pillow-python:egg}
...@@ -22,8 +22,8 @@ eggs += ...@@ -22,8 +22,8 @@ eggs +=
filelock filelock
nose nose
${chainer:egg} ${chainer:egg}
${pytorch-build-install-egg:egg} ${torch:egg}
${python-cocoapi-build-install-egg:egg} ${pycocotools:egg}
torchvision torchvision
[cuda] [cuda]
......
...@@ -30,17 +30,23 @@ eggs += ...@@ -30,17 +30,23 @@ eggs +=
${ipython:egg} ${ipython:egg}
[generic_testrunner_init] [generic_testrunner_init]
initialization = recipe = slapos.recipe.build
init =
import struct
gcc = self.buildout['gcc']
options['initialization'] %= (
gcc['prefix'] + '/lib%s/libstdc++.so' % (8 * struct.calcsize("P"))
) if 'part' in gcc else ''
initialization =
# The 4 lines below will replace the process with another one, with the proper # The 4 lines below will replace the process with another one, with the proper
# LD_PRELOAD environment variable. This is necessary because LD_PRELOAD is only # LD_PRELOAD environment variable. This is necessary because LD_PRELOAD is only
# taken into account when the process starts. Modifying it in runtime doesn't # taken into account when the process starts. Modifying it in runtime doesn't
# work. # work.
import struct, os import os
arch = 8 * struct.calcsize("P") if not os.getenv('LD_PRELOAD'):
rerun = not os.getenv('LD_PRELOAD') os.environ['LD_PRELOAD'] = %r
if rerun: os.environ['LD_PRELOAD'] = '''${gcc:location}/lib%s/libstdc++.so''' % arch os.execve(os.path.realpath(__file__), sys.argv, os.environ)
if rerun: os.execve(os.path.realpath(__file__), sys.argv, os.environ)
[test_suite_runner] [test_suite_runner]
# we need to override the test suite runner to add our custom libstdc++ dynamic # we need to override the test suite runner to add our custom libstdc++ dynamic
# library to the path # library to the path
......
...@@ -23,7 +23,6 @@ extends = ...@@ -23,7 +23,6 @@ extends =
../component/mesa/buildout.cfg ../component/mesa/buildout.cfg
../component/onlyoffice-core/buildout.cfg ../component/onlyoffice-core/buildout.cfg
../component/poppler/buildout.cfg ../component/poppler/buildout.cfg
../component/python-2.7/buildout.cfg
../component/rdiff-backup/buildout.cfg ../component/rdiff-backup/buildout.cfg
../component/xorg/buildout.cfg ../component/xorg/buildout.cfg
......
...@@ -6,7 +6,6 @@ extends = ...@@ -6,7 +6,6 @@ extends =
zope-versions.cfg zope-versions.cfg
buildout.hash.cfg buildout.hash.cfg
../../component/fonts/buildout.cfg ../../component/fonts/buildout.cfg
../../component/gcc/buildout.cfg
../../component/git/buildout.cfg ../../component/git/buildout.cfg
../../component/graphviz/buildout.cfg ../../component/graphviz/buildout.cfg
../../component/gzip/buildout.cfg ../../component/gzip/buildout.cfg
...@@ -94,9 +93,10 @@ parts += ...@@ -94,9 +93,10 @@ parts +=
# jupyter # jupyter
jupyter-notebook-initialized-scripts jupyter-notebook-initialized-scripts
# override python2.7 to add SlapOS libstdc++ in RPATH. [gcc]
[python2.7] # KumoFS is known not to build with gcc>6.
extra-ldflags = -Wl,-rpath=${gcc:location}/lib -Wl,-rpath=${gcc:location}/lib64 # It may work with slightly more recent but not tested.
part = gcc-5.5
# override instance-jupyter-notebook not to render into default template.cfg # override instance-jupyter-notebook not to render into default template.cfg
[instance-jupyter-notebook] [instance-jupyter-notebook]
......
...@@ -2,8 +2,6 @@ ...@@ -2,8 +2,6 @@
# Software Releases or Stacks can safely extend this stack. # Software Releases or Stacks can safely extend this stack.
[buildout] [buildout]
python = python2.7
# Developers need to add explicitely this part in their software profile # Developers need to add explicitely this part in their software profile
# parts = slapos-cookbook # parts = slapos-cookbook
# Note that if you want a develop version of slapos-cookbook from a git # Note that if you want a develop version of slapos-cookbook from a git
...@@ -22,9 +20,9 @@ allow-picked-versions = false ...@@ -22,9 +20,9 @@ allow-picked-versions = false
# Use shacache and lxml # Use shacache and lxml
extends = extends =
../component/defaults.cfg
../component/git/buildout.cfg ../component/git/buildout.cfg
../component/lxml-python/buildout.cfg ../component/lxml-python/buildout.cfg
../component/python-2.7/buildout.cfg
../component/python-cffi/buildout.cfg ../component/python-cffi/buildout.cfg
../component/python-cliff/buildout.cfg ../component/python-cliff/buildout.cfg
../component/python-cachecontrol/buildout.cfg ../component/python-cachecontrol/buildout.cfg
...@@ -120,7 +118,7 @@ eggs = ...@@ -120,7 +118,7 @@ eggs =
[versions] [versions]
setuptools = 44.0.0 setuptools = 44.0.0
# Use SlapOS patched zc.buildout # Use SlapOS patched zc.buildout
zc.buildout = 2.7.1+slapos003 zc.buildout = 2.7.1+slapos004
# Use SlapOS patched zc.recipe.egg (zc.recipe.egg 2.x is for Buildout 2) # Use SlapOS patched zc.recipe.egg (zc.recipe.egg 2.x is for Buildout 2)
zc.recipe.egg = 2.0.3+slapos003 zc.recipe.egg = 2.0.3+slapos003
# Use own version of h.r.download to be able to open .xz and .lz archives # Use own version of h.r.download to be able to open .xz and .lz archives
...@@ -160,9 +158,9 @@ slapos.core = 1.5.12 ...@@ -160,9 +158,9 @@ slapos.core = 1.5.12
slapos.extension.strip = 0.4 slapos.extension.strip = 0.4
slapos.extension.shared = 1.0 slapos.extension.shared = 1.0
slapos.libnetworkcache = 0.20 slapos.libnetworkcache = 0.20
slapos.rebootstrap = 4.4 slapos.rebootstrap = 4.5
slapos.recipe.build = 0.44 slapos.recipe.build = 0.45
slapos.recipe.cmmi = 0.13 slapos.recipe.cmmi = 0.15
slapos.toolbox = 0.109 slapos.toolbox = 0.109
stevedore = 1.21.0 stevedore = 1.21.0
subprocess32 = 3.5.3 subprocess32 = 3.5.3
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment