summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSam Bingner <sam@bingner.com>2019-05-06 14:31:17 -1000
committerSam Bingner <sam@bingner.com>2019-05-08 10:08:11 -1000
commitca02b0697f2f05de3bdd6c2f7cce928c9937bbc6 (patch)
tree84db78b776542f88532a184baa833f4727107cdc
parentd02b5fde55f6681ee84d901b8226c552fa7bb81b (diff)
Updates to apollo's python3.7 build
-rw-r--r--data/_python-3.7.3/make.sh39
-rw-r--r--data/_python-3.7.3/setup.patch179
-rw-r--r--data/_python3.7/Python-3.7.3.tar.xz (renamed from data/_python-3.7.3/Python-3.7.3.tar.xz)bin17108364 -> 17108364 bytes
-rw-r--r--data/_python3.7/_metadata/description (renamed from data/_python-3.7.3/_metadata/description)0
l---------data/_python3.7/_metadata/expat.dep (renamed from data/_python-3.7.3/_metadata/expat.dep)0
-rw-r--r--data/_python3.7/_metadata/in.1443.00 (renamed from data/_python-3.7.3/_metadata/in.1443.00)0
l---------data/_python3.7/_metadata/libffi.dep (renamed from data/_python-3.7.3/_metadata/libffi.dep)0
l---------data/_python3.7/_metadata/libssl1.0.dep (renamed from data/_python-3.7.3/_metadata/libssl1.0.dep)0
l---------data/_python3.7/_metadata/maintainer (renamed from data/_python-3.7.3/_metadata/maintainer)0
-rw-r--r--data/_python3.7/_metadata/name (renamed from data/_python-3.7.3/_metadata/name)0
l---------data/_python3.7/_metadata/ncurses.dep (renamed from data/_python-3.7.3/_metadata/ncurses.dep)0
-rw-r--r--data/_python3.7/_metadata/priority (renamed from data/_python-3.7.3/_metadata/priority)0
l---------data/_python3.7/_metadata/readline.dep (renamed from data/_python-3.7.3/_metadata/readline.dep)0
-rw-r--r--data/_python3.7/_metadata/role (renamed from data/_python-3.7.3/_metadata/role)0
-rw-r--r--data/_python3.7/_metadata/section (renamed from data/_python-3.7.3/_metadata/section)0
-rw-r--r--data/_python3.7/_metadata/tags (renamed from data/_python-3.7.3/_metadata/tags)0
-rw-r--r--data/_python3.7/_metadata/version (renamed from data/_python-3.7.3/_metadata/version)0
l---------data/_python3.7/_metadata/xz.dep (renamed from data/_python-3.7.3/_metadata/xz.dep)0
-rw-r--r--data/_python3.7/configure.diff (renamed from data/_python-3.7.3/configure.patch)0
-rw-r--r--data/_python3.7/header.diff16
-rwxr-xr-xdata/_python3.7/install_certificates.command (renamed from data/_python-3.7.3/install_certificates.command)0
-rw-r--r--data/_python3.7/make.sh42
-rw-r--r--data/_python3.7/proxies.diff (renamed from data/_python-3.7.3/proxies.patch)0
-rw-r--r--data/_python3.7/setup.diff28
-rw-r--r--data/libffi/_metadata/version2
-rw-r--r--data/libpython3.7-dev/_metadata/description (renamed from data/libpython3.7.3-dev/_metadata/description)0
-rw-r--r--data/libpython3.7-dev/_metadata/in.1443.00 (renamed from data/libpython3.7.3-dev/_metadata/in.1443.00)0
l---------data/libpython3.7-dev/_metadata/libpython3.7.dep1
l---------data/libpython3.7-dev/_metadata/maintainer (renamed from data/libpython3.7.3-dev/_metadata/maintainer)0
-rw-r--r--data/libpython3.7-dev/_metadata/priority (renamed from data/libpython3.7.3-dev/_metadata/priority)0
-rw-r--r--data/libpython3.7-dev/_metadata/role (renamed from data/libpython3.7.3-dev/_metadata/role)0
-rw-r--r--data/libpython3.7-dev/_metadata/section (renamed from data/libpython3.7.3-dev/_metadata/section)0
-rw-r--r--data/libpython3.7-dev/_metadata/tags (renamed from data/libpython3.7.3-dev/_metadata/tags)0
-rw-r--r--data/libpython3.7-dev/_metadata/version (renamed from data/libpython3.7.3-dev/_metadata/version)0
-rw-r--r--data/libpython3.7-dev/make.sh6
l---------data/libpython3.7.3-dev/_metadata/libpython3.7.3.dep1
-rw-r--r--data/libpython3.7.3-dev/make.sh4
l---------data/libpython3.7.3/_metadata/_python-3.7.3.dep1
-rw-r--r--data/libpython3.7.3/_metadata/depends7
-rw-r--r--data/libpython3.7.3/_metadata/description1
l---------data/libpython3.7.3/_metadata/maintainer1
-rw-r--r--data/libpython3.7.3/_metadata/version1
-rw-r--r--data/libpython3.7.3/make.sh4
l---------data/libpython3.7/_metadata/_python3.7.dep1
-rw-r--r--data/libpython3.7/_metadata/depends1
-rw-r--r--data/libpython3.7/_metadata/description1
-rw-r--r--data/libpython3.7/_metadata/in.1443.00 (renamed from data/libpython3.7.3/_metadata/in.1443.00)0
l---------data/libpython3.7/_metadata/maintainer1
-rw-r--r--data/libpython3.7/_metadata/priority (renamed from data/libpython3.7.3/_metadata/priority)0
-rw-r--r--data/libpython3.7/_metadata/role (renamed from data/libpython3.7.3/_metadata/role)0
-rw-r--r--data/libpython3.7/_metadata/section (renamed from data/libpython3.7.3/_metadata/section)0
-rw-r--r--data/libpython3.7/_metadata/tags (renamed from data/libpython3.7.3/_metadata/tags)0
l---------data/libpython3.7/_metadata/version1
-rw-r--r--data/libpython3.7/make.sh4
l---------data/python3.7.3/_metadata/expat.dep1
l---------data/python3.7.3/_metadata/libffi.dep1
l---------data/python3.7.3/_metadata/libpython3.7.3.dep1
l---------data/python3.7.3/_metadata/libssl1.0.dep1
l---------data/python3.7.3/_metadata/maintainer1
-rw-r--r--data/python3.7.3/_metadata/name1
l---------data/python3.7.3/_metadata/ncurses.dep1
l---------data/python3.7.3/_metadata/readline.dep1
-rw-r--r--data/python3.7.3/_metadata/version1
l---------data/python3.7.3/_metadata/xz.dep1
-rw-r--r--data/python3.7.3/make.sh2
l---------data/python3.7/_metadata/_python3.7.dep1
-rw-r--r--data/python3.7/_metadata/depends1
-rw-r--r--data/python3.7/_metadata/description (renamed from data/python3.7.3/_metadata/description)0
-rw-r--r--data/python3.7/_metadata/in.1443.00 (renamed from data/python3.7.3/_metadata/in.1443.00)0
l---------data/python3.7/_metadata/maintainer1
-rw-r--r--data/python3.7/_metadata/name1
-rw-r--r--data/python3.7/_metadata/priority (renamed from data/python3.7.3/_metadata/priority)0
-rw-r--r--data/python3.7/_metadata/role (renamed from data/python3.7.3/_metadata/role)0
-rw-r--r--data/python3.7/_metadata/section (renamed from data/python3.7.3/_metadata/section)0
-rw-r--r--data/python3.7/_metadata/tags (renamed from data/python3.7.3/_metadata/tags)0
l---------data/python3.7/_metadata/version1
-rw-r--r--data/python3.7/make.sh3
77 files changed, 111 insertions, 251 deletions
diff --git a/data/_python-3.7.3/make.sh b/data/_python-3.7.3/make.sh
deleted file mode 100644
index a380cacfe..000000000
--- a/data/_python-3.7.3/make.sh
+++ /dev/null
@@ -1,39 +0,0 @@
-pkg:setup
-
-############################################
-
-# Build for the host. Configure is picky about having python >= 3.7.
-dir=${PWD}
-pushd ..
- mkdir host-python
- cd host-python
- ${dir}/configure --prefix=${PWD}
- make install -j16
-popd
-export PATH="${dir}/../host-python/bin:$PATH"
-# Feel free to use another variable for this.
-# PYTHON_FOR_BUILD will break the build (don't use it).
-
-###########################################
-
-for x in "${PKG_DATA}"/*.patch; do
- echo "Patching ${x##*/}"
- patch -p1 < ${x}
-done
-
-autoreconf -ivf
-pkg:configure --enable-loadable-sqlite-extensions \
- --with-system-ffi --with-signal-module --enable-big-digits \
- --with-system-expat --enable-ipv6 --with-ensurepip=install \
- ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no \
- ac_cv_func_sendfile=no # <- Sendfile *might* be broken.
-pkg:make
-pkg:install
-
-# (FIXME) Fix the config to allow for pip installs.
-# ./configure / Python will use the $CC from the build.
-sed -i -e "s/-gcc/-clang/" -e "s/-cc/-clang/" \
- -e "s/-c++/-clang++/" -e "s/-g++/-clang++/" \
- -e "s/${PKG_TARG}-//" \
- ${PKG_DEST}/${PKG_TAPF}/lib/python*/_sysconfigdata*.py
-cp ${PKG_DATA}/install_certificates.command ${PKG_DEST}/${PKG_TAPF}/lib/python*
diff --git a/data/_python-3.7.3/setup.patch b/data/_python-3.7.3/setup.patch
deleted file mode 100644
index 6ac2390b7..000000000
--- a/data/_python-3.7.3/setup.patch
+++ /dev/null
@@ -1,179 +0,0 @@
---- Python-3.7.3/setup.py 2019-03-25 20:21:05.000000000 +0000
-+++ Python-3.7.3+iPhone/setup.py 2019-04-11 20:54:37.306532874 +0000
-@@ -18,6 +18,9 @@
-
- cross_compiling = "_PYTHON_HOST_PLATFORM" in os.environ
-
-+#if cross_compiling:
-+# sys.platform = 'darwin'
-+
- # Set common compiler and linker flags derived from the Makefile,
- # reserved for building the interpreter and the stdlib modules.
- # See bpo-21121 and bpo-35257
-@@ -98,7 +101,7 @@
- cflags = sysconfig.get_config_var('CFLAGS')
- m = re.search(r'-isysroot\s+(\S+)', cflags)
- if m is None:
-- sysroot = '/'
-+ sysroot = os.environ['PKG_ROOT'] or '/'
- else:
- sysroot = m.group(1)
- return sysroot
-@@ -107,7 +110,7 @@
- """
- Returns True if 'path' can be located in an OSX SDK
- """
-- return ( (path.startswith('/usr/') and not path.startswith('/usr/local'))
-+ return ( path.startswith('/usr/')
- or path.startswith('/System/')
- or path.startswith('/Library/') )
-
-@@ -781,6 +784,9 @@
-
- # readline
- do_readline = self.compiler.find_library_file(lib_dirs, 'readline')
-+ if cross_compiling:
-+ # Just say yes to this check.
-+ do_readline = True
- readline_termcap_library = ""
- curses_library = ""
- # Cannot use os.popen here in py3k.
-@@ -789,11 +795,11 @@
- os.makedirs(self.build_temp)
- # Determine if readline is already linked against curses or tinfo.
- if do_readline:
-- if cross_compiling:
-+ if cross_compiling and host_platform != 'darwin':
- ret = os.system("%s -d %s | grep '(NEEDED)' > %s" \
- % (sysconfig.get_config_var('READELF'),
- do_readline, tmpfile))
-- elif find_executable('ldd'):
-+ elif find_executable('ldd') and host_platform != 'darwin':
- ret = os.system("ldd %s > %s" % (do_readline, tmpfile))
- else:
- ret = 256
-@@ -833,7 +839,7 @@
- # MacOSX 10.4 has a broken readline. Don't try to build
- # the readline module unless the user has installed a fixed
- # readline package
-- if find_file('readline/rlconf.h', inc_dirs, []) is None:
-+ if find_file('readline/rlconf.h', inc_dirs, []) is None and not cross_compiling:
- do_readline = False
- if do_readline:
- if host_platform == 'darwin' and os_release < 9:
-@@ -1346,6 +1352,9 @@
- curses_defines = []
- curses_includes = []
- panel_library = 'panel'
-+ if cross_compiling:
-+ # Default to ncurses here.
-+ curses_library = curses_library or 'ncurses'
- if curses_library == 'ncursesw':
- curses_defines.append(('HAVE_NCURSESW', '1'))
- if not cross_compiling:
-@@ -1390,7 +1399,7 @@
-
- # If the curses module is enabled, check for the panel module
- if (module_enabled(exts, '_curses') and
-- self.compiler.find_library_file(lib_dirs, panel_library)):
-+ self.compiler.find_library_file(lib_dirs, panel_library)) or cross_compiling:
- exts.append( Extension('_curses_panel', ['_curses_panel.c'],
- include_dirs=curses_includes,
- define_macros=curses_defines,
-@@ -1412,22 +1421,24 @@
- # http://www.gzip.org/zlib/
- zlib_inc = find_file('zlib.h', [], inc_dirs)
- have_zlib = False
-- if zlib_inc is not None:
-- zlib_h = zlib_inc[0] + '/zlib.h'
-- version = '"0.0.0"'
-+ if zlib_inc is not None or cross_compiling:
-+# zlib_h = zlib_inc[0] + '/zlib.h'
-+# version = '"0.0.0"'
-+ version = '"1.1.3"'
- version_req = '"1.1.3"'
-- if host_platform == 'darwin' and is_macosx_sdk_path(zlib_h):
-- zlib_h = os.path.join(macosx_sdk_root(), zlib_h[1:])
-- with open(zlib_h) as fp:
-- while 1:
-- line = fp.readline()
-- if not line:
-- break
-- if line.startswith('#define ZLIB_VERSION'):
-- version = line.split()[2]
-- break
-- if version >= version_req:
-- if (self.compiler.find_library_file(lib_dirs, 'z')):
-+# if host_platform == 'darwin' and is_macosx_sdk_path(zlib_h):
-+# zlib_h = os.path.join(macosx_sdk_root(), zlib_h[1:])
-+# with open(zlib_h) as fp:
-+# while 1:
-+# line = fp.readline()
-+# if not line:
-+# break
-+# if line.startswith('#define ZLIB_VERSION'):
-+# version = line.split()[2]
-+# break
-+ if version >= version_req or cross_compiling:
-+ # zlib is a default lib on iOS.
-+ if (self.compiler.find_library_file(lib_dirs, 'z')) or cross_compiling:
- if host_platform == "darwin":
- zlib_extra_link_args = ('-Wl,-search_paths_first',)
- else:
-@@ -1459,7 +1470,8 @@
- extra_link_args = extra_link_args) )
-
- # Gustavo Niemeyer's bz2 module.
-- if (self.compiler.find_library_file(lib_dirs, 'bz2')):
-+ if (self.compiler.find_library_file(lib_dirs, 'bz2')) or cross_compiling:
-+ # BZ2 is in the iOS SDK
- if host_platform == "darwin":
- bz2_extra_link_args = ('-Wl,-search_paths_first',)
- else:
-@@ -1471,7 +1483,8 @@
- missing.append('_bz2')
-
- # LZMA compression support.
-- if self.compiler.find_library_file(lib_dirs, 'lzma'):
-+ if self.compiler.find_library_file(lib_dirs, 'lzma') or cross_compiling:
-+ # LZMA is in the iOS SDK
- exts.append( Extension('_lzma', ['_lzmamodule.c'],
- libraries = ['lzma']) )
- else:
-@@ -1631,11 +1644,12 @@
-
- # Build the _uuid module if possible
- uuid_incs = find_file("uuid.h", inc_dirs, ["/usr/include/uuid"])
-- if uuid_incs is not None:
-- if self.compiler.find_library_file(lib_dirs, 'uuid'):
-- uuid_libs = ['uuid']
-- else:
-- uuid_libs = []
-+ if uuid_incs is not None or cross_compiling:
-+ # uuid/uuid.h exists in the iOS SDK.
-+# if self.compiler.find_library_file(lib_dirs, 'uuid'):
-+# uuid_libs = ['uuid']
-+# else:
-+ uuid_libs = []
- self.extensions.append(Extension('_uuid', ['_uuidmodule.c'],
- libraries=uuid_libs,
- include_dirs=uuid_incs))
-@@ -1926,6 +1940,9 @@
-
- def configure_ctypes(self, ext):
- if not self.use_system_libffi:
-+ if cross_compiling:
-+ return True
-+ # Bypass the check, assume library path is correct
- if host_platform == 'darwin':
- return self.configure_ctypes_darwin(ext)
- print('INFO: Could not locate ffi libs and/or headers')
-@@ -1984,7 +2001,7 @@
- return
- # OS X 10.5 comes with libffi.dylib; the include files are
- # in /usr/include/ffi
-- inc_dirs.append('/usr/include/ffi')
-+ inc_dirs.append(sysroot + '/usr/include/ffi')
-
- ffi_inc = [sysconfig.get_config_var("LIBFFI_INCLUDEDIR")]
- if not ffi_inc or ffi_inc[0] == '':
diff --git a/data/_python-3.7.3/Python-3.7.3.tar.xz b/data/_python3.7/Python-3.7.3.tar.xz
index 9d6454c5c..9d6454c5c 100644
--- a/data/_python-3.7.3/Python-3.7.3.tar.xz
+++ b/data/_python3.7/Python-3.7.3.tar.xz
Binary files differ
diff --git a/data/_python-3.7.3/_metadata/description b/data/_python3.7/_metadata/description
index cf36e1f16..cf36e1f16 100644
--- a/data/_python-3.7.3/_metadata/description
+++ b/data/_python3.7/_metadata/description
diff --git a/data/_python-3.7.3/_metadata/expat.dep b/data/_python3.7/_metadata/expat.dep
index 2100fb19e..2100fb19e 120000
--- a/data/_python-3.7.3/_metadata/expat.dep
+++ b/data/_python3.7/_metadata/expat.dep
diff --git a/data/_python-3.7.3/_metadata/in.1443.00 b/data/_python3.7/_metadata/in.1443.00
index e69de29bb..e69de29bb 100644
--- a/data/_python-3.7.3/_metadata/in.1443.00
+++ b/data/_python3.7/_metadata/in.1443.00
diff --git a/data/_python-3.7.3/_metadata/libffi.dep b/data/_python3.7/_metadata/libffi.dep
index da9d6c358..da9d6c358 120000
--- a/data/_python-3.7.3/_metadata/libffi.dep
+++ b/data/_python3.7/_metadata/libffi.dep
diff --git a/data/_python-3.7.3/_metadata/libssl1.0.dep b/data/_python3.7/_metadata/libssl1.0.dep
index a501d00a8..a501d00a8 120000
--- a/data/_python-3.7.3/_metadata/libssl1.0.dep
+++ b/data/_python3.7/_metadata/libssl1.0.dep
diff --git a/data/_python-3.7.3/_metadata/maintainer b/data/_python3.7/_metadata/maintainer
index 0c538aadb..0c538aadb 120000
--- a/data/_python-3.7.3/_metadata/maintainer
+++ b/data/_python3.7/_metadata/maintainer
diff --git a/data/_python-3.7.3/_metadata/name b/data/_python3.7/_metadata/name
index 358eeddf0..358eeddf0 100644
--- a/data/_python-3.7.3/_metadata/name
+++ b/data/_python3.7/_metadata/name
diff --git a/data/_python-3.7.3/_metadata/ncurses.dep b/data/_python3.7/_metadata/ncurses.dep
index a395fad08..a395fad08 120000
--- a/data/_python-3.7.3/_metadata/ncurses.dep
+++ b/data/_python3.7/_metadata/ncurses.dep
diff --git a/data/_python-3.7.3/_metadata/priority b/data/_python3.7/_metadata/priority
index 134d9bc32..134d9bc32 100644
--- a/data/_python-3.7.3/_metadata/priority
+++ b/data/_python3.7/_metadata/priority
diff --git a/data/_python-3.7.3/_metadata/readline.dep b/data/_python3.7/_metadata/readline.dep
index f35c9185b..f35c9185b 120000
--- a/data/_python-3.7.3/_metadata/readline.dep
+++ b/data/_python3.7/_metadata/readline.dep
diff --git a/data/_python-3.7.3/_metadata/role b/data/_python3.7/_metadata/role
index 52b4d7301..52b4d7301 100644
--- a/data/_python-3.7.3/_metadata/role
+++ b/data/_python3.7/_metadata/role
diff --git a/data/_python-3.7.3/_metadata/section b/data/_python3.7/_metadata/section
index ddc7f1fd8..ddc7f1fd8 100644
--- a/data/_python-3.7.3/_metadata/section
+++ b/data/_python3.7/_metadata/section
diff --git a/data/_python-3.7.3/_metadata/tags b/data/_python3.7/_metadata/tags
index ad5d50831..ad5d50831 100644
--- a/data/_python-3.7.3/_metadata/tags
+++ b/data/_python3.7/_metadata/tags
diff --git a/data/_python-3.7.3/_metadata/version b/data/_python3.7/_metadata/version
index c1e43e6d4..c1e43e6d4 100644
--- a/data/_python-3.7.3/_metadata/version
+++ b/data/_python3.7/_metadata/version
diff --git a/data/_python-3.7.3/_metadata/xz.dep b/data/_python3.7/_metadata/xz.dep
index d5eb7ae54..d5eb7ae54 120000
--- a/data/_python-3.7.3/_metadata/xz.dep
+++ b/data/_python3.7/_metadata/xz.dep
diff --git a/data/_python-3.7.3/configure.patch b/data/_python3.7/configure.diff
index f8b11e254..f8b11e254 100644
--- a/data/_python-3.7.3/configure.patch
+++ b/data/_python3.7/configure.diff
diff --git a/data/_python3.7/header.diff b/data/_python3.7/header.diff
new file mode 100644
index 000000000..d41804464
--- /dev/null
+++ b/data/_python3.7/header.diff
@@ -0,0 +1,16 @@
+diff -ur Python-3.7.3/Modules/posixmodule.c Python-3.7.3+iPhone/Modules/posixmodule.c
+--- Python-3.7.3/Modules/posixmodule.c 2019-03-25 10:21:05.000000000 -1000
++++ Python-3.7.3+iPhone/Modules/posixmodule.c 2019-05-06 14:01:00.000000000 -1000
+@@ -5910,11 +5910,10 @@
+ #else
+ #ifdef HAVE_LIBUTIL_H
+ #include <libutil.h>
+-#else
++#endif /* HAVE_LIBUTIL_H */
+ #ifdef HAVE_UTIL_H
+ #include <util.h>
+ #endif /* HAVE_UTIL_H */
+-#endif /* HAVE_LIBUTIL_H */
+ #endif /* HAVE_PTY_H */
+ #ifdef HAVE_STROPTS_H
+ #include <stropts.h>
diff --git a/data/_python-3.7.3/install_certificates.command b/data/_python3.7/install_certificates.command
index 529e4c400..529e4c400 100755
--- a/data/_python-3.7.3/install_certificates.command
+++ b/data/_python3.7/install_certificates.command
diff --git a/data/_python3.7/make.sh b/data/_python3.7/make.sh
new file mode 100644
index 000000000..128f98d09
--- /dev/null
+++ b/data/_python3.7/make.sh
@@ -0,0 +1,42 @@
+pkg:extract
+
+############################################
+
+# Build for the host. Configure is picky about having python >= 3.7.
+
+if [ -z "$(which python3.7)" ]; then
+ SRC_DIR="$(echo *)"
+ mkdir host-python
+ cd host-python
+ ../Python*/configure --prefix=${PWD}
+ make install -j16
+ export PATH="${PWD}/bin:$PATH"
+ cd ..
+fi
+
+cd Python*
+pkg:patch
+
+# Feel free to use another variable for this.
+# PYTHON_FOR_BUILD will break the build (don't use it).
+
+###########################################
+
+export cross_compiling=yes
+autoconf
+pkg:configure CPPFLAGS="-I$(PKG_DEST_ ncurses)"/usr/include/ncursesw \
+ --enable-loadable-sqlite-extensions \
+ --with-system-ffi --with-signal-module --enable-big-digits \
+ --with-system-expat --enable-ipv6 --without-ensurepip \
+ ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no \
+ ac_cv_func_sendfile=no # <- Sendfile *might* be broken.
+pkg:make
+pkg:install
+
+# (FIXME) Fix the config to allow for pip installs.
+# ./configure / Python will use the $CC from the build.
+sed -i -e "s/-gcc/-clang/" -e "s/-cc/-clang/" \
+ -e "s/-c++/-clang++/" -e "s/-g++/-clang++/" \
+ -e "s/${PKG_TARG}-//" \
+ ${PKG_DEST}/${PKG_TAPF}/lib/python*/_sysconfigdata*.py
+cp ${PKG_DATA}/install_certificates.command ${PKG_DEST}/${PKG_TAPF}/lib/python*
diff --git a/data/_python-3.7.3/proxies.patch b/data/_python3.7/proxies.diff
index b4959ace3..b4959ace3 100644
--- a/data/_python-3.7.3/proxies.patch
+++ b/data/_python3.7/proxies.diff
diff --git a/data/_python3.7/setup.diff b/data/_python3.7/setup.diff
new file mode 100644
index 000000000..648b020d0
--- /dev/null
+++ b/data/_python3.7/setup.diff
@@ -0,0 +1,28 @@
+diff -ur Python-3.7.3/setup.py Python-3.7.3+iPhone/setup.py
+--- Python-3.7.3/setup.py 2019-03-25 10:21:05.000000000 -1000
++++ Python-3.7.3+iPhone/setup.py 2019-05-07 14:47:15.000000000 -1000
+@@ -98,7 +98,7 @@
+ cflags = sysconfig.get_config_var('CFLAGS')
+ m = re.search(r'-isysroot\s+(\S+)', cflags)
+ if m is None:
+- sysroot = '/'
++ sysroot = os.environ['PKG_ROOT'] or '/'
+ else:
+ sysroot = m.group(1)
+ return sysroot
+@@ -611,11 +611,10 @@
+ # Add the sysroot paths. 'sysroot' is a compiler option used to
+ # set the logical path of the standard system headers and
+ # libraries.
+- lib_dirs = (self.compiler.library_dirs +
+- sysroot_paths(('LDFLAGS', 'CC'), system_lib_dirs))
+- inc_dirs = (self.compiler.include_dirs +
+- sysroot_paths(('CPPFLAGS', 'CFLAGS', 'CC'),
+- system_include_dirs))
++ lib_dirs = ([os.getenv('PKG_ROOT') + '/usr/lib'] +
++ os.getenv('LIBRARY_PATH').split(':'))
++ inc_dirs = ([os.getenv('PKG_ROOT') + '/usr/include'] +
++ os.getenv('CPATH').split(':'))
+ exts = []
+ missing = []
+
diff --git a/data/libffi/_metadata/version b/data/libffi/_metadata/version
index 08ebb261e..e4604e3af 100644
--- a/data/libffi/_metadata/version
+++ b/data/libffi/_metadata/version
@@ -1 +1 @@
-1:3.2.1
+3.2.1
diff --git a/data/libpython3.7.3-dev/_metadata/description b/data/libpython3.7-dev/_metadata/description
index 2cc042ec3..2cc042ec3 100644
--- a/data/libpython3.7.3-dev/_metadata/description
+++ b/data/libpython3.7-dev/_metadata/description
diff --git a/data/libpython3.7.3-dev/_metadata/in.1443.00 b/data/libpython3.7-dev/_metadata/in.1443.00
index e69de29bb..e69de29bb 100644
--- a/data/libpython3.7.3-dev/_metadata/in.1443.00
+++ b/data/libpython3.7-dev/_metadata/in.1443.00
diff --git a/data/libpython3.7-dev/_metadata/libpython3.7.dep b/data/libpython3.7-dev/_metadata/libpython3.7.dep
new file mode 120000
index 000000000..f3d736e0c
--- /dev/null
+++ b/data/libpython3.7-dev/_metadata/libpython3.7.dep
@@ -0,0 +1 @@
+../../libpython3.7 \ No newline at end of file
diff --git a/data/libpython3.7.3-dev/_metadata/maintainer b/data/libpython3.7-dev/_metadata/maintainer
index 0c538aadb..0c538aadb 120000
--- a/data/libpython3.7.3-dev/_metadata/maintainer
+++ b/data/libpython3.7-dev/_metadata/maintainer
diff --git a/data/libpython3.7.3-dev/_metadata/priority b/data/libpython3.7-dev/_metadata/priority
index 134d9bc32..134d9bc32 100644
--- a/data/libpython3.7.3-dev/_metadata/priority
+++ b/data/libpython3.7-dev/_metadata/priority
diff --git a/data/libpython3.7.3-dev/_metadata/role b/data/libpython3.7-dev/_metadata/role
index 52b4d7301..52b4d7301 100644
--- a/data/libpython3.7.3-dev/_metadata/role
+++ b/data/libpython3.7-dev/_metadata/role
diff --git a/data/libpython3.7.3-dev/_metadata/section b/data/libpython3.7-dev/_metadata/section
index ddc7f1fd8..ddc7f1fd8 100644
--- a/data/libpython3.7.3-dev/_metadata/section
+++ b/data/libpython3.7-dev/_metadata/section
diff --git a/data/libpython3.7.3-dev/_metadata/tags b/data/libpython3.7-dev/_metadata/tags
index ad5d50831..ad5d50831 100644
--- a/data/libpython3.7.3-dev/_metadata/tags
+++ b/data/libpython3.7-dev/_metadata/tags
diff --git a/data/libpython3.7.3-dev/_metadata/version b/data/libpython3.7-dev/_metadata/version
index c1e43e6d4..c1e43e6d4 100644
--- a/data/libpython3.7.3-dev/_metadata/version
+++ b/data/libpython3.7-dev/_metadata/version
diff --git a/data/libpython3.7-dev/make.sh b/data/libpython3.7-dev/make.sh
new file mode 100644
index 000000000..deab93215
--- /dev/null
+++ b/data/libpython3.7-dev/make.sh
@@ -0,0 +1,6 @@
+LIBNAME=${PKG_NAME#lib}
+LIBNAME=${LIBNAME%-dev}
+pkg: mkdir -p "/usr/lib/${LIBNAME}"
+cp -a "$(PKG_DEST_ _${LIBNAME})"/usr/include "${PKG_DEST}"/usr/
+cp -a "$(PKG_DEST_ _${LIBNAME})"/usr/lib/pkgconfig "${PKG_DEST}"/usr/lib/
+cp -a "$(PKG_DEST_ _${LIBNAME})/usr/lib/${LIBNAME}"/config*/ "${PKG_DEST}/usr/lib/${LIBNAME}/"
diff --git a/data/libpython3.7.3-dev/_metadata/libpython3.7.3.dep b/data/libpython3.7.3-dev/_metadata/libpython3.7.3.dep
deleted file mode 120000
index 42d159aff..000000000
--- a/data/libpython3.7.3-dev/_metadata/libpython3.7.3.dep
+++ /dev/null
@@ -1 +0,0 @@
-../../libpython3.7.3 \ No newline at end of file
diff --git a/data/libpython3.7.3-dev/make.sh b/data/libpython3.7.3-dev/make.sh
deleted file mode 100644
index d0180021f..000000000
--- a/data/libpython3.7.3-dev/make.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-version='3.7.3'
-
-pkg: mkdir -p /usr/lib
-cp -a "${PKG_DEST_ _python${version})"/usr/include "${PKG_DEST}"/usr/
diff --git a/data/libpython3.7.3/_metadata/_python-3.7.3.dep b/data/libpython3.7.3/_metadata/_python-3.7.3.dep
deleted file mode 120000
index e9f03896f..000000000
--- a/data/libpython3.7.3/_metadata/_python-3.7.3.dep
+++ /dev/null
@@ -1 +0,0 @@
-../../_python-3.7.3 \ No newline at end of file
diff --git a/data/libpython3.7.3/_metadata/depends b/data/libpython3.7.3/_metadata/depends
deleted file mode 100644
index 3746ff9c8..000000000
--- a/data/libpython3.7.3/_metadata/depends
+++ /dev/null
@@ -1,7 +0,0 @@
-expat
-libffi
-libssl1.0
-ncurses
-readline
-xz
-
diff --git a/data/libpython3.7.3/_metadata/description b/data/libpython3.7.3/_metadata/description
deleted file mode 100644
index c7797324e..000000000
--- a/data/libpython3.7.3/_metadata/description
+++ /dev/null
@@ -1 +0,0 @@
-Shared library for python version 3.7.3
diff --git a/data/libpython3.7.3/_metadata/maintainer b/data/libpython3.7.3/_metadata/maintainer
deleted file mode 120000
index 0c538aadb..000000000
--- a/data/libpython3.7.3/_metadata/maintainer
+++ /dev/null
@@ -1 +0,0 @@
-../../../people/mac \ No newline at end of file
diff --git a/data/libpython3.7.3/_metadata/version b/data/libpython3.7.3/_metadata/version
deleted file mode 100644
index c1e43e6d4..000000000
--- a/data/libpython3.7.3/_metadata/version
+++ /dev/null
@@ -1 +0,0 @@
-3.7.3
diff --git a/data/libpython3.7.3/make.sh b/data/libpython3.7.3/make.sh
deleted file mode 100644
index 6644a717c..000000000
--- a/data/libpython3.7.3/make.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-pkg: mkdir -p /usr/lib
-LIBNAME=${PKG_NAME#lib}
-cp -a "${PKG_DEST_ _${LIBNAME}}"/usr/lib/lib*.dylib "${PKG_DEST}"/usr/lib
-
diff --git a/data/libpython3.7/_metadata/_python3.7.dep b/data/libpython3.7/_metadata/_python3.7.dep
new file mode 120000
index 000000000..c7f8d7c93
--- /dev/null
+++ b/data/libpython3.7/_metadata/_python3.7.dep
@@ -0,0 +1 @@
+../../_python3.7/ \ No newline at end of file
diff --git a/data/libpython3.7/_metadata/depends b/data/libpython3.7/_metadata/depends
new file mode 100644
index 000000000..8440ff345
--- /dev/null
+++ b/data/libpython3.7/_metadata/depends
@@ -0,0 +1 @@
+ncurses, readline, expat, xz, libssl1.0, libffi
diff --git a/data/libpython3.7/_metadata/description b/data/libpython3.7/_metadata/description
new file mode 100644
index 000000000..81aaa2141
--- /dev/null
+++ b/data/libpython3.7/_metadata/description
@@ -0,0 +1 @@
+Shared Python runtime libraries (version 3.7)
diff --git a/data/libpython3.7.3/_metadata/in.1443.00 b/data/libpython3.7/_metadata/in.1443.00
index e69de29bb..e69de29bb 100644
--- a/data/libpython3.7.3/_metadata/in.1443.00
+++ b/data/libpython3.7/_metadata/in.1443.00
diff --git a/data/libpython3.7/_metadata/maintainer b/data/libpython3.7/_metadata/maintainer
new file mode 120000
index 000000000..67d60a828
--- /dev/null
+++ b/data/libpython3.7/_metadata/maintainer
@@ -0,0 +1 @@
+../../_python3.7/_metadata/maintainer \ No newline at end of file
diff --git a/data/libpython3.7.3/_metadata/priority b/data/libpython3.7/_metadata/priority
index 134d9bc32..134d9bc32 100644
--- a/data/libpython3.7.3/_metadata/priority
+++ b/data/libpython3.7/_metadata/priority
diff --git a/data/libpython3.7.3/_metadata/role b/data/libpython3.7/_metadata/role
index 52b4d7301..52b4d7301 100644
--- a/data/libpython3.7.3/_metadata/role
+++ b/data/libpython3.7/_metadata/role
diff --git a/data/libpython3.7.3/_metadata/section b/data/libpython3.7/_metadata/section
index ddc7f1fd8..ddc7f1fd8 100644
--- a/data/libpython3.7.3/_metadata/section
+++ b/data/libpython3.7/_metadata/section
diff --git a/data/libpython3.7.3/_metadata/tags b/data/libpython3.7/_metadata/tags
index ad5d50831..ad5d50831 100644
--- a/data/libpython3.7.3/_metadata/tags
+++ b/data/libpython3.7/_metadata/tags
diff --git a/data/libpython3.7/_metadata/version b/data/libpython3.7/_metadata/version
new file mode 120000
index 000000000..116ce676f
--- /dev/null
+++ b/data/libpython3.7/_metadata/version
@@ -0,0 +1 @@
+../../_python3.7/_metadata/version \ No newline at end of file
diff --git a/data/libpython3.7/make.sh b/data/libpython3.7/make.sh
new file mode 100644
index 000000000..9516da1c9
--- /dev/null
+++ b/data/libpython3.7/make.sh
@@ -0,0 +1,4 @@
+pkg: mkdir -p /usr
+LIBNAME=${PKG_NAME#lib}
+cp -a "$(PKG_DEST_ _${LIBNAME})"/usr/lib "${PKG_DEST}"/usr/
+pkg: rm -rf /usr/lib/pkgconfig
diff --git a/data/python3.7.3/_metadata/expat.dep b/data/python3.7.3/_metadata/expat.dep
deleted file mode 120000
index 2100fb19e..000000000
--- a/data/python3.7.3/_metadata/expat.dep
+++ /dev/null
@@ -1 +0,0 @@
-../../expat \ No newline at end of file
diff --git a/data/python3.7.3/_metadata/libffi.dep b/data/python3.7.3/_metadata/libffi.dep
deleted file mode 120000
index da9d6c358..000000000
--- a/data/python3.7.3/_metadata/libffi.dep
+++ /dev/null
@@ -1 +0,0 @@
-../../libffi \ No newline at end of file
diff --git a/data/python3.7.3/_metadata/libpython3.7.3.dep b/data/python3.7.3/_metadata/libpython3.7.3.dep
deleted file mode 120000
index 42d159aff..000000000
--- a/data/python3.7.3/_metadata/libpython3.7.3.dep
+++ /dev/null
@@ -1 +0,0 @@
-../../libpython3.7.3 \ No newline at end of file
diff --git a/data/python3.7.3/_metadata/libssl1.0.dep b/data/python3.7.3/_metadata/libssl1.0.dep
deleted file mode 120000
index a501d00a8..000000000
--- a/data/python3.7.3/_metadata/libssl1.0.dep
+++ /dev/null
@@ -1 +0,0 @@
-../../libssl1.0 \ No newline at end of file
diff --git a/data/python3.7.3/_metadata/maintainer b/data/python3.7.3/_metadata/maintainer
deleted file mode 120000
index 0c538aadb..000000000
--- a/data/python3.7.3/_metadata/maintainer
+++ /dev/null
@@ -1 +0,0 @@
-../../../people/mac \ No newline at end of file
diff --git a/data/python3.7.3/_metadata/name b/data/python3.7.3/_metadata/name
deleted file mode 100644
index 358eeddf0..000000000
--- a/data/python3.7.3/_metadata/name
+++ /dev/null
@@ -1 +0,0 @@
-Python 3
diff --git a/data/python3.7.3/_metadata/ncurses.dep b/data/python3.7.3/_metadata/ncurses.dep
deleted file mode 120000
index a395fad08..000000000
--- a/data/python3.7.3/_metadata/ncurses.dep
+++ /dev/null
@@ -1 +0,0 @@
-../../ncurses \ No newline at end of file
diff --git a/data/python3.7.3/_metadata/readline.dep b/data/python3.7.3/_metadata/readline.dep
deleted file mode 120000
index f35c9185b..000000000
--- a/data/python3.7.3/_metadata/readline.dep
+++ /dev/null
@@ -1 +0,0 @@
-../../readline \ No newline at end of file
diff --git a/data/python3.7.3/_metadata/version b/data/python3.7.3/_metadata/version
deleted file mode 100644
index c1e43e6d4..000000000
--- a/data/python3.7.3/_metadata/version
+++ /dev/null
@@ -1 +0,0 @@
-3.7.3
diff --git a/data/python3.7.3/_metadata/xz.dep b/data/python3.7.3/_metadata/xz.dep
deleted file mode 120000
index d5eb7ae54..000000000
--- a/data/python3.7.3/_metadata/xz.dep
+++ /dev/null
@@ -1 +0,0 @@
-../../xz \ No newline at end of file
diff --git a/data/python3.7.3/make.sh b/data/python3.7.3/make.sh
deleted file mode 100644
index 195572e1b..000000000
--- a/data/python3.7.3/make.sh
+++ /dev/null
@@ -1,2 +0,0 @@
-pkg: mkdir -p /usr
-cp -a "${PKG_DEST_ _${PKG_NAME}}"/usr/bin "${PKG_DEST}"/usr
diff --git a/data/python3.7/_metadata/_python3.7.dep b/data/python3.7/_metadata/_python3.7.dep
new file mode 120000
index 000000000..9fdbdf7e6
--- /dev/null
+++ b/data/python3.7/_metadata/_python3.7.dep
@@ -0,0 +1 @@
+../../_python3.7 \ No newline at end of file
diff --git a/data/python3.7/_metadata/depends b/data/python3.7/_metadata/depends
new file mode 100644
index 000000000..427cafacb
--- /dev/null
+++ b/data/python3.7/_metadata/depends
@@ -0,0 +1 @@
+libpython3.7
diff --git a/data/python3.7.3/_metadata/description b/data/python3.7/_metadata/description
index cf36e1f16..cf36e1f16 100644
--- a/data/python3.7.3/_metadata/description
+++ b/data/python3.7/_metadata/description
diff --git a/data/python3.7.3/_metadata/in.1443.00 b/data/python3.7/_metadata/in.1443.00
index e69de29bb..e69de29bb 100644
--- a/data/python3.7.3/_metadata/in.1443.00
+++ b/data/python3.7/_metadata/in.1443.00
diff --git a/data/python3.7/_metadata/maintainer b/data/python3.7/_metadata/maintainer
new file mode 120000
index 000000000..67d60a828
--- /dev/null
+++ b/data/python3.7/_metadata/maintainer
@@ -0,0 +1 @@
+../../_python3.7/_metadata/maintainer \ No newline at end of file
diff --git a/data/python3.7/_metadata/name b/data/python3.7/_metadata/name
new file mode 100644
index 000000000..52f5e1d61
--- /dev/null
+++ b/data/python3.7/_metadata/name
@@ -0,0 +1 @@
+Python 3.7
diff --git a/data/python3.7.3/_metadata/priority b/data/python3.7/_metadata/priority
index 134d9bc32..134d9bc32 100644
--- a/data/python3.7.3/_metadata/priority
+++ b/data/python3.7/_metadata/priority
diff --git a/data/python3.7.3/_metadata/role b/data/python3.7/_metadata/role
index 52b4d7301..52b4d7301 100644
--- a/data/python3.7.3/_metadata/role
+++ b/data/python3.7/_metadata/role
diff --git a/data/python3.7.3/_metadata/section b/data/python3.7/_metadata/section
index ddc7f1fd8..ddc7f1fd8 100644
--- a/data/python3.7.3/_metadata/section
+++ b/data/python3.7/_metadata/section
diff --git a/data/python3.7.3/_metadata/tags b/data/python3.7/_metadata/tags
index ad5d50831..ad5d50831 100644
--- a/data/python3.7.3/_metadata/tags
+++ b/data/python3.7/_metadata/tags
diff --git a/data/python3.7/_metadata/version b/data/python3.7/_metadata/version
new file mode 120000
index 000000000..116ce676f
--- /dev/null
+++ b/data/python3.7/_metadata/version
@@ -0,0 +1 @@
+../../_python3.7/_metadata/version \ No newline at end of file
diff --git a/data/python3.7/make.sh b/data/python3.7/make.sh
new file mode 100644
index 000000000..580e502ef
--- /dev/null
+++ b/data/python3.7/make.sh
@@ -0,0 +1,3 @@
+pkg: mkdir -p /usr
+cp -a "$(PKG_DEST_ _${PKG_NAME})"/usr/bin "${PKG_DEST}"/usr
+pkg: rm /usr/bin/2to3