1DOLLY 32MODULE cpython34REQUIRES HEADER libc5REQUIRES HEADER ffi6REQUIRES HEADER ffitarget7REQUIRES HEADER runtime8REQUIRES HEADER zlib9REQUIRES LIB ffi10REQUIRES LIB z11REQUIRES TOOL ar12REQUIRES TOOL cc13REQUIRES TOOL c++14REQUIRES TOOL cp15REQUIRES TOOL make16REQUIRES TOOL mkdir17REQUIRES TOOL mv18REQUIRES TOOL rm19REQUIRES TOOL slop20REQUIRES TOOL tar21REQUIRES TOOL test22REQUIRES TOOL touch23242526EXPORTS ENV PYTHONDONTWRITEBYTECODE 12728293031SOURCE HOST /static/python/cpython.tar /tmp/cpython.tar 3f7baa1b1c0598f44bb3334d346d851fcb41d3c511a7bac1fe31a036d008f47b3233SLOP tar \34 -xf /tmp/cpython.tar \35 -C /3637SOURCE HOST /static/python/runtimes/cpython-platform.c /usr/src/python/Python/dolly_platform.c 9a58412f3ecfebfef6bbd67dfc5fa43959314568b6add06c7c0d548ddc7eb5b638SOURCE HOST /static/python/runtimes/cpython-extension-check.c /usr/src/python/Modules/dolly_extension_check.c 1763ec04e582beee6066af81c93fe20e8cf0d83ae7d41d935b395c5cb3cdf07139SOURCE HOST /static/python/runtimes/cpython-socket-stubs.c /usr/src/python/Modules/dolly_socket_stubs.c d54e0a1d299c128d483e7edc9dc089693e8ca53a7de54509e687a87a6368a4ce40SOURCE HOST /static/python/runtimes/cpython-termios.c /usr/src/python/Modules/dolly_termios.c 70126bf939cb2cc3537cb18892a84004801c24bdebc68526a621c52b4a5edc3d41SOURCE HOST /static/python/runtimes/cpython-process.c /usr/src/python/Modules/dolly_process.c 9dfbbe0c2de367d829b4fec488ff4e17488324c4cc4c750b34de2c82547fb94342SOURCE HOST /static/python/runtimes/cpython-subprocess.py /usr/src/python/Lib/_dolly_subprocess.py cabc2b4eb15e61332c2b63454724c3b390c5f2a2f0effa2889861e123835b7854344SLOP CWD /usr/src/python touch \45 Python/frozen_modules/*.h464748495051SLOP CWD /usr/src/python cc \52 -c \53 -O0 \54 -std=c11 \55 -fno-builtin \56 -fno-strict-aliasing \57 -DDOLLY \58 -IInclude/internal \59 -IInclude/internal/mimalloc \60 -IObjects \61 -IInclude \62 -IPython \63 -I. \64 -DPy_BUILD_CORE \65 Python/tracemalloc.c \66 -o Python/tracemalloc.o67SLOP CWD /usr/src/python cc \68 -c \69 -O0 \70 -std=c11 \71 -fno-builtin \72 -fno-strict-aliasing \73 -DDOLLY \74 -IInclude/internal \75 -IInclude/internal/mimalloc \76 -IObjects \77 -IInclude \78 -IPython \79 -I. \80 -DPy_BUILD_CORE \81 Modules/arraymodule.c \82 -o Modules/arraymodule.o83SLOP CWD /usr/src/python cc \84 -c \85 -O0 \86 -std=c11 \87 -IInclude/internal \88 -IInclude/internal/mimalloc \89 -IObjects \90 -IInclude \91 -IPython \92 -I. \93 -DPy_BUILD_CORE \94 Python/dolly_platform.c \95 -o Python/dolly_platform.o96SLOP CWD /usr/src/python cc \97 -c \98 -O0 \99 -std=c11 \100 -IInclude/internal \101 -IInclude/internal/mimalloc \102 -IObjects \103 -IInclude \104 -IPython \105 -I. \106 -DPy_BUILD_CORE \107 -DDATE='"Jan 01 1970"' \108 -DTIME='"00:00:00"' \109 Modules/getbuildinfo.c \110 -o Modules/getbuildinfo.o111SLOP CWD /usr/src/python cc \112 -c \113 -O0 \114 -std=c11 \115 -IInclude/internal \116 -IInclude/internal/mimalloc \117 -IObjects \118 -IInclude \119 -IPython \120 -I. \121 -DPy_BUILD_CORE \122 -DPLATFORM='"dolly"' \123 Python/getplatform.c \124 -o Python/getplatform.o125SLOP CWD /usr/src/python cc \126 -c \127 -O0 \128 -std=c11 \129 -IInclude/internal \130 -IInclude/internal/mimalloc \131 -IObjects \132 -IInclude \133 -IPython \134 -I. \135 -DPy_BUILD_CORE \136 -DDOLLY \137 -DABIFLAGS='""' \138 -DMULTIARCH='"dolly_0_wasm64"' \139 Python/sysmodule.c \140 -o Python/sysmodule.o141SLOP CWD /usr/src/python cc \142 -c \143 -O0 \144 -std=c17 \145 Modules/dolly_socket_stubs.c \146 -o Modules/dolly_socket_stubs.o147SLOP CWD /usr/src/python cc \148 -c \149 -O0 \150 -std=c17 \151 Modules/dolly_termios.c \152 -o Modules/dolly_termios.o153SLOP CWD /usr/src/python make \154 -o configure \155 -o config.status \156 -o Makefile.pre \157 -o Makefile \158 -o Modules/config.c \159 -o Modules/getbuildinfo.o \160 -o Python/getplatform.o \161 -o Python/sysmodule.o \162 -o Python/tracemalloc.o \163 -o Modules/arraymodule.o \164 python \165 libpython3.14.a \166 SHELL=/bin/slop \167 CC=cc \168 LINKCC=cc \169 AR=ar \170 BLDSHARED=cc\ -shared \171 INSTSONAME=libpython3.14.a \172 DYNLOADFILE=dynload_shlib.o \173 PY_CFLAGS=-O2\ -std=c11\ -fno-builtin\ -fno-strict-aliasing\ -DDOLLY \174 PY_CFLAGS_NODIST= \175 PY_CPPFLAGS=-IInclude/internal\ -IInclude/internal/mimalloc\ -IObjects\ -IInclude\ -IPython\ -I. \176 CFLAGSFORSHARED= \177 PY_CORE_LDFLAGS= \178 LDFLAGS= \179 LINKFORSHARED=-rdynamic \180 MODULE_MATH_LDFLAGS= \181 MODULE_CMATH_LDFLAGS= \182 MODULE__STATISTICS_LDFLAGS= \183 MODULE__DATETIME_LDFLAGS= \184 MODULE_PYEXPAT_LDFLAGS=Modules/expat/libexpat.a \185 MODULE_POSIX_CFLAGS=-DDOLLY \186 MODULE__SOCKET_CFLAGS=-Daccept=dolly_py_accept\ -Daccept4=dolly_py_accept4\ -Dbind=dolly_py_bind\ -Dfreeaddrinfo=dolly_py_freeaddrinfo\ -Dgai_strerror=dolly_py_gai_strerror\ -Dgetaddrinfo=dolly_py_getaddrinfo\ -Dgethostbyaddr=dolly_py_gethostbyaddr\ -Dgethostname=dolly_py_gethostname\ -Dgetnameinfo=dolly_py_getnameinfo\ -Dgetpeername=dolly_py_getpeername\ -Dgetprotobyname=dolly_py_getprotobyname\ -Dgetservbyport=dolly_py_getservbyport\ -Dgetsockname=dolly_py_getsockname\ -Dgetsockopt=dolly_py_getsockopt\ -Dhtonl=dolly_py_htonl\ -Dif_freenameindex=dolly_py_if_freenameindex\ -Dif_indextoname=dolly_py_if_indextoname\ -Dif_nameindex=dolly_py_if_nameindex\ -Dif_nametoindex=dolly_py_if_nametoindex\ -Dinet_aton=dolly_py_inet_aton\ -Dinet_ntop=dolly_py_inet_ntop\ -Dinet_pton=dolly_py_inet_pton\ -Dlisten=dolly_py_listen\ -Dntohl=dolly_py_ntohl\ -Dpoll=dolly_py_poll\ -Drecvfrom=dolly_py_recvfrom\ -Drecvmsg=dolly_py_recvmsg\ -Dsend=dolly_py_send\ -Dsendmsg=dolly_py_sendmsg\ -Dsendto=dolly_py_sendto \187 MODULE_TERMIOS_CFLAGS=-Dcfgetispeed=dolly_py_cfgetispeed\ -Dcfgetospeed=dolly_py_cfgetospeed\ -Dcfsetispeed=dolly_py_cfsetispeed\ -Dcfsetospeed=dolly_py_cfsetospeed\ -Dioctl=dolly_py_ioctl\ -Dtcdrain=dolly_py_tcdrain\ -Dtcflow=dolly_py_tcflow\ -Dtcflush=dolly_py_tcflush\ -Dtcgetattr=dolly_py_tcgetattr\ -Dtcsetattr=dolly_py_tcsetattr\ -Dtcsendbreak=dolly_py_tcsendbreak \188 MODULE_BINASCII_CFLAGS=-DUSE_ZLIB_CRC32 \189 MODULE_BINASCII_LDFLAGS=-lz \190 MODULE_ZLIB_CFLAGS= \191 MODULE_ZLIB_LDFLAGS=-lz \192 MODULE__CTYPES_CFLAGS=-DHAVE_FFI_PREP_CIF_VAR\ -DHAVE_FFI_PREP_CLOSURE_LOC\ -DHAVE_FFI_CLOSURE_ALLOC \193 MODULE__CTYPES_LDFLAGS=-lffi \194 LIBS= \195 SYSLIBS= \196 LIBM= \197 LIBC= \198 SHLIBS= \199 MACHDEP_OBJS=Python/dolly_platform.o\ Modules/dolly_socket_stubs.o\ Modules/dolly_termios.o \200 DTRACE=201202203204205206SLOP mkdir \207 -p \208 /usr/lib/python3.14 \209 /usr/lib/python3.14/lib-dynload210SLOP cp \211 -R \212 /usr/src/python/Lib/. \213 /usr/lib/python3.14214SLOP test \215 -f \216 /usr/lib/python3.14/encodings/__init__.py217SLOP cp \218 /usr/src/python/libpython3.14.a \219 /usr/lib/libpython3.14.a220SLOP mv \221 /usr/src/python/python \222 /usr/bin/python223SLOP ln -sf python /usr/bin/python3224SLOP mkdir \225 -p \226 /usr/include/python3.14227SLOP cp \228 -R \229 /usr/src/python/Include/. \230 /usr/include/python3.14231SLOP cp \232 /usr/src/python/pyconfig.h \233 /usr/include/python3.14/pyconfig.h234SLOP CWD /usr/src/python slop \235 -c \236 'export _PYTHON_PROJECT_BASE=/usr/src/python; python -m sysconfig --generate-posix-vars'237SLOP cp \238 /usr/src/python/build/lib.dolly_0-wasm64-3.14/_sysconfigdata__dolly_dolly_0_wasm64.py \239 /usr/lib/python3.14/_sysconfigdata__dolly_dolly_0_wasm64.py240SLOP mkdir \241 -p \242 /usr/lib/python3.14/config-3.14-dolly_0_wasm64243SLOP cp \244 /usr/src/python/Makefile \245 /usr/lib/python3.14/config-3.14-dolly_0_wasm64/Makefile246SLOP cc \247 -shared \248 -O0 \249 -std=c17 \250 -I/usr/include/python3.14 \251 /usr/src/python/Modules/dolly_extension_check.c \252 -o /usr/lib/python3.14/lib-dynload/dolly_extension_check.cpython-314-dolly_0_wasm64.so253254EXPORTS TOOL python255EXPORTS TOOL python3256EXPORTS ENV PYTHONUTF8 1257EXPORTS LIB python /usr/lib/libpython3.14.a258EXPORTS HEADER /usr/include/python3.14259260SLOP python \261 --version262SLOP python \263 -c 'import pathlib; p = pathlib.Path("/tmp/python-check.txt"); p.write_text("PYTHON-WASM64"); assert p.read_text() == "PYTHON-WASM64"'264SLOP python \265 -c 'import dolly_extension_check; assert dolly_extension_check.answer() == 42'266SLOP python \267 -c 'import mmap, pathlib; p = pathlib.Path("/tmp/mmap-check"); p.write_bytes(b"DOLLY"); f = p.open("rb"); m = mmap.mmap(f.fileno(), 5, access=mmap.ACCESS_READ); assert m[:] == b"DOLLY"; m.madvise(mmap.MADV_SEQUENTIAL); m.close(); f.close()'268SLOP python \269 -c 'import sysconfig; assert sysconfig.get_platform() == "dolly_0-wasm64"; assert sysconfig.get_config_var("EXT_SUFFIX") == ".cpython-314-dolly_0_wasm64.so"'270SLOP python \271 -c 'import os, subprocess; assert subprocess.check_output(["echo", "spawn-ok"], text=True).strip() == "spawn-ok"; assert subprocess.check_output(["python", "-c", "print(6 * 7)"], text=True).strip() == "42"; child_env = dict(os.environ, DOLLY_CHILD_ENV="explicit"); assert subprocess.check_output(["python", "-c", "import os; print(os.environ[\"DOLLY_CHILD_ENV\"])"] , env=child_env, text=True, timeout=1).strip() == "explicit"'272SLOP python \273 -c 'import threading; seen = []; worker = threading.Thread(target=seen.append, args=(42,)); worker.start(); worker.join(); assert seen == [42] and not worker.is_alive()'274SLOP python \275 -c 'import hashlib; assert hashlib.md5(b"abc", usedforsecurity=False).hexdigest() == "900150983cd24fb0d6963f7d28e17f72"'276SLOP python \277 -c 'import ctypes; libc = ctypes.CDLL(None); libc.strlen.argtypes = [ctypes.c_char_p]; libc.strlen.restype = ctypes.c_size_t; assert libc.strlen(b"dolly") == 5; callback_type = ctypes.CFUNCTYPE(ctypes.c_int, ctypes.c_int); callback = callback_type(lambda value: value + 1); assert callback(41) == 42'278SLOP python \279 -c 'import locale, sys; assert sys.flags.utf8_mode == 1; assert locale.getpreferredencoding(False).lower() == "utf-8"; assert sys.getfilesystemencoding().lower() == "utf-8"'280SLOP python \281 -c 'from pathlib import Path; p = Path("/tmp/python-header-check/check.cpp"); p.parent.mkdir(); p.write_text("#include <Python.h>\nint python_header_check = 42;\n", encoding="utf-8")'282SLOP c++ \283 -c \284 -std=c++17 \285 -I/usr/include/python3.14 \286 /tmp/python-header-check/check.cpp \287 -o /tmp/python-header-check/check.o288SLOP python \289 -c 'import os, sys, termios, tty; assert not os.isatty(0); assert sys.stdin.buffer.read(1) == b""'290291FILE /usr/share/licenses/cpython/LICENSE292EXPORTS FOLDER python-stdlib /usr/lib/python3.14293294SLOP rm \295 -rf \296 /tmp/cpython.tar \297 /tmp/mmap-check \298 /tmp/python \299 /tmp/python-header-check \300 /tmp/python-check.txt \301 /usr/lib/python3.14/test \302 /usr/src/python303