Commit 9709d75a authored by Alain Takoudjou's avatar Alain Takoudjou

WIP: proviewR and open62541 components

parent 2bd95ea0
...@@ -4,10 +4,15 @@ parts = libdb ...@@ -4,10 +4,15 @@ parts = libdb
[libdb] [libdb]
recipe = slapos.recipe.cmmi recipe = slapos.recipe.cmmi
shared = true shared = true
url = http://download.oracle.com/berkeley-db/db-4.5.20.tar.gz #url = http://download.oracle.com/berkeley-db/db-4.5.20.tar.gz
md5sum = b0f1c777708cb8e9d37fb47e7ed3312d #md5sum = b0f1c777708cb8e9d37fb47e7ed3312d
#url = http://download.oracle.com/berkeley-db/db-6.2.32.tar.gz
#md5sum = 33491b4756cb44b91c3318b727e71023
url = http://anduin.linuxfromscratch.org/BLFS/bdb/db-5.3.28.tar.gz
md5sum = b99454564d5b4479750567031d66fe24
configure-command = cd build_unix && ../dist/configure configure-command = cd build_unix && ../dist/configure
configure-options = configure-options =
--disable-static --disable-static
--prefix=@@LOCATION@@ --prefix=@@LOCATION@@
--enable-cxx
make-binary = cd build_unix && make make-binary = cd build_unix && make
[buildout]
parts =
open62541
[open62541-source]
recipe = slapos.recipe.build:gitclone
git-executable = ${git:location}/bin/git
repository = https://github.com/open62541/open62541.git
branch = v1.0
revision = ce5209d78d3821504d31b3bbdb03f53d6e3f93a7
[open62541]
recipe = slapos.recipe.cmmi
path = ${open62541-source:location}
location = ${buildout:parts-directory}/${:_buildout_section_name_}
configure-command =
rm -rf build && mkdir build && cd build && \
${cmake:location}/bin/cmake \
-DCMAKE_INSTALL_PREFIX=${:location} \
-DBUILD_SHARED_LIBS=ON \
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
-DUA_ENABLE_AMALGAMATION=ON \
-DUA_BUILD_SELFSIGNED_CERTIFICATE=ON \
-DUA_NAMESPACE_ZERO=FULL ../
make-binary =
cd build && make
environment =
PATH=${cmake:location}/bin:%(PATH)s
\ No newline at end of file
[buildout]
extends =
../../component/flex/buildout.cfg
../../component/bison/buildout.cfg
../../component/qt/buildout.cfg
../../component/gtk-2/buildout.cfg
../../component/alsa/buildout.cfg
../../component/java/buildout.cfg
../../component/qt/buildout.cfg
# ../../component/gcc/buildout.cfg
../../component/git/buildout.cfg
../glib/buildout.cfg
../../component/cmake/buildout.cfg
../libdb/buildout.cfg
# ../../component/automake/buildout.cfg
parts =
proviewR
[java-jdk]
recipe = hexagonit.recipe.download
url = https://download.java.net/java/GA/jdk12.0.2/e482c34c86bd4bf8b56c0b35558996b9/10/GPL/openjdk-12.0.2_linux-x64_bin.tar.gz
md5sum = f5da6f4dec81bdd2a096184ec1d69216
strip-top-level-dir = true
[doxygen]
recipe = slapos.recipe.cmmi
url = http://doxygen.nl/files/doxygen-1.8.16.src.tar.gz
md5sum = 3ec5f8bfda38a05845161fbbd5d8b439
location = ${buildout:parts-directory}/${:_buildout_section_name_}
configure-command =
mkdir build && cd build && \
${cmake:location}/bin/cmake \
-DCMAKE_INSTALL_PREFIX=${:location} \
-G "Unix Makefiles" ../
make-binary =
cd build && make
environment =
PATH=${git:location}/bin:${cmake:location}/bin:${flex:location}/bin:${bison:location}/bin:%(PATH)s
[make-4]
recipe = slapos.recipe.cmmi
location = ${buildout:parts-directory}/${:_buildout_section_name_}
configure-command =
libtoolize --force
aclocal -I${pkgconfig:location}/share/aclocal -I${gettext:location}/share/aclocal -I${libtool:location}/share/aclocal
autoheader
automake --force-missing --add-missing
autoconf
./configure
url = http://ftp.de.debian.org/debian/pool/main/m/make-dfsg/make-dfsg_4.2.1.orig.tar.gz
make-targets = install
environment =
PATH=${autoconf:location}/bin:${automake:location}/bin:${libtool:location}/bin:${pkgconfig:location}/bin:%(PATH)s
LDFLAGS=-L${gettext:location}/lib
[extra-cmake-modules]
recipe = slapos.recipe.cmmi
url = https://github.com/KDE/extra-cmake-modules/archive/v5.62.0.zip
location = ${buildout:parts-directory}/${:_buildout_section_name_}
configure-command =
mkdir build && cd build && \
${cmake:location}/bin/cmake \
-DCMAKE_INSTALL_PREFIX=${:location} \
-DQt5LinguistTools_DIR=${qt5-qmake:location}/lib/cmake/Qt5LinguistTools \
..
make-binary = cd build && make
environment =
PATH=${qt5-qmake:location}/bin:${qt5-tools:location}/bin:%(PATH)s
[phonon]
recipe = slapos.recipe.cmmi
url = http://download.kde.org/stable/phonon/4.11.1/phonon-4.11.1.tar.xz
md5sum = d3df5ba646e4b3f11623d998caa40e74
location = ${buildout:parts-directory}/${:_buildout_section_name_}
configure-command =
mkdir build && cd build && \
${cmake:location}/bin/cmake \
-DCMAKE_INSTALL_PREFIX=${:location} \
-DCMAKE_BUILD_TYPE=Release \
-DECM_DIR=${extra-cmake-modules:location}/share/ECM/cmake \
-DQt5LinguistTools_DIR=${qt5-qmake:location}/lib/cmake/Qt5LinguistTools \
-DQt5Core_DIR=${qt5-qmake:location}/lib/cmake/Qt5Core \
-DQt5Gui_DIR=${qt5-qmake:location}/lib/cmake/Qt5Gui \
-DQt5Widgets_DIR=${qt5-qmake:location}/lib/cmake/Qt5Widgets \
-DQt5Designer_DIR=${qt5-qmake:location}/lib/cmake/Qt5Designer \
-DGLIB2_LIBRARIES=${glib:location}/lib \
-DGLIB2_MAIN_INCLUDE_DIR=${glib:location}/lib/glib-2.0/include \
..
make-binary = cd build && make
environment =
PATH=${pkgconfig:location}/bin:%(PATH)s
PKG_CONFIG_PATH=${glib:location}/lib/pkgconfig:${pcre:location}/lib/pkgconfig:${qt5-qmake:location}/lib/pkgconfig
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
post-install =
cd ${:location}/lib/x86_64-linux-gnu/pkgconfig
ln -s ./phonon4qt5.pc ./phonon.pc
[proviewR]
recipe = slapos.recipe.cmmi
url = https://iweb.dl.sourceforge.net/project/proview/proview/proviewr_${:version}/pwrsrc_${:version}.tar.gz
md5sum = 2431b0ffec0de9e2d7b1a984b2e216a2
version = 5.6.1-1
location = ${buildout:parts-directory}/${:_buildout_section_name_}
aroot=${:location}/local/adm
keep-compile-dir = true
incdir = -I${libdb:location}/include
libs = -L${libdb:location}/lib -ldb_cxx-5
#-L${qt5-qmake:location}/lib -lQt5Widgets
configure-command =
sed -i "s#aroot=/usr/local/adm#aroot=${:aroot}#" ${:location}__compile__/pwrsrc_${:version}/build.sh
sed -i "s#cflags := -c#cflags := ${:incdir} -c#" ${:location}__compile__/pwrsrc_${:version}/src/tools/bld/src/os_linux/hw_x86_64/variables.mk
sed -i "s#(lib_dir)#(lib_dir) ${:libs}#" ${:location}__compile__/pwrsrc_${:version}/src/tools/bld/src/os_linux/hw_x86_64/variables.mk
sed -i "s#/usr/include/qt4#${qt4-qmake:location}/include#" ${:location}__compile__/pwrsrc_${:version}/src/tools/pwre/src/os_linux/pwre_configure.sh
sed -i "s#/usr/lib/libQtGui.so#${qt4-qmake:location}/lib/libQtGui.so#" ${:location}__compile__/pwrsrc_${:version}/src/tools/pwre/src/os_linux/pwre_configure.sh
sed -i "s#/usr/local/include/gtk-2.0#${gtk-2:location}/include/gtk-2.0#" ${:location}__compile__/pwrsrc_${:version}/src/tools/pwre/src/os_linux/pwre_configure.sh
sed -i "s#/usr/lib/libgtk-x11-2.0.so#${gtk-2:location}//lib/libgtk-x11-2.0.so#" ${:location}__compile__/pwrsrc_${:version}/src/tools/pwre/src/os_linux/pwre_configure.sh
make-targets = install
make-options =
-j1
environment =
PATH=${doxygen:location}/bin:${pkgconfig:location}/bin:${java-jdk:location}/bin:${gtk-2:location}/bin:${flex:location}/bin:${bison:location}/bin:%(PATH)s
SHELL=/bin/bash
PKG_CONFIG_PATH=${qt4-qmake:location}/lib/pkgconfig:${gtk-2:location}/lib/pkgconfig:${pango:location}/lib/pkgconfig:${glib:location}/lib/pkgconfig:${cairo:location}/lib/pkgconfig:${pcre:location}/lib/pkgconfig:${pixman:location}/lib/pkgconfig:${fontconfig:location}/lib/pkgconfig:${fontconfig:pkg_config_depends}:${libXext:location}/lib/pkgconfig:${libXext:pkg_config_depends}:${fribidi:location}/lib/pkgconfig:${harfbuzz:location}/lib/pkgconfig:${harfbuzz:pkg_config_depends}
# PKG_CONFIG_PATH=${phonon:location}/lib/x86_64-linux-gnu/pkgconfig:${qt5-qmake:location}/lib/pkgconfig
LD_LIBRARY_PATH=${alsa:location}/lib:${flex:location}/lib:${qt4-qmake:location}/lib:${libdb:location}/lib:${openssl:location}/lib
CXXFLAGS=-I${flex:location}/include -I${libdb:location}/include
LDFLAGS=-L${flex:location}/lib -Wl,-rpath=${flex:location}/lib -L${bison:location}/lib -L${libdb:location}/lib
DISPLAY=:0
#-I${phonon:location}/include/phonon4qt5
#${:location}__compile__/rls/os_linux/hw_x86_64/wb/exe/:
...@@ -2,6 +2,7 @@ ...@@ -2,6 +2,7 @@
extends = extends =
../xorg/buildout.cfg ../xorg/buildout.cfg
../gcc/buildout.cfg ../gcc/buildout.cfg
../openssl/buildout.cfg
parts = parts =
qt4-qmake qt4-qmake
...@@ -10,27 +11,57 @@ parts = ...@@ -10,27 +11,57 @@ parts =
# XXX work on all systems needs check # XXX work on all systems needs check
recipe = slapos.recipe.cmmi recipe = slapos.recipe.cmmi
location = ${buildout:parts-directory}/${:_buildout_section_name_} location = ${buildout:parts-directory}/${:_buildout_section_name_}
url = http://download.qt.io/official_releases/qt/5.6/5.6.2/submodules/qtbase-opensource-src-5.6.2.tar.gz #url = http://download.qt.io/official_releases/qt/5.6/5.6.2/submodules/qtbase-opensource-src-5.6.2.tar.gz
md5sum = 7aa5841b50c411e23e31e8a6cc1c6981 #md5sum = 7aa5841b50c411e23e31e8a6cc1c6981
url = http://download.qt.io/official_releases/qt/5.13/5.13.1/submodules/qtbase-everywhere-src-5.13.1.tar.xz
md5sum = 0a1761145531b74fff5b4d9a80c7b1c2
configure-command = ./configure configure-command = ./configure
configure-options = configure-options =
--prefix=${:location} --prefix=${:location}
-v -v
-gui
-widgets
-no-separate-debug-info -no-separate-debug-info
-release -developer-build
-confirm-license -confirm-license
-opensource -opensource
-no-opengl -no-opengl
-nomake examples -nomake examples
-no-dbus
# -qt-xkbcommon-x11
# -qt-xcb
# -no-pulseaudio
# -no-gtkstyle
-no-pch
environment = environment =
PATH=${gcc:location}/bin:%(PATH)s PATH=${pkgconfig:location}/bin:${gcc:location}/bin:%(PATH)s
CPPFLAGS=-I${libX11:location}/include -I${xproto:location}/include -I${libXext:location}/include PKG_CONFIG_PATH=${libxml2:location}/lib/pkgconfig:${openssl:location}/lib/pkgconfig
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 CPPFLAGS=-I${libX11:location}/include -I${xproto:location}/include -I${libXext:location}/include -I${zlib:location}/include -I${pcre:location}/include -I${openssl:location}/include
make-binary = true 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 -L${libxcb:location}/lib -Wl,-rpath=${libxcb:location}/lib -L${zlib:location}/lib -Wl,-rpath -Wl,${zlib:location}/lib -Wl,-rpath=${pcre:location}/lib -L${openssl:location}/lib
#make-binary = true
make-binary= make -j4
#make-targets = install
# module-qttools
post-install = post-install =
mkdir -p ${:location}/bin # cd ${:location}/lib/pkgconfig/
mv -t ${:location}/bin bin/qmake # ln -s ./Qt5Core.pc ./QtCore.pc
mv -t ${:location} mkspecs # ln -s ./Qt5GUI.pc ./QtGUI.pc
# ln -s ./Qt5Network.pc ./QtNetwork.pc
# mkdir -p ${:location}/bin
# mv -t ${:location}/bin bin/qmake
# mv -t ${:location} mkspecs
[qt5-tools]
recipe = slapos.recipe.cmmi
url = http://download.qt.io/official_releases/qt/5.13/5.13.1/submodules/qttools-everywhere-src-5.13.1.tar.xz
#url = http://download.qt.io/archive/qt/5.6/5.6.2/submodules/qttools-opensource-src-5.6.2.tar.xz
md5sum = c57db5b2c95aa0ccf5637d9807a2f914
#md5sum = c877fc8f47089d0e5f859090a623774d
configure-command =
${qt5-qmake:location}/bin/qmake
make-binary = PREFIX=${buildout:parts-directory}/${:_buildout_section_name_} make
environment =
PATH=${qt5-qmake:location}/bin:%(PATH)s
[qt5.6-qmake] [qt5.6-qmake]
<= qt5-qmake <= qt5-qmake
...@@ -43,7 +74,8 @@ post-install = ...@@ -43,7 +74,8 @@ post-install =
# qmake binary can be reached directly from ${qt:location}/bin/qmake if [qt] is fully built # qmake binary can be reached directly from ${qt:location}/bin/qmake if [qt] is fully built
recipe = slapos.recipe.cmmi recipe = slapos.recipe.cmmi
location = ${buildout:parts-directory}/${:_buildout_section_name_} location = ${buildout:parts-directory}/${:_buildout_section_name_}
url = http://download.qt.io/official_releases/qt/4.8/4.8.7/qt-everywhere-opensource-src-4.8.7.tar.gz #url = http://download.qt.io/official_releases/qt/4.8/4.8.7/qt-everywhere-opensource-src-4.8.7.tar.gz
url = http://qt.mirrors.tds.net/qt/archive/qt/4.8/4.8.7/qt-everywhere-opensource-src-4.8.7.tar.gz
md5sum = d990ee66bf7ab0c785589776f35ba6ad md5sum = d990ee66bf7ab0c785589776f35ba6ad
# see https://github.com/NixOS/nixpkgs/blob/3e387c3e005c87566b5403d24c86f71f4945a79b/pkgs/development/libraries/qt-4.x/4.8/default.nix#L101 # see https://github.com/NixOS/nixpkgs/blob/3e387c3e005c87566b5403d24c86f71f4945a79b/pkgs/development/libraries/qt-4.x/4.8/default.nix#L101
pre-configure = pre-configure =
...@@ -51,12 +83,22 @@ pre-configure = ...@@ -51,12 +83,22 @@ pre-configure =
sed 's,/usr/X11R6/lib64,${libX11:location}/lib64 ${xproto:location}/lib64 ${libXext:location}/lib64,g' -i mkspecs/*/*.conf sed 's,/usr/X11R6/lib64,${libX11:location}/lib64 ${xproto:location}/lib64 ${libXext:location}/lib64,g' -i mkspecs/*/*.conf
sed 's,/usr/X11R6/lib,${libX11:location}/lib ${xproto:location}/lib ${libXext:location}/lib,g' -i mkspecs/*/*.conf sed 's,/usr/X11R6/lib,${libX11:location}/lib ${xproto:location}/lib ${libXext:location}/lib,g' -i mkspecs/*/*.conf
sed 's,/usr/X11R6/include,${libX11:location}/include ${xproto:location}/include ${libXext:location}/include,g' -i mkspecs/*/*.conf sed 's,/usr/X11R6/include,${libX11:location}/include ${xproto:location}/include ${libXext:location}/include,g' -i mkspecs/*/*.conf
configure-command = ./configure --prefix=${:location} -v -no-separate-debug-info -release -no-fast -confirm-license -opensource # sed 's,/usr/local/include,${openssl-1.0:location}/include,g' -i mkspecs/*/*.conf
make-targets = qmake # sed 's,/usr/local/lib,${openssl-1.0:location}/lib,g' -i mkspecs/*/*.conf
post-install = configure-command = ./configure --prefix=${:location} -v -no-separate-debug-info -release -no-fast -confirm-license -opensource -no-pch
cp -rt ${:location} * #make-targets = qmake
#post-install =
# cp -rt ${:location}
environment =
PATH=${pkgconfig:location}/bin:${gcc:location}/bin:%(PATH)s
PKG_CONFIG_PATH=${openssl-1.0:location}/lib/pkgconfig
CPPFLAGS=-I${openssl-1.0:location}/include
LDFLAGS=-L${gcc:location}/lib -Wl,-rpath=${gcc:location}/lib -L${gcc:location}/lib64 -Wl,-rpath=${gcc:location}/lib64 -L${openssl-1.0:location}/lib -Wl,-rpath=${openssl-1.0:location}/lib
# CFLAGS=-std=c++0x
[qt4.8-qmake] [qt4.8-qmake]
<= qt4-qmake <= qt4-qmake
[qt4.8.7-qmake] [qt4.8.7-qmake]
<= qt4.8-qmake <= qt4.8-qmake
#!/bin/bash
set -e
exec > >(tee compilation_log.txt)
exec 2>&1
root=`eval pwd`
if [ -e $root/src/exp/inc/src/pwr_version.h ]; then
verl=`eval cat $root/src/exp/inc/src/pwr_version.h | grep "\bpwrv_cPwrVersionStr\b" | awk '{print $3}'`
verl=${verl:1:6}
ver=${verl:0:2}${verl:3:1}${verl:5:1}
fi
# Check pwra
#aroot=/usr/local/adm
aroot=$PREFIX/local/adm
if [ ! -e $aroot/db ]; then
if mkdir -p $aroot/db 2>/dev/null; then
echo "Administration directory created: $aroot/db"
cp -u $root/src/tools/pkg/deb/adm/pwr* $aroot/db/
else
echo "Unable to create a global administration directory $aroot/db"
aroot=$root/adm
echo "Using local administration directory $aroot/db"
if mkdir -p $aroot/db; then
cp -u $root/src/tools/pkg/deb/adm/pwr* $aroot/db/
else
echo "Unable to create local administration directory $aroot/db"
fi
fi
fi
# Insert base in projectlist
if [ ! -e $aroot/db/pwr_projectlist.dat ]; then
echo "Creating $aroot/db/pwr_projectlist.dat"
echo "%base $verl $root/rls" > $aroot/db/pwr_projectlist.dat
else
set +e
ptst=`eval grep "^%base" $aroot/db/pwr_projectlist.dat | grep "\b$verl\b"`
set -e
if [ "$ptst" = "" ]; then
echo "Adding base to $aroot/db/pwr_projectlist.dat"
echo "%base $verl $root/rls" >> $aroot/db/pwr_projectlist.dat
else
echo "Base $verl already exist in $aroot/db/pwr_projectlist.dat"
fi
fi
# Setup pwre
export pwre_bin=$root/src/tools/pwre/src/os_linux
export pwre_env_db=$root/pwre_db
source $pwre_bin/pwre_function
# Add pwre environment
unamestr=`eval uname`
machine=`eval uname -m`
if [ $machine == "amd64" ]; then
machine="x86_64"
fi
if [ $machine != "x86_64" ]; then
machine="x86"
fi
if [ $unamestr == "Darwin" ]; then
os="macos"
hw="x86_64"
elif [ $unamestr == "FreeBSD" ]; then
os="freebsd"
hw=$machine
else
os="linux"
hw=$machine
fi
btype="dbg"
ename=$ver$hw
desc=$verl
gui="qt"
if [ $gui == "qt" ]; then
export pwre_conf_qt=1
elif [ $gui == "gtk" ]; then
export pwre_conf_gtk=1
fi
pwre add $ename $root/src \"\" $root/rls $btype $os $hw "$desc"
pwre init $ename
# Build
mkdir -p $pwre_broot
pwre configure
pwre create_all_modules
pwre build_all_modules $gui
#pwre build_kernel $gui
#pwre method_build $gui
# Create a package version html file
$root/src/tools/pkg/deb/pwrrt/build.sh -v
co_convert -t -d $pwr_doc $pwr_eexe/xtt_version_help.dat
echo "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
echo ""
echo "Add the following lines to your .bashrc-file"
echo ""
echo "export pwra_db=$aroot/db"
echo "source \$pwra_db/pwr_setup.sh"
echo "pwrp set base $verl"
echo "export PWR_BUS_ID=999"
echo ""
echo "Create a project with pwra"
echo ""
echo "> pwra"
echo ""
echo "Read Getting Started Guide on www.proview.se about how to create"
echo "and configure a project"
echo ""
echo "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
\ No newline at end of file
[buildout]
extends =
../../stack/slapos.cfg
../../component/proviewR/buildout.cfg
../../component/open62541/buildout.cfg
parts +=
slapos-cookbook
open62541
proviewR
#[java-jdk]
#recipe = hexagonit.recipe.download
#url = https://download.java.net/java/GA/jdk12.0.2/e482c34c86bd4bf8b56c0b35558996b9/10/GPL/openjdk-12.0.2_linux-x64_bin.tar.gz
#md5sum = f5da6f4dec81bdd2a096184ec1d69216
#strip-top-level-dir = true
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