[Clam-devel] CLAM 1.1, The `More eye-candy, please' release.

oc2pus at arcor.de oc2pus at arcor.de
Mon Jun 11 22:50:19 PDT 2007


Am Montag, 11. Juni 2007 schrieb Pau Arumi:
> CLAM 1.1, The `More eye-candy, please' release.
uploaded :)

http://packman.links2linux.de/package/libclam1
http://packman.links2linux.de/package/clam-annotator
http://packman.links2linux.de/package/clam-networkeditor
http://packman.links2linux.de/package/clam-smstools
http://packman.links2linux.de/package/clam-voice2midi

new spec-files attached.
I renamed the package clam to libclam1 (new package policy from SuSE) and did 
a seperate spec-file for every component. IMHO this is more flexible for 
future additions.

the build went smoothly, one exception:
the SMSTools-tar-ball contains some scons-cache information, so a additional 
scons -c is sufficient.

have fun
Toni
-------------- next part --------------
# Copyright (c) 2007 oc2pus
# This file and all modifications and additions to the pristine
# package are under the same license as the package itself.
#
# Please submit bugfixes or comments to toni at links2linux.de

# Packmangroup: Multimedia
# Packmanpackagename: clam-networkeditor
# Packman: Toni Graffy
# Packmandepends: libclam1

# norootforbuild

%define _prefix	/usr

Summary:		The Network Editor is the application for editing CLAM networks
Group:			Productivity/Multimedia/Sound/Utilites
Name:			clam-networkeditor
Version:		1.1.0
Release:		0.pm.1
License:		GPL
URL:			http://clam.iua.upf.edu
Source:			NetworkEditor-%{version}.tar.gz
BuildRoot:		%{_tmppath}/%{name}-%{version}-%{release}-buildroot
BuildRequires:	gcc-c++
BuildRequires:	libclam-devel >= 1.1.0
BuildRequires:	Mesa-devel
BuildRequires:	pkgconfig
BuildRequires:	qt-devel
BuildRequires:	update-desktop-files
BuildRequires:	scons >= 0.96.92
#Requires:		libclam1 >= 1.1.0

%debug_package

%description
CLAM Network Editor, prototyping tool for CLAM.

The CLAM Network Editor is a tool for editing CLAM processing
networks. Those processing networks can become the processing core
of an audio application by using the CLAM::NetworkPlayer class in
such program, or by using the CLAM Prototyper to link the network
to a Qt Designer interface.

This packages provides both the Network Editor and the Prototyper.
It also provides a plugin for Qt Designer which adds widgets to
display several kinds of CLAM audio objects from a running network.

%package examples
Summary:	Examples for the CLAM Network Editor
Group:		Productivity/Multimedia/Sound/Utilites
Requires:	%{name} = %{version}
# Packmandepends: clam-networkeditor libclam1

%description examples
This package provides examples of networks, some of them with their
user interface to be executed also by the Prototyper.

Those examples include, among others, some sinusoidal plus residual
modelling (SMS) transformations and tonal (chords, notes) analysis.

%prep
%setup -q -n NetworkEditor-%{version}

%build
%__install -dm 755 %{buildroot}%{_prefix}

# Setup for parallel builds
numprocs=`egrep -c ^cpu[0-9]+ /proc/stat || :`
if [ "$numprocs" = "0" ]; then
	numprocs=1
fi

export QTDIR=/usr
scons -j$numprocs \
	prefix=%{buildroot}%{_prefix} \
	install_prefix=%{buildroot}%{_prefix} \
	clam_prefix=%{_prefix} \
	qt_plugins_install_path=/lib/qt4/plugins/designer \
	release=1

%install
export QTDIR=/usr
scons install

# icon
%__install -dm 755 %{buildroot}%{_datadir}/pixmaps
%__install -m 644 resources/NetworkEditor-icon.png \
	%{buildroot}%{_datadir}/pixmaps/%{name}.png

# adjust path for examples
%{_datadir}/clam/sconstools/changeExampleDataPath.py \
	%{buildroot}%{_datadir}/networkeditor \
	%{_datadir}/networkeditor

# menu-entries
%__sed -i -e 's|/usr/share/pixmaps/||g' \
	%{buildroot}%{_datadir}/applications/NetworkEditor.desktop
