Update of /cvsroot/fink/dists/10.4/stable/main/finkinfo/libs/pythonmods
In directory 
vz-cvs-3.sog:/tmp/cvs-serv14232/stable/main/finkinfo/libs/pythonmods

Added Files:
        guppy-py.info mlpy-py.info parallel-py.info psyco-py.info 
        psyco-py.patch 
Log Message:
sync some -pyXX to stable


--- NEW FILE: psyco-py.patch ---
diff -urN psyco-dist.old/c/codegen.c psyco-dist.new/c/codegen.c
--- psyco-dist.old/c/codegen.c  2006-04-17 04:34:34.000000000 -0500
+++ psyco-dist.new/c/codegen.c  2007-11-15 16:36:01.000000000 -0600
@@ -308,7 +308,12 @@
 #endif
                     }
                 }
+                               #ifdef __APPLE__
+                               /* Adjust # of arguments for MacOS 16-byte 
stack alignment */
+                result = psyco_call_var(c_function, (count+3)&~3, args);
+                               #else
                 result = psyco_call_var(c_function, count, args);
+                               #endif
                 if (PyErr_Occurred()) {
                     if (has_refs)
                         for (i = 0; i < count; i++) 
@@ -387,6 +392,7 @@
        stackbase = po->stack_depth;
        po->stack_depth += totalstackspace;
        STACK_CORRECTION(totalstackspace);
+       CALL_STACK_ALIGN(count);
        for (i=count; i--; ) {
                switch (argtags[i]) {
                        
@@ -467,6 +473,7 @@
                                }
                         }
        }
+
        return NULL;
 }
 
diff -urN psyco-dist.old/c/i386/iencoding.c psyco-dist.new/c/i386/iencoding.c
--- psyco-dist.old/c/i386/iencoding.c   2006-02-15 08:04:12.000000000 -0600
+++ psyco-dist.new/c/i386/iencoding.c   2007-11-15 16:36:01.000000000 -0600
@@ -48,12 +48,17 @@
   code_t* code = po->code;
   void* result;
   code_t* fixvalue;
+  #ifdef __APPLE__
+  int aligndelta;
+  #endif
 
   if (restore)
     TEMP_SAVE_REGS_FN_CALLS;
   else
     SAVE_REGS_FN_CALLS(true);
 
+  CALL_STACK_ALIGN_DELTA(1+(extraarg != SOURCE_DUMMY), aligndelta);
+  
   /* first pushed argument */
   if (extraarg != SOURCE_DUMMY)
     CALL_SET_ARG_FROM_RT(extraarg, 1, 2);  /* argument index 1 out of total 2 
*/
@@ -79,6 +84,7 @@
                       4*nb_args,  /*           4*nb_args  */
                       0);         /* not used             */
       code += 3;
+         CALL_STACK_ALIGN_RESTORE(aligndelta);
       TEMP_RESTORE_REGS_FN_CALLS_AND_JUMP;
     }
   else
@@ -109,10 +115,25 @@
        int i, initial_depth;
        Source* p;
        bool ccflags;
+       #ifdef __APPLE__
+       int aligncount=0;
+       #endif
        BEGIN_CODE
        /* cannot use NEED_CC(): it might clobber one of the registers
           mentioned in argsources */
         ccflags = HAS_CCREG(po);
+    #ifdef __APPLE__
+       /* Calculate number of registers that will be pushed by
+          NEED_REGISTER */
+       for (i=0; i<REG_TOTAL; i++)
+       {
+               vinfo_t* _content = REG_NUMBER(po, i);
+               if (_content != NULL)
+                       if (RUNTIME_STACK(_content) == RUNTIME_STACK_NONE)
+                               aligncount++;
+       }
+       #endif
+       CALL_STACK_ALIGN(1+(ccflags!=0)+aligncount);
        if (ccflags)
                PUSH_CC_FLAGS();
        for (i=0; i<REG_TOTAL; i++)
diff -urN psyco-dist.old/c/i386/iencoding.h psyco-dist.new/c/i386/iencoding.h
--- psyco-dist.old/c/i386/iencoding.h   2006-02-13 18:21:38.000000000 -0600
+++ psyco-dist.new/c/i386/iencoding.h   2007-11-15 16:36:01.000000000 -0600
@@ -20,8 +20,13 @@
     (a quite minor overhead). Set to 0 to disable. No effect on real
     optimizations. */
 #ifndef COMPACT_ENCODING
+#ifdef __APPLE__
+/* COMPACT_ENCODING not yet supported on MacOS X */
+# define COMPACT_ENCODING   0
+#else
 # define COMPACT_ENCODING   1
 #endif
+#endif
 
 /* Define to 0 to use EBP as any other register, or to 1 to reserve it */
 #ifndef EBP_IS_RESERVED
