phpOpenTracker.spec

Dariusz Wlodarczyk milley w gostyn.pl
Śro, 17 Mar 2004, 01:51:10 CET


Dnia 16 marca 2004 o godzinie 00:41:01 z adresu adamg w biomerieux.pl,
dotarła do mnie niesamowita wiadomość o następującej treści:

AG> On Mon, Mar 15, 2004 at 10:37:10PM +0100, Dariusz Wlodarczyk wrote:

AG> I od razu mały komentarz:

I o to chodziło ;)

AG> =======
>> # $Revision: 1.0 $, $Date: 2004/03/14 19:46:42 $

AG> To zostawiamy - CVS się tym zajmie.

Tak myślałem ale nie byłem pewien do końca więc coś tam wpisałem ;)

>> Summary:	%{_pearname} - Website traffic analysis framework
>> Summary(pl):	%{_pearname} - Abstrakcyjna warstwa analizatora ruchu na stronach WWW

AG> Nie masz wcześniej zdefiniowanej _pearname, zatem to rozwinie się do
AG> %{_nil}. Lepiej to zamienić na nazwę (phpOpenTracker).

Ooops pozostałość po wersji wcześniejszej, która była oparta na
szablonie dla pear - zwykłe przeoczenie ;)

>> Name:		phpOpenTracker
>> Version:	1.4.1
>> Release:	1
>> License:	Apache Software License, Version 2.0
>> Group:		Development/Languages/PHP
>> Source0:	http://dl.sourceforge.net/phpopencounter/%{name}-%{version}.tgz
>> # Source0-md5:	450a54497531127bf3ed59e0cf17ab68
>> Patch0:		%{name}-config.patch
>> URL:		http://phpopentracker.de/
>> # BuildRequires:	rpm-php-pearprov >= 4.0.2-98
>> Requires:	php-pear
>> Requires:	jpgraph
>> BuildArch:	noarch
>> BuildRoot:	%{tmpdir}/%{name}-%{version}-root-%(id -u -n)

AG> so far so good. Jedyna uwaga - staramy się trzymać liste Requires i
AG> BuildRequires w alfabetycznej kolejności.

OK :)

>> 
>> %define		_target_dir	/usr/share/pear

AG> a to jest równoznaczne %{php_pear_dir}, zatem do wyrzucenia.

Hmmm a czy %{php_pear_dir} będzie dostępne jak wywalę linijkę
%include /usr/include/rpm/macros.php
Bo jeśli tak to w porządku (nie testowałem szczerze mówiąc przyjąłem,
że to gdzieś w macros.php jest definiowane)

>> %description
>> phpOpenTracker is a framework solution for the analysis of
>> website traffic and visitor analysis.
>>
>> %description -l pl
>> phpOpenTracker jest abstrakcyjną warstwą służącą do
>> analizowania ruchu oraz śledzenia użytkowników na stronach WWW

AG> Staramy się zawijac wokół... hmm, 73 kolumny?

Spoko poprawię ;)

>> %prep
>> %setup -q -c
>> %patch -p1

AG> Tu dobrze.

>> %install
>> rm -rf $RPM_BUILD_ROOT
>> install -d $RPM_BUILD_ROOT%{_target_dir}/%{name} \
>> 	  
>> $RPM_BUILD_ROOT%{_target_dir}/%{name}/{API,API/plugins,DB,LoggingEngine,conf}
>> 	   $RPM_BUILD_ROOT/etc/%{name}

AG> można uprościć:
AG> install -d
AG> $RPM_BUILD_ROOT{etc/%{name},%{php_pear_dir}/%{name}/{API/plugins,DB,LoggingEngine,conf}

No tak :)

AG> A etc zamienić na %{_sysconfdir}

Spoko :)