%__sed -i -e 's|.xpm|.png|g' \
	%{buildroot}%{_datadir}/applications/NetworkEditor.desktop
%__sed -i -e 's|Application;||g' \
	%{buildroot}%{_datadir}/applications/NetworkEditor.desktop
%__sed -i -e 's|Audio;||g' \
	%{buildroot}%{_datadir}/applications/NetworkEditor.desktop
%suse_update_desktop_file NetworkEditor AudioVideo Music

%__sed -i -e 's|/usr/share/pixmaps/||g' \
	%{buildroot}%{_datadir}/applications/Prototyper.desktop
%__sed -i -e 's|.xpm|.png|g' \
	%{buildroot}%{_datadir}/applications/Prototyper.desktop
%__sed -i -e 's|Application;||g' \
	%{buildroot}%{_datadir}/applications/Prototyper.desktop
%__sed -i -e 's|Audio;||g' \
	%{buildroot}%{_datadir}/applications/Prototyper.desktop
%suse_update_desktop_file Prototyper AudioVideo Music

%clean
[ -d %{buildroot} -a "%{buildroot}" != "" ] && %__rm -rf %{buildroot}

%files
%defattr(-,root,root)
%doc CHANGES COPYING README
%{_bindir}/NetworkEditor
%{_bindir}/OfflinePlayer
%{_bindir}/Prototyper
%{_libdir}/qt4/plugins/designer/*
%{_mandir}/man1/NetworkEditor*
%{_mandir}/man1/Prototyper*
%dir %{_datadir}/networkeditor
%{_datadir}/networkeditor/NetworkEditor-icon.svg
%dir %{_datadir}/networkeditor/i18n
%{_datadir}/networkeditor/i18n/*.qm
%{_datadir}/mime/packages/clam-network.xml
%{_datadir}/mimelnk/application/vnd.clam.network.desktop
%{_datadir}/applications/NetworkEditor.desktop
%{_datadir}/applications/Prototyper.desktop
%{_datadir}/pixmaps/%{name}.png

%files examples
%defattr(-,root,root)
%dir %{_datadir}/networkeditor
%dir %{_datadir}/networkeditor/example-data
%{_datadir}/networkeditor/example-data/*

%changelog
* Mon Jun 11 2007 Toni Graffy <toni at links2linux.de> - 1.1.0-0.pm.1
- split-off package from clam
- version 1.1.0
-------------- next part --------------
# Copyright (c) 2007 oc2pus
# This file and all modifications and additions to the pristine
# package are under the same license as the package itself.
#
# Please submit bugfixes or comments to toni at links2linux.de

# Packmangroup: Libraries
# Packmanpackagename: libclam1
# Packman: Toni Graffy
# Packmandepends: alsa jack ladspa libsndfile mad oscpack

# norootforbuild

%define _prefix	/usr

Summary:		CLAM - C++ Library for Audio and Music
Name:			libclam1
Version:		1.1.0
Release:		0.pm.1
License:		GPL
URL:			http://clam.iua.upf.edu
Group:			System/Libraries
Source0:		CLAM-%{version}.tar.gz
BuildRoot:		%{_tmppath}/%{name}-%{version}-%{release}-buildroot
BuildRequires:	alsa-devel
BuildRequires:	doxygen
BuildRequires:	fftw3-devel
BuildRequires:	gcc-c++
BuildRequires:	ghostscript-library
BuildRequires:	graphviz
BuildRequires:	id3lib-devel
BuildRequires:	jack-devel
BuildRequires:	ladspa
BuildRequires:	libjpeg-devel
BuildRequires:	libogg-devel
BuildRequires:	libsndfile-devel
BuildRequires:	libvorbis-devel
BuildRequires:	mad-devel
BuildRequires:	Mesa-devel
BuildRequires:	oscpack
BuildRequires:	pkgconfig
BuildRequires:	portaudio-devel
BuildRequires:	qt-devel
BuildRequires:	scons >= 0.96.92
BuildRequires:	te_latex
BuildRequires:	Xerces-c-devel
Requires:		alsa
Requires:		fftw3
Requires:		jack
Requires:		mad
Requires:		portaudio
Requires:		Xerces-c
Obsoletes:		clam
Provides:		clam

%description
CLAM stands for C++ Library for Audio and Music and in Catalan means
something like a 'continuous sound produced by a large number of
people as to show approval or disapproval of a given event' It is
the best name we could find after long discussions and it is
certainly much better than its original name (MTG-Classes).

CLAM is a framework to develop audio and music applications in C++.

It provides tools to perform advanced analysis, transformations and
synthesis, visualization for audio and music related objects, and
other tools that are useful to abstract target platform for most
tasks in an audio applications such as audio devices, file formats,
threading...

%package -n libclam-devel
Summary:	CLAM - C++ Library for Audio and Music - development files
Group:		Development/Libraries/C and C++
Requires:	fftw3-devel
Requires:	gcc-c++
Requires:	id3lib-devel
Requires:	jack-devel
Requires:	ladspa
Requires:	libclam1 = %{version}
Requires:	libogg-devel
Requires:	libsndfile-devel
Requires:	libvorbis-devel
Requires:	mad-devel
Requires:	oscpack
Requires:	pkgconfig
Requires:	portaudio-devel
Requires:	qt-devel
Obsoletes:	clam-devel
Provides:	clam-devel
# Packmandepends: jack-devel ladspa libclam1 libsndfile-devel mad-devel oscpack

%description -n libclam-devel
CLAM is a framework to develop audio and music applications in C++.
It provides tools to perform advanced analysis, transformations and
synthesis, visualization for audio and music related objects, and
other tools that are useful to abstract target platform for most
tasks in an audio applications such as audio devices, file formats,
threading...

This package contains the files needed to develop programs with the
clam library.

%package doc
Summary:	Contains the clam-framework documentation and some example programs
Group:		Documentation/Other

%description doc
This package contains the framework documentation and some example
programs.

%debug_package

%prep
%setup -q -n CLAM-%{version}

%build
%__install -dm 755 %{buildroot}%{_prefix}

scons \
	prefix=%{buildroot}%{_prefix} \
	release=1 \
	double=0 \
	xmlbackend=xercesc \
	with_ladspa=1 \
	with_osc=1 \
	with_jack=1 \
	with_fftw3=1 \
	with_fftw=0 \
	with_nr_fft=1 \
	with_sndfile=1 \
	with_oggvorbis=1 \
	with_mad=1 \
	with_id3=1 \
	with_portaudio=1 \
	with_alsa=1 \
	with_portmidi=1

scons

%install
scons install

# and now doxygenate CLAM stuff
doxygen ./doxygen.cfg

%clean
[ -d %{buildroot} -a "%{buildroot}" != "" ] && %__rm -rf %{buildroot}

%files
%defattr(-,root,root)
%doc CHANGES
%{_libdir}/lib*.so.*

%files -n libclam-devel
%defattr(-,root,root)
%doc CHANGES
%dir %{_includedir}/CLAM
%{_includedir}/CLAM/*
%{_libdir}/lib*.so
%{_libdir}/pkgconfig/*
%{_datadir}/clam/sconstools/*.py*

%files doc
%defattr(-,root,root)
%doc CHANGES
%doc doxygen/*

%changelog
* Mon Jun 11 2007 Toni Graffy <toni at links2linux.de> - 1.1.0-0.pm.1
- splitted off sub-packages: clam-networkeditor, clam-annotator, clam-smstools
- update to CLAM-1.1.0
- renamed package to libclam1, libclam-devel, libclam-doc
* Wed Mar 21 2007 Toni Graffy <toni at links2linux.de> - 1.0.0-0.pm.1
- update to CLAM-1.0.0, NetworkEditor-1.0.0, SMSTools-0.4.7, Annotator-0.3.8
* Tue Mar 20 2007 Toni Graffy <toni at links2linux.de> - 0.99.0-0.pm.1
- update to 0.99
- NetworkEditor-0.4.4, SMSTools-0.4.6, Annotator-0.3.7
* Wed Feb 14 2007 Toni Graffy <toni at links2linux.de> - 0.98.0-0.pm.1
- update to 0.98
* Wed Jan 31 2007 Toni Graffy <toni at links2linux.de> - 0.97.0-0.pm.1
- initial build 0.97.0
-------------- next part --------------
# Copyright (c) 2007 oc2pus
# This file and all modifications and additions to the pristine
# package are under the same license as the package itself.
#
# Please submit bugfixes or comments to toni at links2linux.de

# Packmangroup: Multimedia
# Packmanpackagename: clam-voice2midi
# Packman: Toni Graffy
# Packmandepends: libclam1

# norootforbuild

%define _prefix	/usr

Summary:		CLAM Voice2MIDI
Name:			clam-voice2midi
Version:		0.3.7
Release:		0.pm.1
License:		GPL
URL:			http://clam.iua.upf.edu
Group:			Productivity/Multimedia/Sound/Utilities
Source0:		Voice2MIDI-%{version}.tar.gz
BuildRoot:		%{_tmppath}/%{name}-%{version}-%{release}-buildroot
BuildRequires:	libclam-devel >= 1.1.0
BuildRequires:	gcc-c++
BuildRequires:	Mesa-devel
BuildRequires:	qt-devel
BuildRequires:	scons
BuildRequires:	update-desktop-files
#Requires:		libclam1 >= 1.1.0

%description
This program is a GUI tool to that loads audio files containing
monophonic melodies and extracts the melody as a MIDI file or as
an XML file.

%debug_package

%prep
%setup -q -n Voice2MIDI-%{version}
# adjust doc-path
%__sed -i -e 's|/share/doc/voice2midi/|/share/doc/packages/%{name}/|g' \
	SConstruct

%build
%__install -dm 755 %{buildroot}%{_prefix}

export QTDIR=/usr
scons \
	prefix=%{buildroot}%{_prefix} \
	install_prefix=%{buildroot}%{_prefix} \
	clam_prefix=%{_prefix} \
	release=1

%install
export QTDIR=/usr
scons install

# menu-entry
%__cat > %{name}.desktop << EOF
[Desktop Entry]
Name=Voice2MIDI
Comment=CLAM Voice2MIDI
Exec=Voice2MIDI
Icon=
Terminal=0
Type=Application
EOF
%suse_update_desktop_file %{name} AudioVideo Music

for i in CHANGES COPYING README; do
	%__install -m 644 $i \
		%{buildroot}%{_docdir}/%{name}
done

%clean
[ -d %{buildroot} -a "%{buildroot}" != "" ] && %__rm -rf %{buildroot}

%files
%defattr(-,root,root)
%doc %{_docdir}/%{name}
%{_bindir}/Voice2MIDI
%{_mandir}/man1/Voice2MIDI.1.gz
%{_datadir}/voice2midi/example-data/birthday.wav

%changelog
* Mon Jun 11 2007 Toni Graffy <toni at links2linux.de> - 0.3.7-0.pm.1
- update to 0.3.7
* Thu Apr 12 2007 Toni Graffy <toni at links2linux.de> - 0.3.6-0.pm.1
- initial build 0.3.6
-------------- next part --------------
# Copyright (c) 2007 oc2pus
# This file and all modifications and additions to the pristine
# package are under the same license as the package itself.
#
# Please submit bugfixes or comments to toni at links2linux.de

# Packmangroup: Multimedia
# Packmanpackagename: clam-annotator
# Packman: Toni Graffy
# Packmandepends: libclam1

# norootforbuild

%define _prefix	/usr

Summary:		The CLAM Annotator - A tool that can be used to visualize, check and modify music information extracted from audio
Group:			Productivity/Multimedia/Sound/Utilites
Name:			clam-annotator
Version:		0.3.9
Release:		0.pm.1
License:		GPL
URL:			http://clam.iua.upf.edu
Source:			Annotator-%{version}.tar.gz
BuildRoot:		%{_tmppath}/%{name}-%{version}-%{release}-buildroot
BuildRequires:	gcc-c++
BuildRequires:	libclam-devel >= 1.1.0
BuildRequires:	Mesa-devel
BuildRequires:	pkgconfig
#BuildRequires:	qt3-devel
BuildRequires:	qt-devel
BuildRequires:	update-desktop-files
BuildRequires:	scons >= 0.96.92

%description
The CLAM Annotator is a tool that can be used to visualize, check
and modify music information extracted from audio: low level
features, note segmentation, chords, structure...
The tool is intended to be useful for the music information
retrieval research whenever you need to:

* Supervise and correct the results of automated audio feature
extraction algorithms.

* Generate manually edited annotations of audio as training
examples or ground truth for those algorithms.

The CLAM Annotator is not tied to a fixed description scheme (the
set of attributes). You can define the working attribute set by
providing an XML description schema definition. A sample description
scheme and an extractor program are provided with the Annotator but
you could implement your own one with different algorithms and
attributes. Also tools are provided to select and join attributes
from the output of several description sources.

Other key features are:
* Attribute types:
Free text, Enumeration, Bounded float, Bounded integer, Frame
Division, Segmentations (Sizeless, Gapless, Overlapless or Free), ..
* Several time segmentations can be defined at once
* Each segment can have its own attributes
* Auralization for the segmentations (click on the beggining)
* Auralization for the low-level descriptor (magnitude to freq)

%package examples
Summary:	The CLAM Annotator - examples
Group:		Productivity/Multimedia/Sound/Utilites
Requires:	%{name} = %{version}
# Packmandepends: libclam1 clam-annotator

%description examples
This package contains example projects for CLAM Annotator to do.

%debug_package

%prep
%setup -q -n Annotator-%{version}

%build
%__install -dm 755 %{buildroot}%{_prefix}

# Setup for parallel builds
numprocs=`egrep -c ^cpu[0-9]+ /proc/stat || :`
if [ "$numprocs" = "0" ]; then
	numprocs=1
fi

export QTDIR=/usr
scons -C ./vmqt \
	-j$numprocs \
	install_prefix=%{buildroot}%{_prefix} \
	clam_prefix=%{_prefix} \
	release=1
scons -j$numprocs \
	prefix=%{buildroot}%{_prefix} \
	install_prefix=%{buildroot}%{_prefix} \
	clam_prefix=%{_prefix} \
	release=1

%install
export QTDIR=/usr
scons install

# icon
%__install -dm 755 %{buildroot}%{_datadir}/pixmaps
%__install -m 644 src/images/annotator-logo.png \
	%{buildroot}%{_datadir}/pixmaps/%{name}.png

%{_datadir}/clam/sconstools/changeExampleDataPath.py \
	%{buildroot}%{_datadir}/annotator \
	%{_datadir}/annotator

# menu-entry
%__sed -i -e 's|/usr/share/pixmaps/||g' \
	%{buildroot}%{_datadir}/applications/Annotator.desktop
%__sed -i -e 's|.xpm|.png|g' \
	%{buildroot}%{_datadir}/applications/Annotator.desktop
%__sed -i -e 's|Application;||g' \
	%{buildroot}%{_datadir}/applications/Annotator.desktop
%__sed -i -e 's|Audio;||g' \
	%{buildroot}%{_datadir}/applications/Annotator.desktop
%suse_update_desktop_file Annotator AudioVideo Music

%clean
[ -d %{buildroot} -a "%{buildroot}" != "" ] && %__rm -rf %{buildroot}

%files
%defattr(-,root,root)
%doc CHANGES COPYING README
%{_bindir}/Annotator
%{_bindir}/BocaClient
%{_bindir}/ChordExtractor
%{_bindir}/ClamExtractorExample
%dir %{_datadir}/annotator
%dir %{_datadir}/annotator/i18n
%{_datadir}/annotator/i18n/*.qm
%{_mandir}/man1/Annotator*
%{_mandir}/man1/ClamExtractorExample*
%{_datadir}/applications/Annotator.desktop
%{_datadir}/pixmaps/clam-annotator.png

%files examples
%defattr(-,root,root)
%dir %{_datadir}/annotator
%dir %{_datadir}/annotator/example-data
%{_datadir}/annotator/example-data/*

%changelog
* Mon Jun 11 2007 Toni Graffy <toni at links2linux.de> - 0.3.9-0.pm.1
- update to Annotator-0.3.9
-------------- next part --------------
# Copyright (c) 2007 oc2pus
# This file and all modifications and additions to the pristine
# package are under the same license as the package itself.
#
# Please submit bugfixes or comments to toni at links2linux.de

# Packmangroup: Multimedia
# Packmanpackagename: clam-smstools
# Packman: Toni Graffy
# Packmandepends: libclam1

# norootforbuild

%define _prefix	/usr

Summary:		CLAM SMSTools, SMS based audio authoring tool
Group:			Productivity/Multimedia/Sound/Utilites
Name:			clam-smstools
Version:		0.4.8
Release:		0.pm.1
License:		GPL
URL:			http://clam.iua.upf.edu
Source:			SMSTools-%{version}.tar.gz
BuildRoot:		%{_tmppath}/%{name}-%{version}-%{release}-buildroot
BuildRequires:	gcc-c++
BuildRequires:	libclam-devel >= 1.1.0
BuildRequires:	Mesa-devel
BuildRequires:	pkgconfig
BuildRequires:	qt3-devel
BuildRequires:	qt-devel
BuildRequires:	update-desktop-files
BuildRequires:	scons >= 0.96.92

%description
CLAM SMSTools, SMS based audio authoring tool.

SmsTools is an audio authoring application which allows to analyze
the audio using Spectral Model Synthesis (SMS) and perform pipelined
transformations on such representation.

SMS representation makes easy to perform quality effects such as
gender change, pitch shift, time streetch, morphing...

%package examples
Summary:	Examples for CLAM SMSTools
Group:		Productivity/Multimedia/Sound/Utilites
Requires:	%{name} = %{version}
# Packmandepends: libclam1 clam-smstools

%description examples
This package provides examples of smstools.

%debug_package

%prep
%setup -q -n SMSTools-%{version}

%build
%__install -dm 755 %{buildroot}%{_prefix}

# Setup for parallel builds
numprocs=`egrep -c ^cpu[0-9]+ /proc/stat || :`
if [ "$numprocs" = "0" ]; then
	numprocs=1
fi

export QTDIR=/usr/lib/qt3
scons -c -j$numprocs \
	prefix=%{buildroot}%{_prefix} \
	install_prefix=%{buildroot}%{_prefix} \
	clam_prefix=%{_prefix} \
	release=1
scons -j$numprocs \
	prefix=%{buildroot}%{_prefix} \
	install_prefix=%{buildroot}%{_prefix} \
	clam_prefix=%{_prefix} \
	release=1 \
	verbose=1

%install
export QTDIR=/usr/lib/qt3
scons install

# icon
%__install -dm 755 %{buildroot}%{_datadir}/pixmaps
%__install -m 644 resources/SMSTools-icon.png \
	%{buildroot}%{_datadir}/pixmaps/%{name}.png

%{_datadir}/clam/sconstools/changeExampleDataPath.py \
	%{buildroot}%{_datadir}/smstools \
	%{_datadir}/smstools

##############
# menu-entries
##############
%__sed -i -e 's|/usr/share/pixmaps/||g' \
	%{buildroot}%{_datadir}/applications/SMSTools.desktop
%__sed -i -e 's|.xpm|.png|g' \
	%{buildroot}%{_datadir}/applications/SMSTools.desktop
%__sed -i -e 's|Application;||g' \
	%{buildroot}%{_datadir}/applications/SMSTools.desktop
%__sed -i -e 's|Audio;||g' \
	%{buildroot}%{_datadir}/applications/SMSTools.desktop

%suse_update_desktop_file SMSTools AudioVideo Music

%clean
[ -d %{buildroot} -a "%{buildroot}" != "" ] && %__rm -rf %{buildroot}

%files
%defattr(-,root,root)
%doc CHANGES COPYING
%{_bindir}/SMSBatch
%{_bindir}/SMSConsole
%{_bindir}/SMSTools
%{_mandir}/man1/SMSTools*
%{_datadir}/applications/SMSTools.desktop
%{_datadir}/pixmaps/%{name}.png

%files examples
%defattr(-,root,root)
%dir %{_datadir}/smstools
%dir %{_datadir}/smstools/example-data
%{_datadir}/smstools/example-data/*

%changelog
* Mon Jun 11 2007 Toni Graffy <toni at links2linux.de> - 0.4.8-0.pm.1
- update to SMSTools-0.4.8


More information about the clam-devel mailing list