[Patches] [ python-Patches-474590 ] Platform support for 2.2: RISC OS

noreply@sourceforge.net noreply@sourceforge.net
Thu, 25 Oct 2001 11:08:02 -0700


Patches item #474590, was opened at 2001-10-24 12:25
You can respond by visiting: 
http://sourceforge.net/tracker/?func=detail&atid=305470&aid=474590&group_id=5470

Category: Core (C code)
Group: None
>Status: Closed
>Resolution: Accepted
Priority: 5
Submitted By: Dietmar Schwertberger (dschwertberger)
Assigned to: Guido van Rossum (gvanrossum)
Summary: Platform support for 2.2: RISC OS

Initial Comment:
The attached zip archive contains a Readme, 2 replacement files and patches for Python 2.2 to 
support the RISC OS operating system.
(patches are relative to 2.2a3)


The contents of the Readme file:

Replacement files:

RISCOS/Makefile
 replacement for 2.2: new modules, libraries etc.

RISCOS/pyconfig.h
 replacement for 2.2

###########################################################

Patches in file Patches.txt:


Include/pyport.h
Modules/selectmodule.c
Modules/socketmodule.c
Modules/timemodule.c
RISCOS/Modules/drawfmodule.c
RISCOS/Modules/swimodule.c
RISCOS/Python/getmtime_riscos.c
RISCOS/sleep.c
 changes for new C library versions (bug fixes and 32 bit)

Lib/os.py
 define os.extsep

Lib/dumbdbm.py
Lib/fileinput.py
Lib/site.py
Lib/test/test_imageop.py
Lib/test/test_import.py
Lib/test/test_mailbox.py
Lib/test/test_minidom.py
Lib/test/test_pkg.py
Lib/test/test_pkgimport.py
Lib/test/test_repr.py
Lib/test/test_rgbimg.py
Lib/test/test_sax.py
Lib/test/test_tokenize.py
Lib/test/test_zipfile.py
Lib/whichdb.py
Misc/NEWS
 use os.extsep

Lib/plat-riscos/riscosenviron.py
 bugfix: __cmp__

Lib/plat-riscos/riscospath.py
 bugfix: Correct handling of os.path.join('', 'test')

Lib/plat-riscos/rourl2path.py
 overhauled

Lib/socket.py
 lowercase platform name 'riscos'

Lib/tempfile.py
 use RISC OS Scrapdir

Lib/test/regrtest.py
 use os.extsep
 RISC OS skips

Lib/test/test_mhlib.py
Lib/test/test_signal.py
 skip for RISC OS

Lib/test/test_urllib2.py
 RISC OS support

Modules/structmodule.c
 change s_... to st_... because s_int is already declared in sys/types.h

Objects/complexobject.c
 bugfix: s_buffer was defined within a block and accessed after leaving it

Objects/floatobject.c
 RISC OS support: still need the old overflow check within float_int

Python/bltinmodule.c
 use object_exists instead of stat

Python/import.c
 case sensitive import (most RISC OS filesystems are case-insensitive
 but preserving, the others are unlikely to be used as home for Python)

RISCOS/Modules/config.c
 support for garbage collector

RISCOS/Modules/getpath_riscos.c
 bugfix: correct handling of Py_GetProgramFullPath().

RISCOS/Modules/riscosmodule.c
 miscellaneous:
  - riscos.error is now a class
  - changes for new C library versions (bug fixes and 32 bit)
  - full implementation of utime (partially from infozip)

RISCOS/Python/dynload_riscos.c
 bugfix: correct handling of package imports
         (needs patched version of dlk library)

RISCOS/README
 notes regarding new libraries

RISCOS/unixstuff.c
RISCOS/unixstuff.h
 improved time handling
 changes for new C library versions (bug fixes and 32 bit)

RISCOS/support/!Boot
 support for 2.2


----------------------------------------------------------------------

>Comment By: Guido van Rossum (gvanrossum)
Date: 2001-10-25 11:08

Message:
Logged In: YES 
user_id=6380

Thanks for the clarification. I've checked in
complexobject.c.

----------------------------------------------------------------------

Comment By: Dietmar Schwertberger (dschwertberger)
Date: 2001-10-25 09:30

Message:
Logged In: YES 
user_id=86612

Thanks for checking in. I'll check tomorrow.

complexobject.c: The declaration is not the problem, but 
the memory allocated for s_buffer is used later outside the 
{} block because s points to it (assignment s = s_buffer 
inside the block ). At this time the memory may already 
been un-/reallocated and with my compiler it in fact is. I 
would expect this to be ANSI compliant, but I did not 
check...

extsep/endsep: Thought it would be better to name it 
extsep because there is alreade os.path.splitext.

getmtime: Your right. RISC OS' port of diff has an option 
to report Unix compatible filenames, but this obviously has 
some bugs.


----------------------------------------------------------------------

Comment By: Guido van Rossum (gvanrossum)
Date: 2001-10-24 13:55

Message:
Logged In: YES 
user_id=6380

All checked in, except for complexobject.c (awaiting
response to previous query) and Misc/NEWS.

For Misc/NEWS, I noticed that you changed the old Python 2.1
release text about "os.endsep" to use "os.extsep". However,
the 2.1 release contained neither! So I removed the
reference to os.endsep from the 2.1 release text, and added
a mention of it to the 2.2b2 release notes.

Please check out the current CVS and test that it works!

If you have more patches, please create a new tracker item.

If you have an answer about complexobject.c, please add to
this tracker item.

----------------------------------------------------------------------

Comment By: Guido van Rossum (gvanrossum)
Date: 2001-10-24 13:44

Message:
Logged In: YES 
user_id=6380

Another question. Why the change to complexobject.c? Does
your compiler not like variable declarations inside if
statements?

----------------------------------------------------------------------

Comment By: Guido van Rossum (gvanrossum)
Date: 2001-10-24 13:15

Message:
Logged In: YES 
user_id=6380

I'm applying this. Wow, this is a big patch.

I noticed that the patch mentions a file
RISCOS/Python/getmtime.c_riscos; in fact this file is called
RISCOS/Python/getmtime_riscos.c. I hope this was a bug in
your script that massages the patch file...

----------------------------------------------------------------------

You can respond by visiting: 
http://sourceforge.net/tracker/?func=detail&atid=305470&aid=474590&group_id=5470