>> 
>> install %{name}-%{version}/%{name}.php   $RPM_BUILD_ROOT%{_target_dir}/
>> install %{name}-%{version}/%{name}/*.php
>> $RPM_BUILD_ROOT%{_target_dir}/%{name}/
>> install %{name}-%{version}/%{name}/API/*.php
>> $RPM_BUILD_ROOT%{_target_dir}/%{name}/API/
>> install %{name}-%{version}/%{name}/API/plugins/*.php
>> $RPM_BUILD_ROOT%{_target_dir}/%{name}/API/plugins
>> install %{name}-%{version}/%{name}/DB/*.php
>> $RPM_BUILD_ROOT%{_target_dir}/%{name}/DB/
>> install %{name}-%{version}/%{name}/LoggingEngine/*.php
>> $RPM_BUILD_ROOT%{_target_dir}/%{name}/LoggingEngine/
>> install %{name}-%{version}/%{name}/conf/* $RPM_BUILD_ROOT/etc/%{name}/
>> 
>> mv -f $RPM_BUILD_ROOT/etc/%{name}/phpOpenTracker.php.dist
>> $RPM_BUILD_ROOT/etc/%{name}/phpOpenTracker.php
>> mv -f $RPM_BUILD_ROOT/etc/%{name}/lock.ini.dist
>> $RPM_BUILD_ROOT/etc/%{name}/lock.ini
>> 
>> for i in `ls $RPM_BUILD_ROOT/etc/%{name}/*` ; do
>> ln -sf /etc/%{name}/`basename $i`
>> $RPM_BUILD_ROOT/%{_target_dir}/%{name}/conf/
>> done
>> 
>> %clean
>> rm -rf $RPM_BUILD_ROOT

AG> Raczej ok.

Cieszy mnie to ;)

>> %post
>> echo "Remember to create database and customize configuration
>> in /etc/%{name}/config.inc.php" >&2

AG> Zawijanie :)

:)

>> %files
>> %defattr(644,root,root,755)
>> %doc %{name}-%{version}/%{name}/docs/*
>> %dir %{_target_dir}/%{name}
>> %dir %{_target_dir}/%{name}/API
>> %dir %{_target_dir}/%{name}/API/plugins
>> %dir %{_target_dir}/%{name}/DB
>> %dir %{_target_dir}/%{name}/LoggingEngine
>> %dir %{_target_dir}/%{name}/conf
>> %dir /etc/%{name}
>> 
>> %{_target_dir}/*.php
>> %{_target_dir}/%{name}/*.php
>> %{_target_dir}/%{name}/API/*.php
>> %{_target_dir}/%{name}/API/plugins/*.php
>> %{_target_dir}/%{name}/DB/*.php
>> %{_target_dir}/%{name}/LoggingEngine/*.php
>> %config(noreplace) %verify(not size mtime md5) /etc/%{name}/*
>> %{_target_dir}/%{name}/conf/*

AG> Można trochę skrócić:
AG> %files
AG> %defattr(644,root,root,755)
AG> %doc %{name}-%{version}/%{name}/docs/*
AG> %{php_pear_dir}/%{name}
AG> %dir %{_sysconfdir}/%{name}
AG> %config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/%{name}/*

No więc na początku tak miałem ale przy uninstall później nie wywalało
katalogów i się pluło, że nie można usunąć %{name} ...

>> 
>> %define date	%(echo `LC_ALL="C" date +"%a %b %d %Y"`)
>> %changelog
>> * %{date} PLD Team <feedback w pld-linux.org>
>> All persons listed below can be reached at <cvs_login>@pld-linux.org
>> 
>> Revision 1.0  2004/03/14 19:46:42  milley
>> - inital release

AG> Nie wstawiamy logów - tyj zajmuje się cvs.
AG> =============================

To tak jak wyżej :)



Dzięki wielkie :)
Poprawię co trzeba i wystawię poprawione. Poproszę wtedy o końcowe
uwagi ;) Ale to dopiero jutro będzie.

-- 
Pozdrowienia,
milley

----------------------------------------------------------------------------
;) Większość ryb żyje w wodzie.



Więcej informacji o liście dyskusyjnej pld-users-pl