5858
5959import com .oracle .graal .python .nodes .attributes .ReadAttributeFromPythonObjectNode ;
6060import com .oracle .graal .python .nodes .attributes .WriteAttributeToPythonObjectNode ;
61+ import com .oracle .graal .python .runtime .PythonImageBuildOptions ;
6162import org .graalvm .nativeimage .ImageInfo ;
6263
6364import com .oracle .graal .python .PythonLanguage ;
@@ -625,10 +626,10 @@ private static PythonBuiltins[] initializeBuiltins(boolean nativeAccessAllowed,
625626 new JSONModuleBuiltins (),
626627 new SREModuleBuiltins (),
627628 new AstModuleBuiltins (),
628- PythonOptions .WITHOUT_NATIVE_POSIX && (PythonOptions .WITHOUT_JAVA_INET || !socketIOAllowed ) ? null : new SelectModuleBuiltins (),
629- PythonOptions .WITHOUT_NATIVE_POSIX && (PythonOptions .WITHOUT_JAVA_INET || !socketIOAllowed ) ? null : new SocketModuleBuiltins (),
630- PythonOptions .WITHOUT_NATIVE_POSIX && (PythonOptions .WITHOUT_JAVA_INET || !socketIOAllowed ) ? null : new SocketBuiltins (),
631- PythonOptions .WITHOUT_PLATFORM_ACCESS ? null : new SignalModuleBuiltins (),
629+ PythonImageBuildOptions .WITHOUT_NATIVE_POSIX && (PythonImageBuildOptions .WITHOUT_JAVA_INET || !socketIOAllowed ) ? null : new SelectModuleBuiltins (),
630+ PythonImageBuildOptions .WITHOUT_NATIVE_POSIX && (PythonImageBuildOptions .WITHOUT_JAVA_INET || !socketIOAllowed ) ? null : new SocketModuleBuiltins (),
631+ PythonImageBuildOptions .WITHOUT_NATIVE_POSIX && (PythonImageBuildOptions .WITHOUT_JAVA_INET || !socketIOAllowed ) ? null : new SocketBuiltins (),
632+ PythonImageBuildOptions .WITHOUT_PLATFORM_ACCESS ? null : new SignalModuleBuiltins (),
632633 new TracebackBuiltins (),
633634 new GcModuleBuiltins (),
634635 new AtexitModuleBuiltins (),
@@ -638,30 +639,30 @@ private static PythonBuiltins[] initializeBuiltins(boolean nativeAccessAllowed,
638639 new SysModuleBuiltins (),
639640 new MemoryViewBuiltins (),
640641 new SuperBuiltins (),
641- PythonOptions .WITHOUT_SSL ? null : new SSLModuleBuiltins (),
642- PythonOptions .WITHOUT_SSL ? null : new SSLContextBuiltins (),
643- PythonOptions .WITHOUT_SSL ? null : new SSLErrorBuiltins (),
644- PythonOptions .WITHOUT_SSL ? null : new SSLSocketBuiltins (),
645- PythonOptions .WITHOUT_SSL ? null : new MemoryBIOBuiltins (),
642+ PythonImageBuildOptions .WITHOUT_SSL ? null : new SSLModuleBuiltins (),
643+ PythonImageBuildOptions .WITHOUT_SSL ? null : new SSLContextBuiltins (),
644+ PythonImageBuildOptions .WITHOUT_SSL ? null : new SSLErrorBuiltins (),
645+ PythonImageBuildOptions .WITHOUT_SSL ? null : new SSLSocketBuiltins (),
646+ PythonImageBuildOptions .WITHOUT_SSL ? null : new MemoryBIOBuiltins (),
646647 new BinasciiModuleBuiltins (),
647648 new PosixShMemModuleBuiltins (),
648- PythonOptions .WITHOUT_PLATFORM_ACCESS ? null : new PosixSubprocessModuleBuiltins (),
649+ PythonImageBuildOptions .WITHOUT_PLATFORM_ACCESS ? null : new PosixSubprocessModuleBuiltins (),
649650 new ReadlineModuleBuiltins (),
650651 new OperatorModuleBuiltins (),
651652
652653 // hashlib
653- PythonOptions .WITHOUT_DIGEST ? null : new Md5ModuleBuiltins (),
654- PythonOptions .WITHOUT_DIGEST ? null : new Sha1ModuleBuiltins (),
655- PythonOptions .WITHOUT_DIGEST ? null : new Sha256ModuleBuiltins (),
656- PythonOptions .WITHOUT_DIGEST ? null : new Sha512ModuleBuiltins (),
657- PythonOptions .WITHOUT_DIGEST ? null : new Sha3ModuleBuiltins (),
658- PythonOptions .WITHOUT_DIGEST ? null : new Blake2ModuleBuiltins (),
659- PythonOptions .WITHOUT_DIGEST ? null : new DigestObjectBuiltins (),
660- PythonOptions .WITHOUT_DIGEST ? null : new HashObjectBuiltins (),
661- PythonOptions .WITHOUT_DIGEST ? null : new ShakeDigestObjectBuiltins (),
662- PythonOptions .WITHOUT_DIGEST ? null : new Blake2bObjectBuiltins (),
663- PythonOptions .WITHOUT_DIGEST ? null : new Blake2sObjectBuiltins (),
664- PythonOptions .WITHOUT_DIGEST ? null : new HashlibModuleBuiltins (),
654+ PythonImageBuildOptions .WITHOUT_DIGEST ? null : new Md5ModuleBuiltins (),
655+ PythonImageBuildOptions .WITHOUT_DIGEST ? null : new Sha1ModuleBuiltins (),
656+ PythonImageBuildOptions .WITHOUT_DIGEST ? null : new Sha256ModuleBuiltins (),
657+ PythonImageBuildOptions .WITHOUT_DIGEST ? null : new Sha512ModuleBuiltins (),
658+ PythonImageBuildOptions .WITHOUT_DIGEST ? null : new Sha3ModuleBuiltins (),
659+ PythonImageBuildOptions .WITHOUT_DIGEST ? null : new Blake2ModuleBuiltins (),
660+ PythonImageBuildOptions .WITHOUT_DIGEST ? null : new DigestObjectBuiltins (),
661+ PythonImageBuildOptions .WITHOUT_DIGEST ? null : new HashObjectBuiltins (),
662+ PythonImageBuildOptions .WITHOUT_DIGEST ? null : new ShakeDigestObjectBuiltins (),
663+ PythonImageBuildOptions .WITHOUT_DIGEST ? null : new Blake2bObjectBuiltins (),
664+ PythonImageBuildOptions .WITHOUT_DIGEST ? null : new Blake2sObjectBuiltins (),
665+ PythonImageBuildOptions .WITHOUT_DIGEST ? null : new HashlibModuleBuiltins (),
665666
666667 new PyExpatModuleBuiltins (),
667668
@@ -688,9 +689,9 @@ private static PythonBuiltins[] initializeBuiltins(boolean nativeAccessAllowed,
688689 new ZipLongestBuiltins (),
689690
690691 // zlib
691- PythonOptions .WITHOUT_COMPRESSION_LIBRARIES ? null : new ZLibModuleBuiltins (),
692- PythonOptions .WITHOUT_COMPRESSION_LIBRARIES ? null : new ZlibCompressBuiltins (),
693- PythonOptions .WITHOUT_COMPRESSION_LIBRARIES ? null : new ZlibDecompressBuiltins (),
692+ PythonImageBuildOptions .WITHOUT_COMPRESSION_LIBRARIES ? null : new ZLibModuleBuiltins (),
693+ PythonImageBuildOptions .WITHOUT_COMPRESSION_LIBRARIES ? null : new ZlibCompressBuiltins (),
694+ PythonImageBuildOptions .WITHOUT_COMPRESSION_LIBRARIES ? null : new ZlibDecompressBuiltins (),
694695
695696 new MMapModuleBuiltins (),
696697 new FcntlModuleBuiltins (),
@@ -715,13 +716,13 @@ private static PythonBuiltins[] initializeBuiltins(boolean nativeAccessAllowed,
715716 new UnpicklerMemoProxyBuiltins (),
716717
717718 // lzma
718- PythonOptions .WITHOUT_COMPRESSION_LIBRARIES ? null : new LZMAModuleBuiltins (),
719- PythonOptions .WITHOUT_COMPRESSION_LIBRARIES ? null : new LZMACompressorBuiltins (),
720- PythonOptions .WITHOUT_COMPRESSION_LIBRARIES ? null : new LZMADecompressorBuiltins (),
719+ PythonImageBuildOptions .WITHOUT_COMPRESSION_LIBRARIES ? null : new LZMAModuleBuiltins (),
720+ PythonImageBuildOptions .WITHOUT_COMPRESSION_LIBRARIES ? null : new LZMACompressorBuiltins (),
721+ PythonImageBuildOptions .WITHOUT_COMPRESSION_LIBRARIES ? null : new LZMADecompressorBuiltins (),
721722
722723 // _multiprocessing
723- PythonOptions .WITHOUT_NATIVE_POSIX ? null : new MultiprocessingModuleBuiltins (),
724- PythonOptions .WITHOUT_NATIVE_POSIX ? null : new SemLockBuiltins (),
724+ PythonImageBuildOptions .WITHOUT_NATIVE_POSIX ? null : new MultiprocessingModuleBuiltins (),
725+ PythonImageBuildOptions .WITHOUT_NATIVE_POSIX ? null : new SemLockBuiltins (),
725726 new MultiprocessingGraalPyModuleBuiltins (),
726727 new GraalPySemLockBuiltins (),
727728
@@ -775,7 +776,7 @@ private static PythonBuiltins[] initializeBuiltins(boolean nativeAccessAllowed,
775776 builtins .add (new LsprofModuleBuiltins ());
776777 builtins .add (LsprofModuleBuiltins .newProfilerBuiltins ());
777778 }
778- if (!PythonOptions .WITHOUT_COMPRESSION_LIBRARIES && (nativeAccessAllowed || ImageInfo .inImageBuildtimeCode ())) {
779+ if (!PythonImageBuildOptions .WITHOUT_COMPRESSION_LIBRARIES && (nativeAccessAllowed || ImageInfo .inImageBuildtimeCode ())) {
779780 builtins .add (new BZ2CompressorBuiltins ());
780781 builtins .add (new BZ2DecompressorBuiltins ());
781782 builtins .add (new BZ2ModuleBuiltins ());
@@ -939,7 +940,7 @@ private void initializeImportlib() {
939940
940941 // see CPython's init_importlib_external
941942 callNode .execute (null , null , bootstrap , toTruffleStringUncached ("_install_external_importers" ));
942- if (!PythonOptions .WITHOUT_COMPRESSION_LIBRARIES ) {
943+ if (!PythonImageBuildOptions .WITHOUT_COMPRESSION_LIBRARIES ) {
943944 // see CPython's _PyImportZip_Init
944945 Object pathHooks = readNode .execute (sysModule , toTruffleStringUncached ("path_hooks" ));
945946 if (!(pathHooks instanceof PList pathHooksList )) {
@@ -1001,7 +1002,7 @@ public final void postInitialize() {
10011002 * would never include the intrinsified _bz2 module in the native image since native
10021003 * access is never allowed during native image build time.
10031004 */
1004- if (!PythonOptions .WITHOUT_COMPRESSION_LIBRARIES && ImageInfo .inImageCode () && !getContext ().isNativeAccessAllowed ()) {
1005+ if (!PythonImageBuildOptions .WITHOUT_COMPRESSION_LIBRARIES && ImageInfo .inImageCode () && !getContext ().isNativeAccessAllowed ()) {
10051006 removeBuiltinModule (BuiltinNames .T_BZ2 );
10061007 }
10071008
0 commit comments