Re: [proaudio] ebuild TODO-list

[ Thread Index | Date Index | More lists.tuxfamily.org/proaudio Archives ]


Dominique Michel wrote:
Le Sun, 30 Jul 2006 21:48:38 +0200,
Dominique Michel <dominique.michel@xxxxxxxxxxxx> a écrit :

Le Sun, 30 Jul 2006 21:04:23 +0200,
Dominique Michel <dominique.michel@xxxxxxxxxxxx> a écrit :

Le Sun, 30 Jul 2006 19:04:57 +0200,
Dominique Michel <dominique.michel@xxxxxxxxxxxx> a écrit :

Le Sun, 30 Jul 2006 18:38:39 +0200,
Frieder Bürzele <evermind@xxxxxxxxxxxxx> a écrit :

Dominique Michel wrote:
Le Sat, 29 Jul 2006 19:27:55 +0200,
Frieder Bürzele <evermind@xxxxxxxxxxxxx> a écrit :

Dominique Michel wrote:
Le Sat, 29 Jul 2006 18:16:48 +0200,
Frieder Bürzele <evermind@xxxxxxxxxxxxx> a écrit :

Dominique Michel wrote:
Le Sat, 29 Jul 2006 14:55:50 +0200,
Frieder Bürzele <evermind@xxxxxxxxxxxxx> a écrit :


-rt-exec ftp://ftp.compro.net/public/rt-exec/README
 > It can be downloaded from
 > ftp://ftp.compro.net/public/rt-exec/rt-exec-1.0.0.tar.bz2
 > # This software is intended to test the deterministic/real-time
 > # capabilities of your computer.

I can take this one. I just downloaded it and compiled it.
The only problem I see for an ebuild is at it is no install script in the Makefile.
The README say at the program will just run where it have been compiled, and at it must be run as root.
So, I am not sure where to copy the files. I am thinking about /usr/share/rt-exec and making symlinks in /usr/sbin to the executables. But I must first test if it work.

Best,
Dominique
why don't you install it directly to /usr/sbin ?
It is *.o library files in .../rt-exec, and configurations files too. I thing at it will be better to use symlinks if the program work that way, so we only have executables and symlinks in /usr/sbin. I have allready symlinks in /usr/sbin, but no configuration files or library files.

Dominique

ok, but the location should be /usr/lib/rt_exec I think.
sure that *.o is needed -- it looks like an object files

    Frieder

The good news are at I have a working ebuild, the program work and my system don't crash.

The bad news is at it doesn't work with the symlinks but must be started from the directory where ALL the files are.

So, the question is where to install it, because both the program and the monitor must be started as root. /usr/sbin is definitly not the right place because of all the object and configurations files. So maybe /usr/lib/rt-exec.

Dominique

I can write a wrapper script which solve this,
Which binaries are the needed executables?

Greetz
    Frieder

Hiya,

The exe files are: crunchsys, exec, go, killtasks, mon, start and stop_exec.
Another problem is some of their names...

When I run "/usr/sbin/start &" as explained in the readme, I only get an error message as what exec don't find sched. sched is the default config file.

If I done a "cd /sr/lib/rt-exec", "start &" is just working fine.
It is "cd /usr/lib/rt-exec"
When I don't change to /usr/lib/rt-exec but run "/usr/lib/rt-exec/start &", the program fail to run with the same error as with the sysmlink.
I try a simple script "rt-exec" in /usr/sbin:

#!/bin/bash
cd /usr/lib/rt-exec
./start &

and it just work. start can take some parameters and options, so it will be needed to add those possibilities in the script.
For the parameter, I have done a new script:

#!/bin/bash
cd /usr/lib/rt-exec
if [ ! $0 ]
    then ./start -s $0 &
    else ./start &
fi

I am not good at shell scripts. This one work WITH and without a parameter:

#!/bin/bash
cd /usr/lib/rt-exec
if [ -z $1 ]
then echo "Start"
        ./start &
    else
echo "Start $1" ./start -s $1 &
fi

And we know what the script is doing, but we still don't have the output of start in the console.

I've also done an Script which I've included it in the ebuild attached


I called it rt-exec-wrapper and its also located inside /usr/lib/rt-exec
It just checks from which symlink it is called and then
execute the caller's name (--> name of the symlink)

Please test the attached ebuild

Greetz

   Frieder


It seam to work. When runing "/usr/sbin/rt_exec sched_1". the script will run "./start -s sched_1"
But now, the srcipt don't show the output of the command in the console, and I don't know how it is possible to modify the script to do that. Any clue someone?

I know at it work because mon is working, but it will be really cool to have start's output in the console, it is some interesting output.

Best,
Dominique

I think at the only needed symlinks are in fact for stop_exec and crunchsys. The other commands are not mandatory,

Dominique

Another thing is at the crunchsys file must be run from /usr/src/linux, otherwise it will just generate a huge amount of 0 byte logfiles. It is possible to sed this file so at it change to /usr/src/linux, but I have not done it at this time.

The ebuild with the sysmlinks is joint if you want to look at it.

Cheers,
Dominique


# Copyright 1999-2006 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: $

#inherit eutils

DESCRIPTION="Test the deterministic/real-time capabilities of your computer."
HOMEPAGE="ftp://ftp.compro.net/public/rt-exec";
SRC_URI="ftp://ftp.compro.net/public/rt-exec/${P}.tar.bz2";
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~x86"

IUSE=""
RESTRICT="nomirror"
DEPEND="sys-libs/ncurses"

S="${WORKDIR}/${PN}"

src_unpack() {
	unpack "${A}"
	cd "${S}"
	cat << EOF > rt-exec-wrapper
#!/bin/bash
# wrapper script for rt-exec binaries 
# --> so binaries will be executed within their directories

# script is inspired by gentoo am-wrapper.sh script
# distributed under GPL v2

caller="\${0##*/}"
rt_exec_binaries_path="/usr/lib/rt-exec"
args="\${@}"

if [ "\${caller}" == "rt-exec-wrapper" ] || [ "\${#caller}" == "0" ]; then
	echo "Don't call this script directly." >&2
	exit 1
fi

cd "\${rt_exec_binaries_path}"
exec ./"\${caller}" \${args}

echo "rt-exec-wrapper: was unable to exec \${caller} !?" >&2
exit 1
EOF
}

src_compile() {
	emake clean veryclean all || die "Compilation failed"
}

src_install() {
	dodoc COPYING README || die "Doc installation failed"
	rm *.c
	exeopts -m0744
	exeinto /usr/lib/rt-exec
	doexe rt-exec-wrapper crunchsys exec go killtasks mon start stop_exec task* || die "Binaries installation failed"
	dosym ../lib/rt-exec/rt-exec-wrapper /usr/sbin/crunchsys
	dosym ../lib/rt-exec/rt-exec-wrapper /usr/sbin/exec
	dosym ../lib/rt-exec/rt-exec-wrapper /usr/sbin/go
	dosym ../lib/rt-exec/rt-exec-wrapper /usr/sbin/killtasks
	dosym ../lib/rt-exec/rt-exec-wrapper /usr/sbin/mon
	dosym ../lib/rt-exec/rt-exec-wrapper /usr/sbin/start
	dosym ../lib/rt-exec/rt-exec-wrapper /usr/sbin/stop_exec
	insinto /usr/lib/rt-exec
	doins *.o || die "Object files installtion failed"
	doins sche* || die "Configuration files installation failed"
}


Mail converted by MHonArc 2.6.19+ http://listengine.tuxfamily.org/