plptools.spec
Paweł Sakowski
pawel w sakowski.eu.org
Śro, 29 Wrz 2004, 16:26:48 CEST
On Wed, 2004-09-29 at 01:44 +0200, Bobby Spark wrote:
> Udało się to spakietować, a nawet działa...
> ale niebardzo mi się to podoba, zresztą sami popatrzcie:
>
> [...]
> %{__make} install \
> - DESTDIR=$RPM_BUILD_ROOT
> + DESTDIR=$RPM_BUILD_ROOT \
> + kde_htmldir=%{_kdedocdir} \
> + kde_libs_htmldir=%{_kdedocdir} \
> + top_lib_pkgincludedir=%{_includedir}/%{name} \
> + top_plpprint_pkgdatadir=%{_datadir}/%{name} \
> + kde_icondir=%{_pixmapsdir} \
> + kde_appsdir=%{_applnkdir}
> [...]
Mnie tam się podoba :)
> poprawki zrobiłem przy użyciu sed/awk/grep w sekcji prep bo tak mi było
> łatwiej pracować niż patcha robić, a nawet nie wiem na ile to się nadaje
> jeśli ok, mogę to do patcha przerzucić...
To:
> +grep -B1000 "AC_OUTPUT(" conf/configure.in.in | \
> + grep -v "AC_OUTPUT(" > configure.in.in
> +cat << EOF >> configure.in.in
> +AC_CONFIG_FILES([ plpprint/prolog.ps ])
> +AC_CONFIG_FILES([ doc/ncpd.man ])
> +AC_CONFIG_FILES([ doc/plpnfsd.man ])
> +AC_CONFIG_FILES([ doc/plpftp.man ])
> +AC_CONFIG_FILES([ doc/sisinstall.man ])
> +AC_CONFIG_FILES([ doc/plpprintd.man ])
> +AC_CONFIG_FILES([ doc/plpbackup.man ])
> +EOF
> +rm conf/configure.in.in configure{.in,} po/Makefile.in.in
i to:
> +for MFILE in `find -name Makefile.am`; do
> + awk ' /INCLUDES/ { sub(/$/, " -I$(top_srcdir)/include") }; {print}' \
> + $MFILE > ${MFILE}2
> + mv -f ${MFILE}2 $MFILE
> +done
jest bardzo dobrym przykładem jak _nie_ modyfikować plików ze speca.
Przez sed -i można robić zmiany typu s,/usr/lib,%{_libdir},g , tutaj na
pierwszy rzut oka nie widać co się dzieje, a jest i duża szansa że przy
następnej wersji taka sztuczka przestanie działać (szczególnie w
przypadku configure.in.in). Przynajmniej te dwa wstawiłbym do patcha.
> +for LANG in en de pl; do
> + MFILE=kde2/doc/kioslave/$LANG/Makefile.am
> + echo "KDE_LANG = $LANG" > $MFILE
> + echo "KDE_DOCS = kioslave" >> $MFILE
> +done
Tu byłoby czytelniej gdybyś pisał co wycinasz z M.am, a nie co
zostawiasz. I też raczej widziałbym tu patcha.
Przy okazji, odpowiednie kawałki speca po zoptymalizowaniu:
sed -i '/INCLUDES/s,$,-I$(top_srcdir)/include,'
sed -i '/AC_OUTPUT/,/)/d;/_ALL_SOURCE/d'
I poprosiłbym o jakiś opis czym się zajmuje cvs_fixes.patch, cobym miał
co do commit loga wstawić.
--
+----------------------------------------------------------------------+
| Paweł Sakowski <pawel w sakowski.eu.org> Never trust a man |
| who can count up to 1023 on his fingers. |
+----------------------------------------------------------------------+
Więcej informacji o liście dyskusyjnej pld-devel-pl