[Gelistirici] İsmail.py de iyileştirme.

Güngör Erseymen gelurine at gmail.com
10 Ara 2008 Çar 17:41:56 EET


2008/12/10 Ozan Çağlayan <ozan at pardus.org.tr>:
> commit etmeye çalışıp da edemediğin değişiklik nedir?
> Tam olarak anlamadım nasıl bir engele takıldığını ve nasıl çözdüğünü.
> sbcl'ye yapmaya çalıştığın değişikliği içeren svn diff çıktısını ekler
> misin buraya?

Aslında karşılaştığım engel sbcl'nin kendi içinde iki aşamalı bir
derleme süreci olması ve ilk aşamayı tetikleyecek bir common lisp
derleyicisinin sistemde kurulu olma zorunluluğu. Teoride diğer ansi cl
derleyicileride bu işlemi başlatabilmeli fakat clisp ve ecl burada
patlıyor. Sonuç olarak sbcl kendisinin build depi olmak zorunda
kalıyor ve ismail.py de bu duruma izin vermiyor.

Ben sbcl özelinde ismail.py'yi incelerken, genel anlamda bir paketin
build dep lerinin arasında o pspec.xml den oluşturulan paketlerin daha
önceki releaselarının da bulunabilmesi gerektiği sonucunu çıkarmıştım.
Önceki mailimde gönderdiğim patch de aslında bunu yapıyor; eklenen
deplerin son release/version dan küçük olduğu sürece kabuledilmesini
sağlıyor.


Aldığım hata mesajı:
---------------------------------
$ svn ci
Waiting for Emacs...
Sending        actions.py
Adding         comar
Adding         comar/package.py
Adding         files/001-default-lib-dir.patch
Adding         files/customize-target-features.patch
Sending        pspec.xml
Adding         translations.xml
Transmitting file data ......svn: Commit failed (details follow):
svn: 'pre-commit' hook failed with error output:
["PISI: package name 'sbcl' is in source 'sbcl' build dependencies\n"]
svn: Your commit message was left in a temporary file:
svn:    '/home/elurin/base/tmp/sbcl-contrib/svn-commit.2.tmp'



pspec.xml de yapmaya çalıştığım değişiklik:
---------------------------------
$ svn diff pspec.xml
Index: pspec.xml
===================================================================
--- pspec.xml   (revision 9111)
+++ pspec.xml   (working copy)
@@ -10,9 +10,16 @@
         </Packager>
         <License>MIT</License>
         <IsA>app:console</IsA>
-        <Summary>A compiler and runtime system for ANSI Common Lisp.</Summary>
+        <Summary>A compiler and runtime system for ANSI Common Lisp</Summary>
         <Description>A compiler and runtime system for ANSI Common
Lisp. It provides an interactive environment including an integrated
native compiler, a debugger, and many extensions.</Description>
-        <Archive sha1sum="ebd5a8f45a72dd9b21229b125b14f0a48e14e9ad"
type="tarbz2">mirrors://sourceforge/sbcl/sbcl-1.0.22-x86-linux-binary.tar.bz2</Archive>
+        <Archive sha1sum="7a430cbdb4a13ca79bcc70b7a3dd4cb2b05f2ed5"
type="tarbz2">mirrors://sourceforge/sbcl/sbcl-1.0.22-source.tar.bz2</Archive>
+       <BuildDependencies>
+            <Dependency releaseFrom="2">sbcl</Dependency>
+       </BuildDependencies>
+       <Patches>
+           <Patch level="1">001-default-lib-dir.patch</Patch>
+           <Patch level="1">customize-target-features.patch</Patch>
+       </Patches>
     </Source>

     <Package>
@@ -27,9 +34,23 @@
         <AdditionalFiles>
             <AdditionalFile target="/etc/env.d/99sbcl">99sbcl</AdditionalFile>
         </AdditionalFiles>
+       <Provides>
+           <COMAR script="package.py">System.Package</COMAR>
+       </Provides>
     </Package>

     <History>
+        <Update release="3">
+            <Date>2008-11-24</Date>
+            <Version>1.0.22</Version>
+            <Comment>Build package from upstream's source.
+               - Make default lib dir /usr/lib/sbcl.
+               - Append "pardus.$RELEASE" to implementation version string.
+               - Add translations.xml.
+           </Comment>
+            <Name>Güngör Erseymen</Name>
+            <Email>gelurine at gmail.com</Email>
+       </Update>
         <Update release="2">
             <Date>2008-08-27</Date>
             <Version>1.0.22</Version>


Gelistirici mesaj listesiyle ilgili daha fazla bilgi