Skip to content

Commit e00bfd0

Browse files
committed
Started porting CPython 3.5.3
1 parent 9da4f90 commit e00bfd0

3 files changed

Lines changed: 404 additions & 159 deletions

File tree

Makefile

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -33,14 +33,14 @@ TARGET := $(notdir $(CURDIR))
3333
BUILD := build
3434
PY_BUILD := python_build
3535
DIST_DIR := $(BUILD)/$(TARGET)
36-
LIBDIR := $(DIST_DIR)/lib/python2.7
36+
LIBDIR := $(DIST_DIR)/lib/python3.5
3737
SOURCES := source
3838
DATA := data
3939
INCLUDES := include
4040
EXEFS_SRC := exefs_src
4141
APP_TITLEID := Pynx
4242
APP_AUTHOR := nx-python Authors, Python Software Foundation
43-
APP_VERSION := 0.1.0-alpha
43+
APP_VERSION := 0.2.0-alpha
4444

4545
#---------------------------------------------------------------------------------
4646
# options for code generation
@@ -57,13 +57,13 @@ CXXFLAGS := $(CFLAGS) -fno-rtti -fno-exceptions -std=gnu++11
5757
ASFLAGS := -g $(ARCH)
5858
LDFLAGS = -specs=$(DEVKITPRO)/libnx/switch.specs -g $(ARCH) -Wl,-Map,$(notdir $*.map)
5959

60-
LIBS := -lpython2.7 -lm -lnx
60+
LIBS := -lpython3.5 -lm -lnx
6161

6262
#---------------------------------------------------------------------------------
6363
# list of directories containing libraries, this must be the top level containing
6464
# include and lib
6565
#---------------------------------------------------------------------------------
66-
NXPY := $(CURDIR)/python_build/nxpy2.7.12
66+
NXPY := $(CURDIR)/python_build/nxpy3.5.3
6767
LIBDIRS := $(PORTLIBS) $(LIBNX) $(NXPY)
6868

6969

@@ -151,7 +151,7 @@ cpython:
151151

152152
dist: $(BUILD)
153153
mkdir -p $(LIBDIR)
154-
unzip $(PY_BUILD)/nxpy2.7.12/python.zip -d $(LIBDIR)
154+
unzip $(PY_BUILD)/nxpy3.5.3/python.zip -d $(LIBDIR)
155155
cp $(OUTPUT).{nro,nacp} $(DIST_DIR)/
156156
cp examples/hello.py $(DIST_DIR)/main.py
157157
cd $(BUILD) && zip -r $(TARGET)-$(APP_VERSION).zip $(TARGET)

python_build/Makefile

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ CFLAGS += $(INCLUDE) -DSWITCH
3939

4040

4141
ifndef PYVERS
42-
PYVERS := 2.7.12
42+
PYVERS := 3.5.3
4343
endif
4444

4545
ANAME := libpython$(shell echo $(PYVERS) | sed 's/\([0-9]*\.\([0-9]*\)\).*/\1/').a
@@ -78,10 +78,10 @@ soospatchPY: compilePY
7878
cat $(PYDIR)/Modules/posixmodule.c_old | sed 's/access(path, mode)/1/' | sed 's/\(^[^rt]*time_t atime, mtime;.*\)/return NULL; \1/' | sed 's/\(^[^ri]*i = (int)umask(i);.*\)/return NULL; \1/' | sed 's/^\([^#][^#]*#undef HAVE_FSTATVFS.*\)/\#undef HAVE_FSTATVFS \1/' | sed 's/#define HAVE_\(EXECV\|FORK\|GETEGID\|GETEUID\|GETGID\|GETPPID\|GETUID\|KILL\|PIPE\|POPEN\|SYSTEM\|TTYNAME\|SYMLINK\|UTIME_H\|FDATASYNC\).*/#undef HAVE_\1/g' | sed 's/^#define HAVE_\(STATVFS\|SYS_STATVFS_H\|FDATASYNC\|FTIME\|SYMLINK\|EXECV\|FORK\|GETEGID\|GETEUID\|GETGID\|GETPPID\|GETUID\|KILL\|PIPE\|POPEN\|SYSTEM\|TTYNAME\|SYMLINK\|UTIME_H\|FDATASYNC\).*/#undef HAVE_\1/' >$(PYDIR)/Modules/posixmodule.c
7979
cp $(PYDIR)/Modules/socketmodule.c $(PYDIR)/Modules/socketmodule.c_old
8080
cat $(PYDIR)/Modules/socketmodule.c_old | sed 's/send(s->sock_fd, buf, len, flags);/send(s->sock_fd, buf, len<4096?len:4096, flags);/g' | sed 's/ sizeof(addr->sa_data)/ 28/g' >$(PYDIR)/Modules/socketmodule.c
81-
#cp $(PYDIR)/Objects/exceptions.c $(PYDIR)/Objects/exceptions.c_old
82-
#cat $(PYDIR)/Objects/exceptions.c_old | sed 's/ESHUTDOWN/110/g' >$(PYDIR)/Objects/exceptions.c
83-
#cp $(PYDIR)/Python/pytime.c $(PYDIR)/Python/pytime.c_old
84-
#cat $(PYDIR)/Python/pytime.c_old | sed 's/CLOCK_MONOTONIC/(clockid_t)4/g' >$(PYDIR)/Python/pytime.c
81+
cp $(PYDIR)/Objects/exceptions.c $(PYDIR)/Objects/exceptions.c_old
82+
cat $(PYDIR)/Objects/exceptions.c_old | sed 's/ESHUTDOWN/EPIPE/g' >$(PYDIR)/Objects/exceptions.c
83+
cp $(PYDIR)/Python/pytime.c $(PYDIR)/Python/pytime.c_old
84+
cat $(PYDIR)/Python/pytime.c_old | sed 's/CLOCK_MONOTONIC/(clockid_t)4/g' >$(PYDIR)/Python/pytime.c
8585
cp $(PYDIR)/Makefile $(PYDIR)/Makefile_old
8686
cat $(PYDIR)/Makefile_old | sed 's/Python\/$$(DYNLOADFILE) \\/\\/' >$(PYDIR)/Makefile
8787
touch soospatchPY

0 commit comments

Comments
 (0)