mirror of
https://github.com/jart/cosmopolitan.git
synced 2025-10-27 19:34:33 +00:00
Actually Portable Python is now outperforming the Python binaries
that come bundled with Linux distros, at things like HTTP serving.
You can now have a fully featured Python install in just one .com
file that runs on six operating systems and is about 10mb in size.
With tuning, the tiniest is ~1mb. We've got most of the libraries
working, including pysqlite, and the repl now feels very pleasant.
The things you can't do quite yet are: threads and shared objects
but that can happen in the future, if the community falls in love
with this project and wants to see it developed further. Changes:
- Add siginterrupt()
- Add sqlite3 to Python
- Add issymlink() helper
- Make GetZipCdir() faster
- Add tgamma() and finite()
- Add legacy function lutimes()
- Add readlink() and realpath()
- Use heap allocations when appropriate
- Reorganize Python into two-stage build
- Save Lua / Python shell history to dotfile
- Integrate Python Lib embedding into linkage
- Make isregularfile() and isdirectory() go faster
- Make Python shell auto-completion work perfectly
- Make crash reports work better if changed directory
- Fix Python+NT open() / access() flag overflow error
- Disable Python tests relating to \N{LONG NAME} syntax
- Have Python REPL copyright() show all notice embeddings
The biggest technical challenge at the moment is working around
when Python tries to be too clever about filenames.
31 lines
501 B
C
31 lines
501 B
C
#ifndef Py_OSDEFS_H
|
|
#define Py_OSDEFS_H
|
|
COSMOPOLITAN_C_START_
|
|
|
|
#ifdef MS_WINDOWS
|
|
#define SEP L'\\'
|
|
#define ALTSEP L'/'
|
|
#define MAXPATHLEN 256
|
|
#define DELIM L';'
|
|
#endif
|
|
|
|
/* Filename separator */
|
|
#ifndef SEP
|
|
#define SEP L'/'
|
|
#endif
|
|
|
|
#ifndef MAXPATHLEN
|
|
#if defined(PATH_MAX) && PATH_MAX > 1024
|
|
#define MAXPATHLEN PATH_MAX
|
|
#else
|
|
#define MAXPATHLEN 1024
|
|
#endif
|
|
#endif
|
|
|
|
/* Search path entry delimiter */
|
|
#ifndef DELIM
|
|
#define DELIM L':'
|
|
#endif
|
|
|
|
COSMOPOLITAN_C_END_
|
|
#endif /* !Py_OSDEFS_H */
|