[win32] various changes to make win32 build under the new Configure & co.
[p5sagit/p5-mst-13.2.git] / win32 / Makefile
index ee7e757..596f7f4 100644 (file)
@@ -14,7 +14,7 @@ INST_TOP=$(INST_DRV)\perl5004.5x
 
 #
 # uncomment to enable threads-capabilities
-#USE_THREADS=-DUSE_THREADS
+#USE_THREADS=define
 
 #
 # uncomment next line if you are using Visual C++ 2.x
@@ -55,19 +55,22 @@ D_CRYPT=define
 CRYPT_FLAG=-DHAVE_DES_FCRYPT
 !ENDIF
 
-BUILDOPT       = $(USE_THREADS)
-#BUILDOPT      = $(USE_THREADS) -DMULTIPLICITY 
-#BUILDOPT      = $(USE_THREADS) -DPERL_GLOBAL_STRUCT -DMULTIPLICITY
+#BUILDOPT      = -DMULTIPLICITY 
+#BUILDOPT      = -DPERL_GLOBAL_STRUCT -DMULTIPLICITY
 # -DUSE_PERLIO -D__STDC__=1 -DUSE_SFIO -DI_SFIO -I\sfio97\include
 
+!IF "$(USE_THREADS)" == ""
+USE_THREADS = undef
+!ENDIF
+
 !IF "$(PROCESSOR_ARCHITECTURE)" == ""
 PROCESSOR_ARCHITECTURE = x86
 !ENDIF
 
-!IF "$(USE_THREADS)" == ""
-ARCHNAME       = MSWin32-$(PROCESSOR_ARCHITECTURE)
-!ELSE
+!IF "$(USE_THREADS)" == "define"
 ARCHNAME       = MSWin32-$(PROCESSOR_ARCHITECTURE)-thread
+!ELSE
+ARCHNAME       = MSWin32-$(PROCESSOR_ARCHITECTURE)
 !ENDIF
 
 ARCHDIR                = ..\lib\$(ARCHNAME)
@@ -191,6 +194,7 @@ CRYPT_OBJ=$(CRYPT_SRC:.c=.obj)
 XSUBPP=..\$(MINIPERL) -I..\..\lib ..\$(EXTUTILSDIR)\xsubpp -C++ -prototypes
 
 CORE_C=        ..\av.c         \
+       ..\byterun.c    \
        ..\deb.c        \
        ..\doio.c       \
        ..\doop.c       \
@@ -220,6 +224,7 @@ CORE_C=     ..\av.c         \
        $(CRYPT_SRC)
 
 CORE_OBJ= ..\av$(o)    \
+       ..\byterun$(o)  \
        ..\deb$(o)      \
        ..\doio$(o)     \
        ..\doop$(o)     \
@@ -271,6 +276,8 @@ X2P_OBJ = ..\x2p\a2p$(o)    \
        ..\x2p\walk$(o)
 
 CORE_H = ..\av.h       \
+       ..\byterun.h    \
+       ..\bytecode.h   \
        ..\cop.h        \
        ..\cv.h         \
        ..\dosish.h     \
@@ -345,6 +352,23 @@ POD2MAN=$(PODDIR)\pod2man
 POD2LATEX=$(PODDIR)\pod2latex
 POD2TEXT=$(PODDIR)\pod2text
 
+CFG_VARS=   "INST_DRV=$(INST_DRV)"             \
+           "INST_TOP=$(INST_TOP)"              \
+           "archname=$(ARCHNAME)"              \
+           "cc=$(CC)"                          \
+           "ccflags=$(OPTIMIZE) $(DEFINES)"    \
+           "cf_email=$(EMAIL)"                 \
+           "d_crypt=$(D_CRYPT)"                \
+           "libs=$(LIBFILES)"                  \
+           "incpath=$(CCINCDIR)"               \
+           "libpth=$(CCLIBDIR)"                \
+           "libc=$(LIBC)"                      \
+           "static_ext=$(STATIC_EXT)"          \
+           "dynamic_ext=$(DYNAMIC_EXT)"        \
+           "usethreads=$(USE_THREADS)"         \
+           "LINK_FLAGS=$(LINK_FLAGS)"          \
+           "optimize=$(OPTIMIZE)"
+
 #
 # Top targets
 #
@@ -372,23 +396,7 @@ config.w32 : $(CFGSH_TMPL)
        copy $(CFGH_TMPL) config.h
 
 ..\config.sh : config.w32 $(MINIPERL) config_sh.PL
-       $(MINIPERL) -I..\lib config_sh.PL       \
-           "INST_DRV=$(INST_DRV)"              \
-           "INST_TOP=$(INST_TOP)"              \
-           "archname=$(ARCHNAME)"              \
-           "cc=$(CC)"                          \
-           "ccflags=$(OPTIMIZE) $(DEFINES)"    \
-           "cf_email=$(EMAIL)"                 \
-           "d_crypt=$(D_CRYPT)"                \
-           "libs=$(LIBFILES)"                  \
-           "incpath=$(CCINCDIR)"               \
-           "libpth=$(CCLIBDIR)"                \
-           "libc=$(LIBC)"                      \
-           "static_ext=$(STATIC_EXT)"          \
-           "dynamic_ext=$(DYNAMIC_EXT)"        \
-           "LINK_FLAGS=$(LINK_FLAGS)"          \
-           "optimize=$(OPTIMIZE)"              \
-           config.w32                          > ..\config.sh
+       $(MINIPERL) -I..\lib config_sh.PL $(CFG_VARS) config.w32 > ..\config.sh
 
 $(CONFIGPM) : $(MINIPERL) ..\config.sh config_h.PL ..\minimod.pl
        cd .. && miniperl configpm