@@ -652,6 +657,31 @@
   JUMP_TO((code_t*)(target));                                           \
 } while (0)
 
+#ifdef __APPLE__
+/* Stack alignment for MacOS X IA-32 ABI */
+#define CALL_STACK_ALIGN_DELTA(nbargs, delta) do { \
+    int sp = po->stack_depth-INITIAL_STACK_DEPTH+(nbargs)*4;   \
+       delta = ((sp+15)&~15)-sp; \
+       po->stack_depth += delta; \
+       STACK_CORRECTION(delta); \
+} while (0)
+
+#define CALL_STACK_ALIGN(nbargs) do { \
+       int delta; \
+    CALL_STACK_ALIGN_DELTA(nbargs, delta); \
+} while (0)
+
+#define CALL_STACK_ALIGN_RESTORE(delta) do { \
+       po->stack_depth -= delta; \
+       STACK_CORRECTION(-delta); \
+} while (0)
+#else
+/* Dummy stack alignment for non-MacOS X */
+#define CALL_STACK_ALIGN_DELTA(nbargs, delta)
+#define CALL_STACK_ALIGN(nbargs)
+#define CALL_STACK_ALIGN_RESTORE(delta)
+#endif
+       
 /* load the 'dst' register with the run-time address of 'source'
    which must be in the stack */
 #define LOAD_ADDRESS_FROM_RT(source, dst)    do {                              
 \
diff -urN psyco-dist.old/c/i386/iprocessor.c psyco-dist.new/c/i386/iprocessor.c
--- psyco-dist.old/c/i386/iprocessor.c  2006-11-26 07:03:26.000000000 -0600
+++ psyco-dist.new/c/i386/iprocessor.c  2007-11-15 16:36:01.000000000 -0600
@@ -21,6 +21,10 @@
   PUSH_REG_INSTR(REG_386_ESI),  /*   PUSH ESI        */
   PUSH_REG_INSTR(REG_386_EDI),  /*   PUSH EDI        */
   0x8B, 0x5C, 0x24, 32,         /*   MOV EBX, [ESP+32] (finfo frame stack ptr) 
*/
+#ifdef __APPLE__
+  /* Align stack on 16-byte boundary for MacOS X */
+  0x83, 0xEC, 8,                /*   SUB ESP, 8      */
+#endif
   0x6A, -1,                     /*   PUSH -1         */
   0x89, 0x23,                   /*   MOV [EBX], ESP  */
   0xEB, +5,                     /*   JMP Label2      */
@@ -31,6 +35,10 @@
   0x39, 0xCA,                   /*   CMP EDX, ECX    */
   0x75, -9,                     /*   JNE Label1      */
   0xFF, 0xD0,                   /*   CALL *EAX     (callee removes args)  */
+#ifdef __APPLE__
+  /* Restore stack from 16-byte alignment on MacOS X */
+  0x83, 0xC4, 8,                /*   ADD ESP, 8      */
+#endif
   POP_REG_INSTR(REG_386_EDI),   /*   POP EDI         */
   POP_REG_INSTR(REG_386_ESI),   /*   POP ESI         */
   POP_REG_INSTR(REG_386_EBX),   /*   POP EBX         */
@@ -67,9 +75,18 @@
        0x53,                   /*   PUSH EBX                      */
        0x8B, 0x5C, 0x24, 12,   /*   MOV EBX, [ESP+12]  (argcount) */
        0x8B, 0x44, 0x24, 8,    /*   MOV EAX, [ESP+8]   (c_func)   */
+#ifdef __APPLE__
+    /* Align stack on 16-byte boundary for MacOS X */
+    0x83, 0xEC, 8,                /*   SUB ESP, 8      */
+#endif
        0x09, 0xDB,             /*   OR EBX, EBX                   */
        0x74, +16,              /*   JZ Label1                     */
+#ifdef __APPLE__
+       /* Arguments are 8 bytes further up stack on MacOS X */
+       0x8B, 0x54, 0x24, 24,   /*   MOV EDX, [ESP+24] (arguments) */
+#else
        0x8B, 0x54, 0x24, 16,   /*   MOV EDX, [ESP+16] (arguments) */
+#endif
        0x8D, 0x0C, 0x9A,       /*   LEA ECX, [EDX+4*EBX]          */
                                /* Label2:                         */
        0x83, 0xE9, 4,          /*   SUB ECX, 4                    */
@@ -78,6 +95,10 @@
        0x75, -9,               /*   JNE Label2                    */
                                /* Label1:                         */
        0xFF, 0xD0,             /*   CALL *EAX                     */
+#ifdef __APPLE__
+    /* Restore stack from 16-byte alignment on MacOS X */
+    0x83, 0xC4, 8,                /*   ADD ESP, 8      */
+#endif
        0x8D, 0x24, 0x9C,       /*   LEA ESP, [ESP+4*EBX]          */
        0x5B,                   /*   POP EBX                       */
        0xC3,                   /*   RET                           */
