Index: lang/python310/Makefile =================================================================== --- lang/python310/Makefile +++ lang/python310/Makefile @@ -1,6 +1,6 @@ PORTNAME= python DISTVERSION= ${PYTHON_DISTVERSION} -PORTREVISION= 2 +PORTREVISION= 3 CATEGORIES= lang python MASTER_SITES= PYTHON/ftp/python/${DISTVERSION:C/[a-z].*//} PKGNAMESUFFIX= ${PYTHON_SUFFIX} @@ -16,7 +16,7 @@ LIB_DEPENDS= libffi.so:devel/libffi USES= compiler:c11 cpe ncurses pathfix pkgconfig \ - python:${PYTHON_DISTVERSION:R},env readline shebangfix ssl tar:xz + python:${PYTHON_DISTVERSION:R},env readline shebangfix ssl tar:xz trigger PATHFIX_MAKEFILEIN= Makefile.pre.in USE_LDCONFIG= yes GNU_CONFIGURE= yes @@ -25,6 +25,7 @@ SHEBANG_FILES+= Lib/test/ziptestdata/exe_with_z64 \ Lib/test/ziptestdata/exe_with_zip \ Lib/test/ziptestdata/header.sh +TRIGGERS= ${PYTHON_VERSION} DISABLED_EXTENSIONS= _sqlite3 _tkinter _gdbm CONFIGURE_ARGS+= --enable-shared --without-ensurepip \ Index: lang/python310/files/python3.10.ucl.in =================================================================== --- /dev/null +++ lang/python310/files/python3.10.ucl.in @@ -0,0 +1,64 @@ +path_glob: "%%PYTHON_SITELIBDIR%%/*" +cleanup: { + type: lua + sandbox: false + script: <=> removed stale bytecode " .. bytecode_file) + os.remove(full_path .. "/" .. bytecode_file) + end + end + end + end + local res = pkg.readdir(full_path) + -- to appease out-of-order execution in package building environments + if res == nil then + break + end + if #res == 0 then + --print(">=> removed empty directory " .. full_path ) + os.remove(full_path) + end + end + end +end + +print("Cleaning stale bytecode files...") +cleanup("%%PYTHON_SITELIBDIR%%") + +print("Byte-compiling Python source files...") +pkg.exec({"%%PYTHON_VERSION%%", "-m", "compileall", "-q", "-o", "0", "-o", "1", "-o", "2", "%%PYTHON_SITELIBDIR%%"}) +EOS +} Index: lang/python311/Makefile =================================================================== --- lang/python311/Makefile +++ lang/python311/Makefile @@ -1,6 +1,6 @@ PORTNAME= python DISTVERSION= ${PYTHON_DISTVERSION} -PORTREVISION= 2 +PORTREVISION= 3 CATEGORIES= lang python MASTER_SITES= PYTHON/ftp/python/${DISTVERSION:C/[a-z].*//} PKGNAMESUFFIX= ${PYTHON_SUFFIX} @@ -16,7 +16,7 @@ LIB_DEPENDS= libffi.so:devel/libffi USES= compiler:c11 cpe ncurses pathfix pkgconfig \ - python:${PYTHON_DISTVERSION:R},env readline shebangfix ssl tar:xz + python:${PYTHON_DISTVERSION:R},env readline shebangfix ssl tar:xz trigger PATHFIX_MAKEFILEIN= Makefile.pre.in USE_LDCONFIG= yes GNU_CONFIGURE= yes @@ -25,6 +25,7 @@ SHEBANG_FILES+= Lib/test/ziptestdata/exe_with_z64 \ Lib/test/ziptestdata/exe_with_zip \ Lib/test/ziptestdata/header.sh +TRIGGER= ${PYTHON_VERSION} DISABLED_EXTENSIONS= _sqlite3 _tkinter _gdbm CONFIGURE_ARGS+= --enable-shared --without-ensurepip \ Index: lang/python311/files/python3.11.ucl.in =================================================================== --- /dev/null +++ lang/python311/files/python3.11.ucl.in @@ -0,0 +1,64 @@ +path_glob: "%%PYTHON_SITELIBDIR%%/*" +cleanup: { + type: lua + sandbox: false + script: <=> removed stale bytecode " .. bytecode_file) + os.remove(full_path .. "/" .. bytecode_file) + end + end + end + end + local res = pkg.readdir(full_path) + -- to appease out-of-order execution in package building environments + if res == nil then + break + end + if #res == 0 then + --print(">=> removed empty directory " .. full_path ) + os.remove(full_path) + end + end + end +end + +print("Cleaning stale bytecode files...") +cleanup("%%PYTHON_SITELIBDIR%%") + +print("Byte-compiling Python source files...") +pkg.exec({"%%PYTHON_VERSION%%", "-m", "compileall", "-q", "-o", "0", "-o", "1", "-o", "2", "%%PYTHON_SITELIBDIR%%"}) +EOS +} Index: lang/python37/Makefile =================================================================== --- lang/python37/Makefile +++ lang/python37/Makefile @@ -20,12 +20,13 @@ libmpdec.so:math/mpdecimal USES= cpe ncurses pathfix pkgconfig python:${PYTHON_DISTVERSION:R},env readline \ - shebangfix ssl tar:xz + shebangfix ssl tar:xz trigger PATHFIX_MAKEFILEIN= Makefile.pre.in USE_LDCONFIG= yes GNU_CONFIGURE= yes python_CMD= ${PREFIX}/bin/python${PYTHON_DISTVERSION:R} SHEBANG_FILES= Lib/*.py Lib/*/*.py Lib/*/*/*.py Lib/*/*/*/*.py +TRIGGERS= ${PYTHON_VERSION} DISABLED_EXTENSIONS= _sqlite3 _tkinter _gdbm CONFIGURE_ARGS+= --enable-shared --with-system-ffi --with-system-libmpdec --without-ensurepip Index: lang/python37/files/python3.7.ucl.in =================================================================== --- /dev/null +++ lang/python37/files/python3.7.ucl.in @@ -0,0 +1,66 @@ +path_glob: "%%PYTHON_SITELIBDIR%%/*" +cleanup: { + type: lua + sandbox: false + script: <=> removed stale bytecode " .. bytecode_file) + os.remove(full_path .. "/" .. bytecode_file) + end + end + end + end + local res = pkg.readdir(full_path) + -- to appease out-of-order execution in package building environments + if res == nil then + break + end + if #res == 0 then + --print(">=> removed empty directory " .. full_path ) + os.remove(full_path) + end + end + end +end + +print("Cleaning stale bytecode files...") +cleanup("%%PYTHON_SITELIBDIR%%") + +print("Byte-compiling Python source files...") +pkg.exec({"%%PYTHON_VERSION%%", "-m", "compileall", "-q", "%%PYTHON_SITELIBDIR%%"}) +pkg.exec({"%%PYTHON_VERSION%%", "-O", "-m", "compileall", "-q", "%%PYTHON_SITELIBDIR%%"}) +pkg.exec({"%%PYTHON_VERSION%%", "-OO", "-m", "compileall", "-q", "%%PYTHON_SITELIBDIR%%"}) +EOS +} Index: lang/python38/Makefile =================================================================== --- lang/python38/Makefile +++ lang/python38/Makefile @@ -1,6 +1,6 @@ PORTNAME= python DISTVERSION= ${PYTHON_DISTVERSION} -PORTREVISION= 2 +PORTREVISION= 3 CATEGORIES= lang python MASTER_SITES= PYTHON/ftp/python/${DISTVERSION} PKGNAMESUFFIX= ${PYTHON_SUFFIX} @@ -16,7 +16,7 @@ LIB_DEPENDS= libffi.so:devel/libffi USES= cpe ncurses pathfix pkgconfig python:${PYTHON_DISTVERSION:R},env readline \ - shebangfix ssl tar:xz + shebangfix ssl tar:xz trigger PATHFIX_MAKEFILEIN= Makefile.pre.in USE_LDCONFIG= yes GNU_CONFIGURE= yes @@ -25,6 +25,7 @@ SHEBANG_FILES+= Lib/test/ziptestdata/exe_with_z64 \ Lib/test/ziptestdata/exe_with_zip \ Lib/test/ziptestdata/header.sh +TRIGGERS= ${PYTHON_VERSION} DISABLED_EXTENSIONS= _sqlite3 _tkinter _gdbm CONFIGURE_ARGS+= --enable-shared --without-ensurepip \ Index: lang/python38/files/python3.8.ucl.in =================================================================== --- /dev/null +++ lang/python38/files/python3.8.ucl.in @@ -0,0 +1,66 @@ +path_glob: "%%PYTHON_SITELIBDIR%%/*" +cleanup: { + type: lua + sandbox: false + script: <=> removed stale bytecode " .. bytecode_file) + os.remove(full_path .. "/" .. bytecode_file) + end + end + end + end + local res = pkg.readdir(full_path) + -- to appease out-of-order execution in package building environments + if res == nil then + break + end + if #res == 0 then + --print(">=> removed empty directory " .. full_path ) + os.remove(full_path) + end + end + end +end + +print("Cleaning stale bytecode files...") +cleanup("%%PYTHON_SITELIBDIR%%") + +print("Byte-compiling Python source files...") +pkg.exec({"%%PYTHON_VERSION%%", "-m", "compileall", "-q", "%%PYTHON_SITELIBDIR%%"}) +pkg.exec({"%%PYTHON_VERSION%%", "-O", "-m", "compileall", "-q", "%%PYTHON_SITELIBDIR%%"}) +pkg.exec({"%%PYTHON_VERSION%%", "-OO", "-m", "compileall", "-q", "%%PYTHON_SITELIBDIR%%"}) +EOS +} Index: lang/python39/Makefile =================================================================== --- lang/python39/Makefile +++ lang/python39/Makefile @@ -1,6 +1,6 @@ PORTNAME= python DISTVERSION= ${PYTHON_DISTVERSION} -PORTREVISION= 2 +PORTREVISION= 3 CATEGORIES= lang python MASTER_SITES= PYTHON/ftp/python/${DISTVERSION} PKGNAMESUFFIX= ${PYTHON_SUFFIX} @@ -16,7 +16,7 @@ LIB_DEPENDS= libffi.so:devel/libffi USES= compiler:c11 cpe ncurses pathfix pkgconfig \ - python:${PYTHON_DISTVERSION:R},env readline shebangfix ssl tar:xz + python:${PYTHON_DISTVERSION:R},env readline shebangfix ssl tar:xz trigger PATHFIX_MAKEFILEIN= Makefile.pre.in USE_LDCONFIG= yes GNU_CONFIGURE= yes @@ -25,6 +25,7 @@ SHEBANG_FILES+= Lib/test/ziptestdata/exe_with_z64 \ Lib/test/ziptestdata/exe_with_zip \ Lib/test/ziptestdata/header.sh +TRIGGERS= ${PYTHON_VERSION} DISABLED_EXTENSIONS= _sqlite3 _tkinter _gdbm CONFIGURE_ARGS+= --enable-shared --without-ensurepip \ Index: lang/python39/files/python3.9.ucl.in =================================================================== --- /dev/null +++ lang/python39/files/python3.9.ucl.in @@ -0,0 +1,64 @@ +path_glob: "%%PYTHON_SITELIBDIR%%/*" +cleanup: { + type: lua + sandbox: false + script: <=> removed stale bytecode " .. bytecode_file) + os.remove(full_path .. "/" .. bytecode_file) + end + end + end + end + local res = pkg.readdir(full_path) + -- to appease out-of-order execution in package building environments + if res == nil then + break + end + if #res == 0 then + --print(">=> removed empty directory " .. full_path ) + os.remove(full_path) + end + end + end +end + +print("Cleaning stale bytecode files...") +cleanup("%%PYTHON_SITELIBDIR%%") + +print("Byte-compiling Python source files...") +pkg.exec({"%%PYTHON_VERSION%%", "-m", "compileall", "-q", "-o", "0", "-o", "1", "-o", "2", "%%PYTHON_SITELIBDIR%%"}) +EOS +}