This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Bump version to 5.25.4
[perl5.git] / win32 / win32.h
index 3b35b6c..9b79e00 100644 (file)
@@ -24,6 +24,9 @@
 /* less I/O calls during each require */
 #  define PERL_DISABLE_PMC
 
+/* unnecessery for miniperl to lookup anything from an "installed" perl */
+#  define WIN32_NO_REGISTRY
+
 /* allow minitest to work */
 #  define PERL_TEXTMODE_SCRIPTS
 #endif
@@ -206,6 +209,13 @@ struct utsname {
 #  define PERL_SOCK_SYSWRITE_IS_SEND
 #endif
 
+#ifdef WIN32_NO_REGISTRY
+/* the last _ in WIN32_NO_REGISTRY_M_ is like the _ in aTHX_ */
+#  define WIN32_NO_REGISTRY_M_(x)
+#else
+#  define WIN32_NO_REGISTRY_M_(x) x,
+#endif
+
 #define PERL_NO_FORCE_LINK             /* no need for PL_force_link_funcs */
 
 #define ENV_IS_CASELESS
@@ -394,7 +404,7 @@ DllExport HWND              win32_create_message_window(void);
 DllExport int          win32_async_check(pTHX);
 
 extern int             my_fclose(FILE *);
-extern char *          win32_get_privlib(const char *pl, STRLEN *const len);
+extern char *          win32_get_privlib(WIN32_NO_REGISTRY_M_(const char *pl) STRLEN *const len);
 extern char *          win32_get_sitelib(const char *pl, STRLEN *const len);
 extern char *          win32_get_vendorlib(const char *pl, STRLEN *const len);
 
@@ -494,6 +504,7 @@ struct interp_intern {
     UINT       timerid;
     unsigned   poll_count;
     Sighandler_t sigtable[SIG_SIZE];
+    bool sloppystat;
 };
 
 #define WIN32_POLL_INTERVAL 32768
@@ -527,6 +538,7 @@ struct interp_intern {
 #define w32_init_socktype      (PL_sys_intern.thr_intern.Winit_socktype)
 #define w32_use_showwindow     (PL_sys_intern.thr_intern.Wuse_showwindow)
 #define w32_showwindow (PL_sys_intern.thr_intern.Wshowwindow)
+#define w32_sloppystat (PL_sys_intern.sloppystat)
 
 #ifdef USE_ITHREADS
 void win32_wait_for_children(pTHX);