diff -urN psyco-dist.old/c/ivm/iencoding.h psyco-dist.new/c/ivm/iencoding.h
--- psyco-dist.old/c/ivm/iencoding.h    2006-02-13 18:21:38.000000000 -0600
+++ psyco-dist.new/c/ivm/iencoding.h    2007-11-15 16:36:01.000000000 -0600
@@ -248,6 +248,10 @@
   else if (_stackcorr > 0)                              \
     INSN_pushn(_stackcorr / sizeof(long));              \
 } while (0)
+/* Dummy stack alignment for non-MacOS X */
+#define CALL_STACK_ALIGN_DELTA(nbargs, delta)
+#define CALL_STACK_ALIGN(nbargs)
+#define CALL_STACK_ALIGN_RESTORE(delta)
 
 #define FUNCTION_RET(popbytes)      do {                                       
 \
   INSN_ret((popbytes) / sizeof(long) + 1);   /* +1 for the retaddr itself */   
 \

--- NEW FILE: mlpy-py.info ---
Info2: <<
Package: mlpy-py%type_pkg[python]
Version: 1.2.8
Revision: 2
Type: python (2.5 2.6)
Source: http://mlpy.fbk.eu/download/src/MLPY-%v.tar.gz
Source-MD5: e1f4f34458af2be812e7592a29542514
Depends: python%type_pkg[python], numpy-py%type_pkg[python] (>= 1.3.0-7)
DocFiles:  README PKG-INFO gpl-3.0.txt CHANGELOG
Description: High performance package for Machine Learning
License: GPL
Homepage: https://mlpy.fbk.eu/
Maintainer: None <fink-de...@lists.sourceforge.net>
DescPort: Initial port by Pepe Barbe <pepe.ba...@gmail.com>

CompileScript: <<
python%type_raw[python] setup.py build
<<
InstallScript: <<
  #!/bin/sh -ev
  python%type_raw[python] setup.py install --prefix %p --root %d
  cd %d/%p/bin
  for FILENAME in *; do
    mv -v $FILENAME $FILENAME-py%type_pkg[python]
  done
<<

PostInstScript: <<
  for name in borda canberra canberraq dlda-landscape fda-landscape 
irelief-sigma nn-landscape pda-landscape srda-landscape svm-landscape; do 
update-alternatives --install %p/bin/$name $name 
%p/bin/$name-py%type_pkg[python] %type_pkg[python]; done;
<<

PreRmScript: <<
if [ $1 != "upgrade" ]; then
  for name in borda canberra canberraq dlda-landscape fda-landscape 
irelief-sigma nn-landscape pda-landscape srda-landscape svm-landscape; do 
update-alternatives --remove $name %p/bin/$name-py%type_pkg[python]; done;
fi
<<

<<

--- NEW FILE: psyco-py.info ---
Info2: <<
Package: psyco-py%type_pkg[python]
Version: 1.5.2.1
Revision: 1
Type: python (2.4 2.5)
Distribution: (%type_pkg[python] = 24) 10.4, (%type_pkg[python] = 24) 10.5
Architecture: i386
# "The only way to use Psyco on OS/X 10.6 is by recompiling a custom Python in 
32-bit mode" (upstream homepage)
Source: http://fink.antropoide.net/src/psyco-%v-src.tar.gz
Source-MD5: fbec0512f69ead4b8e48262a4626d7ec
PatchFile: psyco-py.patch
PatchFile-MD5: c57521c85fa9d20498ac20b53fa7ea16
Depends: python%type_pkg[python]
SourceDirectory: psyco-dist

BuildDepends: fink (>= 0.24.12) 

CompileScript: <<
python%type_raw[python] setup.py build
<<
InstallScript: <<
  python%type_raw[python] setup.py install --prefix %p --root %d
<<
DocFiles:  README.txt COPYING.txt

Description: Specializing compiler for Python
DescDetail: <<
Think of Psyco as a kind of just-in-time (JIT) compiler, a little bit like
what exists for other languages, that emit machine code on the fly instead of
interpreting your Python program step by step. The difference with the
traditional approach to JIT compilers is that Psyco writes several version of
the same blocks (a block is a bit of a function), which are optimized by being
specialized to some kinds of variables (a "kind" can mean a type, but it is
more general). The result is that your unmodified Python programs run faster.

Benefits
2x to 100x speed-ups, typically 4x, with an unmodified Python interpreter and
unmodified source code, just a dynamically loadable C extension module.

Drawbacks
Psyco currently uses a lot of memory. It only runs on Intel 386-compatible
processors (under any OS) right now. There are some subtle semantic
differences (i.e. bugs) with the way Python works; they should not be apparent
in most programs.
<<

