/* Register any extra external extensions */
char *staticlinkmodules[] = {
"DynaLoader",
+ /* other similar records will be included from "perllibst.h" */
+#define STATIC1
+#include "perllibst.h"
NULL,
};
EXTERN_C void boot_DynaLoader (pTHX_ CV* cv);
+/* other similar records will be included from "perllibst.h" */
+#define STATIC2
+#include "perllibst.h"
static void
xs_init(pTHX)
char *file = __FILE__;
dXSUB_SYS;
newXS("DynaLoader::boot_DynaLoader", boot_DynaLoader, file);
+ /* other similar records will be included from "perllibst.h" */
+#define STATIC3
+#include "perllibst.h"
}
#ifdef PERL_IMPLICIT_SYS
#include "perlhost.h"
+void
+win32_checkTLS(PerlInterpreter *host_perl)
+{
+ dTHX;
+ if (host_perl != my_perl) {
+ int *nowhere = NULL;
+ *nowhere = 0;
+ abort();
+ }
+}
+
EXTERN_C void
perl_get_host_info(struct IPerlMemInfo* perlMemInfo,
struct IPerlMemInfo* perlMemSharedInfo,
pHost->m_pHostperlProc);
if (my_perl) {
w32_internal_host = pHost;
+ pHost->host_perl = my_perl;
}
}
return my_perl;
pHost->m_pHostperlProc);
if (my_perl) {
w32_internal_host = pHost;
+ pHost->host_perl = my_perl;
}
}
return my_perl;
* want to free() argv after main() returns. As luck would have it,
* Borland's CRT does the right thing to argv[0] already. */
char szModuleName[MAX_PATH];
- char *ptr;
GetModuleFileName(NULL, szModuleName, sizeof(szModuleName));
(void)win32_longpath(szModuleName);
PerlIO_cleanup() was done here but fails (B).
*/
EndSockets();
-#if defined(USE_5005THREADS) || defined(USE_ITHREADS)
+#if defined(USE_ITHREADS)
if (PL_curinterp)
FREE_THREAD_KEY;
#endif
h->m_pHostperlProc
);
proto_perl->Isys_intern.internal_host = h;
+ h->host_perl = proto_perl;
return proto_perl;
}