License: BSD
Homepage: http://psyco.sourceforge.net/
Maintainer: None <fink-de...@lists.sourceforge.net>
DescPort: Initial port by Pepe Barbe <pepe.ba...@gmail.com>
<<

--- NEW FILE: guppy-py.info ---
Info2: <<

Package: guppy-py%type_pkg[python]
Version: 0.1.8
Revision: 1
Description: Python package with runtime memory analysis
DescDetail: <<

Guppy-PE, a programming environment providing object and heap memory sizing,
profiling and analysis. It includes a prototypical specification language that
can be used to formally specify aspects of Python programs and generate tests 
and documentation from a common source.

etc     Support modules. Contains especially the Glue protocol module.

gsl     The Guppy Specification Language implementation. This can
be used to create documents and tests from a common source.

heapy   The heap analysis toolset. It can be used to find information
about the objects in the heap and display the information
in various ways.

sets    Bitsets and 'nodesets' implemented in C.

<<
Source: http://pypi.python.org/packages/source/g/guppy/guppy-%v.tar.gz
Source-MD5: a82f6034d30120a2c6c01e3371942d5c

Type: python (2.5 2.6)
Depends: python%type_pkg[python]
CompileScript: <<
 echo Skipping build
<<
InstallScript: <<
 %p/bin/python%type_raw[python] setup.py install --root=%d
<<
DocFiles: README doc
License: OSI-Approved
Homepage: http://guppy-pe.sourceforge.net/
Maintainer: None <fink-de...@lists.sourceforge.net>
DescPort: Initial port by Pepe Barbe <pepe.ba...@gmail.com>

<<
--- NEW FILE: parallel-py.info ---
Info2: <<
Package: parallel-py%type_pkg[python]
Version: 1.5.6
Revision: 1
Distribution: (%type_pkg[python] = 24) 10.4, (%type_pkg[python] = 24) 10.5
Type: python (2.4 2.5 2.6)
Source: http://www.parallelpython.com/downloads/pp/pp-%v.tar.bz2
Source-MD5: 6f21056847d304d564ad728d3745f6a4
Depends: python%type_pkg[python]

CompileScript: <<
python%type_raw[python] setup.py build
<<
InstallScript: <<
  python%type_raw[python] setup.py install --prefix %p --root %d
  mv %i/bin/ppserver.py %i/bin/ppserver%type_raw[python]
  mkdir -p %i/share/man/man1/
  cp ppserver.1 %i/share/man/man1/ppserver-py%type_pkg[python].1
<<
PostInstScript: <<
  update-alternatives --install %p/bin/ppserver ppserver 
%p/bin/ppserver%type_raw[python] %type_pkg[python] --slave 
%p/share/man/man1/ppserver.1 ppserver.1 
%p/share/man/man1/ppserver-py%type_pkg[python].1
<<
PreRmScript: <<
 if [ $1 != "upgrade" ]; then
  update-alternatives --remove ppserver %p/bin/ppserver%type_raw[python]
 fi
<<
DocFiles:  README PKG-INFO

Description: Simple parallel processing for Python
DescDetail: <<
parallel-python is a pure Python module which that provides a
mechanism for parallel execution of Python code on SMP (systems with
multiple processors or cores) and clusters (computers connected via
network). It is light, easy to install, and integrates with other Python
software. 

Features: 
* Parallel execution of python code on SMP and clusters
* Easy to understand and implement job-based parallelization technique (easy 
  to convert serial application in parallel)
* Automatic detection of the optimal configuration (by default the number of 
  worker processes is set to the number of the effective processors in the 
  system)
* Dynamic processors allocation (number of worker processes can be changed 
  at runtime)
* Low overhead for subsequent jobs with the same function (transparent 
  caching is implemented to decrease the overhead)
* Dynamic load balancing (jobs are distributed between processors at runtime)
* SHA based authentication for network connections
* Cross-platform portability (Windows, Linux, Unix)
<<

License: BSD
Homepage: http://www.parallelpython.com/
Maintainer: None <fink-de...@lists.sourceforge.net>
DescPort: Initial port by Pepe Barbe <pepe.ba...@gmail.com>
<<


------------------------------------------------------------------------------
Keep Your Developer Skills Current with LearnDevNow!
The most comprehensive online learning library for Microsoft developers
is just $99.99! Visual Studio, SharePoint, SQL - plus HTML5, CSS3, MVC3,
Metro Style Apps, more. Free future releases when you subscribe now!
http://p.sf.net/sfu/learndevnow-d2d
_______________________________________________
Fink-commits mailing list
Fink-commits@lists.sourceforge.net
http://news.gmane.org/gmane.os.apple.fink.cvs

Reply via email to